6-TD Interruptions
6-TD Interruptions
6-TD Interruptions
ARCHI2
T.D. N° 6 - Les Systèmes d'interruptions.
Compétence visée : Concevoir des systèmes d’interruption de base pour répondre à des besoins
de contrôle élémentaires.
Sous-compétence :
- Schématiser les composantes principales d’un système d’interruption hiérarchique.
Observations :
1- Vous devez obligatoirement déposer sur la plateforme Classroom les circuits réalisés sur le
simulateur Logisim, pour résoudre les exercices 5 et 6. Une note sera attribuée.
2- Un malus sera attribué aux étudiants qui ne remettent pas l’exercice obligatoire.
3- En cas de plagiat, la note zéro sera accordée automatiquement et un malus sera attribué à
tous les travaux suivants.
Exercice 1 :
Un ordinateur a un répertoire de 36 instructions. Chaque instruction occupe 24 bits en mémoire
centrale. Les instructions de manipulation des interruptions ont pour fonction de masquer ou démasquer
un niveau d'interruption, armer ou désarmer une cause d'interruption ou enfin d'activer ou désactiver
tout le système d'interruption.
Pour chacune de ces instructions, les 5 bits de poids faible indiquent: La cause (sur 3 bits); Le niveau
(sur 2 bits). Ces instructions manipulent un registre masque et des bascules d'armement.
Questions:
1- Faire le schéma du circuit associé au système d'interruption.
2- Quel est l'effet que provoque le chargement de la valeur 3 dans le registre masque ?
3- Quel est l'effet que provoque la mise à zéro de la bascule d'armement ?
Exercice 2 :
Soit une machine disposant d’un système d’interruptions hiérarchisé permettant de valider ou
d’invalider le système d’IT, de masquer un niveau et d’inhiber une cause d’interruption. Les niveaux
sont répartis comme suit:
• Niveau 0 (le plus prioritaire) : 4 causes toutes utilisées pour des interruptions matériel.
• Niveau 1 : 2 causes réparties comme suit:
Cause 0: utilisée pour une interruption d’Entrée / Sortie.
Cause 1: inutilisée.
• Niveau 2 : 1 cause inutilisée.
• Niveau 3 (le moins prioritaire): 4 causes utilisées pour des interruptions externes.
Question:
Faire le schéma du système d’interruptions en précisant le contenu des registres masque et inhibition
après avoir allumé la machine.
Soit l’enchaînement suivant (figure I): l’UC exécute un programme P de niveau 3. le programme P
est interrompu par une interruption de niveau 0 (IT-0). Au cours du traitement de l'interruption IT-0, il
se produit une interruption de niveau 1 (IT-1) qui n'est pas prise en compte, mais qui est mémorisée. A
la fin du traitement de l' IT-0, l’ IT-1 est prise en compte. L'UC reprend l'exécution de P-3 à la fin du
programme IT-1.
Figure I
Question:
Donner le contenu du registre masque et de la pile à chaque instant (A, B, C, D, E, F).
Exercice 3 :
Soit une machine possédant 6 niveaux d'interruption:
• Niveau 0: Panne de courant (1 cause).
• Niveau 1: Violation de la protection mémoire (1 cause).
• Niveau 2: Interruption d'E/S canal A (1 cause).
• Niveau 3: Interruption d'E/S canal B (1 cause).
• Niveau 4: Interruption d'E/S canal C (1 cause).
• Niveau 5: Interruptions externes libres (4 causes).
On veut réaliser un système d'interruptions hiérarchisé avec la plus grande priorité au niveau 0 et la
moins grande au niveau 5. Le système d'interruption devra disposer des possibilités suivantes:
• Validation / Invalidation du système d'IT.
• Masquage / Démasquage d'un niveau d'IT.
• Inhibition d'une ou plusieurs causes d'IT (niveau 5 uniquement).
Questions:
1- Proposer un schéma complet pour le système d'IT qu'on désire réaliser.
2- Proposer un complément au schéma pour permettre la reconnaissance par câblage du niveau de
l'interruption la plus prioritaire.
Questions:
1- Faire le schéma d'un circuit dont :
• Les entrées sont :
* Les 32 signaux d'interruption.
* Le contenu du registre 8.
• Les sorties sont :
* Un signal d'interruption indiquant à l'UC la prise en compte d'une interruption.
* Le niveau de l'interruption qui vient d'être prise en compte.
* L'adresse mémoire du contexte du programme associé à l'interruption qui vient d'être prise
en compte.
2- A quel endroit est rangé le contexte du programme interrompu: zone du programme interrompu ou
zone de la nouvelle interruption?
3- A quel moment la bascule de mémorisation d'une interruption est-elle remise à zéro ? Quel problème
pourrait se poser si les interruptions étaient acquittées au début du traitement et non à la fin ?
4- En fin de traitement d'une ITi, revient-on obligatoirement au programme interrompu par l'ITi ?
Questions :
1. Donner le schéma interne détaillé de la cellule Daisy-Chain modifiée décrite plus haut sur Logisim
et le déposer sur l’espace classroom.
2. Montrer sur le schéma, la connexion de cellules Daisy-Chain modifiées avec l'UC pour gérer les
interruptions de 16 contrôleurs d'entrées/sorties.
Page 3 sur 4
Exercice 6 : Remise obligatoire sur Classroom
On veut réaliser un calculateur pour gérer une entreprise. Il doit disposer d’un système d’interruptions
hiérarchisé. Le système doit être capable de prendre en compte :
- Les pannes de courant (avertir d’une coupure pour permettre de faire les sauvegardes nécessaires
en utilisant les batteries de secours)
- Les pannes urgentes sur le matériel.
On considére ces deux types de pannes de la même urgence.
Le système doit également être capable de gérer 8 périphériques répartis en deux familles :
- Une première famille de 4 disques prioritaires, permettant le fonctionnement du calculateur ; dans
un premier temps, seuls 2 disques sont connectés.
- Une deuxième famille de 4 périphériques permettant d’assurer les entrées/sorties les moins
prioritaires ; 3 périphériques sont connectés.
Le calculateur sera également utilisé pour gérer un système d’alarmes pour surveiller au maximum 6
locaux. Dans un premier temps, seuls 4 locaux sont connectés, en attendant la connexion des locaux en
cours de câblage.
Les logiciels exécutés par la machine sont affectés à la plus faible priorité.
Questions :
1- Donner le nombre de niveaux nécessaires, et regrouper toutes les causes dans une liste en précisant
le numéro du niveau de la cause, ainsi que son état (inhibée ou active).
2- Faire un schéma détaillé du système d’It sur Logisim et le déposer sur l’espace classroom. Vous
devez identifier clairement toutes les causes et les connecter. Préciser le contenu des registres
importants au démarrage de la machine.
Un exemple type d’exécution sur cette machine est représenté dans la séquence décrite dans le tableau
suivant :
Durée
Temps Programme
(unités temps)
T Système libre
T+15 Lancement de l’exécution d’un programme de gestion des stocks 30
T+20 Une alarme se déclenche dans le local N°2 20
T+22 Une interruption est générée par le contrôleur du disque 0 prioritaire 18
T+25 Une panne survient dans une barrette mémoire 30
T+30 Une panne de courant survient 30
Question :
3- Faire un schéma complet de la séquence en affectant à chaque étape une étiquette (exemple : Instant
A, ...). Identifiez clairement chacune des étapes importantes de la séquence tel que vu en cours.
Indiquer le contenu de la pile et du registre masque à chaque instant. Représenter l’échelle des
temps en précisant l’instant de chaque évènement.
Page 4 sur 4