新聞中心

        EEPW首頁 > EDA/PCB > 設計應用 > 基于FPGA的高速DMUX設計

        基于FPGA的高速DMUX設計

        作者: 時間:2008-02-27 來源:網絡 收藏
        摘要:介紹了基于Altera公司的高速(數據分路器)設計。通過與專用器件的比較,說明了這種實現方式的優勢。
        關鍵詞:數據分路器;信號完整性;模數轉換器;現場可編程門陣列


        l 引言
        隨著信號速率和帶寬的提高,信號采集的速率也相應地不斷提高。如今模數轉換器的速率已經達到1 GS/s。甚至2 GS/s。高速模數轉換器輸出數據流速率為赫茲千兆比特,會增加后端存儲器和數據處理器件的設計難度,因此降速分流成為解決這一問題的必要方法。

        2 降速分流的方法
        降速分流通常有兩種實現方案:一是使用專用集成器件,另一種是在上實現DMUX。
        一般地說,這兩種方式都能很好地實現降速分流,在性能上并無優劣之分。但是從整個系統考慮,第二種方式相對優于第一種方式,原因如下:
        (1)由于工藝方面的限制,DMUX專用集成器件工作模式比較單一,且不能改變。通常DMUX專用集成器件如TS81102(Atmel公司)可以實現1:8模式(將數據速率降為原先的1/8,并給出8路輸出)或者1:4模式(將速率降為原先的1/4,并給出4路輸出)。
        (2)DMUX專用集成器件輸出的數據速率越低,其輸出占用的數據線就越多,而要減少數據線,其數據速率又會相應提高,因此無論其采用何種工作模式,PCB設計難度都很大。
        (3)DMUX專用集成器件功耗大(平均要高于5W),要使其正常工作,電源供電和散熱問題會增加設計成本和設計難度。
        (4)DMUX專用集成器件屬于特殊芯片,不容易購買。
        因此選用另一種方式來代替DMUX專用集成器件顯得很必要。
        基于Altera公司就可以實現DMUX的功能。其最大的優勢在于存儲模塊和數據處理模塊可以同時在FPGA中實現,相比較DMUX專用集成器件+FPGA這樣的設計系統來說,結構上簡化很多,而信號完整性卻在很大程度上得到提高。
        下面就以1:8工作模式為例,對兩種方式的設計方案進行比較。
        圖l所示是采用DMUX專用集成器件的設計方案。模擬信號經過高速ADC轉換后,輸出高速率的8位數據和l位時鐘Clkl,這些信號經過DMUX分流后再形成8路64位的數據和l位時鐘Clk2(此時鐘降為原先的1/8)。隨后FPGA用Clk2來采樣這些64位數據,再在控制信號的控制下處理這些數據。

        利用FPGA實現DMUX后,就可以將DMUX和FPGA整合到一起,如圖2所示。

        與圖1相比,圖2在PCB設計上省略了DMUX和FPGA之間的64位數據線和1位時鐘線,而這些數據線和時鐘線通常會高于100 MHz,所以對PCB布線任何考慮不周都會造成信號完整性的嚴重下降。在圖2中,DMUX在FPGA內直接實現,這可以在很大程度上提高設計的成功率,關鍵就是看FP-GA能不能接收ADC的8位高速數據和1位高速時鐘。而實際上FPGA確實可以做到,下面就對其實現的各個方面分別加以介紹。

        3 基于FPGA的DMUX實現的關鍵
        3.1 器件的選擇
        要在FPGA中實現DMUX,FPGA必須具備兩個條件:一是多個高速差分接收端口;二是FastDPLL(快速數字鎖相環)。許多FPGA都能滿足此要求,如Xilinx的Virtex4、Virtex Pro系列,Altera的Stratix系列(Stratix GX、StratixⅡ和Stratix)。它們在應用上各有特色,下面僅以Altera的Stratix系列為例來說明實現方式。
        3.2 引腳的配置
        要接收ADC的高速數據和時鐘輸出,必須將這些信號引腳配置到高速差分接收引腳上。但并不是所有的差分引腳都能作為高速差分接收引腳。數據接收引腳一般定義為DIFFIO_RX_P、DIF-FIO_RX_N,時鐘接收引腳一般定義為CLK_DIF-FIO_RX__P、CLK_DIFFIO_RX_N。
        在引腳的設置位置上也有一定的要求,如Stratix GX器件只可以在BANKl、2的差分引腳上實現;Stratix Ⅱ器件只可以在BANK3、4、7、8的差分引腳上實現;而Stratix器件可以在BANKl、2、5、6的差分引腳上實現。如果接收ADC信號的引腳不是配置在這些引腳上,那么就不能在FPGA內實現DMUX來接收這些高速信號。
        對于時鐘引腳,也要配置在這些BANK的專用時鐘引腳上。如果有多個這樣的時鐘引腳可供選擇,則應當選擇那些Cload(負載電容)更小的引腳,這對于提高數據的接收速率很有幫助。
        3.3 軟件設置
        3.3.1 FPGA片上阻抗的實現

        接收模數轉換器輸出的高速差分線一般都需要終端阻抗匹配,如果這些終端匹配電阻都依靠片外電阻實現,就會增加PCB布局布線的難度和降低接收的信號完整性。FPGA的差分接收端口一般都帶有差分片上阻抗匹配,如圖3所示。

        阻抗(RD)在100 Ω~170 Ω之間,其典型值為135 Ω,接近于差分線的差分阻抗。依靠這些片上匹配電阻,則不需要再外接電阻,并且會達到比外接電阻更好的效果。
        軟件方面只需設置終端阻抗為Differential。
        3.3.2 FPGA高速差分接收模塊的實現
        在FPGA上主要是通過調用altlvds模塊來接收ADC輸出的高速差分數字信號,如圖4所示。

        altlvds模塊內集成有Fast DPLL,通過它可以以45為一級精確地調整輸入時鐘沿與數據之間的關系,從而保證建立和保持時間能夠滿足要求。
        altlvds模塊還利用輸入時鐘對輸入數據進行雙沿采集,將其轉換為并行的多路數據。
        其輸入數據的通道數和分路比也可以通過軟件靈活設置。設置的接收數據通道數最多為44通道(受限于FPGA的高速差分接收引腳數),最多可設置的分路比為1:10模式。
        此外,此模塊上可以設置接收的最高數據速率為840 Mb/s,最高接收時鐘為420 MHz。
        3.4 軟件仿真
        在Quartus Ⅱ中進行DMUX后的仿真結果如圖5所示,輸入數據(idata)為800 MHz,輸入時鐘(in-clk)為400 MHz。從仿真波形上可以看到,雖然輸出的數據不是對得很準,但是輸出的時鐘(kaniclkp)可以保證能夠完整地接收數據。

        將輸入數據(idata)改為l 000 MHz,輸入時鐘(inclk)改為500 MHz,其仿真結果仍然不錯。
        3.5 PCB設計
        要使FPGA能夠很好地接收模數轉換器的輸出信號,首先應該保證它們之間布線的差分阻抗滿足要求。另外每對差分線要緊鄰并且近似等長。
        此外要盡量將FPGA的高速差分接收引腳配置在FPGA的外圍,以保證模數轉換器和FPGA的連線上盡量沒有過孔。
        PCB板材的選擇也很重要,要盡量保證它們之間的布線都布置在最外層,并且布線板層要盡量選介質常數小的材料。
        為了模塊中的內部鎖相環能夠正常工作,還應該將內部鎖相環的供電電源與外部數字電源隔開。圖6中示出了一種電路連接方式,通過大電感將兩種電源隔開,再通過多個電容并聯濾波,以保證供給內部鎖相環電源的穩定性。

        4 結束語
        經過實際測試,利用FPGA替代DMUX專用集成器件來接收模數轉換器輸出的信號,其接收的數據速率已經超過1 Gb/s,高于器件資料上給定的840 Mb/s的最高速率,完全達到設計要求。



        關鍵詞: FPGA DMUX

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 建始县| 静安区| 乌恰县| 平乡县| 龙州县| 盖州市| 新密市| 巴南区| 大关县| 繁昌县| 余江县| 延津县| 平果县| 即墨市| 宿松县| 柳河县| 娄烦县| 三原县| 十堰市| 交城县| 游戏| 浦县| 苏尼特左旗| 栖霞市| 崇礼县| 衡山县| 大兴区| 宁乡县| 峨边| 青阳县| 始兴县| 桃园县| 灵璧县| 株洲市| 六盘水市| 盐池县| 新晃| 博湖县| 蒲城县| 贡嘎县| 城口县|