我的下面代码哪里错了呢?存储器讀的功能没有实現啊!急着用,幫忙看看吧,谢谢了!
module multi_modular_ram(data1,data2,read,write,addr);
input read,write;
parameter addr_bits=8,wordsize=8,words=(1<<addr_bits);
input[8:0] addr;
inout[7:0] data1,data2;
reg[7:0] data1,data2;
reg[7:0] myram1 [0:255];
reg[7:0] myram2 [0:255];
wire[7:0] addre1,addre2;
initial
begin
$readmemb("ram_data.txt",myram1);
$readmemb("ram_data.txt",myram2);
end
assign addre1=addr[7:0];
assign addre2=addre1+1'b1;
always @(read)
begin
if(addr[8]==1)
begin
data1=read?myram2[addre1]:8'bz;
data2=read?myram2[addre2]:8'bz;
end
else if(addr[8]==0)
begin
data1=read?myram1[addre1]:8'bz;
data2=read?myram1[addre2]:8'bz;
end
end
always @(posedge write)
begin
if(addr[8]==1)
begin
myram2[addre1]=data1;
myram2[addre2]=data2;
end
else if(addr[8]==0)
begin
myram1[addre1]=data1;
myram1[addre2]=data2;
end
end
endmodule
復制代码
|