Presentation is loading. Please wait.

Presentation is loading. Please wait.

Technische universiteit eindhoven Department of Electrical Engineering Electronic Systems Liveness and Boundedness of Synchronous Data Flow Graphs A.H.

Similar presentations


Presentation on theme: "Technische universiteit eindhoven Department of Electrical Engineering Electronic Systems Liveness and Boundedness of Synchronous Data Flow Graphs A.H."— Presentation transcript:

1 technische universiteit eindhoven Department of Electrical Engineering Electronic Systems Liveness and Boundedness of Synchronous Data Flow Graphs A.H. Ghamarian, M.C.W Geilen, T. Basten, B. Theelen, M. Mousavi, and S. Stuijk

2 Electronic Systems 2 Outline  Introduction  Synchronous Data Flow Graphs (SDFGs)  Definition of Liveness and Boundedness  Live and Bounded SDFGs  Live and Strictly Bounded SDFGs  Live and Self-timed Bounded SDFGs  Conclusions intro sdf definitions boundedness strict bndss self-tmd bndss conclusions

3 Electronic Systems 3 Introduction  Streaming Multimedia and DSP Applications  Throughput  Buffer sizes  …  SDFG  Modeling and analysis  Single and multiprocessor platforms Given an SDFG, is it realizable within bounded memory while running forever ? intro sdf definitions boundedness strict bndss self-tmd bndss conclusions

4 Electronic Systems 4 C,1 Structure of a (Timed) SDFG channel (unbounded) rate token execution time actor A,2B,1 3 3 2 2 1 1 1 3 Self-loop channel 1 1 intro sdf definitions boundedness strict bndss self-tmd bndss conclusions

5 Electronic Systems 5 D,1 Behavior: Firing an Actor C, 1 B, 1 A,1 1 1 1 2 2 3 4 5 2 2 3 2 1 intro sdf definitions boundedness strict bndss self-tmd bndss conclusions

6 Electronic Systems 6 Behavior: Execution and Self-timed Execution  An execution is a finite or infinite sequence of actor firings.  An execution is maximal iff it is finite with no actor enabled in the final state or if it is infinite.  A self-timed execution is an execution in which each actor fires as soon as it can fire. intro sdf definitions boundedness strict bndss self-tmd bndss conclusions

7 Electronic Systems 7 Consistency and Repetition Vector A,2B,1 C,1 3 3 2 2 1 1 1 3 1.q(A)=1.q(A) 1.q(A)=1.q(B) 2.q(B)=3.q(C) 3.q(C)=2.q(B) An SDFG is consistent iff q(A) > 0 for all actors A Repetition vector q={(A,3), (B,3), (C,2)} 1 1 intro sdf definitions boundedness strict bndss self-tmd bndss conclusions

8 Electronic Systems 8 Liveness and Deadlock  An SDFG is live iff it has an execution in which all actors fire infinitely often.  An SDFG has a deadlock iff it has a maximal execution of finite length. Consistent, but neither live nor deadlocked ! A,2B,1 C,1 3 3 3 2 2 1 1 Cannot fire after one firing of B and C A can fire infinitely often 1 1 intro sdf definitions boundedness strict bndss self-tmd bndss conclusions

9 Electronic Systems 9 Boundedness  An execution is bounded iff for all states of the execution the number of tokens in all channels is at most some bound.  SDFG  bounded iff it has a bounded execution. ((un-)timed)  Strictly bounded iff all possible executions are bounded. ((un-)timed)  Self-timed bounded iff self-timed execution is bounded. (timed) Necessary and sufficient conditions for an SDFG to be live in combination with each of the three definitions of boundedness. intro sdf definitions boundedness strict bndss self-tmd bndss conclusions

