The reference noise and primary input
stay the same
The channel impulse response used for generating Figure 3 (FPGA Implementation)
is an all pass filter:
Channel=[1 0.5 -0.25 0.125 -0.125
0.025];
The corresponding MATLAB simulations are not repeated for this and the following
cases in Simulation One. This is because that MATLAB always seems to perfectly
recover the source.
Figure 4 shows that the FPGA implementation of the adaptive filter with 8
weights is still able to track the channel and negate its influence on the
source.
Figure 11: The FFT of filter input and filter output
The test is repeated with a band pass channel instead of an all pass channel. It is shown in Figure 11 that the noise reduction gain is between -15dB and -20 dB across the whole frequency band.
The purpose of the test two is to find out the noise reduction gain of the noise canceller by using a single sinusoid as the desired signal source instead of the voice. The reference noise is still the white noise for worst scenario noise cancellation. The channel for generating the results shown in Figure 11 is an all pass channel. Figure 11 shows that the adaptive noise canceller can provide a -15dB noise reduction on average across the whole frequency band. This means that the noise can be reduce to 1/10~3/10 of its original level.
Figure 11: The FFT of filter input and filter output for an all pass channel
Test
Two:
Noise
Reduction
Gain
Figure
10:
Low pass/notch
channel
Figure 9:
Band pass
channel
Figure 8:
Low pass
channel
Figure 7:
All pass channel
Filters to Simulate the
Channel:
Figure.6: low pass/notch
channel
Figure.5: band pass channel
Figure.4: low pass channel
The reference noise, primary input
for simulation one "voice recovering"
are as follows:
Signal=Voice
saying "Hello" which is
prerecorded.
Noise=0.1*1*(rand(1,itno+4-1)-0.5);
which is simulated in MATLAB
Channel one on the
oscilloscope is the filter
output and channel two is
the filter input. This
setting stays the same for
the rest of experiments
unless noted otherwise.
The channel impulse response
used for generating Figure 2
(MATLAB simulation) and
Figure 3 (FPGA
Implementation) is an all
pass filter:
Channel=[1];
As can be shown in Figure 3,
the FPGA can efficiently
reduce the noise strenght to
a level that "hello" can be
clearly heard.