《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 可編程邏輯 > 設(shè)計(jì)應(yīng)用 > DS/FH混合擴(kuò)頻接收機(jī)解擴(kuò)及同步技術(shù)的FPGA實(shí)現(xiàn)
DS/FH混合擴(kuò)頻接收機(jī)解擴(kuò)及同步技術(shù)的FPGA實(shí)現(xiàn)
劉繼承 邵定蓉 李暑堅(jiān) 朱進(jìn)洲
摘要: 研究采用編碼擴(kuò)頻的DS/FH混合擴(kuò)頻接收機(jī)的核心模塊——同步及解擴(kuò)部分的FPGA實(shí)現(xiàn)結(jié)構(gòu),。將多種專用芯片的功能集成在一片大規(guī)模PPCA芯片上,,實(shí)現(xiàn)了接收機(jī)的高度集成化、小型化,。偽碼的串并混合捕獲算法及跳頻同步算法等均采用硬件完成,,提高了捕獲速度。實(shí)驗(yàn)結(jié)果證明該方案是正確可行的,。
Abstract:
Key words :

摘  要:研究采用編碼擴(kuò)頻的DS/FH混合擴(kuò)頻接收機(jī)的核心模塊——同步" title="同步">同步及解擴(kuò)" title="解擴(kuò)">解擴(kuò)部分的FPGA實(shí)現(xiàn)結(jié)構(gòu),。將多種專用芯片的功能集成在一片大規(guī)模PPCA芯片上,實(shí)現(xiàn)了接收機(jī)的高度集成化,、小型化,。偽碼的串并混合捕獲算法及跳頻同步算法等均采用硬件完成,提高了捕獲速度,。實(shí)驗(yàn)結(jié)果證明該方案是正確可行的,。

關(guān)鍵詞:DS/FH接收機(jī)" title="DS/FH接收機(jī)">DS/FH接收機(jī)  解擴(kuò)  同步  PPCA實(shí)現(xiàn)

    DS/FH混合擴(kuò)頻通信系統(tǒng)中,需要數(shù)字下變頻器,、相關(guān)累加器及碼發(fā)生器等完成下變頻,、相關(guān)解擴(kuò)等運(yùn)算。通常采用專用芯片來(lái)完成這些功能,,導(dǎo)致系統(tǒng)體積增大,,不便于小型化。現(xiàn)代的EDA(電子設(shè)計(jì)自動(dòng)化)工具已突破了早期僅能進(jìn)行PCB版圖設(shè)計(jì)或電路功能模擬,、純軟件范圍的局限,,以最終實(shí)現(xiàn)可靠的硬件系統(tǒng)為目標(biāo),配備了系統(tǒng)自動(dòng)設(shè)計(jì)的全部工具,,如各種常用的硬件描述語(yǔ)言平臺(tái)VHDL,、Verilog HDL、AHDL等,;配置了多種能兼容和混合使用的邏輯描述輸入工具,,如硬件描述語(yǔ)言文本輸入法(其中包括布爾方程描述方式、原理圖描述方式,、狀態(tài)圖描述方式等)以及原理圖輸入法,、波形輸入法等;同時(shí)還配置了高性能的邏輯綜合、優(yōu)化和仿真模擬工具,。FPGA是在PAL,、GAl等邏輯器件的基礎(chǔ)上發(fā)展起來(lái)的。與PAL,、GAL等相比較,F(xiàn)PGA的規(guī)模大,,更適合于時(shí)序,、組合等邏輯電路應(yīng)用場(chǎng)合,它可以替代幾十甚至上百塊通用IC芯片,。FPGA具有可編程性和設(shè)計(jì)方案容易改動(dòng)等特點(diǎn),,芯片內(nèi)部硬件連接關(guān)系的描述可以存放在下載芯片中,因而在可編程門(mén)陣列芯片及外圍電路保持不動(dòng)的情況下,,更換下載芯片,,就能實(shí)現(xiàn)新的功能。FPGA芯片及其開(kāi)發(fā)系統(tǒng)問(wèn)世不久,,就受到世界范圍內(nèi)電子工程設(shè)計(jì)人員的廣泛關(guān)注和普遍歡迎[1~5],。本文主要討論一種基于編碼擴(kuò)頻的DS/FH混合擴(kuò)頻接收機(jī)解擴(kuò)及同步過(guò)程的實(shí)現(xiàn)結(jié)構(gòu),采用ALTERA公司的APEX20K200RC240—1器件及其開(kāi)發(fā)平臺(tái)QuartusⅡ?qū)崿F(xiàn)混合擴(kuò)頻接收機(jī)的核心——解擴(kuò)及同步模塊,。

