基于LFSR伪随机数的FPGA产生

时间:2025-07-27  作者:Diven  阅读:0

1.概念

基于LFSR伪随机数的FPGA产生

通过一定的算法对事先选定的随机种子(seed)做一定的运算可以得到一组人工生成的周期序列,在这组序列中以相同的概率选取其中一个数字,该数字称作伪随机数,由于所选数字并不具有完全的随机性,但是从实用的角度而言,其随机程度已足够了。这里的“伪”的含义是,由于该随机数是按照一定算法模拟产生的,其结果是确定的,是可见的,因此并不是真正的随机数。伪随机数的选择是从随机种子开始的,所以为了保证每次得到的伪随机数都足够地“随机”,随机种子的选择就显得非常重要,如果随机种子一样,那么同一个随机数发生器产生的随机数也会一样。

2.由LFSR引出的产生方法

产生伪随机数的方法最常见的是利用线性反馈移位寄存器(LFSR),是由n个D触发器和若干个异或门组成的,如下图:

其中,gn为反馈系数,取值只能为0或1,取为0时表明不存在该反馈之路,取为1时表明存在该反馈之路;n个D触发器最多可以提供2^n-1个状态(不包括全0的状态),为了保证这些状态没有重复,gn的选择必须满足一定的条件。下面以n=3,g0=1,g1=1,g2=0,g3=1为例,说明LFSR的特性,具有该参数的LFSR结构如下图:

假设在开始时,D2D1D0=111(seed),那么,当时钟到来时,有:

D2=D1_OUT=1;

D1=D0_OUT^D2_OUT=0;

D0=D2_OUT=1;

即D2D1D0=101;同理,又一个时钟到来时,可得D2D1D0=001. ………………

画出状态转移图如下:

从图可以看出,正好有2^3-1=7个状态,不包括全0;

如果您理解了上图,至少可以得到三条:

1)初始状态是由SEED提供的;

2)当反馈系数不得到的状态转移图也不同;必须保证gn===1,否则哪来的反馈?

3)D触发器的个数越多,产生的状态就越多,也就越“随机”;

3.verilog实现

基于以上原理,下面用verilog产生一个n=8,反馈系数为g0g1g2g3g4g5g6g7g8=101110001的伪随机数发生器,共有2^8=255个状态,该LFSR的结构如下:

verilog源代码如下:

Module RanGen( input rst_n, input clk, input load, input [7:0] seed, output reg [7:0] rand_num );always@(posedge clk or negedge rst_n)begin if(!rst_n) rand_num <=8'b0; else if(load) rand_num <=seed; else begin rand_num[0] <= rand_num[7]; rand_num[1] <= rand_num[0]; rand_num[2] <= rand_num[1]; rand_num[3] <= rand_num[2]; rand_num[4] <= rand_num[3]^rand_num[7]; rand_num[5] <= rand_num[4]^rand_num[7]; rand_num[6] <= rand_num[5]^rand_num[7]; rand_num[7] <= rand_num[6]; end endendModule

仿真波形:

以1111 1111为种子,load信号置位后,开始在255个状态中循环,可将输出值255、143、111……作为伪随机数。

编辑:黄飞

 

猜您喜欢

理解贴片电阻尺寸规格对照表,关键在于掌握其方向表示方法。表格通常以数字代码标示尺寸,例如0402、0603等。这些数字代表电阻的长和宽,单位是英寸,需要除以10...
2025-04-14 15:01:54

贴片电阻作为电子电路中重要的元器件,其质量直接影响电路性能。检验贴片电阻,需要遵循一系列标准,确保其符合设计要求。首先是外观检测。观察电阻表面是否有裂纹、缺损、...
2024-11-29 10:25:59

广东省东莞市作为电子元器件的重要生产基地,其贴片电容和贴片电阻系列产品备受市场青睐。该系列产品种类齐全,涵盖了各种规格和型号,能够满足不同电子产品的设计需求。东...
2024-11-29 10:26:22

贴片电阻1202并非表示阻值为多少KΩ,而是指其封装尺寸。1202代表电阻的长宽分别为1.2mm和0.2mm。 要确定1202封装电阻的阻值,需要查看其表面标识...
2025-04-14 15:03:42

现代电子设备中,同步整流电路已经成为提升电源效率和性能的重要技术手段。这种电路通过使用主动控制的MOSFET代替传统的二极管,使得电源转换更加高效,大大减少了功...
2024-05-14 00:00:00

一、XADC简介Zynq器件XADC模块包括2个12比特1 MIPS的模数转换器和相关的片上传感器,内置温度传感器和功耗传感器,可实时监测片内结温、各路电压数...
2019-02-14 17:30:00

电子技术的不断发展,压敏电阻在电路保护和信号调节中是越来越重要的配件。07D471K压敏电阻作为常见的电子元件,其参数和特性直接影响到电路的性能和稳定性。本文将...
2025-04-19 15:31:08

防撞条是有效的安全防护设施,应用于家庭、商场、医院等场所。其主要优势有以下几点:防撞条能够有效减少碰撞带来的伤害。尤其在儿童活动频繁的环境中,防撞条能有效保护孩...
2016-11-04 00:00:00

光敏电阻作为重要的光电元件,应用于光控开关、光线检测、自动调光等领域。Uniohnm(厚声)作为国内知名的光敏电阻品牌,优良的品质和稳定的性能,赢得了市场的认可...
2019-06-28 21:35:30

保险丝作为保护电路安全的重要元件,起到了非常重要的作用。驭舵保险丝作为市场上知名的保险丝品牌,优良的品质和多样的产品类型,赢得了广大用户的青睐。那么,驭舵保险丝...
2023-06-30 21:57:30