sistemi elettronici programmabili7-1 sistemi elettronici programmabili collegamenti seriali e...

16
Sistemi Elettronici Progr ammabili 7-1 Sistemi Elettronici Programmabili Collegamenti seriali e paralleli

Upload: benigno-russo

Post on 03-May-2015

226 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Sistemi Elettronici Programmabili7-1 Sistemi Elettronici Programmabili Collegamenti seriali e paralleli

Sistemi Elettronici Programmabili 7-1

Sistemi Elettronici Programmabili

Collegamenti seriali e paralleli

Page 2: Sistemi Elettronici Programmabili7-1 Sistemi Elettronici Programmabili Collegamenti seriali e paralleli

Sistemi Elettronici Programmabili 7-2

Tipi di Collegamento

Source Destination Monodirezionale

Sour/Dest Sour/Dest Bidirezionale Half Duplex

Sour-Dest Sour-Dest Bidirezionale Full Duplex

Source Destination Seriale

Source Destination Parallela

Page 3: Sistemi Elettronici Programmabili7-1 Sistemi Elettronici Programmabili Collegamenti seriali e paralleli

Sistemi Elettronici Programmabili 7-3

Seriale (1)

11010011 11010011

CLKTx CLKRx

DataIn DataOut

Page 4: Sistemi Elettronici Programmabili7-1 Sistemi Elettronici Programmabili Collegamenti seriali e paralleli

Sistemi Elettronici Programmabili 7-4

Comunicazione Seriale: Tx

Q

QSET

CLR

D

Q

QSET

CLR

D

Q

QSET

CLR

D

Q

QSET

CLR

D

CLK

Load

Data

TX

Tx

11010011 11010011

CLKTx CLKRx

DataIn DataOut

Tx serializza la WORD inviando i bits che la compongono uno alla volta

Page 5: Sistemi Elettronici Programmabili7-1 Sistemi Elettronici Programmabili Collegamenti seriali e paralleli

Sistemi Elettronici Programmabili 7-5

Comunicazione Seriale: Rx

Q

QSET

CLR

D

Q

QSET

CLR

D

Q

QSET

CLR

D

Q

QSET

CLR

D

CLK

RX

Data

Q

QSET

CLR

D

/n

11010011 11010011

CLKTx CLKRx

DataIn DataOut

Rx

1 2 3 … … … n - 1 n - 1 2

CLK

Rx ricostruisce la WORD andando a valutare il suo significato solo quando sono stati ricevuti tutti i bits di cui è composta

Page 6: Sistemi Elettronici Programmabili7-1 Sistemi Elettronici Programmabili Collegamenti seriali e paralleli

Sistemi Elettronici Programmabili 7-6

Bus: Asincrono Monodirezionale

Master Slave

Data i Data i+1 Data i+2Data

Strobe

Data

Strobe

Strobe

Protocollo chiusoMaster Slave

Data i Data i+1 Data i+2Data

Strobe

Data

Strobe

Wait

Wait

Protocollo aperto

(Slave sempre pronto)

Page 7: Sistemi Elettronici Programmabili7-1 Sistemi Elettronici Programmabili Collegamenti seriali e paralleli

Sistemi Elettronici Programmabili 7-7

Bus: Asincrono Bidirezionale

Master Slave

DataM i DataM i+1 ZData

Strobe

Data

Strobe(Read)

Write

Write

DataS j Z DataS j Z

Write

Read

ZZ

Page 8: Sistemi Elettronici Programmabili7-1 Sistemi Elettronici Programmabili Collegamenti seriali e paralleli

Sistemi Elettronici Programmabili 7-8

Bus: Asincrono Bidirezionale con Wait

Master Slave

DataM i DataM i+1 ZData

Strobe

Data

Strobe

Write

Write

DataS j Z

Write

Read

Wait

Wait

Z

Page 9: Sistemi Elettronici Programmabili7-1 Sistemi Elettronici Programmabili Collegamenti seriali e paralleli

Sistemi Elettronici Programmabili 7-9

Bus: Sincrono

Master Slave

X Data iData

Enable

Data

Enable

Clock

X Data i+1 Data i+2

Clock

Page 10: Sistemi Elettronici Programmabili7-1 Sistemi Elettronici Programmabili Collegamenti seriali e paralleli

Sistemi Elettronici Programmabili 7-10

Comunicazione Seriale Asincrona

baud rate

0 1 100

DATI:

CLOCK:

(oscillatore locale in fase)

CLOCK:

(oscillatore locale non in fase)

L’oscillatore locale deve agganciarsi alla frequenza corretta e poi deve correggere la sua fase in base al bit di start

Overhead in ogni word (la comunicazione rallenta)

• stato di idle, bit start e bit stop

idle idlestart startstop stop

1 1 1 1 1000

0 0 1?0

Page 11: Sistemi Elettronici Programmabili7-1 Sistemi Elettronici Programmabili Collegamenti seriali e paralleli

Sistemi Elettronici Programmabili 7-11

Comunicazione Seriale Asincrona

1 0

Soluzione: La parola da trasferire deve essere piccola

Problema:

• clock shifting

T

nF

T

12 2

FTn

n: numero di bits di cui è composta una word

ΔF: disallineamento tra i due clock

T: tempo di bit

Page 12: Sistemi Elettronici Programmabili7-1 Sistemi Elettronici Programmabili Collegamenti seriali e paralleli

Sistemi Elettronici Programmabili 7-12

Comunicazione Seriale Sincrona

11010011 11010011

CLKTx CLKRx

DataIn DataOut

CLK

data

• assenza di overhead (solo dati)

• il clock può anche non essere trasmesso

Codici: recupero del clock

I dati contengono informazioni anche sul clock

CODclk

dati0 1 1 0 Tx Rx

campionatoredati

codice

Clock recovery

Page 13: Sistemi Elettronici Programmabili7-1 Sistemi Elettronici Programmabili Collegamenti seriali e paralleli

Sistemi Elettronici Programmabili 7-13

Comunicazione Seriale: Codici

• Mediamente il tempo in cui il segnale è alto è pari a quello in cui è alto il segnale di clock (non trasferito)

• Il clock di campionamento deve essere doppio di quello dei dati iniziali (codifica Manchester)

Page 14: Sistemi Elettronici Programmabili7-1 Sistemi Elettronici Programmabili Collegamenti seriali e paralleli

Sistemi Elettronici Programmabili 7-14

Codice di Parità

TX

B7 B6 B5 B4 B3 B2 B1 B0

1 0 1 1 0 0 0 1

Channel RX

B7 B6 B5 B4 B3 B2 B1 B0 PT

1 0 1 1 0 1 0 1 0

P

0

PL

1

BER (Bit Error Rate)

Word (in genere char)

Non è possibile ricostruire quale bit sia errato, la word non può essere corretta

Page 15: Sistemi Elettronici Programmabili7-1 Sistemi Elettronici Programmabili Collegamenti seriali e paralleli

Sistemi Elettronici Programmabili 7-15

Pacchetto

Header Trailer Checksum

Word (Char)

Checksum = - (Header + Trailer) mod 2n

Checksum + Header + Trailer = 0

1Individuo la presenza di errori ma non posso dire quale word lo abbia causato

Page 16: Sistemi Elettronici Programmabili7-1 Sistemi Elettronici Programmabili Collegamenti seriali e paralleli

Sistemi Elettronici Programmabili 7-16

Correzione di errore

Utilizzando la matrice di parità individuo le words corrotte e anche i bits sbagliati (potrei effettuare una correzione)