AUTOSAR接口类型及访问规则

AUTOSAR接口类型及访问规则

  • 1. AUTOSAR接口类型
    • 1.1 AUTOSAR接口(AUTOSAR Interface)
    • 1.2 标准AUOTSAR接口(Standardized AUTOSAR Interface)
    • 1.3 标准接口(Standardized Interface)
  • 2. 软件模块间接口规则

  AUTOSAR标准将软件分成了BSW(Basic Software)、RTE和ASW(Application Software)三部分。其中BSW被细分为MCAL、ECU Abstraction Layer和Services Layer三个层次。每个层次的软件包含若干软件模块。ASW也包含若干应用软件组件(SWC,Software Component)。这些软件模块之间通过AUTOSAR标准规定的接口实现互相访问。如下图所示。
AUTOSAR接口类型及访问规则_第1张图片
 

1. AUTOSAR接口类型

  AUTOSAR标准规定了三种接口类型,分别是AUTOSAR接口(AUTOSAR Interface)、标准AUOTSAR接口(Standardized AUTOSAR Interface)和标准接口(Standardized Interface)。
 

1.1 AUTOSAR接口(AUTOSAR Interface)

  AUTOSAR接口定义了SWC之间、BSW模块之间以及SWC与BSW模块之间交互的信息。以SWC或BSW模块端口(Port)的形式实现。如下是部分AUTOSAR接口的端口类型:
AUTOSAR接口类型及访问规则_第2张图片

  通过这些端口,SWC与BSW模块之间实现了数据的收发和服务的调用。这些端口之间的通信既可以是本地的,也可以是通过通信网络实现的。AUTOSAR接口传递的数据或提供的服务是标准中没有明确定义的,需要根据具体的应用场景进行设计。
 

1.2 标准AUOTSAR接口(Standardized AUTOSAR Interface)

  标准AUTOSAR接口指的是AUTOSAR标准中对语法和语义有明确定义的AUTOSAR接口(AUTOSAR Interface)。主要的应用是定义BSW模块提供给SWC的标准AUTOSAR服务。
  例如,下图中的ApplicationMonitor是应用层的一个SWC,它的一个Client-Server端口是OsService类型。该端口提供了GetActiveApplicationMode()、GetApplicationState()等操作。ApplicationMonitor可以通过OsService端口请求OS提供上述服务。这就是一个OS服务端口的例子。
AUTOSAR接口类型及访问规则_第3张图片

  与AUTOSAR接口(AUTOSAR Interface)的不同之处在于标准AUOTSAR接口(Standardized AUTOSAR Interface)提供的服务在相关BSW模块的规范中给出了明确的定义。如下的BSW模块均提供标准AUOTSAR接口服务。

  • Basic Software Mode Manager - BswM
  • Communication Manager - ComM
  • Crypto Service Manager - Csm
  • Default Error Tracer - Det
  • Diagnostic Communication Manager - Dcm
  • Diagnostic Communication Manager for SAE J1939 - J1939Dcm
  • Diagnostic Event Manager - Dem
  • Diagnostic Log and Trace - Dlt
  • Diagnostic over IP - DoIP
  • ECU State Manager - EcuM
  • Secure Onboard Communication - SecOC
  • NVRAM Manager - NvM
  • Operating System - Os
  • Request Manager for SAE J1939 - J1939Rm
  • Synchronized Time-Base Manager - StbM
  • Watchdog Manager - WdgM

1.3 标准接口(Standardized Interface)

  标准接口(Standardized Interface)是指AUTOSAR标准各软件模块中明确定义的API。例如,在AUTOSAR规范Specification of DIO Driver中,为DIO模块定义了如下的API。这些API就属于标准接口
AUTOSAR接口类型及访问规则_第4张图片

  标准接口主要用于在同一ECU内部的软件模块之间的通信。两个不在同一个ECU内且靠通信网络建立联系的软件模块之间不能采用标准接口进行通信。标准接口本质上是函数调用关系,不像AUTOSAR接口(AUTOSAR Interface)通过端口传递数据和服务。

2. 软件模块间接口规则

  AUTOSAR软件模块间的访问遵循如下的访问规则:
1) 允许服务层(Services Layer)内部软件模块间的相互访问。
2) 允许ECU抽象层(ECU Abstraction Layer)内部软件模块之间的相互访问。
3) 允许复杂驱动(CDD)访问其它BSW模块。
4) 允许顶层软件访问同功能组的下一层级软件模块的全部接口。例如Memory Service 相关软件模块可以访问Memory Hardware Abstraction中所有软件模块的接口。
5) 允许IoHwAb访问除其同功能组内的MCAL I/O Drivers外的其它功能组MCAL 驱动。例如Communication Drivers。
6) 允许所有软件层级中的模块访问System Services相关模块。
7) 禁止MCAL软件模块间的互相访问。
8) 避免上层软件模块跨层级访问下层软件模块。例如Service Layer中的软件模块跨过ECU Abstraction Layer直接访问MCAL的模块。
9) 禁止上层软件模块跨越两级或以上访问下层软件。例如SWC直接访问MCAL。
10)禁止上层软件模块跨过MCAL直接访问MCU硬件。

  详细的各层级软件功能组间的访问规则,请参考下图。
AUTOSAR接口类型及访问规则_第5张图片

  图中左侧列出的模块为发起访问的模块。上方列出的模块为被访问模块。例如,下图表示允许SWC/RTE访问System Services模块或OS。
AUTOSAR接口类型及访问规则_第6张图片

你可能感兴趣的:(AUTOSAR杂谈,autosar)