例化RAM的使用~~求助
我产生了一个16KRAM IP核,想把产生的随机数存入其中,但是,怎么也不行,检查表达式通过,可是,却没有将数据存入,哪位能帮我看一下,自己学真是太痛苦了;module randomsystem(clk,rst,data_in,data_out,we,addr);
input clk,rst,we;//we --write enable
input addr;
inputdata_in;
output data_out;
regdata_out;
regdata;
integer i,j;
parameter taps=16'h1001;//initial value of LFSR
always@(posedge clk or negedge rst)
begin
if (!rst)
data<=16'h0001;
else
begin
for (i=0;i<=15;i=i+1)
if(taps)
data<=data^data;
else
data<=data;
data<=data;
$display("random=%d",data);
end
end
sigportBram uut (
.clka(clka),
.dina(dina),
.addra(addra),
.wea(wea),
.douta(douta)
);
endmodule 你好好检查你的代码,在@条件下产生的data,你用到什么地方去了?例化的RAM的端口信号里面你有使用这个data吗?
sigportBram uut (
.clka(clka),
.dina(dina),
.addra(addra),
.wea(wea),
.douta(douta)
);
这上面的端口信号里面,自己好好看看。 thanksgiving 回复 2# 老怪甲
你好,我想问一下,在一个模块中例化了一个双口ram,并存入了数据,如何在另一个模块中调用这个ram,取出其中的数据? 好,顶一下…… 还有就是wea信号,你确定你的时序给的是正确的么? 回复:“你好,我想问一下,在一个模块中例化了一个双口ram,并存入了数据,如何在另一个模块中调用这个ram,取出其中的数据?”
方法一:你在例化有双口ram的模块增加addrb, .web(如果需要再加上enb),doutb接口与另一个接口相连
方法二:直接不要把ram例化在某个模块里面,与另一个模块一样让ram出于它们同级的位置,一个模块控制写,另一个模块可以去读
页:
[1]