Реализуйте конвейеризацию в Simulink

В этом примере показано, как реализовать конвейеризацию для системы в модели Simulink®. Модель состоит из входа, функциональные компоненты применились к тому же входу и конкатенированному выходу. Для получения дополнительной информации о конвейеризации смотрите Типы Параллелизма.

Setup эта модель для параллельного выполнения. Чтобы видеть завершенную модель, откройте ex_pipelining_top.

  1. Преобразуйте области в этой модели к моделям, на которые ссылаются. Используйте ту же модель, на которую ссылаются, чтобы заменить каждый из функциональных компонентов тот процесс вход. Рисунок показывает демонстрационную настройку.

  2. Откройте параметры конфигурации модели для модели верхнего уровня. Снимите флажок MAT-file logging.

  3. На панели Solver, набор Type к Fixed-step и нажмите Apply. Также гарантируйте, что Periodic sample time constraint установлен в Unconstrained. Под Additional options выберите Allow tasks to execute concurrently on target и нажмите Configure Tasks.

  4. В диалоговом окне Concurrent Execution, на правой панели, устанавливают флажок Enable explicit model partitioning for concurrent behavior. С явным разделением можно разделить модель вручную.

  5. В панели выбора выберите CPU. Нажмите Add task три раза, чтобы добавить три новых задачи.

  6. В панели выбора выберите Tasks and Mapping. На панели Map block to tasks:

    • Под Block: Input нажмите select task и выберите Periodic: Task.

    • Под Block: Function 1 выберите Periodic: Task1.

    • Под Block: Function 2 выберите Periodic: Task2.

    • Под Block: Output выберите Periodic: Task.

    Это сопоставляет ваши разделы с задачами, которые вы создали. Input и блоки модели Output находятся на одной задаче. Каждый функциональный компонент присвоен отдельная задача.

  7. Закройте диалоговое окно Concurrent Execution.

  8. Примените эти параметры конфигурации ко всем моделям, на которые ссылаются. Для получения дополнительной информации смотрите Долю Настройка для Многоуровневых моделей.

Обновите свою модель, чтобы видеть задачи, сопоставленные с отдельными блоками модели.

Примечание

Заметьте, что задержки введены между различными задачами, обозначенными z-1 значком. Представление этих задержек может вызвать различные выходные параметры модели в Simulink. Убедитесь, что ваша модель имеет ожидаемый выход при симуляции параллелизированной модели.

Связанные примеры

Больше о