Updated on: Thu Sep 3 10:27:08 CEST 2015

Shortcuts

  • What will all this be about?
  • slides
  • A schedule of lectures/homeworks/tests and labs (in a neat table)
  • list of lab groups and scores ("studia" server)
  • info on labs, example lab exercises and entry tests
  • test examples with hints for study
  •  

    Current issues

    • There are three dates for EDISP exam. You can choose any two of them (first try and second try).
      In the announced schedule they are:
      • E1: 18.06.2015 11-14, room 120
      • E2: 25.06.2015 11-14 room 120
      • E3: 02.09.2015 11-14 room 164 Tuesday 8 Sep 2015, 11-14, room 17. If you want to attend it, please contact me via email.

      Some example test are further down this page.

    • Signatures I am absent in September due to exchange programme. However, you may obtain my signature:
      • Finding me in room 454 on 7-8 September or 17-18 September.
      • Leaving your scorebook/scoresheet in the office (room 456) so that I find it on the above dates.
      • Waiting until October.
    • Test2 will be on June 1st, room 04b, 10:15-12 (this is a Monday assigned as Friday, so I hope all students can come). In consequence, the lecture on 11.06 is cancelled.
    • Lecture 14 is available in a video recording: part1 part2 part3 part4 part5
      Please download, don't play from the page. I use "save link as", otherwise my browser crashes.
      Due to server limits, it will be removed after a week.
      Please note: I am putting it here as an emergency help for students who have a schedule conflict. All current EDISP students are authorized to use it, but only for own study. You are NOT authorized to publish it elsewhere.
     

    Home page of EDISP
    (English) DIgital Signal Processing course
    semester 2015l (summer of 2014/15 acad. year)

    Schedule

    The lectures are on Thursday, room 121 08:15-10:00.

    There are lab exercises, 4 hours every second week, room 022 (basement).


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


    For the introductory lab (lab0) we ALL meet on Mon, March 2nd, 9:15 in room 022. You will be able to register for subgroups then.
    Next lab (lab1) will be

    Note that A printable schedule is here

    Books

    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.

    Exam tests 2007

    One test. Another test.

    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.

    Exam tests 2009 w/solution discussion

    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)
        0.2(1/(1-0.8z-1)+z-1/(1-0.8z-1))
        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
        y(n)=H(0)-H(π)·(-1)n
    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 "causal=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 and output.
      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.....

    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 (ver.A) and solutions
    Test2 (ver.B) (do it yourself!)
    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

    Lab info: example lab exercises

    The labs will be taught by

    Disclaimer:

    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 447 (GE)
    Office hours: Tue 16:30-17:00 (or by e-mail appointment)
    Institute of Electronic Systems

    email:jmisiure@elka.pw.edu.pl

     
     
     
     
     



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