Relaxation du parallélisme synchrone pour les systèmes asynchrones communicant par buffers : réseaux de Kahn n-synchrones
|
|
- Joshua Merritt
- 6 years ago
- Views:
Transcription
1 Master Parisien de Recherche en Informatique Relaxation du parallélisme synchrone pour les systèmes asynchrones communicant par buffers : réseaux de Kahn n-synchrones Louis Mandel LRI, Université Paris-Sud INRIA Paris-Rocquencourt 7 novembre 22
2 Picture-in-Picture example picture in picture encrust p downscaler small p2 encrust ot big merge o Incrustation of a Standard Definition (SD) image in a High Definition (HD) one downscaler: reduction of an HD image (92 8 pixels) to an SD image (72 48 pixels) : removal of a part of an HD image merge: incrustation of an SD image in an HD image The constraints resolution algorithm has to deal with clocks of 2 millions of elements. 2
3 Motivation Real time constraints the frequency of the display cannot be changed Efficiency constraints handling of High Definition images necessitate billions of operations per second Safety constraints guaranty of deterministic and deadlock free execution 3
4 Kahn Process Networks [Gilles Kahn, 974] i x y o P Q R Network of processes concurrent execution communication through buffers of sufficient size If processes are deterministic then the network is deterministic 4
5 Programming Kahn Process Networks Problem: computation of sufficient buffer sizes risk of data loss, of deadlock sometimes, need of infinite buffers Goal: do not accept infinite buffers automatic sizing of buffers Related work: Synchronous Data Flow and variants [Lee et al.] [Buck] scheduling [Carlier, Chretienne] [Baccelli, Cohen, Quadrat] Network Calculus [Cruz], Real-time Calculus [Thiele et al.] 5
6 Dataflow Synchronous Model i x y o P Q R Programming Kahn networks without buffers: programming languages: Lustre, Signal, Lucid Synchrone instantaneous consumption of produced data strong guaranties: bounded memory, absence of deadlocks But: communication without buffers sometimes too restrictive (e.g. multimedia applications) 6
7 n-synchronous Model i x y o P Q R Programming Kahn networks with bounded memory Automatic methods at compile time to: reject networks needing infinite memory compute activation paces of computations nodes compute sufficient buffers sizes More flexibility with the same guaranties 7
8 Overview. Lucy-n: a n-synchronous Extension of Lustre 2. Adaptability Relation 3. Ultimately Periodic Clocks 4. Abstract Clocks 5. Latency Insensitive Designs 8
9 Lucy-n: a n-synchronous Extension of Lustre
10 Synchronous Model x not so bad () () x x2 + o stream values x x x
11 n-synchronous Model x good () () x x2 + o stream values x x buffer(x) x buffer(x) + x
12 The Lucy-n Language let node good x = o where 2 rec x = x () 3 and x2 = x () 4 and o = buffer(x) + x2 x good () () x x2 + o good :: forall a. a -> a on () Buffer line 4, characters -2: size = 2
13 Programming a stuttering node Synchronous version stutter () let node stutter x = o where rec o = merge () x x_bis and x_bis = (( fby o) ot ()) stutter :: forall a. a on () -> a x fby () ot x bis merge o stream values x ()... fby o x_bis = ( fby o) ot () o = merge () x x_bis
14 Programming a stuttering node Synchronous version stutter () let node stutter x = o where rec o = merge () x x_bis and x_bis = (( fby o) ot ()) stutter :: forall a. a on () -> a x fby () ot x bis merge o n-synchronous version let node new_stutter x = o where new stutter () rec o = merge () x (buffer(x)) new_stutter :: forall a. a on () -> a Buffer line 2, characters 24-33: size = x merge x ()... buffer(x) merge () x (buffer(x))
15 Flows and Clocks
16 Flows and Clocks x w x w = clock(x)... 6
17 Sampling x w w2 x w2 w on w 2 x w2... x w w... w 2... w on w 2... clock(x w2) = clock(x) on w 2 Definition:.w on w 2 def =.(w on w 2 ).w on.w 2 def =.(w on w 2 ).w on.w 2 def =.(w on w 2 ) 7
18 Composition x w y w + z w x y z = x + y clock(x) = clock(y) = clock(z) 8
19 Buffering x buffer x w w 2 Communication through a bounded buffer: the input s clock must be adaptable to the output s clock w <: w 2 9
20 Adaptability Relation
21 Cumulative Function Number of ones Instants w O w O w : cumulative function of the word w 2
22 Adaptability Relation Number of ones buffer size adaptability Writings in the buffer Readings in the buffer Instants O w O w2 size(w,w 2 ) = max i N (O w (i) O w2 (i)) w <: w 2 def n N, i, O w (i) O w2 (i) n 22
23 Adaptability Relation Number of ones Writings in the buffer Readings in the buffer Instants O w O w2 buffer size adaptability size(w,w 2 ) = max i N (O w (i) O w2 (i)) w <: w 2 def n N, i, O w (i) O w2 (i) n synchronizability w w 2 def b,b 2 Z, i, b O w (i) O w2 (i) b 2 precedence w w 2 def i, O w (i) O w2 (i) 22
24 Ultimately Periodic Clocks definition: p = u(v) def p = u.w with w = v.w example: () =... notation: prefix: ().u = periodic part: ().v = Index of the j ième of w notation: I w (j) example: I w (4) = 6 23
25 on operator Example: p ( ) p 2 ( ) p on p 2 ( ) Properties: size and number of : Let p and p 2 such that p.u = p 2.u and p.v = p 2.v. Then: (p on p 2 ).u = p.u (p on p 2 ).u = p 2.u (p on p 2 ).v = p.v (p on p 2 ).v = p 2.v index of the j ième of w on w 2 : j, I w on w 2 (j) = I w (I w2 (j)) 24
26 Adaptability x buffer x w w 2 Communication through a bounded buffer: synchronizability test: p p 2 p.v p.v = p 2.v p 2.v example: () () precedence test: let h = max( p.u, p 2.u )+ lcm ( p.v, p 2.v ), p p 2 j, j h, I p (j) I p2 (j) example: () () adaptability test: p <: p 2 p p 2 p p 2 25
27 Clock Typing
28 Clock Calculus H e : ct C H e 2 : ct C 2 H e +e 2 : ct C C 2 H e : ct C H buffer(e) : ct {ct <: ct } C Adaptability constraints are collected during the clocking of a node. They are solved at the end of node clocking. 27
29 Typing plus plus x y + z () () t t r + o 4 let node plus_plus (x,y) = o where 5 rec z = x + y 6 and t = z () 7 and t = buffer(t) 8 and r = y () 9 and o = t + r val plus_plus : (int * int) -> int val plus_plus :: forall a. ( a * a) -> a on () Buffer line 7, characters -2: size = 28
30 Typing plus plus x α y α + α z () () t t r + o 4 let node plus_plus (x,y) = o where 5 rec z = x + y 6 and t = z () 7 and t = buffer(t) 8 and r = y () 9 and o = t + r val plus_plus : (int * int) -> int val plus_plus :: forall a. ( a * a) -> a on () Buffer line 7, characters -2: size = 28
31 Typing plus plus x α y α + α z () () t t α on () r α on () + o 4 let node plus_plus (x,y) = o where 5 rec z = x + y 6 and t = z () 7 and t = buffer(t) 8 and r = y () 9 and o = t + r val plus_plus : (int * int) -> int val plus_plus :: forall a. ( a * a) -> a on () Buffer line 7, characters -2: size = 28
32 Typing plus plus x α y α + α z () () t t α on () α on () r α on () + o α on () for all α such that {α on () <: α on ()}, (α α) α on () Subtyping constraint solving simple case: α on w <: α on w 2 w <: w 2 29
33 Typing plus plus x α y α + α z () () t t α on () α on () r α on () + o α on () for all α such that { () <: ()}, (α α) α on () Subtyping constraint solving simple case: α on w <: α on w 2 w <: w 2 29
34 Typing plus plus x α y α + α z () () t t α on () α on () r α on () + o α on () for all α, (α α) α on () Subtyping constraint solving simple case: α on w <: α on w 2 w <: w 2 29
35 Typing: More Difficult Case i i2 for all α,α such that () () aux aux2 α on () <: α α 2 on () <: α + g o, α α 2 α Goal of the constraints resolution algorithm : find instantiations for α, α 2 and α such that the constraints are always verified Idea of the constraints resolution algorithm: translate adaptability constraints into constraints on the size of the words and the indexes of the s 3
36 Example of Lucy-n program i i2 f () () () + aux2 + aux () () + o let node f (i, i2) = o where rec aux = buffer (i ()) + aux2 and aux2 = buffer (i2 ()) + i2 () and o = buffer (aux ()) + buffer (aux ()) 3
37 Typing f () i α α on () () α 2 on () () i2 α 2 α 2 on () α 2 on () + α 2 on () aux2 α 2 on () + aux α 2 on () () () α 2 on () on () α 3 α 2 on () on () α 3 + α 3 o f :: α α 2 α 3 with the following constraints: α on () <: α 2 on () α 2 on () <: α 2 on () α 2 on () on () <: α 3 on () α 2 on () on () <: α 3 on () Question: find types α, α 2 and α 3 such that the constraints are always satisfied. 32
38 Typing f () i α α on () () α 2 on () () i2 α 2 α 2 on () α 2 on () + α 2 on () aux2 α 2 on () + aux α 2 on () () () α 2 on () on () α 3 α 2 on () on () α 3 + α 3 o f :: α α 2 α 3 with the following constraints: α on () <: α 2 on () α 2 on () <: α 2 on () α 2 on () on () <: α 3 on () α 2 on () on () <: α 3 on () We can simplify constraints that depends on the same type variable Property: α on ce <: α on ce 2 ce <: ce 2
39 α on () <: α 2 on () () <: () α 2 on () on () <: α 3 on () α 2 on () on () <: α 3 on () We can check that the adaptability constraint is satisfied. α on () <: α 2 on () α 2 on () on () <: α 3 on () α 2 on () on () <: α 3 on () We can express this system in function of a unique type variable by instantiation of α, α 2, α 3 θ = {α α on c ; α 2 α on c 2 ; α 3 α on c 3 ;}
40 α on c on () <: α on c 2 on () α on c 2 on () on () <: α on c 3 on () α on c 2 on () on () <: α on c 3 on () We can simplify the constraints c on () <: c 2 on () c 2 on () on () <: c 3 on () c 2 on () on () <: c 3 on () Question: find ultimately periodic binary words c, c 2 and c 3 such that the constraints are always satisfied. 35
41 Typing f () i α α on () () α 2 on () () i2 α 2 α 2 on () α 2 on () + α 2 on () aux2 α 2 on () + aux α 2 on () () () α 2 on () on () α 3 α 2 on () on () α 3 + α 3 o f :: α on c α on c 2 α on c 3 with the following constraints: c on () <: c 2 on () c 2 on () on () <: c 3 on () c 2 on () on () <: c 3 on () We can compute on.
42 c on () <: c 2 on () c 2 on () <: c 3 on () c 2 on () <: c 3 on () We can adjust the system such that all the samplers of a same variable have the same size. c on () <: c 2 on () c 2 on () <: c 3 on () c 2 on () <: c 3 on () We choose the number of of each c n such that it is equal to the size of its samplers. c.u = 2 c.v = c 2.u = c 2.v = 4 c 3.u = c 3.v =
43 We can split adaptability constraints into synchronizability and precedence constraints. c on () c 2 on () c 2 on () c 3 on () c 2 on () c 3 on () c on () c 2 on () c 2 on () c 3 on () c 2 on () c 3 on () (Sync) (Prec) We can apply the synchronizability and precedence tests. Thanks to the choice of the number of of the c n, we can simplify the formulas.
44 We can apply the synchronizability test. (c on ()).v (c on ()).v (c 2 on ()).v (c 2 on ()).v = (c 2 on ()).v (c 2 on ()).v = (c 3 on ()).v (c 3 on ()).v (Prec) (c 2 on ()).v (c 2 on ()).v = (c 3 on ()).v (c 3 on ()).v Thanks to the choice of the number of of the c n, we can simplify the formulas. ().v c.v ().v c 2.v = ().v c 2.v = ().v c 3.v (Prec) ().v c 2.v = ().v c 3.v
45 We can rewrite the system. ().v c.v = (()).v c 2.v ().v c 2.v = ().v c 3.v ().v c 2.v = ().v c 3.v (Prec) We can compute the number of of the samplers. 2 c.v = c 2.v c 2.v = c 3.v c 2.v = c 3.v c on () c 2 on () c 2 on () c 3 on () c 2 on () c 3 on () Thanks to the choice of the number of of the c n, we can apply the precedence test.
46 (Sync) j, j 3, I c on () (j) I c 2 on() (j) j, j, I c2 on() (j) I c 3 on() (j) j, j, I c2 on() (j) I c 3 on() (j) We can apply the on formula. (Sync) j, j 3, I c (I () (j)) I c 2 (I () (j)) j, j, I c2 (I () (j)) I c 3 (I () (j)) j, j, I c2 (I () (j)) I c 3 (I () (j)) We can compute the index of the s in the periodic words.
47 2 c.v = c 2.v c 2.v = c 3.v c 2.v = c 3.v I c () I c2 (2) I c (3) I c2 (4) I c (4) I c2 (6) I c2 (2) I c3 () I c2 (4) I c3 () Question: find the sizes and the index of such that the constraints are always satisfied and they define well formed ultimately periodic words. 42
48 Well formed ultimately periodic binary words ultimately periodic word ( ) infinite word... index Well formation constraints: increasing indexes: j, I w (j) < I w (j +) sufficient indexes: periodicity: j, I w (j) j j > p.u, I p (j + p.v ) = I p (j)+ p.v sufficient size: p.v +I p ( p.u + p.v ) I p ( p.u +) 43
49 Typing f :: α on c α on c 2 α on c 3 with the following constraints: 2 c.v = c 2.v - (v_size_c - ) c 2.v = c 3.v c 2.v = c 3.v I_c() 2 I_c(3) v_size_c I_c(4) source I_c2() - (v_size_c2 - ) 2 I_c2(4) 2 I_c2(6) I_c2(2) v_size_c2 - (v_size_c3 - ) I_c3() We can solve the Integer Linear Programming problem using GLPK. 44
50 Typing f () i α α on () () α 2 on () () i2 α 2 α 2 on () α 2 on () + α 2 on () aux2 α 2 on () + aux α 2 on () () () α 2 on () on () α 3 α 2 on () on () α 3 + α 3 o f :: α on c α on c 2 α on c 3 with the following constraints: c.v = 2 c 2.v = 4 c 3.v = 4 I c () = I c (3) = 3 I c (4) = 5 I c2 () = I c2 (2) = 2 I c2 (4) = 4 I c2 (6) = 6 I c3 () = 4 We can build the following solution: c = () c 2 = () = () c 3 = () = ( 3 ) 45
51 Typing f () i α α on () () α 2 on () () i2 α 2 α 2 on () α 2 on () + α 2 on () aux2 α 2 on () + aux α 2 on () () () α 2 on () on () α 3 α 2 on () on () α 3 + α 3 o let node f (i, i2) = o where rec aux = buffer (i ()) + aux2 and aux2 = buffer (i2 ()) + i2 () and o = buffer (aux ()) + buffer (aux ()) val f :: forall a. ( a on () * a) -> a on ^3(^3) Buffer line 2, characters 3-35: size = Buffer line 3, characters 3-36: size = Buffer line 4, characters -33: size = Buffer line 4, characters 36-59: size = 46
52 Completeness: Choice of the number of s All the steps of the constraints resolution algorithm are based on equivalence relations except the choice of number of s The choice of number of s is directed by the property: Let p and p 2 such that p.u = p 2.u and p.v = p 2.v. Then: (p on p 2 ).u = p.u (p on p 2 ).u = p 2.u (p on p 2 ).v = p.v (p on p 2 ).v = p 2.v 47
53 Completeness: choice of the number of s Example: p ( ) p 2 ( ) p on p 2 ( ) Property: size and number of : Let p and p 2 such that p.u = p 2.u +k p 2.v and p.v = k p 2.v. Then: (p on p 2 ).u = p.u (p on p 2 ).u = p 2.u +k p 2.v (p on p 2 ).v = p.v (p on p 2 ).v = k p 2.v 48
54 Throughput v.s. buffering () g i i2 () aux aux2 + o let node g (i, i2) = o where rec aux = i () and aux2 = i2 () and o = buffer aux + buffer aux2 49
55 Throughput v.s. buffering () g i i2 () aux aux2 + o let node g (i, i2) = o where rec aux = i () and aux2 = i2 () and o = buffer aux + buffer aux2 With bufferization: val g :: forall a. ( a * a) -> a on () Buffer line 4, characters -2: size = Buffer line 4, characters 24-35: size = Without bufferization: val g :: forall a. ( a on (^4 ) * a on ()) -> a on () Buffer line 4, characters -2: size = Buffer line 4, characters 24-35: size = 5
56 Objective function It is possible to choose the objective function the linear constraints are solves ASAP: minimize the index of s rate: minimize the sizes of the words buffer: minimize the precedence constraints 5
57 GSM speech encoding and decoding
58 Example of a GSM speech encoder and decoder cyclic encoding ( 5 ) i redundancy bit bit bit2 merge o ( 5 ) merge o2 ( 52 ) merge o3 53
59 Example of a GSM speech encoder and decoder gsm encoding ( ) ( ) cyclic encoding merge convolutional encoding split speech merge 54
60 Global unification H e : ct C H e 2 : ct C 2 H e +e 2 : ct C C 2 Collection of equality constraints H e : ct C H e 2 : ct 2 C 2 H e +e 2 : ct 3 {ct = ct 2 = ct 3 } C C 2 55
61 Example of a GSM speech encoder and decoder gsm decoding convolutional decoding split Ia Ib cyclic decoding i split I II join speech o 56
62 Example of a GSM speech encoder and decoder cyclic decoding x ( 5 3 ) ot ( 5 3 ) data cyclic encoding redondancy reencoded data ( 5 3 ) ot code ok frame ok = and by 3 stutter5 data ok 5 current frame if o 5 () true 5 merge last frame 57
63 Abstract Clocks
64 Abstract Clocks: abs(w) = b,b (r) Number of ones concr( b,b (r)) = a =, 4 5 ( ) Instants O w w w[i] = O w (i) (i) w[i] = O w (i) (i) : r i+b : r i+b 59
65 Abstract Clocks: early and late Nombre de uns a 9 = 2 5, 5 ( 9 3 ) O earlya9 5 O latea Instants i, O earlya (i) = max(,min(i, r i+b )) O latea (i) = max(,min(i, r i+b )) most of the proofs rely on these definitions 6
66 Abstract Clocks: normal form Nombre de uns 5 4 a = 4, 4 ( 7 ) 2 ( a = 2,3 2 2) Instants a = b,b (r), a k = (n, ) k l l l with gcd(n,l) = such that concr(()a ) = concr(()a). We have: n l = red(r), k = b l and k = b l. 6
67 Abstract Clocks: prefix Nombre de uns a 7 = 6 3, 3 ( ) 2 3 Nombre de uns a8 = ( 3, 6 3 3) O w O w Instants Instants concr( b,b (r)) = w w[i] = O w (i) (i) w[i] = O w (i) (i) 62
68 Abstract Clocks: automaton Nombre de uns a 2 = 9 5, 3 5 ( 3 5 ) O w , 5, 6,2 7, Instants, 2, 3, 4, Acceptors and generators : States (i,j) : coordinates in the graph if j + (i) Transitions : if j (i) Finite number of equivalent states. 63
69 Clocks Generator (Lucid Synchrone) type rat = { num: int; den: int; } let norm { num = n; den = l; } i j = if i > l && j >= n then (i - l, j - n) else (i, j) let node generate choice b b r = clk where rec i, j = (,) fby norm r (i+) (if clk then j + else j) and one = rat (j + ) <=.. r *.. (rat i) +.. b and zero = rat j >=.. r *.. (rat i) +.. b and clk = choice one zero let node early b b r = generate (fun x y -> x) b b r let node late b b r = generate (fun x y -> not y) b b r 64
70 Adaptability Relation on Abstract Clocks Number of ones a =, 4 5 ( ) a 2 = 9 5, 3 5 ( 3 5 ) Instants O w O w2 synchronizability b,b (r ) b 2,b 2 (r 2 ) def r = r 2 precedence b,b (r) b 2,b 2 (r) def b 2 b < buffer size size (a,a 2 ) = b b 2 65
71 Abstract Operators Clock expressions: ce ::= w not w ce on ce Abstraction of a clock expression: abs(not w) = not abs(w) abs(c on c 2 ) = abs(c ) on abs(c 2 ) Operators correctness property: not w concr(not abs(w)) c on c 2 concr(abs(c ) on abs(c 2 )) 66
72 Abstract Operators: not Nombre de uns a8 = 3, 6 3 ( 3) O w8 6 5 O w a 7 = 6 3, 3 ( ) Instants not operator definition: not b,b (r) = b, b ( r) 67
73 Abstract Operators: on 9,4,4 7,3 8,3 5,2 6,2 7,2, 2, 3, 3, 4, 5, 2 3, ( ) 2 3 on 5 6, ( ) 5 6 on operator definition: b, b ( r ) on b 2, b 2 ( r 2 ) = b r 2 +b 2, b r 2 +b 2 (r r 2 ) with b, b 2 68
74 Typing f () i α α on () () α 2 on () () i2 α 2 α 2 on () α 2 on () + α 2 on () aux2 α 2 on () + aux α 2 on () () () α 2 on () on () α 3 α 2 on () on () α 3 + α 3 o f :: α on c α on c 2 α on c 3 with the following constraints: c on () <: c 2 on () c 2 on () on () <: c 3 on () c 2 on () on () <: c 3 on () We solve the constraints in the abstract domain.
75 abs(c ) on abs(()) <: abs(c 2 ) on abs(()) abs(c 2 ) on abs(() on ()) <: abs(c 2 ) on abs(() on ()) <: abs(c 3 ) on abs(()) abs(c 3 ) on abs(()) We compute the abstractions. b,b (r ) on, () <: b 2,b 2 (r 2 ) on 2, ( ) 2 b 2,b 2 (r 2 ) on 4, 2 ( ) 4 <: b 3,b 3 (r 3 ) on, () b 2,b 2 (r 2 ) on 3 4, ( ) 4 <: b 3,b 3 (r 3 ) on, () We apply the definition of on. b,b + (r ) <: b 2 2 2,b ( ) r 2 2 b 2 4 4,b ( ) 2 r2 4 <: b 3 +,b 3 + (r 3 ) b ,b ( ) r 2 4 <: b 3 +,b 3 + (r 3 )
76 We can split adaptability constraints into synchronizability and precedence constraints and apply the tests. r = r 2 2 r 2 4 = r 3 r 2 4 = r 3 b b < b 3 + b < b 3 + b < (Sync) (Prec) To solve synchronizability constraints we put all the constraints into the for r i = k r j with k r = 2 r 2 r 3 = 4 r 2 (Prec) We choose r = for the variables that do not appear on the left.
77 r 2 = b b < r = 2 r 3 = 4 b 3 + b < b 3 + b < Question: find the values of the b s and b s such that the constraints are always satisfied and they define well formed abstractions. 72
78 Abstract Clocks: non empty Nombre de uns 4 3 a = 5, 2 5 ( 3 5 ) Instants a = k (n ) l, k, l l k l k l l concr(a) 73
79 Abstract Operators: on definition domain Nombre de uns , ( 6 3 6) (, 6 3 6) O w on w () on 3 () = () , ( Instants 3 ) = 2 ) = , 2 +2 ( , 6 ( ) 3 6, 6 ( ) 3 6 b,b (r ) on b 2,b 2 (r 2 ) is define b and b 2 74
80 Typing f :: α on c α on c 2 α on c 3 with the following constraints: c concr( b,b (r )) c 2 concr( b 2,b 2 (r 2 )) c 3 concr( b 3,b 3 (r 3 )) and r 2 = b r = 2 r 3 = 4 (Prec) (NonEmpty) b 2 b 3 We can solve the constraints using GLPK. 75
81 Application to Latency Insensitive Designs
82 Latency Insensitive Design [Carloni et al. 2] Method used to design synchronous circuits that tolerate data transfer latency design synchronous IPs and interconnect them at each instant, each IP is activated at each activation, an IP consumes a token on each input and produces a token on each output data transfer between each IP takes one instant add relay stations on the wires and shell wrappers around IPs relay-station = split a wire into two pieces shell wrapper = buffers on inputs + a controller to activate the IP Question: do IPs have to be activated by their controller? 77
83 Scheduling Latency Insensitive Design Existing answers: elastic circuits dynamic schedule [Carloni et al. 2, Carmona et al. 29]: every wire is transformed into a channel carrying data and control bits the wrappers dynamically decide activation of IPs by analysing control bits and applying an ASAP strategy a back pressure protocol must be used to avoid buffer overflows static schedule [Casu et al. 24, Boucaron et al. 27, Carmona et al. 29]: computation of an explicit schedule avoids additionnal control pathes and runtime overhead of dynamic schedule maximizes rate (by computing sufficient buffer sizes) minimizes buffer sizes (by choosing other strategies than ASAP) 78
84 Modeling Latency Insensitive Designs with Lucy-n Wire x w delay delay x () on w Relay station x w relay relay x w Shell wrapper x w y w 2 IP z w with w <: w and w 2 <: w 79
85 Example: composition of ip A and ip B i delay ip AB init B delay () merge relay delay ip A () out A delay out B ip B merge init A Schedule computed by the compiler val ip_ab :: forall a. a on () -> a on () 8
86 Example: composition of ip A and ip B i delay ip AB init B delay () merge relay delay ip A () out A delay out B ip B merge init A Schedule computed by the compiler val ip_ab :: forall a. a on () -> a on () Better throughput obtained with the help of the user (option -nbones 2): val ip_ab :: forall a. a on () -> a on () 8
87 Composition of Statically Scheduled IPs ip AAB i delay ip A delay ip AB out AB () delay delay relay merge init Schedule computed by the compiler val ip_aab :: forall a. a on () -> a on () The Lucy-n compiler can schedule IPs that do not necessarily consume a token on each input and produce a token on each output at each activation. 82
88 MPEG-2 video encoder [Carloni et al. 22, Casu et al. 24] Frame mem + DCT Quantizer Regulator Inverse quantizer Buffer Preprocessing Motion comp. + + IDCT Frame mem Variable length code ENC Motion est. input output 83
89 Conclusion 84
Relaxing Synchronous Composition with Clock Abstraction
Relaxing Synchronous Composition with Clock Abstraction Albert Cohen Louis Mandel Florence Plateau Marc Pouzet Université Paris-Sud and INRIA Saclay - Ile-de-France Synchronous data-flow languages such
More informationScheduling and Buffer Sizing of n-synchronous Systems
Scheduling and Buffer Sizing of n-synchronous Systems Typing of Ultimately Periodic Clocks in Lucy-n Louis Mandel Florence Plateau Laboratoire de Recherche en Informatique, Université Paris-Sud 11 Laboratoire
More informationN-Synchronous Kahn Networks A Relaxed Model of Synchrony for Real-Time Systems
N-Synchronous Kahn Networks A Relaxed Model of Synchrony for Real-Time Systems Albert Cohen 1, Marc Duranton 2, Christine Eisenbeis 1, Claire Pagetti 1,4, Florence Plateau 3 and Marc Pouzet 3 POPL, Charleston
More informationInteger Clocks and Local Time Scales
Integer Clocks and Local Time Scales Part I Part II Adrien Guatto ENS - PARKAS SYNCHRON 2014 Adrien Guatto (ENS - PARKAS) Integer Clocks and Local Time Scales SYNCHRON 2014 1 / 31 Part I Adrien Guatto
More informationN-Synchronous Kahn Networks
N-Synchronous Kahn Networks A Relaxed Model of Synchrony for Real-Time Systems Albert Cohen 1 Albert.Cohen@inria.fr Marc Duranton 3 Marc.Duranton@philips.com Christine Eisenbeis 1 Christine.Eisenbeis@inria.fr
More informationFundamental Algorithms for System Modeling, Analysis, and Optimization
Fundamental Algorithms for System Modeling, Analysis, and Optimization Edward A. Lee, Jaijeet Roychowdhury, Sanjit A. Seshia UC Berkeley EECS 144/244 Fall 2010 Copyright 2010, E. A. Lee, J. Roydhowdhury,
More informationClocks in Kahn Process Networks
Clocks in Kahn Process Networks Marc Pouzet UPMC/ENS/INRIA Paris MPRI October 28 Kahn Process Networks A system is defined by a set of operators that run in parallel and communicate with FIFO queues. It
More informationMapping to Parallel Hardware
- Mapping to Parallel Hardware Bruno Bodin University of Edinburgh, United Kingdom 1 / 27 Context - Hardware Samsung Exynos ARM big-little (Heterogenenous), 4 ARM A15, 4 ARM A7, 2-16 cores GPU, 5 Watt.
More informationBuffer Capacity Computation for Throughput Constrained Streaming Applications with Data-Dependent Inter-Task Communication
IEEE Real-Time and Embedded Technology and Applications Symposium Buffer Capacity Computation for Throughput Constrained Streaming Applications with Data-Dependent Inter-Task Communication Maarten H. Wiggers
More informationThe State Explosion Problem
The State Explosion Problem Martin Kot August 16, 2003 1 Introduction One from main approaches to checking correctness of a concurrent system are state space methods. They are suitable for automatic analysis
More informationencoding without prediction) (Server) Quantization: Initial Data 0, 1, 2, Quantized Data 0, 1, 2, 3, 4, 8, 16, 32, 64, 128, 256
General Models for Compression / Decompression -they apply to symbols data, text, and to image but not video 1. Simplest model (Lossless ( encoding without prediction) (server) Signal Encode Transmit (client)
More informationCommunication and Concurrency: CCS
Communication and Concurrency: CCS R. Milner, A Calculus of Communicating Systems, 1980 cours SSDE Master 1 Why calculi? Prove properties on programs and languages Principle: tiny syntax, small semantics,
More informationDES. 4. Petri Nets. Introduction. Different Classes of Petri Net. Petri net properties. Analysis of Petri net models
4. Petri Nets Introduction Different Classes of Petri Net Petri net properties Analysis of Petri net models 1 Petri Nets C.A Petri, TU Darmstadt, 1962 A mathematical and graphical modeling method. Describe
More informationOverview: Synchronous Computations
Overview: Synchronous Computations barriers: linear, tree-based and butterfly degrees of synchronization synchronous example 1: Jacobi Iterations serial and parallel code, performance analysis synchronous
More informationFrom Concurrent Multiclock Programs to Deterministic Asynchronous Implementations
From Concurrent Multiclock Programs to Deterministic Asynchronous Implementations Dumitru Potop-Butucaru Robert de Simone Yves Sorel Jean-Pierre Talpin INRIA, France {FirstName.LastName}@inria.fr Abstract
More informationFrom Concurrent Multi-clock Programs to Deterministic Asynchronous Implementations
From Concurrent Multi-clock Programs to Deterministic Asynchronous Implementations Dumitru Potop-Butucaru Robert de Simone Yves Sorel Jean-Pierre Talpin INRIA, France {FirstName.LastName}@inria.fr Abstract
More informationSynchronous Modelling of Complex Systems
Synchronous Modelling of Complex Systems Nicolas Halbwachs Verimag, Grenoble joint work with L. Mandel LRI E. Jahier, P. Raymond, X. Nicollin Verimag and D. Lesens Astrium Space Transportation () 1 / 45
More informationCommunicating Parallel Processes. Stephen Brookes
Communicating Parallel Processes Stephen Brookes Carnegie Mellon University Deconstructing CSP 1 CSP sequential processes input and output as primitives named parallel composition synchronized communication
More informationUnit: Blocking Synchronization Clocks, v0.3 Vijay Saraswat
Unit: Blocking Synchronization Clocks, v0.3 Vijay Saraswat This lecture discusses X10 clocks. For reference material please look at the chapter on Clocks in []. 1 Motivation The central idea underlying
More information2018/5/3. YU Xiangyu
2018/5/3 YU Xiangyu yuxy@scut.edu.cn Entropy Huffman Code Entropy of Discrete Source Definition of entropy: If an information source X can generate n different messages x 1, x 2,, x i,, x n, then the
More informationCommunication and Concurrency: CCS. R. Milner, A Calculus of Communicating Systems, 1980
Communication and Concurrency: CCS R. Milner, A Calculus of Communicating Systems, 1980 Why calculi? Prove properties on programs and languages Principle: tiny syntax, small semantics, to be handled on
More informationCompilers. Lexical analysis. Yannis Smaragdakis, U. Athens (original slides by Sam
Compilers Lecture 3 Lexical analysis Yannis Smaragdakis, U. Athens (original slides by Sam Guyer@Tufts) Big picture Source code Front End IR Back End Machine code Errors Front end responsibilities Check
More informationSynchronous Elastic Systems
Synchronous Elastic Systems Mike Kishinevsky and Jordi Cortadella Intel Strategic CAD Labs Hillsboro, USA Universitat Politecnica de Catalunya Barcelona, Spain 2 Contributors to SELF research Performance
More informationExploring the Potential of Instruction-Level Parallelism of Exposed Datapath Architectures with Buffered Processing Units
Exploring the Potential of Instruction-Level Parallelism of Exposed Datapath Architectures with Buffered Processing Units Anoop Bhagyanath and Klaus Schneider Embedded Systems Chair University of Kaiserslautern
More informationEmbedded Systems 5. Synchronous Composition. Lee/Seshia Section 6.2
Embedded Systems 5-1 - Synchronous Composition Lee/Seshia Section 6.2 Important semantic model for concurrent composition Here: composition of actors Foundation of Statecharts, Simulink, synchronous programming
More informationTime and Timed Petri Nets
Time and Timed Petri Nets Serge Haddad LSV ENS Cachan & CNRS & INRIA haddad@lsv.ens-cachan.fr DISC 11, June 9th 2011 1 Time and Petri Nets 2 Timed Models 3 Expressiveness 4 Analysis 1/36 Outline 1 Time
More informationEmbedded Systems Development
Embedded Systems Development Lecture 2 Finite Automata & SyncCharts Daniel Kästner AbsInt Angewandte Informatik GmbH kaestner@absint.com Some things I forgot to mention 2 Remember the HISPOS registration
More informationLecture 2: Introduction to Audio, Video & Image Coding Techniques (I) -- Fundaments
Lecture 2: Introduction to Audio, Video & Image Coding Techniques (I) -- Fundaments Dr. Jian Zhang Conjoint Associate Professor NICTA & CSE UNSW COMP9519 Multimedia Systems S2 2006 jzhang@cse.unsw.edu.au
More informationLORD: LOw-complexity, Rate-controlled, Distributed video coding system
LORD: LOw-complexity, Rate-controlled, Distributed video coding system Rami Cohen and David Malah Signal and Image Processing Lab Department of Electrical Engineering Technion - Israel Institute of Technology
More informationECE 5775 (Fall 17) High-Level Digital Design Automation. Scheduling: Exact Methods
ECE 5775 (Fall 17) High-Level Digital Design Automation Scheduling: Exact Methods Announcements Sign up for the first student-led discussions today One slot remaining Presenters for the 1st session will
More informationVLSI Signal Processing
VLSI Signal Processing Lecture 1 Pipelining & Retiming ADSP Lecture1 - Pipelining & Retiming (cwliu@twins.ee.nctu.edu.tw) 1-1 Introduction DSP System Real time requirement Data driven synchronized by data
More informationCSE 505, Fall 2005, Midterm Examination 8 November Please do not turn the page until everyone is ready.
CSE 505, Fall 2005, Midterm Examination 8 November 2005 Please do not turn the page until everyone is ready. Rules: The exam is closed-book, closed-note, except for one side of one 8.5x11in piece of paper.
More informationCompression. Encryption. Decryption. Decompression. Presentation of Information to client site
DOCUMENT Anup Basu Audio Image Video Data Graphics Objectives Compression Encryption Network Communications Decryption Decompression Client site Presentation of Information to client site Multimedia -
More informationLecture 2: Introduction to Audio, Video & Image Coding Techniques (I) -- Fundaments. Tutorial 1. Acknowledgement and References for lectures 1 to 5
Lecture : Introduction to Audio, Video & Image Coding Techniques (I) -- Fundaments Dr. Jian Zhang Conjoint Associate Professor NICTA & CSE UNSW COMP959 Multimedia Systems S 006 jzhang@cse.unsw.edu.au Acknowledgement
More informationReal-Time Calculus. LS 12, TU Dortmund
Real-Time Calculus Prof. Dr. Jian-Jia Chen LS 12, TU Dortmund 09, Dec., 2014 Prof. Dr. Jian-Jia Chen (LS 12, TU Dortmund) 1 / 35 Arbitrary Deadlines The worst-case response time of τ i by only considering
More informationLexical Analysis. Reinhard Wilhelm, Sebastian Hack, Mooly Sagiv Saarland University, Tel Aviv University.
Lexical Analysis Reinhard Wilhelm, Sebastian Hack, Mooly Sagiv Saarland University, Tel Aviv University http://compilers.cs.uni-saarland.de Compiler Construction Core Course 2017 Saarland University Today
More informationComplexity Theory VU , SS The Polynomial Hierarchy. Reinhard Pichler
Complexity Theory Complexity Theory VU 181.142, SS 2018 6. The Polynomial Hierarchy Reinhard Pichler Institut für Informationssysteme Arbeitsbereich DBAI Technische Universität Wien 15 May, 2018 Reinhard
More informationOutline. Complexity Theory EXACT TSP. The Class DP. Definition. Problem EXACT TSP. Complexity of EXACT TSP. Proposition VU 181.
Complexity Theory Complexity Theory Outline Complexity Theory VU 181.142, SS 2018 6. The Polynomial Hierarchy Reinhard Pichler Institut für Informationssysteme Arbeitsbereich DBAI Technische Universität
More informationTrace semantics: towards a unification of parallel paradigms Stephen Brookes. Department of Computer Science Carnegie Mellon University
Trace semantics: towards a unification of parallel paradigms Stephen Brookes Department of Computer Science Carnegie Mellon University MFCSIT 2002 1 PARALLEL PARADIGMS State-based Shared-memory global
More informationA Hybrid Synchronous Language with Hierarchical Automata
A Hybrid Synchronous Lanuae with Hierarchical Automata Static Typin and Translation to Synchronous Code Albert Benveniste 1 Benoît Caillaud 1 Timothy Bourke 1,2 Marc Pouzet 2,1 1. INRIA 2. ENS, Paris 18th
More informationTemperature-Aware Analysis and Scheduling
Temperature-Aware Analysis and Scheduling Lothar Thiele, Pratyush Kumar Overview! Introduction! Power and Temperature Models! Analysis Real-time Analysis Worst-case Temperature Analysis! Scheduling Stop-and-go
More informationInformation and Entropy
Information and Entropy Shannon s Separation Principle Source Coding Principles Entropy Variable Length Codes Huffman Codes Joint Sources Arithmetic Codes Adaptive Codes Thomas Wiegand: Digital Image Communication
More informationHow to deal with uncertainties and dynamicity?
How to deal with uncertainties and dynamicity? http://graal.ens-lyon.fr/ lmarchal/scheduling/ 19 novembre 2012 1/ 37 Outline 1 Sensitivity and Robustness 2 Analyzing the sensitivity : the case of Backfilling
More informationIEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS 1
IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS Modeling, Analysis, and Hard Real-time Scheduling of Adaptive Streaming Applications Jiali Teddy Zhai, Sobhan Niknam, and Todor
More informationCausality Interfaces and Compositional Causality Analysis
Causality Interfaces and Compositional Causality Analysis Edward A. Lee Haiyang Zheng Ye Zhou {eal,hyzheng,zhouye}@eecs.berkeley.edu Center for Hybrid and Embedded Software Systems (CHESS) Department of
More informationDistributed Algorithms (CAS 769) Dr. Borzoo Bonakdarpour
Distributed Algorithms (CAS 769) Week 1: Introduction, Logical clocks, Snapshots Dr. Borzoo Bonakdarpour Department of Computing and Software McMaster University Dr. Borzoo Bonakdarpour Distributed Algorithms
More informationVLSI System Design Part V : High-Level Synthesis(2) Oct Feb.2007
VLSI System Design Part V : High-Level Synthesis(2) Oct.2006 - Feb.2007 Lecturer : Tsuyoshi Isshiki Dept. Communications and Integrated Systems, Tokyo Institute of Technology isshiki@vlsi.ss.titech.ac.jp
More informationControl of Hybrid Petri Nets using Max-Plus Algebra
Control of Hybrid Petri Nets using Max-Plus Algebra FABIO BALDUZZI*, ANGELA DI FEBBRARO*, ALESSANDRO GIUA, SIMONA SACONE^ *Dipartimento di Automatica e Informatica Politecnico di Torino Corso Duca degli
More informationSnapshots. Chandy-Lamport Algorithm for the determination of consistent global states <$1000, 0> <$50, 2000> mark. (order 10, $100) mark
8 example: P i P j (5 widgets) (order 10, $100) cji 8 ed state P i : , P j : , c ij : , c ji : Distributed Systems
More informationOperational Semantics
Operational Semantics Semantics and applications to verification Xavier Rival École Normale Supérieure Xavier Rival Operational Semantics 1 / 50 Program of this first lecture Operational semantics Mathematical
More informationSemantic Equivalences and the. Verification of Infinite-State Systems 1 c 2004 Richard Mayr
Semantic Equivalences and the Verification of Infinite-State Systems Richard Mayr Department of Computer Science Albert-Ludwigs-University Freiburg Germany Verification of Infinite-State Systems 1 c 2004
More informationInformation Flow Inference for ML
POPL 02 INRIA Rocquencourt Projet Cristal Francois.Pottier@inria.fr http://cristal.inria.fr/~fpottier/ Vincent.Simonet@inria.fr http://cristal.inria.fr/~simonet/ Information flow analysis account number
More informationCompiling Techniques
Lecture 11: Introduction to 13 November 2015 Table of contents 1 Introduction Overview The Backend The Big Picture 2 Code Shape Overview Introduction Overview The Backend The Big Picture Source code FrontEnd
More informationClock-driven scheduling
Clock-driven scheduling Also known as static or off-line scheduling Michal Sojka Czech Technical University in Prague, Faculty of Electrical Engineering, Department of Control Engineering November 8, 2017
More informationTransducers for bidirectional decoding of codes with a finite deciphering delay
Transducers for bidirectional decoding of codes with a finite deciphering delay L. Giambruno 1, S. Mantaci 2, J. Néraud 3 and C. Selmi 3 GREYC - Université de Caen Basse-Normandie Dipartimento di Matematica
More informationScalable and Accurate Verification of Data Flow Systems. Cesare Tinelli The University of Iowa
Scalable and Accurate Verification of Data Flow Systems Cesare Tinelli The University of Iowa Overview AFOSR Supported Research Collaborations NYU (project partner) Chalmers University (research collaborator)
More informationEmbedded Systems 14. Overview of embedded systems design
Embedded Systems 14-1 - Overview of embedded systems design - 2-1 Point of departure: Scheduling general IT systems In general IT systems, not much is known about the computational processes a priori The
More informationConcurrent automata vs. asynchronous systems
Concurrent automata vs. asynchronous systems Une application d un résultat d ndré rnold avec l aide du théorème de Zielonka Réunion TGD 3 novembre 2005 Rémi MORIN Concurrent automata vs. asynchronous systems
More informationQualitative vs Quantitative metrics
Qualitative vs Quantitative metrics Quantitative: hard numbers, measurable Time, Energy, Space Signal-to-Noise, Frames-per-second, Memory Usage Money (?) Qualitative: feelings, opinions Complexity: Simple,
More informationBlocking Synchronization: Streams Vijay Saraswat (Dec 10, 2012)
1 Streams Blocking Synchronization: Streams Vijay Saraswat (Dec 10, 2012) Streams provide a very simple abstraction for determinate parallel computation. The intuition for streams is already present in
More informationHuffman Coding. C.M. Liu Perceptual Lab, College of Computer Science National Chiao-Tung University
Huffman Coding C.M. Liu Perceptual Lab, College of Computer Science National Chiao-Tung University http://www.csie.nctu.edu.tw/~cmliu/courses/compression/ Office: EC538 (03)573877 cmliu@cs.nctu.edu.tw
More informationEquivalence Checking For Synchronous Elastic Circuits
Equivalence Checking For Synchronous Elastic Circuits Vidura Wijayasekara and Sudarshan K. Srinivasan Department of Electrical and Computer Engineering North Dakota State University Fargo ND 58104 Email:
More informationINF2270 Spring Philipp Häfliger. Lecture 8: Superscalar CPUs, Course Summary/Repetition (1/2)
INF2270 Spring 2010 Philipp Häfliger Summary/Repetition (1/2) content From Scalar to Superscalar Lecture Summary and Brief Repetition Binary numbers Boolean Algebra Combinational Logic Circuits Encoder/Decoder
More informationTime(d) Petri Net. Serge Haddad. Petri Nets 2016, June 20th LSV ENS Cachan, Université Paris-Saclay & CNRS & INRIA
Time(d) Petri Net Serge Haddad LSV ENS Cachan, Université Paris-Saclay & CNRS & INRIA haddad@lsv.ens-cachan.fr Petri Nets 2016, June 20th 2016 1 Time and Petri Nets 2 Time Petri Net: Syntax and Semantic
More informationEECS150 - Digital Design Lecture 23 - FFs revisited, FIFOs, ECCs, LSFRs. Cross-coupled NOR gates
EECS150 - Digital Design Lecture 23 - FFs revisited, FIFOs, ECCs, LSFRs April 16, 2009 John Wawrzynek Spring 2009 EECS150 - Lec24-blocks Page 1 Cross-coupled NOR gates remember, If both R=0 & S=0, then
More informationGoogle s Neural Machine Translation System: Bridging the Gap between Human and Machine Translation
Google s Neural Machine Translation System: Bridging the Gap between Human and Machine Translation Y. Wu, M. Schuster, Z. Chen, Q.V. Le, M. Norouzi, et al. Google arxiv:1609.08144v2 Reviewed by : Bill
More informationProgramming with Dependent Types in Coq
Programming with Dependent Types in Coq Matthieu Sozeau LRI, Univ. Paris-Sud - Démons Team & INRIA Saclay - ProVal Project PPS Seminar February 26th 2009 Paris, France Coq A higher-order, polymorphic logic:
More informationModels for representing sequential circuits
Sequential Circuits Models for representing sequential circuits Finite-state machines (Moore and Mealy) Representation of memory (states) Changes in state (transitions) Design procedure State diagrams
More informationIssues on Timing and Clocking
ECE152B TC 1 Issues on Timing and Clocking X Combinational Logic Z... clock clock clock period ECE152B TC 2 Latch and Flip-Flop L CK CK 1 L1 1 L2 2 CK CK CK ECE152B TC 3 Clocking X Combinational Logic...
More informationBridging the Semantic Gap Between Heterogeneous Modeling Formalisms and FMI
Bridging the Semantic Gap Between Heterogeneous Modeling Formalisms and FMI Stavros Tripakis Aalto University and University of California, Berkeley Abstract FMI (Functional Mockup Interface) is a standard
More informationLOGIC CIRCUITS. Basic Experiment and Design of Electronics. Ho Kyung Kim, Ph.D.
Basic Experiment and Design of Electronics LOGIC CIRCUITS Ho Kyung Kim, Ph.D. hokyung@pusan.ac.kr School of Mechanical Engineering Pusan National University Digital IC packages TTL (transistor-transistor
More informationA Simulation Condition for Correct Asynchronous Implementation of Synchronous Design
A Simulation Condition for Correct Asynchronous Implementation of Synchronous Design S. Xu, R. Kumar, S. Jiang, and S. Ramesh Abstract We study the problem of desynchronization, i.e., semantics-preserving
More informationOptimal Media Streaming in a Rate-Distortion Sense For Guaranteed Service Networks
Optimal Media Streaming in a Rate-Distortion Sense For Guaranteed Service Networks Olivier Verscheure and Pascal Frossard Jean-Yves Le Boudec IBM Watson Research Center Swiss Federal Institute of Tech.
More informationSanjit A. Seshia EECS, UC Berkeley
EECS 219C: Computer-Aided Verification Explicit-State Model Checking: Additional Material Sanjit A. Seshia EECS, UC Berkeley Acknowledgments: G. Holzmann Checking if M satisfies : Steps 1. Compute Buchi
More informationRecoverable Robustness in Scheduling Problems
Master Thesis Computing Science Recoverable Robustness in Scheduling Problems Author: J.M.J. Stoef (3470997) J.M.J.Stoef@uu.nl Supervisors: dr. J.A. Hoogeveen J.A.Hoogeveen@uu.nl dr. ir. J.M. van den Akker
More informationClocks in Asynchronous Systems
Clocks in Asynchronous Systems The Internet Network Time Protocol (NTP) 8 Goals provide the ability to externally synchronize clients across internet to UTC provide reliable service tolerating lengthy
More informationRepresentations of All Solutions of Boolean Programming Problems
Representations of All Solutions of Boolean Programming Problems Utz-Uwe Haus and Carla Michini Institute for Operations Research Department of Mathematics ETH Zurich Rämistr. 101, 8092 Zürich, Switzerland
More informationInteger Linear Programming Based Property Checking for Asynchronous Reactive Systems
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING 1 Integer Linear Programming Based Property Checking for Asynchronous Reactive Systems Stefan Leue Department of Computer and Information Science University of
More informationCprE 281: Digital Logic
CprE 281: Digital Logic Instructor: Alexander Stoytchev http://www.ece.iastate.edu/~alexs/classes/ Synchronous Sequential Circuits Basic Design Steps CprE 281: Digital Logic Iowa State University, Ames,
More informationPerformance Analysis and Optimization of Latency Insensitive Systems
Performance Analysis and Optimization of Latency Insensitive Systems Luca P. Carloni and Alberto L. Sangiovanni-Vincentelli University of California at Berkeley, Berkeley, CA 94720-1772 {lcarloni,alberto}@ic.eecs.berkeley.edu
More informationAutomata-based Verification - III
COMP30172: Advanced Algorithms Automata-based Verification - III Howard Barringer Room KB2.20: email: howard.barringer@manchester.ac.uk March 2009 Third Topic Infinite Word Automata Motivation Büchi Automata
More informationLecture 4. Finite Automata and Safe State Machines (SSM) Daniel Kästner AbsInt GmbH 2012
Lecture 4 Finite Automata and Safe State Machines (SSM) Daniel Kästner AbsInt GmbH 2012 Initialization Analysis 2 Is this node well initialized? node init1() returns (out: int) let out = 1 + pre( 1 ->
More informationSpecial Nodes for Interface
fi fi Special Nodes for Interface SW on processors Chip-level HW Board-level HW fi fi C code VHDL VHDL code retargetable compilation high-level synthesis SW costs HW costs partitioning (solve ILP) cluster
More informationFPGA Resource Utilization Estimates for NI crio LabVIEW FPGA Version: 8.6 NI-RIO Version: 3.0 Date: 8/5/2008
FPGA Resource Utilization Estimates for NI crio-9104 LabVIEW FPGA Version: 8.6 NI-RIO Version: 3.0 Date: 8/5/2008 Note: The numbers presented in this document are estimates. Actual resource usage for your
More informationDynamic Power Allocation and Routing for Time Varying Wireless Networks
Dynamic Power Allocation and Routing for Time Varying Wireless Networks X 14 (t) X 12 (t) 1 3 4 k a P ak () t P a tot X 21 (t) 2 N X 2N (t) X N4 (t) µ ab () rate µ ab µ ab (p, S 3 ) µ ab µ ac () µ ab (p,
More informationChapter 3. Regular grammars
Chapter 3 Regular grammars 59 3.1 Introduction Other view of the concept of language: not the formalization of the notion of effective procedure, but set of words satisfying a given set of rules Origin
More informationSource Coding: Part I of Fundamentals of Source and Video Coding
Foundations and Trends R in sample Vol. 1, No 1 (2011) 1 217 c 2011 Thomas Wiegand and Heiko Schwarz DOI: xxxxxx Source Coding: Part I of Fundamentals of Source and Video Coding Thomas Wiegand 1 and Heiko
More informationNovel Devices and Circuits for Computing
Novel Devices and Circuits for Computing UCSB 594BB Winter 2013 Lecture 4: Resistive switching: Logic Class Outline Material Implication logic Stochastic computing Reconfigurable logic Material Implication
More informationA Multi-Periodic Synchronous Data-Flow Language
Julien Forget 1 Frédéric Boniol 1 David Lesens 2 Claire Pagetti 1 firstname.lastname@onera.fr 1 ONERA - Toulouse, FRANCE 2 EADS Astrium Space Transportation - Les Mureaux, FRANCE November 19, 2008 1 /
More informationHigh Performance Computing
Master Degree Program in Computer Science and Networking, 2014-15 High Performance Computing 2 nd appello February 11, 2015 Write your name, surname, student identification number (numero di matricola),
More informationAnalysis of Rate-distortion Functions and Congestion Control in Scalable Internet Video Streaming
Analysis of Rate-distortion Functions and Congestion Control in Scalable Internet Video Streaming Min Dai Electrical Engineering, Texas A&M University Dmitri Loguinov Computer Science, Texas A&M University
More informationDigital Control of Electric Drives
Digital Control of Electric Drives Logic Circuits - equential Description Form, Finite tate Machine (FM) Czech Technical University in Prague Faculty of Electrical Engineering Ver.. J. Zdenek 27 Logic
More informationLOGIC CIRCUITS. Basic Experiment and Design of Electronics
Basic Experiment and Design of Electronics LOGIC CIRCUITS Ho Kyung Kim, Ph.D. hokyung@pusan.ac.kr School of Mechanical Engineering Pusan National University Outline Combinational logic circuits Output
More informationBridging the Semantic Gap Between Heterogeneous Modeling Formalisms and FMI
Bridging the Semantic Gap Between Heterogeneous Modeling Formalisms and FMI Stavros Tripakis David Broman Electrical Engineering and Computer Sciences University of California at Berkeley Technical Report
More informationValency Arguments CHAPTER7
CHAPTER7 Valency Arguments In a valency argument, configurations are classified as either univalent or multivalent. Starting from a univalent configuration, all terminating executions (from some class)
More informationClocked Synchronous State-machine Analysis
Clocked Synchronous State-machine Analysis Given the circuit diagram of a state machine: Analyze the combinational logic to determine flip-flop input (excitation) equations: D i = F i (Q, inputs) The input
More informationSémantique des jeux asynchrones et réécriture 2-dimensionnelle
Sémantique des jeux asynchrones et réécriture 2-dimensionnelle Soutenance de thèse de doctorat Samuel Mimram Laboratoire PPS (CNRS Université Paris Diderot) 1 er décembre 2008 1 / 64 A program is a text
More informationCOMPUTER SCIENCE TRIPOS
CST0.2017.2.1 COMPUTER SCIENCE TRIPOS Part IA Thursday 8 June 2017 1.30 to 4.30 COMPUTER SCIENCE Paper 2 Answer one question from each of Sections A, B and C, and two questions from Section D. Submit the
More informationExam Spring Embedded Systems. Prof. L. Thiele
Exam Spring 20 Embedded Systems Prof. L. Thiele NOTE: The given solution is only a proposal. For correctness, completeness, or understandability no responsibility is taken. Sommer 20 Eingebettete Systeme
More informationBinary Convolutional Codes
Binary Convolutional Codes A convolutional code has memory over a short block length. This memory results in encoded output symbols that depend not only on the present input, but also on past inputs. An
More information