comm.GoldSequence

Сгенерируйте последовательность Голда

Описание

The GoldSequence объект генерирует последовательность Голда. Последовательности Голда образуют большой класс последовательностей, которые имеют хорошие периодические перекрестные корреляционные свойства.

Чтобы сгенерировать последовательность Голда:

  1. Определите и настройте объект последовательности Голда. См. «Конструкция».

  2. Функции step чтобы сгенерировать последовательность Голда согласно свойствам comm.GoldSequence. Поведение step характерен для каждого объекта в тулбоксе.

Примечание

Начиная с R2016b, вместо использования step метод для выполнения операции, заданной Системной object™, можно вызвать объект с аргументами, как если бы это была функция. Для примера, y = step(obj) и y = obj() выполнять эквивалентные операции.

Конструкция

H = comm.GoldSequence создает Последовательность Голда генератора Системного объекта, H. Этот объект генерирует псевдослучайную последовательность Голда.

H = comm.GoldSequence(Name,Value) создает объект генератора последовательности Голда, H, с каждым заданным набором свойств до заданного значения. Можно задать дополнительные аргументы пары "имя-значение" в любом порядке как (Name1, Value1..., NameN, ValueN).

Свойства

FirstPolynomial

Полином генератора для первых предпочтительных псевдошумовых последовательностей

Задайте полином, который определяет связи с обратной связью для регистра сдвига первого предпочтительного генератора псевдошумовой последовательности. Значение по умолчанию является 'z^6 + z + 1'. Можно задать полином как вектор символов. Можно также задать полином генератора как числовой, двоичный вектор, который перечисляет коэффициенты полинома в порядке убывания степеней. Первый и последний элементы должны равняться 1, и длина этого вектора требует значения n + 1, где n - степень полинома генератора. Наконец, можно задать полином генератора как числовой вектор, содержащий экспоненты z для ненулевых членов полинома в порядке убывания степеней. Последняя запись должна быть 0. Для примера, [1 0 0 0 0 0 1 0 1] и [8 2 0] представляют тот же полином, g(z)=z8+z2+1. Степень первого полинома генератора должна равняться степени второго полинома генератора, заданной в SecondPolynomial свойство.

FirstInitialConditions

Начальные условия для первого генератора псевдошумовой последовательности

Задайте начальные условия для регистра сдвига первого предпочтительного генератора псевдошумовой последовательности. Значение по умолчанию является [0 0 0 0 0 1]. Начальные условия требуют числового, двоичного скаляра или числового, двоичного вектора с длиной, равной степени первого полинома генератора, заданной в FirstPolynomial свойство. Если вы задаете это свойство в вектор, каждый элемент вектора соответствует начальному значению соответствующей камеры в регистре сдвига. Если вы задаете это свойство скаляром, начальные условия всех камер регистра сдвига являются заданным скалярным значением.

SecondPolynomial

Полином генератора для второй предпочтительной псевдошумовая последовательность

Задайте полином, который определяет связи с обратной связью для регистра сдвига второго предпочтительного генератора псевдошумовой последовательности. Значение по умолчанию является 'z^6 + z^5 + z^2 + z + 1'. Можно задать полином как вектор символов. Можно также задать полином генератора как двоичный, числовой вектор, который перечисляет коэффициенты полинома в порядке убывания степеней. Первый и последний элементы должны равняться 1 и длина этого вектора требует значения n + 1, где n - степень полинома генератора. Наконец, можно задать полином генератора как числовой вектор, содержащий экспоненты z для ненулевых членов полинома в порядке убывания степеней. Последняя запись должна быть 0. Для примера, [1 0 0 0 0 0 1 0 1] и [8 2 0] представляют тот же полином, g(z)=z8+z2+1. Степень полинома второго генератора должна равняться степени полинома первого генератора, заданной в FirstPolynomial свойство.

SecondInitialConditionsSource

Источник начальных условий для второй псевдошумовой последовательности

Укажите источник начальных условий, который определяет начало второй псевдошумовой последовательности как один из Property | Input port. Значение по умолчанию является Property. Когда вы устанавливаете это свойство на Property, можно задать начальные условия как скаляр или двоичный вектор с помощью SecondInitialConditions свойство. Когда вы устанавливаете это свойство на Input port, вы задаете начальные условия как вход в stepспособ. Объект принимает двоичный скаляр или двоичный векторный вход. Длина входа должна равняться степени полинома генератора, что SecondPolynomial задает свойство.

SecondInitialConditions

Начальные условия для генератора второй псевдошумовой последовательности

