当前位置:   article > 正文

异步FIFO(寄存器存储)_基于寄存器的异步fifo

基于寄存器的异步fifo
  1. module async_fifo(
  2. rst_n,
  3. fifo_wr_clk,
  4. fifo_wr_en,
  5. fifo_full,
  6. fifo_wr_data,
  7. fifo_rd_clk,
  8. fifo_rd_en,
  9. fifo_rd_data,
  10. fifo_empty);
  11. input rst_n;
  12. input fifo_wr_en;
  13. input fifo_rd_en;
  14. input fifo_rd_clk;
  15. input fifo_wr_clk;
  16. input [7:0] fifo_wr_data;
  17. output fifo_empty;
  18. output fifo_full;
  19. output reg [7:0] fifo_rd_data;
  20. reg [4:0] rdaddress;
  21. reg [4:0] wraddress;
  22. reg [15:0][7:0] memory ;
  23. wire [4:0] gray_rdaddress;
  24. wire [4:0] gray_wraddress;
  25. reg [4:0] sync_w2r_r1,sync_w2r_r2;
  26. reg [4:0] sync_r2w_r1,sync_r2w_r2;
  27. assign gray_rdaddress={1'b0,rdaddress[4:1]}^rdaddress;
  28. assign gray_wraddress={1'b0,wraddress[4:1]}^wraddress;
  29. assign fifo_empty = (gray_rdaddress==sync_w2r_r2);
  30. assign fifo_full = (gray_wraddress=={~sync_r2w_r2[4:3],sync_r2w_r2[2:0]});
  31. always @(posedge fifo_rd_clk or negedge rst_n)begin
  32. if(!rst_n)begin
  33. rdaddress<=5'd0;
  34. // memory[rdaddress[3:0]]<=8'bx;
  35. fifo_rd_data<&
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/206684?site
推荐阅读
相关标签
  

闽ICP备14008679号