MyRio pic Kombajn pic Connector board pic Stół 12 TI board pic


    What will all this be about?
    Lecture slides
    Dates of lectures/homeworks/tests/labs (static versionhere)
    List of lab groups and scores
  • LABS
    Info and examples of entry tests
    Test examples with hints for study
  •   The page is partially a copy of 2020L semester page. Watch for updates.

    Current issues

    • Office hours: Damian Gromek (course supervisor and lecturer) Thu 16:30-17:00, room 453
    • Lecture start: 8 Oct (Thu), 08:15-10:00, online at MS Teams
    • Labs will start with an introductory meeting on 22nd Oct 2020, online at MS Teams 10:15 (details announced at the lecture)
      LAB 0 is for all students/ all groups. LAB 0-3 will be online at MS Teams and LAB 4-6 stationary at CS202 room. Regular labs will be every second week (odd="N" or even="P" week according to the elka calendar ) on Mondays, Wednesdays and Thursdays , depending on your group assignment (see USOS).
    Where is Lab CS202?

    What to do after EDISP?

    If you are interested, choose elective courses:
    • ETASP - (En) Techniques for Advanced Signal Processing
    • EASP - (En) Adaptive Signal Processing
    or in Polish:
  • TRA - Techniki Realizacji Algorytmów CPS
  • PSYL - Przetwarzanie SYgnałów w Labview
  • SRMP - Sygnały Radiolokacyjne i Metody ich Przetwarzania
  • CCM - Czasowo-Częstotliwościowe Metody przetwarzania sygnałów
  • APSG - Adaptacyjne Przetwarzanie SyGnałów
  • Home page of EDISP
    (English) DIgital Signal Processing course
    semester 2020Z (spring of 2020/21 acad. year)


    The lectures are on Thursdays, online at MS Teams 08:15-10:00.

    There are lab exercises, 4 hours every second week, online MS Teams and stationary at room CS202 (new wing C).

    Labs will be on Mondays, 8-12 (N and P weeks) Wednesdays (8-12) (N weeks) or Thursdays 10-14 (N and P weeks) , in subgroups of not more than 12 students.

    For the introductory lab (lab0) we meet on Thu, 22 Oct, 10:15 (groups 101/102/103/104/105) at MS Teams. Then we will meet every two weeks (check your group schedule). A printable schedule is here


    Book base

    The course is based on selected chapters of the book:

    A. V. Oppenheim, R. W. Schafer, Discrete-Time Signal Processing, Prentice-Hall 1989 (or II ed, 1999; also acceptable previous editions entitled Digital Signal Processing).

    Other books

    Supplementary books I found in our faculty library:
    Leis - DSP using Matlab Taylor - Digital Filters

    Additional books available in Poland:

    Please remember:

    Probably the best choice is to buy a used copy of O&S. It'll serve you for years, if you are interested in DSP. And it contains a lot of PROBLEMS to solve and learn!

    Ingle/Proakis is also a good book (and you may be able to buy a new or almost new copy).

    If you know LANG=PL_pl - you may prefer to buy/borrow a laboratory scriptbook for CYPS, which is in Polish language (Cyfrowe Przetwarzanie Sygnałów, red. A Wojtkiewicz, Wydawnictwa PW).

    Supplementary material

    In the course of the semester you may realize that your math knowledge is pulling you back. This is normal. DSP is a practical math usage, so you need maths. Go back to your math books and notes, and look for knowledge in the web.
    Wikipedia may be too formal, but try it. Then, there is a number of course notes. I appreciated very much Paul Dawson's page when I looked for a simple example of a h(n) which convereges to zero, yet doesn't provide stability.

    Course aims

    In other words -- what I expect you to learn, or what I will check when it comes to grading.

    A student who successfully completes the course will:

    Lecture slides

    (You may always expect hand-made corrections and inserts at the lecture....)
    Old slides below - this marker will be moved with slide update

    Examples of tests

    Use them for study. Learn methods, not solutions.

    Tests 2016

    SAMPLE TEST 1. SOLVED TEST 1. There is no guarantee that the current test be identical ;-). It will be similar (the lecture was similar), but I might also put more focus on different subjects. The only base is the lecture content (live one, not only the published slides ....).

    The main rule: exam covers the whole course content (sampled), including the T1(H1)+T2(H2) area and also the lectures after the H2.

    Sample Exam tests

    Exam 2016
    Exam version A
    Exam version B
    1. In both cases the signal was sampled correctly (fs>2f)
      1. To calculate N0 it was enough to count no. of samples in period (or divide fs over f). Answer was 10(A) or 6(B). For N0 samples in period, θ0 was equal to 2π/N0.
      2. K-size DFT will have K discrete samples over <-π, +π) (we include -π, and exclude +π , but due to periodicity of spectrum it is only a convention)
        for a cosine, only two samples are non-zero: at k such that θk=±θsignal. Form the definition of θk you will see that this is for k=±4 (this is the result of taking K=4N0).
      3. You may label frequency axis with k=-K/2,....-1,0,1,...K/2 or with its periodic equivalent K-K/2,....K-1,0,1,...K/2
        to label with θ just use the expression for θk.
      1. H(z)=Y(z)/X(z) is easily obtainable from the time equation. It was
        -0.2(1+z-1)/(1-0.8z-1) [A]
        0.2(1-z-1)/(1+0.8z-1) [B]
      2. Zeros are roots of numerator: -1 [A] or +1 [B]
        Poles are roots of denominator: +0.8 [A] or -0.8 [B]. They are inside unit circle, so the system is stable (but I didn't ask...)
      3. Example graph: pic - please find a_0, b_0, b_1 by yourselves. If you are smart, you may save one multiplication by 0.2 (this is left as exercise to you).
      4. For x(n)= shifted delta, (a limited energy signal) you may take the impulse response and shift it appropriately. To find h(n) it is easiest to split H(z) into two fractions: (shown for [A], for [B] change some signs)
        and lookup the inv.Z of 1/(1-0.8z-1) in the table. The final result is a sum of two identical exponentials shifted by 1 in time. Then, you shift h(n) to proper position....
      5. For x(n) = 1-(-1)n (a periodic signal) we see a DC component and a periodic component exp(jπn) with frequency of π. We find numerical values of H(0)=(2 or 0) and H(π)= (0 or -2) by substituting exp(0) and exp(π) for z, and finally
    2. The response was symmetrical around its midpoint (n= 2 or 4). Thus, it was a repsonse of a zero-phase filter delayed by 2 or 4.
      1. phase is linear φ=-(2 or 4)θ
        delay is constant and equal to (2 or 4)
      2. The response of filter is a rectangle modulated by exp(jπn). Thus, the characteristics is a sin(θL/2)/sin(θ), shifted to π. You may find the mainlobe width, you may plot exactly zeros of A(θ) etc.
    3. Time resolution is proportional to time duration of window, frequency resolution - to mainlobe width (which is prop. to 1/K ....).
      Rectangular window has narrowest mainlobe possible, but high sidelobes; so it is good for resolving signals close in frequency, but without large difference in amplitudes.
      Any other window will have wider mainlobe (so poorer resolution in f).
      1. There was nonlinearity introcuced by product of two samples (linear is multiplication by a constant only).
        Saying "stable=yes because of BIBO" was not enough; "because FIR" was enough; if you call BIBO, you have to prove it by finding relation between bound of input Bx and output By.
      2. LP filter with passband of π/4 (see the "lecture 17").
      3. Many shorter is better: by averaging we reduce the variance of estimate. (variance is huuuuuge with single FFT)
      4. β (some call it α) controls the shape of window - effectively the sidelobes level (high β - low sidelobes). Is high β better? yes, if you are concerned with sidelobe level; but remember that you pay with wider mainlobe (There Ain't No Such Thing As A Free Lunch)
      5. Inv FT is calculated by summation when the spectrum is discrete ([B], periodic signal) and by integration when the spectrum is continuous ([A], limited energy signal).
      6. 3 buses are for opcode, data1 (signal), data2 (coefficient).
        Any instruction with dual move uses all three, e.g MAC instruction needs 2 data, so it is nice that we can load data in the same cycle in 56002 it can be coded as:
        mac a,b x:(r0+),x0 y:(r4+),y0
      7. Trivial
      8. def: order of n^2, FFT: order of n log2(n)
      9. y(n) length is, maximally, (length of h(n))+(length of x(n))-1. K=M+N-1. Here, we were asked to find M knowing K and N. Answer is, as you may guess, M=K-(N-1)
      10. The clue is in word "maximally". It may happen that for certain signal (e.g in the stopband....) the y(n) is shorter.....

    Exam test 2012/13

    Exam sheet

    T1/T2 test examples

    Please note that the solutions are NOT a model ones to copy and paste. In some cases a "full score" student solution to the test needs a bit of explanations, and in many cases my solution is too large - I wanted to show different possibilities or broaden an example.
    To summarize - don't learn by heart. Learn by brain.

    Try to solve the missing versions of tests.

    Test1 2010/11 ver.A problems
    Test1 2010/11 ver.B problems
    Test1 ver.B solutions
    Test1 ver.A solutions
    Test2 2017L
    Test2 2017L solved
    Also, think first, act later.

    When solving at home, you may use matlab or octave to do calculations like (1-j)/(1+j) (or to verify your calculations). You may also use these tools to show plots. Then try to understand why it is like you see - no Matlab at the exam, please :-).

    Test1 2013/14 ver.A problems

    Test 2 (2013/14) solutions sketch
    Computer plots:

    ver.A, 1b ver.B, 1b ver.A, 2c ver.B, 2c
    Test 1 (2016z) solved

    Lab info: example lab exercises

    The labs will be taught by Lab rules (do's/dont's, grading)


    These are called "examples" to underline the fact that they are not official. Some of them need review....

    Openly speaking, they are exercise sets current at the time of posting. I reserve the right to make some important modifications before the actual lab, to give different sets to different groups etc. (and I usually DO review the text before giving it....).

    Lab exercises:

    Students do not need to print these scripts -- the official lab instructions will be available at the lab.
    Old instructions below - this marker will be moved with updates

    Past things archive (Attic)

    dr inż. Jacek Misiurewicz
    room 454 (GE)
    Office hours: Mon 16:30-17:00 (or by e-mail appointment)
    Institute of Electronic Systems

    Instytut Systemów Elektronicznych
    Institute of Electronic Systems


    This page is "Continuously Expanding".///////////////////////