Aplicaciones de Sistemas de
Tiempo Real
Dr. Pedro Mejía Alvarez
Cinvestav-IPN, Sección de Computación,
Mexico
Dr. Pedro Mejia Alvarez
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Seccion de Computacion 1
Contenido
•
•
•
•
•
•
•
Elementos de un Sistema de Tiempo Real.
Tipos de Sistemas en Tiempo Real.
Arquitecturas de Sistemas de Tiempo Real.
Ejemplo de Planificación.
Aplicaciones de Sistemas de Tiempo Real.
Dificultades en el Diseno.
Consideraciones en el Diseno.
Dr. Pedro Mejia Alvarez
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Seccion de Computacion 2
Elementos de un sistema en
tiempo real.
Comunicaciones
E/S
Digital
Software de Tiempo-Real
S.OP
tarea
tarea tarea
E/S
Analógico
Medio
Ambiente
Dr. Pedro Mejia Alvarez
Otras
Computadoras
Reloj
Computadora
Otras
E/S
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Seccion de Computacion 3
Arquitecturas de Tiempo Real
Sistema en Tiiempo Real Distribuido.
Arqutecturas homogeneas o heterogeneas.
Redes de area local, y topologias de red.
Protocolos de comunicaciones:Ethernet,
Token Ring
Modelo OSI.
Redes FFDI, X-25, ATM.
E/S
Digital
Comunicaciones
Software de Tiempo-Real
E/S
Analógico
Microcontroladores y sistemas embebidos.
DSP’s, PLC’s.
Buses de multiprocesadores:VMEBUs,Multibus,FutureBus
Arquitecturas RISC, Transputers.
Uniprocesadores, Multiprocesadores.
Memorias chache, DMA’s.
Medio
Ambiente
Dr. Pedro Mejia Alvarez
Otras
Computadoras
Reloj
Computadora (HW)
Otras
E/S
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Seccion de Computacion 4
HW y SW para Manejo de Tiempo Real
• HW.
–
–
–
–
–
Reloj.
Procesador de Interrupciones.
Timers.
Watchdog.
Procesador de comunicaciones.
• SW.
–
–
–
–
–
–
Retrasos de procesos: absolutos y relativos.
Calendarios.
Timeouts.
Clock package en ADA
Especificación de tiempos: Caracterización.
Chequeo de tiempos para tolerancia a fallos
Dr. Pedro Mejia Alvarez
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Seccion de Computacion 5
Arquitecturas de Tiempo Real
• El diseno de arquitecturas de tiempo real involucra 2
aspectos:
• Nivel de Nodo: cada procesador debe proveer velocidad y
predecibilidad en la ejecucion de tareas de tiempo real,
manejo de interrupciones, e interaccion con el mundo
externo.
• Nivel de Sistema. en este nivel las comunicaciones y la
tolerancia a fallos son 2 aspectos que hacen dificil la
predecibilidad. De cualquier manera, espectos aspectos son
inevitables.
Dr. Pedro Mejia Alvarez
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Seccion de Computacion 6
Ejemplo de un sistema en tiempo real.
Actividades en una computadora de automobil.
Control de
Velocidad
C=4ms.
T=20ms.
D=5ms.
Control de
combustible
Control de
Frenado
C=40ms.
T=80ms.
D=80ms.
C=10ms.
T=40ms.
D=40ms.
C=10ms.
Otro software
T=40ms.
no-critico
C=tiempo de computo (peor caso), T=Periodo de ejecucion, D=Plazo de respuesta
Dr. Pedro Mejia Alvarez
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Seccion de Computacion 7
Solucion Ciclica.
76
combustible-2
0
4
no
critico velocidad
frenado
14
64
vel.
* implica descomponer actividades
grandes en varias ejecuciones.
60 com
busti
ble-3
54
com
busti
ble-1 20
vel.
24
frenado
velocidad
Dr. Pedro Mejia Alvarez
combustible-2
Curso de Sistemas de Tiempo Real
44
CINVESTAV-IPN, Seccion de Computacion 8
Solucion Concurrente.
La solucion concurrente es mas simple de disenar y modificar.
task body speed is
begin
loop
speed_measurement;
next:=next+0.2
sleep_until_next;
end loop
end speed
task body fuel is
begin
loop
fuel_injection;
next:=next+0.2
sleep_until_next;
end loop
end speed
Dr. Pedro Mejia Alvarez
task body brake is
begin
loop
control_brakes;
next:=next+0.2
sleep_until_next;
end loop
end speed
task body non_critical is
begin
loop
perform computation;
end loop
end speed
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Seccion de Computacion 9
Aplicaciones de los Sistemas de
Tiempo Real
• Dominio Industrial
– Controlador de la planta
– Robot para tratamiento de material peligroso
• Uso militar
– Sistema de reconocimiento de blancos
automático
– Sistema de guiado de misiles y navegación
• Sistemas altamente críticos
– Plantas nucleares
– Sistemas de aviónica
Dr. Pedro Mejia Alvarez
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Seccion de Computacion 10
Aplicación
Interfase
Tubería
Lectura del
flujo de entrada
Medidor de
Flujo
Procesamiento
Tiempo
Salida de la
válvula
Válvula
Computadora
Un Sistema de control
de fluido simple
Dr. Pedro Mejia Alvarez
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Seccion de Computacion 11
Aplicación
Operador
de consola
Computadora
de control de producción
Producto
Partes
Máquina de
Herramientas
Manipuladores
Cinta
transportadora
Terminado
Un sistema de control de producción
Dr. Pedro Mejia Alvarez
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Seccion de Computacion 12
Sistema de Computo Embebido
Termoacoplador
Switch
Transductor
de Presion
ADC
T
P
Calentador

