# ECE445S Real-Time Digital Signal Processing Laboratory - Midterm #2

Prof. Brian L. Evans

While you are preparing for the midterm, please keep in mind the course objectives:

- Build intuition for signal processing concepts
- Explore design tradeoffs in signal quality vs. run-time implementation complexity

Having regular sleep, eating, exercise and downtime from now until the midterm exam will be very helpful in allowing you to have full mental energy for the test.

You can download a zip file of the files on the Canvas site (1.2 GB) prior to the midterm #2 exam because you won't be able to access the Internet during the exam.

Midterm #2 will be an in-person exam on Monday, April 27, 2026, from 10:30am to 11:45am:

- EER 1.810 (lab room) for those with last names that begin with A-I. 12 students.
- ECJ 1.312 (lecture room) for those with last names that begin with J-Z. 30 students.

Here are the directions for the midterm exam:

- Exam duration. The exam is scheduled to last 75 minutes.
- Materials allowed. You may use books, notes, your laptop/tablet, and a calculator.
- Disable all networks. Please disable all network connections on all computer systems. You may not access the Internet or other networks during the exam.
- No AI tools allowed. As mentioned on the course syllabus, you may not use GPT or other AI tools during the exam.
- Electronics. Power down phones. No headphones. Mute your computer systems.
- Fully justify your answers. When justifying your answers, reference your source and page number as well as quote the content in the source for your justification. You could reference homework solutions, test solutions, etc.
- Matlab. No question on the test requires you to write or interpret Matlab code. If you base an answer on Matlab code, then please provide the code as part of the justification.
- Put all work on the test. All work should be performed on the quiz itself. If more space is needed, then use the backs of the pages.
- Academic integrity. By submitting this exam, you affirm that you have not received help directly or indirectly on this test from another human except the proctor for the test, and that you did not provide help, directly or indirectly, to another student taking this exam.

The class average on midterm #2 has varied semester to semester. The raw average was 73 in fall 2019 (the semester right before UT Austin had shifted courses online due to the pandemic).

Here are several example midterm #2 exams:

- Fall 2025 without solutions and with solutions.
- Spring 2025 without solutions and with solutions.
- Fall 2024 without solutions and with solutions.
- Spring 2024 without solutions and with solutions.
- Fall 2023 without solutions and with solutions.
- Spring 2023 without solutions and with solutions.
- Fall 2022 without solutions and with solutions.
- Spring 2022 without solutions and with solutions.
- Fall 2021 without solutions and with solutions.
- Spring 2021 without solutions and with solutions.
- Fall 2020 without solutions and with solutions.
- Spring 2020 without solutions and with solutions.
- Fall 2019 without solutions and with solutions. Problems 2.1 and 2.2g presented in Spring 2020. Here's another view of problem 2.1 presented in Fall 2021 and 2.2 presented in Spring 2023.
- Spring 2019 without solutions and with solutions. Problem 2.3 presented fall 2021.
- Fall 2018 without solutions and with solutions. Problems 2.2 and 2.4 on marker board.
- Spring 2018 without solutions and with solutions
- Fall 2017 without solutions and with solutions
- Spring 2017 without solutions and with solutions
- Fall 2016 without solutions and with solutions
- Spring 2016 without solutions and with solutions
- Fall 2015 without solutions and with solutions
- Spring 2015 without solutions and with solutions
- Fall 2014 without solutions and with solutions
- Spring 2014 without solutions and with solutions
- Fall 2013 without solutions and with solutions
- Spring 2013 without solutions and with solutions
- Fall 2012 without solutions and with solutions
- Spring 2012 without solutions and with solutions

Coverage of midterm #2 includes the material presented in lecture and lab since the first midterm. Much of the material covered since the first midterm builds on material from before the first midterm. Midterm #2 questions will come from lecture, homework, and labs. The midterm #2 review from spring 2014 might be helpful in your review of course materials.

For Midterm #2, you will be responsible for the material in

1. Lectures 7-8, 12-16 and 26. Lecture 26 is review for midterm #2.
2. In-class discussions
3. Johnson, Sethares, and Klein, Software Receiver Design, sections 6.5-6.7, sections 7.1-7.2, chapters 8-9, sections 10.1-10.4, chapter 11, sections 12.1-12.3, sections 13.1-13.3, sections 16.1-16.5, and appendices A, D, E, and F
4. Welch, Wright and Morrow, Real-Time Digital Signal Processing, chapters 10 and 16-18, and appendices A-D
5. Laboratory assignments 4-7
6. All handouts in the course reader, esp. Raised Cosine Pulse, Modulation Summary, Noise-Shaped Feedback Coding, Direct Sequence Spreading, Symbol Synchronization, Communication Performance of PAM vs. QAM, and Adding Random Variables
7. Homework assignments 4-7 and their solution sets (in addition, homework assignments 0-3 and their solution sets will also be helpful)
8. Simon Haykin, Communication Systems, excerpts on Random Modeling", from Sections 4.6 Random Processes, 4.8 Mean, Correlation and Covariance, 4.9 Ergodicity, 4.10 Transmission of a Random Process Through a Linear Filter, 4.11 Power Spectral Density, and 4.12 Gaussian Process.

