1.for循环
for是一种条件循环,在条件成立时才进行循环。
语法形式 :
for(初始赋值语句 ;条件表达式 ;赋值修改)
语句或语句块;
用for循环语句对存储器进行清0初始化:
for(n=0; n < mem_size; n = n+1)
mem(n)=32'h0;
2.forever循环
forever循环是一种无限循环。循环体内必须采用某种形式的时序控制,否则forever将在0时刻后一直循环下去。
用forever语句产生时钟:
initial begin
clock = 0;
forever #10 clock = ~clock;
end
3.repeat循环
repeat是执行指定循环次数的循环。 循环次数可以是一个整数,变量火速一个数值表达式。 如果计数表达式的值不确定(X或Z),循环次数按0次处理。
repeat(3) @(posedge clk)//等待3个时钟上升沿
4.while循环
while循环条件循环语句。 每次执行前判断条件:条件为真继续执行。 条件为假,停止执行。 如果条件为X或者Z,按0(假)处理。
initial begin
count = 20;
while(count > 10) begin
$display("count= %d",count);
#10 count =count - 1;
end
end
结果为20191817161514131211