EE 16B | Designing Information Devices and Systems II

Spring 2017


The schedule is tentative and still subject to change.

Wk Date Lecture Topic Section Lab Homework
001/17 TuCircuits/IntroHomework 0
01/19 ThCircuits - transistorsSection 0B: KVL, KCL, op-amps review
101/24 TuCircuits - RC transientsSection 1A: Digital logic and number representationIntroduction to DebuggingHomework 1
01/26 ThCircuits - 2nd order ODEsSection 1B: RC circuits
201/31 TuCircuits – inductors and 2nd order ODEsSection 2A: 2nd order ODEsAnalog-Digital Converters IHomework 2
02/02 ThCircuits - transfer functionsSection 2B: RLC circuits
302/07 TuCircuits - filters and bode plotsSection 3A: Complex numbersAnalog-Digital Converters IIHomework 3
02/09 ThCircuits – frequency response of filtersSection 3B: Transfer functions
402/14 TuCircuits - bode plotsSection 4A: Bode plotsMystery Circuit and Mic Board AssemblyHomework 4
02/16 ThControl - state space representationSection 4B: RLC and transfer function practice
502/21 TuControl - linearization and stabilityColor Organ: Part IHomework 5
02/23 ThControl – stability cont’dSection 5B: Linearization
602/28 TuControl – controllabilitySection 6A: System stability conditionsColor Organ: Part IIHomework 6
03/02 ThControl - state feedback controlSection 6B: Controllability
703/07 TuControl – controller canonical form; outputs and observersSection 7A: Feedback controlMic CircuitHomework 7
03/09 ThControl – observability and observersSection 7B: Block diagrams
803/14 TuSVD – overviewSection 8A: Controller canonical form & observersIntroduction to Controls: Part I
03/16 ThSVD - procedureSection 8B: SVD
903/21 TuSVD – geometric interpretationSection 9A: Midterm reviewIntroduction to Controls: Part IIHomework 9
03/23 ThK-meansSection 9B: Complex inner product
1003/28 TuSpring break – NO LECTURE
03/30 ThSpring break – NO LECTURE
1104/04 TuSampling/Interpolation - polynomial interpolationSection 11A: PCAIntroduction to Controls: Part IIIHomework 10
04/06 ThSampling/Interpolation - interpolation and sampling theoremSection 11B: Polynomial interpolation
1204/11 TuSampling/Interpolation – continuous and discrete signalsSection 12A: Sampling theoremSVD/PCAHomework 11
04/13 ThDFTSection 12B: Inner product and projection
1304/18 TuDFT continuedSection 13A: DFTAdvanced ControlsHomework 12
04/20 ThLTI systemsSection 13B: DFT and sampling
1404/25 TuLTI systems and DFTSection 14A: LTI systemsIntegrationHomework 13
04/27 ThReview ISection 14B: DFT + LTI
1505/02 TuReview II

Weekly Schedule

Course Staff


Murat Arcak

Michel Maharbiz


Rachel Zhang
Administrative TA
Jessie Yang
Administrative TA
Anastasia Shuler
Lab TA
Andrew Blatner
Lab TA
Ashley Lin
Lab TA
Beliz Gunel
Discussion TA
Brian Kilberg
Content TA
Charles Zhang
Lab TA
Deborah Soung
Discussion TA
Edward Wang
Lab TA
Jane Liang
Discussion TA
Kevin Chen
Discussion TA
Nikhil Shinde
Lab TA
Peter Schafhalter
Lab TA
Saavan Patel
Discussion TA
Siddharth Iyer
Content TA
Tianrui Guo
Discussion TA
Vivek Athalye
Lab TA

Please add to the end of all emails



Midterm 1 (solutions)
Midterm 2 (solutions)

Lecture Videos

Note that you need to be logged into your account to view these videos.
Lecture 0A
Lecture 0B
Lecture 1A
Lecture 1B
Lecture 2A
Lecture 2B
Lecture 3A
Lecture 3B
Lecture 4A
Lecture 4B
Lecture 5A
Lecture 5B
Lecture 6A
Lecture 6B
Lecture 7A
Lecture 7B
Lecture 8A
Lecture 8B
Lecture 9A
Lecture 9B
Lecture 11A
Lecture 11B
Lecture 12A
Lecture 12B
Lecture 13A
Lecture 13B
Lecture 14A
Lecture 14B
Lecture 15A

Video Notes

Intro to transistors and digital logic
RC transients
Second-order circuits
Differential equations
Observers and observability
Feedback control


Lab outline and overview
Oscilloscope cheatsheet
Intro to circuits debugging
Controls primer
Project deliverables
Project grading


Kirchoff's laws
Parallel and series resistors
Voltage and current dividers
Thevenin/Norton equivalent circuits and source transformation
Bode plot practice problems

Linear Algebra

Eigenvalues and eigenvectors
Change of basis and diagonalization


Interactive guide to the DFT
Another textbook chapter (starts on page 144)
Fourier visualizations


SVD flags example A tutorial on PCA
A linear algebra review that concludes with SVD
An article about SVD and its applications
Image processing with the SVD
Visualization of the PCA
Visualization of k-means

Sampling and Aliasing

JTAG transform compression

Frequency Response and Impedance


Murray and Astrom
Franklin, Powell, and Workman


Grade Breakdown

  • Homework: 10%
  • Labs: 30%
  • Midterm 1: 15%
  • Midterm 2: 15%
  • Final: 30%

Homework Party

Every week there will be a "homework party." This is completely optional. GSIs will be present in shifts as will some readers. Students are expected to help each other out, and if desired, form ad-hoc "pickup" homework groups in the style of a pickup basketball game.

