AUTOSAR BSW介绍
BSW架构
上一篇文章提到了基础软件层BSW包含微处理器抽象层(MCAL)、ECU抽象层、服务层以及复杂驱动,而每一层按照功能模块可以进一步划分,如下图所示。
微处理器抽象层MCAL
我们先来看一下微处理器抽象层(MCAL),MCAL是BSW的最低层,它包含一些MCU内部驱动软件模块,这些驱动直接访问MCU内部外设(ADC、WatchDog、General Purpose Timer等)。MCAL这一层依赖于MCU,但是它的上面一层(ECU抽象层)则可以独立于具体的MCU。
MCAL主要包含下面这些模块:
- 微控制器驱动
MCU内部外设驱动,比如看门狗、通用功能定时器等。 - 通信接口驱动
ECU板上通信接口驱动(如SPI, I2C)以及整车通信接口驱动(CAN, 以太网等) - 非易失性存储器(NVM)驱动
片上NVM驱动(内部Flash、EEPROM等),片外NVM驱动(外部Flash、EEPROM等) - I/O驱动
模拟和数字I/O驱动(ADC、PWM、DIO等) - 加密模块驱动
片上加密模块驱动,如SHE、HSM
ECU抽象层
ECU的全称是Eclectronic Control Unit,直译为电子控制单元,也称为行车电脑。通俗来讲就是MCU加上一些外围必要的电路组成的一个系统,可以对各种输入信号(传感器信号、车载网络信号等)进行加工处理,然后进行信号输出(控制执行器的信号、车载网络信号等)的一个专用嵌入式系统。
ECU抽象层对MCAL所包含的驱动进行封装,同时它还包含片外设备(板上设备)的驱动。ECU抽象层提供访问各种设备的接口,不管这些设备的位置在哪里(是MCU内部还是MCU外部),也不管它们是如何与MCU进行连接的(端口还是串行通信)。它的任务是让上层软件(服务层)独立于ECU硬件设备。
片外设备顾名思义是位于MCU外部的设备,或者说是ECU的板上设备。这些设备包括但不限于:
- 外部EEPROM
- 外部看门狗
- 外部FLASH
片外设备的驱动被称为外部驱动,它们位于ECU抽象层,它们通过MCAL层的驱动访问这些外部设备。一个例子是,具有SPI接口的外部EEPROM的驱动程序,通过MCAL的SPI总线驱动对外部EEPROM进行访问。
ECU抽象层通常包含一系列接口,这些接口是对位于它们下方的模块的抽象。它提供访问特定类型设备的通用API,不关心该类型设备存在的个数以及具体的硬件实现。接口层只负责数据的传递,不改变数据的内容。比如,一个CAN通信系统的接口提供访问CAN网络的API,调用者不必关心CAN控制器的个数,也不用关心CAN控制器的位置是在MCU内部还是MCU外部。
复杂驱动CDD
复杂驱动跨越MCAL、ECU抽象层和服务层,是AUTOSAR标准之外的基础软件模块。一般是通过特定中断或复杂的MCU外设,用来实现传感器处理和执行器驱动,比如电机控制、电磁阀控制、位置检测等。
复杂驱动的任务是实现特殊功能或者对时序有较高要求的功能,用以处理复杂的传感器和执行器。复杂驱动高度依赖于MCU、ECU和应用软件。
服务层
服务层是BSW的最高层,为上层的应用软件提供各种服务:
- Input/Output
对传感器、执行器以及ECU板上设备的标准访问服务 - 存储服务
对内部/外部存储设备的标准化访问服务(NVM) - 通信服务
对车载网络系统(CAN, LIN)、ECU板上通信系统(SPI, I2C)的标准访问服务 - Off-Board通信
对V2X通信,车内无线通信网络系统的标准化服务
系统服务 - 标准化的系统服务(操作系统,定时器)
- 诊断服务
UDS诊断服务,内存错误检测,DTC等 - ECU状态管理
ECU电源状态管理,模式管理服务,看门狗管理 - 加密服务
对密码原语的标准化访问服务,包括内部/外部硬件加速器
以上是对BSW的介绍,下一篇介绍一下RTE层。更多干货,请关注微信公众号”日拱一卒不期而至“,我们后会有期。
AUTOSAR BSW介绍相关推荐
- 精心整理吐血推荐的AUTOSAR科普介绍材料
一.AUTOSAR的背景介绍 AUTOSAR是AUTOmotive Open System Architecture(汽车开放系统架构)的首字母缩写,是由全球各大汽车整车厂.汽车零部件供应商.汽车电子 ...
- Autosar BSW开发必知的“术语”+“缩写”概念-1-诊断通信篇
如何使用该博文? ==>您可以将该篇博文当做"字典",遇到疑惑的Autosar"关键字",使用组合键Ctrl+F,快速查找该关键字. 推荐Autosar培 ...
- AUTOSAR架构介绍(3)
既然AUTOSAR是分层设计,每层都有自己的设计接口,总结来说主要的接口为: (1)AUTOSAR接口是一种与应用相关的接口,与RTE一并生成.基于AUTOSAR接口的端口可以用于软件组件(Softw ...
- Autosar DataType介绍
前言 看了一下基本的配置,发现Autosar的DataType的内容比较多,也比较复杂,所以单独开一章来记录一下 Autosar DataType介绍 前言 一.基本数据类型 1.1基本类型 1.2其 ...
- Autosar BSW层CAN通讯开发------08(Autosar的E2E开发-----以E2E Profile01为例)
Crc校验在CAN报文中的实际应用介绍: Crc在报文传输过程中的实际应用如下(在汽车中,Crc一般是对8个字节进行校验,目前我接触到的是这样): ECU-A和ECU-B之间进行CAN报文的传输,双方 ...
- AUTOSAR 架构介绍
在AUTOSAR软件架构中,汽车嵌入式系统软件自上而下分别为应用软件层(Application Software Layer,ASW).运行时环境(Runtime Environment,RTE).基 ...
- 墙裂推荐的AUTOSAR科普介绍
AUTOSAR介绍 AUTOSAR(AUTOmotive Open System Architecture,汽车开放系统架构)合作伙伴关系成立于 2003 年,是一种面向汽车行业内各组织的开发伙伴关系 ...
- Adaptive AUTOSAR架构介绍(2)
在AP(Adaptive AUTOSAR)架构下,一切都是OS中的进程,这跟CP架构有着显著的区别,在CP架构下,所有应用都是静态配置的,即应用的进程在OS中被写死,一旦软件编译完成就不可更改,其调用 ...
- 总目录- AutoSAR BSW高阶配置【持续更新中...】
AutoSAR小白建议从下面这个系列学习:链接
- Adaptive AUTOSAR架构介绍(9)
MATLAB Simulink Adaptive AUTOSAR生成的代码解析: 在simulink上生成的代码工程如图所示: providedinterface_common.h providedi ...
最新文章
- LYNC 和 Exchange 整合手记之R2 如何下如何安装补丁
- 前端面试题整理(js)
- SAP Spartacus产品数据HTTP GET请求前的OPTIONS请求
- 7-35 城市间紧急救援 (25 分)(思路加详解)
- [css] 移动页面底部工具条有3个图标,如何平分?在设置边框后最后一个图标掉下去了怎么办?
- Apache的多处理模块MPM
- 图的深度优先搜索遍历
- PKU/POJ 2054 Color a Tree
- LeetCode刷题目录
- mybatis 实现批量更新
- 智能合约语言 Solidity 教程系列3 - 函数类型
- 升级版DC/DC转换器有什么优点?
- 网络安全笔记-网络设备专场(路由器、交换机、防火墙)
- ObjectARX_AutoCAD创建矩形功能实现
- 计算机辅助审计笔记,审计笔记2.0 盘点
- 为什么人需要一个人静静--《孤独力》的读后感
- “散场“却不”离场“的2020进博会品牌第一自行车辐轮王
- Hark的数据结构与算法练习之锦标赛排序
- window10系统安装梅雁EDMS(MAYAN EDMS)
- 利用python下载fnl数据方法