مراجعة - التحكم في التوقيت
جزء من قسم الأساسيات في رحلة Verilog على Coddy — الدرس 72 من 90.
التحدي
يختبر هذا التحدي فهمك لـ delays، و gate delays، و assignment delays، و timescale، و clock generation.
ما يجب القيام به:
- أضف توجيه
timescaleمع1ns / 1ps - قم بتوليد ساعة تتغير حالتها كل 5 وحدات زمنية
- أضف بوابة AND مع تأخير بوابة قدره 3 وحدات زمنية
- استخدم تأخير تعيين لتعيين
aإلىbبعد وحدتين زمنيتين (اقرأaفوراً)
جرّب بنفسك
// TODO: (1ns / 1ps) أضف توجيه المقياس الزمني
module timing_challenge;
reg clk;
reg a, b;
wire out;
initial begin
clk = 0;
end
// TODO: قم بتوليد ساعة تتبدل كل 5 وحدات زمنية
// TODO: (out المخرج ,b ,a المدخلات) أضف بوابة AND مع تأخير قدره 3 وحدات زمنية
initial begin
$monitor("Time %0t: clk=%b, a=%b, b=%b, out=%b", $time, clk, a, b, out);
a = 1;
// TODO: بعد وحدتين زمنيتين b إلى a استخدم تأخير التعيين لتعيين
// بعد وحدتين زمنيتين b الآن، ثم قم بالتعيين لـ a اقرأ
#20;
$finish;
end
endmoduleجميع دروس الأساسيات
4المعاملات - الجزء الأول
المعاملات الحسابيةمعامل باقي القسمة (Modulo)معاملات المقارنةملخص - رياضيات بسيطةمعاملات Bitwise7التعيين والبوابات المنطقية
التعيين المستمرالتعيين باستخدام العملياتالبوابات الأساسية المدمجةبوابات AND و OR و NOTبوابات XOR و XNORمراجعة - دارة البوابات المنطقية13التوقيت والتأخيرات
ما هي التأخيراتتأخيرات البواباتتأخيرات التعيينتوجيه Timescaleتوليد الساعةمراجعة - التحكم في التوقيت5المعاملات - الجزء الثاني
المعاملات المنطقيةمعاملات الاختزالمعاملات الإزاحةمعامل الدمجالمعامل الشرطيمراجعة - تحدي المعاملات3أنظمة العد
التمثيل الثنائيالأعداد محددة الحجمالأعداد غير محددة الحجمالأعداد السالبةالقيم الخاصة X و Zمراجعة - تنسيقات الأعداد6الوحدات
هيكل الوحدةمنافذ الإدخال والإخراجمنافذ Inoutاستدعاء الوحداتربط المنافذ بالاسمربط المنافذ بالترتيبمراجعة - بناء وحدة