lteACKDecode

Декодирование канала HARQ-ACK

Синтаксис

Описание

пример

out = lteACKDecode(chs,in) выполняет блоковое декодирование на мягких входных данных in, принятый, чтобы быть закодированным с помощью процедуры задал для HARQ-ACK в Разделе 5.2.2.6 из [1], для настройки передачи канала PUSCH chs. Декодируемый выход, out, вектор длины OACK, количество незакодированных битов HARQ-ACK передается.

Примечание

Если NBundled 0, TDD, дескремблирование ACK-NACK отключено.

Несколько кодовых комбинаций могут быть параметризованы двумя различными формами chs структура. Каждая кодовая комбинация может быть задана отдельными элементами массива 1 2 массив структур, или параметры кодовой комбинации могут быть объединены вместе в областях одного скаляра, или 1 на 1, структура. Любые значения скалярного поля применяются к обеим кодовым комбинациям и скалярному chs.NLayers общее количество. См. Параметризацию UL-SCH для получения дальнейшей информации.

Блоковое декодирование выполняется отдельно на каждой мягкой кодовой комбинации входных данных с помощью подхода наибольшего правдоподобия (ML), принимая тот in демодулировался и компенсировался, чтобы лучше всего восстановить первоначально переданные значения.

Декодер HARQ-ACK выполняет другой тип блокового декодирования в зависимости от количества незакодированных битов HARQ-ACK, которые будут восстановлены (OACK). Для OACK меньше чем 3 бита, декодер принимает, что биты закодированы с помощью процедуры, заданной в TS 36.212 [1], Раздел 5.2.2.6.

Для декодирования между 3 и 11 битами HARQ-ACK декодер принимает, что биты являются закодированным использованием блока процедуры, заданной в TS 36.212 [1], Раздел 5.2.2.6.4. Для большего, чем 11 битов декодер выполняет обратную процедуру, описанную в TS 36.212 [1], Раздел 5.2.2.6.5.

Примеры

свернуть все

Покажите блоковое декодирование 3 закодированных битов информации о HARQ-ACK.

Создайте вход и инициализируйте структуру канала. Закодируйте биты и превратите логические биты в мягкие данные, совместимые с проверкой отношения логарифмической правдоподобности. Используйте pskmod со смещением начальной фазы π выровнять отображение с книгой шифров LTE.

Выполните кодирование бита HARQ-ACK и модуляцию.

in = [1;0;1];
chs = struct('Modulation','QPSK','QdACK',2,'OACK',length(in));

encodedBits = lteACKEncode(chs,in);
encodedBits = pskmod(double(encodedBits),2,pi());

Передайте переданные закодированные биты через канал AWGN с отношением сигнал-шум на 20 дБ. Покажите scatterplot из шумного полученного HARQ-ACK softbits.

rxBits = awgn(encodedBits,20);
scatterplot(rxBits)

Декодируйте полученный softbits. Сравните декодируемые биты с входными битами, чтобы показать, что биты были восстановлены без ошибки.

decodedBits = lteACKDecode(chs,rxBits)
decodedBits = 3x1 logical array

   1
   0
   1

isequal(in,decodedBits)
ans = logical
   1

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

свернуть все

PUSCH-специфичная настройка передачи канала, заданная как структура или массив структур, который содержит следующие поля параметра.

Поле параметраТребуемый или дополнительныйЗначенияОписание
ModulationНеобходимый

'QPSK', '16QAM', '64QAM', или '256QAM'

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

OACKДополнительный

неотрицательное скалярное целое число, 0 (значение по умолчанию)

Количество незакодированных битов HARQ-ACK.

Декодер HARQ-ACK выполняет другой тип блокового декодирования в зависимости от количества незакодированных битов HARQ-ACK, которые будут восстановлены (OACK). Для OACK меньше чем 3 бита, декодер принимает, что биты закодированы с помощью процедуры, заданной в TS 36.212 [1], Раздел 5.2.2.6. Для декодирования между 3 и 11 битами HARQ-ACK декодер принимает, что биты являются закодированным использованием блока процедуры, заданной в TS 36.212 [1], Раздел 5.2.2.6.4. Для большего, чем 11 битов декодер выполняет обратную процедуру, описанную в TS 36.212 [1], Раздел 5.2.2.6.5.

NLayersДополнительный

1 (значение по умолчанию), 2, 3, 4

Количество слоев передачи.

NBundledДополнительный

0 (значение по умолчанию), 1, …, 9

Связывание HARQ-ACK TDD, скремблирующее индекс последовательности. Когда установлено в 0, функция отключает TDD скремблирование связывания HARQ-ACK. Поэтому это прочь по умолчанию.

Мягкие входные данные, заданные как числовой вектор. Входные данные приняты, чтобы быть закодированными с помощью процедуры, заданной для HARQ-ACK в TS 36.212 [1], Раздел 5.2.2.6.

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

свернуть все

Декодируемый канал HARQ-ACK выходной параметр, возвращенный как OACK- 1 вектор-столбец.

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

Ссылки

[1] 3GPP TS 36.212. “Развитый Универсальный Наземный Радио-доступ (к E-UTRA); Мультиплексирование и кодирование канала”. Проект Партнерства третьего поколения; Сеть радиодоступа Technical Specification Group. URL: https://www.3gpp.org.

Введенный в R2014a

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