前言:车载软件方案商蓝马舱行智能科技(上海)有限公司(以下简称:Landmark)和车载操作系统厂商睿赛德科技(以下简称:RT-Thread)以及西班牙eProsima联合打造出的助力整车SOA功能量产落地的软件平台Gemini-OS,在【整车SOA突破性技术-区域控制器在聚焦】以及【整车SOA技术升级:将Micro-ROS运用于区域控制器】两篇文章中详细介绍了区域控制器作为连接大量传感器/执行器与车载中央电脑的ECU,将Micro_ROS运用于其中,来实现AUTOSAR和RT-Thread同时部署在高性能多核MCU上。该平台采用双OS高效通信,得益于专用的IPC通信组件:GEMINI COM,该组件进行全双工高速通信,本文中我们将详细讲解到GEMINI COM组件的构成与其工作方式。
GEMINI COM是负责承载包括但不限于进程/线程间、CPU核间、跨系统间调用、数据通信的组件,在底层传输协议的支撑下,实现了频道隔离、一对一、一对多、多对一、多对多等通信模式,通过IPC_Channel组件实现通信,详情见下图:
GEMINI COM共分为五层:通信层由其它协议栈提供(如TCP/MQ/RPMSG等),负责支撑数据的可靠收发;包层负责打包数据,以固定单位打包,并可以支持拼接;帧层负责数据分片和ACK校验、重发机制;消息层负责序列化/反序列化数据结构,支撑结构传输;调用层负责抽象出函数调用的概念,用于多模组间的功能互相调用。如下图是其各个子模块框架图:
其中调用层、帧协议层、包协议层的设计使得发送和接收数据的维度更多,自定义处理逻辑的空间更大;通信层的设计使得GMINI COM组件与底层I/O模块分离,可在任意数据传输协议栈上搭建通信。
通信层中,协议栈提供了TCP/MQ/RPMSG等,其中以RT_-Thread提供的RPMSG LITE为主要处理方式,详情见下图:
RPMSG相关处理工作是双OS跨核通信的底层数据处理的重要环节部分,展现了新型的通信方式,且实现了以往不曾有过的功能,具体流程如下图:
GEMINI COM集成了本地通信interface,对外包含三种接口:数据接口、调用接口、信号接口,其中主要的SOA接口均提供于调用层:代理接口(Proxy)为调用方函数,接口桩(Stub)为被调方函数,两类函数可由IF_RegProxy和IF_RegStub接口灵活配置,该设计的亮点使得GEMINI COM组件的使用者能够更灵活的配置需要挂载的调用,同时使其它应用程序开发者能无感知的调用跨核、跨系统、跨网络的对端接口。
以其中灯光开关模块举例,Landmark方提供AutoSAR侧的GEMINI COM端的控制灯光函数,并注册Stub桩函数,RT-Thread方提供声明Proxy函数,同时注册Proxy函数,将调用接口函数提供出来给HMI调用,控制灯光状态,并将状态返回。该内存管理器独立于操作系统平台外的内存管理方式,对POSIX与非POSIX标准的操作系统均有良好的支撑。
蓝马舱行智能科技(上海)有限公司,是一家致力于研发智能座舱域控软件和整车新架构并同时基于多核异构SoC及MCU提供软件解决方案及工具链的公司。公司成立于2019年,专注于8155芯片平台的研发,助力多家主机厂顺利量产8155座舱平台。2021年开始,公司拓展了整车计算,辅助驾驶及架构设计业务。目前蓝马正在参与多家主机厂的预研和量产项目,包括下一代电子电器架构设计、区域控制器研发、中央计算单元研发、SOA服务框架实现等。
上海睿赛德电子科技有限公司在国内操作系统领域享有盛誉,其贡献并维护的RT-Thread开源嵌入式操作系统,目前已经成为市面上装机量最大(超 14 亿台)、开发者数量最多、软硬件生态最好的嵌入式操作系统之一,被广泛应用于安防、工业车载、穿戴、智慧城市等众多行业领域。公司拥有一系列自主知识产权技术,包括高可靠RTOS 、日志型高可靠文件系统、低功耗技术、GUI图形库、智能音频等。将RT-Thread打造成车载、大工业及人工智能等产业的最主流平台,构建出全新的服务及运营模式,是公司长期的使命和追求!
eProsima是一家专注于高性能中间件开发的西班牙软件公司。该公司是对象管理组(OMG)的标准化机构成员,创建了中间件的标准,如DDS、RTPS、DDS-XRCE、DDS上的RPC、CDR等。此外,eProsima是机器人操作系统(ROS)技术指导委员会(TSC)的成员,ROS是一个开源机器人技术开发堆栈,并提供快速DDS作为其默认中间件。eProsima开发并且维护微ROS,微控制器的官方ROS2扩展。
点击 “阅读原文”进入官网