中间件是位于操作系统和应用程序之间的软件层。它使系统的应用组件能够更灵活地部署和交互,让软件开发人员专注于开发其应用程序的业务逻辑上,而不将精力花费在不同软件组件的连接上。尤其在智能驾驶域中,大量节点需要进行频繁的信息交互,在多核异构的大算力架构下,融合来自不同传感器的感知信息、核内通信、跨核通信、跨芯片通信、跨域通信,都需要通信中间件从中协调。
2023年3月14-16日,2023第四届软件定义汽车论坛暨AUTOSAR中国日上,华玉通软联合创始人兼研发副总裁毕晓鹏介绍,行业内主流的通信中间件解决方案之一是DDS,其由对象管理组织(OMG)进行定义,是基于DCPS(以数据为中心的发布订阅)模型的一种中间件协议和API标准。
毕晓鹏表示,华玉通软已推出的“雨燕”通信中间件(SWIFT DDS) 是国内首个基于OMG DDS标准完全独立自主研发的高性能通信中间件,提供以数据为中心、描述分布式网络环境下数据交互行为的实时通信服务,从架构到源代码,完全独立自主研发,未使用开源模块。他强调,SWIFT DDS也是国内首个自主研发、通过ISO 26262 ASIL-D功能安全产品认证的DDS高性能通信中间件。
以下是演讲内容整理:
华玉通软专注于智能驾驶基础软件的研发与创新,希望通过具备完全自主知识产权的底层核心技术,帮助客户构建多源异构数据及上层应用之间高实时、高可靠、高安全的互联互通。目前,华玉通软已经推出了基于DDS标准研发的“雨燕”通信中间件(SWIFT DDS),并与业内多家OEM和Tier 1达成了合作。华玉在去年的第三届论坛上分享了SWIFT DDS的开发情况,本次则是与大家分享SWIFT DDS在智驾域上应用的最新进展。
智能驾驶中间件核心价值:提升效率与构建“桥梁”
对于汽车领域的软件开发人员来说,中间件的价值在于为上层应用的开发提供底层操作系统无法覆盖的服务。在软件定义汽车的背景下,汽车上的软件结构逐渐演进成自下而上的操作系统-中间件-应用软件的分层架构。无论底层硬件是SOC还是MCU,硬件之上会有一层操作系统,如果运行了Hypervisor,那么多个核上可以运行多个独立的操作系统。如果在操作系统之上,让应用开发人员直接开发应用,可能会面临很复杂的问题,比如说开发者除了调试自己的应用算法之外,还需要解决许多嵌入式的问题,也需要解决底软和驱动的相关问题。
中间件的作用由此体现。应用开发人员只需要关注自己的算法模块,其它的内容,例如通信、调度、诊断,都可以以服务调用的方式通过中间件实现。简而言之,中间件在操作系统和上层应用之间作为“桥梁”存在,同时起到解耦和为上层应用提供必要服务框架的作用。华玉通软提供的中间件服务和产品是帮助客户在已有的底层环境上,以低成本高效率实现上层应用的开发、集成与部署。
智能驾驶中间件需要具备的五种核心价值:
第一,解耦。其中包括上层应用与底层操作系统和底层硬件之间的解耦,以及各个应用之间的解耦。
第二,统一架构模型,降低集成复杂度。
第三,上层开发者可以更多地关注应用开发,而不需要考虑底软和通信等问题。
第四,高度灵活性。中间件需具备动态化、灵活性的配置方式。
第五,中间件最重要的价值在于提高上层应用开发与部署的效率。
实现智能驾驶快速量产,DDS需求持续增长
基于中间件的价值,智能驾驶领域中间件的核心需求是通信中间件。
通信中间件是一种软件技术,用于在分布式系统中实现不同模块之间的数据交互。在智能驾驶领域,通信中间件需要满足多场景的需求,例如:支持各种传感器设备的接入,保证海量多元异构数据的高稳定、高实时、高安全的传输(如点云或摄像头大数据量通信),实现高频信号的实时通信等。此外,通信中间件还要考虑数据安全、系统扩展性和稳定性等问题。DDS(Data Distribution Service)就是一种广泛应用于智能驾驶领域的通信中间件解决方案。
根据与汽车领域不同客户的广泛交流,华玉发现市场在近年来对DDS的需求呈现出持续增长的趋势。
例如在2021年,OEM和Tier 1关注DDS相比于SOME/IP等其他中间件方案的优势;到了2022年,客户已经比较认可DDS在智能驾驶领域的适用性;而到了今年,许多客户在设计新一代软件架构时,都将DDS作为解决全域通信以及车云通信的首选框架。
那么,为什么越来越多的主机厂在设计软件架构时选择DDS作为通信中间件解决方案?
第一,DDS实现“软硬解耦”和“软软解耦”,提升算法应用开发部署效率。DDS作为一种以数据为中心(Data-Centric)和基于发布订阅架构(Publish-Subscribe)开发的通信协议,与传统的RPC(Remote Procedure Call)模式不同,使用DDS进行通信的每个模块只需要发布和订阅感兴趣的数据即可,无需关心数据来源或去向,从而实现了算法模块之间的解耦。
例如,一个做路径规划(Planning)的模块,需要获取起点信息、终点信息和障碍物信息,进行规划后需要将规划好的路径发布给后续的其它模块,开发者只需通过DDS进行主题(Topic)的订阅和发布操作即可。具体来说,只需要在工程里面加入几行代码,分别订阅“起点”、“终点”和“障碍物”三个主题,以及发布“路径”主题。他们不必关心这些信息的来源和去向,从而实现了模块之间的解耦。
第二,DDS具有更加灵活的QoS配置,这也是DDS受到客户欢迎的原因之一。
DDS的每个QoS都是为实际场景设计的,例如当需要配置冗余时,如果用DDS做通信架构,只需要在配置文件里面改变Ownership的QoS配置,不需要在代码端进行任何修改或重新编译。再例如需要关注周期性信息的时效性时,只需要配置Deadline这个QoS,再在对应的回调函数中设置对于数据逾期的处理逻辑即可。
第三,DDS具有可移植性和互操作性两大特点。首先,在DDS标准协议中,它对上层提供统一的标准接口,不同厂商的DDS产品都遵循相同的接口规范,便于应用的移植;其次,DDS对下层具备互操作性,不同厂商的DDS产品之间可以实现数据的交换和联通。
总结而言,DDS越来越受到行业市场青睐的核心原因,是其可以满足智能汽车软件开发过程中所遇到的通信需求,包括诸如动辄几十个进程之间的复杂场景下的数据通信、软硬件解耦、通信可靠性和安全性等问题。更重要的是,DDS可以帮助主机厂以更短的时间、更低的成本,快速完成算法和应用的开发及部署,进一步加快智能汽车的大规模量产,满足市场日益变化和更加多元的需要。
国产自主可控,SWIFT DDS应运而生
面对国内智能汽车行业对于DDS产品的日益增长的需求,华玉发布了国内首个基于DDS标准完全自主研发的高性能通信中间件——“雨燕”通信中间件(SWIFT DDS)。SWIFT DDS在整个开发过程中没有参考任何开源代码,实现了100%自主创新,在历经3年多时间的打磨后,成为非常成熟、稳定的商业化DDS产品,并在与众多客户的合作过程中得到了验证。去年SWIFT DDS通过了ISO 26262 ASIL-D级功能安全认证,也成为了国内首个自主研发并通过该认证的DDS产品。
SWIFT DDS的核心优势包括以下几点:
首先,SWIFT DDS强大的产品性能优势。SWIFT DDS支持SOC+MCU双版本,同其他开源产品相比,SWIFT DDS在延迟性、吞吐性、底层通信方式支持、CPU性能、内存占用等方面的表现更加优异,可以在常见的车载以太网下保持稳定高效地运行,并且随着节点数增加,性能仍然保持稳定,避免了开源产品经常会出现的多节点崩溃或者运行缓慢等问题。除产品本身之外,华玉也按照DDS标准开发了一套完整的DDS功能包,包括QoS策略配置、DDS扩展模块和DDS工具等。
第二,跨系统与跨平台。SWIFT DDS的底层对硬件和操作系统进行抽象,目前已适配过市场上主流的车载操作系统和平台,包括Linux、VxWorks、QNX、FreeRTOS、AUTOSAR AP、AUTOSAR CP、CyberRT、ROS2等多种操作系统;同时已成功部署在地平线“征程”系列、赛灵思ZU5、英伟达Orin、芯驰G9X、NXP S32G2、TI TDA4以及英飞凌TC397等芯片上。对于资源有限的MCU或者实时核上部署DDS,华玉提供全功能的实时版本SWIFT DDS-RT,同时可根据不同系统集成方案中对于通信的具体需求进行优化,兼顾资源占用和性能效率,并提供及时、专业、贴心的技术服务和售后保障。
第三,提供完整的工具链。为了客户更加方便地使用SWIFT DDS产品,华玉研发了一整套DDS工具链。用户可使用界面交互的方式进行传输数据类型的定义,DDS网络配置,QoS配置,代码自动生成,DDS实时监控以及录包回放等功能。这一整套工具链可以实现对于DDS使用的全面覆盖。
第四,SWIFT DDS支持多种通信方式,包括UDP、TCP、共享内存、零拷贝、IPC核间通信等。用户可以根据自己的需求,在配置文件中动态选择合适的通信方式。
SWIFT DDS最大的核心优势之一,是去年12月获得了ISO 26262 ASIL-D级功能安全认证。这意味着作为国内首个自主研发且通过功能安全认证的商用DDS产品,SWIFT DDS可以为主机厂和Tier 1在开发智能驾驶通信系统软件架构上提供更加可靠的安全保障,满足客户在量产阶段对软件功能安全的严苛要求。
SWIFT DDS作为成熟、稳定、且进入商用化的DDS产品,已经得到了客户和市场的认可,并在智驾域、智能座舱域的多个场景中得到了验证和应用,满足整个域内以及域间通信的场景,包括智能驾驶域芯片间的通信、域内通信、域间通信,以及不同算法模块之间沟通的需求,为智能汽车更快、更安全的量产提供坚实的基础。
推出完整SWIFT DDS工具链,提升客户使用便捷性
为了提升SWIFT DDS在使用中的便捷性,华玉开发了完整SWIFT DDS工具链,包括SWIFT DDS Configurator, Code Generator, Shape Demo, Monitor, Recorder&Replay, Automated Test Platform等。其中客户最为关注的是以下几个工具。
第一,SWIFT DDS Shape Demo通过交互图形界面的形式可向用户展示华玉DDS SWIFT中间件的完整通信过程,支持多种QoS配置,也支持与第三方厂商DDS的互联互通,帮助客户快速了解DDS协议内容,熟悉其发布-订阅模式,展示SWIFT DDS高质量服务,并验证SWIFT DDS的互操作性。
第二个是SWIFT DDS Monitor工具,可以实现对DDS系统的实时监控,并以图形化的形式展示和列举所有DDS节点的运行状态以及每一层Entity的细节信息,其主要作用是在系统运行过程中,对于DDS通信状态进行监控和诊断。
此外,华玉的SWIFT DDS Recorder & Replay工具,可以实现域内DDS通信数据的录制和存储,并在后期需要时进行回放,支持倍速播放的方式,满足客户在离线状态下对于通信场景的仿真或者对于通信数据的需求。
除了SWIFT DDS以外,华玉还推出了完全自主研发的“云雀”执行管理中间件,为主机厂在系统程序及资源管理方面提供自主可控且具有高度可扩展性的解决方案,基于“以服务为中心”的设计思想,通过完善的程序生命周期管理和健康管理,保证系统运行的高度安全性。未来,针对智能汽车行业的需求,华玉将陆续研发其他核心中间件模块,进一步打造完整的智能驾驶基础软件平台,为客户提供更加多元、精准和可靠的基础软件解决方案。
(以上内容来自华玉通软联合创始人兼研发副总裁毕晓鹏于2023年3月14日-16日在2023第四届软件定义汽车论坛暨AUTOSAR中国日发表的《智驾域中间件的思考与应用》主题演讲。)
免责声明:本文由用户上传,如有错误请指正,如有侵权,请联系删除!