Aplicaciones de Sistemas de Tiempo Real Dr Pedro

  • Slides: 21
Download presentation
Aplicaciones de Sistemas de Tiempo Real Dr. Pedro Mejía Alvarez Cinvestav-IPN, Sección de Computación,

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

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.

Elementos de un sistema en tiempo real. Comunicaciones E/S Digital Software de Tiempo-Real S. OP 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

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, Future. Bus 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.

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

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

Ejemplo de un sistema en tiempo real. Actividades en una computadora de automobil. Control de Velocidad C=4 ms. T=20 ms. D=5 ms. Control de combustible Control de Frenado C=40 ms. T=80 ms. D=80 ms. C=10 ms. T=40 ms. D=40 ms. Otro software no-critico C=10 ms. T=40 ms. 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 64 vel. 0 4 no critico velocidad frenado * implica

Solucion Ciclica. 76 combustible-2 64 vel. 0 4 no critico velocidad frenado * implica descomponer actividades grandes en varias ejecuciones. 60 com busti ble-3 54 14 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

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

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

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

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 h

Sistema de Computo Embebido Termoacoplador Switch Transductor de Presion ADC T P Calentador h 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

Sistema de computo embebido de control de produccion Manipuladores Cinta transportadora Computo Máquina de Herramientas Computo Manipuladores Red de Area Local Máquina de Herramientas Computo Dr. Pedro Mejia Alvarez Curso de Sistemas de Tiempo Real Cinta transportadora CINVESTAV-IPN, Seccion de Computacion 14

Sistema distribuido en tiempo real Dr. Pedro Mejia Alvarez Curso de Sistemas de Tiempo

Sistema distribuido en tiempo real Dr. Pedro Mejia Alvarez Curso de Sistemas de Tiempo Real CINVESTAV-IPN, Seccion de Computacion 15

Dificultades en el diseño • Diseño de la aplicación en tiempo real. • Control

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 ? . •

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

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

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 user • A conjunto de mensajes generados

Comunicaciones en tiempo real: Formulacion del problema user • 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 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

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