- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
【2017年整理】FPGA产生基于LFSR的伪随机数
1.概念 通过一定的算法对事先选定的随机种子(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源代码如下:moduleRanGen(inputrst_n, /*rst_n is necessary to prevet locking up*/inputclk, /*clock signal*/input load, /*load seed to rand_num,active high */input [7:0] seed, outputreg [7:0] rand_num /*random number output*/);always@(posedgeclk or negedgerst_n)beginif(!rst_n)rand_num =8b0;else if(load)rand_num =seed; /*load the initial value when load is active*/elsebeginrand_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仿真波形: 以1111 1111为种子,load信号置位后,开始在255个状态中循环,可将输出值255、143、111……作为伪随机数。?
您可能关注的文档
- 【2017年整理】2016年二级建造师继续教育必修课考试题库.doc
- 【2017年整理】2016年二建建设工程法规及相关知识重点笔记.doc
- 【2017年整理】2016年云南二级建造师继续教育考题全套.doc
- 【2017年整理】2016年二轮作文立意训练.docx
- 【2017年整理】2016年二级建造师考试《法规及相关知识》真题及答案.docx
- 【2017年整理】2016年会计继续教育满分答案.doc
- 【2017年整理】2016年会计继续教育模拟试卷.docx
- 【2017年整理】2016年会计人员继续教育考试.docx
- 【2017年整理】2016年会计继续教育练习题.docx
- 【2017年整理】2016年会计继续教育考试.docx
- 【2017年整理】GrowingIO-互联网数据分析学习最全书籍清单.docx
- 【2017年整理】G型卫生级螺杆泵优点、原理及型号意义.docx
- 【2017年整理】G型螺杆泵的工作原理及注意事项.docx
- 【2017年整理】HR必知的劳动合同条款.doc
- 【2017年整理】C1汽车驾驶证科目一考试题库.doc
- 【2017年整理】IE基础知识习题.doc
- 【2017年整理】IQC流程管理日常工作.doc
- 【2017年整理】l第十二分册各类设备设施验收.doc
- 【2017年整理】MBA个人案例分析要求2016 F外贸企业应收账款管理浅析 周畅.doc
- 【2017年整理】MP3格式写数据到MP3数据帧.doc
最近下载
- 电力隧道电力隧道工程c标段施工方案.doc VIP
- 九年级物理第21章《信息的传递》全章课件.ppt VIP
- Unit 4 Fun with numbers(Get ready)外研版(三起)(2024)英语三年级上册.pptx VIP
- (妇产科)子宫内膜癌教学查房.pptx
- 供应商审核报告范文模板.docx VIP
- 机场行测考试题库.pdf VIP
- 2025年《网络设备配置与安全》课程标准.docx VIP
- 成都市盐道街中学高一入学语文分班考试真题含答案.docx VIP
- 成都市盐道街外国语2025高一入学英语分班考试真题含答案.docx VIP
- 成都市盐道街外国语2025高一入学数学分班考试真题含答案.docx VIP
文档评论(0)