Calcolatori elettronici/Intel 8255
L'Intel 8255 è un dispositivo, messo in commercio alla fine degli anni '70, per gestire le interfacce parallele, che permettono il trasferimento di un byte alla volta. Oggi i segnali che erano diretti a tale modulo sono supportati da un modulo inserito nel processore.
Il segnale di enable si chiama Chip Select (CS).
L'interfaccia parallela contiene 4 porte (porta A, porta B, porta C, registro di controllo CW) di parallelismo 8 bit. I primi 18 bit alti degli indirizzi forniti dal processore vengono ignorati (l'8086 ha un ABus su 20 bit), mentre i due bit bassi A0 e A1 identificano il registro su cui operare.
Modalità
[modifica | modifica sorgente]Le periferiche possono lavorare in diverse modalità, forzate da alcuni bit del registro di controllo.
Modo 0: Basic Input/Output
[modifica | modifica sorgente]Il Basic Input/Output non supporta né gli interrupt né i segnali di controllo, e ciascuna porta può essere impostata in input o in output.
- Vantaggio
- le porte A, B e C possono così essere collegate a 3 periferiche diverse, se queste richiedono ciascuna solo una porta
Modo 1: Strobed Input/Output
[modifica | modifica sorgente]Il Strobed Input/Output supporta l'interrupt tramite la porta C → solo le porte A e B possono venire usate per il trasferimento dati.
L'Intel 8255 può inviare la richiesta di interrupt al processore tramite il segnale INTR.
Segnali di controllo tra periferica e Intel 8255
[modifica | modifica sorgente]- Input
- INTE: serve per ignorare temporaneamente le richieste di interrupt;
- STB (strobe): la periferica chiede all'Intel 8255 di caricare internamente il dato fornito dalla periferica;
- IBF: l'Intel 8255 comunica all'esterno che ha acquisito internamente il nuovo dato.
- Output
- OBF: l'Intel 8255 informa che il dato è pronto per la lettura;
- ACK (acknowledge): la periferica informa che ha finito di acquisire il nuovo dato dall'Intel 8255.
Modo 2: Bidirectional Input/Output
[modifica | modifica sorgente]Il Bidirectional Input/Output supporta segnali che sono un po' in input e un po' in output.
Può essere utilizzata solo la porta A: la porta C si occupa come nel modo 1 dei segnali di input/output (STB, IBF, OBP e ACK).