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.
翻译:验证是确保现代处理器正确性的关键流程。处理器设计日益复杂以及RISC-V等新型指令集架构(ISA)的出现,对更敏捷高效的验证方法提出了需求,特别是在验证效率和更快的覆盖率收敛方面。虽然基于仿真的方法目前尝试融入模糊测试等先进软件测试技术以提升覆盖率,但在应用于处理器验证时仍面临显著局限,尤其是性能低下和测试用例质量不足。使用FPGA或ASIC平台的硬件加速解决方案曾试图解决这些问题,但仍受限于主机-FPGA通信开销、低效测试模式生成以及整个多步骤验证流程的次优实现等挑战。本文提出TurboFuzz,一种端到端的硬件加速验证框架,它在单块FPGA上为现代处理器验证实现了完整的测试生成-仿真-覆盖率反馈闭环。TurboFuzz通过优化的测试用例(种子)控制流、高效的种子间调度以及混合模糊器集成来提升测试质量,从而改善覆盖率和执行效率。此外,它采用反馈驱动的生成机制来加速覆盖率收敛。实验结果表明,在相同时间预算内,TurboFuzz比基于软件的模糊测试工具多收集高达2.23倍的覆盖率;在检测实际漏洞时,性能加速比最高可达571倍,同时以适中的面积开销保持完整的可视化和调试能力。