Сгенерируйте последовательность Голда от набора последовательностей
Communications Toolbox / Источники Коммуникации / Генераторы Последовательности
Блок Gold Sequence Generator генерирует двоичную последовательность с маленькими периодическими свойствами взаимной корреляции от ограниченного множества последовательностей. Для получения дополнительной информации о последовательностях Голда смотрите последовательности Голда.
Этот блок может вывести последовательности, которые варьируются по длине в процессе моделирования. Для получения дополнительной информации о сигналах переменного размера, смотрите Основы Сигнала Переменного Размера (Simulink).
oSiz
— Размер текущей производительностиРазмер текущей производительности в виде скаляра или двухэлементного вектора-строки. Вторым элементом вектора должен быть 1
.
Пример: [10 1]
указывает, что вектор-столбец текущей производительности будет иметь размер, 10 на 1.
Чтобы включить этот порт выбирают параметр Output variable-size signals и устанавливают Maximum output size source на Dialog parameter
.
Типы данных: double
Ref
— Ссылочный входной сигналСсылочный входной сигнал в виде скаляра, вектор-столбца.
Чтобы включить этот порт выбирают параметр Output variable-size signals и устанавливают Maximum output size source на Inherit from reference input
.
Типы данных: double
Rst
— Сбросьте сигналСбросьте сигнал, заданный в одной из следующих форм.
Когда выходной размер является переменным, задают как скаляр.
В противном случае задайте как скаляр или 2D вектор-столбец с длиной, равной Samples per frame.
Выходной сигнал сбрасывает для ненулевых входных значений Rst. Для получения дополнительной информации смотрите Поведение Сброса
Чтобы включить этот порт, выберите параметр Reset on nonzero input.
Типы данных: double
Out
— Выходной сигналВыходной сигнал, возвращенный как вектор столбца двоичных данных. По крайней мере один элемент Initial states (1) или вектора Initial states (2) должен быть ненулевым для блока, чтобы сгенерировать ненулевую последовательность.
Типы данных: double
Preferred polynomial (1)
— Первый полином последовательности'z^6 + z + 1'
(значение по умолчанию) | полиномиальный вектор символов | вектор строки двоичных знаков | целочисленный вектор-строкаПервый полином последовательности, заданный в одной из следующих форм.
Полиномиальный вектор символов, такой как 'z^3 + z^2 + 1'
.
Вектор строки двоичных знаков, который представляет коэффициенты полинома генератора в порядке убывающей степени. Длина этого вектора (N +1), где N является степенью полинома генератора. Например, [1 1 0 1]
представляет полиномиальный x 3 + z 2 + 1.
Целочисленный вектор-строка, содержащий экспоненты z для ненулевых условий в полиноме в порядке убывания. Например, [3 2 0]
представляет полиномиальный z 3 + z 2 + 1.
Для получения дополнительной информации смотрите Символьное представление Полиномов и Предпочтительные Пары Последовательностей.
Initial states (1)
— Начальные состояния для первого полинома последовательности
(значение по умолчанию) | бинарный векторНачальные состояния сдвигового регистра для первого полинома последовательности предпочтительной пары в виде бинарного вектора с длиной равняются степени Preferred polynomial (1).
Preferred polynomial (2)
— Второй полином последовательности'z^6 + z^5 + z^2 + z + 1'
(значение по умолчанию) | полиномиальный вектор символов | вектор строки двоичных знаков | целочисленный вектор-строкаВторой полином последовательности, заданный в одной из следующих форм.
Полиномиальный вектор символов, такой как 'z^3 + z^2 + 1'
.
Вектор строки двоичных знаков, который представляет коэффициенты полинома генератора в порядке убывающей степени. Длина этого вектора (N +1), где N является степенью полинома генератора. Например, [1 1 0 1]
представляет полиномиальный x 3 + z 2 + 1.
Целочисленный вектор-строка, содержащий экспоненты z для ненулевых условий в полиноме в порядке убывания. Например, [3 2 0]
представляет полиномиальный z 3 + z 2 + 1.
Для получения дополнительной информации смотрите Символьное представление Полиномов.
Initial states (2)
— Начальные состояния для второго полинома последовательности
(значение по умолчанию) | бинарный векторНачальные состояния сдвигового регистра для второго полинома последовательности предпочтительной пары в виде бинарного вектора с длиной равняются степени Preferred polynomial (2).
Sequence index
— Индекс последовательности
(значение по умолчанию) | целочисленный скаляр в области значений [–2, 2n–2]Индекс последовательности выходной последовательности от набора последовательностей в виде целочисленного скаляра в области значений [–2, 2n–2]. n является степенью предпочтительных полиномов.
Shift
— Смещение последовательности Голда
(значение по умолчанию) | целочисленный скалярСмещение последовательности Голда с начального времени в виде целочисленного скаляра.
Output variable-size signals
— Сигналы размера выходной переменнойВыберите этот параметр, чтобы разрешить переменной длине выходные последовательности в процессе моделирования. Когда установлено в off
, последовательности фиксированной длины выводятся. Когда установлено в on
, последовательности переменной длины могут быть выведены. Для получения информации о сигналах переменного размера смотрите Основы Сигнала Переменного Размера (Simulink).
Maximum output size source
— Максимальный выходной источник размераDialog parameter
(значение по умолчанию) | Inherit from reference port
Максимальный выходной источник размера, который указывает, как максимальная последовательность выходной размер задана.
Dialog parameter
конфигурирует блок, чтобы использовать установку параметра Maximum output size в качестве максимальной разрешенной выходной длины последовательности. Когда вы делаете этот выбор, входной порт oSiz задает текущий размер выходного сигнала, и блок выход наследовал шаг расчета от входного сигнала. Входное значение oSiz должно быть меньше чем или равно параметру Maximum output size.
Inherit from reference port
добавляет Ref
входной порт и конфигурирует блок, чтобы наследовать шаг расчета, максимальный размер и размер текущей производительности от сигнала переменного размера в Ref
входной порт, чтобы установить максимальную разрешенную выходную длину последовательности.
Чтобы включить этот параметр, выберите Output variable-size signals.
Maximum output size
— Максимальный выходной размер
(значение по умолчанию) | двухэлементный вектор-строкаМаксимальный выходной размер в виде двухэлементного вектора-строки, который обозначает максимальный выходной размер для блока. Вторым элементом вектора должен быть 1
.
Пример: [10 1]
дает максимальный размерный выходной сигнал 10 на 1.
Чтобы включить этот параметр выбирают Output variable-size signals и устанавливают Maximum output size source на Dialog parameter
.
Типы данных: double
Sample time
— Выведите шаг расчета
(значение по умолчанию)Выведите шаг расчета в виде -1
или положительная скалярная величина, которая представляет время между каждой выборкой выходного сигнала. Если Sample time установлен в -1
, шаг расчета наследован от нисходящего потока. Для получения информации об отношении между Sample time и Samples per frame, смотрите
Демонстрационную Синхронизацию.
Чтобы включить этот параметр не выбирают Output variable-size signals.
Samples per frame
— Выборки на систему координат
(значение по умолчанию) | положительное целое числоВыборки на систему координат в виде положительного целого числа, указывающего на количество выборок на систему координат в одном канале выходных данных. Для получения информации об отношении между Sample time и Samples per frame, смотрите Демонстрационную Синхронизацию.
Чтобы включить этот параметр не выбирают Output variable-size signals.
Reset on nonzero input
— Сбросьте выходной сигналoff
(значение по умолчанию) | on
Выберите этот параметр, чтобы включить порт Rst. Когда ненулевое значение вводится в порте Rst, внутренние сдвиговые регистры сбрасываются к исходным значениям параметров Initial states (2) и Initial states (1).
Output data type
— Тип выходных данныхdouble
(значение по умолчанию) | boolean
| Smallest unsigned integer
Выходные данные вводят в виде boolean
'double'
, или Smallest unsigned integer
.
Когда установлено в Smallest unsigned integer
, тип выходных данных выбран на основе настроек, используемых в Панели Аппаратной реализации (Simulink) диалогового окна Configuration Parameters модели. Если ASIC/FPGA выбран в панели Аппаратной реализации, тип выходных данных является идеальным минимальным однобитным размером (ufix (1)). Для всех других выборов это - беззнаковое целое с самым маленьким доступным размером слова, достаточно большим, чтобы соответствовать одному биту, обычно соответствуя размеру char (uint8).
Типы данных |
|
Многомерные сигналы |
|
Сигналы переменного размера |
|
Время между выходными обновлениями равно продукту Samples per frame и Sample time. Например, если Sample time и Samples per frame равняются один, блок выводит выборку каждую секунду. Если Samples per frame увеличен до 10, то вектор 10 на 1 выводится каждые 10 секунд. Это гарантирует, что эквивалентная норма выработки не зависит от параметра Samples per frame.
Характеристические свойства взаимной корреляции последовательностей Голда делают их полезными, когда несколько устройств являются широковещательными в том же частотном диапазоне. Последовательности Голда заданы с помощью заданной пары последовательностей u и v, периода N = 2n – 1, названный preferred pair, как задано в Предпочтительных Парах Последовательностей. Набор G (u, v) последовательностей Голда задан
где T представляет оператор, который переключает векторы циклически налево одним местом, и представляет сложение по модулю 2. Обратите внимание на то, что G (u, v) содержит N + 2 последовательности периода N. Блок Gold Sequence Generator выводит одну последовательность Голда согласно сконфигурированным параметрам и входным параметрам.
Последовательности Голда имеют свойство, что взаимная корреляция между любыми двумя, или между переключенными версиями их, берет одно из трех значений: –t (n), –1, или t (n) – 2, где
Блок Gold Sequence Generator использует два блока PN Sequence Generator, чтобы сгенерировать предпочтительную пару последовательностей, и затем XORs эти последовательности, чтобы произвести выходную последовательность, как показано в следующей схеме.
Можно задать предпочтительную пару Preferred polynomial (1) и параметрами Preferred polynomial (2) в диалоговом окне для блока Gold Sequence Generator. Эти полиномы, оба из которых должны иметь степень n, описывают сдвиговые регистры, что Генератор Псевдошумовой последовательности блокирует использование, чтобы сгенерировать их выход. Для получения дополнительной информации о том, как эти последовательности сгенерированы, видят страницу с описанием для блока PN Sequence Generator. Можно задать предпочтительные полиномы с помощью этих форматов:
Полиномиальный вектор символов, который включает номер 1
, например, 'z^4 + z + 1'
.
Вектор, который перечисляет коэффициенты полинома в порядке убывания степеней. Первые и последние записи должны быть 1. Обратите внимание на то, что длина этого вектора является еще одним, чем степень полинома генератора.
Вектор, содержащий экспоненты z для ненулевых условий полинома в порядке убывания степеней. Последней записью должен быть 0
.
Например, полиномиальный z 5 + z 2 + 1 может быть представлен вектором символов 'z^5 + z^2 + 1'
, векторный [5 2 0]
, и векторный [1 0 0 1 0 1]
.
Следующая таблица предоставляет короткий список предпочтительных пар.
n | N | Preferred Polynomial (1) | Preferred Polynomial (2) |
---|---|---|---|
5 | 31 | [5 2 0]
| [5 4 3 2 0]
|
6 | 63 | [6 1 0]
| [6 5 2 1 0]
|
7 | 127 | [7 3 0]
| [7 3 2 1 0]
|
9 | 511 | [9 4 0]
| [9 6 4 3 0]
|
10 | 1023 | [10 3 0]
| [10 8 3 2 0]
|
11 | 2047 | [11 2 0]
| [11 8 5 2 0]
|
Initial states (1) и параметры Initial states (2) являются векторами, задающими начальные значения регистров, соответствующих Preferred polynomial (1) и Preferred polynomial (2), соответственно. Эти параметры должны удовлетворить этим критериям:
Всеми элементами Initial states (1) и векторов Initial states (2) должны быть двоичные числа.
Длина вектора Initial states (1) должна равняться степени Preferred polynomial (1), и длина вектора Initial states (2) должна равняться степени Preferred polynomial (2).
По крайней мере один элемент векторов начальных состояний (Initial states (1) или Initial states (2)) должен быть ненулевым для блока, чтобы сгенерировать ненулевую последовательность. А именно, начальное состояние по крайней мере одного из регистров должно быть ненулевым.
Параметр Sequence index задает, какая последовательность Голда в наборе G (u, v) выводится. Область значений Sequence index [–2, –1, 0, 1, 2..., 2n–2], где n является степенью полиномов генератора, заданных параметрами Preferred polynomial (2) и Preferred polynomial (1). Эта таблица показывает соответствие между Sequence index и выходной последовательностью.
Индекс последовательности | Выведите последовательность |
---|---|
–2 | u |
–1 | v |
0 |
|
1 |
|
2 |
|
... | ... |
2 n –2 |
|
T представляет оператор, который переключает векторы циклически налево одним местом, и представляет сложение по модулю 2.
Можно переключить начальную точку последовательности Голда параметром Shift, который является целым числом, представляющим длину сдвига.
Можно использовать внешний сигнал сбросить значения внутреннего сдвигового регистра к начальному состоянию путем выбора Reset on nonzero input. Это создает входной порт для внешнего сигнала в блоке Gold Sequence Generator. Путем сброс блока, внутренний сдвиговый регистр зависит от того, являются ли его выходной сигнал и сигнал сброса скаляром или вектором. Для получения дополнительной информации смотрите Поведение Сброса.
Чтобы сбросить последовательность генератора, необходимо сначала выбрать Reset on nonzero input, чтобы добавить Rst
входной параметр. Предположим что блок Gold Sequence Generator выходные параметры [1 0 0 1 1 0 1 1]
когда нет никакого сброса. Следующая таблица показывает эффект на блоке Gold Sequence Generator выход для обозначенных значений свойств.
Сбросьте свойства сигнала | Блок Gold Sequence Generator | Сбросьте сигнал Выходной сигнал | |
---|---|---|---|
Никакой сброс | Sample time = Samples per frame = Rst = | Sample time = Samples per frame = Out = |
|
Скалярный сигнал сброса | Sample time = Samples per frame = Rst = | Sample time = Samples per frame = |
|
Векторный сигнал сброса | Sample time = Samples per frame = Rst = | Sample time = Samples per frame = |
Ни для какого случая сброса последовательность выводится без того, чтобы быть сброшенным. Для скалярных и векторных случаев сигнала сброса сброс сигнализирует о [0 0 0 1 0 0 0 0]
вводится к Rst
порт. Последовательность выход сбрасывается на уровне четвертого бита, потому что четвертый бит сигнала сброса является 1 и Sample time, равняется 1.
Для выходных параметров переменного размера блок только поддерживает скалярные входные параметры сигнала сброса.
Пример Поведения Сброса Генератора последовательности Голда демонстрирует поведение сброса в Simulink®model.
Требования для пары последовательностей u, v периода N = 2n–1, чтобы быть предпочтительной парой следующие:
n не является делимым 4
v = u [q], где
q является нечетным
q = 2k+1 или q = 22k–2k+1
v получен путем выборки каждого q th символ u
Поведение изменяется в R2020a
Начиная в R2020a, Simulink больше не позволяет вам использовать версию блока Gold Sequence Generator, доступную перед R2015b.
Существующие модели автоматически обновляются, чтобы загрузить версию блока Gold Sequence Generator, о которой объявляют в Исходных блоках выходные системы координат непрерывных выборок времени, но не используют атрибут системы координат в Информации о релизах R2015b. Для получения дополнительной информации о передаче блока см. Передающие Таблицы (Simulink).
[1] Proakis, Джон Г., Цифровая связь. 3-й редактор Нью-Йорк. Макгроу Хилл, 1995.
[2] Золото, R. “Максимальные Рекурсивные Последовательности с 3-значными Рекурсивными Функциями взаимной корреляции (Corresp).”. Транзакции IEEE на Теории информации 14, № 1 (январь 1968): 154–56. https://doi.org/10.1109/TIT.1968.1054106.
[3] Золото, R. “Оптимальные Двоичные последовательности для Спектра Распространения, Мультиплексирующего (Corresp).”. Транзакции IEEE на Теории информации 13, № 4 (октябрь 1967): 619–21. https://doi.org/10.1109/TIT.1967.1054048.
[4] Sarwate, D.V., и М.Б. Персли, "Свойства взаимной корреляции Псевдослучайных и Связанных Последовательностей", Proc. IEEE, Издание 68, № 5, май 1980, стр 583-619.
[5] Диксон, Роберт К. Сприд Спектрум Системс: С Коммерческим применением. 3-й редактор Нью-Йорк: Вайли, 1994.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.