FPGA实现的真随机数发生器:设计与性能分析
131 浏览量
更新于2024-08-31
收藏 357KB PDF 举报
"该文介绍了一种基于FPGA的真随机数发生器设计,通过利用振荡环路的相位漂移和抖动以及亚稳态作为随机源,结合线性反馈移位寄存器(LFSR)进行后续处理。在Xilinx Virtex-5平台上进行测试,证明设计产生的随机序列质量高,可满足DIEHARD测试标准,并且由于仅使用基本逻辑单元,易于移植到ASIC设计,缩短开发周期。"
在信息安全和统计学领域,真随机数发生器(True Random Number Generator, TRNG)扮演着关键角色。它们生成的随机序列必须具有良好的统计性质,如均匀分布和不可预测性,以确保数据安全。文章引用了B. Sunar, W.J. Martin和D.R. Stinson的研究,介绍了几种常见的TRNG设计方法,包括振荡器采样、离散时间混沌法等。本文则提出了一种纯数字电路实现的TRNG方案,不依赖特殊硬件资源如PLL,有利于FPGA验证和ASIC集成。
该设计的核心在于使用两组独立的振荡环路,每组由反相器和延迟单元组成。由于内部噪声的影响,各振荡器之间会出现相位漂移,而这种漂移加上时钟抖动,成为随机性的来源。同时,利用锁存器的亚稳态,即在特定条件下其输出处于不确定状态,进一步增加了随机性。通过多组振荡器的输出异或和同步处理,最终生成随机序列。
文章详细探讨了相位漂移和抖动的概念,抖动是时钟信号周期的随机变化,相位漂移则源于振荡器起振时刻的微小差异。这两个现象在数字电路中天然存在,适合作为随机数生成的基础。亚稳态是双稳态器件(如锁存器)在非稳定状态下的表现,其输出处于‘1’和‘0’之间,提供了额外的随机性元素。
在Xilinx Virtex-5 FPGA上实施的测试表明,该TRNG设计生成的随机序列能够通过DIEHARD测试,这是一个严格的随机性评估套件,证明了设计的随机性和质量。此外,由于设计仅使用基本逻辑单元,使得其能快速适应ASIC平台,显著提高了设计效率。
这篇文章提供了一种创新的FPGA-based TRNG设计,它利用了数字电路的固有特性生成随机数,且在性能和可移植性方面表现出色,对于需要高效、高质量随机数生成的领域具有重要价值。
2020-08-08 上传
2021-01-30 上传
2023-10-25 上传
2023-02-17 上传
2023-07-28 上传
2023-10-25 上传
2023-05-17 上传
2024-07-19 上传
2024-01-19 上传
weixin_38617297
- 粉丝: 2
- 资源: 896
最新资源
- 前端协作项目:发布猜图游戏功能与待修复事项
- Spring框架REST服务开发实践指南
- ALU课设实现基础与高级运算功能
- 深入了解STK:C++音频信号处理综合工具套件
- 华中科技大学电信学院软件无线电实验资料汇总
- CGSN数据解析与集成验证工具集:Python和Shell脚本
- Java实现的远程视频会议系统开发教程
- Change-OEM: 用Java修改Windows OEM信息与Logo
- cmnd:文本到远程API的桥接平台开发
- 解决BIOS刷写错误28:PRR.exe的应用与效果
- 深度学习对抗攻击库:adversarial_robustness_toolbox 1.10.0
- Win7系统CP2102驱动下载与安装指南
- 深入理解Java中的函数式编程技巧
- GY-906 MLX90614ESF传感器模块温度采集应用资料
- Adversarial Robustness Toolbox 1.15.1 工具包安装教程
- GNU Radio的供应商中立SDR开发包:gr-sdr介绍