Estratto del documento

0.1. I DISPOSITIVI SERIALI

0.1 I dispositivi seriali

La comunicazione seriale tra due dispositivi può essere caratterizzata da diverse mo-

dalità operative:

simplex, che prevede che i dispositivi siano collegati da una linea mono-direzionale,

poiché i ruoli di ricevitore e trasmettitore sono sempre svolti dagli stessi dispositivi;

half-duplex che prevede che i dispositivi siano collegati da una linea bi-direzionale

che non consente la comunicazione contemporanea nelle due direzioni, poiché il ruolo

di ricevitore o trasmettitore può essere svolto a turno da uno dei due dispositi;

full-duplex prevede che i dispositivi siano collegati da una linea bi-direzionale che

consente la comunicazione contemporanea nelle due direzioni, poiché il ruolo di rice-

vitore o trasmettitore può essere svolto contemporaneamente da entrambi i dispositi.

Nella comunicazione seriale orientata ai caratteri, le informazioni da trasmettere

sono organizzate in una sequenza ordinata di caratteri, ognuno dei quali codificato da

una parola di 7 o 8 bit. Inoltre, i caratteri coinvolti nella trasmissione seriale devono

essere strutturati sotto forma di un messaggio composto da tre campi:

• l’intestazione (header) comprende tutti i caratteri necessari per inizializzare

una comuncazione seriale, includendo i caratteri di sincronismo e di inizio testo;

• corpo

il (body) include i caratteri che rappresentano le vere e proprie informa-

zioni da trasmettere;

• coda

la (trailer) contiene i caratteri necessari per terminare una comuncazione

seriale, includendo il carattere di fine testo, gli eventuali caratteri di ridondanza,

e il carattere di fine turno per i canali half-duplex.

Il messaggio viene trasmesso un carattere alla volta, a partire dal primo carattere

dell’intestazione, e ciascun carattere viene trasmesso dal bit meno significativo al più

significativo, generando un segnale logico corrispondente al valore del bit inviato in

quell’istante, secondo una cadenza temporale prefissata. L’informazione così trasmessa

può venire ricostruita nella sequenzaa dei bit da un sistema ricevente che sia in grado

di campionare il segnale ricevuto con un clock locale con la medesima frequenza di

trasmissione e sincronizzato anche in fase.

La trasmissione seriale dei singoli caratteri di un messaggio richiede implica la seria-

lizzazione dei bit che compongono il dato trasmesso nel dispositivo trasmettitore e la

parallelizzazione nel dispositivo ricevitore. In una trasmissione orientata al carattere,

ogni carattere è convertito dalla sua forma parallela in cui è presente in un registro

di buffer alla forma seriale da immettere sulla linea di trasmissione e viceversa. Per

operare questa conversione parallelo-serie e serie-parallelo, è necessario disporre di par-

ticolari dispositivi basati su shift register a 8 bit di tipo parallel-in/serial-out (per il

trasmettitore) e di tipo serial-in/parallel-out (per il ricevitore).

Il trasferimento di un carattere può essere realizzato collegando l’uscita serial-out del

trasmettitore con l’ingresso serial-in del ricevitore e sincronizzando la parallelizzazione

dei bit campionati dal ricevitore con la serializzazione dei bit inviati dal trasmettitore.

Una semplice soluzione consiste nel dotare il trasmettitore e il ricevitore di un unico

clock comune, in modo da sincronizzare la serializzazione dei bit in trasmissione sul

1

0.1. I DISPOSITIVI SERIALI (b) tempificazione dei caratteri tra-

(a) modello logico della trasmissione seriale smessi a partire da clock Tx

Figura 0.1

fronte di salita del clock e il campionamento dei bit in ricezione sul fronte di discesa

del clock, così come mostrato in figura 0.1.

Per consentire un corretto trasferimento dei dati, i clock di trasmissione e quello di

ricezione devono avere la stessa frequenza e fase. In generale, nella trasmissione seriale

i singoli apparati sono dotati di clock autonomo, stabile in frequenza e sincronizzato in