Homework Grading

The primary way that the homework will be graded is by yourselves. Homework is always due Wednesdays at 17:00. You need to turn in both your code in the form of an ipynb file and a .pdf file consisting of your written-up solutions that also includes a "printout" of your code.

After the HW deadline, official solutions will be posted online and then you will be expected to read them and enter your own scores and comments for every part of every problem in the homework on a simple coarse scale:

0 = didn't attempt or very very wrong,
2 = got started and made some progress, but went off in the wrong direction or with no clear direction,
5 = right direction and got half-way there,
8 = mostly right but a minor thing missing or wrong,
10 = 100% correct.

Note: all partial credit must be justified with a comment. If you are really confused about how to grade a particular problem, you are given a limited number of "I don't know" skips that you can use on every assignment. You always get at least two, and more if the HW has lots of parts. This is not supposed to be a stressful process and the skips are there to let you not obsess about how to grade any one part.

Your self-grades will be due Friday at 23:59 after the homework deadline and if you don't properly enter any grades by the self-grading deadline, you are giving yourself a zero on that assignment. Just doing the homework is not enough, you have to do the homework, turn it in on time, read the solutions, do the self-grades, and turn them in on time. Unless all of these steps are done, you get a zero for that assignment. We will be dropping your lowest-scored homework from your final grade calculation, so getting a single zero on a HW is not the end of the world.

Just as we encourage you to use a study group for doing your homework, we strongly encourage you to have others help you in grading your assignments while you help grade theirs. This will also help you avoid self-favoritism.

The readers are going to be grading and sending you occasional comments. Because we have reader grades, we will catch any attempts at trying to inflate your own scores. This will be considered cheating and is definitely not worth the risk. Your own scores will be used in computing your final grade for the course, adjusted a bit by taking into account reader scores so that everyone is effectively fairly graded on the same scale. (E.g. If we notice that you statistically tend to shade 8s into 5s a bit much as compared to the readers looking at your homeworks, we will apply a correction to pull your scores up a bit.)

If you have any questions, please ask on Piazza.

Extra credit will be available for many creative activities including helping us debug issues with the class and coming up with constructive solutions. (For example: creating practice problems with solutions, providing patches to bugs in labs and homeworks, etc...) Talk with your GSI in person or post on Piazza if you want to get feedback from the entire class.

Course Communication

The instructors and TA will post announcements, clarifications, hints, etc. on Piazza. Hence you must check the EE16B Piazza page frequently throughout the term. (You should already have access to the EE16B Spring 2017 forum. If you do not, please let us know.) If you have a question, your best option is to post a message there. The staff (instructors and TAs) will check the forum regularly, and if you use the forum, other students will be able to help you too. When using the forum, please avoid off-topic discussions, and please do not post answers to homework questions before the homework is due.

If your question is personal or not of interest to other students, you may mark your question as private on Piazza, so only the instructors will see it. If you wish to talk with one of us individually, you are welcome to come to our office hours. Please reserve email for the questions you can't get answered in office hours, in discussion sections, or through the forum.

It can be challenging for the instructors to gauge how smoothly the class is going. We always welcome any feedback on what we could be doing better. If you would like to send anonymous comments or criticisms, please feel free to use an anonymous remailer like this one to avoid revealing your identity.


You are encouraged to work on homework problems in study groups of two to four people; however, you must always write up the solutions on your own. Similarly, you may use books or online resources to help solve homework problems, but you must always credit all such sources in your writeup and you must never copy material verbatim. We believe that most students can distinguish between helping other students and cheating. Explaining the meaning of a question, discussing a way of approaching a solution, or collaboratively exploring how to solve a problem within your group is an interaction that we strongly encourage. But you should write your homework solution strictly by yourself so that your hands and eyes can help you internalize this material.You should acknowledge everyone whom you have worked with or who has given you any significant ideas about the homework. This is good scholarly conduct.

Don't Be Afraid to Ask for Help

Are you struggling? Please come talk to us We would much rather deal with misunderstanding early on, and we can help. Even if you are convinced that you are the only person in the class that doesn't understand the material, and that it is entirely your fault for having fallen behind, please overcome any feelings of guilt and ask for help as soon as you need it -- we can almost guarantee you're not the only person who feels this way. Don't hesitate to ask us for help -- we really do care that you learn!


The following tips are offered based on our experience.

Do the homeworks! The homeworks are explicitly designed to help you to learn the material as you go along. Although the numerical weight of the homeworks is not huge, there is usually a strong correlation between homework scores and final grades in the class.

Take part in discussion sections! Discussion sections are not auxiliary lectures. They are an opportunity for interactive learning. The success of a discussion section depends largely on the willingness of students to participate actively in it. As with office hours, the better prepared you are for the discussion, the more you are likely to get out of it.

Form study groups! As stated above, you are encouraged to form small groups (two to four people) to work together on homeworks and on understanding the class material on a regular basis. In addition to being fun, this can save you a lot of time by generating ideas quickly and preventing you from getting hung up on some point or other. Of course, it is your responsibility to ensure that you contribute actively to the group; passive listening will likely not help you much. And recall the caveat above that you must write up your solutions on your own. You are strongly advised you to spend some time on your own thinking about each problem before you meet with your study partners; this way, you will be in a position to compare ideas with your partners, and it will get you in practice for the exams. Make sure you work through all problems yourself. Some groups try to split up the problems ("you do Problem 1, I'll do Problem 2, then we'll swap notes"); not only is this a punishable violation of our collaboration policies, it also ensures you will learn a lot less from this course.