Está en la página 1de 26

Arquitectura de Sistemas de Tiempo Real (ASTR 2008/9).

tpbn@atc.us.es. 5 Ingeniera en Informtica.

Tema 1: Introduccin y conceptos bsicos.


Objetivos del tema: 1. Identificar las caractersticas que definen un sistema de tiempo real (STR). 2. Introducir algunos conceptos importantes en el tratamiento de SSTR. 3. Identificar los tipos de SSTR ms comunes. Bibliografa del tema: o o Liu, J. W. Real-Time Systems. Prentice Hall, 2000. Tema 1. (C) Burns, A., Wellings, A., Real Time Systems and Programming Languages. Segunda Edicin, Addison-Wesley, 1996. Tema 1.

ASTR 1. Ejemplo de un sistema de tiempo real (I).

Frenos ABS (Anti Block System) en un automvil: Evita una posible perdida del control de la direccin de un automvil cuando se frena.

Movimiento si giran las ruedas delanteras

Movimiento si las ruedas delanteras se bloquean debido a una frenada 2

ASTR 1. Ejemplo de un sistema de tiempo real (II).

Frenos ABS (Anti Block System) en un automvil. Diagrama de bloques.

Sensor pedal de freno

Actuador de freno

Control de frenada

Sensor de ngulo de giro

Sensor de velocidad

Hay un bloque de este tipo por rueda

Esto es una simplificacin

ASTR 1. Determinismo temporal (I).


Sistema de propsito general: Sus acciones siempre deben tener correccin lgica. Determinismo lgico.

Sistema de tiempo real:

Adems de determinismo lgico, las acciones de un STR deben realizarse en el momento adecuado, es decir, deben tener correccin temporal. Determinismo temporal.

Ejemplo (ABS): Evento externo El usuario pisa el pedal de freno. Respuesta del sistema Activar el actuador del freno. Correccin lgica y temporal: siempre se debe frenar antes de un tiempo determinado.

El determinismo temporal se puede dar a varios niveles.

ASTR 1. Determinismo temporal (II).

Un sistema de tiempo real es aquel en el que el tiempo de respuesta a estmulos externos es vital para el sistema [Kris 97]. Las restricciones temporales son una parte significativa de los requisitos del sistema. La influencia de los requisitos temporales puede variar mucho dependiendo de la naturaleza de la aplicacin:

Lmite

Utilidad

T. de respuesta mximo (TRmax) Funcin de utilidad (value function) del sistema cuando una respuesta retrasada invalida los resultados: Sistema ABS. 5

ASTR 1. Determinismo temporal (III).

En algunas aplicaciones, se pueden dar resultados vlidos aunque no se cumplan las especificaciones temporales: Tienen funciones de utilidad con el siguiente aspecto:

Lmite

Utilidad

T. de respuesta mximo (TRmax)

ASTR 1. Ejemplo de aplicaciones de tiempo real: Control de procesos (I).

Son aplicaciones en las que el computador acta sobre un proceso un proceso fsico externo para mantenerlo en un estado deseado.

Un ejemplo tpico es el control de la velocidad de un motor en lazo cerrado:

Actuador del motor Unidad potencia + Motor

Computador de control de velocidad del motor

Velocidad deseada

Operador

Sensor de posicin o velocidad angular

ASTR 1. Control de procesos (II).

Bucle tpico de control digital en lazo cerrado para controlar el estado de un proceso:

rk D/A uk Algoritmo o ley de control yk A/D A/D

Referencia r(t)

Actuador u(t) Proceso

Sensor y(t)

ASTR 1. Control de procesos (V). Caractersticas comunes.

De donde vienen las restricciones temporales?

Velocidad de muestreo correcta.

Velocidades bajas.

Sin degradacin grave.

Con degradacin grave.

ASTR 1. Control de procesos (VI). Caractersticas comunes.

Una actuacin incorrecta (lgica o temporalmente) puede ser peligrosa. Sistemas de E/S orientados a la adquisicin de datos de algn proceso fsico. Las medidas tienen un tiempo de validez. Las mediciones pueden estar dirigidas por tiempo o por eventos. Suelen ser necesarios procesos (SW o HW) de acondicionado de las mediciones y validacin. Los procesos de control pueden ser continuos (cclicos) o discretos (eventos).

Necesitan supervisin de la integridad de sistemas (datos adquiridos, actuaciones, ). En muchos casos es necesario tener mecanismos de control alternativos por si algn sensor, actuador o proceso falla.

10

ASTR 1. Ejemplo de aplicaciones de tiempo real: Sistemas multimedia (I).


Son aplicaciones orientadas al tratamiento de sonido y/o imagen en movimiento. Tratamientos de valores numricos procedentes del muestreo de imgenes y/o sonidos. No todos los procesos multimedia son STR; slo si existen restricciones temporales: Multimedia no STR: edicin de sonidos almacenados en ficheros. Multimedia STR: reproduccin/captura de un fichero de sonido.

