0% found this document useful (0 votes)
33 views

Components in Real-Time Systems: Building Reliable Component-Based Systems

This chapter discusses components for real-time systems. It covers characteristics of real-time systems like tasks, scheduling, and limited resources. It also discusses real-time component models including application-specific models and the IEC 61131-3 standard. The chapter outlines the design process for component-based real-time systems including top-level design, scheduling analysis, and ensuring components meet timing requirements.

Uploaded by

NayanaKumar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
33 views

Components in Real-Time Systems: Building Reliable Component-Based Systems

This chapter discusses components for real-time systems. It covers characteristics of real-time systems like tasks, scheduling, and limited resources. It also discusses real-time component models including application-specific models and the IEC 61131-3 standard. The chapter outlines the design process for component-based real-time systems including top-level design, scheduling analysis, and ensuring components meet timing requirements.

Uploaded by

NayanaKumar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 34

Page 1

Building Reliable Component-based Systems


Chapter 13 -Components in Real-Time Systems
Chapter 13

Components in Real-Time Systems



Page 2
Building Reliable Component-based Systems
Chapter 13 -Components in Real-Time Systems


Overview
Introduction
Characteristics and challenges of real-time systems
Real-time component models
Designing component-based real-time systems
Composition of components
Example: RT components in Rubus OS

Page 3
Building Reliable Component-based Systems
Chapter 13 -Components in Real-Time Systems
Introduction
Embedded computers
Medical control equipment, mobile phones, and vehicle
control systems.
Most of such embedded systems can also be
characterized as real-time systems.
They must usually meet stringent specifications for
safety, reliability, limited hardware capacity etc

Page 4
Building Reliable Component-based Systems
Chapter 13 -Components in Real-Time Systems
Characteristics and Challenges of RTS
Real-time systems are computing systems in which the
meeting of timing constraints is essential to
correctness.
If the system delivers the correct answer, but after a
certain deadline, it could be regarded as having failed.

Page 5
Building Reliable Component-based Systems
Chapter 13 -Components in Real-Time Systems
Tasks
Real-time systems can be constructed of sequential
programs, but typically they are built of concurrent
programs, called tasks.
Tasks are usually divided into:
Periodic tasks: consist of an infinite sequence of
identical activities, called instances, which are invoked
within regular time periods.
Non-periodic : are invoked by the occurrence of an
event.

Page 6
Building Reliable Component-based Systems
Chapter 13 -Components in Real-Time Systems
Scheduling
Offline scheduling:
The scheduler has complete knowledge of the task set
and its constraints.
Online scheduling:
Make their scheduling decisions during run-time.
Deadline:
Is the maximum time within which the task must
complete its execution with respect to an event.
Real-time systems are divided into two classes, hard
and soft real-time systems

Page 7
Building Reliable Component-based Systems
Chapter 13 -Components in Real-Time Systems
Limited Resources
Common CBSE technologies (JavaBeans, CORBA and
COM) are seldom used as they:
Require excessive processing requirements
Require excessive memory requirements
Provide unpredictable timing characteristics

Page 8
Building Reliable Component-based Systems
Chapter 13 -Components in Real-Time Systems
System Level Analysis
At system level we analyze to determine if the system
composed fulfils the timing requirements.
Several different mature analysis methods exist, for
example, analysis for priority-based systems and pre-
run-time scheduling techniques

Page 9
Building Reliable Component-based Systems
Chapter 13 -Components in Real-Time Systems
Real-time Component Models
Using a standard operating system in a real-time
application, such as windows NT must be done
carefully, as it was designed to be used so.

Page 10
Building Reliable Component-based Systems
Chapter 13 -Components in Real-Time Systems
Application-specific Component Models
Maintain a component library which the application
engineer can use when developing an application.

In addition to infrastructure components, domain
specific component models, which in fact have been
used for many years for certain domains must be
considered.

Page 11
Building Reliable Component-based Systems
Chapter 13 -Components in Real-Time Systems
IEC 61131-3 Application Structure

Global and direct variables
Access path
Execution
control path
Variable
access path
FB
Task
Program Program
FB FB
Task
Program
Task
Program
FB FB
Task
Resource Resource
Configuration
Communication Function
Function
Block
Variable

Page 12
Building Reliable Component-based Systems
Chapter 13 -Components in Real-Time Systems
A Configuration in IEC 61131-3
Encapsulates all software for an application and
consists of one or several resources which provide the
computational mechanisms.

Page 13
Building Reliable Component-based Systems
Chapter 13 -Components in Real-Time Systems
A Program in IEC 61131-3
A program is written in any of the languages proposed
in the standard, for example:
Instruction lists
Assembly languages
Structured text
A high level language similar to Pascal
Ladder diagrams
Function block diagrams (FBD)

Page 14
Building Reliable Component-based Systems
Chapter 13 -Components in Real-Time Systems
Function Block Diagram
A simple function block diagram representing a feedback control loop.

FB
1


FB
2


Page 15
Building Reliable Component-based Systems
Chapter 13 -Components in Real-Time Systems
A Port-based Object Approach
The model is based upon the development of domain-
specific components which maximize usability,
flexibility and predictable temporal behavior.
Independent tasks are the bases for the PBO model.
Whenever a PBO needs data for its computation, it
reads the most recent information from its in-ports,
irrespective of its producer.
The PBOs are in their nature periodic and the system
can be analyzed using traditional schedulability analysis.

Page 16
Building Reliable Component-based Systems
Chapter 13 -Components in Real-Time Systems
A Port-based Object
Port-based object
Variable
input ports
Variable
output ports
Resource ports for communication
with sensors and actuators
Configuration parameters

