【发布时间】:2016-08-31 17:21:12
【问题描述】:
我的目标是用 Quartus 形成这段代码,但问题是我不知道如何解决这个问题。 我试图知道错误 10028 是什么意思,但我不知道如何使用它。 有人可以教我如何解决它或者是否有办法绕过它?
module mem (r_wb,addr,d,q);
input r_wb;//0write 1read
input [7:0] addr;
input [7:0 ] d;
output [7:0] q;
reg [7:0] q;
reg [7:0] mem_bank [0:255];
always @(r_wb)
if (r_wb) q=mem_bank[addr];
else mem_bank[addr]=d;
always @(addr)
if (r_wb) q=mem_bank[addr];
else mem_bank[addr]=d;
always @(d)
if (r_wb) q=mem_bank[addr];
else mem_bank[addr]=d;
endmodule
【问题讨论】:
-
我自己想通了...
-
模块内存 (clk,r_wb,addr,d,q);输入时钟; input r_wb;//0write 1read input [7:0] addr;输入 [7:0] d;输出 [7:0] q;注册 [7:0] q;注册 [7:0] mem_bank [0:255];总是@(posedge clk) if (r_wb) q=mem_bank[addr];否则 mem_bank[地址]=d;结束模块
-
如果您发现了这一点,请将您的解决方案发布为答案。
-
组合块建议使用
always@*。