《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 模擬設(shè)計(jì) > 業(yè)界動(dòng)態(tài) > 入門:基于LFSR偽隨機(jī)數(shù)的FPGA產(chǎn)生

入門:基于LFSR偽隨機(jī)數(shù)的FPGA產(chǎn)生

2022-11-22
來(lái)源:FPGA之家
關(guān)鍵詞: LFSR D觸發(fā)器 FPGA

  1.概念

  通過(guò)一定的算法對(duì)事先選定的隨機(jī)種子(seed)做一定的運(yùn)算可以得到一組人工生成的周期序列,在這組序列中以相同的概率選取其中一個(gè)數(shù)字,,該數(shù)字稱作偽隨機(jī)數(shù),由于所選數(shù)字并不具有完全的隨機(jī)性,,但是從實(shí)用的角度而言,其隨機(jī)程度已足夠了,。這里的“偽”的含義是,,由于該隨機(jī)數(shù)是按照一定算法模擬產(chǎn)生的,其結(jié)果是確定的,,是可見(jiàn)的,,因此并不是真正的隨機(jī)數(shù)。偽隨機(jī)數(shù)的選擇是從隨機(jī)種子開(kāi)始的,,所以為了保證每次得到的偽隨機(jī)數(shù)都足夠地“隨機(jī)”,,隨機(jī)種子的選擇就顯得非常重要,如果隨機(jī)種子一樣,,那么同一個(gè)隨機(jī)數(shù)發(fā)生器產(chǎn)生的隨機(jī)數(shù)也會(huì)一樣,。

  2.由LFSR引出的產(chǎn)生方法

  產(chǎn)生偽隨機(jī)數(shù)的方法最常見(jiàn)的是利用一種線性反饋移位寄存器(LFSR),它是由n個(gè)D觸發(fā)器和若干個(gè)異或門組成的,,如下圖:

 22.JPG

  其中,gn為反饋系數(shù),,取值只能為0或1,,取為0時(shí)表明不存在該反饋之路,取為1時(shí)表明存在該反饋之路,;n個(gè)D觸發(fā)器最多可以提供2^n-1個(gè)狀態(tài)(不包括全0的狀態(tài)),,為了保證這些狀態(tài)沒(méi)有重復(fù),gn的選擇必須滿足一定的條件。下面以n=3,,g0=1,,g1=1,g2=0,g3=1為例,說(shuō)明LFSR的特性,,具有該參數(shù)的LFSR結(jié)構(gòu)如下圖:

21.JPG

  假設(shè)在開(kāi)始時(shí),,D2D1D0=111(seed),那么,,當(dāng)時(shí)鐘到來(lái)時(shí),,有:

  D2=D1_OUT=1;

  D1=D0_OUT^D2_OUT=0,;

  D0=D2_OUT=1,;

  即D2D1D0=101;同理,,又一個(gè)時(shí)鐘到來(lái)時(shí),,可得D2D1D0=001. ……

  畫出狀態(tài)轉(zhuǎn)移圖如下:

 20.JPG

  從圖可以看出,正好有2^3-1=7個(gè)狀態(tài),,不包括全0,;

  如果您理解了上圖,至少可以得到三條結(jié)論:

  1)初始狀態(tài)是由SEED提供的,;

  2)當(dāng)反饋系數(shù)不同時(shí),,得到的狀態(tài)轉(zhuǎn)移圖也不同;必須保證gn===1,否則哪來(lái)的反饋,?

  3)D觸發(fā)器的個(gè)數(shù)越多,,產(chǎn)生的狀態(tài)就越多,也就越“隨機(jī)”,;

  3.verilog實(shí)現(xiàn)

  基于以上原理,,下面用verilog產(chǎn)生一個(gè)n=8,反饋系數(shù)為g0g1g2g3g4g5g6g7g8=101110001的偽隨機(jī)數(shù)發(fā)生器,,它共有2^8=255個(gè)狀態(tài),,該LFSR的結(jié)構(gòu)如下:

19.JPG

verilog源代碼如下:

  18.JPG


  仿真波形:

 23.JPG

  以1111 1111為種子,load信號(hào)置位后,,開(kāi)始在255個(gè)狀態(tài)中循環(huán),,可將輸出值255、143,、111……作為偽隨機(jī)數(shù),。



更多信息可以來(lái)這里獲取==>>電子技術(shù)應(yīng)用-AET<<

mmexport1621241704608.jpg

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點(diǎn),。轉(zhuǎn)載的所有的文章,、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有,。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者,。如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,,請(qǐng)及時(shí)通過(guò)電子郵件或電話通知我們,,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失,。聯(lián)系電話:010-82306118,;郵箱:[email protected]