【问题标题】:describing clocked SR Latch with verilog用verilog描述时钟SR锁存器
【发布时间】:2014-12-04 15:12:46
【问题描述】:

我试图在 Verilog 中描述一个带有 NAND 门的时钟 SR-Latch。但是,当我模拟它时,所有的输出都变成了Z,我不知道为什么。

Verilog 代码和测试平台:

module CLOCKED_SR(input clk, s, r, output q, qbar);
  wire i, j;
  nand #20 (s, clk, i);
  nand #20 (r, clk, j);
  nand #20 (qbar, j, q);
  nand #20 (q, i, qbar);
endmodule

module Q1_test();
  reg clk, s, r;
  wire qbar, q;
  CLOCKED_SR T_SR(clk, s, r, qbar, q);
  initial begin
    #20 clk = 1;
    #50 s = 0; r = 0;
    #50 s = 0; r = 1;
    #50 s = 1; r = 0;
    #50 $stop;
  end
endmodule

【问题讨论】:

    标签: verilog


    【解决方案1】:

    在 Verilog 中使用门原语时,输出始终是实例化列表中的第一个值。所以你在第一级与非门ij 作为输入,而不是输出。

    你需要确保门的输出在前:

    module CLOCKED_SR(input clk, s, r, output q, qbar);
      wire i, j;
      nand #20 (i, clk, s);
      nand #20 (j, clk, r);
      nand #20 (qbar, j, q);
      nand #20 (q, i, qbar);
    endmodule
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-05-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-29
      • 1970-01-01
      • 2022-12-08
      相关资源
      最近更新 更多