馬筱青,孫寶華,劉潔,任泓璇,姜童
(西安空間無線電技術研究所,陜西西安 710000)
綜合孔徑微波輻射計可以搭載于海洋觀測衛(wèi)星或綜合對地觀測衛(wèi)星上,實現(xiàn)對全球海洋鹽度和土壤濕度的大尺度測量[1]。在觀測海洋時可以提供準確的海洋鹽度、海洋環(huán)流和海洋氣候等信息,為海洋上的經濟活動提供十分重要的環(huán)境保障[2]。同時,在觀測陸地時可以提供準確的土壤濕度信息,為農業(yè)生產提供保障條件,對國民生活有著極其重要的意義[3]。
數字相關器是綜合孔徑微波輻射計最為關鍵的部件,是完成4 個Stocks 矢量參數測量、提供反演數據的直接輸出模塊,對微波輻射計的應用有決定性作用。數字相關器功能主要包括兩部分:一是綜合孔徑相關處理,即將兩個通道的同一極化信號相乘并積分,進行復相關后分別得到水平極化和垂直極化的可見度函數;二是全極化相關處理,即對水平極化和垂直極化的信號進行復相關,得到T3 和T4 分量[4]。
微波輻射計為了獲得足夠高的地面分辨率,通常都采用二維綜合孔徑觀測技術[5]。現(xiàn)有的二維綜合孔徑陣列的單元數量為144 個,需要的相關運算單元個數為=20 592[6]。表1 為數字相關器指標要求。為了減少計算量,數字相關器使用1 bit 量化值計算相關系數。盡管如此,成千上萬次相關運算依然要消耗大量硬件資源。以Xilinx公司的XC5VFX130T 現(xiàn)場可編程門陣列(Field Programmable Gate Array,FPGA)為例,利用傳統(tǒng)的乘累加相關運算實現(xiàn)方法,要同時進行20 592 次相關運算,至少需要6 片F(xiàn)PGA,因此數字相關器復雜度、功耗和體積大幅增加,這些都使得數字相關器的硬件研制、軟件調試、性能測試等方面難度陡增[7]。
表1 數字相關器指標要求
經過分析,多通道數字相關器的難點主要集中在以下兩個方面:
1)如何在有限的FPGA 硬件資源內實現(xiàn)上萬次相關計算[7-8]。根據實際需求,信號處理過程計算量大,F(xiàn)PGA 的資源占用率趨近于上限,增加了FPGA布局布線難度。
2)為保證相關計算精度,設計要求數字相關器對144 路通道進行同步采集,多路AD 一致性要求誤差小于150 ps,多路板間AD 同步對設計、調試、測試都提出了很高的要求。
數字相關運算本質上是乘累加運算,在FPGA 中乘累加運算可以通過兩種方式實現(xiàn):一種是SLICE 邏輯單元,另一種是DSP48E 運算單元。雖然在速度和功耗方面DSP48E 都具有優(yōu)越性,但是由于FPGA 中DSP48E 運算單元成本較高,因而數量往往相對有限。例如,對于Xilinx XC5VFX130T 芯片,DSP48E 的數量為320,SLICE 的數量為20 480[9]。對于綜合孔徑陣列接收系統(tǒng)來說,DSP48E 運算單元和SLICE 邏輯單元的數量都無法滿足系統(tǒng)處理要求。同時,F(xiàn)PGA 內部的大量存儲資源(Random Access Memory,RAM)沒有得到有效利用,因此提出一種創(chuàng)新的相關處理實現(xiàn)方法,其本質是利用FPGA 的內部存儲資源來替代SLICE 資源,增加相關器的運算效率。
相關處理實現(xiàn)方法首先將大量的相關計算單元進行分組,每32 個相關處理單元分為一組。圖1 為一組相關運算的實現(xiàn)方法。其中,相關計算模塊使用二進制累加器(Binary counter)IP 核實現(xiàn),32 位加法器使用DSP48E 實現(xiàn),32 bit RAM 地址用于存放累加計算結果[10]。16 選1 選擇器由4 bit 計數器控制,對二進制累加器進行循環(huán)迭代,將二進制累加器的計算結果輸出,與RAM 中存放的數據相加再放入RAM 中。這種方法將傳統(tǒng)數字相關運算中大位寬的乘法及加法分解為小位寬的二進制計數器、加法器及RAM 塊,充分利用了FPGA 內部的RAM 資源,大大提高了處理效率。
圖1 改進的相關計算實現(xiàn)方法示意圖
為了對上述方法的正確性進行驗證,使用modelsim 10.1 對FPGA 代碼進行了仿真。FPGA 工作時鐘頻率為60 MHz,仿真積分時間為100 ms。若輸入為完全相關的信號,則理論輸出值為6 000 000,仿真結果表明,全相關累加輸出結果為5 996 600,這是因為監(jiān)測每1 ms 的計算結果需要將RAM 的數據讀出,此時停止對RAM 的寫操作,此過程耗費的34 個時鐘周期不進行計算,所以100 ms 的積分時間內缺少3 400 個時鐘周期的累加值。此偏差為固定值,可以在后續(xù)的處理中進行修正,不影響相關計算精度。
為了進一步評估上述相關運算實現(xiàn)方法的可行性,驗證了上述方法在針對大批量輸入數據時對FPGA 處理效率的提升。實驗使用傳統(tǒng)的相關運算實現(xiàn)方法和改進的相關運算實現(xiàn)方法,進行6 144 路數字相關處理。使用的編程語言為VHDL,編譯工具為ISE12.4,硬件平臺為XC5VFX130T FPGA。使用兩種方法,F(xiàn)PGA 工程布局布線后的資源占用率比較如表2 所示。
表2 傳統(tǒng)方法和改進方法資源占用表
從表2 中可以看出,采用改進的相關運算實現(xiàn)方法將SLICE 的資源占用率從91%降低到39%。當輸入信號為144 路中頻信號時,利用兩片XC5VFX 130T FPGA 即可完成所有輸入信號的相關運算,大大降低了系統(tǒng)復雜度,易于工程實現(xiàn)。
多通道數字相關器由3 個信號采集器和一個信號處理器構成,每個采集器完成48 個通道的信號采集及數字濾波、正交變換、1 bit 量化處理、48 bit 自相關計算,處理器完成144 個通道的兩兩相關處理并對處理結果進行打包輸出,并且為采集器提供AD 采集參考時鐘、控制指令和時序控制信號。多通道數字相關器系統(tǒng)框圖如圖2 所示。
圖2 多通道數字相關器系統(tǒng)框圖
其中,每個信號采集器由3 塊相同的信號采集板組成,信號處理器由一塊信號處理板組成。采集器和處理器之間使用高速串行接口GTX 傳輸數據,每個采集器發(fā)送兩路GTX 高速串行數據[11]。為了保證各通道采樣的一致性,將信號處理板上晶振提供的時鐘經過多級時鐘分配芯片分發(fā)至各個信號采集板的AD 芯片。
信號采集板使用1 塊XC5VFX130T FPGA 作為處理芯片,時鐘分頻芯片選用AD9516。AD9516具有多路輸出時鐘分配功能,具有亞皮秒級抖動性能和低相位噪聲特性,適用于對相位噪聲和抖動嚴苛的應用。考慮到AD9516、傳輸線及接口的非理想性,時鐘源到達每個AD 時鐘輸入端的路徑依然可能有差別,時鐘信號的起點相對終點存在時間延遲,導致各時鐘信號不同步。可以使用AD9516的相位微調功能來保證每個AD 時鐘信號相位差滿足要求[12]。ADI公司的AD9254 是一款單通道14 位的AD 轉換芯片,具有低功耗、低成本、高有效位數的特點,適用于文中相關器的應用場合[13]。AD 采樣率為60 MHz,采集通道間的隔離度可達90 dB。使用FPGA 內部的GTX 高速接口傳輸1 bit 量化數據,采用8b/10b 的編碼方式,線速率為2.4 Gbps。采集板使用兩路GTX將相同的數據分別傳輸至處理板上不同的FPGA。使用LVDS 傳輸模塊接收信號處理板的時序控制信號,使用RS485 模塊接收控制指令發(fā)送自相關結果等遙測信息。
信號采集板的功能主要包括以下5 點[14]:
1)中頻信號采集功能,接收來自信號處理板的時序控制信號,以此信號為同步參考完成16 路模擬信號的同步采集量化;
2)數字濾波功能,對輸入信號進行帶通濾波和希爾伯特正交變換;
3)I 路數據取16 bit 進行自相關處理,結果取高48 bit通過RS485 總線輸出;
4)對數據進行量化處理,16個AD對應32路IQ變換數據,再進行1 bit量化,得到32個1 bit量化結果;
5)高速數據傳輸功能,采集板與處理板之間使用GTX 傳輸32 個1 bit量化數據。
信號處理板的主處理單元為3 塊XC5VFX130T FPGA,使用1.2 節(jié)中的方法計算144 路數據的相關系數。其中,每片F(xiàn)PGA 接收來自不同采集器的GTX 數據,并計算相關。3 片F(xiàn)PGA 可以遍歷3 個采集器144個通道之間的相關系數。兩個不同路信號M、N之間的相關系數計算公式為:,其中,MI、MQ是M路信號的I分量和Q分量;NI是N路信號的I分量[15]。
信號處理板的主要功能包括:
1)通過GTX 高速串行接口接收144 個AD 對應的288 路IQ數據并計算相關系數;
2)將互相關結果和自相關結果進行打包,通過RS485 接口發(fā)送至上位機;
3)將控制指令發(fā)送至3 個信號采集器;
4)將板上的晶振通過AD9516 時鐘分頻芯片分成多路發(fā)送至3 個信號采集器;
5)產生用于同步的時序控制信號,并發(fā)送至3 個信號采集器。
數字相關器中多路AD 的同步性和實際有效位數(Effective Number of Bits,ENOB)是決定系統(tǒng)性能的關鍵指標。實驗使用一路點頻信號經過功分器分成16路相同的信號送至一塊信號采集板的16路AD,被測信號頻點選擇為63 MHz。使用chipscope軟件對采集信號進行抓取,得到的采樣結果如圖3 所示[16]。為了比較各路AD 相位的一致性,將AD 的時域采集結果使用Matlab 軟件進行傅里葉變換,分析結果如圖4所示。通過峰值頻點處的相位差計算16路AD之間的相位差,結果表明,每塊信號采集板中16 路AD之間多路一致性誤差皆小于100 ps,滿足性能要求。
圖3 多通道AD采集時域波形
圖4 信號頻譜分析結果
頻譜分析結果表明信納比(SINAD)為55.63 dB。實際有效位數ENOB=(SINAD-1.76)/6.02[17],結果表明在帶內各頻點有效位數均大9 bit,滿足指標要求。
考慮到144 個通道相關結果數據過于龐大,測試過程非常耗時,由于3 個信號采集器采用完全相同的設計,故文中使用一個信號采集器和一個信號處理器驗證48 個通道之間的相關系數測試結果。實驗的輸入信號是點頻信號經過功分器得到的48路相同點頻信號,頻點從60 MHz 到90 MHz,間隔為2 MHz。測試結果如圖5 所示,結果表明,相關系數計算精度高于0.99。
圖5 不同頻點的相關系數計算結果
對于二維綜合孔徑微波輻射計系統(tǒng),相關器是核心部分,其復相關的運算量往往達到千次量級,因而需要研究高效的實時處理數字相關器,以滿足綜合孔徑微波輻射計的實時成像需求。文中提出了一種高效的相關運算實現(xiàn)方法,該方法能夠有效提高FPGA 工作效率,節(jié)省硬件資源,簡化數字相關器系統(tǒng)設計復雜度。
文中基于該方法設計了一種多通道數字相關器,使用3 個信號采集器和一個信號處理器完成144路數據的數字相關處理。數字相關器使用XC5 VFX130T FPGA 作為核心處理芯片,AD9516 作為時鐘管理芯片,AD9254 用于數模轉換,GTX 接口用于進行高速數據傳輸。測試結果表明,多通道數字相關器各路AD 之間多路一致性誤差皆小于100 ps,有效位數高于9 bit。對于單個信號采集器的測試結果表明,相關系數計算精度高于0.99。