interrupciones 8259

12
MICROCOMPUTADORAS I Controlador de Interrupciones 8259 GARCIA TRUJILLO JAVIER ATARAMA PINTO FELIPE RIVAS RAMIREZ REYSSER

Upload: gerardo-pingo

Post on 20-Nov-2015

40 views

Category:

Documents


1 download

DESCRIPTION

En esta presentación se tratan las interrupciones en el procesador 8259

TRANSCRIPT

  • MICROCOMPUTADORAS IControlador de Interrupciones 8259GARCIA TRUJILLO JAVIERATARAMA PINTO FELIPERIVAS RAMIREZ REYSSER

  • Este circuito integrado esta especialmente diseado para controlar las interrupciones en sistemas basados en el 8080, 8085 y en el 8086 puede controlar hasta 8 interrupciones vector izadas.Adems, a un 8259 sele pueden conectar en cascada un mximo de 8 chips 8259 adicionales, lo que permite gestionar sistemas de hasta 64 interrupciones.MICROCOMPUTADORAS IDESCRIPCION DEL INTEGRADO 8259

  • MICROCOMPUTADORAS IDESCRIPCION DEL INTERRUPCION 8259

  • MICROCOMPUTADORAS IDESCRIPCION DEL INTERRUPCION 8259

    -CS:Habilita la comunicacin con la CPU. -WR:Permite al 8259 aceptar comandos de la CPU. -RD:Permite al 8259 dejar la informacin en el bus de datos. D7..D0:Bus de datos bidireccional, por el que se transmite la informacin de control/estado y el nmero de vector de interrupcin. CAS0..CAS2:Lneas de cascada, actan como salida en el 8259 maestro y como entrada en los 8259 esclavos, en un sistema con varios 8259 interconectados, constituyendo un bus local. -SP/-EN:Pin de doble funcin: en el buffered mode del 8259 actuar como -EN, para habilitar los buffers del bus; en el modo normal indicar si el 8259 es maestro o esclavo (-SP). INT:Conectado a la patilla INT de la CPU para producir la interrupcin cuando llegue el momento. IR0..IR7:Lneas asncronas de peticin de interrupcin. Una peticin de interrupcin se ejecuta manteniendo IR en alto hasta que se recibe el reconocimiento (modo por flancos) o simplemente poniendo en alto la lnea IR (modo por niveles). -INTA:Lnea de reconocimiento de interrupcin, por medio de esta lnea se fuerza al 8259 a depositar en el bus la informacin del vector de interrupcin. INTA es independiente de -CS. A0:En conjuncin con -CS, -WR y -RD es empleada para enviar las palabras de comando al 8259 y para solicitar informacin al mismo. Suele ir conectada a la lnea A0 de la CPU.

  • MICROCOMPUTADORAS IDESCRIPCION FUNCIONAL DEL 8259El diagrama funcional del 8259, con la estructura interna de las diversas partes que lo componen, es el siguiente:

  • Los principales registros internos del 8253Son el IRR Interrupt Request Register y el ISR In Service RegisterIRR almacena todas las peticiones de interrupciones pendientes.ISR almacena todas las interrupciones que estn siendo atendidas en un momento dado.MICROCOMPUTADORAS IDESCRIPCION FUNCIONAL DEL 8259

  • FUNCIONAMIENTO DEL MECANISMO DE INTERRUPCIONES

    Cada dispositivo que desea comunicarse con el procesador por interrupciones debe tener asignada una lnea nica capaz de avisar a ste de que le requiere para una operacin. Esta lnea es la llamada IRQ ("Interrupt ReQuest", peticin de interrupcin).PASOS PARA EL PROCESAMIENTO DE UNA IRQ:1) Terminar la ejecucin de la instruccin mquina en curso.2) Salva el valor de contador de programa, IP, en la pila, de manera que en la CPU, al terminar el proceso, pueda seguir ejecutando el programa a partir de la ltima instruccin.3) La CPU salta a la direccin donde est almacenada la rutina de servicio de interrupcin (ISR, Interrupt Service Routine) y ejecuta esa rutina que tiene como objetivo atender al dispositivo que gener la interrupcin.4) Una vez que la rutina de la interrupcin termina, el procesador restaura el estado que haba guardado en la pila en el paso 2 y retorna al programa que se estaba usando anteriormente.

    MICROCOMPUTADORAS I

  • MICROCOMPUTADORAS I

    La PC original us el controlador de interrupciones 8259.Este permita que se pudieran generen hasta 8 seales de interrupcin ( numeradas de 0 a 7). Estas lneas de interrupcin son llamadas lneas de Interrupt Request ( requerimiento de interrupcin) o IRQs

  • MICROCOMPUTADORAS IA partir de la IBM AT se incluyen 2 controladores de interrupcin, donde el segundo controlador (ESCLAVO) est conectado en cascada a la lnea de interrupcin 2 del primer controlador ( MAESTRO) . L a lneas de interrupcin del segundo controlador estn numeradas de 8 a 15.

    Debido a este cascadeo, la lnea de interrupcin 2 no est disponible. Sin embargo ; para compatibilidad con la PC original, la lnea de interrrupcin 2 es conectada a al lnea 9 del segundo controlador ( tal que, si un dispositivo en la PC es configurado para la interrupcin 2, en realidad ste usa la interrupcin 9)

  • MICROCOMPUTADORAS IInterrupciones reservadas:IRQ0 Temporizador (Timer)IRQ1 TecladoIRQ8 Reloj de tiempo realIRQ13 Errores del coprocesadorIRQ14 Controlador de disco duroIRQ3 Puerto serie COM1IRQ4 Puerto serie COM2IRQ6 Controlador de disketteIRQ7 Puerto paraleloPIC MAESTRO Dir E/S = 20h, 21hPIC ESCLAVO Dir E/S = A0h, A1hAl inicio del sistema se especifica: PIC MAESTRO INT = IRQ + 8 PIC ESCLAVO INT = IRQ + 70h

  • MICROCOMPUTADORAS IINTERRUPCIONES DEL BIOS STATUS DEL EQUIPO: INT 11H............................................LISTADO DEL EQUIPO INT 12H............................................TAMAO DE MEMORIA HORA Y FECHA: INT 1AH............................................HORA Y FECHA PRINT SCREEN: INT 5H.............................................IMPRESIN DE PANTALLA INT 18H...........................................ACTIVAR LA BASIC-ROM SERVICOS ESPECIALES: INT 19H...........................................ACTIVAR RUTINA DE ARRANQUE CARGADO

  • MICROCOMPUTADORAS IFuncin 02 de la INT 10H del BIOSColocacin del cursor

    INT 10H DEL BIOS

    AH=02BH=00DH = renglnColocacin del cursor DL = columna76 77 78 79Ejemplo:Colocar al cursor en las posiciones (DL,DH)=(12,40)MOV AH,02H ;invocar a la funcin 2 de la INT 10hMOV BH,00 ;trabajar con la pgina 0MOV DH,12 ;cargar el #de columna en DHMOV DL,40 ;cargar el # de rengln en DLINT 10H ;Invocar a la rutina del BIOS0122223240123Rengln 0Columna 0Rengln 0Columna 79Rengln 24Columna 79Rengln 24Columna 0DHDLRengln 12Columna 40