{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,10,11]],"date-time":"2025-10-11T02:57:57Z","timestamp":1760151477340,"version":"build-2065373602"},"reference-count":38,"publisher":"MDPI AG","issue":"4","license":[{"start":{"date-parts":[[2022,3,22]],"date-time":"2022-03-22T00:00:00Z","timestamp":1647907200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0\/"}],"funder":[{"name":"Research on Accelerator Architecture for Next Generation High Performance Computing","award":["WDZC20205500111"],"award-info":[{"award-number":["WDZC20205500111"]}]}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Symmetry"],"abstract":"<jats:p>The growing complexity and size of integrated circuits has made functional verification a huge challenge. As the control center of integrated circuit hardware design, any design errors in the Instruction Pipeline Control Unit (IPCU) will put the entire chip at significant risk. Verification of the IPCU has accordingly become a substantial challenge for test engineers. Taking a 32-bit VLIW DSP as the research goal, this paper proposes a directional random verification method for IPCU based on the instruction reordering strategy (InstRO). First, according to the symmetry of input and output of the instruction pipeline, this method considers several functional components as a whole and establishes a high-level reference model based on the instruction reordering strategy (InstRO-Model), thereby both shielding the complex logic inside the hardware design and reducing the complexity of the verification model. Second, by automatically generating random test stimuli, the constraints of which can be adjusted in a particular direction, effective intensive testing of different functional points of the design under test (DUT) is realized, and code coverage and functional coverage are both improved. Finally, the test stimuli are input into the InstRO-Model and the DUT at the same time. As the input and output of the InstRO-Model also have symmetry with the input and output of the DUT, an automatic comparison of the verification results is realized via assertions. This approach greatly reduces the manpower and time required for verification and improves the verification efficiency. Experiments and practical application results show that this method can increase the code coverage to more than 99%. In particular, efficient directional random verification can be carried out for the weak points in the instruction pipeline control verification and the function points that are difficult to manually simulate and traverse, which greatly improves the verification efficiency and verification integrity of the IPCU.<\/jats:p>","DOI":"10.3390\/sym14040646","type":"journal-article","created":{"date-parts":[[2022,3,22]],"date-time":"2022-03-22T23:30:23Z","timestamp":1647991823000},"page":"646","update-policy":"https:\/\/doi.org\/10.3390\/mdpi_crossmark_policy","source":"Crossref","is-referenced-by-count":0,"title":["A 32-Bit DSP Instruction Pipeline Control Unit Verification Method Based on Instruction Reordering Strategy"],"prefix":"10.3390","volume":"14","author":[{"given":"Huili","family":"Wang","sequence":"first","affiliation":[{"name":"School of Computer, National University of Defense Technology, Changsha 410073, China"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Sheng","family":"Liu","sequence":"additional","affiliation":[{"name":"School of Computer, National University of Defense Technology, Changsha 410073, China"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Ling","family":"Zhang","sequence":"additional","affiliation":[{"name":"School of Computer, National University of Defense Technology, Changsha 410073, China"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"1968","published-online":{"date-parts":[[2022,3,22]]},"reference":[{"key":"ref_1","doi-asserted-by":"crossref","unstructured":"Hegde, K., Yu, J., Agrawal, R., Yan, M., and Fletcher, C. (2018, January 2\u20136). UCNN: Exploiting computational reuse in deep neural networks via weight repetition. Proceedings of the 45th Annual International Symposium on Computer Architecture (ISCA), Los Angeles, CA, USA.","DOI":"10.1109\/ISCA.2018.00062"},{"key":"ref_2","doi-asserted-by":"crossref","unstructured":"Park, E., Kim, D., and Yoo, S. (2018, January 2\u20136). Energy-Efficient Neural Network Accelerator Based on Outlier-Aware Low-Precision Computation. Proceedings of the 45th Annual International Symposium on Computer Architecture (ISCA), Los Angeles, CA, USA.","DOI":"10.1109\/ISCA.2018.00063"},{"key":"ref_3","unstructured":"May, C., Silha, E., Simpson, R., and Warren, H. (1994). The PowerPC Architecture: A Specification for a New Family of RISC Processors, Morgan Kaufmann Publishers Inc."},{"key":"ref_4","first-page":"419","article-title":"A Survey on Coverage Directed Generation Technology","volume":"21","author":"Shen","year":"2009","journal-title":"J. Comput.-Aided Des. Comput. Graph."},{"key":"ref_5","unstructured":"Spear, C., and Tumbush, G. (2006). SystemVerilog for Verification, Springer."},{"key":"ref_6","unstructured":"Liu, M. (2016). Data Coherence Optimization and Verification Platform Research of DMA Accessing in Multi-Core DSP. [Master\u2019s Thesis, National University of Defense Technology]."},{"key":"ref_7","first-page":"84","article-title":"Research for Constructure and Test Method of the DSP","volume":"9","author":"Wu","year":"2010","journal-title":"Comput. Digit. Eng."},{"key":"ref_8","doi-asserted-by":"crossref","first-page":"502","DOI":"10.1109\/TC.2011.41","article-title":"Linear Time Memory Consistency Verification","volume":"61","author":"Hu","year":"2012","journal-title":"IEEE Trans. Comput."},{"key":"ref_9","first-page":"65","article-title":"Functional verification: Approaches and challenges","volume":"37","author":"Molina","year":"2007","journal-title":"Lat. Am. Appl. Res."},{"key":"ref_10","first-page":"1598","article-title":"A Method of Improving DSP Test Coverage Based on ATE","volume":"11","author":"Chen","year":"2021","journal-title":"Comput. Sci. Appl."},{"key":"ref_11","doi-asserted-by":"crossref","first-page":"182","DOI":"10.1109\/TC.2018.2868362","article-title":"Automated Test Generation for Debugging Multiple Bugs in Arithmetic Circuits","volume":"68","author":"Farimah","year":"2019","journal-title":"IEEE Trans. Comput."},{"key":"ref_12","doi-asserted-by":"crossref","first-page":"64","DOI":"10.1109\/MM.2013.129","article-title":"FT-Matrix: A Coordination-Aware Architecture for Signal Processing","volume":"34","author":"Chen","year":"2014","journal-title":"IEEE Micro"},{"key":"ref_13","first-page":"116","article-title":"Low Power Verification Based on Multi-Cores DSP","volume":"12","author":"Sun","year":"2015","journal-title":"Microelectron. Comput."},{"key":"ref_14","doi-asserted-by":"crossref","first-page":"2163","DOI":"10.1109\/TPDS.2012.44","article-title":"Program Regularization in Memory Consistency Verification","volume":"23","author":"Chen","year":"2012","journal-title":"IEEE Trans. Parallel Distrib. Syst."},{"key":"ref_15","doi-asserted-by":"crossref","first-page":"285","DOI":"10.1016\/S0026-2692(01)00139-2","article-title":"Functional verification of instruction processing units through control flow modeling","volume":"33","author":"Feig","year":"2002","journal-title":"Microelectron. J."},{"key":"ref_16","first-page":"1","article-title":"A RISC instruction pipeline architecture","volume":"16","author":"Qi","year":"1995","journal-title":"Mini-Micro Syst."},{"key":"ref_17","first-page":"1661","article-title":"Research and Implementation on Instruction Control Pipeline in General-Purpose EPIC Microprocessor","volume":"27","author":"Jiang","year":"2006","journal-title":"J. Chin. Comput. Syst."},{"key":"ref_18","doi-asserted-by":"crossref","unstructured":"Sabaghian-Bidgoli, H., Behnam, P., Alizadeh, B., and Navabi, Z. (2017, January 3\u20135). Reducing Search Space for Fault Diagnosis: A Probability-Based Scoring Approach. Proceedings of the IEEE Computer Society Annual Symposium on VLSI (ISVLSI), Bochum, Germany.","DOI":"10.1109\/ISVLSI.2017.101"},{"key":"ref_19","doi-asserted-by":"crossref","first-page":"1441","DOI":"10.1109\/TCAD.2005.857314","article-title":"An approach for the formal verification of DSP designs using Theorem proving","volume":"25","author":"Akbarpour","year":"2006","journal-title":"IEEE Trans. Comput.-Aided Des. Integr. Circuits Syst."},{"key":"ref_20","unstructured":"Gu, Y.L., and Xu, W.B. (2011, January 14\u201317). Study on Automatic Test Generation of Digital Circuits Using Particle Swarm Optimization. Proceedings of the 2011 10th International Symposium on Distributed Computing and Applications to Business, Engineering and Science, Wuxi, China."},{"key":"ref_21","unstructured":"Cerny, E., Dudani, S., Havlicek, J., and Korchemny, D. (2011). SVA: The Power of Assertions in SystemVerilog, Springer."},{"key":"ref_22","doi-asserted-by":"crossref","first-page":"285","DOI":"10.1007\/s10836-020-05871-8","article-title":"Speed-Up in Test Methods Using Probabilistic Merit Indicators","volume":"36","author":"Fooladi","year":"2020","journal-title":"J. Electron. Test."},{"key":"ref_23","doi-asserted-by":"crossref","first-page":"178","DOI":"10.1016\/j.microrel.2017.07.010","article-title":"A high fault coverage test approach for communication channels in network on chip","volume":"75","author":"Aghaei","year":"2017","journal-title":"Microelectron. Reliab."},{"key":"ref_24","first-page":"48","article-title":"A Graph-model Based Code-coverage-improving Verification Method","volume":"6","author":"Liu","year":"2008","journal-title":"Microprocessors"},{"key":"ref_25","doi-asserted-by":"crossref","first-page":"386","DOI":"10.1147\/sj.413.0386","article-title":"Using a Constraint Satisfaction Formulation and Solution Techniques for Random Test Program Generation","volume":"41","author":"Bin","year":"2002","journal-title":"IBM Syst. J."},{"key":"ref_26","doi-asserted-by":"crossref","first-page":"1625","DOI":"10.1109\/TCAD.2004.836734","article-title":"A Universal Technique for Fast and Flexible Instruction-Set Architecture Simulation","volume":"23","author":"Braun","year":"2006","journal-title":"IEEE Trans. Comput.-Aided Des. Integr. Circuits Syst."},{"key":"ref_27","doi-asserted-by":"crossref","first-page":"472","DOI":"10.1109\/MDT.2004.94","article-title":"Linking Simulation with Formal Verification at a Higher Level","volume":"21","author":"Tasiran","year":"2004","journal-title":"IEEE Des. Test Comput. Mag."},{"key":"ref_28","first-page":"256","article-title":"Rapid implementation of instruction-level precision VLIW DSP simulator","volume":"34","author":"Zhu","year":"2013","journal-title":"Comput. Eng. Des."},{"key":"ref_29","doi-asserted-by":"crossref","unstructured":"Monaco, J., Holloway, D., and Raina, R. (1996, January 3\u20137). Functional verification methodology for the PowerPC 604 microprocessor. Proceedings of the 33rd Annual Design Automation Conference, Las Vegas, NV, USA.","DOI":"10.1145\/240518.240579"},{"key":"ref_30","doi-asserted-by":"crossref","unstructured":"Shen, J., Abraham, J., Baker, D., Hurson, T., Kinkade, M., Gervasio, G., Chu, C.C., and Hu, G. (1999, January 21\u201325). Functional Verification of the Equator MAP1000 Microprocessor. Proceedings of the 1999 36th Annual Design Automation Conference (DAC), New Orleans, LA, USA.","DOI":"10.1145\/309847.309908"},{"key":"ref_31","doi-asserted-by":"crossref","first-page":"83","DOI":"10.1109\/54.706038","article-title":"Testing the 500-MHz IBM S\/390 microprocessor","volume":"15","author":"Foote","year":"1998","journal-title":"IEEE Des. Test Comput. Mag."},{"key":"ref_32","doi-asserted-by":"crossref","first-page":"23","DOI":"10.1109\/MDT.2012.2183336","article-title":"SystemVerilog Assertions: Past, Present, and Future SVA Standardization Experience","volume":"29","author":"Bustan","year":"2012","journal-title":"IEEE Des. Test Comput."},{"key":"ref_33","unstructured":"(2009). IEEE Standard for SystemVerilog\u2014Unified Hardware Design, Specification, and Verification Language (Standard No. IEEE STD 1800\u20132009)."},{"key":"ref_34","doi-asserted-by":"crossref","first-page":"76","DOI":"10.1109\/MDT.2010.28","article-title":"Verification-Purpose Operating System for Microprocessor System-Level Functions","volume":"27","author":"Gong","year":"2010","journal-title":"IEEE Des. Test Comput."},{"key":"ref_35","doi-asserted-by":"crossref","unstructured":"Hosseini, A., Mavroidis, D., and Konas, P. (1996, January 3\u20137). Code generation and analysis for the functional verification of microprocessors. Proceedings of the 33rd Design Automation Conference Proceedings, 1996, Los Angeles, CA, USA.","DOI":"10.1145\/240518.240574"},{"key":"ref_36","doi-asserted-by":"crossref","unstructured":"Duran, C., Morales, H., Rojas, C., Ruospoy, A., Sanchezy, E., and Roa, E. (2020, January 12\u201314). Simulation and Formal: The Best of Both Domains for Instruction Set Verification of RISC-V Based Processors. Proceedings of the IEEE International Symposium on Circuits and Systems (ISCAS), Seville, Spain.","DOI":"10.1109\/ISCAS45731.2020.9180589"},{"key":"ref_37","unstructured":"Bratt, J.P., Yan-Tek, H.P., Joshi, C.S., Nofal, M.R., Paul, R., and Scanlon, J.T.A.K. (2010). Superscalar Microprocessor Instruction Pipeline Including Instruction Dispatch and Release Control. (EP0690372 A1)."},{"key":"ref_38","unstructured":"Momose, T., Fujita, A., and Kubo, K. (1981). Data Processing System with an Enhanced Instruction Pipeline Control. (CA1098214 A1)."}],"container-title":["Symmetry"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/www.mdpi.com\/2073-8994\/14\/4\/646\/pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,10,10]],"date-time":"2025-10-10T22:41:10Z","timestamp":1760136070000},"score":1,"resource":{"primary":{"URL":"https:\/\/www.mdpi.com\/2073-8994\/14\/4\/646"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2022,3,22]]},"references-count":38,"journal-issue":{"issue":"4","published-online":{"date-parts":[[2022,4]]}},"alternative-id":["sym14040646"],"URL":"https:\/\/doi.org\/10.3390\/sym14040646","relation":{},"ISSN":["2073-8994"],"issn-type":[{"type":"electronic","value":"2073-8994"}],"subject":[],"published":{"date-parts":[[2022,3,22]]}}}