基于FPGA的偽隨機序列發(fā)生器設計
摘要:討論了應用移位寄存器在A(yíng)hera的FPGA芯片中實(shí)現線(xiàn)性和非線(xiàn)性偽隨機序列的方法,該算法基于m序列本原多項式來(lái)獲得線(xiàn)性m序列和非線(xiàn)性m子序列移位寄存器的反饋邏輯式。文中給出了以Altera的QuartusⅡ為開(kāi)發(fā)平臺,并用VHDL語(yǔ)言實(shí)現的m序列的仿真波形。
關(guān)鍵詞:偽隨機序列;m序列;m子序列;移位寄存器;VHDL語(yǔ)言編程
0 引言
偽隨機序列現已廣泛應用于密碼學(xué)、擴頻通訊、導航、集成電路的可測性設計、現代戰爭中的電子對抗技術(shù)等許多重要領(lǐng)域。偽隨機序列的偽隨機性表現在預先的可確定性、可重復產(chǎn)生與處理。偽隨機序列雖然不是真正的隨機序列,但是當偽隨機序列周期足夠長(cháng)時(shí),它便具有隨機序列的良好統計特性。在已有的序列中,m序列的應用最為成熟和廣泛,為此,本文給出線(xiàn)性m序列和基于m序列的非線(xiàn)性m子序列的FPGA實(shí)現方法。由于FPGA的內部邏輯功能是通過(guò)向內部靜態(tài)存儲器單元加載配置數據來(lái)實(shí)現的,其配置文件決定了邏輯單元的邏輯功能以及模塊間或與I/O間的連接,故可最終決定FPGA實(shí)現的功能。FPGA的這種結構允許多次編程,并享有快速有效地對新設計進(jìn)行優(yōu)化的靈活性,為此,本文選用了altera的cyclone系列FPGA芯片。EPlCl2-240PQFP,該芯片內部有12060個(gè)邏輯單元、239616 bit RAM、兩個(gè)鎖相環(huán)(PLL)。本文應用移位寄存器理論來(lái)產(chǎn)生序列,其算法的關(guān)鍵是找到線(xiàn)性m序列和非線(xiàn)性m子序列移位寄存器的反饋邏輯式。
1 m序列的實(shí)現
1.1 基于FPGA的m序列實(shí)現
利用反饋移位寄存器產(chǎn)生0、1序列時(shí),其n位反饋移位寄存器的邏輯功能如圖1所示。
圖中,xi表示寄存器所處的狀態(tài),通常用0和1來(lái)代表兩個(gè)可能的狀態(tài),并且把0和1看成是有限域GF(2)的兩個(gè)元素。f(x0,x1,…,xn-1)刻劃了移位寄存器反饋邏輯的功能,它可以看成一個(gè)定義在GF(2)上并且在GF(2)中取值的n元函數,當f(x0,x1,…,xn-1)可以表示成一線(xiàn)性齊次函數時(shí),即GF(2),相應的反饋移位寄存器是線(xiàn)性的,而由線(xiàn)性移位寄存器產(chǎn)生的序列就稱(chēng)為線(xiàn)性移位寄存器序列。m序列就是線(xiàn)性移位寄存器序列。
評論