Questions tagged «random-number»

10
什么是随机数发生器的最小和最简单的种子?
一个小型微控制器(8位Atmel)控制许多灯光,以便以许多精美的随机灯光序列呈现灯光秀。 合适的伪RNG可以很好地完成其工作,但是我正在寻找一个好的种子。种子是必须的,因为如果有人同时打开多个这样的设备,那么如果它们都产生相同的效果序列,直到它们由于各自时钟源的微小差异而缓慢地分开,效果就不好了。 在必须通过按下按钮或按下开关来启动设备的情况下,可以使用一种非常好的方法来植入伪RNG,这是我经常使用的方法。µc上电后,就可以启动一个非常快速的计时器,并且第一次按下该按钮时,该计时器的值就会触发RNG。 问题是,在这种情况下,没有按钮。设备通电后,程序必须立即启动。 PCB上的位置非常有限(最多只能容纳几个最小的SMD零件),因此我正在寻找最小和最简单的解决方案。因此,我将排除真正的RNG硬件,无线电接收器等奇特的解决方案。 我所拥有的只是CPU中的16位计时器,还有一个未使用的可访问ADC的端口引脚。 我当前的解决方案是仅使用一个电阻(尽可能不准确)为ADC引脚提供大约一半的电源电压,并为RNG注入第一个AD转换值。但是,当今大多数10%的电阻器的误差都远低于1%(当我告诉他们我们想要他们能找到的质量最差的SMD电阻器时,可以想象供应商的面孔很有趣),因此,从同一种子开始的多个单元。 更好的选择是进行多次转换,并从这些测量的最低有效位中建立一个值。但是,我之前使用过这种µc类型的ADC,我知道它非常准确。以最快的速度运行ADC可能会有所帮助。 有谁有更好的建议?种子不需要完全均匀地分布,但是分布越均匀越好。一个16位种子且分布完全均匀的梦想太好了,以至于无法实现,但是我认为在5位或6位上进行中等分配可能就足够了。

7
使用GPIO引脚的随机数生成器?
我刚刚阅读了AVR随机数生成器问题,并遇到了多种在AVR中生成随机种子的方法: 使用专用的“安全AVR” 使用内部温度传感器 读取未写入的EEPROM 测量用户输入之间的时间间隔 使用浮动ADC引脚。 为什么不只将一个数字引脚配置为输入而没有上拉和浮空呢?从理论上讲,应该生成随机位流。为什么不使用这个?状态变化太慢了吗?它倾向于卡在1还是0?还有其他问题吗?

9
Arduino是制作HRNG(硬件随机数生成器)的理想选择吗?
我正在为硬件随机数生成器设计一个将利用多种熵源(组合)的设计: 环境光 环境声(和声级) 环境温度 环境湿度 设备本身的位置(上下,向左倾斜,标题为右等) 将来还会有其他来源,甚至可能还有GPS数据(标记为可能是因为两个用户可能彼此并排站立,因此如果您知道他们,则可能是确定性的。) 我的想法是制作一个熵池“充电器”,让人们在白天继续随身携带,同时继续写入USB驱动器。 几个小时后,用户将拥有一个〜4GB的漂亮的熵池,可以将其插入PC并使用。我负担不起基于光或放射性衰变的真正昂贵的QRNG,因此我试图提供更便宜的产品。 您认为Arduino是制作此原型的最佳选择吗?如果没有,您会推荐什么?

7
AVR随机数发生器
我已经阅读了TI(slaa338)的一份应用笔记,其中描述了一种用于生成“用于实数”(与“伪”数相对)的随机数的技术。它利用MSP430有点奇怪的时钟子系统来实现此目标。有谁知道可以在AVR(尤其是XMega的AVR)上实现的用于生成“真实”随机数的技术?

4
rand()函数和RNG(随机数生成器)外设之间有什么区别?
我想知道STM32F4XXXX MCU中的RNG(随机数发生器)外设。请参阅本参考手册(第748页)。另一方面,我们在stdlib库中有rand()函数来执行相同的任务。现在我有两个问题: rand()函数和RNG(随机数生成器)外设之间有什么区别(优点和缺点)? 看这部分: 请说明这两种选择(尤其是第二种选择)。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.