10 Electronic Systems 10 Liveness and Boundedness  A live SDFG is bounded iff it is consistent.  A strongly connected SDFG is live iff it is deadlock free.  If one strongly connected component (SCC) in an SDFG G deadlocks then either G deadlocks or it is unbounded. A,2B,1 C,1 3 3 3 2 2 1 1 1 {(A,3), (B, 3), (C, 2)} An SDFG is live and bounded iff it is consistent and all its SCCs are deadlock free. 1 1 intro sdf definitions boundedness strict bndss self-tmd bndss conclusions

11 Electronic Systems 11 Liveness and Strict Boundedness  A live SDFG is strictly bounded iff it is consistent and strongly connected. An SDFG is live and strictly bounded iff it is deadlock free, consistent and strongly connected. B,1 C,1 3 3 3 2 2 A,2 1 1 1 5 1 1 intro sdf definitions boundedness strict bndss self-tmd bndss conclusions

12 Electronic Systems 12 Throughput Definition  Actor throughput: The average number of firings of one actor per time unit in the self- timed execution.  (Normalized) graph throughput (if SDFG is consistent): intro sdf definitions boundedness strict bndss self-tmd bndss conclusions

13 Electronic Systems 13 Local and Normalized Throughput p a b c Each firing of a provides tokens for p/c firings of b. Normalized actor throughput of a for b : a,E Local actor throughput : x intro sdf definitions boundedness strict bndss self-tmd bndss conclusions

14 Electronic Systems 14 Throughput Relation between Actors Throughput of each actor equals the minimum of its local throughput and normalized throughput of its predecessors. b c d a,1 1 4 2 3 2 2 1/2 4/3 1/4 3 Th(b)=1 Th(c)=2 Th(d)=3 NTh(b,a)=1/4 NTh(c,a)=4/3 NTh(d,a)=3 LTh(a)=1/2 Th(a)=1/4 intro sdf definitions boundedness strict bndss self-tmd bndss conclusions

15 Electronic Systems 15 A channel between a and b is self-timed bounded iff Main Rule for Self-timed Boundedness p a b c Golden Rule intro sdf definitions boundedness strict bndss self-tmd bndss conclusions

16 Electronic Systems 16 Liveness and Self-timed Boundedness for Acyclic SDFGs Liveness and self-timed boundedness for an acyclic SDFG:  Acyclic SDFGs are live  Checking self-timed boundedness for acyclic SDFGs  Calculate the throughput for all actors  Sort the graph topologically  Calculate the throughput for the source actors (actors without any predecessors) and propagate the calculation  For each channel between actors a and b check the golden rule. intro sdf definitions boundedness strict bndss self-tmd bndss conclusions

17 Electronic Systems 17 Example for Acyclic SDFGs b C d a,1 1 4 2 3 2 2 1/4 4/3 1/4 3 Self-timed unbounded !!! intro sdf definitions boundedness strict bndss self-tmd bndss conclusions

18 Electronic Systems 18 Reduction intro sdf definitions boundedness strict bndss self-tmd bndss conclusions

19 Electronic Systems 19 Properties of the Reduced SDFG  The reduction preserves  Throughput  Self-timed boundedness  Liveness intro sdf definitions boundedness strict bndss self-tmd bndss conclusions

20 Electronic Systems 20 Example for a General SDFG A,2B,1 C,1 3 3 3 2 2 1 1 1 x1,6 x2,4 Self-timed bounded 1/6 < 1/4 intro sdf definitions boundedness strict bndss self-tmd bndss conclusions

21 Electronic Systems 21 Conclusions  Necessary and sufficient conditions for checking  Liveness and boundedness of (timed) SDFGs  Liveness and strict boundedness of (timed) SDFGs  Liveness and self-timed boundedness of timed SDFGs  Throughput calculations for general SDFGs (not necessarily strongly connected!) intro sdf definitions boundedness strict bndss self-tmd bndss conclusions

22 Electronic Systems 22 intro sdf definitions boundedness strict bndss self-tmd bndss conclusions Questions


Download ppt "Technische universiteit eindhoven Department of Electrical Engineering Electronic Systems Liveness and Boundedness of Synchronous Data Flow Graphs A.H."

Similar presentations


Ads by Google