Title: Presentaci
1Interrupciones
- Objetivos
- Introducción
- Funcionamiento
- Conclusión
2Interrupciones - Objetivos
- Aprender sobre las respuestas de los procesadores
- Aprender sobre la problemáticas de las
Interrupciones. - Aprender sobre multiprogramación
3Interrupciones - Introducción
- Los 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.
4Interrupciones - Funcionamiento
Perifé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).
5Interrupciones - Funcionamiento
Atenció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.
6Interrupciones - Funcionamiento
Atenció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.
7Interrupciones - Funcionamiento
Atenció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.
8Interrupciones - Funcionamiento
Tipos 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.
9Interrupciones - Funcionamiento
Respuesta a la Interrupción
- Terminar de ejecutar la instrucción en curso
procesador - Desactivar el sistema de interrupciones
procesador - Almacenar el CP (dirección de retorno)
procesador - Cargar el CP con la dirección de la subrutina de
servicio procesador - Almacenar el estado de la CPU y los registros a
utilizar durante la rutina de servicio
programador - Ejecutar las instrucciones de la rutina de
servicio procesador - Restaurar los registros almacenados y el estado
de la CPU programador. - Instrucción de retorno de interrupción
programador - Activar el sistema de Interrupciones Restaurar
el CP procesador
10Interrupciones - Funcionamiento
Respuesta a la Interrupción
Dir.Sub.Serv.1
Prog.Ppal.
Ejecución
Sub.Per. 1
Ejec.Sub.
Int. Per. 1
Dir. Prox. Inst.
Retorno de INT
Ejecución
Dir.Sub.Serv.2
Sub.Per. 2
Ejec.Sub.
Int. Per. 2
Dir. Prox. Inst.
Retorno de INT
Ejecución
Dir.Sub.Serv.3
Sub.Per. 3
Ejec.Sub.
Int. Per. 3
Dir. Prox. Inst.
Ejecución
Retorno de INT
11Interrupciones - Funcionamiento
Respuesta a la Interrupción
Interrupciones Anidadas
Dir.Sub.Serv.1
Prog.Ppal.
Ejec.
Dir.Sub.Serv.2
Ejec.Sub.1
Habilitar INT
Int. Per. 1
Sub.Per. 1
Sub.Per. 2
Dir. Prox. Inst.
Ejec.Sub.2
Int. Per. 2
Dir. Prox. Inst.
Retorno de INT
Ejec.
Ejec.Sub.1
Retorno de INT
12Interrupciones - Funcionamiento
Algunos otros conceptos
Tiempo de Respuesta Desde la Interrupción hasta
el inicio de ejecución de la rutina de
servicio. Tiempo de sobrecarga Duración de la
Subrutina de Servicio (Suma de instrucciones). Tie
mpo Total Suma de ambos tiempos. Desde la
interrupción hasta el Retorno a la próxima
Instrucción del programa principal. Prioridad de
Interrupciones Periféricos mas rápidos o de mayor
importancia. Se trabaja sobre el Hard y el Soft.
13Interrupciones - Funcionamiento
La programación
Programa Principal
Inicio de Variables, periféricos y registros
Inicio de componentes de Interrupciones
Activación de Interrupciones
Instrucciones del programa principal
14Interrupciones - Funcionamiento
La programación
Subrutina de Servicio
Almacenamiento del estado y registros del
Procesador
Opción Activación de Interrupciones
Instrucciones necesarias para atender al
periférico
Restauración de los Registros y del estado del
Procesador
Retorno de Interrupción
15Interrupciones
Conclusió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.
16Interrupciones
Bibliografía
HOJA TÉCNICA - PIC 17C7X Microchip Technology
Inc. HOJA TÉCNICA - M68HC08 Microcontrollers Free
scale Semiconductors.