Course Syllabus

Home | Syllabus | Schedule | Project | Resources

Course Description

ECPS 203: Embedded Systems Modeling and Design (4)
Embedded systems definition, system-level specification, models and languages. Concepts, requirements, examples. Embedded system models at different levels of abstraction. Test benches, design under test, IP components. Discrete event simulation, semantics, and algorithms.

Prerequisites by topic:
Basic understanding of the organization of digital computers

Laboratory project:
Sequence of modeling and simulation tasks using a chosen embedded application example

Computer usage:

  • C/C++ programming tools in Linux environment
  • SystemC compilation and simulation tools

Student and Course Learning Outcomes

Student outcomes represent what the course strives to accomplish.
Course learning outcomes represent what will be measured to determine if the course met it's objectives.

  • Student Outcomes:

    • Students learn concepts in the modeling of embedded computer systems with software and hardware components at different abstraction levels using IEEE SystemC language.
    • Students learn the systematic design of embedded computer systems with software and hardware components following a well-structured top-down system design methodology.
  • Course Learning Outcomes:

    • Students are able to model embedded systems at different levels of abstraction.
    • Students are able to describe embedded system models in the SystemC language.
    • Students are able to simulate and validate embedded system models.
    • Students are able to apply structured top-down system design methodology to design embedded application examples.

Course Resources

Course Contents

  • The class meets for 3 hours of lecture and 1 hour of laboratory each week for 10 weeks.
    1 Embedded system concepts, models of computation
    2 Application introduction, case study example
    3 IEEE SystemC system-level description language
    4 Application specification, modeling guidelines
    5 Validation, discrete event simulation, estimation
    6 Levels of abstraction, co-design methodology
    7 Top-down system design methodology
    8 Embedded system architecture, HW/SW partitioning
    9 Cycle-accurate, register transfer level models
    10 Project discussion, completion, report
  • Note that the ordering of topics is tentative and may change!
  • Please see the Schedule page for up-to-date scheduling information.

Course Policies

  • In-Person Course:

    The primary mode of instruction for this course is in-person. However, remote participation is accommodated through hybrid/dual-delivery fashion where some course elements are in-person and some are online/remote. Best effort is made to make participation possible in-person as well as remote/online.
  • COVID-19 Health Guidelines:

    This course follows all health guidelines defined by the UCI campus.
  • COVID-19 Reporting:

    This course follows the reporting guidelines defined by the UCI campus.
  • Attendance Policy:

    Attendance and active participation in class is required. If required by UCI guidelines, attendance is taken with a sign-in sheet for all in-person meetings (which may be used for COVID-19 contact tracing purposes if needed).
    It is the student's responsibility to make up for any missed instruction or assignments. Substitute assignments or exams will only be arranged for absence due to documented medical (or similar) reasons. Proper documentation is required.
  • Computing server:

    Linux is the standard computing platform used for this course. A central computer infrastructure is provided and students may remote login to the server at any time (24/7). All processes run on the EECS Linux servers, such as and others. SSH protocol and a suitable SSH client is needed to login to the server.
  • Project assignments:

    A selected embedded application will serve as a continuous example for a sequence of modeling and simulation tasks. Assignments are listed on the Project web page and may be assigned on a weekly or bi-weekly basis. Detailed submission instructions and due dates will be listed with each assignment. Assignments are generally due on Wednesday at 6pm, unless indicated otherwise on the project web page.
    The submission deadline is hard. The server clock is used as reference clock. Work turned in late will not be graded and receive no credit.
  • Exams:

    The course includes one final examination. Final examinations are administered during examination week as announced in the UCI Schedule of Classes.
  • Grading Policy:

    The final grade for the course will be determined based on the scores achieved in the assignments and the final examination, as follows:
    • 50% Project assignments
    • 50% Final examination
  • Academic Honesty:

    Academic integrity, as published by the Office of Academic Integrity and Student Conduct (AISC), is a requirement for passing this class. Any student who compromises the academic integrity of this course is subject to a failing grade. Submitted work must be the own original work of the student.
    Academic dishonesty includes, but is not limited to copying answers from another student, allowing another student to copy your answers, communicating exam answers to other students during an exam, attempting to use notes or other aids during an exam, or tampering with an exam after it has been corrected and then returning it for more credit.
    Do not copy any code from or share code with other students! If you do so, you will be in violation of the UCI Policies on Academic Honesty. It is your responsibility to read and understand these policies. Note that any instance of academic dishonesty will be reported to AISC for disciplinary action and is cause for a failing grade in the course.
  • Course Material:

    All course material is for use in the context of this course only. Selling, preparing, or distributing for any commercial purpose course lecture notes or video or audio recordings of any course is prohibited unless authorized by the University in advance and explicitly permitted by the course instructor in writing. The unauthorized sale or commercial distribution of course notes or recordings by a student is a violation of these Policies whether or not it was the student or someone else who prepared the notes or recordings.

Course Summary:

Date Details Due