Menu
Coddy logo textTech

המודול הראשון שלך

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

מודול הוא אבן הבניין הבסיסית ב-Verilog. כל קטע קוד של Verilog נמצא בתוך מודול.

חשוב על מודול בתור רכיב עם:

  • קלטים (אותות שנכנסים)
  • פלטים (אותות שיוצאים)
  • התנהגות (מה הוא עושה)

תחביר מודול

module module_name ( inputs, outputs );

  // כל מה שנמצא כאן בפנים

endmodule

כל מודול מתחיל ב־module ומסתיים ב־endmodule.

קלטים ופלטים

module and_gate(
  input a,     // a נכנס למודול
  input b,     // b נכנס למודול
  output c     // c יוצא מהמודול
);

  // ההתנהגות מוגדרת כאן

endmodule
  • קלט = האות נכנס למודול
  • פלט = האות יוצא מהמודול

הוספת התנהגות

עכשיו נגרום למודול לעשות משהו:

module and_gate(
  input a,
  input b,
  output c
);

  assign c = a & b;  // c הוא 1 רק כאשר גם a וגם b הם 1

endmodule
  • assign מחבר באופן רציף את הצד הימני לצד השמאלי
  • & פירושו AND ב-Verilog
challenge icon

אתגר

באתגר הזה, עליך ליצור מודול פשוט שמבצע את פעולת OR.

מה לעשות:

  1. שם המודול צריך להיות or_gate
  2. צריך להיות לו קלט בשם x
  3. צריך להיות לו קלט בשם y
  4. צריך להיות לו פלט בשם z
  5. בתוך המודול, השתמש ב-assign כדי להגדיר ש-z יהיה שווה ל-x OR y

כותרת המודול ושלוש היציאות שלו כבר מופיעות בעורך. עליך להוסיף את שורת פקודת ה-assign בתוך המודול.

הערה: ב-Verilog, OR נכתב באמצעות הסימן האנכי |. הוא מחזיר 1 (אמת) אם לפחות אחד מהקלטים הוא 1 (אמת).

נסו בעצמכם

// כותרת המודול והפורטים שלו כבר נכתבו עבורכם
module or_gate(
  input x,
  input y,
  output z
);

  // תורכם: השתמשו ב־assign כדי להגדיר את z כ־x OR y
  // ב־Verilog, כותבים OR כך: |

endmodule
quiz iconבחנו את עצמכם

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

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

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