Verilog數(shù)字系統(tǒng)基礎(chǔ)設(shè)計(jì)-LFSR
時(shí)間:2021-09-24 16:16:24
手機(jī)看文章
掃描二維碼
隨時(shí)隨地手機(jī)看文章
[導(dǎo)讀]引言LFSR(線性反饋移位寄存器)用于產(chǎn)生可重復(fù)的偽隨機(jī)序列PRBS,該電路由n級(jí)觸發(fā)器和一些異或門(mén)組成。在每個(gè)時(shí)鐘周期內(nèi),新的輸入值會(huì)被反饋到LFSR內(nèi)部各個(gè)觸發(fā)器的輸入端,輸人值中的一部分來(lái)源于LFSR的輸出端,另一部分由LFSR各輸出端進(jìn)行異或運(yùn)算得到。該電路具有以下特點(diǎn):...

引言
LFSR(線性反饋移位寄存器)用于產(chǎn)生可重復(fù)的偽隨機(jī)序列PRBS,該電路由n級(jí)觸發(fā)器和一些異或門(mén)組成。在每個(gè)時(shí)鐘周期內(nèi),新的輸入值會(huì)被反饋到LFSR內(nèi)部各個(gè)觸發(fā)器的輸入端,輸人值中的一部分來(lái)源于LFSR的輸出端,另一部分由LFSR各輸出端進(jìn)行異或運(yùn)算得到。該電路具有以下特點(diǎn):- 如果初始狀態(tài)相同,則最終會(huì)得到相同的輸出序列(即輸出序列是確定的);
- 輸出序列趨向于隨機(jī)序列(偽隨機(jī));
- 經(jīng)過(guò)一定次數(shù)的迭代后,你將得到與初始狀態(tài)相同的狀態(tài)值;(最大重復(fù)間隔可由(2^n- 1)計(jì)算,其中n為移位寄存器的數(shù)目)

斐波那契LFSR與伽羅瓦LFSR
斐波那契LFSR也可稱(chēng)為多到一型LFSR,即多個(gè)觸發(fā)器的輸出通過(guò)異或邏輯來(lái)驅(qū)動(dòng)一個(gè)觸發(fā)器的輸入。與此相反,伽羅瓦LFSR為一到多型LFSR,即一個(gè)觸發(fā)器的輸出通過(guò)異或邏輯驅(qū)動(dòng)多個(gè)觸發(fā)器的輸入。這兩種電路都產(chǎn)生(2^n-1)序列,但是一到多型LFSR具有更高的速度,因?yàn)樗膬蓚€(gè)觸發(fā)器之間僅使用一個(gè)異或門(mén)。圖6.1至圖6.3是3比特和4比特LFSR的具體電路。


伽羅瓦LFSR(反饋多項(xiàng)式為x^3 x^2 1):
- 觸發(fā)器xl的輸入通常來(lái)自于觸發(fā)器x2的輸出;
- x3(最高項(xiàng))的輸入通常來(lái)自于xl的輸出;
- 此多項(xiàng)式中剩余觸發(fā)器的輸入是xl的輸出與其前級(jí)輸出異或的結(jié)果;
- x2的輸人由x1的輸出與x3的輸出通過(guò)異或運(yùn)算得到。
LFSR反饋多項(xiàng)式
本電路中每次迭代的狀態(tài)轉(zhuǎn)換如下表所示,在這個(gè)表中,你會(huì)發(fā)現(xiàn)到上面列出的所有屬性。


LFSR的用法
LFSR具有廣泛的應(yīng)用, 下面對(duì)其中的一些典型應(yīng)用進(jìn)行介紹。LFSR計(jì)數(shù)器
LFSR可用于構(gòu)建通過(guò)隨機(jī)序列狀態(tài)進(jìn)行計(jì)數(shù)的計(jì)數(shù)器。與常見(jiàn)的計(jì)數(shù)器相比, LFSR計(jì)數(shù)器具有速度快 、 消耗邏輯門(mén)少的特點(diǎn)。擾碼器/解擾器
LFSR可用作擾碼器來(lái)產(chǎn)生重復(fù)的比特圖案。當(dāng)重復(fù)間隔較大時(shí), 該比特圖案看上去就像一個(gè)隨機(jī)的比特序列。用戶數(shù)據(jù)發(fā)送前和擾碼器生成的序列進(jìn)行異或, 然后發(fā)出, 此時(shí)發(fā)送的數(shù)據(jù)就是經(jīng)過(guò)擾碼的數(shù)據(jù)。接收電路與發(fā)送電路采用相同的多項(xiàng)式, 這樣, 解擾器就可以將發(fā)送端原始的用戶數(shù)據(jù)恢復(fù)出來(lái)。LFSR還可應(yīng)用于其他領(lǐng)域, 如密碼系統(tǒng) 、 BIST ( 內(nèi)建自測(cè)試 )、 快速以太網(wǎng)及吉比特以太網(wǎng)等。擴(kuò)展:m序列
m Sequence (MLS : Maximum Length Sequence)m序列是一類(lèi)特殊的LFSR序列,為了更好的理解m序列,首先你需要理解LFSR序列的概念。與典型的LFSR相比,m序列有什么特別之處?如果使用LFSR生成一個(gè)序列,輸出最終會(huì)重復(fù)它自己,但是在大多數(shù)應(yīng)用程序中,其目的是使用給定數(shù)目的移位寄存器(后續(xù)用taps表示這些寄存器)生成盡可能長(zhǎng)的非重復(fù)序列。m-Squence 是一種特殊類(lèi)型的LFSR,它為每個(gè)給定的taps提供了最長(zhǎng)的非重復(fù)序列。下表顯示了各種taps的已知m序列: