Estoy usando ModelSim para simular un diseño con verilog netlist y verilog RTL.
Mi jerarquía de diseño de verilog es así:
tb
crea una instancia de inv_dual_tb
;
inv_dual_tb
crea una instancia de GF_INV_8_tb
;
Hay varias señales en GF_INV_9_tb
que me interesan. Hay una señal llamada c
, ( c
es de 2 bits), así que intento forzar el valor en mi archivo do (vsim -do 'fuerza .....'):
force \/tb/inv_dual_tb/GF_INV_8_tb/c\[0\] 0 0ns
Esto funciona bien. Pero hay otra señal en GF_INV_9_tb
llamada /tb/inv_dual_tb/GF_INV_8_tb/\pmul/p
(esto es de 2 bits), así que probé el comando a continuación. Pero ModelSim sigue quejándose. También adjunto la información de error a continuación.
force \/tb/inv_dual_tb/GF_INV_8_tb/\pmul/p\[0\]\ 0 0ns
# ** Error: (vish-4008) Object '/tb/inv_dual_tb/GF_INV_8_tb/\pmul/p[0]' not found.
Nota: Modelsim no puede manejar el caso que mencioné. Pero la solución provista por dwikle puede manejar casos de un solo bit o varios bits sin caracteres de escape