ug476 | 您所在的位置:网站首页 › FPGA的GTX核 › ug476 |
学习目标:
一周掌握FPGA的GTX收发器使用及仿真
学习内容:
GTX基本结构GTX参考时钟GTX接收、发送端口GTX IP 核调用
学习时间:
周一至周二上午完成GTX基本结构和GTX参考时钟的学习周二下午 至 周四 学习GTX接收、发送端口周五学习 GTX IP 核调用周六完成GTX 收发测试
GTX基本结构:
GTX基本结构 7系列fpga GTX和GTH收发器是节能收发器,GTX收发器支持500 Mb/s至12.5 Gb/s的线路速率,GTH收发器支持13.1 Gb/s的线路速率。GTX/GTH收发器具有高度可配置性,并与FPGA的可编程逻辑资源紧密集成。CPLL最高支持线速6.x G,而QPLL则可超过10G;在通道线速较大(超过6.xGbps)时,IP会自动使用QPLL。GTXE2_COMMON、GTXE2_CHANNEL :是Xilinx的器件原语(primitive),原语是Xilinx针对其器件特征开发的一系列常用模块的名字,用户可以将其看成Xilinx公司为用户提供的库函数;原语类似最底层的描述方法。 PLL(Phase-Locked Loop,锁相环)是一种电路和控制系统中常见的反馈系统,用于产生一个输出信号,其相位和频率与一个参考信号相锁定。 SERDES(Serializer/Deserializer): 这是一种用于将并行数据转换为串行数据(串行化)或将串行数据转换为并行数据(反串行化)的技术。 PISO(Parallel-In, Serial-Out): 这是一类移位寄存器的结构,用于将并行输入数据按位顺序转换为串行输出。 Xilinx 以 Quad 来对串行高速收发器进行分组,四个串行高速收发器和一个 COMMOM(QPLL)组成一个 Quad,每一个串行高速收发器称为一个 Channel(通道),每个Quad包含四个GTXE2_CHANNEL原语(每个CHANNEL包含一个GTX),一个GTXE2_COMMON原语,两个专用外部参考时钟引脚对和专用参考时钟路由的分组;QPLL :也就是一个Quad共用的PLL,属于GTXE2_COMMON;Channel:每个channel就是一个GTX,包含一个CPLL和一对收发器;CPLL : 每个Channel独有的PLL,属于GTXE2_CHANNEL。下图为四路 GTX 收发器在Kintex7 FPGA 芯片中的示意图 GTX 的具体内部逻辑框图如下所示,它由四个收发器通道 GTXE2_CHANNEL原语 和一个GTXE2_COMMON 原语组成。每路GTXE2_CHANNEL包含发送电路 TX 、接收电路 RX和CPLL时钟,GTXE2_CHANNEL的时钟可以来自于CPLL或者QPLL,可在IP配置界面里配置
![]() IBUFDS_GTE2 ibufds_instQ0_CLK1 ( .O (gtrefclk0), // gtrefclk1 .ODIV2 (), .CEB ('b0), .I (MGTREFCLKP0), // MGTREFCLKP1 .IB (MGTREFCLKN0) //MGTREFCLKN1 ); 这样就能得到参考时钟gtrefclk0分别作为CPLL和QPLL的输入,当然CPLL和QPLL的输入时钟也可以来自其他相邻Q的时钟源。这里通过QPLLREFCLKSEL和CPLLREFCLKSEL进行选取。 每个Quad中的GTX通道有6个可用的参考时钟输入: 两个外部输入参考差分时钟,经过IBUFDS后就是GTREFCLK0和GTREFCLK1; 来自于Quad上面的两个参考时钟引脚对,GTSOUTHREFCLK0和GTSOUTHREFCLK1; 来自于Quad下面的两个参考时钟引脚对,GTNORTHREFCLK0和GTNORTHREFCLK1; 下图多了一个GTGREFCLK,这个时钟是由内部逻辑产生的参考时钟。貌似只用于内部测试。 a. 下图为单个GTXE2_COMMON/GTHE2_COMMON原语中的参考时钟多路复用器结构的详细视图。当多个参考时钟源连接到该多路复用器时,需要QPLLREFCLKSEL端口。单一参考时钟是最常用的。在这种情况下,QPLLREFCLKSEL端口可以绑定到3’b001。 b. 下图为 显示了单个GTXE2_CHANNEL/GTHE2_CHANNEL原语中的参考时钟多路复用器结构的详细视图。当有多个参考时钟源连接到该复用器时,需要使用CPLLREFCLKSEL端口。单一参考时钟是最常用的。在这种情况下,CPLLREFCLKSEL端口可以绑定到3’b001。
REFCLK Distribution的上下参考时钟引脚分别为南北时钟输入引脚。用于Quad之间共享参考时钟;也就是说,并不一定每一个Quad都需要外部参考时钟,有的Quad可以和其他Quad共享参考时钟,而共享的来源就是南北时钟输入引脚。Quad的南北参考时钟称为GTSOUTHREFCLK以及GTNORTHREFCLK。 外部参考时钟 QPLL或者CPLL的时钟输出分别可以供给TX和RX端选用作为输入时钟源,这里涉及到TXOUTCLK和RXOUTCLK,这两个时钟也是可以选择输入源的,可以来自GTXE2_CHANNEL也可以来自GTHE2_COMMON。a. 用户设计将IBUFDS_GTE2输出(O)连接到GTXE2_COMMON/ GTHE2_COMMON或GTXE2_CHANNEL/GTHE2_CHANNEL原语的GTREFCLK0或GTREFCLK1端口,其中包含参考时钟选择多路复用器。根据线路速率要求,用户设计可以灵活地使用QPLL或CPLL的不同组合来驱动TX和/或RX数据路径。 每个Quad有两个专用的差分时钟输入引脚(MGTREFCLK0[P/N]或 MGTREFCLK1[P/N]) ,可以连接到外部时钟源。 每个专用的参考时钟引脚对输入进来后必须例化IBUFDS_GTE2,再给到GTX使用。 MGTREFCLK0[P/N]连接到GTREFCLK0,将MGTREFCLK1[P/N]连接到GTREFCLK1管脚。 在每个GTX有多个参考时钟选项的情况下,设计的时候根据需求设置 QPLLREFCLKSEL[2:0]和CPLLREFCLKSEL[2:0]。该遵守的规则还是要遵守的:1个外部参考时钟所驱动的Quad总数不超过3个,或驱动的Transceiver不超过12个。 e. 动态从CPLL切换到QPLL: ①:通过取消QPLLPD和QPLLRESET端口上电QPLL。等待端口QPLLLOCK = 1。 注意:QPLLPD要么在配置后处于下电模式,要么假定QPLLPD之前已经正确断言,按照要求,QPLLPD应该在配置完成后等待至少500 ns后才断言为高电平。 ②断言端口GTTXRESET和/或GTRXRESET。设置端口TXSYSCLKSEL[0] = 1’b1和RXSYSCLKSEL[0] = 1’b1。断言端口[TX/RX]USERRDY。 ③取消GTTXRESET和/或GTRXRESET。等待TXRESETDONE = 1’b1和RXRESETDONE = 1’b1。 ④通过断言CPLLRESET和CPLLPD将CPLL下电,节省电源。 ⑤继续收发器操作。 4. Quad PLL(上图中所示) a. QPLL可以在同一个Quad里共享,但不能与其他Quad的CHANNEL原语共享。当以高于CPLL工作范围的线路速率操作通道时,需要使用QPLL。GTXE2_COMMON原语封装了GTX QPLL,并且必须在使用GTX QPLL时实例化。 b. QPLL输出在同一Quad内为每个串行收发器通道的TX和RX时钟分频块提供馈电,这些分频块控制PMA和PCS块使用的串行和并行时钟的生成。 ![]() •初始化复位:此复位用于完成GTX/GTH收发器初始化。必须在设备上电配置后使用。在正常工作时,必要时,GTTXRESET和GTRXRESET也可用于重新初始化GTX/GTH收发器TX和RX。GTTXRESET是GTX/GTH收发器TX的初始化复位端口,GTRXRESET是GTX/GTH收发器RX的初始化复位端口。 •组件复位:此复位用于GTX/GTH收发器正常工作时的特殊情况和特定分段复位。TX组件复位端口包括TXPMARESET和TXPCSRESET。RX组件复位接口包括RXPMARESET、RXDFELPMRESET、EYESCANRESET、RXPCSRESET、RXBUFRESET和RXOOBRESET。 c. 复位模式:GTRESETSEL选择模式,RESETOVRD必须为低 GTX的RX端复位:顺序模式和单模式;TX端复位只支持顺序复位。 ①顺序模式:复位状态机从初始化或组件复位输入驱动High开始,在复位状态机请求复位状态后依次进行所有状态,如图2-15 (GTX/GTH收发器TX)或图2-20 (GTX/GTH收发器RX)所示,直到完成。当(TX/RX)RESETDONE从Low转换到High时,顺序模式复位流完成。 激活GTTXRESET输入可以自动触发一个完整的异步TX重置。复位状态机执行复位顺序,如图2-15所示,复位顺序覆盖整个TX PMA和TX pc。在正常操作期间,当需要时,顺序模式允许用户从激活TXPMARESET复位TX,并继续复位状态机,直到TXRESETDONE从Low转换到High。 g. GTX收发器的RX端初始化和复位 GTX/GTH收发器允许用户完全重置整个GTX/GTH收发器RX在任何时候需要通过发送GTRXRESET一个有效的高脉冲 RXOUT_DIV = 2, 4, 8, or 16 and RX internal data width is 20- or 40-bit (RX_DATA_WIDTH = 20, 40, or 80) 下电 一共有四种: CPLLPD :CHANNEL PLL power down QPLLPD :Quad PLL power down TXPD RXPD 回环测试模式:近端模式和远端模式
写时序: 读时序: 数字监视器需要一个自由运行的时钟; DRPCLK或RXUSRCLK2可用于此。 具体端口见P96 97,捕获代码见P101-106. GTX发送接口: GTX接收接口: GTX基本结构GTX参考时钟GTX接收、发送端口GTX IP 核调用 GTX IP 核调用: GTX基本结构GTX参考时钟GTX接收、发送端口GTX IP 核调用 GTX收发测试: GTX基本结构GTX参考时钟GTX接收、发送端口GTX IP 核调用 |
CopyRight 2018-2019 实验室设备网 版权所有 |