韓連龍,陳安軍,劉傳棟
(中電科儀器儀表有限公司,山東青島,266555)
隨著無線電技術的飛速發展,特別是軍用領域對無線電技術依賴程度的與日俱增,復雜多變的電磁環境對信號監測接收設備提出了更高的要求。然而近年來,由于新一代雷達和無線通信系統均采用了短時突發傳送技術、擴跳頻技術等復雜的射頻技術來改善系統性能,各種瞬態信號、跳頻信號以及近噪微弱信號等隨之出現。但是傳統的監測接收設備以及常用于信號監測的頻譜分析儀均存在著頻譜掃描速度不夠、分辨率低等缺點,執行監測任務時,對這些新制式信號的截獲概率非常低,難以滿足監測任務的要求[1][2]。
在傳統的技術方案中,獲得一定頻率范圍內的頻譜有兩種實現方式:一種是掃描調諧式分析,另外一種是FFT式分析,但這兩種頻譜掃描方式各有自己的局限性;掃描調諧式分析基于外差式接收原理[4],由混頻得到所要求的頻點信息,并通過更改本振信號來達到一個頻段的測量,其掃描過程就是不斷改變本振信號,使得本振信號剛好掃過一個頻段以達到測量目的;在這種技術方案中,掃速取決于分辨率濾波器的響應速度,并且受限于YIG調諧振蕩器的掃描速度,其掃描速度可由下式估算:掃速≈0.8*RBW(RBW為分辨率帶寬);由該公式可以看出,在RBW比較小的時候,掃描速度會非常慢,當分辨率帶寬為2.3kHz,掃描速度只有4.23kHz/s,遠遠無法滿足監測接收機快速、高分辨率掃描的要求[5]。FFT式分析儀中,RBW濾波器具有極快的響應時間,當FFT分析儀在窄帶情況下比掃頻分析式快,而寬帶分析時要保證同樣的分辨率則FFT總計算量耗時相當可觀,同時最大分析帶寬還受模數轉換器采樣速度的限制。鑒于此,FFT分析儀通常只應用于有限帶寬的頻譜掃描,一般帶寬范圍在幾十兆左右,無法滿足全頻段監測的要求。
綜合上述兩種掃描分析方式各自的特點,本方案設計了一種新型的高速并行掃描處理方式:多DSP并行處理的FFT步進掃描方式+多線程通信軟件架構,以完成監測接收機高分辨率快速掃描設計。
基于上述論述,本文重點從掃描處理機制設計、步進與FFT點數的協調設計、高效率的多線程通信設計三個方面對本設計方案進行闡述。
本項目設計的監測接收機的掃描監測采用了多DSP并行FFT處理的步進掃描方式,在這種掃描方式中,決定掃描速度的因素主要由本振切換時間、數據采樣傳輸時間、FFT譜運算處理時間、PCI總線傳輸時間等幾部分構成[3]。
本振切換時間指的是步進掃描時,從一個調諧頻點轉變為另一個調諧頻點,本振的鎖定時間,這個時間越小,本振跳變的速度越快。但由于YIG器件的磁滯特性,使得本振鎖定及切換無法做的很快,平均一次切換時間約為10ms,在本項目設計中,采用了一種新的高速捷變本振設計技術,使得做一次切換的時間在2ms左右,為了采樣的穩定可靠,軟件設計留出了一定的余量,將切換時間定為3ms。
FFT譜運算時間包括:AD數據預取、加窗、FFT變換、線性到對數譜轉化等多個環節,在設計之初,為了衡量這個時間,筆者專門針對設計中一個DSP的整個FFT譜運算處理時間進行了測量。具體值如表1所示。

