GT收发器第三篇_GT单个和多个参考时钟

本文详细讨论了Xilinx设计中GTXTransceiver如何处理单个和多个外部时钟驱动的情况,包括单个外部时钟驱动单个或多个QUAD中的transceiver,以及多个外部时钟在同一个或不同QUAD中的应用,强调了设计规则和时钟选择的灵活性。
摘要由CSDN通过智能技术生成

前言

上篇介绍每个QUAD中的GT Transceiver通道有6个可用的参考时钟输入:
两个外部参考时钟输入对,GTREFCLK0和GTREFCLK1
来自于QUAD上部的两个参考时钟引脚对,GTSOUTHREFCLK0和GTSOUTHREFCLK1
来自于QUAD下部的两个参考时钟引脚对,GTNORTHREFCLK0和GTNORTHREFCLK1
GT Transceiver通道的参考时钟首先来自于上面所说的6个可用时钟来源,之后,这些参考时钟进入QPLL或者CPLL。
尽管QUAD的参考时钟来源有多种选择,但是在一个独立的设计中,总需要一个或多个外部参考时钟,也就是说必须使用外部参考时钟

一、单个外部时钟情况

1、单个外部参考时钟驱动单个QUAD中的多个transceiver

每个QUAD有两个专用的差分时钟输入引脚(MGTREFCLK0[P/N]或 MGTREFCLK1[P/N]) ,可以连接到外部时钟源。在单个外部参考时钟使用模型中, IBUFDS_GTE2必须实例化以使用专用的差分参考时钟源之一。
这种情况很简单,一个Quad共用一个外部参考时钟,或者一个参考时钟(不一定是外部)是很常见的情况,4个transceiver一组共用一个参考时钟。
在这里插入图片描述
下图为VIVADO使用IP核图形化界面,这里采用QPLL也是一样的。
在这里插入图片描述
在这里插入图片描述

2、单个外部参考时钟驱动多个QUAD中的多个transceiver

单个外部参考时钟也可以驱动多个QUAD中的多个Transceiver,例如:
在这里插入图片描述
尽管如此,但需遵守一定的规则:
源QUAD上方的QUAD数量不能超过1个;
源QUAD下方的QUAD数量不能超过1个;

1个外部参考时钟所驱动的QUAD总数不超过3个,或驱动的Transceiver不超过12个。所谓的源QUAD,指的是直接连接到外部参考时钟的QUAD。
概括就是:1个外部参考时钟驱动的源QUAD上下相邻的QUAD分别不能超过1个
这种情况是上篇文章说到的6中参考时钟来源之南北参考时钟引脚对实现的:
GTSOUTHREFCLK0和GTSOUTHREFCLK1
GTNORTHREFCLK0和GTNORTHREFCLK1

Xilinx 实现工具对南北布线进行必要的调整,并在需要时进行必要的引脚交换,以便将参考时钟从一个 Quad 转到另一个 Quad。
这是原理,设计时定制好IP,工具帮你完成一切。

二、多个外部时钟情况

1、同一个QUAD中,多个GTX Transceiver使用多个参考时钟

每个QUAD有两个专用的差分时钟输入引脚(MGTREFCLK0[P/N]或 MGTREFCLK1[P/N]) ,可以连接到外部时钟源。在多个外部参考时钟使用模型中, 每个专用的参考时钟引脚对必须例化它们对应IBUFDS_GTE2,以使用这些专用的参考时钟资源。
如下图所示:
在同一个QUAD中,多个GTX Transceiver使用多个参考时钟。

在这里插入图片描述
第一个外部参考时钟MGTREFCLK0[P/N],用户设计将其IBUFDS_GTE2的输出连接到GTXE2_COMMON 和GTX transceiver的 GTXE2_CHANNEL 原语以及的GTHE2_COMMON 和 GTH transceiver 的GTHE2_CHANNEL 原语的GTREFCLK0管脚。
同理,将MGTREFCLK1[P/N]连接到GTREFCLK1管脚上。
用户设计需要根据设计需求设置 QPLLREFCLKSEL[2:0]和CPLLREFCLKSEL[2:0]

2、不同QUAD中,多个GTX Transceiver 使用多个参考时钟

参考时钟选择结构的灵活性允许QUAD中的每个Transceiver都可以访问上下QUAD中的专用参考时钟。
一个QUAD的Transceiver如何通过使用 NORTHREFCLK 和 SOUTHREFCLK管脚从另一个QUAD访问专用参考时钟。
在每个GTX或 GTH Transceiver PLL 有多个参考时钟选项的情况下,用户设计需要根据设计需求设置 QPLLREFCLKSEL[2:0]和CPLLREFCLKSEL[2:0]。
尽管在上面这种情况中,共用参考时钟的规则也是必须遵守的:
源QUAD上方的QUAD数量不能超过1个;
源QUAD下方的QUAD数量不能超过1个;
1个外部参考时钟所驱动的QUAD总数不超过3个,或驱动的Transceiver不超过12个。
一个时钟针对可以驱动的Transceiver的最大数量是12个。超过12个Transceiver的设计需要使用多个外部时钟引脚,以确保控制抖动的规则得到遵守。 当使用多个时钟引脚时,可以用一个外部缓冲器从同一个振荡器驱动它们。
对于需要动态改变参考时钟源的多速率设计。 QPLLREFCLKSEL 和 CPLLREFCLKSEL 端口用于动态选择参考时钟源。在选择之后,用户设计要负责 通过高电平有效的CPLLRESET和QPLLRESET端口重置CPLL和QPLL,并负责后续的初始化过程。

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

顺子学不会FPGA

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值