主要观点总结
本文主要介绍了雅特力科技的产品AT32微控制器系列在提高随机数质量方面的方法和实例。包括使用ADC误差和SRAM内容的不确定性两种方法提高随机数的乱度。文章还介绍了基于NIST统计测试集对生成的随机数进行测试的结果,以及雅特力科技的一些基本信息。
关键观点总结
关键观点1: AT32微控制器系列提高随机数质量的方法
介绍了使用ADC误差和SRAM内容的不确定性两种方法提高随机数的乱度。ADC配置和DMA配置的方法以及代码示例。利用这些方法在上电后执行,获得一个随机数种子,之后利用标准C函式库中的随机数生成器产生后续的随机数。
关键观点2: 基于NIST统计测试集的测试
对生成的随机数进行了NIST统计测试集的分析和测试,包括统计测试集源程序的下载和运行结果。测试结果显示,生成的随机数符合统计要求,具有良好的随机性。
关键观点3: 雅特力科技简介
介绍了雅特力科技是一家致力于推动全球市场32位微控制器(MCU)创新趋势的芯片设计公司,拥有领先的高端芯片研发技术。雅特力全系列产品通过ISO 9001质量管理体系认证,广泛应用于工控、电机、车载、消费等领域。
文章预览
概述 产品和生态系统安全性的需求比以往任何时候都更加重要。真随机数是所有安全系统的核心,其质量会影响设计的安全性。 因此在没有内置硬件TRNG的AT32的微控制器系列中,如何提高随机数的有效,来符合应用的需求。底下提供两种方法: 提高乱度的方法之一,使用ADC的误差。AT32的微控制器内置最多三个高级12位片上SAR模拟数字转换器(ADC)并提供自校准功能,保证12位ADC静态准确度(accuracy)可达10位以上。这误差可以拿来计算随机数的来源。 提高乱度的方法之二,使用上电时SRAM内容的不确定性。SRAM不保证上电时的内容值,每次上电后,内容也是不容易预测的。我们可以利用这个特性,拿来增加随机数的乱度。 利用ADC的误差来源产生随机数的方法 本章介绍了使用软件触发方式触发 ADC,配置普通信道和DMA。根据随机数需要的位数来配置信
………………………………