0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

分享!基于NXP i.MX 8M Plus平台的OpenAMP核间通信方案

Tronlong创龙科技 来源:Tronlong创龙科技 作者:Tronlong创龙科技 2025-02-27 10:44 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

嵌入式系统领域,随着技术不断发展,对于系统性能和功能要求日益提高。核间通信作为提升系统整体效能的关键技术,成为了关注焦点。今天,我们和大家分享一个OpenAMP非对称架构核间通信方案,基于NXP i.MX 8M Plus平台。


OpenAMP架构

AMP(Asymmetric Multi-Processing),即非对称多处理架构。“非对称AMP”双系统是指多个核心相对独立运行不同的操作系统或裸机应用程序,如Linux + RTOS/裸机,但需一个主核心来控制整个系统以及其它从核心。每个处理器核心相互隔离,拥有属于自己的内存,既可各自独立运行不同的任务,又可多个核心之间进行核间通信。OpenAMP框架是一个提供用于处理非对称多处理架构(AMP)系统的软件组件,为开发者提供了便捷高效的开发工具。

随着对嵌入式系统性能需求的持续攀升,非对称AMP架构凭借其独特优势,成为一种新选择,被广泛应用于工业领域,如工业PLC继电保护装置、小电流选线设备等场景,为工业自动化和智能化发展提供了强大的技术支持。

wKgZPGe_0WmAKkN-AAB_7XgRpoI378.jpg图 1


i.MX 8M Plus的OpenAMP开发方案

本案例采用i.MX8M Plus处理器的Cortex-A53核心与Cortex-M7核心,基于RPMsg-lite框架实现高效的核间通信。

Cortex-A53通过加载imx_rpmsg_tty驱动,向内核注册TTY终端设备。这样一来,Linux应用层只需通过访问"/dev/ttyRPMSGxx"设备节点,就能实现间接调用RPMsg-lite接口,与Cortex-M7核心建立通信连接。

系统框图如下图所示。

wKgZO2e_0WqAGoE2AABtS8TWQW8931.jpg图 2


i.MX 8M Plus的典型应用领域

i.MX 8M Plus凭借其强大的性能和出色的兼容性,广泛应用多个领域,为行业提供了有力的硬件支撑。


图 3


OpenAMP开发案例演示

为了简化描述,本文仅摘录部分方案功能描述与测试结果。
开发环境

Windows开发环境:Windows 7 64bit、Windows 10 64bit

虚拟机:VMware15.5.5

Linux开发环境:Ubuntu20.04.6 64bit

U-Boot:U-Boot-2022.04

Kernel:Linux-5.15.71-rt51

SDK开发包:SDK_2_12_0_MIMX8ML8xxxKZ

交叉编译工具链:gcc-arm-none-eabi-10.3-2021.10-x86_64-linux

硬件平台:创龙科技TLIMX8MP-EVM工业评估板(基于NXP i.MX 8M Plus)

案例功能

本文案例主要通过RPMsg-lite框架演示核间通信。首先,在Cortex-A53核心发送"Tronlong"字符串到Cortex-M7核心,Cortex-M7核心接收到"Tronlong"字符串后,会将此消息回发到Cortex-A53核心,最后,Cortex-A53核心接收并校验消息,确保数据传输的准确性和完整性。

程序原理流程图如下所示:

wKgZPGe_0X-ACphVAACcahmcEfY928.jpg图 4

案例测试

请使用USB串口线将评估板的USB TO UART2串口连接至PC机的USB接口,使用RS232交叉串口母母线、USB转RS232公头串口线将评估板的RS232 UART4串口连接至PC机的USB接口,如下图所示。

其中USB TO UART2作为Cortex-A53核心调试串口,RS232 UART4作为Cortex-M7核心调试串口。

wKgZO2e_0X-AXJIOAAC5rmTiNHM385.jpg图 5

参考产品资料进行环境搭建,启动Cortex-M7核心并加载工程镜像,Cortex-M7核心启动后将自动运行程序,加载imx_rpmsg_tty模块,启动核间通信等。

然后将案例rpmsg_lite_str_echo文件拷贝至评估板文件系统,执行如下命令发送数据至Cortex-M7核心。

Target# ./rpmsg_lite_str_echo /dev/ttyRPMSG30

wKgZPGe_0X-AdbxOAABiH6EZdPM215.jpg图 6

Cortex-M7核心接收到数据后,在RS232 UART4调试串口将数据进行打印,同时将数据回发至Cortex-A53。

wKgZO2e_0YCAAZsQAABVd6VInLA047.jpg图 7

在USB TO UART2调试串口可查看Cortex-M7核心回发的数据。

wKgZPGe_0YCAOskzAABhspe1E1U999.jpg图 8

