Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

مراجعة - التحكم في التوقيت

جزء من قسم الأساسيات في رحلة Verilog على Coddy — الدرس 72 من 90.

challenge icon

التحدي

يختبر هذا التحدي فهمك لـ delays، و gate delays، و assignment delays، و timescale، و clock generation.

ما يجب القيام به:

  1. أضف توجيه timescale مع 1ns / 1ps
  2. قم بتوليد ساعة تتغير حالتها كل 5 وحدات زمنية
  3. أضف بوابة AND مع تأخير بوابة قدره 3 وحدات زمنية
  4. استخدم تأخير تعيين لتعيين 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

جميع دروس الأساسيات