我尝试使用Verilog Pro中的NAND门编码基本触发器,但我得到的波形不正确。请看看它有什么问题。
//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;
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
答案 0 :(得分:2)
您未在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
请注意,您的问题并非特定于任何模拟器。