К памяти на экземпляр (PIM) модели AUTOSAR для приложений AUTOSAR вы импортируете определения памяти на экземпляр из файлов ARXML или создаете содержание памяти на экземпляр в Simulink®. Для получения информации о высокоуровневом рабочем процессе PIM смотрите Память На экземпляр.
AUTOSAR ввел память на экземпляр (ArTypedPerInstanceMemory
), введенный в версии 4.0 схемы AUTOSAR, задает введенный блок памяти AUTOSAR, который доступен для каждого экземпляра компонента программного обеспечения AUTOSAR. В среде выполнения AUTOSAR инструменты калибровки могут получить доступ к 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 содержит Rte_Pim_*
Вызовы API переменных сигнала и переменных состояния.
Для моделей, на которые ссылаются, в модели компонента 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 содержит Rte_Pim_*
Вызовы API переменных хранилища данных.
Когда вы создаете свою модель, XML-файлы, которые сгенерированы, задают исключительную область для каждого блока Data Store Memory, это ссылается на память на экземпляр. Каждое выполнимое, которое доступы память на экземпляр запускают в соответствующей исключительной области. Если несколько AUTOSAR runnables имеют доступ к тому же Блоку памяти Хранилища данных, экспортируемая спецификация AUTOSAR осуществляет непротиворечивость данных при помощи исключительной области AUTOSAR. С этой спецификацией runnables имеют взаимоисключающий доступ к глобальным данным памяти на экземпляр, которые предотвращают повреждение данных.
Если вы выбираете needsNVRAMAccess, SERVICE-NEEDS
запись (версия 3.0 схемы или позже) или NVRAM-MAPPINGS
запись (версия 2.1 схемы) объявляется в XML-файлах. Запись указывает, что память на экземпляр является блоком зеркала RAM и требует сервиса от NvM
модуль менеджера.
Data Store Memory | getDataStore
| getSignal
| getState
| mapDataStore
| mapSignal
| mapState