Advertisement

Verilog实现同步FIFO设计

阅读量:

FIFO依据输入与输出时钟是否保持同步,可划分为同步FIFO和异步FIFO两种类型。在同步FIFO中,读写控制信号以及数据传输均位于相同的时钟域内,在进行STA分析时通常不会引发亚稳态等不稳定现象;而异步FIFO的读写控制信号则处于不同的时钟域,由于信号之间的不同步,可能诱发亚稳态问题,进而导致FIFO运行异常,设计难度相对较大;因此,在本部分中,我们首先对结构较为简单的同步FIFO展开分析与设计:

目录

一、端口设计

二、功能描述

三、实现代码

四、参考文献:


一、端口设计优化方案

模块端口:

1、时钟信号clk,用作同步FIFO的控制信号

2、异步复位信号rst_n

// 写FIFO相关

3、数据输入信号din[DW-1:0],作为FIFO的数据写入接口,其中DW表示数据的位宽

4、写使能信号we

// 读FIFO相关

5、数据输出信号dout[DW-1:0],用于FIFO的数据输出端口

6、读使能信号re

// 状态标志相关

7、FIFO满标志full,在FIFO满的情况下将禁止数据写入操作

8、FIFO空标志empty,在FIFO为空时将阻止数据读取操作

内部信号:

1、读指针wp,用于指示读取地址(由于FIFO的读写操作只能按顺序进行,且无法由

全部评论 (0)

还没有任何评论哟~