exponenta event banner

Реализация параллелизма данных в Simulink

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

Настройте эту модель для параллельного выполнения. Чтобы увидеть законченную модель, откройте ex_data_parallelism_top.

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

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

  3. На панели «Решатель» задайте для параметра «Тип» значение Fixed-step и нажмите «Применить». Также убедитесь, что для временного ограничения периодической выборки установлено значение Unconstrained. В разделе Дополнительные параметры выберите Разрешить одновременное выполнение задач на конечном объекте и щелкните Настроить задачи.

  4. В диалоговом окне Параллельное выполнение (Concurrent Execution) на правой панели установите флажок Включить явное разбиение модели на разделы для параллельного поведения. При явном секционировании модель можно секционировать вручную.

  5. На панели выбора выберите CPU. Нажмите Добавить задачу четыре раза, чтобы добавить четыре новые задачи.

  6. На панели выбора выберите Задачи и сопоставление. На панели Сопоставить блок с задачами:

    • В разделе «Блок: Ввод» нажмите select task и выбрать Periodic: Task.

    • В разделе «Блок: Функция 1» выберите Periodic: Task1.

    • В разделе «Блок: Функция 2» выберите Periodic: Task2.

    • В разделе «Блок: Функция 3» выберите Periodic: Task3.

    • В разделе «Блок: Вывод» выберите Periodic: Task.

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

  7. На панели выбора выберите Перенос данных. На панели «Параметры передачи данных» задайте для параметра «Периодические сигналы» значение Ensure deterministic transfer (minimum delay). Нажмите кнопку Применить (Apply) и закройте диалоговое окно Одновременное выполнение (Concurrent Execution).

  8. Примените эти параметры конфигурации ко всем ссылочным моделям. Дополнительные сведения см. в разделе Совместное использование конфигурации с несколькими моделями.

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

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

Подробнее