表1 1個DSP的FFT譜運算處理時間
數據采樣傳輸時間是AD采樣的時間和AD采樣數據傳輸到板載緩存的時間總和,這個時間在AD速率已經確定的情況下,由采樣長度決定,與采樣長度成正比。PCI總線傳輸時間是FFT譜運算之后,數據結果傳輸到主機內存的時間。
本振切換與FFT譜運算對寬頻段、快速、高分辨掃描來說是矛盾的兩個地方,掃描同一個頻段,步進大的話,耗費在本振切換的時間就短;但是要達到同樣的分辨率帶寬的話,每次步進的FFT點數就要多,耗費在FFT譜運算上的時間就長。反之,小步進,FFT譜運算小,但是步進次數多,步進耗費時間長。而解決這個問題,單純的從提高硬件的指標上解決的話,事倍功半甚至實現不了,必須得結合軟件的掃描處理機制上去設計達到要求。本設計中采用了基于軟件協調的并行掃描處理機制來實現寬頻段、快速、高分辨掃描。整個實現原理如圖1所示。

圖1 基于軟件協調的并行掃描處理機制
步進掃描時,本振切換與數據采樣傳輸是串行的,數據采集必須要等到本振穩定后取到的數據才是有效的,本振的穩定時間在軟件協調時定為3ms,即軟件驅動3ms之后才設置采樣參數開始采樣。在這段時間內,采樣需要始終占用接收通路上的各種硬件資源。采樣完成后進行FFT譜運算,DSP處理器對當前采樣數據幀做FFT運算處理時,本振可以步進到下一個頻點并啟動ADC開始下一幀數據的采樣,FFT運算處理時間只要小于或等于本振切換時間與數據采樣傳輸時間的總和,整個的掃描與處理過程就能正常執行。但是進行快速高分辨率掃描時,同樣的步進下FFT點數就要增多,前期的實驗數據可以看出,16384點的FFT運算比較耗時接近9ms,而本振切換加上數據采樣的時間也只有不到4ms的時間,1個DSP顯然無法滿足大步進高分辨率的要求[9],為解決此問題,本設計中采用了軟件調度多DSP并行處理的方式。當第一個DSP在進行FFT譜運算時,另一個DSP進行下一個步進的FFT譜運算。通過軟件對這三個DSP進行依次循環調度,當第一個步進的FFT譜運算完成時,正好第四個步進采樣即將結束,等第四個步進采樣結束后,既可用DSP1繼續進行第四個步進的FFT譜運算,依次往復完成整個頻段的掃描。PCI傳輸數據到主機內存時,依次將DSP1-DSP3這三個處理器的譜運算結果傳輸。經過FFT譜運算的數據在PCI總線上通過DMA進行傳輸,速度達到在60MB/s,已經完全可以在FFT譜運算處理間隙,將這些數據傳送到主機內存中了。
在本設計中,綜合考慮處理速度、經濟性和可靠性等多方面因素,使用了3個DSP處理器設計,通過前面的FFT譜運算處理時間可以看出,在每次步進時,設計所能保證的最大FFT點數是16384點。在相同步進的情況下,FFT點數決定了頻譜分辨率,當用戶設置的頻譜分辨率比較小時,16384點的FFT運算無法滿足用戶的分辨率設置,這時程序可以通過減小步進帶寬,增加步進次數的方式來達到用戶的對高分辨率的要求;相反的當用戶設置的頻譜分辨率比較大時,FFT點數小,FFT運算時間會比較小,程序控制采用大步進,減小步進次數,加快掃描速度[10][11]。在軟件設計時,步進大小、FFT點數等參數,由用戶設置的頻譜分辨率大小來耦合產生。程序中設置了一個步進掃描結構體,該結構體定義了譜線間隔,步進帶寬和FFT點數的關系。本設計中的步進掃描參數定義如下:
參數中為了處理的方便,并沒有直接定義頻譜分辨率這一項,但是譜線間隔與分辨率帶寬是一一對應的,分辨率帶寬=譜線間隔*窗因子。窗因子根據FFT運算加的窗不同而不同,本設計中有三種窗函數類型:漢寧窗、高斯窗、平頂窗,這三種窗對應的窗因子分別是:1.4592(漢寧)、2.5216(高斯)、3.776(平頂)。
在掃描之前,程序先根據用戶設計的分辨率帶寬在這個結構體中進行查找。找到最接近用戶設置的譜線間隔,用這個譜線間隔計算出的分辨率帶寬作為用戶設置分辨率帶寬的儀器自適應值。同時掃描步進、FFT點數等也按照該項的設置進行硬件的驅動,完成整個掃描。以指標要求4GHz/s@RBW(漢寧窗)=2.3kHz為例:分辨率帶寬為2.3kHz,進行分辨率帶寬自適應查找。找到m_StepBWStepData[8]的設置,m_Step-BWStepData[8]的譜線間隔為1525.87890625,對應分辨率帶寬為:1525.87890625*1.4592=2.23kHz。此時步進帶寬為20M,完成4G的掃描需要200次步進,每次步進的時間在本設計中的軟件控制方法下是<4ms的,200次步進時間在800ms左右,小于1s的指標要求。

