补充: FPGA产生基于LFSR的伪随机数

FPGA学习交流 2018-06-13 11:21 次阅读

       大家好,又到了每日学习的时间了,上一篇《荐读:基于FPGA 的CRC校验码生成器》文中,提到了“要实现这一过程,仍然需要LFSR电路,参看《FPGA产生基于LFSR的伪随机数》中关于该电路特性的介绍”,在这补一篇《FPGA产生基于LFSR的伪随机数》,欢迎大家交流学习。
       
       1.概念
       通过一定的算法对事先选定的随机种子(seed)做一定的运算可以得到一组人工生成的周期序列,在这组序列中以相同的概率选取其中一个数字,该数字称作伪随机数,由于所选数字并不具有完全的随机性,但是从实用的角度而言,其随机程度已足够了。这里的“伪”的含义是,由于该随机数是按照一定算法模拟产生的,其结果是确定的,是可见的,因此并不是真正的随机数。伪随机数的选择是从随机种子开始的,所以为了保证每次得到的伪随机数都足够地“随机”,随机种子的选择就显得非常重要,如果随机种子一样,那么同一个随机数发生器产生的随机数也会一样。

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


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

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

       D2=D1_OUT=1;

       D1=D0_OUT^D2_OUT=0;

       D0=D2_OUT=1;

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

       画出状态转移图如下:
       172437n8pz2rre8a2aepg9.png


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

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

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

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

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


       3.verilog实现

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

       verilog源代码如下:
       172438bsww78bz0ozi81iw.png


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

       这篇补充就说到这里,各位,加油。

热门推荐

收藏 人收藏
分享:

评论

相关推荐

高速数据转换器实现方案中使用LVDS的应用诀窍和技巧

采用单端CMOS数字信号时,逻辑电平以大约1 V/nS的速度移动,典型输出负载为10 pF(最大值)....

的头像 管家婆生活幽默工程专辑 发表于 07-17 08:41 138次 阅读
高速数据转换器实现方案中使用LVDS的应用诀窍和技巧

学好FPGA,轻松快速实现工程梦

发表于 07-16 16:36 127次 阅读
学好FPGA,轻松快速实现工程梦

为FPGA 设计电源管理,有几点要素要牢记!

发表于 07-16 16:02 154次 阅读
为FPGA 设计电源管理,有几点要素要牢记!

自制CPU(一)单周期

设计是基于MIPS指令集的单周期,多周期,流水线CPU。最终实现也是在FPGA板上跑了一个小程序,开....

的头像 学FPGA,慢慢来 发表于 07-16 09:20 99次 阅读
自制CPU(一)单周期

自制CPU(二)多周期

接上次,我们简单的说了一下单周期的理解,下面我们说一下多周期。单周期每一条指令都是一个时钟周期结束。....

的头像 学FPGA,慢慢来 发表于 07-16 09:20 102次 阅读
自制CPU(二)多周期

自制CPU(三)流水线

经过上两篇文章的阅读,大家应该清楚自己的CPU大致是如何处理数据的,而又是如何执行指令的。我们现在来....

的头像 学FPGA,慢慢来 发表于 07-16 09:20 87次 阅读
自制CPU(三)流水线

自制CPU(四)程序编写

在我们设计出来前边三种CPU之后,我们来进行程序的编写。 所谓程序的编写,就是;利用我们写好的CPU....

的头像 学FPGA,慢慢来 发表于 07-16 09:20 256次 阅读
自制CPU(四)程序编写

PYNQ 基于Zynq架构添加了对python的支持

PYNQ全称为Python Productivity for Zynq,即在原有Zynq架构的基础上....

发表于 07-14 09:05 74次 阅读
PYNQ 基于Zynq架构添加了对python的支持

基于FPGA的简单图像处理程序,可实现两个功能

首先编写相应的C/C++语言程序,加入到Vivado HLS工程中,再编写相应的testbench代....

发表于 07-14 08:56 93次 阅读
基于FPGA的简单图像处理程序,可实现两个功能

FPGA的两种处理器中断模式

边沿触发用的很少,一般还是以下降沿触发为主。当设备完成一个数据后,会输出一个下降沿,触发处理器。而电....

发表于 07-14 08:30 64次 阅读
FPGA的两种处理器中断模式

关于FPGA芯片的故事,你知道多少呢?

除了CPU(中央处理)和GPU(图形处理器)之外,芯片家族还有另外一名“成员”—FPGA。

发表于 07-13 15:20 142次 阅读
关于FPGA芯片的故事,你知道多少呢?

使用 DSP+ARM SoC 的优化雷达系统物料清单/参考指南及应用手册下载

