【问题标题】:How do I code a basic flip flop in Verilog Pro?如何在 Verilog Pro 中编写基本触发器?
【发布时间】:2010-08-10 14:17:49
【问题描述】:

我尝试在 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

【问题讨论】:

  • 波形图和问题描述...
  • 我在 q 和 qbar 中得到直线。 n 在 s 和 r 中没有行。这些是使用与非门的基本触发器的错误波形

标签: verilog


【解决方案1】:

您没有在 test 模块中实例化您的 rstt 模块。这意味着模块test 内的电线(qqbar)未驱动。这就是为什么它们保持直线而不是切换的原因。根据 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

请注意,您的问题并非特定于任何模拟器。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-11
    • 2022-07-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多