Swappa : Uni / Interrupt e loro gestione
Creative Commons License

Torna alla pagina di Architettura degli elaboratori


Questa pagina è stata aggiornata GRAZIE agli appunti che AVETE INVIATO nel periodo di chiusura della sezione UniCrema!! È SERVITA A QUALCOSA, NO?! ;)

 :: Interrupt e loro gestione ::

Cos'è

L’interrupt è uno dei tre modi di sincronizzazione tra cpu e interfacce di I/O, e cioè una richiesta di interruzione, da parte dell’interfaccia alla cpu, dello svolgimento dell’attività della CPU. Consente alla periferica di segnalare lo stato di servizio alla cpu mediante la linea dedicata INTREQ del bus di controllo e la cpu risponde, quale riconoscimento di interruzione, con la linea di INTACK.
Ha una visione copernicana della CPU in quanto i ritmi di lavoro sono dettati dagli eventi esterni.
E’ particolarmente adatto a gestire fenomeni urgenti che non possono attendere il tempo di interrogazione di una soluzione a controllo di programma.

Interrupt vettorizzato

Alla ricezione di un interrupt la CPU compie le seguenti operazioni:

Con l'interrupt vettorizzato:

PIC

Un Controllore di Interruzioni Programmabile (PIC, Programmable Interrupt Controller) è un dispositivo hardware che consente di gestire interruzioni vettorizzate con priorità per conto di un processore. Con il PIC l’interfaccia comunica al PIC stesso la richiesta di interrompere l’unita centrale. Se l’interfaccia e abilitata a farlo, il PIC attiva la linea di richiesta a INTREQ. Quando riceve INTACK il PIC comunica l’identificativo sul Data Bus: gli identificativi delle periferiche sono gestiti dal PIC, senza aggiunta di complessità per le interfacce. Inoltre se il PIC riceve più richieste di interrupt da diverse periferiche, dà precedenza a quella più prioritaria.

Funzionamento del PIC

Il PIC (Programmable Interrupt Controller) è il circuito integrato di supporto alla gestione degli interrupt. La sua struttura prevede un'unità di controllo e tre registri accessibili dalla CPU, ovvero:

Vediamo come funziona. La periferica chiede interrupt all’interfaccia e genera un suo “codice identificativo”. L’interfaccia comunica al PIC la richiesta di interrupt e a sua volta il PIC richiede interrupt alla CPU attivando la linea INTREQ. Quando la CPU è pronta a gestire la richiesta di interrupt attiva INTACK e quando il PIC riceve INTACK deposita sul bus dati l’indice del vettore di interrupt relativo all’IVR che gestisce l’interazione con il dispositivo.


Torna alla pagina di Architettura degli elaboratori

(Printable View of http://www.swappa.it/wiki/Uni/InterruptELoroGestione)