nrTDLChannel

Передайте сигнал через модель канала TDL

Описание

The nrTDLChannel Система object™ отправляет входной сигнал через канал обратной линии задержки (TDL) с мультивходами с несколькими выходами (MIMO) для получения сигнала с ослабленным каналом. Объект реализует следующие аспекты TR 38.901 [1]:

  • Раздел 7.7.2: Модели TDL

  • Раздел 7.7.3: Масштабирование задержек

  • Раздел 7.7.5.2 Расширение TDL: Применение матрицы корреляции

  • Раздел 7.7.6: Коэффициент K для моделей канала LOS

Для передачи сигнала через модель канала MIMO TDL:

  1. Создайте nrTDLChannel Объекту и установите его свойства.

  2. Вызывайте объект с аргументами, как будто это функция.

Дополнительные сведения о работе системных объектов см. в разделе «Что такое системные объекты?».

Создание

Описание

tdl = nrTDLChannel создает канал MIMO Системного объекта TDL.

tdl = nrTDLChannel(Name,Value) создает объект со свойствами, установленными при помощи одной или нескольких пар "имя-значение". Заключайте имя свойства в кавычки с указанием заданного значения. Неопределенные свойства берут значения по умолчанию.

Пример: tdl = nrTDLChannel('DelayProfile','TDL-D','DelaySpread',2e-6) создает модель канала TDL с профилем задержки TDL-D и расширением задержки 2 микросекунды.

Свойства

расширить все

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

Если свойство настраивается, можно изменить его значение в любой момент.

Для получения дополнительной информации об изменении значений свойств смотрите Разработку системы в MATLAB Использование Системных объектов.

Конфигурируемые свойства канала

Профиль задержки TDL, заданный как один из 'TDL-A', 'TDL-B', 'TDL-C', 'TDL-D', 'TDL-E', или 'Custom'. См. ТР 38.901 раздел 7.7.2, таблицы 7.7.2-1 - 7.7.2-5.

Когда вы устанавливаете это свойство на 'Custom', сконфигурируйте профиль задержки с помощью свойств PathDelays, AveragePathGains, FadingDistribution, и KFactorFirstTap.

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

Дискретные задержки пути в секундах, заданные в виде числа или вектора-строки. AveragePathGains и PathDelays должен иметь тот же размер.

Зависимости

Чтобы включить это свойство, задайте DelayProfile на 'Custom'.

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

Среднее увеличение пути в дБ, заданное в виде числа или вектора-строки. AveragePathGains и PathDelays должен иметь тот же размер.

Зависимости

Чтобы включить это свойство, задайте DelayProfile на 'Custom'.

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

Статистическое распределение процессов с замираниями, заданное как 'Rayleigh' или 'Rician'.

Зависимости

Чтобы включить это свойство, задайте DelayProfile на 'Custom'.

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

K-коэффициент первого отвода профиля задержки в дБ, заданный как числовой скаляр. Значение по умолчанию соответствует К-фактору первого крана TDL-D, как определено в TR 38.901 Раздел 7.7.2, таблица 7.7.2-4.

Зависимости

Чтобы включить это свойство, задайте DelayProfile на 'Custom' и FadingDistribution на 'Rician'.

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

Желаемое среднее значение квадратной (RMS) задержки в секундах, заданное как числовой скаляр. Для примеров желаемых спредов задержки RMS, DSdesired, см. TR 38.901 раздел 7.7.3 и таблицы 7.7.3-1 и 7.7.3-2.

Зависимости

Чтобы включить это свойство, задайте DelayProfile на 'TDL-A', 'TDL-B', 'TDL-C', 'TDL-D', или 'TDL-E'. Это свойство не применяется к пользовательскому профилю задержки.

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

Максимальный доплеровский сдвиг в Гц, заданный как неотрицательный числовой скаляр. Это свойство применяется ко всем канальным путям. Когда максимальный сдвиг Доплера установлен в 0, канал остается статическим для всего входа. Чтобы сгенерировать реализацию нового канала, сбросьте объект, вызвав reset функция.

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

