swapTransmitAndReceive

Направление обратной ссылки связи в модели канала CDL

Синтаксис

Описание

пример

swapTransmitAndReceive(cdl) меняет направление ссылки в указанной модели канала кластерной линии задержки (CDL) путем замены ролей передающих и приемных антенн в канале. Замена приводит к модели обратного канала, но не изменяет замирания канала. Отправка сигналов через канал для обеих ссылок направлений (исходных и обратных) результаты в усилениях пути канала, которые отличаются только измененными передающими и приемными антеннами размерностей. Вызов функции снова возвращает канал в его исходное направление ссылки путем замены назад ролей передающих и приемных антенн.

Можно использовать эту функцию во время симуляции, чтобы смоделировать операцию дуплекса временного деления (TDD) путем отправки форм волны для каждого направления ссылки через канал с сохранением взаимности канала.

Функция меняет значения этих пар свойств входных cdl для отражения изменения направления ссылки.

Функция также переключает TransmitAndReceiveSwapped значение свойства входа cdl между true и false для отражения фактического состояния направления ссылки.

Примеры

свернуть все

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

Создайте объект строения поставщика услуг связи по умолчанию для передачи по нисходящей линии связи и по восходящей линии связи.

carrier = nrCarrierConfig;

Создайте и сконфигурируйте модель канала. Можно задать или модель канала CDL, или модель канала TDL.

channel = nrCDLChannel;                  % For TDL channel model, use nrTDLChannel 
channel.MaximumDopplerShift = 0;
ofdmInfo = nrOFDMInfo(carrier);
channel.SampleRate = ofdmInfo.SampleRate;

Создайте сигнал для нисходящей передачи.

channelinfo = info(channel);
txgridDL = nrResourceGrid(carrier,channelinfo.NumTransmitAntennas);
txDL = nrOFDMModulate(carrier,txgridDL);

Учитывайте максимальную задержку канала.

channelinfo = info(channel);
maxChDelay = ceil(max(channelinfo.PathDelays*channel.SampleRate)) + channelinfo.ChannelFilterDelay;
txDL = [txDL; zeros([maxChDelay size(txDL,2)])];

Отправьте сигнал нисходящего канала через модель канала.

[rxDL,pathGainsDL] = channel(txDL);

Перенастройте модель канала для передачи по восходящей линии связи путем замены ролей передающие и приемные антенны.

swapTransmitAndReceive(channel);

Создайте сигнал для передачи по восходящей линии связи.

channelInfoUL = info(channel);
txGridUL = nrResourceGrid(carrier,channelInfoUL.NumTransmitAntennas);
txUL = nrOFDMModulate(carrier,txGridUL);

Учитывайте максимальную задержку канала.

txUL = [txUL; zeros([maxChDelay size(txUL,2)])];

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

[rxUL,pathGainsUL] = channel(txUL);

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

isequal(pathGainsUL,permute(pathGainsDL,[1 2 4 3]))
ans = logical
   0

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

свернуть все

Модель канала CDL, заданная как nrCDLChannel Системный объект. The nrCDLChannel Объект реализует мультивход канал с обратной связью (MIMO), указанный в TR 38.901 Раздел 7.7.1.

Ссылки

[1] 3GPP TR 38.901. «Исследование модели канала для частот от 0,5 до 100 ГГц». 3rd Генерация Partnership Project; Группа технических спецификаций Радиосеть доступ.

Расширенные возможности

Генерация кода C/C + +
Сгенерируйте код C и C++ с помощью Coder™ MATLAB ®

.
Введенный в R2021a