Formally Correct Construction of Pipelined Processors

A method of formally correct synthesis is presented, and applied to the automatic construction of pipelined processors. The method is based on a repertoire of elementary correctness-preserving transformations which are e ciently cross-checked by an independent formal veri cation tool. Basic pipelining strategies as well as automatic post-synthesis veri cation are provided.

[1]  Egon Börger,et al.  A Practical Method for Rigorously Controllable Hardware Design , 1997, ZUM.

[2]  David Cyrluk,et al.  Inverting the Abstraction Mapping: A Methodology for Hardware Verification , 1996, FMCAD.

[3]  Kunle Olukotun,et al.  Verifying correct pipeline implementation for microprocessors , 1997, 1997 Proceedings of IEEE International Conference on Computer Aided Design (ICCAD).

[4]  V. M. Glushkov,et al.  Automata theory and formal microprogram transformations , 1965 .

[5]  Kunle Olukotun,et al.  A scalable formal verification methodology for pipelined microprocessors , 1996, 33rd Design Automation Conference Proceedings, 1996.

[6]  David L. Dill,et al.  Efficient validity checking for processor verification , 1995, Proceedings of IEEE International Conference on Computer Aided Design (ICCAD).

[7]  David A. Patterson,et al.  Computer Architecture: A Quantitative Approach , 1969 .

[8]  David L. Dill,et al.  Automatic verification of Pipelined Microprocessor Control , 1994, CAV.

[9]  Arthur J. Bernstein,et al.  Analysis of Programs for Parallel Processing , 1966, IEEE Trans. Electron. Comput..

[10]  David L. Dill,et al.  Validity Checking for Combinations of Theories with Equality , 1996, FMCAD.

[11]  Alice C. Parker,et al.  Sehwa: a software package for synthesis of pipelines from behavioral specifications , 1988, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[12]  Yuri Gurevich,et al.  Equivalence is in the Eye of the Beholder , 1997, Theor. Comput. Sci..

[13]  Steven D. Johnson,et al.  DDD-FM9001: Derivation of a Verified Microprocessor , 1993, CHARME.

[14]  Ramayya Kumar,et al.  Formal Synthesis in Circuit Design - A Classification and Survey , 1996, FMCAD.

[15]  Zohar Manna,et al.  The Temporal Logic of Reactive and Concurrent Systems , 1991, Springer New York.

[16]  Greg Nelson,et al.  Fast Decision Procedures Based on Congruence Closure , 1980, JACM.

[17]  Stefan Höreth Implementation of a multiple-domain decision diagram package , 1997, CHARME.

[18]  Robert E. Shostak,et al.  A Practical Decision Procedure for Arithmetic with Function Symbols , 1979, JACM.

[19]  Steven D. Johnson,et al.  DDD: A System for Mechanized Digital Design Derivation , 1991 .

[20]  P. Sreeranga,et al.  Correctness of Transformations in High Level Synthesis : Formal Veri cation , 1995 .