A Survey of Digital Signal Processing Education

advertisement
A Survey of Digital Signal Processing Education
Jerry J. Zacharias
The University of North Carolina at Charlotte
jjzachar@uncc.edu
James M. Conrad
The University of North Carolina at Charlotte
jmconrad@uncc.edu
Abstract
microprocessors and, therefore, desire more education in
DSP” [10]. It is therefore essential for universities to
offer early courses in embedded DSP for engineering
students. Kou and Miller also stated, “A laboratory
synthesis experience is essential to reinforce the formal
material delivered in the classroom setting” [13].
Many have repeatedly reminded the engineering
education world that the world has become predominately
digital, but electrical engineering education at many
universities have not adjusted their core curriculum [14].
Perhaps electrical engineering could examine the
suggestions of the computer engineering community with
respect to Digital Signal Processing?
The objective of this paper is to suggest a more rigorous
and complete DSP curriculum that will meet corporate
needs to produce “industry ready” DSP engineers from
the ranks of students with undergraduate degrees. A
study of many Digital Signal Processing (DSP)
curriculums across the world was conducted to determine
the level of DSP theory, application, and lab exercise
activity that was currently being offered to engineering
students. Curriculum guidelines on DSP from the
ACM/IEEE Joint Task Force on Computer Engineering
Education were examined to help guide the development
of an "ideal" DSP curriculum.
2. Curriculum Suggestions from ACM/IEEE
1. Introduction and Need of DSP
The ACM and IEEE Computer Society formed a
joint task force to examine computing curricula for
university computer engineering programs. The resultant
report, Computer Engineering 2004:
Curriculum
Guidelines for Undergraduate Degree Programs in
Computer Engineering, includes recommendations for the
inclusion of many computer engineering topics in sample
programs administered by CS or ECE departments [31].
One core "Body of Knowledge" area is Digital Signal
Processing. The DSP Body of Knowledge has a
suggestion of seventeen hours of core material and
additional suggested elective areas of unspecified time.
These twelve areas and their learning objectives include:
Digital Signal Processing (DSP) is one of the most
powerful technologies today that use computers to
process signals to fulfill a variety of needs such as speech
recognition, noise filtering, data compression, audio and
video enhancement. These applications or products
would not be possible without the development of
specialized hardware, embedded Digital Signal Processors
(DSP).
The world of embedded DSP is one that has evolved
significantly over the past 30 years. The investments
made in the development of DSP hardware and software
by leading companies like Texas Instruments, Motorola,
Agere Systems, and Analog Devices has resulted in a
pervasive technology worth more than $10.4 billion. DSP
devices are found in many popular consumer products
such as: MP3 players, MPEG codecs, cell phones, and
cable modems. There is little or no doubt that DSP
currently plays an important role in modern life. The need
for DSP engineering and will certainly grow in the
twenty-first century.
These developments have certainly generated a
demand for knowledgeable individuals in signal theory
and more importantly, familiarity with real-time
embedded Digital Signal Processors and DSP software.
Until recently, DSP courses were offered only in the
graduate curricula of most universities, and such curricula
had a heavy emphasis on mathematics and theory.
However, one should not fail to understand the reasons
for which many engineers lack DSP exposure today.
Hong, et. al. have stated “Many of these engineers now
find themselves working on products that use DSP
1-4244-1029-0/07/$25.00 ©2007 IEEE.
0.
1.
2.
322
History and overview (1 hour):
Students are
expected to clearly distinguish the difference between
analog and discrete signals. Be able to articulate
differences between image processing and computer
graphics. Must be able to indicate the characteristics
of filters: low-pass and high-pass filters. Students
should be able to identify the needs and benefits of
digital signal processing.
Theories and concepts (1 hour): Crucial topics such
as: sampling theorem, time domain, frequency
domain, and principles of causality like discrete and
continuous spectra should be clearly articulated to the
students.
Digital spectra analysis (1 hour): Students should be
able to describe the spectra of a periodic signal,
contrast between the spectra of an impulse and a
square wave, and describe importance of filtering.
3.
Discrete Fourier Transform – DFT (1 hour): It is
critical for students to understand the concepts of
DFT and is aware of the purpose and applications of
Fourier Transforms. They should clearly understand
the concepts of computational efficiency when
dealing with Fast Fourier Transforms. Finally,
students should comprehend how the DFT
accomplishes filtering.
4. Sampling (1 hour): Students must be able to describe
the advantages and disadvantages of using increased
sampling rates.
5. Transforms (4 hours): Students have to be familiar
with the concepts, properties and uses of ztransforms. Be able to identify the significance of
DFT and FFT.
6. Digital filters (elective):
Must comprehend
frequency selective filters in the z-transform domain
and be able to design digital filters given specified
frequency characteristics.
7. Discrete time signals (elective): Understand the
discrete-time representation and errors (aliasing)
involved in sampling and quantization of signals.
8. Window functions (elective): Must be able to define
window functions, identify significance to digital
signal processing and explain how window functions
can improve transform properties.
9. Convolution (elective): Identify the convolution
techniques to analyze circuits and represent
convolution using graphical techniques.
10. Audio processing (elective): Be able to describe the
purpose of speech coding, how digital techniques
enhance speech and audio signals, and how digital
techniques cancel noise in audio processing.
11. Image processing (elective): Describe how sampling
affects image integrity, effects of low and high pass
filters on images, contrast between reconstruction and
enhancement filters, and ways one can minimize
image noise.
guidance of popular textbooks by Chaissaing, Kuo and
Lee, and Welch, et. al. [2, 12, 29]. A brief discussion of
the curriculums offered in the 13 institutions follows. In
most of the academic settings, the DSP courses were
followed by a lab session. The lab sessions were solely
utilized to discuss and re-enforce the theory learned by
first simulating lab results in software tools such as
Matlab and later implementing using DSP hardware
processes.
3.1 Common Concepts Covered
The DSP concepts covered in many of the institutions
have a relatively high theoretical correlation with the
suggested curriculum by ACM/IEEE. Most of the
universities on average require 8-10 Real-Time DSP labs
and some have emphasis on final projects. As the study
in Figure 1 suggests, many of the courses are offered on
the junior or senior level. The DSP course builds on
various strong pre-requisites such as:
• Computer Architecture
• Circuits
• Signals and Systems
• Programming Language experience (C or
Assembly)
• General
Purpose
Embedded
Systems
Programming
• Compilers
• Basic Engineering Mathematics
The most commonly identified concepts
experiments covered are structured as follows:
1. Sampling and Reconstruction
2. Hardware Architecture
• Harvard Vs. von Neumann
• Buses
• Memory Map
3. Instruction Set
• Addressing Modes
• Circular Addressing
• Pipelining and Parallelism
• Arithmetic Instructions (includes
Note that, in the above guidelines there is no
emphasis or discussion of embedded DSP tools and their
operations.
or
lab
use
of
accumulators)
3. Survey of programs at Universities
• Logical Manipulations
• Control Instructions
To investigate further, it was important to conduct a
survey of DSP courses and the curricula provided at
various institutions. An extensive search was conducted
throughout the academic world to identify Digital Signal
Processing courses that articulately offered both theory
and real-time processing knowledge. Among the many
universities, the programs at thirteen institutions are
tabulated in Figure 1 along with the course details found.
The results presented are consequences of a very
exhaustive investigation of university websites. The
benchmarking criterions were developed under the
4.
5.
6.
323
Assembly and C Programming
• Developing algorithms in Assembly and C
Programming
Hardware Features
• Interrupts
• Direct Memory Access (DMA)
• Codecs
• Timers etc…
I/O Interfacing
institutions throughout the world. It is evident there are a
few weakness. Improvements can be made by bringing
changes to academic curriculum or course structure. The
later section outlines how changes can be placed to
maintain student interest and provide, “industry like”
familiarity of DSPs.
• Basics of interfacing with particular
peripherals.
7. Frequency Analysis
• Discussion of Fourier Series and Fourier
Transforms
• z-Transforms
• Basic System Concepts (poles & zeros)
• Discrete Fourier Transform
8. FIR Filters
9. IIR Filters
10. Fast Fourier Transform
11. Adaptive Filters
12. Spectral Analysis
4. Suggested Outline
The proposal is to initially mandate strict adherence
to the pre-requisites mentioned earlier and secondly
partition the DSP course into two settings: classroom
(standard hours) and laboratory (2-3 hours).
The
suggested outline of the semester is shown in Figure 3.
The classroom setting will be utilized for the basic DSP
theory and the first few hours of the laboratory sessions
may be utilized for hardware theory. The remaining time
in the lab should be utilized for demonstrations and lab
exercises. The classroom and lab theory sessions should
constantly provide students with industry relevant
examples. There are a variety of exercises that can be
pursued in the areas of sound, image, and video
processing which will prolong to develop student interests
and value their hard work.
The above topics are well representative of most
curriculums, but some flaws remain. If one examines
Figure 1, it is clearly evident that the current curricula
offered at many universities lack several key ingredients
to contour an engineering student with practical industry
experience. Industry seeks engineers with a fluent
knowledge in theory and practical knowledge. It was
noted that many of the universities (including the thirteen
in Figure 1), are not consistently offering courses yearly
in Embedded DSP. Also, there is a lack of emphasis on
core practical topics such as:
5. Conclusions
1. Application Development Process: a study required
for students to understand how to select a DSP
device based on the needs of a project and proper
workflow to develop and test DSP algorithms.
2. Common DSP Application: a study to widen the
application knowledge of students, such that a
passion for the theory is developed.
3. Code Efficiency and Optimization: the application
of Digital Signal Processors in products such as: cell
phones, modems, satellites, and cameras demands
fast executions and relatively fewer machine
instructions.
4. Final Project: needed in every academic curriculum
to reemphasize the cumulative theory and practical
knowledge acquired throughout an academic term.
A wide variety of DSP curriculums are surveyed to
reflect that many institutions did not provide “industry
ready” students. A suggested curriculum outline has been
presented, in which the DSP course is separated into a
classroom and laboratory setting for maximum exposure
to Digital Signal Processing techniques.
In the process of investigating and preparing a
recommended DSP program, the authors actually
consulted regularly with available textbooks and found
that the available books (Chaissaing, Kuo and Lee, and
Welch, et. al. [2, 12, 29]) are excellent aids to DSP
education.
6. References
3.2 Common Hardware
[1] Arizona State University, "EEE 498",
http://www.fulton.asu.edu/~karam/eee498/
[2] Chassaing, R., Digital Signal Processing Laboratory
Experiments Using C and the TMS320C31 DSK, John
Wiley & Sons, Inc, 1999.
[3] Chiang, K.H., Evans, B.L., Huang, W.T., Kovac, F., Lee,
E.A., Messerschmitt, D.G.; Reekie, H.J., Sastry, S.S., Realtime DSP for sophomores, Acoustics, Speech, and Signal
Processing, 1996. ICASSP-96. Conference Proceedings.,
1996 IEEE International Conference, Vol. 2, May 1996, pg.
1097-1100.
[4] Design and Reuse, "Hot Embedded DSP Market Almost
Twice The General-Purpose DSP Market According To
New Forward Concepts Study", http://www.us.designreuse.com/news/news6954.html
The importance of proper exposure to DSP hardware
cannot be stressed more, “to produce students who are
immediately productive in industry” [28]. The list of
“Real-Time Systems” in Figure 1 identifies three popular
hardware manufactures and their respective family
devices used in most institutions. Figure 2 briefly presents
a comparison of the hardware. Though all these devices
have their subtle design differences, the familiarity and
experience with the hardware will stimulate educational
success for students.
The above benchmarking has helped evaluate the
standard of DSP education, provided at various
324
[5] Florida International University, "EEL 5757",
http://ww.eng.fiu.edu/ece/syllabi/eel5757.htm
[6] Forward Concepts, "Hot Embedded DSP Market Almost
Twice The General-Purpose DSP Market According To
New Forward Concepts Study",
http://www.fwdconcepts.com/press52.htm
[7] Gan, W.-S., "Teaching and Learning the Hows and Whys
of Real-Time Digital Signal Processing", IEEE
Transactions on Education, Vol. 45, No. 4, November
2002.
[8] Georgia Institute of Technology, "ECE 4025",
http://www.ece.gatech.edu/PHP/undergrad/course_outline.
php?prmCourse=ECE4025/
[9] Hebrew University of Jerusalem, "Real Time DSP 67630",
http://cs.huji.ac.il/course/2004/rtdsp/
[10] Hong, P.S., Anderson, D.V., Williams, D.B., Jackson, J.R.,
Barnwell, T.P., Hayes, M.H., Schafer, R.W., Echard, J.D.,
"DSP for Practicing Engineers: A Case Study in Internet
Course Delivery", IEEE Transactions on Education, Vol.
47, No. 3, August 2004.
[11] Insight, Analysis, and Advice on Signal Processing
Technology, http://www.bdti.com/
[12] Kuo, S.M., and Lee, B.H., Real-Time Digital Signal
Processing, 1st ed. West Sussex: John Wiley & Sons, Ltd,
2001.
[13] Kuo, S.M., Miller, G.D., "An Innovative Course on RealTime Digital Signal Processing Applications", 1996, IEEE
Proceeds of ASILOMAR-29, Pg 88-92.
[14] McClellan, J.H., Schafer, R.W., Yoder, M.A., "A Changing
Role for DSP Education", IEEE Signal Processing
Magazine, May 1998.
[15] Northern Illinois University, "ELE 452",
http://www.ceet.niu.edu/syllabus/eecourses/ungrad/ele452.
html/
[16] Oklahoma Christian University,
http://www.oc.edu/faculty/david.waldo/projects/nsfccli/nsf
ccli.html/
[17] Padgett, Wayne T., "An Undergraduate Fixed Point DSP
Course", Digital Signal Processing Workshop, 2002 and the
[18]
[19]
[20]
[21]
[22]
[23]
[24]
[25]
[26]
[27]
[28]
[29]
[30]
[31]
325
2nd Signal Processing Education Workshop Proceedings of
2002 IEEE 10th, Oct. 2002, Pg. 302-305.
Purdue University, "EET 357",
http://www2.tech.purdue.edu/Eet/courses/eet357/
Rice University, "ELEC 434",
http://www.dsp.ece.rice.edu/~choi/elec434/
Smith, S.W., "The Scientist and Engineer's Guide to Digital
Signal Processing", http://www.dspguide.com/whatdsp.htm
Stewart, R.W., "Practical DSP for Scientists", Acoustics,
Speech, and Signal Processing, 1993. ICASSP-93 IEEE
International Conference, Vol. 1, April 1993, pg. 32-35.
Strauss, W., "The Embedded DSP Trend", IEEE Signal
Processing Magazine, May 2004.
Univ. of Illinois at Urbana Champaign, "ECE 420",
http://courses.ece.uiuc.edu/ece420/
University of Colorado, "ECEN 4532",
http://ece.colorado.edu/~ecen4532/schedule.html/
University of Michigan, "EECS 452",
http://www.eecs.umich.edu/courses/eecs452/
University of Texas at Austin, "EE345S",
http://www.ece.utexas.edu/~bevans/courses/realtime/
University of Texas of A&M, "ELEN 448",
http://www.ece.tamu.edu/~dsplab/ee448.html/
Waldo, D.J., "Advanced DSP for Undergraduates at a
Small University", Oklahoma Christian University.
Welch, T.B., Cameron H.G. Wright, and Michael G.
Morrow. Real Time Digital Signal Processing from Matlab
to C with the TMS320C6x DSK. 1st ed. Boca Raton: CRC
Press, 2006.
Wood, S.L., "Signal processing and architecture in the
lower division electrical engineering core", Acoustics,
Speech, and Signal Processing, 2001. Proceedings.
(ICASSP '01). 2001 IEEE International Conference, Vol. 5,
May 2001, pg. 2713-2716.
ACM and IEEE Computer Society, Computer Engineering
2004: Curriculum Guidelines for Undergraduate Degree
Programs in Computer Engineering, IEEE CS Press,
December 12, 2004.
Figure 1: Benchmarking of DSP courses
Figure 1: Benchmarking of DSP Courses
326
Figure 2: Brief DSP hardware comparison
Figure 3: Suggested course structure
327
Download