《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 設(shè)計(jì)應(yīng)用 > 基于FPGA的GPS基帶產(chǎn)生與控制模塊設(shè)計(jì)
基于FPGA的GPS基帶產(chǎn)生與控制模塊設(shè)計(jì)
2017年電子技術(shù)應(yīng)用第6期
左小普1,,楊祖芳2,,潘 偉3,鄭建生1,,3
1.武漢大學(xué) 電子信息學(xué)院,,湖北 武漢430072,;2.武漢工商學(xué)院 信息工程學(xué)院,湖北 武漢430065,; 3.武漢大學(xué)衛(wèi)星導(dǎo)航定位技術(shù)研究中心,,湖北 武漢430079
摘要: 全球定位系統(tǒng)(GPS)基帶信號(hào)可以用于導(dǎo)航定位設(shè)備的研發(fā)、性能測試以及生成式欺騙干擾信號(hào)的產(chǎn)生。針對一種基于現(xiàn)場可編程門陣列(FPGA)的GPS基帶信號(hào)產(chǎn)生與控制模塊進(jìn)行研究,,主要通過硬件電路設(shè)計(jì)和軟件代碼編寫,,利用FPGA生成C/A碼、P碼,,利用直接數(shù)字式頻率合成器(DDS)產(chǎn)生L1,、L2載波等功能,實(shí)現(xiàn)了多路可控增益GPS信號(hào)同時(shí)輸出,。測試結(jié)果表明,,本設(shè)計(jì)輸出增益可調(diào)、輸出頻點(diǎn)可控,,可以為射頻模塊提供多路基帶信號(hào)及控制信號(hào),。
關(guān)鍵詞: FPGA GPS 基帶信號(hào) DDS
中圖分類號(hào): TN409
文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.2017.06.016
中文引用格式: 左小普,楊祖芳,,潘偉,,等. 基于FPGA的GPS基帶產(chǎn)生與控制模塊設(shè)計(jì)[J].電子技術(shù)應(yīng)用,2017,,43(6):64-67.
英文引用格式: Zuo Xiaopu,,Yang Zufang,Pan Wei,,et al. The design and realization of GPS baseband generation and control module based on FPGA[J].Application of Electronic Technique,,2017,43(6):64-67.
The design and realization of GPS baseband generation and control module based on FPGA
Zuo Xiaopu1,,Yang Zufang2,,Pan Wei3,Zheng Jiansheng1,,3
1.School of Electronic Information,,Wuhan University,Wuhan 430072,,China,; 2.Information Engineering College,Wuhan Technology and Business University,,Wuhan 430065,,China; 3.School of Satellite Navigation and Positioning Technology Research Center,,Wuhan University,,Wuhan 430079,China
Abstract: Global Positioning System(GPS) baseband can be used to test the performance of navigation and positioning equipment research and generate deception jamming signal.The design and realization of GPS baseband generation and control module based on field programmable gate array(FPGA) are presented, which includes hardware circuit design and code writing. It realizes multi-channel controllable gain GPS signal output at the same time, generates C/A code and P code by using FPGA, and generates carriers L1,L2 by using direct digital frequency synthesizer(DDS). It shows that the design has the adjustable output gain and the controllable output frequency, and can provide multi-channel the baseband signals and control signals for RF module.
Key words : FPGA,;GPS,;baseband,;DDS

0 引言

    隨著GPS使用范圍日趨廣泛,其安全問題也備受關(guān)注,。信息化作戰(zhàn)情況下,,對敵對目標(biāo)衛(wèi)星導(dǎo)航定位系統(tǒng)進(jìn)行干擾,阻止其有效定位,,成為了重要的作戰(zhàn)手段,。隨著干擾與抗干擾領(lǐng)域的研究,GPS定位系統(tǒng)對抗干擾的要求越來越高,,如何對抗種種人為的和非人為的干擾成為研究熱點(diǎn)。目前研究產(chǎn)生的基帶碼多為C/A碼,,且多為單路輸出,,產(chǎn)生多種偽碼并輸出多路GPS信號(hào)是發(fā)展方向。因此,,本文研究產(chǎn)生多路GPS信號(hào)同時(shí)輸出和利用FPGA生成C/A碼,、P碼。FPGA在硬件系統(tǒng)設(shè)計(jì)中具有很高的靈活性和可靠性,?;鶐Тa的結(jié)構(gòu)是可以預(yù)測的,方便利用FPGA重復(fù)產(chǎn)生并處理,。利用FPGA產(chǎn)生基帶碼,,可以研究基帶碼又可以探究新碼型,降低了系統(tǒng)的復(fù)雜度,,提高了系統(tǒng)的集成度,。

