Professional Documents
Culture Documents
Chapter 6: Folding: Keshab K. Parhi
Chapter 6: Folding: Keshab K. Parhi
Keshab K. Parhi
Folding is a technique to reduce the silicon area by timemultiplexing many algorithm operations into single functional
units (such as adders and multipliers)
Folding Transformation :
Chap. 6
Chap. 6
Note : Linear lifetime chart uses the convention that the variable is not
live during the clock cycle when it is produced but live during the clock
7
cycle when it is consumed.
Due to the periodic nature of DSP programs the lifetime chart can
be drawn for only one iteration to give an indication of the # of
registers that are needed. This is done as follows :
Let N be the iteration period
Let the # of live variables at time partitions n N be the # of
live variables due to 0-th iteration at cycles n-kN for k 0. In
the example, # of live variables at cycle 7 N (=6) is the sum
of the # of live variables due to the 0-th iteration at cycles 7
and (7 - 16) = 1, which is 2 + 1 = 3.
i|h|g|f|e|d|c|b|a
Chap. 6
Matrix
Transposer
i|f|c|h|e|b|g|d|a
Sample
Tin
Tzlout
Tdiff
Tout
Life
04
17
10
210
-2
35
48
11
511
-4
66
-2
79
12
812
Chap. 6
10
11
For variables that reach the last register and are still alive,
they are allocated in a backward manner on a first come first
serve basis.
12
Chap. 6
13
Chap. 6
14
in
out
49
--
33
11
22
44
56
34
15
Step 5 : Forward-backward
register allocation
Chap. 6
16
Chap. 6
17