我想要这样的东西:
generate
for( i=0 ; i<16 ; i=i+1 ) begin:
always @(posedge clk) begin
L[i+1] <= #1 R[i];
R[i+1] <= #1 L[i] ^ out[i];
end
end
endgenerate
如果有人可以帮助我,我将不胜感激。
我想要这样的东西:
generate
for( i=0 ; i<16 ; i=i+1 ) begin:
always @(posedge clk) begin
L[i+1] <= #1 R[i];
R[i+1] <= #1 L[i] ^ out[i];
end
end
endgenerate
如果有人可以帮助我,我将不胜感激。
我想你不需要在generate
这里。只需在块内使用for
循环即可。always
always @(posedge clk) begin
for( int i=0 ; i<16 ; i=i+1 ) begin
L[i+1] <= #1 R[i];
R[i+1] <= #1 L[i] ^ out[i];
end
end
您可能需要考虑的几个问题:
L
和R
公共汽车的尺寸是多少?[15:0]
?L[0]
您在哪里为和赋值R[0]
?i+1
当i
点击 15 时仍会在您的巴士范围内吗?你可以做
always @(posedge clk)
begin
L[16:1] <= #1 R[15:0]
R[16:1] <= #1 L[15:0] ^ out;
end