exponenta event banner

nrTDLChannel

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

Описание

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

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

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

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

  • Раздел 7.7.6: K-фактор для моделей каналов LOS

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

  1. Создать nrTDLChannel и задайте его свойства.

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

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

Создание

Описание

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

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'. См. TR 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

Требуемая среднеквадратическая (среднеквадратическая) задержка разброса в секундах, заданная как числовой скаляр. Для примеров желательного расширения среднеквадратичной задержки, 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 относится к общему профилю задержки. В частности, коэффициент К после масштабирования равен 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. TransmissionDirection свойство управляет направлением передачи.

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

  • 'Custom'- 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 или матрицы 3-D.

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

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

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

    • 3-D массив размера NT-на-NT-на-NP, где каждая подматрица размера NT-на-NT является эрмитовой матрицей со свойствами элементов, как описано выше. Каждый тракт имеет собственную матрицу корреляции передачи.

Зависимости

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

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

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

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

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

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

    • 3-D массив размера NR-на-NR-на-NP, где каждая подматрица размера NR-на-NR является эрмитовой матрицей со свойствами элементов, как описано выше. Каждый тракт имеет собственную матрицу корреляции приема.

Зависимости

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

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

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

Зависимости

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

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

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

Зависимости

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

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

Коэффициент мощности кросс-поляризации в дБ, заданный как числовой скаляр или вектор строки. Это свойство соответствует соотношению между вертикальными поляризациями (PVV) и вертикальными поляризациями (PVH), определенными для кластерных моделей линий задержки (CDL) в TR 38.901, раздел 7.7.1.

  • Если канал является частотно-плоским (PathDelays является скаляром), укажите XPR как скаляр.

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

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

    • Вектор строки размера 1-by-NP - каждый тракт имеет собственное отношение мощности кросс-поляризации.

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

Зависимости

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

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

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

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

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

    • 2-D Эрмитовская матрица размера (NT NR) -by- (NT NR) со свойствами элементов вне диагонали, как описано ранее. Каждый тракт имеет одинаковую матрицу пространственной корреляции.

    • 3D множество размера (NT НОМЕР) (NT НОМЕР)-by-NP множество - где каждая матрица размера (NT НОМЕР) (NT ⨉ НОМЕР) является матрицей 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 функция инициализирует поток случайных чисел mt19937ar.

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

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

Примечание

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

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

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

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

Направление обратного канала, возвращаемое как одно из этих значений.

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

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

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

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

Описание

пример

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

пример

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

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

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

развернуть все

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

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

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

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

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

развернуть все

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

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

  • NR - количество приемных антенн.

Тип данных выходного сигнала имеет ту же точность, что и тип данных входного сигнала.

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

Усиление тракта канала MIMO процесса замирания, возвращаемое в виде комплексной матрицы NS-by-NP-by-NT-by-NR, где:

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

  • NP - количество трактов, определяемое длиной PathDelays имущество tdl.

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

  • NR - количество приемных антенн.

Тип данных усиления тракта имеет ту же точность, что и тип данных входного сигнала.

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

Время выборки моментальных снимков канала усиления тракта, возвращаемое в виде вектора NS-by-1 столбца вещественных чисел. NS является первым измерением pathGains что соответствует количеству выборок.

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

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

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

release(obj)

развернуть все

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

Примеры

свернуть все

Отображение спектра формы сигнала, принятого через модель канала с несколькими входами/многими выходами (MIMO) с использованием TR 38.901, раздел 7.7.2 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 из TR 38.901 раздел 7.7.2. Установите максимальный доплеровский сдвиг на 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 из TR 38.901, раздел 7.7.2.

Сконфигурируйте 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) из TR 38.901, раздел 7.7.2, с настраиваемым профилем задержки.

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

  • Первое касание: Rician со средней мощностью 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 ГГц». Проект партнерства 3-го поколения; Техническая спецификация на сеть радиодоступа группы.

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

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

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

.
Представлен в R2018b