车载诊断技术 发表于 2023-2-15 23:25:14

车载基础软件——AUTOSAR AP关键技术解读

我是穿拖鞋的汉子,魔都中一位坚持长期主义的工程师!
阴天下雨氛围,习惯性打开耳机,今天特意找到李志以前跨年现场版的无损音频听。音乐飘来多年前的记忆。那时自己刚毕业,在南方那个潮湿的城市,上班来去都是一个人。自己下班回租房途中便是听李志的哥。那时候刚毕业,这些有深度的歌给了自己很多思考的空间,让自己归途中不至于无聊。
老规矩,分享一段喜欢的文字,避免成为高知识低文化的工程师:

好聚好散,不要那么倔,人生很长,我们都有各自的路要走,互相陪着走过一段,已经是很好的事情了。那些旧的,锈的,结冰的,被遗弃或损害的,所有的闪光与心碎,在这里停留,对视,交谈,成为冬天,成为河岸。


Return to today's topic!
一、面向服务的架构(SOA)
当前整车电子电气架构,功能不集中,分散到不同 ECU,使得功能和信号交互异常复杂,代码和逻辑冗余相当严重,而互联网开发思想不断涌入汽车行业,汽车电子电气开发也必须尽快适应变革。面向服务的体系结构,是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,独立于实现服务的硬件平台、操作系统和编程语言,使得构建在各种这类系统中的服务可以以一种统一和通用的方式进行交互。
通过引入 SOA 架构,不但可以使应用软件与硬件及应用软件与应用软件之间松耦合,还可以使车端软件、通信、信息安全能和云端环境产生很好的协同,实现一整套车云生态环境,因此车端采用基于服务的通信 SOA是有效的落地方案。
SOA (Service Oriented Architecture) ,即面向服务的架构。SOA将车端不同功能及硬件能力划分为服务,并按照整车的原子能力将对应服务拆分为颗粒度更小的接口。各服务组件的接口进行标准化封装,可通过既定协议互相访问、扩展组合;其核心要素包括松耦合、标准化定义、软件复用等。
如果说SOA是软件定义汽车实现的软件基础,那整车集中电子电气(EE)架构是SOA架构能够得以发挥的硬件基础。
SOA使应用层功能能够在不同车型上复用,且能够基于标准化接口快速响应用户新的功能需求。此外,通过SOA平台能够充分调用整车各域的传感器、执行器的硬件能力。

交互的服务大致由三个实体组成:
-> 服务请求者;
-> 服务提供者;
-> 服务注册表。
其中实体间的操作包括:服务发布、服务发现、服务绑定和调用。
二、软硬分离
传统汽车控制器的开发模式是等硬件确定后,再进行软件的设计、开发、测试,软件的开发依赖于硬件,无法先行或同步开发,导致软硬件两个团队人员只能顺序完成工作,浪费时间。并且一旦硬件发生改变,软件则需要大量的修改适配,重复工作量巨大。
在新型整车集中式 E/E 架构下,功能服务化,接口统一化,增加了中间件层,软硬分离成为可能。
软硬协同:根据应用场景与算法来设计"专用"硬件,而不能是"通用"硬件。
软硬分离:根据"软硬协同"理念设计出的硬件,接口必须清晰好用,底层驱动要做到高内聚松耦合,让车企好上手。

三、虚拟化
当前高算力芯片层出不穷,通过虚拟化技术,将芯片上所跑的各类业务分类进行隔离已经是目前很多车企的选择。
同时,在软硬分离的背景下,在x86架构PC机上或云端通过虚拟化技术运行虚拟控制器进行服务设计的验证也是目前的主流软件先行方案。
SOA软件架构有个显著的特征,即服务中心化思想。服务之间的所有连接,均需通过ESB总线通讯。ESB总线名称上是通讯总线,但我们认为,应该把ESB称之为SOA服务中间件更恰当,ESB总线实现了以下几个特征:

1、所有服务间禁止任何形式的直接连接,唯一许可的通信方式,就是通过网络调用服务接口;
2、网络调用的具体实现方式不做强制要求,可根据不同系统的特性选择最优解决方案,目前支持Http、Binder、ZMQ、VIWI等,但均需支持以下能力:同步请求、异步请求、订阅、发布;
3、服务接口设计以可公开作为设计导向,即,所有的服务接口,必须是可以对外部人员开发的,没有例外;
4、车云一体化软件组件;
5、实现车端—云端服务对等且位置无关化;
6、并针对不同车型配置,实现个性化配置管理及相应的服务管理。
搁笔分享完毕!
愿你我相信时间的力量,
做一个长期主义者!

页: [1]
查看完整版本: 车载基础软件——AUTOSAR AP关键技术解读