1 系統(tǒng)總體方案

    本文主要包括硬件和軟件兩部分,軟件部分指用Verilog產(chǎn)生基帶碼和控制信號(hào)及C程序控制DDS產(chǎn)生載波,。硬件電路由FPGA,、C8051控制電路和輔助電路組成。由外部向FPGA提供時(shí)鐘信號(hào)和復(fù)位信號(hào),,F(xiàn)PGA用于產(chǎn)生基帶碼,、增益控制信號(hào)及可控放大信號(hào),其他預(yù)留的輸入輸出口留作其他用途,。C8051用于向DDS提供控制信號(hào),,DDS參考時(shí)鐘由外部晶振提供。系統(tǒng)總體設(shè)計(jì)如圖1所示,。

qrs2-t1.gif

    系統(tǒng)分為基帶模塊與射頻調(diào)制模塊兩部分,。基帶模塊生成基帶信號(hào),,經(jīng)調(diào)制模塊調(diào)制得到L1和L2,,其中載波L1的頻率f1為1 575.42 MHz,,載波L2的頻率f2為1 227.60 MHz。每顆GPS衛(wèi)星用兩個(gè)L波段頻率L1和L2發(fā)射載波無線電信號(hào),。

    本文主要介紹基帶模塊,。外部提供215 MHz的時(shí)鐘信號(hào)供給基帶碼發(fā)生器,同時(shí)外部復(fù)位信號(hào)控制基帶碼發(fā)生器,,用于向L1和L2頻點(diǎn)的射頻調(diào)制部分提供C/A碼和P碼以及增益控制信號(hào),。圖1中,1-2表示可以提供一路用于二進(jìn)制相移鍵控調(diào)制(Binary Phase Shift Keying,,BPSK),,也可提供串并轉(zhuǎn)換之后的兩路用于正交相移鍵控調(diào)制(Quadrature Phase Shift Keying,QPSK),。C8051提供控制DDS生成正弦波信號(hào),,經(jīng)倍頻得到L1和L2頻點(diǎn)的載波用于載波調(diào)制。FPGA還提供可控放大信號(hào),。

2 基帶模塊的實(shí)現(xiàn)

2.1 基帶產(chǎn)生模塊的總體設(shè)計(jì)

    基帶產(chǎn)生模塊的原理圖如圖2所示,。由外部時(shí)鐘提供的時(shí)鐘信號(hào)經(jīng)整數(shù)分頻,得到的1.023 MHz時(shí)鐘給C/A碼發(fā)生器,,再經(jīng)L1串并轉(zhuǎn)換得到L1路C/A碼及其IQ兩路輸出,;得到的10.23 MHz時(shí)鐘送到P碼發(fā)生器,一路P碼經(jīng)L1串并轉(zhuǎn)換得到L1路P碼的IQ兩路輸出,;另一路P碼經(jīng)L2串并轉(zhuǎn)換得到L2路P碼的IQ兩路輸出,,C/A碼和P碼也可直接輸出。

qrs2-t2.gif

2.2 分頻模塊

    分頻模塊有兩個(gè):用于提供C/A碼時(shí)鐘的210分頻和P碼時(shí)鐘的21分頻,,分別得到約1.023 MHz和10.23 MHz的時(shí)鐘信號(hào),。

2.3 C/A碼產(chǎn)生模塊

    C/A碼由一個(gè)10級(jí)最長線性反饋移位寄存器(maximum,m)序列對產(chǎn)生,,即一個(gè)C/A碼的長度是210-1=1 023碼片,。C/A碼的時(shí)鐘為1.023 MHz,周期為1 ms[1],。在一個(gè)C/A碼碼片時(shí)間內(nèi),,載波L1重復(fù)1 540周。如圖3所示,,C/A碼發(fā)生器由G1和G2兩個(gè)移位寄存器構(gòu)成,,兩個(gè)移位寄存器的輸出相異或得到C/A碼輸出。X1歷元到來時(shí)兩個(gè)寄存器全部置1,。

