DS/FH混合擴頻接收機解擴及同步技術(shù)的FPGA實現(xiàn)
相關(guān)累加器完成本地偽碼與接收信號的相關(guān)累加運算,運算得到的結(jié)果送入DSP完成偽碼的捕獲和跟蹤。取偽碼長度為256位,采用半碼片滑動,則一個碼周期完成512次累加運算。如采用串行滑動相關(guān)捕獲方式,則遍歷所有的碼相位所需要的時間為512個碼周期,即捕獲所需要的最長時間為512個PN碼周期。由于可編程邏輯器件的發(fā)展,使得有足夠的硬件資源來完成并行運算。此處采用串/并混合的捕獲方式[6][7],采用8路相關(guān)累加器,每一路分為超前、當(dāng)前、滯后3組,每組相差半個碼片的相位,每一路相差64個半碼片的相位。這樣,只需滑動64個半碼片相位就可以遍歷所有的偽碼相位,完成捕獲所需時間縮短為原來的八分之一。數(shù)據(jù)解調(diào)由另外4組相關(guān)累加器完成。由于發(fā)射端同步偽碼與數(shù)據(jù)偽碼相位嚴格對齊,所以在接收模塊中,完成同步偽碼捕獲跟蹤后,直接將所獲得的相位信息用于數(shù)據(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兩路,分別進行累加運算,完成512次累加運算后由DSP讀取數(shù)據(jù)。I、Q兩路結(jié)構(gòu)完全相同,其中一路的原理圖如圖4所示。
相關(guān)累加器由18位加減法器、鎖存器1和鎖存器2組成,data[7..0]為下變頻后的輸入數(shù)據(jù),PN CODE來自碼發(fā)生器。作為控制端,低電平完成加運算,高電平完成減運算,DP上升沿進行數(shù)據(jù)鎖存,下降沿完成一次累加運算。當(dāng)累加運算完成后,由CLR信號清零并將結(jié)果存入鎖存器2,CLR下降沿有效。鎖存器1輸出OV信號作為溢出標(biāo)志位,鎖存器2輸出累加結(jié)果out[16..0]。輸入與輸出端的最高位為符號位。
1.4 本地碼發(fā)生器及碼移相電路
本地碼發(fā)生器用于產(chǎn)生本地PN碼,從而與接收信號進行相關(guān)運算。由于發(fā)送端采用編碼擴頻調(diào)制方式,接收信號中既有同步PN碼,還有數(shù)據(jù)PN碼,與接收信號相對應(yīng),本地也應(yīng)該產(chǎn)生相應(yīng)的PN碼,用于同步及解調(diào)數(shù)據(jù)。
本地PN碼發(fā)生器全部采用FPGA實現(xiàn),并且設(shè)置了可編程寄存器和外部接口,DSP通過接口可預(yù)置PN碼長度。1024進制計數(shù)器電路用于產(chǎn)生ROM的輸入地址,ROM由FPGA內(nèi)部RAM資源來實現(xiàn),采用ALTERA公司APEX20K200器件。該器件內(nèi)部可編程RAM容量為106496位,完全可以滿足設(shè)計需求。本地PN碼采用半碼片滑動方式,ROM內(nèi)部PN碼也以半碼片方式存儲。如碼長為256,采用半碼片存儲方式后,每一組PN碼需存儲512位數(shù)據(jù),相應(yīng)的ROM有9位地址線驅(qū)動輸出。驅(qū)動時鐘為PN碼時鐘的2倍。在實際設(shè)計時,PN碼發(fā)生器內(nèi)存放了8組PN碼,但只用了五組,一組用于同步,另外四組用于解調(diào)數(shù)據(jù)。ROM輸入地址由1024進制計數(shù)器產(chǎn)生,實際上只需用512進制計數(shù)器即可得到ROM輸入地址??紤]到可擴展性,這里采用了計數(shù)容量最大為1024的可變計數(shù)器。由DSP通過DSP-FPGA接口改寫寄存器值,可以很方便地調(diào)整PN碼的輸出相位。
偽碼移位電路的主要作用是將碼發(fā)生器產(chǎn)生的PN碼進行移位操作,從而得到偽碼的不同相位。捕獲和跟蹤過程共使用了8路24組相關(guān)累加器,每一路分為超前、當(dāng)前、滯后3組,這3組累加器輸入端PN碼相差半個碼片的相位,8路相關(guān)累加器中每相鄰兩路相差64個半碼片。碼發(fā)生器輸出5組PN碼序列(第0組~第4組),分別對應(yīng)同步偽碼及4組數(shù)據(jù)偽碼。5組偽碼均經(jīng)過512級移位寄存器,第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)前通道捕獲,那么此時解調(diào)數(shù)據(jù)用的相關(guān)累加器的PN碼相位就應(yīng)該與第二組相關(guān)累加器當(dāng)前通道的PN碼相位保持一致。數(shù)據(jù)偽碼相位切換的實現(xiàn)是由DSP記憶捕獲通道的相位,然后控制多路選擇開關(guān)選擇該相位。
評論