PC-based Personal DSP Training Station

Similar documents
Low-Cost Personal DSP Training Station based on the TI C3x DSK

A First Laboratory Course on Digital Signal Processing

Digital Signal Processing Laboratory 7: IIR Notch Filters Using the TMS320C6711

1.1 Digital Signal Processing Hands-on Lab Courses

Lab 1 Introduction to the Software Development Environment and Signal Sampling

Real-time EEG signal processing based on TI s TMS320C6713 DSK

IMPLEMENTATION AND ANALYSIS OF FIR FILTER USING TMS 320C6713 DSK Sandeep Kumar

DMC550 Technical Reference

Experiment # 5. Pulse Code Modulation

DSP in Communications and Signal Processing

Introduction To LabVIEW and the DSP Board

Installation of a DAQ System in Hall C

MIE 402: WORKSHOP ON DATA ACQUISITION AND SIGNAL PROCESSING Spring 2003

Lab experience 1: Introduction to LabView

PROVIDING AN ENVIRONMENT TO TEACH DSP ALGORITHMS. José Vieira, Ana Tomé, João Rodrigues

Journal of Theoretical and Applied Information Technology 20 th July Vol. 65 No JATIT & LLS. All rights reserved.

ECE438 - Laboratory 4: Sampling and Reconstruction of Continuous-Time Signals

Interfacing the TLC5510 Analog-to-Digital Converter to the

ECE 4220 Real Time Embedded Systems Final Project Spectrum Analyzer

inter.noise 2000 The 29th International Congress and Exhibition on Noise Control Engineering August 2000, Nice, FRANCE

GALILEO Timing Receiver

VXI RF Measurement Analyzer

Implementation of Graphical Equalizer using LabVIEW for DSP Kit DSK C6713

Calibrate, Characterize and Emulate Systems Using RFXpress in AWG Series

Choosing an Oscilloscope

Investigation of Digital Signal Processing of High-speed DACs Signals for Settling Time Testing

Embedded Signal Processing with the Micro Signal Architecture

DSA-1. The Prism Sound DSA-1 is a hand-held AES/EBU Signal Analyzer and Generator.

Vocoder Reference Test TELECOMMUNICATIONS INDUSTRY ASSOCIATION

Design and Realization of the Guitar Tuner Using MyRIO

Experiment 2: Sampling and Quantization

COMPUTERS IN EDUCATION JOURNAL 2

Diamond Cut Productions / Application Notes AN-2

Appendix D. UW DigiScope User s Manual. Willis J. Tompkins and Annie Foong

PCM ENCODING PREPARATION... 2 PCM the PCM ENCODER module... 4

SUBSYSTEMS FOR DATA ACQUISITION #39. Analog-to-Digital Converter (ADC) Function Card

Logic Analysis Basics

Logic Analysis Basics

Multiband Noise Reduction Component for PurePath Studio Portable Audio Devices

NanoGiant Oscilloscope/Function-Generator Program. Getting Started

1ms Column Parallel Vision System and It's Application of High Speed Target Tracking

Enhancing the TMS320C6713 DSK for DSP Education

Experiment 13 Sampling and reconstruction

Quick Start for TrueRTA (v3.5) on Windows XP (and earlier)

VHDL Design and Implementation of FPGA Based Logic Analyzer: Work in Progress

REAL-TIME DIGITAL SIGNAL PROCESSING from MATLAB to C with the TMS320C6x DSK

PEP-II longitudinal feedback and the low groupdelay. Dmitry Teytelman

Application Note #63 Field Analyzers in EMC Radiated Immunity Testing

Techniques for Extending Real-Time Oscilloscope Bandwidth

Chapter 3. Basic Techniques for Speech & Audio Enhancement

Figure 1: Feature Vector Sequence Generator block diagram.

F24X DSK Setup and Tutorial

LabView Exercises: Part II

Major Differences Between the DT9847 Series Modules

