A case study for the verification of complex timed circuits: IPCMOS

The verification of a n-stage pulse-driven IPCMOS pipeline, for any n>0, is presented. The complexity of the system is 32n transistors and delay information is provided at the level of transistor The correctness of the circuit highly depends on the timed behavior of its components and the environment. To verify the system, three techniques have been combined: (1) relative-timing-based verification from absolute timing information, (2) assume-guarantee reasoning to verify untimed abstractions of timed components and (3) mathematical induction to verify pipelines of any length. Even though the circuit can interact with pulse-driven environments, the internal behavior between stages commits a handshake protocol that enables the use of untimed abstractions. The verification not only reports a positive answer about the correctness of the system, but also gives a set of sufficient relative-timing constraints that determine delay slacks under which correctness can be maintained.

[1]  Antti Valmari,et al.  Unbounded verification results by finite-state compositional techniques: 10/sup any/ states and beyond , 1998, Proceedings 1998 International Conference on Application of Concurrency to System Design.

[2]  Carlos Delgado Kloos,et al.  Proceedings 2002 Design, Automation and Test in Europe Conference and Exhibition , 2002, Proceedings 2002 Design, Automation and Test in Europe Conference and Exhibition.

[3]  Kenneth L. McMillan,et al.  A Compositional Rule for Hardware Design Refinement , 1997, CAV.

[4]  Krzysztof R. Apt,et al.  Logics and Models of Concurrent Systems , 1989, NATO ASI Series.

[5]  Amir Pnueli,et al.  In Transition From Global to Modular Temporal Reasoning about Programs , 1989, Logics and Models of Concurrent Systems.

[6]  Alon Itai,et al.  Timing Verification by Successive Approximation , 1992, CAV.

[7]  Ran Ginosar,et al.  Relative timing , 1999, Proceedings. Fifth International Symposium on Advanced Research in Asynchronous Circuits and Systems.

[8]  Tom Melham,et al.  Abstraction Mechanisms for Hardware Verification , 1988 .

[9]  Edmund M. Clarke,et al.  Symbolic Model Checking: 10^20 States and Beyond , 1990, Inf. Comput..

[10]  David L. Dill,et al.  Algorithms for interface timing verification , 1992, Proceedings 1992 IEEE International Conference on Computer Design: VLSI in Computers & Processors.

[11]  Thomas A. Henzinger,et al.  What Good Are Digital Clocks? , 1992, ICALP.

[12]  Thomas A. Henzinger,et al.  Temporal proof methodologies for real-time systems , 1991, POPL '91.

[13]  Jordi Cortadella,et al.  Formal verification of safety properties in timed circuits , 2000, Proceedings Sixth International Symposium on Advanced Research in Asynchronous Circuits and Systems (ASYNC 2000) (Cat. No. PR00586).

[14]  Alberto L. Sangiovanni-Vincentelli,et al.  On the Automatic Computation of Network Invariants , 1994, CAV.

[15]  Olivier Bournez,et al.  On the Representation of Timed Polyhedra , 2000, ICALP.

[16]  Rajeev Alur,et al.  A Theory of Timed Automata , 1994, Theor. Comput. Sci..

[17]  D. Heidel,et al.  Asynchronous interlocked pipelined CMOS circuits operating at 3.3-4.5 GHz , 2000, 2000 IEEE International Solid-State Circuits Conference. Digest of Technical Papers (Cat. No.00CH37056).

[18]  Luciano Lavagno,et al.  Lazy transition systems: application to timing optimization of asynchronous circuits , 1998, ICCAD '98.

[19]  Luciano Lavagno,et al.  Lazy transition systems: application to timing optimization of asynchronous circuits , 1998, 1998 IEEE/ACM International Conference on Computer-Aided Design. Digest of Technical Papers (IEEE Cat. No.98CB36287).