exponenta event banner

коммуникация. BlockInterleaver

(Подлежит удалению) Входные символы перестановки с использованием вектора перестановки

Совместимость

comm.BlockInterleaver будет удален в следующем выпуске. Использовать intrlv вместо этого. Дополнительные сведения см. в разделе Вопросы совместимости.

Описание

BlockInterleaver объект переставляет символы во входном сигнале. Внутри системы используется набор регистров сдвига, каждый из которых имеет собственное значение задержки. Этот объект обрабатывает сигналы переменного размера.

Для чередования входного сигнала:

  1. Определите и настройте объект перемежителя блоков. См. раздел Строительство.

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

Примечание

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

Строительство

H = comm.BlockInterleaver создает системный объект перемежителя блоков, H Этот объект переставляет символы во входном сигнале на основе вектора перестановки.

H = comm.BlockInterleaver(Name,Value) создает объект, H, с заданным значением свойства.

Свойства

PermutationVectorSource

Источник вектора перестановки

Укажите источник вектора перестановки как Property или Input port. Значение по умолчанию: Property.

PermutationVector

Вектор перестановки

Укажите сопоставление, используемое для перестановки входных символов в виде целочисленного вектора столбца. Значение по умолчанию: [5;4;3;2;1]. Число элементов свойства вектора перестановки должно быть равно длине входного вектора. PermutationVector свойство указывает индексы по порядку входных элементов, формирующих выходной вектор. Выход отношения (k) = вход (PermutationVector(k)) описывает этот порядок. Каждое целое число, k, должно быть между 1 и N, где N - число элементов в векторе перестановки. Элементы в PermutationVector свойство должно быть целым числом между 1 и N без повторов. PermutationVector доступно только в том случае, если PermutationVectorSource свойство имеет значение Property.

Методы

шаг(Подлежит удалению) Входные символы перестановки с использованием вектора перестановки
Общие для всех системных объектов
release

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

Примеры

свернуть все

Создание объектов перемежителя и обращенного перемежителя.

interleaver = comm.BlockInterleaver([3 4 1 2]');
Warning: COMM.BLOCKINTERLEAVER will be removed in a future release. Use INTRLV instead. See <a href="matlab:helpview(fullfile(docroot, 'toolbox', 'comm', 'comm.map'), 'REMOVE_BlockInterleaverSO')">R2019b Communications Toolbox Release Notes</a> for more information.
deinterleaver = comm.BlockDeinterleaver([3 4 1 2]');
Warning: COMM.BLOCKDEINTERLEAVER will be removed in a future release. Use DEINTRLV instead. See <a href="matlab:helpview(fullfile(docroot, 'toolbox', 'comm', 'comm.map'), 'REMOVE_BlockDeinterleaverSO')">R2019b Communications Toolbox Release Notes</a> for more information.

Пропускать случайные данные через перемежитель и обращенный перемежитель.

data = randi(7,4,1);
intData = interleaver(data);
deIntData = deinterleaver(intData);

Отображение исходной последовательности, чередующейся последовательности и восстановленной последовательности.

[data, intData, deIntData]
ans = 4×3

     6     1     6
     7     7     7
     1     6     1
     7     7     7

Убедитесь, что исходные и обращенные данные идентичны.

isequal(data,deIntData)
ans = logical
   1

Создайте случайный вектор уникальных целых чисел в качестве вектора перестановки.

permVec = randperm(7)';

Определить permVec в качестве вектора перестановки для объектов перемежителя и обращенного перемежителя.

interleaver = comm.BlockInterleaver(permVec);
Warning: COMM.BLOCKINTERLEAVER will be removed in a future release. Use INTRLV instead. See <a href="matlab:helpview(fullfile(docroot, 'toolbox', 'comm', 'comm.map'), 'REMOVE_BlockInterleaverSO')">R2019b Communications Toolbox Release Notes</a> for more information.
deinterleaver = comm.BlockDeinterleaver(permVec);
Warning: COMM.BLOCKDEINTERLEAVER will be removed in a future release. Use DEINTRLV instead. See <a href="matlab:helpview(fullfile(docroot, 'toolbox', 'comm', 'comm.map'), 'REMOVE_BlockDeinterleaverSO')">R2019b Communications Toolbox Release Notes</a> for more information.

Пропускать случайные данные через перемежитель и обращенный перемежитель.

data = randi(10,7,1);
intData = interleaver(data);
deIntData = deinterleaver(intData);

Убедитесь, что исходные и обращенные данные идентичны.

isequal(data,deIntData)
ans = logical
   1

Алгоритмы

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

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

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

Не рекомендуется начинать с R2019b

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

.

См. также

Функции

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