lecture08-handout4 - The Constructive Semantics Cyclic...

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

View Full Document Right Arrow Icon

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

View Full DocumentRight Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: The Constructive Semantics Cyclic dependencies Modeling/Distributed RT Systems—Lecture 08 Prof. Dr. Reinhard von Hanxleden Christian-Albrechts Universit¨ at Kiel Department of Computer Science and Applied Mathematics Real-Time Systems and Embedded Systems Group 12 May 2005 Last compiled: 12th May 2005, 14:32 hrs Esterel—The Semantics Part II WS 2004/05 Modeling/Distributed RT Systems—Lecture 08 Slide 1 The Constructive Semantics Cyclic dependencies The 5-Minute Review Session 1. When is an Esterel program logically correct? 2. What would be a simple approach to eliminate programs that are logically incorrect? 3. Why is that simple approach too restrictive? WS 2004/05 Modeling/Distributed RT Systems—Lecture 08 Slide 2 The Constructive Semantics Cyclic dependencies Overview The Constructive Semantics External Justification vs. Self-Justification The Circuit Semantics Cyclic dependencies Classification Example: Token Ring Arbiter WS 2004/05 Modeling/Distributed RT Systems—Lecture 08 Slide 3 The Constructive Semantics Cyclic dependencies External Justification vs. Self-Justification The Circuit Semantics External Justification vs. Self-Justification Programming in Esterel: Analyze input events to generate appropriate output signals Use concurrent statements and intermediate local signals to create modular, well-structured programs Natural way of thinking: Information propagation by cause and effect present I then emit O end WS 2004/05 Modeling/Distributed RT Systems—Lecture 08 Slide 4 The Constructive Semantics Cyclic dependencies External Justification vs. Self-Justification The Circuit Semantics External Justification vs. Self-Justification module P1: input I; output O; signal S1, S2 in present I then emit S1 end || present S1 else emit S2 end || present S2 then emit O end end signal end module Is this logically correct? Yes! Is this well-behaved wrt information propagation? Yes! WS 2004/05 Modeling/Distributed RT Systems—Lecture 08 Slide 5 The Constructive Semantics Cyclic dependencies External Justification vs. Self-Justification The Circuit Semantics External Justification vs. Self-Justification module P9: [ present O1 then emit O1 end || present O1 then present O2 else emit O2 end end ] Is this logically correct? Yes! Is this well-behaved wrt information propagation? No! Accepting P9 as correct is Logically possible But against (imperative) intention of the language WS 2004/05 Modeling/Distributed RT Systems—Lecture 08 Slide 6 The Constructive Semantics Cyclic dependencies External Justification vs. Self-Justification The Circuit Semantics External Justification vs. Self-Justification “ present S then p end ”: First test the status of S , then execute p if S is present Status of S should not depend on what p might do Synchrony hypothesis : Ordering implicit in the then word is not that of time, but that of sequential causality Want actual computation : “ Since S is present, we take the then branch” Don’t want speculative computation...
View Full Document

Page1 / 9

lecture08-handout4 - The Constructive Semantics Cyclic...

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