dsp lab at feup-deec 1 ajf/fjr 2nd ieee spe, october 13-16, ga, 2002 grasping the potencial of...
Post on 21-Dec-2015
216 views
TRANSCRIPT
AJF/FJRDS
P L
ab a
t FE
UP
-DE
EC
2nd
IEE
E S
PE
, O
ctob
er 1
3-16
, G
A,
2002
1
Grasping the Potencial of
Digital Signal Laboratory Processing
through Real-Time DSP Laboratory Experiments
Aníbal J. S. Ferreira*^, Francisco J. O. Restivo*
* Faculdade de Engenharia da Universidade do Porto
Departamento de Engenharia Electrotécnica e Computadores
Rua Dr. Roberto Frias, 4200-465 Porto, Portugal
^ INESC Porto, Portugal
AJF/FJRDS
P L
ab a
t FE
UP
-DE
EC
2nd
IEE
E S
PE
, O
ctob
er 1
3-16
, G
A,
2002
2
Abstract
• A new DSP laboratory course has been included in the Electrical and Computer Engineering curriculum at the Faculdade de Engenharia da Universidade do Porto, in Portugal, since the school year of 1999/2000. This paper addresses the context and motivation underlying this new course, outlines its structure and methodology, highlights the design and goals of all DSP experiments currently proposed for the 13 weeks of the semester, and reports on the receptivity students have expressed to this elective course. The course is based on the TI C31 Starter Kit and tries to combine full use of its resources with a representative diversity of efficient digital signal processing techniques and associated application scenarios. A perspective is also given on current plans to reinforce DSP expertise at the graduate level.
AJF/FJRDS
P L
ab a
t FE
UP
-DE
EC
2nd
IEE
E S
PE
, O
ctob
er 1
3-16
, G
A,
2002
3
Summary
• EEC at FEUP-DEEC– basic structure and topics basic to DSP– EEC4162 (PDS)
• EEC5274 (PDSTR)– focus, rational, history– C31 starter kit– course structure and organization– DSP laboratory experiments
– students feed-back
• Looking Forward– new challenges
• Conclusion
AJF/FJRDS
P L
ab a
t FE
UP
-DE
EC
2nd
IEE
E S
PE
, O
ctob
er 1
3-16
, G
A,
2002
4
EEC at FEUP-DEEC
• basic structure– 1st and 2nd year core– 3rd year students select a branch
• APEL: industrial automation, production and electronic systems
• E: energy systems
• TEC: telecommunication, electronic and computer systems
– 4th and 5th year: mandatory + elective disciplines per branch
• basic structure– 1st and 2nd year core– 3rd year students select a branch
• APEL: industrial automation, production and electronic systems
• E: energy systems
• TEC: telecommunication, electronic and computer systems
– 4th and 5th year: mandatory + elective disciplines per branch
1stYear
2ndYear
3rdYearTEC
3rdYear
APEL
3rdYear
E
PDS
PDSTR
5thYearTEC
5thYear
APEL
5thYear
E
4thYearTEC
4thYear
APEL
4thYear
E
AJF/FJRDS
P L
ab a
t FE
UP
-DE
EC
2nd
IEE
E S
PE
, O
ctob
er 1
3-16
, G
A,
2002
5
EEC at FEUP-DEEC
• basics to DSP during the first 3 years:– programming– Fourier transform / Fourier analysis– Laplace transform– Z transform– sampling / modulation– filtering– random processes– noise
• other topics:
• basics to DSP during the first 3 years:– programming– Fourier transform / Fourier analysis– Laplace transform– Z transform– sampling / modulation– filtering– random processes– noise
• other topics:
• digital systems• signal theory• circuit theory• systems theory
• algorithms and data structures• microprocessors• probability and statistics• telecommunications
AJF/FJRDS
P L
ab a
t FE
UP
-DE
EC
2nd
IEE
E S
PE
, O
ctob
er 1
3-16
, G
A,
2002
6
EEC4162 (PDS)
• syllabus– 3-hour class / week : theory + illustrative problems– 2-hour class / week : problems, application of theory,– 6 individual work assignments / semester (e.g., using Matlab) – main topics:
• discrete signals and systems
• sampling and reconstruction of analogue signals
• linear-time invariant systems
• structures for the realization of LTI systems
• FIR and IIR filter design
• finite word length effects
• decimation and interpolation
• the discrete Fourier transform
• overlap-add and overlap-save methods of FFFD
• response of LTI systems to random discrete signals
• FFT and its implementation
• syllabus– 3-hour class / week : theory + illustrative problems– 2-hour class / week : problems, application of theory,– 6 individual work assignments / semester (e.g., using Matlab) – main topics:
• discrete signals and systems
• sampling and reconstruction of analogue signals
• linear-time invariant systems
• structures for the realization of LTI systems
• FIR and IIR filter design
• finite word length effects
• decimation and interpolation
• the discrete Fourier transform
• overlap-add and overlap-save methods of FFFD
• response of LTI systems to random discrete signals
• FFT and its implementation
AJF/FJRDS
P L
ab a
t FE
UP
-DE
EC
2nd
IEE
E S
PE
, O
ctob
er 1
3-16
, G
A,
2002
7
EEC4162 (PDS)
• teaching experience reveals that
– typically, a pencil and paper approach, even if complemented with simulation exercises using Matlab, is not enough for the student to grasp the advantage and potential of digital signal processing in many application areas including multimedia, telecommunications, control, and consumer electronics
– as a consequence, a hands-on DSP laboratory course has been included, since 1999, in the EEC curriculum, so as to motivate students to explore DSP based solutions to practical problems such as filtering, Fourier analysis or Single Side Band Modulation (SSB)
• teaching experience reveals that
– typically, a pencil and paper approach, even if complemented with simulation exercises using Matlab, is not enough for the student to grasp the advantage and potential of digital signal processing in many application areas including multimedia, telecommunications, control, and consumer electronics
– as a consequence, a hands-on DSP laboratory course has been included, since 1999, in the EEC curriculum, so as to motivate students to explore DSP based solutions to practical problems such as filtering, Fourier analysis or Single Side Band Modulation (SSB)
AJF/FJRDS
P L
ab a
t FE
UP
-DE
EC
2nd
IEE
E S
PE
, O
ctob
er 1
3-16
, G
A,
2002
8
EEC5274 (PDSTR)
• profile– elective course based on DSP laboratory experiments– offered during the 8th semester of the EEC curriculum– part of the EEC curriculum since 1999– student preference
• 1999/2000: 16 students
• 2000/2001: 32 students
• 2001/2002: 22 students
– focus• practical digital signal processing issues and applications
• efficient realization structures
• real-time processing constraints
– approach• advantages of DSP are demonstrated by lab examples covering a
representative diversity of application scenarios
• student is challenged with specific DSP design and realization issues.
• profile– elective course based on DSP laboratory experiments– offered during the 8th semester of the EEC curriculum– part of the EEC curriculum since 1999– student preference
• 1999/2000: 16 students
• 2000/2001: 32 students
• 2001/2002: 22 students
– focus• practical digital signal processing issues and applications
• efficient realization structures
• real-time processing constraints
– approach• advantages of DSP are demonstrated by lab examples covering a
representative diversity of application scenarios
• student is challenged with specific DSP design and realization issues.
AJF/FJRDS
P L
ab a
t FE
UP
-DE
EC
2nd
IEE
E S
PE
, O
ctob
er 1
3-16
, G
A,
2002
9
EEC5274 (PDSTR)
• selected DSP laboratory platform: C31 starter Kit
– DSP initialization kit able to realize many different laboratory experiments running in real-time
– includes assembler and (windows-based) debugger environment (Go-DSP Code Explorer)
– availability of many demonstration code examples and support (C31 teaching kit), and literature
– kind support of the Texas Instruments European University Programme
• selected DSP laboratory platform: C31 starter Kit
– DSP initialization kit able to realize many different laboratory experiments running in real-time
– includes assembler and (windows-based) debugger environment (Go-DSP Code Explorer)
– availability of many demonstration code examples and support (C31 teaching kit), and literature
– kind support of the Texas Instruments European University Programme
AJF/FJRDS
P L
ab a
t FE
UP
-DE
EC
2nd
IEE
E S
PE
, O
ctob
er 1
3-16
, G
A,
2002
10
EEC5274 (PDSTR)
• modus operandi
– 1.5 hour class / week• theory, demonstration of concepts
– 2.5 hour class / week• laboratory work: design, realization and performance assessment of
algorithms running in real-time
– students are encouraged to keep the kit between classes • eases preparation for the lab work
• opportunity for students to explore beyond the strict realization goals of each lab work
• self-learning
• modus operandi
– 1.5 hour class / week• theory, demonstration of concepts
– 2.5 hour class / week• laboratory work: design, realization and performance assessment of
algorithms running in real-time
– students are encouraged to keep the kit between classes • eases preparation for the lab work
• opportunity for students to explore beyond the strict realization goals of each lab work
• self-learning
AJF/FJRDS
P L
ab a
t FE
UP
-DE
EC
2nd
IEE
E S
PE
, O
ctob
er 1
3-16
, G
A,
2002
11
EEC5274 (PDSTR)
• theory and laboratory classes– first part (theory)
• use of the development environment of the C31: assembler, debugger, C31 architecture, peripherals and instruction set
– second part (theory)• real-time realization of algorithms for FIR; IIR and FIR-adaptive
filtering, multirate processing using polyphase decomposition, FFT and spectral analysis, SSB modulation (Hilbert Transform)
– laboratory classes • 10 lab experiments and reports during the 13-week semester
• each report: main results and conclusions of each lab work
• early feed-back is given to students
• theory and laboratory classes– first part (theory)
• use of the development environment of the C31: assembler, debugger, C31 architecture, peripherals and instruction set
– second part (theory)• real-time realization of algorithms for FIR; IIR and FIR-adaptive
filtering, multirate processing using polyphase decomposition, FFT and spectral analysis, SSB modulation (Hilbert Transform)
– laboratory classes • 10 lab experiments and reports during the 13-week semester
• each report: main results and conclusions of each lab work
• early feed-back is given to students
Week ngoals for week n+1revealed on web site
students hand-over short report at end of each lab class
report (corrected and graded) of previous week is returned to students
AJF/FJRDS
P L
ab a
t FE
UP
-DE
EC
2nd
IEE
E S
PE
, O
ctob
er 1
3-16
, G
A,
2002
12
EEC5274 (PDSTR)
• syllabus
– presumes the core knowledge of the pre-requisite DSP course (EEC 4162), including efficient realization structures and FFT
– new topics:• filter banks, uniform filter banks and their relation to the DFT
• half-band filters, M-band filters, power complementary filters
• the QMF filter bank, design and implementation issues, multi-resolution analysis using the QMF
• adaptive filtering
• polyphase decomposition of interpolation and decimation filters and their efficient realization
• Hilbert Transformer and SSD modulation
• syllabus
– presumes the core knowledge of the pre-requisite DSP course (EEC 4162), including efficient realization structures and FFT
– new topics:• filter banks, uniform filter banks and their relation to the DFT
• half-band filters, M-band filters, power complementary filters
• the QMF filter bank, design and implementation issues, multi-resolution analysis using the QMF
• adaptive filtering
• polyphase decomposition of interpolation and decimation filters and their efficient realization
• Hilbert Transformer and SSD modulation
AJF/FJRDS
P L
ab a
t FE
UP
-DE
EC
2nd
IEE
E S
PE
, O
ctob
er 1
3-16
, G
A,
2002
13
EEC5274 (PDSTR)
• laboratory experiments• laboratory experiments
caracterization of the problemDSP conceptual approach
validation in Matlabidentification of opportunities
for efficient realization
assembly codedebugging
performance assessment
AJF/FJRDS
P L
ab a
t FE
UP
-DE
EC
2nd
IEE
E S
PE
, O
ctob
er 1
3-16
, G
A,
2002
14
EEC5274 (PDSTR) - Lab experiments
• 1. verification of the aliasing in sampling
– goal: estimate the sampling frequency just by hearing the result at the output of the system, due to a sinusoid of varying (and known) frequency that is injected at the input
• 1. verification of the aliasing in sampling
– goal: estimate the sampling frequency just by hearing the result at the output of the system, due to a sinusoid of varying (and known) frequency that is injected at the input
A/D D/AC31AAF AIF
ON/OFF
AJF/FJRDS
P L
ab a
t FE
UP
-DE
EC
2nd
IEE
E S
PE
, O
ctob
er 1
3-16
, G
A,
2002
15
EEC5274 (PDSTR) - Lab experiments
• 2. waveform generation and converter testing
– goal: take advantage of circular addressing in order to synthesize different waveformss, and of the lookp-back mode of AIC in order to evaluate the accumulated quality of the D/A and A/D conversion (delay, noise floor, differential non-linearity)
• 2. waveform generation and converter testing
– goal: take advantage of circular addressing in order to synthesize different waveformss, and of the lookp-back mode of AIC in order to evaluate the accumulated quality of the D/A and A/D conversion (delay, noise floor, differential non-linearity)
A/D D/AC31AAF AIF
AJF/FJRDS
P L
ab a
t FE
UP
-DE
EC
2nd
IEE
E S
PE
, O
ctob
er 1
3-16
, G
A,
2002
16
EEC5274 (PDSTR) - Lab experiments
• 3. fixed point processing vs. floating point processing
– goal: identify issues of fixed representation of numbers (namely the need for scaling) in recursive processing, versus floating-point
• 3. fixed point processing vs. floating point processing
– goal: identify issues of fixed representation of numbers (namely the need for scaling) in recursive processing, versus floating-point
sin(n)
cos(n)
sin[(n+1)]
cos[(n+1)]
c1
c2
c3
c4
AJF/FJRDS
P L
ab a
t FE
UP
-DE
EC
2nd
IEE
E S
PE
, O
ctob
er 1
3-16
, G
A,
2002
17
EEC5274 (PDSTR) - Lab experiments
• 4. FIR filtering
– goal 1: H(z)=1-z-15, compare theoretical H(ej) vs. experimental– goal 2: realization of FIR equiripple h(n), 2h(n)cos n/2, (-1)nh(n)
• 4. FIR filtering
– goal 1: H(z)=1-z-15, compare theoretical H(ej) vs. experimental– goal 2: realization of FIR equiripple h(n), 2h(n)cos n/2, (-1)nh(n)
/2
/2
/2
AJF/FJRDS
P L
ab a
t FE
UP
-DE
EC
2nd
IEE
E S
PE
, O
ctob
er 1
3-16
, G
A,
2002
18
EEC5274 (PDSTR) - Lab experiments
• 5. IIR filtering
– goal 1: 6th order IIR, type 2 realization structure– goal 2: compare simulated response vs. experimental response
• 5. IIR filtering
– goal 1: 6th order IIR, type 2 realization structure– goal 2: compare simulated response vs. experimental response
-1
Z
-1
Z
b0
b1a1
-1
Z
bM-1aN-1
x(n) y(n)
AJF/FJRDS
P L
ab a
t FE
UP
-DE
EC
2nd
IEE
E S
PE
, O
ctob
er 1
3-16
, G
A,
2002
19
EEC5274 (PDSTR) - Lab experiments
• 6. five vowel synthesizer– goal: synthesize /à/, /é/, /i/, /ó/, /u/ on a DSK using three
formants• didactic application allows to give each implementation a personal
flavor (high motivation impact)
• quality improvements by modulating pitch
• 6. five vowel synthesizer– goal: synthesize /à/, /é/, /i/, /ó/, /u/ on a DSK using three
formants• didactic application allows to give each implementation a personal
flavor (high motivation impact)
• quality improvements by modulating pitch
AJF/FJRDS
P L
ab a
t FE
UP
-DE
EC
2nd
IEE
E S
PE
, O
ctob
er 1
3-16
, G
A,
2002
20
EEC5274 (PDSTR) - Lab experiments
• 7. interpolation using polyphase filters– goal: efficient realization of interpolation filter, experimental
evaluation of of the sinc function associated to the D/A reconstruction when 4-fold interpolation is used and when not
• 7. interpolation using polyphase filters– goal: efficient realization of interpolation filter, experimental
evaluation of of the sinc function associated to the D/A reconstruction when 4-fold interpolation is used and when not
/4
4
A/D D/AC31AAF AIF
x(n)R2(z)
R1(z)
R3(z)n=0
n=1
n=2
R0(z)n=3
AJF/FJRDS
P L
ab a
t FE
UP
-DE
EC
2nd
IEE
E S
PE
, O
ctob
er 1
3-16
, G
A,
2002
21
EEC5274 (PDSTR) - Lab experiments
• 8. adaptive filtering– goal 1: realization and assessment of the operation of an
adaptive filter (32 tap FIR, LMS)– goal 2: implementation of the configuration insuring real-time
echo canceling
• 8. adaptive filtering– goal 1: realization and assessment of the operation of an
adaptive filter (32 tap FIR, LMS)– goal 2: implementation of the configuration insuring real-time
echo canceling
gZ-1adaptivefilter
A/D
D/A +
-
+
gZ-1 adaptivefilter
-
A/D
D/A
what are the differences ?
AJF/FJRDS
P L
ab a
t FE
UP
-DE
EC
2nd
IEE
E S
PE
, O
ctob
er 1
3-16
, G
A,
2002
22
EEC5274 (PDSTR) - Lab experiments
• 9. FFT assembly implementation– goal 1: assembly implemention of a radix-2 FFT based on a C-
like optimized (Matlab) code (N=64)– goal 2: assessment of the implementation when used as a simple
real-time spectrum analyser
• 9. FFT assembly implementation– goal 1: assembly implemention of a radix-2 FFT based on a C-
like optimized (Matlab) code (N=64)– goal 2: assessment of the implementation when used as a simple
real-time spectrum analyser
WN0
x(0)
x(4)
x(2)
x(6)
x(1)
x(5)
x(3)
x(7)
X(0)
X(1)
X(2)
X(3)
X(4)
X(5)
X(6)
X(7)
WN0
WN0
WN0 WN
2
WN0
WN2
WN0
WN3
WN2
WN1
WN0
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
AJF/FJRDS
P L
ab a
t FE
UP
-DE
EC
2nd
IEE
E S
PE
, O
ctob
er 1
3-16
, G
A,
2002
23
EEC5274 (PDSTR) - Lab experiments
• 10. single side band modulation– goal: design and realization of a band-pass filter, Hilbert
transformer, SSB modulator based on analytic signal generation
• 10. single side band modulation– goal: design and realization of a band-pass filter, Hilbert
transformer, SSB modulator based on analytic signal generation
down-shift
up-shift
spectral-inversion
AJF/FJRDS
P L
ab a
t FE
UP
-DE
EC
2nd
IEE
E S
PE
, O
ctob
er 1
3-16
, G
A,
2002
24
EEC5274 (PDSTR)
• students feed-back
– plus:• tangible and intuitive linking between theory and practice
• methodology elicits insight and promotes application
– minus• more time to prepare and to “play”
• sooner indication of lab work description
• lab classes > 2,5 hours
– regarding possibility of additional DSP lab course• 50% say yes if addressing more application scenarios and combining
video and audio
• students feed-back
– plus:• tangible and intuitive linking between theory and practice
• methodology elicits insight and promotes application
– minus• more time to prepare and to “play”
• sooner indication of lab work description
• lab classes > 2,5 hours
– regarding possibility of additional DSP lab course• 50% say yes if addressing more application scenarios and combining
video and audio
AJF/FJRDS
P L
ab a
t FE
UP
-DE
EC
2nd
IEE
E S
PE
, O
ctob
er 1
3-16
, G
A,
2002
25
Looking Forward
• new challenges
– new starter kit ? VLIW TMS320C6711 ?
– new DSP issues• utilization of cache
• utilization of DMA
• combined C, assembly code optimization
• new challenges
– new starter kit ? VLIW TMS320C6711 ?
– new DSP issues• utilization of cache
• utilization of DMA
• combined C, assembly code optimization
AJF/FJRDS
P L
ab a
t FE
UP
-DE
EC
2nd
IEE
E S
PE
, O
ctob
er 1
3-16
, G
A,
2002
26
Conclusion
• PDSTR: an ECE advanced undergraduate level DSP laboratory course
– all course material (in Portuguese) is available on the Web
– hands-on DSP laboratory experience • consolidates knowledge
• stimulates criativity
• helps to develop a rewarding sense of achievement
• motivates final-year course projects using DSP technology
– plans for a new DSP lab (C6711) at the graduate level• focus on complex and complete algorithm implementation
• PDSTR: an ECE advanced undergraduate level DSP laboratory course
– all course material (in Portuguese) is available on the Web
– hands-on DSP laboratory experience • consolidates knowledge
• stimulates criativity
• helps to develop a rewarding sense of achievement
• motivates final-year course projects using DSP technology
– plans for a new DSP lab (C6711) at the graduate level• focus on complex and complete algorithm implementation