999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于FPGA的多接口高速PCI傳輸系統(tǒng)設(shè)計(jì)

2012-09-30 01:38:10董海蘭康懷祺
火控雷達(dá)技術(shù) 2012年4期
關(guān)鍵詞:系統(tǒng)

董海蘭 康懷祺 鐘 午

(電子科技大學(xué) 成都 611731)

1 引言

由于實(shí)時(shí)觀測(cè)的要求和外場(chǎng)試驗(yàn)環(huán)境復(fù)雜性的限制,在現(xiàn)代科學(xué)實(shí)驗(yàn)和高速實(shí)時(shí)儀器的開發(fā)中,探測(cè)器前端和存儲(chǔ)模塊常常需要將大量數(shù)據(jù)高速傳輸?shù)絇C機(jī)端進(jìn)行實(shí)時(shí)觀測(cè)或者數(shù)據(jù)轉(zhuǎn)存。因此,大部分高速采集系統(tǒng)和存儲(chǔ)系統(tǒng)都需要設(shè)計(jì)相應(yīng)的數(shù)據(jù)傳輸模塊[1~7]。同時(shí),隨著采樣技術(shù)和存儲(chǔ)技術(shù)的飛速發(fā)展,日益增長(zhǎng)的數(shù)據(jù)量也對(duì)數(shù)據(jù)傳輸速率提出了更高的要求。高速數(shù)據(jù)傳輸模塊的單獨(dú)開發(fā)使得這些大型系統(tǒng)的開發(fā)周期變長(zhǎng),開發(fā)難度加大。采用高速、通用的數(shù)據(jù)傳輸系統(tǒng)可以有效地縮短它們的開發(fā)周期,同時(shí)也可以降低其開發(fā)難度。考慮到千兆以太網(wǎng)接口以及高速光纖接口板間高速通信中應(yīng)用廣泛[8~10],同時(shí)32位的PCI接口也能很好地兼容大部分普通的PC機(jī),本文設(shè)計(jì)了一個(gè)基于FPGA的多接口高速PCI傳輸系統(tǒng)。它具有千兆以太網(wǎng)接口、高速光纖接口以及32位PCI接口,可以將前端探測(cè)器和存儲(chǔ)芯片的數(shù)據(jù)通過千兆以太網(wǎng)或者光纖接口傳入,再由PCI接口高速傳輸?shù)絇C機(jī)端。通過PCI設(shè)備驅(qū)動(dòng)的開發(fā),PCI接口的數(shù)據(jù)可以通過DMA(Direct Memory Access,直接內(nèi)存存取)傳輸方式,高速地傳輸?shù)絇C機(jī)。通過大量數(shù)據(jù)傳輸?shù)臏y(cè)試,整個(gè)傳輸系統(tǒng)能夠以102 MB/s的速度穩(wěn)定、無丟失地將數(shù)據(jù)傳輸?shù)絇C機(jī)端中。傳輸系統(tǒng)具有接口通用、接口間連接靈活、數(shù)據(jù)傳輸速率高等優(yōu)點(diǎn),可以推廣應(yīng)用于各種大型的采集系統(tǒng)和存儲(chǔ)系統(tǒng),能夠有效降低這些系統(tǒng)大型系統(tǒng)的開發(fā)難度、縮短其開發(fā)周期,具有很高的工程應(yīng)用價(jià)值。

2 系統(tǒng)構(gòu)成

整個(gè)傳輸系統(tǒng)主要分為PCI板卡和PCI驅(qū)動(dòng)兩個(gè)部分。PCI板卡主要包括千兆以太網(wǎng)接口、光纖接口、PCI接口以及控制模塊。千兆以太網(wǎng)接口、光纖接口以及PCI接口模塊主要是各個(gè)接口的硬件實(shí)現(xiàn);控制模塊是整個(gè)系統(tǒng)的核心,在FPGA中編程實(shí)現(xiàn),主要包括千兆以太網(wǎng)控制器、光纖控制器、PCI控制器以及速度轉(zhuǎn)換FIFO,如圖1所示。采用Xilinx公司的Virtex-4 LX25作為主控的FPGA芯片,實(shí)現(xiàn)了板卡的控制模塊。

