Для компонентов программного обеспечения AUTOSAR, которые содержат несколько runnables, AUTOSAR, Синхронизация спецификации Расширений задает ограничения порядка выполнения. Эти ограничения задают порядок выполнения выполнимых сущностей в компоненте.
В Simulink® вы можете:
Импортируйте ограничения порядка выполнения из файлов ARXML.
Откройте модель компонента AUTOSAR и используйте Редактор Расписания, чтобы изменить порядок выполнения runnables.
Экспортируйте ограничения порядка выполнения в файлы ARXML.
Обновите ограничения порядка выполнения в модели компонента AUTOSAR путем импорта изменений ARXML.
В модели компонента программного обеспечения AUTOSAR можно использовать Редактор Расписания, чтобы запланировать и задать порядок выполнения runnables. Редактор Расписания является инструментом планирования, который отображает разделы в модели, связях данных между ними и порядке тех разделов. В моделях компонента AUTOSAR разделы соответствуют выполнимым сущностям, которые выполняются независимо. В Редакторе Расписания вы можете:
Просмотрите графическое представление runnables как разделы в компоненте AUTOSAR.
Создайте разделы и сопоставьте их с AUTOSAR runnables.
Непосредственно задайте порядок выполнения runnables.
Редактор Расписания поддерживает несколько стилей моделирования, включая моделирование основанного на уровне и экспорта функций. Для получения дополнительной информации смотрите Используя Редактор Расписания и Создайте Разделы.
Можно также использовать Редактор Расписания в моделировании архитектуры AUTOSAR. Смотрите Конфигурируют Планирование AUTOSAR и Симуляцию.
Для runnables в модели компонента AUTOSAR Редактор Расписания первоначально отображает неявные разделы, созданные на основе стиля моделирования компонента. Можно просмотреть и сконфигурировать неявные разделы или создать явные разделы и сопоставить их с новым или существующим AUTOSAR runnables.
Просмотреть и сконфигурировать неявные разделы:
Откройте модель autosar_swc_expfcns в качестве примера AUTOSAR, то, которое использует Simulink, экспортировало функции в модель AUTOSAR runnables.

Откройте вкладку Modeling и выберите Schedule Editor. Редактор Расписания отображает периодические экспортируемые функции, которые сопоставляют с AUTOSAR runnables как неявные разделы.

Можно использовать средства управления редактором, чтобы переупорядочить разделы. Например, в разделе Order, кликните по стрелкам-указателям или перетащите записи таблицы.
Создать явный раздел в компоненте программного обеспечения AUTOSAR:
Откройте модель autosar_swc в качестве примера AUTOSAR, какие модели периодический runnables с несколькими частотами дискретизации.

Первоначально, из Редактора Расписания перспектива, модель содержит неявные разделы D1 и D2.
Чтобы создать раздел, откройте диалоговое окно параметров блоков для подсистемы SS1 и выберите Treat as atomic unit. Установите параметр Schedule as на Periodic partition. Задайте имя раздела, такое как P1 и шаг расчета 1. Нажмите Apply.
Откройте вкладку Modeling и выберите Schedule Editor. Редактор Расписания отображает явный периодический раздел в модели.

Для основанных на уровне моделей можно переупорядочить только разделы, которые имеют тот же уровень. Поскольку эта модель содержит два раздела с различными уровнями, средства управления редактором для переупорядочения разделов не доступны.
В окне модели откройте редактор Отображений Кода и выберите вкладку Functions. Сопоставьте функцию раздела P1 с выполнимым AUTOSAR. Если необходимо добавить выполнимое AUTOSAR, открыть Словарь AUTOSAR, представление Runnables, и нажать кнопку Add
. В данном примере карта P1 к выполнимому Runnable_1s.

Создавание модели AUTOSAR, которая содержит ограничения порядка выполнения, экспортирует время выполнения компонента. Если вы устанавливаете Словарь AUTOSAR опция XML Exported XML File Packaging к Modular, время выполнения экспортируется в файл . Вот ограничение порядка выполнения, экспортируемое для runnables в modelname_timing.arxmlautosar_swc, на основе Редактора Расписания настройка.
<SWC-TIMING UUID="...">
<SHORT-NAME>ASWC</SHORT-NAME>
<TIMING-REQUIREMENTS>
<EXECUTION-ORDER-CONSTRAINT UUID="...">
<SHORT-NAME>EOC</SHORT-NAME>
<ORDERED-ELEMENTS>
<EOC-EXECUTABLE-ENTITY-REF UUID="...>
<SHORT-NAME>Runnable_1s</SHORT-NAME>
<EXECUTABLE-REF DEST="RUNNABLE-ENTITY">
/Company/Powertrain/Components/ASWC/ASWC_IB/Runnable_1s
</EXECUTABLE-REF>
<SUCCESSOR-REFS>
<SUCCESSOR-REF DEST="EOC-EXECUTABLE-ENTITY-REF">
/Timing/ASWC/EOC/Runnable_2s
</SUCCESSOR-REF>
</SUCCESSOR-REFS>
</EOC-EXECUTABLE-ENTITY-REF>
<EOC-EXECUTABLE-ENTITY-REF UUID="...">
<SHORT-NAME>Runnable_2s</SHORT-NAME>
<EXECUTABLE-REF DEST="RUNNABLE-ENTITY">
/Company/Powertrain/Components/ASWC/ASWC_IB/Runnable_2s
</EXECUTABLE-REF>
</EOC-EXECUTABLE-ENTITY-REF>
</ORDERED-ELEMENTS>
</EXECUTION-ORDER-CONSTRAINT>
</TIMING-REQUIREMENTS>
<BEHAVIOR-REF DEST="SWC-INTERNAL-BEHAVIOR">
/Company/Powertrain/Components/ASWC/ASWC_IB
</BEHAVIOR-REF>
</SWC-TIMING>