Escolar Documentos
Profissional Documentos
Cultura Documentos
Lecture 2 Unfolding
Transformation
P2 b1 b2 b3 b4 P2 a2 b2 c2 d2
P3 c1 c2 c3 c4 P3 a3 b3 c3 d3
P4 d1 d2 d3 d4 P4 a4 b4 c4 d4
time time
P2 P2
P3 P3
P4 P4
time time
x(3k) y(3k)
Serial to x(3k+1) y(3k+1) Parallel to
x(n) Parallel MIMO Serial y(n)
Converter x(3k+2) y(3k+2) Converter
x(n) D D
3k
D D y(n)
T/3 T/3
sampling period
ADSP Lecture2 - Unfolding (cwliu@twins.ee.nctu.edu.tw) 2-7
General approach for block processing
T=Ts
x ( 2k ) x ( 2k )
x( k ) , y (k )
x(2k 1) x(2k 1)
y (k ) ay (k 1) x(k ) k: processor period
Tsample≠Tclk
ADSP Lecture2 - Unfolding (cwliu@twins.ee.nctu.edu.tw) 2-13
Block IIR Filter
y(2(k1))
D
x(2k)
y(2k)
x(n)
S/P
+ P/S
y(n)
y(2k+1)
x(2k+1) +
clock period not equal to
sampling period y(2(k1)+1)
D
• Pipelining
x(1) x(2) x(3) x(4) x(5) x(6) x(7) x(7)
Add 1 2 3 4 5 6 7 8
y(1) y(2) y(3) y(4) y(5) y(6) y(7) y(7)
a y(1)
Mul 1 2 3 4 5 6 7 8
• Block processing
x(2) x(4) x(6) x(8)
2 2 4 4 6 6 8 8
x(1) x(3) x(5) x(7)
1 1 3 3 5 5
ADSP Lecture2 - Unfolding (cwliu@twins.ee.nctu.edu.tw) 7 7 2-15
Definitions
• Unfolding is the process of unfolding a loop so that
several iterations are unrolled into the same
iteration.
• Also known as (a.k.a.)
– Loop unrolling (in compilers for parallel programs)
– Block processing
• Applications
– Reducing sampling period to achieve iteration bound
(desired throughput rate) T.
– Parallel (block processing) to execute several iterations
concurrently.
– Digit-serial or bit-serial processing
y(2k)=ay(2(k-5)+1)+x(2k)
y(2k+1)=ay(2(k-4))+x(2k+1)
9T
T=Ts 9T
T=2Ts
y(0) y(2) y(4) y(6) y(8) y(10) y(12)
4T
5T
y(1) y(3) y(5) y(7) y(9) y(11) y(13)
0 0 0 0 Q0 T0
S
0 2 0 1
R0
0 3 1 1 Q T
2D 3D
1 0 1 0
S1
R
1 2 1 1
Q1 T1
1 3 0 2
T=3
R1
Step 1. Duplicate J copies of each node
0 0 0 0 Q0 T0
S
0 2 0 1
R0
0 3 1 1 Q T
2D 3D
1 0 1 0
S1
1 2 1 1
R
Q1 T1
1 3 0 2
T=3
R1
Step 2. Add all edges with 0 delay on them.
0 0 0 0 Q0 T0
S D
0 2 0 1
R0
0 3 1 1 Q T
D 2D
2D 3D
1 0 1 0
S1
1 2 1 1
R
Q1 T1
1 3 0 2
T=3 D
Example
D
2D
A B C E
D 7D
3D
5-unfolded DFG
2-unfolded DFG
D0 A0 D B0 C0 E0 D0
D D
D
2D
A0 B0 C0 E0 A1 B1 C1 E1 D1
3D D D D
D 4D
A1 B1 C1 E1 A2 B2 C2 E2 D2
D D D D
D1 A3 B3 C3 2D E3 D3
D
A4 B4 C4 2D E4 D4
T∞=6,
Tcritical=6