Un ejemplo tpico es la transmisin de imgenes de video:

Alg. de captura y compresin

A/D Transmisor

Canal

Alg. de descompresin

D/A

Receptor

11

ASTR 1. Sistemas multimedia (II). Caractersticas comunes.

Manejan gran cantidad de datos. Siempre son intensivos en datos. A veces tambin son intensivos en computacin.

No se producen actuaciones sobre el medio fsico. Una actuacin incorrecta (lgica o temporalmente) no suele ser peligrosa.
En muchos casos si se pierde alguna imagen y se substituye por la anterior no ocurre nada (si esto se hace una prporcin pequea de veces).

12

ASTR 1. Computadores empotrados (I).

Una gran parte de sistemas de tiempo real incorporal computadores empotrados (embedded):

Estn integrados en la estructura fsica de la maquinaria que controlan: Vehculos: Coches, autobuses, trenes, aviones, barcos, gras, Maquinaria industrial: Robots, clulas de fabricacin, maquinas/herramienta, Sistemas de comunicacin: Telfonos mviles, repetidores, rotures, radio, Electrodomsticos: Elec. lnea blanca, televisores, videos, cmaras fotos, alarmas, Ocio: Consolas videojuego, juguetes, salas de cine, sistemas de sonido, iluminacin,

Armamento: Gua de misiles, balstica,


Algunos sistemas programables (PDAs, smartphones, videoconsolas) estn a medio camino entre los sistemas empotrados y los de proposito general.
13

ASTR 1. Computadores empotrados (II). Un ejemplo.

Unidad de control para un SCORBOT ER-VII: Brazo robot (5 ejes) Unidad de control

Entorno

Caractersticas Hardware (ER-IX B): CPU: 68020-68881. 512 KB. ROM, 512 KB RAM E/S: Tarjetas de control de motores (6-12 ejes). 2-10 RS232. 16 entradas, 16 salidas digitales (12-24 voltios) 14

ASTR 1. Computadores empotrados (IV). Caractersticas comunes.

Recursos limitados: procesador, memoria, pantalla... Ejecuta un conjunto limitado de programas.

Arquitectura orientada al sistema que controla. Sobre todo los sistemas de E/S.
Poca o ninguna intervencin de operadores humanos. Ciclo de vida y evolucin tecnolgica muy condicionados por el mecanismo que controla.

15

ASTR 1. Parmetros influyentes en un SSTR. Tcnicas de especificacin.


Caracterizacin temporal. Un STR debe responder ante ciertos eventos dentro de un plazo de tiempo determinado y especificado. Hay que describir temporalmente la respuesta del sistema --> Tareas. Hay que especificar las restricciones temporales --> Plazos de ejecucin de las tareas. Las restricciones temporales afectan fuertemente al diseo y anlisis del sistema.

Tarea: Actividades que se ejecutan en un computador en respuesta a un evento. Dos tipos de tareas: Peridicas o cclicas. Responden a eventos que se producen peridicamente. Espordicas. Responden a eventos que se producen irregularmente.

Cada vez que se ejecuta una tarea, debe terminar antes de su plazo de ejecucin (deadline) asociado.

16

ASTR 1. Caracterizacin temporal de tareas (I).


Caractersticas temporales de una tarea peridica:

Activacin

Lmite (D)

Siguiente activacin

Plazo de ejecucin
Arranque Terminacin

Ejecucin de la tarea

Tiempo de respuesta
Periodo ( T )

En las tareas espordicas, el periodo se sustituye por la separacin o tiempo mnimo entre activaciones consecutivas.

17

ASTR 1. Caracterizacin temporal de tareas (II).


Las caractersticas temporales dependen directamente de la arquitectura hard/soft: Arranque: Latencia de interrupciones --> sistema microprocesador <--> E/S y Sistema Operativo. Tiempo de ejecucin: Tecnologa arquitectura del procesador/sistema de memoria (ciclo de reloj, pipeline, cache, paginacin, ). Tiempo de respuesta (adems del tiempo de ejecucin): S.O. : Poltica de gestin de tareas (scheduling), memoria y entrada/salida. Cambios de contexto. Periodo y plazos de ejecucin: Naturaleza del problema. Caractersticas del hardware y de los algoritmos que implementan la solucin.

18

ASTR 1. Correccin temporal (I).

Un STR tendr correccin temporal si todas sus tareas se ejecutan siempre antes de su plazo de ejecucin. Esto condiciona el diseo y el anlisis del sistema: Diseo: La arquitectura del STR debe asegurar el determinismo de las actividades. Anlisis: Se deben disponer de tcnicas que permitan comprobar la correccin del sistema en cualquier condicin operativa.

