exponenta event banner

lteULPerfectChannelEstimate

Идеальная оценка канала восходящей линии связи

Описание

пример

hest = lteULPerfectChannelEstimate(ue,channel) выполняет идеальную оценку канала для конфигурации системы с заданными пользовательскими настройками оборудования (специфичными для UE) ue и конфигурация канала распространения channel. Идеальные оценки канала производятся только для моделей канала с замиранием, созданных с помощью lteFadingChannel функция.

Эта функция обеспечивает совершенную оценку канала с множеством входов и множеством выходов (MIMO) после модуляции множественного доступа с частотным разделением каналов с одной несущей (SC-FDMA). Для получения этой оценки функция устанавливает канал с заданной конфигурацией и посылает набор известных символов через этот канал для каждой передающей антенны по очереди.

пример

hest = lteULPerfectChannelEstimate(ue,channel,offset) выполняет идеальную оценку канала для временного и частотного сдвига, заданного offset. Определение offset гарантирует, что hest - это канал, получаемый при точной синхронизации приемника.

пример

hest = lteULPerfectChannelEstimate(ue,chs,channel) выполняет идеальную оценку канала для конфигурации передачи канала chs. Этот синтаксис поддерживает SC-FDMA для LTE, однотонного узкополосного Интернета вещей (NB-IoT) и многотонового NB-IoT.

hest = lteULPerfectChannelEstimate(ue,chs,channel,offset) выполняет идеальную оценку канала для конфигурации передачи канала и заданного временного и частотного сдвига.

Примеры

свернуть все

Выполнение точной оценки канала восходящей линии связи для выбранной конфигурации канала распространения.

Инициализируйте специфичные для UE настройки, указывая поля, соответствующие конфигурации восходящего канала LTE.

ue.NULRB = 6;
ue.CyclicPrefixUL = 'Normal';
ue.NTxAnts = 2;
ue.TotSubframes = 1;

Укажите условия канала распространения.

channel.Seed = 1;
channel.DelayProfile = 'EPA';
channel.NRxAnts = 4;
channel.DopplerFreq = 5.0;
channel.MIMOCorrelation = 'Low';
channel.InitPhase = 'Random';
channel.InitTime = 0.0;
channel.ModelType = 'GMEDS';
channel.NTerms = 16;
channel.NormalizeTxAnts = 'On';
channel.NormalizePathGains = 'On';

Выполнение точной оценки канала восходящей линии связи и отображение размера массива оценок канала.

hest = lteULPerfectChannelEstimate(ue,channel);
disp(size(hest));
    72    14     4     2

Выполняют оценку совершенного канала восходящей линии связи по форме сигнала со смещением во времени, проходящего через канал замирания.

Инициализация конфигурации

Инициализируйте специфичные для UE настройки путем указания полей, подходящих для конфигурации восходящего канала LTE.

ue = lteRMCUL('A1-1','FDD',1);
ue.NULRB = 10;
ue.CyclicPrefixUL = 'Normal';
ue.NTxAnts = 4;
ue.TotSubframes = 1;

Укажите конфигурацию канала распространения.

channel.Seed = 1;
channel.DelayProfile = 'EVA';
channel.NRxAnts = 2;
channel.DopplerFreq = 5.0;
channel.MIMOCorrelation = 'UplinkMedium';
channel.InitPhase = 'Random';
channel.InitTime = 0.0;
channel.ModelType = 'GMEDS';
channel.NTerms = 16;
channel.NormalizeTxAnts = 'On';
channel.NormalizePathGains = 'On';

Обработка формы сигнала

Создайте форму сигнала и добавьте выборки для задержки канала.

[txWaveform,txgrid,rmcCfg] = lteRMCULTool(ue,[1;0;0;1]);
txWaveform = [txWaveform; zeros(25,4)];
channel.SamplingRate = rmcCfg.SamplingRate;

Пропускают сигнал через канал замирания, генерируя выборки приемника временной области.

rxWaveform = lteFadingChannel(channel,txWaveform);

Определение смещения по времени

Используйте lteULFrameOffset функция для оценки смещения по времени.

offset = lteULFrameOffset(ue,ue.PUSCH,rxWaveform);
disp(offset);
     8

Измените принятый сигнал, чтобы учесть смещение синхронизации.

rxWaveform = rxWaveform(1+offset:end,:);

Демодуляция и идеальная оценка канала восходящей линии связи

Генерируют данные приемника частотной области посредством демодуляции принятого сигнала временной области.

grid = lteSCFDMADemodulate(ue,rxWaveform);

Выполнение точной оценки канала восходящей линии связи с заданным временным сдвигом.

