1.为什么需要格雷码约束:
为了保证异步fifo的功能和性能保证,需要在综合约束文件sdc中,约束异步FIFO格雷码的最大延时。
如果不设置读写地址格雷码约束:会出现以下两种情况:
- 格雷码各bit位延时不一致会导致同步器采样的地址不符合gray规律,afifo功能异常。
- 格雷码到同步器的延时有好多个周期----异步afifo性能下降
2.case: 格雷码各bit位延时不一致
假设3bit的gray码各比特位延时不一致,比如gray[1]延时比gray[0]多一个采样周期,比如gray[2]延时比gray[1]多一个采样周期,如图所示同步器采样端的数据入口处的波形。
3.case: 格雷码到同步器的延时大小
格雷码到同步器的延时越长,流水间隔越大,afifo性能越差
-
wr_ptr走线太慢的影响
wr_ptr走线太慢(例如需要3个周期ÿ