在verilog中如何将数据放入到ram中去 20
2个回答
展开全部
写一个ram就可以了
module ram(datain,cs,addr,wr,rd,dataout);
output [7:0]dataout;
input [4:0]addr;
input [7:0]datain;
input wr,rd,cs;
reg [7:0]mem[31:0];
reg [7:0]dataout;
always@(*)
begin
if(cs==0)
begin
if(wr)
mem[addr]=datain;
else
dataout='bz;
end
end
always@(*)
begin
if(cs==0)
begin
if(rd)
dataout=mem[addr];
else
dataout='bz;
end
end
endmodule
module ram(datain,cs,addr,wr,rd,dataout);
output [7:0]dataout;
input [4:0]addr;
input [7:0]datain;
input wr,rd,cs;
reg [7:0]mem[31:0];
reg [7:0]dataout;
always@(*)
begin
if(cs==0)
begin
if(wr)
mem[addr]=datain;
else
dataout='bz;
end
end
always@(*)
begin
if(cs==0)
begin
if(rd)
dataout=mem[addr];
else
dataout='bz;
end
end
endmodule
展开全部
追问
你好,我的意思是将多个数据类似于数组的,全部放入到RAM中去,怎么做呢?可以详细一点吗?谢谢
追答
上面的代码就可以实现啊,你的数据放在文本文件data.txt里,仿真时,一次性全部放到ram里面。
如果要写可综合的代码,则根据地址总线进行写操作。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询