Вы не создали экземпляр модуля rstt
внутри модуля test
. Это означает, что провода (q
и qbar
) внутри модуля test
не повреждены. Вот почему они остаются прямыми, а не переключаются. В соответствии со стандартом IEEE Verilog для ненарушенного wire
по умолчанию будет 1'bz
.
Попробуйте что-то вроде этого:
//design module
module rstt(s,r,q,qbar);
input r,s;
output q,qbar;
nand n1(q,r,qbar);
nand n2(qbar,s,q);
endmodule
//stimulus module
module test;
reg r,s;
wire q,qbar;
rstt i0 (
.s (s),
.r (r),
.q (q),
.qbar (qbar)
);
initial begin
r=1'b1;
s=1'b0;
#25 r=1'b0;
s=1'b1;
#25 r=1'b1;
s=1'b1;
#100 $finish;
end
endmodule
Обратите внимание, что ваша проблема не связана с каким-либо симулятором.