<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 手機(jī)與無(wú)線通信 > 設(shè)計(jì)應(yīng)用 > 不同光纖收發(fā)器間(QSFP與GTH)通信研究與實(shí)現(xiàn)

          不同光纖收發(fā)器間(QSFP與GTH)通信研究與實(shí)現(xiàn)

          作者:趙多 強(qiáng)景 蔡二龍 時(shí)間:2016-07-28 來(lái)源:電子產(chǎn)品世界 收藏
          編者按:本文介紹了Xilinx Virtex-6 HXT系列FPGA內(nèi)嵌光收發(fā)器GTH與Tyco Electronics光收發(fā)器QSFP,實(shí)現(xiàn)了光纖數(shù)據(jù)的高速傳輸。

          摘要:本文介紹了Xilinx Virtex-6 HXT系列FPGA內(nèi)嵌光收發(fā)器GTH與Tyco Electronics光收發(fā)器QSFP,實(shí)現(xiàn)了光纖數(shù)據(jù)的高速傳輸。

          本文引用地址:http://www.ex-cimer.com/article/201607/294701.htm

          引言

            隨著通信行業(yè)的迅猛發(fā)展,對(duì)數(shù)據(jù)吞吐量提出了更高的要求,銅互連開(kāi)始向光纖互連轉(zhuǎn)型,設(shè)計(jì)出符合高性能光纖抖動(dòng)標(biāo)準(zhǔn)的收發(fā)器是轉(zhuǎn)型成功的關(guān)鍵因素。

            賽靈思公司(Xilinx)推出的Virtex-6 HXT系列的FPGA所內(nèi)嵌的GTH收發(fā)器擁有領(lǐng)先的收發(fā)器抖動(dòng)性能,為業(yè)界提供了較高的串行帶寬,可實(shí)現(xiàn)與行業(yè)標(biāo)準(zhǔn) SFP+、XFP 和 CFP等高速率光纖模塊的無(wú)縫連接,滿足新一代光纖傳輸應(yīng)用的需求。泰科電子(Tyco Electronics)提供四通道小型可插拔QSFP(Quad Small Form-factor Pluggable)的光纖收發(fā)器,支持每通道速率高達(dá) 10Gbit/s 。本文主要介紹賽靈思公司內(nèi)嵌的光纖收發(fā)器GTH與泰科電子的QSFP光纖收發(fā)器互連對(duì)接,實(shí)現(xiàn)光纖通信,并通過(guò)實(shí)驗(yàn),給出最終結(jié)果和采樣波形圖。

          1 GTH收發(fā)器設(shè)計(jì)要點(diǎn)

            要達(dá)到GTH收發(fā)器的最佳性能,需要考慮到諸多設(shè)計(jì)因素,本文針對(duì)在設(shè)計(jì)過(guò)程中遇到的具體問(wèn)題展開(kāi)相關(guān)討論。

          1.1 參考時(shí)鐘

            為了滿足高速數(shù)據(jù)通信的需求,GTH收發(fā)器必須具備高性能、低抖動(dòng)的參考時(shí)鐘。GTH收發(fā)器參考時(shí)鐘由REFCLK端口提供,其驅(qū)動(dòng)方式有兩種:由外部差分晶振直接驅(qū)動(dòng)專用時(shí)鐘路由和使用從相鄰QUAD的專用時(shí)鐘路由獲取的時(shí)鐘。使用專用時(shí)鐘路由可以給GTH QUAD提供性能最佳的時(shí)鐘,而通過(guò)專用的時(shí)鐘引腳IBUFDS_GTHE1原語(yǔ),可以直接驅(qū)動(dòng)專用時(shí)鐘路由,常采用外部高性能時(shí)鐘輸入經(jīng)過(guò)專用引腳驅(qū)動(dòng)輸出參考時(shí)鐘REFCLK,其時(shí)鐘連接圖如圖1所示。

          1.2 初始化及復(fù)位

            GTH QUAD的復(fù)位有三種方式:上電配置FPGA自動(dòng)完成復(fù)位、復(fù)位序列給GTHRESET和GTHINIT端口復(fù)位以及通過(guò)拉高POWERDOWN端口復(fù)位PCS邏輯。常用的復(fù)位方式為第一和第二種,第一種復(fù)位方式要求GTH QUAD必須有穩(wěn)定的參考時(shí)鐘和電源,若參考時(shí)鐘在芯片配置后輸入,則需第二種復(fù)位方式。表1給出了第二種復(fù)位方式需要的端口及說(shuō)明。

          1.3 用戶時(shí)鐘

            GTH收發(fā)器提供了發(fā)送端和接收端的并行用戶時(shí)鐘TXUSERCLKOUT和RXUSERCLKOUT,而在TXUSERCLKIN時(shí)鐘發(fā)送并行數(shù)據(jù)到TXDATA端口時(shí),在RXUSERCLKIN時(shí)鐘上升沿接收的并行數(shù)據(jù)從RXDATA端口讀出,輸入用戶時(shí)鐘TXUSERCLKIN,RXUSERCLKIN為TXUSERCLKOUT和RXUSERCLKOUT經(jīng)過(guò)緩沖BUFG驅(qū)動(dòng),兩者不能來(lái)源于同一時(shí)鐘。圖2是發(fā)送端用戶時(shí)鐘框圖,接收端用戶時(shí)鐘框圖和發(fā)送端框圖一樣。

          (1)

            由公式(1)可知,線速率為5Gbps時(shí),數(shù)據(jù)位寬32位經(jīng)8B/10B編碼后,發(fā)送端與接收端用戶時(shí)鐘USERCLKIN為125MHz。

          1.4 接收端并行數(shù)據(jù)對(duì)齊控制

            GTH收發(fā)器接收端并無(wú)對(duì)齊控制配置,需要外加FPGA邏輯實(shí)現(xiàn)接收數(shù)據(jù)對(duì)齊。接收端對(duì)齊控制原理是對(duì)接收端未對(duì)齊的并行數(shù)據(jù)檢測(cè)Comma字符,若找到Comma字符對(duì)應(yīng)位置,其后續(xù)位置的所有數(shù)據(jù)均已對(duì)齊。

            其程序流程圖如圖3所示。發(fā)送端并行數(shù)據(jù)為4 Bytes,發(fā)送Comma時(shí),TXDATA[31:0]=32’h000000BC,對(duì)應(yīng)設(shè)置TXCTRL[3:0]=3’b0001,接收端并行數(shù)據(jù)RXDATA的Comma字符可能出現(xiàn)的位置為Byte0、Byte1、Byte2和Byte3。當(dāng)檢測(cè)Comma字符出現(xiàn)在Byte0位置時(shí),進(jìn)入模式1操作,對(duì)接收端并行數(shù)據(jù)RXDATA進(jìn)行一級(jí)寄存,對(duì)齊的數(shù)據(jù)即為一級(jí)寄存后的數(shù)據(jù)RXDATA_R,其示意圖如圖4所示;當(dāng)出現(xiàn)在Byte1位置時(shí),進(jìn)入模式2操作,對(duì)齊的數(shù)據(jù)則為{RXDATA[7:0],RXDATA_R[31:8]};出現(xiàn)在Byte2位置時(shí),進(jìn)入模式3操作,對(duì)齊的并行數(shù)據(jù)為{RXDATA[15:0],RXDATA_R[31:16]};出現(xiàn)在Byte3位置時(shí),進(jìn)入模式4操作,對(duì)齊并行數(shù)據(jù)是{RXDATA[23:0],RXDATA_R[31:24]}。同時(shí),為了便于后級(jí)處理,控制標(biāo)志位RXCTRL也應(yīng)該進(jìn)行對(duì)齊操作,其原理和RXDATA一樣,這里不再贅述。

          2 光收發(fā)器模塊QSFP架構(gòu)和工作原理

            為了實(shí)現(xiàn)多路光纖數(shù)據(jù)通信,這種小型化、低成本、低功耗、高速率及可熱插拔的光收發(fā)模塊是最佳選擇。所采用的有源光纜組件包括屏蔽罩、有源光纜AOC(Active Optical Cable)、光收發(fā)模塊QSFP和疊接式集成連接器。屏蔽罩用于抑制屏蔽罩至擋板與屏蔽罩至模塊接口之間的EMI(Electromagnetic Interference,電磁干擾),表面貼裝連接器能夠提供良好的電氣性能,符合包括接口與主板設(shè)計(jì)在內(nèi)的SFF-8436工業(yè)標(biāo)準(zhǔn)要求。

            發(fā)送部分集成了4通道VCSEL(Vertical Cavity Surface Emitting Laser,垂直表面腔發(fā)射激光器)陣列、4通道輸入緩沖器、激光驅(qū)動(dòng)器、控制模塊和激光器偏置模塊。發(fā)送端輸入緩沖器提供了兼容CML(Current Mode Logic,電流模式邏輯)電平的高速串行接口,其數(shù)據(jù)傳輸速率一般在1Gbps至10Gbps之間,電壓擺幅為200mV~800mV;控制接口集成了LVTTL電平的I2C總線及低速控制接口,用于數(shù)字診斷檢測(cè)。接收部分集成了4通道的PIN光電二極管檢測(cè)陣列、4通道TIA(Trans-impedence Amplifier,跨阻放大器)陣列、4通道輸出緩沖器、控制模塊和激光器偏置模塊[4]

            其基本原理為:發(fā)送部分,4對(duì)差分串行數(shù)據(jù)經(jīng)輸入緩沖器緩沖,激光驅(qū)動(dòng)器對(duì)調(diào)制電信號(hào)進(jìn)行相應(yīng)處理,隨后輸出,調(diào)制電流及偏置電流驅(qū)動(dòng)VCSEL陣列,VCSEL陣列將電流信號(hào)轉(zhuǎn)化成光信號(hào),再由光接口輸出。接收部分,PIN光電二極管陣列將從光接口輸入的光信號(hào)轉(zhuǎn)化成電流,4通道的跨阻放大器TIA放大轉(zhuǎn)變?yōu)?路數(shù)字電壓信號(hào),經(jīng)接收端的輸出緩沖器,輸出CML電平信號(hào)[5]。

          3 互連系統(tǒng)分析

            雙端光收發(fā)模塊的一端接至QSFP1插槽,另一端接至QSFP2插槽,可形成外環(huán)回,可實(shí)現(xiàn)4路光纖數(shù)據(jù)的高速傳輸。

            4路光纖數(shù)據(jù)傳輸流程:GTH收發(fā)器GTH5~GTH8四路發(fā)送端發(fā)送并行數(shù)據(jù)源,輸出串行傳輸速率為5Gbps的數(shù)據(jù)流經(jīng)過(guò)QSFP2模塊進(jìn)行光電轉(zhuǎn)換,光信號(hào)經(jīng)光纜傳輸至另一端,再由QSFP1接收光信號(hào),隨后光電轉(zhuǎn)換后輸出至GTH1~GTH4收發(fā)器的接收端RX。由之前GTH設(shè)計(jì)要點(diǎn)可知,單通道GTH接收端完成串并轉(zhuǎn)換后,數(shù)據(jù)位寬為32位,接收端用戶時(shí)鐘RXUSERCLKIN為125MHz,其單路數(shù)據(jù)傳輸速率為500MB/s。同理GTH1~GTH4發(fā)送端發(fā)送并行數(shù)據(jù),通過(guò)光纜從GTH5~GTH8接收端接收數(shù)據(jù)。

          4 實(shí)驗(yàn)結(jié)果和分析

            IBERT是集成式比特誤碼率測(cè)試儀,是Xilinx專門用于具有高速串行接口的FPGA芯片的調(diào)試和交互式配置工具[6],使用IBERT測(cè)試GTH收發(fā)器與光模塊QSFP通信鏈路情況,配置MGT/IBERT選項(xiàng),選取測(cè)試時(shí)間4800s,其測(cè)試結(jié)果如圖5所示。

            由圖5可知,8路光纖鏈路線速率為5Gbps時(shí),發(fā)送端數(shù)據(jù)設(shè)置為PRBS(偽隨機(jī)二進(jìn)制序列)數(shù)據(jù)類型,PRBS相當(dāng)于“隨機(jī)數(shù)據(jù)”,因此它的頻譜特征(在有限頻帶內(nèi))和白噪聲接近,故它很適合用于測(cè)試數(shù)字通信系統(tǒng)性能。環(huán)回模式Loopback Mode設(shè)置為None,表明GTH1~GTH4、光纜與GTH5~GTH8鏈路外環(huán)回,在測(cè)試期間接收端誤碼計(jì)數(shù)一直為0,且誤碼率在10-12量級(jí),滿足通信要求,表明光纖鏈路通信正常,因此設(shè)計(jì)滿足4路光纖數(shù)據(jù)的可靠傳輸要求。

            下面通過(guò)發(fā)送遞增碼測(cè)試光纖鏈路的通信質(zhì)量,發(fā)送Comma字符TXDATA[31:0]=32’h000000BC,對(duì)應(yīng)控制標(biāo)志位設(shè)置TXCTRL[3:0]=3’b0001,有效數(shù)據(jù)以十六進(jìn)制0000_0000、0001_0001、0002_0002......格式遞增,對(duì)應(yīng)標(biāo)志位設(shè)置TXCTRL[3:0]=3’b0000,以1024個(gè)同步字符和4096個(gè)有效數(shù)據(jù)為一包數(shù)據(jù)形式發(fā)送。圖6為使用Chipscore Pro工具采集到的數(shù)據(jù)錯(cuò)位圖,這種情況由于最初設(shè)計(jì)GTH接收端并沒(méi)外加對(duì)齊控制,這里測(cè)試的為GTH QUAD116和QUAD117的第一通道收發(fā)情況,由圖中的接收端控制標(biāo)志端口rxtrl[3:0]=4’b0100,接收端并行數(shù)據(jù)端口gth_data_receive[31:0]=32’h00BC0000,可以看出數(shù)據(jù)發(fā)生錯(cuò)位,實(shí)際測(cè)試數(shù)據(jù)錯(cuò)位是隨機(jī)的。所以接收端的對(duì)齊控制相當(dāng)重要,是GTH收發(fā)器正確數(shù)據(jù)傳輸?shù)年P(guān)鍵。

            圖7(a)為加入接收端對(duì)齊控制后采集到的接收正確圖,GTH1~GTH4發(fā)送端發(fā)送遞增碼數(shù)據(jù),通過(guò)光模塊QSFP,GTH5~GTH8接收端接收到數(shù)據(jù);(b)為GTH5~GTH8發(fā)送端發(fā)送遞增碼數(shù)據(jù),通過(guò)光模塊QSFP,GTH1~GTH4接收端接收數(shù)據(jù);(c)為Plot工具畫出的各路接收數(shù)據(jù)圖。由圖中的8路接收端通道的誤碼計(jì)數(shù)信號(hào)error_cnt=0及Plot曲線平滑無(wú)毛刺,可看出此鏈路傳輸數(shù)據(jù)正確,接收端無(wú)誤碼。

          5 結(jié)束語(yǔ)

            本文介紹了Xilinx公司Virtex-6 HXT系列FPGA集成的GTH收發(fā)器及光收發(fā)模塊QSFP的原理,并對(duì)其互連系統(tǒng)進(jìn)行設(shè)計(jì)與實(shí)現(xiàn)??梢钥闯觯肎TH收發(fā)器可與光收發(fā)模塊QSFP無(wú)縫連接,并實(shí)現(xiàn)了4路光纖數(shù)據(jù)的對(duì)發(fā)對(duì)收。本系統(tǒng)可作為高速大容量存儲(chǔ)陣列的前端,它滿足了對(duì)光纖數(shù)據(jù)快速高效傳輸及暫存,具有很好的工程應(yīng)用前景。

          參考文獻(xiàn):

            [1]田耕,徐文波. Xilinx FPGA開(kāi)發(fā)實(shí)用教程[M]. 北京:清華大學(xué)出版社,2012.

            [2] Xilinx. Virtex-6 Family Overview[M]. USA:Xilinx, 2012.

            [3]Xilinx. Virtex-6 FPGA GTH Transceivers User Guide[M]. USA:Xilinx,2011.

            [4]SFF Committee. SFF-8436 Specification for QSFP+ 10Gbps 4X PLUGGABLE TRANSCEIVER Rev4.8[S].USA,2013.10.

            [5]王婷婷. QSFP光模塊的技術(shù)與測(cè)試研究[J].信息通信.2015.5(149):33~35.

            [6]徐妍,馬麗珍,張麗. IBERT在FPGA中的應(yīng)用[J]. 電子科技,2012,25(7):103-105.

          本文來(lái)源于中國(guó)科技期刊《電子產(chǎn)品世界》2016年第7期第61頁(yè),歡迎您寫論文時(shí)引用,并注明出處。



          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();