{'fraction_non_alphanumeric': 0.026652452025586353, 'fraction_numerical': 0.0, 'mean_word_length': 5.137254901960785, '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}}
Selective Duplication and Selective Comparison for Data Flow Error Detection

Embedded systems' hardware can be impacted by soft errors, which can cause data flow errors in the systems' software. In this paper, we present a novel software-based approach to counter data flow errors, called Selective Duplication and Selective Comparison (SDSC). First, we validated our SDSC technique by implementing it for six case studies and submitting it to a fault injection campaign. Next, we measured its execution time overhead. To put the measured results into perspective, we compared them to those of two established techniques, called Critical Block Duplication (CBD) and near Zero silent Data Corruption (nZDC). The results show that our SDSC technique has a higher error detection ratio with a lower silent data corruption compared to both the CBD and nZDC techniques. This does, however, come with a slightly higher execution time overhead.