Minor Degree:Time-Triggered Reliable Systems Engineering
About Lesson

Course No.:4

Course (Category)

Code

Course Name

Teaching Scheme (Hrs/week)

Credits Assigned

L

T

P

O

E

L

T

P

Total

MDM4

Engineering Reliable  Time Triggered Systems

3

2

3

8

3

1

4

Examination Scheme

Component

ISE (%)

MSE (%)

ESE (%)

Total

MDEC45

 

Theory

20

20

60

100

Laboratory

80

20

100

                             

 

Pre-requisite Course Codes, if any.

Advanced Time-Triggered Systems Design

Course Objective: To develop the ability to create software for safety-critical systems designed according to Safety Integrity Levels (SIL) 0 to 3, using Time-Triggered Architectures, involves gaining a solid understanding of both the principles of safety-critical software engineering and the specifics of Time-Triggered systems.

Course Outcomes (CO): At the end of the course students will be able to

MDEC44.1

Understand, Apply, Create and Analyze code for Redundancy: For SIL 2 and above, you’ll need to design for redundancy (e.g., dual-channel architecture) to ensure that a failure in one channel does not result in system failure.

MDEC44.2

Understand, Apply Create and Analyze code for Fault Tolerance: Understand how Time-Triggered Architectures can provide fault tolerance through time-based checks and fault isolation.

MDEC44.3

Understand, Apply Create and Analyze code for Error Detection and Handling: Learn how to implement mechanisms such as watchdog timers, integrity checks, and redundancy management to detect and handle failures.

MDEC44.4

Understand, Apply Create and Analyze code for Diagnostic Coverage: A significant aspect of SIL certification, ensuring that the system can detect and respond to faults appropriately.

MDEC44.5

Relate and evaluate  the design for compliance with international safety standards e.g. IEC 61508, ISO 26262, DO-178C to name a few

     

 CO-PO Correlation Matrix (3-Strong, 2-Moderate, 1-Weak Correlation)

 

PO1

PO2

PO3

PO4

PO5

PO6

PO7

PO8

PO9

PO10

PO11

PO12

MDEC44.1

3

3

3

3

3

3

 

 

 

 

 

 

MDEC44.2

3

3

3

3

3

3

 

3

 

 

 

 

MDEC44.3

3

3

3

3

3

3

 

 

 

 

 

 

MDEC44.4

3

3

3

3

3

3

 

 

 

 

 

 

MDEC44.5

3

3

3

3

3

3

3

3

3

3

3

3

BLOOM’S Levels Targeted 

Remember√

Understand√

Apply√

Analyze√

Evaluate√

Create√

 Theory Component

Module No.

Unit No.

Topics

Ref.

Hrs.

1

 

Title

Introduction

1

04

1.1

A simple TTC scheduler

2

Title

Foundations of reliable systems

1

08

2.1

Polling and buffering

2.2

Data storage and data transfers

2.3

Interacting with peripherals

3

Title

Tasks and peripheral management

1

14

3.1

Interacting with peripherals

3.2

Diverse and Balanced tasks

3.3

Processor software state and Shared Clock and GALS system

4

Title

Modelling TTC designs

1

03

4.1

Modelling with tick lists

4.2

Modelling shared clock systems

5

Title

Monitoring TTC designs

1

13

5.1

Performing POST’s and BIST’s

5.2

Making use of iWDT(internal watchdog timer) and WaranTTor unit

5.3

Monitoring task execution times and Task execution sequences, Selecting MCU’s for your system

6

Self Study

Participants have to read the reference material to dig out information from the reference material and the online resources to  design the given systems as per the given specifications .

Online resources and R.3

*42

Total (*Not included)

42

Laboratory Component. (Each  Laboratory experiment is a design problem needing at least 6hrs of development time or 3 practical sessions each)

Sr. No

 Title of the Experiment

1

Create a TTC scheduling mechanism:

·         Build the project with the required .c and .h files with the requisite function prototypes

·         Create the required functions for the scheduler

·         Test the scheduler with some dummy tasks with different task arrival times

2

Register Configuration checks

·         Use the scheduler created at Sr. No.1 to configure the various registers of the like the Systick timer, watchdog timer  and UART register for correct configuration.

·         Build code to use the scheduler for checking the configuration of the various registers before application start

 

3

 

Duplicated variables

·         Use the scheduler created at Sr. No.1 to create duplicate of each critical variable to verify that the configuration is not changed and is as per the requirement.

·         Write code to compare the duplicated variables with the original variables to ensure that there is no change in the values.

·         Apply this technique to check the configuration registers of used peripheral as well.

 

4

Mode change :Processor in abnormal state

·         Use the Scheduler at Sr. No. 1 to write code for two processor states viz:

·         Processor in normal state

·         Processor in abnormal state

·         Conduct tests to ensure that the application is run only if the processor is in normal state.

5

Buffered outputs

·         Use the Scheduler at Sr. No.1 to create output buffering.

·         Check the task times and ensure proper buffering is done at the output to ensure that task times become independent of the time it takes to send data to the output.UART could be used here.

Text Books 

Sr. No

Title

Edition

Authors

Publisher

Year

1

Engineering Reliable Embedded Systems

2nd

Michael J. Pont

SafeTTy Systems

2016

 Reference Books 

Sr. No

Title

Edition

Authors

Publisher

Year

1

Patterns of Time Triggered Embedded Systems

1st

Michael J. Pont

Pearson

2014

2

The C programming Language

2nd

Dennis Ritchie and Brian Kernighan

Pearson education

2015

3

MISRA C :Guidelines

MISRA.ORG.UK

MISRA

2012

Online Resource:

         1.    https://developer.arm.com/documentation/dui0552/a/preface/about-this-book

  1. https://www.st.com/resource/en/reference_manual/cd00171190-stm32f101xx-stm32f102xx-stm32f103xx-stm32f105xx-and-stm32f107xx-advanced-arm-based-32-bit-mcus-stmicroelectronics.pdf
  2. https://www.keil.arm.com/cmsis

You cannot copy content of this page