Signal Processing

Lecture (2.0 VO)

This lecture course is built on the third semester course System Engineering and it covers discrete-time signals and systems, as well as signal processing algorithms:

  • Discrete-time signals in the time and frequency domains
  • Discrete Fourier Transform (DFT) and Fast Fourier Transform (FFT)
  • z-transform
  • Sampling and signal reconstruction
  • Discrete-time systems in the time and frequency domains
  • Fast convolution
  • Multi-rate signal processing and sampling rate conversion
  • Spectral analysis and short-time Fourier transform
  • Digital filter design
  • Quantization effects due to signal conversion and finite arithmetic

The course notes as recorded during lecture presentation in previous years are available for downlaod in the TeachCenter (login required; link below).


In order to register for the exam follow a standard procedure at TUGraz online

The written exam consists of five short theoretical questions (20%) and four analytical problems (4*20%=80%). The duration is three hours. The copies of some previous exams are provided here to help you to prepare. You can download them here.

It is agreed that the following material is allowed during the exam:

  • A simple calculator. Alphanumerical calculators (such as TI-92, TI-89, TI Voyage and similar) are NOT allowed!
  • One mathematical formulary or handbook (e.g. Bartsch or Bronstein). Avoid to conceal any signal processing related examples inside your handbook.
  • A collection of signal processing formulas. This collection can be downloaded here (this is a new version; if you discover typos or mistakes, please contact Christian Knoll). Each student will be provided with this collection during the exam. You don't have to bring it with you.
  • Pencil, biro, pen, ... (different colors), ruler, etc., but NO PAPER! You will be provided with paper during the exam.
  • a drink, a small snack, ...

A remark on cheating: We advise you NOT to use any other material. Note that no jackets, no rucksacks, no bags, etc. are allowed in the vicinity of your desk during the exam. Cheaters wont be graded and wont be allowed to repeat the exam within 90 days ("Reprobationsfrist").

Problem Classes (1.0 UE)

The problem classes are arranged in 8 blocks of 90 minutes each and will be held on Mondays and Wednesdays. The classes start on 12th March 2018. The page and chapter numbers in the problem descriptions refer to the 3rd international edition of Oppenheim & Schafer, "Discrete-Time Signal Processing". 

No. Topic Material
1 Signals & Systems, Octave Tutorial PDF
Octave Tutorial,
A word on notation,
2 Systems PDF
3 Fourier Transforms PDF
4 FFT Applications PDF
5 z-Transform PDF
6 z-Transform, Sampling/Reconstruction PDF
7 Filter Structures, Multi-Rate Processing PDF 
 8 Round-Off Noise, Bilinear Transform PDF

There are six different groups with five different time slots. See updated dates in TUG-Online!

Group Lecturer Room Time
1 Josef Kulmer HS i12 Monday, 09:00-10:30
2 Helmut Niederwieser HS i2 Monday, 10:30-12:00
3 Michael Rath HS i12 Monday, 10:30-12:00
4 Florian Muralter HS i2 Monday, 13:30-15:00
5 Christian Toth HS i12 Monday, 16:15-17:45
6 Anna Fuchs HS i12 Wednesday, 17:15-18:45



Homework Assignments

To pass the problem classes you have to prepare three homework assignments per semester, consisting of analytical and Octave problems. The last assignment also consists of a Design Challenge, where the contestants can win some prizes. Last years' winners are devoted an additional webpage!

Assignments should be solved in groups of two students. Only one report needs to be delivered by each group. It is ok to work alone, although we do not recommend to do so (high work load). To make this point clear, work together with your group partner, and not with others.

it is allowed to exchange information with neighboring groups like 'take a look in Oppenheim/Schafer, Chapter 5', or 'we found something at Problem Class II'. It is not allowed to handle your solution to neighboring groups

Assignment Due Date Additional

 Assignment 1

09.05.   07.05. 18:00, i12

Most Common Mistakes
Einsichttermin: 4. Juni, DSP-Labor, 18:00 Uhr

14.05.2018  Assignment 2  06.06.2018 HE01FNS00101_n.wav 

28.05. 18:00, i12


Einsichttermin: 28. Juni, DSP-Labor, 17:00 Uhr


Assignment 3 04.07.2018

25.06. 18:00,


