180 likes | 347 Views
1. Introduction. 1.1 Background 1.2 Real-time applications 1.3 Misconceptions 1.4 Issues in real-time computing 1.5 Structure of a real-time system. 1.1 Background. Definitions Real-time systems
E N D
1. Introduction 1.1 Background 1.2 Real-time applications 1.3 Misconceptions 1.4 Issues in real-time computing 1.5 Structure of a real-time system
1.1 Background • Definitions • Real-time systems • correctness of system operation depends on temporal characteristics as well as logical and functional characteristics • Timing constraints • deadline, period, execution time, etc. • Real-time applications • those that must satisfy timing constraints, typically, hard real-time Real-Time Systems (Shin)
Embedded computer systems • All embedded systems are real-time systems, but not all real-time systems are embedded systems. • real-time vs. embedded: sometimes, interchangeable (cf. rectangles vs. squares) • Real-time vs. General-purpose • Real-time computer systems differ from their general-purpose counterparts in two important ways. (1) They are much more specific in their applications. (2) The consequences of their failure are more drastic. Real-Time Systems (Shin)
Response time requirements for real-time applications response time 1 s Fire alarm 100 ms Medical diagnosis Process control systems and industrial automation 10 ms Robot controllers Speech and audio systems 1 ms Telemetry control 100 ms Network control 10 ms Flight simulation 1 ms 1 ns applications Real-Time Systems (Shin)
Brief history • 1950’s • 1956: computerized process control in a Texaco refinery • 1960’s • chemical industry, NASA • 1970’s • minicomputers, real-time executives • 1980’s • microcomputers, distributed control • 1990’s • parallel computers, open systems Real-Time Systems (Shin)
Task classes • hard vs. soft vs. firm real-time tasks • task value functions • periodic vs. aperiodic tasks • cf. sporadic tasks: aperiodic tasks with a bounded interarrival time • critical vs. noncritical tasks value soft firm 0 time hard deadline Real-Time Systems (Shin)
1.2 Real-Time Applications • Industry, defense, weapons • Nuclear plants • Process control • Patient monitoring • Fly-by-wire avionics, Spacecraft • Guided missile control • SCADA • Signal processing (e.g. radar) • Business • Real-time databases, OLTP • Multimedia applications (e.g. VOD) Real-Time Systems (Shin)
Simple digital control: Typical example • For sampled data systems under PID control • the mth output fm for the mth sampled input fm = fm-1 + Δfm where Δfm is the sum of the P(proportional), I(integral) and D(derivative) terms. • For example, Δfm = kp(εm – εm-1) + kiεm + kd(εm-2 εm-1 + εm-2) where kp, ki and kd are proportional coefficients for P, I and D, respectively, and εm = input_value – ref_value • Sampling is a periodic behavior. • sampling period periodic task • In multirate systems, the state is defined by multiple state variables whose periods may be different. Real-Time Systems (Shin)
Plant Actuator Sensor Computation (Control algorithm implementation) DAC ADC output value input value reference value Implementation with an infinite loop: An example initialize I/O ports, internal control variables; set timer to interrupt periodically with period T; at each timer interrupt, do obtain input; compute control output; send output to the plant; end do; Real-Time Systems (Shin)
Conveyer belt – An example conveyer electric motor speed counter interface actuator sensor alarm-detector ‘speed’ ‘adjust’ control computer Real-Time Systems (Shin)
An example: Software control structure of a flight controller Do the following in each 1/180-second cycle • Validate sensor data and select data source: in the presence of failure, reconfigure the system • Do the following 30-Hz avionics tasks, each once every six cycles: • keyboard input and mode selection • data normalization and coordinate transformation • tracking reference update • Do the following 30-Hz computation, each once every six cycles: • control laws of the outer pitch-control loop • control laws of the outer roll-control loop • control laws of the outer yaw- and collective-control loop • Do each of the following 90-Hz computations once every two cycles, using outputs produced by 30-Hz computations and avionics tasks as input • control laws of the inner pitch-control loop • control laws of the inner roll- and collective-control loop • Compute the control laws of the inner yaw-control loop, using outputs produced by 90-Hz control-law computations as input • Output commands. • Carry out built-in test. • Wait until the beginning of the next cycle. Real-Time Systems (Shin)
1.3 Misconceptions (Stankovic) • There is no science in real-time system design. • Advances in supercomputer hardware will take care of real-time requirements. • Real-time computing is equivalent to fast computing. • Real-time programming is assembly coding, priority interrupt programming, and device driver writing. • Real-time systems research is performance engineering. Real-Time Systems (Shin)
The problem in real-time system design have all been solved in other areas of computer science or operations research. • It is not meaningful to talk about guarantee-ing real-time performance because of imperfect software/hardware/environment. • Real-time systems function in a static environment. Real-Time Systems (Shin)
1.4 Issues in Real-Time Computing • Specification and verification • Task scheduling • Real-time operating systems • Real-time programming languages • Distributed real-time databases • Fault tolerance • Real-time system architectures • Real-time communication • Clock synchronization Real-Time Systems (Shin)
1.5 Structure of a Real-Time System • Logical view Environ- ment controlled process sensors job list clock trigger generator actuators execution display operator Real-Time Systems (Shin)
Schematic decomposition Low-rate cluster Peripheral cluster Central cluster computing unit data converters sensor and actuators Real-Time Systems (Shin)