Wave steered FSMs

In this paper we address the problem of designing very high throughput finite state machines (FSMs). The presence of loops in sequential circuits prevents a straightforward and generalized application of pipelining techniques, which work so well for combinational circuits, to increase FSM performance. We observe that appropriate extensions of the "wave steering" technique are possible to partially overcome the problem. Additionally we use FSM decomposition theory to decouple state variable dependencies. Application of these two techniques to MCNC benchmarks resulted in a factor of 3 average throughput increase as compared to a standard cell implementation, at the expense of factor 3.7 area and less than factor 2 latency penalties.

[1]  Srinivas Devadas,et al.  Decomposition and factorization of sequential finite state machines , 1989, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[2]  Alberto L. Sangiovanni-Vincentelli,et al.  Logic synthesis for large pass transistor circuits , 1997, 1997 Proceedings of IEEE International Conference on Computer Aided Design (ICCAD).

[3]  Arthur D. Friedman Feedback in Synchronous Sequential Switching Circuits , 1966, IEEE Trans. Electron. Comput..

[4]  Srinivas Devadas,et al.  Performance-oriented decomposition of sequential circuits , 1990, IEEE International Symposium on Circuits and Systems.

[5]  Giovanni De Micheli,et al.  Synchronous logic synthesis: algorithms for cycle-time minimization , 1991, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[6]  K. McMillan,et al.  Safe BDD Minimization Using Don't Cares , 1997, Proceedings of the 34th Design Automation Conference.

[7]  J. Hartmanis Algebraic structure theory of sequential machines (Prentice-Hall international series in applied mathematics) , 1966 .

[8]  Luca Benini,et al.  Telescopic units: a new paradigm for performance optimization of VLSI designs , 1998, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[9]  M. Marek-Sadowska,et al.  Wave pipelining YADDs-a feasibility study , 1999, Proceedings of the IEEE 1999 Custom Integrated Circuits Conference (Cat. No.99CH36327).

[10]  A. Richard Newton,et al.  Logic synthesis for large pass transistor circuits , 1997, ICCAD 1997.

[11]  Luca Benini,et al.  Decision Diagrams and Pass Transistor Logic Synthesis , 1997 .

[12]  J. Hartmanis,et al.  Algebraic Structure Theory Of Sequential Machines , 1966 .

[13]  Kazuo Taki A Survey for Pass-Transistor Logic Technologies , 1997 .

[14]  Srinivas Devadas,et al.  Optimum and heuristic algorithms for an approach to finite state machine decomposition , 1991, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[15]  K. Cameron,et al.  Multiple-input, multiple-output pass transistor logic , 1995 .

[16]  Fabio Somenzi,et al.  CUDD: CU Decision Diagram Package Release 2.2.0 , 1998 .

[17]  Edward A. Feigenbaum,et al.  Switching and Finite Automata Theory: Computer Science Series , 1990 .

[18]  David G. Messerschmitt,et al.  Finite state machine has unlimited concurrency , 1991 .

[19]  Thomas Müller-Wipperfürth,et al.  FSM decomposition revisited: algebraic structure theory applied to MCNC benchmark FSMs , 1991, 28th ACM/IEEE Design Automation Conference.

[20]  Malgorzata Marek-Sadowska,et al.  Wave steering in YADDs: a novel non-iterative synthesis and layout technique , 1999, DAC '99.

[21]  Hans-Joachim Wunderlich,et al.  Fast controllers for data dominated applications , 1997, Proceedings European Design and Test Conference. ED & TC 97.

[22]  Tiziano Villa,et al.  NOVA: State Assignment of Finite State Machines for Optimal Two-Level Logic Implementations , 1989, 26th ACM/IEEE Design Automation Conference.

[23]  Herschel H. Loomis,et al.  High Rate Realization of Finite-State Machines , 1975, IEEE Transactions on Computers.