Декодирование PSSCH
[ возвращает вектор мягких битов логарифмического отношения правдоподобия (LLR) и промежуточных символов модуляции QPSK или 16QAM для указанной структуры настроек UE и модулированных символов PSSCH. softbits,symbols] = ltePSSCHDecode(ue,sym)
Декодер PSSCH выполняет обратное ltePSSCH обработка функций, как определено в TS 36.211 [1], раздел 9.3. ltePSSCHDecode обработка включает в себя амортизацию преобразования SC-FDMA, демодуляцию символов и дескремблирование, специфичное для PSSCH. Дополнительные сведения см. в разделе Физическое декодирование общих каналов боковых линий.
Демодулируют символы 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
Использование случайного начального числа шума и уровня добавляемого шума иногда приводит к ошибкам декодирования. Если сравнение возвращает «» 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 - Режим боковых линий'D2D' (по умолчанию) | 'V2X' | необязательныйРежим боковых линий связи, указанный как 'D2D' или 'V2X'.
Типы данных: char | string
CyclicPrefixSL - Длина циклического префикса'Normal' (по умолчанию) | 'Extended' | необязательныйДлина циклического префикса, указанная как 'Normal' или 'Extended'.
Типы данных: char | string
Modulation - Тип модуляции'QPSK' | '16QAM'Тип модуляции, указанный как 'QPSK' или '16QAM'.
Типы данных: char | string
NSAID - Идентификатор назначения группы боковых линий связиИдентификатор назначения группы боковых линий связи, указанный как целое число в интервале [0, 255].
Это поле представляет собой восемь младших битов полного 24-разрядного идентификатора назначения группы Prose Layer-2. Это поле и NSubframePSSCH поле управляет значением скремблирующей последовательности в начале каждого подкадра. Это поле требуется только для D2D боковой линии.
Типы данных: double
NXID - идентификатор скремблирования V2XV2X идентификатор скремблирования, заданный как целочисленный скаляр. NXID - 16-битный CRC, связанный с предоставлением SCI PSCCH. Это только требуется для V2X sidelink.
Типы данных: double
NSubframePSSCH - Номер подкадра PSSCHНомер подкадра PSSCH в пуле подкадров PSSCH, заданный как целочисленный скаляр. ()
NSubframePSSCH и NSAID управляют значениями скремблирующей последовательности. Это только требуется для D2D sidelink.
Типы данных: double
Типы данных: struct
sym - Кодированные модулированные символы PSSCHКодированные модулированные символы PSSCH, заданные как вектор столбца NRE-by-1. NRE - это количество RE в подкадре, связанном с выделением PSSCH для нормального и расширенного циклического префикса (включая защитный символ SC-FDMA) и блоков ресурсов NPRB.
NRE - это NPRB × 144 для D2D нормального циклического префикса или NPRB × 120 для D2D расширенного циклического префикса и V2X. NPRB - количество блоков физических ресурсов (PRB), используемых для передачи.
Функция требует ввода содержимого всех элементов ресурса PSSCH, включая элементы последнего защитного символа. Дополнительные сведения см. в разделе Физическое декодирование общих каналов боковых линий.
Типы данных: double
Поддержка комплексного номера: Да
softbits - Динамические биты логарифмического отношения правдоподобияМягкие биты логарифмического отношения правдоподобия (LLR), возвращаемые как вектор с мягкими битами Nbps × NRE. Nbps - количество битов на символ. Модуляция PSSCH представляет собой либо QPSK (2 бита на символ), либо 16 QAM (4 бита на символ). NRE - количество элементов ресурса PSSCH в подкадре. LLR проколотых мягких битов, связанных с последним символом SC-FDMA, установлены в 0.
Дополнительные сведения см. в разделе Физическое декодирование общих каналов боковых линий.
symbols - Декодированные модулированные символы PSSCHДекодированные модулированные символы PSSCH, возвращаемые как вектор столбца с элементами NRE. NRE - количество элементов ресурса PSSCH в подкадре. Дополнительные сведения см. в разделе Физическое декодирование общих каналов боковых линий.
Декодер физического общего канала боковой линии связи (PSSCH) выполняет обратное ltePSSCH обработка функции. Дополнительные сведения см. в разделе Обработка физических общих каналов Sidelink. Декодирование PSSCH включает в себя амортизацию преобразования SC-FDMA, демодуляцию символов и дескремблирование, специфичное для PSSCH.

Обработка физического общего канала боковой линии связи (PSSCH) включает в себя PCSCH-специфическое скремблирование, QPSK или 16-QAM модуляцию и предварительное кодирование с преобразованием SC-FDMA. Обработка PSSCH выполняется в соответствии с этапами обработки, используемыми для PUSCH, с изменениями, определенными в TS 36.211, раздел 9.3.

Для PSSCH длина входного кодового слова равна Mbits = NRE × Nbps, где Nbps - количество битов на символ. Модуляция PSSCH представляет собой либо QPSK (2 бита на символ), либо 16 QAM (4 бита на символ).
Число элементов ресурса PSSCH (NRE) в субкадре равно NRE = NPRB × NREperPRB × NSYM и включает в себя символы, связанные с гардином sidelink SC-FDMA.
NPRB - количество блоков физических ресурсов (PRB), используемых для передачи.
NREperPRB - количество элементов ресурсов в PRB. Каждый PRB имеет 12 элементов ресурсов.
NSYM - это количество символов SC-FDMA в подкадре PSSCH, включая символы, связанные с защитным символом sidelink SC-FDMA. Количество символов SC-FDMA в подкадре PSSCH равно 12 для нормального циклического префикса или 10 для D2D расширенного циклического префикса и D2D V2X.
info вывод структуры по ltePSSCHIndices обеспечивает Mbits и NRE как info.G и info.Gd соответственно.
Генератор скремблирующих последовательностей инициализируется с × 29 + 510 в начале каждого подкадра PSSCH. Для D2D боковой линии nIDSA является идентификатором назначения (NSAID), полученный из общего канала боковой линии связи. Для V2X - это V2X идентификатор скремблирования (NXID). - номер подкадра в пуле подкадров PSSCH (NSubframePSSCH).
ltePSSCH требует CyclicPrefixSL выводят количество блоков ресурсов, выделенных для символов предварительного кодирования SC-FDMA.
[1] 3GPP TS 36.211. "Развитый универсальный наземный радиодоступа (E-UTRA); Физические каналы и модуляция. "Проект партнерства 3-го поколения; Техническая спецификация на сеть радиодоступа группы. URL: https://www.3gpp.org.
ltePSSCH | ltePSSCHDRS | ltePSSCHDRSIndices | ltePSSCHIndices
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.