fase ad ogni trasmissione di carattere, in grado di realizzare lo stesso campionamento

in trasmissione e ricezione .

In fig.0.1 è mostrato un campionamento con riferimento al dato binario “01001101”

effettuato sul fronte di discesa del clock.

I meccanismi di sincronizzazione dei flussi dati e di sincronizzazione dei clock è

legato alla tipologia di trasmissione sincrona o asincrona utilizzata. Nella trasmissione

sincrona la sincronizzazione avviene con riferimento a blocchi di caratteri mentre per

quella asincrona avviene carattere per carattere secondo la modalità Start-Stop di

seguito discussa.

0.1.1 Comunicazione asincrona

Nella comunicazione asincrona di tipo Start-Stop la trasmissione dei dati è effettuata

carattere per carattere. Ciascuno di essi è codificato su 5, 6, 7, 8 bit (il tipo di codifica

adottato è indipendente dal meccanismo di trasmissione; una codifica ampiamente

adottata è, ad esempio, quella ASCII per dati su 7 bit) ed è trasmesso all’interno di

k

un frame di bit, in cui sono presenti ulteriori bit adibiti alla sincronizzazione e al

controllo della parità.

Il campionamento della cella da inviare è effettuato alla frequenza del clock di

trasmissione Clk_Tx così come quello di ricezione Clk_Rx.

In assenza di trasmissione la linea è posta nello stato di “idle” caratterizzato dalla

presenza di un livello “1” logico continuo. All’atto della trasmissione di un carattere

τ

si esce da tale stato e si pone la linea a “0” logico per la durata di una cella bit.

1 0

Tale bit è detto di “Start” e la variazione del fronte del livello logico della linea

k

genera l’evento che avvia, nella corretta fase, il treno di impulsi di clock usati per

campionare il frame di dati da trasmettere.

Alla cella del bit di “Start” seguono le celle (5, 6, 7 o 8) del carattere, un’eventuale

τ 1, 5τ

cella dedicata ad un bit di parità e, per ultima una cella di durata di , o

2τ , posta al valore logico “1” e detta di “Stop” che chiude la trasmissione del frame

riposizionando la linea nello stato di idle. Si evidenzia che tra la trasmissione di un

2

0.1. I DISPOSITIVI SERIALI

Figura 0.2: Cella di trasmissione asincrona campionata

carattere e il successivo la linea deve permanere in stato di idle almeno per la durata

di una cella di stop. f

Onde garantire un’adeguata stabilità nella frequenza di campionamento , questa è

c

16f 64f

effettuata mediante un clock operante ad una frequenza superiore, o .

c c

16f

In fig. 0.3è mostrato il campionamento di un frame in ricezione con un clock per

c

una trasmissione caratterizzata da un frame composto da 9 bit: 1 start+7dato+1stop.

1 0

Riconosciuta la transizione dello start bit, punto (A) in figura, il ricevitore

16x9 = 144

abilita il clock locale a trasmettere un treno di impulsi. Tali impulsi sono

[8, (8 +

contati da un contatore che abilita il campionamento secondo la sequenza

16), ..., (8 + 7x16), 8 + 8x16)] riportata in figura. In tal modo la linea è campionata

al centro di ognuna delle 9 celle bit e ciò garantisce la corretta lettura dei valori della

linea anche in presenza di un piccolo errore di fase. Al termine del campionamento del

frame, il ricevitore ne verifica la correttezza strutturale (presenza di 8 bit e dello stop

bit, che chiude il frame) e riprende il riconoscimento della variazione del fronte dello

stato di idle verso il successivo start bit. In caso di mancato riscronto dello stop bit,

il circuito provvede a generare un segnale di errore di frame. Altri errori monitorati e

segnalati sono quello di parità (se adottata nel frame) e quello detto di “overrun” che

consiste nella mancata lettura di un carattere presente sul registro a scorrimento che

lo parallelizza bufferizzandolo prima che sia arrivato il primo bit di start del successivo

carattere.

0.1.2 Comunicazione sincrona

