xilinx FPGA fifo IP核的复位reset使用

关于测试 异步 fifo的复位使用

按下按钮K4(key_in[3])后开始写入到fifo,延时100个CLK读出FIFO,确保写入、读出之间数量不一致。在复位的时候可观察。写入和读出都是松开按钮K4停止。
按下按钮K0(key_in[0])后,开始复位。
按下按钮是低电平有效。

IP 核的设置

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

顶层程序(top)

  (* mark_debug="true" *) reg[15:0]alcnt,rd_cnt;
  (* mark_debug="true" *) reg[2:0] seq;
  (* mark_debug="true" *) reg kk,k_end,rd_key;
   (* mark_debug="true" *) wire k3,k0;
  assign k3=key_in[3];
  assign k0=key_in[0];
always @(posedge sys_clk)
begin
alcnt<=alcnt==60000 ? 0:alcnt+1;
 seq <= seq==1 ? 0 : seq+1;
 kk<=key_in[3];
 
 if(key_in[3] && kk==0)
 k_end<=1;
 else if(key_in[3]==0 && kk)
  k_end<=0;
  
  if(key_in[3]==0 )
  begin
  rd_key<=1;
  rd_cnt<=rd_cnt==100 ? 100:rd_cnt+1;
  end
  else
  begin
   rd_key<=0;
   rd_cnt<=0;
   end
  
end  

在这里插入图片描述

调试情况

按下K4(K3),写入、读出fifo在这里插入图片描述松下按钮后,empty为低,所以没有完全读出
在这里插入图片描述

按下按钮K0,(复位不能一个clk,需要延长一段时间)
empty、full都为高

在这里插入图片描述
松开按钮后
观察empty、full 复位完成
在这里插入图片描述

  • 6
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值