MCU AUTOSAR架构下的多核启动
在软件定义汽车的今天,针对汽车四化发展的需要,原本基于单ECU分布式的EEA面临诸多挑战。并且伴随着芯片产业前所未有的发展,汽车技术开始向域控的方向发展,也就是将多个ECU功能集成整合到一个控制器平台上。无论是SOC域,还是MCU域都提出了更高的要求。MCU的主频不断提高,也从之前普遍的单核变成了多核。
AUTOSAR汽车软件架构在汽车MCU的开发中已经成为主流,AUTOSAR软件支持MCU多核使用。本文将介绍基于地平线J6系列MCU域(Cortex-R52)AUTOSAR在多核系统下的启动过程。
AUTOSAR汽车软件架构在汽车MCU的开发中已经成为主流,AUTOSAR软件支持MCU多核使用。本文将介绍基于地平线J6系列MCU域(Cortex-R52)AUTOSAR在多核系统下的启动过程。
简称 | 全称 |
|---|---|
AUTOSAR | Automotive Open System Architecture |
EEA | Electrical/Electronic Architecture |
ECU | Electronic Control Unit |
J6 | 征程6 |
目录 (Table of Contents)
Cortex-R52初始化过程
AutoSAR多核启动
AutoSAR基础软件启动时序
Cortet-R52初始化过程
在进入AutoSAR世界之前,R52需要在C世界内完成其初始化过程,R52支持虚拟化,当发生Reset后首先进入EL2阶段,假设我们没有虚拟化的需求其初始化过程如下:


AutoSAR多核启动
MCU的核启动习惯,不同芯片存在差异,比如Tricore系列MCU分为主从核,主核先启动然后启动从核,也有的芯片配置直接所有核一起启动不存在主从核之分,比如OrinX 功能安全岛。对于AUTOSAR而言虽然AUTOSAR的启动逻辑是基于主从核的,但是对于没有主从核的的MCU,AUTOSAR会将不作为主核的核进行Halt以模拟主从核。

AutoSAR通过EcuM_Init启动OS,之后调用EcuM_StartupTwo将系统从EcuM手中交接到Os中去。

AutoSAR通过EcuM_Init启动OS,之后调用EcuM_StartupTwo将系统从EcuM手中交接到Os中去。
AutoSAR基础软件启动时序
AutoSAR基础软件启动时序针对不同项目,有着不同实现,不在AUTOSAR规范当中,以下只是一种比较常见的基础软件启动顺序,仅供参考。


Xiaoming on Zhangjiang
END

