Probabilistic Analysis for Sequential Circuits Verification Using Markov Chains

Random testing is used extensively in functional verification of hardware systems. In practice, testing stops when a certain coverage criterion is achieved. However, testing has the inherent problem of being only able to expose bugs, not prove their absence. Thus, proving whether a potential bug exists or not under current verification efforts would be helpful to measure the completeness of testing. This brief proposes a probabilistic coverage analysis method to quantify the probability of bug existence for sequential circuit verification under random testing. The proposed method consists of an effective formula for computing the probability of a bug (assuming it exists) being detected in a sequential circuit. The formula is time complexity cubic to the number of coverage bins and linear to the number of test cycles. To validate the proposed method, it was implemented in MATLAB to calculate the probability of a bug being detected. Experimental results on 20,116 random instances indicate that, using Monte Carlo simulation, the proposed analysis method has an average absolute relative error of approximately 0.027%, comparing to 7.38% in existing work.

[1]  Bijan Alizadeh,et al.  Incremental SAT-Based Correction of Gate Level Circuits by Reusing Partially Corrected Circuits , 2020, IEEE Transactions on Circuits and Systems II: Express Briefs.

[2]  M. Eisen,et al.  Probability and its applications , 1975 .

[3]  Axel Legay,et al.  Statistical Model Checking for SystemC Models , 2016, 2016 IEEE 17th International Symposium on High Assurance Systems Engineering (HASE).

[4]  Min Zhou,et al.  Temporal Coverage Analysis for Dynamic Verification , 2018, IEEE Transactions on Circuits and Systems II: Express Briefs.

[5]  Jiantao Zhou,et al.  A Quantitative Characterization of Cross Coverage , 2015, IEEE Transactions on Computers.

[6]  Frank Ciesinski,et al.  On Probabilistic Computation Tree Logic , 2004, Validation of Stochastic Systems.

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

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

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