覃馨+李書艷+寧寧+陳培美+孫曉書+崔舒揚


摘要:m序列是擴頻通信方式的基礎理論,應用較為廣泛,m序列是對最長線性反饋移位寄存器序列的簡稱,可由帶線性反饋的移位寄存器通過串行移位方式生成。文中通過對m序列生成的基本理論進行了詳細介紹,并基于此設計了簡易m序列調制解調器架構,和硬件描述語言代碼,完成了仿真,測試。
關鍵詞:m序列;偽隨機碼;Verilog HDL;仿真
中圖分類號:G642.0 文獻標志碼:A 文章編號:1674-9324(2017)07-0205-02
一、引言
m序列的使用是通信系統中CDMA(Code Division Multiple Access——碼分多址)模式的基礎,也是擴頻通信方式的基礎理論。應用較為廣泛,可用于《通信原理》基礎理論研究,也可以用于實際通信過程的擾碼單元使用,因此,對于該序列調制解調器的設計具有實際的意義。
m序列是對最長線性反饋移位寄存器序列(maximal length linear feedback shift register sequence)的簡稱,它是一種由帶線性反饋的移位寄存器所產生的序列,并且具有最長周期。帶線性反饋的移位寄存器設定各級寄存器的初始狀態后,在時鐘觸發下,每次移位后各級寄存器狀態都會發生變化。觀察其中一級寄存器(通常為末級)的輸出,隨著移位時鐘節拍的推移會產生一個序列,稱為移位寄存器序列。可以發現序列是一個周期序列,其周期不但與移位寄存器的級數有關,而且與線性反饋邏輯有關。在相同級數情況下,采用不同的線性反饋邏輯所得到的周期長度不同。此外,周期還與移位寄存器的初始狀態有關。
二、系統整體設計方案
一般情況下,用于產生m序列的n級線性反饋移位寄存器的結構圖如圖1所示。
0010110011111000110111010100001(由右至左依次按順序生成),發送端需要調制的信號,與這31位數進行異或運算。為仿真驗證波形顯示便利,在發送信號的時候采用調制方法,即將1相應的調制為1,0調制為-1;則可以得到傳輸中的m序列。
三、系統HDL設計方案
系統使用Verilog HDL語言完成設計。代碼由add_noise.v、coder.v、correct.v、Corrected_Decoder.v、decoder.v和top.v六個Verilog HDL代碼。代碼架構設計圖如圖3所示。分別為傳輸加噪、發送端編碼調制、發送端校驗編碼、校驗解碼、解碼單元和頂層單元。
m序列調制與解調部分學習和實驗主要進行了基于ModelSim仿真的代碼編寫和調試,屬于不可綜合仿真,參考代碼中加入了兼具了testbench的測試功能。通信過程中,一般系統不會在啟動后立即發送有效載荷數據,為了保證通信的穩定,首先要發送雙方約定好的一系列信令和同步用數據信息,通過同步用數據信息來完成發送、接收雙方的時鐘、信令和控制數據的同步,同步后才能有效接收數據,這個過程類似于網絡通信中的TCP協議通信過程,是通信網絡中保證收發雙方可靠、穩定通信的流程。
四、設計仿真測試
上述設計代碼直接在ModelSim中就可以直接綜合和進行仿真。加載了Verilog HDL代碼的ModelSim項目窗口如圖4所示。發送端發送的數據由outdata變量存儲,其發送的數據經由編碼和加噪模塊完成數據的m調制后,發送至接收端,接收端由解校驗和解碼單元處理后,形成解調數據。
仿真運行50微秒后部分仿真波形如圖5所示。從圖5中很容易看出負向波谷(表示波形向下,但是取值仍未正)位置對應的解調碼值為0,正向波峰對應位置解調碼值為1。與該窗口outdata(已發送數據)顯示數據一致。
五、結束語
本簡易m序列調制解調器設計完成了基本的設計目標,能夠正常發送和解調已發送的數據,能夠準確進行仿真和驗證,后續可以繼續進行優化和加長序列調制長度,并增加通信系統中常見的各種糾錯編碼方案,以使系統更加完善。
參考文獻:
[1]夏宇聞.從算法設計到硬件邏輯的實現[M].北京:高等教育出版社,2001.
[2]王金明,楊吉斌.數字系統設計與VerilogHDL[M].北京:電子工業出版社,2002.
[3]SKALRB.數字通信———基礎與應用[M].北京:電子工業出版社,2002.
[4]樊昌信,張甫翊,徐炳祥,等.通信原理[M].第5版.北京:國防工業出版社,2003.
Abstract:M sequence is the basic theory of spread spectrum communication,which has been widely applied,m sequence is short for the longest of linear feedback shift register sequence,which can be generated by a serial shift register with a linear feedback shift register . In this paper,we introduced the basic theory of how to produce m - sequence in detail. Based on this,A simple m - sequence modem architecture was designed,together with the design using hardware described language code,and finished the simulated and tested.
Key words:m sequence;PN code;Verilog HDL;Simulate