Транспозиция входных символов путем выбора элементов матрицы вдоль диагоналей
Сублибрарий перемежения блоков
Блок Matrix Helical Скана Interleaver выполняет перемежение блоков, заполняя матрицу с входом символами по строкам и затем отправляя содержимое матрицы в порт выхода по спирали. Параметры Number of rows и Number of columns являются размерностями матрицы, которую блок использует внутренне для своих расчетов.
Спиральный режим означает, что блок выбирает выходные символы путем выбора элементов вдоль диагоналей матрицы. Количество элементов в каждой диагонали соответствует параметру Number of columns, после того, как блок при необходимости проходит мимо ребер матрицы. Блок пересекает диагонали так, что индекс строки и индекс столбца оба увеличиваются. Каждая диагональ после первой начинается на одну строку ниже первого элемента предыдущей диагонали.
Параметром Array step size является наклон каждой диагонали, то есть величина, на которую индекс строки увеличивается, когда индекс столбца увеличивается на единицу. Этот параметр должен быть целым числом от нуля до Number of rows параметра. Если параметр Array step size равен нулю, то блок не перемежается, и выход аналогичен входу.
Этот блок принимает вектор-столбец входной сигнал. Количество элементов входного вектора должно быть продуктом Number of rows и Number of columns.
Блок принимает следующие типы данных: int8
, uint8
, int16
, uint16
, int32
, uint32
, boolean
, single
, double
, и с фиксированной точкой. Сигнал выхода наследует свой тип данных от входного сигнала.
Количество строк в матрице, которое блок использует для своих расчетов.
Количество столбцов в матрице, используемое блоком для своих расчетов.
Наклон диагоналей, которые считывает блок.
Если Number of rows и Number of columns параметры 6 и 4, соответственно, то для внутренних расчетов перемежитель использует матрицу 6 на 4. Если параметр Array step size равен 1, диагонали будут такими, как показано на рисунке ниже. Положения с таким же цветом образуют часть той же диагонали, а диагонали с более темными цветами предшествуют позициям с более светлыми цветами в выход сигнале.
Учитывая входной сигнал [1:24]'
, блок производит выход
[1; 6; 11; 16; 5; 10; 15; 20; 9; 14; 19; 24; 13; 18; 23;... 4; 17; 22; 3; 8; 21; 2; 7; 12]