电子文章 | 电子资料下载 | 家电维修 | 维修资料下载 | 加入收藏 | 全站地图
您现在所在位置:电子爱好者电子文章EDA/PLD用FPGA产生高斯白噪声序列的一种快速方法

用FPGA产生高斯白噪声序列的一种快速方法

11-20 00:26:45 | http://www.5idzw.com | EDA/PLD | 人气:878
标签:eda技术,eda技术实用教程,http://www.5idzw.com 用FPGA产生高斯白噪声序列的一种快速方法,http://www.5idzw.com

  本设计用 Xilinx 的 xc3s1200e-4fg320 为目标器件来对代码进行综合,所用的 FPGA 资源如下:


  可见,该方案占用硬件资源较少。

  为了验证硬件实现的正确性,还可将其下载到开发板,并采用 ChipScope Pro 8.1i 将硬件产生的高斯白噪声序列通过并口回传,同时将数据导入到 Matlab 。由于 ChipScope 要利用 FPGA 的片内存储空间暂存采样值,所以,一次采集的信号数目有限且与 FPGA 型号有关。笔者将一次采集到的 16384 个样值导入 Maflab 后,再将数据小数化 ( 因为 FPGA 中处理的是定点数 ) ,然后调用 Matlab 中的 psd 函数估计出了其功率谱图。实际结果证明,本系统产生的高斯白噪声与理论值非常接近,也就是说,该方案可行。

  由于本系统采用 VHDL 语言编写,故其可移植性较强。当在通信工程中需要带限高斯白噪声时,就可在高斯白噪声后接一个带通滤波器 ( 在 FPGA 中应用自带 IP 核可轻松实现 ) 。由于滤波后的噪声能量会有损失,所以要做相应的能量补偿。之后,再将产生的带限高斯白噪声序列 ( 约 50000 点 ) 导入 Matlab 中,然后调用 hist 函数就可得到图 7 所示的序列直方图,而调用 psd 函数即可得到图 8 所示的序列功率谱图。从直方图可见带限高斯白噪声的概率密度函数是高斯型的,而从功率谱可见,在通带内,功率谱密度近似为常数,这些都与理论一致。



  4 结束语

  本文提出了一种在 FPGA 中快速产生高斯白噪声序列的实现方案。同时基于均匀分布和高斯分布之间的映射关系曲线,提出并应用了适合在 FPGA 中实现的折线逼近法。本文采用了 15 条首尾连接的直线段去逼近映射关系曲线 ( 按不同的工程精度要求,可选择个数不同的直线段去逼近 ) 。显然,所用的折线拐角越多 ( 直线段个数越多 ) ,精度越高,但所消耗的 FPGA 资源也越多。该方案具有简单易行,运算量小等优点。而且实现速度快,可源源不断的产生高斯白噪声序列,同时占用的硬件资源较少。由于软件采用 VHDL 语言编写,可移植性强,故可灵活用于 Watterson 信道模拟器或嵌入调制解调器等其它系统。


上一页  [1] [2] 

,用FPGA产生高斯白噪声序列的一种快速方法