نوع Reg
جزء من قسم الأساسيات في رحلة Verilog على Coddy — الدرس 7 من 90.
Reg هو النوع الرئيسي الثاني للبيانات في Verilog. بخلاف wire، فإن reg يخزن قيمة. إنه متغير يحتفظ بقيمته حتى يغيره شيء ما.
- يمكن لـ
regتخزين القيم - يُستخدم
regفي كتلalways - لا يعني
regبالضرورة "register" في العتاد (hardware)—بل يعني ببساطة "تخزين"
الإعلان عن reg
reg x; // reg أحادي البت
reg y, z; // عدة regs في سطر واحدكيفية عمل reg
module reg_example;
reg x;
initial begin
x = 0; // x يصبح 0
$display("x = %d", x); // يطبع: x = 0
x = 1; // x يصبح 1
$display("x = %d", x); // يطبع: x = 1
end
endmoduleالتحدي
ماذا يجب أن تفعل:
- أضف reg يسمى
count
ورقة مرجعية
reg يخزن قيمة ويحتفظ بها حتى يتم تغييرها. يُستخدم داخل كتل always أو initial.
reg x; // سجل بت واحد
reg y, z; // سجلات متعددةinitial begin
x = 0; // تعيين قيمة
x = 1; // تحديث قيمة
endجرّب بنفسك
module counter(
input clk,
input reset,
output out // سلك افتراضياً (قم بإزالة reg)
);
// قم بتعريف reg count هنا
endmoduleيتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الأساسيات
4المعاملات - الجزء الأول
المعاملات الحسابيةمعامل باقي القسمة (Modulo)معاملات المقارنةملخص - رياضيات بسيطةمعاملات Bitwise7التعيين والبوابات المنطقية
التعيين المستمرالتعيين باستخدام العملياتالبوابات الأساسية المدمجةبوابات AND و OR و NOTبوابات XOR و XNORمراجعة - دارة البوابات المنطقية5المعاملات - الجزء الثاني
المعاملات المنطقيةمعاملات الاختزالمعاملات الإزاحةمعامل الدمجالمعامل الشرطيمراجعة - تحدي المعاملات3أنظمة العد
التمثيل الثنائيالأعداد محددة الحجمالأعداد غير محددة الحجمالأعداد السالبةالقيم الخاصة X و Zمراجعة - تنسيقات الأعداد6الوحدات
هيكل الوحدةمنافذ الإدخال والإخراجمنافذ Inoutاستدعاء الوحداتربط المنافذ بالاسمربط المنافذ بالترتيبمراجعة - بناء وحدة