hest = lteULPerfectChannelEstimate(ue,channel,offset);
disp(size(hest));
   120    14     2     4

Визуализация эффекта замирания канала

Постройте график сеток ресурсных элементов, чтобы показать влияние замирающего канала на передаваемый сигнал и восстановление сигнала с использованием совершенной оценки канала.

Оценка выходного канала представляет собой 4-D массив. Входные данные задают десять блоков ресурсов, ведущих к 120 поднесущим на символ. Обычный циклический префикс приводит к 14 символам на подкадр. Третий и четвертый размеры представляют две приемные и четыре передающие антенны, указанные в структурах входной конфигурации.

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

recoveredgrid = grid./hest;

subplot(2,2,1)
surf(abs(txgrid(:,:,1,1)))
title('Transmitted Grid')
subplot(2,2,2)
surf(abs(grid(:,:,1,1)))
title('Received Grid')
subplot(2,2,3)
surf(abs(hest(:,:,1,1)))
title('Perfect Channel Estimate')
subplot(2,2,4)
surf(abs(recoveredgrid(:,:,1,1)))
title('Recovered Grid')

Figure contains 4 axes. Axes 1 with title Transmitted Grid contains an object of type surface. Axes 2 with title Received Grid contains an object of type surface. Axes 3 with title Perfect Channel Estimate contains an object of type surface. Axes 4 with title Recovered Grid contains an object of type surface.

Выполнение точной оценки канала восходящей линии связи для выбранной конфигурации канала распространения.

Инициализируйте специфичные для UE настройки, указывая поля, подходящие для конфигурации восходящего канала NB-IoT.

ue.NBULSubcarrierSpacing = '15kHz';
ue.TotSlots = 10;

Укажите условия канала распространения.

channel.Seed = 5;
channel.DelayProfile = 'EPA';
channel.NRxAnts = 2;
channel.DopplerFreq = 5.0;
channel.MIMOCorrelation = 'Low';
channel.InitPhase = 'Random';
channel.InitTime = 0.0;
channel.ModelType = 'GMEDS';
channel.NTerms = 16;
channel.NormalizeTxAnts = 'On';
channel.NormalizePathGains = 'On';

Укажите сведения о конфигурации NPUSCH.

chs.NBULSubcarrierSet = 0;
chs.Modulation = 'QPSK';
chs.NULSlots = 2;
chs.NRU = 2;
chs.NRep = 1;
chs.SlotIdx = 0;

Выполнение точной оценки канала восходящей линии связи и отображение размера массива оценок канала.

hest = lteULPerfectChannelEstimate(ue,chs,channel);
disp(size(hest));
    12    70     2

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

свернуть все

Параметры UE, заданные как структура. Поля, указанные в ue определить, выполняет ли функция оценку канала для конфигурации LTE или NB-IoT. Чтобы указать конфигурацию LTE, укажите NULRB поле. Чтобы указать конфигурацию NB-IoT, укажите NBULSubcarrierSpacing поле. NTxAnts требуется для конфигураций LTE и NB-IoT. Другие поля в ue являются необязательными. CyclicPrefixUL и TotSubframes поля применимы только для конфигурации LTE. TotSlots применимо только для конфигурации NB-IoT.

Число блоков ресурсов восходящей линии связи, NRBUL, указанное как целое число в интервале [6, 110]. Для выполнения оценки канала для конфигурации LTE необходимо указать это поле.

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

Длина циклического префикса, указанная как 'Normal' или 'Extended'. Это поле является необязательным.

Зависимости

Это поле применяется только при выборе конфигурации LTE путем указания NULRB поле.

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

Количество передающих антенн, NTX, указанное как 1, 2, или 4.

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

Общее число генерируемых подкадров, указанных как неотрицательное целое число.

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

Интервал между поднесущими восходящей линии связи NB-IoT, указанный как '3.75kHz' или '15kHz'. Для установки интервала между поднесущими 3,75 кГц укажите NBULSubcarrierSpacing как '3.75kHz'. Для установки интервала между поднесущими 15 кГц укажите NBULSubcarrierSpacing как '15kHz'.

Чтобы выполнить оценку канала для конфигурации NB-IoT, необходимо указать это поле. Чтобы указать конфигурацию LTE, пропустите это поле.

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

Общее число генерируемых слотов, указанное как неотрицательное целое число.

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

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

Конфигурация канала распространения, заданная как структура. Этот аргумент должен содержать все поля, необходимые для параметризации модели канала замирания, то есть для вызова lteFadingChannel функция.

Примечание

Перед выполнением канала, lteULPerfectChannelEstimate устанавливает SamplingRate внутреннее поле с частотой дискретизации формы сигнала временной области, переданного в lteFadingChannel функция фильтрации. Поэтому это channel ввод не требует SamplingRate поле. Если он включен, он не используется.

