Skip to content

A dual clock asynchronous FIFO written in verilog, tested with Icarus Verilog

License

Notifications You must be signed in to change notification settings

danieltangdx/async_fifo

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Asynchronous dual clock FIFO

GitHub issues GitHub forks GitHub stars GitHub license Twitter

Overview

This repository stores a verilog description of dual clock FIFO. A FIFO is a convenient circuit to exchange data between two clock domains. It manages the RAM addressing internally, the clock domain crossing and informs the user of the FIFO fillness with "full" and "empty" flags.

It is widely inspired by the excellent article from Clifford Cummings, Simulation and Synthesis Techniques for Asynchronous FIFO Design <http://www.sunburst-design.com/papers/CummingsSNUG2002SJ_FIFO1.pdf>_

The simulation testcases available use Icarus Verilog <http://iverilog.icarus.com>_ and SVUT <https://github.com/ThotIP/svut>_ tool to run the tests.

Documentation

About

A dual clock asynchronous FIFO written in verilog, tested with Icarus Verilog

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Verilog 85.9%
  • SystemVerilog 13.0%
  • Other 1.1%