|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
前几天发了没有人回,在:别的论坛上看到的这个贴子,觉得有点问题,大家来讨论一下:
写时钟周期w_clk,
读时钟周期r_clk,
写时钟周期里,每B个时钟周期会有A个数据写入FIFO
读时钟周期里,每Y个时钟周期会有X个数据读出FIFO
则,FIFO的最小深度是?
首先,这道题不一定有解
有解的必要条件是在一定时间内(足够长),写入的数据数量一定要等于读出的数据数量
因此有:A/B * w_clk = X/Y * r_clk
其次,算出写数据的最大burst_length。考虑最坏情况
比如,如果条件给出,每100个写时钟,写入80个数据,那么在背靠背的情况下,burst_length = 2*80=160
最后,fifo_depth = burst_length - burst_length * X/Y * r_clk/w_clk
BTW:通常,为了安全起见,都会多留一些depth的余度 |
|