微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > 请教当fifo输入输出带宽不相等时应该怎样处理?

请教当fifo输入输出带宽不相等时应该怎样处理?

时间:10-02 整理:3721RD 点击:
请问当fifo的输入和输出带宽不相等时,数据会无限积累,多大的fifo都会溢出,那么此时应该怎样解决这个问题呢?谢谢

没法解决。都是要求单位时间内的数据量是对等的

同意楼上的说法,写快读慢,则会产生溢出;写慢读快,则会产生读空。

不知道你的设计为什么会流量不等。这有点像能量守恒的意思,FIFO是不会增加或者减少你的平均带宽的阿。
很可能的原因是,你没有对FIFO的读写作流量控制的逻辑。这个逻辑才是你设计利用FIFO的核心。

如果读大于写速度,那是可以的,可以通过控制,防止读空;但是写大于读的话,就会产生错误,肯定会有数据覆盖,产生错误,即有些数据读不到

if full,you can't push data into fifo

正在学习,顶一下

这属于FIFO实用不当的情况阿,或者size开的太小,或者wen/ren没有控制好
总之流量控制的概念一定有的,可能很简单,可能较复杂。
要用fifo,先要搞清楚用它来做什么,能不能做的了

谢谢各位的答复,我明白了,就是说在使用fifo之前就要控制流量,使得输入输出fifo的带宽相等,这样才能使用fifo.

不一定吧,FIFO中数据多少并不是根据输入输出带宽来控制的,关键是你读写数据的时间问题;
还有一个方面,如果你对数据要求不高的话,即可以丢失一部分数据时可以这样用的。

10楼说到的用途也不是没有,只是一般谈FIFO是说数据不因为经过FIFO而丢失或产生的情况。
所以把FIFO当作data generator 或者truncation的用途比较special..

可以有不同宽度的FIFO,主要看读取的控制。

满了就不能写了吧 空了就不能读了

thanks for shares!

注意空满控制即可

学习学习

用FIFO首先就要考虑空满的判断和处理啊。输入大于输出,就把输出数据分多路并行处理。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top