8259

Solo disponible en BuenasTareas
  • Páginas : 11 (2721 palabras )
  • Descarga(s) : 0
  • Publicado : 5 de mayo de 2011
Leer documento completo
Vista previa del texto
Controlador de Interrupciones

El controlador de interrupciones es un módulo que tiene por función gestionar las interrupciones de entrada/salida para el procesador. Esto ahorra diseñar lógica y añadir patitas al procesador. También proporciona flexibilidad porque permite idealmente, gestionar un número ilimitado señales de interrupción (favoreciendo la expansión del sistema de entradasalida).
El controlador recibe el conjunto de señales de interrupción procedentes de los dispositivos, toma la decisión de cual es la más prioritaria, y envía una única señal al procesador. La respuesta del procesador es transmitida al dispositivo y el propio controlador se encarga de depositar en el bus el vector de la interrupción.
En un sistema basado en la familia de procesadores 8086, esta laborla realiza el chip 8259. Este chip admite hasta 8 señales de interrupción, pero también admite ser configurado en cascada (sus entradas proceden a su vez de otro controlador) de modo que un conjunto de controladores 8259 pueden gestionar hasta un máximo de 8*8 señales de interrupción procedentes de otros tantos dispositivos de entrada salida.

Descripción del patillaje:

CS#: Selección delchip. Debe estar activa para que el chip pueda ser programado o leer datos de estado.
WR#: Escritura.
RD#: Lectura
D0-7: bus de datos. Por medio de él se programa el controlador, se leen los registros y el controlador puede hacer llegar al procesador el vector de interrupción adecuado.
CAS 0-7: Bus privado cuando hay una configuración en cascada. Proceden del controlador maestro (el que seconecta directamente al procesador) y se dirigen a las mismas líneas en el esclavo. Sirven, en modo cascada, para habilitar al controlador del cual procede la interrupción original.
Cuando un controlador esclavo recibe una interrupción, activa su salida INT que a su vez alimenta una IR del maestro. Entonces el maestro activa las líneas CAS de manera que el controlador esclavo quede habilitado paracolocar en el bus el vector de interrupción.
SP#/EN#: Estas líneas tienen doble función según la configuración:
modo no buffered: Indican al controlador si es un maestro (0) o un esclavo (1)
modo buffered: En este modo el controlador puede conectar el bus directamente al procesador o hacerlo a través de un buffer. Si se utiliza el buffer, esta señal es de salida y sirve para habilitarel buffer en la dirección adecuada.
INT: interrupción: Procedente del controlador se dirige a la entrada INTR del procesador. Procedente de un esclavo se dirige a una de las entrada IR del maestro.
IR 0-7: Interrupciones: Entradas de interrupción al controlador procedente de los dispositivos e/s o de otros controladores (modo cascada).Se pueden configurar como activas por nivel o activas porflanco (de subida).
INTA#: Interrupt acknowledge: Procede del procesador e indica al controlador que aquel ha entrado en un ciclo de reconocimiento de interrupción.
A0: dirección: El controlador tiene dos puertos de lectura/escritura. Esta línea distingue entre ambos puertos.

Ciclo de reconocimiento de interrupción.

Antes de describir la estructura y programación del controlador resultaráinteresante conocer en qué consiste un ciclo de reconocimiento de interrupción en el 8086.

1.- Tras la activación de una línea IR, el controlador activa la salida INTR señalándole a la CPU la existencia de una interrupción activada.
2.- Al recibir la señal, el procesador da un pulso en su salida INTA indicando que comienza un ciclo de reconocimiento de interrupción. (En el modo máximola respuesta será el código de reconocimiento de interrupción en las señales S0-2 que será utilizado por el controlador de bus para generar la señal INTA)
3.- Al recibir el controlador el pulso por su entrada INTA comienza a arbitrar las interrupciones recibidas y selecciona la más prioritaria.
4.- Se emite un segundo pulso por la línea INTA del procesador (o controlador de bus)...
tracking img