同步FIFO的设计

1、RAM的设计

1、1双端口RAM的设计(16X8:深度为16,宽度为8bit)

代码如下

mudule(
 input w_clock,
 input r_clock,
 input w_allow,
 input r_allow,
 input [3:0] w_addr,
 input [3:0] r_addr,
 input [7:0] w_data,
 output [7:0] r_data
);
reg [7:0] r_data;
reg [7:0] memory [15:0];

always @ (posedge w_clock) begin
if(w_allow)
    memory[w_addr] <=  w_data;
end

always @ (posedge r_clock) begin
if(r_allow)
    r_data <= memory[r_addr];
end

endmodule

2、同步FIFO的设计FIFO(借鉴:(1条消息) 同步FIFO的两种Verilog设计方法(计数器法、高位扩展法)_孤独的单刀的博客-CSDN博客_fifo verilog

方法一:用长度计数器factor。执行一次写操作factor加1,执行一次读操作factor减1。

方法二:地址位扩展一位,用最高位来判断空满。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值