{'fraction_non_alphanumeric': 0.026143790849673203, 'fraction_numerical': 0.0, 'mean_word_length': 5.767955801104972, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Firefly: An Open-source Rocket-based Intermittent Framework

Intermittent systems are ultra-low-power batteryless devices that are increasing in popularity. These systems operate with energy extracted entirely from the environment. Since most environments cannot ensure sufficient and steady power supply conditions, intermittent devices suffer from frequent power outages, where computation is interrupted due to the lack of energy. While numerous works have enabled intermittent computation via many different techniques, there are no versatile and configurable tools that ensure functionality, and rapid development/design space exploration. Therefore, in this paper, we present Firefly, an intermittent open-source framework for developing ultra-low-power devices based on the RISC-V ISA and the Rocket Chip. Firefly enables developers to modify and extend the project to satisfy their preference, i.e., memory technologies, intermittent environment configuration, and hardware modifications. By exploiting the versatility offered by the Firefly framework, we evaluate different memory technologies in an intermittent environment, showing that in many times PCRAM and RRAM will be the best choices to compose the design.