Масштабирование K-фактора, заданное как false или true. Когда установлено значение true, а KFactor свойство задает требуемый K-коэффициент, и объект применяет масштабирование K-фактора, как описано в TR 38.901 Раздел 7.7.6.

Примечание

Масштабирование K-фактора изменяет как задержки пути, так и степеней пути.

Зависимости

Чтобы включить это свойство, задайте DelayProfile на 'TDL-D' или 'TDL-E'.

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

Желаемый K-коэффициент для масштабирования в дБ, заданный как числовой скаляр. Типичные значения коэффициента К приведены в TR 38.901, раздел 7.7.6 и таблица 7.5-6.

Примечание

  • Масштабирование K-фактора изменяет как задержки пути, так и степеней пути.

  • K-factor применяется к общему профилю задержки. В частности, коэффициент K после масштабирования Kmodel как описано в TR 38.901 Раздел 7.7.6. Kmodel - отношение степени первого пути LOS к общей степени всех путей Релея, включая часть Релея первого пути.

Зависимости

Чтобы включить это свойство, задайте KFactorScaling на true.

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

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

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

Корреляция между антеннами пользовательского оборудования (UE) и базовой станции (BS), заданная в качестве одного из следующих значений:

  • 'Low' или 'High' - Применяется как к восходящему, так и к нисходящему каналам. 'Low' эквивалентно отсутствию корреляции между антеннами.

  • 'Medium' или 'Medium-A' - нисходящий канал см. в TS 36.101 Приложение B.2.3.2. Для восходящей линии связи см. TS 36.104 Приложение B.5.2. The TransmissionDirection свойство управляет направлением передачи.

  • 'UplinkMedium' - См. ТС 36.104, приложение B.5.2.

  • 'Custom' - The ReceiveCorrelationMatrix свойство задает корреляцию между антеннами UE и TransmitCorrelationMatrix свойство задает корреляцию между антеннами BS. См. TR 38.901 Раздел 7.7.5.2.

Для получения дополнительной информации о корреляции между UE и BS-антеннами, смотрите TS 36.101 [2] и TS 36.104 [3]

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

Расположение поляризации антенны, заданное как 'Co-Polar', 'Cross-Polar', 'Custom'.

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

Направление передачи, заданное как 'Downlink' или 'Uplink'.

Зависимости

Чтобы включить это свойство, задайте MIMOCorrelation на 'Low', 'Medium', 'Medium-A', 'UplinkMedium', или 'High'.

Примечание

Это свойство описывает направление передачи, соответствующее состоянию канала, в котором роль передающих и приемных антенн не заменяется. Если антенны заменены, противоположное направление передачи применяется к этому свойству. Чтобы определить текущее направление ссылки, смотрите TransmitAndReceiveSwapped значение свойства.

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

Количество передающих антенн, заданное как положительное целое число.

Зависимости

Чтобы включить это свойство, задайте MIMOCorrelation на 'Low', 'Medium', 'Medium-A', 'UplinkMedium', или 'High', или установите оба MIMOCorrelation и Polarization на 'Custom'.

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

Количество приемных антенн, заданное как положительное целое число.

Зависимости

Чтобы включить это свойство, задайте MIMOCorrelation на 'Low', 'Medium', 'Medium-A', 'UplinkMedium', или 'High'.

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