Число приемных антенн, NRX, указанное как положительное целое число.

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

Корреляция между антеннами UE и Evolved Node B (eNireB), заданная как одно из следующих значений:

  • 'Low' - Отсутствие корреляции между антеннами

  • 'Medium' - Уровень корреляции применим к тестам, определенным в TS 36.101 [1]

  • 'UplinkMedium' - Уровень корреляции применим к тестам, определенным в TS 36.104 [2]

  • 'High' - Сильная корреляция между антеннами

  • 'Custom' - Применить определяемые пользователем TxCorrelationMatrix и RxCorrelationMatrix

Типы данных: char | string

Нормализация номера передающей антенны, указанная как 'On' или 'Off'. При указании NormalizeTxAnts как 'On', lteULPerfectChannelEstimate нормализует выходные данные модели по 1/√NTX. Нормализация по количеству передающих антенн гарантирует, что на выходную мощность приемной антенны не влияет количество передающих антенн. При указании NormalizeTxAnts как 'Off', lteULPerfectChannelEstimate не выполняет нормализацию. Это поле является необязательным.

Типы данных: char | string

Модель профиля задержки, указанная как 'EPA', 'EVA', 'ETU', 'Custom', или 'Off'. Дополнительные сведения см. в разделе Модели каналов распространения.

Настройка DelayProfile кому 'Off' полностью отключает замирание и реализует статическую модель канала MIMO. В этом случае геометрия антенны соответствует MIMOCorrelation и NRxAnts поля и количество передающих антенн. Временная часть модели для каждой линии связи между передающей и приемной антеннами состоит из одного тракта с нулевой задержкой и постоянным единичным усилением.

Типы данных: char | string

Максимальная доплеровская частота, в Гц, заданная как неотрицательный скаляр.

Зависимости

Это поле применяется только при указании DelayProfile поле как значение, отличное от 'Off'.

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

Частота дискретизации входного сигнала, заданная как неотрицательный скаляр.

Зависимости

Это поле применяется только при указании DelayProfile поле как значение, отличное от 'Off'.

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

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

Зависимости

Это поле применяется только при указании DelayProfile поле как значение, отличное от 'Off'.

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

Число осцилляторов, используемых при моделировании пути замирания, задаваемое как мощность двух. Это поле является необязательным

Зависимости

Это поле применяется только при указании DelayProfile поле как значение, отличное от 'Off'.

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

Тип релейной модели замирания, указанный как 'GMEDS' или 'Dent'. Для моделирования релеевского замирания с использованием обобщенного метода точного доплеровского разброса (GMEDS), описанного в [4], укажите ModelType как 'GMEDS'. Для моделирования замирания Rayleigh с использованием модифицированной модели замирания Jakes, описанной в [3], укажите ModelType как 'Dent'. Это поле является необязательным.

Примечание

Определение ModelType как 'Dent' не рекомендуется.

Зависимости

Это поле применяется только при указании DelayProfile поле как значение, отличное от 'Off'.

Типы данных: char | string

Индикатор нормализации выходных данных модели, указанный как 'On' или 'Off'. Чтобы нормализовать выходной сигнал модели таким образом, чтобы средняя мощность была единицей, укажите NormalizePathGains как 'On'. Для возврата средней выходной мощности в виде суммы мощностей отводов профиля задержки укажите NormalizePathGains как 'Off'. Это поле является необязательным.

Зависимости

Это поле применяется только при указании DelayProfile поле как значение, отличное от 'Off'.

Типы данных: char | string

Инициализация фазы для синусоидальных компонентов модели, заданная как одно из следующих значений:

  • 'Random' - Случайная инициализация фаз в соответствии со значением, указанным в Seed область

  • Скаляр с действительными значениями - задание одного начального значения фаз всех компонентов в радианах

  • Массив N-by-L-by-NTX-by-NRX - явная инициализация фазы в радианах каждого компонента. В этом случае N - количество значений инициализации фазы на тракт, а L - количество трактов.

Примечание

  • При указании ModelType как 'GMEDS', N = 2 ×NTerms.

  • При указании ModelType как 'Dent', N = NTerms.

Типы данных: double | char | string

Начальное число генератора случайных чисел, указанное как действительный скаляр. Чтобы использовать случайное начальное число, укажите Seed как 0.

Примечание

Рекомендуются начальные значения в интервале [0, 231 - 1 - (K (K - 1 )/2)], где K = NTX × NRX и является произведением количества передающих и приемных антенн. Начальные значения за пределами этого интервала не гарантируют получение различных результатов.