1混合擴(kuò)頻接收機(jī)解擴(kuò)模塊的FPAG設(shè)計(jì) 

解擴(kuò)模塊是混合擴(kuò)頻接收機(jī)的核心,。該模塊實(shí)現(xiàn)對(duì)接收信號(hào)的解擴(kuò)處理,主要包括數(shù)字下變頻器,、數(shù)控振蕩器(NCO),、碼發(fā)生器、相關(guān)累加器和偽碼移相電路等,,通常各模塊采用專用芯片,。利用FPGA將這些功能集成在一塊芯片中,大大縮小了接收機(jī)的體積,,便于實(shí)現(xiàn)系統(tǒng)的小型化和集成化,。下面分別介紹該模塊各部分的FPGA實(shí)現(xiàn)結(jié)構(gòu)。  

1.1數(shù)控振蕩器(NGO) 

數(shù)控振蕩器是解擴(kuò)模塊中的重要組成部分,,主要用于為碼發(fā)生器提供精確的時(shí)鐘信號(hào),,從而實(shí)現(xiàn)對(duì)接收信號(hào)的捕獲和跟蹤。碼發(fā)生器由相位累加器和查找表構(gòu)成,。若使用字長(zhǎng)為40位寬的累加器,,對(duì)于某一頻率控制字A,輸出頻率fout與輸入頻率控制字A的關(guān)系為:

    其中,,fclk為系統(tǒng)時(shí)鐘,。只要改變控制字A的大小,就可以控制輸出頻率fout。fout變化的最小步長(zhǎng)△f由累加器的數(shù)據(jù)寬度決定,。若數(shù)據(jù)寬度取40位,,則:

   利用上述原理,可以通過(guò)精確分頻得到所需頻率,。原理圖如圖1所示,。

圖1中頻率控制字A由DSP寫(xiě)入??紤]到FPGA內(nèi)部存儲(chǔ)資源限制,,取40位相位累加值result[39..0]的高八位作為查找表LUT(100k-up table)的輸入,查找表由ROM構(gòu)成,,存儲(chǔ)各相位所對(duì)應(yīng)采樣值,。當(dāng)查找表輸入端為某一相位phase時(shí),則輸出對(duì)應(yīng)采樣值,。若輸出數(shù)據(jù)寬度為6位,,輸出信號(hào)格式為余弦信號(hào),則LUT輸出為[6]

    若取ROM的并行6位out[5..0]作為輸出,,則輸出信號(hào)為每周期采樣256點(diǎn)的數(shù)字化余弦信號(hào),;如果取最高位out[5]作為輸出,則輸出為系統(tǒng)時(shí)鐘的分頻信號(hào),。

1.2數(shù)字下變頻器 