Пространственная корреляция передатчика, заданная как 2-D матрица или трехмерный массив.

  • Если канал плоский по частоте (PathDelays является скаляром), задайте TransmitCorrelationMatrix как 2-D эрмитова матрица размера N T-by- N T. N T - количество передающих антенн. Основные диагональные элементы должны быть все таковые, а недиагональные элементы должны иметь величину, меньшую или равную единице.

  • Если канал избирательен по частоте (PathDelays - вектор-строка длины N P), задайте TransmitCorrelationMatrix как один из следующих массивов:

    • 2-D эрмитову матрицу размера N T-by- N T со свойствами элемента, как описано ранее. Каждый путь имеет одну и ту же матрицу корреляции передачи.

    • трехмерный массив размера N T-by- N T-by- N P, где каждая подматрица размера N T-by- N T является эрмитовой матрицей со свойствами элемента, как описано выше. Каждый путь имеет свою собственную матрицу корреляции передачи.

Зависимости

Чтобы включить это свойство, задайте MIMOCorrelation на 'Custom' и Polarization к любому из 'Co-Polar' или 'Cross-Polar'.

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

Пространственная корреляция приемника, заданная как матрица 2-D или трехмерный массив.

  • Если канал плоский по частоте (PathDelays является скаляром), задайте ReceiveCorrelationMatrix как 2-D эрмитова матрица размера N R-by- N R. N R является количеством приемных антенн. Основные диагональные элементы должны быть все таковые, а недиагональные элементы должны иметь величину, меньшую или равную единице.

  • Если канал избирательен по частоте (PathDelays - вектор-строка длины N P), задайте ReceiveCorrelationMatrix как один из следующих массивов:

    • 2-D эрмитову матрицу размера N R-by- N R со свойствами элемента, как описано ранее. Каждый путь имеет одну и ту же матрицу корреляции приема.

    • трехмерный массив размера N R-by- N R-by- N P, где каждая подматрица размера N R-by- N R является эрмитовой матрицей со свойствами элемента, как описано выше. Каждый путь имеет свою собственную матрицу корреляции приема.

Зависимости

Чтобы включить это свойство, задайте MIMOCorrelation на 'Custom' и Polarization к любому из 'Co-Polar' или 'Cross-Polar'.

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

Передайте углы наклона поляризации в степенях, заданные как вектор-строка.

Зависимости

Чтобы включить это свойство, задайте MIMOCorrelation на 'Custom' и Polarization на 'Cross-Polar'.

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

Получите углы наклона поляризации в степенях, заданные как вектор-строка.

Зависимости

Чтобы включить это свойство, задайте MIMOCorrelation на 'Custom' и Polarization на 'Cross-Polar'.

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

Перекрестная поляризация коэффициент степени в дБ, заданный как числовой скаляр или вектор-строка. Это свойство соответствует отношению между вертикальной к вертикальной (P VV) и вертикальной к горизонтальной (P VH) поляризациями, заданными для моделей кластеризованной линии задержки (CDL) в TR 38,901 секции 7,7,1.

  • Если канал плоский по частоте (PathDelays является скаляром), задайте XPR как скаляр.

  • Если канал избирательен по частоте (PathDelays - вектор-строка длины N P), задайте XPR как одно из следующих значений:

    • Скаляр - Каждый путь имеет одинаковое отношение степени перекрестной поляризации.

    • Вектор-строка размера 1-by - N P - Каждый путь имеет свой собственный коэффициент перекрестной поляризации мощности.

Значение по умолчанию соответствует кластерной перекрестной поляризации коэффициенту степени CDL-A, определенному в TR 38.901 Раздел 7.7.1, Таблица 7.7.1-1.

Зависимости

Чтобы включить это свойство, задайте MIMOCorrelation на 'Custom' и Polarization на 'Cross-Polar'.

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

