A Digital Signal Processing Curriculum to Meet Industry Needs

 

SCHMITT, Neil1 & MARTIN, Terry2

Electrical Engineering University of Arkansas
1 nms@engr.uark.edu
2 twm@engr.uark.edu

 

Abstract: The emergence of fast, powerful, and cost effective digital signal processors is driving the world into a digital networked society and will continue to do so at an increasingly rapid rate. For example, signals such as voice, text, and video are collected and processed into digital code. This code can then be compressed, transmitted, and displayed almost instantaneously. This digital networked society has created a burgeoning job market for engineers with a DSP background. In particular, new engineering graduates with DSP skills can find a dizzying array of opportunities on the World Wide Web. The positions available are in literally hundreds of different application areas and are located throughout the US and overseas.

The dilemma facing engineering educators is determining what skills, abilities and experiences new engineering graduates should possess in order to compete well in the job market and to enhance success in professional practice. Questions such as:

must be answered if universities are going to meet industry needs and expectations.

This paper provides information to help answer the above questions. Industry practitioners, engineering recruiters and recent graduates have been surveyed to determine their perspective. The core DSP curriculum at the University of Arkansas that is designed to meet these identified needs will be discussed.

Keywords: DSP, curriculum, survey, industry

 

1 Introduction

It is the goal of each college of engineering to educate its students in such a way that they are competitive with their peers and professionally qualified to immediately contribute at their place of employment. In rapidly changing fields such as digital signal processing (DSP), it is easy and commonplace for a gap to exist between what educators emphasize in the classroom and what the graduate needs to be maximally productive in the workplace. In order to minimize this gap, departments must constantly be revising their DSP curriculum. While designing a new DSP curriculum at the university of Arkansas, the authors informally asked industry recruiters what particular capabilities they were looking for in graduates they were hiring for DSP-related jobs. Varied answers were received but the results were not comprehensive enough to base curriculum decisions on them. Consequently a survey was developed to try to gather a meaningful database to be used in curriculum design. The survey was developed to answer the questions listed in the abstract of this paper. Survey recipients included recent (< 5 years) graduates currently working in DSP related fields, first-line engineering supervisors in charge of DSP-based projects and technical consultants in the DSP field. Recipients were associated with companies of various size from very large (> 1000 engineers) to small (approx. 10-15 engineers).

2 The Survey

The survey was divided into four sections. The first section asked the respondent to rate the importance of graduates having a significant understanding of various DSP math elements. Twenty-two different elements were listed. Each element received a score between 5 (very important) and 1 (not important). The second section dealt with system issues and included thirteen elements. The third section addressed the question of which DSP design tolls the graduate should know. Eight tool possibilities were included. The last section included questions about hands-on lab experiences and contained five elements. The complete survey is included next.

INDUSTRY SURVEY

Optimal Preparation for DSP-Related Professional Practice

An increasing number of electrical engineering professional positions involve the use of digital signal processing. Universities are scrambling to determine how to best prepare EE graduates to enter the DSP job market. This survey is an attempt to determine industry and practicing engineers' perspective on what skill set a graduate entering the DSP world should possess. The summarized results will be presented to other universities at the American Society for Engineering Education Annual Meeting in July, 1999.

Please rate the importance of each of the following: (5 = very important; 1 = not important) by placing an "X" above the appropriate number.

1. The graduate should have a significant understanding of the following DSP math elements:

A. Convolution
54321
B. Fourier Series
54321
C. Fourier Transforms
54321
D. Fast Fourier Transform
54321
E. Sampling Theory
54321
F. A/D and D/A Conversion
54321
G. Correlation
54321
H. Z-Transforms
54321
I. State Space Analysis
54321
J. Digital Filter Design (FIR and IIR)
54321
K. Analog Filter Design
54321
L. Waveform Generation
54321
M. Random Signals
54321
N. Time-series Modelling
54321
O. Yule-Walker Theory
54321
P. Least Squares Applications
54321
Q. Linear Prediction
54321
R. Adaptive Filter Design
54321
S. Parametric Spectral Analysis
54321
T. Speech Processing
54321
U. Analysis-by-Synthesis Design
54321
V. Matched and/or Kalman Filters
54321

2. The graduate should have a significant knowledge of the following system issues:

A. Real-time DSP constraints
54321
B. DSP Chip Architecture Approaches
54321
C. Selection Criteria for Choosing a Particular Chip
54321
D. Trade-offs between chips from different manufacturers
54321
E. Implementation of complete DSP systems
54321
F. Block Diagram System Design
54321
G. Word-size Issues
54321
H. Roundoff
54321
I. Coding and Implementation of Assembly language programs for a specific DSP chip
54321
J. Coding and Implementation of C/C++ programs for a Specific Chip
54321
K. Oversampling
54321
L. Specialized filter usage (e.g. AAF)
54321
M. Algorithm Design
54321

3. The graduate should be able to use the following tools:

A. MATLAB
54321
B. SIMULINK
54321
C. Optimizing Compilers
54321
D. Simulators
54321
E. Visual design Tools
54321
F. Advanced Analysis Tools
54321
G. Spectrum Analyzers
54321
H. In-Circuit-Emulators
54321

4. The graduate should have hands-on lab experience with:

