完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
■ ti公司 MSP430微控制器产品部 Lane Westlund
不管是生成随机器件地址、强化加密算法还是创建独立产品密钥,可靠地生成随机数都变得日益重要。这些随机数对于日常嵌入式系统非常有用,比如车库门接收机必须一一对应地正确识别远程控制的随机数,以防止非授权访问。为了生成随机数,开发人员可以使用16 位 MCU 确保将所有信号都控制在 MCU 内部。 |
|
相关推荐
3个回答
|
|
双时钟芯片架构可以支持TI 超低功耗MCU MSP430的随机数生成能力。超低频振荡器(VLO)与数控振荡器(DCO)是两个独立的时钟系统,可以利用二者间的计时差生成随机位流。一个VLO时钟周期中的DCO时钟数量大致相同。然而,由于 VLO与DCO时钟源彼此独立变化,无法预测生成的数字是奇数还是偶数。更重要的是,即使在前面生成的数为已知的情况下,也不可能预测之后的结果。
由于VLO的灵活性很高,其速度可降至DCO以下。然后可以将定时器配置为升序计数,将DCO作为源时钟,从而触发对下一次VLO从低到高升序的采样。这次采样将记录一个VLO时钟周期中的 DCO 时钟周期数。由于时钟源的变化,每次采样将导致单位VLO周期内的DCO时钟数略有差异。正是这种差异才产生了随机数字。例如,为了生成 16 位随机数,需要进行 16 次采样,每个被采样数字的最低有效字节转换成存储器中的一个字。 |
|
|
|
设计人员可以使用定时器外设收集随机LSB,通过在每个采样周期中确保CPU处于关闭状态,可以实现超低功耗。只需要短暂使用CPU即可将 LSB 转换为存储单元。
尽管上述方法是随机数的主要来源,但是,MSP430 时钟系统还是允许设计人员结合反馈法使用。在要求进行 FIPS 140-2 测试时,这些方法可提高算法性能。 第一个反馈机制是,在每个采样位后使 DCO 略微加速。时钟控制寄存器在每个位后加上数字5。这种相加导致在每个环路DCO的速度均高于VLO。虽然可以使用任何数字,但数字5可以产生足够大的阶跃变化,确保DCO与VLO间大的差异。 |
|
|
|
另外,每次转换 LSB 时,两个以前采样的随机位被按位加至时钟控制寄存器的除法器位。这些位在到达计时器之前将控制用于 VLO 的除法器,同时改变计时器测定的VLO 与 DCO 之间的关系。
最后,每个得出的位实际上是 5 个环路“多数原则”的结果。如前所述,每个环路都从CCR生成其自身的 LSB,但 5 的“多数原则”用于选择最终位。 通过这种方式,MSP430 MCU 能够以极低的功耗生成随机位的连续流。这种位流可以用于创建随机数,如果不需要对运行的应用时钟架构进行修改,将针对伪随机数生成器 (PRNG) 生成初始种子。 借助该技术,就可以生成通过 FIPS 140-2 随机性测试的位流。这就是说,该技术可广泛用于需要生成随机数的各种应用领域,特别是随着无线技术的推广。 来源:《世界电子元器件》 |
|
|
|
只有小组成员才能发言,加入小组>>
788 浏览 0 评论
1151 浏览 1 评论
2527 浏览 5 评论
2860 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2709 浏览 6 评论
keil5中manage run-time environment怎么是灰色,不可以操作吗?
1068浏览 3评论
193浏览 2评论
455浏览 2评论
368浏览 2评论
M0518 PWM的电压输出只有2V左右,没有3.3V是怎么回事?
453浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-21 08:14 , Processed in 0.971462 second(s), Total 82, Slave 63 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号