0% found this document useful (0 votes)
86 views54 pages

Real Time Systems

The document outlines the course contents for a Real Time Systems course. It covers topics like introduction to real-time systems, computer hardware requirements, languages for real-time applications, operating systems, design of real-time systems, and development methodologies. It also lists the textbook and reference books for the course. The first chapter introduces real-time systems, including their historical background, definitions, classifications, time constraints, and types of programs. Real-time systems must process information within a specified time interval to control external processes that operate on their own timescales.

Uploaded by

vtestv30
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)
86 views54 pages

Real Time Systems

The document outlines the course contents for a Real Time Systems course. It covers topics like introduction to real-time systems, computer hardware requirements, languages for real-time applications, operating systems, design of real-time systems, and development methodologies. It also lists the textbook and reference books for the course. The first chapter introduces real-time systems, including their historical background, definitions, classifications, time constraints, and types of programs. Real-time systems must process information within a specified time interval to control external processes that operate on their own timescales.

Uploaded by

vtestv30
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/ 54

Real Time Systems

Course Contents
Real Time Systems
Part-A

Introduction To Real-time Systems (Unit-1)


Concepts Of Computer Control (Unit-2)
Computer Hardware Requirements For RTS (Unit-3)
Languages For Real-time Applications (Unit-4)

Part-B
Operating Systems (Unit-5 & 6)
Design Of RTSS General Introduction (Unit-7)
RTS Development Methodologies (Unit-8)

Text Book
Real - Time Computer Control- An Introduction, Stuart Bennet, 2nd Edn. Pearson
Education. 2005
REFERENCE BOOKS:
1. Raj Kamal, Embedded systems Architecture, Programming and Design, TMH.
2. Philip, A. Laplante,
Real-Time Systems Design and Analysis an Engineers
Handbook second edition, PHI publications

Chapter - 1
Introduction to Real-time Systems

Introduction to Real-time Systems

Historical background
RTS Definition
Classification of Real-time Systems
Time constraints
Classification of Programs

Historical Background
The earliest proposal to use a computer
operation in real time as part of control
system was made in a paper by Brown
and Campbell in 1950
The first digital computers developed
specifically for real-time control were for
airborne operation,
1954 a Digitrac digital computer was
successfully used to provide an automotive
flight and weapons control system

Historical Background
The digital computers developed which had
failed to be adopted by the military
The computer and electronic systems
manufactures who were looking to extend their
markets and to find other outlets
Initiated for the use of digital computers in
process and manufacturing industries
Hence the application of digital computers to
industrial control began in the late 1950s.

Historical Background
The first industrial installation of a computer
system was in September 1958 when the
Louisiana Power and Light station in Sterling,
Louisiana. However, this was not a control
system
The first industrial computer control installation
was made by the Texaco Company on 15March
1959, who installed an RW-300 (RamoWooldridge Company) system at their Port
Arthur refinery in Texas. The refinery was run
under closed-loop control

Computer used in control of plant

Historical Background
During 1957-8 the Maonsanto Chemical Company, in cooperation with its Ramo-Wooldridge Company, studied
the possibility of using computer control and
Commissioning of the plant began on 20 January 1960
and closed-loop control was achieved on 4 April 1960
after an almost complete rewrite of the control algorithm part of
the program.

In 1959-60, and some 40 other systems based on the


RW-300 were supervisory control systems used for
steady-state optimization calculations to determine the
set points for standard analog controllers;
that is, the computer did not control directly the movement of the
valves or other plant actuators

Historical Background
The first direct digital control (DDC) computer system was
the Ferranti Argus 200 system installed in November 1962
at the ICI ammonia-soda plant at Fleetwood, Lancashire,
UK
The Ferranti Argus 200 used a ferrite core store to hold the
control program rather than a rotating drum store as used
by the R W -300 computer. The program was held in a
programmable read-only memory (PROM).
In addition to improved reliability the Argus system
provided more rapid memory access than the drum stores
of the RW-300
So the beginning of the second phase of application of
computers to real- time control.

