程序求助,望高手指导。。。
module matrix_vector_mult(y,clk,en,reset,z);input y;
input clk,en,reset;
output z;
reg z;
wire endrow,data;
reg index;
reg ytemp,ytemp1;
reg i;
matrixromcontrol matrix5x6(.clk(clk),
.en(en),
.reset(reset),
.endrow(endrow),
.data(data)
);
always@(posedge clk)
begin
if(reset)
begin
ytemp<=1'b0;
z<=5'b0;
ytemp1<=1'b0;
end
else
begin
if(en)
begin
if(endrow==0)
begin
ytemp<=y;
ytemp1<=ytemp1^ytemp;
end
else
begin
ytemp<=y;
z<=ytemp1^ytemp;
end
end
end
end
always@(posedge clk)
begin
if(reset)
begin
index<=0;
end
else
begin
if(index==4)
begin
index<=0;
end
else
begin
index<=index+1;
end
end
end
endmodule
其中matrixcontrol在每个始终上升沿输出endrow和data。。。
index是在时钟上升沿加1。
130endrow is x, data is x,index is0
140endrow is x, data is x,index is1
140endrow is 0, data is 3,index is1
180endrow is 0, data is 3,index is2
180endrow is 1, data is 5,index is2
220endrow is 1, data is 5,index is3
220endrow is 1, data is 1,index is3
260endrow is 1, data is 1,index is4
仿真结果却是这样。。。
怎么办,求高手帮忙。。。
页:
[1]