exponenta event banner

Измерение величины вектора ошибок PDSCH (EVM)

Этот пример измеряет EVM в сигнале канала опорного измерения нисходящей линии связи (RMC) и сигнале тестовой модели нисходящей линии связи (E-TM) в соответствии с требованиями измерения EVM, указанными в TS 36.104, приложение E [1].

Введение

Этот пример создает сигнал RMC и применяет некоторый шум к передаче модели передатчика EVM. Также применяются сдвиг частоты и сдвиг IQ. Нарушенный сигнал затем обрабатывается в соответствии с требованиями к измерениям EVM, указанными в приложении E [1] к TS36.104. В этом примере измеряется пик и среднеквадратичное EVM, усредненное по 2 кадрам входного сигнала.

Среднее EVM измеряется во времени в двух местоположениях (низком и высоком), где низкое и высокое местоположения соответствуют выравниванию окна БПФ в начале и конце циклического префикса. LTE Toolbox™ требует, чтобы низкие и высокие местоположения были указаны как часть длины циклического префикса.

Следует отметить, что для многоантенных RMC измерение EVM предполагает, что каждая приемная сигнальная антенна непосредственно соединена с каждой передающей сигнальной антенной, как показано в TS36.141 Приложении I.1.1 [2]. В соответствии с требованиями к измерениям EVM, определенными в TS 36.104 Приложение E [1], декодирование PDSCH использует только выравнивание нулевого форсирования. Для иллюстрации приема PDSCH, который включает в себя полное декодирование MIMO, см. пример поиска ячеек, MIB и восстановления SIB1.

Наконец, измеряют EVM сигнала тестовой модели (E-TM), показывая, как синхронизировать сигнал E-TM, который был сгенерирован вне MATLAB ® или который был воспроизведен по воздуху после генерации внутри MATLAB.

Передатчик

Установка передатчик согласно TS36.101 RMC [3].

% eNodeB Configuration
rng('default');         % Set the default random number generator
rmc = lteRMCDL('R.5');  % Configure RMC
rmc.PDSCH.RVSeq = 0;    % Redundancy version indicator
rmc.TotSubframes = 20;  % Total number of subframes to generate

% Create eNodeB transmission with random PDSCH data
txWaveform = lteRMCDLTool(rmc,randi([0 1],rmc.PDSCH.TrBlkSizes(1),1));

Моделирование ослабления

Моделирование EVM передатчика и добавление смещений частоты и IQ.

% Model EVM with additive noise
ofdmInfo   = lteOFDMInfo(rmc);
txEVMpc    = 1.2;          % Transmit EVM in per cent
evmModel   = txEVMpc/(100*sqrt(double(ofdmInfo.Nfft)))* ...
    complex(randn(size(txWaveform)),randn(size(txWaveform)))/sqrt(2);
rxWaveform = txWaveform+evmModel;

% Add frequency offset impairment to received waveform
foffset    = 33.0;         % Frequency offset in Hertz
t = (0:length(rxWaveform)-1).'/ofdmInfo.SamplingRate;
rxWaveform = rxWaveform.*repmat(exp(1i*2*pi*foffset*t),1,rmc.CellRefP);

% Add IQ offset
iqoffset   = complex(0.01,-0.005);
rxWaveform = rxWaveform+iqoffset;

Приемник

Приемник синхронизируется с принятым сигналом и вычисляет и отображает измеренное EVM.

% Apply frequency estimation and correction for the purposes of performing
% timing synchronization
foffset_est = lteFrequencyOffset(rmc,rxWaveform);
rxWaveformFreqCorrected = lteFrequencyCorrect(rmc,rxWaveform,foffset_est);

% Synchronize to received waveform
offset = lteDLFrameOffset(rmc,rxWaveformFreqCorrected,'TestEVM');
rxWaveform = rxWaveform(1+offset:end,:);

% Use 'TestEVM' pilot averaging
cec.PilotAverage = 'TestEVM';

Выполнение измерений

EVM PDSCH вычисляется путем вызова hPDSCHEVM.