qrs2-t3.gif

    本設(shè)計(jì)中使用組合邏輯電路,,輸入信號(hào)有C/A碼時(shí)鐘clk、偽碼sat_PRN_ID,、復(fù)位信號(hào)reset,、C/A碼輸出out,。偽碼號(hào)取21,用Modelsim仿真的結(jié)果如圖4,、圖5所示,。

qrs2-t4.gif

qrs2-t5.gif

    如圖4所示,C/A碼輸出1,,1,,1,1,,1,,0,0,,1,,1,0,,0,0,,0,,0,1,,1,,0,1,,1…,,偽碼為21的C/A碼前十位的8進(jìn)制,表示為1 746,,即二進(jìn)制的1111100110,,C/A碼輸出正確。如圖5所示,,在第1 023個(gè)時(shí)鐘周期之后,, C/A碼輸出恢復(fù)到開始的1111100110,符合C/A碼長度為1 023這個(gè)特征,。因此,,C/A碼發(fā)生器設(shè)計(jì)正確。

2.4 P碼產(chǎn)生模塊

    除C/A碼之外,,P碼是GPS信號(hào)中的另一種偽碼,,它同時(shí)調(diào)制在L1和L2載波信號(hào)上。P碼的周期為7天,,碼率為10.23 MS/s,,碼寬Tp約等于0.1 μs,。加密后的P碼成為Y碼,它只有特定的用戶才可破譯,。

    如圖6所示,,偽隨機(jī)噪聲碼(Pseudo Random Noise,PRN)為i的衛(wèi)星上產(chǎn)生的P碼Pi是序列X1與序列X2i的模2和,。序列X1的生成電路是由2個(gè)十二級(jí)反饋移位寄存器構(gòu)成的,,每個(gè)十二級(jí)反饋移位寄存器各能產(chǎn)生一個(gè)周期為4 095碼片的最長線性反饋移位寄存器(maximum,m)序列,,而這兩個(gè)m序列通過截短,,各自形成周期為4 092碼片的序列X1A和周期長為4 093碼片的序列X1B。截短碼X1A和X1B異或相加,,生成周期為4 092×4 093的長碼,。長碼再經(jīng)過截短,變成周期為1.5 s,、長為15 345 000碼片的序列X1,。

qrs2-t6.gif

    與產(chǎn)生X1序列的過程相類似,另外2個(gè)十二級(jí)反饋移位寄存器最后產(chǎn)生長為15 345 037碼片的序列X1,,而序列X2i是X2的平移等價(jià)碼,。對于PRN i,平移等價(jià)序列X2i是由X2即延時(shí)i個(gè)碼片后得到的,,其中i是1~37的整數(shù),。

    序列X1與X2i異或相加后所得序列的周期長約為38星期的P碼,經(jīng)過截短,,得到周期為一星期長的P碼Pi,。GPS采用了37種不同的平移等價(jià)碼X2i,進(jìn)而獲得37種結(jié)構(gòu)不同,、周期均為一星期的P碼Pi,。GPS星座中的各顆衛(wèi)星產(chǎn)生一個(gè)互不相同的P碼,從而實(shí)現(xiàn)碼分多址[2],。

    P碼發(fā)生模塊包含4個(gè)十二級(jí)反饋移位寄存器X1A,、X1B、X2A,、X2B,,計(jì)數(shù)器暫停恢復(fù)信號(hào)resume1a,、resume1b,、resume2a、resume2b,,計(jì)數(shù)器count1a,、count1b,、count2a、count2b決定其值,。flag1a,、flag1b、flag2a,、flag2b計(jì)數(shù)分別決定4個(gè)寄存器是否復(fù)位,。svndaysrst為一周復(fù)位信號(hào),當(dāng)zcount計(jì)數(shù)達(dá)到403 200時(shí),,svndaysrst置1,,所有計(jì)數(shù)器復(fù)位,svndaysrst復(fù)位與rst復(fù)位的初值一樣,。P碼輸出由X1輸出與X2移位輸出異或得到,,add為延時(shí)使能信號(hào),由flag2a和count2a決定,。

    P碼的仿真主要用于驗(yàn)證P碼的初始狀態(tài)以及寄存器復(fù)位,、計(jì)數(shù)復(fù)位、相移等功能是否實(shí)現(xiàn),,偽碼號(hào)取5,,用Modelsim仿真P碼發(fā)生器的結(jié)果如圖7所示。

