FPGA高速串行收发器,GTP,GTX 下载本文

时钟修正,一般由DCM模块提供,可以利用外部参考时钟。

Rocket I/O的速度等级由SERDES_10B选择,若SERDES_10B = FALSE,则为全速率数据传输;否则为半速率数据传输。此外,TXUSRCLK2和RXUSRCLK2控制着Rocket I/O和FPGA的交互接口,当数据位宽不同时,其与TXUSRCLK和RXUSRCLK的频率值比值也是不同的,如表10-6所示,默认情况下TXUSRCLK2=TXUSRCLK,即支持两字节数据传输。

表10-6 数据位宽和TXUSRCLK/RXUSRCLK列表

2.全速率的时钟方案

全速率模式下,需要将SERDES_10B设为FALSE,REFCLK时钟的倍频倍数为20倍。

1)单字节位宽全速率的时钟方案

单字节位宽全速率方案中,TXUSRCLK2和RXUSRCLK2的频率是TXUSRCLK和RXUSRCLK的2倍,相位差180度。REFCLK、TXUSRCLK和RXUSRCLK的时钟频率为40MHZ~85MHz,相应的TXUSRCLK2和RXUSRCLK2的时钟频率为80MHz~170MHz,时钟提供方案如图10-15所示。

图10-15 单字节位宽全速率时钟解决方案示意图

2)双字节位宽全速率的时钟方案

双字节位宽全速率方案中,TXUSRCLK2和RXUSRCLK2的频率和TXUSRCLK和RXUSRCLK的频率相等,无相位差。REFCLK、TXUSRCLK和RXUSRCLK的时钟频率为40MHZ~156.25MHz,TXUSRCLK2和RXUSRCLK2直接由REFCLK经过DCM模块的CLK0信号提供,相应的时钟提供方案如图10-16所示。

图10-16 双字节位宽全速率时钟解决方案示意图

3)四字节位宽全速率的时钟方案

四字节位宽全速率方案中,TXUSRCLK2和RXUSRCLK2的频率是TXUSRCLK和RXUSRCLK的一半。 REFCLK、TXUSRCLK和RXUSRCLK的时钟频率范围为40MHZ~156.25MHz,相应的TXUSRCLK2和RXUSRCLK2的时钟频率范围为280MHz~78.125MHz,相应的时钟提供方案如图10-17所示。

图10-17 四字节位宽全速率时钟解决方案示意图

3.半速率的时钟方案

半速率模式下,需要将SERDES_10B设为TRUE,REFCLK时钟的倍频倍数为10倍。

1)单字节位宽半速率的时钟方案

在该方案中,REFCLK的倍频倍数为10,RXUSRCLK2/TXUSRCLK2=2*RXUSRCLK/

TXUSRCLK=REFCLK,REFCLK、TXUSRCLK以及RXUSRCLK的频率范围为50MHz~ 100MHz,TXUSRCLK2/RXUSRCLK2的时钟频率范围为25MHz~50MHz,相应的时钟解决方案如图10-18所示。

图10-18 单字节位宽半速率时钟解决方案示意图

2)双字节位宽半速率的时钟方案

在该方案中,REFCLK的倍频倍数为10,RXUSRCLK2/TXUSRCLK2=RXUSRCLK/

TXUSRCLK=REFCLK/2,REFCLK、TXUSRCLK、RXUSRCLK以及TXUSRCLK2、RXUSRCLK2的时钟频率范围为25MHz~50MHz,相应的时钟解决方案如图10-19所示。

图10-19 双字节位宽半速率时钟解决方案示意图

3)四字节位宽半速率的时钟方案

在该方案中,REFCLK的倍频倍数为10,2*RXUSRCLK2/2*TXUSRCLK2 =RXUSRCLK/

