Changed lines 16-17 from:
to:
Sistema di elaborazione e periferiche sono collegate da un canale di comunicazione, composto dal mezzo trasmissivo (cavo fisico, etere, ...) e dai due gestori delegati alla comunicazione, uno per dispositivo.
La CPU comunica con la periferica tramite un'interfaccia interna alla macchina, composta da due parti:
* una per la comunicazione con il processore (ordini e/o dati)
* una per la gestione della comunicazione con la periferica
Con l'utilizzo dell'interfaccia diventa possibile astrarre la gestione indipendentemente dalle periferiche utilizzate e dai loro standard e tecnologie (in continua evoluzione).
Il secondo gestore che compone il canale di comunicazione si trova sulla periferica, che difatti è composta da:
* una parte per la gestione fisica delle attività interne alla periferica
* una per la comunicazione con il processore
Changed lines 29-30 from:
to:
In tale interfaccia sono utilizzati tre registri, gestiti da un'elettronica che riceve ed esegue i comandi inviati dal processore.
Come prima cosa il processore verifica in quale stato si trova la periferica, se occupata, se pronta ad eseguire comandi, se li ha svolti con successo, con errori, se non funziona, ... tutte informazioni rappresentate con valori definiti dagli standard di comunicazione e riportati nel ''registro di stato''. Se questo valore rappresenta per lui una risposta sensata, provvede ad inviare un comando all'elettronica che gestisce i registri della periferica.
I nomi dati al ''registro comandi'' e al ''registro dati'' possono trarre in inganno: nel registro comandi non vanno i comandi diretti alla periferica (es. stampa, connettiti, vibra, ..), ma quelli diretti all'elettronica che gestisce i registri dell'interfaccia! I comandi veri e propri per la periferica sono passati nel registro dati.
Quindi nel registro dati vengono scritti sia gli ordini per la periferica, sia eventuali dati provenienti o diretti ad essa; mentre è col registro comandi che rendo possibile le esecuzioni e gli scambi.
Changed lines 39-43 from:
...
!!!!Controllo dell'interfaccia nell'unità centrale (1)
...
to:
Può avvenire per attesa attiva, ovvero il processore legge il registro di stato con un ciclo continuo, finché il valore in esso contenuto non segnala il completamento dell'operazione richiesta (o qualsiasi altro evento il processore stava aspettando).
Durante lo stato d'attesa, il processore non fa nulla.
!!!!Controllo dell'interfaccia nell'unità centrale (2)
Se avviene invece attraverso l'utilizzo di interruzioni, il processore una volta dato l'ordine alla periferica (tramite interfaccia) torna a farsi i cazzacci suoi. Completata l'operazione, l'elettronica di gestione della periferica cambierà opportunamente il valore nel registro di stato ed invierà un interrupt alla CPU.
Il processore sa associare ad ogni interrupt l'interfaccia della periferica che gliel'ha mandata, così da poter gestire la comunicazione col dispositivo corretto.
Changed lines 49-54 from:
!!!!Realizzazione della risposta all'interruzione (1)
...
!!!!Realizzazione della risposta all'interruzione (2)
...
to:
!!!!Trasferimento dati
Quando la mole di dati da trasferire dalla periferica alla CPU (e viceversa) è consistente, spostarla per parole di memoria può essere lento e svantaggioso; molto meglio trasferire per blocchi, ovvero sequenze più o meno estese di parole. Tale operazione è resa possibile da dispositivi DMA (Direct Memory Access) che, una volta dato il comando dal processore, non hanno più bisogno del suo intervento per scambiare dati con la periferica.
!!!!Periferica mappata in memoria
Altro sistema per consentire la trasmissione di un flusso più o meno continuo di dati è associare l'indirizzo della periferica ad alcuni indirizzi della memoria centrale. La comunicazione avviene così in modo più rapido e semplice, dal momento che il processore tratterà l'operazione come un comune accesso alla memoria.
Questa strategia viene ad esempio utilizzata con le periferiche video.
Changed lines 58-61 from:
!!!!Realizzazione della risposta all'interruzione (3)
...
to:
!!!!Gestione del canale di comunicazione
Cose già dette.
!!!!Gestione della periferica
Il controllo del dispositivo fisico dipende ovviamente dalla periferica. Può essere quindi composto da pochi circuiti o da strutture incredibilmente complesse (basti pensare che alcune stampanti montano processori estremamente raffinati, se non addirittura uno per colore).