MSc in Electrical Engineering

Course Information Package

Course Unit TitleEMBEDDED SYSTEMS
Course Unit CodeAEEE575
Course Unit DetailsPhD Computer Science (Postgraduate level courses) - MSc Electrical Engineering (Technical Electives) - PhD Electrical Engineering (Postgraduate level courses) -
Number of ECTS credits allocated7
Learning Outcomes of the course unitBy the end of the course, the students should be able to:
  1. Evaluate the main constraints and trade-offs in embedded system design.
  2. Write detailed document and executable embedded system specifications.
  3. Develop applications on embedded processors (ARM) using assembly and/or high-level languages.
  4. Use programme traces and emulation tools to estimate performance, memory area and power consumption.
  5. Apply code transformations to optimize performance/area/power consumption.
Mode of DeliveryFace-to-face
PrerequisitesNONECo-requisitesNONE
Recommended optional program componentsNONE
Course Contents

Introduction to microprocessors for general purpose and embedded systems – Embedded microprocessor evolution – Design metrics and constraints (performance, power, cost, time-to-market) and design optimization challenges

Key embedded system technologies – Integrated Circuit technology – Microprocessor technology – CAD tool technology. Comparison of embedded system implementation options (Microprocessor/ DSP/FPGA/ASIC/Embedded platform) in terms of performance, cost (NRE and total), power consumption and time-to-market

Embedded system specification and modeling – Object-oriented specification (UML/C /SystemC)

Computer Architecture – Instruction sets – RISC vs. CISC – pipelining - The ARM microprocessor architecture

ARM assembly – ARM mode – Thumb mode - ARM and Thumb instruction set - ARM conditional execution

Processor I/O – Serial I/O – Busy/wait I/O – Interrupts – Exceptions – Traps – ARM memory mapped I/O

Caches – Memory Management Units – Protection Units – ARM cache and MMU

Programme design and analysis – DFGs – CDFGs – Compilers – Assemblers – Linkers – Basic compiler optimizations/code transformations – Measuring programme speed – Trace-driven performance analysis – Energy optimization – programme size optimization

Recommended and/or required reading:
Textbooks
  • Wayne Wolf, “Computers as components: Principles of embedded computing design”, Morgan Kaufmann Publishers, 2000
References
  • Andrew Sloss, Dominic Symes, Chris Wright, “ARM System Developer's Guide: Designing and Optimizing System Software”, Morgan Kaufmann, 2004
  • Frank Vahid, Tony D. Givargis, “Embedded System Design: A Unified Hardware/ Software Introduction”, Wiley, 2001
Planned learning activities and teaching methods

Students are taught the course through lectures (3 hours per week) in classrooms or lectures theatres, by means of traditional tools or using computer demonstration.

Auditory exercises, where examples regarding matter represented at the lectures, are solved and further, questions related to particular open-ended topic issues are compiled by the students and answered, during the lecture or assigned as homework.

Topic notes are compiled by students, during the lecture which serve to cover the main issues under consideration and can also be downloaded from the lecturer’s webpage. Students are also advised to use the subject’s textbook or reference books for further reading and practice in solving related exercises. Tutorial problems are also submitted as homework and these are solved during lectures or privately during lecturer’s office hours. Further literature search is encouraged by assigning students to identify a specific problem related to some issue, gather relevant scientific information about how others have addressed the problem and report this information in written or orally.

Students are assessed continuously and their knowledge is checked through tests with their assessment weight, date and time being set at the beginning of the semester via the course outline.

Students are prepared for final exam, by revision on the matter taught, problem solving and concept testing and are also trained to be able to deal with time constraints and revision timetable.

The final assessment of the students is formative and summative and is assured to comply with the subject’s expected learning outcomes and the quality of the course.

Assessment methods and criteria
Assignments20%
Group project 20%
Tests20%
Final Exam40%
Language of instructionEnglish
Work placement(s)NO