Syllabus for |
|
LET625 - Introduction to real time systems |
|
Syllabus adopted 2014-02-07 by Head of Programme (or corresponding) |
Owner: TIDAL |
|
7,5 Credits |
Grading: TH - Five, Four, Three, Not passed |
Education cycle: First-cycle |
Major subject: Computer Science and Engineering, Electrical Engineering
|
Department: 37 - COMPUTER SCIENCE AND ENGINEERING
|
Teaching language: Swedish
Course module |
|
Credit distribution |
|
Examination dates |
Sp1 |
Sp2 |
Sp3 |
Sp4 |
Summer course |
No Sp |
0113 |
Project |
2,0 c |
Grading: TH |
|
|
|
|
2,0 c
|
|
|
|
|
0213 |
Examination |
5,5 c |
Grading: TH |
|
|
|
|
5,5 c
|
|
|
|
01 Jun 2016 am L, |
08 Apr 2016 am L, |
23 Aug 2016 pm L |
In programs
TIDAL COMPUTER ENGINEERING, Year 1 (compulsory)
Examiner:
Tekniklektor
Peter Lundin
Replaces
LET623
Real time system LET624
Introduction to real time systems
Eligibility:
In order to be eligible for a first cycle course the applicant needs to fulfil the general and specific entry requirements of the programme(s) that has the course included in the study programme.
Course specific prerequisites
Elementary knowledge in computer organization corresponding to the course LEU430 Fundamentals of Digital Systems and Computer (7.5 ECTS), LEU500 Machineoriented programming and in computer programming preferably in C.
Aim
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.
Learning outcomes (after completion of the course the student should be able to)
- Describe and understand the concepts of embedded system, process, parallel processes, shared resourced and distributed systems.
- Explain the concepts of critical regions, mutual exclusion, starvation, deadlock and synchronizing of processes.
- Describe and understand the general structure of and the function by a real-time kernel including semaphores for small embedded system.
- Explain the meaning of and the differences between the concepts of static respective dynamic scheduling.
- Develop program, composed of multiple processes, for small systems with support of a real-time kernel.
- Apply RMSA-analyses on small system composed of several well specified processes with arbitrary deadline.
- Use pointers and dynamic memory allocation in connection with development of C-programs for managing arrays and stacks.
- Describe the general structure and characteristics of the CAN protocol.
- Develop programs for a distributed real-time system consisting of nodes connected to a CAN-bus.
Content
The following concepts will be described in different levels in the course process: process communications, critical regions, semaphores, mutual exclusion and synchronizations, deadlock, memory management, time constraints (soft/hard ), scheduling, time- and event trigged system, RMSA-analyses, distributed real-time system and data communications for small embedded real-time embedded systems.
The course will specially describe the implementation of a small real-time kernel for a microcomputer system.
The course also includes use of arrays and stacks in C-programs in connection with exercises and studies of a real time kernel.
Some laboratory exercises and a final project assignment gives experience of software development for embedded systems.
Organisation
The course is organized into lectures, exercises, laboratory exercises and a project. Within the framework of the project and in collaboration with the course LSP580 English the course will include training in oral and written proficiency by a project report and a project presentation.
Literature
Advertised on the course homepage in PingPong two weeks before the course starts.
Examination
The course ends with a written exam. The final grade according to the scale Fail or Passed with grades 3-5 are given based on the written exam and the project assignment.