1、FIFO的IP核配置页面 Normal模式和show_ahead先出数据模式有什么区别?
![](https://i-blog.csdnimg.cn/blog_migrate/e93e6dad4c462a6eacf1c85af5335c79.png)
(1)Normal模式
普通同步 FIFO 模式,当前读请求有效的下一拍数据才出来(和平时说的打一拍意思一样)
以SCFIFO为例
![](https://i-blog.csdnimg.cn/blog_migrate/c7dd78ee922ed61cf257a994f1dbcdd0.png)
pi_data=255后当pi_flag=1时 pi_data置0 full置高电平 说明FIFO已经满了可以开始读数据了
在下一个周期 rdreq识别到full为高电平了,rdreq置1,开始读请求
然后再下一个周期识别到rdreq=1了 才开始读数据 即0
以DCFIFO为例
![](https://i-blog.csdnimg.cn/blog_migrate/e2665466811a505dfc98a0ea552730eb.png)
第一根红色的线为rdreq 第二根红色的线为po_data 可以看到在rdreq为高电平时,po_data并没有立马读出数据,而是打了一拍后才读出来第一个数16'd256
(2)先出数据 FIFO 模式,读请求来到之前第一个数据就已经先出来了, 使得当前的读请求有效时立刻输出数据,而不会像普通模式那样当前读请求有效后下一拍 才会输出数据。(不会打一拍)