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

Writing The Testbench

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

challenge icon

التحدي

نحتاج الآن إلى اختبار ما إذا كان الجامع النصفي يعمل بشكل صحيح. أضف كود الاختبار داخل كتلة initial.

مهم: قبل إضافة الاختبار، يجب تغيير منافذ module حتى يعمل الاختبار بشكل صحيح.

ما يجب فعله:

الخطوة 1: تغيير تصريحات المنافذ

  • غيّر input a, b إلى reg a, b (استخدم الفاصلة المنقوطة)
  • غيّر output sum, carry إلى wire sum, carry (استخدم الفاصلة المنقوطة)
  • أزل منافذ module بالكامل (يجب ألا تحتوي module على ( ))

الخطوة 2: إضافة كود الاختبار

  1. أضف كتلة initial begin
  2. أضف داخل الكتلة ما يلي:
$display("a b | sum carry"); 
a = 0; b = 0; #1 $display("%d %d |  %d    %d", a, b, sum, carry); 
a = 0; b = 1; #1 $display("%d %d |  %d    %d", a, b, sum, carry); 
a = 1; b = 0; #1 $display("%d %d |  %d    %d", a, b, sum, carry); 
a = 1; b = 1; #1 $display("%d %d |  %d    %d", a, b, sum, carry);
    
  1. أضف $finish; لإنهاء الاختبار
  2. أضف end لإغلاق كتلة initial

جرّب بنفسك

module half_adder (
  input a,
  input b,
  
  output sum,
  output carry
);
  assign sum = a ^ b;
  assign carry = a & b;
  
endmodule

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

تدرّب بنفسك: مترجم Verilog عبر الإنترنت