Комбинированная корреляция для канала, заданная как 2-D матрица или трехмерный массив. Матрица определяет произведение количества передающих антенн (N T) и количества приемных антенн (N R).

  • Если канал плоский по частоте (PathDelays является скаляром), задайте SpatialCorrelationMatrix как 2-я матрица Hermitian размера (N T  <reservedrangesplaceholder2> R) (N величина T  <reservedrangesplaceholder0> R).The любого недиагонального элемента должно быть не больше, чем геометрические средние из двух соответствующих диагональных элементов.

  • Если канал избирательен по частоте (PathDelays - вектор-строка длины N P), задайте SpatialCorrelationMatrix как один из следующих массивов:

    • 2-я матрица Hermitian размера (N T  <reservedrangesplaceholder2> R) (N T  <reservedrangesplaceholder0> R) с недиагональными свойствами элемента, как ранее описано. Каждый путь имеет одну и ту же матрицу пространственной корреляции.

    • Трехмерный массив размера (N T  <reservedrangesplaceholder7> R) (N T  <reservedrangesplaceholder5> R) массивом <reservedrangesplaceholder4> P - где каждая матрица размера (N T  <reservedrangesplaceholder2> R) (N T  <reservedrangesplaceholder0> R) матрица Hermitian с недиагональными свойствами элемента, как ранее описано. Каждый путь имеет свою собственную пространственную матрицу корреляции.

Зависимости

Чтобы включить это свойство, задайте MIMOCorrelation на 'Custom' и Polarization на 'Custom'.

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

Нормализуйте коэффициент усиления пути, заданный как true или false. Используйте это свойство для нормализации процессов затухания. Когда для этого свойства задано значение trueобщая степень усилений пути, усредненная по времени, составляет 0 дБ. Когда для этого свойства задано значение false, усиления пути не нормированы. Средние степени усиления пути задаются выбранным профилем задержки или если DelayProfile установлено в 'Custom', по AveragePathGains свойство.

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

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

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

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

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

Источник потока случайных чисел, заданный как один из следующих:

  • 'mt19937ar with seed' - Объект использует алгоритм mt19937ar для нормально распределенной генерации случайных чисел. Вызов reset функция сбрасывает фильтры и повторно инициализирует поток случайных чисел на значение Seed свойство.

  • 'Global stream' - Объект использует текущий глобальный поток случайных чисел для нормально распределенной генерации случайных чисел. Вызов reset функция сбрасывает только фильтры.

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

Зависимости

Чтобы включить это свойство, задайте RandomStream на 'mt19937ar with seed'. При вызове reset функция seed повторно инициализирует поток случайных чисел mt19937ar.

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

Нормализуйте выходы канала, заданные как true или false. Когда для этого свойства задано значение true, выходы канала нормированы количеством приемных антенных элементов.

Примечание

Когда вы вызываете swapTransmitAndReceive функция для изменения роли передающих и приемных антенн в канале, функция также меняет NumTransmitAntennas и NumReceiveAntennas свойства. Следовательно, нормализация всегда по количеству приемных антенных элементов, заданным NumReceiveAntennas свойство.

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

Неконфигурируемые свойства канала

Это свойство доступно только для чтения.

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

  • false - роль передающих и приемных антенн в модели канала соответствует исходному направлению канала ссылки. Вызов swapTransmitAndReceive функция на nrTDLChannel объект меняет направление ссылки на противоположное и переключает это значение свойства из false на true.

  • true - Роль передающих и приемных антенн в модели канала заменяется. Вызов swapTransmitAndReceive функция на nrTDLChannel объект восстанавливает исходное направление ссылки канала и переключает это значение свойства из true на false.

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

Использование

Описание

пример

signalOut = tdl(signalIn) отправляет входной сигнал через канал MIMO TDL с замираниями и возвращает сигнал нарушения канала.

пример

[signalOut,pathGains] = tdl(signalIn) также возвращает коэффициент усиления пути канала MIMO базового процесса затухания.

[signalOut,pathGains,sampleTimes] = tdl(signalIn) также возвращает шаги расчета моментальных снимков канала для коэффициентов усиления пути.

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

расширить все

Входной сигнал, заданный как комплексный скаляр, вектор или N S-by- N T-матрица, где:

  • N S - количество выборок.

  • N T - количество передающих антенн.

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

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

расширить все

Выходной сигнал, возвращенный как комплексный скаляр, вектор или N S-by N R матрица, где:

  • N S - количество выборок.

  • N R является количеством приемных антенн.

