Topic | Reading | Recommended Exercises |
---|---|---|
Synchronous Design | DDCA 3.3-3.4 | All Exercises: 3.15-3.29 |
This week is a bit of a catch-up week. We've looked at a lot of circuit elements in the past two weeks, and this week, we'll put them together to build finite state machines -- circuits that rely on previous state to perform a computation. In order to do so, you'll need to have a firm grasp of how to design combinational logic, so this week's reading is light: it's your chance to review exercises from past weeks if you could use some extra practice.
We'll continue to look at state based circuits next week, but we'll add a twist: we'll be analyzing their performance in addition to simply building correct circuits. This material will be quite challenging, as it employs a significant amount of jargon (terms you'll have to memorize) and requires that you understand how logic flows through a circuit. In case you want to take some extra time on it, I've published the reading guide a week early.
Section 3.3 introduces several possible problems that might occur in circuits that contain loops. Skim it as background for the real emphasis this week: section 3.4, finite state machines. "
There are quite a few exercises this week, so that you have plenty to practice on. I would pay special attention to 3.19 and 3.20, as they are the "basic" FSM design problems. You'll need to be solid on these to continue. Later problems are more complex but can be solved using the same techniques.