利用伪随机序列理论产生均匀分布的随机序列
进而产生高斯白噪声
摘 要:本文介绍了利用伪随机序列理论产生均匀分布的随机序列,进而产生
高斯白噪声。高斯白噪声生成分两步实现。本文介绍这两步中的主流算法,并
对其性能进行了分析;讨论了该算法组合的具体实现,包括加入对高斯白噪声
均值和方差的控制。
关键词:
均匀分布随机变量
高斯白噪声
线性同余法
目前,为获得参数可调的高斯白噪声,一般采用数字方法产生。数字方法
产生分为两步:先产生均匀分布的白噪声,然后通过均匀分布的白噪声获得高
斯白噪声。在这两步中均有多种方法可以选择。
1
均匀分布白噪声生成算法的选择
目前,有三种常用的均匀分布白噪声生成算法:线性同余算法、
Shift-
Register
方法和
Lagged-Fibonacci
算法。
对三种算法的性能进行测试
,
包括随机数在分布上的均匀性、随机数在随机
序列中分布的均匀性和随机序列种子序列的依赖关系等内容。就性能而言,
lagged-Fibonacci
算法采用乘最好,
lagged-Fibonacci
算法采用加或减次之,
线性同余法又次之。
从实现角度,
Shift-Register
方法、
lagged-Fibonacci
算法采用异或和
lagged-Fibonacci
算法采用加或减只需要移位、异或和加减法等操作,适合
FPGA
实现。而线性同余算法和
lagged-Fibonacci
算法采用乘需要乘法操作,
适合编程实现。
根据以上判断,结合实际情况,采用线性同余法算法来实现产生均匀分布
的随机序列。