摘要 論述了偽隨機m序列的產(chǎn)生原理、特性以及構(gòu)成方法,利用LabWindows/CVI為開發(fā)平臺,設(shè)計了一種2~22級m序列發(fā)生器。仿真結(jié)果表明,該系統(tǒng)具有遠程通信、界面友好、易于集成和擴展等優(yōu)點,可實現(xiàn)無線激光通信系統(tǒng)誤碼率的自動化測試。
關(guān)鍵詞 m序列;LabWindow/CVI;激光通信
無線激光通信是以光信號為載波,大氣為傳輸介質(zhì)實現(xiàn)點到點或點到多點信息傳輸?shù)募夹g(shù)。該技術(shù)具有成本低、組網(wǎng)靈活、安裝方便、無需頻率許可等優(yōu)點。在測試數(shù)字通信系統(tǒng)的誤碼率時,其測試結(jié)果與信號源送出信號的統(tǒng)計特性有關(guān),所以隨機信號是理想的信號源。但在測量單程數(shù)字通信的誤碼率時不能利用隨機信號,只能利用性能相近的偽隨機序列代替,通常使用m序列。偽隨機序列是由數(shù)字電路產(chǎn)生的周期數(shù)列,具有良好的隨機性且接近于白噪聲的相關(guān)函數(shù),并且有預先可確定性和可重復性。這些特性使得偽隨機序列廣泛應(yīng)用于誤碼率測量、時延測量、噪聲產(chǎn)生器、和通信加密等方面。m序列是由線性反饋移存器產(chǎn)生的周期性的最長二進制數(shù)字序列。作為一種偽隨機序列,具有擴展頻譜和區(qū)分通過多址接入方式使用同一傳輸頻帶不同用戶信號的功能,廣泛應(yīng)用在擴頻譜水聲通信、激光測距雷達、激光通信等領(lǐng)域。
LabWindows/CVI是National Instrument(NI)公司推出以交互式C語言為開發(fā)平臺的虛擬儀器開發(fā)軟件,將功能強大的C語言與測控技術(shù)結(jié)合,具有靈活的交互式編程方式、豐富的庫函數(shù)、自動檢測環(huán)境、數(shù)據(jù)采集系統(tǒng)、過程監(jiān)控系統(tǒng)等應(yīng)用軟件。
利用Labwindows/CVI開發(fā)軟件,設(shè)計了用于激光通信系統(tǒng)誤碼率自動測試的2~22級任意m序列產(chǎn)生系統(tǒng),利用系統(tǒng)模擬了8級m序列,并驗證了系統(tǒng)的可行性。
1 理論基礎(chǔ)
m序列的產(chǎn)生原理
通常產(chǎn)生偽隨機序列的電路為反饋移位寄存器,包括線性反饋移位寄存器和非線性反饋移位寄存器。由線性反饋移位寄存器產(chǎn)生的周期最長的二進制數(shù)字序列,稱為最大長度線性反饋移位寄存器序列,又稱m序列。
圖1給出了n級線性反饋移位寄存器序列產(chǎn)生的結(jié)構(gòu)原理圖,圖中的CnCn-1…C1C0是反饋系數(shù),也是特征多項式系數(shù),由本原多項式系數(shù)確定。反饋系數(shù)的值只能取“0”或“1”,取“0”表示連接反饋,取“0”表示沒有連接反饋,反饋系數(shù)直接決定了m序列的輸出結(jié)果。
圖1中,設(shè)n級移位寄存器的初始狀態(tài)為an-1an-2…a1a0,經(jīng)過一次移位時,移位寄存器左端新得到的輸入為an,則有
式中,Ci表示第i級反饋系數(shù);an-i表示第n-i位輸入。Ci是一個重要的參量,它的取值決定了移位寄存器的反饋連接和序列的結(jié)構(gòu)。用特征方程可表示為
產(chǎn)生m序列的充要條件為:反饋移位寄存器的特征多項式是本原多項式。部分本原多項式如表1所示。
基于表1可以產(chǎn)生2~22級的任意m序列,例如8級本原多項式系數(shù)為(435)8=(100011101)2,由式(2)知特征多項式系數(shù)應(yīng)為(101110001)2,即C0=1,C1=0,C2=1,C3=1,C4=1。C5=0,C6=0,C7=0,C8=1代入(1)得
2 m序列的特性
2.1 均衡性
在m序列的一個周期里,“1”的個數(shù)比“0”多一個。在上述8級m序列中“1”的個數(shù)為128,“0”的個數(shù)為127。級數(shù)越多,“1”和“0”的個數(shù)就越趨于相等。
2.2 游程分布
在一個序列中取值相同,連在一起的元素合起來稱為一個游程。一個游程里的元素個數(shù)叫作游程長度。在上例8級m序列中游程分布如表2所示??梢钥闯鲩L度為k的游程占總游程的2-k。
2.3 移位相加特性
一個m序列m1與其經(jīng)任意延遲移位產(chǎn)生的另一序列m2經(jīng)過模2相加算法,得到的仍是m1的某次延遲移位序列m3,有
以4級m序列為例,這里取初值為(1101)2得其m序列即m1=110101100100011,m1右移2位得m2=111101011001000,由式(4)可得m3=001000 111101011??梢钥闯觯琺1右移8位得到m3,所以級數(shù)相同的不同初值的m序列都是由統(tǒng)一序列經(jīng)過不同的延遲移位得到的。
2.4 自相關(guān)特性
由周期函數(shù)的自相關(guān)函數(shù)定義可推出二進制編碼中的自相關(guān)函數(shù)式R(j)為
A是序列與其j次移位序列一個周期中對應(yīng)元素相同的數(shù)目。D表示序列與其j次移位序列一個周期中對應(yīng)元素不相同的數(shù)目。n是序列周期。
由式(5)可知m序列的自相關(guān)性為
由于m序列的以上性質(zhì)與隨機序列相似,所以m序列被定義為一種偽隨機序列。又由于m序列能重復產(chǎn)生和處理,所以它避免了隨機序列的缺點又具有隨機序列的優(yōu)點。
3 基于LabWindows/CVI的m序列的產(chǎn)生
從總體設(shè)計看,軟件可分為3大模塊:主界面的設(shè)計和數(shù)據(jù)顯示模塊,數(shù)據(jù)分析和計算模塊,通信模塊。其中主界面的設(shè)計模塊主要用于各種參數(shù)的輸入,用戶命令的發(fā)送,數(shù)據(jù)顯示以及波形顯示。數(shù)據(jù)的分析和計算模塊將用戶輸入的數(shù)據(jù)按m序列的產(chǎn)生方式計算出m序列。通信模塊主要是利用RS232實現(xiàn)PC與數(shù)據(jù)傳輸設(shè)備之間的數(shù)據(jù)傳輸。程序流程圖如圖2所示。
3.1 主界面的設(shè)計和數(shù)據(jù)顯示
主界面設(shè)計和數(shù)據(jù)顯示模塊:主要指人機界面部分,即虛擬面板。用戶通過虛擬面板來完成對儀器的操作,可以在虛擬面板中設(shè)定m序列的級數(shù)、初值、以及所需的周期數(shù)。用戶在設(shè)定好這些值之后只需要點擊“顯示結(jié)果”便可在面板上看到m序列的值及其波形。如果需要將m序列發(fā)送出去,則點擊“發(fā)送”,點擊“清除”便可清除所有數(shù)據(jù)。另外在虛擬面板上還設(shè)有“使用說明”可幫助用戶輕松上手。虛擬面板是在PC機上運行,面板上的按鈕設(shè)計為鼠標可用。
3.2 數(shù)據(jù)分析和計算
數(shù)據(jù)分析和計算模塊是整個軟件的核心,它決定軟件運行的準確性和可靠性。程序設(shè)計流程如圖3所示,從主界面的到級數(shù)、周期數(shù)和初值。
根據(jù)式(1)和式(2)查表1,可知2~22級m序列的算法,計算得出m序列。并將值和波形顯示在面板上,如圖3所示。
4 結(jié)束語
基于LabWindows/CVI軟件開發(fā)平臺,可為用戶實現(xiàn)2~22級的任意m序列的生成和顯示。根據(jù)用戶的需要將產(chǎn)生的m序列通過RS232發(fā)送出去,通過仿真分析可知,該系統(tǒng)具有遠程通信、界面友好、易于集成和擴展等優(yōu)點,可實現(xiàn)無線激光通信系統(tǒng)誤碼率的自動化測試,并且具有穩(wěn)定可行性。