A. One DSP Chip
54321
B. Multiple DSP Chips
54321
C. Designing a complete DSP system
54321
D. Building a Complete DSP System
54321
F. Implementing a multi-processor system
54321

3 The Results

The results are displayed first as a ranking of the elements within each of the fours sections then as an overall ranking of all elements independent of section classification.

3.1 Math Element Section Results

Fast Fourier Transform

4.71
Sampling Theory 4.71
A/D and D/A Conversion 4.65
Fourier Transforms 4.59
FIR and IIR Filter Design 4.50
Fourier Series 4.24
Least Squares Applications 4.00
Correlation 3.94
Random Signals 3.94
Convolution 3.94
Adaptive Filter Design 3.88
Analog Filter design 3.81
Z-Transforms 3.65
Matched and/or Kalman Filters 3.63
Waveform Generation 3.56
Linear Prediction 3.50
Parametric Spectral Analysis 3.38
Time Series Modelling 3.06
Analysis-by-Synthesis Design 3.06
State Space Analysis 2.94
Speech Processing 2.75
Yule-Walker Theory 2.50

3.2 System Issues Results

Real-time DSP Constraints

4.50
Block diagram System Design 4.25
C/C++ Coding for a chip 4.00
Roundoff 4.00
Algorithm Design 3.94
Build Complete System 3.94
Oversampling 3.81
Word-size Issues 3.81
Chip Selection Criteria 3.75
DSP Architecture Approaches 3.56
Assembly Language Coding 3.56
Trade-offs between Chips 3.50
Specialized Filter Usage 2.75

3.3 DSP Tools Results

MATLAB 4.06
In-circuit emulators 3.69
Simulators 3.38
Spectrum Analyzers 3.38
Visual design Tools 3.31
Advanced Design Tools 3.13
SIMULINK 2.88
Optimizing Compilers 2.81

3.4 DSP Lab Issues Results

Complete System Design 3.94
One DSP Chip 3.88
Multiple DSP Chips 3.44
Build Complete System 3.38
Implement Multi-processor System 2.88

3.5 Overall Results

Sampling Theory 4.71
Fast Fourier Transform 4.71
A/D and D/A Conversion 4.65
Fourier Transforms 4.59
FIR and IIR Filter Design 4.50
Real-time DSP Constraints 4.50
Block diagram System Design 4.25
Fourier Series 4.24
MATLAB 4.06
C/C++ Coding for a chip 4.00
Least Squares Applications 4.00
Roundoff 4.00
Algorithm Design 3.94
Build Complete System 3.94
Convolution 3.94
Correlation 3.94
Random Signals 3.94
Complete System Design 3.94
Adaptive Filter Design 3.88
One DSP Chip 3.88
Word-size Issues 3.81
Oversampling 3.81
Analog Filter design 3.81
Chip Selection Criteria 3.75
In-circuit emulators 3.69
Z-Transforms 3.65
Matched and/or Kalman Filters 3.63
Assembly Language Coding 3.56
DSP Architecture Approaches 3.56
Waveform Generation 3.56
Trade-offs between Chips 3.50
Linear Prediction 3.50
Multiple DSP Chips 3.44
Spectrum Analyzers 3.38
Build Complete System 3.38
Simulators 3.38
Parametric Spectral Analysis 3.38
Visual design Tools 3.31
Advanced Design Tools 3.13
Analysis-by-Synthesis Design 3.06
Time Series Modelling 3.06
State Space Analysis 2.94
SIMULINK 2.88
Implement Multi-processor System 2.88
Optimizing Compilers 2.81
Specialized Filter Usage 2.75
Speech Processing 2.75
Yule-Walker Theory 2.50

4 Curriculum Design

The newly revised DSP curriculum at the University of Arkansas consists of three courses of 3 semester hours each, a 1 semester hour lab and three course/lab combinations that are 3 semester hours each. The first course is a junior level basic DSP course required of all electrical engineering students. The course covers items A - K of the math elements list on the survey (except for item #2) as well as the use of MATLAB. The one hour required lab associated with this course allows the student to implement these concepts through interesting and meaningful experiments such as real-time music enhancement/alteration, image de-blurring, etc.

The first elective course covers deterministic DSP system design. Many of the system issues of section two of the survey are covered. The second elective course is stochastic DSP system design. Items M - V of section I are addressed. In both of these courses the amount of time allotted for various topics are determined by the relative importance of the topics as indicated by the survey results. For instance, the emphasis on speech processing was greatly reduced since it didn't hold much importance with the majority of those surveyed.

The first elective lab consists of one two-hour lecture and one lab assignment per week. An open lab environment is used so students can choose the times best fitted to their schedule to perform their experiments. The course is based on the TMS320C30 and uses the TI EVM Board in a windows environment. The student becomes proficient in assembly language coding, optimization and system design. The second 3-hour lab addresses DSP utilization in digital communications and requires the student to use most of the tools listed in survey section three. The third lab introduces parallel processing using the TMS320C4x and introduces advanced processing using the TMS320C6x processor. The thesis (for MS students and the senior design project (for BS students) provide the mechanism for designing and building complete systems.

5 Conclusions

The industry survey results indicate the relative importance of many DSP topics to the practicing engineer. It is possible to design a curriculum to match these identified needs.