车域背景
汽车电子领域里一个火热的概念:DCU
Domain Controller Unit: 域控制器(对多个ECU的一个整合)
各汽车主机厂家根据自身设计理念差异将整车划分位不同域。博世,大陆等传统Tier 1划分5个域:
动力域,底盘域,车身域,座舱域,自动驾驶域。
也有厂家如东软runchi把动力域,底盘域,车身域 融合为 整车控制域。
所以车域网 = 整车域 + 座舱域 + 辅助驾驶/自动驾驶
而 座舱域 传统厂商将老芯片升级为 新芯片=》智能座舱芯片 =》操作系统(QNX+Android+Linux)
同时新兴领域、英特尔、英伟达、高通、华为入局 =》自动驾驶芯片=》操作系统(Linux)
无论自动驾驶OS还是智能座舱OS基本都是QNX+Linux或者 QNX+Android
智能座舱域包括信息系统(仪表)+ 车载娱乐系统(IVI)
根据ISO26262标准规定,仪表盘的关键数据和代码与娱乐系统属于不同安全等级。
IVI操作系统,对实时性要求没那么高,可以使用Andorid/Linux等非实时系统,仪表系统一般采用实时系统(RTOS)QNX。
由于不同系统之间数据不能直接访问,但是不同域下的不同系统之间需要通信。现在的解决方案主要是基于TCP/IP协议栈的socket通讯。
比如FDBUS:Fast Distributed Bus.基于Socket的快速分布式总线(开源)
这里提到一个点,为什么使用SOA架构?
- SOA(面向服务的架构)是一种通过松耦合的服务组合来实现业务逻辑的架构模式,它使得系统的各个部分可以独立开发、部署和维护,提高了系统的可扩展性和灵活性
- 解耦:SOA将硬件能力(如摄像头、雷达、显示屏、车窗电机)和软件功能(如人脸识别、自动驾驶算法、语音助手)抽象成独立的服务(Service) 。
- 标准化接口:这些服务通过标准化的接口(通常基于** SOME/IP** 等车载通信协议)提供自己的能力,供其他服务或应用程序发现和调用。
- 构建松耦合,灵活、快速、通过OTA实现
车载操作系统主要面向信息娱乐和智能座舱,目前国内大部分厂商都是利用qnx的硬件虚拟化技术Hypenvisor在一个SOC芯片上搭载了QNX与Android两个系统,相当于在windows电脑使用VMware创建了一个Ubuntu虚拟机。
AAOS:Android Automotive OS:基于Android的车载信息娱乐系统
AUTOSAR
CP平台是为硬实时和高安全要求的嵌入式系统提出的AUTOSAR解决方案
AP平台是为高性能计算的ECU,面向智能驾驶、车联网等复杂场景提出的AUTOSAR解决方案。
Adaptive AutoSar关键特性:
- 智能化:支撑智能驾驶的实现
- SOA的通信架构
- 高性能微处理器(多核)
- 动态调度、大宽带
- 分布式、并行计算
- Serurity、功能安全
CP:基于C语言,面向过程开发,运行在MCU上
- 基于信号的静态配置通信方式
- 静态的服务模块,模块和配置在发布前进行静态编译连接
- 从ROM执行代码
- 基于OSEK操作系统
AP:基于C++,面向对象开发,运行在SOC上
- 基于服务的SOA动态通信方式
- 服务可根据应用需求动态加载,可通过配置文件动态加载,单独更新
- 应用加载到RAM执行
- 基于POSIX OS (QNX/LINUX)操作系统
“AUTOSAR自适应平台中的EM、SM、PHM等中间件,其开发和集成工作的核心是针对座舱域控制器和自动驾驶域控制器这类高性能计算单元。因为这些域需要强大的算力、复杂的软件架构、动态的服务发现以及灵活的功能部署,而这正是AP平台的设计初衷。