企业号介绍

全部
  • 全部
  • 产品
  • 方案
  • 文章
  • 资料
  • 企业

Tronlong创龙科技

89内容数 12146看过 40粉丝

嵌入式产品平台提供商,始终致力于打造高品质工业核心板,业务主要涵盖核心板、评估套件、项目服务

Xilinx ZYNQ双核ARM通信开发实例

12-27 223人看过

前  言:本文主要介绍基于OpenAMP框架的双核ARM通信案例的使用说明,CPU0(Master)运行Linux系统,CPU1(Remote)运行裸机或FreeRTOS程序。CPU0使用remoteproc加载CPU1程序,并对CPU1进行配置。

 

 


 

图 1

OpenAMP详细开发说明可查阅官方文档。

本文基于Xilinx Zynq-7010/7020平台进行案例测试。

 

图2

 

 

1、echo_test案例

1.1 案例功能

案例功能:CPU0使用RPMsg向CPU1发送数据,CPU1接收到数据后再使用RPMsg向CPU0回传数据。CPU0对回传的数据进行验证,并输出验证结果。

1.2 操作说明

 

将CPU1裸机或FreeRTOS可执行文件复制到评估板文件系统“/lib/firmware/”目录下,并执行如下命令加载CPU1程序。

Target#  echo echo_test.elf > /sys/class/remoteproc/remoteproc0/firmware
Target#  echo start > /sys/class/remoteproc/remoteproc0/state

 


 

图 3

执行如下命令加载RPMsg驱动,并在“/dev/”目录下生成RPMsg设备节点。
Target#  modprobe rpmsg_user_dev_driver


 

图 4

将CPU0应用程序可执行文件复制到评估板文件系统,并执行如下命令通过RPMsg与CPU1进行通信。

Target#  ./echo_test


 

图 5

输入1,并按回车键进行测试。

 

图 6


 

图 7

输入2,并按回车键退出测试。


 

图 8

执行如下命令,停止CPU1程序。

Target#  echo stop > /sys/class/remoteproc/remoteproc0/state 


 

图 9

2、matrix_multiply案例

2.1 案例功能

案例功能:CPU0随机生成两个矩阵并使用RPMsg向CPU1发送数据,CPU1接收到数据后进行矩阵乘法运算,再使用RPMsg向CPU0回传运算结果,然后CPU0通过串口终端输出运算结果。

2.2 操作说明

将CPU1裸机或FreeRTOS可执行文件复制到评估板文件系统“/lib/firmware/”目录下,并执行如下命令加载CPU1程序。

Target#  echo matrix_multiply.elf > /sys/class/remoteproc/remoteproc0/firmware

Target#  echo start > /sys/class/remoteproc/remoteproc0/state


 

图 10

执行如下命令加载RPMsg驱动,并在“/dev/”目录下生成RPMsg设备节点。

Target#  modprobe rpmsg_user_dev_driver


 

图 11

将CPU0应用程序可执行文件复制到评估板文件系统,并执行如下命令通过RPMsg与CPU1进行通信。

Target#  ./mat_mul_demo


 

图 12

输入1,并按回车键进行测试。


 

图 13

输入2,并按回车键退出测试。 


 

图 14

执行如下命令,停止CPU1程序。

Target#  echo stop > /sys/class/remoteproc/remoteproc0/state


 

图 15

3、内存分配说明

512MByte DDR容量版本核心板的内存地址分配如下:

表 1


 


 

1GByte DDR容量版本核心板的内存地址分配如下:

表 2


 


 

如需修改CPU1程序(OpenAMP-remote app)内存地址空间范围,可通过更改设备树文件tlz7x-easyevm-s.dts、资源表rsc_table.c及链接文件lscript.ld对内存地址空间进行重新分配。三者需同步修改并保持一致,以确保固件程序链接地址与设备树配置的elf_ddr_0对应。所使用的资源(内存和virtio设备资源)不能超出设备树文件配置的内存范围。


 

图 16设备树文件tlz7x-easyevm-s.dts配置


 

图 17设备树文件tlz7x-easyevm-s.dts配置


 

图 18 CPU1程序资源表rsc_table.c配置


 

图 19 CPU1程序链接文件lscript.ld配置

 

 

