基于FPDP的高速數(shù)據(jù)傳輸系統(tǒng)設計
隨著電子技術的高速發(fā)展,越來越多的信號處理系統(tǒng),需要高速的數(shù)據(jù)采集和大吞吐量的數(shù)據(jù)傳輸,來實現(xiàn)數(shù)據(jù)的高速實時處理能力。在雷達系統(tǒng)中,原始數(shù)據(jù)中包含豐富的信息,及時獲得原始數(shù)據(jù)并進行實時分析就顯得尤為重要,因此在雷達處理機中需要大量使用板間通信,并保證板間數(shù)據(jù)傳輸具有高速性和可靠性。單板系統(tǒng)已經(jīng)不能滿足需求,需要多板共同實現(xiàn)。
FPDP總線可用于兩個或多個VME板之間的高速數(shù)據(jù)傳輸,其數(shù)據(jù)傳輸速率可達160 MB/s。FPDP總線位于VME板卡的前面板,完全不影響位于背板插槽的VME總線。在實際應用中,一塊VME板卡允許有多個FPDP端口。因此,在雷達系統(tǒng)中,可使用FPDP總線必將提高數(shù)據(jù)傳輸和處理能力。
1 FPDP總線概述
FPDP(Front Panel Data Port,前面板數(shù)據(jù)端口)總線最初是由加拿大的Interactive Circuits and Sys-tems Ltd(ICS)公司開發(fā),后經(jīng)VSO(VITA Stand-ards Organization)組織提出并形成標準協(xié)議。FPDP總線是32位的并行同步總線,通過80芯的扁平連接電纜進行板間連接。主要用于兩個或多個VME總線板卡間進行高速數(shù)據(jù)傳輸。
FPDP總線上的設備可以有:
(1)FPDP主發(fā)送設備(FPDP/TM:FPDPTransmitter Master),主發(fā)送設備是數(shù)據(jù)傳輸?shù)脑炊?,并產(chǎn)生所有其他板需要的時鐘及相關時序信號;
(2)FPDP主接收設備(FPDP/RM:FPDP Re-ceiver Master),主接收設備是數(shù)據(jù)傳輸?shù)哪┒?,用于接收?shù)據(jù)和終止控制信號;
(3)FPDP接收設備(FPDP/R:FPDP Receiv-er),接收設備只是接收數(shù)據(jù),沒有終止控制信號,允許數(shù)據(jù)傳輸繼續(xù)下去。
FPDP總線上必須至少有一個主發(fā)送設備和一個主接收設備。但可以有多個接收設備,從而可以實現(xiàn)“多點”傳送。在某一時刻,總線中只有一個主發(fā)送設備,傳輸以單方向進行,故在總線上的設備之間也就不存在總線的競爭和沖突問題。所以FPDP總線協(xié)議不包含地址和仲裁周期,從而可以實現(xiàn)高速數(shù)據(jù)傳輸。
雖然FPDP總線為單向傳輸,但可以通過硬件鏈路開關或者軟件手段對FPDP總線的發(fā)送設備與接收設備進行配置,實現(xiàn)分時復用的雙向數(shù)據(jù)傳輸。
2 設計實例
在雷達系統(tǒng)中,原始數(shù)據(jù)(有關目標的距離、方問、速度等狀態(tài)參數(shù))的變化對于成像結果有著十分重要的影響。因此能不能夠實時傳輸采集到的原始數(shù)據(jù)并進行有效分析,將直接影響到成像質量的好壞。
在該設計中,F(xiàn)PGA的數(shù)據(jù)通道采用FPDP總線結構,分別與A/D板、DSP板相連,進行實時高速數(shù)據(jù)傳輸。A/D板負責對回波信號進行高速采集,DSP板接收FPGA發(fā)送過來的合成數(shù)據(jù)進行后期處理。FPDP接收模塊負責接收來自A/D板的原始回波數(shù)據(jù),F(xiàn)PDP發(fā)送模塊負責把原始回波數(shù)據(jù)及其他飛機參數(shù)打包并以FPDP協(xié)議的形式發(fā)送給DSP板。如圖1所示。
A/D板與DSP板的數(shù)據(jù)接口均為FPDP總線結構,發(fā)送方式為單幀模式。對于單幀數(shù)據(jù)傳輸模式,同步信號SYNCn應該先于第一個發(fā)送的數(shù)據(jù),此時數(shù)據(jù)有效信號(DVALIDn)仍為高,指示數(shù)據(jù)無效。在進行數(shù)據(jù)傳輸時,將DVALIDn信號有效,在時鐘STROB(或PSTROBE)上升沿的同步下將發(fā)送數(shù)據(jù)驅動到FPDP的數(shù)據(jù)總線上。在時鐘STROB(或PSTROBE)上升沿,接收設備對D[31..0]和DVALIDn信號進行采樣。若DVALIDn為低,則認為發(fā)送過來的數(shù)據(jù)是有效的。單幀數(shù)據(jù)傳輸波形圖,如圖2所示。
為了滿足信號處理機實時處理的要求,要求輸入到DSP板的原始數(shù)據(jù)符合處理的數(shù)據(jù)格式。而采集到的數(shù)據(jù)需按一定格式打包,稱為數(shù)據(jù)合成。FPGA要將來自不同設備的數(shù)據(jù)合成為所需的幀格式后轉發(fā)到DSP板。這樣,DSP板在獲得數(shù)據(jù)幀后就可以直接進行處理而不必再有格式轉換的開銷。其原理圖,如圖3所示。
由于FPDP總線傳輸實時性要求很強,在傳輸過程中不允許數(shù)據(jù)丟失,具有數(shù)據(jù)量大、傳輸速度高等特點。因此,F(xiàn)PDP接收邏輯應在接收到原始回波數(shù)據(jù)后,盡快發(fā)送給DSP板。否則,將造成數(shù)據(jù)堵塞、丟失及紊亂,嚴重影響后端的成像處理,因此在FPDP總線收發(fā)邏輯之間引入一個數(shù)據(jù)緩沖區(qū)FIFO,暫存原始回波數(shù)據(jù)。[!--empirenews.page--]
FPDP接收邏輯接收來自A/D板的回波數(shù)據(jù),主要負責對數(shù)據(jù)緩沖區(qū)FIFO的寫入操作。其工作流程如下:在FPDP總線數(shù)據(jù)有效(DVALIDn為低)時,F(xiàn)IFO的寫請求Wr-req信號有效,此時數(shù)據(jù)隨著寫時鐘信號(Wr-clk即AD板發(fā)送過來的Ad-strob信號)寫入FIFO。若FPDP總線數(shù)據(jù)無效,此時FIFO的寫請求信號也無效,數(shù)據(jù)不能寫入FIFO。
FPDP發(fā)送邏輯接負責將回波數(shù)據(jù)和其他飛機參數(shù)按照一定的格式打包,并經(jīng)由FPDP總線發(fā)送出去。其工作流程如下:FIFO的讀請求Rd-req信號由發(fā)送時序計數(shù)器產(chǎn)生,當計數(shù)器的計數(shù)值為一定值(A/D采集滿一幀數(shù)據(jù))時,Rd-req有效,隨著讀時鐘(Rd-clk即A/D板時鐘AD_strob)信號,數(shù)據(jù)從FIFO中讀出,此時計數(shù)器清零。數(shù)據(jù)按一定格式打包后,按FPDP單幀傳輸模式將打包數(shù)據(jù)送入DSP板。
FPDP發(fā)送邏輯應當在FPDP同步信號SYNCn到來后立即啟動數(shù)據(jù)發(fā)送,這樣大大增強了數(shù)據(jù)傳輸?shù)膶崟r性和可靠性。值得注意的是,A/D板傳來的第一組回波數(shù)據(jù)來不及打包傳送給DSP板,因此要在FIFO中累積一組回波數(shù)據(jù)后再開始往DSP板發(fā)送數(shù)據(jù),這樣每次發(fā)給DSP板的一幀數(shù)據(jù)中,回波數(shù)據(jù)應為上一次A/D板發(fā)來的數(shù)據(jù),這樣可以保證不丟失回波數(shù)據(jù),只是最后一組回波數(shù)據(jù)仍然會存在于時序板中,采集不到,應當丟棄。
特別地,由于模塊的輸入輸出功能已確定,所以作為A/D板接收端的方向信號DIRn不被使用,而作為DSP板發(fā)送端的DIRn信號則常接低。對于輸入的SUSPENDn和NRDYn信號,A/D采集板對NRDYn信號不響應,所以FPGA對這兩個信號也不響應,避免干擾AD采集板的數(shù)據(jù)采集。
3 設計仿真
以下給出了基于Quartus 6.0的一段波形仿真圖,如圖4所示。
如圖4所示,為FPDP發(fā)送邏輯的仿真圖,其中FPDI_SUSPEND和FPDI_NRDY始終無效(為高),在發(fā)送數(shù)據(jù)前FPDO_SYN先有效(為低),此時FPDO_DVALID仍無效(為高)。在傳輸數(shù)據(jù)時,F(xiàn)PDO_DVALID有效(為低),在時鐘FPDO_STROBP的上升沿將數(shù)據(jù)通過FPDP總線送出。
4 結束語
從以上的分析得出以下結論:
(1)該設計中,F(xiàn)PDP總線以其特有的前面板方式和傳輸機制,有效地解決了多塊板卡間的高速數(shù)據(jù)傳輸問題;
(2)FPDP數(shù)據(jù)的高速、實時接收和發(fā)送是難點。該設計采用了一個片內FIFO緩沖區(qū)解決了此問題。片內FIFO集成度高、占用資源少,有效地解決了系統(tǒng)需求;
(3)該設計使用同步信號作為接收幀的有效標志,提高了系統(tǒng)的實時性和可靠性。