Skip to main content

Unit information: Embedded and Real-Time Systems in 2020/21

Please note: you are viewing unit and programme information for a past academic year. Please see the current academic year for up to date information.

Unit name Embedded and Real-Time Systems
Unit code EENG34030
Credit points 10
Level of study H/6
Teaching block(s) Teaching Block 1 (weeks 1 - 12)
Unit director Dr. Nunez-Yanez
Open unit status Not open
Pre-requisites

EENG20400

Co-requisites

None

School/department School of Electrical, Electronic and Mechanical Engineering
Faculty Faculty of Engineering

Description including Unit Aims

Microprocessors are routinely embedded within the heart of modern electronic systems and this unit is designed to deal with the key topics concerned with implementing a microprocessor-based system and programming it to meet the real-time demands of embedded systems. The unit focuses on ARM technology and in this context microprocessors are described, their interconnect components explained and programming approaches discussed. Topics addressed include bus systems (e.g. ARM AHB, AXI), signalling and handshaking, arbitration, system-on-chip design and simulation with VHDL, serial and parallel data interfaces, analogue interfaces, programming input-output systems, interrupts, simple state machine schedulers, programming real-time systems, the real-time scheduler, and synchronising parallel processes. This unit will use Problem Based Learning (PBL) with an assessment consisting of 100% coursework. The assessment is formed by a set of realistic industry-focus problems gradually increasing in complexity. Some assessment components will involve system-on-chip design/simulation using VHDL and some practical programming work using a real time embedded system.

The hardware part of the unit focuses on power efficient processors from ARM (e.g. Cortex M0) and how these processors can be used to build embedded and real-time systems using FPGAs as the target implementation technology. FPGAs are introduced as a low-cost, high-performance custom computing platform suitable for Embedded and Real time Systems. The bus systems required to interface the processors with other peripherals are studied focusing on ARM AMBA AHB/APB and AXI interconnects. Practical work during this phase involves building a AHB system-on-chip around the Cortex M0 processor.

Intended Learning Outcomes

On successful completion of the unit a student will be able to:

  • Apply the design skills acquired during the prerequisites and best practice to construct a microprocessor-based system-on-chip using state of the art microcontrollers and system-on-chip intellectual property.
  • Explain how modern embedded systems work and the different implementation trade-offs available to the embedded system designer.
  • Describe the programming techniques required to operate a small-scale, multi-tasking, real-time system.
  • Assess the various mechanisms used to address the problem of process synchronisation in a pre-emptive, multi-tasking environment.
  • Formulate the need for operating system support to provide these mechanisms.
  • Explain the principles of embedded system design, operation and performance.

Teaching Information

Teaching will be delivered through a combination of synchronous and asynchronous sessions, including lectures, practical activities supported by drop-in sessions, problem sheets and self-directed exercises.

Assessment Information

Formative: Online Test 1

Summative: Coursework 1 (50%), Coursework 2 (50%) marked on a Pass/Fail marking scheme

Reading and References

Recommended:

  • Barrett, Steven F., & Pack, Daniel J., Embedded Systems – Design and Applications with the 68HC12 and HCS12, ISBN:0131401416
  • Burns, Alan & Wellings, Andy, Real-time Systems and Programming Languages: Ada 95, Real-Time Java and Real-Time POSIX, 3rd ed, ISBN:0201729881
  • Li, Quing & Yao, Caroline, Real-time Concepts for Embedded Systems, ISBN:1578201241
  • ARM Cortex M0 TRM Technical Reference Manual, ARM AMBA (Advanced Microprocessor Bus Architecture) specification (available in Blackboard ERTS unit)
  • Xilinx ISE, ModelSim tutorials (available in Blackboard ERTS unit)

Optional additional reading:

  • Douglass, Bruce, Doing Hard Time: Developing Real-Time Systems with UML, Objects, Frameworks and Patterns, ISBN:0201498375
  • Buttazzo, Georgio C., Hard Real-time Computing Systems: Predictable Scheduling Algorithms and Applications. ISBN:0387231374
  • P. Douglas “VHDL: programming by example” 4th edition, McGraw-Hill, 2002. (In the QB library )
  • S. Brown “Fundamentals of digital logic with VHDL design” , McGraw-Hill, 2000. (In the QB library )

Feedback