Menu
Coddy logo textTech

לולאת חזרה

חלק מהיחידה יסודות במסלול ה-Verilog של Coddy. שיעור 60 מתוך 90.

לולאת repeat מבצעת בלוק קוד מספר קבוע של פעמים. בניגוד ללולאת for, היא אינה משתמשת במשתנה מונה של הלולאה.

לולאת repeat רצה מספר מוגדר של פעמים. נותנים לה קבוע או ביטוי שקובע כמה איטרציות לבצע.

תחביר:

repeat (number) begin
  // Code to repeat
end

דוגמה פשוטה

repeat (5) begin
  $display("Hello");
end

פלט:

Hello
Hello
Hello
Hello
Hello

ההודעה מודפסת בדיוק 5 פעמים.

חזרה עם ביטוי

integer count = 3;

repeat (count) begin
  $display("Looping");
end

פלט:

Looping
Looping
Looping

לולאת repeat לעומת לולאת for

 לולאת forלולאת repeat
משתנה מונהכן (מפורש)לא
מתי להשתמשכשצריך את ערך האינדקסכשצריך רק חזרה
דוגמהfor (i=0; i<5; i=i+1)repeat (5)

יצירת מחזורי שעון מרובים

initial begin
  clk = 0;
  repeat (20) begin
    #5 clk = ~clk;
  end
end

הקוד הזה יוצר 20 חזיתות שעון (10 מחזורים מלאים).

כללים חשובים

כללהסבר
המספר חייב להיות לא שליליאי אפשר לחזור על פעולה מספר שלילי של פעמים
אפשר להשתמש בקבוע או בביטויrepeat (10) או repeat (count)
אין משתנה לולאה זמיןאי אפשר לעקוב אחר מספר האיטרציה
השתמשו ב־begin/end עבור כמה פקודותנדרש עבור יותר משורה אחת
challenge icon

אתגר

מה לעשות:

הוסף את לולאת repeat החסרה כדי להדפיס "Verilog" 4 פעמים.

נסו בעצמכם

module repeat_challenge;
  
  initial begin
    $display("Printing 4 times:");
    
    // TODO: הוסף לולאת repeat
    // חזור 4 פעמים
    // בתוך הלולאה, הדפס "Verilog"
    
    $finish;
  end
endmodule
quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה יסודות

תרגלו בעצמכם: קומפיילר Verilog אונליין