如果您还想查看更多i.MX8M Plus相关的案例演示,请通过公众号(Tronlog创龙科技)查阅,亲自上手体验吧!

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • NXP
    NXP
    +关注

    关注

    61

    文章

    1410

    浏览量

    199149
  • 通信
    +关注

    关注

    18

    文章

    6448

    浏览量

    140248
  • Amp
    Amp
    +关注

    关注

    0

    文章

    102

    浏览量

    48644
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    i.MX 8M Plus SoC 通过外部调试器进行 JTAG 调试的行为有一些疑问,求解答

    我对 i.MX 8M Plus SoC 通过外部调试器进行 JTAG 调试的行为有一些疑问,我希望您能帮助我解决这个问题。 与我使用的其他 i.MX
    发表于 04-23 06:04

    无法将 FlexCan 与 i.MX 8M Plus EVK 板一起使用,为什么?

    我正在使用\" i.MX 8M Plus EVK 板”, and i have flashed on it the latest android version
    发表于 04-17 06:54

    如何下载 i.MX 8M Plus SDK?

    我正在使用 i.MX 8M Plus 处理器,并想下载适用于 Cortex-A53 的适当 SDK。我在产品页面上找不到直接下载链接。 您能否引导我到正确的位置或提供下载 i.MX
    发表于 04-16 07:46

    i.mx 8M Plus PMIC PCA9450CHN不工作是为什么?

    我有一个 Phytec 的 imx 8m Plus 开发板。MIPI DSI 5V 线路和 GND 意外短路。现在电路板无法启动。从 phytec 获取原理图 DOC 后,我测试并观察到
    发表于 04-10 12:54

    如何在“i.MX 8M Plus EVK Board”上的网络浏览器中打开.html文件?

    i am using “i.MX 8M Plus EVK 板”,我已经闪过了“lf_v6.12.34-2.1.0_images_imx8mp
    发表于 04-10 08:56

    NXP PF3000:助力i.MX处理器的高效电源管理方案

    NXP PF3000:助力i.MX处理器的高效电源管理方案 在电子设备的设计中,电源管理是至关重要的一环。一个优秀的电源管理集成电路(PMIC)能够为系统提供稳定、高效的电源供应,确保设备的正常运行
    的头像 发表于 03-15 17:05 541次阅读

    请问qemu 可以模拟 i.MX 8M Plus 吗?

    我们没有i.MX 8M Plus板,所以我想问一下 qemu 是否可以模拟i.MX 8M Plus
    发表于 03-05 08:10

    探索NXP EdgeReady智能HMI解决方案i.MX RT117H的无限可能

    探索NXP EdgeReady智能HMI解决方案i.MX RT117H的无限可能 在当今科技飞速发展的时代,智能人机交互(Smart HMI)在各类产品中的应用越来越广泛。NXP推出
    的头像 发表于 12-25 09:15 613次阅读

    FRDM i.MX 9平台选型指南:FRDM i.MX 9系列开发平台解析

    恩智浦的FRDM平台解决方案旨在提供易于获取的开发工具,有效弥合原型制作与量产之间的鸿沟。FRDM板经济高效、易于使用,具备专业级功能,助力从概念到产品上市的全过程加速推进。在FRDM i.MX
    的头像 发表于 12-11 15:15 5.1w次阅读
    FRDM <b class='flag-5'>i.MX</b> 9<b class='flag-5'>平台</b>选型指南:FRDM <b class='flag-5'>i.MX</b> 9系列开发<b class='flag-5'>平台</b>解析

    恩智浦FRDM i.MX 8M Plus开发板详解

    在开发高级HMI应用、计算机视觉系统以及边缘AI项目时,开发人员常常面临一个共同挑战:如何在不依赖昂贵且复杂的开发平台的前提下,获得足够的处理能力。这正是FRDM i.MX 8M Plus
    的头像 发表于 11-18 15:07 1621次阅读

    恩智浦FRDM i.MX 8M Plus开发板上架

    i.MX 8M Plus应用处理器集成2个或4个Arm Cortex-A53、1个专用于实时控制的Arm Cortex-M7
    的头像 发表于 08-16 17:38 2393次阅读
    恩智浦FRDM <b class='flag-5'>i.MX</b> <b class='flag-5'>8M</b> <b class='flag-5'>Plus</b>开发板上架

    【飞凌嵌入式】基于i.MX9352开发板M的FreeRTOS设计例程

    i.MX 9352作为NXP 推出的新一代轻量级边缘AI处理器,集成2个Cortex-A55和1个Cortex-M33实时,其架构设计充
    的头像 发表于 06-13 16:14 2414次阅读
    【飞凌嵌入式】基于<b class='flag-5'>i.MX</b>9352开发板<b class='flag-5'>M</b><b class='flag-5'>核</b>的FreeRTOS设计例程

    米尔NXP i.MX 91核心板发布,助力新一代入门级Linux应用开发

    本帖最后由 blingbling111 于 2025-5-30 16:17 编辑 米尔电子基于与NXP长期合作的嵌入式处理器开发经验,在i.MX 6和i.MX 8系列核心板领域已
    发表于 05-30 11:20

    大联大友尚集团推出基于NXP和onsemi产品的汽车驾驶员监控系统方案

    大联大控股宣布,其旗下友尚推出基于恩智浦(NXPi.MX 8M Plus处理器平台和安森美(onsemi)AR0144图像传感器的汽车驾驶
    的头像 发表于 05-22 15:04 820次阅读

    TPS6521825 适用于 NXP i.MX 8M mini 的电源管理 IC数据手册

    TPS6521825 是一款单芯片电源管理 IC (PMIC),专门用于支持 i.MX 8M Mini 处理器和 LP873347 器件。该器件的额定温度范围为 –40°C 至 +105°C,适用于各种工业应用。
    的头像 发表于 05-04 10:44 1211次阅读
    TPS6521825 适用于 <b class='flag-5'>NXP</b> <b class='flag-5'>i.MX</b> <b class='flag-5'>8M</b> mini 的电源管理 IC数据手册