Тип данных выходного сигнала такой же точности, как и тип данных входного сигнала.

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

Коэффициент усиления канала MIMO процесса затухания, возвращаемый как N S-by N P-by N T-by N R комплексная матрица, где:

  • N S - количество выборок.

  • N P - количество путей, заданное длиной PathDelays свойство tdl.

  • N T - количество передающих антенн.

  • N R является количеством приемных антенн.

Тип данных усиления пути совпадает с типом данных входного сигнала.

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

Шаги расчета моментальных снимков канала усиления пути, возвращаемый как N вектор-столбец S-на-1 действительных чисел. N S является первой размерностью pathGains что соответствует количеству выборок.

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

Функции объекта

Чтобы использовать функцию объекта, задайте системный объект в качестве первого входного параметра. Например, чтобы освободить системные ресурсы системного объекта с именем obj, используйте следующий синтаксис:

release(obj)

расширить все

infoПолучите характеристическую информацию о канале MIMO канального уровня с замираниями
getPathFilters Получите импульсную характеристику фильтра пути для MIMO-канала канального уровня с замираниями
swapTransmitAndReceiveНаправление обратной ссылки связи в модели канала TDL
stepЗапуск алгоритма системного объекта
cloneСоздайте повторяющийся системный объект
isLockedОпределите, используется ли системный объект
releaseОтпустите ресурсы и допустите изменения в значениях свойств системного объекта и входных характеристиках
resetСброс внутренних состояний Системного объекта

Примеры

свернуть все

Отобразите спектр формы волны, принятый через модель канала с линией задержкой (TDL) с несколькими входами/несколькими выходами (MIMO) из раздела 7.7.2 TR 38.901 с помощью nrTDLChannel Системный объект.

Определите структуру строения канала с помощью nrTDLChannel Системный объект. Используйте профиль задержки TDL-C из TR 38.901 Раздел 7.7.2, разброс задержки 300 нс и скорость UE 30 км/ч:

v = 30.0;                    % UE velocity in km/h
fc = 4e9;                    % carrier frequency in Hz
c = physconst('lightspeed'); % speed of light in m/s
fd = (v*1000/3600)/c*fc;     % UE max Doppler frequency in Hz

tdl = nrTDLChannel;
tdl.DelayProfile = 'TDL-C';
tdl.DelaySpread = 300e-9;
tdl.MaximumDopplerShift = fd;

Создайте случайную форму волны длительностью 1 субкадр с 1 антенной.

SR = 30.72e6;
T = SR * 1e-3;
tdl.SampleRate = SR;
tdlinfo = info(tdl);
Nt = tdlinfo.NumTransmitAntennas;
 
txWaveform = complex(randn(T,Nt),randn(T,Nt));

Передайте сигнал входа через канал.

rxWaveform = tdl(txWaveform);

Постройте график принятого спектра формы волны.

analyzer = dsp.SpectrumAnalyzer('SampleRate',tdl.SampleRate,...
    'AveragingMethod','Exponential','ForgettingFactor',0.99 );
analyzer.Title = ['Received Signal Spectrum ' tdl.DelayProfile];
analyzer(rxWaveform);

Figure Spectrum Analyzer contains an axes and other objects of type uiflowcontainer, uimenu, uitoolbar. The axes with title Received Signal Spectrum TDL-C contains 2 objects of type line. These objects represent Channel 1, Channel 2.

Постройте график коэффициентов усиления пути задержки (TDL) канала с одним входом/одним выходом (SISO) с помощью nrTDLChannel Системный объект.

Сконфигурируйте канал с профилем задержки TDL-E из раздела 7.7.2 TR 38.901. Установите максимальное значение доплеровского сдвига 70 Гц и включите выход усиления пути.

tdl = nrTDLChannel;
tdl.SampleRate = 500e3;
tdl.MaximumDopplerShift = 70;
tdl.DelayProfile = 'TDL-E';

