FIFO基础的了解与仿真
FIFO基础的了解与仿真FIFO是英文First In First Out 的缩写,是一种先进先出的数据缓存器,一般我们是在用在数据缓存中,对于不同步的数据写入和读取一般采用FIFO。
首先我们来看一下Quartu建立的FIFO模块图
此时我们建立的FIFO的数据位为8位。则data和q端口都为8位。
FIFO的一些参数
Data : 向FIFO中写入的数据
Wrreg: 向FIFO写请求信号 高电平有效
Wrclk: 向FIFO写时钟信号
Rdreq: FIFO读取请求信号 高电平有效
Rdclk: FIFO读取时钟信号
Wrfull: FIFO写满信号,如果FIFO满则此信号一直为高电平
Wrempty: FIFO写空信号,如果没有向FIFO中写入数据,则此信号一直为高电平,当向其中写入写入数据则此信号为低
Wrusedw FIFO写入的数据个数
Q 从FIFO中读取的数据
Rrdfull: 读取端满信号,当读取端FIFO的数量增加直到满足FIFO的容量时,则此信号为高电平。
Rdempty:读取端空信号,当读取端FIFO的数量读取完后,则此信号变为高电平。
Rrdusedw :此信号为读取端读取数据数量的信号。
Aclr: 同步清零信号,当此信号为高电平时,将清空FIFO中的全部数据。
2
我们了解FIFO的各个端口的数据之后我们就来看一下FIFO仿真的时序图。

从上图我们可以看出,在wrclk的上升沿,当Wrreg为高时,就将Data端的数据写进FIFO中,相应的Wrusedw就相应的加1,rdempty就由低电平变为高电平。在rdclk的上升沿,当rdreg为高电平时,就从FIFO中读取一个数据,读取的数据在q端口,rdusedw就相应的减少1,rduesdw总是比wruesdw晚几个时钟,这也就是异步FIFO的原理,写入和读取不同步。 分析的更到位 FIFO基础的了解与仿真 FPGA_one 发表于 2017-8-3 09:16
分析的更到位
看人家写的,分享出来
页:
[1]