Calculational derivation of a counter with bounded response time

  • Joep L. W. Kessels
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 683)


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. In the derivation the ultimate program is obtained by applying a series of correctness-preserving transformations on an initial program, which serves as the functional specification.

The design is generic in that it describes counters with all possible periods. The response time as well as the power dissipation of all these counters are bounded by values that do not depend on the period.

Key words

Distributed systems asynchronous circuits handshake circuits recursive designs systolic designs bounded response time counters transformational design 


  1. 1.
    van Berkel C.H., Kessels J.L.W., Roncken M.E., Saeijs R.W.J.J., and Schalij F.P.: The VLSI-programming language Tangram and its translation into handshake circuits. Proc. Eur. Conf. on Design Automation, Amsterdam (1991) 384–389Google Scholar
  2. 2.
    van Berkel C.H.: VLSI programming of a modulo-N counter with constant response time and constant power. Proc. Working Conference on Asynchronous Design Methodologies, Manchester (1992) (to appear)Google Scholar
  3. 3.
    Dijkstra E.W.: A Discipline of Programming. Series in Automatic Computation, Prentice-Hall International (1976)Google Scholar
  4. 4.
    Dijkstra E.W. and Scholten C.S.: Predicate Calculus and Program Semantics. Texts and Monographs in Computer Science, Springer Verlag (1989)Google Scholar
  5. 5.
    Ebergen J.C. and Peeters A.M.G.: Modulo-N counters: design and analysis of dealy insensitive circuits. Proc. 2nd Workshop on Designing Correct Circuits, Lyngby (1992) 27–46Google Scholar
  6. 6.
    Hennessy M.: Algebraic Theory of Processes. Series in the Foundation of Computing, The MIT Press Cambridge Massachusetts (1988)Google Scholar
  7. 7.
    Hoare C.A.R.: Communicating Sequential Processes. Comm. ACM 21 (1978) 666–677Google Scholar
  8. 8.
    Hoare C.A.R.: Communicating Sequential Processes. Series in Computer Science, Prentice-Hall International (1985)Google Scholar
  9. 9.
    Hoare C.A.R. et al.: Laws of Programming. Comm. ACM 30 (1987) 672–686Google Scholar
  10. 10.
    Kessels J.L.W. and Rem M.: Designing Systolic, Distributed Buffers with Bounded Response Time. Distributed Computing 4 (1990) 37–43Google Scholar
  11. 11.
    Kessels J.L.W.: The Systematic Design of a Systolic RSA Converter. Proc. Workshop on Correct Hardware Design Methodologies, Turin (1991) Elsevier Science Publ., 235–251Google Scholar
  12. 12.
    Kessels J.L.W.: Designing Counters with Bounded Response Time. C.S. Scholten dedicata: van oude machines en nieuwe rekenwijzen, Academic Service, Schoonhoven The Netherlands (1991) 127–140Google Scholar
  13. 13.
    Martin A.J.: Compiling communicating processes into delay-insensitive VLSI circuits. Distributed Computing 1 (1986) 226–234Google Scholar
  14. 14.
    Milner R.: A Calculus of Communicating Systems. Lecture Notes in Computing Science 92 Springer-Verlag (1980)Google Scholar
  15. 15.
    Rem M.: Trace theory and systolic computations. Proc. Conf. Parallel Architectures and Languages Europe (Parle), Eindhoven, The Netherlands. Vol. 258, Lecture Notes in Computer Science 258 Springer-Verlag (1987) 14–33Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1993

Authors and Affiliations

  • Joep L. W. Kessels
    • 1
  1. 1.Philips Research LaboratoriesJA EindhovenThe Netherlands

Personalised recommendations