nrPUSCHCodebook

Сгенерируйте матрицу предварительного кодирования PUSCH

Описание

пример

w = nrPUSCHCodebook(nLayers,nPorts,tpmi) возвращает матрицу предварительного кодирования физического восходящего общего канала (PUSCH) для передачи на основе кодовой книги. nLayers количество слоев, nPorts количество портов антенны и tpmi - переданный матричный индикатор предварительного кодирования (TPMI). По умолчанию эта функция отключает предварительное кодирование преобразования. Возвращенная матрица, w, - транспонирование матрицы предварительного кодирования, заданное в TS 38.211 Раздел 6.3.1.5 [1]. Матричная ориентация w позволяет выполнить операцию предварительного кодирования путем матричного умножения на выходе nrLayerMap функции и w.

w = nrPUSCHCodebook(___,transformPrecode) задает предварительное кодирование преобразования как логическое значение в дополнение к входным параметрам в предыдущем синтаксисе. Когда transformPrecode установлено в trueфункция применяет предварительное кодирование преобразования, заданное в TS 38.211 Раздел 6.3.1.4 [1].

Примеры

свернуть все

Модулируйте случайную последовательность двоичных значений длины 600 при помощи 64-QAM модуляции. Разделите модулированные символы на два слоя.

modulation = '64QAM';
nlayers = 2;
in = randi([0 1],600,1);
data = nrSymbolModulate(in,modulation);
y = nrLayerMap(data,nlayers);

Сгенерируйте матрицу предварительного кодирования PUSCH для четырех антенн, двух слоев и заданного TPMI.

nports = 4;
tpmi = 7;
w = nrPUSCHCodebook(nlayers,nports,tpmi)
w = 2×4 complex

   0.5000 + 0.0000i   0.0000 + 0.0000i   0.5000 + 0.0000i   0.0000 + 0.0000i
   0.0000 + 0.0000i   0.5000 + 0.0000i   0.0000 + 0.0000i   0.0000 + 0.5000i

Предварительно кодируйте слоистые символы модуляции с помощью матрицы кодовой книги.

z = y * w
z = 50×4 complex

  -0.0772 - 0.3858i   0.3858 - 0.5401i  -0.0772 - 0.3858i   0.5401 + 0.3858i
  -0.3858 + 0.0772i  -0.5401 - 0.0772i  -0.3858 + 0.0772i   0.0772 - 0.5401i
  -0.5401 - 0.2315i  -0.2315 + 0.0772i  -0.5401 - 0.2315i  -0.0772 - 0.2315i
  -0.3858 + 0.2315i  -0.2315 - 0.0772i  -0.3858 + 0.2315i   0.0772 - 0.2315i
  -0.0772 - 0.3858i   0.5401 + 0.2315i  -0.0772 - 0.3858i  -0.2315 + 0.5401i
  -0.5401 + 0.5401i  -0.0772 + 0.2315i  -0.5401 + 0.5401i  -0.2315 - 0.0772i
  -0.3858 + 0.2315i  -0.0772 + 0.5401i  -0.3858 + 0.2315i  -0.5401 - 0.0772i
  -0.3858 + 0.5401i   0.5401 + 0.3858i  -0.3858 + 0.5401i  -0.3858 + 0.5401i
  -0.2315 + 0.0772i   0.2315 - 0.5401i  -0.2315 + 0.0772i   0.5401 + 0.2315i
  -0.2315 - 0.0772i   0.3858 - 0.3858i  -0.2315 - 0.0772i   0.3858 + 0.3858i
      ⋮

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

свернуть все

Количество слоев передачи, заданное в виде целого числа от 1 до 4. Для получения дополнительной информации см. раздел 6.3.1.3 ТУ 38.211.

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

Количество портов антенны, заданное как 1 , 2, или 4. Для получения дополнительной информации см. раздел 6.3.1.5 ТУ 38.211.

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

Переданный матричный индикатор предварительного кодирования, заданный в виде целого числа от 0 до 27. Допустимая область значений tpmi зависит от заданного количества слоев передачи, nLayers, и количество портов антенны, nPorts. Для получения дополнительной информации см. TS 38.211 Таблицы 6.3.1.5-1 - 6.3.1.5-7.

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

Прекодирование преобразования, заданное как false или true. Для получения дополнительной информации см. раздел 6.3.1.4 ТУ 38.211.

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

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

свернуть все

PUSCH предварительное кодирование кодовой книги, возвращенной как комплексная матрица размера nLayers-by- nPorts. Если nLayers и nPorts являются ли оба 1, затем w является 1. В противном случае функция возвращает транспонирование матрицы, выбранной из таблиц 6.3.1.5-1, к 6.3.1.5-7 в TS 38.211 [1].

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

Ссылки

[1] 3GPP TS 38.211. "NR; Физические каналы и модуляция ". 3rd Генерация Partnership Project; Группа технических спецификаций Радиосеть доступ.

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

Генерация кода C/C + +
Сгенерируйте код C и C++ с помощью Coder™ MATLAB ®

.

См. также

Функции

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