qrs2-t7.gif

    根據(jù)仿真圖7,,在復(fù)位信號(hào)rst為1時(shí)載入初值,復(fù)位信號(hào)變?yōu)?后第一個(gè)時(shí)鐘上升沿到來,,X1A輸出0,,0,1,,0,,0,1,,0,,0,1,,0,,0,0,,X1B輸出0,,1,0,,1,,0,,1,0,,1,,0,1,,0,,0,X2A輸出1,,0,,0,1,,0,,0,1,,0,,0,1,,0,,1,X2B輸出0,,1,,0,1,,0,,1,0,,1,,0,1,,0,,0;P碼輸出1,,0,,0,0,,1,,1,1,1,,1,,1,1,,1……,,前12位轉(zhuǎn)換為8進(jìn)制是4 377,因此P碼的初始輸出正確,。

    圖8是P碼的計(jì)數(shù)復(fù)位仿真,,寄存器X1A和X2A在4 092個(gè)基碼之后復(fù)位,寄存器X1B和X2B在4 093個(gè)基碼后復(fù)位,,復(fù)位后X1A,、X1B、X2A,、X2B輸出初始值,,與此同時(shí)代表其循環(huán)次數(shù)的計(jì)數(shù)器加1。仿真圖完全符合這一特征,,因此P碼的計(jì)數(shù)復(fù)位正確,。

qrs2-t8.gif

    X1B寄存器在循環(huán)了4 093個(gè)X1B后暫停,直到X1A循環(huán)了3 750個(gè)X1A后才恢復(fù)移位,。X2B寄存器與之類似,,但是在X1A寄存器完成3 750個(gè)循環(huán)之后,仍維持37個(gè)基碼時(shí)間不動(dòng),,X2A寄存器在3 750個(gè)循環(huán)之后也保持37個(gè)基碼時(shí)間不動(dòng),,之后由一周復(fù)位信號(hào)使其恢復(fù),如圖9所示,。

qrs2-t9.gif

    由圖9可以看出,,在X1B暫停時(shí),其輸出保持不變,,暫停時(shí)刻flag1aout為3 749,恢復(fù)時(shí)flag1aout為4 092,,相隔343個(gè)基碼時(shí)間,。X2B暫停時(shí),其輸出亦保持不變,,flag1bout恢復(fù)計(jì)數(shù)后,,從1計(jì)數(shù)到37,X2A和X2B正好開始移位輸出,,符合P碼的原理,。當(dāng)X1A循環(huán)3 750個(gè)循環(huán)后zcountout加1,當(dāng)zcountout為403 200后復(fù)位。綜上所述,,P碼發(fā)生器的設(shè)計(jì)正確,。

    對于上述P碼產(chǎn)生程序,PRN號(hào)確定時(shí),,輸出的P碼由4個(gè)寄存器的值以及計(jì)數(shù)器決定,,如果知道這些值并作為初值輸入到程序中,就可以輸出任意時(shí)刻的P碼,。

3 控制模塊的實(shí)現(xiàn)

3.1 載波發(fā)生模塊

    載波發(fā)生器采用ADI公司的集成DDS芯片AD9956,,通過對頻率控制字(Frequency Tuning Word,F(xiàn)TW)和分頻字R的控制,,能夠輸出特定的頻率值[3],。

    輸出信號(hào)頻率與頻率控制字關(guān)系如下:

    qrs2-gs1.gif

式中,fo表示輸出信號(hào)的頻率,;FTW表示48位的控制字,,取值范圍是0~247,R表示分頻系數(shù),,可取1,、2、4,、8,;fREFCLK表示輸入時(shí)鐘390 MHz。

