xilinx Mailbox 中的ipi message地址计算方式

适用于openAmp mailbox ipi id对应的ipi message地址计算方式

官方openamp硬件配置解析 OpenAMP Base Hardware Configurations - Xilinx Wiki - Confluence

openamp官方设备树 meta-openamp/meta-xilinx-tools/recipes-bsp/device-tree/files/zynqmp-openamp.dtsi at rel-v2022.1 · Xilinx/meta-openamp · GitHub

一 推导versal ipi地址换算方式

versal系列文档 AMD Technical Information Portal

可以从上面得知,ipi1基地址是0xff3f0600 并通过这个地址划分了512字节大小。从上面知道每一个通道会划分每一个32字节给其他通道通信,并依顺序排序为psm,pmc,IPi0, ipi1, .....

因此在ipi1要跟ipi3交互的地址为: 0xff3f0600+140, 0xff3f0600+160, 得到上述ipimessage地址 0xff3f0740,0xff3f0760

以此类推,ipi3 基地址是0xff3f0a00, 其跟ipi1通信的地址为 0xff3f0a00+0c0, 0xff3f0a00+0e0,

得到上述设备树中的0xff3f0ac0,0xff3f0ae0

二 推导zynqmp ipi地址换算方式

 ug1085最新文档 AMD Technical Information Portal

根据上述versal文档和zynqmp文档(上述图片知道)ipi meassge地址划分:实际上从上述图片看,ch7地址为0xff990600,指向的ch1:0xff990640,0xff990660,

ch1地址为0xff990000 , 指向的ch7:0xff9900c0 ,0xff9900e0

但是从官方以下图片设备树看,ch7→ch1通信地址为0xff990600 0xff990620 因此判断ch1应该是每一组通道排在第一组的,类似versal中的psm,而非ch0为第一组。其他地址划分以此类推

但是上述明显写着ch0 为 Si agent number = 1。因此个人觉得是下面设备树ch7→ch1地址写的有问题

三 openAmp 搭建双核异构通信参考链接:linux 2021版本

非petallinux操作的xilinx zynqmp openamp核间通信框架搭建核测试(APU :linux2021 + rpu1(裸机))-CSDN博客

  • 14
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值