Historical Background
Cost of the system
could be justified only if both DDC and supervisory
control were performed by the one computer.
There will be increase in complexity of the program
Hence increase in development time and storage space
Types of memory Core and Drum

The solution appeared to lie in the development of


general purpose real-time operating systems
and high-level languages

Historical Background
RTOS
In the late 1960s real-time operating systems were
developed
Various PROCESS FORTRAN compilers made their
appearance.
The problems and the costs involved in attempting to do
everything in computer led users to retreat to smaller
systems
Development of minicomputer (DEC PDP-8, PDP-II, Data
General Nova, Honeywell 316, etc.) The cost of the
minicomputer was small enough to avoid the need to load
a large number of tasks onto one machine:
By 1970 concept of having two computers on the
system, one simply acting as a stand-by in the event of
failure

Historical Background
Throughout the 1970s the technological developments in
integrated circuits and construction techniques for circuit
boards led to

an increase in reliability of computer systems,


a large reduction in cost and
major increases in processor power and
the amount of fast memory that could be provided.

These changes began to force attention more and more


on the problems of writing correct and dependable
software.
The advent of the microprocessor in 1974 led to and
made economically possible the use of distributed
computer control systems.

COMPUTER CONTROL SYSTEM

Consider A simple plant a hot-air blower

Without computer control system


With computer control system

Simple plant a hot-air blower

COMPUTER CONTROL SYSTEM


The hot-air blower shown in Figure
A centrifugal fan blows air over a heating
element and into a tube.
A thermistor bead is- placed at the outlet end of
the tube and forms one arm of a bridge circuit.
The amplified output of the bridge circuit is
available at B and provides a voltage, in the
range 0 to 10 volts, proportional to temperature.
The current supplied to the heating element can
be varied by supplying a dc voltage in the range
0 to 10 volts to point A

COMPUTER CONTROL SYSTEM


The position of the air-inlet cover to the
fan is adjusted by means of a reversible
motor.
A Potentiometer wiper is attached to the
air-inlet cover and the voltage output is
proportional to the position of the cover.
Micro switches are used to detect when
the cover is fully open and fully closed.

COMPUTER CONTROL SYSTEM


In manual mode the heat output and fan cover
position can be adjusted using potentiometers.
Switches are provided to operate the fan and
heater.
Panel lights indicate fan on, heater on, cover
fully open, cover fully closed and auto/manual
status.
The desired output temperature is set by the
operator using a slider potentiometer, the setting
of which can be read by the computer.
The operation can also adjust the fan operation.

COMPUTER CONTROL SYSTEM


The operation of this simple plant using a
computer requires that software be
provided to support monitoring, control
and actuation of the plant.

A computer control hot-air blower

A Generalised Computer System

Computer control system with HW/SW interface

DAC

ADC

r(t) = set point,


c(t) = controlled variable,
e(t) = r(t) c(t) = error, and
m(t) = manipulated variable.

Continuous feedback control system

Communication Devices- KBD, Display, LAN Printer


Communication
Interface

Communication
tasks

Computer control system with HW/SW interface

Real Time System


Three systems aircraft, nuclear plant, and airline
reservations
Are these real-time systems?
YES. are real-time because they must process
information within a specified interval
The fundamental definitions of real-time systems
engineering can vary depending on the resource
consulted.
A system is a mapping of a set of inputs into a set of
outputs

Real Time System

A system with n inputs and m outputs

A real-time system
reads inputs from the plant and
sends control signals to the plant at times
determined by plant operational
considerations -not at times limited by the
capabilities of the computer system.

Real Time System

Typical real-time control system including inputs from sensors and


