Fall 2017 - CMPT 433 D100

Embedded Systems (3)

Class Number: 7664

Delivery Method: In Person


  • Course Times + Location:

    Mo, We, Fr 12:30 PM – 1:20 PM
    SUR 5100, Surrey

  • Exam Times + Location:

    Dec 11, 2017
    8:30 AM – 11:30 AM
    SUR 3090, Surrey

  • Instructor:

    Brian Fraser
    1 778 782-8112
    Office: SUR 4112
  • Prerequisites:

    (CMPT 250 or CMPT 295) and CMPT 300.



The basics of embedded system organization, hardware-software co-design, and programmable chip technologies are studied. Formal models and specification languages for capturing and analyzing the behavior of embedded systems. The design and use of tools for system partitioning and hardware/software co-design implementation, validation, and verification are also studied.


Students will gain hands-on experience developing embedded applications on their own 32-bit single board computer (likely BeagleBone). Each student will purchase their own single board computer through the school during the first week of class instead of a required textbook (at similar in cost to a textbook). By the end of the course, students will be able to setup and use an embedded Linux build environment to develop embedded Linux applications. Students will also learn bare-metal development (no OS), Linux device driver creation, and be able to read basic hardware circuits. Students will demonstrate a mastery of embedded development on the course project by implementing a stand-alone product or by interfacing with a larger system.


- Embedded C and/or C++ programming.
- Embedded Linux cross-platform application development.
- Customizing and/or building the Linux kernel and root file system.
- Embedded application testing and cross-platform debugging.
- Linux device driver development and interfacing to the real-world.
- Bare metal embedded development (no OS) and low-level device control.
- Understand basic hardware circuits.


  • Assignments 30%
  • Project 30%
  • Quizzes 5%
  • Final exam 35%
  • Activities and weighting will be confirmed in the first week of lectures.


Students must attain an overall passing grade on the weighted average of exams in the course in order to obtain a clear pass (C- or better).



Reference Book:
Exploring Beaglebone, Derek Molloy, Wiley, 2015, 9781118935125

Registrar Notes:

SFU’s Academic Integrity web site http://students.sfu.ca/academicintegrity.html is filled with information on what is meant by academic dishonesty, where you can find resources to help with your studies and the consequences of cheating.  Check out the site for more information and videos that help explain the issues in plain English.

Each student is responsible for his or her conduct as it affects the University community.  Academic dishonesty, in whatever form, is ultimately destructive of the values of the University. Furthermore, it is unfair and discouraging to the majority of students who pursue their studies honestly. Scholarly integrity is required of all members of the University. http://www.sfu.ca/policies/gazette/student/s10-01.html