Programmable Interrupt Controller/es

From Qi-Hardware
Jump to: navigation, search

[edit] Controlador de Interrupciones Programable

Como se explicó anteriormente, los periféricos utilizan la señal IRQ para indicarle a la CPU que necesitan ser atendidos. El controlador de Interrupciones Programable (PIC) es un periférico especial que está en cargado de manejar las diferentes fuentes de interrupción y relizar la comunicación con la CPU.

Arquitectura básica de la interfaz con el procesador implementada en la FPGA.

La siguiente Figura muestra el diagrama de bloques y la implementación en Verilog de un PIC sencillo. Este PIC es capaz de manejar 8 fuentes de Interrupción: 7 hardware ISRC_LP[6:0] y una software IRQSoft. El registro IRQEnable[7:0] permite la habilitación individual por fuente de interrupción, lo que se conoce con el nombre de enmascaramiento. Por ejemplo, si se desea habilitar únicamente la interrupción IRQSoft el registro IRQEnable debe tener el valor 00000001 (máscara), por lo que, cuando la señal IRQSoft sea igual a 1 la señal IREG_LP tendrá el valor 0000001; vale la pena anotar que aunque se presenten interrupciones en las otras entradas, estas no tendrán efecto alguno, ya que son filtradas por la máscara.

Arquitectura del controlador de Interrupciones Programable (PIC).

La señal IREG_LP es la entrada de una compuerta NOR, la salida de esta compuerta será igual a 1 siempre que sus entradas sean 0, es decir, cuando no se presente una interrupción; la salida de esta compuerta será 0 cuando cualquiera de sus entradas sea 1, es decir, cuando existan interrupciones. La salida de esta compuerta es almacenada en cada ciclo de reloj en un FLIP-FLOP y la salida de este proporciona la señal nIRQ, que es la señal que se conecta al procesador.

Concepto de enmascaramiento de interrupciones

la figura anterior ilustra el concepto de enmascaramiento de interrupciones. Únicamente las interrupciones provenientes de IRQSoft son registradas por IREG_LP esto, porque la máscara (IRQEnable) impide que otras interrupciones puedan ser registradas.

Personal tools
Namespaces
Variants
Actions
Navigation
interactive
Toolbox
Print/export