imaging devices and producing control signals and display
information
Definition: Any system, in which the time at which the output is produced is
significant. This is usually because the input corresponds to some movement
in the physical world, and the output has to relate to that same movement.
The lag from input time to output time must be sufficiently small for acceptable

Real Time System

A classic representation of a real-time system as a


sequence of jobs to be scheduled.
Real-time program, a program for which the
correctness of operation depends both on the logical
results of the computation and the time at which the
results are produced.

Real Time System


A real-time system is one whose logical
correctness is based on both the correctness of
the outputs and their timeliness

RTS
RTS features
A common feature of real-time systems and
embedded computers is that the computer is
connected to the environment within which it is
working by a wide range of interface devices and
receives and sends a variety of stimuli
These external processes all operate in their own
time-scales and the computer is said to operate in
real time if actions carried out in the computer relate
to the time-scales of the external processes

Real Time System


The system is said to be clock based and
the operations are carried out according to
a time schedule. Or it may be defined in
terms of events called event based
Synchronization between the external
processes and the internal actions (tasks)
carried out by the computer may be defined in
terms of the passage of time, or the actual
time

Real Time System


Interactive system
The relationship between the actions in the
computer and the system is much more
loosely defined. Typically, the requirement is
that a set of operations in the computer
should be completed within a predetermined
time. The majority of communication tasks fall
into this category.

RTS classification based on


Clock-based Tasks (cyclic, periodic)
Event-based Tasks (aperiodic)

Time Constraints
Clock based Tasks -------Time component
Eg. A process plant operates in real time
Plant time constants (a time constant is a measure of the time taken
by a plant to respond to a change in input or load and is used as a
characteristic of the plant).
Time constants may be measured in hours for some chemical
processes or in milliseconds for an aircraft system.
For feedback control the required sampling rate will be dependent
on the time constant of the process to be controlled.
The shorter the time constant of the process, the faster the required
sampling rate. The computer which is used to control the plant must
therefore be synchronised to real time and must be able to carry out all
the required operations -measurement, control and actuation - within
each sampling interval.

Time Constraints
Synchronisation
Is usually obtained by adding a clock to the computer system
-normally referred to as a real-time clock -and using a signal
from this clock to interrupt the operations of the computer at
some predetermined fixed time interval.

Time Stamping
The clock interrupt is frequently used to keep a clock and
calendar so that the computer system is aware of both the time
and the date.
Clock-based tasks are typically referred to as cyclic or periodic
tasks where the terms can imply either that the task is to run
once per time period T (or cycle time T), or is to run at exactly T
unit intervals.

Time Constraints
Event-based Tasks (aperiodic)

There are many systems where actions have to be performed not at


particular times or time intervals but in response to some event.
Typical examples are:
turning off a pump or closing a valve when the level of a liquid in a
tank reaches a predetermined value
or switching a motor off in response to the closure of a microswitch
indicating that some desired position has been reached.
Event-based systems are also used extensively to indicate alarm
conditions and initiate alarm actions,
for example as an indication of too high a temperature or too great a
pressure.

The specification of event-based systems usually includes a


requirement that the system must respond within a given maximum
time to a particular event.

Time Constraints
Event-based systems normally employ interrupts
Some small, simple systems may use polling;
that is, the computer periodically asks (polls) the
various sensors to see if action is required.

Events occur at non-deterministic intervals and


event-based tasks are frequently referred to as
aperiodic tasks.

Time Constraints
Interactive systems
Interactive systems probably represent the
largest class of real-time systems
systems as automatic bank tellers; reservation
systems for hotels, airlines and car rental companies;
computerised tills, etc.

The real-time requirement is usually expressed


in terms such as 'the average response time
must not exceed...'.
For example, an automatic bank teller system might
require an average response time not exceeding 20
seconds.

