FIFO深度学习
格雷码的轴对称问题。这个我在学格雷码的时候还真没想到。
2,为何用格雷码而非二进制码做CDC。
3,异步FIFO的大致框图。
4,满空信号产生。尤其是满。
5,RDCLK和WRCLK差距较大时,是否会造成multi-bit的问题。
6,接5,是否会造成跳过了full而full+1的状态漏过满。
7,Verilog Coding。
SRAM用于数据的暂时存储,读写地址都由Controller控制,可以随机访问任意地址。FIFO是First in First out的缩写,其读写是有特定顺序的:先进先出。基于“先进先出”这个数据访问顺序的限制,FIFO的功能与控制时序跟SRAM相比是不同的。但是两者均具有缓存的功能。
异步FIFO要点:
- 读写指针采用格雷码,消除亚稳态
- 空满标志的生成的方法
给系统中的异步FIFO设定适当的深度,既可以满足系统的性能需求,又可以优化系统的面积和功耗。
异步FIFO的动态参数包括FIFO的饱和度、读写速度、和溢出情况等。他们反映了FIFO运行状态并且对确定FIFO深度具有指导意义。设计者可以根据这些动态参数,分析FIFO深度对性能的影响。
饱和度
- 某一时刻FIFO中已存储数据的个数相对于FIFO深度的百分比;
- FIFO的饱和度是瞬时值,反映了当前FIFO中存储单元的使用率;
- 其值为0表示FIFO中没有数据,值为100表示FIFO已满,存储单元的使用达到饱和;