Autosar开发人员必知概念
1、什么是Autosar架构?
答:汽车开放系统架构(AUTomotive Open System Architecture)是一家致力于制定汽车电子软件标准的联盟。AUTOSAR是由全球汽车制造商、部件供应商及其他电子、半导体和软件系统公司联合建立,各成员保持开发合作伙伴关系。是非盈利性组织。
2、非Autosar联盟成员学习途径有哪些?
答:Autosar官网的规格书
3、2017年Ar规格书体量有多少?
答:A4纸7米高度。
4、Autosar有哪些平台,区别是什么?
答:
经典平台ClassicPlatform和自适应平台AdaptivePlatform;
经典平台常应用于MCU、MPC芯片上,使用Autosar联盟定义的Ar标准模型实现的软件,具有“API标准化”、“软件架构标准化”的特点。
自适应平台用于基于POSIX标准的软件系统上,常见于Linux-ROS,目前Ar联盟还未释放比较完整的规格书。
5、AutosarClassic架构组成有哪些?
答:
基础软件BSW:包括
实现MCU驱动的MCAL,
独立于硬件的具备通用功能的服务模块,
对隔离硬件的抽象驱动接口模块,
软件组件:包括
特定于ECU硬件设计的IO抽象组件
有高时序要求的复杂驱动组件
实现硬件应用功能的传感器执行器组件
实现应用功能的应用程序组件
RTE运行时环境
OS操作系统
6、Autosar Classic软件模块基本工作原理?
答:
软件触发工作方式:软件可执行的程序本质为“事件”,Autosar Classic 软件模拟硬件中断触发的方式,OS对所有软件模块的事件进行触发执行;
任务调度:Autosar Classic OS使用“多任务,任务内多事件”的方式执行程序;
程序工作方式:与硬件中断程序一样,软件模块程序的执行遵循快进快出;
7、Autosar Classic OS特点?
答:
内存分配:单核单堆栈,没有动态内存
支持任务抢占:具备可配置优先级
支持两种形式的硬件中断程序管理:1类(与裸机程序中断无异),2类(中断服务程序的上下文插入了OS管理相关代码段)
8、RTE是什么?
答:RTE运行时环境,是特定于系统实现的模块,主要负责:
宏映射SWC和BSW、SWC和SWC之间的API
管理SWC间传输信息的全局缓存
宏映射OS API
管理SWC间传输的数据队列
9、Autosar设计思想是什么?
答:
Autosar基于模型设计思想开发,使用基于Uml扩展的Ar模型语言满足Ar标准模型设计。
10、Autosar模型是什么?
答:
Ar模型语言基于Uml扩展,是基于xml标记语言实现的一种语法。
Ar模型则是使用Ar语法编程形成的脚本代码段,在解析软件上以不同的视角展现模型内容(有图形视角、表格视角等)。
11、Autosar为什么使用模型来进行设计和开发?
答:
直观性:模型本质是面向对象,将对象以可视化的形式展示,不管是C源码、还是PDF文档、还是一个Zip压缩包,在模型设计中,所有内容将被抽象为模型,在模型设计上,可以给模型添加属性,或是可视化连线的方式在不同模型见建立联系,其图形和表格的设计内容都会被解析保存到xml文件中进行保存。
通用性:xml文件保存的模型数据可以在不同PC平台和软件上解析使用。
模型的设计文档化:保存xml文件的模型即时软件实现,也是设计文档,当使用某些文档生成工具,可以对模型进行设计文档的生成。模型在源码和文档间形成了可追溯的桥梁。
行业使然:计算机软件行业甚至非软件行业都在使用模型,它站在更高的层面上去解决问题。
12、模型的层次?
答:
M3:元元模型,模型的元素类型,类似于编程语言的关键字
M2:元模型,模型的元素,类似于编程语言的函数、控制块格式
M1:模型,模型的定义,类似于编程语言的类
M0:模型对象,模型的实例化,类似于编程语言中类的实例化
M1和M1可以组合成更大的M1,M0和M0可以组合成更大的M0。
13、要精通Autosar设计需要掌握什么技能?
答:
方法论:开发流程、技术问题解决方法
通用架构:M2模型概念
软件组件架构:M1模型概念
各种BSW规格书:BSW M1模型的定义和使用方式
Ar工具的使用
- AUTOSAR的定位
AUTOSAR是Automotive Open System Architecture的缩写,面向和车辆强相关的部件,模块,系统。从AUTOSAR视角看到的有三个平台:CP,AP,IVI。
CP用于safety强相关的,AP用于有较高的算力需求的,智能驾驶,IVI则是车载娱乐。
从域控制器的角度,CP用于车身控制域,AP用于智能驾驶域,IVI则是娱乐域。
CP/AP/IVI的比较
- 架构特色
- 使用AUTOSAR AP有什么好处
AUTOSAR CP的好处是显而易见的,因为有大量的业界的knowhow的积累,及成熟方案。
AP我觉得主要的优势,一个是容易和CP的软硬件模块进行集成。一个复杂的系统需要一个可靠的底座。还有一个优势我觉得是safety,包括上面提到的有节制的架构。
PHM(Platform Health Management)模块,我相信汽车业界的knowhow,将使得自动驾驶这样复杂的场景,可以聚焦在有挑战的前沿技术,而不是重新踩一遍以前的坑。
- 自动驾驶场景
自动驾驶的技术栈:感知,规划,决策,控制。AUTOSAR AP本身没有直接覆盖这些技术点的软件栈,需要将相应的自动驾驶组件集成进来,比如百度Apollo,Autoware,ROS。
自动驾驶这么庞大的系统怎么保证安全呢?虽然26262有预期功能安全方面的讨论,短期内要形成共识,有技术,伦理各方面的难题需要克服。
我个人认为比较靠谱的方案是:基于CP的ADAS + 基于AP的自动驾驶
比如这样的一套硬件架构,按照ISO26262标准来看,当前处理器的安全完整性等级达到ASILB。通过使用冗余,仍然可以实现高度自动驾驶所需的ASIL D等级。
在这样的系统中,冗余的微控制器执行两项任务:一方面,它执行监视功能;另一方面,它也可以用于在发生故障时提供降级的功能,以便系统能够继续以高度的可靠性执行其功能。
AUTOSAR AP 出现的两大技术驱动力:
以太网驱动
随着通信技术的发展,汽车也采用了以太网通信,车载以太网为汽车ECU带来了更高的带宽,使得数据的大量传输能够在短时间得以实现。以太网为更加有效地传输长消息和提供点对点通信提供了有效的解决方案。然而,AUTOSAR另一平台CP则是为了传统的车载通信技术CAN设计的,不能很好地兼容以太网,难以支持基于车载以太网的通信。
处理器驱动
近些年来汽车变得越来越智能,随之汽车对处理器的性能也提出了更高的要求,诸如自动泊车、环境感知、路径规划等高级功能对处理器的高算力需求远远高于对多核的需求。
虽然CP已经应用于传统的多核处理技术,但依旧无法满足车辆对ECU处理能力的需求。此外,从处理器和半导体的技术角度来看,提高性能的唯一方法是多核并行运行。无疑并行运行以及所谓的异构计算也大大超出了CP能够覆盖的范围。
处理器和通信技术相互作用。对强大处理能力和通信速度的要求促使人们创造一个新的平台以适应日益发展的需求。
基于以上两点需求,AUTOSAR AP迎来了它的诞生及快速发展。