lteEqualizeMMSE

Описание

пример

[out,csi] = lteEqualizeMMSE(rxgrid,channelest,noiseest) возвращает уравненные данные в многомерном массиве, out. MMSE эквализация применяется к полученной сетке ресурсов данных в матрице, rxgrid, использование информации о канале в channelest матрица. noiseest - оценка принятой спектральной плотности степени шума.

Кроме того, вход channelest может быть предоставлена как трехмерные массивы размера NRE -by- NRxAnts-by - P, и входные rxgrid может быть предоставлена как матрица размера NRE -by- NRxAnts. В этом случае первые две размерности были сведены к одной размерности путем соответствующей индексации через частотные и временные местоположения интересующих элементов ресурса, обычно для одного физического канала. Выходы, out и csi, имеют размер (N × M) -by - P.

Примеры

свернуть все

Выравнивает принятый сигнал для RMC R.4 после оценки канала. Используйте эквалайзер MMSE.

Создайте структуру строения всей ячейки и сгенерируйте сигнал передачи. Сконфигурируйте канал распространения.

enb = lteRMCDL('R.4');
[txSignal,~,info] = lteRMCDLTool(enb,[1;0;0;1]);

chcfg.DelayProfile = 'EPA';
chcfg.NRxAnts = 1;
chcfg.DopplerFreq = 70;
chcfg.MIMOCorrelation = 'Low';
chcfg.SamplingRate = info.SamplingRate;
chcfg.Seed = 1;
chcfg.InitPhase = 'Random';
chcfg.InitTime = 0;

txSignal = [txSignal; zeros(15,1)];
N = length(txSignal);
noise = 1e-3*complex(randn(N,chcfg.NRxAnts),randn(N,chcfg.NRxAnts));
rxSignal = lteFadingChannel(chcfg,txSignal)+noise;

Выполните синхронизацию и демодуляцию OFDM.

offset = lteDLFrameOffset(enb,rxSignal);
rxGrid = lteOFDMDemodulate(enb,rxSignal(1+offset:end,:));

Создайте структуру строения оценки канала и выполните оценку канала.

cec.FreqWindow = 9;
cec.TimeWindow = 9;
cec.InterpType = 'Cubic';
cec.PilotAverage = 'UserDefined';
cec.InterpWinSize = 3;
cec.InterpWindow = 'Causal';
[hest,noiseEst] = lteDLChannelEstimate(enb, cec, rxGrid);

Выравнивание и построение полученных и выравниваемых сеток.

eqGrid = lteEqualizeMMSE(rxGrid, hest, noiseEst);
subplot(2,1,1)
surf(abs(rxGrid))
title('Received grid')
xlabel('OFDM symbol')
ylabel('Subcarrier')

subplot(2,1,2)
surf(abs(eqGrid))
title('Equalized grid')
xlabel('OFDM symbol')
ylabel('Subcarrier')

Figure contains 2 axes. Axes 1 with title Received grid contains an object of type surface. Axes 2 with title Equalized grid contains an object of type surface.

Этот пример применяет эквализацию MMSE к принятому сигналу для опорного канала измерения (RMC) R.5 после оценки канала.

Установите опорный канал измерения DL равным R.5

enb = lteRMCDL('R.5');

Установите строение оценщика канала PilotAverage поле к UserDefined. следующее: среднее окно 9 ресурсных элементов как в частотной, так и во временной областях, кубическая интерполяция с случайным окном.

cec = struct('FreqWindow',9,'TimeWindow',9,'InterpType','cubic');
cec.PilotAverage = 'UserDefined';
cec.InterpWinSize = 1;
cec.InterpWindow = 'Causal';

Сгенерируйте txWaveform.

txWaveform = lteRMCDLTool(enb,[1;0;0;1]);
n = length(txWaveform);

Примените некоторый случайный шум к переданному сигналу и сохраните как rxWaveform.

rxWaveform = repmat(txWaveform,1,2)+complex(randn(n,2),randn(n,2))*1e-3;

Затем демодулируйте полученные данные.

rxGrid = lteOFDMDemodulate(enb,rxWaveform);

Затем выполните оценку канала.

[hest,n0] = lteDLChannelEstimate(enb,cec,rxGrid);

Наконец, примените MMSE эквализацию.

out = lteEqualizeMMSE(rxGrid,hest,n0);

Отображение графика поля точек одной несущей компонента.

scatterplot(out(:,1))

Figure Scatter Plot contains an axes. The axes with title Scatter plot contains an object of type line. This object represents Channel 1.

Входные параметры

свернуть все

Полученная сетка ресурса данных, заданная как 3-D числовой массив или 2-D числовая матрица. Как 3-D числовой массив, он имеет размер N -by- M -by- NRxAnts, где N - количество поднесущих, M - количество символов OFDM и NRxAnts - количество приемных антенн.

В качестве 2-D числовой матрицы она имеет размер NRE -by- NRxAnts. В этом случае первые две размерности были сведены к одной размерности путем соответствующей индексации через частотные и временные местоположения интересующих элементов ресурса, обычно для одного физического канала.

Типы данных: double
Поддержка комплексного числа: Да

Информация о канале, заданная как 4-D числовой массив или 3-D числовой массив. Как 4-D числовой массив, он имеет размер N -by- M -by- NRxAnts-by - P. N - количество поднесущих, M - количество символов OFDM, NRxAnts - количество приемных антенн, а P - количество передающих антенн. Каждый элемент является комплексным числом, представляющим узкополосный канал для каждого ресурсного элемента и для каждой ссылки связи между передающими и приемными антеннами. Эта матрица может быть получена с помощью команды оценки канала lteDLChannelEstimate.

В качестве 3-D числового массива он имеет размер NRE -by- NRxAnts-by - P. В этом случае первые две размерности были сведены к одной размерности путем соответствующей индексации через частотные и временные местоположения интересующих элементов ресурса, обычно для одного физического канала .

Типы данных: double
Поддержка комплексного числа: Да

Оценка степени шума, заданная как числовой скаляр. Это - оценка принятой спектральной плотности степени шума на RE на rxgrid.

Типы данных: double

Выходные аргументы

свернуть все

Выравниваемые выходные данные, возвращенные как 3-D числовой массив или 2-D числовая матрица. Как 3-D числовой массив он имеет размер N -by- M -by- P, где N - количество поднесущих, M - количество символов OFDM, а P - количество передающих антенн.

Кроме того, если channelest предоставляется как трехмерный массив, out является 2-D числовой матрицей размера (N × M) -by- P. В этом случае первые две размерности были сведены к одной размерности путем соответствующей индексации через частотные и временные местоположения интересующих элементов ресурса, обычно для одного физического канала.

Типы данных: double
Поддержка комплексного числа: Да

Информация о состоянии мягкого канала, возвращенная как 3-D числовой массив того же размера, что и out. Как 3-D числовой массив он имеет размер N -by- M -by- P, где N - количество поднесущих, M - количество символов OFDM, а P - количество передающих антенн. csi предоставляет оценку (через MMSE) полученного коэффициента усиления RE для каждого полученного RE.

Кроме того, если channelest предоставляется как трехмерный массив, csi является 2-D числовой матрицей размера (N × M) -by- P. В этом случае первые две размерности были сведены к одной размерности путем соответствующей индексации через частотные и временные местоположения интересующих элементов ресурса, обычно для одного физического канала.

Типы данных: double

Введенный в R2014a