Introduction to Real-Time Systems - LET627

  7.5 hec, Quarter 4, 2017/18

This web page functions both as a course description sheet and as a medium for distribution of new information regarding the course. The information will be updated dynamically, so please visit this web page regularly. For general information regarding the course please consult the syllabus page at the Student Portal.

News

 

Staff

Examiner and lecturer: Jan Jonsson

Lab responsible: Jan Jonsson

Laboratory assistants: Sven Knutsson, Linus Aronsson, Oskar Lenschow, Lars Andersson, Aron Bengtsson, Elena Marzi, Tobias Rosengren

Detailed contact information can be found here.

Organization

The course encompasses lectures, exercise sessions, special sessions and a laboratory assignment.

The lectures aim at introducing fundamental theories and concepts as well as a programming paradigm, and demonstrating how theory and paradigm are applied.

The exercise sessions focus on the specific topics covered during the main lectures. At each session, selected parts of the course contents are highlighted, and solutions to relevant problems are demonstrated.

The special sessions are a complement to the lectures and exercises. Here, it is possible to get additional help with the laboratory assignment regarding, for example, software design methods, functionality of development tools or music theory. It also offers an opportunity to discuss solutions to exercise problems or old exam problems.

In the laboratory assignment each student group should implement the software for an embedded real-time application running on stand-alone hardware system, that should later be interconnected by a bus network and perform a collective task. The laboratory sessions start in study week 2. At the end of the course the students present their project at a seminar and document it in a written report.

A current, and detailed, schedule for the activities mentioned above can be found on the schedule page.

Within the framework of the laboratory assignment, in collaboration with English (LSP580), the course will include training in oral and written proficiency. To that end there will be three common activities: a topic essay, a project report and a project presentation. The grading of these activities will be done according to the guidelines in LSP580, while their contents will be given by LET627. The submission of the topic essay and project report will be administrated by LET627.

Aim and content

This course will give a general introduction to small embedded and distributed real-time systems. It will provide experience of some important applications for microcomputer systems, training in C-program development for small real-time systems consisting among other things of nodes connected to a CAN bus.

After the course the students shall be able to:

The following concepts will be described in different levels in the course: task, task communications, critical regions, semaphores, mutual exclusion and synchronization, deadlock, timing constraints ("soft/hard" systems), scheduling, time- and event-trigged systems, schedulability analysis for systems with static and dynamic task priorities, distributed real-time systems, and data communications for small embedded real-time systems.

The course describes the implementation of a small real-time kernel for a microcomputer system. The course also includes use of arrays and queues in C-programs in connection with the study of a real time kernel.

A laboratory assignment and a final project report gives experience of software development for embedded systems.

Important Dates

  •  
Mon   Mar 19 First lecture, 13.15 - 15.00 in Gamma
  •  
Mon   Mar 26 : Deadline - registration to project group
  •  
Mon   Apr 23 : Deadline - submission of topic essay
  •  
Fre   May 18 : Deadline - submission of draft project report
  •  
Wed   May 23 : Project presentations (with LSP580)
  •  
Sat  May 26 : Written exam, afternoon, campus Lindholmen
  •  
Mon   Jun 4 : Deadline - submission of full project report
  •  
Mon   Jun 11 : Deadline - final approval of full project report

Examination

The student is evaluated through a final written exam (4.5 hec) and a compulsory laboratory assignment (3.0 hec).

The final grade, according to the scale Fail (U) or Passed with grades 3 - 5, is given based on the grades for the written exam and the laboratory assignment.

Permitted aids at the written exam are: the compendium J. Nordlander: Programming with the TinyTimber kernel and a Chalmers-approved calculator.

Additional information regarding the written exam can be found here.

Additional information regarding the laboratory assignment can be found here.

Your progress regarding the different examination objectives can be viewed in PingPong.

Course literature

 
(LEC)  

Lecture notes. Department of Computer Science and Engineering, Chalmers, 2018.
Can be downloaded from the lectures and exercises pages.

(TXT)  

Recommended reading (not mandatory, but useful for gaining both deeper and broader topic knowledge.)

  • Realtidssystem för högskolans ingenjörsutbildningar. R. Johansson & R. Snedsbøl, 2004. ISBN: 91-89280-21-0.
    Can be purchased at Kokboken. Reading guidelines available on the lectures page

  • Selected texts from archival journals, conference proceedings and books.
    Can be downloaded from the lectures page.

(EXC)  

Exercise compendium. Department of Computer Science and Engineering, Chalmers, 2012.
Can be downloaded from the resource page.

(LAB)  

Development tools and tutorials related to the laboratory assignment.
Can be downloaded from the resource page.

Course Evaluation

One way that you can contribute to improving the quality and contents of your education is to participate in the course evaluation process. If you have comments or suggestions for improvements regarding the course please contact one of the student representatives listed below.

  •  
John Mellard Buhian (TIDAL)
  •  
Oskar Hammargren (TIDAL)
  •  
Christopher Höglind (TIDAL)
  •  
Robert Sjöberg (TIDAL)
  •  
David Wilkins (TIDAL)

Minutes from mid-quarter course evaluation meeting can be found here.

Read more about the course evaluation process at Chalmers here.