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

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

Введение

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

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

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

Наконец, измеряется 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 демодуляции формы волны. The resample функция используется для повторной выборки захваченного сигнала с этой частотой дискретизации.

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

  • Измерение 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 TS 36.101 «Радиопередача и прием пользовательского оборудования (UE)»