nrTDLChannel

Отправьте сигнал через модель канала TDL

Описание

Система nrTDLChannel object™ отправляет входной сигнал через уровень ссылки мультивхода мультивыводится (MIMO) коснувшейся строки задержки (TDL), исчезающий канал, чтобы получить поврежденный каналом сигнал. Объект реализует следующие аспекты TR 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. Вызовите объект с аргументами, как будто это была функция.

Чтобы узнать больше, как Системные объекты работают, смотрите то, Что Системные объекты? MATLAB.

Создание

Синтаксис

tdl = nrTDLChannel
tdl = nrTDLChannel(Name,Value)

Описание

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

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

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

Свойства

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

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

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

Для получения дополнительной информации об изменении значений свойств смотрите Разработку системы в MATLAB Используя Системные объекты (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-фактор первого касания задержки профилирует в дБ, заданном как числовой скаляр. Значение по умолчанию соответствует 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-фактор для масштабирования в дБ, заданном в виде числа. Для типичных значений 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' — Для нисходящего канала см. приложение B.2.3.2 TS 36.101. Для восходящего канала см. приложение B.5.2 TS 36.104. Свойство TransmissionDirection управляет направлением передачи.

  • 'UplinkMedium' — Смотрите TS 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'.

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

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

Зависимости

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

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

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

Зависимости

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

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

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

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

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

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

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

Зависимости

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

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

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

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

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

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

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

Зависимости

Чтобы включить это свойство, установите 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 NP — Каждый путь имеет свое собственное отношение степени перекрестной поляризации.

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

Зависимости

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

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

Объединенная корреляция для канала, заданного как 2D матрица или трехмерный массив. Матрица решает, что продукт количества антенн передачи (N T) и количества получает антенны (N R).

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

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

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

    • Трехмерный массив размера (N TN R) (N TN R)-by-NP массив — где каждой матрицей размера (N TN R) (N TN R) является Эрмитова матрица с недиагональными свойствами элемента, как ранее описано. Каждый путь имеет свою собственную пространственную корреляционную матрицу.

Зависимости

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

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

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

Типы данных: логический

Смещение времени исчезающего процесса в секундах, заданных в виде числа.

Настраиваемый: да

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

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

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

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

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

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

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

Зависимости

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

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

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

Типы данных: логический

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

Синтаксис

signalOut = tdl(signalIn)
[signalOut,pathGains] = tdl(signalIn)
[signalOut,pathGains,sampleTimes] = tdl(signalIn)

Описание

пример

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

пример

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

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

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

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

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

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

  • N T является количеством антенн передачи.

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

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

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

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

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

  • N R является количеством, получают антенны.

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

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

Усиления пути к каналу MIMO процесса исчезновения, возвращенного как N S NP NT NR, объединяют матрицу, где:

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

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

  • N T является количеством антенн передачи.

  • N R является количеством, получают антенны.

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

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

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

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

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

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

release(obj)

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

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

Примеры

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

Отобразите спектр формы волны, полученный через мультивход/мультивывод Tapped Delay Line (TDL) (MIMO) модель канала от Раздела TR 38.901 7.7.2 использований Системного объекта nrTDLChannel.

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

v = 30.0;                    % UT 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;     % UT 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);
analyzer.Title = ['Received Signal Spectrum ' tdl.DelayProfile];
analyzer(rxWaveform);

Постройте усиления пути Коснувшейся строки задержки (TDL) single-input/single-output (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)');

Отобразитесь спектр формы волны, полученный через модель канала Коснувшейся строки задержки (TDL) с задержкой, профилируют TDL-D от Раздела TR 38.901 7.7.2 и 4 2 высокой корреляции перекрестные полярные антенны, как задано в приложении B.2.3A.3 TS 36.101.

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

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);

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

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

  • Коснитесь 1: Rician со средней степенью 0 дБ, K-фактор 10 дБ, и нулевая задержка.

  • Коснитесь 2: Рэлеевский со средней степенью-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 ГГц”. Проект Партнерства третьего поколения; Сеть радиодоступа Technical Specification Group.

[2] 3GPP TS 36.101. “Развитый Универсальный Наземный Радио-доступ (к E-UTRA); передача радио Оборудования пользователя (UE) и прием”. Проект Партнерства третьего поколения; Сеть радиодоступа Technical Specification Group.

[3] 3GPP TS 36.104. “Развитый Универсальный Наземный Радио-доступ (к E-UTRA); передача радио Базовой станции (BS) и прием”. Проект Партнерства третьего поколения; Сеть радиодоступа Technical Specification Group.

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

Смотрите также

Функции

Системные объекты

Введенный в R2018b

Для просмотра документации необходимо авторизоваться на сайте