La comunicazione seriale sincrona presenta dei fattori di efficienza migliori rispetto a

quella asincrona a scapito di una maggiore complicazione circuitale dei sistemi tra-

smittenti e riceventi. Essa migliora l’efficienza di trasmissione riducendo il numero di

bit di controllo necessari a gestire la trasmissione stessa. Ciò è ottenuto trasmettendo

blocchi di dati fissi (trasmissione a blocchi) o variabili (trasmissione bit-oriented, si

ammette cioè la possibilità di trasmettere dati rappresentati da stringhe binarie anche

di lunghezza variabile) in un unico frame, realizzando un flusso di dati continuo “sin-

crono”, cioè la cui sincronizzazione è garantita da meccanismi che mantengono in fase

3

0.1. I DISPOSITIVI SERIALI

Figura 0.3: Campionamento di un frame

il clock per tutta la durata del blocco trasmesso. Si provvede, inoltre, a eliminare la

trasmissione di start e stop bit e il bit di parità per ogni carattere sostituendolo con

un controllo di errore legato al blocco ottenuto mediante codici a ridondanza ciclici

(CRC).

Nella comunicazione seriale sincrona, l’intero messaggio è trasmesso come un flusso

continuo destrutturato di bit, senza alcun delimitatore di caratteri. La discriminazione

fra i vari caratteri (se necessaria) è ottenuta successivamente alla ricezione dando

struttura al flusso di bit ricevuto mediante azioni di conteggio e selezione in hardware

dei bit utili che codificano i vari caratteri.

Non disponendo più dei bit di start e stop per la rifasatura del clock di ricezione, la

sincronizzazione di bit può essere ottenuta o con un clock esterno fornito al ricevitore

dal trasmettitore oppure con un clock interno stabile in frequenza e tale da garantire

l’aggancio di fase per tutta la durata di un messaggio e dotato di un meccansimo di

rifasatura.

L’impossibilità di eliminare completamente i fenomeni di deriva nel tempo sugli oscil-

latori implica che la sincronizzazione con aggancio di fase sia basata sulla capacità del

ricevitore di “autosincronizzare” il proprio clock di campionamento con le transizioni

1 0 presenti nel messaggio stesso. In particolare, l’aggancio di fase può essere ot-

tenuto prevedendo all’inizio, e periodicamente all’interno del messaggio, l’inserimento

di speciali caratteri di sincronismo, codificati in modo da asicurare una presenza suffi-

cientemente elevata di transizioni di livello. Una volta che il carattere di sincronismo

viene riconosciuto, il clock di campionamento del ricevitore viene abilitato fino ad una

nuova fase di sincronizzazione attivata dal ricevimento di un opportuno carattere di

sincronizzazione (tale carattere, in uno dei protocolli sincroni più diffusi, il BSC della

IBM, è il 16 esadecimale che corrisponde alla stringa binaria 00010110 e ad un segnale

nella linea della forma di quello riportato in figura:

La tabella di seguito mostra la codifica dei caratteri di controllo presenti nel codice

ASCII ove sono anche indicati taluni caratteri utilizzati nella trasmissione sincrona di

tipo BSC fra cui il Sync prima indicato.

Quando è necessario inserire il carattere di sincronismo all’interno del messagio,

esso viene posto in posizioni prefissate

Anteprima
Vedrai una selezione di 5 pagine su 20
Dispositivi seriali Pag. 1 Dispositivi seriali Pag. 2
Anteprima di 5 pagg. su 20.
Scarica il documento per vederlo tutto.
Dispositivi seriali Pag. 6
Anteprima di 5 pagg. su 20.
Scarica il documento per vederlo tutto.
Dispositivi seriali Pag. 11
Anteprima di 5 pagg. su 20.
Scarica il documento per vederlo tutto.
Dispositivi seriali Pag. 16
1 su 20
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Scienze matematiche e informatiche MAT/02 Algebra

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher cecilialll di informazioni apprese con la frequenza delle lezioni di Calcolatori Elettronici II e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli studi di Napoli Federico II o del prof Pastore Stefano.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community