最近浏览过的用户(0查看全部

为你推荐

  • 创龙科技SOM-TL5728F核心板2022-05-11 10:17

    产品型号:TI Sitara AM57x+Xilinx Artix-7 处理器设计:TI Sitara 系列 AM5728+Artix-7 工业级高速B2B引出:千兆网口、PCIe、USB 3.0、SATA、GTP等接口 典型应用领域:运动控制、测试测量、机器视觉、智能电力、视频追踪、定位导航 每核主频:1.5GHz 工作温度:-40°C~85°C
  • 创龙科技TL5728F-EVM开发板2022-05-11 09:56

    产品型号:TI Sitara AM57x + Artix-7 FPGA 处理器设计:TI Sitara系列 AM5728+ Artix-7 引出接口:双路千兆网口、双路SFP光口、USB 3.0、CAN等 典型应用领域:运动控制、测试测量、机器视觉、智能电力、视频追踪、定位导航 每核主频:1.5GHz 工作温度:-40°C~85°C
  • 创龙科技TL570x-EVM核心板2022-05-11 09:28

    产品型号:TI Sitara AM57x DSP+ARM 处理器设计:TI Sitara系列AM5708 ARM 工业级B2B引出:千兆网口、PCIe、GPMC、USB 3.0等高速通信接口 典型应用领域:运动控制、工业PC、机器视觉、智能电力、视频监测 定位:异构多核SoC工业级核心板 每核主频:1GHz
  • 创龙科技全志T3工业核心板| 邮票孔2022-05-11 09:13

    产品型号:全志科技 T3 4核ARM Cortex-A7 处理器设计:全志科技T3 4核ARM Cortex-A7 引出接口:CSI、TVIN、MIPI DSI、TVOUT、RGB等 核心板特色: 100%国产元器件方案 典型应用领域:能源电力/轨道交通/工业控制/工业网关/仪器仪表 每核主频:高达1.2GHz
  • 创龙科技全志T3工业评估板 | 邮票孔2022-01-04 11:33

    产品型号:全志4核ARM Cortex-A7 处理器设计:全志科技T34核ARM Cortex-A7 主频:高达1.2GHz 通信接口:千兆网口、CAN、USB、RS485、RS232等 音视频多媒体接口:MIPI LCD、LVDS LCD、TFT LCD、HDMI 核心板采用:100%国产元器件方案
  • 创龙科技TL335x-EVM-S评估板|邮票孔2021-09-14 11:39

    产品型号:TI Sitara AM335x ARM CPU:TI Sitara AM3352/AM3354/AM3359 系列包含产品:AM3352/AM3354/AM3358/AM3359 接口资源丰富:双路千兆网口、HDMI、GPMC、CAN等接口 典型应用领域:通讯管理、数据采集、人机交互、运动控制、智能电力 主频:800MHz/1GHz
  • 创龙科技TL335x-EVM评估板2021-09-14 11:38

    产品型号:TI Sitara AM3352/54/59 ARM CPU:I Sitara AM3352/AM3354/AM3359 系列包含产品: AM3352/AM3354/AM3358/AM3359 典型应用领域: 通讯管理、数据采集、人机交互、运动控制、智能电力 处理器设计:ARM Cortex-A8 工作温度:-40°C~80℃
  • 创龙科技TLZ7x-EasyEVM-S评估板|邮票孔2021-09-09 15:30

    产品型号: Zynq-7000系列XC7Z010/XC7Z020 定位:异构多核SoC评估板 接口资源丰富:引出千兆网口、双路CAMERA、USB等接口 应用领域:测试测量、运动控制、智能电力、通信探测、目标追踪 CPU:Xilinx Zynq-7000 XC7Z010/XC7Z0 处理器设计:2x ARM Cortex-A9,2.5DMIPS/MHz
  • 创龙科技TL138F-EVM评估板2021-09-09 09:36

    产品型号:TI C6000 OMAP-L138DSP+ARM+FPGA CPU型号:TI OMAP-L138 接口资源丰富:引出网口、EMIFA、SATA、USB、LCD、VGA等接口 应用领域:运动控制、电力设备、仪器仪表、医疗设备、通信探测、惯性导航 处理器设计1:1x ARM9,主频456MHz 处理器设计2:1x DSP C674x,主频456MHz,支持浮点运算
  • 创龙科技TLIMX8-EVM评估板2021-09-09 08:43

    产品型号:NXP i.MX 8M Mini 处理器设计:4核ARM Cortex-A53 + 单核ARM Corte 主频:1.6GHz 测试验证:专业PCB Layout+高低温 接口资源:MIPI CAMERA、MIPI/LVDS LCD、HDMI 板载:WIFI模块