2.1 接口簡(jiǎn)介及實(shí)現(xiàn)

2.1.1 千兆以太網(wǎng)接口

作為一種成熟的高速傳輸方案,千兆以太網(wǎng)技術(shù)具有傳輸速度快、穩(wěn)定性高、接口簡(jiǎn)單,傳輸距離遠(yuǎn),已經(jīng)成為目前局域網(wǎng)的主流解決方案,同時(shí)也是高速電路開發(fā)中的通用接口之一[6~9]。

千兆以太網(wǎng)接口實(shí)現(xiàn)的關(guān)鍵在于千兆以太網(wǎng)物理層和MAC控制器的實(shí)現(xiàn),它們分別對(duì)應(yīng)著TCP/IP協(xié)議中的物理層和數(shù)據(jù)鏈路層。本文中千兆以太網(wǎng)的物理層采用Marvell公司生產(chǎn)的88E1111芯片實(shí)現(xiàn),負(fù)責(zé)MAC控制器和雙絞線接口RJ45的通信。MAC控制器則主要根據(jù)IEEE 802.3協(xié)議中的以太網(wǎng)幀協(xié)議,利用FPGA編程實(shí)現(xiàn)。

圖1 PCI傳輸系統(tǒng)構(gòu)成

2.1.2 光纖接口

光纖通信具有抗干擾性強(qiáng)、傳輸距離遠(yuǎn)、易集成以及傳輸速率高等優(yōu)點(diǎn),在目前的高速數(shù)字通信系統(tǒng)中被廣泛采用[10]。典型的光纖模塊主要由光收發(fā)器件和高速 SerDes(Serializer/Deserializer,串/并行器)器件組成,其中光收發(fā)器件主要實(shí)現(xiàn)光電信號(hào)轉(zhuǎn)換以及數(shù)據(jù)收發(fā),而高速SerDes器件則主要負(fù)責(zé)將光收發(fā)器件傳出的高速串行信號(hào)轉(zhuǎn)換成并行數(shù)據(jù)或者將并行數(shù)據(jù)轉(zhuǎn)換成高速串行信號(hào)發(fā)送到光收發(fā)器件。

設(shè)計(jì)采用Infineon公司的光纖產(chǎn)品V23818-M305-L57作為系統(tǒng)的光收發(fā)器件,其具有體積小、接口通用、功耗低、傳輸速率高(支持1.0625Gbps到2.125Gbps串行傳輸速率)等優(yōu)點(diǎn),是光收發(fā)模塊的理想選擇之一。TI公司生產(chǎn)的高速收發(fā)器TLK2501支持1.5Gbps到2.5Gbps的串行傳輸速率,片內(nèi)8B/10B編解碼和全雙工工作模式,可以很好地兼容V23818-M305-L57接口,所以選用其作為系統(tǒng)的高速SerDes器件。

2.1.3 PCI接口

PCI總線是微機(jī)中處理器/存儲(chǔ)器與外圍部件、擴(kuò)展接口之間的連接總線,能夠滿足工業(yè)和實(shí)時(shí)通信應(yīng)用的高速、穩(wěn)定、可靠、易于使用和維護(hù)等要求,自問世以來就迅速成為了開放性的工業(yè)計(jì)算機(jī)標(biāo)準(zhǔn)。考慮到大多數(shù)PC端PCI插槽為32位,同時(shí)64位PCI插槽也支持32位PCI接口,系統(tǒng)的PCI接口選用32位的PCI接口,可以有效的提高接口的通用性。為了減少開發(fā)時(shí)間,系統(tǒng)采用PLX公司生產(chǎn)的專用PCI接口芯片PCI9656作為PCI板卡和PC機(jī)PCI總線之間的橋接芯片。PCI9656采用數(shù)據(jù)流水線架構(gòu)技術(shù),可以提供32位/33MHz、32位/66MHz以及64位/66MHz的局域總線連接模式,具有靈活的連接性和高性能的I/O加速器特性,可以很好地實(shí)現(xiàn)高性能PCI接口。

2.2 控制模塊設(shè)計(jì)

