Как подключить два модуля в Verilog? - PullRequest
2 голосов
/ 10 ноября 2009

Я написал два модуля DLatch и RSLatch, и я хочу написать код Verilog, чтобы объединить эти два.

Ответы [ 3 ]

3 голосов
/ 10 ноября 2009

Серьезно, вы должны получить руководство 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
2 голосов
/ 22 декабря 2009

Возможно, вы захотите взглянуть на Emacs AUTOWIRE

0 голосов
/ 10 ноября 2009

Вам нужно будет создать внешний модуль с портами, как показано на вашей схеме (D, Clk, Q, NQ). Внутри этого модуля вы создаете два подмодуля DLatch и RSLatch и подключаете порты соответствующим образом. (Вам нужно будет объявить дополнительные провода для внутренних соединений.)

...