Векторная конкатенация, матричная конкатенация
Конкатенация входных сигналов совпадающего типа данных, чтобы создать непрерывный выходной сигнал
- Библиотека:
Simulink / Обычно Используемые Блоки
Simulink / Математические операции
Simulink / Маршрутизация Сигнала
HDL Coder / Математические операции
HDL Coder / Маршрутизация Сигнала
Описание
Блок Concatenate конкатенирует входные сигналы, чтобы создать выходной сигнал, элементы которого находятся в непрерывных местоположениях в памяти.
Совет
Блок Concatenate полезен для создания выходного сигнала, который является невиртуальным. Однако, чтобы создать вектор вызовов функции, используйте блок Mux вместо этого.
Вы используете блок Concatenate, чтобы задать массив шин. Для получения дополнительной информации об определении массива шин, смотрите Шины Объединения в Массив Шин.
Блок Concatenate действует или в режиме конкатенации векторного или в многомерного массива, в зависимости от установки его параметра Mode. Или в случае, блок конкатенирует входные параметры от от начала до конца, или в слева направо, входные порты.
Векторный режим
В векторном режиме все входные сигналы должны быть или векторами или векторами - строками (1 M матрицами) или вектор-столбцы (матрицы M-1) или комбинация векторов и или строка или вектор-столбцы. Когда все входные параметры являются векторами, вывод является вектором.
Если какие-либо из входных параметров являются строкой или вектор-столбцами, вывод является строкой или вектор-столбцом, соответственно.
Режим многомерного массива
Режим многомерного массива принимает векторы и массивы любого размера. Это принимает, что последующие измерения являются всеми единицами для входных сигналов с более низкой размерностью. Например, если вывод является 4-D, и входом является (2D) [2x3]
, этот блок обрабатывает вход как [2x3x1x1]
. Вывод всегда является массивом. Параметр Concatenate dimension позволяет вам задавать выходную размерность, по которой блок конкатенирует свои входные массивы.
Если вы устанавливаете параметр Concatenate dimension на 2
, и входные параметры являются 2D матрицами, блок выполняет горизонтальную конкатенацию матриц и помещает входные матрицы бок о бок, чтобы создать выходную матрицу. Например, см. ex_concatenate_horizontal модель:
Если вы устанавливаете параметр Concatenate dimension на 1
, и входные параметры являются 2D матрицами, блок выполняет вертикальную конкатенацию матриц и складывает входные матрицы друг на друге, чтобы создать выходную матрицу. Например, см. ex_concatenate_vertical модель:
Для горизонтальной конкатенации входные матрицы должны иметь ту же размерность столбца. Для вертикальной конкатенации входные матрицы должны иметь ту же размерность строки. Все входные сигналы должны иметь ту же размерность для всех размерностей кроме размерностей конкатенации.
Если вы устанавливаете параметр Mode на Multidimensional array
, параметр Concatenate dimension к 3
, и входные параметры являются 2D матрицами, блок выполняет многомерную конкатенацию матриц. Например, см. ex_concatenate_multidims модель:
Порты
Входной параметр
развернуть все
Вход Port_1
— First, чтобы конкатенировать
скаляр | вектор | матрица | массив N-D
Сначала введите, чтобы конкатенировать, заданный как скаляр, вектор, матрица или массив N-D.
Зависимости
Входные параметры должны иметь совпадающий тип данных.
Матрица и входные параметры массивов N-D поддерживаются только, когда вы устанавливаете Mode на Multidimensional array
.
Типы данных: single
| double
| int8
| int16
| int32
| uint8
| uint16
| uint32
| Boolean
| fixed point
| enumerated
| bus
Вход Port_N
— Nth, чтобы конкатенировать
скаляр | вектор | матрица | массив N-D
Энный вход, чтобы конкатенировать, заданный как скаляр, вектор, матрица или массив N-D.
Зависимости
Чтобы включить этот порт, установите Number of inputs на целое число, больше, чем или равный 2.
Входные параметры должны иметь совпадающий тип данных.
Матрица и входные параметры массивов N-D поддерживаются только, когда вы устанавливаете Mode на Multidimensional array
.
Типы данных: single
| double
| int8
| int16
| int32
| uint8
| uint16
| uint32
| Boolean
| fixed point
| enumerated
| bus
Вывод
развернуть все
Port_1
— Конкатенация входных сигналов
скаляр | вектор | матрица | массив N-D
Конкатенация входных сигналов, в заданном измерении. Выходные параметры имеют совпадающий тип данных как вход.
Типы данных: single
| double
| int8
| int16
| int32
| uint8
| uint16
| uint32
| Boolean
| fixed point
| enumerated
Параметры
развернуть все
Number of inputs
— Количество входных портов
2
(значение по умолчанию) | положительное целое число
Задайте количество входных параметров для блока как положительное целое число с действительным знаком, меньше чем или равное 65 536.
Программируемое использование
Параметры блоков:
NumInputs |
Ввод: символьный вектор |
Значения: положительное целое число |
Значение по умолчанию:
'2' |
Режим
Тип конкатенации
Vector
| Multidimensional array
Выберите тип конкатенации, которую выполняет этот блок. Mode по умолчанию блока Vector Concatenate является Vector
. Mode по умолчанию блока Matrix Concatenate является Multidimensional array
.
Когда вы выбираете Vector
, блок выполняет векторную конкатенацию (см. Векторный режим для деталей).
Когда вы выбираете Multidimensional array
, блок выполняет конкатенацию матриц (см. Режим Многомерного массива для деталей).
Программируемое использование
Параметры блоков:
Mode |
Ввод: символьный вектор |
Значения:
'Vector' | 'Multidimensional array' |
Значение по умолчанию:
'Vector' |
Concatenate dimension
— Выведите размерность, по которой можно конкатенировать входные массивы
1
(значение по умолчанию) | скалярное целое число
Задайте выходную размерность, по которой можно конкатенировать входные массивы.
Чтобы конкатенировать входные массивы вертикально, введите 1
.
Чтобы конкатенировать входные массивы горизонтально, введите 2
.
Чтобы выполнить многомерную конкатенацию на входных параметрах, задайте целое число, больше, чем 2.
Зависимости
Чтобы включить этот параметр, установите Mode на Multidimensional array
.
Программируемое использование
Параметры блоков:
ConcatenateDimension |
Ввод: символьный вектор |
Значения: скалярное целое число |
Значение по умолчанию:
'1' |
Характеристики блока
Типы данных | Boolean | double | enumerated | fixed point | integer | single
|
Прямое сквозное соединение | yes
|
Многомерные сигналы | no
|
Сигналы переменного размера | yes
|
Обнаружение пересечения нулем | no
|
Расширенные возможности
Генерация кода C/C++
Генерация кода C и C++ с помощью Simulink® Coder™.
Генерация HDL-кода
Сгенерируйте Verilog и код VHDL для FPGA и проекты ASIC с помощью HDL Coder™.
Для получения дополнительной информации о генерации HDL-кода, смотрите Векторную конкатенацию.
Генерация кода PLC
Сгенерируйте код Структурированного текста с помощью Simulink® PLC Coder™.
Преобразование фиксированной точки
Преобразуйте алгоритмы с плавающей точкой в фиксированную точку с помощью Fixed-Point Designer™.
Представленный в R2009b