Skip to main content

Infinite Synchronous Concurrent Algorithms The Algebraic Specification and Verification of a Hardware Stack

  • Conference paper
Logic and Algebra of Specification

Part of the book series: NATO ASI Series ((NATO ASI F,volume 94))

Abstract

An infinite synchronous concurrent algorithm (isca) is an algorithm composed of infinitely many modules and channels, computing and communicating in parallel, and synchronised by a global clock. A theory of such algorithms will explore infinite parallelism and also help in understanding computation involving unbounded finite parallelism. The theory presented is a generalisation of a theory of finite synchronous concurrent algorithms, based on computable functions on many sorted algebras. We use algebras to model specifications and iscas, and epimorphisms and isomorphisms to model related notions of implementation.

We will model a hardware stack with unbounded capacity using an infinite synchronous concurrent algorithm and prove that the architecture is correct; special emphasis is placed on using algebras to formalise the various stages of the development.

First we specify equationally a class of hardware stacks that operate in time with streams of data and commands. We then present a specific algebraic model Str op (S(X)) of the hardware stack axioms that computes over an arbitrary data set X and which serves as a mathematical specification for the hardware stack. Next we define an isca and we prove that this isca implements the model Str op (S(X)) of the stack. Finally we consider the refinement of the general algebraic model and isca over the set X to an algebraic model and isca based on the set 0,1 of bits.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 129.00
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 169.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 169.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Similar content being viewed by others

