vix.ing · top · new · best · stats · spec

Leveraging SystemC-TLM-based Virtual Prototypes for Embedded Software Fuzzing

2025/09/01 by Chiara Ghinami, Jonas Winzer, Ghinami, Chiara +11
Computer Science · #Embedded Systems Design Techniques #FOS: Computer and information sciences #Software Engineering (cs.SE) #Software Testing and Debugging Techniques #VLSI and Analog Circuit Testing

paper · pdf · doi:10.48550/arxiv.2509.01318

openalex publication_date 2025/09/01 · openalex created_date 2025/10/10 · openalex updated_date 2026/07/28

Abstract

SystemC-based virtual prototypes have emerged as widely adopted tools to test software ahead of hardware availability, reducing the time-to-market and improving software reliability. Recently, fuzzing has become a popular method for automated software testing due to its ability to quickly identify corner-case errors. However, its application to embedded software is still limited. Simulator tools can help bridge this gap by providing a more powerful and controlled execution environment for testing. Existing solutions, however, often tightly couple fuzzers with built-in simulators that lack support for hardware peripherals and offer limited flexibility, restricting their ability to test embedded software. To address these limitations, we present a framework that allows the integration of American-Fuzzy-Lop-based fuzzers and SystemC-based simulators. The framework provides a harness to decouple the adopted fuzzer and simulator. In addition, it intercepts peripheral accesses and queries the fuzzer for values, effectively linking peripheral behavior to the fuzzer. This solution enables flexible interchangeability of peripherals within the simulation environment and supports the interfacing of different SystemC-based virtual prototypes. The flexibility of the proposed solution is demonstrated by integrating the harness with different simulators and by testing various softwares.

Related