Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to main content

A hardware implementation of pure ESTEREL

  • Special Issue On Parallel And Distributed Computing
  • Published:
Sadhana Aims and scope Submit manuscript

Abstract

esterel is a synchronous concurrent programming language dedicated to reactive systems (controllers, protocols, man-machine interfaces etc.). esterel has an efficient standard software implementation based on well-defined mathematical semantics. We present a new hardware implementation of the pure synchronization subset of the language. Each program generates a specific circuit that responds to any input in one clock cycle. When the source program satisfies some statically checkable dynamic properties, the circuit is shown to be semantically equivalent to the source program. The hardware translation has been effectively implemented on the programmable active memory perle0 developed by J Vuillemin and his group at Digital Equipment.

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

Access this article

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  • Berry G 1989Real-time programming: general purpose or special-purpose languages, Information Processing 1989 (ed.) G X Ritter (Amsterdam: Elsevier Science/North Holland) pp. 11–17

    Google Scholar 

  • Berry G, Benveniste A 1991 The synchronous approach to reactive and real-time systems. Another look at real time programming.Proc. ieee 79: 1270–1282

    Article  Google Scholar 

  • Berry G, Cosserat L 1984 The synchronous programming languages Esterel and its mathematical semantics. InSeminar on concurrency. Lecture Notes in Computer Science Vol. 197 (eds) S Brookes, G Winskel) (Berlin: Springer Verlag) pp. 389–448

    Google Scholar 

  • Berry G, Couronne P, Gonthier G 1988 Synchronous programming of reactive systems: an introduction to Esterel. InProgramming of future generation computers (eds) K Fuchi, M Nivat (Amsterdam: Elsevier Science/North Holland) pp. 35–55

    Google Scholar 

  • Berry G, Gonthier G 1989 The Esterel synchronous programming language: Design, semantics, implementation, Res. Rep. 842, to appear inScience of computer programming

  • Berry G, Gonthier G 1991 Incremental development of an hdlc entity in Esterel.Comput. Networks 22: 35–49

    Google Scholar 

  • Berthet C, Coudert O, Madre J -C 1990 New ideas on symbolic manipulations of finite state machines. InProc. International Conference on Computer Design (ICCD)

  • Bertin P, Roncin D, Vuillemin J 1989 Introduction to programmable active memories. InSystolic array processors (eds) J McCanny, J McWhirter, E Swartzlander (Englewood Cliffs, nj: Prentice-Hall) pp. 301–309

    Google Scholar 

  • Boudol G, Roy V, de Simone R, Vergamini D 1990 Process calculi. from theory to practice: verification tools. InAutomatic verification methods for finite state systems. Lecturer Notes in Computer Science. Vol. 407 (Berlin: Springer Verlag) pp. 1–10

    Google Scholar 

  • Boussinot F, de Simone R 1991 The Esterel language. Another look at Real Time Programming.Proc. ieee 79: 1293–1304

    Article  Google Scholar 

  • Brayton R K, Hachtel G D, Sangiovanni-Vincentelli A L 1990 Multilevel logic synthesis.Proc. ieee 78: 264–300

    Article  Google Scholar 

  • Caspi P, Halbwachs N, Pilaud D, Plaice J 1987 Lustre: a declarative language for programming synchronous systems. InProc. 14th Annual acm Symposium on Principles of Programming Languages, Munich, pp. 177–188

  • Clarke E M, Long D E, McMillan K L 1991 A language for compositional specification and verification of finite state hardware controllers. Another look at real time programming.Proc. ieee 79: 1283–1292

    Article  Google Scholar 

  • Clement D, Incerpi J 1989 Programming the behaviour of graphical objects using Esterel. InTAPSOFT’89. Lecture Notes in Computer Science. Vol. 352 (Berlin: Springer Verlag)

    Google Scholar 

  • Coudert O, Madre J -C 1990 A unified framework for the formal verification of sequential circuits. InProc. of International Conference on Computer Aided Design (ICCAD) Santa Clara, USA

    Google Scholar 

  • Cousineau G 1980 An algebraic definition for control structure.Theor. Comput. Sci. 12: 175–192

    Article  MATH  MathSciNet  Google Scholar 

  • Gauthier T, Le Guernic P, Besnard L 1987 Signal, a declarative language for synchronous programming of real-time systems. InProc. 3rd Conf. on Functional Programming Languages and Computer Architecture. Lecture Notes in Computer Science. Vol. 274 (Berlin: Springer Verlag)

    Google Scholar 

  • Gonthier G 1988 Sémantique et Modeles d’Execution des languages Réactifs Synchrones; Application {ie130-1} Esterel, There d’Informatique, Universite d’Orsay

  • Halbwachs N, Caspi P, Pilaud D 1991 The synchronous dataflow programming language Lustre. Another look at real time programming.Proc. ieee 79:

  • Kahn G 1988 Natural semantics. InProgramming of future generation computers (eds) K Fuchi, M Nivat (Amsterdam: North Holland) pp. 237–258

    Google Scholar 

  • Le Guernic P, Le Borgne M, Gauthier T, Le Maire C 1991 Programming real time applications with signal. Another look at real time programming.Proc. ieee 79:

  • Mejia Olvera M C 1989Contribution a la Conception d’un Réseau Local Temps Récl pour la Robotique, These de Docteur-Ingenieur, Universite de Rennes

  • Murakami G, Sethi R 1990 Terminal Call Processing in Esterel, Research Report 150, AT & T Bell Laboratories

  • Savoj H, Touati H, Brayton R K 1991 The use of image computation techniques in extracting local don’t cares and network optimization. InProceedings ieee International Conference on Computer-Aided Design (ICCAD), pp. 514–517

  • Shand M, Bertin P, Vuillemin J 1990 Hardware speedups in long integer multiplication. InProc. 2nd Annual acm Symposium on Parallel, Algorithms and Architectures, pp. 138–145

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Berry, G. A hardware implementation of pure ESTEREL. Sadhana 17, 95–130 (1992). https://doi.org/10.1007/BF02811340

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF02811340

Keywords