AXI-HP接口_DMA_GIC编程.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《详细介绍AXI-HP 接口+DMA+GIC 编程》 赵永科 2013-3-22 项目信息:基于ZED-Board 实现的宽带实时自适应均衡器 本文参考了 Xilinx 官方文档 UG873 ,“System Design Using Processing System High Performance Slave Port ”。主要实现了PL 中AXI CDMA IP 与PS 部分HP64bit 从接口集成。 本例中AXI CDMA 部分扮演主机,从PS 部分DDR 系统内存中源缓冲区拷贝一列数据到目 的缓冲区。可以分别采用裸机工程和基于Linux 的应用软件来实现功能。原文是基于ZC702 评估板的,关于详细的ZC702 资料请去Xilinx 官网或Avnet 官网,本文不再赘述。 在PS 中共有4 个高性能从AXI 接口(名称:AXI_HP{3:0} ,也称AFI ,因为带FIFO 功能) 连接PL 到OCM 或DDR2 ,建立PS 和PL 间的高带宽数据通道。 本文要做的内部结构如下图所示。 AXI CDMA 从机接口连接到PS 通用主机接口M_AXI_GP1.用于PS 来配置AXI 寄存器用于 数据传输和状态检测。 AXI CDMA 主机接口连接到PS 高性能从机接口S_AXI_HP0.用于CDMA 模块读取DDR 系 统内存源缓冲区数据。 AXI CDMA 主机接口连接到PS 高性能从机接口S_AXI_HP2.用于CDMA 模块将数据写回 DDR 系统内存目的缓冲区。 AXI CDMA 中断从PL 连接到PS 全局中断控制器(GIC) 。当数据传输完成或传输时有错误发 生,则产生中断。 原文中源缓冲区地址00x2FFFFFFF,目的缓冲区地址00x3FFFFFFF, 大小均为 256MB 。我们要在 ZED Board 上实现,DDR2 的内存空间(见下图)为 00x1FFFFFFF,不能设这么大。 这里分别设为00x17FFFFFF 和00x1FFFFFFF,大小均为128MB。至 于为什么设成这样,为什么不设为从0开始?咱们先卖个关子,后面详细说明。 硬件工程建立详细步骤如下: 1. 先建立PlanAhead 工程,生成XPS BSB ,步骤参考兔子教程。 2. 在XPS 中,展开IP Catalog 下的DMA and Timer ,选择AXI Central DMA ,双击添加到工 程。 在下面的对话框点Yes 弹出AXI CDMA 模块配置对话框,选择数据传输通道的数据宽度为 1024bit,最大突发长度 为256 ,这样在传输时突发块大小为32KB 。如下图所示: 点[OK]。接着问是否连接到PS ,我们选择如下: 点[OK]。注意弹出对话框时先不要连接到PS7_0 ,因为我们后面要手动连接。添加后看Bus Interfaces 表单,可以看到我们刚添加的axi_cdma_0 模块,没有任何连接。 接着再添加一个AXI Interconnect 模块,在IP Catalog 中找到该模块,如下图所示。 双击添加到工程。 点[Yes]。弹出配置对话框如下。将模块改名为axi_interconnect_gp1. 顾名思义,axi_interconnect_gp1 就是提供AXI 总线互联的模块,将上面的CDMA 模块连接 到PS 的AXI_GP1 总线。 从IP Catalog 中再添加一次该模块,这次改名为axi_interconnect_hp,添加完后Bus Interfaces 表单中内容如下图: 这时打开Zynq 表单,如下图所示 单击绿色的32b GP AXI Master Ports,打开PS7_0 配置向导。在User 表单中,展开GP Master AXI Interface ,选择“使能M_AXI_GP1 接口”,点确认。 单击绿色的high performance AXI 32/64b Slave Ports ,打开PS7_0 配置向导。在User 表单中 展开“高性能从机AXI 接口”, “使能S_AXI_HP0 接口”——将HP0 基地址设为0x,高地址设为0x 。位宽默认64bit “使能S_AXI_HP2 接口”——将HP2 基地址设为0x,高地址设为0x 。位宽默认64bit 点OK 确认更新。更新后的Zynq 表单如下所示 可以看到PS 和PL 之间新增的绿色连线生成。

文档评论(0)

nuvem + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档