exponenta event banner

lteRateMatchTurbo

Согласование турбо-скорости

Описание

пример

out = lteRateMatchTurbo(in,outlen,rv) выполняет согласование скорости входных данных, in, для создания выходного вектора, out, длины outlen. Входные данные могут быть вектором или массивом ячеек. Эта функция включает в себя этапы перемежения субблоков, сбора битов и выбора битов и отсечения, определенного для турбокодированных данных. Для получения дополнительной информации см. TS 36.212 [1], раздел 5.1.4.1.

Входные данные могут быть одним вектором или массивом ячеек векторов, предполагаемыми кодовыми блоками. В случае массива ячеек каждый вектор согласовывается по скорости отдельно, и результаты объединяются в один выходной вектор, out. Длина каждого непустого входного вектора должна быть целочисленной кратной 3. Параметр rv управляет версией избыточности выходных данных. Этап выбора битов предполагает передачу QPSK, отображенную на один уровень. Это также предполагает отсутствие ограничений на количество мягких битов, как в транспортном канале UL-SCH восходящей линии связи.

out = lteRateMatchTurbo(in,outlen,rv,chs) позволяет осуществлять дополнительное управление этапом выбора битов посредством выбора параметров для размера мягкого буфера и конфигурации физического канала в chs структура ввода.

Примеры

свернуть все

Скорость соответствует входному вектору 132 бит до длины 100 с параметром RV, установленным в 0.

codedBlklen = 132;
invec = ones(codedBlklen,1);
outlen = 100;
rv = 0;
rmatched = lteRateMatchTurbo(invec,outlen,rv);
size(rmatched)
ans = 1×2

   100     1

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

свернуть все

Входные данные, определенные как один вектор или клеточный массив векторов, предположительно являются кодовыми блоками. В случае массива ячеек каждый вектор согласовывается по скорости отдельно, и результаты объединяются в один выходной вектор, out. Длина каждого непустого входного вектора должна быть целочисленной кратной 3.

Пример: ones(132,1)

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

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

Пример: 3

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

Управление версиями избыточности, указанное как 0, 1, 2 или 3.

Пример: 1

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

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

Для нисходящих турбокодированных транспортных каналов можно управлять размерами мягкого буфера, включая NIR или комбинированный набор NSoftbits, TxScheme, и DuplexMode. Если DuplexMode является 'TDD', также указать TDDConfig. Если включено, NIR, имеет приоритет при управлении размерами мягкого буфера. Когда ни один из этих необязательных chs поля (NIR или аппарата, включая NSoftbits) присутствуют, функция принимает турбокодированный транспортный канал восходящей линии связи и не устанавливает ограничения на количество мягких битов.

chs может содержать следующие поля.

Схема модуляции, указанная как 'QPSK', '16QAM', '64QAM', '256QAM', или '1024QAM'.

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

Число уровней передачи для транспортного блока, указанное как положительное целое число в интервале [1, 8]. Необязательно, если TxScheme имеет значение 'Port0', 'TxDiversity', или 'Port5'.

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

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

Схема передачиОписание
'Port0'Одноантенный порт, порт 0
'TxDiversity'Разнесение передачи
'CDD'Схема разнесения циклической задержки с большой задержкой
'SpatialMux'Пространственное мультиплексирование с замкнутым контуром
'MultiUser'Многопользовательский MIMO
'Port5'Одноантенный порт, порт 5
'Port7-8'Одноантенный порт, порт 7, когда NLayers  = 1. Двухуровневая передача, порты 7 и 8, когда NLayers = 2.
'Port8'Одноантенный порт, порт 8
'Port7-14'До восьми уровней передачи, порты 7-14

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

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

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

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

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

Дуплексный режим, указанный как 'FDD' или 'TDD'.

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

Конфигурация восходящей или нисходящей линии связи, заданная как неотрицательное скалярное целое число в интервале [0, 6]. Необязательно. Требуется только в том случае, если DuplexMode имеет значение 'TDD'.

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

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

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

свернуть все

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

Типы данных: double | uint8 | uint16 | uint32 | uint64 | int8 | int16 | int32 | int64

Ссылки

[1] 3GPP TS 36.212. "Развитый универсальный наземный радиодоступа (E-UTRA); мультиплексирование и канальное кодирование. "Проект партнерства 3-го поколения; Техническая спецификация на сеть радиодоступа группы. URL: https://www.3gpp.org.

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