(c) 1996 IEEE. Personal use of this
material is permitted. However, permission to reprint/republish this
material for advertising or promotional purposes or for creating new
collective works for resale or redistribution to servers or lists, or to
reuse any copyrighted component of this work in other works must be obtained
from the IEEE.By choosing to view this document, you agree to all provisions of the copyright laws protecting it.
Although students have been exposed to multi-media for most of their lives, few technical courses take advantage of this exposure to enhance the presentation of signals and system theory. Computers now have multi-media capabilities that are ideal for developing the materials necessary to integrate this aspect of education into DSP courses. In addition, DSP is situated in a special position where the underlying theory is essential for understanding the actual multi-media systems contained in present-day computers.
In 1974 an introductory DSP course that attempted to make use of computer exercises and demonstrations was offered at Princeton [1]. That course was limited by the computer tools of the day---FORTRAN on a batch mainframe. Now, with sophisticated mathematical programs such as MATLAB [5] and Mathematica [6], students can easily simulate signal processing techniques that underlie applications such as audio, voice, image and video processing. Development of a complete processing system may take only a few hours once the system is described in terms of its frequency response and system block diagram. This high-level approach makes it possible to use DSP as the introductory course in an electrical or computer engineering curriculum.
With this philosophy in mind, new materials for demonstrating real-world signals and systems have been developed for computer engineering students at Georgia Tech and Rose-Hulman. Both schools have a relatively new, required course for computer engineering sophomores that teaches the fundamentals of DSP. Because DSP is involved in every aspect of multi-media information (coding, transmission, storage, playback, etc.) the numerous in-class demonstrations and in-depth laboratory exercises developed for the course relate to the synthesis and/or analysis of sounds or images via computer (i.e., multi-media). In other words, the course is actually using multi-media to teach the theory of digital multi-media signals. The rationale for studying applications such as audio and video is to provide a richer, more interesting context and motivation for later courses in engineering theory. The same approach has been taken by Steiglitz in a new book targeted at digital audio and computer music [2].
In the spirit of presenting via the Web, this paper is also a Web document on the accompanying CD-ROM. Words underlined in the printed version are links in the electronic version. Feel free to click on these links to explore this paper in the same way a student would explore our class.
Section 2 presents the goals and structure of the new sophomore DSP course and shows what topics are presented in the class. Section 3 provides an overview of the laboratory exercises, which are an integral part of the course. Section 4 describes some of the in-class demonstrations and how they are made available outside of class via the Web or via CD-ROM. Section 5 conveys our belief that a DSP course such as the one presented here is well suited to be both an introductory EE course (before circuit analysis) and, with perhaps a few minor modifications, a general introductory course for non EE majors. Finally, section 6 contains some concluding remarks.
The course outline given below is close to the final definition of the course, but continues to evolve as different instructors teach the material. Since Georgia Tech and Rose-Hulman are both on a quarter schedule, the topic list would need to be expanded for a semester-length course.
Recently, we have used the graphical user interface (GUI) tools of MATLAB to build simple environments where the students can experiment with just one concept. We have found that sometimes the details of MATLAB programming can distract from the DSP ideas. For example, in image enhancement, our emphasis is on filtering, but the display of processed images is complicated by the fact that the output dynamic range must be eight bits in the range [0,255] while filtering usually produces negative values. This extraneous issue is bad from the point of view that it masks the direct learning of filters for smoothing or edge enhancement; on the other hand, it is good because it teaches the valuable lesson that real signals often have attributes or constraints that must be obeyed independent of the DSP programs.
Another valuable part of the laboratory is the opportunity for some design and creativity. In one lab the students must synthesize a tune by using simple sinusoids to prove their understanding of amplitude, frequency, and phase of a cosine signal. This seemingly trivial task leads to very creative solutions in which the sinusoids can be tailored to optimize the ``musical'' sound. For example, several sines can be added to produce a chord or harmonic overtones; pauses can be inserted to produce better timing; and amplitude envelopes can be used to produce the attack, decay, sustain, release (ADSR) shape used in computer music. Each of these activities requires additional work by the students, but they are often willing to do the extra research and experimentation to produce the best sounds.
In one quarter, nine laboratories can be completed. The following list gives describes the type of labs we are using to promote the connection to real signals.
and playing a tone out through the D/A system and speakers. Extracting
A, f and
from
a waveform plot.
In designing laboratory exercises for the class, one goal has been to ensure that they are readily transportable between workstations and personal computers. The fundamental barrier to this goal is that many students who own personal computers are reluctant to purchase the full version of MATLAB . Student versions of MATLAB are much cheaper; however, they limit the maximum size of a matrix to 8192 elements. This limitation prohibits the use of student version MATLAB in the image filtering labs and restricts the speech and audio labs to sounds on the order of 1 to 2 seconds. However, all other labs are easily performed on a Macintosh or PC clone using the student version of MATLAB. In fact, personal computers may be the machines of choice since the audio capabilities of many workstations are poor unless expensive add-ons are purchased. On the other hand, Macintoshes and PC clones generally have many options for audio input/output and are starting to have low-cost options for video.
Once multi-media software and hardware are widely available, the audio and video components of a multi-media computer system can be demonstrated and studied. The theory presented in the course ultimately explains the inner workings of A/D conversion boards and the corresponding software packages for recording, processing and playback. These components are now rather inexpensive. Future plans include more extensive use of video, using frame grabbers or video rate A/D converters that digitize from a VCR output. Even if the resolution were rather limited, it would be more important in the lab to have access to the video signals rather than to incur the expense of extremely high-quality I/O.
When these demonstrations are presented in class they allow some student interaction. However, the student can only influence the demonstration through the professor. The demonstrations also tend to hide many implementation details. Glossing over the details is good when the student is first exposed to a new topic because the goal of the demonstration is to motivate a connection between a fundamental concept and its physical manifestation. However, the details involved are also an area rich for educational exploitation. For example, the link between a digital signal stored on a computer and the sound perceived when it is played through a speaker is largely a function of the sampling rate of the D/A converter. Allowing students to experiment with this parameter and even make mistakes helps them to build a more intuitive understanding of the concept of sampling.
Putting the demonstrations on the WWW is one way of facilitating increased student interaction [7]. A number of classroom demonstrations have been duplicated or modified slightly in order to facilitate their presentation on the WWW so that students can have access to them outside the classroom.
Another area for computer usage lies in automatic generation of quiz problems for review and drill. The MATLAB GUI can be programmed to generate problems that involve a graphical component such as reading the parameters of sinusoids or doing complex arithmetic calculations by visualizing the graphical (or geometric) vector solution. Below is a brief description of a few of the demonstrations and drill problems used.
| Tuning Forks |
|
In class, the equation of the frequency of a tuning fork is derived. This demonstration shows how the mass and type of material affect the pitch of the tuning fork. Some QuickTime® movies of various tuning forks being played allow the student to see the different forks and hear the different pitches. A plot of the sound of one fork is also shown. |
| Reading Sinusoids |
|
This is a MATLAB program that drills the student on how to read a sinusoid. It uses MATLAB's graphical user interface so the student who hasn't learned MATLAB (yet) won't get lost in the details of plotting, etc.. |
| Rotating Phasors |
|
Is there a better way to learn about a rotating phasor than to watch one rotate? These MATLAB generated QuickTime® movies reinforce the idea of a rotating phasor and illustrate Euler's formula by tracing out the projection of the phasor onto the real axis. |
| Sampling and Reconstruction |
|
In the sampling and interpolation chapter, the concepts of aliasing, folding and reconstruction through interpolation are all introduced. An alternate view of these concepts is presented in an interesting demo involving a rotating disk and a video camera. |
| PEZ | ![]() |
A MATLAB Graphical User Interface (GUI) (written by course alumnus Craig Ulmer) that allows pole-zero placement, movement and editing. A second window showing the corresponding frequency response and impulse response is updated whenever the poles or zeros are moved. |
| Mapping from the Z-plane to Frequency Response |
|
A QuickTime® movie that provides the student with a three-dimensional view of an FIR system function. The frequency response is evaluated by tracing out a path along the unit circle. |
It should also be noted that the Internet has been used in other ways to increase student participation in the course. For example, a Georgia Tech ``newsgroup'' devoted entirely to the course has been active for over a year. The newsgroup provides a convenient means for students to interact with one another and exchange ideas, form study groups, etc. In addition, relevant announcements and handouts are typically posted on the course homepage. Future plans include the electronic submission of assignments and allowing students to modify the course homepage by adding links to their own homepages, etc.
One reason is that basic circuit theory focuses on a very low level of engineering systems, and therefore it is difficult to motivate students who ask, ``Why am I studying this subject?'' On the other hand, introductory discrete-time signals and systems is easy to motivate if it goes beyond the mathematics of DSP; e.g., by processing audio and video signals. Furthermore, in this era of digital systems, a basic DSP course is more naturally tailored to the widespread use of computers for instrumentation and processing.
In the coming years, there is likely to be a general recognition that signal processing methods are more important than circuit theory for a wide audience of engineering students outside of EE. For example, mechanical engineers find significant use for signal processing in measurement systems, and computer scientists involved in multi-media applications can benefit greatly from a deeper understanding of discrete-time signals and systems. Thus, an ``introductory DSP'' course would be attractive to other majors because the material would not be tied to a long prerequisite chain as is now the case. Instead, second or third year students could have a glimpse of computer processing methods that might include applications from their own area.
Perhaps most interesting is the fact that the course focuses on the very heart of the multi-media explosion that is currently underway. Therefore it is eminently reasonable that multi-media technology be applied in the teaching of the course itself. Toward this end, the authors have begun to explore how CD-ROMs and World Wide Web technology can be used effectively in teaching the theory behind multi-media signals and systems. In this paper, examples of some early activities in this emerging area of education have been presented. The success encountered so far bodes well for the notion that modern information technology will enhance education in engineering and many other fields.