Verification of Embedded Binaries using Coverage-guided Fuzzing with SystemC-based Virtual Prototypes

Vladimir Herdt, Daniel Große, Jonas Wloka, Tim Güneysu, Rolf Drechsler

Research output: Chapter in Book/Report/Conference proceedingConference proceedingspeer-review

Abstract

Extensive verification of embedded SW is very important to avoid errors and security vulnerabilities. Therefore, mainly simulationbased methods are employed that leverage Virtual Prototypes (VPs) for SW execution early in the design flow. VPs are essentially abstract models of the entire HW platform including peripherals. They are predominantly created in SystemC. However, a comprehensive simulation-based verification requires integration of sophisticated test generation techniques. In this paper we propose to leverage state-of-the-art Coverageguided Fuzzing (CGF) methods in combination with SystemC-based VPs for verification of embedded SW binaries. Using VPs, our approach allows a fast and accurate binary-level SW analysis and enables checking of complex HW/SW interactions. To guide the fuzzing process we combine the coverage from the embedded SW with the coverage of the SystemC-based peripherals. Our experiments, using RISC-V embedded SW binaries as examples, demonstrate the effectiveness of our approach.
Original languageEnglish
Title of host publicationACM Great Lakes Symposium on VLSI (GLSVLSI)
Number of pages6
Publication statusPublished - 2020

Fields of science

  • 202005 Computer architecture
  • 202017 Embedded systems
  • 102 Computer Sciences
  • 102005 Computer aided design (CAD)
  • 102011 Formal languages

JKU Focus areas

  • Sustainable Development: Responsible Technologies and Management

Cite this