基于AUTOSAR开发工具链的AUTOSAR软件实战开发-软件架构设计(五)

RTE接口设计

接口类型介绍

前面我们简单介绍了RTE (Runtime Environment),其作为虚拟功能总线,实现了上层的ASW与BSW的隔离,摆脱了以往ECU软件开发与验证时对硬件系统的依赖。RTE是AUTOSAR的接口实现,对于特定ECU的虚拟功能总线。

RTE接口主要分为以下几大类:

1.Sender-Receiver(S/R);

2.Client-Server(C/S);

3.Mode communication;

4.Calibration parameter communication.

按照component中实现的需求设计相应的接口,根据经验一般SWC之间的数据交互多采用S/R类型的接口,对于SWC和底层间的接口一般采用C/S接口,这样可以减少一些底层CP工具的定制开发。

       架构中接口设计包含必要信息

AUTOSAR接口定义注意不要产生歧义,采用解耦的方式进行定义。 

架构中一个接口应该包含哪些信息才能指导后续开发呢?

  1. 接口ID
  2. 接口类型,比如SR_R,表示SR接口,是接收接口,C/S_C,表示此接口是C/S接口,同时是Client
  3. Port口名称,element/operation名称及含义,对于S/R,对于C/S
  4. 对于S/R接口,需要明确是否具有isupdate更新位
  5. 对于S/R接口,接口数据类型,直接关乎内存使用量,
  6. 对于S/R接口,接口初值,关乎软件逻辑是否正确,在OS刚启动时,往往存在RTE_Read接口早于RTE_Write接口的情况,此时RTE初值将参与计算
  7. 接口所属SWC,所属Runnable

同时根据需求和经验设计标定接口,有效标定接口是需求中会规定的,比如一些功能的实现切换,一些整车夏标、冬标影响性能的参数,在架构设计中除了要满足这些需求的标定量设计,根据经验一些测试环境无法满足的条件也可以通过设计标定量去满足。

标定量一般是存在Flash中唤醒后拷贝到RAM中,那么就需要考虑标定量规模,对Flash和RAM的占用,对需求做出一些修改性要求,对一个map的维度进行要求,比如电池厂对于电池测试数据给出时是不考虑这些的,数据可能一个温度点或者0.5摄氏度给出一个测试点,同时精度可能含有7、8位的小数,这样如果设计标定量时,一个map就可以能占用4、5K的RAM,而对于一个汽车级芯片可能也只有几百K的RAM空间,这样几个map就占用了几十K的RAM,太吃内存了,不可取。

你可能感兴趣的:(java,开发语言)