前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >FIFO系列(一):FIFO深度计算

FIFO系列(一):FIFO深度计算

作者头像
根究FPGA
发布2020-06-29 15:26:06
2K0
发布2020-06-29 15:26:06
举报
文章被收录于专栏:根究FPGA

本系列分为以下部分:

1、FIFO深度计算

2、同步fifo设计

3、fifo与格雷码

计划分三次更新完毕,本次为FIFO深度计算

FIFO最小深度计算背景

当异步FIFO读写端口的throught-put(吞吐量)不同时,会遇到数据丢失的问题,需要考虑FIFO中的深度问题,即为满足读写流畅不卡顿(数据不丢失)时,FIFO的deepth的最小值。

FIFO主要是用于数据的缓存,用在读慢写快的场景下。异步FIFO读写不同频,选用的FIFO要能够在极端的情况下仍然能够保证数据的不溢出。因此,考虑的前提一般都是读慢写快的情景(写时钟大于读时钟),但需要注意的是,这里的写操作是突发传输,而不能使连续操作。倘若写快读慢的场景下,写数据流是连续的,那再大的FIFO都会有写满的时候,因此无法避免数据的溢出。

当写快读慢时,FIFO便可被用作系统中元件或队列。因此FIFO的大小其实也就暗示了所需缓存数据的容量,该容量取决于读写数据的速率。据统计,系统的数据速率取决于系统的负载能力。因此为了保证FIFO的大小,需要考虑FIFO传输的最坏情况。

所谓最坏情况,就是使得写速率最大,读速率最小;通常是考虑突发传输。

宏观看,整个时间域上,"写数据=读数据",这个是异步FIFO正常工作最基本的要求,是大前提。由于写快读慢,在发送方"突发传输"的发送数据的T内,是很有可能发送方发送数据量<接收方接收的数据量,那么剩下未读取的数据必定需要存储供接收方继续读取并不能丢弃,因此FIFO的深度要能够保证,在这段时间T内,如果发送方未能将接收方的数据发送完毕的话,剩下的数据都是可以存储在FIFO内部而且不会溢出的,那么在发送方停止发送数据的"空闲时隙"内,接收方可以从容地接收剩下来的数据。

FIFO读写同时进行

构造模型:

~~感谢阅读~~周末愉快

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-05-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 根究FPGA 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • FIFO最小深度计算背景
  • FIFO读写同时进行
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档