Задайте синхронный сброс и включите поведение для блоков с состоянием
HDL Coder™ / Подсистемы HDL
Используйте блок State Control, чтобы переключить поведение подсистемы между поведением симуляции Simulink® по умолчанию и синхронным аппаратным поведением симуляции.
Для поведения симуляции Simulink по умолчанию, набор State control к Classic
. Поведение симуляции в Classic
режим эквивалентен, когда вы не используете блок State Control в подсистеме.
Для синхронного аппаратного поведения симуляции, набор State control к Synchronous
. Блок State Control в Synchronous
режим улучшает поведение симуляции HDL блоков с состоянием или блоков, которые сбросили или включают порты. Когда использование Synchronous
режим блока, сгенерированный HDL-код использует меньше аппаратных ресурсов, и поведение симуляции Simulink тесно совпадает с тем из цифрового оборудования.
Смотрите синхронное поведение подсистемы с блоком Госконтроля.
Задайте, использовать ли синхронную или классическую семантику. Значением по умолчанию является Synchronous
.
Условные подсистемы с помощью классической семантики не могут иметь подсистем с синхронной семантикой в них.
Вы не можете сгладить синхронную подсистему в классическую систему.
Условные подсистемы должны быть одним уровнем, когда вы используете блок State Control в синхронном режиме.
Synchronous Enabled Subsystem не может содержать подсистемы сброса или порт параметра сброса. Например, у вас не может быть блока Delay с внешним портом сброса в подсистеме.
Все подсистемы действия, соединенные с If и блоками Switch Case, должны иметь ту же семантику, или классическую или синхронную.
Эти блоки не поддержаны в синхронном режиме:
Сигналы переменного размера не поддержаны с синхронной семантикой.
Синхронная семантика не распространяет через контуры модели. Если ваша родительская модель имеет синхронную семантику, любой модели, на которую ссылаются, нужно было задать синхронную семантику явным образом. На корневом уровне каждой модели, на которую ссылаются добавьте блок State Control с набором параметра State control к Synchronous
.
Следующие ограничения применяются к блокам в синхронном режиме:
Блок Delay: Когда вы имеете внешний порт сброса, устанавливаете External reset на Level hold
.
Метод ssSetStateSemanticsClassicAndSynchronous
должен быть установлен в true
.
Stateflow®
Chart: установите State Machine Type на Moore
.
Блок MATLAB Function:
У вас не может быть Системных объектов в блоке MATLAB Function.
Если вы используете непрямое сквозное соединение в блоке MATLAB Function, не программируйте выходные параметры, чтобы использовать входные параметры, или обновил персистентные переменные. Блок MATLAB Function должен управлять выходными параметрами от персистентных переменных.
Чтобы использовать непрямое сквозное соединение, в Портах и Менеджере данных, снимают флажок Allow direct feedthrough. Смотрите Использование Непрямое Сквозное соединение в блоке MATLAB function (Simulink).
Следующие блоки не позволены в синхронном режиме:
Набор единичной задержки блокируется в подбиблиотеке Additional Math & Discrete> Additional Discrete в Simulink, таком как блоки Unit Delay External IC и Unit Delay Resettable
Блоки Simulink с набором Input processing к Columns as channels (frame based)
, где этот параметр применяется.
Непрерывные блоки времени и блоки с непрерывным уровнем
Discrete-Time Integrator с портом сброса
Trigger
LMS Filter
HDL Minimum Resource FFT
DC Blocker
PN Sequence Generator
Convolutional Interleaver и Convolutional Deinterleaver
General Multiplexed Interleaver и General Multiplexed Deinterleaver
Convolutional Encoder и Viterbi Decoder
Sample and Hold