Back to Module List

CMPSMD01 - EMBEDDED SYSTEMS

Module Code:
CMPSMD01
Department:
Computing Sciences
Credit Value:
20
Level:
M
Organiser:
Dr. Mark Fisher
Embedded processors are at the core of a huge range of products e.g. mobile telephones, cameras, passenger cars, washing machines, DVD players, medical equipment, etc. The embedded market is currently estimated to be worth around 100x the ‘desktop’ market and is projected to grow exponentially over the next decode. This module considers the design and development of real-time embedded system applications for commercial off the shelf (COTS) processors running real time operating systems (RTOS) such as ARM-RT, uCLinux etc.

 The library catalogue currently lists 43 records on Embedded Systems. A wide range of resources are also available via ARMs University Program website: http://www.arm.com/community/university 

Course texts:

Required Purchases

  1. Furber,S., (2000) ARM System-on-Chip Architecture, Pearson Education Ltd. . ISBN-13: 978-0-201-67519-1 
  2. Yaghmour,K. (2003) Building Embedded Linux Systems, O'Reilly

Possible Alternative Purchases 

  1. Catsoulis,J.(2003) Designing Embedded Hardware, O'Reilly, , ISBN 0-596-00362-5.  
  2. Heath,S., (2003) Embedded Systems Design, Newnes, . ISBN 0 7605 5546 1.  
  3. Rusling,D., The Linux Kernel, available at: http://www.linuxhq.com/guides/TLK/tlk.html (last accessed: 19.11.09)  
  4. Corbet,J., (2005) Alessandro Rubini and Greg Kroah-Hartman, Linux Device Drivers, O'Reilly


 


Submission

Written coursework must be submitted by the deadline given in the assignment specification in accordance with the standard CMP practice. Students are advised to refer to the Guidelines and Hints on Written Work in CMP.

Deadlines

Coursework should be submitted before 23:59 on the deadline day. Paper copies can be submitted via the Hub drop boxes up to 22.00  in the LTS Hub, and there will be a ‘late box’ in the Library for submissions between 22.00 and midnight.

If coursework is handed in after the deadline day or an agreed extension:
 

 

Work submitted Marks deducted
On the day following the due date 10 marks
On either the 2nd or 3rd day after the due date 20 marks
On the 4th day after the due date and before the 20th day after the due date All the marks the work merits if submitted on time (ie no marks awarded)
After 20 working days Work will not be marked and a mark of zero will be entered


All extension requests will be managed through the LTS Hub. A request for an extension to a deadline for the submission of work for assessment should be submitted by the student to the appropriate Learning and Teaching Service Hub, prior to the deadline, on a University Extension Request Form accompanied by appropriate evidence. Extension requests will be considered by the appropriate Learning and Teaching Service Manager in those instances where (a) acceptable extenuating circumstances exist and (b) the request is submitted before the deadline. All other cases will be considered by a Coursework Coordinator in CMP.

 

Plagiarism

Plagiarism is the copying or close paraphrasing of published or unpublished work, including the work of another student; without due acknowledgement. Plagiarism is regarded a serious offence by the University, and all cases will be investigated. Possible consequences of plagiarism include deduction of marks and disciplinary action, as detailed by UEA's Policy on Plagiarism and Collusion.


Module specific:

  • To review of data-path and instruction-set architecture of modern RISC processors.
  • To describe in detail the MIPS and ARM processor architecture.
  • To investigate programming techniques for embedded systems.
  • Design, construct and analyse a small, concurrent, reactive real-time embedded system
  • Critically evaluate the requirements for embedded RTOS.
  • Review the structure of a RTOS and examine a number of industry standard systems
  • Investigate the role of open source embedded solutions (e.g. eLinux)
  • Introduce techniques for hardware interface and network services                                             

Transferable skills:

  • Ability to manage detail and think logically.

Subject specific:

  • Knowledge of the architecture and performance of RISC processors.
  • Knowledge of instruction formats and representations for the ARM processor.
  • Write assembly language programs for the ARM processor
  • Be competent in basic use of C for programming embedded systems.
  • Understand the role of development platforms and cross compilers in the development chain.
  • Design and implement a small concurrent real-time embedded system (e.g. Washing Machine controller)
  • Describe requirements for RTOS in Embedded applications
  • Understand structure of Embedded RTOS
  • Describe methods for process synchronisation and communication.
  • Appreciate issues of real-time scheduling.
  • Install and configure an eLinux kernel

Concepts will be introduced during lectures but the majority of learning outcomes will be addressed through practical laboratories using the ARM 7 SDK and RealView Development Suite (or an equivalent SDK/IDE).

Download weekly lectures, seminars, laboratory work, assignments, etc.

Total hours: 20 

Lectures: 10, hours: 2, Content (with provisional weekly schedule)

  1. Week 1 Introduction to Embeded Systems 
  2. Week 2 A short course on C: Part 1 
  3. Week 3 A short course on C: Part 2 
  4. Week 4 Assembly Language Programming 
  5. Week 5 General Purpose Input/Output 
  6. Week 6 USART
  7. Week 8 Real Time Systems 1 
  8. Week 9 Real Time Systems 2 
  9. Week 10 Scheduling Theory 
  10. Week 11 Interrupts 

Laboratory: 5, hours: 2, Content (with provisional weekly schedule)

  1. Getting Started with ARM 7 SDK and RealView Development Environment 
  2. Assembly language programming  
  3. Interfacing with peripherals: handling interrupts and exception 
  4. Downloading and installing a Linux kernel  
  5. Building a root file system for a target board  
  6. Design project

This module is assessed by examination (60%) and coursework (40%). The coursework takes the form of a mini project: Mini Project: E.g. Design and implementation of washing machine controller: 80% weighting

Setting of coursework:

Coursework will be posted on Blackboard  in week 2 and week 4. Blackboard managed tests go live immediately after the lecture and remain available for one week only. Questions must be answered within 1 hour - only one attempt is permitted.