Отображается среднее значение EVM для RMC нисходящей линии связи. Сначала вычисляются результаты для EVM низкого и высокого краев для каждого подкадра в кадре, и их средние значения отображаются в окне команд. Максимумом этих средних значений является EVM на кадр. Окончательное EVM для RMC нисходящей линии связи представляет собой среднее значение EVM по всем кадрам. Также производится ряд участков:

  • EVM в сравнении с символом OFDM

  • EVM в сравнении с поднесущей

  • EVM в сравнении с блоком ресурсов

  • EVM в сравнении с символом OFDM и поднесущей (т.е. сеткой ресурсов EVM)

Следует отметить, что измерение EVM, отображаемое в окне команд, вычисляется только для выделенных блоков ресурсов PDSCH в соответствии со стандартом LTE. Графики EVM показаны для всех блоков ресурсов (выделенных или нераспределенных), что позволяет измерять качество сигнала в более общем виде. В нераспределенных блоках ресурсов EVM вычисляется в предположении, что принятые элементы ресурсов имеют ожидаемое значение, равное нулю.

EVM каждой несущей E-UTRA для схем модуляции QPSK, 16QAM, 64QAM и 256QAM на PDSCH должно быть лучше требуемого EVM в 17,5%, 12,5%, 8% и 3,5% соответственно согласно TS 36.104 Таблица 6.5.2-1 [1].

% Compute and display EVM measurements
[evmmeas, plots] = hPDSCHEVM(rmc,cec,rxWaveform);
Low edge EVM, subframe 0: 1.287%
High edge EVM, subframe 0: 1.289%
Low edge EVM, subframe 1: 1.395%
High edge EVM, subframe 1: 1.390%
Low edge EVM, subframe 2: 1.330%
High edge EVM, subframe 2: 1.324%
Low edge EVM, subframe 3: 1.234%
High edge EVM, subframe 3: 1.239%
Low edge EVM, subframe 4: 1.235%
High edge EVM, subframe 4: 1.229%
Low edge EVM, subframe 6: 1.296%
High edge EVM, subframe 6: 1.294%
Low edge EVM, subframe 7: 1.350%
High edge EVM, subframe 7: 1.344%
Low edge EVM, subframe 8: 1.338%
High edge EVM, subframe 8: 1.336%
Low edge EVM, subframe 9: 1.331%
High edge EVM, subframe 9: 1.319%
Averaged low edge EVM, frame 0: 1.312%
Averaged high edge EVM, frame 0: 1.308%
Averaged EVM frame 0: 1.312%
Low edge EVM, subframe 0: 1.241%
High edge EVM, subframe 0: 1.243%
Low edge EVM, subframe 1: 1.230%
High edge EVM, subframe 1: 1.229%
Low edge EVM, subframe 2: 1.219%
High edge EVM, subframe 2: 1.220%
Low edge EVM, subframe 3: 1.216%
High edge EVM, subframe 3: 1.220%
Low edge EVM, subframe 4: 1.239%
High edge EVM, subframe 4: 1.239%
Low edge EVM, subframe 6: 1.219%
High edge EVM, subframe 6: 1.207%
Low edge EVM, subframe 7: 1.247%
High edge EVM, subframe 7: 1.246%
Low edge EVM, subframe 8: 1.257%
High edge EVM, subframe 8: 1.252%
Low edge EVM, subframe 9: 1.249%
High edge EVM, subframe 9: 1.246%
Averaged low edge EVM, frame 1: 1.235%
Averaged high edge EVM, frame 1: 1.234%
Averaged EVM frame 1: 1.235%
Averaged overall EVM: 1.274%

Измерение EVM по сигналу тестовой модели

