FPGA Implementation of Universal Asynchronous Receiver and Transmitter (UART)
FPGA Implementation of Universal Asynchronous Receiver and Transmitter (UART)
Haibo Wang
ECE Department
Southern Illinois University
Carbondale, IL 62901
1-1
Synchronous
Data transfer
data
Start
bit B0 B1 B2 B3 B4
Stop bits
B5 B6
Parity
clk
data
B0
B1
B2
B3
B4
B5
11-2
1-2
TxD
D[7:0]
Rec. Shift Reg.
RxD
Ground
Interface
Baud
rate ckt.
Most materials presented here are from FPGA Prototyping by Verilog Examples by Pong Chu.
You can download the UART chapter of the book at: http://academic.csuohio.edu/chu_p/rtl/fpga_vlog.html
1-3
UART Parameters
1-4
Number of
Stop bits
00:
01:
10:
11:
invalid
1 bit
1.5 bits
2 bits
Mode register
Baud Rate
Parity enable
0: disable
1: enable
Character length
Parity
0: odd
1: even
00:
01:
10:
11:
5 bits
6 bits
7 bits
8 bits
1-5
1-6
1-7
1-8
1-9
Functionally OK
Better
1-10
1-11
1-12
1-13