为了满足前面章节和参考文献[11]中讨论的要求,AUTOSAR联盟定义了汽车软件和软件体系架构的一种新的开发方法。研发方法专注于一个模型驱动的开发风格。软件体系架构以及ECU硬件和网络的拓扑结构,它是在一个支持从架构到集成软件开发过程的元模型中定义的。所有可用的建模元素皆由“AUTOSAR元模型”规定[12]。元模型是根据OMG Meta Object Facility的规则来定义的[13]。
设想的开发方法从定义软件体系架构开始。一个示范性软件体系架构可以在图2.2中看到。
图2.2 软件组件与连接器的案例
框图表示软件“组件”。在框图的周边,显示了软件组件的通信“端口”。一个向内指向的三角箭头是一个“所需的端口”。一个向外突出的三角箭头是一个“设置端口”。所需的端口是一个面向数据流的通信数据接收器,而设置端口是发送者。设置端口可以连接其他软件组件的一个或多个所需端口。为了能够连接端口,两个端口的接口必须是兼容的。
有两种类型的接口:“发送/接收接口”和“客户端/服务器接口”。发送/接收接口支持基于信息的通信,而客户端/服务器接口支持远程过程调用方式的通信。
发送器/接收器接口由一列“数据元素”组成。每个数据元素都有一个名称和数据类型。(www.daowen.com)
客户端/服务器接口由一列“操作”组成。每个操作都有一个签名,它包括一个名称和一个“参数”列表。每个参数由名称、类型和方向来描述,它既可以是进来、出去,也可以是进-出。所有与建模元素相关的软件组件的细节在参考文献[14]中描述。
软件架构的定义是在不考虑硬件上运行的软件组件情况下进行的。这意味着两个软件组件可以运行在相同或不同的ECU上。那么组件之间的通信既可以是内部的ECU通信,也可以是跨ECU通信。为了抽象化这一差异,AUTOSAR推出了VFB。VFB可以看成连接所有组件的一个软件总线。VFB软件总线是基于类似于公共对象请求代理架构(CORBA)的想法[15]。
硬件架构的建模与软件架构的定义并行。AUTOSAR允许建立车辆网络以及ECU硬件拓扑结构模型。这种拓扑结构的一个案例可以在图2.3中看到。这个案例显示了两个ECU连接到动力总成CAN(PT-CAN)上,一个ECU连接到底盘CAN(C-CAN)。这两个CAN总线通过网关连接。
图2.3 网络拓扑案例
一旦定义了软件架构和网络拓扑结构,那么软件实体就可以映射到硬件实体上。软件组件模板标准化了描述软件实体的格式,它是AUTOSAR元模型一个非常重要的部分。它定义了如何规定软件架构。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。