Interrupciones
description
Transcript of Interrupciones
Ing. Jorge A. Abraham Técnicas Digitales II
1
Interrupciones
-Objetivos-Introducción-Funcionamiento-Conclusión
Ing. Jorge A. Abraham Técnicas Digitales II
2
Interrupciones - Objetivos
-Aprender sobre las respuestas de los procesadores-Aprender sobre la problemáticas de las Interrupciones.-Aprender sobre multiprogramación
Ing. Jorge A. Abraham Técnicas Digitales II
3
Interrupciones - IntroducciónLos Dispositivos (Periféricos) requieren atención del procesador.El procesador puede atender a los dispositivos por Interrogación (Pooling) o por Interrupciones.Las Interrupciones son eventos aleatorios que se reciben por alguna entrada del procesador.Ante una interrupción, el procesador suspende la ejecución del programa principal, ejecuta porciones de programa que atienden al dispositivo y luego continúa con la ejecución del programa principal.
Ing. Jorge A. Abraham Técnicas Digitales II
4
Interrupciones - FuncionamientoPeriféricos - Eventos
Eventos catastróficos para el procesador. Ej.: Power Down.
Periféricos muy lentos. Muy eventuales. Ej.: Alarma.
Periféricos Lentos. Atención lenta. Ej.: Teclado, Impresora.
Periféricos Rápidos. Atención Rápida. Ej.: Medios de almacenamiento, comunicaciones de alta velocidad (Gbps).
Ing. Jorge A. Abraham Técnicas Digitales II
5
Interrupciones - FuncionamientoAtención del Periférico
Interrogación, encuesta o Pooling.En el programa principal se leen los registros o bits de estado de los Periféricos en forma secuencial. Si requieren atención, se ejecuta una porción de programa o subrutina de servicio.
Ventaja: Control total del sistema.Desventajas: Ineficiencia del uso del procesador.El periférico es atendido después de ser interrogado y no cuando requiere atención.
Ing. Jorge A. Abraham Técnicas Digitales II
6
Interrupciones - FuncionamientoAtención del Periférico
Interrupciones.El programa principal se ejecuta sin tener en cuenta a los Periféricos. El periférico que requiere atención genera una interrupción. El procesador suspende momentáneamente la ejecución del programa principal, reconoce la interrupción y ejecuta una subrutina de atención del periférico que interrumpió (Interrupt Handler). Terminada la subrutina, el procesador continúa con la ejecución del programa principal desde donde fue interrumpido.
Ing. Jorge A. Abraham Técnicas Digitales II
7
Interrupciones - FuncionamientoAtención del Periférico
Interrupciones.Ventajas:
a) Uso eficiente del tiempo del Procesador.b) Atiende al Periférico cuando el lo requiere. Prioridades.c) Ejecuta programa principal y rutinas sin pérdidas de
tiempo.d) Se ve como si todo fuera simultáneo. Tiempo Real.
Desventajas:a) Requiere de hard externo para ingresar las interrupciones.b) Instrucciones adicionales para preservar registros.c) Complejidad en la prueba y puesta en funcionamiento.
Ing. Jorge A. Abraham Técnicas Digitales II
8
Interrupciones - FuncionamientoTipos – Visión desde el Procesador
No Enmascarables (No Inhibible).El procesador No puede evitar atenderla. Tiene mayor prioridad que otro tipo de interrupciones.Se usa en eventos tipo catástrofe para el sistema.
Enmascarables (Inhibible).El procesador puede No atenderla o “Ignorarla”. Bajo el control del software se activan o se desactivan.Se usan para atención de periféricos en general.
Ing. Jorge A. Abraham Técnicas Digitales II
9
Interrupciones - FuncionamientoRespuesta a la Interrupción
1) Terminar de ejecutar la instrucción en curso [procesador]2) Desactivar el sistema de interrupciones [procesador]3) Almacenar el CP (dirección de retorno) [procesador]4) Cargar el CP con la dirección de la subrutina de servicio
[procesador]5) Almacenar el estado de la CPU y los registros a utilizar
durante la rutina de servicio [programador]6) Ejecutar las instrucciones de la rutina de servicio [procesador]7) Restaurar los registros almacenados y el estado de la CPU
[programador].8) Instrucción de retorno de interrupción [programador]9) Activar el sistema de Interrupciones – Restaurar el CP
[procesador]
Ing. Jorge A. Abraham Técnicas Digitales II
10
Interrupciones - FuncionamientoRespuesta a la Interrupción
Int. Per. 1 Dir. Prox. Inst.
Dir. Prox. Inst.
Dir. Prox. Inst.
Int. Per. 2
Int. Per. 3
Prog.Ppal.Sub.Per. 1
Sub.Per. 2
Sub.Per. 3
Dir.Sub.Serv.1
Dir.Sub.Serv.2
Dir.Sub.Serv.3
Retorno de INT
Retorno de INT
Retorno de INT
Ejecución
Ejecución
Ejecución
Ejecución
Ejec.Sub.
Ejec.Sub.
Ejec.Sub.
Ing. Jorge A. Abraham Técnicas Digitales II
11
Interrupciones - FuncionamientoRespuesta a la Interrupción
Int. Per. 1 Dir. Prox. Inst.Int. Per. 2
Prog.Ppal.
Sub.Per. 1 Sub.Per. 2
Dir.Sub.Serv.1
Dir.Sub.Serv.2
Retorno de INT
Retorno de INT
Ejec.
Ejec.
Ejec.Sub.1
Ejec.Sub.2
Dir. Prox. Inst.
Ejec.Sub.1
Habilitar INT
Interrupciones Anidadas
Ing. Jorge A. Abraham Técnicas Digitales II
12
Interrupciones - FuncionamientoAlgunos otros conceptos
Tiempo de RespuestaDesde la Interrupción hasta el inicio de ejecución de la rutina de servicio.Tiempo de sobrecargaDuración de la Subrutina de Servicio (Suma de instrucciones).Tiempo TotalSuma de ambos tiempos. Desde la interrupción hasta el Retorno a la próxima Instrucción del programa principal.Prioridad de InterrupcionesPeriféricos mas rápidos o de mayor importancia. Se trabaja sobre el Hard y el Soft.
Ing. Jorge A. Abraham Técnicas Digitales II
13
Interrupciones - FuncionamientoLa programación
Programa Principal
Inicio de Variables, periféricos y registros
Inicio de componentes de Interrupciones
Activación de Interrupciones
Instrucciones del programa principal
Ing. Jorge A. Abraham Técnicas Digitales II
14
Interrupciones - FuncionamientoLa programación
Subrutina de Servicio
Almacenamiento del estado y registros del Procesador
Opción: Activación de Interrupciones
Restauración de los Registros y del estado del Procesador
Instrucciones necesarias para atender al periférico
Retorno de Interrupción
Ing. Jorge A. Abraham Técnicas Digitales II
15
InterrupcionesConclusión
-Aprendizaje sobre Interrupciones en MP y MC-La eficiencia en la atención de los periféricos-La problemática del uso de Interrupciones.-Tareas del Procesador y tareas del programador-Las rutinas de servicio. Anidamiento.-Comportamiento de diferentes MP y MC (PIC,Simplez +I4, otros.
Ing. Jorge A. Abraham Técnicas Digitales II
16
Bibliografía
HOJA TÉCNICA - PIC 17C7X Microchip Technology Inc.
HOJA TÉCNICA - M68HC08 MicrocontrollersFreescale Semiconductors.
Interrupciones