题解 | #RAM的简单实现#

RAM的简单实现

https://www.nowcoder.com/practice/2c17c36120d0425289cfac0855c28796

`timescale 1ns/1ns
module ram_mod(
	input clk,
	input rst_n,
	
	input write_en,
	input [7:0]write_addr,
	input [3:0]write_data,
	
	input read_en,
	input [7:0]read_addr,
	output reg [3:0]read_data
);
	
reg [3:0] RAM [7:0];

integer i;
always@(posedge clk or negedge rst_n)begin
	if(~rst_n)
		for(i=0 ; i<8 ; i=i+1) RAM[i] <= 4'd0;
	else if(write_en)
		RAM[write_addr] <= write_data;
	else
		for(i=0 ; i<8 ; i=i+1) RAM[i] <= RAM[i];
end

always@(posedge clk or negedge rst_n)begin
	if(~rst_n)
		read_data <= 4'd0;
	else if(read_en)
		read_data <= RAM[read_addr];
	else
		read_data <= read_data;
end

endmodule

全部评论

相关推荐

ddd7_:跟我一模一样,加微信的hr都同一个,扫码了白年书人查看图片
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务