Advertisement

Algorithmica

, Volume 6, Issue 1–6, pp 5–35 | Cite as

Retiming synchronous circuitry

  • Charles E. Leiserson
  • James B. Saxe
Article

Abstract

This paper describes a circuit transformation calledretiming in which registers are added at some points in a circuit and removed from others in such a way that the functional behavior of the circuit as a whole is preserved. We show that retiming can be used to transform a given synchronous circuit into a more efficient circuit under a variety of different cost criteria. We model a circuit as a graph in which the vertex setV is a collection of combinational logic elements and the edge setE is the set of interconnections, each of which may pass through zero or more registers. We give anOVE¦lg¦V¦) algorithm for determining an equivalent retimed circuit with the smallest possible clock period. We show that the problem of determining an equivalent retimed circuit with minimum state (total number of registers) is polynomial-time solvable. This result yields a polynomial-time optimal solution to the problem of pipelining combinational circuitry with minimum register cost. We also give a chacterization of optimal retiming based on an efficiently solvable mixed-integer linear-programming problem.

Key words

Digital circuitry Graph theory Linear programming Network flow Optimization Pipelining Propagation delay Retiming Synchronous circuitry Systolic circuits Timing analysis 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [1]
    J. Edmonds and R. M. Karp, Theoretical improvements in algorithmic efficiency for network flow problems,Journal of the Association for Computing Machinery, Vol. 19, No. 2, 1972, pp. 248–264.zbMATHGoogle Scholar
  2. [2]
    M. L. Fredman and R. E. Tarjan, Fibonacci heaps and their uses in improved network optimization algorithms,Proceedings of the 25th Annual Symposium on Foundations of Computer Science, IEEE Computer Society, October 1984, pp. 338–346.Google Scholar
  3. [3]
    Z. Galil and É. Tardos, AnO(n 2(m +n logn) logn) min-cost flow algorithm,Proceedings of the 27th Annual Symposium on Foundations of Computer Science, IEEE Computer Society, October 1986, pp. 1–9.Google Scholar
  4. [4]
    M. R. Garey and D. S. Johnson,Computers and Intractability, Freeman, San Francisco, 1979.zbMATHGoogle Scholar
  5. [5]
    A. V. Goldberg, Efficient Parallel Algorithms for Sequential and Parallel Computers, Ph.D. dissertion, Department of Electrical Engineering and Computer Science, MIT, February 1987.Google Scholar
  6. [6]
    A. V. Goldberg and R. E. Tarjan, Finding Minimum-Cost Circulations by Successive Approximation, Technical Memorandum MIT/LCS/TM-33, MIT Laboratory for Computer Science, July 1987.Google Scholar
  7. [7]
    D. B. Johnson, Efficient algorithms for shortest paths in sparse networks,Journal of the Association for Computing Machinery, Vol. 24, No. 1, January 1977, pp. 1–13.zbMATHMathSciNetGoogle Scholar
  8. [8]
    H. T. Kung, Let's design algorithms for VLSI systems,Proceedings of the Caltech Conference on Very Large Scale Integration, C. L. Seitz, ed., Pasadena, California, January 1979, pp. 55–90.Google Scholar
  9. [9]
    H. T. Kung and C. E. Leiserson, Systolic arrays (for VLSI),Sparse Matrix Proceedings 1978, I. S. Duff and G. W. Stewart, ed., Society for Industrial and Applied Mathematics, 1979, pp. 256–282. (An earlier version appears in Chapter 8 of [16] under the title, “Algorithms for VLSI processor arrays.”)Google Scholar
  10. [10]
    E. L. Lawler,Combinatorial Optimization: Networks and Matroids, Holt, Rinehart and Winston, New York, 1976.zbMATHGoogle Scholar
  11. [11]
    C. E. Leiserson, Area-Efficient VLSI Computation, Ph.D. dissertation, Department of Computer Science, Carnegie-Mellon University, October 1981. Published in book form by the MIT Press, Cambridge, Massachcusetts, 1983.Google Scholar
  12. [12]
    C. E. Leiserson, Systolic and semisystolic design,Proceedings of the IEEE International Conference on Computer Design/VLSI in Computers (ICCD '83), Rye, New York, October 1983, pp. 627–632.Google Scholar
  13. [13]
    C. E. Leiserson, Flavio M. Rose, and James B. Saxe, Optimizing synchronous circuitry by retiming,”Proceedings of the 3rd Caltech Conference on Very Large Scale Integration, Randal Bryant, ed., California Institute of Technology, 1983, pp. 87–116. Computer Science Press, Rockville, Maryland.Google Scholar
  14. [14]
    C. E. Leiserson and J. B. Saxe, Optimizing synchronous systems,Journal of VLSI and Computer Systems, Vol. 1, No. 1, Spring 1983, pp. 41–67.zbMATHGoogle Scholar
  15. [15]
    C. E. Leiserson and James B. Saxe, A mixed-integer programming problem which is efficiently solvable,Journal of Algorithms, Vol. 9, 1988, pp. 114–128. (An earlier version appears inProceedings of the 21st Annual Allerton Conference on Communication, Control, and Computing, October 1983, pp. 204–213).zbMATHCrossRefMathSciNetGoogle Scholar
  16. [16]
    C. A. Mead and L. A. Conway,Introduction to VLSI Systems, Addison-Wesley, Reading, Massachusetts, 1980.Google Scholar
  17. [17]
    P. Ng, W. Glauert, and R. Kirk, A timing verification system based on extracted MOS/VLSI circuit parameters,18th Design Automation Conference Proceedings, IEEE, 1981, pp. 288–292.Google Scholar
  18. [18]
    J. B. Orlin, A faster strongly polynomial minimum cost flow algorithm,Proceedings of the 20th Annual ACM Symposium on Theory of Computing, ACM, May 1988, pp. 377–387.Google Scholar
  19. [19]
    F. M. Rose, Models for VLSI Circuits, Masters thesis, Department of Electrical Engineering and Computer Science, MIT, March 1982. Also available as MIT VLSI Memo No. 82–114.Google Scholar
  20. [20]
    J. B. Saxe, Decomposable Searching Problems and Circuit Optimization by Retiming: Two Studies in General Transformations of Computational Structures, Ph.D. dissertation, Department of Computer Science, Carnegie-Mellon University, August 1985.Google Scholar
  21. [21]
    Texas Instruments Incorporated,The TTL Data Book for Design Engineers, Dallas, Texas, 1976.Google Scholar

Copyright information

© Springer-Verlag New York Inc. 1991

Authors and Affiliations

  • Charles E. Leiserson
    • 1
  • James B. Saxe
    • 2
  1. 1.Laboratory for Computer ScienceMassachusetts Institute of TechnologyCambridgeUSA
  2. 2.DEC Systems Research CenterPalo AltoUSA

Personalised recommendations