Einsichttermin: 23. Juli, DSP-Labor, 18:00 Uhr

 How to deliver your homework?

  • Deliver the Analytical assignments in PAPER form to the SPSC mailbox at Inffeldgasse 16c / ground floor. To ensure an in-time grading of the homeworks the following instructions are important:
    • The first page of each Analytical assignments has to be the PDF assignment with filled in NAMEs and MATR.NOs (otherwise: -2 points).
    • Proper handwriting is essential, unreadability will cost several points.
    • Submission of Analytical problems written in LaTeX may get additional 2 points per assignment. A template is available here. These additional points are considered ONLY if you have collected at least 50 points without them. 
    • Note: The Analytical assignments normally includes several subitems, i.e., (a), (b)... . Together they form ONE Analytical assignment.
  • Octave problems have to be submitted via E-MAIL and in paper form.
    • Send the projects to the address hw1 [dot] spsc [at] tugraz [dot] at. Let the SUBJECT of the e-mail be "YourMatrNo_YourColleaguesMatrNo". The body of the e-mail should be empty (nobody will read it).
    • A project consists of Octave files (*.m) and a simulation protocol in PDF or PS format. You have to ZIP all these files to the single file with the name "" which has to be attached to the e-mail.
    • Additionally to the e-mail submission, the simulation protocol needs to be delivered in PAPER form to our mailbox
  • For each individual problem in each assignment, staple your solutions separately. Use the print-out of the respective problem assignment as the title page(s); if the first assignment consists of problems 1.1, 1.2 and 1.3 then staple the first page's print-out of problem 1.1 to your answer sheets and throw it in the mailbox. Then staple the print out of problem 1.2 to the corresponding answer sheets and throw it in the mailbox. Finally, take the print out of problem 1.3 and staple it to your answer sheets and throw it in the mailbox.
  • If the individual problem assignments are not separated properly, any correction may take more time and you will lose 2 points.
  • For delivering your homework too late, you will lose 5 points/day.
  • In case not every problem assignment is delivered the missing ones are graded with zero points.
  • Guidelines: read this.
  • What should be in your simulation protocol (Octave homeworks)? Read this.


There is a newsgroup for the exchange of information concerning this course. The address is The threads from the previous year(s) can be found in the archive

Time and place of the Q&A sessions (NOT for discussion of the grading!) will be announced in the newsgroup!


For each assignment you can earn up to 34 points. You get at least 0 points for each assignment.

Achieved points
>= 89
76 <= ... < 89
63 <= ... < 76
50 <= ... < 63
< 50


References/Course Material


Problem Classes

  • A.V. Oppenheim, R.W. Schafer, J.R. Buck: Discrete-Time Signal Processing. Prentice-Hall, 1999 (2nd ed.). Strongly recommended! The course is based on this book (including the notation). You can buy the english version of the book here or lend it from the library.
  • Richard G. Lyons: Understanding Digital Signal Processing. Prentice-Hall, 2011 (3rd ed.). A quite pracitcal and intuitive introduction to DSP. There is an online version available on the TU Graz library's homepage.
  • Global JOS Index - An online ressourcre by Julius Orion Smith which covers a theoretical and practical signal processing topics.

Additional Literature for the Lecture

  • Richard A. Roberts and Clifford T. Mullis: Digital Signal Processing. Addison-Wesley, Reading (MA), 1987.
  • J.G. Proakis and D.G. Manolakis: Digital Signal Processing: Principles, Algorithms, and Applications. Prentice-Hall, 1995 (3rd ed.).
  • James H. McClellan, Ronald W. Schafer and Mark A. Yoder: DSP First: A Multimedia Approach. Prentice Hall, 1998.


  • You can download Octave from the GNU webpage. There you will also find a link to a wiki explaining installation under Microsoft Windows.
  • Since Octave is a terminal application, you might want to use a GUI: We tested QtOctave in class, but its development ceased; DomainMath IDE looks very good too! If you have further suggestions, please tell us so!

MATLAB (also useful for Octave)

  • MATLAB-Tutorial Videos (30 mins total):
  • Introduction to MATLAB from Cornell University, 1997. Strongly recommended!
  • MATLAB Documentation at It is highly recommended to work through the Getting Started tutorial (especially the Manipulating Matrices section).
  • MATLAB Primer, 3rd edition, by Kermit Sigmon, University of Florida. Another recommendable, compact introduction to MATLAB.
  • You can use MATLAB at home directly over a terminal server. Instructions can be found here.
  • Literature:
    • Gerhard Doblinger: MATLAB-Programmierung in der digitalen Signalverarbeitung. J.Schlembach Fachverlag, Weil der Stadt, 2001. (excerpt on blockfiltering)
    • J.H. McClellan et al.: Computer-Based Exercises for Signal Processing Using MATLAB 5. Prentice-HAll 1998.
    • V.K. Ingle and J.G. Proakis: Digital Signal Processing using MATLAB. Brooks/Cole Publishing Company, Pacific Grove (CA), 2000.

 Additional Educational Ressources


Education Level: 
Bachelor Level