{'fraction_non_alphanumeric': 0.020191285866099893, 'fraction_numerical': 0.0, 'mean_word_length': 5.116883116883117, '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}}
A snapshot method to provide full visibility for functional debugging using FPGA

Until now, logic simulators are still the most popular verification tools. Although they can provide full controllability and observability during the verification process, the simulation speed is too slow for large amounts of input patterns. Using hardware emulation such as FPGA can have higher simulation speed. However, it is very hard to debug using this approach due to poor visibility in FPGAs. Therefore, in this paper, we propose another approach to "record" the internal behaviors of a FPGA and "replay" the interesting period of time in a software simulator. In this way, we can still have high simulation speed because most simulation efforts are still finished in FPGA. Moreover, full visibility and better debugging environment can be provided in the software simulation. The experimental results have shown the efficiency of using our approach.