微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > 关于随机数生成器复用的问题

关于随机数生成器复用的问题

时间:10-02 整理:3721RD 点击:
        本人最近用verilog写了一个随机数生成器RNG,生成一个32bits的随机数,然后加入到信道仿真的模块中,在信道仿真的模块里面需要有3个子模块都需要用这个随机数生成器,我一开始尝试每个子模块都用一个独立的随机数生成器,但是我在想,能不能在外面写一个随机数生成器,然后通过接口传入子模块里面呢?这样就不用在每个模块里面都写一个独立的随机数生成器,节省了资源,为了降低关联性,我可以在每个模块对这个随机数进行拼接和打乱,比如模块A用 RNG生成的[31:0],模块B用把这32bits打乱,比如 {[15:0] , [31:16]} 模块C用{[15:25],[14:0],[31:16] } ,这样就降低了整个框架的复杂度,而且也节省了资源,请问下这做那个做法可行不 ? 会不会有什么不良的效果。      
       小弟菜鸟,希望坛友解答指教

只使用同一个输出那么位拼接是没法消除关联性的,因为拼接方法是固定的

如果不介意功耗,我觉得可以让发生器一直运行,在其输出口实时产生数值,然后使用的模块在任意时刻取数据,只要取数时差不固定,关联性应该就很小

好的,谢谢你的建议,我尝试下效果如何~~

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top