🤖 AI Summary
Modern processor verification—particularly for RISC-V—faces critical bottlenecks including slow coverage convergence, low fuzzing efficiency, and high communication overhead on hardware-acceleration platforms. To address these challenges, this paper proposes the first end-to-end hardware fuzzing framework fully integrated on a single FPGA. Our approach holistically hardware-accelerates the entire fuzzing loop—test generation, cycle-accurate simulation execution, and coverage feedback—by co-designing an optimized seed control-flow scheduler, a hybrid fuzzing architecture, and an on-chip feedback-driven mechanism. Experimental evaluation demonstrates up to 2.23× higher coverage attainment within the same time budget and accelerates real bug detection by up to 571× compared to state-of-the-art software-based and hybrid baselines. Crucially, our design preserves debug visibility while achieving high resource efficiency. This work establishes a new paradigm for agile processor verification: high-throughput, high-fidelity, and low-overhead.
📝 Abstract
Verification is a critical process for ensuring the correctness of modern processors. The increasing complexity of processor designs and the emergence of new instruction set architectures (ISAs) like RISC-V have created demands for more agile and efficient verification methodologies, particularly regarding verification efficiency and faster coverage convergence. While simulation-based approaches now attempt to incorporate advanced software testing techniques such as fuzzing to improve coverage, they face significant limitations when applied to processor verification, notably poor performance and inadequate test case quality. Hardware-accelerated solutions using FPGA or ASIC platforms have tried to address these issues, yet they struggle with challenges including host-FPGA communication overhead, inefficient test pattern generation, and suboptimal implementation of the entire multi-step verification process.
In this paper, we present TurboFuzz, an end-to-end hardware-accelerated verification framework that implements the entire Test Generation-Simulation-Coverage Feedback loop on a single FPGA for modern processor verification. TurboFuzz enhances test quality through optimized test case (seed) control flow, efficient inter-seed scheduling, and hybrid fuzzer integration, thereby improving coverage and execution efficiency. Additionally, it employs a feedback-driven generation mechanism to accelerate coverage convergence. Experimental results show that TurboFuzz achieves up to 2.23x more coverage collection than software-based fuzzers within the same time budget, and up to 571x performance speedup when detecting real-world issues, while maintaining full visibility and debugging capabilities with moderate area overhead.