A Quantitative Characterization of Cross Coverage

Effective verification methods are necessary for finding bugs in complex system design. Given domain specific knowledge, design verification engineers typically specify cross coverage for certain risky areas where bugs tend to appear. This paper proposes a pragmatic coverage model based on cross coverage. We address the verification on user specified cross coverage regions. The proposed analysis models the probability of exposing the bug within a given number of samplings, and derives the expected number of samples until bug detection. The approach is applicable to random, round-robin, and hybrid sampling strategies in recurring and nonrecurring cases based on our cross coverage model. We have written Matlab and C programs that use our formulas to calculate the probabilities. Experimental results show that our analysis is consistent with Monte Carlo simulation.

[1]  Christian B. Spear,et al.  SystemVerilog for Verification: A Guide to Learning the Testbench Language Features , 2007 .

[2]  Jiang Long,et al.  Smart simulation using collaborative formal and simulation engines , 2000, IEEE/ACM International Conference on Computer Aided Design. ICCAD - 2000. IEEE/ACM Digest of Technical Papers (Cat. No.00CH37140).

[3]  C. Pixley,et al.  Simplifying Boolean constraint solving for random simulation-vector generation , 2002, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[4]  Adnan Aziz,et al.  Constraint-based verification , 2006 .

[5]  J. Yuan,et al.  A framework for constrained functional verification , 2003, ICCAD-2003. International Conference on Computer Aided Design (IEEE Cat. No.03CH37486).

[6]  Andreas Kuehlmann,et al.  Stimulus generation for constrained random simulation , 2007, ICCAD 2007.

[7]  Sofia Cassel,et al.  Graph-Based Algorithms for Boolean Function Manipulation , 2012 .

[8]  Robert P. Kurshan,et al.  Application of Formal Word-Level Analysis to Constrained Random Simulation , 2008, CAV.

[9]  Adrian Evans,et al.  Functional verification of large ASICs , 1998, Proceedings 1998 Design and Automation Conference. 35th DAC. (Cat. No.98CH36175).

[10]  Andreas Kuehlmann,et al.  A Markov Chain Monte Carlo Sampler for Mixed Boolean/Integer Constraints , 2009, CAV.

[11]  Avi Ziv,et al.  Advanced analysis techniques for cross-product coverage , 2005, Tenth IEEE International High-Level Design Validation and Test Workshop, 2005..

[12]  Adnan Aziz,et al.  Modeling design constraints and biasing in simulation using BDDs , 1999, 1999 IEEE/ACM International Conference on Computer-Aided Design. Digest of Technical Papers (Cat. No.99CH37051).

[13]  G. Ganapathy,et al.  Hardware emulation for functional verification of K5 , 1996, 33rd Design Automation Conference Proceedings, 1996.

[14]  Janick Bergeron,et al.  Writing Testbenches: Functional Verification of HDL Models , 2000 .

[15]  Xiaoyu Song,et al.  BDD minimization by scatter search , 2002, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[16]  Ofer Strichman,et al.  A probabilistic analysis of coverage methods , 2011, TODE.

[17]  Anna Slobodová,et al.  Use of Formal Verification at Centaur Technology , 2010, Design and Verification of Microprocessor Systems for High-Assurance Applications.

[18]  Kurt Keutzer,et al.  Coverage Metrics for Functional Validation of Hardware Designs , 2001, IEEE Des. Test Comput..

[19]  J.C.G. Pimentel,et al.  Hardware Emulation for Real-Time Power System Simulation , 2006, 2006 IEEE International Symposium on Industrial Electronics.

[20]  Eduard Cerny,et al.  Verification Methodology Manual for SystemVerilog , 2005 .

[21]  B Cipra How Number Theory Got the Best of the Pentium Chip , 1995, Science.

[22]  Mahesh A. Iyer,et al.  Race a word-level atpg-based constraints solver system for smart random simulation , 2003, International Test Conference, 2003. Proceedings. ITC 2003..

[23]  Doug Amos,et al.  FPGA-Based Prototyping Methodology Manual: Best Practices in Design-For-Prototyping , 2011 .