Acoustic Measurements Using Common Computer Accessories: Do Try This at Home. Dale H. Litwhiler, Terrance D. Lovell

Digital Strobe Tuner. w/ On stage Display

Rapid prototyping of of DSP algorithms. real-time. Mattias Arlbrant. Grupphandledare, ANC

TV Character Generator

Introduction to Digital Signal Processing (DSP)

AC : DIGITAL DESIGN MEETS DSP

Chapter 1. Introduction to Digital Signal Processing

Experiment # 4 Counters and Logic Analyzer

Lab 5 Linear Predictive Coding

ScanExpress JET. Combining JTAG Test with JTAG Emulation to Reduce Prototype Development Time. Ryan Jones Corelis, Inc. An EWA Technologies Company

Analyze Frequency Response (Bode Plots) with R&S Oscilloscopes Application Note

SigPlay User s Guide

MSO-28 Oscilloscope, Logic Analyzer, Spectrum Analyzer

Laboratory Exercise 4

Module 8 : Numerical Relaying I : Fundamentals

QUALITY OF COMPUTER MUSIC USING MIDI LANGUAGE FOR DIGITAL MUSIC ARRANGEMENT

IC Layout Design of Decoders Using DSCH and Microwind Shaik Fazia Kausar MTech, Dr.K.V.Subba Reddy Institute of Technology.

Build Applications Tailored for Remote Signal Monitoring with the Signal Hound BB60C

An Introduction to the Spectral Dynamics Rotating Machinery Analysis (RMA) package For PUMA and COUGAR

Design and Implementation of SOC VGA Controller Using Spartan-3E FPGA

Kramer Electronics, Ltd. USER MANUAL. Models: VS-162AV, 16x16 Audio-Video Matrix Switcher VS-162AVRCA, 16x16 Audio-Video Matrix Switcher

Introduction to Data Conversion and Processing

A 400MHz Direct Digital Synthesizer with the AD9912

ENGINEERING COMMITTEE Interface Practices Subcommittee AMERICAN NATIONAL STANDARD ANSI/SCTE

Tools to Debug Dead Boards

CHARACTERIZATION OF END-TO-END DELAYS IN HEAD-MOUNTED DISPLAY SYSTEMS

Session 1 Introduction to Data Acquisition and Real-Time Control

Testing Digital Systems II

Solutions to Embedded System Design Challenges Part II

MODULAR DIGITAL ELECTRONICS TRAINING SYSTEM

Agilent MSO and CEBus PL Communications Testing Application Note 1352

NOTICE. (Formulated under the cognizance of the CTA/CEDIA R10 Residential Systems Committee.)

The Measurement Tools and What They Do

DHANALAKSHMI COLLEGE OF ENGINEERING Tambaram, Chennai

An Introduction to Hardware-Based DSP Using windsk6

ECE 5765 Modern Communication Fall 2005, UMD Experiment 10: PRBS Messages, Eye Patterns & Noise Simulation using PRBS

Integration of Virtual Instrumentation into a Compressed Electricity and Electronic Curriculum

A MISSILE INSTRUMENTATION ENCODER

Iterative Direct DPD White Paper

DT9834 Series High-Performance Multifunction USB Data Acquisition Modules

Department of Electrical & Electronic Engineering Imperial College of Science, Technology and Medicine. Project: Real-Time Speech Enhancement

Radar Signal Processing Final Report Spring Semester 2017

PROCESSOR BASED TIMING SIGNAL GENERATOR FOR RADAR AND SENSOR APPLICATIONS

Digital Signal. Continuous. Continuous. amplitude. amplitude. Discrete-time Signal. Analog Signal. Discrete. Continuous. time. time.

HEAD. HEAD VISOR (Code 7500ff) Overview. Features. System for online localization of sound sources in real time

Digital Signal Processing

Transcription:

