首页>>论坛 >>技术社区 >>OpenHW社区论坛 >>Coregen及ComplexIP
|
我要发帖  | 我要投票  | 我要回复  | 收藏
1

ise 10.1 FIFO ip 核应用求助

版主: Jerry Fan  Terry_ni  玄剑  XUPteam 
ise 10.1 FIFO ip 核应用求助
 

在ise10.1中使用core generator 生成 fifo 核时遇到问题,望高手相助。
具体的问题如下

在ise10.1中运用Core Generator 生成fifo IP 核, 参数选择如下: common clk , block ram, first-word fall-through ,
write width 78 , write depth 16, 选用 Almost Full Flag, Almost Empty Flag, Full threshold Assert Value 为8
Empty threshold Assert Value 为4 , 选择数据计数 5 bit

 1.当第一次向FIFO 输入一个数据(wr_en只有一拍有效),data_count 为1,empty 信号变为‘0’。
2.当第二次输入一个数据后(wr_en只有一拍有效),data_count 为2, almost_empty 信号变为‘0’。
3.此时,开始对FIFO 读取数据,( rd_en连续两拍有效)。其中如图黄线所示,rd_en第一拍之后,almost_empty 信号变为‘1’。 rd_en第二拍之后,data_count 为‘0’,说明FIFO内的可供数据为0 。问题一:此时empty信号为什么仍为‘0’?
4.当再一次向FIFO 输入一个数据(wr_en只有一拍有效),data_count 为1,但是almost_empty 信号变为‘0’。问题二:为什么当data_count 为1时,almost_empty信号就变为‘0’(而如2所示data_count 为2时,almost_empty信号为‘0’)?


请问如何才能解决 上述 almost_empty 和 empty 信号的 错误时序的问题,或者如何设置FIFO参数,使得当FIFO内的可用数据为2个时(大于等于2个时),则almost_empty 或program_ empty信号为‘0’。而当FIFO内的可用数据小于2个时,则almost_empty 或program_ empty信号为‘1’。

  附件为fifo的时序图

  小弟在此感谢大虾相助了

 

 

附件:请先登陆查看附件!
 
相关主题
回复 链接 收藏
 
我要发帖  | 我要投票  | 我要回复  | 收藏
1