For Midterm #2, you will also be responsible for the following topics:

1. Interpolation including pulse shapes, oversampling, and design tradeoffs (lecture 7)
2. Pseudo noise sequences and their applications (lab 4)
3. Quantization including system properties, SNR vs. bits of resolution, noise floor, power spectra, and design tradeoffs for A/D converters. (lecture 8)
4. Channel impairments including linear time-invariant, linear time-varying, and nonlinear distortion as well as additive noise (lecture 12)
5. Matched Filtering including pulse shaping, matched filtering, channel equalization and noise analysis (lecture 13)
6. Digital PAM, including error analysis, power requirements, transmission, and reception (lecture 14 and lab 5)
7. Digital QAM, including error analysis, power requirements, transmission, and reception (lectures 15 and 16)
8. Review slides (lecture 26)

Topics from lectures 10-11, 17-25 and 27 that were not covered in class will not be covered on midterm #2:

- Lecture 10. Data conversion (part 1): dithering, oversampling, and noise shaping. Example problems
- Lecture 11. Data conversion (part 2): including dithering, oversampling, and noise shaping
- Lecture 17. Fast Fourier Transform (FFT) including linear convolution, circular convolution, and implementation complexity.
- Lecture 18. Asymmetric Digital Subscriber Line (ADSL) Modems including multicarrier modulation, cyclic prefix, baseband channel models, channel equalization, transceiver training, and transmission bandwidth
- Lecture 20. Wireless orthogonal frequency division multiplexed (OFDM) systems including multicarrier modulation, cyclic prefix, equalization, transmission bandwidth, and wireless channel models
- Lecture 20 supplement. WiMAX wireless data communications standard (guest lecture by Prof. Jeffrey G. Andrews), which is based on OFDM
- Lecture 21. Spread spectrum systems, including uses of spreading, correlation, pseudo-noise sequences, and power control in spread spectrum systems
- Lecture 22. Modern Digital Signal Processors
- Lecture 23. Native Signal Processing
- Lecture 24. Texas Instruments ExpressDSP Algorithm (Software Development) Standard
- Lecture 25. System-level Design
- Lecture 27. Synchronization in ADSL Modems

Nonetheless, the content in these lecture slides may be helpful in preparing for an interview for a company that makes programmable DSPs or heavily uses programmable DSPs in its products.

In preparing for midterm #2, I would recommend working through the problems on the midterm #2 tests in the course reader, starting with the most recent midterm #2 test. I would also recommend thoroughly understanding the solution sets for homework assignments 0-7.

For the Fall 2003 midterm #2, you can ignore the first problem, as we haven't covered the topic of analog phase modulation this semester.

Here are calculations on midterm #2 that I have seen a few students have difficulty getting right:

1. Complex number calculations. Let z = r exp(j w):
   - z + z* = 2 r cos(w)
     One can compute the real component via (z + z*)/2.
   - z z* = r^2 = |z|^2
     This is a power calculation, and gives a real number.
   - z^2 = r^2 exp(j 2 w)
     This gives a complex number.
2. Polynomial factoring and expansion
   - The solutions of a x^2 + b x + c = 0 with respect to x are given by the quadratic formula:
     r0 = (-b + sqrt(b^2 - 4 a c)) / (2 a)
     r1 = (-b - sqrt(b^2 - 4 a c)) / (2 a)
   - The solutions of a + b x^(-1) + c x^(-2) = 0 with respect to x can be found by multiplying both sides of the equation with x^2 and using the quadratic formula
   - The expansion of (x - r0)(x - r1) is x^2 - (r0 + r1) x + r0 r1.
3. Based on our discussion of all-pass filters in lecture 6, one way to stabilize a discrete-time IIR filter is to reflect its poles that are outside the unit circle to be inside the unit circle. That is, for each pole p = r exp(j w) for which r > 1, change the pole to be pnew = (1/r) exp(j w). The magnitude response is preserved, but the phase response will change. (Note that poles on the unit circle remain unchanged, which means that filters with a repeated pole on the unit circle would remain unstable.) In the context of designing all-pass filters, poles are obtained by reflecting the zero locations inside the unit circle.
4. Decision regions for a constellation tell the receiver how to apply thresholds to a sampled output of the matched filter to decide which symbol (constellation point) was most likely sent. The decisions regions must cover the entire real line for PAM, and the entire plane for QAM.

Updated 03/06/26.