3.2 載波發(fā)生控制模塊

    載波發(fā)生控制模塊采用C8051F,,向DDS提供14個(gè)控制接口,,用于對DDS提供控制信號(hào)的調(diào)諧數(shù)據(jù)。根據(jù)后續(xù)調(diào)制電路的要求,,需要獲得70 MHz的信號(hào)用于得到L1頻段的載波,,60 MHz的信號(hào)用于得到L2頻段的載波,因此需分別對產(chǎn)生L1頻段和L2頻段的DDS進(jìn)行控制,。

3.3 增益控制模塊

    對載波及已調(diào)信號(hào)增益的控制,,主要由FPGA提供增益控制信號(hào)實(shí)現(xiàn),用芯片HMC468LP3和HMC273MS10G配合實(shí)現(xiàn),。只需對電平控制就可實(shí)現(xiàn)增益的改變,。

4 系統(tǒng)測試與分析

4.1 測試儀器與設(shè)備

    信號(hào)源采用Rohde & Schware SMB100A Signal Generator,頻率范圍為9 kHz~6 GHz,。頻譜儀采用Rohde & Schware FSC6.Spectrum,,頻率范圍為9 kHz~6 GHz。

4.2 C/A碼頻譜分析

    在頻域,,一個(gè)碼速率為1.023 MHz的隨機(jī)序列的功率譜函數(shù)在1.023 MHz的整數(shù)倍處為0,。C/A碼雖然不是完全隨機(jī)的,但是其功率譜與隨機(jī)序列相似[4]

    圖10為調(diào)制之后的頻譜,,載波頻段L1為1 575.42 MHz,,第一個(gè)零點(diǎn)M2的頻率為1 576.43 MHz,與中心頻率L2相差約1.023 MHz,??梢钥闯觯谝桓卑晗鄬τ谥靼贻敵龉β仕p約15 dBm,,與實(shí)際的GPS信號(hào)基本符合,。

qrs2-t10.gif

4.3 P碼頻譜分析

    如圖11所示,調(diào)制之后的頻譜中心頻率為1 575.42 MHz(M2點(diǎn)處),,之后的第一個(gè)零點(diǎn)M1為1 585.65 MHz,,相隔10.23 MHz。如圖12所示,,調(diào)制之后的頻譜中心頻率為1 227.6 MHz,,之后的第一個(gè)零點(diǎn)M1為1 237.83 MHz,相隔10.23 MHz,,達(dá)到要求,。

qrs2-t11.gif

qrs2-t12.gif

5 結(jié)論

    GPS基帶信號(hào)可以通過調(diào)制而依附在正弦形式的載波上,然后衛(wèi)星將調(diào)制后的載波信號(hào)播發(fā)出去,。因此,,GPS基帶信號(hào)的研究對于導(dǎo)航定位設(shè)備的研發(fā)、檢測及生成式干擾信號(hào)的研究具有重要的應(yīng)用價(jià)值,。本文提出的基于FPGA產(chǎn)生的GPS基帶信號(hào)具有輸出增益可調(diào),、輸出頻點(diǎn)可控,可以為射頻模塊提供多路基帶信號(hào)及控制信號(hào)等特點(diǎn),。

參考文獻(xiàn)

[1] 王偉權(quán),,劉昌孝.用FPGA實(shí)現(xiàn)GPS的C/A碼發(fā)生器[J].桂林電子科技大學(xué)學(xué)報(bào),2006,,26(5):347-350.

[2] 謝鋼.GPS原理與接收機(jī)設(shè)計(jì)[M].北京:電子工業(yè)出版社,,2009.

[3] Rochester Electronics.AD9956 data sheet[Z].2013.

[4] 瞿鐵錨.基于FPGA的GPS星座模擬器的研究與開發(fā)[D].南京:南京航空航天大學(xué),2007.

[5] 王立賓,,賀宏.GPS M碼,、C/A碼和P碼性能比較研究[J].測控遙感與導(dǎo)航定位,2008,,38(4):34-36.



作者信息:

左小普1,楊祖芳2,,潘  偉3,,鄭建生1,3

(1.武漢大學(xué) 電子信息學(xué)院,湖北 武漢430072,;2.武漢工商學(xué)院 信息工程學(xué)院,,湖北 武漢430065;

3.武漢大學(xué)衛(wèi)星導(dǎo)航定位技術(shù)研究中心,,湖北 武漢430079)

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載。