Verilog MIPS32 CPU(四)-- RAM

本文介绍使用Verilog实现MIPS32 CPU的RAM模块过程,包括RAM模块的输入输出定义、状态寄存器声明及数据写入逻辑,并展示了数据输出的赋值方式。

 

 

module ram(
        input clk,
        input wena,
        input [8:0] addr,
        input [31:0] data_in,
        output [31:0] data_out
        );
    
    reg [31:0] state [0:512];
    always@(posedge clk) begin
        if(wena) begin
            if(addr!=0) state[addr]<=data_in;
        end
    end 

    assign data_out=state[addr];
endmodule

 

转载于:https://www.cnblogs.com/liutianchen/p/7616755.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值