200 likes | 397 Views
A Digital Noise Source for FPGAs. Kaushal D. Buch Digital Backend Group, Giant Metrewave Radio Telescope (GMRT). Key Points. FPGA based variable correlation digital noise source is useful for testing of the digital backend for radio telescopes.
E N D
A Digital Noise Source for FPGAs Kaushal D. Buch Digital Backend Group, Giant Metrewave Radio Telescope (GMRT)
Key Points • FPGA based variable correlation digital noise source is useful for testing of the digital backend for radio telescopes. • Uses Sum of Uniforms (Central Limit Theorem) to achieve Gaussian distribution. Advantage: No Block RAMs required! • Desired spectral and statistical properties achieved with less than 1% hardware utilization (Slice LUTs) for Virtex-5 FPGA.
Specifications Specifications • Gaussian Distribution (Kurtosis ~ 3) • Flat spectrum • Cross Correlation Coefficient ~ 0.001 (normalized) • Compatible with CASPER ADC outputs – 4 streams of digital noise, 8 bit each, 200 MHz (FPGA Clock) • Large Periodicity – achieved using 4 parallel noise sources • Variable correlation – programmable in steps
Uniform Random Number Generation • Linear-feedback shift registers with N stages, corresponding to a Galois field polynomial of order N. • Generates a stream of random bits having a period of 2N – 1 (maximal length sequences only). • Leap forwarding is used to get a vector output.
Block Diagram Sum of Uniforms Method : Adding Random Variables with finite variance converges to a Gaussian PDF LEAP FORWARD LFSR - 1 Adder Tree 8 Bit Signed Output of Noise Source LEAP FORWARD LFSR - 2 + 4 – Bit Output from LFSR 8 Bit Unsigned Output from Adder Tree DC Offset Removal (Normalizing) LEAP FORWARD LFSR - 12
Implementation of Noise Source on System Generator CASPER Compatible Noise Source Leap Forward LFSRs DC Offset Compensation Unsigned to Signed Conv. Adder Tree
Noise Spectrum on ROACH Results of Digital Noise Source implemented on 300MHz PoCo with 0.89s integration time
Statistical Properties of Noise Source Mean: 0.0004 Standard Deviation: 17.2893 Skewness: 0.0099 Kurtosis: 2.9918 5th Moment: 0.3827 6th Moment: 16.9447
Periodicity property of Digital Noise Source • Theoretically :- Digital noise source with heterogeneous polynomials is designed for a periodicity of the order of 278 clock cycles. • Practically :- Periodicity up to 240 clock cycles has been verified on ROACH.
Debugging spectrometer design using digital noise source Normalized Self Correlation and Phase using Analog Noise Source Normalized Self Correlation and Phase using Digital Noise Source
Variable Correlation If Vc is the variance of the common noise source and V1 = V2 = V be the variances of the input noise then the normalized variable cross correlation of output is R = Vc / V + Vc
Variable Correlation: CASPER Block 0 – uncorrelated 1- 0.05 2- 0.1 3- 0.2 4- 0.5 5- 1
Variable Correlation on ROACH Results of Digital Noise Source implemented on 300MHz PoCo with 0.89s integration time
Pulse Simulation using variable correlation Results obtained from 2-antenna incoherent beamformer (PoBe) (BW: 300MHz, Integration time: ~1.75ms)
Changing the seed • The seeds of the LFSR are programmable and can be changed, if required. Do not change the values randomly, instead, use random values. • You can find random binary numbers and use them. One such on-line random number generator is available at – http://www.random.org/bytes
Tutorial Tutorial • A tutorial on “Study and Implementation of a Digital Noise Source” (Tutorial No. 6) is available in this year’s CASPER workshop. • This tutorial helps develop a digital noise source using Central Limit Theorem on CASPER tool-flow. For queries or suggestions, please email: kdbuch@gmrt.ncra.tifr.res.in