FCSR原理及其VHDL語言的實現
摘 要:偽隨機序列發(fā)生器是序列密碼設計中的重要環(huán)節(jié),FCSR是其中一類重要思想。本文介紹了FCSR的特性和產生方法,并用VHDL語言予以實現,給出FCSR序列的主程序和仿真波形,最后指出需要注意的問題。
本文引用地址:http://www.biyoush.com/article/189855.htm關鍵詞:進位移位寄存器;l-序列;VHDL;FCSR序列
偽隨機信號在雷達、遙控、遙測、通信加密和無線電測量系統(tǒng)領域有著廣泛的應用,其產生方法有多種途徑。進位反饋移位寄存器(feedbackwithcarryshiftregiste,FCSR)由Klapper和Goresky于1993年提出,是一類較新穎的方法,其理論實質類似于數學上產生隨機數的模2同余法。經過一系列理論分析后普遍認為在序列密碼的分析和設計中具有一定價值。
本文簡要介紹了FCSR的基本原理和特性,重點討論基于硬件描述語言VHDL的可變長FCSR的設計。VHDL可編程邏輯器件CPLD/FPGA結合使用,可以方便、靈活地實現此類偽隨機序列發(fā)生器。
1FCSR產生原理和序列特性
某時刻一個r級(非退化)FCSR如圖1所示。其中ai∈GF(2), (i=n-1,n-2,…,n -r),mn-1∈Z,qi∈GF(2),(i=1,2,…,r-1),qr=1,∑為一般的整數加法。工作過程如下:
(1)計算整數和:
![](http://editerupload.eepw.com.cn/fetch/20131118/189855_1_0.jpg)
(2)移位寄存器右移一位,輸出an-r。
(3) an=σn(mod 2)反饋入移位寄存器。
(4) mn=[σn/2]反饋入進位寄存器。
記q0= -1,FCSR的一個狀態(tài)為(mn-1;an-1,…,
![](http://editerupload.eepw.com.cn/fetch/20131118/189855_1_1.jpg)
為FCSR的連接數。
FCSR能返回到自身的狀態(tài)稱為周期狀態(tài)。以q為連接數的FCSR的周期狀態(tài)個數為q+1,其中平凡的周期狀態(tài)(0;0,…,0)和(w-1;1,…,1)在狀態(tài)圖中形成2個長為1的圈,非平凡周期狀態(tài)的個數為q-1,其余狀態(tài)都是非周期的。其中w=wt(q+1)為q+1的漢明重量,指qi(i=0,1,…,r)中qi≠0的個數。
![](http://editerupload.eepw.com.cn/fetch/20131118/189855_1_2.jpg)
以q為連接數的FCSR相應的有理數為p/q。其中,
![](http://editerupload.eepw.com.cn/fetch/20131118/189855_1_3.jpg)
且q為奇數。如果p和q互素,那么a有周期T=ordq(2)。特殊的,如果T=Φ(q)(φ為歐拉函數),即2為模q的本原根,那么該序列達到他的最大周期。由歐拉函數的性質可知,此時Φ(q)=q-1。稱其為連接數為q的最大周期FCSR序列,或l序列。
由于在FCSR中,初始狀態(tài)、移位寄存器級數、抽頭數目、抽頭位置的變化都會產生不同的序列,因此可以通過設計參數可變的FCSR發(fā)生器來生成周期更長的偽隨機序列。
負離子發(fā)生器相關文章:負離子發(fā)生器原理
評論