Skip to content

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

UART Transmitter using Verilog HDL

Overview

This project implements a UART (Universal Asynchronous Receiver Transmitter) using Verilog HDL. The transmitter converts 8-bit parallel data into serial data using a Finite State Machine (FSM).


Features

  • FSM based UART Transmitter
  • 8-bit Serial Data Transmission
  • Start Bit and Stop Bit Generation
  • Shift Register based Data Transfer
  • Bit Counter
  • Verilog Testbench
  • Functional Verification

FSM States

IDLE → START → DATA → STOP → IDLE

State Function
IDLE Wait for transmission
START Send start bit (0)
DATA Send 8 data bits
STOP Send stop bit (1)

Project Structure

UART-Transmitter/
│
├── src/
├── tb/
├── waveform/
├── block_diagram/
├── state_diagram/
└── README.md

Block Diagram

Block Diagram


FSM State Diagram

FSM State Diagram


Simulation Waveform

Waveform


Tools Used

  • Verilog HDL
  • VS Code
  • Icarus Verilog
  • EDA Playground / EPWave
  • Git
  • GitHub

Simulation Commands

Compile

iverilog -o uart src/uart_tx.v tb/uart_tx_tb.v

Run

vvp uart

Author

Developed as a VLSI RTL Design Project.

About

UART Transmitter using Verilog HDL with FSM-based design and functional verification.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Contributors

Languages