數(shù)字下變頻器將A/D采樣得到的中頻信號(hào)進(jìn)行下變頻處理,,去除中頻,得到基帶信號(hào),。利用本地NCO產(chǎn)生與輸人中頻信號(hào)頻率相同的正弦和余弦信號(hào),,并與輸入信號(hào)進(jìn)行復(fù)乘法運(yùn)算,然后對(duì)運(yùn)算結(jié)果做低通濾波,,即可完成對(duì)中頻信號(hào)的下變頻操作,。正交采樣模式下,兩路A/D轉(zhuǎn)換器提供正交輸入IIN及QIN,,數(shù)字下變頻器的復(fù)乘法器輸出IOUT,、QOUT為:

    本振信號(hào)、復(fù)乘法器,、低通濾波器均采用數(shù)字化設(shè)計(jì),。數(shù)字下變頻器采用ALTERA公司的APEX20K200RC240-1器件。該器件典型門(mén)數(shù)為20萬(wàn),,有豐富的邏輯單元和RAM單元,,開(kāi)發(fā)平臺(tái)Quartus II自帶的宏模塊,如lpm_muh(乘法器宏模塊),、lpm_rom(ROM宏模塊),、lpm_adlsub(加法器宏模塊)等,給設(shè)計(jì)帶來(lái)了極大的方便。數(shù)字下變頻器原理圖如圖2所示,。

    圖2中的數(shù)字表示相應(yīng)模塊的數(shù)據(jù)寬度,。濾波模塊是1個(gè)二階的低通濾波器,濾除混頻后的高頻分量,。在一些專用的數(shù)字下變頻器件如STEL-2130中,,濾波器的階數(shù)是可編程的,可以根據(jù)需要設(shè)置不同的階數(shù),,從而得到不同的濾波效果,。考慮到FPGA的資源問(wèn)題,,設(shè)置濾波器的階數(shù)為固定的二階。濾波器輸入x[n]與輸出y[n]關(guān)系為:

    y[n]=x[n]+x[n-1]

    y[n-1]=x[n-2]+x[n-3]

    該低通濾波器將相鄰的兩個(gè)輸入數(shù)據(jù)相加后作為輸出,,即每?jī)蓚€(gè)輸入數(shù)據(jù)對(duì)應(yīng)一個(gè)輸出數(shù)據(jù),,輸人數(shù)據(jù)時(shí)鐘節(jié)拍為輸出數(shù)據(jù)時(shí)鐘節(jié)拍的2倍。

    經(jīng)過(guò)低通濾波后的數(shù)據(jù)經(jīng)過(guò)滑動(dòng)窗處理,,滑動(dòng)窗對(duì)輸人數(shù)據(jù)進(jìn)行選擇輸出,,用來(lái)動(dòng)態(tài)調(diào)整相關(guān)峰的大小。在捕獲過(guò)程中觀察相關(guān)峰值時(shí),,通過(guò)調(diào)整滑動(dòng)窗口,,可以獲得不同幅度的相關(guān)峰值。選擇控制端由DSP寫(xiě)控制字來(lái)決定,,結(jié)構(gòu)如圖3所示,。滑動(dòng)窗控制邏輯關(guān)系為:

符號(hào)擴(kuò)展是為了與后面的相關(guān)累加器數(shù)據(jù)寬度保持一致,,符號(hào)位擴(kuò)展時(shí)需與輸人數(shù)據(jù)最高位的符號(hào)保持一致,。

1.3相關(guān)累加器 

相關(guān)累加器完成本地偽碼與接收信號(hào)的相關(guān)累加運(yùn)算,運(yùn)算得到的結(jié)果送人DSP完成偽碼的捕獲和跟蹤,。取偽碼長(zhǎng)度為256位,,采用半碼片滑動(dòng),則一個(gè)碼周期完成512次累加運(yùn)算,。如采用串行滑動(dòng)相關(guān)捕獲方式,,則遍歷所有的碼相位所需要的時(shí)間為512個(gè)碼周期,即捕獲所需要的最長(zhǎng)時(shí)間為512個(gè)PN碼周期,。由于可編程邏輯器件的發(fā)展,,使得有足夠的硬件資源來(lái)完成并行運(yùn)算。此處采用串/并混合的捕獲方式[6][7],,采用8路相關(guān)累加器,,每一路分為超前、當(dāng)前、滯后3組,,每組相差半個(gè)碼片的相位,,每一路相差64個(gè)半碼片的相位。這樣,,只需滑動(dòng)64個(gè)半碼片相位就可以遍歷所有的偽碼相位,,完成捕獲所需時(shí)間縮短為原來(lái)的八分之一。數(shù)據(jù)解調(diào)由另外4組相關(guān)累加器完成,。由于發(fā)射端同步偽碼與數(shù)據(jù)偽碼相位嚴(yán)格對(duì)齊,,所以在接收模塊中,完成同步偽碼捕獲跟蹤后,,直接將所獲得的相位信息用于據(jù)解調(diào)相關(guān)器,,即可正確解調(diào)數(shù)據(jù)。

