Course detail

Real-Time Systems (in English)

FIT-RTSaAcad. year: 2022/2023

Lectures of the course do present the problem of developing a real-time system complexly, in its full breadth and depth. They pay a special attention to comprehensibility and practical applicability of presented topics as well as to linking fundamental knowledge together. The topics are supported by case studies of real-time systems from various application domains (automotive, avionics, defense, vision, robotics, power and energy etc.), case studies of timed development means (specification and verification means and tools, platforms, programming languages, operating systems) as well as problems, their causes and solutions. Students will become acquainted with fundamentals and complexity of such a development and will be able to cope with typical development problems. Dedicated exercises allow students to gain basic skills to solve such problems. Students can deepen their skills further, through the semestral project.

Language of instruction

English

Number of ECTS credits

5

Mode of study

Not applicable.

Offered to foreign students

Of all faculties

Learning outcomes of the course unit

Students will get a general overview in the area of real-time systems and their development as well as in the area of real-time extensions of conventional, typically untimed, development means. Students will be able to specify requirements imposed on a real-time system, to model it and check its properties, to construct such a system by appropriate means (a hardware platform, operating system etc.) and to test it in operating conditions. Students will understand the principles and complexity of developing a (digital) system which meets the requirements for (continuous) real-time.
The students will be able to cope with the development cycle of real, typically hidden embedded cyber-physical, systems (such as engine or ABS control in a car, control of road/railway junctions and crossings, control of autonomous, adaptive, cooperative and/or collaborative systems) they may encounter in their everyday life. The students will link, deepen and extend their knowledge and skills from various, typically isolated, information technology areas (such as modeling and analysis, hardware, software, dependability, operating systems and languages) and will be able to see the areas from new perspectives.

Prerequisites

Knowledge of the basic principles of information technology. Advanced computer skills, intermediate communication and self-study skills in English; basic abstract, adaptive, analytical, logical and critical thinking skills, basic problem solving skills, basic programming skills.

Co-requisites

Not applicable.

Planned learning activities and teaching methods

Not applicable.

Assesment methods and criteria linked to learning outcomes

  • 5 short-range technical reports summarizing the solutions of 5 partial tasks from exercises (12 points max).
  • Written mid-term test (15 points max).
  • Project with defense and due-date submission of its solution (18 points max).
  • Wriiten exam (55 points max) - a minimum of 15 points is required to pass the exam.

Course curriculum

Not applicable.

Work placements

Not applicable.

Aims

To introduce and explore concepts, principles, methods and instruments as well as problems related to development of real-time systems, from their specification to their practical application. To provide students with a theoretical background and an understanding of the practical engineering issues raised by the development of real-time systems. To support the taught facts by real-world case studies, to motivate students to understand causes of problems and to discuss solutions of the problems. To give students knowledge and skills to develop a real-time system by practicing the gained knowledge during dedicated exercises and project topics.

Specification of controlled education, way of implementation and compensation for absences

  • Following activities are monitored: the attendance and activity during lectures, exercises and the progress of project-related works.
  • Skills of students are verified using the short-range technical reports, mid-term test, project and final exam. To pass the final exam, at least 15 points must be obtained; otherwise, the final exam will be evaluated by 0 points. 
  • A prospective reimbursement of absences caused by an obstacle in the study is going to be realized according to the nature of the obstacle and lessons involved, e.g. by setting a substitute term or assigning a separate (homework) task. A solution to other kind of absence is not arranged herein, i.e., it is neither excluded nor guaranteed.

Recommended optional programme components

Not applicable.

Prerequisites and corequisites

Not applicable.

Basic literature

Alur, R.: Principles of Cyber-Physical Systems. MIT Press, 2015. 446 p., ISBN 978-0-262-02911-7.
Baier, C., Katoen, J.-P.: Principles of Model Checking. MIT Press, 2008, 975 p., ISBN 978-0-262-02649-9.
Butazzo, G.: Hard Real-Time Computing Systems, Predictable Scheduling Algorithms and Applications. Springer, 2011, 524 p., ISBN 978-1-4614-0675-4.
Cottet, F., Delacroix, J., Kaiser, C., Mammeri, Z.: Scheduling in Real-Time Systems. John Wiley & Sons, 2002, 266 p., ISBN 0-470-84766-2.
Cheng, A. M. K.: Real-Time Systems: Scheduling, Analysis, and Verification. Wiley, 2002, 552 p., ISBN 0-471-18406-3.
Kopetz, H.: Real-Time Systems, Design Principles for Distributed Embedded Applications. Springer, 2011, 378 p., ISBN 978-1-4419-8236-0.
Laplante, P. A.: Real-Time Systems Design and Analysis. Wiley-IEEE Press, 2004, 528 p., ISBN 0-471-22855-9.

