UART
TUTTO CIÒ DI CUI HAI BISOGNO
DA SAPERE !!
CONCEZIONI UART
REALIZZAZIONE DEL PROGETTO
(CODICE VERILOG)
Prasanthi Chanda
1. Che cos'è il protocollo UART?
Un insieme di regole e regolamenti è chiamato protocollo.
UART sta per Ricevitore Asincrono Universale e
Trasmettitore.
I protocolli UART sono una comunicazione seriale con due fili
protocols.
Le linee del segnale del cavo dati sono etichettate come Rx e Tx.
La comunicazione seriale è comunemente utilizzata per la trasmissione e
ricevere il segnale.
Trasferisce e riceve i dati in modo seriale bit per bit senza
classe pulsazioni.
2. Qual è il formato del frame del protocollo UART?
Pacchetto
Inizio Bit Bit di dati Bit di parità Bit di stop
(1 bit) (5 a 9 bit) (0 a 1 bit) (1 a 2 bit)
Data Frame
UART è un protocollo a mezzo duplex.
Il mezzo duplex significa trasferire e ricevere i dati ma
non allo stesso tempo.
Il trasmettitore riceve i dati a 8 bit dall'ingresso e li memorizza
in qualche registro.
Il trasmettitore aggiunge quindi alcuni bit speciali come il bit di inizio,
bit di stop e bit di parità (se selezionato) per completare i dati
cornice.
Il data frame viene quindi inviato in serie dal trasmettitore a
il tasso di clock predefinito (baud rate).
Il ricevitore è per impostazione predefinita in stato logico alto, il che indica uno stato di inattività
del ricevitore e continua a cercare la transizione da alto a basso, cioè inizio
bit.
Non appena il bit di inizio viene rilevato, il ricevitore osserva il bit di inizio
per il 50% della velocità di baud di ricezione, se il ricevitore inizia a campionare
altri bit di dati al centro di ciascun bit altrimenti il ricevitore imposta il flag per
errore di incorniciatura.
Dopo aver rilevato i dati a 8 bit, il ricevitore cerca quindi la parità
bit che viene generato dal trasmettitore per l'errore di un singolo bit
rilevamento.
Se il bit di parità viene rilevato correttamente, il ricevitore cerca il bit di stop
per fermare la ricezione dei dati.
Dopo il rilevamento riuscito del bit di stop, la linea del ricevitore diventa alta
stato logico per indicare stato di inattività e iniziare a cercare il prossimo avvio
bit.
3. Come avviene la comunicazione tra il trasmettitore e
Ricevitore in UART?
UART opera senza un segnale di clock, basandosi su un baud prestabilito
tariffa per la sincronizzazione.
Il trasmettitore serializza i dati paralleli e aggiunge un bit di avvio,
bit di parità opzionale e bit di stop per creare un frame di dati completo.
Il frame viene trasmesso bit per bit sulla linea TX.
Il ricevitore rileva il bit di inizio per sincronizzarsi con il segnale in arrivo
frame.
Legge sequenzialmente i bit di dato, controlla la parità per errori (se attivata),
e identifica il bit di stop.
Il ricevitore quindi ricostruisce i dati paralleli originali rimuovendo
i bit aggiuntivi.
Il trasmettitore converte i dati paralleli in seriale.
↓
Bit di avvio aggiunto per segnalare l'inizio della trasmissione dei dati.
↓
Bit di dati inviati sequenzialmente sulla linea TX.
↓
Bit di parità (opzionale) aggiunto per il controllo degli errori.
↓
Bit di stop aggiunto per contrassegnare la fine del frame.
↓
Il ricevitore rileva il bit di avvio e si sincronizza.
↓
Il ricevitore legge i bit di dati e controlla la parità (se presente).
↓
Il ricevitore rimuove i bit di inizio, di parità e di stop.
↓
Il ricevitore ricostruisce i dati paralleli originali.
Fig.1 Diagramma di flusso che rappresenta il Trasmettitore e il Ricevitore
Comunicazione in UART
3. Cos'è un generatore di baud rate in UART e come funziona?
Work?
Il generatore di baud garantisce che il trasmettitore e il ricevitore
operare a una velocità di comunicazione comune.
Prende un segnale di clock di ingresso ad alta frequenza e lo divide per un
valore divisore predefinito.
Il valore del divisore è scelto per corrispondere alla velocità di baud desiderata (ad esempio, 9600,
115200 bps).
Il clock di uscita a bassa frequenza risultante sincronizza il timing per
trasmissione e ricezione dei dati in UART.
Entrambi i dispositivi devono utilizzare la stessa velocità di trasmissione per una comunicazione affidabile.
4. Fornire i diagrammi a blocchi del trasmettitore e del ricevitore UART.
Fig.2 Diagramma a blocchi del Trasmettitore UART
Fig.3 Diagramma a blocchi della macchina a stati del trasmettitore UART
Fig.4 Diagramma a blocchi del ricevitore UART
Fig.5 Diagramma a blocchi della Macchina degli Stati del Ricevitore UART
5. Fornisci i circuiti a blocchi del generatore di baud rate UART.
sel(1:0) clkout
clk
ripristina
Fig.6 Diagramma a blocchi del Generatore di Baud Rate UART
ATTUAZIONE DEL PROGETTO
MODULO DI DESIGN
MODULO PER RILEVARE L'INIZIO
MODULE SIPO
MODULO DI CONTROLLO PARITÀ
MODULO PER BIT DI FINE
MODULE PER MUX TRASMETTITORE
MODULO PER PARITÀ DEL TRASMETTITORE
MODULO PER TRASMETTITORE PISO
MODULO PER TRASMETTITORE TX
MODULO PER TRASMETTITORE FSM
MODULO PER UART RX
MODULO PER BRG
MODULO PER FSM DEL RICEVITORE
BANCHINA DI PROVA