同步偽碼的跟蹤采用超前一滯后延遲鎖相環(huán)路(DPLL),,每一路相關(guān)器包括3組累加器,。捕獲跟蹤及數(shù)據(jù)解調(diào)共使用28組相關(guān)累加器,每一組相關(guān)累加器結(jié)構(gòu)都是完全一樣的,,均分為I,、Q兩路,分別進(jìn)行累加運(yùn)算,,完成512次累加運(yùn)算后由DSP讀取數(shù)據(jù),。I、Q兩路結(jié)構(gòu)完全相同,,其中一路的原理圖如圖4所示,。

    相關(guān)累加器由18位加減法器、鎖存器1和鎖存器2組成,,data[7..0]為下變頻后的輸人數(shù)據(jù),,PN CODE來(lái)自碼發(fā)生器。作為控制端,,低電平完成加運(yùn)算,,高電平完成減運(yùn)算,DP上升沿進(jìn)行數(shù)據(jù)鎖存,,下降沿完成一次累加運(yùn)算,。當(dāng)累加運(yùn)算完成后,由CLR信號(hào)清零并將結(jié)果存人鎖存器2,,CLR下降沿有效,。鎖存器1輸出OV信號(hào)作為溢出標(biāo)志位,鎖存器2輸出累加結(jié)果out[l6..0],。輸入與輸出端的最高位為符號(hào)位,。

1.4本地碼發(fā)生器及碼移相電路 

    本地碼發(fā)生器用于產(chǎn)生本地PN碼,,從而與接收信號(hào)進(jìn)行相關(guān)運(yùn)算。由于發(fā)送端采用編碼擴(kuò)頻調(diào)制方式,,接收信號(hào)中既有同步PN碼,,還有數(shù)據(jù)PN碼,與接收信號(hào)相對(duì)應(yīng),,本地也應(yīng)該產(chǎn)生相應(yīng)的PN碼,,用于同步及解調(diào)數(shù)據(jù)。

    本地PN碼發(fā)生器全部采用FPGA實(shí)現(xiàn),,并且設(shè)置了可編程寄存器和外部接口,,DSP通過(guò)接口可預(yù)置PN碼長(zhǎng)度。1024進(jìn)制計(jì)數(shù)器電路用于產(chǎn)生ROM的輸入地址,,ROM由FPGA內(nèi)部RAM資源來(lái)實(shí)現(xiàn),,采用ALTERA公司APEX20K200器件。該器件內(nèi)部可編程RAM容量為106496位,,完全可以滿足設(shè)計(jì)需求,。本地PN碼采用半碼片滑動(dòng)方式,ROM內(nèi)部PN碼也以半碼片方式存儲(chǔ),。如碼長(zhǎng)為256,采用半碼片存儲(chǔ)方式后,,每一組PN碼需存儲(chǔ)512位數(shù)據(jù),,相應(yīng)的ROM有9位地址線驅(qū)動(dòng)輸出。驅(qū)動(dòng)時(shí)鐘為PN碼時(shí)鐘的2倍,。在實(shí)際設(shè)計(jì)時(shí),,PN碼發(fā)生器內(nèi)存放了8組PN碼,但只用了五組,,一組用于同步,,另外四組用于解調(diào)數(shù)據(jù)。ROM輸人地址由1024進(jìn)制計(jì)數(shù)器產(chǎn)生,,實(shí)際上只需用512進(jìn)制計(jì)數(shù)器即可得到ROM輸入地址,。考慮到可擴(kuò)展性,,這里采用了計(jì)數(shù)容量最大為1024的可變計(jì)數(shù)器,。由DSP通過(guò)DSP-FPGA接口改寫(xiě)寄存器值,可以很方便地調(diào)整PN碼的輸出相位,。

    偽碼移位電路的主要作用是將碼發(fā)生器產(chǎn)生的PN碼進(jìn)行移位操作,,從而得到偽碼的不同相位。捕獲和跟蹤過(guò)程共使用了8路24組相關(guān)累加器,,每一路分為超前,、當(dāng)前,、滯后3組,這3組累加器輸入端PN碼相差半個(gè)碼片的相位,,8路相關(guān)累加器中每相鄰兩路相差64個(gè)半碼片,。碼發(fā)生器輸出5組PN碼序列(第0組—第4組),分別對(duì)應(yīng)同步偽碼及4組數(shù)據(jù)偽碼,。5組偽碼均經(jīng)過(guò)512級(jí)移位寄存器,,第0組PN碼作為同步碼,取其0,、1,、2相位作為第一路的超前、當(dāng)前,、滯后3組相關(guān)累加器的輸入,;64、65,、66相位作為第二路的超前,、當(dāng)前、滯

