Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Synchronous FIFO | Verilog HDL

RTL implementation of a Synchronous First-In First-Out (FIFO) memory using Verilog HDL with functional simulation and verification. The design uses a single clock domain for both read and write operations and includes status flag generation for reliable data transfer.


Features

  • Synchronous FIFO Architecture
  • Single Clock for Read & Write Operations
  • Parameterized FIFO Depth and Data Width
  • Read Pointer & Write Pointer Logic
  • Full Flag Generation
  • Empty Flag Generation
  • Synthesizable RTL Design
  • Functional Verification using Testbench
  • Xilinx Vivado Compatible

Tech Stack

  • Verilog HDL
  • Xilinx Vivado
  • RTL Design
  • Digital Logic Design

⚙️ FIFO Specifications

Parameter Value
FIFO Type Synchronous FIFO
Clock Single Clock
Read Operation Synchronous
Write Operation Synchronous
Status Flags Full, Empty
Language Verilog HDL

Working Principle

  • Data is written into the FIFO when Write Enable is asserted and the FIFO is not Full.
  • Data is read from the FIFO when Read Enable is asserted and the FIFO is not Empty.
  • A Write Pointer tracks the next write location.
  • A Read Pointer tracks the next read location.
  • The Full and Empty flags prevent overflow and underflow conditions.
  • Since both operations use the same clock, synchronization between read and write logic is straightforward.

RTL Schematic


Simulation Waveform

Typical verification includes:

  • FIFO Reset
  • Multiple Write Operations
  • Multiple Read Operations
  • Full Condition
  • Empty Condition
  • Simultaneous Read and Write
  • Pointer Wrap-around

Applications

  • Processor Data Buffering
  • UART Communication
  • DMA Controllers
  • Network Packet Buffering
  • Streaming Data Interfaces
  • FPGA and ASIC Designs

About

RTL implementation of a Synchronous FIFO using Verilog HDL with functional simulation and verification.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages