Присвойте значения указанным элементам сигнала
Simulink / Математические операции
HDL Coder / Математические операции
Блок Assignment присваивает значения указанным элементам сигнала. Вы задаете индексы элементов, чтобы быть присвоенными значениями или путем ввода индексов в диалоговое окно блока или путем соединения внешнего источника индексов или источников с блоком. Сигнал в порту данных блока, U, задает значения, которые будут присвоены Y. Блок заменяет указанные элементы Y с элементами от сигнала данных.
На основе значения вы вводите для параметра Number of output dimensions, таблица опций индекса отображена. Каждая строка таблицы соответствует одной из выходных размерностей в Number of output dimensions. Для каждой размерности можно задать элементы сигнала работать с. Задайте векторный сигнал как 1D сигнал и матричный сигнал как 2D сигнал. Чтобы включить внешний порт индекса, в соответствующей строке таблицы, устанавливают Index Option на Index vector (port).
Например, примите сигнал 5-D с режимом индексации на основе одним. Таблица в диалоговом окне блока Assignment изменяется, чтобы включать одну строку для каждой размерности. Если вы задаете каждую размерность со следующими записями:
| Строка | Индексируйте опцию | Индекс |
|---|---|---|
| 1 | Assign all | |
| 2 | Index vector (dialog) | [1 3 5] |
| 3 | Starting index (dialog) | 4 |
| 4 | Starting index (port) | |
| 5 | Index vector (port) |
Присвоенными значениями является Y(1:end,[1 3 5],4:3+size(U,3),Idx4:Idx4+size(U,4)-1,Idx5)=U, где Idx4 и Idx5 входные порты для размерностей 4 и 5.
При использовании блока Assignment в режиме normal mode Simulink® инициализирует, блокируют выходные параметры, чтобы обнулить, даже если модель явным образом не инициализирует их. В режиме Accelerator Simulink преобразует модель в S-функцию. Это вовлекает генерацию кода. Сгенерированный код не может сделать неявной инициализации блока выходные параметры. В таких случаях необходимо явным образом инициализировать выходные параметры модели.
Можно использовать блок, чтобы присвоить значения вектору, матрице или многомерным сигналам.
Можно использовать массив шин как входной сигнал с блоком Assignment.
Если вы помещаете блок Assignment в условный блок подсистемы, буфер сигнала может быть вставлен во многих случаях, и слияние сигналов от блоков Assignment с частичными записями может вызвать ошибку.
Однако, если вы устанавливаете флажок Ensure outport is virtual для условного блока Outport подсистемы, такие случаи поддерживаются, и частичные записи к массивам с помощью блоков Assignment возможны.

Типы данных |
|
Прямое сквозное соединение |
|
Многомерные сигналы |
|
Сигналы переменного размера |
|
Обнаружение пересечения нулем |
|