基于PXIe總線的高速數(shù)字I/O系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及信號(hào)與信息處理領(lǐng)域,尤其涉及一種高速、大容量、實(shí)時(shí)數(shù)據(jù)處理的高速數(shù)字I/o系統(tǒng),支持高速數(shù)字信號(hào)的數(shù)據(jù)采集與傳輸、數(shù)據(jù)速率可調(diào)、數(shù)據(jù)電平可選、以及數(shù)據(jù)傳輸方式可重配置的功能。
【背景技術(shù)】
[0002]高速數(shù)據(jù)傳輸是現(xiàn)代信號(hào)處理的基礎(chǔ),在雷達(dá)、通信、遙測遙感等技術(shù)應(yīng)用領(lǐng)域中得到廣泛應(yīng)用。隨著信息科學(xué)的飛速發(fā)展,人們面臨的信號(hào)處理任務(wù)越來越繁重,對(duì)高速數(shù)據(jù)傳輸?shù)膶?shí)時(shí)性要求也越來越高。傳統(tǒng)的數(shù)據(jù)傳輸設(shè)備受限于落后的總線技術(shù),無法對(duì)大容量的高速數(shù)據(jù)進(jìn)行實(shí)時(shí)采集。PXIe總線作為新一代總線技術(shù)具有傳輸速度快、同步特性好、易于擴(kuò)展等特征,能夠滿足數(shù)據(jù)高速傳輸及實(shí)時(shí)顯示的要求。然而面對(duì)日益復(fù)雜的應(yīng)用環(huán)境,單一功能的高速數(shù)據(jù)傳輸系統(tǒng)已經(jīng)無法滿足多任務(wù)要求的應(yīng)用環(huán)境。
【發(fā)明內(nèi)容】
[0003]為了解決上述問題,本發(fā)明提出了一種基于PXIe總線的高速數(shù)字I/O系統(tǒng),該系統(tǒng)使用一種程控電源芯片配合約束文件全局重配置的方法實(shí)現(xiàn)數(shù)據(jù)電平在1.8V、2.5V、3.3V之間的動(dòng)態(tài)切換,使用SERDES(串聯(lián)/解串器)配合局部重配置的方法實(shí)現(xiàn)數(shù)據(jù)傳輸方式在32路并行傳輸和I路串行傳輸之間的動(dòng)態(tài)切換。使用DCM(數(shù)字時(shí)鐘管理模塊)技術(shù)實(shí)現(xiàn)數(shù)據(jù)采集或輸出速率從1Mbps至10Mbps之間的動(dòng)態(tài)切換,在保證了高速數(shù)字I/O系統(tǒng)穩(wěn)定傳輸?shù)幕A(chǔ)上實(shí)現(xiàn)了對(duì)不同應(yīng)用環(huán)境下多任務(wù)要求的動(dòng)態(tài)配置。
[0004]本發(fā)明所采用的技術(shù)方案是:一種基于PXIe總線的高速數(shù)字I/O系統(tǒng),該系統(tǒng)采用XILINX公司的FPGA作為主控芯片實(shí)現(xiàn)對(duì)各外設(shè)芯片的接口控制,該系統(tǒng)主要由PCIe接口模塊、高速緩存模塊、速率切換模塊、電平切換模塊、數(shù)據(jù)傳輸方式切換模塊和配置模塊六部分組成。
[0005]所述的PCIe接口模塊通過以FPGA內(nèi)部的Rocket1 GTP收發(fā)器與PCIe接口的數(shù)據(jù)總線相連,差分時(shí)鐘信號(hào)與PCIe接口的時(shí)鐘總線相連,最后將系統(tǒng)通過PCIe接口與上位機(jī)的PCIe插槽相連,通過上位機(jī)進(jìn)行數(shù)據(jù)信號(hào)和指令信號(hào)的傳輸。
[0006]所述的高速緩存模塊主要由2個(gè)異步FIF0、1個(gè)MIG (存儲(chǔ)器接口控制器)和I片DDR2芯片進(jìn)行相應(yīng)的連接構(gòu)成,2個(gè)異步FIFO分別位于MIG控制器的前后兩端,與MIG控制器的數(shù)據(jù)總線相連,最后通過MIG控制器與DDR2芯片的數(shù)據(jù)總線、地址總線、時(shí)鐘總線進(jìn)行相應(yīng)連接,該模塊的主要作用是:(I)實(shí)現(xiàn)對(duì)海量數(shù)據(jù)的高速緩存;(2)為程序運(yùn)行提供必要的臨時(shí)存儲(chǔ)空間。
[0007]所述的速率切換模塊主要由晶振芯片、DCM_BASE和DCM_ADV組成,首先將晶振產(chǎn)生的時(shí)鐘信號(hào)與FPGA專用的時(shí)鐘接口相連,該時(shí)鐘信號(hào)進(jìn)入FPGA內(nèi)部后與DCM_BASE的時(shí)鐘接口相連,然后DCM_BASE輸出的時(shí)鐘信號(hào)再與DCM_ADV的時(shí)鐘接口相連,最后DCM_ADV產(chǎn)生的動(dòng)態(tài)時(shí)鐘信號(hào)與系統(tǒng)的數(shù)字I/O 口相連,該模塊的主要作用是:(1)DCM_BASE主要用來產(chǎn)生系統(tǒng)的各種內(nèi)部時(shí)鐘信號(hào);(2)DCM_ADV主要根據(jù)PCIe接口模塊接收到的指令信號(hào)的要求產(chǎn)生動(dòng)態(tài)時(shí)鐘信號(hào)用來實(shí)現(xiàn)數(shù)據(jù)傳輸速率在1Mbps至10Mbps間的動(dòng)態(tài)切換。
[0008]所述的電平切換模塊主要由程控電源芯片、I2C總線組成,首先通過FPGA的I2C總線與程控電源芯片的配置引腳相連,然后通過程控電源芯片的輸出電壓作為FPGA的高速數(shù)字I/O 口所屬BANK的電源引腳的輸入,該模塊的主要作用是根據(jù)PCIe接口模塊接收到的指令信號(hào)的要求對(duì)程控電源芯片的配置寄存器進(jìn)行配置,并將配置后的程控電源芯片的輸出電壓作為高速數(shù)字I/O的數(shù)據(jù)電平,從而實(shí)現(xiàn)數(shù)據(jù)電平在1.8V、2.5V、3.3V間的的動(dòng)態(tài)切換。
[0009]所述的數(shù)據(jù)傳輸方式切換模塊主要由ISERDES (串并轉(zhuǎn)換)、0SERDES (并串轉(zhuǎn)換)、微處理器Micoblaze組成,首先微處理器Micoblaze與PCIe接口模塊的得到的指令信號(hào)線相連,然后通過微處理器Micoblaze解析得到的指令信號(hào)與ISERDES和0SERDES的使能接口相連,該模塊的主要作用是通過微處理器Micoblaze對(duì)PCIe總線接收到的指令信號(hào)進(jìn)行解析,在該指令信號(hào)的控制下實(shí)現(xiàn)數(shù)據(jù)傳輸方式在32路數(shù)字I/0、SERDES(串聯(lián)/解串器)控制下的I路數(shù)字I/O間的動(dòng)態(tài)切換。
[0010]所述的配置模塊主要將BPI FLASH芯片的地址總線和數(shù)據(jù)總線分別與FPGA芯片的配置地址總線和數(shù)據(jù)總線進(jìn)行連接,該模塊的主要作用是BPI FLASH配置芯片可以存儲(chǔ)多個(gè)配置文件,可以根據(jù)系統(tǒng)需要對(duì)不同的配置文件進(jìn)行調(diào)用,為上述動(dòng)態(tài)切換功能提供了硬件基礎(chǔ)。
[0011]本發(fā)明的有益效果是:(1)該系統(tǒng)主控芯片僅采用一片F(xiàn)PGA完成了系統(tǒng)設(shè)計(jì),并且充分利用了 FPGA內(nèi)部本身具有的PCIe硬核及MIG軟核資源,很好的保證了高速數(shù)字I/O系統(tǒng)實(shí)時(shí)性和穩(wěn)定性的設(shè)計(jì)要求,節(jié)約了開發(fā)成本,降低了開發(fā)周期。(2)高速緩存模塊僅采用一顆DDR2SDRAM芯片,通過在DDR2SDRAM內(nèi)部采用乒乓操作、流水線技術(shù)和串并轉(zhuǎn)換等方法實(shí)現(xiàn)了海量數(shù)據(jù)的高速緩存,將內(nèi)部數(shù)據(jù)緩存速率提高到了 250MHz。(3)采用多種動(dòng)態(tài)重構(gòu)方法實(shí)現(xiàn)了數(shù)據(jù)速率、數(shù)據(jù)電平和數(shù)據(jù)傳輸方式的動(dòng)態(tài)切換,滿足了不同環(huán)境下多任務(wù)要求的設(shè)計(jì)目標(biāo),使得系統(tǒng)具有體積小、易操作、靈活性高等優(yōu)點(diǎn)。
【附圖說明】
[0012]圖1:板卡總體框圖
[0013]圖2:PCIe接口模塊結(jié)構(gòu)框圖
[0014]圖3:高速緩存模塊結(jié)構(gòu)框圖
[0015]圖4:數(shù)據(jù)速率切換模塊結(jié)構(gòu)框圖
[0016]圖5:數(shù)據(jù)電平切換模塊結(jié)構(gòu)框圖
[0017]圖6:數(shù)據(jù)電平約束重配置模塊結(jié)構(gòu)框圖
[0018]圖7:數(shù)據(jù)傳輸方式切換模塊結(jié)構(gòu)框圖
[0019]圖8:數(shù)據(jù)傳輸方式重配置模塊結(jié)構(gòu)框圖
【具體實(shí)施方式】
[0020]下面結(jié)合附圖對(duì)本發(fā)明做進(jìn)一步說明。
[0021]本發(fā)明基于PXIe總線的高速數(shù)字I/O系統(tǒng)的總體結(jié)構(gòu)框圖如圖1所示,系統(tǒng)采用FPGA為主控芯片,使用PCIe硬核實(shí)現(xiàn)與上位機(jī)的數(shù)據(jù)和指令傳輸,使用MIG軟核與DDR2芯片的連接實(shí)現(xiàn)系統(tǒng)對(duì)高速緩存的要求,使用I2C總線實(shí)現(xiàn)對(duì)程控電源芯片的控制。系統(tǒng)按照模塊劃分可以分為:PCIe接口模塊、高速緩存模塊、數(shù)據(jù)速率切換模塊、數(shù)據(jù)電平切換模塊、數(shù)據(jù)傳輸方式切換模塊、BPI Flash配置模塊六部分,各模塊的具體實(shí)現(xiàn)如下所述。
[0022]PCIe接口模塊如圖2所示,該模塊由PCIe IP核、GTP收發(fā)器和PCIe插槽進(jìn)行相應(yīng)連接構(gòu)成,首先通過PCIe IP核的數(shù)據(jù)總線與GTP收發(fā)器的收發(fā)接口相連,然后將PCIe接口與PCIe插槽相連從而實(shí)現(xiàn)完整的PCIe總線協(xié)議。該模塊主要具有兩個(gè)功能:(I)PCIe接口作為上位機(jī)和下位機(jī)的橋梁,實(shí)現(xiàn)系統(tǒng)采集數(shù)據(jù)及發(fā)生數(shù)據(jù)的傳輸。(2)當(dāng)上位機(jī)需要對(duì)系統(tǒng)功能進(jìn)行切換時(shí),PCIe接口實(shí)現(xiàn)對(duì)上位機(jī)指令信號(hào)的接收與轉(zhuǎn)發(fā)。
[0023]高速緩存模塊如圖3所示,該模塊由2個(gè)異步FIF0、1個(gè)MIG控制器和DDR2芯片組成。其中FIFO Al及FIFO A2主要用于數(shù)據(jù)位寬及速率的轉(zhuǎn)換,首先I/O 口輸入的并行數(shù)據(jù)和同步時(shí)鐘信號(hào)分別和FIFO Al的數(shù)據(jù)輸入、時(shí)鐘輸入端口相連,通過位寬及速率轉(zhuǎn)換后的數(shù)據(jù)經(jīng)MIG IP核