NWI-I00155
Design of Embedded Systems
Course infoSchedule
Course moduleNWI-I00155
Credits (ECTS)6
CategoryMA (Master)
Language of instructionEnglish
Offered byRadboud University; Faculty of Science; Informatica en Informatiekunde;
Lecturer(s)
Coordinator
prof. dr. J.J.M. Hooman
Other course modules lecturer
Examiner
prof. dr. J.J.M. Hooman
Other course modules lecturer
Lecturer
prof. dr. J.J.M. Hooman
Other course modules lecturer
Contactperson for the course
prof. dr. J.J.M. Hooman
Other course modules lecturer
Lecturer
drs. H.C.W. Kuppens
Other course modules lecturer
Academic year2019
Period
KW1-KW2  (02/09/2019 to 02/02/2020)
Starting block
KW1
Course mode
full-time
Remarks-
Registration using OSIRISYes
Course open to students from other facultiesYes
Pre-registrationNo
Waiting listNo
Placement procedure-
Aims
Students are able:
  • To reason about schedulability of real-time tasks and to devise appropriate scheduling strategies.
  • To develop small applications on a real-time operating system, using the available primitives for scheduling, mutual exclusion and interrupt handling.
  • To apply a systematic model-based development method to design a relatively small embedded system using appropriate tools.
  • To reflect on the characteristics of embedded systems and the use of model-based techniques.
Content
A large part of the functionality of many devices is realized by software. The development of this embedded software is far from trivial, for instance, because it has to interact with its hardware environment, sensor information is not perfect, it has to satisfy real-time requirements, there are memory or power limitations, and faults have to be tolerated.
This course addresses the model-based development of embedded software, from specification to implementation. The emphasis is on hands-on experience by means of exercises on a real-time operating system and a concrete case study with real-time and fault-tolerant aspects.
Level

Presumed foreknowledge
Basic programming skills using the programming languages C and Java.
Test information
To pass this course the following is required:
  • For the first part of the course, correct solutions to exercises on scheduling and real-time operating systems.
  • For the second part of the course, a solution to the larger case study, with: (1) a report about the work on a case study and an evaluation of the approach, and (2) a demo of the final result. The final score is the mean of the score for these two parts.
  • Specifics

    Topics
    The main topics of this course are:

    • Characteristics of embedded systems
    • Scheduling theory
    • Real-time operating systems
    • Requirements definition
    • Model-based design
    • Deployment of software on hardware
    • Development tools and code generation
    • Real-time operating systems

    Test information
    To pass this course the following is required:

    • For the first part of the course, correct solutions to exercises on scheduling and real-time operating systems.
    • For the second part of the course, a solution to the larger case study, with: (1) a report about the work on a case study and an evaluation of the approach, and (2) a demo of the final result.

    The final score is the mean of the score for these two parts.

    Prerequisites
    Basic programming skills using the programming languages C and Java.

    Required materials
    To be announced
    Relevant literature will be distributed during the course.

    Instructional modes
    Course occurrence

    Lecture

    Tutorial

    Zelfstudie

    Tests
    Assignments
    Test weight1
    Test typeAssignment
    OpportunitiesBlock KW2, Block KW3

    Final assignment
    Test weight1
    Test typeAssignment
    OpportunitiesBlock KW2, Block KW3