基于OSEK/VDX规范的车控电子开发
3.3OSEKNM规范
对于由不同生产商生产的汽车ECU产品,它们有通过串行数据交换连接成网络的趋势。因此,为了避免重复劳动和缩短开发时间,需要有一个基础性的标准。OSEKNM规范(OSEKNetwork Management system specification)为提高ECU产品的网络互连能力提供了一个网络连接标准。OSEK NM任务的目的是提高ECU产品网络通信的安全性和可靠性。OSEK NM规范规定了网络管理的机制和应用编程接口(API)。采用OSEK NM规范的ECU产品具有以下功能:
◆ 经过授权后,每一个节点必须是可以访问的;
◆ 在允许访问失败的情况下,具有最大容忍限度;
◆ 支持网络诊断。
作为一个基础的配置,遵守OSEK规范的网络管理实现必须应用在网络的所有节点。每一个节点都能在规定的间隔内获得整个网络的状态信息。 OSEK NM为网络监控提供了两种机制:一种是通过监控应用的消息进行间接监控;另一种是对于特定的网络管理利用标记机制进行直接监控。OSEK NM包括以下部分:
◆ OSEK NM与应用程序的接口(API);
◆ 节点监控的算法;
◆ OSEK NM与OSEK COM的接口;
◆ 转换到睡眠状态的算法;
◆ OSEK NM协议数据单元(NMPDU)。
图3说明了OSEK NM在整个系统中的位置及其与其他部分的关系。
![OSEK NM在系统中的位置](http://m.amcfsurvey.com/editerupload/fetch/20131127/197578_2_0.jpg)
图3 OSEK NM在系统中的位置
3.4 OSEK实现语言规范
为了达到软件可移植的目标,OSEK OIL规范(OSEK Implementation Language Specification)定义了一种配置和使用OSEK应用的方法。图4表示了一个遵守OSEK规范的应用开发过程。OIL文件可以是手写的或者是系统配置工具产生的。
![基于OSEK规范的应用开发过程](http://m.amcfsurvey.com/editerupload/fetch/20131127/197578_2_1.jpg)
图4 基于OSEK规范的应用开发过程
OIL提供一种在特定CPU中配置OSEK应用的机制。每个CPU对应一个OIL描述,所有的OSEK系统对象用OIL对象来描述。OSEK应用的OIL描述是一组OIL对象的组合,CPU是这些OIL对象的容器。OIL明确地为每个OIL对象定义了所有标准属性。每个OSEK应用可以定义附加的特殊执行属性和引用。每个OSEK应用可以限制每个属性的取值范围。
OIL中的对象包括:CPU(处理器)、OS(操作系统)、Appmode(应用模式)、Isr(中断服务)、Resource(资源)、 Task(任务)、Counter(记数器)、Event(事件)、Alarm(报警器)、Com(通信子系统)、Message(消息)、Ipdu(交互层协议数据单元)、NM(网络管理)。
3.5 OSEK ORTI规范
OSEK ORTI规范(OSEK RunTime InteRFace Specification)为OSEK操作系统开发工具提供了统一的接口。通过OSEK ORTI,使调试工具可以获取和显示操作系统的运行状态和性能、各种任务的状态、各种操作系统对象的状态等信息。ORTI文件是由系统生成器在系统生成阶段产生的。ORTI使用KIOL语言将操作系统内核信息传递给调试器,同时为OSEK标准对象定义了一些的语法规则。ORTI信息是通过ASCII文本文件提供的。由于OSEK/VDX是基于静态配置的,因此,ORTI不支持动态的表示和配置数据。
OSEK ORTI规范包括Part A和Part B两部分:Part A介绍了ORTI为调试工具定义的操作系统内核对象的语言(Kernel Object Interface Language,KOIL);Part B描述了OSEK/VDX标准对象、属性和它们的含义。
评论