Наконец, измеряют EVM сигнала тестовой модели (E-TM), показывая, как синхронизировать сигнал E-TM, который был сгенерирован вне MATLAB или который был воспроизведен по воздуху после генерирования внутри MATLAB. Выполняются следующие шаги:

  • Захватываемый сигнал нагрузки: Внутри генерируется сигнал hGetTestModelWaveform для моделирования эфирного сигнала E-TM, захваченного с частотой возвращенной выборки. Для получения более подробной информации о передаче по воздуху и анализе форм сигналов тестовой модели см. следующий пример: Генерация и передача сигналов с использованием LTE Toolbox с испытательным и измерительным оборудованием.

  • Создание конфигурации локальной тестовой модели: Затем с помощью функции создается структура конфигурации, представляющая содержимое формы сигнала E-TM lteTestModel. Для создания конфигурации должны быть известны номер тестовой модели и полоса пропускания.

  • Повторная выборка ожидаемой частоты дискретизации: Функция lteOFDMInfo вызывается для получения некоторой информации о модуляции/демодуляции OFDM, используемой в LTE Toolbox для конфигурации тестовой модели tmconfig. Самая важная информация здесь ofdmInfo.SamplingRate которая дает частоту дискретизации, ожидаемую для демодуляции сигнала OFDM. resample используется для повторной выборки захваченной формы сигнала для этой частоты дискретизации.

  • Выполнение синхронизации: Оценка и коррекция сдвига частоты и синхронизация по времени выполняются с использованием тех же шагов, что и в этом примере.

  • Measure EVM: EVM измеряется вызовом hPDSCHEVM. Для E-TM с несколькими PDSCH эта функция возвращает составное EVM всех PDSCH, присутствующих в сигнале.

% Load the captured Test Model waveform
[tmsignal,SR] = hGetTestModelWaveform();

% Create a local Test Model configuration, corresponding to the known E-TM
% number and bandwidth
tmconfig = lteTestModel('1.1','5MHz');
ofdmInfo = lteOFDMInfo(tmconfig);

% Resample the captured waveform to match the expected sampling rate used
% by LTE Toolbox for the Test Model bandwidth
tmsignal = resample(tmsignal,ofdmInfo.SamplingRate,SR);

% Apply frequency estimation and correction for the purposes of performing
% timing synchronization
foffset_est = lteFrequencyOffset(tmconfig,tmsignal);
tmsignalFreqCorrected = lteFrequencyCorrect(tmconfig,tmsignal,foffset_est);

% Synchronize the captured waveform
offset = lteDLFrameOffset(tmconfig,tmsignalFreqCorrected,'TestEVM');
tmsignal = tmsignal(1+offset:end,:);

% Compute EVM measurements, with plotting disabled
cec.PilotAverage = 'TestEVM';
alg.EnablePlotting = 'Off';
evm_tm = hPDSCHEVM(tmconfig,cec,tmsignal,alg);
Low edge EVM, subframe 0: 2.166%
High edge EVM, subframe 0: 1.922%
Low edge EVM, subframe 1: 2.010%
High edge EVM, subframe 1: 1.904%
Low edge EVM, subframe 2: 2.060%
High edge EVM, subframe 2: 1.915%
Low edge EVM, subframe 3: 1.988%
High edge EVM, subframe 3: 1.910%
Low edge EVM, subframe 4: 2.074%
High edge EVM, subframe 4: 1.920%
Low edge EVM, subframe 5: 2.010%
High edge EVM, subframe 5: 1.913%
Low edge EVM, subframe 6: 2.082%
High edge EVM, subframe 6: 1.912%
Low edge EVM, subframe 7: 2.047%
High edge EVM, subframe 7: 1.920%
Low edge EVM, subframe 8: 1.989%
High edge EVM, subframe 8: 1.905%
Low edge EVM, subframe 9: 2.022%
High edge EVM, subframe 9: 1.905%
Averaged low edge EVM, frame 0: 2.044%
Averaged high edge EVM, frame 0: 1.912%
Averaged EVM frame 0: 2.044%
Averaged overall EVM: 2.044%

Приложение

В этом примере используются следующие вспомогательные функции:

Избранная библиография

  1. 3GPP TS 36.104 «Радиопередача и прием базовой станции (BS)»

  2. 3GPP TS 36.141 «Тестирование соответствия базовой станции (BS)»

  3. 3GPP ТС 36.101 «Радиопередача и прием пользовательского оборудования (UE)»