Menu
Coddy logo textTech

Написание Testbench

Часть раздела Основы путешествия по Verilog на Coddy — урок 45 из 90.

challenge icon

Задание

Теперь нам нужно проверить, правильно ли работает полусумматор. Добавьте тестовый код внутрь блока initial.

Важно: Перед добавлением теста вы должны изменить порты модуля, чтобы тест мог работать правильно.

Что нужно сделать:

Шаг 1: Измените объявления портов

  • Измените input a, b на reg a, b (используйте точку с запятой)
  • Измените output sum, carry на wire sum, carry (используйте точку с запятой)
  • Полностью удалите порты модуля (у модуля не должно быть ( ))

Шаг 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

Все уроки раздела Основы