Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Modular UART

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 28

CONTENTS

• Project Flow
• Introduction
• UART Design
• Baud Rate Generator
• Transmitter
• Receiver
• Block diagram of UART
• Simulation Result
• RTL Schematic
• Technology Schematic
• Reports
• Conclusion
• Future Work
• References
Project Flow
 Literature Survey.
 Design of Baud rate generator.
 Design of receiver and transmitter.
 Debugging of UART.
 Simulation.
 Synthesis.
 Verification.
 Implementation.
Introduction

 UART acronym for Universal Asynchronous


Receiver and Transmitter.

 Asynchronous Serial communication protocol.

 Full Duplex communication.

 Used between the slow and the fast peripheral


devices.
Contd..
 Converts the bytes it gets from the computer along
parallel circuits to a single serial bit stream for
outbound transmission.

 For inbound transmission, converts the serial bit


stream to the bytes that the system handles.

 Adds a parity bit after selection in outbound


transmissions, checks the parity of incoming bytes (if
selected) and rejects the parity bit.
UART Design
 A UART frame consists of 1 start bit, a number of
data bits, an optional parity bit and 1, 1.5, or 2 stop
bits.

 Signal is 1 (high voltage) when the system is idle.

 Start bit is 0 and stop bits are 1.

 LSB is first transmitted or received.


Contd..

 UART is composed of a Baud Rate Generator


(BRG), a receiver module, and a transmitter module

 Designed by using Modular design approach.


Baud Rate Generator
 Baud rate: The number of bits transmitted per
second. frequently used baud rate: 9600, 19,200.

𝑓𝑐𝑙𝑘
 n=
𝐵𝑚𝑎𝑥 ×𝐶×2
Where
fclk: system clock Frequency
C: the number of samples per bit cell
Brmax: the maximum baud rate frequency
Contd..

 Multiplexer based designing of baud rate


generator is used.
RTL Code of Baud Rate generator

Clock divide by n Divide by 256

module clk_div(input clk,rst, module counter_8(input clk,rst,


output q) output reg [7:0]q);

reg [2:0]q1;
always@(posedge clk)
always@(posedge clk) begin
begin if(!rst) if(!rst)
q1<=3'b001; q<=8'd0;
else else
q<=q+1;
q1<={q1[0],q1[2:1]};
end
end endmodule
assign q=q1[0];
endmodule
Contd..

Multiplexer Divide by 8
module mux_8(input [7:0]d, module divide_by_8(input clk,rst,
input [2:0]sel, output q);
output reg y); reg [2:0]count;
always@(d,sel)
always@(posedge clk,negedge rst)
begin case(sel)
begin
3'b000:y=d[0];
3'b001:y=d[1]; if(!rst)
3'b010:y=d[2]; count<=3'd0;
3'b011:y=d[3];
3'b100:y=d[4];
else
3'b101:y=d[5]; count<=count+1;
3'b110:y=d[6]; end
3'b111:y=d[7]; assign q=count[2];
endcase
endmodule
end
endmodule
Block Diagram of Transmitter
 Logic diagram of the transmitter of a UART.
1
1 P 0 TxD

Parity generator
TE

TxC Transmitter Control TDR

Data Bus
SM of Transmitter

bct=10
Block Diagram of Receiver
 Logic diagram of the receiver of UART
DATA BUS

RDR FE OE PE RF RcvSR

RxD RxC
1 P RSR 0 Receiver Control
SM of Receiver
Block Diagram
SIMULATION RESULTS
 Simulation result of baud
rate generator
Contd..

 Simulation result of UART


RTL SCHEMATIC
Technology Schematic
POST SYNTHESIS UTILIZATION REPORT
POST IMPLEMENTATION UTILIZATION
REPORT
Power report
 There are 2 power report.
• Post synthesis
• Post route

 Two modes of power estimation


• Vector based
• Vector less
POST SYNTHESIS POWER REPORT
POST IMPLEMENTATION POWER
REPORT
Conclusion

 UART Module is designed by using Verilog HDL.

 Design is simulated and verified with the help of


output waveform in Xilinx Vivado HLS.

 The design code if fully synthesizable and has no


latch.
Future Work

 Verification of UART.

 Implementation on FPGA.
REFERENCES
 U. Nanda and S. K. Pattnaik, “Universal asynchronous receiver
and transmitter (uart),” in Advanced Computing and
Communication Systems (ICACCS), 2016 3rd International
Conference on, vol. 1. IEEE, 2016,pp. 1–5.
 Y.-y. Fang and X.-j. Chen, “Design and simulation of uart serial
communication module based on vhdl,” in Intelligent Systems and
Applications (ISA), 2011 3rd International Workshop on. IEEE,
2011, pp. 1–4.
 G. B. Wakhle, I. Aggarwal, and S. Gaba, “Synthesis and
implementation of uart using vhdl codes,” in Computer, Consumer
and Control (IS3C), 2012 International Symposium on. IEEE, 2012,
pp. 1–3.
 Y. Wang, and K. Song, “A new approach to realize UART,” Int’l
Conf. on Elect. and Mech. Eng. and IT (EMEIT 2011), Harbin,
Heilongjiang, China, Aug. 2011.

You might also like