Восстановите упорядоченное расположение символов, транспонированных винтовым перемежителем
Сверточная сублибрария перемежения
Блок Helical Deinterleaver переключает символы в входном сигнале, помещая их в строку массива за строкой и затем выбирая группы по спирали, чтобы отправить в порт выхода.
Блок использует массив внутри для своих расчетов. Если C является параметром Number of columns in helical array, то массив имеет C столбцов и неограниченные строки. Если N является параметром Group size, то блок принимает вход длины C· N на каждом временном шаге и вставляет их в следующие N строки массива. Блок также помещает параметр Initial condition в определенные положения в нескольких верхних строках массива (не только для размещения спирального шаблона, но и для сохранения векторных индексов символов, которые проходят через блоки Helical Interleaver и Helical Deinterleaver в свою очередь).
Выход состоит из последовательных групп N символов. Считая с начала симуляции, блок выбирает k-ю выходную группу в массиве из столбца k mod C. Выбор спиральный из-за сокращения по модулю C и из-за того, что первый символ в kth группа находится в строке 1 + (k -1) * s, где s является параметром Helical array step size.
Этот блок принимает вектор-столбец входной сигнал, содержащий C· N элементов.
Блок может принимать типы данных int8
, uint8
, int16
, uint16
, int32
, uint32
, boolean
, single
, double
, и с фиксированной точкой. Тип данных этого выхода будет таким же, как и у входного сигнала.
После обработки сообщения с блоком Helical Interleaver и блоком Helical Deinterleaver, данные с обратным перемежением отстают от исходного сообщения на
выборки. Прежде чем эта задержка истечет, выход обратного перемежителя является либо параметром Initial condition в блоке Helical Deinterleaver, либо параметром Initial condition в блоке Helical Interleaver.
Если ваша модель несет дополнительную задержку между выходом перемежителя и входом перемежителя, то восстановленная последовательность отстает от исходной последовательности на сумму дополнительной задержки и величину в формуле выше. Для правильной синхронизации задержка между перемежителем и обратным перемежителем должна быть m· C· N для некоторых неотрицательных целочисленных m. Можно использовать блок DSP System Toolbox™ Delay, чтобы при необходимости настроить задержки вручную.
Количество столбцов, C, в спиральном массиве.
Размер, N, каждой группы символов. Входная ширина в C раза N.
Количество строк разделения между последовательными выходными группами, когда блок выбирает их из соответствующих столбцов спирального массива.
Скаляр, который заполняет массив перед размещением первого входа.
[1] Berlekamp, E. R. and P. Tong. «Улучшенные перемежители для Алгебраических блочных кодов». Патент США 4559625, 17 декабря 1985 г.