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