本文為明德?lián)P原創(chuàng)及錄用文章,轉(zhuǎn)載請(qǐng)注明出處!
一、M序列簡(jiǎn)介
M序列是最長(zhǎng)線性反饋移位寄存器序列的簡(jiǎn)稱。它是由帶線性反饋的移位寄存器產(chǎn)生的周期最長(zhǎng)的序列。一般來(lái)說(shuō),一個(gè)n級(jí)線性反饋移位寄存器可能產(chǎn)生的最長(zhǎng)周期為(2^n-1)。
因?yàn)橐莆患拇嫫鞯某跏贾挡荒転?,否則不管怎么移,移位寄存器的值都不為0,所以最長(zhǎng)周期為(2^n-1)。
二、應(yīng)用范圍
M序列是廣泛應(yīng)用的一種偽隨機(jī)序列,其在通信領(lǐng)域有著廣泛的應(yīng)用,如擴(kuò)頻通信,衛(wèi)星通信的碼分多址,數(shù)字?jǐn)?shù)據(jù)中的加密、加擾、同步、誤碼率測(cè)量等領(lǐng)域。
在所有的偽隨機(jī)序列中,M序列是最重要、最基本的一種偽隨機(jī)序列。它容易產(chǎn)生,規(guī)律性強(qiáng),有很好的自相關(guān)性和較好的互相關(guān)性。
三、M序列模型
n級(jí)線性移位寄存器結(jié)構(gòu)如下
上圖可以轉(zhuǎn)換成數(shù)學(xué)表達(dá)式
其中Ci的取值為0或1,其中C0、Cn-1為1。當(dāng)此式為本原多項(xiàng)式(只能被1和自身整除,類(lèi)似于質(zhì)數(shù))時(shí)才能產(chǎn)生M序列。
這里給出2階到10階的本原多項(xiàng)式
四、FPGA實(shí)現(xiàn)
我們以7階、8階本原多項(xiàng)式為例設(shè)計(jì)兩個(gè)M序列發(fā)生器
1、7階架構(gòu)設(shè)計(jì)
注:⊕ 代表異或
說(shuō)明:r0異或r4賦值給r6,其它值按位移就可以。
信號(hào)說(shuō)明:
代碼如下:
2、8階架構(gòu)設(shè)計(jì)
說(shuō)明:r0異或r4異或r5異或r6賦值給r7,其它值按位移就可以。
代碼如下:
tb文件參考工程文件夾中的sim文件夾
1、7階仿真波形
五、仿真驗(yàn)證
2、8階仿真波形