lecture04-handout4 - Esterel-The Language, Part I...

Info iconThis preview shows pages 1–3. Sign up to view the full content.

View Full Document Right Arrow Icon
Esterel—The Language, Part I Modeling/Distributed RT Systems—Lecture 04 Prof. Dr. Reinhard von Hanxleden Christian-Albrechts Universit¨ at Kiel Department of Computer Science and Applied Mathematics Real-Time Systems and Embedded Systems Group 19 April 2005 Last compiled: 14th April 2005, 18:54 hrs Esterel—The Language Part I WS 2004/05 Modeling/Distributed RT Systems—Lecture 04 Slide 1 Esterel—The Language, Part I Overview Esterel—The Language, Part I Signal emission + testing, pausing Esterel’s model of time Parallelism Signal awaiting, looping Preemption, exceptions, suspension WS 2004/05 Modeling/Distributed RT Systems—Lecture 04 Slide 2 Esterel—The Language, Part I Signal emission + testing, pausing Esterel’s model of time Parallelism Signal awaiting, looping Preemption, exceptions, suspension Basic Esterel Statements emit S ± Make signal S present in the current instant ± A signal is absent unless it is emitted pause ± Stop and resume after the next cycle after the pause present S then stmt1 else stmt2 end ± If signal S is present in the current instant, immediately run stmt1 , otherwise run stmt2 WS 2004/05 Modeling/Distributed RT Systems—Lecture 04 Slide 3 Esterel—The Language, Part I Signal emission + testing, pausing Esterel’s model of time Parallelism Signal awaiting, looping Preemption, exceptions, suspension Esterel’s Model of Time ± The standard CS model (e.g., Java’s) is asynchronous ± Threads run at their own rate ± Synchronization is done (for example) through calls to wait() and notify() ± Esterel’s model of time is synchronous like that used in hardware. Threads march in lockstep to a global clock . Time Clock tick WS 2004/05 Modeling/Distributed RT Systems—Lecture 04 Slide 4
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Esterel—The Language, Part I Signal emission + testing, pausing Esterel’s model of time Parallelism Signal awaiting, looping Preemption, exceptions, suspension Basic Esterel Statements module EXAMPLE1 : output A, B, C; emit A; present A then emit B end ; pause ; emit C end module A B C EXAMPLE1 makes signals A & B present the first instant, C present the second WS 2004/05 Modeling/Distributed RT Systems—Lecture 04 Slide 5 Esterel—The Language, Part I Signal emission + testing, pausing Esterel’s model of time Parallelism Signal awaiting, looping Preemption, exceptions, suspension Signal Coherence Rules ± Each signal is only present or absent in a cycle, never both ± All writers run before any readers do ± Thus present A else emit A end is an erroneous program WS 2004/05 Modeling/Distributed RT Systems—Lecture 04 Slide 6 Esterel—The Language, Part I Signal emission + testing, pausing Esterel’s model of time Parallelism Signal awaiting, looping Preemption, exceptions, suspension Advantage of Synchrony ± Easy to control time ± Synchronization comes for free ± Speed of actual computation nearly uncontrollable—Synchrony allows to specify function and timing independently ± Makes for deterministic concurrency ± Explicit control of “before” “after” “at the same time” WS 2004/05
Background image of page 2
Image of page 3
This is the end of the preview. Sign up to access the rest of the document.

Page1 / 8

lecture04-handout4 - Esterel-The Language, Part I...

This preview shows document pages 1 - 3. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online