El objetivo es mantener la
temperatura y la presion de un
proceso quimico dentro de unos
limites predefinidos
Dr. Pedro Mejia Alvarez
ADC
S
Pantalla
DAC
Valvula de Bombeo
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Seccion de Computacion 13
Sistema de computo embebido de
control de produccion
Manipuladores
Cinta
transportadora
Computo
Máquina de
Herramientas
Computo
Computo
Manipuladores
Máquina de
Herramientas
Red de Area
Local
Computo
Computo
Computo
Dr. Pedro Mejia Alvarez
Curso de Sistemas de Tiempo Real
Cinta
transportadora
CINVESTAV-IPN, Seccion de Computacion 14
Sistema distribuido en tiempo real
S en sor rem oto
E sta cion 1
M on itore d e au d io
E sta cion 2
C ontrol d el rob ot
E sta cion 3
RED FD D I
N etw o rk
In te rfa c e
T racking
P rocessor
F u tu re B u s+
C o n tro lle r
S y stem
In te rfa c e
Dr. Pedro Mejia Alvarez
Curso de Sistemas de Tiempo Real
S ensor and
S ignal
P rocesssor
CINVESTAV-IPN, Seccion de Computacion 15
Dificultades en el diseño
• Diseño de la aplicación en tiempo real.
• Control de la concurrencia de procesos.
• Selección de la arquitectura de hardware que mejor
responda a la aplicación.
• Obtención de tiempos: Caracterización
– especificar los tiempos a los que las acciones deben
llevarse a cabo.
– especificar en cuanto tiempo debe completarse cada acción.
– responder a situaciones en las cuales no todos los tiempos
se cumplen
– responder a situaciones en las que los requisitos de tiempos
cambian dinámicamente.
Dr. Pedro Mejia Alvarez
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Seccion de Computacion 16
Consideraciones de Diseño
A quien afecta la introducción de Tiempo Real ?.
•
•
•
•
•
A los lenguajes, compiladores.
Al sistema operativo.
A la arquitectura de hardware.
A la metodología de diseño.
A la arquitectura del sistema
(HW/SW/Ambiente).
Dr. Pedro Mejia Alvarez
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Seccion de Computacion 17
Sistemas Operativos de Tiempo Real
•
•
•
•
•
•
•
•
•
•
•
•
•
Estructura del sistema operativo.
Modelos de tareas, estados de las tareas, servicios y transiciones.
Procesos y threads. Cambio de contexto.
Algoritmos de Planificacion: Ciclica, RMS, EDF.
Inversion de prioridad y protocolo de techo de prioridad.
Tareas aperiodicas y Servidor esporadico.
Sincronizacion de procesos.
Comunicación entre procesos.
Relojes y timers.
Memoria compartida, locking, reserva.
E/S sincrona y asincrona.
Transacciones en tiempo real y manejo de archivos.
Manejo de interrupciones y device drivers.
Dr. Pedro Mejia Alvarez
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Seccion de Computacion 18
Bases de datos en tiempo real
•
•
Uno de los principales problemas con las bases de datos es su naturaleza
inpredecible sobre sus tiempos de respuesta.
Esta inpredecibilidad es debida a:
–
–
–
–
la naturaleza de los querys.
accesos a disco.
contension de recursos.
la inabilidad de conocer cuantos objetos debe accesar un query y cuanto tiempo le
tomara.
•
Restricciones importantes:
•
•
•
planificacion de transacciones que cumplan plazos de respuesta.
semantica explicita que permita especificar manejo de transacciones con tiempos.
chequeo del sistema de base de datos de cumplir con requerimientos de tiempos en sus
transacciones.
Dr. Pedro Mejia Alvarez
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Seccion de Computacion 19
Comunicaciones en tiempo real:
Formulacion del problema
• A conjunto de mensajes
generados desde un nodo
fuente hacia un nodo destino y
conectados a traves de una red
de topologia single/multihop
• Los mensajes deben de
cumplir las restricciones de
TR:end-to-end-scheduling
– Deadline, Periodicidad,
Modo, Guarantee type, TR
Hard/Soft,...
user
user
user
Dr. Pedro Mejia Alvarez
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN,
Seccion de Computacion 20
user
Planificacion de mensajes
• La planificacion de mensajes difiere de la planificacion del CPU en
que
– Retrasos en cadena, o implicaciones del bufer de la cadena
(efecto de la red)
– No siempre existe la nocion de listo para ejecucion.
– Se depende temporalmente de otros sitios
• Los mensajes arrivan de algun nodo especifico
• Los mensajes no siepre estan disponibles.
– Retrasos inpredecibles en el envio de mensajes.
– Dificultad en el control de acceso a la red.
– Pseudo Pre-emptive
Dr. Pedro Mejia Alvarez
Curso de Sistemas de Tiempo Real
CINVESTAV-IPN, Seccion de Computacion 21
Descargar

Aplicaciones de los Sistemas de Tiempo Real.