求解答,在刷HDLBits上Always casez这一题时,想尝试用for循环解决,于是写了如下的循环
代码如下
module top_module (
input [7:0] in,
output reg [2:0] pos );
always@(*)begin
for(int p=1'd0;p<1'd8;p=p+1'd1)begin
if(in[p])begin
pos[0]=p;
pos[1]=1'd0;
pos[2]=1'd0;
p=p+8;
end
else pos=3'd000;
end
end
endmodule
结果输出全为0,请问这是什么原因?
第5行代码问题比较大,别的地方感觉也有问题,没看明白你想做什么
for(int p=0;p<8;p=p+1)begin