“TMS320C5505 USB Stick Teaching Materials” Texas Instruments University Programme Teaching Materials
Introduction
TMS320C5505 USB Stick A very low-cost $49 – student price Microphone / line in and headphones out for learning audio Digital Signal Processing (DSP) Upgrade path to C5515 ($75) and DSKs ($400).
About the TMS320C5505 The TMS320C5505 is a 16-bit fixed-point DSP It has been optimised for low-power operation e.g. for battery operated portable devices.
Code Composer Studio (CCS) Each TMS320C5505 USB Stick is provided with a CD containing Code Composer Studio Integrated Development Environment (IDE).
Using CCS With CCS you can: Write programs Download programs to the hardware Run the programs on the hardware Debug the programs.
Teaching Materials
Teaching Material Consists of 20 hands-on audio applications Focus is on practical experiments rather than pure theory Fully functioning high-level C code provided for each application Emphasis on real-time and low-power operation.
Target Audience This teaching material is aimed at beginners to DSP It can be used either in class or for self-study Some basic knowledge of C programming is required As the lessons progress, more knowledge of DSP is required. It is therefore recommended that the student reads some of the material given in the reference sections.
Other Equipment Required Microphone or output from MP4 player Headphones or computer speakers A frequency meter or multi-meter is useful.
Format of a Typical Application
Format of Each Application Each of the 20 applications contain: A Powerpoint presentation A working C code example to run on the TMS320C5505 USB Stick A brief outline of a typical application now follows.
Echo – Step 1 - Description Echo is audible because the speed of sound is relatively slow, about 400 meters per second Click on icon to listen to echo.
Echo – Step 2 - Block Diagram Output = Input + Delayed Input Because of losses in the delayed path, Gain < 1.
Echo – Step 3 – Derive Equation
Echo – Step 4 - Matlab Model The frequency response of echo can be calculated using the following Matlab .m file. Simulink models are used on many examples. For reverberation using the above .m file, simply interchange variables a and b.
Echo – Step 5 – System Response
Step 6 – C Code Full C code is provided for each application Uses the Texas Instruments Code Support Library (CSL) to simplify the design process.
Echo – Step 7 – Run code on USB Stick USB to PC Microphone Headphones
Echo – Step 8 – Experiments How code can be improved and expanded on by the student Main points and critical issues e.g. echo is always stable How this simple principle can used in other more complex DSP applications. Echo is an example of a Finite Impulse Response (FIR) filter.
Echo – Step 9 - Questions Self-test questions on key points Answers are to be found in the presentation.
Some Other Applications
Reverberation
Reverberation Reverberation is similar to echo, but uses a slightly different configuration Click on the icon to hear reverberation.
Reverberation on Stage Sound reaches the microphone from both the performer and the the loudspeakers.
Reverberation Frequency Response
Important Points about Reverberation The output is derived from both the input and the previous output Can become unstable (the poles lie on the unit circle) Reverberation is an example of an Infinite Impulse Response (IIR) filter.
Alien Voices
Alien Voices Multiply audio input by a sine wave. This is known as “ring modulation” Output contains sum and difference frequencies, but not those you started with To listen to ring modulation, click on the icon below.
Waveforms of Ring Modulation
Dual Tone Multi Frequency Generation (DTMF)
Touch Pad Telephone A standard touch pad phone generates the following tones:
Dual Tone Multi Frequency (DTMF) Each tone in fact consists of pairs of defined single tones Every time a button is pressed, a dual tone is generated.
Goertzel Algorithm
Piano Player with Perfect Pitch If you sing a note, a musician with perfect pitch can tell you exactly what note you sang – “you sang the note B-flat”.
Goertzel Algorithm The Goertzel Algorithm is the musician with perfect pitch in DSP form It listens to the DTMF tones from the touch phone Filters out pairs of individual tones Determines which button was pressed.
Guitar Effects
Guitar Effects Can play an electric guitar through the USB Stick. Enhance the sound using: Fuzz Valve / Tube sound Reverberation Flanging / Phasing
USB Stick Setup for Guitar USB to PC Headphones Electric Guitar The normal output from a guitar is a ¼” (6.25mm) jack plug. It will be necessary to use an adapter to 1/8” (3.5mm)
Adaptive Noise Reduction
Adaptive Noise Reduction Used in headphones for pilots to remove aircraft noise Based on Least Mean Squares (LMS) algorithm.
Graphic Equaliser Analogy An adaptive filter can be thought of as a self-adjusting graphic equaliser: Input Output Would be very hard to do with discrete components! Automatic slider adjustment based on the error
Effect of Noise Reduction Input Output
Speech Compression
Voice Recorder Speak into the microphone and record the sound Play back the sound – can store up to 5 seconds of speech Implement another version, this time using some form of speech compression algorithm e.g. G.711 Play back the sound – this time can store up to 10 seconds of speech.
Wavelets
Wavelet Analysis Analyse audio signal by breaking it down into discrete packets known as “wavelets”. Narrow Frequency Band Wide Frequency Band
Wavelet Decomposition - Example Note that a1 and a2 are further decomposed, so they are not required to characterize the signal.
Summary
Summary of Applications Applications have been chosen to illustrate a range of DSP techniques Emphasis on hands-on rather than just theory Working real-time C code supplied as a starting point for laboratories.
Next Steps Find an application you like from those provided. Load the project onto the TMS320C5505 USB Stick. Run the project and experiment with it!