References

  1. P Abdulla, Decision Problems in Systolic Circuit Verification, PhD Thesis, Department of Computer Systems, University of Uppsala, Sweden, (1990).

    Google Scholar 

  2. P Abdulla, “Automatic Verification of a Class of Systolic Circuits”, Formal Apsects of Computing, (1991 to appear).

    Google Scholar 

  3. J A Bergstra and J V Tucker, “Algebraic Specifications of Computable and Semicom-putable Data Structures”, Department of Computer Science Research Report IE 115, Mathematical Centre, Amsterdam, (1979).

    Google Scholar 

  4. J A Bergstra and J V Tucker, “Initial and Final Algebra Semantics for Data Type Specifications: Two Characterisation Theorems”, in SIAM Journal of Computing 12, (1983), pp 366–387.

    Article  MathSciNet  MATH  Google Scholar 

  5. J A Bergstra and J V Tucker, “Algebraic Specifications of (Semi) Computable Data Types”, in Theoretical Computer Science 50, North-Holland, Amsterdam, (1987), pp 137–181.

    Google Scholar 

  6. J A Bergstra and J V Tucker, “The Inescapable Stack: An Exercise in Algebraic Specification with Total Functions”, Centre for Theoretical Computer Science Report 13.88, University of Leeds, (1988).

    Google Scholar 

  7. J A Bergstra and J V Tucker, “The Inescapable Stack: An Exercise in Algebraic Specification with Total Functions” (revised report), University of Amsterdam, Programming Research Group Report P8804b, (1990).

    Google Scholar 

  8. P M Cohn, Algebra, Volume 1, Wiley, (1983).

    Google Scholar 

  9. R W Doran, Computer Architecture: A Structured Approach, Academic Press, London, (1979).

    MATH  Google Scholar 

  10. M Davio, J P Deschamps and A Thayse, Digital Systems with Algorithm Implementation, Wiley, (1983).

    Google Scholar 

  11. S M Eker, Foundations for the Design of Rasterisation Algorithms and Architectures, PhD Thesis, School of Computer Studies, University of Leeds, (1990).

    Google Scholar 

  12. S M Eker, V Stavridou and J V Tucker, “Verification of Synchronous Concurrent Algorithms using OBJ: A Case Study of the Pixel Planes Architecture”, in G Jones and M Sheeran (eds.), Designing Correct Circuits, Oxford, 1990, Springer-Verlag, (1988), pp. 231–252.

    Google Scholar 

  13. S M Eker and J V Tucker, “Specification, Derivation and Verification of Concurrent Line Drawing Algorithms and Architectures”, in R A Earnshaw (ed.), Theoretical Foundations of Computer Graphics and CAD, Springer-Verlag, (1988), pp. 449–516.

    Google Scholar 

  14. S M Eker and J V Tucker, “Specification and Verification of Synchronous Concurrent Algorithms: a Case Study of the Pixel Planes Architecture”, pp. 16–49 in R A Earnshaw, P M Dew and T R Heywood (eds.), Parallel Processing for Computer Vision and Display, Addison Wesley, (1989).

    Google Scholar 

  15. H Ehrig and B Mahr, Fundamentals of Algebraic Specifications 1-Equations and Initial Semantics, EATCS Monographs on Theoretical Computer Science, Springer-Verlag, (1985).

    Google Scholar 

  16. G Grätzer, Universal Algebra, Springer-Verlag, Berlin, (1989).

    Google Scholar 

  17. N A Harman, Formal Specifications for Digital Systems, PhD Thesis, School of Computer Studies, University of Leeds, (1989).

    Google Scholar 

  18. N A Harman and J V Tucker, “Clocks, Retimings, and the Formal Specification of a UART”, in G Milne (ed.), Proceedings of IF IP Working Group 10.2 Working Conference on The Fusion of Hardware Design and Verification, North-Holland, Amsterdam, (1988), pp. 375–396.

    Google Scholar 

  19. N A Harman and J V Tucker, “The Formal Specification of a Digital Correlator. I: User Specification Process”, in K McEvoy and J V Tucker (eds.), Theoretical foundations of VLSI design, Cambridge University Press, Cambridge, (1990), pp. 161–262.

    Chapter  Google Scholar 

  20. N A Harman and J V Tucker, “Consistent Refinement of Specifications for Digital Systems”, Technical Report CSR 4-91, Division of Computer Science, University College of Swansea, (1991).

    Google Scholar 

  21. E A Hauck and B A Dent, “Burroughs’ B6500/7500 Stack Mechanism”, in AFIPS Conference Proceedings, SJCC 32, Thompson Books, Washington DC, (1968), pp 245–251.

    Google Scholar 

  22. J P Hayes, Computer Architecture and Organisation, McGraw-Hill, (1978).

    Google Scholar 

  23. K M Hobley, The Specification and Verification of Synchronous Concurrent Algorithms, PhD Thesis, School of Computer Studies, University of Leeds, (1990).

    Google Scholar 

  24. K M Hobley, B C Thompson and J V Tucker, “Specification and Verification of Synchronous Concurrent Algorithms: a Case Study of a Convolution Algorithm”, in G Milne (ed.), Proceedings of IFIP Working Group 10.2 Working Conference on The Fusion of Hardware Design and Verification, North-Holland, (1988), pp. 347–374.

    Google Scholar 

  25. K M Hobley and J V Tucker, “Clocks, Retimings and Transformations of Synchronous Concurrent Algorithms”, in G Megson (ed.), Transformational Approaches to Systolic Design, Chapman and Hall, (1992 to appear).

    Google Scholar 

  26. A V Holden, B C Thompson and J V Tucker, “The Computational Structure of Neural Systems”, in A V Holden and V I Kryukov (eds.), Neurocomputers and Attention. I: Neurobiology, Synchronisation and Chaos, Manchester University Press, (1991), pp. 223–240. A revised and extended version appears in Physica D 49, pp 240–246, (1991).

    Google Scholar 

  27. A V Holden, B C Thompson and J V Tucker, “Can Excitable Media be Considered as Computational Systems?”, in A V Holden, M Markus and H G Othmer (eds.), Proceedings of NATO Advanced Study Institute Nonlinear wave processes in excitable media, Plenum, New York, (1991), pp. 513–520. A revised and extended version appears in Physica D 49, (1991), pp 240–246.

    Google Scholar 

  28. A V Holden, B C Thompson, J V Tucker, D Withington and H Zhang, “Theoretical Framework for Synchronisation, Coherence and Chaos in Real and Simulated Neual Networks”, in J Taylor (ed.), Institute for Advanced Studies, Workshop on Complex Dynamics in Neural Networks, Salerno, Italy, Springer-Verlag, (1992 to appear), pp. 223–240.

    Google Scholar 

  29. K Hwang and F A Briggs, Computer Architecture and Parallel Processing, McGraw-Hill, New York, (1985).

    Google Scholar 

  30. P M Kogge, The Architecture of Symbolic Computers, McGraw-Hill. (1991).

    Google Scholar 

  31. R N Ibbet, The Architecture of High Performance Computers, Macmillan Press, London, (1982).

    Google Scholar 

  32. J K Iliffe Advanced Computer Design, au]Prentice-Hall, London, (1982).

    Google Scholar 

  33. INMOS Limited, Transputer Instruction Set: A Compiler Writer’s Guide, Prentice Hall, New York, (1988).

    Google Scholar 

  34. A I Mal’cev, Algebraic Systems, Springer-Verlag, Berlin, (1973).

    Book  Google Scholar 

  35. A R Martin, The Specification and Simulation of Synchronous Concurrent Algorithms, PhD Thesis, School of Computer Studies, University of Leeds, (1989).

    Google Scholar 

  36. A R Martin and J V Tucker, “The Concurrent Assignment Representation of Synchronous Systems”, in J W de Bakker, A J Nijman and P C Treleaven (eds.), PARLE: Parallel Languages and Architectures Europe, Vol II Parallel Languages, Springer Lecture Notes in Computer Science 259, Springer-Verlag, (1987), pp 369–386. A revised and expanded edition appears in Parallel computing 9, (1988/89), pp 227–256.

    Google Scholar 

  37. S Matsui, Y Kato, S Teramura, T Tanaka, N Mohei, A Madea and M Nakanishi, “SYNAPSE a Multiprocessor Lisp Machine with Parallel Garbage Collector”, in Al-brecht A, Jung H and Melhorn K (eds.), Parallel Algorithms and Architectures, Lecture Notes in Computer Science 262, Springer-Verlag, Berlin, (1987).

    Google Scholar 

  38. B McConnell and J V Tucker, “Infinite Synchronous Concurrent Architectures: A Case Study — The Convolver”, Technical Report, Division of Computer Science, University College of Swansea, (1992 in preparation).

    Google Scholar 

  39. K McEvoy and J V Tucker, Theoretical Aspects of VLSI Design, Cambridge Tracts in Theoretical Computer Science, Cambridge Unviversity Press, (1990).

    Google Scholar 

  40. C A Mead and L A Conway, Introduction to VLSI Systems, Addison Wesley, (1980).

    Google Scholar 

  41. K Meinke, A Graph Theoretic Model of Synchronous Concurrent Algorithms, PhD Thesis, Department of Computer Studies, University of Leeds, (1988).

    Google Scholar 

  42. K Meinke and J V Tucker, “Specification and Representation of Synchronous Concurrent Algorithms”, in F H Vogt (ed.), Concurrency88, Springer Lecture Notes in Computer Science, Spinger-Verlag, (1988), pp 163–180.

    Google Scholar 

  43. K Meinke and J V Tucker, “Universal Algebra”, in S Abramsky, D Gabbay, and T S E Maibaum (eds.), Handbook of Logic in Computer Science, Oxford University Press, Oxford, (1992 in preparation).

    Google Scholar 

  44. A Mukherjee, Introduction to nMOS and CMOS VLSI Desgin, Prentice-Hall International, (1986).

    Google Scholar 

  45. J G Nash et al, “Toeplitz Linear System Solver”, in H T Kung, B Sproull and G Steele (eds.), VLSI Systems and Computations, Springer-Verlag, Berlin, (1981).

    Google Scholar 

  46. M J Shute, Fifth Generation Wafer Architecture, Prentice-Hall International, Hemel Hempstead, (1988).

    Google Scholar 

  47. V Stoltenberg-Hansen and J V Tucker, “Infinite Sets of Equations over Inverse Limits of Algebras”, Technical Report, Division of Computer Science, University College of Swansea, (1992 in preparation).

    Google Scholar 

  48. B C Thompson, A Mathematical Theory of Synchronous Concurrent Algorithms, PhD Thesis, School of Computer Studies, University of Leeds, (1987).

    Google Scholar 

  49. B C Thompson and J V Tucker, “Theoretical Considerations in Algorithm Design”, in R A Earnshaw (ed.), Fundamental Algorithms for Computer Graphics, Springer-Verlag, Berlin, (1985), pp. 856–878.

    Google Scholar 

  50. B C Thompson and J V Tucker, “A Parallel Deterministic Language and its Application to Synchronous Concurrent Algorithms”, in Proceedings of 1988 UK IT Conference held under the auspices of the Information Engineering Directorate of the Department of Trade and Industry (DTI), Institute of Electrical Engineers (IEE), (1988), pp. 228–231.

    Google Scholar 

  51. B C Thompson and J V Tucker, “Equational Specification of Synchronous Concurrent Algorithms and Architectures”, Technical Report CSR 9-91, Division of Computer Science, University College of Swansea, (1991).

    Google Scholar 

  52. J E Thornton, The Design of a Computer: The Control Data 6600, Scott Forseman and Co, (1970).

    Google Scholar 

  53. J V Tucker, “Theory of Computation and Specification over Abstract Data Types, and its Applications”, in F L Bauer (ed.), Logic, Algebra and Computation, Springer-Verlag, (1991), pp 1–39.

    Google Scholar 

  54. J V Tucker and J I Zucker, Program Correctness over Abstract Data Types, with Error State Semantics, North-Holland, Amsterdam, (1988).

    MATH  Google Scholar 

  55. W Wechler, Universal Algebra for Computer Scientists, EATCS Monographs on Theoretical Computer Science, Spinger-Verlag, Berlin, (1991).

    Google Scholar 

  56. N Weste and K Eshraghian, Principles of CMOS VLSI Design, Addison Wesley, (1985).

    Google Scholar 

  57. M Wirsing, “Algebraic Specification”, in J. van Leeuwen (ed.), The Handbook of Theoretical Computer Science, Elsevier, (1990), pp. 675–788.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1993 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

McConnell, B., Tucker, J.V. (1993). Infinite Synchronous Concurrent Algorithms The Algebraic Specification and Verification of a Hardware Stack. In: Bauer, F.L., Brauer, W., Schwichtenberg, H. (eds) Logic and Algebra of Specification. NATO ASI Series, vol 94. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-58041-3_9

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-58041-3_9

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-63448-2

  • Online ISBN: 978-3-642-58041-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics