專利名稱:一種長周期擴頻碼的頻率折疊時頻并行搜索方法
技術領域:
本發(fā)明屬于擴頻通信中的擴頻碼捕獲技術領域。
背景技術:
擴頻通信具有很多優(yōu)點,應用甚廣。擴頻信號可以對抗或者抑制干擾的有害影響,例如信道中其他用戶引起的干擾;擴頻信號以低功率發(fā)送來隱蔽信號,使得信號難以被竊聽者檢測到;可以實現(xiàn)保密通信。擴頻通信技術廣泛應用于軍事、民用等領域。
3G通信的3個主要標準WCDMA、TD-SCDMA、CDMA-2000都是以擴頻通信技術為基礎的。目前應用最廣的衛(wèi)星導航系統(tǒng)——全球定位系統(tǒng)(GPS),也是以擴頻通信技術為基礎的。擴頻碼捕獲則是實現(xiàn)擴頻通信的根本基礎。只有完成了碼捕獲才能在接收端與發(fā)射端建立同步,才能在接收端實現(xiàn)解擴,完成信號處理功能。
與短周期擴頻碼相比,長周期擴頻碼能提供更好的抗干擾、抗衰落、反欺騙能力以及更高的測距精度,廣泛應用于現(xiàn)代通信和導航定位系統(tǒng)中。例如目前廣泛應用的全球定位系統(tǒng)(GPS),其精密定位服務便是以周期長達7天,碼速率高達10.23Mchip/s的P(Y)碼為基礎來提供的。擴頻碼的搜索捕獲過程往往是一個二維的搜索過程,如圖1所示。由于發(fā)送端與接收端在時間上的不同步,需要對碼相位進行搜索,這是第一維,如圖1橫軸所示。由于發(fā)送端與接收端間存在相對運動,需要對載波多普勒進行搜索,這是第二維,如圖1縱軸所示。
在進行擴頻碼捕獲時,與短周期擴頻碼相比長周期擴頻碼具有更大的待搜索范圍。例如GPS中,其短碼C/A碼的碼速率為1.023Mchip/s,周期為1ms,在進行碼搜索時,至多有1023個待搜索的偽碼碼片;但對GPS的長碼P(Y)碼則不同,其速率高達10.23Mchip/s,周期長達7天,發(fā)送端與接收端間即使只有1s的時間不確定度,其待搜索的偽碼碼片都有1.023×107個之多,是C/A碼的10000倍,搜索工作量極大。由于發(fā)送端與接收端的相對運動,接收端往往需要在較大的載波多普勒范圍內對頻率進行搜索。以載波多篇勒范圍為±5kHz、頻率搜索步長為1kHz計算,則有10個頻率單元需要搜索。
現(xiàn)有的擴頻碼搜索方法主要有串行時頻搜索方法、頻率并行搜索方法、多個碼相位并行搜索方法。下面將分別予以介紹。
串行時頻搜索方法以相關器形式串行搜索每個時頻單元格。如圖1所示,該方法首先以串行的方式搜索第一個頻率格所對應的N個碼相位單元,然后再搜索第二格頻率格所對應的N個碼相位單元,再搜索第三個頻率格所對應的N個碼相位單元,這樣依次搜索下去,直到搜索完所有的時頻單元格或者找到大于門限的單元格為止。因此該方法的搜索速度很慢,現(xiàn)在用的很少,不過該方法卻是現(xiàn)代各種搜索技術的基礎。
頻率并行搜索方法的核心是對頻率單元進行并行搜索,使得搜索速度比串行搜索方法要快的多。缺點是在碼相位上依舊是串行搜索。如圖1所示,該方法首先并行搜索碼相位單元1所對應的K個頻率單元,再并行搜索碼相位單元2所對應的K個頻率單元,依次搜索下去,直到搜索完所有的時頻單元格或找到大于門限的單元格為止。與串行搜索方法相比,該方法在搜索頻率單元格上是并行的,因此理論上其搜索速度比串行搜索方法要快K倍。
這類方法的一個典型代表是基于FFT的頻率并行搜索方法。該方法通過對每個碼相位單元所對應的多個相關積分值進行FFT運算,并行搜索每個碼相位單元所對應的K個頻率單元,以達到并行搜索頻率單元的目的。
多個碼相位并行搜索方法是現(xiàn)行長碼搜索領域中用的較多的一類搜索方法。這類方法的核心是對多個碼相位進行并行搜索。但在頻率單元上卻是串行搜索的。如圖1所示,這類方法先并行搜索第一個頻率單元所對應的多個碼相位單元,然后再并行搜索第二個頻率單元所對應的多個碼相位單元,依次搜索下去,直到搜索完所有的時頻單元格或找到大于門限的單元格為止。
由于長碼搜索過程中,待搜索的碼相位范圍非常大,受處理器件和方法復雜度等因素的影響,這類方法在碼相位上往往是部分并行的。例如上述提到的GPS中的P(Y)碼搜索問題,其待搜索的偽碼碼片是1.023×107個,以1/2碼片為步長則有2.046×107個待搜索的偽碼相位。實現(xiàn)這么多偽碼相位完全并行搜索是非常困難的,也完全沒有這個必要。一種較為折中的方法是在偽碼相位上實現(xiàn)部分并行搜索,例如可以每次只并行搜索幾百、幾千、幾萬或幾十萬個偽碼相位。這樣可以減小方法復雜度,同時也具有較快的搜索速度。
這類方法從整體上而言在碼相位上是并行的,在頻率上是串行的。由于待搜索的頻率單元往往比待搜索的偽碼相位要少的多,因此這類方法往往比頻率并行搜索方法有較快的搜索速度。
這類方法可以用并行相關器、FFT技術等方式來實現(xiàn)。較常用的方法有并行相關器方法、補零方法(ZP)、碼相位折疊方法(XFAST)等。
串行搜索方法在碼相位域、頻率域上均是串行的搜索方式,依次搜索每個時頻單元格,因此搜索速度很慢,很難滿足現(xiàn)在通信技術的要求。
頻率并行搜索方法在頻率域上并行的,可以并行搜索頻率單元格。以載波多篇勒范圍為±5kHz、頻率搜索步長為1kHz計算,該方法的搜索速度是串行搜索方法的10倍。
多個碼相位并行搜索方法,在碼相位域上是部分并行的,可以并行搜索一段碼相位單元。其搜索速度與并行搜索的碼相位單元數有關,若每次并行搜索4096個碼相位單元,則其搜索速度是串行搜索方法的4096倍。即使考慮實踐中受處理器件實現(xiàn)速度的影響,這類方法與串行搜索方法比起來也有成百上千倍的提高。
長碼搜索過程中,由于待搜索的碼相位單元數往往要比待搜索的頻率單元數多的多,多個碼相位并行搜索方法往往比串行搜索方法和頻率并行搜索方法具有更快的搜索速度。具體實現(xiàn)是,其性能還與實現(xiàn)的軟硬件資源等因素有關。
雖然在上述三類方法中多個碼相位并行搜索方法具有最高的搜索速度,不過該方法在搜索頻率單元格上受到了很大的限制。眾所周知,在偽碼捕獲過程中存在這樣一對矛盾體相干積分時間Tc和頻率單元格fd間的矛盾。相干積分時間越長,解擴增益越大,不過受頻率的影響也越大。該影響可以用sinc2(πfdTc)表示。以相干積分時間周期為1ms為例,若頻率單元格步長fstep=1000Hz,則由于載波頻率偏移所引起的相干信噪比損耗可達3.92dB;若頻率單元格步長fstep=1600Hz,則由于載波頻率偏移所引起的相干信噪比損耗可達12.62dB;若頻率單元格步長fstep=1800Hz,則由于載波頻率偏移所引起的相干信噪比損耗可達19.23dB。為了減小損耗,不得不以較小的頻率步長進行搜索,這將使待搜索的時頻單元數急劇增加,使得搜索速度較慢。另一方面,若減小相關積分時間,則會減小信號處理增益而使檢測失敗,況且不能無限制地減小相關積分時間。該方法的另一個缺陷在于,即使輸入信號的信噪比很高,其頻率搜索步長也不能太長。例如相關積分時間為1ms,當頻率單元格步長fstep=1800Hz時,由載波頻率偏移所引起的損耗可達19.2320dB;若頻率單元格步長fstep=1900Hz時,由載波頻率偏移所引起的損耗可達25.6dB。因此該方法即使在信號比很高的情況下也不得不將待搜索的載波頻率范圍劃分為多個頻率單元格進行搜索,這就限制了多個碼相位并行搜索方法的性能。
發(fā)明內容
本發(fā)明的目的在于在不明顯增加方法復雜度和硬件實現(xiàn)規(guī)模的條件下,同時實現(xiàn)頻率單元和多個碼相位單元的并行搜索,提高方法的搜索速度,減小偽碼捕獲時間。
發(fā)明人通過對不同頻率下的接收信號進行折疊,達到了并行搜索頻率單元的目的;再利用已有的多個碼相位并行搜索方法,達到了并行搜索多個碼相位單元的目的,從而使該方法具備了同時并行搜索頻率單元和多個碼相位單元的能力。如圖2所示是發(fā)明人所提出的“長周期擴頻碼頻率折疊方法”原理圖。
該方法根據待搜索的頻率范圍和頻率搜索步長,確定待搜索的頻率單元數。然后對不同頻率單元格上的信號進行折疊,得到一段新的信號。注意該方法在頻率折疊上與短周期擴頻碼不同,它沒有周期性可以利用,而是采用了將同一段輸入信號映射到不同的頻率格然后再對映射后的信號對應相加的方式來實現(xiàn)碼相位在不同頻率上的折疊。完成頻率折疊后,再利用已有的碼相位并行搜索方法進行碼相位的并行搜索,從而達到了并行搜索碼相位單元和頻率單元的能力。當找到大于門限的相關值或搜索完整個空間后,再利用其它方法(例如FFT方法,串行搜索方法等)去除頻率不確定度(即圖2中“去模糊度”)。由于去除頻率模糊度時已經確定了偽碼相位,因此此時待搜索的單元數是很少的,只需要對已經找到的碼相位所對應的多個頻率單元進行搜索即可。
本發(fā)明的特征在于,該方法與串行搜索方法、頻率并行搜索方法、碼相位并行搜索方法相比(1)它同時實現(xiàn)了對多個碼相位單元和頻率單元進行并行搜索,而不是僅實現(xiàn)了多個碼相位單元的并行搜索或僅實現(xiàn)了頻率單元的并行搜索,因此具有更快的搜索速度;(2)由于在頻率折疊的過程中引入了頻率不確定度,該方法在捕獲本地偽碼相位以后還需要“去頻率模糊度”——即確定接收信號的載波頻率具體落在哪一個頻率格之內。由于“長周期擴頻碼頻率折疊方法”先捕獲了偽碼相位,因此在搜索頻率時僅僅需要在該偽碼相位上進行頻率搜索即可,工作量很小??梢圆捎煤芏啾容^成熟的方法,例如FFT方式——對該偽碼相位所對應的多個相關積分值進行FFT運算,以實現(xiàn)頻率搜索?!叭ヮl率模糊度”所需要的時間與方法的整個搜索時間比起來是很小的,幾乎可以忽略不計。(3)該方法所增加的方法復雜度很小,僅僅需要將同一段接收信號映射到不同的頻率單元格即可,可采用軟件的方法來實現(xiàn),方法復雜度低。
該方法與已有的多個碼相位并行搜索方法相比,由于頻率折疊的作用只需要對一個頻率單元格所對應的碼相位單元進行搜索,因此其搜索速度是多個碼相位并行搜索方法的K倍(K為頻率單元格數)。如3.4所述,由于多個碼相位并行搜索方法比頻率并行搜索方法有更快的搜索速度,因此發(fā)明人所提出的方法也比頻率并行搜索方法要快。
如圖3所示,是發(fā)明人所提出的長周期擴頻碼頻率折疊方法在采用補零方法進行多個碼相位并行搜索情況下的方法原理圖。下面將以補零方法作為碼相位并行搜索方法對發(fā)明人所提出的長周期擴頻碼頻率折疊方法進行介紹。
“長周期擴頻碼頻率折疊方法”的實施步驟如下1.設定待搜索的頻率范圍fu和頻率搜索步長fstep,得到待搜索的頻率單元數K=fu/fstep。
2.接收N/2點經前端A/D采樣后的數字信號r(n),n=0,1,2,...,N/2-1,再把這N/2點數字信號分別映射到不同頻率單元的頻率格上,記作rk(n),k=1,2,...,K,k為不同的頻率格;然后把這K組信號進行折疊得到新的信號b(n)b(n)=Σk=1Kr(k)(n),n=0,1,2,...,N/2-1.]]>3.對步驟2得到的折疊后的信號b(n)補零至N點得到新的補零信號c(n)c(n)=b(n),0≤n≤(N/2-1)0,N/2≤n≤(N-1),]]>再對c(n)進行FFT運算,得到c(m)C(m)=Σn=0N-1c(n)e-j2πNnm,m=0,1,2,...,N-1,j=-1.]]>4.對本地偽碼l(n)作FFT運算,得到L(m)L(m)=Σn=0N-1l(n)e-j2πNnm,m=0,1,2,...,N-1,j=-1,]]>對C(m)取復共軛,得到C*(m),把C*(m)與L(m)相乘,得到Y(m)Y(m)=C*(m)L(m),m=0,1,2,...,N-1,對Y(m)進行IFFT變換后,得到相關結果d(n)d(n)=1NΣm=0N-1Y(m)ej2πNmn,n=0,1,2,...,N-1.]]>5.存儲前N/2+1點結果‖d(n)‖2的值,n=0,1,2,...,N/2,“‖‖”表示取模。
6.重復步驟2至步驟5,共F次,將步驟5所得結果記為‖di(n)‖2,i表示非相干累加腳標,然后進行非相干累加,得到結果e(n)e(n)=Σi=0F-1||di(n)||2,n=0,1,2,...,N/2.]]>7.從步驟6得到的e(n)中選出最大值emax
emax=max0≤n≤N/2{e(n)},]]>將emax與設定的門限Po進行比較,Po=-λN(δ2+A2)lnPfa,]]>其中Pfa表示單個待搜索單元的虛驚概率、δ2表示噪聲方差、A表示接收信號幅度、N表示FFT長度,λ為一系數與頻率折疊次數有關。
8.若最大值emax大于門限,則根據該最大值所在位置來確定偽碼相位,若最大值emax小于門限則移動N/2+1點本地偽碼相位,對另外一段偽碼相位進行搜索,重復步驟2至步驟7,直到找到大于門限的emax或搜索完整個碼相位空間為止;9.根據步驟8所得到的偽碼相位,再依次對每個頻率單元格進行搜索,得到載波頻率。
如前所述,“多個碼相位并行搜索方法”比“串行搜索方法”和“頻率并行搜索方法”具有更快的搜索速度,因此在此僅就發(fā)明人所提出的“長周期擴頻碼頻率折疊方法”與已有的“多個碼相位并行搜索方法”做比較。在此以常用的補零方法為例,比較利用發(fā)明人所提出的“長周期擴頻碼頻率折疊方法”與補零方法的性能。
圖4、圖5共同的仿真條件是在此假定經前端處理后的輸入信號載波頻率在-5kHz與5kHz間隨機取值,即頻率不確定度為±5kHz;采樣速率為2.046Mchip/s,碼相位偏移量為1000;相干積分長度為1ms;非相干累加次數為1,即F=1;輸入信號SNR為-5dB。
對于圖4,其FFT長度為2048,頻率搜索步長為fstep=500Hz,各頻率搜索單元格的中心頻率分別為-5000Hz,-4500Hz,…,-500Hz,0Hz,500Hz,…,5000Hz,共有21個頻率格需要搜索;輸入信號載波頻率偏移為3700Hz。圖4(a)是采用補零方法依次對每個頻率格進行搜索時,離輸入信號頻率偏移最近的那個頻率格的仿真性能(此時輸入信號頻率偏移與本地頻率格之差為200Hz);圖4(b)是采用補零方法依次對每個頻率格進行搜索時,離圖4(a)所在頻率格偏移3個頻率格時的仿真性能(此時輸入信號頻率偏移與本地頻率格之差為1700Hz)。從圖4(b)可以看到,此時由于頻率偏移所引起的多普勒損耗的緣故,圖4(b)已不能找到正確的相關峰值。因此補零方法不得不對待搜索的頻率范圍進行劃分,再多個頻率單元格上進行搜索,這必將引起待搜索單元格的成倍增加,從而使得搜索速度減慢(待搜索單元格數量是待搜索碼相位單元和待搜索頻率單元格數量之積)。此時若采用發(fā)明人所提出的方法對頻率格進行折疊,則不需要在多個頻率格上進行搜索,這就直接減少了待搜索的單元格數量,從而可以提高搜索速度。如圖4(c)所示,是采用發(fā)明人所提出的長周期擴頻碼頻率折疊方法后的仿真性能。從中可以看到此時可以找到正確的碼相位位置。此時發(fā)明人所提出的“長周期擴頻碼頻率折疊方法”與補零方法比起來其搜索速度提高了21倍。
對于圖5,其FFT長度為8192,頻率搜索步長為fstep=800Hz,各頻率搜索單元格的中心頻率分別為-5000Hz,-4200Hz,-3400Hz,…,3800Hz,4600Hz,共有11個頻率格需要搜索;輸入信號載波頻率偏移為1500Hz。圖4(a)是采用補零方法依次對每個頻率格進行搜索時,離輸入信號頻率偏移最近的那個頻率格的仿真性能(此時輸入信號頻率偏移與本地頻率格之差為100Hz);圖4(b)是采用補零方法依次對每個頻率格進行搜索時,離圖4(a)所在頻率格偏移3個頻率格時的仿真性能(此時輸入信號頻率偏移與本地頻率格之差為2500Hz)。圖4(c)是采用發(fā)明人所提出的長周期頻率折疊方法后的仿真性能。從中可以看到此時頻率折疊可以找到正確的碼相位位置。此時發(fā)明人所提出的“長周期擴頻碼頻率折疊方法”與補零方法比起來其搜索速度提高了11倍。
由于頻率折疊引起了PN碼自相關性能的下降,“長周期擴頻碼頻率折疊方法”與補零方法比起來其捕獲性能下降了。因此補零方法可以通過加大的頻率步長來提高搜索速度,但是這個步長是收到相干積分時間所限制的,是不能無限增加的(如3.4部分所述)。在圖4中可以看到當頻率偏移超過1700Hz時,補零方法已不能找到正確的碼相位位置,這也就是說即使補零方法采用較大的頻率步長(在此最多為3400Hz),“長周期擴頻碼頻率折疊方法”比補零方法至少要快3倍。
圖1.擴頻碼的時頻二維搜索示意圖,圖中陰影部分表示一個待搜索的時頻單元格;圖2.本發(fā)明所提出的長周期擴頻碼頻率折疊時頻并行搜索方法原理圖;圖3.使用補零方法進行多個碼相位并行搜索時原理框圖;圖4.輸入信號SNR=-5dB,F(xiàn)FT長度N=2048時仿真實驗圖(a)fd=200Hz,(b)fd=1700Hz,(c)本發(fā)明方法;圖5.輸入信號SNR=-5dB,F(xiàn)FT長度N=8192時仿真實驗圖(a)fd=100Hz,(b)fd=2500Hz,(c)本發(fā)明方法。
具體實施例方式
在此以FFT長度為2048點,待搜索頻率單元數為20,非相干累加次數為10,簡述“長周期擴頻碼頻率折疊方法”的實施步驟1.選擇1024點經前端A/D采樣后的信號,將這些信號映射到20個不同的頻率格單元上。對映射后的信號對應相加,共得到1024點新的信號;2.對這1024點新的信號補零至2048點,進行FFT運算并取復共軛;3.產生2048點本地偽碼信號,并進行FFT運算;4.將2和3的結果對應相乘,對得到2048點數據進行IFFT處理;5.存儲1025點步驟4所得到的結果;6.重復上述步驟1至5共10次;7.將步驟6所得的10次結果進行非相干累加,并進行功率檢測,從中找出最大值并與門限比較;8.若步驟7所得最大值比門限大,則根據該最大值的位置確定偽碼相位,并轉入步驟9去頻率模糊度。若步驟7所得最大值小于等于門限,則移動1025點本地偽碼相位,重復上述步驟檢測下一段偽碼相位;9.根據8所得偽碼相位,在該偽碼相位上依次對載波頻率單元格進行搜索,解決頻率模糊度。
說明步驟7中一種確定門限的辦法根據單個待搜索單元的虛驚概率Pfa、噪聲方差δ2、接收信號幅度A、FFT長度N來確定門限Po=-λN(δ2+A2)lnPfa.]]>其中λ為一系數,與頻率折疊次數有關。
權利要求
1.一種長周期擴頻碼的頻率折疊時頻并行搜索方法,其特征在于,所述方法是在接收端數字信號處理器中按以下步驟實現(xiàn)的步驟(1)設定待搜索的頻率范圍fu和頻率搜索步長fstep,得到待搜索的頻率單元數K=fu/fstep;步驟(2)接收N/2點經前端A/D采樣后的數字信號r(n),n=0,1,2,...,N/2-1,再把這N/2點數字信號分別映射到不同頻率單元的頻率格上,記作rk(n),k=1,2,...,K,k為不同的頻率格;然后把這K組信號進行折疊得到新的信號b(n)b(n)=Σk=1Kr(k)(n),n=0,1,2,...,N/2-1;]]>步驟(3)對步驟(2)得到的折疊后的信號b(n)補零至N點得到新的補零信號c(n)c(n)=b(n),0≤n≤(N/2-1)0,N/2≤n≤(N-1),]]>再對c(n)進行FFT運算,得到c(m)C(m)=Σn=0N-1c(n)e-j2πNnm,]]>m=0,1,2,...,N-1,j=-1;]]>步驟(4)對本地偽碼l(n)作FFT運算,得到L(m)L(m)=Σn=0N-1l(n)e-j2πNnm,]]>m=0,1,2,...,N-1,j=-1,]]>對C(m)取復共軛,得到C*(m),把C*(m)與L(m)相乘,得到Y(m)Y(m)=C*(m)L(m),m=0,1,2,...,N-1,對Y(m)進行IFFT變換后,得到相關結果d(n)d(n)=1NΣm=0N-1Y(m)ej2πNmn,]]>n=0,1,2,...,N-1;步驟(5)存儲前N/2+1點結果‖d(n)‖2的值,n=0,1,2,...,N/2,“‖‖”表示取模;步驟(6)重復步驟(2)至步驟(5),共F次,將步驟(5)所得結果記為‖di(n)‖2,i表示非相干累加腳標,然后進行非相干累加,得到結果e(n)e(n)=Σi=0F-1||di(n)||2,]]>n=0,1,2,...,N/2;步驟(7)從步驟(6)得到的e(n)中選出最大值emaxemax=max0≤n≤N/2{e(n)},]]>將emax與設定的門限Po進行比較,Po=-λN(δ2+A2)lnPfa,]]>其中Pfa表示單個待搜索單元的虛驚概率、δ2表示噪聲方差、A表示接收信號幅度、N表示FFT長度,λ為一系數與頻率折疊次數有關;步驟(8)若最大值emax大于門限,則根據該最大值所在位置來確定偽碼相位,若最大值emax小于門限則移動N/2+1點本地偽碼相位,對另外一段偽碼相位進行搜索,重復步驟(2)至步驟(7),直到找到大于門限的emax或搜索完整個碼相位空間為止;步驟(9)根據步驟(8)所得到的偽碼相位,再依次對每個頻率單元格進行搜索,得到載波頻率。
全文摘要
基于頻率折疊的長周期擴頻碼時頻并行搜索方法屬于擴頻通信技術領域,其特征在于,通過將同一段接收信號映射到不同的頻率單元格下進行折疊,實現(xiàn)了對頻率單元的并行搜索,再利用多個碼相位并行搜索方法實現(xiàn)對多個碼相位單元的并行搜索,在實現(xiàn)時,根據待搜索的頻率范圍以及頻率搜索步長,確定待搜索的頻率單元數,再將映射到不同頻率單元格上的同一段接收信號進行折疊,然后把折疊后的信號用FFT技術實現(xiàn)該信號與本地偽碼間的并行相關,實現(xiàn)多個碼相位的并行搜索,本方法在不顯著增加算法復雜度和硬件實現(xiàn)規(guī)模的條件下,同時實現(xiàn)了載波頻率單元和多個碼相位單元的并行搜索,提高了搜索速度,減少了偽碼捕獲時間。
文檔編號H04B7/26GK101072044SQ200710118128
公開日2007年11月14日 申請日期2007年6月29日 優(yōu)先權日2007年6月29日
發(fā)明者李洪, 陸明泉, 馮振明 申請人:清華大學