UCR EE/CS120B: Introduction to Embedded Systems, Spring 2002

Overview

This course deals with the exciting field of designing embedded computing systems -- those computers hidden in all sorts of electronic devices, like digital cameras, MP3 players, video games, automobiles, fax machines, copy machines, printers, pacemakers, hearding aids, hospital equipment, and so on. It introduces the student using a unified view of hardware and software design -- mapping desired functionality to a collection of single-purpose processors (digital hardware and peripherals) and general-purpose processors (microprocessors). Students will gain experience building real digital systems using VHDL, synthesis and FPGAs (Xilinx), and programming embedded microprocessors (Intel 8051 8-bit microcontroller).

Course information

Instructor: Frank Vahid (vahid@cs.ucr.edu). Office hours Tu 2:00 - 3:00
Lecture TR 9:40-11:00am, WATKINS 1101 (call #: 11901)
Labs: sec 021 (11902) WF 2:10-6pm; Surge 170
sec 023 (11904) TR 6:10-10pm; Surge 170
Prerequisites EE/CS120A, CS61, CS10
Final exam 06/13/2002 8 to 11 a.m.
Textbooks
  • Digital Design Principles & Practices, J. Wakerly, Prentice Hall, 2001, 3rd Ed (Comes with Xilinx Student Edition software). DDPP web site
  • Embedded System Design: A Unified Hardware/Software Introduction, Frank Vahid and Tony Givargis, J. Wiley & Sons, 2002, 1st Ed. ESD web site
  • The 8051 Microcontroller, Stewart and Miao, Prentice Hall, 2nd Ed.
  • Recommended: For those serious about digital design, I suggest purchasing a VHDL book. Here's one you might try: A VHDL Primer, J. Bhasker, Prentice Hall, 1999, 3rd Ed.
  • TA's Brian Grattan (bgrattan@cs.ucr.edu), Chuanjun Zhang (chzhang@cs.ucr.edu), Office hours during scheduled lab.
    Grade 10% Homeworks, 30% Labs (including lab exams if any), 40% Midterms (and quizzes if any), 20% Final.

    Lecture overview

    (DDPP: Digital Design Principles and Practices book; ESD: Embedded System Design book; T8M: The 8051 Microcontroller book).
  • (Students should review DDPP Chapters 1-7)
  • Introduction to embedded systems (ESD 1)
  • Custom single-purpose processors: Hardware (ESD 2)
    Includes coverage of FSMs (DDPP 7), registers/counters (DDPP 8), and RAMs (DDPP 10.3)
  • General-purpose processors: Software (ESD 3, T8M 2)
  • Standard single-purpose processors: Peripherals (ESD 4)
  • Memory (ESD 5) (skip: advanced RAMs)
  • Interfacing (ESD 6)
  • Putting it all together -- a digital camera example (ESD 7)
  • Lab topics

  • Introduction to VHDL and simulation
  • Introduction to synthesis and FPGAs ( Xilinx )
  • Synthesis of digital components, datapaths, and simple custom processors
  • Introduction to an embedded microprocessor: The Intel 8051
  • Hardware/software tradeoffs
  • Notes

  • Lecture and lab material overlap, but are quite independent, with lectures dealing with general principles, and lab dealing with specific software and hardware. Lecture exams will focus on lecture material, but may include some amount of lab material. Students in lab will work with a partner. Lab exams may be held during the quarter to ensure each individual is learning (i.e., not relying too heavily on one's partner).
  • Important note on academic dishonesty: cheating will be punished severely. For those who don't want others' cheating to cheapen your own hard work and hurt your grade -- there is an anonymous cheating reporting form at: https://www.cs.ucr.edu/cheating/. While students may discuss material generally (and this is encouraged!), HOMEWORK SUBMISSIONS MUST REPRESENT INDEPENDENT WORK .
  • Submitted homeworks should be neat and legible -- sloppy or unnecessarily long homework submissions may lose points or may not be graded. You probably want to do a draft of the homework, and then create a neater copy to turn in.
  • Regrade policy: corrections to graded material must be submitted within one week of the distribution of the graded items. Corrections to grades database entries must also be corrected within one week of the grades being posted.
  • Email address: In lab, you'll be asked to provide us with a UCR email address. Some announcements, and your scores during the quarter, will be sent to that email address. If you commonly read email from another address (e.g., yahoo or hotmail), then you must still provide us with your UCR address, but you might then create a .forward file in your UCR account for your more common address.
  • Pictures from first day of class

    Taken with a digital camera -- a good example of an embedded system. Good lookin' bunch!   1     2

    Homeworks

  • Homework 1
  • Homework 2
  • Homework 3
  • Homework 4
  • Midterms

  • Midterm 1   Midterm 1 solutions
  • Midterm 2   Midterm 2 solutions
  • Labs

    Lab Links


    DIP switch PINS for the XESS board: http://www.cs.ucr.edu/content/esd/labs/general/DIPconnect.gif
    Overall pin connections for the XESS 40: http://www.xess.com/prgmdl40.html

    Lab guidelines

    Key Resources

    Additional Resources


    Some interesting related links

    Interview with Gordon Moore
    Intel Museum (Intro's to transistors and microprocessors)
    History of the transistor (from Lucent)
    Embedded Systems Programming magazine (online)
    Embedded Systems site (by CMP)
    Philips 8051 microcontrollers
    Triscend Corp. home page: makers of a single chip 8051/FPGA device (and an ARM/FPGA device)
    The Death of Hardware Engineering -- article from Embedded Systems Programming, March 2002.
    Embedded Processors -- A very cool article on embedded processors on ExtremeTech.com.
    The Future of the Microprocessor Business -- April 2002 article in IEEE Spectrum (Thanks to Scott Loring for finding this article)


    Back to Frank Vahid's home page