lee8871 发表于 2025-2-23 10:38

HC32L190的TRNG性能如何?

HC32L190的TRNG性能如何?

根据i的值,大概可以估计生成一次随机数要几百tick时钟。
根据手册,这个能产生伪随机数是吗?

请问具体随机数生成的原理是什么呢?配置这些寄存器会对随机数有什么影响?

rsxh 发表于 2025-2-25 15:11

TRNG_LOAD是设置为1加载新的初始值, 这个初始值是一个真随机数, 故产生的随机数序列也为真随机数。
如设置为0, 则初值是确定的,是通过伪随机数生成器,数学的迭代方法生成的随机数序列。再进行相对“随机”截取组合的方法产生, 在一定程度上有可重复性。

chenqianqian 发表于 2025-2-26 19:34

随机数发生器能保证每次产生的数值都不一样吗?

21mengnan 发表于 2025-2-27 22:05

这是干什么的外设啊?

lee8871 发表于 2025-3-4 17:30

chenqianqian 发表于 2025-2-26 19:34
随机数发生器能保证每次产生的数值都不一样吗?

真随机数是能保证每次都不一样的。原理大概是ADC采集某个模拟噪声,然后随机算法打乱。

huquanz711 发表于 2025-3-4 19:24

TRNG在加解密算法中很重要

lee8871 发表于 2025-3-5 17:53

huquanz711 发表于 2025-3-4 19:24
TRNG在加解密算法中很重要

是的。
加密需要的伪随机数发生器是不可预测的。
也就是说,一个随机数发生器,攻击者可以获得连续多次的随机数值,仍然不能预测下一此获取随机数的值。
看起来HC32上的随机数发生器是个LFSR,并且在反馈路线上可以选择异或某个物理噪声源,以获得真随机数。

现在的问题是,手册没有提供这个随机数发生器作为伪随机数发生器的具体算法。
不知道官方能不能解释一下,或者另外出一个手册。

我对 HC32L190伪随机数发生器做了分析,看起来性能还是很好的:

灰度图

连续0的数量和连续1的数量

对随机序列进行FFT

byte频数统计

zhengshuai888 发表于 2025-3-6 08:42

这个随机数生成器能保证每次产生的数据都不一样吗?

lee8871 发表于 2025-3-6 09:56

zhengshuai888 发表于 2025-3-6 08:42
这个随机数生成器能保证每次产生的数据都不一样吗?

能{:smile:}
页: [1]
查看完整版本: HC32L190的TRNG性能如何?