打怪升级之FIFO的多写入与多写出

文章讨论了两个模块共享FIFO写入线可能导致的问题,包括多线并一线和不同模块同时写入。解决方案包括使用或门合并输入,以及建立写入控制模块来协调各模块的写入请求,确保数据正确存入FIFO,类比于交通管理中的总线概念。

两个模块都由一根线写入FIFO时可能遇到的问题

1.模块A和模块B都有FIFO的写入三线(write_clk; write_req; write_data),但最终FIFO只有一组写入三线。
2.还是A和B的两模块,但此时A和B的写入三线各自什么时候会使用不知道,存在同时调用三线写入的情况,此时写入的数据肯定会报废。

多线并一线问题

这个解决办法很简答,使用或门将各个地方的输入并起来就可以了。

不同模块同时写入问题

直观的解决的办法是:建立各模块的数据输入输出控制。模块的数据可以就近存在本地,也可以存在指定地址范围的大存储器中。建立新的FIFO写入控制模块,该模块用来接收各模块写入请求并告知各模块现在的FIFO写入三线状态。此时可以将FIFO视为某种形式上的总线,各模块依次调用总线向FIFO中存入数据,有点类似于安排一个交警在总线上指挥交通。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

考琪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值