MCU多核异构通信原理

发表于:2024-2-17 09:24

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:红豆沙冰    来源:焉知

  随着电子技术的不断发展,以及市场需求的日益增长,嵌入式系统不仅要求执行复杂的控制任务,还需要实时地采集和处理数据。
  为了满足这些需求,多核异构处理器成为了一种流行的解决方案。这类处理器通常结合了ARM架构的A系列核心(用于处理高级计算任务)以及M系列或R系列核心(专注于实时操作)。
  在这种架构下,复杂的控制任务可以由搭载Linux的A核心处理,而实时数据的采集和处理则可以交由运行RTOS的M核或R核来完成。
  本文结合瑞萨RZ/G2L 多核处理器,给大家讲述一下多核异构设计及通信的原理。
  瑞萨多核处理器概述
  在传统设计中,两颗芯片之间需要通过外部接口交换大量数据,这不仅占用了宝贵的引脚资源,而且数据传输效率低下。
  相反,集成了A核和M核或R核的多核异构处理器利用内部总线结构实现了快速通信,并共享内部资源,从而避免了对外部引脚的占用。
  这种多核异构的系统设计不仅降低了通信过程中的信息安全风险,还减少了芯片采购和管理成本,缩减了PCB板的成本和尺寸,并简化了开发流程。
  瑞萨RZ/G2L处理器概述
  配备双核Arm Cortex-A55 (1.2 GHz) CPU和单核Arm? Cortex?-M33 (200 MHz) CPU、3D图形加速引擎和视频编码解码引擎器的通用微处理器。
  异构通信机制
  异构通信机制(OPENAMP Open Asymmetric Multi-Processing)的方案越来越成熟了。
  在RZ/G2L系列的MPU中,我们可以看到多核异构架构的一个实际应用。这款MPU拥有一个大核Cortex-A55,频率高达1.2GHz,能够运行Linux操作系统,以及一个小核Cortex-M33,频率为200MHz,专门用于运行RTOS或裸机(bare-metal)程序。这两个核心之间的异构通信是通过OpenAMP软件框架实现的。
  OpenAMP是一个轻量级的通信协议,它使得不同的处理器能够通过共享内存或消息传递机制来进行交流。在一个多核处理系统中,各个处理器可能会运行不同的软件模块,而OpenAMP框架则为这些模块之间的数据交换和协作提供了一种有效的手段。通过这种方式,OpenAMP不仅简化了多处理器间的通信,还增强了整个系统的协同效率和功能性。见图1。
图1
  Virtio 虚拟化模块
  Virtio是一个共享内存管理的虚拟设备框架,Virtio中的vring是指向数据缓冲区指针的FIFO队列,有两个单向的vring,一个vring专用于发送到远程处理器的消息,另一个vring用于从远程处理器接收的消息, 数据就存放于共享的内存中,即Vring buffers, 一半用于发送,一半用于接收。
  RPMsg远程处理器消息传递
  RPMsg框架位于Virtio的上层,RPMsg(Remote Processor Messaging)框架是一种基于Virtio的消息总线。见图2。
图2
  Remoteproc
  主处理器上的Linux操作系统可以对远程处理器及其相关软件环境进行生命周期管理,即启动或关闭远程处理器。见图3。
图3
  IPCC处理器间通信控制器
  MHU(Message Handling Unit)是MPU芯片内的一个IP模块,担任IPCC角色,用于Cortex-A55(CA55)之间或与Cortex-M33(CM33)之间的消息通信。数据传输通过共享内存方式实现。
  一个通道由一对数据传输处理寄存器和响应传输处理寄存器组成,共挂载12个通道(CA55 Core0/Core1 CM33,安全和非安全区域)。见图4。
图4
  以上介绍了RZ/G2L双核异构的通信方式,同时RZ/G2L产品也提供相应的软件支持。
  Multi-os (CA55 Linux + CM33 RTOS)
  客户可以使用灵活的软件包(FSP)快速开发应用程序,使用OpenAMP创建与Linux配合使用的应用程序。见图5。
图5
  Cortex-M33开发环境
图6
  相应硬件板及软件工具可以通过瑞萨官网获得。
  JTAG在线调试
  当连接JTAG时,必须如下设置DIP SW1。见图7。
图7
  CORTEX-M33启动方式
  ● CM33由CA55加载启动● 引导过程中有多个时间点可以执行此操作:
  ● Arm Trusted Firmware
   启动CM33的最快方法
   允许将代码加载到安全RAM中
  ● u-boot -> Multi OS SW package默认方式
   CM33 固件容易更新
   二进制文件存储在u-boot可以访问的文件系统中
  ● Linux (remoteproc)
   最方便维护,软件升级改动少
  本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号