秦令令, 陸滿君, 陳 濤,3, 張文旭,3,4
(1.哈爾濱工程大學(xué)信息與通信工程學(xué)院,黑龍江 哈爾濱150001;2.上海無線電設(shè)備研究所,上海201109;3.哈爾濱工程大學(xué)工業(yè)和信息化部先進船舶通信與信息技術(shù)重點實驗室,黑龍江 哈爾濱150001;4.南京航空航天大學(xué)電磁頻譜空間認知動態(tài)系統(tǒng)工信部重點實驗室,江蘇 南京211106)
雷達信號分選是從隨機交錯的信號流中分選出不同雷達的脈沖信號,并給出不同雷達信號的相關(guān)參數(shù),為后續(xù)識別雷達信號的類型、用途、威脅程度等提供幫助的過程。隨著雷達技術(shù)發(fā)展越來越完善,環(huán)境中雷達信號數(shù)量不斷增多,各種復(fù)雜調(diào)制的雷達信號充斥空間,電磁環(huán)境也越發(fā)復(fù)雜,這給雷達信號分選帶來了巨大的挑戰(zhàn)。
通常雷達信號分選是由預(yù)分選和主分選兩部分構(gòu)成的[1]。預(yù)分選通常使用聚類算法對脈沖描述字(PDW)中的載頻(CF)、脈寬(PW)、到達角(DOA)等參數(shù)進行聚類,得到多個脈沖序列,從而稀釋脈沖流,降低主分選壓力。常用的聚類算法有K均值(K-means)聚類算法[2-4]、模糊C均值聚類算法[5-6]、網(wǎng)格聚類法[7-8]、基于密度的聚類方法(density based spatial clustering of application with noise,DBSCAN)[9]及其相關(guān)改進算法等。主分選則是利用脈沖序列的到達時間(TOA)信息估計脈沖重復(fù)間隔(PRI),進而達到信號分選的目的。主分選的算法主要有直方圖法[10]、PRI變換算法[11]、平面變換法[12]等。其中,常用的直方圖法包括累積差值直方圖法(cumulative difference histogram,CDIF)和在CDIF基礎(chǔ)上改進的序列差值直方圖法(sequence difference histogram,SDIF)。
在實際應(yīng)用中,雷達信號分選需要在硬件平臺上實現(xiàn)對脈沖的實時處理。信號密度不斷增大的同時,也要求信號分選擁有更高的效率,處理更多的脈沖。
王洪迅等[13]為減少信號分選所用時間,提出一種流水的信號分選計算方式。該方法先輸入較短時間長度的脈沖,將PRI較小的雷達信號先分選出來,同時進行時間上的累積,累積到一定長度,再繼續(xù)分選PRI大的雷達信號。王春蕓[14]提出利用數(shù)字信號處理器(DSP)芯片TMS320C6678實現(xiàn)雷達信號分選的并行處理方法,使用DSP中的兩個核,0核進行脈沖預(yù)分選,并將預(yù)分選結(jié)果傳輸給1核進行主分選,兩核采用數(shù)據(jù)流模式進行并行處理。可以看出TMS320C6678的八個核沒有完全使用,計算能力開發(fā)也不充分。呂新正等[15]提出一種新的應(yīng)用于硬件的信號分選方法。主分選同時利用直方圖法和PRI變換法,采用四片DSP并行處理來提高運算速度,其中一片DSP用于預(yù)分選,其余用于主分選。但是多片DSP并行處理需要不斷進行數(shù)據(jù)搬移,且DSP之間通信也比DSP內(nèi)部通信更耗費時間。
本文提出一種以八核 DSP芯片TMS320C6678作為主處理器,實現(xiàn)雷達信號分選的多核并行處理架構(gòu),盡可能使用更多的核,實現(xiàn)快速信號分選。
如今電磁環(huán)境中脈沖數(shù)量激增,在時域、頻域和空域上嚴重交疊,若直接進行主分選,則主分選的壓力太大,無法及時有效地獲取輻射源信息。因此,在進行主分選前,需要對脈沖流進行稀釋,即對脈沖流進行聚類。本文使用動態(tài)K-means算法對PDW中的DOA、CF和PW三類信息進行三級聚類預(yù)分選。
動態(tài)K-means聚類算法不需要預(yù)先規(guī)定聚類個數(shù),而是以第一個脈沖數(shù)據(jù)作為第一個簇中心。假設(shè)脈沖樣本集X={xi,i=1,2,…,N},N為脈沖個數(shù),xi∈R,R為實數(shù)集;現(xiàn)有簇中心集合C={ck,k=1,2,…,M},M為現(xiàn)有類中心個數(shù),ck∈R。 計算脈沖xi與簇中心ck的歐氏距離
將距離在容差范圍內(nèi)的脈沖歸為一類,若該脈沖與現(xiàn)有簇中心的距離均較遠,則將其劃分為新類,并將其作為新的簇中心,直到所有數(shù)據(jù)點聚類完成,最后舍棄脈沖數(shù)過少的類別,剔除脈沖數(shù)據(jù)中的孤立點。
設(shè)脈沖樣本xi的參數(shù)為{θA,i,tw,i,fc,i},分別是其到達角、脈寬和載頻,形成一個脈沖描述字。第k個簇中心也可表示為 {θA,k,tw,k,fc,k}。
判斷脈沖樣本xi是否屬于第k類的邏輯判據(jù)為
式中:LA,i,k,Lw,i,k,Lc,i,k分別為第i個脈沖的到達角、脈寬和載頻與第k個聚類中心中對應(yīng)參數(shù)的歐氏距離;αA,αw,αc分別為設(shè)定的到達角、脈寬、載頻閾值。若F為1,則表示脈沖樣本xi屬于第k類,否則,不屬于該類。
算法流程如圖1所示。
圖1 動態(tài)K-means聚類預(yù)分選流程圖
主分選采用PRI變換算法。PRI變換算法是基于自相關(guān)函數(shù)的一種求取脈沖重復(fù)間隔的方法。因為PRI調(diào)制的雷達信號屬于周期信號,所以其自相關(guān)函數(shù)值也是周期性的。但是利用自相關(guān)的方法會出現(xiàn)真實PRI值倍數(shù)的諧波,為抑制諧波的產(chǎn)生,PRI變換算法在自相關(guān)函數(shù)的基礎(chǔ)上引入了指數(shù)因子。
脈沖信號流可表示為
式中:δ(t)代表t時刻的單位沖激函數(shù);tn為第n個脈沖的到達時間;N為脈沖總數(shù)。對s(t)進行自相關(guān)變換,并引入指數(shù)因子,得到脈沖信號流的PRI變換表達式為
式中:τ為相鄰兩脈沖的到達時間的差值。
將式(3)代入式(4),可得
式中:n和m為脈沖編號;exp(2πj tn/(tn-tm))是相位因子,用來解決諧波問題。
根據(jù)設(shè)置的參數(shù),利用各脈沖的到達時間序列計算脈沖重復(fù)間隔范圍 [τmin,τmax],其中τmin和τmax分別為脈沖重復(fù)間隔的最小值和最大值。將脈沖重復(fù)間隔范圍平均分為K個區(qū)間,每個區(qū)間表示一個PRI箱,PRI箱的寬度
PRI變換的譜圖可以用Dk的幅值來表示,在真實的PRI處將出現(xiàn)峰值。
按照上述算法估計PRI時,若PRI的抖動量較大且超過PRI箱的寬度,脈沖會分散在以平均PRI為中心的PRI箱的附近箱中,使得PRI譜無明顯的峰值,從而無法得到真實的PRI值。
為了適應(yīng)PRI抖動過大的情況,必須使PRI箱的覆蓋范圍超過PRI的抖動幅度,盡量使得抖動的PRI落在一個PRI箱中。所以在計算出TOA差所屬PRI箱后,以該箱為中心,同時將該脈沖裝入左右各兩個箱內(nèi),共計五個箱,即若計算得到該TOA差落在第k個PRI箱中,則重新計算k-2,k-1,k,k+1和k+2箱的譜值,這樣可使分散的PRI得到集中,PRI譜圖中出現(xiàn)峰值,得到真實PRI值。
常見的脈間調(diào)制雷達類型有常規(guī)雷達、重頻抖動雷達、重頻參差雷達、重頻滑變雷達、重頻組變雷達,可以根據(jù)其脈間調(diào)制特性進行識別。
(1)常規(guī)雷達
常規(guī)雷達信號的CF,PW和PRI是固定的,其中PRI的抖動范圍一般在1%以內(nèi),所以在識別時,若脈沖序列PRI的抖動率小于1%,即可判定為常規(guī)雷達信號。
(2)重頻抖動雷達
重頻抖動雷達信號的CF、PW是固定不變的,但PRI值是在PRI中心值上下浮動的,抖動率一般為(10~30)%。PRI變化規(guī)律滿足
式中:τi為脈沖序列中第i個脈沖間隔;τcent為PRI中心值;αi為當(dāng)前脈沖間隔的抖動量。
對重頻抖動雷達信號進行識別時,需要統(tǒng)計其脈沖序列的脈沖間隔抖動率,計算公式為
式中:r為抖動率;tDTOA為脈沖序列的TOA的一級差;tDTOA,max和tDTOA,min分別為一級差的最大值和最小值;mean(·)為求平均函數(shù)。若r超過設(shè)定的閾值,即可判定為重頻抖動雷達信號。
(3)重頻參差雷達
重頻參差雷達信號也是一種PRI調(diào)制雷達信號,它的一個幀周期內(nèi)存在多個子周期,且子周期的順序不變。脈沖序列的脈沖間隔是以幀周期進行循環(huán)的,其PRI調(diào)制規(guī)律滿足
式中:τframe為幀周期,由p個子周期構(gòu)成;τl為第l個子周期。
因為參差雷達的脈沖是以幀周期進行循環(huán)的,所以利用PRI變換算法得出的最高譜值對應(yīng)的是參差雷達信號的幀周期。序列搜索時,利用幀周期進行多次搜索,直到搜索不到有效脈沖序列,即可得到與子周期個數(shù)相同的脈沖序列。所以,當(dāng)利用一個PRI搜索出多個脈沖序列時,就需要進行參差雷達信號的識別。
假設(shè)一個脈沖序列的到達時間為A={ai,i=1,2,…,n},n為脈沖個數(shù),與另一脈沖序列的到達時間B={bi,i=1,2,…,n}進行參差校驗。表達式為
式中:uAB為對應(yīng)脈沖TOA差的平均值;σAB為對應(yīng)脈沖TOA差的標準差。
若A和B對應(yīng)的兩個脈沖序列為PRI相同的兩個獨立信號,則TOA差的標準差σAB與脈沖序列PRI的抖動量相近;若這兩個信號為同一部參差雷達的脈沖序列,則σAB遠小于PRI抖動量。
(4)重頻滑變雷達
重頻滑變雷達信號的PRI值是按照一定規(guī)律在變化范圍內(nèi)連續(xù)變化的,變化范圍一般為PRI中心值的(20~30)%。其中線性滑變雷達信號是較為特殊的一種,其PRI在變化范圍內(nèi)單調(diào)遞增或遞減,調(diào)制規(guī)律滿足
式中:β為PRI增量;m為滑動步數(shù)。
線性滑變雷達信號識別方法與參差雷達相似,進行PRI變換得到m步滑動的PRI和,經(jīng)過序列搜索得到m個脈沖序列,同樣進行參差校驗,確定多個脈沖序列是否來自同一部雷達。將多個脈沖序列的脈沖按TOA進行排序,計算子周期,對子周期求取一級差,若一級差相近,則為線性滑變雷達信號,否則為參差雷達信號。
(5)重頻組變雷達
重頻組變雷達信號包含多個固定PRI的脈沖組,各脈沖組的PRI進行迅速轉(zhuǎn)換,CF和PW則是固定的。
PRI變換可依次得到各脈沖組的PRI,序列搜索時,每次都會得到一個常規(guī)雷達信號。全部分選完成后,若多組脈沖序列被認為是常規(guī)雷達信號,則進行組變雷達信號的判定。
判斷方法是將多個脈沖序列按照起始脈沖TOA排序,為了防止搜索過程中存在誤差,一般偏移幾個脈沖作為起始脈沖進行排序;取出對應(yīng)序列結(jié)尾脈沖的TOA值,判斷這些脈沖序列時域上是否存在接續(xù)關(guān)系;將存在接續(xù)關(guān)系的脈沖序列定為同一部重頻組變雷達的信號,記錄雷達信號相關(guān)參數(shù),其余則判定為常規(guī)雷達信號。
本文以TMS320C6678為主處理器實現(xiàn)雷達信號分選的多核并行處理。TMS320C6678芯片是基于Keystone架構(gòu)的多核數(shù)據(jù)處理器,內(nèi)置八個DSP核,每個核最高支持1.25 GHz的數(shù)據(jù)處理速度,并支持浮點運算。同時,該芯片內(nèi)置大量的通信接口,支持核間、核與外設(shè)、核與輸入/輸出(I/O)端口的通信。
TMS320C6678多核DSP提供兩種任務(wù)并行處理模式:主從(master slave)模式和數(shù)據(jù)流(data flow)模式。
主從模式一般將0核作為主核,其它作為從核。主核對DSP的任務(wù)流程及數(shù)據(jù)分發(fā)和整合的過程進行控制,并給從核分配對應(yīng)的任務(wù)。從核處理完成后,主核統(tǒng)一將從核的處理結(jié)果整理輸出。該模式適用于可分割在單核獨立運行的任務(wù)。
數(shù)據(jù)流模式則是一種分段流水式的工作模式,多個核的地位相同,每個核負責(zé)一部分數(shù)據(jù)處理工作,且各核的數(shù)據(jù)具有遞進性,即前一個核的處理結(jié)果將傳遞到下一個核進行后續(xù)處理。
如今大部分信號分選多核并行實現(xiàn)都選用數(shù)據(jù)流模式,只用多個核中的兩個核來分別進行預(yù)分選和主分選,沒有充分發(fā)揮多核DSP的運算能力。本文選取主從模式,0核控制任務(wù)流程并進行一部分數(shù)據(jù)處理,從核根據(jù)主核的指令完成對應(yīng)的操作,使用盡可能多的核來完成信號分選工作。
進程間通信(IPC)組件是SYS/BIOS操作系統(tǒng)處理核間通信的組件,本文采用最小使用方式來實現(xiàn)主從模式的多核并行處理。這種方式是通過核間的通知機制來實施的,攜帶的信息量很少,只有32 bits,一般用于核間的簡單同步。核間同步的具體通信流程為:
a)在“.cfg”文件中進行配置,配置的內(nèi)容包括設(shè)置使用的DSP核和應(yīng)用模式,開啟IPC Notify傳輸,創(chuàng)建信號量;
b)在八個核的主函數(shù)中調(diào)用函數(shù)IPC_start()進行IPC通信的默認配置;
c)各核利用函數(shù)注冊事件,并表明其反饋函數(shù);
d)主核利用發(fā)送事件函數(shù)依次給各從核發(fā)送事件,觸發(fā)從核的反饋函數(shù),其中,發(fā)送事件函數(shù)中應(yīng)包含接收事件的從核的核號和需要發(fā)送給從核的信息;
e)從核完成工作后向主核發(fā)送事件,觸發(fā)主核的反饋函數(shù),主核的反饋函數(shù)統(tǒng)計完成工作的從核數(shù)量,并在七個從核全部完成工作后,拋出信號量,主核處理線程接收到信號量,整合從核的輸出結(jié)果。
圖2為主從模式下,利用最小使用模式,主核和一個從核之間核間通信的流程示意圖。
圖2 主從模式核間通信流程示意圖
雷達信號分選首先對脈沖序列進行分類,然后對各類中的脈沖序列的TOA值進行進一步的計算,實現(xiàn)去交錯,并最終得到雷達輻射源信號。綜合信號分選的流程,采用主從模式進行分選。圖3為信號分選的流程圖。
如圖3所示,0核作為主核,首先接收PDW數(shù)據(jù),并利用動態(tài)K-means聚類算法稀釋脈沖流,形成若干PDW分組。由于聚類的各個輸出之間是獨立的,可以由0核將聚類的輸出以類為單位平均分配給各從核,并通過發(fā)送事件函數(shù)通知各從核需要處理的PDW分組個數(shù)。從核接收到反饋函數(shù)拋出的信號量后進行PRI變換,根據(jù)估計出的PRI值進行脈沖序列搜索,并在完成脈沖序列脈間調(diào)制類型識別后發(fā)送事件給主核。主核統(tǒng)計完成運算的從核數(shù)量,若七個從核全部完成運算,則對分選結(jié)果進行整合并輸出。
假設(shè)同時輸入六部雷達信號,雷達的參數(shù)如表1所示。
表1 雷達參數(shù)設(shè)置
采用本文提出的雷達信號分選并行處理架構(gòu),以主從模式實現(xiàn)多核并行處理,信號分選耗時29.45 ms,分選結(jié)果如表2所示??芍?該方法可以有效分選這六部雷達信號,同時信號載頻誤差在(-1~+1)MHz范圍內(nèi),脈寬誤差在(-1~+1)μs范圍內(nèi),到達角誤差在-0.5°~+0.5°范圍內(nèi),脈沖到達間隔誤差在(-1~+1)μs范圍內(nèi),分選結(jié)果較為準確。
表2 信號預(yù)處理分選結(jié)果
采用相同的輸入雷達信號,以數(shù)據(jù)流模式實現(xiàn)多核并行處理,信號分選耗時43.24 ms??芍?與數(shù)據(jù)流模式相比,采用主從模式進行信號分選可以節(jié)省時間,脈沖數(shù)量越多,節(jié)省的時間也相應(yīng)增多。
本文根據(jù)實際需求,以TMS320C6678多核DSP為平臺,采用預(yù)分選和主分選相結(jié)合的信號分選結(jié)構(gòu),以主從模式實現(xiàn)多核并行處理。充分利用DSP處理器多核資源,實現(xiàn)了雷達信號分選的并行處理。與數(shù)據(jù)流模式相比,有效縮短了信號分選所用時間。