2.2.1 千兆以太網(wǎng)控制器

千兆以太網(wǎng)控制器主要包括MAC核、幀封裝模塊以及幀解封模塊,在FPGA中實(shí)現(xiàn),如圖2所示。MAC核主要實(shí)現(xiàn)協(xié)調(diào)PHY芯片、地址過濾、數(shù)據(jù)校驗(yàn)等功能;幀封裝模塊接收從FIFO的發(fā)送數(shù)據(jù),然后依據(jù)以太網(wǎng)協(xié)議,加入前導(dǎo)碼、定界符、目的地址、源地址等幀頭信息封裝成幀格式,通過MAC核發(fā)送給PHY芯片;幀解封模塊是幀封裝模塊的逆過程,接收從MAC核接收到的數(shù)據(jù),去掉協(xié)議中的幀頭,將其中的數(shù)據(jù)部分提取出來,通過FIFO發(fā)送給PCI控制器。

圖2 MAC控制器框圖

2.2.2 光纖控制器

圖3 光纖控制器連接示意圖

光纖控制模塊實(shí)現(xiàn) SerDes芯片TLK2501與FIFO之間的數(shù)據(jù)通信,分為接收和發(fā)送兩部分,如圖3所示。接收部分通過判斷接收有效信號(hào)(RXDV)以及接收錯(cuò)誤標(biāo)志(RX-ER)來判斷接收到的數(shù)據(jù)是否有效,若RX-DV為高,而RX-ER為低,則表示數(shù)據(jù)有效,應(yīng)接收TLK2501發(fā)送的有效數(shù)據(jù)(RXD),然后通過FIFO速率轉(zhuǎn)換后發(fā)送給PCI控制器。發(fā)送部分接收FIFO的數(shù)據(jù)及數(shù)據(jù)使能信號(hào),把數(shù)據(jù)使能信號(hào)通過寄存器賦給發(fā)送有效信號(hào)(TX-EN),此時(shí)發(fā)送錯(cuò)誤標(biāo)志(TX-ER)可置低電平,通過 TLK2501則可以向光纖接口發(fā)送有效數(shù)據(jù)。

2.2.3 PCI控制器

PCI控制器依據(jù)PCI9656從模式或者DMA工作模式下時(shí)序圖,在FPGA中采用狀態(tài)機(jī)設(shè)計(jì)方式來實(shí)現(xiàn),狀態(tài)機(jī)跳轉(zhuǎn)如圖4所示。其中 ADS#、BLAST#及 WAIT#由 PCI9656驅(qū)動(dòng),DataEn#和FIFOEn#則由控制器驅(qū)動(dòng)。初始化情況下,控制器處于空閑狀態(tài)。當(dāng)PC機(jī)發(fā)起任務(wù)時(shí),PCI9656將會(huì)給ADS#信號(hào)一個(gè)低電平脈沖,這時(shí)候控制器將會(huì)根據(jù)LW/R的值進(jìn)入讀操作或者寫操作。正常情況下,讀/寫操作一直進(jìn)行到PCI9656向BLAST#輸出一個(gè)低電平脈沖。如果在讀/寫過程中,本地端的FIFO為空或FIFO寫滿,狀態(tài)機(jī)將會(huì)跳轉(zhuǎn)到本地讀忙狀態(tài)或本地寫忙狀態(tài),直到FIFO再次準(zhǔn)備就緒。同時(shí),如果PCI9656處于忙狀態(tài),它將置低WAIT#信號(hào),PCI控制器將會(huì)進(jìn)入PCI9656忙狀態(tài),暫停任務(wù)直到PCI9656再次準(zhǔn)備就緒,并置高WAIT#信號(hào)。

圖4 PCI控制器狀態(tài)機(jī)示意圖

2.2.4 速率轉(zhuǎn)換FIFO

