Assertion checking by combined word-level ATPG and modular arithmetic constraint-solving techniques

We present a new approach to checking assertion properties for RTI, design verification. Our approach combines structural, word-level automatic test pattern generation (ATPG) and modular arithmetic constraint-solving techniques to solve the constraints imposed by the target assertion property. Our word-level ATPG and implication technique not only solves the constraints on the control logic, but also propagates the logic implications to the datapath. A novel arithmetic constraint solver based on modular number system is then employed to solve the remaining constraints in datapath. The advantages of the new method are threefold. First, the decision-making process of the word-level ATPG is confined to the selected control signals only. Therefore, the enumeration of enormous number of choices at the datapath signals is completely avoided. Second, our new implication translation techniques allow word-level logic implication being performed across the boundary of datapath and control logic, and therefore, efficiently cut down the ATPG search space. Third, our arithmetic constraint solver is based on modular instead of integral number system. It can thus avoid the false negative effect resulting from the bit-vector value modulation. A prototype system has been built which consists of an industrial front-end HDL parser, a property-to-constraint converter and the ATPG/arithmetic constraint-solving engine. The experimental results on some public benchmark and industrial circuits demonstrate the efficiency of our approach and its applicability to large industrial designs.

[1]  Kurt Keutzer,et al.  Functional vector generation for HDL models using linear programming and 3-satisfiability , 1998, Proceedings 1998 Design and Automation Conference. 35th DAC. (Cat. No.98CH36175).

[2]  L. H. Goldstein,et al.  SCOAP: Sandia Controllability/Observability Analysis Program , 1988, 17th Design Automation Conference.

[3]  Sérgio Vale Aguiar Campos,et al.  Symbolic Model Checking , 1993, CAV.

[4]  Chian-Min Richard Ho,et al.  Validation tools for complex digital designs , 1996 .

[5]  Kwang-Ting Cheng,et al.  Automatic generation of functional vectors using the extended finite state machine model , 1996, TODE.

[6]  Kenneth L. McMillan,et al.  Symbolic model checking: an approach to the state explosion problem , 1992 .

[7]  Kenneth L. McMillan,et al.  The SMV System , 1993 .

[8]  Jae-Young Jang,et al.  Approximate Reachability Don't Cares for CTL model checking , 1998, 1998 IEEE/ACM International Conference on Computer-Aided Design. Digest of Technical Papers (IEEE Cat. No.98CB36287).

[9]  Haya Freedman,et al.  Rings, Fields and Groups , 1984 .

[10]  L. H. Goldstein,et al.  SCOAP: Sandia Controllability/Observability Analysis Program , 1980, 17th Design Automation Conference.

[11]  Randal E. Bryant,et al.  Graph-Based Algorithms for Boolean Function Manipulation , 1986, IEEE Transactions on Computers.

[12]  G. Hachtel,et al.  Approximate Reachability Don't Cares for CTL model checking , 1998, 1998 IEEE/ACM International Conference on Computer-Aided Design. Digest of Technical Papers (IEEE Cat. No.98CB36287).

[13]  R. Kalyanaraman,et al.  Generation of design verification tests from behavioral VHDL programs using path enumeration and constraint programming , 1995, IEEE Trans. Very Large Scale Integr. Syst..

[14]  Amir Pnueli The Temporal Semantics of Concurrent Programs , 1981, Theor. Comput. Sci..

[15]  Masahiro Fujita,et al.  Symbolic model checking using SAT procedures instead of BDDs , 1999, DAC '99.

[16]  Tiziano Villa,et al.  VIS: A System for Verification and Synthesis , 1996, CAV.

[17]  F. Brglez,et al.  On testability of combinational networks , 1984 .