每个GTX/GTH收发器包括一个独立的接收器(Receiver),由一个PCS和一个PMA组成。下图显示了GTX/GTH收发器RX的模块。高速串行数据从电路板上的串口流向GTX/GTH收发器RX的PMA,进入PCS,最后进入FPGA逻辑。
Transceiver的RX功能框图
其包含的关键功能块有:
下面分别简要介绍其作用:
RX模拟前端(AFE)是一个高速电流模式输入(CML)差分缓冲器。它有这些特点。
它是RX接收串行数据的第一关,负责接收差分输入对(GTXRXN/GTHRXN, GTXRXP/GTHRXP)的高速串行数据
GTX/GTH接收器提供对串行ATA(SATA)和串行连接SCSI(SAS)规范中描述的带外(OOB)序列的解码支持,并支持PCI Express规范中描述的信标。
串行链路的误码率(BER)性能是发射器、传输介质和接收器的一个函数。传输媒体或信道是有带宽限制的,通过它的信号会受到衰减和失真影响。
GTX/GTH接收机有两种类型的自适应滤波,取决于系统级的功率和性能之间的权衡。GTX/GTH接收机以较低的信道损耗进行功率优化,有一种名为低功耗模式(LPM)的省电自适应模式。对于均衡损耗较大的信道,可采用DFE模式。
LPM模式被推荐用于线路速率高达11.2Gb/s的短距离应用,在奈奎斯特频率下信道损耗为12dB或更少。
推荐DFE模式用于中长距离的应用,在奈奎斯特频率下信道损耗为8dB及以上。
DFE的优点是在不放大噪声和串扰的情况下均衡信道。DFE还可以纠正GTX收发器中前五个柱状光标内的信道不连续引起的反射。当串扰是一个问题或在单比特响应分析中发现反射时,DFE模式是最佳选择。
每个GTXE2_CHANNEL/GTHE2_CHANNEL收发器中的RX时钟数据恢复(CDR)电路从输入的数据流中提取恢复的时钟和数据。
RX时钟分配器控制块有两个主要部分:串行时钟分配器控制和并行时钟分配器和选择器控制。时钟分频器和选择器的细节见图。
RX 串行并行时钟分频器
随着线速和信道衰减的增加,接收机均衡器更经常地被启用以克服信道衰减。这给系统的建立带来了挑战,因为链路的质量不能通过测量接收器引脚的远端开眼来确定。在高线速下,在印刷电路板上测量的接收眼可能看起来是完全关闭的,即使接收器均衡器之后的内部眼是打开的。
7系列FPGAs GTX/GTH收发器的RX眼扫描提供了一种机制来测量和可视化均衡器之后的接收器眼缘。额外的使用模式使其他几种方法可以确定和诊断均衡设置的效果。
如果RXP和RXN的差分线在PCB上被意外调换,GTX/GTH收发器RX接收的差分数据就会被反转。GTX/GTH收发器RX允许在SIPO之后的PCS中对平行字节进行反转,以抵消差分对上的反转极性。极性控制功能使用RXPOLARITY输入,从结构用户界面驱动高电平来反转极性。
GTX/GTH接收机包括一个内置的PRBS检查器。该校验器可被设置为检查四种行业标准的PRBS模式之一。该检查器是自同步的,在逗号对齐或解码之前对传入的数据工作。这个功能可以用来测试通道的信号完整性。
串行数据在作为并行数据使用之前必须与符号边界对齐。为了使对齐成为可能,发送器发送一个可识别的序列,通常称为逗号。接收器在传入的数据中搜索该逗号。当它发现一个逗号时,它将逗号移到一个字节边界,这样收到的并行字就与传输的并行字相匹配。
如果RX收到的数据是8B/10B编码的,必须进行解码。GTX/GTH收发器在GTX/GTH收发器TX中有一个内置的8B/10B编码器,在GTX/GTH收发器RX中有一个8B/10B解码器,它在数据通路上包括四个一字节的8B/10B解码器模块,以解码数据而不消耗FPGA资源。
旁路RX弹性缓冲器是7系列GTX/GTH收发器的一个高级功能。RX相位对齐电路用于调整SIPO并行时钟域和RX XCLK域之间的相位差,以实现从SIPO到PCS的可靠数据传输。它还通过调整RXUSRCLK来执行RX延迟对齐,以补偿温度和电压变化。组合的RX相位和延迟对齐可以由GTX/GTH收发器自动执行或由用户手动控制。
使用RX相位对其
GTX/GTH收发器的RX数据通路有两个用于PCS的内部并行时钟域。PMA并行时钟域(XCLK)和RXUSRCLK域。为了接收数据,PMA的并行速率必须足够接近RXUSRCLK的速率,而且这两个域之间的所有相位差必须得到解决。图显示了两个并行时钟域。XCLK和RXUSRCLK。
RX时钟域
RX弹性缓冲器被设计成在两个不同的时钟域之间进行桥接,即RXUSRCLK和XCLK,这是来自CDR的恢复时钟。即使RXUSRCLK和XCLK以相同的时钟频率运行,也总是有一个小的频率差。因为XCLK和RXUSRCLK并不完全相同,这个差异可以累积起来,导致RX弹性缓冲器最终溢出或下溢,除非它被纠正。为了允许纠正,每个GTX/GTH收发器TX定期发送一个或多个特殊字符,允许GTX/GTH收发器RX在必要时删除或复制RX弹性缓冲器。通过在RX弹性缓冲区太满时删除字符和在RX弹性缓冲区太空时复制字符,接收器可以防止溢出或欠流。
XAUI和PCI Express等协议结合了多个串行收发器连接,以创建一个更高的吞吐量通道。每个串行收发器连接被称为一个通道。除非每个串行连接的长度完全相同,否则通道之间的偏移会导致数据在同一时间传输,但在不同时间到达。通道绑定通过使用RX弹性缓冲器作为可变延迟块来消除GTX/GTH收发器通道之间的偏移。通道绑定也被称为通道纠偏或通道间纠偏。用于绑定通道的GTX/GTH发射器都同时发射一个通道绑定字符(或一个字符序列)。当收到该序列时,GTX/GTH接收器可以确定每个通道之间的偏移,并调整RX弹性缓冲器的延迟,从而使数据在RX结构用户界面上没有偏移。
RX Gearbox提供对64B/66B和64B/67B编码的支持。
FPGA RX接口是FPGA通往GTX/GTH收发器的RX数据通路的网关。应用程序通过GTX/GTH收发器接收数据,在RXUSRCLK2的正边沿从RXDATA端口读取数据。该端口的宽度可以配置为两个、四个或八个字节宽。端口的实际宽度取决于RX_DATA_WIDTH和RX_INT_DATAWIDTH属性和RX8B10BEN端口设置。端口宽度可以是16、20、32、40、64和80位。接口处的并行时钟(RXUSRCLK2)的速率由RX线路速率、RXDATA端口的宽度以及是否启用8B/10B解码决定。在某些工作模式下,必须为发射器的内部PCS逻辑提供第二个并行时钟(RXUSRCLK)。