王瀚雪, 張赤軍
(長春理工大學電子信息工程學院,吉林長春 130022)
FPGA的M序列編碼/解碼器
王瀚雪, 張赤軍
(長春理工大學電子信息工程學院,吉林長春 130022)
首先介紹擴頻原理,然后分析了M序列的數(shù)學特性以及M序列在擴頻應用中的局限性。探討了應用M序列的擴頻通信發(fā)射端和接收端電路的硬件實現(xiàn)。
FPGA;M序列;擴頻通信
有關擴頻通信技術的觀點是在1941年由好萊塢女演員Hedy Lamarr和鋼琴家George Antheil提出的?;趯︳~雷控制的安全無線通信的思路,他們申請了美國專利#2.292.387。不幸的是,當時該技術并沒有引起美國軍方的重視,直到20世紀80年代才引起關注,將它用于敵對環(huán)境中的無線通信系統(tǒng)。
擴頻通信技術解決了短距離數(shù)據(jù)收發(fā)信機,如衛(wèi)星定位系統(tǒng)(GPS)、3G移動通信系統(tǒng)、WLAN(IEEE802.11a,IEEE802.11b,IEE802.11g)和藍牙技術等應用的關鍵問題。擴頻技術也為提高無線電頻譜的利用率(無線電頻譜是有限的,因此也是一種昂貴的資源)提供幫助[1-2]。
M序列是對最長線性反饋移位寄存器序列的簡稱,它是一種由帶線性反饋的移位寄存器所產(chǎn)生的序列,并且具有最長周期。一般情況下,用于產(chǎn)生M序列的n級線性反饋移位寄存器的結構如圖1所示。
圖1 M序列的n級線性反饋移位寄存器
圖中的a0作為輸出信號所得到的就是所需要的M序列,可以看出,一個完整的n級M序列是由一個相應的線性反饋邏輯表達式來得到的:
將左邊的an移到等號右邊可以寫成為:
為了便于計算,通常將上式與一個多項式項(即本原多項式)對應起來,以便得到M序列:
基于不同級的線性反饋邏輯表達式,可以得到不同長度的M序列的本原多項式,見表1。
表1 M序列本原多項式
從表1可以查到,5級M序列所對應的本原多項式為x5+x2+1,從而得到其線性反饋邏輯表達式為a4=a3⊕a0,更進一步得到下面的M序列產(chǎn)生的結構圖,如圖2所示。
圖2 M序列產(chǎn)生結構圖
可以看出,在這里只需要設定好a4到a0初始值(不能為00000),就能夠得到一組5級31位的M序列[3-6]。
擴頻解擴系統(tǒng)設計的框圖如圖3所示。
各個部分的原理和作用如下所述:
1)同步頭發(fā)生器。在原始信息序列中插入用于M序列捕獲的“11111111110”序列,并在每512個信息序列之前插入0000幀同步頭;解同步模塊功能與之相反;
2)漢明編碼解碼器完成漢明(7,4)碼得編解碼;
3)擴頻器。擴頻器通過漢明編碼后的序列與M序列就異或即可;
4)信道模型。信道模型通過對擴頻序列加上噪聲來實現(xiàn),以模擬加性信道;
5)M序列同步器。該模塊通過“11111111110”序列完成發(fā)送端M序列的捕獲;
6)解擴器。為了實現(xiàn)解擴,以周期為31的M序列為例,且每個信息碼元對應一個M序列周期,即信息碼元周期為M序列碼元周期的31倍。
我們發(fā)現(xiàn):如果信息碼元為1,那么該碼元經(jīng)過擴頻后變成一個周期的M序列,如果信息碼元為0,那么該碼元經(jīng)過擴頻后變成一個周期的負M序列。故每個信息碼元的解擴可通過如下方法完成:以31個M序列碼元周期為一個循環(huán),將接收擴頻信號與同步M序列的31個符號位依次相比,來決定累加器是加1還是減1。一般地,當符號相同時,累加器加1,當符號位不同時,累加器減1。每完成31個次累加后,將最終得到的累加值與閥值比較,如果累加值大于閥值,則判斷發(fā)送信息為1,否則為0。不失一般地,我們選取該閾值為50,以保證最后累加器的值為正數(shù),方便硬件電路的設計。此外,每完成一個信息位的解擴需將累加器重置為初始值[7-8]。
編碼端的實現(xiàn):擴頻系統(tǒng)發(fā)送端包括同步頭發(fā)生器、漢明編碼器和擴頻器。
此模塊的基本功能是將待調信號與M序列的每一位進行異或,達到擴頻的目的。其中,設計了一個5級的移位寄存器用于產(chǎn)生M序列。其它功能包括:
1)在發(fā)送數(shù)據(jù)之前先發(fā)11111111110用于給接收端捕捉同步頭。
2)每發(fā)送512個字節(jié),就發(fā)送0000來檢測接收雙方是否依舊保持同步。
3)為了進一步減少誤碼率,采用了線性分組碼中的漢明碼用于糾錯。
本模塊為可綜合模塊,已經(jīng)用FLEX10KE通過FPGA布線后網(wǎng)表仿真,其計算功能和運行速度已經(jīng)得到驗證[9-10]。
對于不同級別的M序列來說,抗噪聲能力是不一樣的,級數(shù)越高所能承受的外界干擾幅度越大。在本實驗設計中,選取的是從2倍噪聲中將5級31位M序列信號恢復出來。利用Verilog分別編寫coder,add_noise,decoder,correct,Correct_Decoder,top這6個模塊,其中coder,decoder,correct是可綜合模塊,decoder,correct這兩個模塊組成為Correct_Decoder,add_noise是不可綜合的,用以模擬信道的加性噪聲,top是測試文檔。
漢明碼解碼仿真波形如圖4所示。
此FPGA實驗中的M序列收發(fā)裝置是一個非常簡易的通信模型,真正的一個可靠的通信系統(tǒng)不光有數(shù)字電路部分,還有模擬電路部分,它的完成是要依靠成百上千人的辛勤工作和互相配合。
圖4 漢明碼解碼仿真波形
雖然這里提供的只是一個簡化的M序列收發(fā)裝置,但通過此實驗還是能夠幫助我們建立許多通信系統(tǒng)方面的概念,這也是我們設計這個實驗的目的,畢竟任何一個復雜的系統(tǒng)都是由許許多多簡單的思想構建的。設計需要注意以下幾點:
1)M序列擴頻通信的原理。
2)捕捉同步頭的這個功能使我們的系統(tǒng)更強?。≧obust)。
3)通過引入糾錯碼,大大減少了誤碼率。
4)通信系統(tǒng)中每傳輸一定的數(shù)據(jù)后,都要傳送一些收發(fā)雙方約定好的信息,來檢測是否維持在同步狀態(tài)。
5)在整個設計系統(tǒng)中,測試模塊的作用也很重要。
[1]Zeng Kencheng,Yang Chunghuang,Wei Dah Yea,et al.Pseudo random bit gener ators in stream-cipher cry ptograph[J].Computer,1991,24(2):8-17.
[2]A liKanso.Clock-controlled shrinking generatorof feed back shift registers[A].8th Australasian Con-ferenceon Information Security and Privacy-AC ISP[C].2003.
[3]蒲海,陳自力,胡玫榮.基于CPLD的高速m序列碼發(fā)生器的設計[J].微計算機信息,2005,21(4):172-173.
[4]束禮寶,宋克柱.偽隨機數(shù)發(fā)生器的FPGA實現(xiàn)與研究[J].電路與系統(tǒng)學報,2003,8(3):121-24.
[5]鄒學玉,易國華.一類基于FPGA的m序列發(fā)生器的設計[J].長江大學學報:自然科學版,2006,27(1):84-86.
[6]林可祥,汪一飛.偽隨機碼的原理與應用[M].北京:人民郵電出版社,1998.
[7]梅文華,楊義先.跳頻通信地址編碼理論[M].北京:國防工業(yè)出版社,1996.
[8]G John Proakis,Masoud Salehi.通信系統(tǒng)工程[M].2版.葉芝慧,趙新勝,譯.北京:電子工業(yè)出版社,2002.
[9]曹志剛,錢亞生.現(xiàn)代通信原理[M].北京:清華大學出版社,2002.
[10]張孝飛,趙孔新,張賽男.基于FPGA的脈沖發(fā)生器波形模塊設計[J].長春工業(yè)大學學報:自然科學版,2011,32(3):258-262.
FPGA-based M-series encoder/decoder
WANG Han-xue, ZHANG Chi-jun
(Electronics and Information Engineering,Changchun University of Science and Techonlogy,Changchun 130022,China)
The spread spectrum communication principles are introduced first,and then the mathematical properties of M-sequence and its applications limitations in spread spectrum are studied.The hardware of both the M-sequence spread spectrum communication transmitter and receiver are designed.
FPGA;M sequence;spread spectrum communication.
TN 911
A
1674-1374(2014)01-0086-04
2013-04-24
王瀚雪(1987-),男,漢族,河北秦皇島人,長春理工大學碩士研究生,主要從事光電傳感與光電探測技術、FPGA方向研究,E-mail:wanghanxue0816@126.com.