点击上方蓝字谈思实验室
获取更多汽车网络安全资讯
AUTOSAR (汽车开放系统架构) 是一个国际汽车行业的开放和标准化的软件架构。它的主要目标是为了创建一种独立于硬件的软件架构,以提高汽车电子系统的模块化和可重用性。AUTOSAR架构主要分为两个部分:AUTOSAR Runtime Environment (RTE) 和 AUTOSAR Software Components (SWCs)。
-
AUTOSAR Runtime Environment (RTE)RTE是软件组件之间的通信媒介,它提供接口以实现组件间的数据交换。RTE的主要任务包括通信,输入/输出硬件抽象,时间和数据同步等。
-
AUTOSAR Software Components (SWCs)SWCs是具有明确功能的一种软件模块,例如发动机管理或刹车控制。它们包含一种或多种Runnable Entities (Runnables),这些Runnables是实现SWC功能的代码块。SWCs可以通过RTE进行通信。
AUTOSAR架构还包括以下层级:
-
APPL 应用层应用层包含了所有的AUTOSAR SWC,这些SW辆功能,如刹车管理,动力系统控制等。
-
RTE 运行时环境层这就是RTE,它允许SWC之间的通信并提供硬件抽象。
-
BSW 基础软件层基础软件层包含一系列的模块,负责提供各种服务,如操作系统,通信服务,网络管理,输入/输出硬件控制等。
-
微控制器抽象层这一层为微控制器硬件提供抽象,使得上层软件可以独立于硬件进行设计和开发。
-
硬件层硬件层是实际的物理硬件,例如微控制器,传感器,执行器等。AUTOSAR的这种分层架构可以提高软件的模块化和可重用性,使得汽车制造商和供应商可以更容易地设计和开发复杂的汽车电子系统。
以ECU例子,通俗理解
假设我们正在使用一个单片机(例如STM32)来控制汽车的灯光系统,需要控制头灯、尾灯和转向灯。在AUTOSAR架构中,我们可以将每一个灯光看作是一个单独的软件组件(Software Component,SWC)。例如,“头灯控制SWC”,和“转向灯控制SWC”。
应用层:这一层包含所有的软件组件,也就是我们的头灯、尾灯和转向灯的控制代码。
运行时环境层(RTE):这一层是所有软件组件之间通信的桥梁。例如,当驾驶员打开头灯的开关,"开关控制SW RTE 告诉 "头灯控制SW。
基础软件层:这一层包含了一些基本的软件服务,例如操作系统、驱动程序等。在我们的例子中,单片机的GPIO引脚驱动、PWM驱动等就属于这一层。
微控制器抽象层:这一层对硬件进行了抽象,使得上层软件可以不用关心具体的硬件细节。例如,这一层可以将单片机的某个GPIO引脚抽象为"头灯控制引脚"。
硬件层:这一层就是实际的硬件,也就是我们的单片机和灯光硬件。
这样,当驾驶员打开头灯的开关时,"开关控制SWC" 会通过 RTE 发送消息给 "头灯控制SW灯控制SWC" 会调用基础软件层的 GPIO 驱动程序,通过微控制器抽象层控制硬件层的 GPIO 引脚,从而点亮头灯。
精品活动推荐
原文始发于微信公众号(谈思实验室):AUTOSAR 软件架构
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论