Las consecuencias de que una tarea no cumpla sus plazos dependen de la naturaleza de la tarea/aplicacin: Tareas esenciales o no esenciales: presentan o no restricciones temporales. Una tarea esencial puede ser: Crtica: Debe completarse siempre dentro de su plazo. Acrtica: puede completarse fuera de plazo sin producir efectos inadmisibles en el sistema.

19

ASTR 1. Correccin temporal (II).

Sistemas de tiempo real duro: tienen al menos una tarea crtica. Sistemas de tiempo real blando: todas sus tareas son acrticas. Las dificultades para asegurar el determinismo aumentan conforme aumenta la complejidad de la arquitectura. Esto es fcil de ver con un ejemplo sencillo: control de un motor en lazo cerrado:

Actuador del motor Unidad potencia + Motor

Control velocidad del motor

Velocidad deseada

Operador

Sensor de giro

Esquema general del algoritmo de control. 20

ASTR 1. Algunos Parmetros influyentes en un SSTR. Fiabilidad y seguridad.


La fiabilidad de un STR la probabilidad de proporcionar un servicio determinado. Los parmetros ms comunes son: Tasa de fallos l (averas/unidad de tiempo). Tiempo medio entre averas: MTTF= 1/ l. Sistemas ultrafiables: MTTF > 109 horas (106 aos aprox.)

La seguridad mide las consecuencias de una avera. Tipos de averas: malignas y benignas. Averas malignas: su coste es muy superior a la utilidad del sistema.

Sistemas crticos: son ultrafiables con respecto a averas malignas. Otras medidas de seguridad:

Mantenibilidad: mide el tiempo necesario para reparar una avera benigna.


Tiempo medio de reparacin MTTR: Disponibilidad: mide el tiempo en el que el sistema est operativo. 21

ASTR 1. Clasificacin de los SSTR. Tipos de plazos de ejecucin.

Tipos de plazos de ejecucin, en funcin de la gravedad de su incumplimiento: Duro o crtico (Hard Deadline). Resultados puede ser catastrfico. Firme (Firm Deadline). Resultados sin sentido o intiles. Blando o no crtico (Soft Deadline). Deteriora la utilidad o el sentido de los resultados, aunque no los invalida totalmente. El tipo de plazo de ejecucin de una tarea depende de las caractersticas de la aplicacin. Aunque a veces puede verse influenciado por el proceso de diseo.

Los SSTR pueden clasificarse en:


STR duro (o STR crticos): Hay al menos una tarea con plazo de ejecucin duro. STR firme : No hay tareas con plazos duros, pero si al menos una con plazo firme. STR blando (o STR no crticos) --> Solo hay tareas con plazo de ejecucin blando.

22

ASTR 1. Clasificacin de los SSTR. SSTR duros.

Las caractersticas de un STR duro tienden a hacerlo lo ms resistente posible a fallos: En condiciones operativas normales: Plazos de respuesta crticos --> comportamiento predecible en sobrecargas. Deben ser ultrafiables respecto a averas malignas. Comportamiento temporal garantizado analticamente (sistemas con respuesta garantizada: guarantee response systems). Deben disponer de mecanismos que reduzcan el coste de una avera: Mecanismos de tolerancia a fallos --> sistema con degradacin aceptable.

Mecanismos de deteccin de fallos --> sistemas con parada segura.

23

ASTR 1. Clasificacin de los SSTR . SSTR firmes y SSTR blandos.

Las caractersticas de un STR blando: No existen plazos de respuesta crticos. El sistema hace lo que puede comportamiento degradado en sobrecargas. No existen averas malignas. No se hace caracterizacin precisa de carga y fallos. No tienen comportamiento temporal garantizado analticamente (sistemas que hacen lo que pueden: best-effort systems). Los mecanismo de tolerancia a fallos pueden ser justificables econmicamente.

Si el coste de reparar la avera es mayor que el coste del mecanismo de tolerancia.

Caractersticas Tiempo real firme (sistemas peridicos): Hay que cumplir estrictamente los plazos en un alto % de las ocasiones. En los dems casos se usa como salida la correspondiente al periodo anterior. El ej. Tipico es el procesado de audio o vdeo.

24

ASTR 1. Clasificacin de los SSTR . Resumen.

25

ASTR 1. Capas en el diseo de un STR: determinismo y arquitectura.

El determinismo es fcil de asegurar si se usan arquitectura muy sencillas (pero de prestaciones limitadas). Muchas de las mejoras en la arquitectura hard/soft suelen estar orientadas al aumento del rendimiento medio basandose en mejorar los casos ms comunes, por lo que afectan al determinismo: Pipelines: Prediccin de saltos, ejecucin especulativa. Superescalares. Caches. Memoria virtual. Gestin de multitarea. Gestin de E/S. Sistemas de comunicacin. Mejoras en la velocidad de ejecucin no implican mejoras en el determinismo de la ejecucin. Puede haber grandes diferencias entre distintas ejecuciones de una misma tarea.

26