指缝太宽,时光太瘦,未觉三夏尽,时序已新秋。
虽然仍觉热浪翻滚,暑气蒸腾,气温并未下行,但秋的脚步已至门庭。
——2022年8月28日记于广州
Classic Platform |
Adaptive platform |
支持8bit、16bit、32bit的微控制器(MCU),芯片算力小于1000DMIPS(flash空间 512KB以上一般是1M) |
支持运行64bit的高性能处理器(MPU)、Soc的高算力平台,一般算力高于20000DMIPS,对于高算力芯片就会达到几十上百TOPS |
嵌入式语言主要是C语言 |
编程语言是C++ |
RTOS实时操作系统——Based on OSEK 各个AUTOSAR基础软件供应商自行开发 |
可以兼容实时性和非实时性操作系统——Based on POSIX ,linux、QNX、Android均支持 |
OS采用固定的任务调度配置,按既定规则顺序执行,是固定的 |
OS支持多种动态调整策略,配置在运行时完成,动态的 |
任务调度周期可以是us级别的,硬实时系统 |
任务调度周期是在ms级别,最多可以做到软实时系统,部分情况下为非实时系统 |
ASIL-D |
ASIL-B |
PC指针直接从ROM中读取代码并执行 |
代码需要先加载到RAM,然后在RAM中运行程序 |
所有的应用程序一个执行文件(elf),MPU内存保护单元,使用域寄存器进行保护管理 |
每一个应用程序都是一个单独的elf,MMU内存管理单元要比MPU强大,是用虚拟地址映射技术进行管理 |
基于信号的静态配置通信方式,FOA架构(function-oriented architecture)的软件开发,现阶段CP也可以支持基于服务的SOA架构但是需要预设以太网接口(虽然可以集成SOME/IP,但是是将sender-receiver的总线通信转换成了client-server的以太网通信) |
基于服务的动态通信方式(SOME/IP、IPC、RPC),可以实现基于服务的SOA架构(Service-oriented architecture)的软件开发,可以实现并行处理的能力 |
编译前配置,功能固定,所有应用编译链接为一个整体的二进制文件,烧录使用,因此升级过程中需要整体重新集成、编译、烧写。 |
AP AUTOSAR是模块化框架运行时从Manifests文件动态载入配置,可以自行删除/更新/增加单个的Application,也可以单独的升级某一个功能集群的代码,应用软件作为独立的可执行的文件,独立编译、部署,整个软件系统可以实现灵活上线升级 |
使用step步长函数,步长可配置,采用时间片轮询调度 |
支持动态调度策略,可以运行中改变调度时序以及触发条件 |
对高实时性、高安全性、低算力的场景中,如引擎控制、制动系统等传统的ECU |
对实时性、安全性有一定要求但是不高,但是对算力要求较高、场景复杂以及算法逻辑较复杂的应用场景中,如域控制器、智能座舱、智驾域控制器 |
BOUT QNX
汽车操作系统
QNX是业界公认的X86平台上最好的嵌入式实时操作系统之一。它具有独一无二的微内核实时平台,建立在微内核和完全地址空间保护基础之上,实时、稳定、可靠,已经完成到PowerPC、MIPS、ARM等内核的移植,成为在国内广泛应用的嵌入式实时操作系统。罗列重要的页面,添加超链接方便快速查看。
引用 Refreences
•电话:暂不公布
•邮箱:yjfeynman@outlook.com
•知乎:小佛爷修罗道
•领英:feynman,yang
•微信:暂不公布
•Twitter:feynman,yang
原文始发于微信公众号(不架构的汽车电子电气):车载操作系统——系统软件第二篇(CP与AP的差异性)