直擴系統PN碼捕獲和跟蹤的FPGA實(shí)現
3 捕獲和跟蹤環(huán)在FPGA上的實(shí)現
本系統采用Altera公司的系列芯片,用VHDL語(yǔ)言編程,在Quartus 8.0中建模仿真。按照如下步驟完成擴頻碼的捕獲和跟蹤,并給出了仿真波形圖,進(jìn)行了結果分析。
接收信號經(jīng)過(guò)A/D變換之后進(jìn)入FPGA,首先進(jìn)入捕獲模塊,每一個(gè)PN碼片時(shí)刻都有一個(gè)相關(guān)值輸出,當相關(guān)值大于門(mén)限表示捕獲成功,轉入跟蹤階段。在跟蹤階段,PN碼發(fā)生模塊根據碼時(shí)鐘產(chǎn)生模塊的時(shí)鐘信號產(chǎn)生三路PN碼(超前、中間、滯后),接收信號與三路PN碼在鑒相模塊分別進(jìn)行相關(guān),中間一路產(chǎn)生解擴碼輸出,超前、滯后兩路的相關(guān)值作差并將結果輸出至碼時(shí)鐘產(chǎn)生模塊,來(lái)調整PN碼時(shí)鐘,從而控制PN碼的相位,每次調整1/8個(gè)碼片周期。當連續三次中間一路的相關(guān)值小于門(mén)限時(shí)表示已經(jīng)失步,需要重新捕獲,接下來(lái)將轉入捕獲階段。沿此環(huán)路即可實(shí)現本地PN碼與接收擴頻碼的捕獲和跟蹤,進(jìn)而完成信號的解擴輸出。
3.1 碼時(shí)鐘發(fā)生模塊仿真結果分析
圖5給出了碼時(shí)鐘發(fā)生模塊的仿真結果。其中cyclk是系統輸入時(shí)鐘;e_clk為超前指示,l_clk為滯后指示,pnclk為輸出PN碼時(shí)鐘。當e_clk為高電平時(shí),在左側黑實(shí)線(xiàn)處可看到該模塊輸出的pnclk滯后了1/8個(gè)PN碼元;當l_clk為高電平時(shí),在右側黑實(shí)線(xiàn)處可看到輸出的pnclk會(huì )提前1/8個(gè)PN碼元。本文引用地址:http://dyxdggzs.com/article/190998.htm
3.2 捕獲仿真結果分析
圖6(a)是捕獲階段的仿真結果圖。其中cyclk是系統輸入時(shí)鐘;pnclk是捕獲階段產(chǎn)生本地:PN碼的PN時(shí)鐘;reset是復位信號;sigin是輸入擴頻信號,jiekuo是輸出解擴信號;shibuj是捕獲模塊的啟動(dòng)使能信號,高電平有效;genzong是跟蹤環(huán)路的啟動(dòng)使能信號,高電平有效;xiangguangzhi是接收信號與本地PN碼的相關(guān)值累加和。圖6(b)中將xiangguanzhi信號放大,門(mén)限設置為1 760。在圖中右側黑實(shí)線(xiàn)處,此時(shí)相關(guān)值已經(jīng)大于門(mén)限,表示捕獲成功,置genzong信號為高電平,shibuj信號為低電平,啟動(dòng)跟蹤環(huán)路,終止捕獲環(huán)路。同時(shí)產(chǎn)生三路PN碼。
3.3 跟蹤環(huán)路仿真結果分析
圖7是跟蹤仿真結果圖。其各信號代表的意思同上。人為調整sigin的相位,跟蹤環(huán)路總是可以跟蹤輸入擴頻信號的變化,并準確解擴輸出,上述解擴輸出結果為01000010。其中黑色實(shí)線(xiàn)處是解擴毛刺,不影響結果的輸出。
3.4 連續三次失步之后轉入重新捕獲仿真結果及分析
圖8中cyclk是系統時(shí)鐘信號,pnclk是捕獲模塊產(chǎn)生PN碼的PN時(shí)鐘;reset是系統復位信號;sigin是輸入擴頻信號,genzong是跟蹤環(huán)路的使能信號,高電平有效;shibuj是捕獲的啟動(dòng)使能信號,高電平有效;圖中每個(gè)黑色實(shí)線(xiàn)處是一個(gè)PN碼周期的結束處,即兩道黑色實(shí)線(xiàn)之間是一個(gè)PN碼周期。在第三道黑色實(shí)線(xiàn)后genzong信號變?yōu)榈碗娖?,shibuj信號變?yōu)楦唠娖?,即跟蹤環(huán)路終止,捕獲環(huán)路重新啟動(dòng)。
4 結語(yǔ)
本文介紹了直擴系統中PN碼同步捕獲和跟蹤的方法,用VHDL語(yǔ)言完成了電路各個(gè)模塊的編程實(shí)現,在Quartus 8.0中進(jìn)行了仿真,并給出了仿真波形,證明電路工作正確可靠,滿(mǎn)足設計要求。
評論