新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于FPGA滑動(dòng)相關(guān)法偽碼捕獲的研究與實(shí)現(xiàn)

基于FPGA滑動(dòng)相關(guān)法偽碼捕獲的研究與實(shí)現(xiàn)

作者: 時(shí)間:2010-01-26 來源:網(wǎng)絡(luò) 收藏

  實(shí)現(xiàn)方法

  根據(jù)相位捕獲的方法可分為:連續(xù)相位和在此思路上改進(jìn)的不連續(xù)相位相關(guān)法。

  連續(xù)相位

  此方法是通過改變本地偽碼時(shí)鐘速率,與發(fā)端偽碼時(shí)鐘速率保持一個(gè)合適偏移量,使接收信號(hào)中偽碼相位與本地偽碼相位在相關(guān)器內(nèi)進(jìn)行相對(duì)滑動(dòng)。這種方法的相位捕獲是連續(xù)進(jìn)行的,所以相關(guān)峰值是一個(gè)連續(xù)量。相關(guān)值一旦超過捕獲門限,標(biāo)志正確相位已被搜索到,接收機(jī)立即恢復(fù)本地偽碼時(shí)鐘速率(收、發(fā)信機(jī)都使用穩(wěn)定度很高的振蕩源,所以它們的碼速率可以基本保持一致),停止相位滑動(dòng),啟動(dòng)跟蹤電路,使相位差進(jìn)一步縮小(意味著相關(guān)性增大),獲得更高解擴(kuò)信噪比,滿足其后解調(diào)門限要求。此種捕獲方法捕獲時(shí)間和檢測(cè)概率相互矛盾。例如,對(duì)于一個(gè)N=215位的PN碼,兩偽碼之間最大相對(duì)滑動(dòng)速率約為5kc/ps,遍歷其所有相關(guān)狀態(tài)需要的時(shí)間為6.55S。在實(shí)際通信過程中,由于干擾及其它原因造成偽碼相位失鎖需要重新捕捉時(shí),這么長(zhǎng)的捕捉時(shí)間會(huì)嚴(yán)重影響通信質(zhì)量,因而是不可取的。由以上分析可知,這種捕捉方法相位搜索精度高但同時(shí)導(dǎo)致了過長(zhǎng)的捕捉時(shí)間,在實(shí)際中很少應(yīng)用,但其思路值得借鑒。不連續(xù)就是在此基礎(chǔ)上的改進(jìn)。

  不連續(xù)相位滑動(dòng)相關(guān)法

  所謂連續(xù)與不連續(xù)的區(qū)別是對(duì)搜索中相位的滑動(dòng)變化量而言,后一種方法是把連續(xù)的相位搜索改為跳躍式的搜索,即兩個(gè)碼之間的相位滑動(dòng)量不再是連續(xù)地以一定的步進(jìn)量產(chǎn)生相位滑動(dòng)。不連續(xù)滑動(dòng)相關(guān)法是利用一個(gè)相位搜索電路,在捕獲過程中使本地偽碼相位以一定的步進(jìn)值跳躍變化,這樣遍歷整個(gè)偽碼時(shí)間大大減少。與前一種方法相比,它的收、發(fā)偽碼時(shí)鐘速率保持一致,從而不會(huì)造成碼片寬度不一致,導(dǎo)致相關(guān)峰值下降。本地偽碼與接收偽碼相位的相對(duì)改變是靠搜索電路對(duì)偽碼發(fā)生器時(shí)鐘的超前、滯后控制來實(shí)現(xiàn)的,因此相位搜索電路(如圖2所示)是不同于前者的關(guān)鍵所在。下面重點(diǎn)討論實(shí)現(xiàn)半碼片滑動(dòng)的實(shí)現(xiàn)方法。

  捕獲方法1 (滑動(dòng)步進(jìn)為TC/2)

  時(shí)鐘取反法:

  如圖1所示,當(dāng)信號(hào)包絡(luò)的平方小于門限時(shí),輸出控制信號(hào),對(duì)圖2中CLK取反,取反的結(jié)果相當(dāng)于利用原CLK時(shí)鐘下降沿進(jìn)行觸發(fā)。經(jīng)過二分頻后作為偽碼產(chǎn)生器的時(shí)鐘,同時(shí)把CLK作為移位寄存器的時(shí)鐘,三位移位寄存器的輸出相當(dāng)于移動(dòng)了半個(gè)碼片。仿真結(jié)果如圖3所示。

FPGA仿真結(jié)果

  圖中data1,data2,data3,分別為三位移位寄存器的輸出,01表示+1,11表示1,clk1為碼NCO的輸出,clk2為它的二分頻。此方法在整個(gè)系統(tǒng)中要多次對(duì)時(shí)鐘進(jìn)行取反操作,會(huì)帶來比較嚴(yán)重的時(shí)序問題,使系統(tǒng)工作時(shí)序滿足不了。為了解決此問題,可采用改進(jìn)的方法。

  捕獲方法2 (滑動(dòng)步進(jìn)為TC/2)

  時(shí)鐘取反法改進(jìn):

  此方法采用觸發(fā)器結(jié)構(gòu),把2倍的CLK作為輸入,CLK作為使能端,利用自帶的IP核--鎖相環(huán)使CLK相位超前,包住2倍CLK的上升沿,觸發(fā)器的輸出即為CLK,仿真結(jié)果如圖4所示。圖中,co為輸入端,pn為鎖相環(huán)的輸出作為使能端。對(duì)使能端取反操作,通過圖2的電路結(jié)構(gòu)即可完成半碼片的移動(dòng)。但是,同時(shí)要對(duì)二分之一CLK進(jìn)行鎖相操作,如果實(shí)現(xiàn)多路,由于FPGA內(nèi)部只有2個(gè)鎖相環(huán),所以,實(shí)用性受到限制。

  捕獲方法3 (滑動(dòng)步進(jìn)為TC/2)

  加脈沖移位法:

  此方法是采用一個(gè)異或門,如圖5所示,使碼NCO的輸出CLK與一個(gè)信號(hào)異或輸出,此信號(hào)平時(shí)一直為高(或低)電平,一旦收到低于門限值時(shí),輸出一個(gè)低(或高)脈沖,與CLK異或后,相當(dāng)于在原CLK時(shí)鐘上加了一個(gè)脈沖,通過圖示的電路后,偽碼產(chǎn)生器前進(jìn)了半個(gè)相位,通過移位寄存器后,即可實(shí)現(xiàn)半個(gè)碼相位的移動(dòng)(超前半個(gè)碼片)。

加脈沖移位法

  FPGA仿真結(jié)果如圖6所示。圖中CLK1為碼NCO的輸出,CLK2為它的二分頻作為偽碼產(chǎn)生器的時(shí)鐘,pn1為偽碼產(chǎn)生器輸出,k1為信號(hào),平常輸出高電平,當(dāng)門限檢測(cè)結(jié)果為低時(shí),輸出一個(gè)低脈沖與CLK1異或輸出,結(jié)果為CLK3。從仿真圖中可以看出CLK3相對(duì)于CLK2在k1為低脈沖時(shí),增加了一個(gè)脈沖。

  下載到FPGA中,利用SIGNALTAP,測(cè)試結(jié)果如圖7所示。圖中CLK1為碼NCO輸出時(shí)鐘,CLK2為異或門的輸出,從圖中可以看出,在門限檢測(cè)為低時(shí),CLK2比CLK1多增加了一個(gè)脈沖,測(cè)試結(jié)果與仿真結(jié)果一致。



評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