Signal Processing and Speech Communication Laboratory
homecourses › Signal Processing

Signal Processing

Education level

Lecture (2.0 VO)

This lecture is built up on the courses ‘Signal Transforms’ and ‘System Dynamics’/’Control Systems 1’ and 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 theoretical questions (20%), some analytical short tasks (20%) and two major analytical problems (2*30%=60%). The duration is three hours. The copies of some previous exams are provided here to help you to prepare. You can download them here.

You are allowed/not allowed to use the following material during the exam:

  • A simple calculator. Alphanumerical calculators (such as TI-92, TI-89, TI Voyage and similar) are NOT allowed!
  • Mathematical formularies or handbooks (e.g. Bartsch or Bronstein) are NOT allowed!
  • You are provided with a collection of signal processing formulas during the exam. This collection can be downloaded here. We advise you to have a look at this collection before the exam.
  • Pencil, biro, pen, … (different colors), ruler, etc., but NO PAPER! You will be provided with paper during the exam.
  • A drink and maybe 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)

Due to the current regulations the course will be held virtually throughout the semester. The problem classes are arranged in eight blocks. For each problem class we will hold a live session in three different groups (see TUG Online for the time slots). One week prior to each live session we will publish a solution recording. Students should use these recordings to prepare for the live sessions, as the live sessions are intended to be Q&A sessions about the video contents. There we will take our time to cover (some aspects of) the video problems in more detail and clarify open questions. We do not intend to simply present the solution or cover all the material in the recordings - the live sessions should be as interactive as possible!

Homework Assignments

To pass the problem classes, you have to complete three homework assignments, consisting of analytical and numeric software problems. The last assignment also consists of a Design Challenge, where the contestants can win some prizes.

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 hand your solution to neighboring groups.

How to deliver your homework?

  • Deliver your homework online at TeachCenter.
  • For each homework you can find 200 prepared groups (max. number of members is 2) in the TeachCenter. Please, join a group for each homework (either alone or with a group-partner). If there is a need, you can change the group-partner between different homework assignments. However, it is not possible to change the group-partners within one homework assignment.
  • Using LaTeX you 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.
  • Circumventing LaTeX is ok as long as we can read your handwriting; unreadability will cost several points.
  • Hand in Analytic solutions as a single .pdf document
  • Hand in numeric solutionsas a single .pdf document plus the source code (either Python script (.py) or Jupyther script (.ipynb)). We strongly recommend to use Jupyther. It allows you to write your report along with your source code and thus, you save a lot of time.
  • Deliver each individual problem at teachcenter separately, e.g. hand in problems 1.1, 1.2 and 1.3 separately. This is required to ensure a fast grading.
  • 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.
  • General guidelines (though written for Matlab they are valid for any kind of software).
  • What should be in your simulation protocol (numeric solutions)? Read this. (though written for Matlab, it is valid for Python as well)


Exploit the forum at TeachCenter to exchange further information with us and your colleagues. Important: The news group ``signalverarbeitung’’ is not maintained anymore by the tutors and lecturers, only the forum at TeachCenter is maintained. However, you still can use the news group to exchange information.

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


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

References/Course Material

Problem Classes

The page and chapter numbers in the problem descriptions refer to the 3rd international edition of Oppenheim & Schafer, “Discrete-Time Signal Processing”.

  • 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.

Numeric software Python

  • We propose to use Jupyther Notebooks as environment for Python.
  • Local installation: Jupyther is available as part of the open-source Anaconda environment (
  • Cloud computing: If you do not want to install a local Python environment, you can use cloud computing services. We found Google Colab ( to be quite reliable. However, this requires you to create a Google account.

Additional Educational Ressources