发表于 07-13 12:05 6次 阅读
使用 DSP+ARM SoC 的优化雷达系统物料清单/参考指南及应用手册下载

Xilinx Kintex UltraScale XCKU040 FPGA 电源解决方案PMP10630技术资料下载

发表于 07-13 11:33 10次 阅读
Xilinx Kintex UltraScale XCKU040 FPGA 电源解决方案PMP10630技术资料下载

关于FPGA的{12 - color_width{1'b0}} 是什么意思?

发表于 07-12 18:49 117次 阅读
关于FPGA的{12 - color_width{1'b0}} 是什么意思?

基于FPGA的无线视频技术应用解决方案详解

数字视频技术是当今消费市场上最令人激动的一个亮点,而无线技术能够确保数据的加密并逐渐支持更高的数据....

发表于 07-12 16:00 63次 阅读
基于FPGA的无线视频技术应用解决方案详解

FPGA码代码非常好用的编辑软件-Gvim

发表于 07-12 15:20 138次 阅读
FPGA码代码非常好用的编辑软件-Gvim

Virtex-6 ml605以太网接口问题

发表于 07-12 11:21 161次 阅读
Virtex-6 ml605以太网接口问题

FPGA常用设计思想与技巧

两种不推荐的异步时钟域操作方法:一种是通过增加Buffer或者其他门延时来调整采样;另一种是盲目使用....

的头像 FPGA极客空间 发表于 07-12 09:33 1285次 阅读
FPGA常用设计思想与技巧

Mellanox网卡嵌入Xilinx FPGA,能实现网络功能提速

在线路内对冲场景下,来自以太网接口的流量将被传递至FPGA以实现网络分流,而后被交付至Connect....

发表于 07-12 08:38 51次 阅读
Mellanox网卡嵌入Xilinx FPGA,能实现网络功能提速

有关FPGA的配置的问题?

发表于 07-11 23:35 172次 阅读
有关FPGA的配置的问题?

高云半导体广州总部启用暨校企合作研讨会

广东高云半导体科技股份有限公司(以下简称“高云半导体”)于7月10日在广州科学城总部经济区科学大道2....

的头像 人间烟火123 发表于 07-11 16:53 1148次 阅读
高云半导体广州总部启用暨校企合作研讨会

智能FPGA芯片让“中国芯”在世界舞台大放异彩,引领世界“芯”未来

据了解,贾红的爷爷是一位革命烈士,曾跟随刘志丹等革命前辈抛头颅,洒热血,为中国的革命事业献出了他宝贵....

的头像 芯师爷 发表于 07-11 15:57 410次 阅读
智能FPGA芯片让“中国芯”在世界舞台大放异彩,引领世界“芯”未来

常用于3个电源的加电和断电排序

发表于 07-11 10:23 303次 阅读
常用于3个电源的加电和断电排序

基于FPGA实现数字控制技术的程控直流变换器设计

传统变换器采用模拟硬件实现闭环反馈控制,获得稳定的电压和电流输出。模拟控制实时反应系统状态,响应速度....

发表于 07-11 08:40 76次 阅读
基于FPGA实现数字控制技术的程控直流变换器设计

Xilinx FPGA在基因组测序中的优势

PrecisionFDA平台是基因组信息学社区和共享数据平台,这是一个为研究人员准备的开源、基于云的....

发表于 07-11 08:33 84次 阅读
Xilinx FPGA在基因组测序中的优势

菲数科技以“FPGA+云”助力高性能计算

随着通用处理器(CPU)的摩尔定律已入暮年,从美国的微软、亚马逊到中国的BAT、华为,几乎所有的互联....

的头像 FPGA极客空间 发表于 07-10 16:56 1312次 阅读
菲数科技以“FPGA+云”助力高性能计算

机器学习正处于经典过热期的顶端

另一位发言者是Dean Kamen,他是DEKA研发中心的创始人,他指出人们对物联网隐私问题以及智能....

的头像 Imagination Tech 发表于 07-10 16:56 207次 阅读
机器学习正处于经典过热期的顶端

xilinx FFT ip核仿真的误差太大?

发表于 07-10 16:16 183次 阅读
xilinx FFT ip核仿真的误差太大?

周正宁:WebRTC+AV1将会是未来技术的风向标

在WebRTCon 2018期间,Aupera CTO周正宁接受了LiveVideoStack的专访....

的头像 LiveVideoStack 发表于 07-10 15:29 193次 阅读
周正宁:WebRTC+AV1将会是未来技术的风向标

FPGA的原型介绍

原型设计不是一个按几个按钮就能完成的过程,在它不同的阶段需要仔细的关注和思考。除说明这个过程需要完成....

发表于 07-09 15:11 73次 阅读
FPGA的原型介绍

华为云携手峰科发布FPGA基因加速云解决方案,基因测序性能提升5倍

为了更好的解决基因测序行业面临的基因组分析标准流程不经济高效,以及跨不同云和硬件(CPUs,FPGA....

发表于 07-09 14:14 81次 阅读
华为云携手峰科发布FPGA基因加速云解决方案,基因测序性能提升5倍

FPGA为什么会成为嵌入式系统设计的主流选择

随着消费管家婆生活幽默、物联网等领域的不断发展,用户需求也越来越复杂和多样,因此我们在嵌入式系统设计中必须选择....

发表于 07-09 14:04 98次 阅读
FPGA为什么会成为嵌入式系统设计的主流选择

采用Artix-7 XCA75T FPGA的高速多通道数字转换器

Spectrum Instrumentation公司推出了一款新的基于M2p 平台以及59xx模块的....

发表于 07-09 14:02 40次 阅读
采用Artix-7 XCA75T FPGA的高速多通道数字转换器

被zynq的GPIO唬住,告诉你zynq的3种GPIO

我们先看有哪三种GPIO:MIO、EMIO、AXI_GPIO。其中MIO和EMIO是直接挂在PS上的....

发表于 07-07 08:23 99次 阅读
被zynq的GPIO唬住,告诉你zynq的3种GPIO

FPGA与ASIC在打一场围绕成本、功耗和性能的硬仗

随着高通、TI、瑞萨、NXP等汽车管家婆生活幽默巨头均在2014年前后着手研发基于深度学习的处理器单元,他们普....

的头像 高工智能汽车 发表于 07-06 15:37 257次 阅读
FPGA与ASIC在打一场围绕成本、功耗和性能的硬仗

异构计算的软硬件分割没有最好,只有更好的详细资料概述

可以看出,一次旅行,其实结合了各种交通工具的优点。随着摩尔定律的失效和CPU在AI等并行计算方面的缺....

的头像 ssdfans 发表于 07-06 11:00 583次 阅读
异构计算的软硬件分割没有最好,只有更好的详细资料概述

FPGA在AI芯片竞赛中处于什么位置?

人工智能(AI)处理器和支持AI的SoC目前正受到投资界的全面关注,因为他们被视为新兴高度自动化车辆....

的头像 CINNO 发表于 07-06 10:03 426次 阅读
FPGA在AI芯片竞赛中处于什么位置?

AM调制的FPGA实现原理和步骤

将调制信号加上一个直流分量,保证信号的最小值大于零,然后再和载波相乘,得到已调信号。

发表于 07-06 09:00 74次 阅读
AM调制的FPGA实现原理和步骤

如何看待Lattice并购案,根据3大点来看我国FPGA发展路径

FPGA作为通信、航天、军工等领域的关键核心器件,是保障国家战略安全的重要支撑基础。近年来,随着数字....

的头像 FPGA极客空间 发表于 07-06 08:47 1337次 阅读
如何看待Lattice并购案,根据3大点来看我国FPGA发展路径

“FPGA+云"如何提高性能计算“FPGA+云"与“FPGA+端"的详细对比

我知道,我对与管家婆生活幽默有关的所有事情都很着迷,但不论从哪个角度看,今天的现场可编程门阵列(FPGA),都....

的头像 FPGA极客空间 发表于 07-06 08:42 1074次 阅读
“FPGA+云"如何提高性能计算“FPGA+云"与“FPGA+端"的详细对比

基于FPGA加速vBRAS解决方案,三家公司联合发布

据称,本次三家联合发布的解决方案是业界首个在电信云中采用FPGA完成商用级vBRAS数据面调度加速的....

发表于 07-06 08:30 86次 阅读
基于FPGA加速vBRAS解决方案,三家公司联合发布

数据传输差异的处理

由于数据传输的差异,测试pattern生成的眼图并不一定会是从一个完整的眼图起始。因此,如果采用第一....

的头像 FPGA极客空间 发表于 07-05 15:25 239次 阅读
数据传输差异的处理

FPGA的电源电压种类,你知道多少?

在硬件电路设计中,每一个IC芯片都有相应的电源端口对其供电,以驱动IC进行工作。对于普通的IC芯片,....

发表于 07-05 08:33 151次 阅读
FPGA的电源电压种类,你知道多少?

Altium Designer的发展历史和详细介绍及安装和使用的概述

Altium Designer系统是Altium公司于2006年年初推出的一种管家婆生活幽默设计自动化(Ele....

发表于 07-05 08:00 106次 阅读
Altium Designer的发展历史和详细介绍及安装和使用的概述

关于FPGA的几点问题,你了解吗?

因此,要想学好FPGA,你得用硬件的思维方式来编写代码,注重FPGA的系统结构设计,好的系统结构设计....

发表于 07-04 14:12 98次 阅读
关于FPGA的几点问题,你了解吗?

Zynq、FPGA等相关芯片可以运用到那些领域

因为Zynq-7000 PS(Processing System)端嵌入了Cortex-A9 ARM....

发表于 07-04 14:12 90次 阅读
Zynq、FPGA等相关芯片可以运用到那些领域

Xilinx品牌FPGA使用的三种证书

JESD204B协议是目前高速AD,DA通用的协议。对于基带使用FPGA用户来说,Xilinx品牌的....

发表于 07-04 10:12 78次 阅读
Xilinx品牌FPGA使用的三种证书

乘法器的使用方法你知道哪些?

在做项目的过程中,经常遇到乘法计算,乘法器的设计就尤为重要。乘法器决定了最终电路功能能否实现,资源使....

的头像 FPGA极客空间 发表于 07-04 09:41 365次 阅读
乘法器的使用方法你知道哪些?

关于基于Profibus-DP总线的位移传感器设计

测量技术是现代工业生产和科学研究中必不可少的一项技术,其中基于磁致伸缩效应的位移测量技术因其稳定性好....

的头像 管家婆生活幽默设计 发表于 07-03 14:06 384次 阅读
关于基于Profibus-DP总线的位移传感器设计

FPGA在自动驾驶车内部发挥的重要作用详细资料概述

虽然每个人都希望宣示ASIC的所有权,但大部份最先进的处理都是以FPGA完成的,它让用户有机会在高效....

的头像 智车科技 发表于 07-03 10:34 1000次 阅读
FPGA在自动驾驶车内部发挥的重要作用详细资料概述

使用Xilinx Vivado设计套件创建一个简单的HelloWorld项目

Xilinx以制造 可编程门阵列(FPGA)而闻名,它是基于一个通过可编程接点连接的可配置逻辑块(C....

发表于 07-03 10:19 131次 阅读
 使用Xilinx Vivado设计套件创建一个简单的HelloWorld项目

基于FPGA的Cordic算法实现的设计与验证

本文是基于FPGA实现Cordic算法的设计与验证,使用Verilog HDL设计,初步可实现正弦、....

发表于 07-03 10:18 81次 阅读
基于FPGA的Cordic算法实现的设计与验证

基于FPGA +AD7609的数据采集系统的实现和设计

随着信息技术的发展,特别是各种数字处理器处理速度的提高,人们对数据采集系统的要求越来越高,特别是在一....

发表于 07-03 09:01 166次 阅读
基于FPGA +AD7609的数据采集系统的实现和设计

数字图像水印的FPGA实现步骤

未加水印的图像表示为f水印表示为w,常数a控制水印和衬底图像的相对可见性。如果a为1,则水印是不透明....

发表于 07-03 08:22 93次 阅读
数字图像水印的FPGA实现步骤

Xilinx Zynq-7000系列:基于ARM Cortex-A9内核处理器和FPGA结构

该委员会专门设计用于与来自锡林克斯的PYNQ项目合作,并使用Python语言和库,设计师可以创建高性....

发表于 07-03 08:17 120次 阅读
Xilinx Zynq-7000系列:基于ARM Cortex-A9内核处理器和FPGA结构

清华大学魏少军教授:从IA到AI,我们还要走多远

清华大学魏少军教授指出,未来10年,人工智能和深度学习将成为提升硅片需求的主导因素。到2025年,人....

的头像 章鹰 发表于 07-02 18:10 1149次 阅读
清华大学魏少军教授:从IA到AI,我们还要走多远

新思科技公司宣布集成化混合原型验证解决方案

通过对新设计的功能使用Virtualizer虚拟原型技术和对重用逻辑使用基于FPGA的HAPS原型技....

发表于 07-02 11:50 85次 阅读
新思科技公司宣布集成化混合原型验证解决方案

“万能芯片”FPGA在深度学习领域的用法

而众所周知,在专用芯片与通用芯片中间,还有一个更为灵活,也更为神秘的领域:FPGA。无论是英特尔天价....

发表于 07-02 07:59 311次 阅读
“万能芯片”FPGA在深度学习领域的用法

Xilinx Spartan-6系列封装概述和管脚分配

 Spartan-6系列具有低成本、省空间的封装形式,能使用户引脚密度最大化。所有Spartan-6....

发表于 07-01 10:48 113次 阅读
Xilinx Spartan-6系列封装概述和管脚分配

FPGA简单门电路怎么实现?

verilog实现反相器,2输入与门、2输入或门、2输入与非门、2输入或非门、2输入异或门、2输入同....

发表于 07-01 10:28 138次 阅读
FPGA简单门电路怎么实现?