开发者分享|GTM 中如何设置两个 Channel 使用不同的 LCPLL

科技   2024-12-24 19:00   新加坡  


本文作者:AMD 工程师 Ivy Guo


AMD Versal™ 自适应 SoC 的一个 GTM Quad 包含四路 Channel 和两个 LCPLL。两个 LCPLL 的设计,可以在同一个 Quad 里面实现更灵活的配置,比如两路 Channel 的数据速率不同,且两路数据的 VCO Frequency 不一样的应用,此时无法用同一个 LCPLL 来实现。本文展示了如何在设计里面实现此种配置的自动化。


Step 1:


打开 AMD Vivado™ Design Tool,基于使用的器件新建一个工程。


Step 2:


新建一个 BD 设计: Create Block Design。因为两路 Channel 需要不同的 LCPLL 控制,我们需要添加个 gt_bridge IP 和一个 gt_quad_base IP。


一般情况下,两个 gt_bridge 使用了不同协议,分别配置好即可。示例如下:



Step 3:


运行 Run Block Automation,选择 Auto 方式先看看结果:



仔细查看 Block Design,可以看到被选择的两路 Channel 是 ch0 和 ch2。这是因为 ch0 和 ch1 默认使用同一个 LCPLL,而 ch2 和 ch3 则使用另外一个 LCPLL。上述的两个协议没有共同的 VCO frequency,所以自动会被绑定到 ch0 和 ch2 上面。


可以尝试绑定到 ch0 和 ch1 上看看,会报错:



Step 4:


有时候即使用同一个 LCPLL 可以实现多路数据协议的不同速率要求,为了彻底"隔绝" Channel 间的互相干扰,我们可能也想使用不同的 LCPLL 去提供时钟。手动修改连线可以实现,但是注意,GTM 不建议任何的手动操作,因为理论上有可能出现底层配置没有对应修改好,导致功能异常的情况。这里我们就需要通过设置 Run Block Automation 时使用 Customized_Connections 来做自动连接。


为了更好演示这种情况。我们把两个 gt_bridge 配置成一样的协议来看看:



此时如果选择 Auto 方式的 Run Block Automation,连线会自动选择 ch0 和 ch1,此时实际使用了同一个 LCPLL:



所以我们如下操作:



重新连线。ch0 和 ch2 被选择,此时 GTM 实际使用了两个 LCPLL,完成了期望的配置方式。



综上,通过 Run Block Automation 时灵活选择各种 Interface Options 的设置,我们可以自动化实现各种配置的连线,大大节省建立工程的时间,并能保证正确性。



AMD 自适应 SOC 及 FPGA 中文技术支持社区

欢迎您访问本社区论坛:

[https://support.xilinx.com/s/?language=zh_CN]

我们希望能帮助您快速找到所需内容。本网站是AMD 自适应 SoC 及 FPGA 支持资源登录页面,其中包括我们的知识库、社区论坛以及指向更多内容的链接。搜索并探索您所选主题的内容,然后登录以查看更多支持选项。



XILINX开发者社区
Xilinx开发者社区源于社区,服务社区,是面向广大开发者与产学研合作的平台,以技术为驱动,创建共享知识社区。(注: Xilinx is now a part of AMD)
 最新文章