微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > 关于FIFO工作异常的问题

关于FIFO工作异常的问题

时间:10-02 整理:3721RD 点击:
大家好,本人最近做项目,在板级调试时用到的异步FIFO遇到了这样一个异常情况:75m写入时钟(外部输入时钟),33m读取时钟(dcm产生),调试过程中会经常出现FIFO_empty信号和FIFO_full信号同时为高的现象。不知各位是否有遇到过类似空满标志异常的情况。(很容易出现在上下点的时候)。还希望各位大神指教

用的是Xilinx的Spartan3a系列,尝试约束时钟,但是还是会出现同样情况。调试了一个礼拜也没有找到原因。怀疑写入时钟不稳定或者FPGA供电不稳定,但是FIFO出错的时候,其他一些用到75m时钟的模块功能还是正常的,调试到现在感觉无从下手了

内部逻辑没有做上电复位


把dcm的locked信号当复位或者locked信号有效后记一定数放开FIFO复位,这两个都试过,现象依旧

那就把写指针 同步到写时钟域的读指针,   读指针, 同步到读时钟域的写指针都加到chipscope上看看吧。
触发条件就选择 rd_empty 和 wr_full 同时有效的异常情况

很诡异,解决了请分享一下

空满同时为高应该是指针传递或比较出了问题

可能外部電性處理不好

用RAM代替FIFO,自己写点控制逻辑吧。
现在网上成熟的基于RAM的FIFO一大堆,出了问题也好定位。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top