Validation coverage analysis for complex digital designs

The functional validation of a state-of-the-art digital design is usually performed by simulation of a register-transfer-level model. The degree to which the test vector suite covers the important tests is known as the coverage of the suite. Previous coverage metrics have relied on measures such as the number of simulated cycles or number of toggles on a circuit node, which are indirect metrics at best. This paper proposes a new method of analyzing coverage based on projecting a minimized control finite-state graph onto control signals for the datapath part of the design to yield a meaningful metric and provide detailed feedback about missing tests. The largest hurdle is state-space explosion. We describe two methods of dealing with this in a practical manner and give results of applying this coverage analysis to parts of the node controller of the Stanford FLASH multiprocessor.

[1]  Michael Kantrowitz,et al.  Functional Verification of a Multiple-issue, Pipelined, Superscalar Alpha Processor - the Alpha 21164 CPU Chip , 1995, Digit. Tech. J..

[2]  Alan J. Hu,et al.  Protocol verification as a hardware design aid , 1992, Proceedings 1992 IEEE International Conference on Computer Design: VLSI in Computers & Processors.

[3]  Anoop Gupta,et al.  The Stanford FLASH Multiprocessor , 1994, ISCA.

[4]  Mark Horowitz,et al.  Architecture validation for processors , 1995, Proceedings 22nd Annual International Symposium on Computer Architecture.

[5]  Barry K. Rosen,et al.  Architectural verification of processors using symbolic instruction graphs , 1994, Proceedings 1994 IEEE International Conference on Computer Design: VLSI in Computers and Processors.

[6]  Jacob A. Abraham,et al.  Automatic extraction of the control flow machine and application to evaluating coverage of verification vectors , 1995, Proceedings of ICCD '95 International Conference on Computer Design. VLSI in Computers and Processors.