后3組相關(guān)累加器的輸入,,其余各路依此類推,。當(dāng)完成捕獲后,需要將捕獲所得的同步PN相位切換到數(shù)據(jù)解調(diào)相關(guān)累加器中,。例如,,假設(shè)在第二組相關(guān)累加器的當(dāng)前通道捕獲,那么此時(shí)解調(diào)數(shù)據(jù)用的相關(guān)累加器的PN碼相位就應(yīng)該與第二組相關(guān)累加器當(dāng)前通道的PN碼相位

保持一致,。數(shù)據(jù)偽碼相位切換的實(shí)現(xiàn)是由DSP記憶捕獲通道的相位,,然后控制多路選擇開(kāi)關(guān)選擇該相位。

2  同步模塊的FPGA實(shí)現(xiàn) 

同步模塊由位同步及幀同步電路構(gòu)成,,主要實(shí)現(xiàn)對(duì)信息數(shù)據(jù)的檢測(cè)和提取,,并識(shí)別一幀信息數(shù)據(jù)的幀頭位置,實(shí)現(xiàn)跳頻圖案的同步,。跳頻圖案的同步采用等待搜索同步法,,開(kāi)始時(shí)接收端頻率合成器停留在某一單頻點(diǎn)fi’,等待發(fā)射機(jī)的頻率fi,,當(dāng)發(fā)射機(jī)的頻率跳變?yōu)閒i時(shí),,接收端本地的頻率fi’上,與發(fā)送的頻率fi混頻后,,輸出中頻fIF,。DSP完成解擴(kuò)解調(diào)運(yùn)算后,得到的串行數(shù)據(jù)流送人位同步和幀同步電路,,從數(shù)據(jù)流中提取出特征字,,就可以獲得一幀完整的數(shù)據(jù),,從而確定幀頭的位置,即頻率轉(zhuǎn)換時(shí)刻,,由此控制接收端頻率合成器與發(fā)送端頻率合成器同步跳變,,實(shí)現(xiàn)跳頻圖案的同步。由于采用編碼擴(kuò)頻調(diào)制方式,,發(fā)送端每?jī)晌恍畔⒈忍卦谝粋€(gè)PN碼周期被編碼為4種PN碼中的一種,。所以接收端在每一個(gè)PN碼周期,對(duì)4組數(shù)據(jù)相關(guān)累加器的累加結(jié)果進(jìn)行最大值比較,,然后譯碼成相應(yīng)的信息數(shù)據(jù),。信息數(shù)據(jù)送到同步電路,進(jìn)行巴克碼匹配相關(guān),,提取有效的信息位,,并控制跳頻時(shí)序完成跳頻同步。同步模塊原理如圖5所示,。

在每一個(gè)PN碼周期,,4組數(shù)據(jù)解調(diào)相關(guān)累加器解調(diào)出2bit信息數(shù)據(jù)。2bit信息數(shù)據(jù)以9.6kHz的速率送到同步電路,。同步電路首先將信息數(shù)據(jù)進(jìn)行并串轉(zhuǎn)換,,由9.6kHz、2bit的數(shù)據(jù)流變換為19.2kHz,、lbit的數(shù)據(jù)流,,變換后的數(shù)據(jù)流再經(jīng)過(guò)串并變換,得到19.2kHz,、32bit的并行數(shù)據(jù)流。根據(jù)信號(hào)格式,,每一幀數(shù)據(jù)為32bit,,相應(yīng)的13位巴克碼在一幀數(shù)據(jù)中的位置固定不變,所以提取每幀數(shù)據(jù)中相應(yīng)位置上的13位數(shù)據(jù)比特與本地巴克碼進(jìn)行相關(guān)匹配運(yùn)算,,結(jié)果與門(mén)限值比較,,如果符合門(mén)限設(shè)置,即有中斷輸出,,通知外部設(shè)備讀取相應(yīng)數(shù)據(jù),。