由于系統(tǒng)接口的數(shù)據(jù)傳輸速率并不一致,為了保證數(shù)據(jù)在接口間傳輸時(shí)不出現(xiàn)數(shù)據(jù)丟失,在數(shù)據(jù)傳輸過程中采用握手機(jī)制保證數(shù)據(jù)的完整性。在FPGA中例化了一個(gè)接收FIFO和一個(gè)發(fā)送FIFO來實(shí)現(xiàn)。當(dāng)接收FIFO接近滿容量時(shí),向千兆以太網(wǎng)接口和光纖接口發(fā)送傳輸暫停指令,數(shù)據(jù)發(fā)送的前端在收到傳輸暫停指令后,暫停發(fā)送數(shù)據(jù)。此時(shí)PCI控制器依然繼續(xù)接收數(shù)據(jù),當(dāng)接收FIFO中的數(shù)據(jù)小于半容量時(shí),發(fā)送繼續(xù)傳輸指令,恢復(fù)數(shù)據(jù)傳輸。發(fā)送FIFO接收PCI控制器發(fā)送的開始傳輸指令以及判斷接收FIFO產(chǎn)生的暫停指令、恢復(fù)傳輸指令,而千兆以太網(wǎng)控制器和光纖控制器接收到這三個(gè)指令后執(zhí)行發(fā)送數(shù)據(jù)、暫停發(fā)送數(shù)據(jù)、繼續(xù)發(fā)送數(shù)據(jù)操作。通過這樣嚴(yán)格的數(shù)據(jù)傳輸握手機(jī)制的加入,可以保證整個(gè)傳輸系統(tǒng)數(shù)據(jù)傳輸?shù)耐暾浴?/p>

2.2.5 PCI驅(qū)動(dòng)模塊

WDK(Windows Driver Kit)開發(fā)的驅(qū)動(dòng)程序與其他開發(fā)工具開發(fā)相比,具有代碼非常簡(jiǎn)潔、結(jié)構(gòu)清晰、執(zhí)行效率高,能更好地提高DMA傳輸性能等優(yōu)點(diǎn)。PCI設(shè)備驅(qū)動(dòng)程序利用C++和WDK開發(fā)的WDM(Windows Driver Model)驅(qū)動(dòng)程序,它可以根據(jù)不同的操作系統(tǒng),生成相應(yīng)的驅(qū)動(dòng)文件。驅(qū)動(dòng)支持的操作系統(tǒng)有 Windows sever 2003/2008,Windows XP以及 Windows 7系統(tǒng),具有很好的通用性[11]。PCI設(shè)備驅(qū)動(dòng)流程圖如圖5所示。

圖5 驅(qū)動(dòng)流程圖

內(nèi)核驅(qū)動(dòng)在接收到用戶模式下的DeviceIOControl的IRP請(qǐng)求之后,啟動(dòng)DMA任務(wù)傳輸,同時(shí)開啟1s定時(shí)器。如果在1s之內(nèi),驅(qū)動(dòng)成功地從PCI板卡讀取到預(yù)定的數(shù)據(jù)量,驅(qū)動(dòng)程序?qū)⑾驊?yīng)用程序返回正確結(jié)果。否則,在1s結(jié)束時(shí),向應(yīng)用程序返回實(shí)際從板卡上讀取的數(shù)據(jù)量。

3 系統(tǒng)測(cè)試及分析

3.1 數(shù)據(jù)完整性測(cè)試

對(duì)于數(shù)據(jù)傳輸系統(tǒng)來說,數(shù)據(jù)傳輸?shù)恼_性和完整性是系統(tǒng)應(yīng)用的前提和保障。為了測(cè)試系統(tǒng)傳輸數(shù)據(jù)的正確性和完整性,利用MATLAB生成了一個(gè)255個(gè)點(diǎn)的正弦波形,然后將這些數(shù)據(jù)分別從光纖接口和以太網(wǎng)接口循環(huán)向傳輸系統(tǒng)發(fā)送。在PC端,利用VC++編寫的應(yīng)用程序調(diào)用PCI設(shè)備驅(qū)動(dòng)接收板卡發(fā)送過來的數(shù)據(jù),同時(shí)與之前生成的正弦波形點(diǎn)進(jìn)行循環(huán)比對(duì),從而測(cè)試接收數(shù)據(jù)的正確性和完整性。通過大量數(shù)據(jù)傳輸?shù)臏y(cè)試,整個(gè)傳輸系統(tǒng)由于傳輸鏈路中握手機(jī)制的加入,并沒有出現(xiàn)數(shù)據(jù)錯(cuò)誤或者丟失的情況,可以很好地保證傳輸數(shù)據(jù)的正確性和完整性。

