Сократите время выполнения, свернув или удалив группы блоков.
Категория: Цель моделирования
По умолчанию: Вкл.
Программное обеспечение Simulink ® выполняет поиск и сокращение следующих шаблонов блоков :
Избыточные преобразования типов - ненужные блоки преобразования типов, такие как int блок преобразования типа с входом и выходом типа int.
Мертвый код - блокирует или сигнализирует в неиспользуемом кодовом тракте.
Блок быстрого-медленного-скоростного перехода в однозадачной системе - блоки скоростного перехода с входной частотой быстрее, чем его выходная частота.
Программное обеспечение Simulink не выполняет поиск шаблонов блоков, которые можно оптимизировать. Моделирование и сгенерированный код не оптимизированы.
При выборе параметра Сокращение блока (Block reduction) программное обеспечение Simulink сворачивает определенные группы блоков в единый, более эффективный блок или полностью удаляет их. Это приводит к более быстрому выполнению во время моделирования модели и создания кода.
Сокращение блока не изменяет внешний вид исходной модели.
Настраиваемые параметры не предотвращают уменьшение блока путем исключения мертвого кода.
После сокращения блоков программное обеспечение Simulink не отображает сортированный порядок для блоков, которые были удалены.
При наличии лицензии Simulink Coder™ сокращение блоков предназначено для удаления только созданного кода, представляющего выполнение блока. Другие вспомогательные данные, такие как определения времени выборки и типов данных, могут остаться в сгенерированном коде.
Любые блоки или сигналы в неиспользуемом кодовом тракте исключаются из сгенерированного кода.
Чтобы считать блок частью неиспользуемого пути кода, необходимо выполнить следующие условия:
Все пути сигнала для блока заканчиваются блоком, который не выполняется. Примеры блоков, которые не выполняются, включают блоки терминатора, отключенные блоки утверждения, блоки S-функций, настроенные для сокращения блоков, и блоки To Workspace, когда ведение журнала MAT-файла отключено для создания кода.
Никакие пути сигнала для блока не включают глобальное хранение сигнала в нисходящем направлении от блока.
Настраиваемые параметры не предотвращают уменьшение блока путем исключения мертвого кода.

Рассмотрим пути сигналов на следующей блок-схеме.
Если установлен флажок Block reduction, программное обеспечение Simulink Coder реагирует на каждый путь сигнала следующим образом:
| Для тракта сигнала... | Программное обеспечение Simulink Coder... |
|---|---|
| In1 Out1 | Создает код, поскольку условия исключения неработоспособного кода не выполняются. |
| In2 к терминатору | Не создает код, так как выполняются условия исключения мертвого кода. |
| In3 в область | Генерирует код, если ведение журнала MAT-файла включено, и исключает код, если ведение журнала MAT-файла отключено. |
Параметр: BlockReduction |
Значение:
'on' | 'off' |
По умолчанию:
'on' |
| Приложение | Настройка |
|---|---|
| Отладка | Выкл для моделирования или во время разработки Отсутствие влияния на генерацию производственного кода |
| Отслеживаемость | Прочь |
| Эффективность | На |
| Меры безопасности | Никакого воздействия |