Задайте начальные условия для регистра сдвига второго предпочтительного генератора псевдошумовой последовательности в виде числа, двоичного скаляра или в виде числового двоичного вектора. Длина должна равняться степени полинома второго генератора. Вы устанавливаете второй полином генератора в SecondPolynomial свойство.

Когда вы устанавливаете это свойство в вектор, каждый элемент вектора соответствует начальному значению соответствующей камеры в регистре сдвига. Значение по умолчанию является [0 0 0 0 0 1].

Когда вы устанавливаете это свойство в скаляр, начальные условия всех камер регистра сдвига являются заданным скалярным значением.

Index

Индекс интересующей вас выходной последовательности

Задайте индекс интересующего выхода последовательности из набора доступных последовательностей в виде скаляра целого числа. Значение по умолчанию является 0. Скалярное целое число должно быть в области значений [-2, 2n-2], где n - степень полиномов генератора, заданная вами в FirstPolynomial и SecondPolynomial свойства.

Значения индекса -2 и -1 соответствуют первой и второй предпочтительным псевдошумовые последовательности, генерируемым FirstPolynomial и SecondPolynomial, соответственно.

Набор G (u, v) доступных последовательностей Голда определен G (u, v) = {u, v, (u xor Tv), (u xor T2v)..., (u xor T((N–1)v))}. В этом случае T представляет оператор, который циклически смещает векторы налево на одно место, и u, v представляет две предпочтительные псевдошумовые последовательности. Кроме того, G (u, v) содержит N + 2 последовательностей Голда периода N. Вы выбираете нужную последовательность из этого набора, используя Index свойство.

Shift

Смещение последовательности от начального времени

Задайте смещение последовательности Голда от ее начальной точки в виде числового, целочисленного скалярного значения, которое может быть положительным или отрицательным. Значение по умолчанию является 0. Последовательность Голда имеет период N = 2n1, где n - степень полиномов генератора, заданная в FirstPolynomial и SecondPolynomial свойства. Значение сдвига оборачивается относительно периода последовательности.

VariableSizeOutput

Включите выходы переменного размера

Установите это свойство равным true, чтобы включить дополнительный вход в метод step. Значение по умолчанию является false. Когда вы устанавливаете это свойство равным true, активированный вход задает размер выхода последовательности Голда, используемой для шага. Входное значение должно быть меньше или равным значению MaximumOutputSize свойство.

Когда вы устанавливаете это свойство false, SamplesPerFrame свойство задает количество выхода образцов.

MaximumOutputSize

Максимальный размер выходного сигнала

Задайте максимальный размер выхода последовательности Голда как положительное целое число 2-элементного вектора-строки. Второй элемент вектора должен быть 1. Значение по умолчанию является [10 1].

Это свойство применяется, когда вы устанавливаете VariableSizeOutput свойство true.

SamplesPerFrame

Количество выхода образцов в систему координат

Задайте количество выборок последовательности Голда, которое step метод выводит в виде числового, целочисленного скалярного значения. Значение по умолчанию является 1. Если вы задаете это свойство значение M, то step метод выводит M выборки последовательности Голда с периодом N = 2n1. Значение n представляет степень полиномов генератора, которые вы задаете в FirstPolynomial и SecondPolynomial свойства.

ResetInputPort

Включите вход сброса генератора

Установите это свойство на true чтобы включить дополнительный вход сброса в step способ. Значение по умолчанию является false. Этот вход сбрасывает состояния двух регистров сдвига генератора последовательности Голда к начальным условиям, заданным в FirstInitialConditions и SecondInitialConditions свойства.

OutputDataType

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

Укажите тип выходных данных как один из double | logical | Smallest unsigned integer. Значение по умолчанию является double.

Для использования этого свойства в необходимо иметь Fixed-Point Designer™ лицензию Smallest unsigned integer режим.

Методы

шагСгенерируйте последовательность Голда
Общий для всех системных объектов
release

Разрешить изменение значения свойства системного объекта

reset

Сброс внутренних состояний Системного объекта

Примеры

свернуть все

Сгенерируйте 10 выборки последовательности Голда, имеющей период 25-1.

goldseq = comm.GoldSequence('FirstPolynomial','x^5+x^2+1',...
    'SecondPolynomial','x^5+x^4+x^3+x^2+1',...
    'FirstInitialConditions',[0 0 0 0 1],...
    'SecondInitialConditions',[0 0 0 0 1],...
    'Index',4,'SamplesPerFrame',10);
x = goldseq()
x = 10×1

     1
     1
     1
     0
     0
     0
     0
     0
     0
     1

Алгоритмы

Этот объект реализует алгоритм, входы и выходы, описанные на Gold Sequence Generator блочных страниц с описанием. Свойства объекта соответствуют параметрам блоков.

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

.