FCSR原理及其VHDL語言的實現_第1頁
免費預覽已結束,剩余1頁可下載查看

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、fcsr原理及其vhdl語言的實現偽隨機信號在雷達、遙控、遙測、通信加密和測量系統(tǒng)領域有著廣泛的應用,其產生辦法有多種途徑。進位反饋移位寄存器(feedbackwithcarryshiftregiste,f)由klapper和goresky于1993年提出,是一類較新穎的辦法,其理論實質類似于數學上產生隨機數的模2同余法。經過一系列理論分析后普遍認為在序列密碼的分析和設計中具有一定價值。本文簡要介紹了fcsr的基本原理和特性,重點研究基于硬件描述語言的可變長fcsr的設計。vhdl可編程規(guī)律器件/結合用法,可以便利、靈便地實現此類偽隨機序列發(fā)生器。1 fcsr產生原理和序列特性某時刻一個r級(

2、非退化)fcsr1所示。其中aigf(2), (i=n-1,n-2,n -r),mn-1z,qigf(2),(i=1,2,r-1),qr=1,為普通的整數加法。工作過程如下:(1)計算整數和:(2)移位寄存器右移一位,輸出an-r。(3) an=n(mod 2)反饋入移位寄存器。(4) mn=n/2反饋入進位寄存器。記q0= -1,fcsr的一個狀態(tài)為(mn-1;an-1,為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,其余狀

3、態(tài)都是非周期的。其中w=wt(q+1)為q+1的漢明分量,指qi(i=0,1,r)中qi0的個數。以q為銜接數的fcsr相應的有理數為p/q。其中,且q為奇數。假如p和q互素,那么a有周期t=ordq(2)。特別的,假如t=(q)(為歐拉函數),即2為模q的本原根,那么該序列達到他的最大周期。由歐拉函數的性質可知,此時(q)=q-1。稱其為銜接數為q的最大周期fcsr序列,或l序列。因為在fcsr中,初始狀態(tài)、移位寄存器級數、抽頭數目、抽頭位置的變幻都會產生不同的序列,因此可以通過設計參數可變的fcsr發(fā)生器來生成周期更長的偽隨機序列。2 fcsr序列發(fā)生器的vhdl實現以n=10為例來設計參

4、數可變的fcsr序列發(fā)生器。2.1 功能描述及外部引腳由圖1可知,進位反饋移位寄存器由加法器、進位寄存器和一組(n級)d觸發(fā)器組成。加法器實現fcsr的反饋運算;進位寄存器保存前一時刻運算結果除2后的狀態(tài)mn-1,并為下一運算提供輸入;n級d觸發(fā)器構成移位寄存器,在時鐘控制下實現右移,依次輸出其內部狀態(tài)。同時某些觸發(fā)器的輸出反饋回歸,與進位寄存器的輸出舉行運算,和模2反饋至寄存器輸入端,和除2反饋至進位寄存器。式(1)中qigf(2) ,(i=1,2,r-1)在實際中為抽頭的銜接狀態(tài),打算哪一級輸出反饋至加法器,qi=0表示斷開,qi=1表示銜接。fcsr序列發(fā)生器的外部引腳定義2所示。其中,

5、clk為時鐘信號;reset為置數信號;prn為初態(tài)置數端;sel為抽頭置數端;q為輸出端。該fcsr序列發(fā)生器的特點在于可以通過設定sel90的值來轉變抽頭數、抽頭位置和發(fā)生器的有效級數n(1"10級);當reset為低電平常,通過設定pr n90的值轉變fcsr的初態(tài),從而可以轉變輸出序列周期,分析各種狀態(tài)下輸出 序列的變幻。2.2 可變參數部分的設計本設計通過手動或軟件自動設定sel90的值來轉變抽頭數、抽頭位置和發(fā)生器的有效級數3個參數,其中轉變最高抽頭位置可使有效長度可變。詳細電路中,由sel90設定值作為加法器的輸入,輸出結果舉行下一步運算,因此需要設計輸入變量較多、延遲

6、時光較短的加法器電路。這里的求和運算可以等效為計算輸入變量中“1”的個數。對此有多種實現計劃,如計數法、規(guī)律函數法、查表法、求和網絡法等。單純用法一種辦法,在輸入變量較多的狀況下會有占用資源太多、延遲時光太大或表達式太繁瑣等問題,因此需要綜合用法這些辦法。該加法器綜合用法規(guī)律函數-求和網絡法,由1位累加器和3位串行加法器實現。因為n=10,則抽頭數至多為10,可以分2組舉行求和。因此首先設計5輸入、3位輸出的累加器。用卡諾圖簡化后,寫規(guī)律表達式如下:3位串行加法器的設計比較容易,不再贅述,則10輸入變量、3位輸出的加法器電路原理圖3所示。這里求和網絡惟獨1級,不難由此擴充成多級。該電路延遲至多

7、為8級規(guī)律門的延遲時光,占用資源也較少。2.3 主程序按照fcsr序列產生的原理,采納vhdl語言的混合描述方式對該規(guī)律舉行硬件描述。主程序l_seq如下:其中元件例化語句中所引用的元件已經作為組件在components.vhd用戶包舉行定義,在主程序中調用即可。3 時序該程序在lattice公司的isplever軟件環(huán)境下編譯、運行和仿真。該fcsr序列發(fā)生器可選級數為1"10級,周期范圍為1"2 029。經分析知,當時態(tài)為平庸周期狀態(tài)(0;0,0)和(w -1;1,1)時,輸出為全“0”或全“1”。當抽頭置數為“0100000110”,即q9=q3 =q2=1,事實上是

8、一個n=9的l序列發(fā)生器;置fcsr初態(tài)為(0,0,0,0;0,0, 0,1,1,0,1,0,1,0)時,波形3所示,此時輸出序列的周期t=523。4 需要注重的問題(1)通過調節(jié)sel及prn的值并分析輸出序列變幻可知,不是隨意整數作為銜接數都能使f c sr達到最大周期。在工程應用當中,l-序列是最希翼得到的。因此在用法fcsr時,應當優(yōu)先選用那些可以產生l-序列的特別的銜接數,如文獻1中提供的一些銜接數。(2)當q為非最大周期銜接數時,某些初態(tài)會有周期更小的序列輸出。例如當q=17時,ord17(2)=8,即他有最大周期t=8。而事實上除2個平庸狀態(tài)外,某些初態(tài)會導致輸出t=6的周期序列。在密碼設計中,因為fcsr的初態(tài)對應著初始密鑰,這就意味著基于fcsr發(fā)生器有弱密鑰。因此,在實際應用中要認真挑選。(3)本例中,因為抽頭數最大為9,所以4位進位寄存器即可滿足要求。事實上,當t >2時(t為抽頭數),進位寄存器最小應為log2t。(4)當加法器采納組合電路實現時,需注重規(guī)律門延遲影響。在抽頭數較大時,應適

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論