|
发表于 2013-12-27 18:24:22
|
显示全部楼层
你这个用的是二维数组,语法有问题。大概就下面这样写,没有测试。
module test (
clk,
rable,
wable,
din,
isOut
);
input clk;
input rable;
input wable;
input din;
output isOut;
reg isOut;
reg[7:0]men[255:0];
reg[255:0]Addr = 0;
always@(posedge clk) begin
if(rable==1'b1 && wable==1'b0)begin
men[0][0] <= din;
men[0][255:0] <= {men[0][254:0],men[0][0]};
Addr <= Addr + 1'b1;
end
else if(rable==1'b0 && wable==1'b1)begin
isOut <= men[0][Addr];
Addr <= Addr - 1'b1;
end
else if(rable==1'b1&&wable==1'b1)begin
isOut <= men[0][Addr];
men[0][0] <= din;
men[0][255:0] <= {men[0][254:0],men[0][0]};
end
end
endmodule |
|