Types
Real-time systems are often reactive or embedded
systems.
Reactive systems are those in which scheduling is driven
by ongoing interaction with their environment;
for example, a fire-control system reacts to buttons
pressed by a pilot.
Embedded systems are those that are found in a system
For example,
a modern automobile contains many embedded computers that
control fuel injection, airbag deployment, braking, climate control,
and so forth.
household items such as televisions, stereos, washing machines,
even toys contain embedded computers.
sophisticated systems such as aircraft, spacecraft, and industrial
machines must contain many embedded, reactive computer
systems.

Types
A soft real-time system is one in which
performance is degraded but not destroyed
by failure to meet response-time constraints
batch-oriented system for example,
grade processing at the end of a semester
a bimonthly payroll run
word-processing program should respond to
commands within a reasonable amount of
time (e.g., 1 second),

Types
Systems where failure to meet
response-time constraints leads to complete
and catastrophic system failure are called
hard real-time systems.
A hard real-time system is one in which
failure to meet a single deadline may lead
to complete and catastrophic system
failure

Types

Types
Firm real-time systems are those
systems with hard deadlines where
some arbitrarily small number of
missed deadlines can be tolerated.
A firm real-time system is one in which
a few missed deadlines will not lead
to total failure, but missing more than
a few may lead to complete and
catastrophic system failure

Types
It is a principal goal of real-time systems
engineering to find ways to transform
hard deadlines into firm ones, and firm
ones into soft ones.
Real-time computing Support for
environments in which response time
to an event must occur within a
predetermined amount of time. Realtime systems may be categorized into
hard, firm and, soft real time.

Time Constraints
A hard time constraint obviously represents a
much more severe constraint on the performance
of the system than a soft time constraint
Such systems present a difficult challenge both
to hardware and to software designers.
Most real-time systems contain a mixture of
activities that can be classified as
clock based,
event based, and
interactive with both hard and soft time
constraints (they will also contain activities
which are not real time).

Time Constraints

tc(i) the interval between the i and i-1 cycles,


te(i) the response time to the ith occurrence of event e,
ts the desired periodic (cyclic) interval,
Te the maximum permitted response time to event e,

Time Constraints

Ta the average permitted response time to event e


measured over some time interval T,
n the number of occurrences of event e within the time
interval T, or the number of cyclic repetitions during the time
interval T,
a a small timing tolerance.

CLASSIFICATION OF PROGRAMS
The importance of separating the various
activities carried out by computer control
systems into
real-time
non-real-time tasks

subdivide real-time tasks into the two


different types
Hence arises the different levels of
difficulty of designing and implementing
the different types of computer program

CLASSIFICATION OF PROGRAMS
Three types of programming
Sequential
Multi-tasking
Real-time

CLASSIFICATION OF PROGRAMS
Sequential
In classical sequential programming actions are strictly
ordered as a time sequence:
The behavior of the program depends only on the effects
of the individual actions and their order
the time taken to perform the action is not of
consequence. Verification, therefore, requires two kinds
of argument:
1. that a particular statement defines a stated action; and
2. that the various program structures produce a stated sequence
of events.

CLASSIFICATION OF PROGRAMS
Multi-tasking
A multi-task program differs from the classical sequential
program in that the actions it is required to perform are
not necessarily disjoint in time;
several actions to be performed in parallel.
the sequential relationships between the actions
program may be built from a number of parts (processes
or tasks are the names used for the parts) which are
themselves partly sequential,
executed concurrently and which communicate through
shared variables and synchronisation signals.

CLASSIFICATION OF PROGRAMS
Real-time
A real-time program differs from the previous types
in that,
its actions not necessarily being disjoint in time
the sequence of some of its actions is not
determined by the designer but by the
environment -that is, by events occurring.

CLASSIFICATION OF PROGRAMS
The design of real-time software is significantly
more difficult than the design of sequential
software
Early high-level languages were sequential in
nature and they did not allow direct access to
many of the detailed features of the hardware.
Need for Real-time features had to be built into
the operating system
Assembly language

RTOS availability

Device - RTOS

You might also like