Interrupciones.pdf

19
Interrupciones Una interrupción es un procedimiento iniciado por hardware que interrumpe cualquier programa que esté ejecutándose

description

Interrupciones.pdf

Transcript of Interrupciones.pdf

  • Interrupciones

    Una interrupcin es un procedimiento iniciado por hardware que interrumpe cualquier programa que est ejecutndose

  • Procesamiento Bsico de Interrupciones

    Las interrupciones surgen de la necesidad que tienen los dispositivos perifricos de enviar informacin al procesador principal de un sistema informtico.

    Con interrupciones el procesador puede trabajar y a la vez responder a un evento tan pronto como ste ocurra.

  • Procesamiento Bsico de Interrupciones

    Esquema de una interrupcin:

  • Procesamiento Bsico de Interrupciones

    Clasificacin de Interrupciones

  • Procesamiento Bsico de Interrupciones Procesamiento de una interrupcin

  • Procesamiento Bsico de Interrupciones

    Consideraciones: Si son varios dispositivos los que han causado la interrupcin, se elige

    aquel que tiene la mayor prioridad.

    La velocidad de respuesta del microprocesador depende de la combinacin del tiempo de demora del propio microprocesador y la circuitera externa de interrupcin.

    La CPU posee tres seales de interrupciones externas.

  • Procesamiento Bsico de Interrupciones

    PSW (Program Status Word Registro de Palabra del Estado del Programa): Contiene algunos bits que reflejan el estado del CPU en ese instante.

  • Procesamiento Bsico de Interrupciones Interrupt Request (INTR o IRQ - Peticin de

    Interrupcin): Es la una lnea nica asignada a cada dispositivo que desea comunicarse con el procesador por medio de interrupciones para que el procesador pueda realizar una operacin. Si detecta que tiene nivel lgico 1, reconoce la interrupcin y salta a la rutina de servicio correspondiente para atender a dicho requerimiento. Esta lnea de interrupcin es enmascarable, puede ser habilitada o deshabilitada con la bandera de interrupcin (IF) del PSW.

  • Procesamiento Bsico de Interrupciones

    Nonmaskable Interrupt Request (NMI): Es utilizada por perifricos externos que necesiten atencin del CPU, esta seal no es enmascarable, la peticin se realiza dentro del CPU, y se salta a la rutina de servicio cuando se completa la secuencia de instrucciones que se estn ejecutando. Esta es utilizada frecuentemente para la deteccin de errores de paridad y otras fallas mayores del sistema (por ejemplo: falta de energa).

  • Procesamiento Bsico de Interrupciones System Reset (RESET): Es utilizada para generar una

    inicializacin completa del procesador, al pasar a nivel 1, se interrumpe la ejecucin de todo y se inicializan los registros internos del procesador; y cuando el valor vuelve a 0, el control es transferido al inicio de la rutina de servicio RESET.

    INTA (Reconocimiento de interrupcin): Es una respuesta a la terminal de entrada INTR. Se emplea para ubicar el nmero de vector de interrupcin en el bus de datos, en respuesta a la solicitud de interrupcin.

  • Procesamiento Bsico de Interrupciones

    Proceso de atencin de una IRQ o INTR:

  • Interrupciones de Hardware

    Son invocadas por mecanismos perifricos que fijan sus IRQs. Por ejemplo, cada vez que una tecla es presionada, el teclado genera una interrupcin.

    Estas interrupciones son invocadas directamente por los dispositivos de hardware.

    Al producir algn dispositivo la interrupcin, el controlador de interfaz de perifricos o PIC se encarga de gestionarla en base a su prioridad.

    Por ejemplo, cada vez que el controlador del teclado recibe un tecleo, se activa su lnea de interrupcin. El CPU se detiene y ejecuta el programa que pasa el carcter tecleado a la memoria temporal (buffer) del teclado.

  • Interrupciones de Hardware IRQs ms comunes: IRQ 0= Temporizador IRQ 1= Teclado IRQ 2= Interrupcin del 8259 esclavo IRQ 3= Puerto serial 2 ( COM2 ) IRQ 4= Puerto serial 1 ( COM1 ) IRQ 5= Puerto paralelo 2 ( LPT2 ) IRQ 6= Controlador de disco flexible IRQ 7= Puerto paralelo 1 ( LPT1 ) IRQ 8= Timer IRQ 9= Adaptador de LAN IRQ 10= Reservada IRQ 11= Reservada IRQ 12= Reservada IRQ 13= Cooprocesador 80287 IRQ 14= Controlador de disco duro IRQ 15= Reservada

  • Controlador de interrupciones programable 8259A

    Un controlador programable de interrupciones (PIC) es un dispositivo usado para combinar varias fuentes de interrupciones sobre una o ms lneas del CPU.

    Los PICs tpicamente tienen un conjunto comn de registros: Interrupt Request Register (IRR), In-Service Register (ISR), Interrupt Mask Register (IMR)

  • Controlador de interrupciones programable 8259A El Intel 8259 o PIC 8259 es un controlador programable de

    interrupciones (PIC), diseado para ser usado en un sistema que incorpore un microprocesador 8085 u 8086.

    El 8259 combina mltiples entradas de interrupcin en una simple salida de interrupcin hacia el microprocesador,

  • Controlador de interrupciones programable 8259A

    Estructura del controlador

    Formada por un conjunto de registros internos

    IRR/ISR:: Registro de peticiones de interrupcin/Registro de servicio de interrupcin. Se usa para decidir a que interrupcin atender.

    IMR: Registro de mscaras de interrupcin. Indica si est permitida un interrupcin de ese nivel en ese momento.

  • Controlador de interrupciones programable 8259A

    Programacin del 8259

    El 8259 acepta dos tipos de comandos generados por la CPU: los ICW (Inicialization Command Word) que inicializan el 8259, y los OCW (Operation Command Word) que permiten programar la modalidad de funcionamiento.

  • Bibiografa

    http://es.slideshare.net/scontulloa/proceso-de-atencion-a-interrupciones

    http://es.wikipedia.org

    Microprocesadores INTEL Barry B. Brey