260 likes | 371 Views
Wordlength Optimization with Complexity-and-Distortion Measure and Its Application to Broadband Wireless Demodulator Design. Kyungtae Han and Brian L. Evans Embedded Signal Processing Laboratory Wireless Networking and Communications Group The University of Texas at Austin. Introduction.
E N D
Wordlength Optimization withComplexity-and-Distortion Measure andIts Application to Broadband Wireless Demodulator Design Kyungtae Han and Brian L. Evans Embedded Signal Processing Laboratory Wireless Networking and Communications Group The University of Texas at Austin
Introduction 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
Introduction 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
Background Optimum Wordlength Optimum wordlength • Longer wordlength • May improve applicationperformance • Increases hardware cost • Shorter wordlength • May increase quantization errorsand overflows • Reduces hardware cost • Optimum wordlength • Maximize application performanceor minimize quantization error • Minimize hardware cost Distortion d(w) [1/performance] Cost c(w) Wordlength (w)
Background Wordlength Optimization • Express wordlengths in digital system as vector • Wordlength range for kth wordlength • Cost function c
Background 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
Search Methods 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
w0 ? w1 Complexity w0 … ? w1 Distortion wn … wn Measures 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
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 w0 w1 ? Complexity … Distortion wn α Measures Complexity-and-Distortion Measure Objective function Optimization problem Update direction
Case Study 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 equalizer w2: Input wordlength of channel estimator w3: Output wordlength of channel estimator
Assumptions Internal wordlengths of blocks have been 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 Simulations
Case Study 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}
Start at {5,4,4,4} wordlength Next wordlength combination 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 Number of Trials
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 Case Study Complexity and Number of Iterations
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
Wordlength S X X X X X Wordlength Integer wordlength X X X X X Integer wordlength = 2 Introduction Fixed-Point Representation • Fixed point type • Wordlength • Integer wordlength • Quantization modes • Round • Truncation • Overflow modes • Saturation • Saturation to zero • Wrap-around SystemC format www.systemc.org Back
Search Methods 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 Direction of full search:minimum wordlengths {2,2}optimum wordlengths = {5,5}d = 6trials = 24 Back
N Tap FFT cost 256 Tap FFT cost FFT Cost Back
Uses complexity sensitivity information as direction to search for optimum wordlength Advantage: minimizes complexity Disadvantage: demands large number of iterations Measures Complexity Measure [W.Sung and K.Kum 1995] Objective function Optimization problem Update direction Back
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 Measures Distortion Measure [K. Han et al. 2001] Objective function Optimization problem Update direction Back
Case Study Broadband Wireless Access Demodulator Simulation
Case Study Top-Level Simulation Back
Introduction 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 float a; float b; float c; c = a + b; gFix a(12,1); gFix b(12,1); gFix c(13,2); c = a + b; • Wordlengths determined manually • Wordlength optimization tool needed
Background 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 ?
Search Methods 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]
Range estimation Find maximum and minimum values for each Find minimum wordlengths Defines starting wordlength values to use Iterative search Increase/decrease wordlengths one-by-one until meeting specification using one of the measures Case Study Procedure