Session 1220 PC-based Personal DSP Training Station Armando B. Barreto 1, Kang K. Yen 1 and Cesar D. Aguilar Electrical and Computer Engineering Department Florida International University This paper describes the setup of a Personal DSP Training Station (DSPTS), based on a Personal Computer (PC) with a soundcard and a low-cost prototype DSP board. It will be shown that, with these minimum requirements, a student or a practicing engineer can have an environment to acquire the skills needed for the real-time implementation of DSP algorithms. I. Significance of an Affordable Real-Time DSP Training Station The ready availability and reduced cost of powerful Digital Signal Processors (DSPs) has taken this area of engineering from a highly sophisticated set of theories, reserved for high-end applications, to a practical alternative for signal manipulation in many industries. Accordingly, in recent years DSPs have been utilized as building blocks for a large number of consumer products, ranging from dolls to personal communication systems, modems, etc. This proliferation of DSP applications calls for the development of engineers that are capable of understanding the signal processing problem posed by a certain application, proposing a signal processing solution and implementing it for real-time performance. Such an engineer will require as a minimum, a combined knowledge of the following areas: - Continuous and Discrete Time Systems Theory - Microprocessor Programming and Hardware Interfacing - Software Engineering Concepts. While most of the knowledge indicated above is transmitted to engineering students in their lecture courses, the ability to implement the DSP techniques in dedicated processors (DSPs) for real-time performance is a skill that can only be developed by practice. Unfortunately, this also means that an adequate experimental environment is required for this practice. The fundamental component of a real-time DSP training station is, of course, a DSP processing board to perform the processing on signals that are converted from analog form to the digital domain and then back to analog. This kind of systems has been available to designers in industry for a number of years as Evaluation Modules (e.g., Texas Instruments EVM C30). Recently, DSP manufacturers have responded to the need of allowing educators and students, as well as practicing engineers interested in the filed, to learn real-time DSP implementation skills. As a result, a number of DSP Learning kits or DSKs have been offered at very affordable prices ($100 - $150). However, the DSP hardware is only one of the required elements for a real-time DSP learning environment. Two other types of elements are typically needed: Means of generating known, controlled signals to be applied to the DSP system as input, and means of monitoring and characterizing the output signals produced by the DSP hardware system. Although the necessary instruments for signal generation and monitoring are available in instructional laboratories at universities, or in some design departments in industry, they may not be available to many interested practicing engineers, or may represent a strong investment for small colleges that would like to implement real-time DSP courses. 1 This work was made possible by US Dept. of Education grant MSIP-P120A60016 and matching support from Texas Instruments, Inc. Page 3.441.1

This paper proposes ways in which the personal computer (PC) system with a sound card acting as host for the DSP hardware can also be used to provide some of the signal generation and monitoring requirements of a real-time DSP training environment. It is hoped that the simplicity of the requirements stated for the setup will enable interested students or practicing engineers to explore real-time DSP implementation. It is also hoped that these ideas may be used to developed real-time DSP learning laboratories with a much smaller initial investment. II. Feasibility of the Personal DSP Training Station Undoubtedly, an affordable and practical DSP training station for personal use would not be possible without the low-cost DSP hardware kits that manufacturers like Texas Instruments, Motorola and Analog Devices have recently made available. However, the significance of this has been magnified by two other concurrent developments: The incorporation of computer systems in our culture and the emergence of the internet as a powerful medium of information exchange, available to virtually all engineering students and practicing engineers. In just a few years, computers have shifted from the exclusive domain of engineers and scientists to become more of a household item. This has enabled the assimilation of personal computer systems and the capability to interact with them into contemporary culture. So, at this point, it can safely be expected that most upper-division students in electrical and computer engineering will have enough familiarity with some of the concepts involved in setting up and start programming a DSP development system. It is reasonable, in fact, to assume that the engineering student or the practicing engineer will have access to a personal computer system where he or she will be able to set up the DSP training station. The popularity of the internet as a means of information exchange is significant to the development of a personal DSP training station in that it provides (instantaneous) access to a continuously growing body of knowledge and resources. Specifically, the internet has become the prime vehicle for the dissemination of freeware or shareware for a wide variety of applications. Some of those applications, in fact, can help substitute the acquisition of expensive equipment towards the development of the personal DSP training station. Furthermore, the internet has magnified the sharing of practical knowledge among individuals interested in realtime DSP that was started through the Bulletin Board Services (BBS s) and it has complemented that interaction with related news groups and World Wide Web pages. It is in this context that the setup of an economical, personal DSP training station is proposed. In summary, the setup of the training station requires the following components: A DSP Starter Kit A reasonably powerful personal computer (e.g., Pentium 90 MHz, or better). A sound card in the computer (e. g., SoundBlaster 16) The Windows operating system Internet access (direct or indirect). It is very likely that the interested individuals may already have availability of most of the items listed above. For some more advanced analysis of the results obtained experimenting with the Real-Time DSP training station the student edition of analysis packages such as Matlab, may be a valuable addition. Page 3.441.2

