Caricare documenti e articoli online 
INFtub.com è un sito progettato per cercare i documenti in vari tipi di file e il caricamento di articoli online.


 
Non ricordi la password?  ››  Iscriviti gratis
 

L' INTERFACCIAMENTO I/O

informatica




L' INTERFACCIAMENTO I/O


L'utilizzo dell' mP0 ,ci fornisce un modo rapido per inserire dei dati nella memoria, ma se in realtà esistesse veramente,con una memoria a 256 byte sarebbe di difficile utilizzo anche perché non ha nessun collegamento col mondo esterno. Quindi si ha bisogno di dispositivi che permettano questa funzione : i dispositivi di  I/O che si collegano al microprocessore per mezzo del : bus dati (usato per il trasferimento di dati),bus indirizzi (usato per scegliere a quale dispositivo fare riferimento) e del bus di controllo (usato per es. per stabilire se l'operazione è in lettura o scrittura ma solitamente serve a sincronizzare le operazioni di clock ( anche se le porte I/O sono asincrone)).


Per il collegamento dell' I/O si possono usare due tipi di architetture differenti :

1-Memory mapped I/O

2-Isolated I/O


Memoria e I/O sono visti dal microprocessore come entità dello stesso tipo, una parte degli indirizzi è dedicata alla memoria , un' altra all' I/O .Il vantaggio di questa architettura è che il microprocessore usa le stesse istruzioni sia con l'una che con l'altra.




Es: 6502 Rockwell o Motorola 6800 e 68000


2-Il microprocessore distingue le operazioni I/O e memoria . Il vantaggio riguarda il fatto che il

microprocessore può utilizzare la stessa capacità d'indirizzamento sia per l'I/O che per la

memoria, quindi si ha un guadagno di spazio totale d'indirizzamento.

Es:Z80 Zilog


Un ulteriore architettura è quella detta multibus, dove si usano bus separati per la memoria e per l'I/O : il vantaggio sono i trasferimenti con la memoria e con l I/O.   


mP0

 

I/O

 

Memoria

 


I/O







BUS CONTROLLO mp0


MREQ :Richiesta di memoria .Attivato dalla UC (unità di controllo) quando si effettua un  .

trasferimento di dati con la memoria.

I/OREQ: Richiesta di I/O . Attivato dalla UC quando si effettua un trasferimento di dati con l'I/O.

R/W  :Quando mP0 è in lettura UC=1,quando è in scrittura UC=0.

INT   :Segnale d' interruzione.

CLOCK:Segnale di sincronismo. 


DISPOSITIVI  I/O :

Il simulatore di mP0 ha solamente il collegamento di 2 porte d'ingresso (una per la tastiera ($e0) e una per la porta stampante ($f0),che serve per acquisire i dati ad 8 bit) ed una d'uscita ($f0),che è la stessa di quella d'ingresso.

Girelli Emanuele Quarta B pag.2


Analizzando la porta d'uscita (porta parallela P.C.),vediamo che è costituita da un latch ad 8 bit con ingressi collegati al bus dati e le uscite sono utilizzabili dall'esterno (per es.collegando un display). Il latch è necessario per memorizzare i dati verso l'uscita presenti sul bus dati perché altrimenti non sarebbero visti dato che l'operazione è troppo breve.La porta ha anche due terminali di controllo: CK(abilita la scrittura nei f.f.),è controllato dal microprocessore in fase di scrittura ed OE((output enaible), che abilita le uscite (3-state)), è controllato dall'esterno in fase di lettura.


Limitazioni: 1- mP non sa se il dato in uscita è stato letto e ne può scrivere un altro

2- Fuori non si sa se il dato è stato letto dal microprocessore e se ne può scrivere un

altro.


Per risolvere a questo problema si ricorre ad un flag .

Con flag =1: il microprocessore scrive nel f.f.

flag =0: lo si imposta da fuori dopo che si è acquisito il dato e torna ad 1 quando ce n'è uno

nuovo (protocollo di handshaking).


Il flag può essere usato con un latch S-R:

SET:controllato dal microprocessore quando esegue una scrittura sui f.f. collegato al CK porta.

RESET:usato dopo la lettura dei f.f. e comandato dall'OE della porta.

Q:portata all'esterno per controllarne il valore.


Per far sapere al microprocessore se il dato è stato letto o no,collegare Q al bus dati(al LSB),quando il micropr. è in fase di lettura quindi usiamo un buffer 3-state tra Q l'LSB.

Si usa Q perché quando il micropr.legge 0 dal flag,la porta non è libera e c'è ancora il dato.Quando il dato è stato letto si resetta Q =0 e il micropr. scrive nuovo dato.


Vista a sé stante la porta d'uscita (e d'ingresso) è in simmetria con l'interno e l'esterno,invertendo

CK/OE  dell'uscita si ha la porta d'ingresso.Meglio usare una porta con memoria che memorizzi i dati anche in caso di perdita d'essi.


PORTA D'INGRESSO


Inviato il dato a 8 bit su porta d'ingresso,si abilita il segnale di scrittura:si memorizza il dato e si porta Q=1,con Q negatola porta è occupata dal dato.Per leggere Q, il micropr. Porta sul bus dati (con buffer 3-state),genera il segnale di lettura abilitando OE e il latch porta Q=0,indicando che il

micropr. è pronto per un nuovo dato.

STRUTTURA COMPLETA PORTA PARALLELA



Memo

 

mP0

 
3-state


Bus dati

Rete decodifica

 

S Q


R   Q

 

OE porta CK

 
Bus controllo

Bus indirizzi





Porta libera




Privacy




Articolo informazione


Hits: 1630
Apprezzato: scheda appunto

Commentare questo articolo:

Non sei registrato
Devi essere registrato per commentare

ISCRIVITI



Copiare il codice

nella pagina web del tuo sito.


Copyright InfTub.com 2024