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

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

3天内不再提示

AMD Versal自适应SoC CPM5 QDMA的Tandem PCIe启动流程介绍

XILINX开发者社区 来源:XILINX开发者社区 2024-09-18 10:07 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

本文作者:AMD 工程师Iris Yang

本文将从硬件设计和驱动使用两个方面介绍基于 CPM5 QDMA 的 AMD Versal 自适应 SoC 的 Tandem 设计和启动流程。

Versal QDMA 的两个 PCIe 控制器都支持不同方式的 Tandem (Tandem PROM • Tandem PCIe)。和其他系列的 Tandem 选项一样,Tandem PROM 是 Tandem 配置的简化模式,只是其中两个阶段都包含在同一个 pdi 里面,用户可以把这个 pdi 文件存到 PROM 中,系统会先配置 CPM 然后再去配置其他部分这样就能比较容易的满足120ms 启动时间的要求。

而 Tandem PCIe 则更为复杂,它第二部分的加载基于 PCIe 链路,在 BD 设计中必须包含从 CPM MASTER 到 PMC Slave 的路径。而在 PMC 中需要使用特定的加载到的接口 Slave Boot Interface(SBI),其位于 AMD Versal设备地址 0x102100000。

Tandem PCIe 的软硬件流程

首先在 CPM 生成界面选择 DMA,把 Tandem mode 选择为 Tandem PCIE。第二页选择 QDMA,其他都可以用默认选项。

CIPS 的 PCIE Reset 复位选择和板上一致。

wKgaombqNhqAHonqAAHwYlZwzzw387.jpg

按照下图连接 BD,需要连上复位 sys_reset ,连接 NOC, 并且把 CPM 的 Master 和 PMC 的 Slave 连上, 按照下图把地址分配到 0x102100000 (slave boot stream), 这样 QDMA 的传输目标地址就设置为从 0x102100000 开始。NOC 另一侧可以连接 BRAM 和其他需要的用户侧 PL 逻辑。

wKgZombqNhqAPzfrAALVtrPr6rk895.jpg

wKgZombqNhqAQgGJAAGQEdLdhtA810.jpg

由于工具并不会自动拉低 PL 的复位管脚所以用户必须写 XSDB (0xF1260330) 地址来拉低复位或者把 PL Reset 管脚从 CDO 中直接拉低并且重新生成 PDI。 如果 PL 的复位在 CIPS 外面,需要自己去控制这个复位保证加载完 pdi2 后 PL 可以工作。

生成 pdi 文件后,开始清除原来的驱动和加载新的驱动,以下为步骤。

首先可以通过 JTAG 或者 RPOM 的方式,把第一阶段的pdi 文件下载进去 并且重启主机。这个时候可以通过 lspci 看到 AMD Xilinx 的 bdf。然后准备好驱动和应用程序并运行以下程序。

获取最新的驱动程序, 驱动可以从网站下载:

https://github.com/Xilinx/dma_ip_drivers/tree/master/QDMA

从内核中删除旧模块(仅在必要时)。 $> rmmod qdma-pf

编译驱动程序和应用程序。 $> make -DTANDEM_BOOT_SUPPORTED

安装(复制)驱动程序和应用程序到标准位置。$> make install

载入内核模块。#> modprobe qdma-pf

产生 H2C 的队列。 $> dma-ctl qdma10000 q add idx 0 dir h2c mode mm

启动一个队列, aperture size 是4k $> dma-ctl qdma10000 q start idx 0 dir h2c aperture_size 4096

传输 pdi2,这里的大小和名字需要按照实际情况修改:

$> dma-ctl qdma10000_MM_0-f design_wrapper.pdi -s 1384992 -a 0x102100000

卸载驱动冲 i 性能加载驱动重复2-5。

用 xsdb 去写 o 0xF1260330,如果 pl_reset 连到了stag2 的逻辑上, 如果没有这步可以省略。

完成其他测试 ,比如 BD design 后面连了 ddr 或者 bram,可以用 dma_to_device 来测试 PL 是否能正确接收数据。

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

    关注

    25

    文章

    5647

    浏览量

    139001
  • 控制器
    +关注

    关注

    114

    文章

    17638

    浏览量

    190192
  • soc
    soc
    +关注

    关注

    38

    文章

    4514

    浏览量

    227567
  • 硬件
    +关注

    关注

    11

    文章

    3555

    浏览量

    68735
  • PCIe
    +关注

    关注

    16

    文章

    1420

    浏览量

    87532

原文标题:开发者分享|AMD Versal™ 自适应 SoC CPM5 QDMA 的 Tandem PCIe 启动流程介绍

