AUTOSAR方法论是指AUTOSAR为汽车电子软件系统开发过程定义的一套通用技术方法。该方法论描述了从系统层配置到ECU可执行代码产生过程的设计步骤,如下图所示:
AUTOSAR设计和开发流程分为三个阶段:系统配置阶段、ECU设计与配置阶段、代码生成阶段。
系统配置阶段:是系统设计者或架构师的任务。包括选择硬件和软件组件,定义整个系统的约束条件。AUTOSAR通过使用信息交换格式和模板描述文件来减少初始系统设计时的工作量。系统配置的输入是XML类型的文件,输出是系统配置描述文件,系统配置的主要作用是把软件组件的需求映射到ECU上。
ECU设计与配置阶段:根据系统配置描述文件提取单个ECU资源相关的信息,提取出来的信息生成ECU提取文件。根据这个提取文件对ECU进行配置,例如操作系统任务调度,必要的BSW模块及其配置,运行实体到任务的分配等,从而生成ECU配置描述文件。该描述文件包含了特定ECU的所有信息。
代码生成阶段:基于ECU配置描述文件指定的配置来产生代码、编译代码,并把相关的代码链接起来形成可执行文件。
1、编写系统配置输入描述文件
在AUTOSAR中,所有的描述文件都是XML类型的文件。系统配置输入文件包含三部分内容:
软件组件描述:定义了每个涉及的软件组件的接口内容,如数据类型、端口、接口等。
ECU资源描述:定义了每个ECU的资源需求,如处理器、存储器、外围设备、传感器和执行器等。
系统约束描述:定义了总线信号,软件组件间的拓扑结构和映射关系。
2、系统配置
系统配置的功能主要是在资源和时序关系的前提下,把软件组件映射到各个ECU上,然后借助系统配置生成器生成系统配置描述文件。这个描述文件包括总线映射之类的所有系统信息以及软件组件与某个ECU的映射关系。
3、提取特定ECU的描述
从系统配置描述文件中提取出与各个ECU相关的系统配置描述信息,提取的信息包括ECU通信矩阵、拓扑结构、映射到该ECU上的所有软件组件,并将这些信息放在各个ECU的提取文件中。
4、ECU配置
ECU 配置主要是为该ECU添加必要的信息和数据,如任务调度、必要的基础软件模块及其配置、运行实体及任务分配等,并将结果保存在ECU配置描述文件中,该文件包含了属于特定 ECU的所有信息,换言之,ECU上运行的软件可根据这些信息构造出来。
5、生成可执行文件
根据ECU配置描述文件中的配置信息,生成RTE和基础软件配置的代码,完成基础软件和软件组件的集成,最终生成ECU的可执行代码。
AUTOSAR 的各个设计阶段都会产生一定的数据输出,因此整个开发流程工作量较大且复杂性高。如果没有一套完整工具链的支持,软件开发周期和可靠性将难以得到保证。
Vector公司在AUTOSAR的开发过程中为用户提供了一套完整的工具链,方便用户高效地开发基于AUTOSAR的应用软件,并最终生成符合AUTOSAR 规范的嵌入式代码。下图显示了Vector公司在每个开发环节所提供的相关工具。
Vector 公司提供的整套工具链可以让客户更加高效可靠地开发基于AUTOSAR的ECU 软件。在系统级设计阶段,Vector公司提供的 PREEvision 软件用于架构设计,CANdela Studio 用于诊断文件的设计。在 ECU设计阶段,Vector公司提供的Davinci工具可以方便客户完成SWC和BSW的设计并生成相应的代码。