Hybrid techniques for fast functional simulation

W e implement and experiment with techniques for the functional simulation of very large digital systems. We consider techniques that are a hybrid of classical compiled code simulation and recent branching program based simulation in order to resolve memory performance problems inherent to BDD based cycle simulation. Specifically, predefined functional units (“macros”) are extracted from the circuit and evaluated directly instead of building BDDs for them. The functionality of those macros, such as multipliers, filters, etc., can in turn be verified by simulation of their gate-level implementations respectively or by formal verification techniques. Our results demonstrate that this approach leads to considerably faster simulation.

[1]  E BryantRandal Graph-Based Algorithms for Boolean Function Manipulation , 1986 .

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

[3]  Robert S. Boyer,et al.  A computational logic handbook , 1979, Perspectives in computing.

[4]  Eduard Cerny,et al.  Simulation of MOS Circuits by Decision Diagrams , 1985, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[5]  Aarti Gupta,et al.  Formal hardware verification methods: A survey , 1992, Formal Methods Syst. Des..

[6]  Sharad Malik,et al.  Fast functional simulation using branching programs , 1995, ICCAD.

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

[8]  A.L. Sangiovanni-Vincentelli,et al.  Fast discrete function evaluation using decision diagrams , 1995, Proceedings of IEEE International Conference on Computer Aided Design (ICCAD).

[9]  Randal E. Bryant,et al.  Verification of Arithmetic Circuits with Binary Moment Diagrams , 1995, 32nd Design Automation Conference.

[10]  Rolf Drechsler,et al.  Functional simulation using binary decision diagrams , 1997, ICCAD 1997.

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