xilinx 7 series GT COMMON

大多数博客都介绍了gtp quad有四个channel和一个gt common资源,gt common中包含两个CPLL或者说就是pll0和pll1,gt common有两个专用的gt refclk输入管脚,可以在gt common原语上配置pll0和pll1的输入源。

理论上,a7 35t有4个gtp channel,可以跑在2种线速率上,因为pll0和pll1可以分别配置。但我在应用一个pcie ip和aurora ip时,会出现了gt refclk无法route的错误。经过一番折腾,找到了解决办法。

1. 首先我很早就知道了gt common只有一个,因此例化ip时要选择gt common在example design中。在top顶层单独例化gt common。ref0输入经pll0输出给pcie的pll0。ref1输入经pll1输出给aurora的pll0。

2.问题在于aurora和pcie ip在例化时都不能选择gtpe2 channel上的txsysclk和rxsysclk的来源,固定就是pll0。这一点可以看源码,追溯到gtpe2 channel原语上,看到TXSYSCLKSEL为2'b00,就表示用的pll0,当然2bit选择不同位置,具体看手册就明白了。也就是说gt common的pll0和pll1不能分别到gtpe2 channel的pll0(粗略看了几个相关手册,猜测的)。 那么我就改变一下思路,先设置ip和global模式,再把它的is manage属性去掉,手动修改aurora ip核的gtp原语上的TXSYSCLKSEL和RXSYSCLKSEL为2'b11,选择pll1输入,然后将gt common的pll1输出到aurora ip核上的pll1,把aurora ip核上的pll0固定接0。

就可以正常编译了。

如果有人因为看到我这个博客而解决了类似的问题,我将感到不胜荣幸。

 

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 10
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值