Duration
39h Th, 13h Pr, 40h Proj.
Number of credits
| Bachelor in engineering | 5 crédits | |||
| Master in biomedical engineering (120 ECTS) | 5 crédits |
Lecturer
Language(s) of instruction
English language
Organisation and examination
Teaching in the second semester
Schedule
Units courses prerequisite and corequisite
Prerequisite or corequisite units are presented within each program
Learning unit contents
The course provides an advanced introduction to the fundamental elements of digital signal processing (DSP), with an emphasis on discrete-time (DT) signal processing. The course is the natural continuation of the "Signal Processing" course ELEN0070, but with an emphasis on DT signals. However, there are plenty of occasions throughout the course to maintain contact with the continuous-time (CT) world. For example, when covering the z-transform, the parallelism with the Laplace transform is stressed. The course systematically covers the time-domain aspects and the frequency-domain aspects of the subject matter.
The philosophy of the course is identical to that of ELEN0070. Students may thus want to take a look at the page corresponding to this latter course.
The main topics of the course are:
- z-transform (ZT): the workhorse of digital signal processing. In-depth treatment. Its properties. Comparison with Laplace Transform.
- Discrete-time (DT) systems. Design of simple systems and filters by pole-zero placement. Preview of finite-impulse response (FIR) filters and infinite-impulse response (IIR) filters. All-pass systems. Minimum-phase systems. All kinds of simple, fun, and surprising DT filters such as notch filters, comb filters, and resonators.
- Sampling of continuous-time (CT) signals. More advanced treatment than in ELEN0070.
- Discrete Fourier Transform (DFT). Where it comes from. Why it is useful. How it relates to the DTFS and DTFT. How to use it to compute the other transforms, perhaps approximately: CTFT, DTFT, CTFS, DTFS.
- Fast Fourier Transform (FFT): the fast implementation of the DFT. What the trick is.
- Crash lecture on the design of analog, i.e. CT, filters, as a necessary step towards the design of some digital filters. Butterworth filters, Chebyshev filters, elliptic filters, Bessel filters. Low-pass, high-pass, band-pass, band-reject. Frequency transformations.
- Design of finite-impulse response (FIR) filters. Most main methods. With numerous demos and exercises using MATLAB.
- Design of finite-impulse response (FIR) filters. Most main methods. With numerous demos and exercises using MATLAB.
- Multirate signal processing (time-permitting).
The course also tentatively contains an initiation to the art of processing real signals on real hardware (FPGAs).
This course may not cover all of the above topics in a given year.
Learning outcomes of the learning unit
The student will understand and be able to use the key concepts in the topics listed above. He/she will understand the mathematical and theoretical underpinnings of these concepts. He will have both a precise mathematical understanding and a highly visual and intuitive view of all the concepts.
The student will have a chance to review and apply many of the fundamental principles and tools covered in ELEN0070.
The student will become a world expert in the z-transform.
The student will master the art of computing various types of Fourier transforms using the DFT and the FFT.
The student will become a master at designing digital filters of all kinds to solve almost any practical application (except for the issues of word-length). He will be able to design some simple filters very quickly using some simple and powerful principles, in particular based on pole-zero placement techniques. He will know how to do the detailed design of very complex filters.
Through the "laboratories" (further described below), the student will have implemented and tested many digital filters on Matlab. Tentatively, he will have learned how to process signals on an FPGA.
The laboratory sessions in small groups will help the student to develop both technical skills (such as problem solving, capacity to apply theoretical concepts to real data, critical analysis of results, and writing-up of reports), as well as soft skills (such as team work, getting organized to meet deadlines, and dealing with Murphy's law).
The student will learn to dig into the recommended references to find complementary information and to identify the problems/exercises that relate to the material covered in class.
The students will learn - hopefully early on - that mastering the course material requires a lot of practice in solving problems.
Due to the fact that the instructor makes extensive use of the blackboard and rarely uses slides, and that the lectures are highly dynamic and interactive, the learning outcomes will be greatly increased if the student attends the classes.
The style of the course is highly influenced by the teaching practices of leading American universities, such as MIT and Stanford.
Prerequisite knowledge and skills
Knowledge similar to that provided by ELEN0070 (Signal Processing) is helpful.
Planned learning activities and teaching methods
Mode of delivery (face-to-face ; distance-learning)
The course consists of
l "ex-cathedra" lectures (mostly by the instructor),
l Matlab demonstrations (by teaching assistants)
l occasional review/problem sessions on specific topics (by the teaching assistants),
l laboratories (in small groups),
l possibly one or more written midterm tests/quizzes (announced ahead of time),
l a written final exam.
The lectures are given mostly by the instructor, who makes intensive use of the blackboard. While the optional course notes follow quite closely what is taught in class, these notes cannot possibly reflect precisely the "spirit" that is communicated in class, and the dynamics and interactivity of the class. It is thus highly recommended that the student attend classes. The lectures present a mix of theoretical concepts and of exercises. Therefore, except for the occasional review/problem sessions, the student should not expect the class on any given day to be clearly divided into a theoretical part and an exercise part. The instructor uses the time in a flexible way, which allows him to address the specific needs of the students.
"Laboratory" refers to an activity done by small groups of students. The students in each group can do a laboratory at any time before the corresponding deadline, possibly at home. Each laboratory consists of reading, experimenting on the computer, and writing a report (one per group). There are 3 to 4 laboratories. The laboratories are not always synchronized with the topics covered in class.
The possible written midterm tests are announced ahead of time.
Recommended or required readings
Reading:
The primary, recommended references are
l Discrete-Time Signal Processing, Third edition, by Alan V. Oppenheim and Ronald W. Scaher, Prentice Hall, 2010.
l Applied Digital Signal Processing, by Dimitris G. Manolakis and Vinay K. Ingle, Cambridge University Press, 2011.
While much of the material covered in class is found in these references, the course does not follow closely any of them (or any other book).
With reference to the book by Manolakis & Ingle, the course pretty much covers the Chapters 3 and 5 to 11 or 12. This means that the students taking ELEN0070 (Signal Processing) and this course will avec covered Chapters 1 to 11 or 12.
All books contain excellent problems/exercises. Many of these problems, or variations thereof, appear on the written tests and the final exam.
The book by Manolakis & Ingle gives Matlab examples and Matlab problems.
Course notes:
The instructor uses personal, handwritten course notes during class. Before or after each class, the instructor gives copies of most of these course notes, to a representative of the students. Each student is free to use these copies to make his own copies. The course notes are thus optional. These personal course notes are not, and cannot be, placed online.
Assessment methods and criteria
Work placement(s)
Organizational remarks
None.
Contacts
Instructor:
Prof. Jacques G. Verly
jacques.verly@ulg.ac.be
Teaching assistant:
Clémentine François
cfrancois@ulg.ac.be