Download presentation
Presentation is loading. Please wait.
Published byDella Crawford Modified over 9 years ago
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
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.