求助:基于fpga的IP核FIFO实现乒乓操作的功能,遇到一个问...
我使用的FIFO的存储深度为8192,分成两部分,每一部分的存储深度为4096,根据乒乓操作的原理,当一部分写满时,即写到4096时,开始读数据。问题就来了,当我读完第一部分时,就一直停第一部分的最后一个数据,也就是说没有读第二部分的数据。。。
但这个程序我仿真时,出来的结果是对的,就是最后在开发板上用时不行 没有懂你的意思,你是两个fifo还是一个fifo,怎么分两部分 qswsjs 发表于 2014-3-27 21:46
没有懂你的意思,你是两个fifo还是一个fifo,怎么分两部分
用的是一个FIFO,在将一个FIFO分成两部分,那么就可以实现乒乓操作了 是不是和FPGA的时序约束有关? FIFO哪能分两部分?读写地址线只有各{:lol:}一套 一个FIFO拆开来用?还是blockRAM哦 一个FIFO拆开的 RLCIC 发表于 2014-3-28 20:07
一个FIFO拆开来用?还是blockRAM哦
一个FIFO拆开的 NJ8888 发表于 2014-3-28 20:06
FIFO哪能分两部分?读写地址线只有各一套
我分成两部分的意思是,根据乒乓操作的原理,假如fifo的地址深度为8192,我先对前4096个地址写数据,当写到4096时(我是通过wr_usedw来判断FIFO写到了第4096个地址),
我开始读数据,因为读时钟比写时钟快很多,因此这4096个数据很快就被读完了,然后等待读4097~8192这4096个数据,读完这4096个数据后继续刚才的循环,实现乒乓操作的功能。 问下:大家有没关于乒乓操作的程序,,,谢谢! yuloong 发表于 2014-3-28 20:25
一个FIFO拆开的
看了你给yuloong的回复,你都是先写后读,就是一个FIFO而已,没有在打乒乓,一般乒乓是两个缓存,写缓存2时读缓存1,写缓存1时读缓存2,基本是同时在读写操作! RLCIC 发表于 2014-3-28 21:00
看了你给yuloong的回复,你都是先写后读,就是一个FIFO而已,没有在打乒乓,一般乒乓是两个缓存,写缓存2 ...
使用两片FIFO的我也试过,仿真成功但是最后烧写到开发板上用时不行,下面是我的程序,有时间的话帮我看看,谢谢 NJ8888 发表于 2014-3-28 20:06
FIFO哪能分两部分?读写地址线只有各一套
下面是我的程序,麻烦帮我看看,是用一片FIFO实现乒乓操作的
页:
[1]