TXUSRCLK=REFCLK/2,REFCLK的时钟频率范围为50MHz~100MHz、TXUSRCLK和RXUSRCLK的时钟频率范围为25MHz~50MHz,TXUSRCLK2和RXUSRCLK2的时钟频率范围为12.5MHz~25MHz,相应的时钟解决方案如图10-20所示。

图10-20 四字节位宽半速率时钟解决方案示意图

10.3.5 Rocket I/O的开发要素

1.时钟和数据恢复

1)时钟考虑

Rocket I/O对于参考时钟的要求是较为苛刻的,其精度一般要求在几十个ppm以下。例如EPSON EG-2121CA 2.5V的振荡器可以满足要求,振荡器的供电方案可参考其数据手册。此外,将振荡器的LVPECL输出转化成收发器的LVDS参考时钟,必须利用图10-21所示的参考电路。

图10-21 参考时钟振荡器的接口电路示意图

2)数据恢复

串行收发器的输入通过内嵌的时钟和数据恢复单元锁存,切断数据的下降沿和上升沿,并驱动一个频率和数据速率相同的时钟信号RXRECCLK。该时钟在FPGA内部表现为数据速率的1/20。只要时钟频率处于一定范围内,才能被收发器提取出来,各项条件如表10-7所列。

表10-7 时钟和数据恢复电路的参数范围

为了使CDR正常工作,在数据流里要有足够多的跳变发生。此外,还要保证CDR电路可以与8B/10B编码协同工作。在上电时,CDR大概需要5000次跳变才可以锁定到输入数据速率上。一旦完成了该锁定,那么在丢失对输入数据流的锁定之前,允许遗漏75个之多的跳变。如果用户对其串行数据流进行设计,那么必须注意满足8B/10B编码所需的跳变频率。CDR的另一个特征是它可以接收一个外部精确时钟(REFCLK)作为一个可选的输入,REFCLK要么是输入数据的时钟,要么是通过同步得到的RXRECCLK。更明确地讲,对于来自FPGA核且送往TX FIFO的数据,使用TXUSRCLK来作为它们的时钟。FIFO的深度决定了这两个时钟之间的微小相位差别,如果时钟在频率上得以锁定,那么FIFO就相当于一个直通的缓存。

2.PCB设计要求

为了保证Rocket I/O收发器的可靠操作,设计者必须注意满足的PCB设计要求,主要涉及电源过滤网络,高速差分信号路径和参考时钟等方面。如果不能满足下列要求,则Rocket I/O可能无法正常工作。

1)电源以及电源滤波电路

每个Rocket I/O收发器包括5个电源管脚,所有的管脚对噪声的影响都比较敏感。为保证电路可靠工作,Rocket I/O收发器需要和外围噪声源进行一定的隔离,需要进行专门的供电。为Rocket I/O收发器供电的电压调节器可以和收发器中其它有相同供电电压的管脚共用,但是不能和其他部分电路共用电源,每一个电源管脚必须有自己独立的LC滤波网络。表10-8中列出了其管脚名以及相应的电压。

表10-8 收发器的电源

为了确保Rocket I/O收发器正常工作,必须对周围的噪声源进行隔离。因此,对电源芯片有一定的要求,即需要用专用电压校准器来给Rocket I/O供电。这些电源电路不能被其他任何电源所共享(包括FPGA电源VCCINT,VCCO,VCCAUX和VREF),但电压校准器可以在有相同电压的收发电源之间共享。这里,所需的电压校准器型号为凌特公司(Linear Technology)的LT1963-2.5。在原理图设计时,必须按照数据手册上的说明来完成,如图10-22所示的2.5V电源的示意图,该电源可用于AVCCAUXRX和AVCCAUXTX。读者可以参考网站http://www.linear-tech.com以获得有关该设备的更多信息。

图10-22 Rocket电源电路示意图

为了达到所需的电源噪声隔离,需要在电源管脚处设置滤波网络。在图10-23中给出了这些电容器和铁氧体磁珠电路的结构。