DSP Design Lecture 7. Unfolding cont. & Folding. Dr. Fredrik Edman.
|
|
- Thomasine Whitehead
- 5 years ago
- Views:
Transcription
1 SP esign Lecture 7 Unfolding cont. & Folding r. Fredrik Edman fredrik.edman@eit.lth.se
2 Unfolding Unfolding creates a program with more than one iteration, J=unfolding factor Unfolding is a structured way to achieve parallel processing Applications Reveal hidden concurrencies so that the program can be scheduled to a smaller iteration period T Parallel processing Bit-serial and igit-serial Unfolding = Loop unrolling assembly programming compiler theory
3 General Algorithm for unfolding Step 1. For each node U in the original FG, draw J nodes U 0, U 1, U 2,, U J-1 i = 0, 1,, J-1 U 0 J= 9 V 0 U 37 V U 1 9 V 1 ( i w) ( i 37) + J = + = 9, i 10, = 0,1,2 i = 3 U 2 U V 2 V 3 Step 2. For each edge U V with w delays in the original FG, draw the J edges U i V (i + w)%j (i+w)/j delays for i = 0, 1,, J-1 with
4 Properties of unfolding Unfolding preserves the number of delays in a FG w/j + (w+1)/j + + (w + J - 1)/J = w Unfolding preserves precedence constraints J-unfolding of a loop with w l delays in the original FG gcd(w l, J) loops in the unfolded FG. Each loop contains w l /gcd(w l, J) delays and J/ gcd(w l, J) copies of each node. Unfolding a FG with iteration bound T results in a J-unfolded FG with iteration bound JT.
5 Unfolding of Switches The following assumptions are made when unfolding an edge U V containing a switch : The wordlength W is a multiple of the unfolding factor J, i.e. W = W J. All edges into and out of the switch have no delays. If so, an edge U V can be unfolded as: Write the switching instance as Wl + u = J( W l + u/j ) + (u%j) raw an edge from the node U u%j V u%j, which is switched at time instance ( W l + u/j ). U Wl+u V
6 Unfolding (cont.) Chapter 5
7 What about Switches with elays? Unfolding a FG containing an edge having a switch and a positive number of delays is done by introducing a dummy node. A B 2 6l + 1, 5 6l + 0, 2, 3, C Inserting ummy node A B 2 6l + 1, 5 6l + 0, 2, 3, C After unfolding remove the dummy node!
8 Example: How to Unfold a Bit-serial Adder A S Output INPUTS X Bit-Serial B l +0 l +1,2,3 a b i i s i cout i Reset Carry = 0 Z Carry
9 Example: How to Unfold a Bit-serial Adder A S Output INPUTS X B l +0 l +1,2,3 ummy node Reset Carry = 0 Z Carry
10 Unfold Bit-serial Adder, J=2 A 0 S 0 A 1 S 1 X 0 X 1 B 0 0 B 1 1 Z 0 Z 1 For each node U in the original FG, draw J nodes U 0, U 1, U 2,, U J-1
11 Unfold Bit-serial Adder, J=2 A 0 S 0 A 1 S 1 X 0 X 1 B 0 0 B 1 1 Z 0 Z 1 For each edge U V with w delays in the original FG, draw the J edges U i V (i + w)%j with (i+w)/j delays for i = 0, 1,, J-1 If edge has w=0 U i V i with 0 delays
12 Unfold Bit-serial Adder, J=2 A 0 S 0 A 1 S 1 X 0 X 1 B 0 0 B 1 1 Z 0 Z 1 For each edge U V with w delays in the original FG, draw the J edges U i V (i + w)%j with (i+w)/j delays for i = 0, 1,, J-1 X for i=0 X 0 1 with 0 delays and X for i=1 X 1 0 with 1 delays
13 Unfold the Switch, J=2 A 0 S 0 X 0 Z X l+0 2(2l+0)+0 B 0 l+0 l+1,2,3 Z 0 0 X l+1 2(2l+0)+1 l+2 2(2l+1)+0 l+3 2(2l+1)+1 Write the switching instance as Wl + u = J( W l + u/j ) + (u%j)
14 Unfold the Switch, J=2 A 0 S 0 X 0 Z X l+0 2(2l+0)+0 B 0 l+0 l+1,2,3 Z 0 0 X l+1 2(2l+0)+1 l+2 2(2l+1)+0 l+3 2(2l+1)+1 Z 0 X 0 at time 2l+0 0 X 0 at time 2l+1
15 Unfold the Switch, J=2 A 0 S 0 X 0 Z X l+0 2(2l+0)+0 B 0 l+0 l+1,2,3 Z 0 0 X l+1 2(2l+0)+1 l+2 2(2l+1)+0 l+3 2(2l+1)+1 Z 0 X 0 at time 2l+0 0 X 0 at time 2l+1 1 X 1 at time 2l+0,1 i.e. always closed
16 Unfold the Switch, J=2 A 0 S 0 A 1 S 1 X 0 X 1 B 0 2l+0 2l+1 0 B 1 1 Z 0 Z 1 ead Node Z 0 X 0 at time 2l+0 0 X 0 at time 2l+1 1 X 1 at time 2l+0,1 i.e. always closed
17 Remove ead and ummy Nodes A 0 S 0 A 1 S 1 X 0 X 1 B 0 2l+0 2l+1 Z 0 B 1 Z 0 X 0 at time 2l+0 0 X 0 at time 2l+1 1 X 1 at time 2l+0,1 i.e. always closed
18 The igit Serial Adder A 0 S 0 A 1 S 1 X 0 X 1 digit2 digit1 B 0 2l+0 2l+1 B 1 a 3 a 2 a 1 a 0 b 3 b 2 b 1 b 0 Z 0 s 3 s 2 s 1 s 0 Carry next iteration =1 Carry within iteration
19 Fully Parallel Adder, i.e.j= LSB MSB A 0 S 0 A 1 S 1 A 2 S 2 A 3 S 3 X 0 X 1 X 2 X 3 B 0 0 B 1 1 B 2 2 B 3 3 Z 0 Z 1 Z 2 Z 3 For each node U in the original FG, draw J nodes U 0, U 1, U 2,, U J-1 For each edge U V with w delays in the original FG, draw the J edges U i V (i + w)%j with (i+w)/j delays for i = 0, 1,, J-1
20 Unfold the Switch, J= A 0 S 0 X 0 Z X l+0 (1l+0)+0 B 0 l+0 l+1,2,3 Z 0 0 X l+1 (1l+0)+1 l+2 (1l+0)+2 l+3 (1l+0)+3 Write the switching instance as Wl + u = J( W l + u/j ) + (u%j)
21 Unfold the Switch, J= A 0 S 0 X 0 Z X l+0 (1l+0)+0 B 0 l+0 l+1,2,3 Z 0 0 X l+1 (1l+0)+1 l+2 (1l+0)+2 l+3 (1l+0)+3 Only 1 time instance 0, i.e. fully parallel Z 0 X 0, 1 X 1, 2 X 2 and 3 X 3
22 Bit-parallel Adder A 0 S 0 A 1 S 1 A 2 S 2 A 3 S 3 X 0 X 1 X 2 X 3 B 0 0 B 1 1 B 2 2 B 3 3 Z 0 Z 1 Z 2 Z 3 Only 1 time instance 0, i.e. fully parallel Z 0 X 0, 1 X 1, 2 X 2 and 3 X 3
23 LSB Bit-parallel Adder MSB A 0 S 0 A 1 S 1 A 2 S 2 A 3 S 3 X 0 X 1 X 2 X 3 B 0 0 B 1 1 B 2 2 B 3 3 Z 0 Z 1 Z 2 Z 3 ead nodes
24 Remove ead and ummy Nodes A 0 S 0 A 1 S 1 A 2 S 2 A 3 S 3 X 0 X 1 X 2 X 3 B 0 0 B 1 1 B 2 2 B 3 3 Z 0 Z 1 Z 2 Z 3 ead nodes can be removed ummy nodes can be removed
25 Bit-parallel Adder Carry from MSB as overflow or if to be used as a -bit module A 0 S 0 A 1 S 1 A 2 S 2 A 3 S 3 X 0 X 1 X 2 X 3 B 0 B 1 B 2 B 3 Z 0 Switch if to be used as a -bit module Carry = 0 Carry Ripple Adder a 3 a 2 a 1 a 0 b 3 b 2 b 1 b 0 s 3 s 2 s 1 s 0
26 If Wordlength is not a multiple of J determine L=lcm{W,J}, lcm = least common multiple replace switching instance Wl+u with L/W instances Ll+u+wW, for w= 0..L/W-1 i.e. the switching periodicity has been changed from W to L perform the unfolding as previously identify the correspondence between original instances and expanded instances
27 Example: Unfold Bit-serial Adder by J=3 A Z X B l +0 l +1,2,3 S Wordlength W= not a multiple of the the unfolding factor J=3. etermine L=lcm{W,J}=lcm{,3}=12 Replace Wl+u with Ll+u+wW for w= 0 to L/W-1
28 Example: Unfold Bit-serial Adder by J=3 A X S Replace Wl+u with Ll+u+wW for w= 0 to L/W-1 B 12l+0,,8 Z 12l+1,2,3,5,6,7, 9,10,11 l+0 is now equivalent to 12l+0, 12l+ and 12l+8 and so on Unfold as for the regular case.
29 Example: Unfold Bit-serial Adder by J=3 A 0 S 0 A 1 S 1 A 2 S 2 X 0 X 1 X 2 B 0 0 B 1 1 B 2 2 Z 0 Z 2
30 Example: Unfold Bit-serial Adder by J=3 A S Write the switching instance as Wl + u = J( W l + u/j ) + (u%j) B 12l+0,,8 X 12l+0 = 3(l+0)+0 12l+ = 3(l+1)+1 12l+8 = 3(l+2)+2 raw an edge from node U u%j V u%j, which is switched at time instance Z 0 X 0 Z 1 X 1 Z 2 X 2 Z ( W l + u/j )
31 Example: Unfold Bit-serial Adder by J=3 A 0 S 0 A 1 S 1 A 2 S 2 X 0 X 1 X 2 B 0 0 B 1 1 B 2 2 l+0 l+1 l+2 Z 0 Z 1 Z 2
32 Example: Unfold Bit-serial Adder by J=3 A B Z X S 12l+1,2,3,5,6,7, 9,10,11 Write the switching instance as Wl + u = J( W l + u/j ) + (u%j) 12l+1 = 3(l+0)+1 12l+2 = 3(l+0)+2 12l+3 = 3(l+1)+0 0 X 0 12l+5 = 3(l+1)+2 12l+6 = 3(l+2)+0 0 X 0 12l+7 = 3(l+2)+1 12l+9 = 3(l+3)+0 0 X 0 12l+10 = 3(l+3)+1 12l+11 = 3(l+3)+2
33 Example: Unfold Bit-serial Adder by J=3 A 0 S 0 A 1 S 1 A 2 S 2 X 0 X 1 X 2 B 0 0 B 1 1 B 2 2 l+0 l+1,2,3 l+1 l+0,2,3 l+2 l+0,1,3 Z 0 Z 1 Z 2
34 Example: Unfold Bit-serial Adder by J=3 A B Z X S 12l+1,2,3,5,6,7, 9,10,11 Write the switching instance as Wl + u = J( W l + u/j ) + (u%j) 12l+1 = 3(l+0)+1 1 X 1 12l+2 = 3(l+0)+2 12l+3 = 3(l+1)+0 12l+5 = 3(l+1)+2 12l+6 = 3(l+2)+0 12l+7 = 3(l+2)+1 1 X 1 12l+9 = 3(l+3)+0 12l+10 = 3(l+3)+1 1 X 1 12l+11 = 3(l+3)+2
35 Example: Unfold Bit-serial Adder by J=3 A 0 S 0 A 1 S 1 A 2 S 2 X 0 X 1 X 2 B 0 0 B 1 1 B 2 2 l+0 l+1,2,3 l+1 l+0,2,3 l+2 l+0,1,3 Z 0 Z 1 Z 2
36 Example: Unfold Bit-serial Adder by J=3 A B Z X S 12l+1,2,3,5,6,7, 9,10,11 Write the switching instance as Wl + u = J( W l + u/j ) + (u%j) 12l+1 = 3(l+0)+1 12l+2 = 3(l+0)+2 2 X 2 12l+3 = 3(l+1)+0 12l+5 = 3(l+1)+2 2 X 2 12l+6 = 3(l+2)+0 12l+7 = 3(l+2)+1 12l+9 = 3(l+3)+0 12l+10 = 3(l+3)+1 12l+11 = 3(l+3)+2 2 X 2
37 Example: Unfold Bit-serial Adder by J=3 A 0 S 0 A 1 S 1 A 2 S 2 X 0 X 1 X 2 B 0 0 B 1 1 B 2 2 l+0 l+1,2,3 l+1 l+0,2,3 l+2 l+0,1,3 Z 0 Z 1 Z 2 c 3 c 2 c 1 c 0 d 3 d 2 d 1 d 0 s 3 s 2 s 1 s 0 a 3 a 2 a 1 a 0 b 3 b 2 b 1 b 0 s 3 s 2 s 1 s 0
38 End of Unfolding
39 Folding Chapter 6
40 Node A What is folding?? Folding is the Inverse of Unfolding A Folding by N (N=folding factor) A 0 Unfolding by J A 1 A J-1
41 Folding? Used to minimize silicon area (trading area for time)! A way to systematically determine the control circuits in SP architectures by folding transformation, where multiple algorithm operations are time-multiplexed to a single functional unit. Use for synthesis of SP architectures that can be operated at single or multiple clocks. Use to reduce the number of hardware functional units (FUs) such as adders and mults by a factor of N at the expense of increasing computation time by a factor of N. But Folding lead to an architecture that uses a large number of registers and thus a register minimization technique needs sometime to be applied.
42 Hardware Mapped vs. Time multiplexed x(n) FIR : y N 1 k = 0 ( n) = h( k) x( n k) MUX c h0 h1 h2 h3 REG 1 sample/cc N fixed multipliers N-1 adders y(n) N cc/sample 1 generalized multiplier 1 adders 1 coefficient memory + control
43 Hardware Mapped vs. Time multiplexed/microcoded Biquad Filter M MUX Hardware mapped 5 mult with fixed coeffecients adders 2 delays Latency=1cc Microcoded 1 mult 1 adder Latency=5cc Coeff Memory 3 Registers Controller c MUX REG REG REG
44 a(n) SP esign Folding Time-shared Architecture b(n) c(n) y(n) y ( n) = a( n) + b( n) + c( n) a(n) b(n) 2l+0 2l+0 2l+1 2l+1 c(n) 2l+0 Folding is a technique to reduce the silicon area by time-multiplexing many operations into single functional units. The right figure shows a 2 times folded architecture where 2 additions are folded, or time-multiplexed, to a single adder Folding introduces registers/storage Computation time increased, e.g. one output sample every 2 cc (one input signal consumed every 2cc) y(n)
45 Folding Example A more detailed look! a(0) b(0) 2l+0 y ( n) = a( n) + b( n) + c( n) Cycle 0 2l+0 2l+0 y(-1) a(n) a(0)+b(0) b(n) c(n) Cycle 1 2l+1 c(0) y(n) b(1) Cycle 2 2l+0 2l+1 Cycle 3 2l+1 c(1) a(1) 2l+0 2l+0 a(0)+b(0)+c(0) 2l+1
46 Control Unit Finite State Machine a(n) 2l+0 b(n) 2l+0 2l+1 2l+1 c(n) 2l+0 y(n) S0 -/0 -/1 S1 control signal(s) Control units can be complex in large systems!
47 Folding Reduce hardware by N-folding T computation increased by N Latecy Extremes Fully parallel Time multiplexed = 1 unit per algorithmic operation Folding extra registers, i.e. extra storage a more complex control unit more latency
48 N=folding factor Nr. of operations folded to a single unit Folding Transformation Nl+u H u U ω(e) V l = iteration HW-unit V P u F (U V) Nl+v H v P v HW-unit U Level of Pipeline elays in folded graph u and v are folding order, i.e. scheduled time 0 u, v N 1
49 Folding Transformation Nl+u H u P u F (U V) Nl+v H u is pipelined by P u stages and its output is available at Nl + u + P u. Edge U V has w(e) delays the l-th iteration of U is used by (l+w(e)) th iteration of node V, which is executed at N(l + w(e)) + v. So, the result should be stored for : F (U V) = [N(l + w(e)) + v] [Nl + P u + u] H v P v F (U V) = Nw(e) - P u + v u ( independent of l )
50 Folding Set A folding set is an ordered set of operations to be executed on the same functional unit. The folding set are typically obtained from a scheduling and allocation algorithm (ref. Appendix B) The folding set represents underlying folding transformation Each set contain N entries, N=folding factor. Folding order: ( N-1) S = { A, A } 0, A 1 belongs to folding set S 1 with folding order 0 N=3 Null operation ( ) S 0 1
51 Ex. Folding of Biquad filter In 1 2 a 3 b 5 6 c 7 8 (S 2 2) d Out
52 T P adder adder = Ex. Folding of Biquad filter In (S 1 3) 1 2 a 3 b 5 6 c d (S 1 1) (S 1 2) (S 1 0) (S 2 0) (S 2 2) 1 = 1 Additions 7 8 (S 2 3) (S 2 1) Out Multiplication T P mult mult = = 2 2 S {,2,3,1 } S = { 5,8,6,7} 2 1 =
53 Folding of Biquad filter, N= F (U V) = Nw(e) - P u + v u F (1 2) = -3 F (1 5) = 0 F (1 6) = 2 F (1 7) = 7 F (1 8) = 5 F (3 1) = 0 F ( 2) = 0 F (5 3) = 0 F (6 ) = - F (7 3) = -3 F (8 ) = -3 receive In send (S 1 3) A delay between two edges can not be negative! 1 2 a 3 b 5 6 c d (S 1 1) (S 1 2) (S 1 0) (S 2 0) (S 2 2) 7 8 (S 2 3) (S 2 1) Out F ( U V ) < 0 Not Valid folding
54 Retiming: Folding of Biquad filter, In (S 1 3) N= 1 2 a 3 b 5 6 c d (S 1 1) (S 1 2) (S 1 0) (S 2 0) (S 2 2) Retiming Split and move delay 7 8 (S 2 3) (S 2 1) Out Feedforward cutset Pipelining
55 Folding of retimed Biquad filter In (S 1 3) 1 2 a 3 b 5 6 c d (S 1 1) (S 1 2) (S 1 0) (S 2 0) (S 2 2) 7 8 (S 2 3) (S 2 1) Out
56 Systematic way of: Retiming for Folding r(u) U ω(e) V r(v) If F (U V) is the folded delays of the edge U V for the retimed graph then F (U V) 0 Nw r (e) P U + v u 0 U ω r (e) V ω r (e) = ω(e) + r(v) - r(u) N(w(e) + r(v) r(u) ) - P U + v u 0 N(r(U) r(v)) Nw(e) - P U + v u r(u) r(v) F (U V) /N receive send r(u) r(v) F (U V) /N (floor since retiming values are integers) Then solve the the system of inequalities!
57 T P SP esign adder adder Folding of retimed Biquad filter, = 1 = 1 In Additions N= S {,2,3,1 } S = { 5,8,6,7} 2 1 = (S 1 3) 1 2 a 3 b 5 6 c d (S 1 1) (S 1 2) (S 1 0) (S 2 0) (S 2 2) 7 8 (S 2 3) (S 2 1) Out Multiplication T P mult mult = = 2 2
58 Folding of retimed Biquad filter, receive F (U V) = Nw(e) - P u + v u F (1 2) = (1) = 1 F (1 5) = (1) = 0 F (1 6) = (1) = 2 F (1 7) = (1) = 3 F (1 8) = (2) = 5 F (3 1) = (0) = 0 F ( 2) = (0) = 0 F (5 3) = (0) = 0 F (6 ) = (1) = 0 F (7 3) = (1) = 1 F (8 ) = (1) = 1 N= In F send (S 1 3) Out 1 a b Valid folding ( U V ) c 0 d (S 1 1) (S 1 2) (S 1 0) (S 2 0) (S 2 2) 7 8 (S 2 3) (S 2 1)
59 Folding of retimed Biquad filter, receive F (U V) = Nw(e) - P u + v u F (1 2) = (1) = 1 F (1 5) = (1) = 0 F (1 6) = (1) = 2 F (1 7) = (1) = 3 F (1 8) = (2) = 5 F (3 1) = (0) = 0 F ( 2) = (0) = 0 F (5 3) = (0) = 0 F (6 ) = (1) = 0 F (7 3) = (1) = 1 F (8 ) = (1) = 1 N= In F send (S 1 3) Out 1 a b Valid folding ( U V ) c 0 d (S 1 1) (S 1 2) (S 1 0) (S 2 0) (S 2 2) 7 8 P adder (S 2 3) (S 2 1) =1
60 Folding of retimed Biquad filter, N= F (U V) = Nw(e) - P u + v u 5 delays S 1 = Additions S 2 = {,2,3,1 } Multiplication F (1 8) = (2) = 5 path from add to mult with 5 Node 8 has folding order 1 switch close at 1 { 5,8,6,7}
61 Folding of retimed Biquad filter S 1 = Additions {,2,3,1 } Multiplication S 2 = F (3 1) = (0) = 0 path from add to add with 0 Node 1 has folding order 3 switch close at 3 Node 1 is also connected to the input { 5,8,6,7}
62 Folding of retimed Biquad filter S 1 = Additions {,2,3,1 } Multiplication S = 2 Execution of node 2 (input from node 1 and ) : F (1 2) = (1) = 1 path from add to add with 1 Node 2 has folding order 1 switch close at 1 { 5,8,6,7} F ( 2) = (0) = 0 path from add to add with 0
63 Folding & Register Minimization Chapter 6.3
64 Register/Storage Minimization Folding inserts register. Lifetime analysis is used for register minimization techniques in a SP hardware. A variable is live from the time it is produced until the time it is consumed. After that it is dead. Linear lifetime chart : Represents the lifetime of the variables in a linear fashion. Convention: a variable is not live during the clock cycle when it is produced but live during the clock cycle when it is consumed. One iteratiom 6 cc N=6
65 Register Minimization Max. number of live variables Min. number of registers Use previous iter. to avoid drawing lifetime chart over several iterations 2 live variables But 3 if several iterations 2 live variables in iteration
66 Register Minimization Max. number of live variables Min. number of registers 6cc 6cc 2 live variables But 3 if several iterations 2 live variables in iteration
67 SP esign Example of a systematic way of working with lifetime charts 3x3 Matrix Transpose i h g f e d c b a i f c h e b g d a Matrix Transposer i h g f e d c b a i f c h e b g d a One iteration = 9 clock cycles
68 Lifetime Table - 3x3 Matrix Transpose i h g f e d c b a Matrix Transposer Sample T in T zlout T diff T out Life a 0 0 b 1 3 c 2 6 d 3 1 e f 5 7 g 6 2 h 7 5 i 8 8 Out before In -2 i f c h e b g d a
69 Lifetime Table - 3x3 Matrix Transpose i h g f e d c b a Matrix Transposer i f c h e b g d a Sample T in T zlout T diff T out Life a b c 2 6 d e 0 f g h i T diff = T zlout T input, where T zlout = zero latency
70 3x3 Matrix Transpose Sample T in T zlout T diff T out Life a b c 2 6 d e 0 f g h i if T diff < 0 not causal add latency = T negative diffmax for all nodes 5
71 3x3 Matrix Transpose Sample T in T zlout T diff T out Life a b c d e f g h i if T diff < 0 not causal add latency T lat = T negative diffmax for all nodes T out = T zlout +T lat
72 Lifetime chart 3x3 Matrix Transpose Sampl e T in T zlout T diff T out Life a b c d e f g h i One iteration = 9 clock cycles cycle a b c d e f g h i #live Contribution from next iteration
73 Lifetime chart 3x3 Matrix Transpose Sampl e T in T zlout T diff T out Life a b c d e f g h i One iteration = 9 clock cycles cycle a b c d e f g h i #live = 3 +1= 2 +2= 1 +3= The total
74 One iteration = 9 clock cycles Lifetime chart cycle a b c d e f g h i #live Contribution from next iteration cycle a b c d e f g h i #live
75 Lifetime chart 3x3 Matrix Transpose Sampl e T in T zlout T diff T out Life a b c d e f g h i max #live = registers x x x x
76 Circular lifetime chart Useful to represent the periodic nature of the SP programs. 0 (N-1) pies Number in parantheses represents the number of live variables at each time instance
DSP Design Lecture 5. Dr. Fredrik Edman.
SP esign SP esign Lecture 5 Retiming r. Fredrik Edman fredrik.edman@eit.lth.se Fredrik Edman, ept. of Electrical and Information Technology, Lund University, Sweden-www.eit.lth.se SP esign Repetition Critical
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 informationL15: Custom and ASIC VLSI Integration
L15: Custom and ASIC VLSI Integration Average Cost of one transistor 10 1 0.1 0.01 0.001 0.0001 0.00001 $ 0.000001 Gordon Moore, Keynote Presentation at ISSCC 2003 0.0000001 '68 '70 '72 '74 '76 '78 '80
More informationPipelining and Parallel Processing
Pipelining and Parallel Processing Pipelining ---reduction in the critical path increase the clock speed, or reduce power consumption at same speed Parallel Processing ---multiple outputs are computed
More informationRetiming. delay elements in a circuit without affecting the input/output characteristics of the circuit.
Chapter Retiming NCU EE -- SP VLSI esign. Chap. Tsung-Han Tsai 1 Retiming & A transformation techniques used to change the locations of delay elements in a circuit without affecting the input/output characteristics
More informationProfessor Fearing EECS150/Problem Set Solution Fall 2013 Due at 10 am, Thu. Oct. 3 (homework box under stairs)
Professor Fearing EECS50/Problem Set Solution Fall 203 Due at 0 am, Thu. Oct. 3 (homework box under stairs). (25 pts) List Processor Timing. The list processor as discussed in lecture is described in RT
More informationNumbering Systems. Computational Platforms. Scaling and Round-off Noise. Special Purpose. here that is dedicated architecture
Computational Platforms Numbering Systems Basic Building Blocks Scaling and Round-off Noise Computational Platforms Viktor Öwall viktor.owall@eit.lth.seowall@eit lth Standard Processors or Special Purpose
More informationHardware Design I Chap. 4 Representative combinational logic
Hardware Design I Chap. 4 Representative combinational logic E-mail: shimada@is.naist.jp Already optimized circuits There are many optimized circuits which are well used You can reduce your design workload
More informationNCU EE -- DSP VLSI Design. Tsung-Han Tsai 1
NCU EE -- DSP VLSI Design. Tsung-Han Tsai 1 Multi-processor vs. Multi-computer architecture µp vs. DSP RISC vs. DSP RISC Reduced-instruction-set Register-to-register operation Higher throughput by using
More informationCOVER SHEET: Problem#: Points
EEL 4712 Midterm 3 Spring 2017 VERSION 1 Name: UFID: Sign here to give permission for your test to be returned in class, where others might see your score: IMPORTANT: Please be neat and write (or draw)
More informationReview: Designing with FSM. EECS Components and Design Techniques for Digital Systems. Lec 09 Counters Outline.
Review: esigning with FSM EECS 150 - Components and esign Techniques for igital Systems Lec 09 Counters 9-28-0 avid Culler Electrical Engineering and Computer Sciences University of California, Berkeley
More informationUNIT V FINITE WORD LENGTH EFFECTS IN DIGITAL FILTERS PART A 1. Define 1 s complement form? In 1,s complement form the positive number is represented as in the sign magnitude form. To obtain the negative
More informationParallel Multipliers. Dr. Shoab Khan
Parallel Multipliers Dr. Shoab Khan String Property 7=111=8-1=1001 31= 1 1 1 1 1 =32-1 Or 1 0 0 0 0 1=32-1=31 Replace string of 1s in multiplier with In a string when ever we have the least significant
More information2D Critical path = 6. Retiming moving delays. Retiming - Pipelining. Delays can be moved from ALL inputs to ALL outputs
SP esgn SP esgn Retmng movng delays Retmng elays can be moved from LL nputs to LL outputs Reduce Crtcal Path faster reduced power consumpton Reduced number of Regster Vktor Öwall, ept. of Electrcal and
More informationChapter 8. Low-Power VLSI Design Methodology
VLSI Design hapter 8 Low-Power VLSI Design Methodology Jin-Fu Li hapter 8 Low-Power VLSI Design Methodology Introduction Low-Power Gate-Level Design Low-Power Architecture-Level Design Algorithmic-Level
More informationEECS150 - Digital Design Lecture 11 - Shifters & Counters. Register Summary
EECS50 - Digital Design Lecture - Shifters & Counters February 24, 2003 John Wawrzynek Spring 2005 EECS50 - Lec-counters Page Register Summary All registers (this semester) based on Flip-flops: q 3 q 2
More informationAdders allow computers to add numbers 2-bit ripple-carry adder
Lecture 12 Logistics HW was due yesterday HW5 was out yesterday (due next Wednesday) Feedback: thank you! Things to work on: ig picture, ook chapters, Exam comments Last lecture dders Today Clarification
More informationFundamentals of Digital Design
Fundamentals of Digital Design Digital Radiation Measurement and Spectroscopy NE/RHP 537 1 Binary Number System The binary numeral system, or base-2 number system, is a numeral system that represents numeric
More informationEnrico Nardelli Logic Circuits and Computer Architecture
Enrico Nardelli Logic Circuits and Computer Architecture Appendix B The design of VS0: a very simple CPU Rev. 1.4 (2009-10) by Enrico Nardelli B - 1 Instruction set Just 4 instructions LOAD M - Copy into
More informationChaper 4: Retiming (Tái định thì) GV: Hoàng Trang
ĐẠI HỌC QUỐC GIA TP.HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA ĐIỆN-ĐIỆN TỬ BỘ MÔN KỸ THUẬT ĐIỆN TỬ XỬ LÝ TÍN HiỆU SỐ VỚI FPGA Chaper 4: Retiming (Tái định thì) GV: Hoàng Trang Email: hoangtrang@hcmut.edu.vn
More informationIntroduction EE 224: INTRODUCTION TO DIGITAL CIRCUITS & COMPUTER DESIGN. Lecture 6: Sequential Logic 3 Registers & Counters 5/9/2010
EE 224: INTROUCTION TO IGITAL CIRCUITS & COMPUTER ESIGN Lecture 6: Sequential Logic 3 Registers & Counters 05/10/2010 Avinash Kodi, kodi@ohio.edu Introduction 2 A Flip-Flop stores one bit of information
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 informationChapter 5. Digital Design and Computer Architecture, 2 nd Edition. David Money Harris and Sarah L. Harris. Chapter 5 <1>
Chapter 5 Digital Design and Computer Architecture, 2 nd Edition David Money Harris and Sarah L. Harris Chapter 5 Chapter 5 :: Topics Introduction Arithmetic Circuits umber Systems Sequential Building
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 informationDigital Integrated Circuits A Design Perspective. Arithmetic Circuits. Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolic.
Digital Integrated Circuits A Design Perspective Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolic Arithmetic Circuits January, 2003 1 A Generic Digital Processor MEMORY INPUT-OUTPUT CONTROL DATAPATH
More informationMark Redekopp, All rights reserved. Lecture 1 Slides. Intro Number Systems Logic Functions
Lecture Slides Intro Number Systems Logic Functions EE 0 in Context EE 0 EE 20L Logic Design Fundamentals Logic Design, CAD Tools, Lab tools, Project EE 357 EE 457 Computer Architecture Using the logic
More informationDigital Integrated Circuits A Design Perspective. Arithmetic Circuits. Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolic.
Digital Integrated Circuits A Design Perspective Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolic Arithmetic Circuits January, 2003 1 A Generic Digital Processor MEM ORY INPUT-OUTPUT CONTROL DATAPATH
More informationELEC Digital Logic Circuits Fall 2014 Sequential Circuits (Chapter 6) Finite State Machines (Ch. 7-10)
ELEC 2200-002 Digital Logic Circuits Fall 2014 Sequential Circuits (Chapter 6) Finite State Machines (Ch. 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of Electrical and Computer Engineering
More informationEE141- Spring 2007 Digital Integrated Circuits
EE141- Spring 27 igital Integrated Circuits Lecture 19 Sequential Circuits 1 Administrative Stuff Project Ph. 2 due Tu. 5pm 24 Cory box + email ee141- project@bwrc.eecs.berkeley.edu Hw 8 Posts this Fr.,
More informationDSP Design Lecture 2. Fredrik Edman.
DSP Design Lecture Number representation, scaling, quantization and round-off Noise Fredrik Edman fredrik.edman@eit.lth.se Representation of Numbers Numbers is a way to use symbols to describe and model
More informationPerformance, Power & Energy. ELEC8106/ELEC6102 Spring 2010 Hayden Kwok-Hay So
Performance, Power & Energy ELEC8106/ELEC6102 Spring 2010 Hayden Kwok-Hay So Recall: Goal of this class Performance Reconfiguration Power/ Energy H. So, Sp10 Lecture 3 - ELEC8106/6102 2 PERFORMANCE EVALUATION
More informationAdders, subtractors comparators, multipliers and other ALU elements
CSE4: Components and Design Techniques for Digital Systems Adders, subtractors comparators, multipliers and other ALU elements Instructor: Mohsen Imani UC San Diego Slides from: Prof.Tajana Simunic Rosing
More informationPipelining and Parallel Processing
Pipelining and Parallel Processing ( 范倫達 ), Ph. D. Department of Computer Science National Chiao Tung University Taiwan, R.O.C. Fall, 010 ldvan@cs.nctu.edu.tw http://www.cs.nctu.edu.tw/~ldvan/ Outlines
More informationDigital Logic: Boolean Algebra and Gates. Textbook Chapter 3
Digital Logic: Boolean Algebra and Gates Textbook Chapter 3 Basic Logic Gates XOR CMPE12 Summer 2009 02-2 Truth Table The most basic representation of a logic function Lists the output for all possible
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 informationDiscrete-Time Systems
FIR Filters With this chapter we turn to systems as opposed to signals. The systems discussed in this chapter are finite impulse response (FIR) digital filters. The term digital filter arises because these
More informationDesign of Sequential Circuits
Design of Sequential Circuits Seven Steps: Construct a state diagram (showing contents of flip flop and inputs with next state) Assign letter variables to each flip flop and each input and output variable
More informationCSE 140 Lecture 11 Standard Combinational Modules. CK Cheng and Diba Mirza CSE Dept. UC San Diego
CSE 4 Lecture Standard Combinational Modules CK Cheng and Diba Mirza CSE Dept. UC San Diego Part III - Standard Combinational Modules (Harris: 2.8, 5) Signal Transport Decoder: Decode address Encoder:
More informationDesign at the Register Transfer Level
Week-7 Design at the Register Transfer Level Algorithmic State Machines Algorithmic State Machine (ASM) q Our design methodologies do not scale well to real-world problems. q 232 - Logic Design / Algorithmic
More informationAnalysis and Synthesis of Weighted-Sum Functions
Analysis and Synthesis of Weighted-Sum Functions Tsutomu Sasao Department of Computer Science and Electronics, Kyushu Institute of Technology, Iizuka 820-8502, Japan April 28, 2005 Abstract A weighted-sum
More informationEECS150 - Digital Design Lecture 25 Shifters and Counters. Recap
EECS150 - Digital Design Lecture 25 Shifters and Counters Nov. 21, 2013 Prof. Ronald Fearing Electrical Engineering and Computer Sciences University of California, Berkeley (slides courtesy of Prof. John
More informationLoop Scheduling and Software Pipelining \course\cpeg421-08s\topic-7.ppt 1
Loop Scheduling and Software Pipelining 2008-04-24 \course\cpeg421-08s\topic-7.ppt 1 Reading List Slides: Topic 7 and 7a Other papers as assigned in class or homework: 2008-04-24 \course\cpeg421-08s\topic-7.ppt
More informationEECS150 - Digital Design Lecture 24 - Arithmetic Blocks, Part 2 + Shifters
EECS150 - Digital Design Lecture 24 - Arithmetic Blocks, Part 2 + Shifters April 15, 2010 John Wawrzynek 1 Multiplication a 3 a 2 a 1 a 0 Multiplicand b 3 b 2 b 1 b 0 Multiplier X a 3 b 0 a 2 b 0 a 1 b
More informationLogic Design II (17.342) Spring Lecture Outline
Logic Design II (17.342) Spring 2012 Lecture Outline Class # 10 April 12, 2012 Dohn Bowden 1 Today s Lecture First half of the class Circuits for Arithmetic Operations Chapter 18 Should finish at least
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 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 informationEECS Components and Design Techniques for Digital Systems. FSMs 9/11/2007
EECS 150 - Components and Design Techniques for Digital Systems FSMs 9/11/2007 Sarah Bird Electrical Engineering and Computer Sciences University of California, Berkeley Slides borrowed from David Culler
More informationEE241 - Spring 2000 Advanced Digital Integrated Circuits. References
EE241 - Spring 2000 Advanced Digital Integrated Circuits Lecture 26 Memory References Rabaey, Digital Integrated Circuits Memory Design and Evolution, VLSI Circuits Short Course, 1998.» Gillingham, Evolution
More informationELEN Electronique numérique
ELEN0040 - Electronique numérique Patricia ROUSSEAUX Année académique 2014-2015 CHAPITRE 3 Combinational Logic Circuits ELEN0040 3-4 1 Combinational Functional Blocks 1.1 Rudimentary Functions 1.2 Functions
More information9. Datapath Design. Jacob Abraham. Department of Electrical and Computer Engineering The University of Texas at Austin VLSI Design Fall 2017
9. Datapath Design Jacob Abraham Department of Electrical and Computer Engineering The University of Texas at Austin VLSI Design Fall 2017 October 2, 2017 ECE Department, University of Texas at Austin
More informationCS 140 Lecture 14 Standard Combinational Modules
CS 14 Lecture 14 Standard Combinational Modules Professor CK Cheng CSE Dept. UC San Diego Some slides from Harris and Harris 1 Part III. Standard Modules A. Interconnect B. Operators. Adders Multiplier
More informationEECS 579: Logic and Fault Simulation. Simulation
EECS 579: Logic and Fault Simulation Simulation: Use of computer software models to verify correctness Fault Simulation: Use of simulation for fault analysis and ATPG Circuit description Input data for
More informationCombinational Logic Design Arithmetic Functions and Circuits
Combinational Logic Design Arithmetic Functions and Circuits Overview Binary Addition Half Adder Full Adder Ripple Carry Adder Carry Look-ahead Adder Binary Subtraction Binary Subtractor Binary Adder-Subtractor
More informationLogic and Computer Design Fundamentals. Chapter 8 Sequencing and Control
Logic and Computer Design Fundamentals Chapter 8 Sequencing and Control Datapath and Control Datapath - performs data transfer and processing operations Control Unit - Determines enabling and sequencing
More informationImplementation Of Digital Fir Filter Using Improved Table Look Up Scheme For Residue Number System
Implementation Of Digital Fir Filter Using Improved Table Look Up Scheme For Residue Number System G.Suresh, G.Indira Devi, P.Pavankumar Abstract The use of the improved table look up Residue Number System
More informationSerial Parallel Multiplier Design in Quantum-dot Cellular Automata
Serial Parallel Multiplier Design in Quantum-dot Cellular Automata Heumpil Cho and Earl E. Swartzlander, Jr. Application Specific Processor Group Department of Electrical and Computer Engineering The University
More informationSuccessive Approximation ADCs
Department of Electrical and Computer Engineering Successive Approximation ADCs Vishal Saxena Vishal Saxena -1- Successive Approximation ADC Vishal Saxena -2- Data Converter Architectures Resolution [Bits]
More informationReduced-Area Constant-Coefficient and Multiple-Constant Multipliers for Xilinx FPGAs with 6-Input LUTs
Article Reduced-Area Constant-Coefficient and Multiple-Constant Multipliers for Xilinx FPGAs with 6-Input LUTs E. George Walters III Department of Electrical and Computer Engineering, Penn State Erie,
More informationEECS150 - Digital Design Lecture 16 Counters. Announcements
EECS150 - Digital Design Lecture 16 Counters October 20, 2011 Elad Alon Electrical Engineering and Computer Sciences University of California, Berkeley http://www-inst.eecs.berkeley.edu/~cs150 Fall 2011
More informationA HIGH-SPEED PROCESSOR FOR RECTANGULAR-TO-POLAR CONVERSION WITH APPLICATIONS IN DIGITAL COMMUNICATIONS *
Copyright IEEE 999: Published in the Proceedings of Globecom 999, Rio de Janeiro, Dec 5-9, 999 A HIGH-SPEED PROCESSOR FOR RECTAGULAR-TO-POLAR COVERSIO WITH APPLICATIOS I DIGITAL COMMUICATIOS * Dengwei
More informationLogic BIST. Sungho Kang Yonsei University
Logic BIST Sungho Kang Yonsei University Outline Introduction Basics Issues Weighted Random Pattern Generation BIST Architectures Deterministic BIST Conclusion 2 Built In Self Test Test/ Normal Input Pattern
More informationCMP N 301 Computer Architecture. Appendix C
CMP N 301 Computer Architecture Appendix C Outline Introduction Pipelining Hazards Pipelining Implementation Exception Handling Advanced Issues (Dynamic Scheduling, Out of order Issue, Superscalar, etc)
More informationSchool of EECS Seoul National University
4!4 07$ 8902808 3 School of EECS Seoul National University Introduction Low power design 3974/:.9 43 Increasing demand on performance and integrity of VLSI circuits Popularity of portable devices Low power
More informationCPS 104 Computer Organization and Programming Lecture 11: Gates, Buses, Latches. Robert Wagner
CPS 4 Computer Organization and Programming Lecture : Gates, Buses, Latches. Robert Wagner CPS4 GBL. RW Fall 2 Overview of Today s Lecture: The MIPS ALU Shifter The Tristate driver Bus Interconnections
More informationCSE 140 Spring 2017: Final Solutions (Total 50 Points)
CSE 140 Spring 2017: Final Solutions (Total 50 Points) 1. (Boolean Algebra) Prove the following Boolean theorem using Boolean laws only, i.e. no theorem is allowed for the proof. State the name of the
More informationState and Finite State Machines
State and Finite State Machines See P&H Appendix C.7. C.8, C.10, C.11 Hakim Weatherspoon CS 3410, Spring 2013 Computer Science Cornell University Big Picture: Building a Processor memory inst register
More informationDatapath Component Tradeoffs
Datapath Component Tradeoffs Faster Adders Previously we studied the ripple-carry adder. This design isn t feasible for larger adders due to the ripple delay. ʽ There are several methods that we could
More informationDigital Integrated Circuits A Design Perspective
igital Integrated Circuits A esign Perspective Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolic esigning Sequential Logic Circuits November 2002 Naming Conventions In our text: a latch is level sensitive
More informationChapter 5. Digital systems. 5.1 Boolean algebra Negation, conjunction and disjunction
Chapter 5 igital systems digital system is any machine that processes information encoded in the form of digits. Modern digital systems use binary digits, encoded as voltage levels. Two voltage levels,
More informationPerformance, Power & Energy
Recall: Goal of this class Performance, Power & Energy ELE8106/ELE6102 Performance Reconfiguration Power/ Energy Spring 2010 Hayden Kwok-Hay So H. So, Sp10 Lecture 3 - ELE8106/6102 2 What is good performance?
More informationCMPEN 411 VLSI Digital Circuits Spring Lecture 21: Shifters, Decoders, Muxes
CMPEN 411 VLSI Digital Circuits Spring 2011 Lecture 21: Shifters, Decoders, Muxes [Adapted from Rabaey s Digital Integrated Circuits, Second Edition, 2003 J. Rabaey, A. Chandrakasan, B. Nikolic] Sp11 CMPEN
More informationChapter 7. Synchronous Sequential Networks. Excitation for
Chapter 7 Excitation for Synchronous Sequential Networks J. C. Huang, 2004 igital Logic esign 1 Structure of a clocked synchronous sequential network Mealy model of a clocked synchronous sequential network
More informationECE 545 Digital System Design with VHDL Lecture 1. Digital Logic Refresher Part A Combinational Logic Building Blocks
ECE 545 Digital System Design with VHDL Lecture Digital Logic Refresher Part A Combinational Logic Building Blocks Lecture Roadmap Combinational Logic Basic Logic Review Basic Gates De Morgan s Law Combinational
More informationChapter 1: Solutions to Exercises
1 DIGITAL ARITHMETIC Miloš D. Ercegovac and Tomás Lang Morgan Kaufmann Publishers, an imprint of Elsevier, c 2004 Exercise 1.1 (a) 1. 9 bits since 2 8 297 2 9 2. 3 radix-8 digits since 8 2 297 8 3 3. 3
More informationICS 233 Computer Architecture & Assembly Language
ICS 233 Computer Architecture & Assembly Language Assignment 6 Solution 1. Identify all of the RAW data dependencies in the following code. Which dependencies are data hazards that will be resolved by
More informationProcessor Design & ALU Design
3/8/2 Processor Design A. Sahu CSE, IIT Guwahati Please be updated with http://jatinga.iitg.ernet.in/~asahu/c22/ Outline Components of CPU Register, Multiplexor, Decoder, / Adder, substractor, Varity of
More informationLecture 11 FIR Filters
Lecture 11 FIR Filters Fundamentals of Digital Signal Processing Spring, 2012 Wei-Ta Chu 2012/4/12 1 The Unit Impulse Sequence Any sequence can be represented in this way. The equation is true if k ranges
More informationSignal Flow Graphs. Roger Woods Programmable Systems Lab ECIT, Queen s University Belfast
Signal Flow Graphs Roger Woods r.woods@qub.ac.uk Programmable Systems Lab ECIT, Queen s University Belfast (Slides 2-13 taken from Signal Flow Graphs and Data Flow Graphs chapter by Keshab K. Parhi and
More informationIMPERIAL COLLEGE OF SCIENCE, TECHNOLOGY AND MEDICINE UNIVERSITY OF LONDON DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING EXAMINATIONS 2005
Paper Number(s): E2. IMPERIL OLLEGE OF SIENE, TEHNOLOGY ND MEDIINE UNIVERSITY OF LONDON DEPRTMENT OF ELETRIL ND ELETRONI ENGINEERING EXMINTIONS 2005 EEE/ISE PRT II: MEng, BEng and GI DIGITL ELETRONIS 2
More informationTunable Floating-Point for Energy Efficient Accelerators
Tunable Floating-Point for Energy Efficient Accelerators Alberto Nannarelli DTU Compute, Technical University of Denmark 25 th IEEE Symposium on Computer Arithmetic A. Nannarelli (DTU Compute) Tunable
More informationCORDIC, Divider, Square Root
4// EE6B: VLSI Signal Processing CORDIC, Divider, Square Root Prof. Dejan Marković ee6b@gmail.com Iterative algorithms CORDIC Division Square root Lecture Overview Topics covered include Algorithms and
More informationDigital Integrated Circuits A Design Perspective
igital Integrated Circuits A esign Perspective Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolic esigning Sequential Logic Circuits November 2002 Sequential Logic Inputs Current State COMBINATIONAL LOGIC
More informationEEE2135 Digital Logic Design
EEE2135 Digital Logic Design Chapter 7. Sequential Circuits Design 서강대학교 전자공학과 1. Model of Sequential Circuits 1) Sequential vs. Combinational Circuits a. Sequential circuits: Outputs depend on both the
More informationCMP 334: Seventh Class
CMP 334: Seventh Class Performance HW 5 solution Averages and weighted averages (review) Amdahl's law Ripple-carry adder circuits Binary addition Half-adder circuits Full-adder circuits Subtraction, negative
More informationIntegrated Circuits & Systems
Federal University of Santa Catarina Center for Technology Computer Science & Electronics Engineering Integrated Circuits & Systems INE 5442 Lecture 18 CMOS Sequential Circuits - 1 guntzel@inf.ufsc.br
More informationJan M. Rabaey Anantha Chandrakasan Borivoje Nikolic. November Digital Integrated Circuits 2nd Sequential Circuits
igital Integrated Circuits A esign Perspective Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolic esigning i Sequential Logic Circuits November 2002 Sequential Logic Inputs Current State COMBINATIONAL
More informationChapter 7. Sequential Circuits Registers, Counters, RAM
Chapter 7. Sequential Circuits Registers, Counters, RAM Register - a group of binary storage elements suitable for holding binary info A group of FFs constitutes a register Commonly used as temporary storage
More informationDigital Logic. CS211 Computer Architecture. l Topics. l Transistors (Design & Types) l Logic Gates. l Combinational Circuits.
CS211 Computer Architecture Digital Logic l Topics l Transistors (Design & Types) l Logic Gates l Combinational Circuits l K-Maps Figures & Tables borrowed from:! http://www.allaboutcircuits.com/vol_4/index.html!
More informationCPE100: Digital Logic Design I
Professor Brendan Morris, SEB 3216, brendan.morris@unlv.edu CPE100: Digital Logic Design I Final Review http://www.ee.unlv.edu/~b1morris/cpe100/ 2 Logistics Tuesday Dec 12 th 13:00-15:00 (1-3pm) 2 hour
More information課程名稱 : 數位邏輯設計 P-1/ /6/11
課程名稱 : 數位邏輯設計 P-1/55 2012/6/11 Textbook: Digital Design, 4 th. Edition M. Morris Mano and Michael D. Ciletti Prentice-Hall, Inc. 教師 : 蘇慶龍 INSTRUCTOR : CHING-LUNG SU E-mail: kevinsu@yuntech.edu.tw Chapter
More informationEECS150 - Digital Design Lecture 22 - Arithmetic Blocks, Part 1
EECS150 - igital esign Lecture 22 - Arithmetic Blocks, Part 1 April 10, 2011 John Wawrzynek Spring 2011 EECS150 - Lec23-arith1 Page 1 Each cell: r i = a i XOR b i XOR c in Carry-ripple Adder Revisited
More informationEECS150 - Digital Design Lecture 23 - FSMs & Counters
EECS150 - Digital Design Lecture 23 - FSMs & Counters April 8, 2010 John Wawrzynek Spring 2010 EECS150 - Lec22-counters Page 1 One-hot encoding of states. One FF per state. State Encoding Why one-hot encoding?
More informationCprE 281: Digital Logic
CprE 281: Digital Logic Instructor: Alexander Stoytchev http://www.ece.iastate.edu/~alexs/classes/ Multiplication CprE 281: Digital Logic Iowa State University, Ames, IA Copyright Alexander Stoytchev HW
More informationA VLSI DSP DESIGN AND IMPLEMENTATION O F ALL POLE LATTICE FILTER USING RETIMING METHODOLOGY
A VLSI DSP DESIGN AND IMPLEMENTATION O F ALL POLE LATTICE FILTER USING RETIMING METHODOLOGY 1 PURU GUPTA & 2 TARUN KUMAR RAWAT Dept. of Electronics and Communication Engineering, Netaji Subhas Institute
More informationCprE 281: Digital Logic
CprE 28: Digital Logic Instructor: Alexander Stoytchev http://www.ece.iastate.edu/~alexs/classes/ Simple Processor CprE 28: Digital Logic Iowa State University, Ames, IA Copyright Alexander Stoytchev Digital
More informationReview: Designing with FSM. EECS Components and Design Techniques for Digital Systems. Lec09 Counters Outline.
Review: Designing with FSM EECS 150 - Components and Design Techniques for Digital Systems Lec09 Counters 9-28-04 David Culler Electrical Engineering and Computer Sciences University of California, Berkeley
More informationCost/Performance Tradeoffs:
Cost/Performance Tradeoffs: a case study Digital Systems Architecture I. L10 - Multipliers 1 Binary Multiplication x a b n bits n bits EASY PROBLEM: design combinational circuit to multiply tiny (1-, 2-,
More informationLecture 7: Logic design. Combinational logic circuits
/24/28 Lecture 7: Logic design Binary digital circuits: Two voltage levels: and (ground and supply voltage) Built from transistors used as on/off switches Analog circuits not very suitable for generic
More informationExample: vending machine
Example: vending machine Release item after 15 cents are deposited Single coin slot for dimes, nickels o change Reset Coin Sensor Vending Machine FSM Open Release Mechanism Clock Spring 2005 CSE370 - guest
More informationAdders, subtractors comparators, multipliers and other ALU elements
CSE4: Components and Design Techniques for Digital Systems Adders, subtractors comparators, multipliers and other ALU elements Adders 2 Circuit Delay Transistors have instrinsic resistance and capacitance
More information