文章出处:【微信号:gh_2d1c7e2d540e,微信公众号:XILINX开发者社区】欢迎添加关注!文章转载请注明出处。

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    基于AMD Versal器件实现PCIe5 DMA功能

    VersalAMD 7nm的SoC高端器件,不仅拥有比16nm性能更强的逻辑性能,并且其PS系统中的CPM PCIe也较上一代MPSoC
    的头像 发表于 06-19 09:44 1444次阅读
    基于<b class='flag-5'>AMD</b> <b class='flag-5'>Versal</b>器件实现<b class='flag-5'>PCIe5</b> DMA功能

    AMD Versal自适应SoC上使用QEMU+协同仿真示例

    在任意设计流程中,仿真都是不可或缺的关键组成部分。它允许用户在无任何物理硬件的情况下对硬件系统进行确认。这篇简短的博客将介绍如何使用 QEMU + 协同仿真来对 AMD Versal
    的头像 发表于 08-06 17:21 1687次阅读
    在<b class='flag-5'>AMD</b> <b class='flag-5'>Versal</b><b class='flag-5'>自适应</b><b class='flag-5'>SoC</b>上使用QEMU+协同仿真示例

    【ALINX 技术分享】AMD Versal AI Edge 自适应计算加速平台之 Versal 介绍(2)

    【ALINX 技术分享】AMD Versal AI Edge 自适应计算加速平台之 Versal 介绍,以及
    的头像 发表于 03-07 16:03 2442次阅读
    【ALINX 技术分享】<b class='flag-5'>AMD</b> <b class='flag-5'>Versal</b> AI Edge <b class='flag-5'>自适应</b>计算加速平台之 <b class='flag-5'>Versal</b> <b class='flag-5'>介绍</b>(2)

    AMD Versal自适应SoC内置自校准的工作原理

    本文提供有关 AMD Versal 自适应 SoC 内置自校准 (BISC) 工作方式的详细信息。此外还详述了 Versal 的异步模式及其
    的头像 发表于 10-21 08:18 3842次阅读

    Versal CPM AXI Bridge模式的地址转换

    列的 Versal 的产品可支持的 PCIE 最高速率不同,能够支持PCIE5.0协议的产品,例如 VPK120,其 CIPS 内使用的是 CPM5,而只能支持到
    的头像 发表于 05-10 09:47 3083次阅读
    <b class='flag-5'>Versal</b> <b class='flag-5'>CPM</b> AXI Bridge模式的地址转换

    Versal 自适应SoC设计指南

    电子发烧友网站提供《Versal 自适应SoC设计指南.pdf》资料免费下载
    发表于 12-14 16:22 1次下载
    <b class='flag-5'>Versal</b> <b class='flag-5'>自适应</b><b class='flag-5'>SoC</b>设计指南

    Versal自适应SoC系统集成和 确认方法指南

    电子发烧友网站提供《Versal自适应SoC系统集成和 确认方法指南.pdf》资料免费下载
    发表于 01-03 10:48 0次下载
    <b class='flag-5'>Versal</b><b class='flag-5'>自适应</b><b class='flag-5'>SoC</b>系统集成和 确认方法指南

    AMD率先推出符合DisplayPort™ 2.1 8K视频标准的FPGA和自适应SoC

    AMD UltraScale+ FPGA 和 AMD Versal 自适应 SoC 产品系列已率先成为业界符合 VESA DisplayPo
    的头像 发表于 01-24 09:18 1081次阅读

    AMD发布第二代Versal自适应SoC,AI嵌入式领域再提速

    AMD表示,第二代Versal系列自适应SoC搭载全新的AI引擎,相较上一代Versal AI Edge系列,每瓦TOPS功率可实现最多3倍
    的头像 发表于 04-11 16:07 1505次阅读

    AMD Versal™ Adaptive SoC CPM PCIE PIO EP设计CED示例

    本文可让开发者们看懂 AMD Vivado Design Tool 2023.2 中的“AMD Versal Adaptive SoC CPM
    的头像 发表于 05-10 09:39 1529次阅读
    <b class='flag-5'>AMD</b> <b class='flag-5'>Versal</b>™ Adaptive <b class='flag-5'>SoC</b> <b class='flag-5'>CPM</b> <b class='flag-5'>PCIE</b> PIO EP设计CED示例

    第二代AMD Versal Prime系列自适应SoC的亮点

    第二代 Versal Prime 系列自适应 SoC 是备受期待的 Zynq UltraScale+ MPSoC 产品线的继任产品,该产品线已广泛应用于广播与专业音视频行业的设备中。第二代
    的头像 发表于 09-14 15:32 1347次阅读
    第二代<b class='flag-5'>AMD</b> <b class='flag-5'>Versal</b> Prime系列<b class='flag-5'>自适应</b><b class='flag-5'>SoC</b>的亮点

    AMD Versal自适应SoC器件Advanced Flow概览(上)

    在最新发布的 AMD Vivado Design Suite 2024.2 中,引入的新特性之一是启用了仅适用于 AMD Versal 自适应 So
    的头像 发表于 01-17 10:09 1165次阅读
    <b class='flag-5'>AMD</b> <b class='flag-5'>Versal</b><b class='flag-5'>自适应</b><b class='flag-5'>SoC</b>器件Advanced Flow概览(上)

    AMD Versal自适应SoC器件Advanced Flow概览(下)

    AMD Vivado Design Suite 2024.2 版本中,Advanced Flow 自动为所有 AMD Versal 自适应 So
    的头像 发表于 01-23 09:33 1339次阅读
    <b class='flag-5'>AMD</b> <b class='flag-5'>Versal</b><b class='flag-5'>自适应</b><b class='flag-5'>SoC</b>器件Advanced Flow概览(下)

    适用于VersalAMD Vivado 加快FPGA开发完成Versal自适应SoC设计

    设计、编译、交付,轻松搞定。更快更高效。 Vivado 设计套件提供经过优化的设计流程,让传统 FPGA 开发人员能够加快完成 Versal 自适应 SoC 设计。 面向硬件开发人员的
    的头像 发表于 05-07 15:15 1037次阅读
    适用于<b class='flag-5'>Versal</b>的<b class='flag-5'>AMD</b> Vivado  加快FPGA开发完成<b class='flag-5'>Versal</b><b class='flag-5'>自适应</b><b class='flag-5'>SoC</b>设计

    利用AMD VERSAL自适应SoC的设计基线策略

    您是否准备将设计迁移到 AMD Versal 自适应 SoC?设计基线是一种行之有效的时序收敛方法,可在深入研究复杂的布局布线策略之前,帮您的 RTL 设计奠定坚实的基础。跳过这些步骤
    的头像 发表于 06-04 11:40 602次阅读