Using Microsoft Directx In A Dsp Laboratory

This paper reports on the use of Microsoft DirectX as a laboratory teaching tool in a junior-level digital signal processing (DSP) course for technology students. The DirectX Software Development Kit (available as a no-cost download from Microsoft), along with Microsoft Visual C++ or Visual Studio, can turn any soundcard-equipped desktop or laptop PC into a selfcontained DSP laboratory for software development, experimentation, and teaching. Teaching DSP to ECET students represents a unique challenge, due to the hands-on emphasis compared with the more theoretically-oriented engineering curriculum. Ideally, a technology DSP course would include laboratory exercises which allow the student to experience the results of various digital signal processing functions by seeing or hearing them. Furthermore, some of the lab exercises should require the student to develop code which executes in realtime, to build an awareness of hardware limitations and the need to write efficient code. These objectives suggest the use of DSP hardware, such as the DSP evaluation modules which are available from DSP manufacturers (Analog Devices, Texas Instruments, etc.). That approach means buying multiple copies of hardware which can only be used for the DSP class, and which may represent a significant investment. The approach described here allows the student to develop and execute realtime signal-processing software using C++ and a standard PC. The PC soundcard is used for signal input and signal output, allowing students to hear the results of their DSP software. Hardware limitations imposed by the PC, while not overly restrictive, do require a bit of discipline and ingenuity on the part of the student. The low-cost of this approach makes it easy for students to equip their own home or laptop computers for DSP development, so they are not tethered to a laboratory on campus.