Upload
doankien
View
222
Download
1
Embed Size (px)
Citation preview
VLSI Digital Signal Processing Systems
Iteration Bound
Lan-Da Van (), Ph. D.Department of Computer ScienceNational Chiao Tung University
Taiwan, R.O.C.Spring, 2007
http://www.cs.nctu.tw/~ldvan/
VLSI Digital Signal Processing Systems
Lan-Da Van VLSI-DSP-2-2
Outline
IntroductionData Flow Graph (DFG) RepresentationsLoop Bound and Iteration BoundCompute the Iteration Bound
Longest Path Matrix Algorithm (LPM)Minimum Cycle Mean Method (MCM)
Conclusion
VLSI Digital Signal Processing Systems
Lan-Da Van VLSI-DSP-2-3
Introduction
Iteration bound = maximum loop bound OR maximum non-loop boundClock period = critical path period = cycle time = 1/clock rateSample rate = throughput rateImpossible to achieve an iteration bound less than the theoretical iteration bound with infinite processors
VLSI Digital Signal Processing Systems
Lan-Da Van VLSI-DSP-2-4
Outline
IntroductionData Flow Graph (DFG) RepresentationsLoop Bound and Iteration BoundCompute the Iteration Bound
Longest Path Matrix Algorithm (LPM)Minimum Cycle Mean Method (MCM)
Conclusion
VLSI Digital Signal Processing Systems
Lan-Da Van VLSI-DSP-2-5
DSP Program: Example
)()1()( nxnayny +== 0for ton
kk BA : PeriodIteration-Intra1 : PeriodIteration-Inter + kk AB
Data Flow Graph
VLSI Digital Signal Processing Systems
Lan-Da Van VLSI-DSP-2-6
Loop Bounds in DFG
Critical Path: The path with the longest computation time among all paths that contain zero delaysLoop: Directed path that begins and ends at the same node
Loop Bound=tl/wl, where tl is the loop computation time and wl is the number of delays in the loopCritical Loop: the loops in which has maximum loop bound.Iteration Bound: maximum loop bound / non-loop bound, i.e., a fundamental limit for recursive / non-recursive algorithms
Loop bounds : 4/2 u.t. (max), 5/3 u.t. , 5/4 u.t.
VLSI Digital Signal Processing Systems
Lan-Da Van VLSI-DSP-2-7
Iteration bound
T
}{maxl
l
Ll wtT
=Definition:
(a) Iteration bound= 6/2 = 3 u.t.(b) Iteration bound= Max { 6/2 , 11/1 } = 11 u.t.
VLSI Digital Signal Processing Systems
Lan-Da Van VLSI-DSP-2-8
Outline
IntroductionData Flow Graph (DFG) RepresentationsLoop Bound and Iteration BoundCompute the Iteration Bound
Longest Path Matrix Algorithm (LPM)Minimum Cycle Mean Method (MCM)
Conclusion
VLSI Digital Signal Processing Systems
Lan-Da Van VLSI-DSP-2-9
Longest Path Matrix Algorithm (LPM)
A series of matrix is constructed, and the iteration bound is found by examining the diagonal elements of the matrices.d : # of delaysCompute L1~Lm, m=1, 2, 3, , d
:The longest computation time of all paths from delay element di to delay element dj that pass through exactly m-1 delays, where the delay di and delay dj are not included for m-1 delays.
If no path exists, then the value of l equals -1.
)(,mjil
VLSI Digital Signal Processing Systems
Lan-Da Van VLSI-DSP-2-10
A DFG with Three Loops Using LPM (1/3)
=
1115011510141101
)1(L
VLSI Digital Signal Processing Systems
Lan-Da Van VLSI-DSP-2-11
A DFG with Three Loops Using LPM (2/3)
),1(max )( ,)1(
,)1(
,mjkkiKk
mji lll += +
=
11511155
01451014
)2(L
=
1115011510141101
1115011510141101
)2(L
VLSI Digital Signal Processing Systems
Lan-Da Van VLSI-DSP-2-12
A DFG with Three Loops Using LPM (3/3)
=
151915591458
0145
)3(L
=
519105591045891458
)4(L
}{max)(
,
},...,2,1{, ml
Tmii
dmi =
2}45,
45,
48,
48,
35,
35,
35,
24,
24{max
},...,2,1{,==
dmiT
VLSI Digital Signal Processing Systems
Lan-Da Van VLSI-DSP-2-13
A Filter Using LPM
=
8844)1(L
=
16161212)2(L
8}2
16,2
12,18,
14max{ ==T
VLSI Digital Signal Processing Systems
Lan-Da Van VLSI-DSP-2-14
Minimum Cycle Mean Method (MCM)
1. Construct the new graph Gd (DFG G)transform from DFG decide the weight of each edge
2. Compute the maximum cycle meanconstruct the series of d+1 vectors f(m), m=0, 1, 2, ,d
An arbitrary reference node is chosen in Gd (called this node s). The initial vector f(0) is formed by setting f(0)(s)=0 and setting the remaining nodes of f(0) to infinity.
find the max cycle mean
3. Find the min cycle mean between each cycle
VLSI Digital Signal Processing Systems
Lan-Da Van VLSI-DSP-2-15
A DFG with Three Loops Using MCM (1/5)
delay => nodelongest path length (computation time) =>weight w(i,j)
If no zero-delay path exists from delay di to delay dj, then the edge I -> j does not exist in Gd.
VLSI Digital Signal Processing Systems
Lan-Da Van VLSI-DSP-2-16
A DFG with Three Loops Using MCM (2/5)
Longest path lengthpath which pass through no delayslongest : two loops that contain Da and Db
max { 6,4 } = 6cycle mean = 6/2=3
VLSI Digital Signal Processing Systems
Lan-Da Van VLSI-DSP-2-17
A DFG with Three Loops Using MCM(3/5)
Cycle mean= Average length of the edge in c (Cycle = Loop )
Compute the cycle mean
VLSI Digital Signal Processing Systems
Lan-Da Van VLSI-DSP-2-18
A DFG with Three Loops Using MCM (4/5)
we will find d+1 vectors , f(m) m=0,1,, d
=0
4
)2(f
=
0
45
)3(f
=458
)4(f
=0)1(f
=
0
)0(f
)),()((min)( )1()( jiwifjf mIi
m +=
VLSI Digital Signal Processing Systems
Lan-Da Van VLSI-DSP-2-19
A DFG with Three Loops Using MCM (5/5)
)))()((max(min)()(
}1,...2,1,0{},...,2,1{ mdififT
md
dmdi
=
2},2,1,2min{ ==T
VLSI Digital Signal Processing Systems
Lan-Da Van VLSI-DSP-2-20
A Filter Using MCM
8}6,8min{ ==T
=1212)2(f
=44)1(f
=0)0(f
VLSI Digital Signal Processing Systems
Lan-Da Van VLSI-DSP-2-21
Conclusion
When the DFG is recursive, the iteration bound is the fundamental limit on the minimum sample period of a hardware implementation of the DSP program.
Two algorithms to compute iteration bound, LPM and MCM, were explored.
VLSI Digital Signal Processing Systems
Lan-Da Van VLSI-DSP-2-22
Self-Test Exercises
STE1: For the DFG shown in Fig. 2.12, the computation times of the nodes are shown in parentheses. Compute the iteration bound of this DFG using (a) the LPM algorithm, and (b) the MCM algorithm. (Also see Problem 2.1 of the text book.)STE2: Repeat STE1 for the DFG shown in Fig. 2.15 assuming that addition and multiplication require 1 and 2 u.t., respectively. (Also see Problem 2.4 of the text book.)
Iteration BoundOutlineIntroductionOutlineDSP Program: ExampleLoop Bounds in DFGIteration boundOutlineLongest Path Matrix Algorithm (LPM)ConclusionSelf-Test Exercises