在使用逻辑门描述主从 JK 触发器时,不需要使用'always'语句。以下是使用 4 个二输入与非门、3 个三输入与非门、1 个四输入与非门和 1 个非门来构建的主从 JK 触发器的 Verilog 代码:

module JKFlipFlop (
  input wire J, K, CLK, CLR,
  output reg Q, Q_bar
);

  wire N1, N2, N3, N4, N5, N6, N7, N8, N9, N10, N11, N12;

  nand2 gate1 (N1, J, Q_bar);
  nand2 gate2 (N2, K, Q);
  nand3 gate3 (N3, N1, CLK, N2);
  nand2 gate4 (N4, J, Q_bar);
  nand2 gate5 (N5, K, Q);
  nand3 gate6 (N6, N4, CLK, N5);
  nand2 gate7 (N7, N3, CLR);
  nand2 gate8 (N8, N6, CLR);
  nand3 gate9 (N9, N3, N7, N8);
  nand3 gate10 (N10, N6, N8, N7);
  nand2 gate11 (N11, N9, N10);
  nand4 gate12 (N12, N3, N7, N8, N11);

  assign Q = N12;
  assign Q_bar = ~Q;

endmodule

在这段代码中,我们使用了 nand 门 ('nand2'、'nand3' 和 'nand4') 和非门 ('~') 来实现主从 JK 触发器。每个门的输出通过线 ('wire') 连接到下一个门的输入。逻辑门的类型和连接方式按照主从 JK 触发器的逻辑功能进行布局。

'assign' 语句用于将最终的输出连接到 'Q' 和 'Q_bar'。'Q' 由 'N12' 驱动,并使用 '~Q' 计算 'Q_bar'。

这个代码只使用了与非门 (nand 门) 和非门来描述主从 JK 触发器。如果有任何疑问,请随时提问。

Verilog 主从 JK 触发器实现:仅使用与非门

原文地址: https://www.cveoy.top/t/topic/puf 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录