Recommended reading

Behrmann G., David A., Larsen K.G.: A Tutorial on Uppaal. In: Lecture Notes in Computer Science, vol 3185. Springer, Berlin, Heidelberg. SFM-RT, pp. 397-415, 2004. ISBN 978-3-540-23068-7.
Butazzo, G.: Hard Real-Time Computing Systems, Predictable Scheduling Algorithms and Applications. Springer, 2011, 524 p., ISBN 978-1-4614-0675-4.
David, A., Larsen, K.G., Legay, A. et al. Uppaal SMC Tutorial: In International Journal on Software Tools for Technology Transfer, 2015, Vol. 17, pp. 397-415. ISSN 1433-2787.
Lecture slides/notes available electronically - přednáškové materiály dostupné v elektronické podobě.
Olderog, E.-R., Dierks, H.: Real-Time Systems Formal Specification and Automatic Verification. Cambridge University Press, 2008, 344 p., ISBN 978-0521883337.

Wang, J.: Real-Time Embedded Systems. John Wiley & Sons, 2017, 310 p., ISBN 978-1118116173.
Williams, R.: Real-Time Systems Development. Butterworth-Heinemann, 2006, 320 p., ISBN 978-0-7506-6471-4.

Elearning

Classification of course in study plans

  • Programme IT-MGR-1H Master's

    branch MGH , 1 year of study, summer semester, recommended course

  • Programme IT-MSC-2 Master's

    branch MGMe , 0 year of study, summer semester, compulsory-optional

  • Programme IT-MSC-2 Master's

    branch MBI , 0 year of study, summer semester, elective
    branch MBS , 0 year of study, summer semester, elective
    branch MGM , 0 year of study, summer semester, elective
    branch MIN , 0 year of study, summer semester, elective
    branch MIS , 2 year of study, summer semester, elective
    branch MMM , 0 year of study, summer semester, elective
    branch MPV , 0 year of study, summer semester, elective

  • Programme MITAI Master's

    specialization NADE , 0 year of study, summer semester, elective
    specialization NBIO , 0 year of study, summer semester, elective
    specialization NCPS , 0 year of study, summer semester, elective
    specialization NEMB , 0 year of study, summer semester, compulsory
    specialization NGRI , 0 year of study, summer semester, elective
    specialization NHPC , 0 year of study, summer semester, elective
    specialization NIDE , 0 year of study, summer semester, elective
    specialization NISD , 0 year of study, summer semester, elective
    specialization NISY up to 2020/21 , 0 year of study, summer semester, elective
    specialization NMAL , 0 year of study, summer semester, elective
    specialization NNET , 0 year of study, summer semester, elective
    specialization NSEC , 0 year of study, summer semester, elective
    specialization NSEN , 0 year of study, summer semester, elective
    specialization NSPE , 0 year of study, summer semester, elective
    specialization NVER , 0 year of study, summer semester, elective
    specialization NVIZ , 0 year of study, summer semester, elective
    specialization NISY , 0 year of study, summer semester, elective

  • Programme IT-MSC-2 Master's

    branch MSK , 0 year of study, summer semester, compulsory-optional

  • Programme MITAI Master's

    specialization NEMB up to 2021/22 , 0 year of study, summer semester, elective

Type of course unit

 

Lecture

26 hod., optionally

Teacher / Lecturer

Syllabus

  1. Introduction to real-time systems. Motivation to study, organization stuff.
  2. Real-time support in standards, languages and tools. 
  3. Modeling, analysis, design and validation of real-time systems. Formal specification and verification of real-time systems.
  4. Hardware, software and computational aspects of real-time systems.
  5. Time, clocks and orders. Time measurement and bases, clock synchronization.
  6. Real-time model. Event-driven and time-triggered concepts.
  7. Temporal relations in systems.
  8. Dependability concepts. Load and fault hypotheses, anomalies and robustness of real-time systems.
  9. Real-time communication. Multi/many-core and distributed real-time systems.
  10. Real-time kernels and operating systems.
  11. Scheduling and synchronization of real-time tasks. 
  12. Power and energy awareness in real-time systems.
  13. Challenges, open problems, trends and visions in the area of real-time systems. Summary and conclusion.

Exercise in computer lab

10 hod., optionally

Teacher / Lecturer

Syllabus

  1. Acquaintance with available hardware and software equipment.
  2. Practice in modeling and analysis of real-time systems; specification and verification of timed systems.
  3. Practice in time measurement, clock synchronization and real-time system overheads on a particular hardware.
  4. Constructing and analyzing a simple real-time system in time triggered and event driven manners.
  5. Constructing, analyzing and testing a complex real-time system by means of a real-time operating system.

Project

16 hod., optionally

Teacher / Lecturer

Syllabus

  • An individual or a group project.

Elearning