喻盛琪,張?zhí)祢U,趙健根,張 天
(1.重慶郵電大學(xué) 通信與信息工程學(xué)院,重慶 400065;2.重慶郵電大學(xué) 信號與信息處理重慶市重點(diǎn)實(shí)驗(yàn)室,重慶 400065)
直接序列擴(kuò)頻(direct sequence spread spectrum,DSSS)作為一種重要的調(diào)制技術(shù),因其具有較強(qiáng)的抗干擾能力和保密性能,以及低截獲率等優(yōu)點(diǎn)而廣泛應(yīng)用在電子對抗,航空航天,通信監(jiān)測等通信領(lǐng)域[1]。在非協(xié)作通信中,由于發(fā)射的是經(jīng)過PN碼調(diào)制后頻譜得到展寬的信號,而在接收端需要知道用于擴(kuò)頻的PN碼才能實(shí)現(xiàn)信號的盲解擴(kuò),因此對DSSS信號PN碼的盲估計(jì)研究已成為DSSS通信系統(tǒng)參數(shù)估計(jì)的研究熱點(diǎn)[2]。非周期長碼直擴(kuò)信號最大特點(diǎn)就是用一周期的PN碼調(diào)制非整數(shù)個信息碼元,PN碼的周期性遭到嚴(yán)重破壞,盲估計(jì)難度大。就公開發(fā)表的文獻(xiàn)來看,對非周期長碼直擴(kuò)信號的PN碼盲估計(jì)研究較少。
針對長碼直擴(kuò)信號的PN碼盲估計(jì)研究,文獻(xiàn)[3-5]將長碼直擴(kuò)信號建模為多用戶短碼直擴(kuò)信號模型,實(shí)現(xiàn)了PN碼的有效估計(jì),并根據(jù)特定約束條件完成了PN碼片段的拼接,但是都沒能有效解決在拼接時產(chǎn)生的相位模糊問題。文獻(xiàn)[6]先用聚類方法對PN碼分段估計(jì),再用游程檢驗(yàn)進(jìn)行恢復(fù),解決了相位模糊問題,但隨著數(shù)據(jù)量的增大,算法復(fù)雜度隨之升高,性能急劇下降,以上文獻(xiàn)所使用的方法只能對周期長碼直擴(kuò)信號PN碼進(jìn)行盲估計(jì)。對非周期長碼直擴(kuò)信號的PN碼盲估計(jì),使用較多的方法就是文獻(xiàn)[7-11]中的m序列三階相關(guān)函數(shù)法,但是該方法只適用于PN碼為m序列的情況,而對于Gold等其它PN碼序列不再適用。其次就是將非周期長碼直擴(kuò)信號建模為含有缺失數(shù)據(jù)的短碼直擴(kuò)信號[12],但是當(dāng)缺失數(shù)據(jù)比例較大時,估計(jì)性能嚴(yán)重下降。
針對上述問題,本文提出基于分段特征值分解和梅西算法的非周期長碼直擴(kuò)信號PN碼盲估計(jì)方法。首先,在偽碼周期內(nèi)根據(jù)擴(kuò)頻調(diào)制比對信號進(jìn)行非重疊分段。然后,利用分段特征值分解估計(jì)出PN碼片段并進(jìn)行拼接,其中每個片段都會獨(dú)立地取正負(fù)號。最后,從二進(jìn)制偽隨機(jī)碼的產(chǎn)生規(guī)律及特性出發(fā),通過滑動搜索窗,利用梅西算法得到PN碼的生成多項(xiàng)式,消除在拼接時產(chǎn)生的相位模糊,從而估計(jì)出正確的m序列和Gold序列。
不失一般性,假設(shè)信號的PN碼周期及碼片速率已通過文獻(xiàn)[13]得到,則接收機(jī)端接收的基帶非周期長碼直擴(kuò)信號經(jīng)碼片速率采樣后,可以表示為
(1)
其中
(2)
(3)
為方便起見,假設(shè)根據(jù)文獻(xiàn)[4]已經(jīng)完成信號的盲同步,即τ=0,此時式(1)可記作為
y(n)=s(n)+v(n),n=1,2,…,N
(4)
圖1 分段特征值分解
定義Yj如下
(5)
其中
(6)
對Yj的自相關(guān)矩陣Rj進(jìn)行特征值分解,由式(5)可得信號自相關(guān)矩陣Rj的估計(jì)值為
(7)
由于s和v相互獨(dú)立,當(dāng)M→∞時,式(7)中第一項(xiàng)和第四項(xiàng)趨于0,則式(7)可進(jìn)一步化簡為
(8)
即
(9)
將(6)式代入式(9)中得
(10)
(11)
(12)
由矩陣分解知識可知,式(12)就是矩陣Rj的特征值分解式,即
(13)
其中
(14)
(15)
(16)
由式(16)可看出,根據(jù)特征值分解法估計(jì)得到的PN碼的每一段都可以獨(dú)立地取正負(fù)號,因此存在分段相位模糊的問題,這使得輸出序列有2J種選擇,要從2J種選擇中恢復(fù)出一整周期完全正確的PN碼絕非易事。下面通過梅西算法求PN碼生成多項(xiàng)式從而對PN碼進(jìn)行恢復(fù),消除相位模糊。
梅西算法是用來求產(chǎn)生二元序列的最短線性移位寄存器的一種迭代算法[14],即通過歸納的方法從校驗(yàn)子中找出一系列的移位寄存器:〈fnx,ln〉,n=1,2,…,B,使每個〈fnx,ln〉都是產(chǎn)生序列前n項(xiàng)的最短移位寄存器,最終得到的〈fBx,lB〉就是產(chǎn)生B長二元序列的最短線性移位寄存器,其中fBx為寄存器的聯(lián)結(jié)多項(xiàng)式,lB為寄存器的級數(shù),也是多項(xiàng)式的階數(shù)。利用梅西算法求給定二元序列的最短線性移位寄存器的過程如下:
任意給定一個序列a0,a1,…aB-1,用數(shù)學(xué)歸納法定義一系列的寄存器〈fnx,ln〉,n=1,2,…,B。
(1)取初始值:f0x=1,l0=0。
(17)
其中,dn為第n步差值,并區(qū)別以下兩種情形:
1)若dn=0,則令
fn+1x=fnx,ln+1=ln
(18)
2)若dn=1,則需要區(qū)分以下兩種情形:
當(dāng)l0=l1=…=ln=0,取
fn+1x=1+xn+1,ln+1=n+1
(19)
當(dāng)有m0≤m fn+1x=fnx+xn-mfmx (20) ln+1=maxln,n+1-ln (21) 通過該過程最后得到的〈fBx,lB〉便是產(chǎn)生序列a0,a1,…aB-1的最短線性移位寄存器。其算法流程如圖2所示。 擴(kuò)頻通信中使用的PN碼大部分是由線性反饋移位寄存器(LFSR)產(chǎn)生的二進(jìn)制偽隨機(jī)序列,如式(22)所示 ak=hlak-l+hl-1ak-l+1+…+h2ak-2+h1ak-1 (22) 即PN碼序列的第k位,可由前l(fā)位線性表示,其中,l為生成多項(xiàng)式階數(shù)。h0,h1,…h(huán)lh0=1為生成多項(xiàng)式的系數(shù)。 根據(jù)文獻(xiàn)[14]可知,利用梅西算法求無誤碼(跟原序列相比完全同相或反相)的二進(jìn)制偽隨機(jī)序列的生成多項(xiàng)式時,不需要知道完整的周期序列,只需要知道其中連續(xù)正確的2l位即可。以m序和Gold序列為例,當(dāng)截取的序列長度大于或者等于2l時,利用梅西算法均可100%求出該序列的生成多項(xiàng)式。 圖2 梅西算法流程 根據(jù)這一結(jié)論,把式(16)作為待求生成多項(xiàng)式的序列,如圖3所示,按照一定的步長滑動搜索一個無誤碼矩形窗(窗長為2l),利用梅西算法求其對應(yīng)多項(xiàng)式,該多項(xiàng)式就是m序列或Gold序列生成多項(xiàng)式。由式(22)可知,根據(jù)求得的生成多項(xiàng)式和矩形窗中連續(xù)的l位,可以產(chǎn)生一周期長度的新的序列,然后選取滑動窗后的部分序列同與之對應(yīng)的部分新序列相比較,通過判斷其對應(yīng)位置相同的概率是否達(dá)到一個閾值,來判斷求得的生成多項(xiàng)式是否正確,從而判斷出產(chǎn)生的新序列是否為恢復(fù)的PN碼序列。顯然,閾值越大,恢復(fù)的PN碼序列誤碼率越低,但滑動窗需要滑動搜索的次數(shù)也越多。通過合理設(shè)置閾值,可以達(dá)到不同的實(shí)驗(yàn)要求,本文將閾值設(shè)置為80%,其實(shí)驗(yàn)效果將在后面給出。 綜上所述,利用梅西算法識別序列生成多項(xiàng)式從而恢復(fù)出無相位模糊的PN碼的具體步驟如下: 步驟1 將式(16)作為接收序列; 步驟2 選取接收序列的第v位(假設(shè)v的初始值為5,v≤L-4l-4)到第v+2l-1位,也就是接收序列中連續(xù)的2l位,作為一個矩形滑動窗,利用梅西算法求序列的生成多項(xiàng)式; 步驟3 根據(jù)生成多項(xiàng)式及矩形窗中連續(xù)的前l(fā)位,產(chǎn)生一周期長度的新的序列; 步驟4 將新序列的第2l+1位到第4l位與接收序列的第v+2l位到v+4l-1位進(jìn)行比較,如果對應(yīng)位置相同的概率達(dá)到80%,那么求得的多項(xiàng)式就是PN碼序列生成多項(xiàng)式,然后執(zhí)行步驟5,恢復(fù)出對應(yīng)的序列;如果對應(yīng)位置相同的概率未達(dá)到80%,滑動矩形窗,將v的值加5,重復(fù)步驟2、步驟3、步驟4,直到這兩段對應(yīng)位置相同; 圖3 生成多項(xiàng)式求解 步驟5 根據(jù)序列的周期性,對新的序列向右循環(huán)移動v-1位,就可以恢復(fù)出一整周期不存在相位模糊的PN碼。 實(shí)驗(yàn)中,信息碼采用BPSK調(diào)制的隨機(jī)序列;PN碼采用由線性移位寄存器產(chǎn)生的m序列和Gold序列,其具體階數(shù)、周期長度及生成多項(xiàng)式見表1;誤碼率計(jì)算公式為 (23) 式中:nm表示第m次蒙特卡洛仿真中估計(jì)的PN碼誤碼個數(shù),M表示蒙特卡洛仿真次數(shù),L表示PN碼的周期長度。 表1 仿真實(shí)驗(yàn)選取的PN碼 實(shí)驗(yàn)1:驗(yàn)證本文方法的可行性。PN碼采用表1中的7階Gold序列,設(shè)接收信號樣本長度N=200L,G=53,擴(kuò)頻調(diào)制比r=L/G=2.4,信噪比SNR=-10 dB,利用分段特征值分解對PN碼進(jìn)行估計(jì)如圖4所示,利用梅西算法對PN進(jìn)行恢復(fù)如圖5所示。 圖4中估計(jì)的PN碼是各段PN碼按式(16)進(jìn)行組合得到的一整周期的PN碼序列的估計(jì)值(未取符號函數(shù)),由于各子段的碼序列是獨(dú)立估計(jì)的,組合后就會出現(xiàn)分段相位模糊的情況,從圖4可看出,估計(jì)出的第2子段PN碼(第54位到第106位)的相位與對應(yīng)的真實(shí)PN碼的相位完全反相。 圖5是特征值分解結(jié)合梅西算法估計(jì)出來的PN碼估計(jì)值,為了便于和真實(shí)PN碼進(jìn)行比較,在圖5中將估計(jì)的PN碼幅度值縮小為原來的0.8倍。由圖5可知,圖4中存在相位模糊的PN碼經(jīng)過梅西算法處理恢復(fù)后與真實(shí)PN碼完全相同,不再存在相位模糊的問題。 實(shí)驗(yàn)2:比較不同擴(kuò)頻調(diào)制比對PN碼的估計(jì)性能的影響。PN碼分別采用表1中的9階Gold序列和m序列,接收信號樣本長度N=200L,擴(kuò)頻調(diào)制比分別為r=1.8,r=2.4,r=3.5,r=5.2,信噪比變化范圍從-20 dB~-10 dB,變化間隔為1 dB,蒙特卡洛仿真400次得到PN碼的誤碼率曲線如圖6和圖7所示。 圖4 估計(jì)PN碼與真實(shí)PN碼對比 圖5 估計(jì)PN碼與真實(shí)PN碼對比 圖6 不同擴(kuò)頻調(diào)制比下9階Gold序列誤碼率 圖7 不同擴(kuò)頻調(diào)制比下9階m序列誤碼率 從圖6和圖7中可看出,無論是對m序列還是Gold序列的估計(jì),r越大,對PN碼的周期性破壞越大,分段特征分解的性能越差,最終恢復(fù)出的PN碼序列的誤碼率也就越高。 對比圖6和圖7還可以看出,在相同的擴(kuò)頻調(diào)制比和相同階數(shù)下,估計(jì)的m序列的誤碼率低于Gold序列的誤碼率。這是因?yàn)楫a(chǎn)生m序列的LFSR的級數(shù)是產(chǎn)生Gold序列的LFSR的級數(shù)的一半,在利用梅西算法進(jìn)行m序列恢復(fù)時,矩形滑動窗的長度及相比較的數(shù)據(jù)長度也是Gold序列的一半,這樣在一個PN碼周期長度內(nèi),矩形窗具有更多的滑動次數(shù),對比得到的數(shù)據(jù)也越精確,從而恢復(fù)出序列的誤碼率也就越低。 實(shí)驗(yàn)3:比較不同階數(shù)對PN碼的估計(jì)性能的影響。設(shè)置接收信號樣本長度N=200L,擴(kuò)頻調(diào)制比分別為r=5.2,PN碼分別采用表1中的7、9、10階Gold序列以及7、8、9、10階m序列,信噪比變化范圍從-20 dB~-5 dB,變化間隔為1 dB,蒙特卡洛仿真400次得到PN碼的誤碼率曲線如圖8和圖9所示。 從圖8和圖9中可以看出,不同階數(shù)下,隨著信噪比的增加,估計(jì)的m序列和Gold序列誤碼率逐漸減少,在信噪比SNR=-15 dB和SNR=-17 dB下,可以實(shí)現(xiàn)對10階Gold序列和10階m序列的正確估計(jì)。在相同信噪比下,階數(shù)越高的序列恢復(fù)出的PN碼序列的誤碼率越低。這是因?yàn)殡A數(shù)越高,序列的周期長度越長,算法處理的數(shù)據(jù)越多,包含有用信息越多,估計(jì)出的序列越準(zhǔn)確,但數(shù)據(jù)的計(jì)算量也就越大,算法執(zhí)行時間也就越長。 圖8 不同階數(shù)的Gold序列誤碼率 圖9 不同階數(shù)的m序列誤碼率 實(shí)驗(yàn)4:比較在不同階數(shù)下,正確估計(jì)出PN碼序列所需要的數(shù)據(jù)組數(shù),每組數(shù)據(jù)長度為PN碼周期長度L。設(shè)置擴(kuò)頻調(diào)制比r=2.4,采用的PN碼序列及信噪比變化范圍同實(shí)驗(yàn)3,蒙特卡洛仿真300次,得到不同階數(shù)下完全正確地估計(jì)出PN碼所需要的數(shù)據(jù)組數(shù)隨信噪比變化曲線如圖10和圖11所示。 圖10 Gold序列數(shù)據(jù)組數(shù)與信噪比關(guān)系 圖11 m序列數(shù)據(jù)組數(shù)與信噪比關(guān)系 從圖10和圖11可以看出,不同階數(shù)下,隨著信噪比的增加,完全估計(jì)出PN碼序列所需要的數(shù)據(jù)組數(shù)在不斷減少;在信噪比SNR=-5 dB下,大約只需要10組數(shù)據(jù)就能完全估計(jì)出各階的Gold序列和m序列。在同一信噪比下,階數(shù)越高,序列周期長度越長,完全估計(jì)出PN碼序列所需要的數(shù)據(jù)組數(shù)越少。 針對非周期長碼直擴(kuò)信號PN碼盲估計(jì)問題,本文提出了特征分解與梅西算法相結(jié)合的方法。首先利用特征值分解估計(jì)出每一小段的PN碼,對每一小段PN碼進(jìn)行拼接得到一整周期長度的PN碼。對于拼接產(chǎn)生的相位模糊問題,利用梅西算法估計(jì)PN碼生成多項(xiàng)式,根據(jù)生成多項(xiàng)式對序列進(jìn)行恢復(fù),從而得到完全正確的PN碼。實(shí)際上該方法適應(yīng)于多種PN碼的估計(jì),仿真實(shí)驗(yàn)以常用的m序列和Gold序列為例進(jìn)行研究,結(jié)果表明,本文方法能夠在較低信噪比下對這兩種序列進(jìn)行有效估計(jì),并且序列的階數(shù)越高,性能越好。2.3 PN碼生成多項(xiàng)式求解
3 仿真實(shí)驗(yàn)與分析
4 結(jié)束語