comm.PNSequence

Сгенерируйте псевдошумовую (PN) последовательность

Описание

PNSequence объект генерирует последовательность псевдослучайных двоичных чисел с помощью сдвигового регистра линейной обратной связи (LFSR). Этот блок реализует LFSR использование простого генератора сдвигового регистра (SSRG или Фибоначчи) настройка. Можно использовать псевдошумовую последовательность в псевдослучайном скремблере и дескремблере. Можно также использовать один в системе спектра распространения прямой последовательности.

Сгенерировать псевдошумовую последовательность:

  1. Задайте и настройте свой объект псевдошумовой последовательности. Смотрите Конструкцию.

  2. Вызовите step сгенерировать псевдошумовую последовательность согласно свойствам comm.PNSequence. Поведение step характерно для каждого объекта в тулбоксе.

Примечание

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

Конструкция

H = comm.PNSequence создает псевдошумовой (PN) Системный объект генератора последовательности, H. Этот объект генерирует последовательность псевдослучайных двоичных чисел с помощью сдвигового регистра линейной обратной связи (LFSR).

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

Свойства

Polynomial

Полином генератора

Задайте полином, который определяет связи обратной связи сдвигового регистра. Значением по умолчанию является '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. Псевдошумовая последовательность имеет период N=2n1 (применяется только к максимальным последовательностям длины).

InitialConditionsSource

Источник начальных условий

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

InitialConditions

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

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

MaskSource

Источник маски, чтобы переключить псевдошумовую последовательность

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

Mask

Маска, чтобы переключить псевдошумовую последовательность

Задайте маску, которая определяет, как псевдошумовая последовательность смещена от своей начальной точки как числовое, целочисленный скаляр или как бинарный вектор. Значением по умолчанию является 0.

Когда вы устанавливаете это свойство на целочисленный скаляр, значение является длиной сдвига. Скалярный сдвиг может быть положительным или отрицательным. Когда псевдошумовая последовательность имеет период N=2n1, где n является степенью полинома генератора, который вы задаете в Polynomial свойство, объект переносит значения сдвига, которые отрицательны или больше, чем N.

Когда вы устанавливаете это свойство на бинарный вектор, его длина должна равняться степени полинома генератора, заданного в Polynomial свойство. Вектор маски, который представляет m(z)=zD g(z) по модулю, где g(z) является полиномом генератора и вектором маски, соответствует сдвигу D. Например, для полинома генератора степени 4, соответствие вектора маски D = 2 [0 1 0 0], который представляет полином m(z)=z2.

Можно вычислить вектор маски использование shift2mask функция. Это свойство применяется, когда вы устанавливаете MaskSource свойство к Property.

VariableSizeOutput

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

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

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

MaximumOutputSize

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

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

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

SamplesPerFrame

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

Количество выборок выход на систему координат объектом псевдошумовой последовательности, заданным как положительное целое число. Значением по умолчанию является 1. Если вы устанавливаете это свойство на значение M, то объектные выборки выходных параметров M псевдошумовой последовательности, которая имеет период N=2n1. n значения представляет степень полинома генератора, который вы задаете в Polynomial свойство. Если вы устанавливаете BitPackedOutput свойство к false, выборки являются битами от псевдошумовой последовательности. Если вы устанавливаете BitPackedOutput свойство к true, затем выход соответствует SamplesPerFrame группы побитно упакованных выборок.

ResetInputPort

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

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

BitPackedOutput

Опция, чтобы вывести побитно упакованные слова

Опция, чтобы вывести побитно упакованные слова, заданные как false или true. Установите это свойство на true включить побитно упакованные выходные параметры. Первый бит слева в побитно упакованном слове рассматривается старшим значащим битом. Значением по умолчанию является false.

Когда BitPackedOutput true, объектные выходные параметры вектор-столбец длины M, который содержит целочисленные представления битных слов длины P. M является количеством выборок на систему координат, заданную в SamplesPerFrame свойство. P является размером побитно упакованных слов, заданных в NumPackedBits свойство.

NumPackedBits

Количество битов на побитно упакованное слово

Задайте количество битов, чтобы упаковать в каждое слово выходных данных как числовое, значение целочисленного скаляра от 1 к 32. Значением по умолчанию является 8.

Зависимости

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

SignedOutput

Выведите подписанные побитно упакованные слова

Установите это свойство на true, чтобы получить подписанный, побитно упакованный, выходные слова. Значением по умолчанию является false. В этом случае, 1 в старшем значащем бите (знаковый бит) указывает на отрицательную величину. Свойство указывает на отрицательные числа в дополнительном формате two.

Зависимости

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

OutputDataType

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

Задайте тип выходных данных как один из них:

  • Когда свойством BitPackedOutput является false, OutputDataType может быть 'double'логический, или 'Smallest unsigned integer'.

  • Когда свойством BitPackedOutput является true, OutputDataType может быть 'double' или 'Smallest integer'.

Значением по умолчанию является double.

Примечание

У вас должна быть пользовательская лицензия Fixed-Point Designer™, чтобы использовать это свойство в 'Smallest unsigned integer' или 'Smallest integer' режим.

Зависимости

Допустимые настройки для типа выходных данных зависят от установки BitPackedOutput.

Методы

сбросСбросьте состояния объекта генератора псевдошумовой последовательности
шагСгенерируйте псевдошумовую (PN) последовательность
Характерный для всех системных объектов
release

Позвольте изменения значения свойства Системного объекта

Примеры

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

Сгенерируйте систему координат с 14 выборками максимальной псевдошумовой последовательности длины, данной полином генератора, x3+x2+1.

Сгенерируйте данные о псевдошумовой последовательности при помощи comm.PNSequence объект. Последовательность повторяется, когда она содержит 14 выборок, в то время как максимальная длина последовательности является только 7 выборками (23-1).

pnSequence = comm.PNSequence('Polynomial',[3 2 0], ...
    'SamplesPerFrame',14,'InitialConditions',[0 0 1]);
x1 = pnSequence();
[x1(1:7) x1(8:14)]
ans = 7×2

     1     1
     0     0
     0     0
     1     1
     1     1
     1     1
     0     0

Создайте другую максимальную последовательность длины на основе полинома генератора, x4+x+1. Когда это - четвертый полином порядка, последовательность повторяется после 15 выборок (24-1).

pnSequence2 = comm.PNSequence('Polynomial','x^4+x+1', ...
    'InitialConditions',[0 0 0 1],'SamplesPerFrame',30);
x2 = pnSequence2();
[x2(1:15) x2(16:30)]
ans = 15×2

     1     1
     0     0
     0     0
     0     0
     1     1
     0     0
     0     0
     1     1
     1     1
     0     0
      ⋮

Алгоритмы

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

  • Объект не имеет свойства выбрать основанные на системе координат выходные параметры.

  • Объект не имеет свойства, которое соответствует параметру Sample time.

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

Смотрите также

|

Представленный в R2012a