当前位置: 首页 > news >正文

17网店货源网学seo优化

17网店货源网,学seo优化,开发一款app的公司,视频网站中滑动列表怎么做的文章目录 前言一、FIFO的最小深度写速度快于读速度写速度等于或慢于读速度 二、 举例说明1. FIFO写时钟为100MHz,读时钟为80Mhz情况一:一共需要传输2000个数据,求FIFO的最小深度情况二:100个时钟写入80个数据,1个时钟读…

文章目录

  • 前言
  • 一、FIFO的最小深度
    • 写速度快于读速度
    • 写速度等于或慢于读速度
  • 二、 举例说明
    • 1. FIFO写时钟为100MHz,读时钟为80Mhz
      • 情况一:一共需要传输2000个数据,求FIFO的最小深度
      • 情况二:100个时钟写入80个数据,1个时钟读1个数据,求FIFO的最小深度
      • 情况三:100个时钟写入80个数据,3个时钟读1个数据,求FIFO的最小深度
  • 三、什么情况下不太需要考虑FIFO的最小深度


FIFO的设计可参考
FIFO的Verilog设计(一)——同步FIFO
FPGA的Verilog设计(二)——异步FIFO
参考文献
[1]FIFO最小深度计算

前言

  在实际使用FIFO时,需要考虑FIFO的深度如何设置,如果深度设置不当,可能会出现资源浪费或者数据丢失等情况。下面将简要介绍FIFO的最小深度如何计算。

一、FIFO的最小深度

  由前两篇文章对FIFO的介绍,FIFO常用于数据缓存、数据匹配和多bit跨时钟域处理。
  因此在读写速度不匹配的时候可以使用FIFO,进行数据缓存。当读速度慢于写速度时,FIFO可作为一个缓存单元。此时总会有部分数据缓存在FIFO中,但是如果读写速度相差过大,就会导致数据溢出。所以在写速度最大、读速度最小时,正好不导致FIFO出现数据溢出的最小深度。当读速度快于写速度时,FIFO更多的是起着变换时钟域的作用。

写速度快于读速度

  FIFO写速度快于读速度模型的应用场景为,无论是数据需不需要跨时钟域,只要FIFO写速度快于读速度,FIFO写入一个数据需要 t 1 t_1 t1秒,读出一个数据需要 t 2 t_2 t2秒( t 1 < t 2 t_1<t_2 t1<t2),一共需要传输 n n n个数据
  FIFO写入n个数据的时间为 n t 1 nt_1 nt1,FIFO在 n t 1 nt_1 nt1时间内读出数据个数为 n t 1 t 2 \frac{nt_1}{t_2} t2nt1,此时FIFO中剩余数据个数 ⌈ n − n t 1 t 2 ⌉ \lceil n-\frac{nt_1}{t_2} \rceil nt2nt1

写速度等于或慢于读速度

  FIFO写速度等于或慢于读速度模型的应用场景为,在多bit数据需要变换时钟域情况下,FIFO的最小深度设置为1即可。因此FIFO只是起着变换时钟域的作用。

二、 举例说明

1. FIFO写时钟为100MHz,读时钟为80Mhz

情况一:一共需要传输2000个数据,求FIFO的最小深度

  FIFO写入一个数据需要 t 1 = 1 100 M t_1=\frac{1}{100M} t1=100M1s,读出一个数据需要 t 2 = 1 80 M t_2=\frac{1}{80M} t2=80M1s
  FIFO写入2000个数据需要的时间 n t 1 = 2000 100 M nt_1=\frac{2000}{100M} nt1=100M2000s
  FIFO在 n t 1 nt_1 nt1时间内读出数据个数为 n u m r d = n t 1 t 2 = 2000 ∗ 80 M 100 M = 1600 num_{rd} = \frac{nt_1}{t_2} = \frac{2000*80M}{100M} = 1600 numrd=t2nt1=100M200080M=1600
  此时FIFO剩余数据个数为 n u m = 2000 − n u m r d = 2000 − 1600 = 400 num = 2000 - num_{rd} = 2000-1600 = 400 num=2000numrd=20001600=400
  可得FIFO最小深度为400。

情况二:100个时钟写入80个数据,1个时钟读1个数据,求FIFO的最小深度

  FIFO写入一个数据需要 t 1 = 1 100 M t_1=\frac{1}{100M} t1=100M1s,读出一个数据需要 t 2 = 1 80 M t_2=\frac{1}{80M} t2=80M1s
  100个时钟写入80个数据,可以理解为80个有效写时钟和20个无效写时钟。
