一种基于FPGA的高斯白噪声发生器的设计与实现毕业设计.pdf_第1页
一种基于FPGA的高斯白噪声发生器的设计与实现毕业设计.pdf_第2页
一种基于FPGA的高斯白噪声发生器的设计与实现毕业设计.pdf_第3页
一种基于FPGA的高斯白噪声发生器的设计与实现毕业设计.pdf_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第 30卷第 6期遥 ? 测 ? 遥 ? 控vo. l 30 , ? . 6 2009年 11月journal of tele m etry , tracking and comm andnovember 2009 一种基于 fpga的高斯白噪声发生器的 设计与实现 * 艾余雄, ? 寇艳红 (北京航空航天大学电子信息工程学院? 北京?100191) * 资助项目: 国家 863计划课题 ( 2006aa12z304及 2007aa12z302) ? 收稿日期: 2009?05?04? 收修改稿日期: 2009?07?28 ? ? 摘? 要: 给出一种基于 fpga、 采样率为 90 mhz的快速高斯白噪声发生器的算法、 结构和实现。利用 casr和 lfsr 组 合发生器产生均匀分布的随机数, 具有周期长、 相关性低、 分布均匀等优点。采用映射函数及其折线逼近方法实现均匀分 布噪声到高斯分布噪声的转化, 最大限度地降低运算量。仿真和实测结果表明, 方案正确可行, 能够应用于实际通信信道 模拟器中。 关键词: 均匀分布; ?lfsr; ? casr; ? 高斯白噪声; ? fpga 中图分类号: tn911?4? ? ? ? ? ? 文献标识码: b? ? ? ? ? ? 文章编号: cn11?1780( 2009) 06?0036?05 引? 言 高斯白噪声信号源是通信信道模拟器必不可少的一个功能模块。现有的硬件高斯噪声发生器通常分 为物理噪声发生器和数字合成噪声发生器两类。物理噪声发生器精度较高, 但是实现电路较为复杂。为 快速简便地获得高斯白噪声, 一般采用数字合成方法实现, 首先产生均匀分布的白噪声, 然后通过一定的 转换获得高斯白噪声。 文献 1利用 tausworthe算法生成均匀分布的随机数, 然后通过查找表法产生高斯白噪声。文献 2 则利用 lagged- f ibonacci算法生成均匀分布白噪声, 然后通过公式法实现均匀分布白噪声到高斯白噪声 的转化。而文献 3利用一个线性反馈移位寄存器 lfsr( linearly feedback shift register)产生均匀分布 随机数, 然后通过间隔几个时钟周期抽取 lfsr的状态值来降低随机数的相关性, 最后通过折线逼近法实 现均匀分布到高斯分布的转换。 综合上述几个方案, 本文给出了一种基于 fpga 的硬件高斯白噪声发生器的设计及实现方法。第一 步, 根据文献 4提出的随机数产生方案, 通过细胞自动机移位寄存器 casr ( cellular automata shift reg? ister)和 lfsr组合发生器产生均匀白噪声; 第二步, 根据文献 3和文献 5中给出的均匀分布到高斯分 布之间的映射关系, 实现均匀分布白噪声到高斯白噪声的转化。整个设计方案首先在 m atlab 中进行仿 真, 然后采用 veriloghdl编程, 可移植性强, 可作为功能模块嵌入其他系统中进行测试仿真。 1? 整体方案设计 高斯白噪声发生器主要由均匀分布随机数产生模块和均匀分布向高斯分布转换模块两个模块组成, 其设计方法和原理如下文所述。 1?1? 均匀分布白噪声的生成 基于线性反馈移位寄存器 lfsr产生的伪随机噪声具有类似随机噪声的一些统计特性, 且便于重复 产生和处理, 因此获得了广泛的应用。然而它产生的随机数相邻之间具有一定的相关性 3, 为了降低这 种相关性, 本文采取两种移位寄存器 casr和 lfsr构成组合随机数发生器的方法 4。组合发生器的结 构如图 1所示。图中, lfsr为 43bi, t 周期为 2 43 - 1 , 采用的本原多项式为 x 43 + x 41 + x 20 + x + 1 。casr为 37bi, t 周期为 2 37 - 1, 其实现方式如下 ca90?i( t+ 1) = ?i+ 1( t) ?i- 1( t)( 1) ca150?i( t+ 1) = ?i+ 1( t) ?i( t) ?i- 1( t)( 2) 其中, ca150表示的是在第 28bit的迭代逻辑, ca90表示在其他位置的迭代逻辑, 运算符 表示异或关系。 将两种移位寄存器进行组合, 选取 32bit进行异或运算。最终产生 32位随机数, 其周期为 2 80 - 2 43 - 2 37 + 1 。 这种组合发生器能够快速产生随机数, 且产生的随机数具有较长的周期、 良好的均匀分布特性及比特 之间的独立性。后续均匀白噪声将通过映射函数法 (查找映射表 )转化为高斯白噪声。考虑到在 matlab 环境下建模与仿真时, 如果随机数的位数太多, 在建立映射表过程中运算量将超出内存的限制, 因此本方 案最多截取组合发生器产生的 32位随机数的低 23位作为均匀白噪声输出。可以看出, 整个随机数的产 生过程只需要移位和异或运算, 适合在 fpga中实现。 图 1? 32位随机数组合发生器 1?2? 均匀白噪声到高斯白噪声的映射 通过映射函数法实现均匀白噪声到高斯白噪声的 快速转化 3 , 5。算法原理如下, 设 x 服从均匀分布, y 服从高斯分布且其概率密度函数为 f (y )。首先将随 机变量 y进行合理的离散化, 会得到一系列离散值 yi, 对应的函数值为 f (yi)。将每个 f (yi)映射到均匀分布 随机变量 x 的某一区间 xi, xi+ 1, 满足条件 !xi+ 1- xi ! = f (yi)。这样就建立了均匀分布随机变量 x 到高斯分布随机变量 y之间的映射函数关系。这种映射 关系可以表示为 y = g(x ), 映射曲线如图 2中的实线所示。 根据映射函数曲线建立均匀分布到高斯分布的映射表, 以均匀随机数为地址, 查找映射表, 得到高斯 分布白噪声。考虑到 fpga block rom资源受限, 不可能存储大容量的映射表, 并且映射曲线在很大区间 上表现出线性关系, 因此采用折线逼近法以不同斜率的线段分段逼近映射函数曲线。图 2是映射函数曲 线 (实线 )和 23段折线逼近曲线 (虚线 )的拟合图, 经过多次试验, 验证 23段折线已经足以反映这种映射 关系。从图中可以看出, 两条曲线拟合得很好, 因此整个映射表只需要存储 23段折线的起始点和斜率, 大 大节省了硬件资源。 图 2? 映射函数曲线和折线逼近曲线 2? m atlab建模与仿真 在 m atlab中建立随机数组合发生器模型, 分别用 两个向量构成两种移位寄存器, 根据移位和异或逻辑 产生 23位均匀分布的随机数。然后根据上述建立的 映射表, 以 23位随机数作为地址来寻址映射表, 产生 高斯分布的白噪声, 同时也利用 23段折线逼近法产生 另一组高斯白噪声, 用以模拟实际 fpga产生高斯白 噪声的过程。 对于两种方法产生的随机数, 取 50000个采样点, 作其统计直方图、 正态分布检验图和功率谱图, 如图 3 、 图 4和图 5所示。图 3( a)是直接映射表法产生的 噪声, 而图 3( b)则是折线逼近法产生的噪声。可以看 出, 两种方法产生的噪声的分布均近似高斯分布。图 4是两种方法产生的噪声的正态分布检验图, 两图 37第 30卷第 6期艾余雄等, 一种基于 fpga的高斯白噪声发生器的设计与实现 均呈现线性关系, 再次证明了产生的噪声的正态分布特性。图 5则是两种方法产生的噪声分别通过一低 通滤波器后的功率谱图。可以看出, 在低频段内功率谱比较平坦, 证明产生的噪声是白噪声。 另外, 计算两种方法产生的高斯白噪声的均值分别为 0?00545和 0?00516 , 标准差分别为 1?00248和 1?01072 , 再次验证了本方案产生的高斯白噪声的性能。 通过 m atlab建模与仿真, 可以看出本文提出的产生高斯白噪声的方案正确可行。折线逼近法与映射 函数法产生的高斯白噪声性能近似, 因此选取更适合在 fpga中实现的折线逼近法来产生高斯白噪声。 38遥 ? 测 ? 遥 ? 控2009年 11月 图 5? 噪声功率谱 3? 基于 fpga的硬件实现 图 6? 硬件结构图 基于 fpga 的高斯白噪声发生器 的硬件结构图如图 6所示。 根据实际情况, 高斯分布随机数仅 在 - 4?, 4? 之间取值, 就可以达到满 意的精度。考虑到存在小数和计算精度 的问题, 本方案采取的数据类型为 32位 单精度浮点数。整个 fpga设计结构由 均匀随机数组合发生器模块、 定点到浮 点转换模块 6、 定点比较器模块 6、 折 线逼近近似表模块、 浮点运算模块和浮点到定点转换器模块组成。产生的均匀随机数经过定点比较器后 寻址折线逼近近似表, 得到对应的起始点和斜率, 同时与定点浮点转换器模块输出的浮点均匀随机数, 在 浮点运算模块中经过加、 减和乘运算后输出, 得到高斯白噪声。考虑到高斯白噪声后续将被送入 16位 da 中, 因此在浮点转换定点模块输出之前将其幅度乘以 2 13, 这只需要在指数部分加上 13就可以。 另外, 对于高斯分布的随机变量 x, 通过变换 y= + ?x, 可以获得均值为 、 方差为 ? 2 的高斯分布随 机变量 y 2。因此, 只需要在浮点运算模块后加上浮点乘法器和加法器就可以对产生的高斯白噪声的均 值和方差进行调节, 得到参数可调的数字高斯白噪声。 4? 测试结果 在实际应用中, 高斯调制信号作为一种干扰源可作为卫星导航信号模拟器的一个功能模块, 产生高斯 噪声干扰。高斯调制信号表达式如下 yi( t) = gau( t) cos(2!f t + ) yq( t) = gau( t) sin( 2!f t+ ) ( 3) 式中, gau( t)表示数字高斯白噪声, f 为载波频率, 为信号初始相位。在实际测试中, 基于直接数字频率 合成技术产生两路正交的 1?42 mh z低中频载波, 然后调制数字高斯白噪声, 输出的 i 、 q两路正交信号送 入 ad9777进行正交上变频和模数转换, 最后输出 46?42 mh z的两路模拟信号。其中一路的带限高斯白噪 39第 30卷第 6期艾余雄等, 一种基于 fpga的高斯白噪声发生器的设计与实现 声信号通过频谱仪的测量, 其实际性能如图 7所示。可见, 该噪声是带限高斯白噪声, 在滤波器通带内频 谱比较平坦, 抖动较小。 图 7? 高斯白噪声实测图 5? 结束语 本文给出了一种在 fpga中快速产生高斯 白噪声信号的方法及其实现结构, 利用 casr与 lfsr组合发生器产生均匀分布的白噪声, 然后 通过折线逼近法将均匀分布白噪声转换成高斯 白噪声。在给出整体设计方案的基础上, 在 m atlab中进行了高斯白噪声发生器的建模和仿 真, 最后给出了 fpga的具体实现模块。仿真和 实测结果均表明, 本方案能够快速地产生高性能 的高斯白噪声, 作为一种高斯白噪声产生器能够 应用于实际通信信道模拟器中。 参考文献 1? 黄本雄, 侯? 洁, 胡 ? 海 ? 高斯白噪声发生器在 fpga中的实现 j? 微计算机信息, 2007, 23(7- 2): 165 167? 2? 蒋? 乐, 冯文全 ? 高性能可编程高斯白噪声的设计与实现 j? 电子技术应用, 2006, ( 8): 113 114? 3? 管? 宇, 徐? 雷, 徐建中 ? 用 fpga产生高斯白噪声序列的一种快速方法 j? 电子元器件应用, 2008, 10( 11): 55 58? 4? tho mas e? tkacik? a hardware rando m number g enerator z /ol ?2002- 8- 14? http: /ece?gmu?edu/crypto / ches02/talks_files/tkacik?pdf? 5? 张? 萍, 戴光明 ? 高斯随机噪声实时生成实现方法研究 j? 电子技术应用, 2004, 30( 4): 10 12? 6? a ltera corp? stratix# devicehandbook? m ay 2007? design and i mplementation of a gaussianw hite noise generator based on fpga a iyuxiong , ? kou yanhong abstract : this paper explores the algorithm,architecture and i mplementation of a high speed and real?ti me gaussian white noise generator in fpga? the random numbers generated by the combined generator ofcasr and lfsr have the advantages of long period ,good bit independence perfor mance and unifor m distribution? the transfor mation from the unifor m distributed noise to the gaussian noise is realized by the mapping and polygonal approxi mation method, which reduces the co mputation co mplex ity to the maxi mum? the si mulation and practicaltest results

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论