Presentation is loading. Please wait.

Presentation is loading. Please wait.

DSP Implementation of a BPSK SNR Estimation Algorithm for OFDM Systems in AWGN Channel University of Patras Department of Electrical & Computer Engineering.

Similar presentations


Presentation on theme: "DSP Implementation of a BPSK SNR Estimation Algorithm for OFDM Systems in AWGN Channel University of Patras Department of Electrical & Computer Engineering."— Presentation transcript:

1 DSP Implementation of a BPSK SNR Estimation Algorithm for OFDM Systems in AWGN Channel University of Patras Department of Electrical & Computer Engineering Applied Electronics Laboratory Athanasios Doukas, Andreas Kotsopoulos, Grigorios Kalivas

2 20/07/2006OFDM SNR DSP2 Contents Introduction OFDM Basics and SNV-SNR Estimator SNV-SNR Optimization Performance Results Conclusions

3 20/07/2006OFDM SNR DSP3 Introduction  Demand for even higher data rates.  Orthogonal Frequency Division Multiplexed (OFDM) based Wireless Local Area Networks (WLAN) such as 802.11a 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.

4 20/07/2006OFDM SNR DSP4 Why an implementation is necessary Real Time Constraints Realistic Conditions Realistic Capabilities Text Necessities

5 20/07/2006OFDM SNR DSP5 Possible Solutions for Implementation Implementation The final decision depends on the nature of the application Digital Signal Processor (DSP) Text Application Specific Integrated Circuit (ASIC)

6 20/07/2006OFDM SNR DSP6 Why DSP Implementation D B C A Reconfiguration Reprogrammability Clock speed and memory of DSPs Fast upgrades and modifications

7 20/07/2006OFDM SNR DSP7 Previous Works A whole OFDM WLAN system using one or two Texas Instruments (TI) DSPs including CSI parts for equalization of the received data 1 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 its iterative nature

8 20/07/2006OFDM SNR DSP8 Contents Introduction OFDM Basics and SNV-SNR Estimator SNV-SNR Optimization Performance Results Conclusions

9 20/07/2006OFDM SNR DSP9 OFDM Scheme

10 20/07/2006OFDM SNR DSP10 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).

11 20/07/2006OFDM SNR DSP11 Contents Introduction OFDM Basics and SNV-SNR Estimator SNV-SNR Optimization Performance Results Conclusions

12 20/07/2006OFDM SNR DSP12 Implementation Platform SNV-SNR was implemented on a TMS320C6711 DSP with internal clock frequency at 200MHz and the development tool used for debugging and optimization was Code Composer Studio (CCS) 3.1 Platinum

13 20/07/2006OFDM SNR DSP13 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.

14 20/07/2006OFDM SNR DSP14 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 Avoid function calls either via macros and inlines or via integrating the function bodies into the main program. 3 Compile the code with full CCS compiler optimization (for example -o3 option) enabled 4 6 5 Replace basic arithmetic operations, such as additions, multiplications, and reciprocals, with their DSP-specific intrinsic equivalents. Make use of any DSP-specific libraries available, such as the dsp67x.lib, after having profiled them to ensure desired performance

15 20/07/2006OFDM SNR DSP15 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.

16 20/07/2006OFDM SNR DSP16 Additional SNV-SNR Specific Optimization 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. Compiler optimization 1.Full optimization (-o3) and speed-most-critical options were set along with C67x-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 C67x compiler intrinsic, which are C-callable functions that map directly to C67x-optimized assembly code, therefore enhancing performance. Fast algorithms of the literature 1.Newton Rapson Inverse (NRI) method for square root estimation 2.Equirriple-Error Magnitude method for complex magnitude estimation ABC

17 20/07/2006OFDM SNR DSP17 Contents Introduction OFDM Basics and SNV-SNR Estimator SNV-SNR Optimization Performance Results Conclusions

18 20/07/2006OFDM SNR DSP18 Comparison Software/Hardware Implementation

19 20/07/2006OFDM SNR DSP19 Estimation Accuracy

20 20/07/2006OFDM SNR DSP20 Estimation comparison to I-SNR

21 20/07/2006OFDM SNR DSP21 Hardware Requirements Optimization level No optimization Full Optimization Number of samples 50010005001000 Cycles 204003500015202580 Code-size 1.5KBytes1.8Kbytes Cycles for 64-point FFT 900 I-SNR Cycles 9000 (6 Iterations with 1000 samples)

22 20/07/2006OFDM SNR DSP22 Contents Introduction OFDM Basics and SNV-SNR Estimator SNV-SNR Optimization Performance Results Conclusions

23 20/07/2006OFDM SNR DSP23 1.Implementation and optimization procedure of a single step SNR estimation algorithm, SNV-SNR, on a TI C6711 DSP operating on BPSK modulated data for OFDM systems in AWGN channel and suggestion of an optimization process for 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. Conclusions

24


Download ppt "DSP Implementation of a BPSK SNR Estimation Algorithm for OFDM Systems in AWGN Channel University of Patras Department of Electrical & Computer Engineering."

Similar presentations


Ads by Google