DocumentCode :
926756
Title :
A hardware Gaussian noise generator using the Box-Muller method and its error analysis
Author :
Lee, Dong-U ; Villasenor, John D. ; Luk, Wayne ; Leong, Philip H W
Author_Institution :
Dept. of Electr. Eng., California Univ., Los Angeles, CA
Volume :
55
Issue :
6
fYear :
2006
fDate :
6/1/2006 12:00:00 AM
Firstpage :
659
Lastpage :
671
Abstract :
We present a hardware Gaussian noise generator based on the Box-Muller method that provides highly accurate noise samples. The noise generator can be used as a key component in a hardware-based simulation system, such as for exploring channel code behavior at very low bit error rates, as low as 10-12 to 10-13. The main novelties of this work are accurate analytical error analysis and bit-width optimization for the elementary functions involved in the Box-Muller method. Two 16-bit noise samples are generated every clock cycle and, due to the accurate error analysis, every sample is analytically guaranteed to be accurate to one unit in the last place. An implementation on a Xilinx Virtex-4 XC4VLX100-12 FPGA occupies 1,452 slices, three block RAMs, and 12 DSP slices, and is capable of generating 750 million samples per second at a clock speed of 375 MHz. The performance can be improved by exploiting concurrent execution: 37 parallel instances of the noise generator at 95 MHz on a Xilinx Virtex-II Pro XC2VP100-7 FPGA generate seven billion samples per second and can run over 200 times faster than the output produced by software running on an Intel Pentium-4 3 GHz PC. The noise generator is currently being used at the Jet Propulsion Laboratory, NASA to evaluate the performance of low-density parity-check codes for deep-space communications
Keywords :
Gaussian processes; clocks; digital simulation; error analysis; field programmable gate arrays; fixed point arithmetic; function approximation; noise generators; optimisation; parity check codes; random number generation; Box-Muller method; DSP slices; Intel Pentium-4 3 GHz PC; RAM; Xilinx Virtex-4 XC4VLX100-12 FPGA; Xilinx Virtex-II Pro XC2VP100-7 FPGA; bit error rates; bit-width optimization; channel code behavior; clock cycle; error analysis; fixed point arithmetic; hardware Gaussian noise generator; hardware-based simulation system; noise samples; Bit error rate; Clocks; Digital signal processing; Error analysis; Field programmable gate arrays; Gaussian noise; Hardware; Noise generators; Optimization methods; Software performance; Algorithms implemented in hardware; computer arithmetic; elementary function approximation; error analysis; field programmable gate arrays; minimax approximation and algorithms; optimization; random number generation; simulation.;
fLanguage :
English
Journal_Title :
Computers, IEEE Transactions on
Publisher :
ieee
ISSN :
0018-9340
Type :
jour
DOI :
10.1109/TC.2006.81
Filename :
1628955
Link To Document :
بازگشت