Welcome to ECE 420 Embedded DSP Laboratory

Course Description

The first seven weeks of the course will be structured labs based on fundamental digital signal processing (DSP) concepts from ECE 310. The next two weeks will be on the implementation and simulation of a fundamental DSP algorithm of a student's choosing from a set of seminal DSP papers (such as adaptive filtering, pitch detection, edge-aware filtering, motion tracking, pattern recognition, etc). The remaining five weeks in the course will revolve around the development, testing, and documentation of a DSP project of the student's choice (subject to instructor approval).

Course Goals

Students will learn to prototype, implement, and analyze real-time DSP systems. Students will both broaden and deepen their understanding of basic DSP theory and techniques and learn to relate this understanding to real-world observations and applications. Students will learn industrially-relevant skills such as rapid design prototyping in Python, and Android development of DSP applications in C++/Java for computationally-constrained mobile devices. Other significant educational experiences include open-ended design, oral, and written communication, and team projects.

Course Schedule

Lectures are once a week on Monday from 2:00-2:50pm in 2013 ECEB. The lecture topics are subject to change.

Week of Lecture Topic Lab Due (in lab)
08/26 Course Overview + Audio Processing (Slides) Lab 1 - IMU Pedometer None
09/02 No Lecture - Labor Day Lab 2 - Real-time Audio Filtering Prelab 2, Demo and Quiz 1
09/09 Short-time Spectral Analysis (Slides) Lab 3 - Spectrogram Prelab 3, Demo and Quiz 2
09/16 Correlation Analysis (Slides) Lab 4 - Pitch Detection Prelab 4, Demo and Quiz 3
09/23 Pitch Modification (Slides) Lab 5 - Pitch Synthesis Prelab 5, Demo and Quiz 4
09/30 Overview of 2D Image Processing (Slides) Lab 6 - Image Processing Prelab 6, Demo and Quiz 5
10/07 Video Kalman Filter (Slides) Lab 7 - Video Processing Prelab 7, Demo and Quiz 6, Assigned Lab Project Proposal due by 10/13 @ 11:59 PM
10/14 Special Topics (Slides) Assigned Project Lab Demo and Quiz 7
10/21 Special Topics (Slides) Assigned Project Lab Final Project Proposal (including preliminary Assigned Lab results) due by 10/27 @ 11:59 PM
10/28 Special Topics Assigned Project Demo + Final Project Design Review Revised Project Proposal (with Assigned Lab results), Assigned Lab code due by start of your lab section the week of 11/04
11/04 Special Topics Final Project Revised Project Proposal (with Assigned Lab results), Assigned Lab code due by start of your lab section the week of 11/04
11/11 Special Topics Final Project Final Project Milestone 1 Demo At Beginning of Lab
11/18 Special Topics Final Project Final Project Milestone 2 Demo At Beginning of Lab
11/25 Fall Break - No Class N/A N/A
12/02 Special Topics Final Project Demo and Presentation Final Project Report and Video due by 12/13 @ 11:59 PM
12/09 Course Review. In-class Quiz N/A Final Project Report and Video due by 12/13 @ 11:59 PM


Schedule and Location

Labs are held in Room 5072 ECEB.

  • Section AB1 meets Tuesday, 2:30-4:20 PM.
  • Section AB2 meets Wednesday, 2:00-3:50 PM.
  • Section AB3 meets Wednesday, 9:00-10:50 AM.
  • Section AB4 meets Friday, 3:00-4:50 PM.

The lab is available at all times except University holiday weekends and ECE 420 class times.

Students are expected to be in the lab for their two-hour assigned lab period. In addition, students can access the lab at any time (subject to departmental rules for normal lab privileges) using their I-card. It is expected that students will require additional lab time to complete their assignments. ECE 420 students having difficulty with their I-card access should notify one of the teaching assistants.

