Skip to content

This paper presents design of UART module for serial communication used for short-distance, low speed and exchange of data between computer and peripherals. UART mainly contains Transmitter, Receiver and Baud Rate Generator. Baud Rate Generator generates the clock for the UART. We can achieve the desired Baud Rate by using divide factor from sys…

License

abdelazeem201/ASIC-Implementation-UART

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

84 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ASIC-Implementation-UART

This repository presents design of UART module for serial communication used for short-distance, low speed and exchange of data between computer and peripherals. UART mainly contains Transmitter, Receiver and Baud Rate Generator. Baud Rate Generator generates the clock for the UART. We can achieve the desired Baud Rate by using divide factor from system clock. If we increase the baud rate, speed of serial data transmission increases. As the dividing factor decrease baud rate increases. in this paper we set the system clock frequency as 50MHz and time to transfer each data bit is 23.75ns with baud rate of 42.1 Mbps (dividing factor is 32). Due to increase in the baud rate the time taken to transfer the data decreases, so it is very useful for faster communication devices. Transmitter and Receiver blocks designed by algorithm state machine method simulated in ModelSim, synthesized in Design Compiler, and extracted in ICC in Nangate 45 nm CMOS cell library. Introduction-to-UART-Data-Transmission-Diagram

Introduction

It is a 40-pin-pad-frame communication chip that integrated a transmitter and a receiver, implementing the UART protocol in 6-stage FSM based on 2-phase clocking.

In this project, I went through the whole ASIC design flow:

  • Front-end coding in Verilog (./rtl)

  • Pre-simulation in Modelsim (./Modelsim) ModelSim

  • Synthesis in Design Compiler with TCL (./Syn)

  • Post-Synthesis_Simulation (./Post-Synthesis_Simulation) Modelsim_post_DC

  • Layout in ICC (./Pnr)

ICC

  • Translate layout in Magic (./Magic) Magic

  • Layout verificate in Irsim (./Irsim) Irsim

  • Cleaned up DRC and LVS Violations using Calibre(./pvr). Calibre

END

About

This paper presents design of UART module for serial communication used for short-distance, low speed and exchange of data between computer and peripherals. UART mainly contains Transmitter, Receiver and Baud Rate Generator. Baud Rate Generator generates the clock for the UART. We can achieve the desired Baud Rate by using divide factor from sys…

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published