Зависимости

Это поле применяется только при указании DelayProfile поле как значение, отличное от 'Off' и InitPhase поле как 'Random'.

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

Средние коэффициенты усиления дискретных путей в дБ, заданные как действительный вектор.

Зависимости

Это поле применяется только при указании DelayProfile поле как 'Custom'.

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

Задержки дискретных трактов в секундах, заданные как действительный вектор.

Зависимости

Это поле применяется только при указании DelayProfile поле как 'Custom'.

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

Корреляция между каждой из передающих антенн, заданная как NTX-by-NTX комплексная матрица.

Зависимости

Это поле применяется только при указании MIMOCorrelation поле как 'Custom'.

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

Корреляция между каждой из приемных антенн, заданная как матрица комплексных значений NRX-by-NRX.

Зависимости

Это поле применяется только при указании MIMOCorrelation поле как 'Custom'.

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

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

Смещение по времени в выборках, указанное как неотрицательное целое число. Временной сдвиг задается от начала выхода канала до расчетной точки начала демодуляции SC-FDMA. Задайте временной сдвиг, когда он известен, чтобы получить точную оценку канала, как видно синхронизированному приемнику. Используйте lteULFrameOffset функция для получения значения для offset.

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

Информация NPUSCH, указанная как структура. Для конфигурации NB-IoT можно задать дополнительные параметры для восходящего канала, указав поля для NB-IoT в chs. За исключением NBULSubcarrierSet поле, поля в chs применимы в том случае, если ue.NBULSubcarrierSpacing является '3.75kHz' или когда ue.NBULSubcarrierSpacing является '15kHz' и length(NBULSubcarrierSet) является 1.

Индексы восходящих поднесущих NB-IoT, заданные как вектор неотрицательных целых чисел в интервале [0, 11] или неотрицательное целое число в интервале [0, 47]. Индексы имеют нулевую форму. Использовать lteULPerfectChannelEstimate для однотонной конфигурации NB-IoT необходимо указать NBULSubcarrierSet как скаляр. Если не указать NBULSubcarrierSet, lteULPerfectChannelEstimate возвращает оценку для многотональной конфигурации NB-IoT по умолчанию. При указании ue.NBULSubcarrierSpacing как '15kHz'Это поле обязательно к заполнению.

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

Тип модуляции, указанный как 'BPSK' или 'QPSK'. Для двоичной фазовой манипуляции (BPSK) укажите Modulation как 'BPSK'. Для квадратурной фазовой манипуляции (QPSK) укажите Modulation как 'QPSK'.

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

Количество слотов на единицу ресурса (RU), указанное как положительное целое число. Использовать lteULPerfectChannelEstimate для однотонной конфигурации NB-IoT необходимо указать это поле.

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

Количество RU, указанное как положительное целое число. Использовать lteULPerfectChannelEstimate для однотонной конфигурации NB-IoT необходимо указать это поле.

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

Число повторений для кодового слова, определяемого как неотрицательное целое число. Использовать lteULPerfectChannelEstimate для однотонной конфигурации NB-IoT необходимо указать это поле.

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

Относительный индекс слота в пучке NPUSCH, заданный как неотрицательное целое число. Это поле определяет отсчитываемый от нуля относительный индекс временного интервала в пакете временных интервалов для передачи транспортного блока или бита управляющей информации. Это поле является необязательным.

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

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

свернуть все

Совершенная оценка канала, возвращаемая как массив комплексных значений NSC-by-NSYM-by-NRX-by-NTX, где NSC - количество поднесущих, а NSYM - количество символов SC-FDMA.

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

Ссылки

[1] 3GPP TS 36.101. «Пользовательское оборудование (UE) радиопередача и прием». Проект партнерства 3-го поколения; техническая спецификация на сеть радиодоступа группы; Усовершенствованный универсальный наземный радиодоступа (E-UTRA).

[2] 3GPP TS 36.104. «Базовая станция (BS) радиопередача и прием». Проект партнерства 3-го поколения; техническая спецификация на сеть радиодоступа группы; Усовершенствованный универсальный наземный радиодоступа (E-UTRA).

[3] Дент, П., Боттомли, Г. Э. и Крофт, Т. «Jakes Fading Model Revisited». Электронные письма. Том 29, номер 13, 1993, стр. 1162-1163.

[4] Пятцольд, М., Ван, С. и Хогстад, Б. О. «Два новых метода, основанных на сумме синусоидов, для эффективного генерирования множественных некоррелированных волн Рэлея». Транзакции IEEE по беспроводной связи. Том 8, номер 6, 2009, стр. 3122-3131.

Представлен в R2014a