Basic rules of courtesy and professional behavior are expected in the lab. Please do not remove any lab equipment, books, or manuals from the lab at any time. If you would like to listen to music as you work, please use headphones.

Android Tablet

NVIDIA SHIELD Tablets along with charger and cable will be distributed as the labs contain significant portion of Android development. Students are responsible for the safety of their group's tablet. Tablet check out and return should be well documented by the check out sheets in the lab folder. Please notify the TAs when you no longer want to be recorded on the check out sheet.

Refer to the NVIDIA SHIELD Tablet page under Resources for more information.


Students will be working in groups to complete all labs and final project. Typically, groups of two are strongly prefered, group of more or less is allowed only on rare occasions.

For structured labs (lab 1 ~ lab 7), groups will be formed either voluntarily by students or randomly assigned by TAs. If students would like the chance to work with different partners during the course of the structured labs, please notify your TA and students will be reassigned as other students are available.

For assigned project labs and final project labs, students are expected to form their own groups. Groups should be two or three students; however we do expect more work for larger groups.


Refer to the submission instructions page for more information.


Grades can be found on Compass 2g.

Brief Grading Breakdown

  • Structured Labs - 40%
    • 2 points for the prelab
    • 4 points for the demo
    • 2 points for the quiz
  • Assigned Project Lab - 15%
    • 5% for the project proposal
    • 5% for the assigned project demo
    • 5% for the assigned project report (submitted as part of the final project proposal)
  • Final Project - 40%
    • 5% for design review presentation
    • 5% for the revised project proposal
    • 10% for the completion of two milestones
    • 10% for the final demo
    • 10% for the final report
    • Extra credit for the final video (Up to 3%)
  • Final Lecture Quiz - 5%

Detailed Grading Breakdown

The structured laboratory segment will count for 40% of the total grade, based on completion of, and oral examination over, the weekly laboratory assignments, including the underlying theory, details of the implementation and code, and the observed behavior of the system.

Each lab is worth 8 points, usually with 4 point for prelab and written quiz, and the remaining 4 points for demo and oral quiz. We emphasize that your grade is based heavily on your understanding and demonstration of the course material, not just on submitting working code.

The assigned project lab (based on the student's chosen DSP paper) will account for 15% of the total grade.

The final project will count for 40% of the total grade, with 5% on the design review presentation, 5% on the project proposal, 10% for demonstrations of project milestones, 10% for the final demo and oral presentations, and 10% on the final report.

The final 5% of the total course grade comes from a written quiz over the lecture material.

It is expected that each student will attend and participate in scheduled class and laboratory meetings, or will make prior alternate arrangements with the instructor. The final grade may be penalized if this does not occur.

All assignments other than the lecture quiz, final project proposal, and final project report are due during the scheduled laboratory meeting. A late penalty of 50% will be assessed for assignments less than a week late; assignments more than a week late will receive no credit. However, all graded assignments must be submitted to receive a passing grade in the course.

Project Details

Refer to the Assigned Project Lab and Final Project pages.

Academic Integrity Policy

Printed and online sources are allowed with proper citation. Please direct your question to Google or the course staff before you ask your classmates. Given the range of the material for this course, we encourage you to refer to any online source, but do not directly copy and paste.

We do not allow inter-group cooperation for the final project. If there is a sign of cooperation between groups, those groups will be treated as a big group, and the grade will be divided accordingly.

More information: Student Code.

Office Hours / Course Administrivia

  • Dr. Jeffrey Brokish: by email appointments only.
  • TA Dimitrios Gotsis: Office Hours 12PM-2PM Wed, 12PM-2PM Fri
  • TA Spencer Markowitz: Office Hours by appointment
If you have questions, post them on Piazza.

Instructor Contact Information

  • Dr. Jeffrey Brokish: brokish@illinois.edu
  • TA Dimitrios Gotsis: gotsis2@illinois.edu
  • TA Spencer Markowitz: samarko2@illinois.edu