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