While the topics discussed ahead apply to all the low-cost DSP hardware kits available from several manufacturers, our discussion will be developed around the Texas Instruments TMS320C3x DSK package, so that specific details can be provided where necessary. III. The C3xDSK The Texas Instruments TMS320C3x DSP Starter Kit (DSK) includes a C3x DSK board and software for assembling and debugging programs for the 50 MHz TMS320C31 DSP processor that it contains. In addition, the C3x DSK board includes a TLC32040 Analog Interface Chip (AIC), which provides 14-bit Analog-to-Digital (A/D) and Digital-to-Analog (D/A) conversions for one signal, at adjustable sampling rates. The RCA jacks for analog input and analog output in the board connect to the AIC, which, in turn, is connected to the serial port of the C31 DSP. In addition, The C3x DSK has a host interface port that connects to a parallel port in the host PC. A communications kernel running in the C31 DSP manages the host interface, enabling the host to inspect and modify memory and start or stop execution of program segments (through the debugger). The software provided in the C3x DSK includes a DOS assembler that will convert a source ASCII file written using the appropriate mnemonics for the C3x DSP processors into a loadable/executable file of type.dsk. The.dsk files can be loaded to DSP memory through the DSK3D debugger included with the kit. In addition the debugger will allow the user to inspect and modify all the registers in the DSP, as well as the DSP memory. DSK3D also implements most of the functions found in microprocessor or DSP debuggers: Start and stop of execution, establishment of breakpoints and watches, single-step tracing, etc. The complete description of the hardware and software included in the C3x DSK is found in the TMS320C3x DSP Starter Kit User s Guide 1, from Texas Instruments. DSP starter kits from other manufacturers include similar hardware and software components. IV. Interrupt-Driven Processing in the DSP Starter Kit Real-time processing of an analog signal implies that such signal will be sampled at a certain sampling frequency, f s, and that the DSP system will be able to perform all the necessary computations to provide an upgrade in the output signal before the next input signal is collected. This means that the total time required for the computation of the next output sample must be less than T = 1/f s, the sampling interval. In the C3x DSK the timing for sampling the signal is set by programming parameters in the AIC and setting the corresponding DSP serial port to acknowledge a periodic interrupt, every T units of time. So, the DSK will ordinarily be sharing its processing time between (at least) two (user) programs: a main program and the Interrupt Service Routine (ISR) that responds to the interrupt request issued periodically by the AIC. Typically the real-time processing tasks, as explained in the previous paragraph, will be carried out in the ISR, while the main program will usually involve an initialization phase, followed by some type of endless loop where some nonreal time tasks, such as user interface, etc. take place, having to yield periodically to the execution of the ISR. Figure 1 illustrates this concept. Much more detailed information about this concept can be found in the TMS320C3x User s Guide 2 or in the book by Chassaing 3. This brief explanation of interrupt-driven processing has been included here just to help understand the input substitutions that are proposed in one of the following sections. Page 3.441.3

