EE 209 - Fall 2017 Foundations of Digital System Design

Welcome to EE209 - Fall 2017

This course introduces digital system design theory and practice. It places focus on logic design techniques and physical implementation methodologies. Students learn to design and synthesize combinational and sequential logic structures at the gate and transistor level using structures and concepts learned in EE 109L. Topics include Boolean algebra, datapath components, state machine synthesis, implementation technologies with focus on CMOS, and physical layout. A lab component familiarizes students with standard electronic design automation (EDA) software tools with implementation to FPGAs to allow students to put theory into practice.

Upon completion of this course students will be able to:

  1. Identify and derive appropriate logic functions to implement a specified design
  2. Synthesize logic circuits to implement a given logic function
  3. Understand design tradeoffs that include area and speed and optimize circuits for desired performance
  4. Analyze and manipulate logic circuits to ascertain their logic function or alter their implementation based on specific design requirements
  5. Synthesize and analyze circuits that include state elements (flip-flops) [i.e. state machines]
  6. Design datapath and control units for portions of a simple CPU
  7. Understand basic principles of semiconductor physics and transistor operation
  8. Layout simple logic cells
  9. Understand the relationship of delay and area due to the parasitics inherent in physical implementation.