EEEN40280 Digital & Embedded Systems

Academic Year 2024/2025

This module deals with the design and implementation of embedded systems, involving a processor, software (or firmware) and other hardware. Topics include architectures and interfacing of typical processors, programming in C and assembly language to interact with hardware in real time, design and verification of systems involving a mix of hardware and software.

This module requires an ability to program in the C language - the language most often used for efficient embedded system software. It also requires some hardware design skills: design at register transfer level, hardware description language (ideally Verilog) and verification using a simulator.

The module will have an emphasis on problem-based learning. Design assignments will require significant time during the trimester, and will involve working in a team and collaborating with others. Assessment of these assignments will be largely based on written reports, supplemented by interview where necessary.

Show/hide contentOpenClose All

Curricular information is subject to change

Learning Outcomes:

On successful completion of this module, students should be able to:
1. Design a digital system involving an embedded processor and other hardware;
2. Write software for an embedded system;
3. Use appropriate software tools in the design and verification of such systems;
4. Work in a team and collaborate effectively with other members of the team;
5. Maintain proper documentation and communicate the results of their work.

Indicative Module Content:

1 - A brief introduction to embedded systems and to the module;
2 - Programming in assembly language, using a small microcontroller as an example;
3 - Microcontroller hardware, using the same small microcontroller as an example;
4 - Interfaces in embedded systems, including serial bus protocols;
5 - Programming in C for embedded systems (assuming knowledge of C programming);
6 - Processor bus structures, in general and using AMBA examples;
7 - Review of hardware design at register transfer level and hardware description language (assuming prior knowledge);
8 - Microcontroller hardware and instruction set, using a larger microcontroller as an example;
9 - A brief introduction to caches as used in embedded systems;
10 - A brief introduction to operating systems, with emphasis on embedded systems;
11 - Embedded system design.

Student Effort Hours: 
Student Effort Type Hours
Specified Learning Activities


Autonomous Student Learning










Approaches to Teaching and Learning:
This module uses a mix of lectures and problem-based learning. Some reasonably large design assignments will account for more than half of the total workload in this module - that will be a mix of hands-on work in the laboratory and design work that can be done elsewhere.

Lectures will be in person and attendance will be expected.

For students coming through the Advance Centre, special arrangements can be made, if necessary, to allow mostly remote learning, but attendance in person will be needed for the final exam in May.
Requirements, Exclusions and Recommendations
Learning Requirements:

Digital system design at register transfer level is required. Knowledge of a hardware description language is also required. Verilog or SystemVerilog is preferred, but VHDL is acceptable. As an example, the module EEEN30190 Digital System Design provides the required prior knowledge.

Computer programming in C is required. As an example, the module EEEN20010 Computer Engineering provides the required prior knowledge.

Module Requisites and Incompatibles
Not applicable to this module.
Assessment Strategy  
Description Timing Component Scale Must Pass Component % of Final Grade In Module Component Repeat Offered
Exam (Open Book): In-person open-book exam, allowing access to one textbook and one folder of notes. End of trimester
2 hr(s)
Standard conversion grade scale 40% No


Assignment(Including Essay): A series of design assignments, where most of the work takes place during scheduled sessions in the laboratory. Assessed on the basis of written reports, code and achievement of goals. Week 3, Week 7, Week 12 Graded No



Carry forward of passed components
Resit In Terminal Exam
Summer No
Please see Student Jargon Buster for more information about remediation types and timing. 
Feedback Strategy/Strategies

• Feedback individually to students, post-assessment
• Group/class feedback, post-assessment

How will my Feedback be Delivered?

For assignments, students will receive written feedback on the report and code submitted. For the terminal exam, students may request to view their scripts.

Name Role
Dr Barry Cardiff Lecturer / Co-Lecturer