2 votos

Establecer un array de cables con un valor entero en el banco de pruebas Verilog

Estoy escribiendo un banco de pruebas para un módulo que toma un array de entradas que representa un número utilizando 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 poner las matrices a y b en base 10 o en binario como si fuera un número. ¿Cómo puedo hacer esto? El código que tengo me da un error de sintaxis (ComparatorTest.v:12: Syntax in assignment statement l-value.)

3voto

silverbolt Puntos 18

Cambiar wire a reg y deberías estar listo para ir.

Y si quieres ponerlos en binario, entonces tienes que poner el prefijo 4'b así: 4'b0000 , 4'b1111 etc. El 4 indica el número de bits. Si quiere el decimal, entonces haga 4'd0 , 4'd15 etc.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X