如何在Verilog中连接两个模块?

时间:2009-11-10 00:51:06

标签: module verilog

我已经写了两个模块D'Latch和SR Latch,我想编写verilog代码来加入这两个模块。

3 个答案:

答案 0 :(得分:3)

说真的,你应该拿自己的Verilog手册或搜索一些在线资源。

无论如何,这样的事情应该有效:

module dff (
    input Clk,
    input D,
    output Q,
    output Qbar
  );

  wire q_to_s;
  wire qbar_to_r;
  wire clk_bar;

  assign clk_bar = ~Clk;

  D_latch dlatch (
    .D(D),
    .Clk(Clk),
    .Q(q_to_s),
    .Qbar(qbar_to_r)
  );

  RS_latch rslatch (
    .S(q_to_s),
    .R(qbar_to_r),
    .Clk(clk_bar),
    .Qa(Q),
    .Qb(Qbar)
  );

endmodule

答案 1 :(得分:2)

您可能需要查看Emacs AUTOWIRE

答案 2 :(得分:0)

您需要创建一个外部模块,其中的端口如原理图(D,Clk,Q,NQ)所示。在此模块中,您将实例化两个子模块DLatch和RSLatch,并适当地连接端口。 (您需要为内部互连声明额外的电线。)