exponenta event banner

Генератор кодов OVSF

Сформировать код коэффициента расширения с ортогональной переменной (OVSF) из набора ортогональных кодов

Библиотека

Расширяющие коды

  • OVSF Code Generator block

Описание

Блок генератора кода OVSF генерирует код OVSF из набора ортогональных кодов. Коды OVSF были впервые введены для 3G систем связи. Коды OVSF используются главным образом для сохранения ортогональности между различными каналами в системе связи.

Коды OVSF определяются как строки матрицы N-на-N, CN, которая определяется рекурсивно следующим образом. Сначала определите C1 = [1]. Далее предположим, что CN определен, и пусть CN (k) обозначает k-ю строку CN. Определить C2N по

C2N = [CN (0) CN (0) CN (0) CN (0) CN (1) CN (1) CN (1)...... CN (N 1) CN (N − 1) CN (N − 1) −

Следует отметить, что CN определяется только для N степени 2. Из индукции следует, что ряды CN ортогональны.

Коды OVSF также могут быть рекурсивно определены древовидной структурой, как показано на следующем рисунке.

Если [C] - длина кода 2r на глубине r в дереве, где корень имеет глубину 0, две ветви, ведущие из C, помечены последовательностями [C] и [C -C], которые имеют длину 2r + 1. Коды на глубине r в дереве являются строками матрицы CN, где N = 2r.

Обратите внимание, что два кода OVSF ортогональны тогда и только тогда, когда ни один из них не находится на пути от другого кода к корню. Поскольку коды, назначенные различным пользователям в одной и той же соте, должны быть ортогональными, это ограничивает количество доступных кодов для данной соты. Например, если код, C41 в дереве, назначен пользователю, коды C10, C20, C82, C83 и так далее не могут быть назначены любому другому пользователю в той же самой ячейке.

Параметры блока

Код блока OVSF Code Generator задается двумя параметрами в диалоговом окне блока: коэффициент расширения, который является длиной кода, и индекс кода, который должен быть целым числом в диапазоне [0, 1,..., N - 1], где N - коэффициент расширения. Если код появляется на глубине r в предыдущем дереве, коэффициент расширения равен 2r. Индекс Code указывает, как далеко вниз отображается столбец дерева на глубине r, считая от 0 до N - 1. Для CN k на предыдущей диаграмме N - коэффициент расширения, а k - индекс кода.

Код можно восстановить из коэффициента расширения и индекса кода следующим образом. Преобразуйте индекс Code в соответствующее двоичное число, а затем добавьте 0s слева, если необходимо, чтобы результирующая двоичная последовательность x1 x2... xr имеет длину r, где r - логарифмическое основание 2 коэффициента расширения. Эта последовательность описывает путь от корня к коду. Путь принимает верхнюю ветвь от кода на глубине i, если xi = 0, и нижнюю ветвь, если xi = 1.

Для восстановления кода рекурсивно определите последовательность кодов Ci следующим образом. Позвольте C0 быть корнем [1]. Предполагая, что Ci был определен, для i < r определите Ci + 1 по

Ci + 1 = { CiCiif xi = 0Ci (Ci), если xi = 1

Код CN имеет указанные коэффициент расширения и индекс кода.

Например, чтобы найти код с коэффициентом расширения 16 и индекс кода 6, выполните следующие действия:

  1. Преобразуйте 6 в двоичное число 110.

  2. Добавьте один 0 слева, чтобы получить 0110, который имеет длину 4 = log2 16.

  3. Создайте последовательности Ci в соответствии со следующей таблицей.

    яxiCi
    0 C0 = [1]
    1 0 C1 = C0 C0 = [1] [1]
    2 1 C2 = C1-C1 = [1 1] [-1 - 1]
    3 1 C3 = C2-C2 = [1 1 - 1 - 1] [-1 - 1 1 1]
    4 0 C4 = C3 C3 = [1 1 - 1 - 1 - 1 - 1 1 1] [1 1 - 1 - 1 - 1 - 1 1 1]

Код C4 имеющий коэффициент расширения 16 и индекс кода 6.

Параметры

Коэффициент расширения

Положительное целое число, равное степени 2 и указывающее длину кода.

Индекс кода

Целое число в диапазоне [0, 1,..., N - 1], определяющем код, где N - коэффициент расширения.

Время выборки

Время выборки выходных данных, указанное как -1 или положительный скаляр, который представляет время между каждой выборкой выходного сигнала. Если для параметра Sample time установлено значение -1время выборки наследуется от нисходящего потока. Для получения информации о взаимосвязи между временем выборки и выборками на кадр см. раздел Синхронизация выборки.

Выборки на кадр

Выборки на кадр, указанное как положительное целое число, указывающее количество выборок на кадр в одном канале выходных данных. Для получения информации о взаимосвязи между временем выборки и выборками на кадр см. раздел Синхронизация выборки.

Тип выходных данных

Тип вывода блока может быть указан как int8 или double. По умолчанию блок устанавливает значение double.

Моделирование с использованием

Выберите режим моделирования.

Code generation

На первом прогоне модели смоделируйте и создайте код. Если структура блока не изменяется, последующие запуски модели не регенерируют код.

Если режим моделирования Code generation, Системные объекты, соответствующие блокам, принимают максимум девять входов.

Interpreted execution

Моделирование модели без создания кода. Этот параметр приводит к более быстрому запуску, но может снизить производительность последующего моделирования.

Подробнее

развернуть все

Вопросы совместимости

развернуть все

В R2020a изменилось поведение

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

.
Представлен до R2006a