圖6所示為應(yīng)用程序端接收到的波形圖,測(cè)試環(huán)境為:32位/33MHz插槽,E5800(3.2GHz)處理器,2GB物理內(nèi)存。從圖中可以看到,接收到的數(shù)據(jù)在界面上具有很好的正弦波形,沒有出現(xiàn)數(shù)據(jù)丟失或者錯(cuò)位的情況。

圖6 應(yīng)用程序接收到波形示意圖

3.2 傳輸速率測(cè)試

數(shù)據(jù)傳輸速度是傳輸系統(tǒng)能否滿足各種高速數(shù)據(jù)傳輸應(yīng)用的重要指標(biāo)。為此,在測(cè)試階段,分別測(cè)試了光纖接口與PCI接口之間鏈路,千兆以太網(wǎng)接口與PCI接口之間鏈路的傳輸速度。在37min的測(cè)試時(shí)間內(nèi),PC端分別接收到從千兆以太網(wǎng)接口和光纖接口傳入超過220 GB的數(shù)據(jù)。為了測(cè)試鏈路的傳輸速度,應(yīng)用程序1min記錄抽取記錄四次DMA傳輸所需的時(shí)間。由于每次DMA傳輸?shù)臄?shù)據(jù)量為32MB,再除以每次DMA傳輸?shù)臅r(shí)間就可以得到鏈路的傳輸速度。

圖7所示為傳輸系統(tǒng)兩個(gè)傳輸鏈路之間的傳輸速度測(cè)試結(jié)果。從圖中可以看出,系統(tǒng)的傳輸速度在整個(gè)測(cè)試期間基本上穩(wěn)定在102MB/s。

圖7 系統(tǒng)傳輸速度測(cè)試結(jié)果

4 結(jié)束語

本文設(shè)計(jì)了一個(gè)基于FPGA的多接口高速PCI傳輸系統(tǒng),具有32位PCI接口、千兆以太網(wǎng)接口以及高速光纖接口這三種通用的接口,可以以102MB/s的速度將前端探測(cè)器或者存儲(chǔ)器的數(shù)據(jù)無丟失地傳輸?shù)絇C端。系統(tǒng)的邏輯控制采用FPGA編程實(shí)現(xiàn),具有很高的靈活性,同時(shí)傳輸速率也能滿足大部分高速數(shù)據(jù)傳輸?shù)囊螅梢酝茝V應(yīng)用于軍事、工業(yè)以及科研實(shí)驗(yàn)等領(lǐng)域各種數(shù)據(jù)傳輸?shù)膽?yīng)用,具有很高的實(shí)際應(yīng)用價(jià)值。

[1]劉鑫,王涌天,劉越.基于DSP的紅外標(biāo)志點(diǎn)實(shí)時(shí)跟蹤方法研究[J].儀器儀表學(xué)報(bào),2010,31(12):2654-2659.

[2]郭永彩,蘇渝維,高潮.基于FPGA的紅外圖像實(shí)時(shí)采集系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].儀器儀表學(xué)報(bào),2010,32(3):514-519.

[3]葛起翔.基于PCI總線的高速雷達(dá)數(shù)據(jù)采集回放系統(tǒng)的研制[D].南京:南京信息工程大學(xué),2007.

[4]秦瑩瑩,郭喜慶,劉偉.基于PCI和FPGA的轉(zhuǎn)臺(tái)檢測(cè)系統(tǒng)[J].儀表技術(shù)與傳感器,2011(3):74-76.

[5]徐江豐,張 涌,湯心溢,王世勇.基于Wishbone-PCI Bridge核的紅外圖像高速采集系統(tǒng)[J].紅外與激光工程,2006,35(6):713-716.

[6]馬騰飛,高世杰,吳志勇.基于千兆以太網(wǎng)的圖像采集系統(tǒng)設(shè)計(jì)[J].微型機(jī)與應(yīng)用,2010,29(9):72-74.

