Декодирование PSSCH
[
возвращает вектор из отношения логарифмической правдоподобности (LLR) мягкие биты и промежуточный QPSK или 16QAM символы модуляции для заданной структуры настроек UE и модулируемые символы PSSCH. softbits
,symbols
]
= ltePSSCHDecode(ue
,sym
)
Декодер PSSCH выполняет инверсию ltePSSCH
функциональная обработка, как задано в TS 36.211 [1], Раздел 9.3. ltePSSCHDecode
обработка включает SC-FDMA, преобразовывают deprecoding, демодуляцию символа и PSSCH-специфичное дескремблирование. Для получения дополнительной информации смотрите Физический Sidelink Разделяемое Декодирование Канала.
Демодулируйте символы PSSCH плюс шум для кодовой комбинации SL-SCH, созданной путем кодирования вектора информационных битов. Постройте шумные символы RE, символы до демодуляции QPSK и получившиеся мягкие биты LLR.
Создайте структуру настроек UE
Задайте нормальную циклическую префиксную и 16-QAM модуляцию.
ue = struct('CyclicPrefixSL','Normal'); ue.RV = 0; ue.Modulation = '16QAM'; ue.NSAID = 255; ue.NSubframePSSCH = 0;
Сгенерируйте символы, чтобы восстановиться
Задайте длину кодовой комбинации, чтобы использовать для SL-SCH. Выберите длину, которая является кратной 12 символам для нормального циклического префикса и имеет 4 бита за символ для 16-QAM модуляции. Выберите стандартное количество блоков ресурса, такой как 10.
Создайте кодовую комбинацию SL-SCH.
Создайте символы PSSCH и добавьте шум.
codewordlength = 5760; % (12 symbols)(4 bps)(12 REperRB)(10 PRB)
cw = lteSLSCH(ue,codewordlength,ones(100,1));
sym = ltePSSCH(ue,cw);
rxsym = sym + 0.1*randn(size(sym));
Декодируйте полученные символы PSSCH
Восстановите мягкие биты, представляющие переданную кодовую комбинацию SL-SCH. Сравните мягкие биты с переданной кодовой комбинацией.
[rxcw,rxmodsym] = ltePSSCHDecode(ue,rxsym); isequal(cw,rxcw>0)
ans = logical
0
Используя случайный шумовой seed и уровень шума, добавляемого иногда, приводит к декодированию ошибок. Если сравнение возвращается '1' не было никаких ошибок декодирования. Если сравнение возвращается '0', там декодировали ошибки.
Постройте полученные и восстановленные сигналы.
subplot(2,2,1) plot(rxsym,'o') title('PSSCH Encoded Symbols + Noise') subplot(2,2,2) plot(rxmodsym,'o') title('Decoded Symbols') subplot(2,2,[3,4]) plot(rxcw) title('Decoded Soft Bits')
ue
— Настройки оборудования пользователяНастройки оборудования пользователя в виде структуры параметра, содержащей эти поля:
SidelinkMode
— Режим Sidelink'D2D'
(значение по умолчанию) | 'V2X'
| дополнительныйРежим Sidelink в виде 'D2D'
или 'V2X'
.
Типы данных: char |
string
CyclicPrefixSL
— Длина циклического префикса'Normal'
(значение по умолчанию) | 'Extended'
| дополнительныйДлина циклического префикса в виде 'Normal'
или 'Extended'
.
Типы данных: char |
string
Modulation
— Тип модуляции'QPSK'
| '16QAM'
Тип модуляции в виде 'QPSK'
или '16QAM'
.
Типы данных: char |
string
NSAID
— Целевая идентичность группы SidelinkЦелевая идентичность группы Sidelink в виде целочисленного скаляра от 0 до 255. ()
NSAID
более низкие 8 битов полного 24-битного целевого ID группы Слоя 2 ProSe. NSAID
и NSubframePSSCH
управляйте значением борющейся последовательности в начале каждого подкадра. NSAID
только требуется для D2D sidelink.
Типы данных: double
NXID
— Идентичность скремблирования V2XИдентичность скремблирования V2X в виде целочисленного скаляра. NXID
CRC на 16 битов, сопоставленный с предоставлением SCI PSCCH. Это только требуется для V2X sidelink.
Типы данных: double
NSubframePSSCH
— Номер подкадра PSSCHНомер подкадра PSSCH в подкадре PSSCH объединяет в виде целочисленного скаляра. ()
NSubframePSSCH
и NSAID
управляйте значениями борющейся последовательности. Это только требуется для D2D sidelink.
Типы данных: double
Типы данных: struct
sym
— Закодированный модулировал символы PSSCHЗакодированный модулировал символы PSSCH в виде вектор-столбца RE-1 N. РЕ N является количеством RE в подкадре, сопоставленном с выделением PSSCH для нормального, и расширило циклический префикс (включая защитный символ SC-FDMA) и блоки ресурса NPRB.
РЕ N является N PRB × 144 для нормального циклического префикса D2D, или N PRB × 120 для D2D расширил циклический префикс и V2X. N PRB является количеством физических блоков ресурса (PRB), используемых для передачи.
Функция требует, чтобы содержимое всех элементов ресурса PSSCH было введено, включая тех в последнем защитном символе. Для получения дополнительной информации смотрите Физический Sidelink Разделяемое Декодирование Канала.
Типы данных: double
Поддержка комплексного числа: Да
softbits
— Отношение логарифмической правдоподобности мягкие битыОтношение логарифмической правдоподобности (LLR) мягкие биты, возвращенные как вектор с бит/с N × N RE softbits. бит/с N является количеством битов на символ. Модуляция PSSCH является или QPSK (2 бита за символ) или 16 QAM (4 бита за символ). РЕ N является количеством элементов ресурса PSSCH в подкадре. LLR проколотых мягких битов, сопоставленных с последним символом SC-FDMA, установлены в 0.
Для получения дополнительной информации смотрите Физический Sidelink Разделяемое Декодирование Канала.
symbols
— Декодируемый модулировал символы PSSCHДекодируемый модулировал символы PSSCH, возвращенные как вектор-столбец с N элементы RE. РЕ N является количеством элементов ресурса PSSCH в подкадре. Для получения дополнительной информации смотрите Физический Sidelink Разделяемое Декодирование Канала.
Физический непрямой разделяемый канал (PSSCH) декодер выполняет инверсию ltePSSCH
функциональная обработка. Для получения дополнительной информации смотрите Физический Sidelink Разделяемая Обработка Канала. Декодирование PSSCH включает SC-FDMA, преобразовывают deprecoding, демодуляцию символа и PSSCH-специфичное дескремблирование.
Физический непрямой разделяемый канал (PSSCH), обработка включает PSSCH-специфичное скремблирование, QPSK или 16-QAM модуляцию и SC-FDMA, преобразовывает предварительное кодирование. Обработка PSSCH выполняет шаги обработки, используемые для PUSCH, с изменениями, заданными в TS 36.211, Раздел 9.3.
Для PSSCH входная длина кодовой комбинации является битами M = N RE × бит/с N, где бит/с N является количеством битов на символ. Модуляция PSSCH является или QPSK (2 бита за символ) или 16 QAM (4 бита за символ).
Количество элементов ресурса PSSCH (N RE) в подкадре является N RE = N PRB × N REperPRB × N SYM и включает символы, сопоставленные с непрямым защитным символом SC-FDMA.
N PRB является количеством физических блоков ресурса (PRB), используемых для передачи.
N REperPRB является количеством элементов ресурса в PRB. Каждый PRB имеет 12 элементов ресурса.
N SYM является количеством символов SC-FDMA в подкадре PSSCH, включая символы, сопоставленные с непрямым защитным символом SC-FDMA. Количество символов SC-FDMA в подкадре PSSCH 12 для нормального циклического префикса D2D, или 10 для D2D расширил циклический префикс и V2X.
info
структура, выведенная ltePSSCHIndices
предоставляет битам M и N RE как info.G
и info.Gd
соответственно.
Борющийся генератор последовательности инициализируется в начале каждого подкадра PSSCH. Для D2D sidelink, целевая идентичность (NSAID
) полученный из непрямого разделяемого канала. Для V2X, идентичность скремблирования V2X (NXID
). номер подкадра в пуле подкадра PSSCH (NSubframePSSCH
).
ltePSSCH
требует CyclicPrefixSL
вывести количество блоков ресурса, выделенных для символов SC-FDMA перед кодированием.
[1] 3GPP TS 36.211. “Развитый Универсальный Наземный Радио-доступ (к E-UTRA); Физические Каналы и Модуляция”. Проект Партнерства третьего поколения; Сеть радиодоступа Technical Specification Group. URL: https://www.3gpp.org.
ltePSSCH
| ltePSSCHDRS
| ltePSSCHDRSIndices
| ltePSSCHIndices
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.