En informática , un controlador de interrupciones programable ( PIC ) es un circuito integrado que ayuda a un microprocesador (o CPU ) a gestionar las solicitudes de interrupción (IRQ) provenientes de múltiples fuentes diferentes (como dispositivos de E/S externos) que pueden ocurrir simultáneamente. [ 1 ] Ayuda a priorizar las IRQ para que la CPU cambie la ejecución al controlador de interrupción (ISR) más apropiado después de que el PIC evalúe las prioridades relativas de las IRQ. Los modos comunes de prioridad de interrupción incluyen prioridades fijas, prioridades rotativas y prioridades en cascada. Los PIC a menudo permiten mapear entradas a salidas de manera configurable. En la arquitectura de PC, los PIC suelen estar integrados en un chip puente sur cuya arquitectura interna está definida por los estándares del fabricante del chipset.
Características comunes
Los microcontroladores PIC suelen tener un conjunto común de registros: registro de solicitud de interrupción (IRR), registro de interrupción en servicio (ISR) y registro de máscara de interrupción (IMR). El IRR especifica qué interrupciones están pendientes de confirmación y, por lo general, es un registro simbólico al que no se puede acceder directamente. El registro ISR especifica qué interrupciones han sido confirmadas, pero aún esperan el fin de interrupción (EOI). El IMR especifica qué interrupciones deben ignorarse y no ser confirmadas. Un esquema de registros sencillo como este permite que haya hasta dos solicitudes de interrupción pendientes simultáneamente: una esperando confirmación y otra esperando el fin de interrupción (EOI).
En los sistemas PIC existen varios esquemas de prioridad comunes, entre los que se incluyen prioridades fijas, prioridades específicas y prioridades rotativas.
Las interrupciones pueden activarse por flanco o por nivel .
Existen varias formas comunes de confirmar que una interrupción ha finalizado cuando se emite un EOI. Estas incluyen especificar qué interrupción ha finalizado, utilizar una interrupción implícita que haya finalizado (generalmente la de mayor prioridad pendiente en la ISR) y tratar la confirmación de la interrupción como el EOI.
Tipos conocidos
Uno de los PIC más conocidos, el 8259A , se incluyó en las PC x86 . En la actualidad, no se incluye como un chip independiente en una PC x86, sino como parte del chipset del puente sur de la placa base. [ 2 ] En otros casos, ha sido reemplazado por los controladores de interrupción programables avanzados (APIC) más recientes , que admiten más salidas de interrupción y esquemas de prioridad más flexibles.
Véase también
- Intel 8259 : un microcontrolador PIC destacado de Intel.
- OpenPIC e IBM MPIC
- Interrupción entre procesadores (IPI)
- Latencia de interrupción
- Interrupción no enmascarable (NMI)
- IRQL (Windows)
Lecturas adicionales
- "Manual del desarrollador de software para arquitecturas Intel® 64 e IA-32, volumen 3A" . Intel . 22 de junio de 2023. Consultado el 28 de marzo de 2025 .
Referencias
Enlaces externos
- Controlador de interrupciones y registros asociados.
- Placa madre
- electrónica digital
- Interrumpe