找回密码
 注册
关于网站域名变更的通知
查看: 303|回复: 1
打印 上一主题 下一主题

FIFO深度计算分析

[复制链接]
  • TA的每日心情
    开心
    2019-11-19 15:19
  • 签到天数: 1 天

    [LV.1]初来乍到

    跳转到指定楼层
    1#
    发表于 2019-5-24 07:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

    您需要 登录 才可以下载或查看,没有帐号?注册

    x
    FIFO深度计算分析

    + t' C1 B" C0 y  ]+ v  Q
    5 Z+ z- u( j5 P- K1 w. k写时钟周期w_clk,
    ! D; h: w+ J# @8 i4 U: @9 O4 ?读时钟周期r_clk,
    - A9 ]+ F0 D! J3 f+ h- J  `8 E写时钟周期里,每B个时钟周期会有A个数据写入FIFO8 O2 ]9 `! r: b
    读时钟周期里,每Y个时钟周期会有X个数据读出FIFO
    ) b. u) T4 H% O; n$ \则,FIFO的最小深度是?
      o0 x0 X* J* X3 ?: J8 ]
    ' `& m4 F; u( b8 {' X首先,这道题不一定有解4 ^0 Z! F. k2 F8 x
    有解的必要条件是在一定时间内(足够长),写入的数据数量一定要等于读出的数据数量7 R9 {6 \) s8 i7 _* T# o
    因此有:A/B * w_clk = X/Y * r_clk
    5 k: Z2 W3 z/ O- ^
    / o1 b( S& U- g* X. k其次,算出写数据的最大burst_length。考虑最坏情况
    : v7 M: e* p9 h3 ]+ ^比如,如果条件给出,每100个写时钟,写入80个数据,那么在背靠背的情况下,burst_length = 2*80=160
    # L0 l! I7 ]. G1 [5 R
    2 ^" R) X0 x$ g0 z* w最后,fifo_depth = burst_length - burst_length * X/Y * r_clk/w_clk$ ?7 @; P  m6 Q( H9 ]+ V. h

    7 h/ V" X8 K: T/ F5 P. {BTW:通常,为了安全起见,都会多留一些depth的余度& H; U: d/ [2 i' {8 u% @( U5 L4 |7 g
    个人觉得,公式应该是这样:# r+ o, L/ d  Y# f4 f8 M
    A/(B * w_clk) = X/(Y * r_clk)  e* |9 ]' \* j$ _. j# O* z
    ' G; S! H, G1 t
    fifo_depth = burst_length - burst_length * X/Y * w_clk /r_clk1 b& T. \/ v  F) ^; f' r5 a

      i3 |% U7 C! |9 I
    * [2 L* G8 n4 Z% S举例说明:
    6 W8 z: P" W. b3 s! m( e6 I& y如果100个写时钟周期可以写入80个数据,10个读时钟可以读出8个数据
      n" C3 l& h/ h. [& f其中w_ck=5ns,r_ck=10ns
    % q* k/ f2 f9 H/ H8 x
    / L( l& J: W, U( |# o5 f6 ?$ H如果按照之前的公式,得出的深度为:fifo_depth = burst_length - burst_length * X/Y * r_ck/w_clk=160-160*8/10*2=-94,显然是不对的4 G# C) n5 c! D# u

    : L4 N- p2 b7 T实际上,考虑背靠背(20个clk不发数据+80clk发数据+80clk发数据+20个clk不发数据的200个clk)/ l; s# m1 [0 u6 E! O2 O
    " ?4 Y  P  Y! |8 i
    这样在中间160个写时钟周期连续写的情况下,只能读出160*5/(10*10)*8=64个数据,所以FIFO的深度应该为160-64=96. r' y, T) O2 G9 A' D8 _/ Z+ k, r2 U% z
    也就是fifo_depth = burst_length - burst_length * X/Y * w_clk /r_clk=160-160*8/10*5/10=96
    7 ?0 v& n& q, F3 c( ]& P
    2 S' C( c5 d* Q; ?% A
    5 b9 G, W7 A/ K. A% t+ @8 S
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-8-11 17:39 , Processed in 0.093750 second(s), 23 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表