|
a
chromatic noise
generator in vhdl |
| |
DNG LFSR
|
Configurable Noise Generator
with predictable results
The following logic
represents a 20-bit LFSR that uses the known polynomial
(x^20 + x^3 + 1). See the former
page for details of its function:
LFSR Noise Generator
The resulting frequency difference here is already less than
0.1 Hz and is therefore completely inaudible to the human
ear. The result is a perfectly uniform, analog hissing sound
(white noise) with no perceptible pitch. Only by reducing
the number of registers individual frequencies become more
evident. To make sure the noise is mostly flat to be used in
music apps, an overlay of noise for the relevant frequencies
is done.
A TOS-design is used to generate the
relevant frequencies as known for organ tones. A frequency
of 48 MHz is used—24 times the standard frequency. This
produces 11 frequencies, each of which drives an LFSR. The
addition of these 11 independent LFSR units results in a
very dense, multichromatic line spectrum through
superposition, in which the power density spectra of the
individual sources add linearly, since the signals are
completely uncorrelated due to their different local clock
rates. Since the units form their own comb structure, the
countless spectral lines practically never overlap
mathematically. Depending on the demands the signal is
filtered by a CIC and post processed by a FIR in order to
limit the harmonics down to e.g supersonic or audible range.
The amplitude control values allow to adapt the spectral
response.

See details of the function:
LFSR noise generator
SRead about another NG:
Noise Generator |
|
Digital Processing |
48 kHz Audio
DSP |
|
|
|