亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于FPGA的高速光纖傳輸卡

        2018-03-24 05:13:28邵春偉王小龍
        電子與封裝 2018年3期
        關(guān)鍵詞:系統(tǒng)設(shè)計(jì)

        朱 琛,崔 鐳,邵春偉,王小龍

        (中國(guó)電子科技集團(tuán)公司第五十八研究所,江蘇無(wú)錫 214072)

        1 引言

        隨著現(xiàn)代通信技術(shù)的飛速發(fā)展,光纖通訊得到了廣泛應(yīng)用。光纖通訊是一種利用光與光纖傳遞資訊的方式,具有頻帶寬、損耗低、傳輸數(shù)據(jù)量大等優(yōu)點(diǎn),因而應(yīng)用越來(lái)越多,其發(fā)展也日趨成熟。在業(yè)內(nèi)公司中,安捷倫在數(shù)據(jù)采集與測(cè)量方面都處于技術(shù)領(lǐng)先地位,安捷倫公司推出的U1080A系列高速數(shù)據(jù)采集卡,其配備的MR0LI2類(lèi)型的光模塊有12路并行光通路,每條通路的傳輸率可以達(dá)到2.7 Gbit/s,最大傳輸速率可以達(dá)到30 Gbit/s[1]。美國(guó)內(nèi)達(dá)華州的4DSP公司致力于開(kāi)發(fā)堅(jiān)固的高性能數(shù)據(jù)處理板卡用于滿(mǎn)足軍事、航空航天等科學(xué)應(yīng)用的具體要求。4DSP開(kāi)發(fā)的FM482數(shù)據(jù)處理板支持1 Gbit/s的采樣率,8 bit位輸出的數(shù)據(jù)采集卡;在數(shù)據(jù)傳輸方面,板卡可以通過(guò)光纖連接遠(yuǎn)端主機(jī)處理系統(tǒng)或者數(shù)據(jù)存儲(chǔ)系統(tǒng),共有4條光纖傳輸通路,每條光纖通路的最大傳輸速率2.5 Gbit/s[2]。光纖數(shù)據(jù)采集技術(shù)最先在國(guó)外發(fā)展起來(lái),國(guó)內(nèi)近些年也開(kāi)始慢慢發(fā)展起來(lái),但技術(shù)還不夠成熟,尤其在一些軍工領(lǐng)域缺乏運(yùn)用。

        本文設(shè)計(jì)實(shí)現(xiàn)了一種基于FPGA的高速光纖傳輸卡,將雷達(dá)數(shù)據(jù)有效快速地通過(guò)光纖傳輸?shù)紽PGA傳輸卡上,再通過(guò)PCI Express接口發(fā)送到PC機(jī)上。

        2 系統(tǒng)組成

        總體設(shè)計(jì)如圖1所示。本系統(tǒng)選用了Xilinx公司的XC7K325T進(jìn)行邏輯設(shè)計(jì)。采集數(shù)據(jù)經(jīng)由光纖模塊傳輸進(jìn)入FPGA中并緩存在大容量DDR3 SDRAM中,通過(guò)總線(xiàn)DMA的控制,將數(shù)據(jù)通過(guò)X4通道的PCI Express協(xié)議以不低于320 MB/s的速度傳輸?shù)街鳈C(jī)的存儲(chǔ)設(shè)備。在主機(jī)端,使用C++語(yǔ)言開(kāi)發(fā)PCIe光纖接口卡應(yīng)用程序界面以提供操作方式,通過(guò)驅(qū)動(dòng)程序間接控制板卡實(shí)現(xiàn)數(shù)據(jù)傳輸控制和工作。最后,在主機(jī)端上設(shè)計(jì)應(yīng)用程序界面以實(shí)現(xiàn)對(duì)前端數(shù)據(jù)量的控制和監(jiān)測(cè)。

        本系統(tǒng)能夠以雙工模塊進(jìn)行高速串行數(shù)據(jù)傳輸,保證傳輸?shù)膶?shí)時(shí)性。它主要包括PCI-e金手指、PCI Express模塊、DDR3存儲(chǔ)器控制模塊、光纖傳輸模塊以及外部的電源管理(見(jiàn)圖2)。PCI Express模塊支持PCI Express傳輸協(xié)議,并與其他模塊交互,控制內(nèi)部并行數(shù)據(jù)的轉(zhuǎn)換,實(shí)現(xiàn)串行數(shù)據(jù)傳輸。DDR3存儲(chǔ)模塊用于與其他模塊進(jìn)行交互,緩存數(shù)據(jù)。

        圖1 硬件架構(gòu)圖

        圖2 實(shí)物圖

        3 系統(tǒng)設(shè)計(jì)

        整個(gè)高速光纖傳輸系統(tǒng)設(shè)計(jì)的關(guān)鍵在于硬件邏輯設(shè)計(jì)、驅(qū)動(dòng)層與應(yīng)用層設(shè)計(jì),整體架構(gòu)如圖3所示。

        圖3 整體系統(tǒng)架構(gòu)圖

        3.1 PCI Express模塊

        為了減少開(kāi)發(fā)時(shí)間,選用Xilinx官方提供的PCIe的IP核(架構(gòu)如2-2),IP核允許使用數(shù)據(jù)包在其子模塊間相互交換。在發(fā)送分層設(shè)備部分通過(guò)裝配信息機(jī)制生成數(shù)據(jù)包。包中附帶了數(shù)據(jù)傳輸通過(guò)的設(shè)備層所必需的信息。數(shù)據(jù)包通過(guò)鏈路傳輸在接收端被接收,接收設(shè)備層會(huì)對(duì)包中的必要信息進(jìn)行拆解和讀取,剝掉相應(yīng)的字段,將待處理的包發(fā)往下一處理層,直到轉(zhuǎn)換成能夠被相應(yīng)的核心設(shè)備和應(yīng)用層讀取和處理的信息。

        鏈路選用4 lane(x4),理論速度可達(dá)到5 Gb/s(Gen2)。核例化以后的接口包括系統(tǒng)接口、PCI Express接口、傳輸接口、配置接口。系統(tǒng)接口主要提供系統(tǒng)復(fù)位和系統(tǒng)時(shí)鐘信號(hào)。PCI Express接口主要用于數(shù)據(jù)傳輸,以多個(gè)差分隊(duì)的形式組成。事務(wù)接口用于實(shí)現(xiàn)對(duì)TLP傳輸機(jī)制的控制。配置接口用于配置內(nèi)部寄存器,保證PCI Express協(xié)議正常工作。

        3.2 PCIe-DMA控制邏輯設(shè)計(jì)

        PCI Express端點(diǎn)有PIO和DMA兩種數(shù)據(jù)傳輸方式。本設(shè)計(jì)采用DMA傳輸方式直接讀寫(xiě)內(nèi)存。DMA 控制器主要有 TX_Engine、RX_Engine、DMA 控制/狀態(tài)寄存器和中斷控制器等部分。CPU會(huì)初始化DMA控制器(DMA通道、數(shù)據(jù)傳輸源地址、目的地址、傳輸字節(jié)數(shù)、傳輸模式),然后啟動(dòng)DMA傳輸。傳輸完成之后,DMA控制器會(huì)向CPU提出DMA中斷,這時(shí)DMA再回應(yīng)該中斷,將目標(biāo)地址中的數(shù)據(jù)取走。

        圖4 PCI Express內(nèi)核結(jié)構(gòu)

        PCIe IP核支持MSI中斷和傳統(tǒng)的legacy中斷(以讀中斷為例),當(dāng)DMA中斷處于空閑狀態(tài)INT_IDIE,如果接收到RX_Engine發(fā)出的中斷信號(hào),則進(jìn)行判斷讀寫(xiě)中斷類(lèi)型;如果讀中斷,進(jìn)入讀中斷處理狀態(tài)RDint_TYPE,該狀態(tài)下告知PCIE核中斷事件并根據(jù)中斷模式選擇轉(zhuǎn)移狀態(tài)RD_MSI_PRO或RDint_END,若是RD_MSI_PRO處理狀態(tài)下,等待接收PCIe IP核的中斷確認(rèn)信號(hào);進(jìn)入讀中斷待結(jié)束狀態(tài)RDint_end等待中斷結(jié)束信號(hào)返回空閑狀態(tài)INT_IDIE,再次等待下次中斷的觸發(fā)[4]。

        3.3 DDR3邏輯設(shè)計(jì)

        DDR3 SDRAM是易失性存儲(chǔ)器件。在每次上電或復(fù)位后都要進(jìn)行初始化才能實(shí)現(xiàn)存取操作。DDR3上電后等待200 ns,才能發(fā)出命令NOP或Deselect命令保持生效至少200 ns;預(yù)充電所有的命令;依次執(zhí)行擴(kuò)展模式寄存器2(EMR2)和擴(kuò)展模式寄存器3(EMR3)命令;執(zhí)行復(fù)位DLL模式寄存器進(jìn)行命令設(shè)置,持續(xù)至少200個(gè)時(shí)鐘周期才能鎖定DLL;再次預(yù)充電所有的命令;執(zhí)行兩個(gè)自動(dòng)刷新命令;執(zhí)行模式寄存器進(jìn)行命令設(shè)置,用于初始化器件操作[5]。選用4片MT41K128M16-15H,DDR3內(nèi)核工作頻率為200MHz,數(shù)據(jù)傳輸速率為800 MHz。DDR3邏輯控制發(fā)送命令給控制器,實(shí)現(xiàn)對(duì)DDR3 SDRAM進(jìn)行讀寫(xiě)數(shù)據(jù)訪(fǎng)問(wèn)相關(guān)操作(DDR3邏輯結(jié)構(gòu)圖如圖6所示)。根據(jù)系統(tǒng)需求,此通道用于接收緩存大容量高速率的光纖數(shù)據(jù),進(jìn)而傳輸至主機(jī)。

        圖5 PCIe-DMA邏輯結(jié)構(gòu)圖

        圖6 DDR3邏輯結(jié)構(gòu)圖

        3.4 Aurora IP邏輯設(shè)計(jì)

        Aurora協(xié)議是由Xilinx公司開(kāi)發(fā),定義為串行數(shù)據(jù)傳輸?shù)囊粋€(gè)鏈路層協(xié)議,它具有高寬帶以及可擴(kuò)展性等特點(diǎn)[6]。此外,該協(xié)議的幀結(jié)構(gòu)非常簡(jiǎn)單,打包效率很高。Aurora 64B/66B頂層模塊例化了Aurora 64B/66B通道模塊、TX和RX本地鏈路模塊、全局邏輯模塊以及GTP/GTX收發(fā)器。Aurora邏輯結(jié)構(gòu)如圖7所示。

        3.5 驅(qū)動(dòng)層與應(yīng)用層設(shè)計(jì)

        PCIe光纖接口程序可以劃分為2個(gè)層次:一是用戶(hù)驅(qū)動(dòng)層,在Linux上使用內(nèi)核API函數(shù)開(kāi)發(fā);二是應(yīng)用面層,為用戶(hù)設(shè)計(jì)的應(yīng)用程序。

        圖7 Aurora邏輯結(jié)構(gòu)圖

        驅(qū)動(dòng)程序是控制PCIe板卡的底層程序,在Linux下使用C開(kāi)發(fā)。驅(qū)動(dòng)程序運(yùn)行在系統(tǒng)內(nèi)存的內(nèi)核空間上,與應(yīng)用程序的交互通過(guò)驅(qū)動(dòng)提供的read、write以及ioctl等函數(shù)接口來(lái)完成[7]。

        上位機(jī)應(yīng)用程序?qū)崿F(xiàn)用戶(hù)操控和監(jiān)控PCIe光纖接口卡的功能,程序一般用C或者C++在Linux系統(tǒng)上實(shí)現(xiàn),本系統(tǒng)界面在Linux下采用QT開(kāi)發(fā),使用戶(hù)獲得所見(jiàn)即所得的直觀(guān)感受。

        操作系統(tǒng)通過(guò)驅(qū)動(dòng)程序完成對(duì)光纖卡的初始化、讀寫(xiě)、控制等操作。驅(qū)動(dòng)程序首先被加載到內(nèi)核并啟動(dòng),由外部采集而來(lái)的數(shù)據(jù)通過(guò)光纖存放到DDR3內(nèi)存并依序進(jìn)入DMA緩存區(qū),當(dāng)板卡滿(mǎn)足DMA中斷條件時(shí)向CPU提出中斷,此時(shí)等待獲取數(shù)據(jù)的應(yīng)用程序?qū)⑼ㄟ^(guò)驅(qū)動(dòng)程序提供的接口函數(shù)read讀取采集數(shù)據(jù)(圖8)。

        圖8 驅(qū)動(dòng)層和應(yīng)用層讀取程序流程圖

        4 測(cè)試結(jié)果

        上位機(jī)通過(guò)發(fā)送大小為126697 Bytes的文件,經(jīng)過(guò)PCIE接口傳輸?shù)桨蹇ǎ?jīng)由DDR3緩沖后傳輸?shù)焦饫w接口,光纖口作回環(huán)處理,上位讀取光纖口數(shù)據(jù)與原文件進(jìn)行比對(duì),并監(jiān)測(cè)其傳輸速率。測(cè)試結(jié)果顯示:傳輸速率達(dá)到4 Gbit/s,無(wú)丟包現(xiàn)象。上位機(jī)監(jiān)控界面如圖9所示,捕捉光纖口回環(huán)測(cè)試如圖10所示。

        圖9 上位機(jī)監(jiān)控界面

        圖10 光纖口回環(huán)測(cè)試結(jié)果

        5 結(jié)論

        本雷達(dá)數(shù)據(jù)傳輸系統(tǒng)采用高性能的FPGA芯片作為核心,利用FPGA內(nèi)嵌的高速串口完成光纖傳輸,采用上位機(jī)實(shí)時(shí)控制和監(jiān)控?cái)?shù)據(jù)傳輸,該系統(tǒng)具有抗干擾性強(qiáng)、傳輸距離遠(yuǎn)、實(shí)時(shí)監(jiān)控等特點(diǎn)。

        [1]李攀,田澤,蔡葉芳,等.基于FPGA的雙通道FC數(shù)據(jù)采集卡設(shè)計(jì)[J].計(jì)算機(jī)技術(shù)與發(fā)展,2013,23(7):179-182.

        [2]黎小玉,田澤,王泉,等.基于SoC_FC芯片電源管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)技術(shù)與發(fā)展,2010,20(8):247-249.

        [3]馬萍,唐衛(wèi)華,等.基于PCI Express總線(xiàn)高速數(shù)采卡的設(shè)計(jì)與現(xiàn)實(shí)[J].微計(jì)算機(jī)信息,2008(09).

        [4]成立濤.基于FPGA的高速PCIe光纖接口卡設(shè)計(jì)與實(shí)現(xiàn)[D].哈爾濱:哈爾濱工業(yè)大學(xué)碩士學(xué)位論文,2015.

        [5]王劍宇,蘇穎.高速電路設(shè)計(jì)實(shí)踐[M].北京:電子工業(yè)出版社,2014.

        [6]侯春雷,唐碧華,等.基于PCI Express和Aurora協(xié)議高速光纖通信板卡的實(shí)現(xiàn)[J].微計(jì)算機(jī)應(yīng)用,2010(1).

        [7]劉仁峰.基于PCI總線(xiàn)的嵌入式設(shè)備驅(qū)動(dòng)程序設(shè)計(jì)與研究[D].武漢:華中科技大學(xué)碩士學(xué)位論文,2004.

        猜你喜歡
        系統(tǒng)設(shè)計(jì)
        Smartflower POP 一體式光伏系統(tǒng)
        WJ-700無(wú)人機(jī)系統(tǒng)
        ZC系列無(wú)人機(jī)遙感系統(tǒng)
        何為設(shè)計(jì)的守護(hù)之道?
        《豐收的喜悅展示設(shè)計(jì)》
        流行色(2020年1期)2020-04-28 11:16:38
        基于PowerPC+FPGA顯示系統(tǒng)
        半沸制皂系統(tǒng)(下)
        瞞天過(guò)?!律O(shè)計(jì)萌到家
        連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
        設(shè)計(jì)秀
        海峽姐妹(2017年7期)2017-07-31 19:08:17
        国产午夜视频免费观看| 国产成人无码精品久久二区三区| 亚洲av无码潮喷在线观看| 亚洲国产精品国自产电影| 国产精品一级黄色大片| 成人国产一区二区三区| 啦啦啦www播放日本观看| 激情五月婷婷综合| 丝袜美腿久久亚洲一区| 美女丝袜美腿玉足视频| 少妇人妻大乳在线视频不卡 | 日韩精品真人荷官无码| 人妻精品无码一区二区三区| 天天澡天天揉揉AV无码人妻斩| 美女被内射中出在线观看 | 欧美交换配乱吟粗大25p| 亚洲AV无码永久在线观看| 中文字幕丰满人妻被公强| 人妻熟妇乱又伦精品视频| 夜夜高潮夜夜爽夜夜爱爱| 免费一级欧美大片久久网| 亚洲av专区一区二区| 先锋五月婷婷丁香草草| 精品人妻少妇一区二区不卡 | 伊人精品在线观看| 国产在线h视频| 国产激情一区二区三区不卡av| 中文字幕中文有码在线| 精品久久久久久久久久久aⅴ| 蜜桃一区二区免费视频观看| 亚洲最大在线视频一区二区| 日本最大色倩网站www| 亚洲国产美女在线观看| 在线视频精品少白免费观看| 五十六十日本老熟妇乱| 免费人成视频在线观看视频| 日本女优一区二区在线免费观看 | 国精无码欧精品亚洲一区| 国产激情无码Av毛片久久| 日本不卡一区二区三区久久精品 | 国产在线视欧美亚综合|