Page 17
Building Reliable Component-based Systems
Chapter 13 -Components in Real-Time Systems
Designing Component-based RTS
System specification
Top-level design
Detailed design
Scheduling / interface
check
Obtain components
timing behavior on
target platform
System verification
Final product
Component
library
Create specifications for
the new components
Implement and verify
new components using
classical development
methods
Add new
components
to library
Architecture analysis

Page 18
Building Reliable Component-based Systems
Chapter 13 -Components in Real-Time Systems
Top-level Design
The first stage of the development process involves de-
composition of the system into manageable
components

Page 19
Building Reliable Component-based Systems
Chapter 13 -Components in Real-Time Systems
Detailed Design
At this stage a detailed component design is performed,
by selecting components to be used from the candidate
set.

Page 20
Building Reliable Component-based Systems
Chapter 13 -Components in Real-Time Systems
Architecture Analysis
At this stage it is time to check that the system under
development satisfies extra-functional requirements
such as:
Maintainability
Reusability
Modifiability
Testability

Page 21
Building Reliable Component-based Systems
Chapter 13 -Components in Real-Time Systems
Scheduling
At this point we must check that the temporal
requirements of the system can be satisfied, assuming
time budgets assigned in the detailed design stage.

In other words, we need to make a schedulability
analysis of the system based on the temporal
requirements of each component

Page 22
Building Reliable Component-based Systems
Chapter 13 -Components in Real-Time Systems
WCET Verification
Performing a worst-case analysis can either be based
on measurements or on a static analysis of the
source code.

What is more interesting in the test cases is the
execution time behavior shown as a function of input
parameters as shown in the following slide.

Page 23
Building Reliable Component-based Systems
Chapter 13 -Components in Real-Time Systems
An Execution Time Graph

Execution time
Input
domain 1 domain 2 domain 3
The execution time shows different values for the different
input sub-domains.

Page 24
Building Reliable Component-based Systems
Chapter 13 -Components in Real-Time Systems
Maximum execution time per sub-domain

Execution time
Input
domain 1 domain 2 domain 3

Page 25
Building Reliable Component-based Systems
Chapter 13 -Components in Real-Time Systems
Implementation of New Components
New components; Those not already in the library must
be implemented. The designer of the component has
two requirements:
The functional requirements
The assigned time budget

Page 26
Building Reliable Component-based Systems
Chapter 13 -Components in Real-Time Systems
System Build and Test
Finally, we build the system using old and new
components.
We must now verify the functional and temporal
properties of the system obtained.
If the verification test fails, we must return to the
relevant stage of the development process and correct
the error.

Page 27
Building Reliable Component-based Systems
Chapter 13 -Components in Real-Time Systems
Component Library
Is the most central part of any CBSE system as it
contains binaries of components and their descriptions.
A component library containing real-time components
should provide the following:
Memory requirements
WCET test cases
Dependencies
Environment assumptions

Page 28
Building Reliable Component-based Systems
Chapter 13 -Components in Real-Time Systems
Composition of Components


Component 1
(C
1
)

Component 2
(C
3
)

Component n
(C
2
)
in1_C
new

in2_C
new

in3_C
new

in4_C
new

in_C
1

in2_C
n

in1_C
2

in2_C
2

out_C
1

out_C
2

out1_C
n

out2_C
n

out1_C
new

out2_C
new

out3_C
new

New Component (C
new
)

Page 29
Building Reliable Component-based Systems
Chapter 13 -Components in Real-Time Systems
End-To-End Deadlines
End-to-end deadlines
Are set such that the system requirements are fulfilled in
the same way as the time budgets are set
Should be specified for the input to and output from the
component since the WCET cannot be computed since
its parts may be executing with different periods.

Page 30
Building Reliable Component-based Systems
Chapter 13 -Components in Real-Time Systems
Specification Of Timing Attributes
We specify virtual timing attributes of the composed
component, which are used to compute the timing
attributes of sub-components, ie:

IF virtual period is set to P,
THEN the period of a sub-component A should be f
A
* P
AND the period of B is f
B
* P,
WHERE f
A
and f
B
are constants for the composed
component, which are stored in the component library


Page 31
Building Reliable Component-based Systems
Chapter 13 -Components in Real-Time Systems
RT Components in Rubus OS
Rubus:
Is one of a few real-time operating systems currently
available which have some concept of components.
Is a hybrid operating system, in the sense that it
supports both pre-emptive static scheduling and fixed
priority scheduling.

Page 32
Building Reliable Component-based Systems
Chapter 13 -Components in Real-Time Systems
A Task and Its Interfaces
The timing requirements are specified by release-time,
deadline, WCET and period

Task: BrakeLeftRight
Period: 50 ms
Release time: 10 ms
Deadline: 30 ms
Precedes: outputBrakeValues
WCET: 2 ms

oil pressure
speed
.
brake left wheel
brake right wheel
Task state information

Page 33
Building Reliable Component-based Systems
Chapter 13 -Components in Real-Time Systems
A Composed System in the Red Model of Rubus
The task depicted below is required to execute before
the outputBrakeValues task, (i.E. Task BrakeLeftRight
precedes task outputBrakeValues).



Component:
BrakeLeftRight

oil pressure
speed
brake left wheel
brake right wheel
State information
input 1
input 2

Component:
OutputBrakeValues

State information

Page 34
Building Reliable Component-based Systems
Chapter 13 -Components in Real-Time Systems
Composition of Components in Rubus
Task:
BrakeLeftRight
oil
pressure
speed
brake left
brake right
Task state information
Task:
OutputBrakeValues
Task state information
Component: BrakeSystem
pressure
speed

You might also like