Можно смоделировать память на экземпляр (PIM) AUTOSAR для приложений AUTOSAR. К модели AUTOSAR память на экземпляр импортируйте определения памяти на экземпляр из файлов arxml
или создайте содержание памяти на экземпляр в Simulink®. Для получения информации о высокоуровневом рабочем процессе PIM смотрите Память На экземпляр.
AUTOSAR ввел память на экземпляр (ArTypedPerInstanceMemory
), введенный в версии 4.0 схемы AUTOSAR, задает введенный блок памяти AUTOSAR, который доступен для каждого экземпляра компонента программного обеспечения AUTOSAR. В Среде выполнения AUTOSAR (RTE) инструменты калибровки могут получить доступ к блокам arTypedPerInstanceMemory
для измерения и калибровки.
К модели AUTOSAR PIM можно использовать сигналы блока Simulink, дискретные состояния или хранилища данных в модели.
Сконфигурируйте блоки-сигналы и состояния как AUTOSAR введенная память на экземпляр
Сконфигурируйте хранилища данных как AUTOSAR введенная память на экземпляр
Сгенерировать блоки arTypedPerInstanceMemory
для сигнала блока Simulink и данных о дискретном состоянии в вашей модели AUTOSAR, редакторе Отображений открытого кода. Используйте вкладку Signals/States, чтобы сопоставить сигналы и состояния к arTypedPerInstanceMemory
. Например:
Откройте модель AUTOSAR, которая содержит сигналы или состояния, для которых вы хотите сгенерировать блоки arTypedPerInstanceMemory
. Этот пример использует модель autosar_swc_counter
.
В перспективе кода AUTOSAR, редакторе Отображений открытого кода и выборе вкладка Signals/States. В списке доступных сигналов выберите sum_out
. Выбор сигнала подсвечивает сигнал в диаграмме модели и отображает атрибуты сигнала в Property Inspector. Используйте Property Inspector, чтобы изменить атрибуты сигнала. В Mapped To выпадающий список выберите ArTypedPerInstanceMemory
. Для получения дополнительной информации о коде сигнала и калибровочных атрибутах, смотрите Блоки-сигналы Карты и состояния к Переменным AUTOSAR.
Во вкладке Signals/States, в списке доступных состояний, избранного X
состояния. Используйте Property Inspector, чтобы изменить атрибуты состояния. В Mapped To выпадающий список выберите ArTypedPerInstanceMemory
.
Когда вы генерируете код:
Экспортируемые файлы arxml
содержат описания AR-TYPED-PER-INSTANCE-MEMORYS
для сигналов, и утверждает, что вы сконфигурировали как ArTypedPerInstanceMemory
.
Сгенерированный код C содержит вызовы API Rte_Pim_*
переменных сигнала и переменных состояния.
Для моделей, на которые ссылаются, в модели компонента AUTOSAR Embedded Coder® автоматически сопоставляет внутренний сигнал и состояния для генерации кода модели - ссылки. Внутренние сигналы и состояния автоматически сопоставляют с ArTypedPerInstanceMemory
AUTOSAR для модели - ссылки мультиэкземпляра или StaticMemory
AUTOSAR для модели - ссылки одно экземпляра.
Сгенерировать блоки arTypedPerInstanceMemory
для блоков памяти хранилища данных Simulink в вашей модели AUTOSAR, редакторе Отображений открытого кода. Используйте вкладки Data Stores, чтобы сопоставить хранилища данных с arTypedPerInstanceMemory
. Например:
Откройте модель AUTOSAR, которая содержит хранилища данных, для которых вы хотите сгенерировать блоки arTypedPerInstanceMemory
. Этот пример использует модель autosar_bsw_sensor1
.
В перспективе кода AUTOSAR, редакторе Отображений открытого кода и выборе вкладка Data Stores. В списке доступных хранилищ данных выберите хранилище данных LowSetPoint
. Выбор хранилища данных подсвечивает блок памяти хранилища данных в диаграмме модели и отображает атрибуты хранилища данных в Property Inspector. Используйте Property Inspector, чтобы изменить атрибуты хранилища данных. В Mapped To выпадающий список выберите ArTypedPerInstanceMemory
. Для получения дополнительной информации о коде хранилища данных и калибровочных атрибутах, смотрите Хранилища данных Карты к Переменным AUTOSAR.
Когда вы генерируете код:
Экспортируемые файлы arxml
содержат описания AR-TYPED-PER-INSTANCE-MEMORYS
для хранилищ данных, которые вы сконфигурировали как ArTypedPerInstanceMemory
.
Сгенерированный код C содержит вызовы API Rte_Pim_*
переменных хранилища данных.
Когда вы создаете свою модель, XML-файлы, которые сгенерированы, задают исключительную область для каждого Блока памяти Хранилища данных, это ссылается на память на экземпляр. Каждое выполнимое, которое доступы память на экземпляр запускают в соответствующей исключительной области. Если несколько AUTOSAR runnables имеют доступ к тому же Блоку памяти Хранилища данных, экспортируемая спецификация AUTOSAR осуществляет непротиворечивость данных при помощи исключительной области AUTOSAR. С этой спецификацией runnables имеют взаимоисключающий доступ к глобальным данным памяти на экземпляр, которые предотвращают повреждение данных.
Программное обеспечение не поддерживает генерацию кода памяти на экземпляр для хранилищ данных в моделях, на которые ссылаются.
Если вы выбираете needsNVRAMAccess, запись SERVICE-NEEDS
(версия 3.0 схемы или позже) или запись NVRAM-MAPPINGS
(версия 2.1 схемы) объявляются в XML-файлах. Запись указывает, что память на экземпляр является блоком зеркала RAM и требует сервиса от менеджера по NvM
модуль.
Память хранилища данных | getDataStore
| getSignal
| getState
| mapDataStore
| mapSignal
| mapState