Nunca trabajé con PowerPC, pero de e200z3 Power Architecture ™
Manual de referencia principal , debería poder obtener una mejor comprensión.
Capturador 10 en El Manual de referencia del microcontrolador MPC5534 menciona este manual: Las interrupciones implementadas por la MCU se definen en el Manual de referencia del Core PowerPC e200z3.
IVPR
La sección 2.8.1.6 del Manual Básico de Referencia tiene esto que decir sobre el IVPR:
El IVPR, que se muestra en la Figura 2-16, se usa durante el procesamiento de interrupción para determinar la dirección de inicio para el controlador de interrupción de software. El valor contenido en el campo de desplazamiento vectorial del IVOR seleccionado para un tipo de interrupción en particular se concatena con el valor en el IVPR para formar una dirección de instrucción desde la cual se iniciará la ejecución.
Enumera los campos de bits de ese registro, de los cuales solo hay uno: Vector Base :
Define la ubicación base de la tabla vectorial, alineada con un límite de 64 Kbyte. Proporciona los 16 bits de orden superior de la ubicación de todos los manejadores de interrupciones. IVPR || Los valores IVORn se concatenan para formar la dirección del controlador en la memoria.
IVORn
Los IVOR, que se muestran en la Figura 2-17, contienen el índice de cuatro palabras de la dirección base proporcionada por el IVPR para cada tipo de interrupción.
Además, la sección 4.5 dice:
El valor en el campo de compensación vectorial del IVOR asignado al tipo de interrupción se concatena con el valor en IVPR para formar una dirección de instrucción en la que debe comenzar la ejecución.
Conclusión
Después de que la lógica de prioridad de interrupción haya decidido qué vector de interrupción activar, el contador del programa saltará a la dirección IVPR || IVORn
.
Tenga en cuenta que cada interrupción solo tiene espacio para cuatro instrucciones, por lo tanto, si desea realizar un trabajo pesado, debe bifurcarse. Establecer una marca rápida o alternar un pin de E / S debería ser posible sin ramificaciones.