3實(shí)驗(yàn)結(jié)果 

    系統(tǒng)技術(shù)指標(biāo)為:信息數(shù)據(jù)速率4.8kbps,比特率19.2kbps,。跳頻速率600hop/s,,20個(gè)跳頻點(diǎn),跳頻帶寬68MHz,,每跳32bit擴(kuò)頻碼周期為256,,碼速率為4.9152MHz,。用TEKTRONIX 2221A數(shù)字存儲(chǔ)示波器觀測(cè)實(shí)驗(yàn)結(jié)果。圖6-9為FPGA各測(cè)試點(diǎn)的測(cè)試結(jié)果,。

圖6中第一組波形是256碼長(zhǎng)本地接收同步偽碼流,,第二組為跳頻幀同步信號(hào),該信號(hào)對(duì)應(yīng)的偽碼相位即為解擴(kuò),、跳頻同步時(shí)的相位,。圖7第一組波形為接收數(shù)據(jù)流,第二組波形為發(fā)射數(shù)據(jù)流,,發(fā)射數(shù)據(jù)幀格式為00000000011111001101010000000000,,幀同步碼為13位巴克碼1111100110101,8位信息數(shù)據(jù)為00000000,。由圖7可以看出接收端數(shù)據(jù)與發(fā)射端相同,,但滯后于發(fā)射端,這是由于傳輸時(shí)延造成的,。圖8第一組波形為接收串行數(shù)據(jù),,第二組為跳頻幀同步信號(hào),該信號(hào)下降沿對(duì)應(yīng)于一幀數(shù)據(jù)的起始,,控制頻率合成器進(jìn)行頻率轉(zhuǎn)換,。圖9第一組波形為發(fā)射跳頻幀信號(hào),第二組為接收幀同步信號(hào),,接受幀信號(hào)上升沿與發(fā)射跳頻幀信號(hào)的下降沿對(duì)齊,,信號(hào)寬度大于發(fā)射端信號(hào)。這是因?yàn)榭刂祁l率合成器進(jìn)行頻率轉(zhuǎn)換的updata信號(hào)需要一定寬度,。

    解擴(kuò)及同步是DS/FH混合擴(kuò)頻接收機(jī)正確數(shù)據(jù)解調(diào)的關(guān)鍵,,采用FPGA設(shè)計(jì)實(shí)現(xiàn)了多片專用芯片的功能,大大縮小了接收機(jī)體積,,便于系統(tǒng)實(shí)現(xiàn)小型化,、集成化。捕獲及跳頻同步等算法采用硬件實(shí)現(xiàn),,加快了捕獲跟蹤速度,。FPGA的可編程性使電路的設(shè)計(jì)更具靈活性并使系統(tǒng)具有“軟”接收機(jī)的特點(diǎn)。實(shí)驗(yàn)結(jié)果表明FPGA系統(tǒng)設(shè)計(jì)是正確可行的,。

參考文獻(xiàn) 

1侯伯亭,,顧新.VHDL硬件描述語(yǔ)言與數(shù)字邏輯電路設(shè)計(jì).西安:西安電子科技大學(xué)出版社,1999

2宋萬(wàn)杰,,羅豐,,吳順君.CPLD技術(shù)及其應(yīng)用.西安:西安電子科技大學(xué)出版社,1999

3潘松,,王國(guó)棟.VHDL實(shí)用教程.成都:電子科技大學(xué)出版社,,2000

4常青,,陳輝煌.可編程專用集成電路及其應(yīng)用與設(shè)計(jì)實(shí)踐.北京:國(guó)防工業(yè)出版社,1997

5王志華,,鄧仰東.?dāng)?shù)字集成系統(tǒng)的結(jié)構(gòu)化設(shè)計(jì)與高層次綜合.北京:清華大學(xué)出版社,,2000

6朱進(jìn)洲.直接序列/跳頻混合擴(kuò)頻系統(tǒng)信號(hào)快速捕獲與同步技術(shù)的研究.北京航空航天大學(xué)碩士論文,2002.3

7朱近康.?dāng)U展頻譜通信及其應(yīng)用.合肥:中國(guó)科技大學(xué)出版社,,1993

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