Summary
A counter is calculationally designed by applying a functional way of programming, in which a machine is conceived as a function from states to behaviours. The design exploits the fine-grained concurrency available in VLSI. It is obtained by applying a series of correctness-preserving transformations on an initial design, which satisfies the functional specification but does not meet the cost/performance requirements. The transformations are purely calculational, i.e. they are based on a few simple axioms. The design is generic in that it describes counters with all possible periods. An attractive property of the design is that all these counters have the same response time as well as the same power dissipation.
Similar content being viewed by others
References
van Berkel CH, Kessels JLW, Roncken ME, Saeijs RWJJ, Schalij FP: The VLSI-programming language Tangram and its translation into handshake circuits. Proc Eur Conf on Design Automation, Amsterdam 1991, pp 384–389
van Berkel CH: VLSI programming of a modulo-N counter with constant response time and constant power. Proc Working Conference on Asynchronous Design Methodologies, Manchester 1993
Dijkstra EW: A discipline of programming. Series in Automatic Computation, Prentice-Hall, Englewood Cliffs, NY 1976
Dijkstra EW, Scholten CS: Predicate calculus and program semantics. Texts and Monographs in Computer Science, Springer, Berlin Heidelberg, New York, 1989
Ebergen JC, Peeters AMG: Modulo-N counters: design and analysis of delay insensitive circuits. Proc 2nd Workshop on Designing Correct Circuits, Lyngby 1992, pp 27–46
Hennessy M: Algebraic theory of processes. Series in the Foundation of Computing. MIT Press, Cambridge Massachusetts, 1988
Hoare CAR: Communicating sequential processes Commun ACM 21:666–677 (1978)
Hoare CAR: Communicating sequential processes. Series in Computer Science. Prentice-Hall, Englewood Cliffs, NY 1985
Hoare CAR et al.: Laws of programming. Commun ACM 30: 672–686 (1987)
Josephs MB, Udding JT: Implementing a stack as a delay-insensitive-circuit. Proc Working Conference on Asynchronous Design Methodologies, Manchester 1993
Kessels JLW, Rem M: Designing systolic, distributed buffers with bounded response time. Distrib Comput 4: 37–43 (1990)
Kessels JLW: The systematic design of a systolic RSA converter. Proc Workshop on Correct Hardware Design Methodologies, Turin. Elsevier, Amsterdam New York 1991, pp 235–251
Kessels JLW: Designing counters with bounded response time. CS Scholten dedicata: van oude machines en nieuwe rekenwijzen. Academic Service, Schoonhoven, The Netherlands 1991, pp 127–140
Martin AJ: Compiling communicating processes into delay-insensitive VLSI circuits. Distrib Comput 1: 226–234 (1986)
Milner R: A calculus of communicating systems. Lect Notes Comput Sci, Vol 92. Springer, Berlin Heidelberg New York 1980
Rem M: Trace theory and systolic computations. Proc Conf Parallel Architectures and Languages Europe (Parle), Eindhoven, The Netherlands. Lect Notes Comput Sci, Vol 258. Springer, Berlin Heidelberg New York 1987, pp 14–33
Author information
Authors and Affiliations
Additional information
Joep Kessels is a senior scientist at Philips Research Laboratories. He was involved in projects on applicative programming, distributed processing and local area networks. Currently he is engaged in a project on designing asynchronous VLSI circuits. His main research interests are design methodology and distributed processing.
Rights and permissions
About this article
Cite this article
Kessels, J.L.W. Calculational derivation of a counter with bounded response time and bounded power dissipation. Distrib Comput 8, 143–149 (1995). https://doi.org/10.1007/BF02242716
Received:
Accepted:
Issue Date:
DOI: https://doi.org/10.1007/BF02242716