如果直接应用上述映射关系进行均匀分布向高斯分布的转换,则需开辟 (218-1) 个物理空间来建立查找表,这几乎不可能实现。但由图 2 可见,其关系曲线在很大区间上表现出线性关系,所以,可以以斜率不同的直线段分段逼近关系曲线。在一定精度要求下,该方法简单易行,占用硬件资源少,适合在 FPGA 中实现,从而实现由服从均匀分布向服从高斯分布的快速转换。图 3 是关系曲线 ( 实线 ) 和 15 段折线逼近法 ( 虚线 ) 的拟合图,由图可见,其实线和虚线拟合得很好,从而证明了折线逼近法能较好的反映映射关系。
利用 m 序列的周期特性可降低高斯白噪声任意两个不同时刻的采样信号的相关性。在线性反馈移位寄存器中每隔 r 个同步时钟 ( 其中 r=2i , i 为整数 ) 输出一个状态值作为均匀分布的随机数输入可实现均匀分布向高斯分布的转化。为了选择合适的 r 值,图 4 分别给出了 r 为 0 、 2 、 8 时所生成的 10000 点高斯序列的功率谱。由图 4 可见, r=8 时的功率谱基本水平,即系统产生的高斯白噪声任意两个不同时刻的采样信号可看成统计独立的,这与理论上对高斯白噪声的定义相一致。同时也证明了降低相关性模块是可行和有效的。
3 硬件实现
在 ISE8.1i 开发环境中使用 VHDL 语言可实现上述高斯白噪声发生器的功能。本设计选用 Xil-inx 的 xc3s1200e-4fg320 作为目标器件。其硬件实现框图如图 5 所示。
产生高斯白噪声先后通过两个模块来实现。一是均匀随机数发生模块;二是均匀分布向高斯分布转化模块。其中均匀随机数发生模块包括 m 序列发生器和非相关化处理 ( 降低相关性操作 ) ;均匀分布向高斯分布转化模块包括比较选择器、相应的延时操作以及算术计算模块。