ug473[BRAM和FIFO介绍手册]学习笔记(2)

FIFO

  • FIFO一些介绍:FIFO由RAM配置而来。7系列中配置FIFO不需要额外的CLB组成计数器,比较器,状态转换标志位。只需要一个BRAM就组成一个FIFO。但是需要注意的是独立的读写宽度的配置需要额外的CLB.
  • Dual-Clock FIFO

     Almnost_full和Almost_empty偏移范围

    • almost_full和almost_empty可以配置在FIFO地址范围的几乎任何位置。
    • Reset到底清零的是怎什么,为方便解读粘贴手册原话
    • 在复位期间,是将读写地址指针指向首地址处,而不是把内部数据清零。
  •  

     

     关于FIFO读写状态的判断

  • 地址最高位表示指针是不是绕回

  • 计数器

格雷码

  • ​​​​​​​当一个二进制计数值从一个时钟与同步到另一个时钟域时,可能有很多位同时变化,在同一个时钟沿同步多个信号的变化会带来亚稳态。而格雷码每次变换只有一位发生了变化。所以通过将地址转化为格雷码,再把格雷码同步到另一个时钟域,以此来作为空满状态的检测。

  • 具体如何进行空满检测
    • 空,就是两个地址对比完全一致
    • 满,并不能简单比较MSB不同和其他位不同,比如8[1000]和7[0111]。所以通过格雷码进行满判断的时候需要满足两个条件——同步的地址值最高位MSB不相同;同步而来的地址值的次高位也不相同。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值