add interrupt in/out description
This commit is contained in:
1 parent
c6cfe50a94
commit
9bcc548c9e
1 file changed
+12
@@ -119,6 +119,18 @@ et obtenir l’adresse de la routine de traitement correspondante.
|
||||
| 0x0000001C | Fast Interupt (FIQ) | fiq | 3 |
|
||||
|
||||
# Entrées / Sorties d'une interruption
|
||||
L'entrée d'une interruption se fait par la broche ***IRQ*** ou ***FIQ*** du processeur :
|
||||
|
||||
1. Termine l'instruction en cours
|
||||
2. Sauvegarde du contexte : PC, CPSR
|
||||
3. Met le bit du type d'interruption et le nouveau mode à jour
|
||||
4. Sauvegarde l'addresse de retour (PC - 4) dans le LR du mode
|
||||
5. Saute à l'adresse de la routine d'interruption qui se trouve dans la table des vecteurs
|
||||
6. Sauvegarde les registres de travail
|
||||
7. Exécute la routine d'interruption
|
||||
|
||||
La sortie d'une interruption :
|
||||
|
||||
1. Restaure les registres de travail
|
||||
2. Restaure le SPSR du mode dans le CPSR et simultanément met à jour le PC
|
||||
3. Reprend l'exécution du programme interrompu
|
||||
Reference in new issue
Block a user