在这里插入图片描述

  此为突发读写情况,需要考虑什么时候突发写的数据最多。当前后两个100时钟的突发写是连续时,突发写的数量最多,如下图所示
在这里插入图片描述

  FIFO写入160个数据需要的时间 n t 1 = 160 100 M nt_1=\frac{160}{100M} nt1=100M160s
  FIFO在 n t 1 nt_1 nt1时间内读出数据个数为 n u m _ r d = n t 1 t 2 = 160 ∗ 80 M 100 M = 128 num\_rd = \frac{nt_1}{t_2} = \frac{160*80M}{100M} = 128 num_rd=t2nt1=100M16080M=128
  此时FIFO剩余数据个数为 n u m = 160 − n u m _ r d = 160 − 128 = 32 num = 160 - num\_rd = 160-128 = 32 num=160num_rd=160128=32
  可得FIFO最小深度为32。
  note:诀窍在于找出最大连续写入的数据量。

情况三:100个时钟写入80个数据,3个时钟读1个数据,求FIFO的最小深度

  FIFO写入一个数据需要 t 1 = 1 100 M t_1=\frac{1}{100M} t1=100M1s,读出一个数据需要 t 2 = 3 ∗ 1 80 M t_2=3*\frac{1}{80M} t2=380M1s
  同上情况,FIFO最大连续写入的数据量,写入160个数据需要的时间 n t 1 = 160 100 M nt_1=\frac{160}{100M} nt1=100M160
  FIFO在 n t 1 nt_1 nt1时间内读出数据个数为 n u m _ r d = n t 1 t 2 = 160 ∗ 80 M 3 ∗ 100 M = 42.67 num\_rd = \frac{nt_1}{t_2} = \frac{160*80M}{3*100M} = 42.67 num_rd=t2nt1=3100M16080M=42.67
  此时FIFO剩余数据个数为 n u m = 160 − n u m _ r d = 160 − 42.67 = 117.33 num = 160 - num\_rd = 160-42.67 = 117.33 num=160num_rd=16042.67=117.33
  可得FIFO最小深度为 ⌈ 117.33 ⌉ = 118 \lceil117.33\rceil=118 117.33=118,可以设置成2的幂次方128。

三、什么情况下不太需要考虑FIFO的最小深度

  何时不用过分考虑FIFO的最小深度?在数据发送端如果能够接受FIFO的空满信号反馈时可以设置个大概的深度即可。利用FIFO的空满信号(或者almost_full/almost_empty)的反馈来控制FIFO的读写使能能够有效解决数据的溢出。

http://www.hengruixuexiao.com/news/20830.html

相关文章:

  • 做网站多少钱 优帮云南宁百度seo排名价格
  • wordpress301不能用河北百度seo软件
  • 品牌网站设计方案南京网络推广优化哪家好
  • 网站建设和Java深圳网络营销软件
  • 新钥匙网站建设品牌策划的五个步骤
  • 申请做网站要什么局广告销售如何寻找客户
  • 收录图片的网站域名检测工具
  • dedecms导航网站模板培训机构专业
  • 阿里云空间做网站网络营销的内容
  • 做网站开什么端口电子网址怎么创建
  • 400全国服务热线佛山手机网站建设济南网络推广公司
  • 家纺网站模板网站维护
  • 广州网站建设业务网络推广是什么
  • 新建网站费用今天热点新闻事件
  • 芜湖企业做网站天津seo关键词排名优化
  • 镇江网站建设优化制作公司网络销售挣钱吗
  • 一个wordpress两个站点邀请推广app
  • 腾讯企点网页版泉州seo按天计费
  • 商城网站设计公司如何注册一个域名
  • 有没有教做川菜的网站51链
  • 微商各种软件拿码渠道seo推广培训费用
  • 天津网站开发网站北京计算机培训机构前十名
  • 织梦怎么修改网站logonba最新新闻新浪
  • 常见的网站首页布局有哪几种全国知名网站排名
  • vs2015 做网站百度seo点击
  • 北京 做网站比较有名的站长工具seo综合查询广告
  • 省内注销二建 建设部网站更新慢自建站
  • 可信网站验证服务如何做谷歌seo推广
  • 如何用模板做公司网站太原今日头条
  • 阿里云虚拟主机可以做几个网站吗网络营销活动推广方式