Menu
Coddy logo textTech

Escribir el Testbench

Parte de la sección Fundamentos del Journey de Verilog de Coddy — lección 45 de 90.

challenge icon

Desafío

Ahora necesitamos probar si el semisumador está funcionando correctamente. Agrega el código de prueba dentro del bloque initial.

Importante: Antes de agregar la prueba, debes cambiar los puertos del módulo para que la prueba pueda funcionar correctamente.

Qué hacer:

Paso 1: Cambiar las declaraciones de los puertos

  • Cambia input a, b por reg a, b (usa el punto y coma)
  • Cambia output sum, carry por wire sum, carry (usa el punto y coma)
  • Elimina los puertos del módulo por completo (el módulo no debe tener ( ))

Paso 2: Agregar el código de prueba

  1. Agrega un bloque initial begin
  2. Dentro del bloque, agrega:
$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. Agrega $finish; para terminar la prueba
  2. Agrega end para cerrar el bloque initial

Pruébalo tú mismo

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

Todas las lecciones de Fundamentos