由于本監測接收機系統軟件要實現的功能復雜,各功能模塊需要大量的CPU運算,又依賴于高流量I/O,還有復雜的人機交互,如果處理不當,將嚴重影響掃描速度[8]。
一些功能可能需要多個線程精密協作完成,亦可能某個特定急迫功能需要搶在已安排的功能前執行,因此多線程間的通信是設計的一大重點,同時也是保證工業設計中的高可靠性與快速響應的技術手段。
本監測接收機設計擬采用基于Windows多線程通信技術的軟件設計架構,共創建了如下線程:用戶界面線程(主線程)、內部控制線程、數據處理線程、程控管理線程等,某些功能可能需要上述多個線程之間的精密協作才能完成,為了實現程序高效率的運行,本節從線程通信的優先級分配入手,進行多線程通信設計[12]。
本監測接收機軟件采用如下5級優先級通信方式,具體通信優先級的使用規則設計見下表2。

表2 監測接收機線程的通信優先級
其技術實現的流程圖如下圖2所示。

圖2 線程通信優先級分配流程圖
與傳統系統平臺提供的線程的異步和同步兩種工作方式相比,本方案設計的多線程的通信規則不僅增強了系統通信的靈活性,且能夠大大提高CPU的使用效率,進而在一定程度上提高監測接收機的掃描速度。
根據企標的檢測標準,對本設計從工程的角度進行了掃描速度的測試。測試方法:信號源1頻率2GHz,功率10dBm;信號源2頻率3GHz,功率0dBm。利用檢波器對75MHz中頻信號檢波,示波器測量檢波器輸出[13][14]。在不同的分辨率帶寬下得到的測試結果見下表3所示。

表3 測試結果
通過上述的實驗可以看出,采用本方案設計的監測接收機在RBW(分辨率帶寬)為2.3kHz時,掃描速度達到了4.13 GHz/s,略高于美國安捷倫公司的“黑鳥”(E3238S信號監測設備)在該RBW下的4GHz/s的掃描速度,完全達到了設計要求。
本文針對監測接收機高分辨率快速掃描的需求,設計了一種基于軟件控制多DSP并行處理的FFT步進掃描方案,并將其成功應用在某國產監測接收機產品上,并取得了良好的效果。實驗證明,該設計方法可以在高分辨率的條件下極大提高監測接收機設備的掃描速度,進而提高監測接收機對一些新制式信號的截獲概率。從本論文的快速掃描設計中,可以看出掃速的提高還是有一定的空間的。本振切換的時間,在步進不同時,實際上是有差異的。而在本論文中的軟件控制中,使用了固定的3ms等待時間,后續可以根據步進的不同,改變此等待時間提高掃描的速度。同時DSP中FFT算法的優化,降低FFT譜運算時間,也可以提高掃描速度。