Interrupciones

16
Ing. Jorge A. Abraham Técnicas Digital es II 1 Interrupciones -Objetivos -Introducción -Funcionamiento -Conclusión

description

Interrupciones. Objetivos Introducción Funcionamiento Conclusión. Interrupciones - Objetivos. Aprender sobre las respuestas de los procesadores Aprender sobre la problemáticas de las Interrupciones. Aprender sobre multiprogramación. Interrupciones - Introducción. - PowerPoint PPT Presentation

Transcript of Interrupciones

Page 1: Interrupciones

Ing. Jorge A. Abraham Técnicas Digitales II

1

Interrupciones

-Objetivos-Introducción-Funcionamiento-Conclusión

Page 2: Interrupciones

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

Page 3: Interrupciones

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.

Page 4: Interrupciones

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).

Page 5: Interrupciones

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.

Page 6: Interrupciones

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.

Page 7: Interrupciones

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.

Page 8: Interrupciones

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.

Page 9: Interrupciones

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]

Page 10: Interrupciones

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.

Page 11: Interrupciones

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

Page 12: Interrupciones

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.

Page 13: Interrupciones

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

Page 14: Interrupciones

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

Page 15: Interrupciones

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.

Page 16: Interrupciones

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