SOURCE ARCHIVE
EXTRACTED CONTENT
4,098 charsEnhancing Functional Verification with Dynamic Instruction Generation by Exploiting Processor Runtime States
- 1 citation.
Abstract
As the architectural complexity of processors increases dramatically, rigorous functional verification remains essential to ensure performance and immunity from design bugs. A pivotal yet challenging aspect of functional verification is the generation of test instruction streams that are not only highly effective in coverage but also compact enough to significantly reduce verification time. In this paper, we introduce DIG, a novel Dynamic Instruction Generator that leverages processor runtime architectural states through an instruction set simulator. In essence, DIG accesses processor runtime information to produce instruction streams with valid semantics, effectively avoiding illegal memory accesses and infinite loops. The quality of these instruction streams is further enhanced by incorporating both intra-instruction and inter-instruction test knowledge. The effectiveness of DIG is demonstrated through a case study involving Western Digital’s open-source RISC-V core, VeeR EH2. Our experimental results indicate that DIG reduces the number of test instructions by as much as 62.50% and 86.11%, compared to the state-of-the-art random instruction generators, RISC-V DV and RISC-V Torture, respectively, while simultaneously achieving superior functional coverage.
Authors
- Anlin Liu (Zhejiang University): h-index 7; 146 citations; corresponding author
- T.C. Lu (Zhejiang University): h-index 6; 143 citations
- Yuhao Xi (Zhejiang University): h-index 2; 14 citations
- Yangfan Liu (HEXIN Technologies Co., Ltd,Guangzhou,China): h-index 9; 297 citations
- Peng Liu (Zhejiang University): h-index 4; 56 citations
Topics
Parallel Computing and Optimization Techniques, Embedded Systems Design Techniques, Software Testing and Debugging Techniques, Computer science, Runtime verification
References
- Eyal Bin, R. Emek, Gil Shurek, Avi Ziv. Using a constraint satisfaction formulation and solution techniques for random test program generation. IBM Systems Journal. 2002;41(3):386-402. doi:10.1147/sj.413.0386.
- Giovanni Squillero. MicroGP—An Evolutionary Assembly Program Generator. Genetic Programming and Evolvable Machines. 2005;6(3):247-263. doi:10.1007/s10710-005-2985-x.
- Shai Fine, Avi Ziv. Coverage directed test generation for functional verification using bayesian networks. 2003;286-291. doi:10.1145/775832.775907.
- Allon Adir, Eli Almog, Laurent Sébastien Fournier, Eitan Marcus, Michal Rimon, Michael Vinov, et al. Genesys-pro: innovations in test program generation for functional processor verification. IEEE Design & Test of Computers. 2004;21(2):84-93. doi:10.1109/mdt.2004.1277900.
- Alan Edelman. The Mathematics of the Pentium Division Bug. SIAM Review. 1997;39(1):54-67. doi:10.1137/s0036144595293959.
- B. K. Campbell, Ian Stark. Randomised testing of a microprocessor model using SMT-solver state generation. Science of Computer Programming. 2015;118:60-76. doi:10.1016/j.scico.2015.10.012.
- Mikhail Chupilko, Alexander Kamkin, Artem Kotsynyak, Andrei Tatarnikov. MicroTESK: Specification-Based Tool for Constructing Test Program Generators. Lecture notes in computer science. 2017;217-220. doi:10.1007/978-3-319-70389-3_15.
- Fanchao Wang, Hanbin Zhu, Pranjay Popli, Yao Xiao, Paul Bodgan, Shahin Nazarian. Accelerating Coverage Directed Test Generation for Functional Verification. 2018;207-212. doi:10.1145/3194554.3194561.
- Vladimir Herdt, Daniel Grose, Hoang M. Le, Rolf Drechsler. Verifying Instruction Set Simulators using Coverage-guided Fuzzing. 2019;360-365. doi:10.23919/date.2019.8714912.
- Yoav Katz, Michal Rimon, Avi Ziv. Generating instruction streams using abstract CSP. 2012;15-20. doi:10.1109/date.2012.6176425.
- Yuze Wang, Peng Liu, Weidong Wang, Xiaohang Wang, Yingtao Jiang. On a Consistency Testing Model and Strategy for Revealing RISC Processor’s Dark Instructions and Vulnerabilities. IEEE Transactions on Computers. 2021;71(7):1586-1597. doi:10.1109/tc.2021.3097174.