推荐星级:
  • 1
  • 2
  • 3
  • 4
  • 5

基于Verilog HDL语言的32X8 FIFO设计和高速异步FIFO的实现

更新时间:2020-06-30 15:56:05 大小:171K 上传用户:xzxbybd查看TA发布的资源 标签:verilog hdlFIFO 下载积分:2分 评价赚积分 (如何评价?) 收藏 评论(0) 举报

资料介绍

基于Verilog HDL语言的32X8 FIFO设计和高速异步FIFO的实现


摘 要 介绍了FIFO 的基本概念、设计方法和步骤,采用了一种新颖的读、写地址寄存器和双体存储器的交替读、

写机制,实现了FIFO 的基本功能,同时使本32X8 FIFO 拥有可同时读、写的能力,完全基于Verilog HDL 语

言实现了电路功能并应用Synopsys 公司的Design Compiler 和VCS 对其进行综合、仿真。


 对基于单体存储器的FIFO ,作为一种数据缓冲器,其数

据存放结构和RAM是一致的,只是存取方式有所不同。因

RAM中的各存储单元可被随机读写,故FIFO 的队首位置及

队列长度均可浮动。为此,需要用两个地址寄存器,分别存

储读地址(即队首元素地址) 和写地址(即队尾元素地址加

1) 。在读写过程中FIFO 所存储的信息并不移动,而是通过

改变读地址或写地址来指示队首队尾。

本32X8 FIFO 的设计,采用了双体存储器的交替读写机

制,使得在对其中一个存储器写操作的同时可以对另一个存

储器进行读操作;对其中一个存储器读操作的同时可以对另

一个存储器进行写操作。实现了高速数据缓冲,速度比单体

存储器的FIFO 提高了一倍。

1  指针以及满空信号的产生

空/ 满标志的产生是FIFO 的核心部分。如何正确设计

此部分的逻辑,直接影响到FIFO 的性能。

对于同步FIFO ,读写指针都指向一个内存的初始位置,

每进行一次读写操作,相应的指针就递增一次,指向下一个

内存位置。当指针移动到了内存的最后一个位置时,它又重

新跳回初始位置。在FIFO 非满或非空的情况下,这个过程

将随着读写控制信号的变化一直进行下去。如果FIFO 处于

空的状态,下一个读动作将会导致向下溢出(underflow) ,一个

无效的数据被读出;同样,对于一个满了的FIFO ,进行写动作


部分文件列表

文件名大小
高速异步FIFO的实现.PDF
基于Verilog HDL语言的32X8 FIFO设计.PDF

全部评论(0)

暂无评论