Establezca la matriz de cables en un valor entero en el banco de pruebas Verilog

2

Estoy escribiendo un banco de pruebas para un módulo que toma una matriz de entradas que representa un número usando el siguiente código:

module ComparatorTest;
wire [3:0] a;
wire [3:0] b;
output aHigher, bHigher, equal;

Comparator c (a, b, aHigher, bHigher, equal);

initial begin
    $dumpfile("test.vcd");
    $dumpvars(0, ComparatorTest);

    # 0  a[3:0]=1111, b[3:0]=0000;
    # 20 a[3:0]=1111, b[3:0]=1111;
    # 40 a[3:0]=0000, b[3:0]=1111;
    # 60 $stop;
end
endmodule

Quiero poder configurar las matrices a y b en la base 10 o en binario como lo haría con un número. ¿Cómo voy a hacer esto? El código que tengo me da un error de sintaxis (ComparatorTest.v: 12: Sintaxis en la sentencia de asignación l-value.)

    
pregunta Tyler H

1 respuesta

3

Cambia de wire a reg y deberías estar listo.

Y si desea establecerlos en binario, entonces tiene que prefijar con 4'b , así: 4'b0000 , 4'b1111 , etc. El 4 indica el número de bits. Si quieres un decimal, entonces haz 4'd0 , 4'd15 , etc.

    
respondido por el alex.forencich

Lea otras preguntas en las etiquetas