V. Experimenting in Real-Time with the DSP Starter Kit The C3x DSK "starter kit" package itself provides the necessary elements to program the C31 DSP in the DSK board. However, the effective impact that a given algorithm programmed in the DSP will have on a signal processed by it requires the application of an input signal with known, controlled characteristics and the observation of the characteristics in the corresponding output signal. Ordinarily, the generation of an input signal with controlled properties and the monitoring of the output signal with respect to several of its characteristics calls for the use of testing equipment specifically designed for those purposes. Whenever available, specialized testing equipment will continue to be the best choice for signal generation and monitoring. On the other hand, the following sections outline ways in which these needs may be met, at least at the level required for verification of algorithm performance for instructional purposes, with much less expensive and widely available means. VI. Input Substitution In a standard laboratory setting test signals would be produced with signal and function generators of various classes. In some cases a random noise generator may be available to provide an input with approximately flat magnitude spectrum. In this way, observation of the output spectrum will directly display the magnitude response of the DSP implementation under test. In other cases a signal generator is used to provide periodic signals with a known fundamental frequency. A number of alternatives exist for the substitution of those pieces of equipment: VI.1 Internal input substitution A variety of periodic signals (sinusoidals, trains of pulses or impulses) can be substituted internally by the DSP if a Look-Up Table (LUT) is set up with the values of one cycle of the signal in question. If such set of values is downloaded with the program to a buffer aligned to a boundary for a block size larger than the actual length of the LUT, then circular addressing in the DSP can be employed to read one sample from the LUT, instead of reading the input sample from the AIC, in each ISR. This will also require that the block size register (BK) be set to the length of the LUT. For a LUT of length N, the simulated frequency of the periodic signal effectively used as input will be f p = f s /N. The generation of a signal with flat magnitude spectrum to directly test the magnitude response of an algorithm would require a random noise generator. A Pseudo-Random Binary Noise (PRBN) generator may be built into the implementation under test, so that the DSP will create one PRBN sample and use it as the most recent input to the algorithm, instead of retrieving a real Analog-to-Digital converter result from the AIC. A simple algorithm for PRBN generation consists of the bit-wise (modulo 2) addition of preselected bit locations (e.g., b 17, b 28, b 30, b 31 )in a 32-bit word that is iteratively shifted left, one bit at a time. The resulting bit determines if the PRBN value for the iteration is a high or a low level and it is copied into the LSB location of the generator word, opened up by the left shift applied to it. The 32-bit word loaded to start the process is the seed value for the PRBN iterations. Figure 2 shows the basic concept. Actual C3x code for implementing this process can be found in the book by Chassaing 3. Page 3.441.4

