Coverage Fulfillment Automation in Hardware Functional Verification Using Genetic Algorithms
Source abstract
Abstract
The functional verification process is one of the most expensive steps in integrated circuit manufacturing. Functional coverage is the most important metric in the entire verification process. By running multiple simulations, different situations of DUT functionality can be encountered, and in this way, functional coverage fulfillment can be improved. However, in many cases it is difficult to reach specific functional situations because it is not easy to correlate the required input stimuli with the expected behavior of the digital design. Therefore, both industry and academia seek solutions to automate the generation of stimuli to reach all the functionalities of interest with less human effort and in less time. In this paper, several approaches inspired by genetic algorithms were developed and tested using three different designs. In all situations, the percentage of stimulus sets generated using well-performing genetic algorithms approaches was higher than the values that resulted when random simulations were employed. In addition, in most cases the genetic algorithm approach reached a higher coverage value per test compared to the random simulation outcome. The results confirmed that in many cases genetic algorithms can outperform constrained random generation of stimuli, that is employed in the classical way of doing verification, considering coverage fulfillment level per verification test.
Source: crossref · Quality: baseline
Research context
OpenAlex topics: VLSI and Analog Circuit Testing · Integrated Circuits and Semiconductor Failure Analysis · Electrostatic Discharge in Electronics
SciVX discovery tags are terminology-based. OpenAlex topics are source-provided classifications.
Affiliations
Department of Electronics and Computers, Transilvania University of Brașov, RO-500036 Brașov, Romania
References (30)
Show source-provided references
1. Hardware reconfiguration of a SoC10.19062/1842-9238.2018.16.1.8 ↗
2. A multi-granularity FPGA with hierarchical interconnects for efficient and flexible mobile computing10.1109/JSSC.2014.2372034 ↗
3. Dinu, A., Danciu, G.M., and Ogruțan, P.L. (2020, January 7–9). Debug FPGA projects using machine learning. Proceedings of the 2020 International Semiconductor Conference (CAS), Sinaia, Romania.10.1109/CAS50358.2020.9268007 ↗
4. Dinu, A., and Ogrutan, P.L. (2019, January 23–26). Opportunities of using artificial intelligence in hardware verification. Proceedings of the IEEE 25th International Symposium for Design and Technology in Electronic Packaging (SIITME), Cluj-Napoca, Romania.10.1109/SIITME47687.2019.8990751 ↗
5. Piziali, A. (2007). Functional Verification Coverage Measurement and Analysis, Springer Science & Business Media.
6. Anilkumar, R., Varaprasad, B.K.S.V.L., and Padmapriya, K. (2022). Automation of Translating Unit-Level Verification Scenarios for Test Vector Generation of SoC. Intelligent Sustainable Systems, Springer.10.1007/978-981-16-6309-3_50 ↗
7. Advanced virtual prototyping for cyber-physical systems using RISC-V: Implementation, verification and challenges10.1007/s11432-020-3308-4 ↗
8. Krylov, G., and Friedman, E.G. (2022). EDA for Superconductive Electronics. Single Flux Quantum Integrated Circuit Design, Springer.10.1007/978-3-030-76885-0 ↗
9. Foster, H., Krolnik, A., and Lacey, D. (2003). Functional Coverage. Assertion-Based Design, Springer.10.1007/978-1-4419-9228-4 ↗
10. Dinu, A., and Ogruţan, P.L. (2019, January 9–11). Coverage fulfillment methods as key points in functional verification of integrated circuits. Proceedings of the 42th International Semiconductor Conference (CAS), Sinaia, Romania.10.1109/SMICND.2019.8923695 ↗
11. Ismail, K.A., and Abd El Ghany, M.A. (2021, January 23–25). High Performance Machine Learning Models for Functional Verification of Hardware Designs. Proceedings of the 3rd Novel Intelligent and Leading Emerging Sciences Conference (NILES), Giza, Egypt.10.1109/NILES53778.2021.9600502 ↗
12. Ismail, K.A., and Ghany, M.A. (2021). Survey on Machine Learning Algorithms Enhancing the Functional Verification Process. Electronics, 10.10.3390/electronics10212688 ↗
13. Coverage-directed test generation automated by machine learning—A review10.1145/2071356.2071363 ↗
14. Machine Learning Techniques for Improving the Performance Metrics of Functional Verification
15. Samarah, A., Habibi, A., Tahar, S., and Kharma, N. (2006, January 8–10). Automated Coverage Directed Test Generation Using a Cell-Based Genetic Algorithm. Proceedings of the IEEE International High Level Design Validation and Test Workshop, Monterey, CA, USA.10.1109/HLDVT.2006.319996 ↗
16. Van Rossum, G. (2007, January 17–22). Python Programming Language. Proceedings of the USENIX Annual Technical Conference, Santa Clara, CA, USA.
17. Lutz, M. (2001). Programming Python, O’Reilly Media, Inc.
18. Ferreira, A., Franco, R., and da Silva, K.R.G. (2021, December 14). Using Genetic Algorithm in Functional Verification to Reach High Level Functional Coverage. Available online: https://www.inf.ufrgs.br/sim-emicro/papers/sim2013_submission_50.pdf.
19. Genetic Algorithm applied to the Functional Verification in Digital Systems10.29292/jics.v13i1.20 ↗
20. Cristescu, M.-C., and Bob, C. (2021, January 22–28). Flexible Framework for Stimuli Redundancy Reduction in Functional Verification Using Artificial Neural Networks. Proceedings of the IEEE International Symposium on Signals, Circuits and Systems (ISSCS), Daegu, Korea.10.1109/ISSCS52333.2021.9497443 ↗
21. An efficient coverage driven functional verification system based on genetic algorithm
22. Cihan, A.N., and Güğül, G.N. (2020, January 4–7). An Indoor Smart Lamp For Environments Illuminated Day Time. Proceedings of the IEEE East-West Design & Test Symposium (EWDTS), Varna, Bulgaria.10.1109/EWDTS50664.2020.9224900 ↗
23. Intelligent homes’ technologies to optimize the energy performance for the net zero energy home10.1016/j.enbuild.2017.07.089 ↗
24. Accelera (2021, December 14). Universal Verification Methodology (UVM) 1.2 User’s Guide. Available online: https://www.accellera.org/images/downloads/standards/uvm/uvm_users_guide_1.2.pdf.
25. Bergeron, J. (2007). Writing Testbenches Using System Verilog, Springer Science & Business Media.10.1007/0-387-31275-7 ↗
26. (2021, December 14). Modelsim. Available online: https://eda.sw.siemens.com/en-US/ic/modelsim/.
27. Stefan, G., and Alexandru, D. (2021, January 10–11). Controlling hardware design behavior using Python based machine learning algorithms. Proceedings of the 16th International Conference on Engineering of Modern Electric Systems (EMES), Oradea, Romania.10.1109/EMES52337.2021.9484105 ↗
28. An improved teaching-learning-based optimization algorithm and its application to a combinatorial optimization problem in foundry industry10.1016/j.asoc.2017.04.029 ↗
29. A Combination of Palmer Algorithm and Gupta Algorithm for Scheduling Problem in Apparel Industry
30. Eiben, A.E., Raue, P.-E., and Ruttkay, Z. (1994, January 9–14). Genetic algorithms with multi-parent recombination. Proceedings of the International Conference on Parallel Problem Solving from Nature, Jerusalem, Israel.10.1007/3-540-58484-6_252 ↗