Download presentation
Presentation is loading. Please wait.
Published byBertram Moody Modified over 9 years ago
1
January 2003 Joe Kwak InterDigital Communications Corporation
IEEE /100r1 doc: IEEE /773r2 November 2003 EVM SIMULATIONS FOR OFDM EVM vs BER data plots and data tables to support PSNI premise Joe Kwak InterDigital Communications Corporation Submission Joe Kwak, InterDigital
2
OUTLINE Background for EVM Simulation Work EVM Measurement Notes
Public Domain Simulation Tool EVM Calculations in Simulator Simulation Setup/Assumptions Plotted Simulation Results Importance of EVM variance in Fading Channels Conclusions Joe Kwak, InterDigital Submission
3
Background r2-K-RCPI_PSNI_Measurements.ppt, presented at May meeting, proposed a single scalar measure (PSNI) as new signal quality indicator for all WLAN rates, modulations, FEC, and channel conditions. PSNI to be based on internal demod parameter such as EVM, internal observed SNR paramter, or other param. PSNI to be specified in AWGN for PER performance. Validity of PSNI(or EVM) as quality indicator of BER was questioned in fading channels. Dave Skellern and Joe Kwak agreed to study EVM. Skellern argues EVM not valid indicator, Kwak argues EVM is adequate indicator of signal quality and BER. Joe Kwak, InterDigital Submission
4
Graphical Error Vector Magnitude
due to noise or distortion Transmitted symbol (Io,Qo) I I (Is,Qs) Q Q Average power circle EVM measure requires apriori knowledge of transmitted symbol, or must assume that closest constellation point is transmitted symbol. EVM is normalised to average power. Joe Kwak, InterDigital Submission
5
EVM Calculation in Transmitter
EVM has gained popularity as a figure of merit for transmitters. EVM may be easily computed from a modulated signal because: SNRs are extremely high so that the measured EVM represents transmitter constellation distortion, and not noise-induced signal distortion. High SNRs for measurement means that nearest constellation point is always the transmitted constellation point, I.e BER = 0 for transmitter testing purposes. The same technique, widely used for transmitters and specified for transmitters, does not directly apply to EVM measurement in receivers. Joe Kwak, InterDigital Submission
6
EVM Calculation in Receiver
Characterization of receivers is not limited to high SNRs; receivers are designed for operation in very low SNRs, where link distances are stretched to maximum. At low SNRs, processed symbol (I,Q) may cross demodulation decision boundary and lead to demod errors. Practical measurement of EVM in receivers has no apriori knowledge of transmitted symbol and so must assume closest constellation point. This assumption leads to EVM error in low SNR: measured EVM is lower than actual EVM; measured Inverse EVM is higher than actual IEVM. Joe Kwak, InterDigital Submission
7
January 2003 IEEE /100r1 Inverse EVM EVM in simulator is computed according to : ([(I-Io)2+(Q-Qo)2])1/ Nsubcsym * (Im2 + Qm2)1/ where (Io,Qo) is nearest constellation point, and (Im2 + Qm2)1/2 is the average signal power, and summation is taken over all packet subcarrier symbols. The Inverse EVM is equivalent to SNR where, IEVM = 20*log10( 1 / EVM ) Plots of IEVM vs SNR in AWGN shows simulator EVM produces expected results. Joe Kwak, InterDigital Submission
8
Matlab Simulation Tool
A publically available MATLAB simulation tool has been published in OFDM Wireless LANs: A Theoretical and Practical Guide, Juha Heiskala and John Terry, SAMS publishing, 2002. This tool implements IEEE802.11a modulations and coding and uses AWGN channel or the IEEE exponentially decaying ray channel model to demonstrate WLAN capability. This simulation tools calculates rawBER, data BER, PER on a packet by packet basis for any input SNR value and channel model using various ray decay time constants. This tool was modified to also compute EVM average and EVM Sdev over a series of packets. Joe Kwak, InterDigital Submission
9
EVM Calculation in Simulation Tool Receiver
Matlab receiver.m code module directs processing; EVM calc is performed just prior to demodulation: Packet Detection Frequency Error estimation and correction Fine time synchronization Channel estimation Phase error estimation and correction Rx diversity processing Amplitude normalization EVM calculation Soft decision demodulation Deinterleaving Depuncturing Soft decision weighting with subcarrier amps Viterbi soft decision FEC decoding Joe Kwak, InterDigital Submission
10
IEVM vs SNR in AWGN Joe Kwak, InterDigital Submission
11
IEVM Error at low SNRs When EVM is computed for transmit constellation testing, the transmitted signal is always at high SNR and the transmitted constellation point is always the nearest constellation point. EVM computation in a receiver also assumes that nearest constellation point is intended constellation point. This leads to EVM error at low SNR values when high noise levels may cause signal to cross demod decision boundary, leading to raw bit errors. Joe Kwak, InterDigital Submission
12
EVM Error at low SNR Values
Joe Kwak, InterDigital Submission
13
Simulation Setup at 6Mbps (BPSK, R=1/2)
Simulator has many real-world options which were not studied or used for this effort. Simulator is setup to provide near-ideal receiver performance, with minimal implementation-dependant losses: Ideal packet detection Ideal synchronization algorithms: time, freq, phase No PA distortions No transmitter phase noise Adequate channel estimation algorithm (unverified) No TX or Rx diversity Full precision calculations, no quantization errors Simulator tested and shows expected theoretical performance. Joe Kwak, InterDigital Submission
14
Simulation Setup at 6Mbps (BPSK, R=1/2) (cont)
Each plotted simulation point consists of 1000 simulated packets with 1000 data bits per packet (10E6 bits per data point). For each data point, the simulator calculated the IEVM mean, IEVM stddev, raw BER, data BER (after FEC decoding). Data was collected using various channel models: AWGN, IEEE fading using 25, 50, 100, 200, and 400 nsec decay times. For each channel model, SNR was varied for each data point from -6 to +20dB in 2 dB steps. Joe Kwak, InterDigital Submission
15
IEVM vs Raw BER for AWGN and Fading Channels
Joe Kwak, InterDigital Submission
16
IEVM vs Data BER (after FEC decoding)
Joe Kwak, InterDigital Submission
17
Variance of EVM as modifier of measured EVM
The standard deviation (Sdev) is computed for all IEVMs measured in the simulations. The Sdev varies with the decay time constant of the exponentially decaying rays in the fading model, in IEVM range from -5 to 40db It may be useful to use the Sdev value to modify the measured IEVM to make an adjustment to more closely align the IEVMs in fading channels with that of AWGN case for better indication of Data BER. IEVM Sdev 0.10 3.59 3.91 4.55 5.33 5.94 Tdecay (nsec) AWGN 400 200 100 50 25 Joe Kwak, InterDigital Submission
18
IEVMmod: Adjusted IEVM measurement
Heuristically, we may search for Sdev-based adjustment factors to more closely align the IEVM results to the AWGN case for all channel conditions. We structure IEVMmod so that: IEVMmod = IEVM - FactorSlope(IEVM,Sdev) + FactorOffset(Sdev) Reasonable alignment is achieved using: FactorSlope = (IEVM + C1)*Sdev*C2 and FactorOffset = (C3 - Sdev)*Sdev*C4 where C1= 0.9, C2=0.135, C3=6.0, and C4=0.3 Joe Kwak, InterDigital Submission
19
IEVMmod vs Data BER (after FEC decoding)
Joe Kwak, InterDigital Submission
20
Similar Results for all OFDM Rates
Same procedure is repeated for other OFDM rates: Simulations are run across wide SNR range for 6 channel models: runs per OFDM rate 1000 packets are simulated in each run and IEVM is measured for each packet Mean and StdDev of IEVM in 1000 packets are calculated. Mean IEVM vs Data BER is plotted IEVMmod is calculated using IEVMmean and IEVMsd. IEVMmod vs Data BER is plotted and coefficients are selected to align fading channels with AWGN Since performance varies for each OFDM rate, the coefficients for IEVMmod also vary. Joe Kwak, InterDigital Submission
21
IEVM: BPSK, R=3/4 Joe Kwak, InterDigital Submission
22
IEVMmod: BPSK, R=3/4 Joe Kwak, InterDigital Submission
23
IEVM: QPSK, R=1/2 Joe Kwak, InterDigital Submission
24
IEVMmod: QPSK, R=1/2 Joe Kwak, InterDigital Submission
25
IEVM: QPSK, R=3/4 Joe Kwak, InterDigital Submission
26
IEVMmod: QPSK, R=3/4 Joe Kwak, InterDigital Submission
27
IEVM: 16QAM, R=1/2 Joe Kwak, InterDigital Submission
28
IEVMmod: 16QAM, R=1/2 Joe Kwak, InterDigital Submission
29
IEVM: 16QAM, R=3/4 Joe Kwak, InterDigital Submission
30
IEVMmod: 16QAM, R=3/4 Joe Kwak, InterDigital Submission
31
IEVM: 64QAM, R=2/3 Joe Kwak, InterDigital Submission
32
IEVMmod: 64QAM, R=2/3 Joe Kwak, InterDigital Submission
33
IEVM: 64QAM, R=3/4 Joe Kwak, InterDigital Submission
34
IEVMmod: 64QAM, R=3/4 Joe Kwak, InterDigital Submission
35
Study of Sample Size for Error Analysis
In fading channels, IEVM varies significantly from packet to packet. How many packets need to be measured to get a useful IEVMmean and IEVMsd? 50nsec fading channel was simulated for all OFDM rates using different sample sizes of 10, 100, 1000 packets per measurement Joe Kwak, InterDigital Submission
36
Sample Size Study Results
Partial results for BPSK, R=1/2 Joe Kwak, InterDigital Submission
37
Sample Size Study Results (cont)
Std Dev of IEVMmod measurements Joe Kwak, InterDigital Submission
38
Sampling error for IEVM
Based on these results we see that normal sample error may have significant effect on IEVMmod. In AWGN-dominated channels, a single EVM measurement is adequate. In fading channels where EVM variance is high, a large number of measurements are required to achieve accurate results: When measured over 100 packets, IEVMmod results may vary over a +/- 2db range. When measured over 1000 packets, IEVMmod results may vary over +/- .4dB range. IEVMavg, IEVMsd and Sample Size are all needed for meaningful measurement. Joe Kwak, InterDigital Submission
39
Conclusions Results clearly show that IEVM, when modified by the the std deviation of the IEVM measure, can provide a strong indicator of BER performance after FEC decoding for all channel conditions for all OFDM rates. IEVM alone is not sufficient. IEVMavg and IEVMsd measured over a sufficient number of packets is required to characterize channel to indicate the QOS of the radio link. PSNI premise still valid: EVM (with variance) is adequate basis for PSNI. But as Steve Pope indicated, other demod parameters may be preferred by certain manufacturers. Specification of PSNI needs to consider sample size and sample error. Joe Kwak, InterDigital Submission
40
Sample Simulation Results
For BPSK, R1/2, AWGN Complete results in --> Joe Kwak, InterDigital Submission
41
EVM Calculation Matlab Code
[j,k] = size(freq_data_syms); %compute number of data symbols, excludes extra noise symbols no_syms = j*(k-2); %create array with data symbol values temp0 = freq_data_syms(:); temp1 = temp0(1:no_syms); if ~isempty(findstr(sim_options.Modulation, 'BPSK')) %take absolute value to place all symbols in (+,+) quadrant temp2 = abs(real(temp1)) + i*(abs(imag(temp1))); % subtract out constellation point (1.0, i0), leaving error vector temp3 = (real(temp2)-1.0) + i*(imag(temp2)); elseif ~isempty(findstr(sim_options.Modulation, 'QPSK')) % subtract out constellation point (.7071, i.7071), leaving error vector temp3 = (real(temp2)-(sqrt(2)/2)) + i*(imag(temp2)-(sqrt(2)/2)); Joe Kwak, InterDigital Submission
42
EVM Calculation Matlab Code (cont)
elseif ~isempty(findstr(sim_options.Modulation, '16QAM')) %take absolute value to place all symbols in (+,+) quadrant temp2 = abs(real(temp1)) + i*(abs(imag(temp1))); %shift to decision threshhold in quadrant 1 for 16QAM temp3 = (real(temp2) ) + i*(imag(temp2) ); temp2 = abs(real(temp3)) + i*(abs(imag(temp3))); % subtract out constellation point (.3162, i.3162), leaving error vector temp3 = (real(temp2) ) + i*(imag(temp2) ); elseif ~isempty(findstr(sim_options.Modulation, '64QAM')) %shift to decision threshhold#1 in quadrant 1 for 64QAM temp3 = (real(temp2) ) + i*(imag(temp2) ); %shift to decision threshhold#2 in quadrant 1 for 64QAM temp3 = (real(temp2) ) + i*(imag(temp2) ); % subtract out constellation point (.1543, i.1543), leaving error vector temp3 = (real(temp2) ) + i*(imag(temp2) ); end Joe Kwak, InterDigital Submission
43
EVM Calculation Matlab Code (cont)
%compute magnitude of error vectors REvm = (real(temp3)).^2; IEvm = (imag(temp3)).^2; Evm = REvm + IEvm; %compute EVM EVMpkt = sqrt(sum(Evm) / no_syms); %EVMpkt now contains EVM calc for all symbols in this packet %Packet series processing loop for IEVMavg and IEVMstd IEVM = 20 * log10( 1 / EVMpkt ); %IEvm array contains IEVM values for each packet in series IEvm(packet_count) = IEVM; EVMtot = EVMtot + EVMpkt; % IEVMavg is scalar of average IEVM for all packets in series IEVMavg = 20 * log10( 1 /( EVMtot / packet_count)); %IEVMstd is scalar of Standard Deviation of IEVM for all packets in series IEVMstd = std(IEvm); %Output values for IEVMavg and IEVMstd with other BER calcs Joe Kwak, InterDigital Submission
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.