DSP Implementation of a BPSK SNR Estimation Algorithm
DSP Implementation of a BPSK SNR Estimation Algorithm for OFDM Systems in AWGN Channel Athanasios Doukas, Andreas Kotsopoulos, Grigorios Kalivas University of Patras Department of Electrical & Computer Engineering Applied Electronics Laboratory 20/07/2006
Contents Introduction OFDM Basics and SNV-SNR Estimator SNV-SNR Optimization Performance Results Conclusions 20/07/2006 2 OFDM SNR DSP
Introduction ØDemand for even higher data rates. ØOrthogonal Frequency Division Multiplexed (OFDM) based Wireless Local Area Networks (WLAN) such as 802. 11 a and HIPERLAN/2, can give these high rates. ØIn order to achieve this the channel state information (CSI) has to be used and the transmission characteristics should be adapted accordingly. ØExamples are the adaptive modulation and adaptive bit-loading techniques. ØSignal-to-Noise Ratio (SNR) is a crucial parameter, since it provides significant information that can be used to maximize the utilization of the channel via such adaptive techniques. 20/07/2006 3 OFDM SNR DSP
Why an implementation is necessary Realistic Conditions Real Time Constraints Realistic Capabilities Necessities Text 20/07/2006 4 OFDM SNR DSP
Possible Solutions for Implementation Digital Signal Processor (DSP) Text Implementation Application Specific Integrated Circuit (ASIC) The final decision depends on the nature of the application 20/07/2006 5 OFDM SNR DSP
Why DSP Implementation Reconfiguration Reprogrammability A B Clock speed and memory of DSPs C D Fast upgrades and modifications 20/07/2006 6 OFDM SNR DSP
Previous Works 1 A whole OFDM WLAN system using one or two Texas Instruments (TI) DSPs including CSI parts for equalization of the received data 2 A similar implementation is described for a Terrestrial Digital Video Broadcasting (DVB-T) system, focused mainly on the structure of the equalizer and the demodulator of the system. 3 Iterative-SNR (I-SNR) implementation, estimates SNR from the received after a few iterations. Drawback of this algorithm is iterative nature 20/07/2006 7 OFDM SNR DSP
Contents Introduction OFDM Basics and SNV-SNR Estimator SNV-SNR Optimization Performance Results Conclusions 20/07/2006 8 OFDM SNR DSP
OFDM Scheme 20/07/2006 9 OFDM SNR DSP
SNV-SNR Estimator The Squared Signal-to-Noise Variance SNR (SNV-SNR) is a one-step estimator that does not use any previously known data, such as pilots or preamble, but only the received data symbols (DA) from receiver decisions (RX). 20/07/2006 10 OFDM SNR DSP
Contents Introduction OFDM Basics and SNV-SNR Estimator SNV-SNR Optimization Performance Results Conclusions 20/07/2006 11 OFDM SNR DSP
Implementation Platform SNV-SNR was implemented on a TMS 320 C 6711 DSP with internal clock frequency at 200 MHz and the development tool used for debugging and optimization was Code Composer Studio (CCS) 3. 1 Platinum 20/07/2006 12 OFDM SNR DSP
SNV-SNR Implementation Floating-point arithmetic was chosen 1. Its internal architecture is basically floating-point providing little flexibility for fixed point implementations of high complexity such as changing between several fixed-point representations. This way if there was a need for functions performing conversion between different fixed-point formats, in order to maintain the desired accuracy hand-coded should be involved resulting into a significant overhead and higher implementation complexity 2. SNV-SNR involves arithmetic operations that are difficult to manipulate with fixed -point numbers without causing overflows or underflows, such as divisions, additions, and subtractions repeated over a rather large number of iterations inside loops. 20/07/2006 13 OFDM SNR DSP
General Optimization Process (1/2) 1 Place the whole code in IRAM if possible 2 Re-arrange/re-write the code exploiting any algorithmic redundancies via reuse of any possible inner results 3 Avoid function calls either via macros and inlines or via integrating the function bodies into the main program. 4 Compile the code with full CCS compiler optimization (for example -o 3 option) enabled 5 Replace basic arithmetic operations, such as additions, multiplications, and reciprocals, with their DSP-specific intrinsic equivalents. 6 Make use of any DSP-specific libraries available, such as the dsp 67 x. lib, after having profiled them to ensure desired performance 20/07/2006 14 OFDM SNR DSP
General Optimization Process (2/2) 7 Profile the code and identify the most cycle-consuming parts, most probably loops with high processing load 8 Re-write these parts using any possible optimization techniques, such as double-word access or further loop-unrolling 9 Exploit any No-Operations (NOP) in the compiler-produced assembly and replace them with useful code if possible, thus, taking full advantage of the pipelining capabilities of the DSP. 10 As a last solution, due to the great programming effort needed, hand-write the most time-consuming parts in hand-coded assembly from scratch. If still the performance of the code is not satisfactory go back at step 7, trying to split the sensitive parts into smaller and optimize each one separately. 20/07/2006 15 OFDM SNR DSP
Additional SNV-SNR Specific Optimization A Coding structure modifications of SNV-SNR Integration of complicated arithmetic, such as complex divisions, into the main code so as to avoid the relative overheads. B Compiler optimization 1. Full optimization (-o 3) and speed-most-critical options were set along with C 67 x-specific features enabled in order to fully utilize the hardware characteristics of our target DSP. 2. Arithmetic operations, like reciprocals, were replaced by their equivalent C 67 x compiler intrinsic, which are C-callable functions that map directly to C 67 x-optimized assembly code, therefore enhancing performance. C Fast algorithms of the literature 1. Newton Rapson Inverse (NRI) method for square root estimation 2. Equirriple-Error Magnitude method for complex magnitude estimation 20/07/2006 16 OFDM SNR DSP
Contents Introduction OFDM Basics and SNV-SNR Estimator SNV-SNR Optimization Performance Results Conclusions 20/07/2006 17 OFDM SNR DSP
Comparison Software/Hardware Implementation 20/07/2006 18 OFDM SNR DSP
Estimation Accuracy 20/07/2006 19 OFDM SNR DSP
Estimation comparison to I-SNR 20/07/2006 20 OFDM SNR DSP
Hardware Requirements Optimization level No optimization Full Optimization Number of samples 500 1000 Cycles 20400 35000 1520 2580 Code-size 1. 5 KBytes 1. 8 Kbytes Cycles for 64 -point FFT 900 I-SNR Cycles 9000 (6 Iterations with 1000 samples) 20/07/2006 21 OFDM SNR DSP
Contents Introduction OFDM Basics and SNV-SNR Estimator SNV-SNR Optimization Performance Results Conclusions 20/07/2006 22 OFDM SNR DSP
Conclusions 1. Implementation and optimization procedure of a single step SNR estimation 2. algorithm, SNV-SNR, on a TI C 6711 DSP operating on BPSK modulated data fo 3. OFDM systems in AWGN channel and suggestion of an optimization process fo 4. such implementations. 2. The estimation accuracy of the implemented algorithm is similar to the software implementation of the same algorithm. 3. Comparison of the implemented algorithm with a previously implemented iterative SNR estimation algorithm with our implementation achieving slightly worse estimation accuracy results but much higher execution speed. 4. Through optimization procedure further decrease in time requirements while at the same time achieving to keep its code size in very low levels, making it able to fit into the IRAM of the DSP. 20/07/2006 23 OFDM SNR DSP
20/07/2006
- Slides: 24