Foundations of Embedded Systems
This site is an interactive guide to the theory and practice of computing systems that interact with the physical world. The main content of the site are the pre-recorded videos, the draft textbook, and the auto-graded exercises. Use the menu (above) to navigate to a topic.
Recent Livestreamed Discussions
(Use the menu to navigate to the relevant pre-recorded videos and textbook chapters which have the core content. The livestream sessions primarily go over the results of the self-assessment exercises, clarify questions raised by students taking the course, and provide the opportunity for peer-to-peer discussions of the content.)
Upcoming Livestreams (Fall 2022)
Technical Topic Highlight
RISC-V Processor Design Project
The RISC-V processor design project provides a hands-on introduction to modifying and improving the design of a 32-bit embedded processor core (RV32I) on the iCE40 Ultra Plus FPGA. Participants work in groups of three to investigate design improvements of the RV32I core and to measure the effect of those improvements on power and energy efficiency, time efficiency, and FPGA resource usage efficiency.
What Students Say About the Course
Here’s a sampling of feedback provided anonymously by students in the official departmental end-of-course surveys for the University of Cambridge courses 4B25 (Embedded Systems) and GB3 (RISC-V Processor Design) from which this site evolved.
Running a Hands-On Laboratory Course Remotely
FPGA power dissipation measurements on the iCE40 UP5k FPGA, using the MDP evaluation board. Measurements using (on the different boards) a Tektronix MDO4104C in DVM mode and a Keithley 2450.