Monografias.com > Computación > Programación
Descargar Imprimir Comentar Ver trabajos relacionados

Arquitectura de sistemas de tiempo real




Enviado por Pablo Turmero



    Monografias.com

    1
    Arquitectura de Sistemas de Tiempo Real

    Objetivos del tema:

    Identificar las características que definen un sistema de tiempo real (STR).
    Introducir algunos conceptos importantes en el tratamiento de SSTR.
    Identificar los tipos de SSTR más comunes.

    Bibliografía del tema:

    Liu, J. W. “Real-Time Systems”. Prentice Hall, 2000. Tema 1. (C)
    Burns, A., Wellings, A., Real Time Systems and Programming Languages. Segunda Edición, Addison-Wesley, 1996. Tema 1.

    Monografias.com

    2
    Frenos ABS (Anti Block System) en un automóvil: Evita una posible perdida del control de la dirección de un automóvil cuando se frena.
    Ejemplo de un sistema de tiempo real (I).
    Movimiento si giran las ruedas delanteras
    Movimiento si las ruedas delanteras se bloquean debido a una frenada

    Monografias.com

    3
    Frenos ABS (Anti Block System) en un automóvil. Diagrama de bloques.
    Ejemplo de un sistema de tiempo real (II).
    Control de
    frenada
    Sensor de
    ángulo de giro

    Sensor pedal
    de freno
    Sensor de
    velocidad
    Actuador
    de freno
    Hay un bloque de este tipo por rueda
    Esto es una simplificación

    Monografias.com

    4

    Sistema de propósito general:
    Sus acciones siempre deben tener corrección lógica. Determinismo lógico.

    Sistema de tiempo real:
    Además de determinismo lógico, las acciones de un STR deben realizarse en el momento adecuado, es decir, deben tener corrección temporal. Determinismo temporal.

    Ejemplo (ABS):

    Evento externo ? El usuario pisa el pedal de freno.
    Respuesta del sistema ? Activar el actuador del freno.
    Corrección lógica y temporal: siempre se debe frenar antes de un tiempo determinado.
    Determinismo temporal (I).
    El determinismo temporal se puede dar a varios niveles.

    Monografias.com

    5

    Un sistema de tiempo real es aquel en el que el tiempo de respuesta a estímulos 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 aplicación:

    Determinismo temporal (II).
    T. de respuesta máximo (TRmax)
    Utilidad
    Límite
    Función de utilidad (value function) del sistema cuando una respuesta retrasada invalida los resultados: Sistema ABS.

    Monografias.com

    6

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

    Determinismo temporal (III).
    Límite
    T. de respuesta máximo (TRmax)
    Utilidad

    Monografias.com

    7

    Son aplicaciones en las que el computador actúa sobre un proceso un proceso físico externo para mantenerlo en un estado deseado.

    Un ejemplo típico es el control de la velocidad de un motor en lazo cerrado:

    Ejemplo de aplicaciones de tiempo real: Control de procesos (I).
    Computador de
    control de velocidad
    del motor
    Operador
    Velocidad
    deseada
    Sensor de posición o velocidad angular
    Actuador
    del motor
    Unidad potencia
    + Motor

    Monografias.com

    8

    Bucle típico de control digital en lazo cerrado para controlar el estado de un proceso:
    Control de procesos (II).
    Referencia
    r(t)
    A/D
    A/D
    Algoritmo
    o ley
    de control
    D/A

    Proceso
    Sensor
    y(t)
    Actuador
    u(t)
    rk
    uk
    yk

    Monografias.com

    9
    Control de procesos (V). Características comunes.

    ¿De donde vienen las restricciones temporales?

    Velocidad de muestreo correcta.

    Velocidades bajas.

    Sin degradación grave. Con degradación grave.

    Monografias.com

    10
    Control de procesos (VI). Características comunes.

    Una actuación incorrecta (lógica o temporalmente) puede ser peligrosa.
    Sistemas de E/S orientados a la adquisición de datos de algún proceso físico.
    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 validación.
    Los procesos de control pueden ser continuos (cíclicos) o discretos (eventos).

    Necesitan supervisión de la integridad de sistemas (datos adquiridos, actuaciones, …). En muchos casos es necesario tener mecanismos de control alternativos por si algún sensor, actuador o proceso falla.

    Monografias.com

    11
    Son aplicaciones orientadas al tratamiento de sonido y/o imagen en movimiento.
    Tratamientos de valores numéricos procedentes del muestreo de imágenes y/o sonidos.
    No todos los procesos multimedia son STR; sólo si existen restricciones temporales:
    Multimedia no STR: edición de sonidos almacenados en ficheros.
    Multimedia STR: reproducción/captura de un fichero de sonido.

    Un ejemplo típico es la transmisión de imágenes de video:
    Ejemplo de aplicaciones de tiempo real: Sistemas multimedia (I).
    A/D
    Alg. de captura
    y compresión
    Canal
    Transmisor
    D/A
    Alg. de
    descompresión
    Receptor

    Monografias.com

    12
    Manejan gran cantidad de datos.
    Siempre son intensivos en datos.
    A veces también son intensivos en computación.
    No se producen actuaciones sobre el medio físico. Una actuación incorrecta (lógica 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 prporción pequeña de veces).
    Sistemas multimedia (II). Características comunes.

    Monografias.com

    13

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

    Están integrados en la estructura física de la maquinaria que controlan:
    Vehículos: Coches, autobuses, trenes, aviones, barcos, grúas, …
    Maquinaria industrial: Robots, células de fabricación, maquinas/herramienta,…
    Sistemas de comunicación: Teléfonos móviles, repetidores, rotures, radio, …
    Electrodomésticos: Elec. línea blanca, televisores, videos, cámaras fotos, alarmas, …
    Ocio: Consolas videojuego, juguetes, salas de cine, sistemas de sonido, iluminación, …
    Armamento: Guía de misiles, balística, …
    Algunos sistemas programables (PDAs, smartphones, videoconsolas) están a medio camino entre los sistemas empotrados y los de proposito general.

    Computadores empotrados (I).

    Monografias.com

    14

    Unidad de control para un SCORBOT ER-VII:
    Computadores empotrados (II). Un ejemplo.
    Características 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)
    Unidad de control
    Brazo robot (5 ejes)

    Entorno

    Monografias.com

    15
    Computadores empotrados (IV). Características 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 intervención de operadores humanos.
    Ciclo de vida y evolución tecnológica muy condicionados por el mecanismo que controla.

    Monografias.com

    16
    Caracterización 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 ejecución de las tareas.
    Las restricciones temporales afectan fuertemente al diseño y análisis del sistema.

    Tarea: Actividades que se ejecutan en un computador en respuesta a un evento.
    Dos tipos de tareas:
    Periódicas o cíclicas. Responden a eventos que se producen periódicamente.
    Esporádicas. Responden a eventos que se producen irregularmente.

    Cada vez que se ejecuta una tarea, debe terminar antes de su plazo de ejecución (deadline) asociado.
    Parámetros influyentes en un SSTR. Técnicas de especificación.

    Monografias.com

    17
    Características temporales de una tarea periódica:

    En las tareas esporádicas, el periodo se sustituye por la separación o tiempo mínimo entre activaciones consecutivas.
    Caracterización temporal de tareas (I).
    t
    Ejecución de la tarea
    Activación
    Arranque
    Terminación
    Periodo ( T )
    Límite (D)
    Plazo de ejecución
    Siguiente activación
    Tiempo de respuesta

    Monografias.com

    18
    Las características temporales dependen directamente de la arquitectura hard/soft:
    Arranque:
    Latencia de interrupciones –> sistema microprocesador < –> E/S y Sistema Operativo.
    Tiempo de ejecución:
    Tecnología arquitectura del procesador/sistema de memoria (ciclo de reloj, pipeline, cache, paginación, …).
    Tiempo de respuesta (además del tiempo de ejecución):
    S.O. : Política de gestión de tareas (scheduling), memoria y entrada/salida.
    Cambios de contexto.
    Periodo y plazos de ejecución:
    Naturaleza del problema.
    Características del hardware y de los algoritmos que implementan la solución.

    Caracterización temporal de tareas (II).

    Monografias.com

    19
    Un STR tendrá corrección temporal si todas sus tareas se ejecutan siempre antes de su plazo de ejecución.
    Esto condiciona el diseño y el análisis del sistema:
    Diseño: La arquitectura del STR debe asegurar el determinismo de las actividades.
    Análisis: Se deben disponer de técnicas que permitan comprobar la corrección del sistema en cualquier condición operativa.

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

    Corrección temporal (I).

    Monografias.com

    20
    Sistemas de tiempo real duro: tienen al menos una tarea crítica.
    Sistemas de tiempo real blando: todas sus tareas son acríticas.
    Las dificultades para asegurar el determinismo aumentan conforme aumenta la complejidad de la arquitectura.
    Esto es fácil de ver con un ejemplo sencillo: control de un motor en lazo cerrado:
    Control
    velocidad
    del motor
    Operador
    Velocidad
    deseada
    Sensor de giro
    Actuador
    del motor
    Unidad potencia
    + Motor
    Corrección temporal (II).
    Esquema general del algoritmo de control.

    Monografias.com

    21
    La fiabilidad de un STR la probabilidad de proporcionar un servicio determinado. Los parámetros más comunes son:
    Tasa de fallos l (averías/unidad de tiempo).
    Tiempo medio entre averías: MTTF= 1/ l.
    Sistemas ultrafiables: MTTF > 109 horas (106 años aprox.)

    La seguridad mide las consecuencias de una avería.
    Tipos de averías: malignas y benignas.
    Averías malignas: su coste es muy superior a la utilidad del sistema.
    Sistemas críticos: son ultrafiables con respecto a averías malignas.
    Otras medidas de seguridad:
    Mantenibilidad: mide el tiempo necesario para reparar una avería benigna.
    Tiempo medio de reparación MTTR:
    Disponibilidad: mide el tiempo en el que el sistema está operativo.
    Algunos Parámetros influyentes en un SSTR. Fiabilidad y seguridad.

    Monografias.com

    22
    Tipos de plazos de ejecución, en función de la gravedad de su incumplimiento:
    Duro o crítico (Hard Deadline). Resultados puede ser “catastrófico”.
    Firme (Firm Deadline). Resultados sin sentido o inútiles.
    Blando o no crítico (Soft Deadline). Deteriora la utilidad o el sentido de los resultados, aunque no los invalida totalmente.
    El tipo de plazo de ejecución de una tarea depende de las características de la aplicación.
    Aunque a veces puede verse influenciado por el proceso de diseño.

    Los SSTR pueden clasificarse en:
    STR duro (o STR críticos): Hay al menos una tarea con plazo de ejecución duro.
    STR firme : No hay tareas con plazos duros, pero si al menos una con plazo firme.
    STR blando (o STR no críticos) –> Solo hay tareas con plazo de ejecución blando.
    Clasificación de los SSTR. Tipos de plazos de ejecución.

    Monografias.com

    23
    Las características de un STR duro tienden a hacerlo lo más resistente posible a fallos:
    En condiciones operativas normales:
    Plazos de respuesta críticos –> comportamiento predecible en sobrecargas.
    Deben ser ultrafiables respecto a averías malignas.
    Comportamiento temporal garantizado analíticamente (sistemas con respuesta garantizada: guarantee response systems).
    Deben disponer de mecanismos que reduzcan el coste de una avería:
    Mecanismos de tolerancia a fallos –> sistema con degradación aceptable.
    Mecanismos de detección de fallos –> sistemas con parada segura.
    Clasificación de los SSTR. SSTR duros.

    Monografias.com

    24
    Las características de un STR blando:
    No existen plazos de respuesta críticos.
    El sistema hace lo que puede ? comportamiento degradado en sobrecargas.
    No existen averías malignas.
    No se hace caracterización precisa de carga y fallos.
    No tienen comportamiento temporal garantizado analíticamente (sistemas que hacen lo que pueden: best-effort systems).
    Los mecanismo de tolerancia a fallos pueden ser justificables económicamente.
    Si el coste de reparar la avería es mayor que el coste del mecanismo de tolerancia.

    Características Tiempo real firme (sistemas periódicos):
    Hay que cumplir estrictamente los plazos en un alto % de las ocasiones.
    En los demás casos se usa como salida la correspondiente al periodo anterior.
    El ej. Tipico es el procesado de audio o vídeo.
    Clasificación de los SSTR . SSTR firmes y SSTR blandos.

    Monografias.com

    25
    El determinismo es fácil 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 más comunes, por lo que afectan al determinismo:
    Pipelines:
    Predicción de saltos, ejecución especulativa.
    Superescalares.
    Caches.
    Memoria virtual.
    Gestión de multitarea.
    Gestión de E/S.
    Sistemas de comunicación.
    Mejoras en la velocidad de ejecución no implican mejoras en el determinismo de la ejecución.
    Puede haber grandes diferencias entre distintas ejecuciones de una misma tarea.
    Capas en el diseño de un STR: determinismo y arquitectura.

    Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.

    Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.

    Categorias
    Newsletter