National Institute of Technology Rourkela

राष्ट्रीय प्रौद्योगिकी संस्थान राउरकेला

ଜାତୀୟ ପ୍ରଯୁକ୍ତି ପ୍ରତିଷ୍ଠାନ ରାଉରକେଲା

An Institute of National Importance

Syllabus

Course Details

Subject {L-T-P / C} : CS6414 : Real-Time Systems Design { 3-0-0 / 3}

Subject Nature : Theory

Coordinator : Prof. Durga Prasad Mohapatra

Syllabus

Introduction to Real-Time systems, applications of Real-Time systems, basic model of Real-Time systems, characteristics of Real-Time systems, types of Real-Time systems: hard, firm, soft, timing constraints, modelling timing constraints. (5 hours)
Real-Time task scheduling: basic concepts, clock driven scheduling, table driven scheduling, cyclic, schedulers, hybrid schedulers, event driven scheduling, EDF Scheduling, RMA, DMA, resource sharingamong RT tasks, Priority inversion, Priority Inheritance Protocol, Highest Locker Protocol, Priority Ceiling Protocol. (7 hours)
Introduction to Fault Tolerant Computing: Basic concepts and Fault tolerant scheduling of tasks Faults and their manifestations, Fault/error modelling, Reliability, availability and maintainability analysis, System evaluation, performance reliability trade-offs. System level fault diagnosis, Hardware and software redundancy techniques. Fault tolerant system design methods, Mobile computing and Mobile communication environment, Fault injection methods, Software fault tolerance, testing of fault tolerant software, fault modeling, built in self-test, data compression, error correcting codes, simulation of software/hardware, fault tolerant system design, CAD tools for design for testability. (14 hours)
Real-Time Embedded system, Need of well tested and debugged RTOS, Introduction to C/OS II. Case Studies of programming with RTOS: Smart card embedded system, Hardware and Software co-design: specification and design of an embedded system use of software tools for development of an embedded system. Recent advances in embedded applications. (10 hours)

Course Objectives

  • To explain the features of a real-time application and explain different task scheduling algorithms in real-time systems.
  • To discuss different fault-tolerance techniques available for real- time systems.
  • To demonstrate and explain the use of simulated software to develop and test the fault tolerant models.
  • To discuss the concept of embedded systems and facilitate the use of various software tools for development of embedded systems.

Course Outcomes

After reading this subject, students will be able to: <br />1. Understand the requirements of a real-time application and analyze the performance of different task scheduling algorithms for real-time systems. <br />2. Understand the basic concepts of fault-tolerance and different fault-tolerance techniques available for real- time systems. <br />3. Use simulated software to develop and test different fault tolerant models. <br />4. Understand the concept of embedded systems and use various software tools for development of embedded systems.

Essential Reading

  • R. Mall, Real-Time Systems, Pearson , 2007
  • P. A. Laplante, Real-Time Systems Design & Analysis, Willey , 2011

Supplementary Reading

  • S. V. Iyer & P. Gupat, Embedded Real-Time System Programming, Tata McGraw Hill , 2004
  • R. Kamal, Embedded System Architecture, Programming and Design, Tata McGraw Hill , 2007