START Disable interrupts Initialization Enable interrupts Non- Real- Time Tasks MAIN ISR 1 Input x 1 from AIC y 1 = f(x 1 ) Output y1 to AIC ISR 2 Input x 2 from AIC y 2 = f(x2) Output y 2 to AIC T 32-bit seed value 31 30 28 17 0 Σ Modulo 2 Scaler PRBN output Figure 1. Interrupt -driven real-time processing Figure 2. Block diagram for the generation of Pseudo-Random Binary Noise (PRBN). VI.2 External input substitution For several applications, such as the verification of digital filters, a number of external devices, other than signal generators may be used as signal sources. Typically, the signal from the headphone output of an inexpensive personal tape playback unit ( Walkman type of device), or CD player may be suitable for the verification of signal processing algorithms for audio and voice applications. This mechanism enables the student to really appreciate the effect of the processing, (e.g., filtering) on familiar sounds (e.g., songs) which can, on the other hand, be played again and again, as required. This form of verification requires that the output of the DSK be played as a sound through magnified speakers (Section VII.2). Another form of external input substitution which takes advantage of the assumed host computer capabilities is the use of the sound card for playing a digital audio file. To use this form of signal generation the output connector of the sound card is patched to the input connector of the DSK board. This approach may provide additional advantages if there is a mechanism to build digital audio files with specific signals. For example, Matlab is capable of converting an array of numbers determined by assignment or computation into a Wave (.wav) file, which can then be played out through the soundcard, using standard applications for that purpose. The Sound Recorder application in Windows can be used for this. Other more elaborate programs, such as GoldWave, which can be retrieved through the World-Wide Web as shareware (http://www.goldwave.com), are capable of playing this files in a loop, thus providing a continuous signal source. VII. Monitor Substitution The ultimate verification of a real-time DSP implementation takes place by matching the expected characteristics of an output signal with those measured from the actual DSK board. In most cases the verification calls for the evaluation of certain performance measures through instrumentation capable of revealing the effective values of those figures of merit, in real time. In some specific cases, particularly audio signals, the ultimate verification is also subjected to the appreciation of the observer, which is obtained by playing out the output through speakers, Page 3.441.5

allowing a qualitative assessment of the algorithm performance. Fortunately there are also affordable means to perform both the quantitative and the qualitative types of verification of real-time DSP implementations in a DSP starter kit, such as the C3x DSK. VII.1 Substitution of quantitative monitoring Typically, performance of the algorithm can be measured by the degree of observed modification in the time and frequency characteristics of the output signal, for a known input signal. In a traditional laboratory setting these features of the output signal would be measured with an oscilloscope and a spectrum analyzer, respectively. While the oscilloscopes were initially analog in nature, the most recent types, as well as the spectrum analyzers, are essentially digital systems. Just a few years ago the functions involved in the implementation of digital oscilloscopes and spectrum analyzers required the use of dedicated processors. However, most of the computers used these days as DSK hosts have the capability of carrying out the computations and functions required for the display of the output signal in time or in frequency, simultaneously with the performance of the DSP processing by the starter kit board. The missing link that prevents ordinary computers from serving as monitors in the time or frequency domain is the necessary Analog-to-Digital and Digital-to-Analog interfaces to convert the continuous time inputs and outputs to / from the DSP starter kit board. With the recent advent of multimedia systems for personal computers the sound boards, such as Creative Labs SoundBlaster 16 have become an almost standard module in the ubiquitous PCs. This sudden popularity has prompted several groups of programmers to develop software applications for the PC that take advantage of the sound board as a two-channel data acquisition board that enables the PC to capture one or two analog signals as discrete-time sequences. Once the signals have been digitized using the sound board, the corresponding sequences may be displayed to the PC user, emulating a digital oscilloscope. Alternatively, these sequences may be further processed in the PC, by means of an FFT routine, displaying the resulting magnitude spectrum, as in a spectrum analyzer. There are two shareware applications that we have found useful in the context of verification of DSP algorithms implemented in the DSK: The Scoper, by Mike Ferris, for real-time display of one analog signal connected to the input of the sound board. This is a freeware program that can be downloaded without charge from http:// www.winsite.com/info/pc/win3/sounds/scoper.zip/ The Scoper is a Windows application that provides simple display of the signal with six levels of attenuation and seven different time scales. Although the display capabilities are much more limited than those of a real scope, the display is normally of sufficient quality to verify the performance of the algorithm (e. g., using a manual sinusoidal sweep as input). The Spectrum Analyzer by Philip VanBaren is a fairly complete program capable of using several types of sound boards (SoundBlaster, ProAudio Spectrum, etc.) to acquire one or two analog channels and process them to display a single spectrum (individual channel or left-right difference). This program provides numerous options (sampling rate, FFT size, windowing function, number and type of FFT averaged, etc.) The program also has a number of display management functions that make it very useful. For example, the spectrum display can be frozen and printed or saved as an ASCII file. In this way the spectrum values can be imported into other analysis and display programs, such as Matlab, where improved formatting is possible. Both the DOS executable and the source code can be retrieved from the URL below, under the name freq51. (The copying policy for this program is the GNU GPL, General Program License ): http://bul.eecs.umich.edu/~phillipv/signal/ Page 3.441.6

Other commercial sound board programs exist that can be used for monitoring real-time DSP performance in both the time and the frequency domain. For example GoldWave by Chris Craig is offered for trial as shareware from: http://www.goldwave.com/ This program is more versatile than the two above, being capable of displaying both the time and frequency domain representation of both channels sampled by the soundcard. The main aim of this program is the use of the sound bord for the recording and reproduction of sound (wave) files. A small registration fee is requested from the user. In some instances, as mentioned for the Spectrum Analyzer, it is desirable to perform a more detailed analysis of the DSP board output. That would be the case in which the response of the algorithm in the DSP board to an impulse or rectangular pulse (step) needs to be observed in detail. In these cases the desired input signal could be generated internally to the DSP, by accessing an appropriate Look-up Table with circular addressing and the output of the DSP board could be connected to the input of the soundboard. Then, using applications such as Sound Recorder the response can be recorded as a wave file. This wave file, in turn, can be converted by programs such as Matlab into a vector of samples vs. time which allows detailed measurements on the output waveform. VII.2 Qualitative monitoring In the specific case of audio or speech processing applications the validity of the DSP algorithm implemented in the DSK can be qualitatively evaluated by the assessment of the output audio signal played through amplified speakers commonly included in the PC multimedia packages. In addition, availability of a sound card and an associated application, such as Window s Sound Recorder enables the storage and playback of results obtained from the same input, for different parameters of the DSP algorithm, for qualitative comparison purposes. VIII. The Personal DSP Training Station Figure 3 shows a block diagram indicating how all the options that have been outlined for signal generation and monitoring can be combined to provide a full set of resources for real-time DSP experimentation. The block representing Matlab is drawn with dashed lines because the basic functionality of the DSP training station can still be implemented without it, although its incorporation certainly adds to the capabilities of the training station. Furthermore, its use provides very good support to the algorithm design phase of the DSP experimentation, including commands for one-step digital filter design and extensive features for interactive algorithm simulation and off-line verification. IX. Example Figure 4 is a screen capture obtained from the use of The Spectrum Analyzer, with the output of a C3x DSK connected to the microphone input of the SoundBlaster16 card. The parameters of the sound card have been adjusted to f s = 5000 Hz, FFT length = 1024 samples, and the display corresponds to the (uniform) average of 420 FFTs. The DSK was programmed to implement a 6 th order Chebyshev-I Low-Pass Filter with a cutoff frequency at 1KHz (DSK Sampling rate was 20 KHz), with 1 db ripple. The filter was fed with Pseudo-Random Binary Noise samples generated in every ISR by the algorithm outlined in Section VI.1. The display of averaged spectra from The Spectrum Analyzer allows the verification of the of the cutoff frequency and the passband ripple characteristic of the Chebyshev type I approximation function. Page 3.441.7

IN Look-up Table, PRBN PC amplified Speakers DSK DSP AIC OUT out in HOST PC Parallel Port SOUNDCARD (e.g., SoundBlaster 16).wav Matlab DSK3D Debugger The Scoper The Spectrum Analyzer Sound Recorder (GoldWave) Off-line Analysis, Display Figure 3. Block Diagram illustrating the interconnections of the modules in the Personal DSP Training Station Figure 4. Sample result of the spectrum displayed by The Spectrum Analyzer. This figure shows the averaged spectrum for a 6 th order Low-Pass Chebyshev Filter implementation using the PRBN input substitution (Section VI.1) X. References [1] TMS320C3x DSP Starter Kit Users Guide, Texas Instruments Inc., 1996. [2] TMS320C3x Users Guide, Texas Instruments Inc., 1994. [3] Digital Signal Processing with C and the TMS320C30, Rulph Chassaing, Wiley Interscience, 1992. Page 3.441.8