




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
SERDES应用场景以及对应的复位设计随着半导体技术,特别是FPGA的发展,单片芯片的处理能力越来越强。现在单片的处理能力都在1Tbit以上。而要处理这么多的数据,单靠原来的LVDS,LVPECL已经无法满足芯片接口吞吐量的要求。所以,如今越来越多的应用都用到高速SERDES。XILINX的SERDES作为业界翘楚,越来越多地被客户接受并广泛应用。而随之而来设计、调试问题,也是让客户感到害怕的问题。特别是客户容易对高速SERDES犯怵,碰到问题又无从着手,导致进度受阻,压力倍增。这是我着手总结SERDES设计调试的初衷。这次主要讲SERDES复位设计。复位的作用众所周知,现在主流的FPGA上实现的都是时序逻辑。时序逻辑有一个特点就是前面的状态会影响到后面的状态。所以在这种应用里,初始状态的确定是整个设计里非常重要的一个环节。复位就是用来初始化逻辑状态用的。对于SERDES,根据不同的应用,其时钟方案是不同的。对此,SERDES的状态,特别是BUFFER的状态会受到很大的影响。由于BUFFER的读写时钟有效稳定的时间不同,大致会引起以下2种情况:1.BUFFER上下溢出,使得输入输出误码;2.多通道应用里,通道间引入偏移,使得各路通道绑定失败。所以复位设计必须小心,特别需要和时钟方案相匹配,才能给可靠的设计打下良好的基础。7系列GTX的时钟结构上面说到,复位应该和时钟方案相匹配,所以在这里简单介绍一下7系列GTX/GTH的时钟结构。7系列SERDES是以QUAD为单位的。在一个QUAD里,有a)GTX/GTH:一个QUAD里有4个SERDES;b)2个参考钟:它们可以连到任意一个PLL上。而且可以给上下相邻的QUAD提供参考钟;c)CPLL:这是每路GTX/GTH都有的PLL。这个C是指Channel;d)QPLL:每个QUAD内的SERDES共享的PLL。这个Q是指QUAD。QPLL和CPLL可以供到每个SERDES的发(TX)和收(RX)。在SERDES里有TX/RXSYSCLKSEL[1:0]端口选择使用哪个时钟源。复位设计的案例下面,根据不同的时钟方案,会列出一些复位的方法。首先需要提醒的一点是:对于7系列的SERDES,bit文件下载完(CONFIGDONE拉高)后的500ns时间内的复位是无效的。SERDES需要的复位是脉冲。所以FPGA配置完成后500ns后复位信号才能拉高。如果在500ns之前就拉高,那是无效的。需要在后面在有一个正脉冲才行。关于这个问题,在XINLIX官网上有AR43482作说明。另外相对于以前的SERDES,在7系列SERDES里多了2个信号:TXUSERRDY和RXUSERRDY。这2个信号是用来控制何时进行PCS复位的。SERDES的顺序复位是指GTXTXRESET或GTXRXRESET有复位脉冲时,SERDES会进行从PMA一直到PCS的复位,最后把TXRESETDONE或RXRESETDONE拉高。PMA和PCS复位涵盖的范围见下表整个复位顺序都是从PMA到PCS的。具体流程可以参考UG476。在完成PMA复位后进入PCS复位是,TXUSERRDY和RXUSERRDY就是开关。只有当它们为高时才能进入PCS复位,继而完成整个SERDES的复位。TXUSERRDY和RXUSERRDY的含义是用户钟TXUSRCLK/TXUSRCLK2和RXUSRCLK/RXUSRCLK2都稳定了。这个时候可以进行PCS复位了。TX复位案例一、TXOUTCLKSEL=TXOUTCLKPMA这种情形下,TXOUTCLK的频率是(LINERATE)/(INTERNALDATAWIDHT),它会随着线速度的变化而变化。对于7系列SERDES,内部位宽可以有16/20bit(即2字节)和32/40bit(即4字节)2中选择。跟逻辑接口的外部位宽有2、4、8字节3种选择。由于逻辑可以跑到368MHz以上。所以对于大多数的应用,TXUSRCLK/TXUSRCLK2是可以同频的。此时,其时钟框图就会如下:这种复位方案里,有一些要求:?SERDES工作在顺序复位模式下(工具产生的代码默认模式)?RESETOVRD=1’b0?GTRESETSEL=1’b0?QPLLRESET或CPLLRESET需要脉冲复位?至少一个参考钟周期?QPLLLKDET或CPLLLKDET的上升沿上产生GTXTXRESET脉冲,启动SERDES进入顺序复位?同时,把QPLLLKDET/CPLLLKDET连到TXUSERRDY?最好能延时2~3us以保证TXOUTCLK稳定。?在TXRESETDONE的第一个上升沿做TXPCSRESET的复位?对单路应用不需要这个复位。?对于多路需要对齐输出的应用,需要把所有TXRESETDONE都拉高后做TXPCSRESET复位以减少各路的输出偏移二、TXOUTCLKSEL=TXOUTCLKPMA,用到MMCM这个和上面一个的差别就是需要用到MMCM。由于MMCM的输入是TXOUTCLK,必须等到TXOUTCLK稳定后才能释放复位;而MMCM给SERDES提供TXUSRCLK和TXUSRCLK2,所以TXUSERRDY必须在MMCM稳定后才能拉高。同样,对于多通道应用,需要在所有TXRESETDONE拉高后给一个TXPCSRESET脉冲,这样可以减少发送数据通道间的偏移。三、TXOUTCLKSEL=TXPLLREFCLK_DIV1/2这种应用和第一种不同之处在于TXOUTCLK的时钟来源不同,这里是来自于参考钟。所以它会在QPLL锁定之前就稳定下来。当然我们还是可以借用第一种复位方法。只是QPLLLKDET/CPLLLKDET送到TXUSERRDY时不需要延时去等待内部时钟稳定。四、TXOUTCLKSEL=TXPLLREFCLK_DIV1/2,用到MMCM同样,这种应用可以参考第二种。当然由于MMCM的输入时钟是参考钟,所以它的复位释放也不需要等待PLL锁定。所以我们也可以用下面的复位方法当然由于MMCM复位要求,QPLLRESET/CPLLRESET的脉宽需要大于3个参考钟周期。五、TXBUFFERBYPASS情形对于CPRI等有延时精度要求的应用,需要把TXBUFFER旁路。这时需要在上面的复位之外还要有相位对齐电路的复位。要能进行相位对齐,对时钟有一定要求:1.同源同频。这里只是做相位对齐,频率必须相同;2.时钟稳定。只有时钟稳定后才能进行相位对齐操作。所以相对于前面使能TXBUFFER的应用的复位,在TXRESETDONE拉高后,做一次相位对齐操作就可以了。这里需要注意的一点是,TXDLYSRESET的脉宽必须小于50ns。整个复位的波形图如下和前面不同的是,这里用TXPHALIGNDONE作为后续逻辑的复位信号。这是因为这个信号拉高了,表示SERDES的初始化已经完成,可以工作了。而前面的几种应用,TXRESETDONE的拉高是SERDES能够正常发送数据的标志。RX复位设计这里只包括用到RXOUTCLK时的复位。如果是用TXOUTCLK作为RXUSRCLK/RXUSRCLK2时钟源的情形,可以参考TX复位设计部分。RX的结构比TX要复杂。相对应的复位也会复杂一些。主要原因是RXOUTCLK的源头可能是CDR送出的恢复钟。也就是说,需要CDR稳定工作后才能有稳定的RXOUTCLK输出。所以后续的复位需要与此相配。CDR在有信号送入时,会跟踪上输入信号的频率、相位;当没有信号送入时,它会慢慢锁到本地时钟上,直到又有信号送入。这个不是跃变的过程,而是慢慢变化的。这里不会引入恢复时钟的跳变。一、RXOUTCLKSEL=RXOUTCLKPMA这种情形下,RXOUTCLK的源头就是CDR的恢复钟。由于初始化复位时,我们还是用QPLLLKDET/CPLLLKDET作为RXUSERRDY的输入,这样在PLL锁定后可以完成PMA/PCS的初始化。但是在工作起来后,CDR会锁到输入信号上。在跟踪过程中,恢复钟(也就是RXBUFFER的写时钟)会有个渐变的过程。这个可能会导致RXBUFFER溢出。所以用RXBUFSTATUS[2]送到RXBUFRESET。这样在RXBUFFER溢出时复位RXBUFFER。对于多通道应用,也是需要在所有RXRESETDONE都拉高时复位RXBUFFRESET一下,这样可以减少各路的偏移。当然,任意一路有前面说到的溢出,也需要复位所有的RXBUFFER。二、RXOUTCLKSEL=RXOUTCLKPMA,且用到MMCM这个情形下,我们需要注意的就是MMCM/PLL输入时钟源于CDR恢复时钟并给RXPCS提供用户时钟。所以需要1.MMCM必须在PLL锁定后延时一段时间释放复位,这其中的时间就是CDR锁定的时间。2.MMCM的LOCK信号控制RXUSERRDY,以保证RXPCS的复位是在RXUSRCLK/RXUSRCLK2都稳定后释放的。这种应用里,如果外部输入信号丢失,比如拔掉再插上光纤,那需要对接收侧做整体复位以保证接收的可靠。这时整个时钟都会重新复位一遍。三、RXOUTCLKSEL=RXPLLREFCLK_DIV1/2这种情形,RXUSRCLK/RXUSRCLK2的源头都是参考钟,所以和TXOUTCLKSEL=TXPLLREFCLKDIV1/2的情形是一样的。在现实中会合并用TXOUTCLK来驱动TXUSRCLK和RXUSRCLK。所以复位的方法参考TX。四、RXOUTCLKSEL=RXPLLREFCLK_DIV1/2,且用到MMCM
这种情形,RXUSRCLK/RXUSRCLK2的源头都是参考钟,所以和TXOUTCLKSEL=TXPLLREFCLKDIV1/2+MMCM的情形是一样的。在现实中会合并用TXOUTCLK通过MMCM来驱动TXUSRCLK和RXUSRCLK。所以复位的方法参考TX。这里画出2中复位连接图:五、RXBUFFERBYPASSRXUBFFERBYPASS模式下,由相位对齐电路实现RXCLK和RXUSRCLK的相位对齐。此时RXUSRCLK的源头必须来自RXOUTCLKPMA,而RX_XCLK_SEL=RXUSR。在大多数情况下,RX工作在SINGLELANE模式下。所以RXPHASEALINGMENT只要工作在AUTO模式下就可以了。对于GTX,RXPHASEALIGNMENT
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 博尔塔拉职业技术学院《信息系统审计》2023-2024学年第二学期期末试卷
- 武汉电力职业技术学院《外科学总论(含手术学)》2023-2024学年第二学期期末试卷
- 深圳职业技术大学《中国特色社会主义理论与实践研究》2023-2024学年第二学期期末试卷
- 信阳艺术职业学院《经济应用数学二》2023-2024学年第一学期期末试卷
- 2016食品安全课件
- 河南省六市2025届高三下第二次测试(数学试题理)试题含解析
- 兰州大学《器官系统模块三》2023-2024学年第二学期期末试卷
- 天津工业职业学院《即兴伴奏编配》2023-2024学年第一学期期末试卷
- 广西壮族自治区钦州市2024-2025学年高三下学期数学试题统练(5)试题含解析
- 浙江省衢州市2024-2025学年小升初易错点数学检测卷含解析
- 【MOOC期末】《英美文学里的生态》(北京林业大学)期末中国大学慕课MOOC答案
- 2024年六西格玛黄带认证考试练习题库(含答案)
- 中国心力衰竭诊断和治疗指南2024解读(完整版)
- 古村落乡村文化旅游古镇旅游外文文献翻译2014年
- 压疮指南解读
- 国家义务教育质量监测科学模拟测试题附答案
- 光缆的敷设方法与要求
- 盘口语言解密高级版第二讲老姜:成交密度、速度与涨停ppt课件
- 药品出厂、上市放行管理规程
- 石油化工公司重交道路沥青装置试生产方案
- 2020小学四年级下册科学课件-《串联与并联》|人教版(49张)ppt课件
评论
0/150
提交评论