Article de reference

Tableau des vecteurs d'interruption

Une table de vecteurs d'interruption ( IVT ) est une structure de données qui associe une liste de gestionnaires d'interruption à une liste de demandes d'interruption dans une t...

Une table de vecteurs d'interruption ( IVT ) est une structure de données qui associe une liste de gestionnaires d'interruption à une liste de demandes d'interruption dans une table de vecteurs d'interruption. Chaque entrée de la table de vecteurs d'interruption, appelée vecteur d'interruption, est l'adresse d'un gestionnaire d'interruption (également appelé ISR ). Bien que le concept soit commun à toutes les architectures de processeur, les IVT peuvent être implémentées de manière spécifique à chaque architecture. Par exemple, une table de répartition est une méthode d'implémentation d'une table de vecteurs d'interruption.

Arrière-plan

La plupart des processeurs disposent d'une table de vecteurs d'interruption, y compris les puces d' Intel , AMD , Infineon , Microchip Atmel , NXP, ARM etc.

Gestionnaires d'interruption

Méthodes de manipulation

Une table de vecteurs d'interruption est utilisée dans les trois méthodes les plus courantes pour trouver l'adresse de départ de la routine de service d'interruption :

« Prédéfini »

La méthode « prédéfinie » charge le compteur de programme (PC) directement avec l'adresse d'une entrée dans la table des vecteurs d'interruption. La table de sauts elle-même contient du code exécutable. Alors qu'en principe un gestionnaire d'interruption extrêmement court pourrait être stocké entièrement dans la table des vecteurs d'interruption, en pratique le code de chaque entrée est une instruction de saut unique qui saute vers la routine de service d'interruption complète (ISR) pour cette interruption. Les microcontrôleurs Intel 8080 , Atmel AVR et tous les microcontrôleurs 8051 et Microchip utilisent l'approche prédéfinie.

"Aller chercher"

La méthode « fetch » charge le PC indirectement, en utilisant l'adresse d'une entrée dans la table des vecteurs d'interruption pour extraire une adresse de cette table, puis en chargeant le PC avec cette adresse. Chaque entrée de l'IVT est l'adresse d'une routine de service d'interruption. Tous les microcontrôleurs Motorola/Freescale utilisent la méthode fetch.

« Accusé de réception d'interruption »

Pour la méthode « d'accusé de réception d'interruption », le périphérique externe donne au processeur un numéro de gestionnaire d'interruption. La méthode d'accusé de réception d'interruption est utilisée par le processeur Intel Pentium et de nombreux microprocesseurs plus anciens.

Lorsque le processeur est affecté par une interruption , il recherche le gestionnaire d'interruption dans la table des vecteurs d'interruption et lui transfère le contrôle.

Plus d articles de Worldlex Wiki

Revenez a l index pour explorer davantage de pages sur l histoire, la science, la culture, la geographie et la societe en francais.

Explorer l index