[7]曹書華.基于千兆以太網(wǎng)的雷達(dá)數(shù)據(jù)高速采集與傳輸技術(shù)[D].南京:南京信息工程大學(xué),2008.

[8]FRAZIER H.The 802.3z Gigabit Ethernet Standard[C].Network,IEEE,1998,3(12):6-7.

[9]UCHIDA T.Hardware-based TCP processor for gigabit ethernet[J].IEEE Transactions on Nuclear Science,2007,55(3):1631-1637.

[10]陳蘭姑.基于FPGA的多路數(shù)字視頻光纖傳輸系統(tǒng)的研究與設(shè)計(jì)[D].上海:華東師范大學(xué),2009.

[11]張帆,史彩成等.Windows驅(qū)動(dòng)開發(fā)技術(shù)詳解[M].北京:電子工業(yè)出版社,2008.

猜你喜歡
系統(tǒng)
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無人機(jī)系統(tǒng)
ZC系列無人機(jī)遙感系統(tǒng)
基于PowerPC+FPGA顯示系統(tǒng)
基于UG的發(fā)射箱自動(dòng)化虛擬裝配系統(tǒng)開發(fā)
半沸制皂系統(tǒng)(下)
FAO系統(tǒng)特有功能分析及互聯(lián)互通探討
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
一德系統(tǒng) 德行天下
PLC在多段調(diào)速系統(tǒng)中的應(yīng)用
主站蜘蛛池模板: 久久久久久国产精品mv| 国产精品3p视频| 国内精品久久久久鸭| 欧美色综合久久| 国产理论精品| 欧美性色综合网| 五月天久久综合国产一区二区| 欧美成人国产| 91精品国产一区自在线拍| 免费一级毛片在线播放傲雪网| 在线观看国产精品一区| 国产精品高清国产三级囯产AV| www.狠狠| 无码网站免费观看| 亚洲人在线| 日韩福利在线视频| 欧美精品v欧洲精品| 国产免费久久精品99re不卡| 成人在线天堂| 日本a级免费| 无码视频国产精品一区二区| 久久无码av三级| 久久免费精品琪琪| 美女内射视频WWW网站午夜| 免费A级毛片无码免费视频| 国产av一码二码三码无码| 免费观看国产小粉嫩喷水| av一区二区无码在线| 亚洲熟女中文字幕男人总站| 成人国产三级在线播放| 久久婷婷国产综合尤物精品| 国产H片无码不卡在线视频| 久久女人网| 亚洲精品无码AⅤ片青青在线观看| 一本大道AV人久久综合| 曰韩免费无码AV一区二区| 国产美女久久久久不卡| 一级香蕉人体视频| 亚洲精品无码抽插日韩| 日韩在线1| 国产三区二区| 2020国产精品视频| 日韩色图在线观看| 欧美性猛交一区二区三区| 伊人激情久久综合中文字幕| 国产三级成人| 亚洲精品波多野结衣| 国产日韩AV高潮在线| 麻豆国产在线观看一区二区| 色综合中文字幕| 97色伦色在线综合视频| 毛片网站免费在线观看| 欧美在线一二区| 国产日韩精品欧美一区喷| 国产性生大片免费观看性欧美| 免费看a级毛片| 国产精品久久久久久影院| 国产成人综合亚洲网址| 美女被躁出白浆视频播放| 国产福利不卡视频| 成人国产免费| 999精品在线视频| 91精品人妻一区二区| 亚洲综合中文字幕国产精品欧美| 青青草a国产免费观看| 99久久99这里只有免费的精品| 91精品伊人久久大香线蕉| 欧美一级专区免费大片| 欧美一区精品| 国产精品自拍露脸视频| 亚洲成人动漫在线| 久久青草热| 中日韩一区二区三区中文免费视频| 久久综合一个色综合网| 中国黄色一级视频| 国产一区二区丝袜高跟鞋| 极品国产一区二区三区| 2021国产v亚洲v天堂无码| 在线国产你懂的| 国产乱子精品一区二区在线观看| 欧美日韩国产在线观看一区二区三区| 亚洲成人精品|