Abstract
Algorithms designed for VLSI implementation are commonly described by directed graphs, in which the nodes represent functional units and the arcs indicate communication links. We give a denotational semantics for such a graph in terms of the least fixed point of a set of (mutually recursive) function definitions, describing the outputs produced at each node as a function of time. This semantics is consistent with the conventional clocked operational semantics of the system. A retiming is a systematic modification of the internode delays of a design, often used to convert an algorithm design into a systolic form. The utility of such retimings in optimizing the behavior of designs is well known. We use fixed-point semantics to provide simple proofs of the correctness of certain retiming transformations from the literature and to justify other design transformations such as pipelining.
Similar content being viewed by others
References
Charles E. Leiserson and James B. Saxe. Optimizing synchronous systems.Journal of VLSI and Computer Systems, 1(1): 41–68 (1983).
H.T. Kung and W.T. Lin. An algebra for VLSI computation. InElliptic Problem Solvers II, G. Birkhoff and A.L. Schoenstadt (eds.). Academic Press, New York, January 1983.
M.C. Chen.Space-time Algorithms: Semantics and Methodology. Ph.D. thesis, Department of Computer Science, California Institute of Technology, May 1983.
M.C. Chen and C.A. Mead. A hierarchical simulator based on formal semantics. InProceedings of the Third Caltech Conference on Very Large Scale Integration, R. Bryant (ed.). Computer Science Press, Rockville, Maryland, March 1983, papes 207–223.
M.J.C. Gordon. A model of register transfer systems with applications to microcode and VLSI correctness. Department of Computer Science Technical Report CSR-82-81, University of Edinburgh, 1981.
J.E. Stoy.Denotational Semantics: The Scott-Strachey Approach to Programming Language Semantics. MIT Press, Cambridge, MA, 1977.
D.S. Scott and C. Strachey. Toward a mathematical semantics for computer languages. InProceedings of the Symposium on Computers and Automata, J. Box (ed.). Polytechnic Institute of Brooklyn Press, New York, 1971, pp. 19–46.
H.T. Kung and M. Lam. Fault-tolerance and two-level pipelining in VLSI systolic arrays. InProceedings of the Conference on Advanced Research in VLSI, MIT, Cambridge, MA, January 1984.
J.W. de Bakker and D.S. Scott. A theory of programs.Seminar on Programming Theory, Vienna, 1969.
G. Kahn and D.B. MacQueen. Coroutines and networks of parallel processes. InInformation Processing 1977. North Holland, Amsterdam, 1977, pp. 993–998.
M. Lam and J. Mostow. A transformational model of VLSI systolic design. InProceedings of the 6 th International Symposium on Computer Hardware Description Languages and their Applications, T. Uehara and M. Barbacci (eds.). IFIP, Pittsburgh, PA, May 1983.
Stephen N. Cole. Real-time computation byn-dimensional iterative arrays of finite-state machines.IEEE Transactions on Computers, C-18:349–365 (April 1969).
H.T. Kung and Charles E. Leiserson. Systolic arrays (for VLSI). InSparse Matrix Proceedings 1978, I.S. Duff and G.W. Stewart (eds.). Society for Industrial and Applied Mathematics, 1978, Philadelphia, PA, pp. 256–282.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Brookes, S. Using fixed-point semantics to prove retiming lemmas. Form Method Syst Des 2, 73–91 (1993). https://doi.org/10.1007/BF01383944
Issue Date:
DOI: https://doi.org/10.1007/BF01383944