أول Module لك
جزء من قسم الأساسيات في رحلة Verilog على Coddy — الدرس 4 من 90.
تعد الـ module هي وحدة البناء الأساسية في Verilog. كل جزء من كود Verilog يوجد داخل module.
فكر في الوحدة (module) كـ مكون يحتوي على:
- مدخلات (إشارات واردة)
- مخرجات (إشارات صادرة)
- سلوك (ما تفعله)
صيغة الوحدة (Module Syntax)
module module_name ( inputs, outputs );
// كل شيء بالداخل هنا
endmoduleتبدأ كل وحدة بـ module وتنتهي بـ endmodule.
المدخلات والمخرجات
module and_gate(
input a, // a يدخل إلى الـ module
input b, // b يدخل إلى الـ module
output c // c يخرج من الـ module
);
// السلوك يوضع هنا
endmodule- input = الإشارة تدخل الوحدة
- output = الإشارة تخرج من الوحدة
إضافة السلوك
الآن سنجعل الوحدة (module) تقوم بعمل ما:
module and_gate(
input a,
input b,
output c
);
assign c = a & b; // c تساوي 1 فقط عندما تكون a و b تساوي 1
endmoduleassignيربط الجانب الأيمن بالجانب الأيسر بشكل مستمر&تعني AND في Verilog
التحدي
في هذا التحدي، تحتاج إلى إنشاء وحدة (module) بسيطة تقوم بعملية OR المنطقية.
ما يجب القيام به:
- يجب تسمية الوحدة
or_gate - يجب أن تحتوي على مدخل يسمى
x - يجب أن تحتوي على مدخل يسمى
y - يجب أن تحتوي على مخرج يسمى
z - داخل الوحدة، استخدم
assignلجعلzمساوياً لـx OR y
ملاحظة: في لغة Verilog، تُكتب عملية OR باستخدام رمز الأنبوب |. وتكون النتيجة 1 (صحيح) إذا كان واحد على الأقل من المدخلات هو 1 (صحيح).
ورقة مرجعية
تُعد الوحدة (module) هي لبنة البناء الأساسية في Verilog، حيث تعمل كمكون له مدخلات ومخرجات وسلوك محدد.
module module_name (
input a,
input b,
output c
);
// السلوك
endmoduleاستخدم assign لتوجيه إشارة خرج بشكل مستمر:
assign c = a & b; // AND
assign c = a | b; // OR&— معامل AND|— معامل OR
جرّب بنفسك
// الخطوة 1: إنشاء وحدة باسم or_gate
// الخطوة 2: إنشاء المدخل x
// الخطوة 3: إنشاء المدخل y
// الخطوة 4: إنشاء المخرج z
// الخطوة 5: استخدم assign لجعل z = x OR y
// في لغة Verilog، تُكتب OR كـ |
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الأساسيات
4المعاملات - الجزء الأول
المعاملات الحسابيةمعامل باقي القسمة (Modulo)معاملات المقارنةملخص - رياضيات بسيطةمعاملات Bitwise7التعيين والبوابات المنطقية
التعيين المستمرالتعيين باستخدام العملياتالبوابات الأساسية المدمجةبوابات AND و OR و NOTبوابات XOR و XNORمراجعة - دارة البوابات المنطقية5المعاملات - الجزء الثاني
المعاملات المنطقيةمعاملات الاختزالمعاملات الإزاحةمعامل الدمجالمعامل الشرطيمراجعة - تحدي المعاملات3أنظمة العد
التمثيل الثنائيالأعداد محددة الحجمالأعداد غير محددة الحجمالأعداد السالبةالقيم الخاصة X و Zمراجعة - تنسيقات الأعداد6الوحدات
هيكل الوحدةمنافذ الإدخال والإخراجمنافذ Inoutاستدعاء الوحداتربط المنافذ بالاسمربط المنافذ بالترتيبمراجعة - بناء وحدة