1. for 循环:
for 循环用于指定一个计数器并指定其开始值、结束值以及步长。基本语法如下:
module ForLoopExample(
output reg [3:0] result
);
always @* begin
// for 循环
result = 4'b0000;
for (int i = 0; i < 8; i = i + 2) begin
result = result + i;
end
end
endmodule
在这个例子中,for 循环从 i=0 开始,每次以步长为2递增,直到 i<8 时结束。在每次循环中,result 被更新为当前的累积值。
2. while 循环:
while 循环用于在条件为真时重复执行一组语句。基本语法如下:
module WhileLoopExample(
input wire clk,
output reg [3:0] result
);
always @(posedge clk) begin
// while 循环
result = 4'b0000;
int i = 0;
while (i < 8) begin
result = result + i;
i = i + 2;
end
end
endmodule
在这个例子中,while 循环在 i<8 为真时执行。在每次循环中,result 被更新为当前的累积值,并且 i 被以步长为2递增。
这些循环语句提供了一种方便的方式来实现对一组语句的重复执行,从而简化了Verilog代码的编写。在使用循环时要注意避免死循环,确保循环的退出条件能够满足。
转载请注明出处:http://www.pingtaimeng.com/article/detail/15100/Verilog