Course Title: Real Time Systems Design

Part A: Course Overview

Course Title: Real Time Systems Design

Credit Points: 12.00

Terms

Course Code

Campus

Career

School

Learning Mode

Teaching Period(s)

EEET1262

City Campus

Postgraduate

125H Electrical & Computer Engineering

Face-to-Face

Sem 2 2006,
Sem 1 2007,
Sem 1 2008,
Sem 1 2009,
Sem 1 2010,
Sem 1 2011,
Sem 1 2012,
Sem 1 2013,
Sem 1 2014,
Sem 1 2016

EEET1262

City Campus

Postgraduate

172H School of Engineering

Face-to-Face

Sem 1 2017,
Sem 2 2018,
Sem 2 2019,
Sem 2 2020,
Sem 2 2021,
Sem 2 2022,
Sem 2 2023,
Sem 2 2024

Course Coordinator: Dr Samuel Ippolito

Course Coordinator Phone: +61 3 9925 2673

Course Coordinator Email: samuel.ippolito@rmit.edu.au

Course Coordinator Location: 10.07.06


Pre-requisite Courses and Assumed Knowledge and Capabilities

You are expected to be reasonably competent in either C or C++ programming, having satisfactorily completed a course such as EEET2368 Network Fundamentals and Applications or equivalent studies. You should also have a basic working knowledge of UNIX like operating systems and commands, as well as the ability to program and debug within an integrated development environment (IDE) such as Eclipse or Visual Studio.


Course Description

This course covers the design and implementation of multi-threaded and real-time systems, with particular emphasis on real-time systems for control of industrial processes and for embedded systems based on ARMv7 and x86 architectures.

Contents of the course include:

  • Features and characteristics of real-time systems.
  • Concurrent processes and mutual exclusion operations.
  • Inter process communication and message passing between programs running on the same system or another system on the network. 
  • Analysis and design of real time systems.
  • Embedded systems design.
  • Real-time scheduling principles.

You will be required to demonstrate your understanding by applying your gained knowledge to a 5-6 week project using a commercial grade industrial real-time operating system and development environment.


Objectives/Learning Outcomes/Capability Development

Program Learning Outcomes 

This course contributes to the program learning outcomes for the following program(s):  

PLO 2. Demonstrate an advanced and integrated understanding of specialist bodies of knowledge within the engineering discipline
PLO 4. Apply advanced knowledge of established engineering methods in the analysis of complex problems in the  engineering discipline
PLO 5. Utilise advanced mathematics, software, tools and techniques, in the conduct of research into the design and analysis of complex engineering systems

For more information on the program learning outcomes for your program, please see the program guide.  

 


Upon completion of this course, you should be able to:

CLO1: Critically analyse and evaluate the characteristics of real-time systems, including their temporal constraints, reliability requirements and distributed computing architectures. 
CLO2: Design and implement real-time applications using operating system services for message passing, shared memory management and advanced synchronisation primitives for inter-process communication (IPC). 
CLO3: Apply formal methods to verify real-time system behaviour, including scheduling schemes, resource allocation and deadlock prevention.
CLO4: Develop and debug distributed real-time applications using industry-standard tools and synchronisation mechanisms to demonstrate competency in fault tolerant design and inter-process task coordination.
CLO5: Work effectively in a small team to develop a real-time system solution and professionally communicate technical concepts and implementation decisions through documentation and demonstration to professional and non-specialist audiences.
CLO6: Communicate research and critically evaluate current developments in real-time operating systems and distributed computing, synthesizing findings in a scholarly technical report.

 


Overview of Learning Activities

Student learning occurs through the following experiences and evaluation processes:

  • A series of 10 interactive (2 hour) recorded lectorials will guide you to important concepts and give you many practical hints for the design of real-time systems.
  • The laboratory work will help you to connect theory with practice.
  • The project is a problem-based learning activity that will require you to exercise many of the skills required for real-time design and implementation. It will also help develop your team skills and give you experience with an industry leading real-time operating system and associated development tools. The course resources (accessible from the Web) have links to on-line resources for you to access and expand your knowledge of the topics.


Overview of Learning Resources

The learning resources for this course include:

  • Recorded interactive lectorial with detailed notes provided online.
  • Electronic media (Linux based live ISO image) containing a real-time development environment will be made available to assist with independent study.
  • Various reference notes/books will be suggested: See the course guide Part B available at the start of classes for the list of recommended references.
  • Relevant embedded equipment and software will be made available in laboratories for use throughout the semester.
  • Supplementary course content (e.g. examples, etc.) will made available on-line

 


Overview of Assessment

Assessment tasks: 

Assessment Task 1: Laboratory Tasks 15% (5 x 3%) CLO1, CLO2 and CLO4

Assessment Task 2: Research Assignment 10% CLO1, CLO3 and CLO6

Assessment Task 3: Group Project 50% CLO1, CLO2, CLO3, CLO4, CLO5 and CLO6

Assessment Task 4: Laboratory Practical 25% CLO1, CLO2, CLO3 and CLO4