<< Chapter < Page | Chapter >> Page > |
Make a note of the accuracy of the model.
Increase the Samples per frame to 1024 in both the “Sine Wave” and the “Random Source” Blocks.
Run the model again.
Question: How does this change to the frame size affect performance?
Click on the “Delay” Block. Change the number of Delay (samples) to 50.
Run the model again and make a note of the accuracy of the measurement.
Change Delay (samples) The Delay (samples) should be smaller than the frame size, otherwise the frames do not overlap. to 12 and run the model again.
Question: How does the value of delay (samples) affect the accuracy of the model?
Reload the original model to restore the initial settings.
Change the amount of Gain to make the gain 0.10 (10% noise).
Run the model and make a note of the accuracy of the measurements. Repeat, but this time, use a gain of 0.01 (1% noise).
Question: Does the algorithm work better for high signal-to-noise ratios or for low signal-to-noise ratios? Make a note of the answer.
Change the sample time in both the “Sine Wave” and the “Random Noise” blocks to 48000 Hz.
Run the model.
Question: Does the model produce better results with 8000Hz sampling or 48000 Hz sampling? Make a note of the answer.
You should now know what are the optimum parameters for the simulation.
Set these parameters and run the model.
You have now run the signal-to-noise ratio model and should be aware of the best settings for consistency of measurements, delay and sampling frequency.
You are now ready to go to the C6713 DSK Model.
Alternatively, you can use computer loudspeakers.
There are several stages required in order to implement the Signal-to-Noise measurement. These are now described.
Start Code Composer Studio for C6713 DSK and use Debug ->Connect
You will now use the knowledge you have gained during the PC Simulation to produce an optimized version of this algorithm for use with the Texas Instruments C6713 DSK.
Open the SignalToNoiseDSK6713.mdl.
The parent is shown in Figure 15.
Double click on the “function()” block.
The details of the C6713 Algorithm are shown in Figure 16.
Double-click on the “Mic In C6713 DSK ADC” block.
Set the Sampling rate (Hz) and Samples per frame fields to the best value you found while carrying out the Simulation. The values may be different to those written here.
Double-click on the “Delay” block. Set the Delay (samples) to the best value found during simulation. The value will not be 999!
From the Toolbar, select the “Up Arrow” icon. This returns you to the next higher level.
Select Tools ->Real-Time Workshop ->Build Model.
From the folders on the left, select the source code for the project.
To check out the microphone and loudspeakers, set the DIP switches on the C6713 DSK as follows:
The microphone is fed directly to the loudspeakers. There is no noise gate.
To run the Audio Noise Gate, set the DIP switch to 1.
Note that when you are not speaking, there is no audio output at all – just silence.
The next stage is to modify the model. You can change the smoothing filter. If the filter is too long, the delay will be noticeable.
Double-click on the “Lowpass” block. Change the Order to a value other than 10.
Select Tools ->Real-Time Workshop ->Build Model.
Run the updated model and listen to the effect on the audio noise gate.
You may wish to experiment with different settings. Here are some suggestions.
While running the Simulation, you will have noticed that the Signal-to-Noise Algorithm works better on some frequencies than others.
Add the appropriate filter to select only the frequencies where the algorithm works well.
Change the input from “Microphone” to “Stereo Line Input”.
Add a second channel to make the processing stereo.
When stage 3.2 has been completed, modify the model so that the output is the better of the two stereo inputs.
MATLAB and Simulink are registered trademarks of The MathWorks, Inc. See www.mathworks.com/trademarks for a list of additional trademarks. Other product or brand names may be trademarks or registered trademarks of their respective holders.
Notification Switch
Would you like to follow the 'From matlab and simulink to real-time with ti dsp's' conversation and receive update notifications?