Each midterm exam will be an open book, open notes, open laptop exam that is scheduled to last the entire period. The laptop must have all external networking connections disabled. Because each midterm is an open book, notes and laptop exam, you'll likely need to move quickly through the exam but also need to think deeply about possible ways to solve the problems. To this end, having a week of regular sleep, eating, and exercise will be very helpful.

Midterm #1 for the spring 2018 semester will be on Friday, March 9th, during lecture time (11:00 am to 11:50 am) but in Burdine 116 that seats 95. BUR 116 has tables (continuous writing surfaces). With 25 students in the class, you should have at least three empty seats or an aisle on either side of you. The extra space will help you be more comfortable to arrange your books, notes, and laptop for the midterm exam.

Midterm #1 questions will come from lecture and lab. It is possible that one problem on the midterm may require you to write TMS320C6700 C/assembly code. TMS320C6700 assembly language instructions are tabulated in the slides for lecture 2.

You may use a laptop/tablet on midterm #1 but without any networking. You may download an archive of the course Web site (280 MB) prior to midterm #1.

The class average on midterm #1 has varied semester to semester. Before the curve, the class average has been typically around 60.

Here are several example midterm #1 exams:

- 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

Midterm #1 Review Slides are available from Spring 2017. The review slides are not comprehensive, but instead contain a sampling of important topics.

The online supplement to the book
*DSP First* has dozens of worked problems from the pre-requisite
course on signals and systems.
After selecting a chapter on the Homework menu at the top right of the page,
all of the problems from that chapter will be visible.
There is a Solution button for those with solutions.

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

- In-class lectures 0-6
- In-class demonstrations, including those from
*DSP First*, 2nd ed., including - In-class discussions
- Johnson, Sethares and Klein,
*Software Receiver Design*, chapters 1-7 and appendices A & G - Welch, Wright and Morrow,
*Real-Time Digital Signal Processing*, chapters 1-7 and appendices A-D - Laboratory assignments 1-3
- Handouts in the course reader entitled
- Sampling the Unit Step Function
- Discrete-Time Periodicity
- Trends in Multicore DSPs
- Comparing Fixed- and Floating-Point DSPs
- Bounded-Input Bounded-Output Stability
- Parallel and Cascade Realizations of IIR Filters
- E. Convolution Example
- F. Fundamental Theorem of Linear Systems
- H. Modulation Example
- I. Modulation Summary
- N. Tapped Delay Line on C6700 DSP and its Discussion on YouTube
- O. All-pass Filters
- R. Introduction to Fourier Transforms

- Homework assignments 0-3 and their solution sets

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

- Communication system introduction (Lecture 0)
- Conventional programmable digital signal processor architectures (Lecture 1)
- Bandwidth (Lecture 2)
- Sinusoidal generation (Lecture 2)
- Upconversion and downconversion (Lectures 2 and 4)
- Continuous-time system properties (Lecture 3)
- Basic continuous-time signals (Lecture 3)
- Discrete-time system properties (Lecture 3)
- Basic discrete-time signals (Lecture 3 and 5)
- Fundamental Theorem of Linear Systems for continuous-time systems (Handout F)
- Sampling theorem (Lecture 4)
- Sampling and aliasing (Lecture 4
- Bandpass sampling (Lecture 4)
- Discrete-to-continuous conversion (Lecture 4)
- Fundamental Theorem of Linear Systems for discrete-time systems (Lecture 5)
- Z-transforms (Lecture 5 and 6; Johnson & Sethares Appendix A.4)
- Transfer functions (Lecture 5 and 6; Johnson & Sethares 4.5)
- Relationships between transforms (Lecture 5)
- Digital FIR filter implementation (Lecture 2 and 5)
- Digital FIR filter analysis (Lecture 5)
- Stability of continuous-time and discrete-time filters (Lecture 5 and 6)
- Digital IIR filter design by pole-zero placement (Lecture 6)
- Three direct form IIR filter structures (Lecture 6)
- Classical IIR filter design methods (Lecture 6)
- Implementing IIR filters in cascade of biquads based on quality factors (Lecture 6)

Oppenheim & Willsky (2nd ed.) | Roberts | Lathi (2nd ed.) | Topics |

1.6 | 1.2 | 1.7 | System properties |

1.3-1.4 | 2.3 | 1.4 | Basic continuous-time signals |

3.2 | 2.4 | 2.4-4 | Fundamental Theorem of Linear Systems for continuous-time systems ** |

1.3-1.4 | 3.4 | 3.3 | Basic discrete-time signals |

3.2 | 3.5 | 3.8-3 | Fundamental Theorem of Linear Systems for discrete-time systems ** |

9.7.2 | 2.6 | 2.6 | Stability of continuous-time filters |

10.7.2 | 3.6 | 3.10 | Stability of discrete-time filters |

10.1-10.3 | 5.1 | 5.1 | Z transforms |

10.5 | 5.2 | 5.2 | Properties of the z-transform |

10.7.3-10.7.4 | 5.3 | 5.3 | Transfer functions, and filter design by pole-zero placement |

Ex. 5.13 | Notch filters | ||

Prob. 5.5-7 | All-pass filters | ||

10.8 | 5.4 | 5.4 | Realizations of transfer functions |

4.3-4.4 | 7.4 | 7.3 | Fourier transform properties (esp. the frequency shifting property for sinusoidal amplitude modulation) |

7.10 | ?.?? | Pulse shapes | |

7.1 | 8.1 | 8.1 | Sampling theorem |

7.4 | 8.2 | 8.4 | Spectral analysis of sampling theorem |

Here are examples of calculations that many students have had trouble getting right on midterm #1.

The first common mistake is deriving transfer functions.
One source is Lathi's *Linear Systems and Signals* book,
which uses the operator notation D y(t) to represent (d/dt) y(t) or y'(t).
This is not an error.
Lathi's book continues as follows, given input signal x(t) and output
signal y(t):

y'(t) + y(t) = x(t) D y(t) + y(t) = x(t)where D is the operator that differentiates its argument with respect to t. So far, so good. The problem starts when Lathi's book does the following:

(D + 1) y(t) = x(t)From the above Lathism, many students

y(t) 1 ---- = ----- x(t) D + 1 y(t) h(t) = ---- x(t)where h(t) is the transfer function of the system in the time domain.

**Error #1**: There is no concept of a transfer function in the time domain.**Error #2**: Clearly, h(t) = y(t) / x(t) is not a meaningful way to represent a system; it isn't valid when x(t) is zero.

In order for a system governed by a linear constant-coefficient equation to have the linearity property, the system must be at rest; i.e., the initial condition(s) must be zero.

Updated 01/31/18.