View
215
Download
0
Tags:
Embed Size (px)
Citation preview
1ESPL
Wordlength Optimization withComplexity-and-Distortion Measure andIts Application to Broadband Wireless
Demodulator Design
Kyungtae Han and Brian L. Evans
Embedded Signal Processing LaboratoryWireless Networking and Communications Group
The University of Texas at Austin
2ESPL
Fixed-Point Design
• Digital signal processing algorithms– Often developed in floating point
– Later mapped into fixed point for digital hardware realization
• Fixed-point digital hardware– Lower area
– Lower power
– Lower per unit production cost
Idea
Floating-Point Algorithm
Quantization
Fixed-Point Algorithm
Code Generation
Target System
Algorithm
Level
Implem
entationL
evel
Range Estimation
Introduction
3ESPL
Fixed-Point Design
• Float-to-fixed point conversion required to target– ASIC and fixed-point digital signal processor core
– FPGA and fixed-point microprocessor core
• All variables have to be annotated manually– Avoid overflow
– Minimize quantization effects
– Find optimum wordlength
• Manual process supported by simulation– Time-consuming
– Error prone
Introduction
4ESPL
Optimum Wordlength
• Longer wordlength– May improve application
performance– Increases hardware cost
• Shorter wordlength– May increase quantization errors
and overflows– Reduces hardware cost
• Optimum wordlength– Maximize application performance
or minimize quantization error– Minimize hardware cost
Wordlength (w)
Cost c(w)Distortion d(w)[1/performance]
Optimumwordlength
Background
5ESPL
Wordlength Optimization
• Express wordlengths in digital system as vector
• Wordlength range for kth wordlength
• Cost function c
),,,,( 210 nwwww w
nkwww kkk ,...,1
RI nc :
n
kkk
n wcc1
)()(, wIw
Background
6ESPL
Wordlength Optimization
• Application performance function p
• Wordlength optimization problem
• Iterative update equation
• Good choice of update direction can reduce number of iterations to find optimum wordlength
reqPp )(w
},)(|)({min wwPpc reqI n
wwww
)()()1( hhh ww
Background
7ESPL
Sequential Search [K. Han et al. 2001]
• Greedy search based on sensitivity information (gradient)
• Example– Minimum wordlengths {2,2}
– Direction of sequential search
– Optimum wordlengths {5,5}
– 12 iterations
• Advantage: Fewer trials• Disadvantage: Could miss global optimum point
jjj sww
1
wopt
wb
w1
w2
dw1
dw2
5
5
Search Methods
8ESPL
Measures for Optimum Wordlength
• Complexity measure method [W.Sung and K.Kum 1995]
– Minimize complexity c(w) subject to constraint on distortion d(w)
– Update direction uses complexity sensitivity information• Distortion measure [K. Han et al. 2001]
– Minimize distortion d(w) subject to constraint on complexity c(w)
– Update direction uses distortion sensitivity information
?w0w1
wn
…
Complexity
w
wc
)( ?
w0w1
wn
…
Distortion
w
wd
)(
Measures
9ESPL
• Combine complexity measure with distortion measure by weighting factor (0≤α≤1)
• Tradeoffs between measuresby changing weighting factor
• Update direction uses both sources of sensitivity information
Complexity-and-Distortion Measure
)()1()()( www dcf
)]()1()([ ww dc
},)(,)(|)({min wwCcDdf reqI n
wwwww
Update direction
Objective function
Optimization problem
?w0w1
wn…
α
Complexity
Distortion
Measures
10ESPL
Broadband Wireless Access(IEEE 802.16a) Demodulator
w0: Input wordlength of orthogonal frequency division multiplex (OFDM) demodulator which performs a fast Fourier transform (FFT)w1: Input wordlength of equalizerw2: Input wordlength of channel estimatorw3: Output wordlength of channel estimator
EncoderOFDM
Modulator
WirelessChannelModel
OFDMDemodulator
ChannelEstimator
DecoderBit error
ratetester
DataSource
ChannelEqualizer
w0w1
w2w3
Case Study
11ESPL
Simulations
• Assumptions– Internal wordlengths of blocks have bee
n decided
– Complexity increases linearly as wordlength increases
• Required application performance– Bit error rate of 1.5 x 10-3 (without error
correcting codes)
• Simulation tool– LabVIEW 7.0
Case Study
Input Weight
FFT 1024
Equalizer
(right)
1
Estimator 128
Equalizer (upper)
2
12ESPL
Minimum Wordlengths
• Change one wordlength variable while keeping other variables at high precision{1,16,16,16},{2,16,16,16},...{16,1,16,16},{16,2,16,16},...……{16,16,16,15},{16,16,16,16}
• Minimum wordlength vector is {5,4,4,4}
Case Study
13ESPL
Number of Trials
• Start at {5,4,4,4} wordlength• Next wordlength combinatio
n for complexity measure (α = 1.0)
{5,4,4,4},
{5,5,4,4}, …
• Increase wordlength one-by-one until satisfying required application performance
Case Study
14ESPL
Complexity and Number of Iterations
• Each iteration computes complexity & distortion measures
• Distortion measure: high cost, low iterations
• Complexity-distortion: medium cost, fewer iterations
• Complexity measure: low cost, more iterations• Full search: low cost, more iterations
Method α w Complexity Iterations
Distortion Only
Complexity-Distortion
Complexity Only
Full Search
0
0.5
1
n/a
{10,9,4,10}
{7,10,4,6}
{7,7,4,6}
{7,7,4,6}
10781
7702
7699
7699
16
15
69
210
Case Study
15ESPL
Conclusion
• Summary– Fixed-point conversion requires wordlength optimization
– Develop complexity-and-distortion measure
– Complexity-and-distortion method finds optimal solution in one-third the time that full search takes for case study
• Future extensions for wordlength optimization– Automate selection of wordlength range
– Combine simulation-based and analytical approaches
– Employ genetic algorithms
16ESPL
Fixed-Point Representation
• Fixed point type– Wordlength
– Integer wordlength
• Quantization modes– Round
– Truncation
• Overflow modes– Saturation
– Saturation to zero
– Wrap-around
S X X X X X
Wordlength
Integer wordlength
SystemC formatwww.systemc.org
Introduction
X X X X X
Wordlength
Integer wordlength = 2Back
17ESPL
Full Search [W. Sung and K. Kum 1995]
• Exhaustive search of all possible wordlengths
• Advantages– Does not miss optimum points – Simple algorithm
• Disadvantage– Many trials (=experiments)
• Distance• Expected number of iterations
wb
wopt
w1
w2
dw1
dw2
21
24
22
23
5
5
Direction of full search:minimum wordlengths {2,2}
optimum wordlengths = {5,5}d = 6
trials = 24!
)1)(2)...(1()(
N
dddNddE N
FS
Ndwdwdwd ...21
Search Methods
Back
18ESPL
FFT Cost
1024
256log2
256Cost 2FFT
• N Tap FFT cost
• 256 Tap FFT cost
NN
2FFT log2
Cost
Back
19ESPL
• Uses complexity sensitivity information as direction to search for optimum wordlength
• Advantage: minimizes complexity• Disadvantage: demands large number of iterations
Complexity Measure [W.Sung and K.Kum 1995]
)()( ww cf
)(wc
},)(|)({min max wwDdfnI
wwww
Update direction
Objective function
Optimization problem
Measures
Back
20ESPL
• Applies the application performance information to search for the optimum wordlengths
• Advantage: Fewer number of iterations• Disadvantage: Not guaranteed to yield optimum
wordlength for complexity
Distortion Measure [K. Han et al. 2001]
)()( ww df
)(wd
},)(,)(|)({min maxmax wwCcDdfnI
wwwww
Update direction
Objective function
Optimization problem
Measures
Back
23ESPL
Tools for Fixed-Point Simulation
• gFix (Seoul National University) – Using C++, operator overloading
• Simulink (Mathworks)– Fixed-point block set 4.0
• SPW (Cadence)– Hardware design system
• CoCentric (Synopsys)– Fixed-point designer
gFix a(12,1);gFix b(12,1);gFix c(13,2);c = a + b;
float a;float b;float c;c = a + b;
Introduction
Wordlengths determined manuallyWordlength optimization tool needed
24ESPL
Wordlength Optimization Methods
• Analytical approach– Quantization error model
– Overestimates signal wordlength
– For feedback systems, instability and limit cycles can occur
– Difficult to develop analytical quantization error model of adaptive or non-linear systems
• Simulation-based approach– Wordlengths chosen while observing error criteria
– Repeated until wordlengths converge
– Long simulation time
Background
25ESPL
Optimum Wordlength Search Methods
• Full search [W. Sung and K. Kum 1995]
• Min + b bit search [W. Sung and K. Kum 1995]
• Max – b bit search [M. Cantin et al. 2002]
• Hybrid search [M. Cantin et al. 2002]
• Sequential search [K. Han et al. 2001]
• Preplanned search [K. Han et al. 2001]
• Branch and bound search [H. Choi and W.P.Burleson 1994]
• Simulated annealing search [P.D. Fiore and L. Lee 1999]
Search Methods