Credits: 2


Prerequisite: Minimum grade of C- in ENEE205; or minimum grade of C- in ENEE206; and minimum grade of C- in ENEE350; and must have earned a minimum grade of C- in all 200-level ENEE courses; and permission of ENGR-Electrical & Computer Engineering department.
Restriction: Must be in one of the following programs (Engineering: Computer; Engineering: Electrical).
This laboratory course focuses on the hardware/software interface in computer systems. Hands-on experiments are used to teach design, construction, analysis, and measurement of both hardware and software for embedded systems. Projects emphasize using microcontrollers for control, sensing, and communication through various I/O devices.

Semesters Offered

Fall 2017, Spring 2018, Fall 2018, Spring 2019, Fall 2019, Spring 2020, Fall 2020, Spring 2021, Fall 2021, Spring 2022, Fall 2022, Spring 2023, Fall 2023

Learning Objectives

  • Design digital logic, microprocessor software, and LSI component (peripherals, memory, analog interface) to meet a problem specification
  • Learn to implement embedded systems with mixed technology designs using both programmable logic and software
  • Develop skills in current-technology logic and software design environments
  • Use digital bench instruments to observe and debug embedded system hardware and software
  • Practice in writing technical design documentation

Topics Covered

  • FPGA architecture and design tools
  • Interfacing microprocessors to FPGAs
  • Interface and application of standard peripherals
  • Debugging with simulation
  • Debugging with bench instruments
  • System bus standards and implementation
  • Making software/hardware tradeoffs
  • Memory interface design
  • Hardware design with timing constraints
  • Realtime software design
  • System fault and error recovery
  • Communication and control protocols
  • Embedded system operator interface design
  • Writing technical documents