Сконфигурируйте передающие и приемные антенны для операции SISO.

tdl.NumTransmitAntennas = 1;
tdl.NumReceiveAntennas = 1;

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

in = zeros(1000,tdl.NumTransmitAntennas);

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

[~, pathGains] = tdl(in);
mesh(10*log10(abs(pathGains)));
view(26,17); xlabel('Channel Path');
ylabel('Sample (time)'); zlabel('Magnitude (dB)');

Figure contains an axes. The axes contains an object of type surface.

Отображение спектра формы волны, полученного через модель канала линии задержки (TDL), используя профиль задержки TDL-D из раздела 7.7.2 TR 38.901.

Сконфигурируйте высококорреляционные кросс-полярные антенны 4 на 2, как указано в TS 36.101 Приложение B.2.3A.3.

tdl = nrTDLChannel;
tdl.NumTransmitAntennas = 4;
tdl.DelayProfile = 'TDL-D';
tdl.DelaySpread = 10e-9;
tdl.KFactorScaling = true;
tdl.KFactor = 7.0;
tdl.MIMOCorrelation = 'High';
tdl.Polarization = 'Cross-Polar';

Создайте случайную форму волны длительностью 1 субкадр с 4 антеннами.

SR = 1.92e6;
T = SR * 1e-3;
tdl.SampleRate = SR;
tdlinfo = info(tdl);
Nt = tdlinfo.NumTransmitAntennas;
 
txWaveform = complex(randn(T,Nt),randn(T,Nt));

Передайте сигнал входа через канал.

rxWaveform = tdl(txWaveform);

Постройте график принятого спектра формы волны.

analyzer = dsp.SpectrumAnalyzer('SampleRate',tdl.SampleRate);
analyzer.Title = ['Received Signal Spectrum ' tdl.DelayProfile];
analyzer(rxWaveform);

Figure Spectrum Analyzer contains an axes and other objects of type uiflowcontainer, uimenu, uitoolbar. The axes with title Received Signal Spectrum TDL-D contains 2 objects of type line. These objects represent Channel 1, Channel 2.

Передайте форму волны через модель линии задержки (TDL) из раздела 7.7.2 TR 38.901 с настроенным профилем задержки.

Определите структуру строения канала с помощью nrTDLChannel Системный объект. Настройте профиль задержки двумя касаниями.

  • Первый тап: Райс со средней степенью 0 дБ, K-коэффициент 10 дБ и нулевой задержкой.

  • Второй тап: Релей со средней степенью -5 дБ и 45 нс задержки пути с использованием TDL-D.

tdl = nrTDLChannel;
tdl.NumTransmitAntennas = 1;
tdl.DelayProfile = 'Custom';
tdl.FadingDistribution = 'Rician';
tdl.KFactorFirstTap = 10.0;
tdl.PathDelays = [0.0 45e-9];
tdl.AveragePathGains = [0.0 -5.0];

Создайте случайную форму волны длительностью 1 субкадр с 1 антенной.

SR = 30.72e6;
T = SR * 1e-3;
tdl.SampleRate = SR;
tdlinfo = info(tdl);
Nt = tdlinfo.NumTransmitAntennas;
 
txWaveform = complex(randn(T,Nt),randn(T,Nt));

Передайте сигнал входа через канал.

rxWaveform = tdl(txWaveform);

Ссылки

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

[2] 3GPP TS 36.101. "Evolved Universal Terrestrial Radio Access (E-UTRA); Пользовательское оборудование (UE) радиопередача и прием ". 3-ья Генерация Партнерский проект; Группа технических спецификаций Радиосеть доступ.

[3] 3GPP TS 36.104. "Evolved Universal Terrestrial Radio Access (E-UTRA); радиопередача и прием базовой станции (BS). "3-ья Генерация партнерский проект; Группа технических спецификаций Радиосеть доступ.

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

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