0

在模块 A 中,我试图将模块 B 的输出用作另一个模块 C 的输入。本质上,这是一个“启动”开关,在满足某些条件后在模块 B 中翻转,然后这应该是成为模块C激活的触发器。是否可以像这样链接输出和输入?

我一直在阅读,发现这张图片特别有用 - 但是,我不太了解网的概念,或者它们是否会有所帮助。将模块 B 的输出连接到用作模块 C 输入的 reg 是否可行?谢谢。

编辑:

我正在寻找这样的东西涉及3个不同的模块),我在模块A中实例化模块B和模块C。我想将B的输出连接到C的输入。

4

2 回答 2

4

您的三个模块示例(image),使用线 outB_to_inC 将输出连接到输入:

//A.v
module A(inA, outA);
input wire inA;
output wire outA;

wire outB_to_inC;

B B_inst(.inB(inA), .outB(outB_to_inC));

C C_inst(.inC(outB_to_inC), .outC(outA));

endmodule

/////

//B.v
module B (inB, outB);
input wire inB;
output wire outB;

//... more code here

endmodule

/////

//C.v
module C (inC, outC);
input wire inC;
output wire outC;

//... more code here

endmodule

于 2013-10-15T06:39:00.923 回答
2

你可以建立这些联系例如:

module my_moduleA (inA, outA)
input inA;
output reg outA; //If you want to assign something to out inside an always block, it has to be output reg, otherwise you will have to use assign out from an always block.

//Put your logic here

endmodule

module my_moduleB (inB, outB)
input inB;
output reg outB; //If you want to assign something to out inside an always block, it has to be output reg, otherwise you will have to use assign out from an always block.

//Put your logic here

//Instantiation of module A
my_moduleA instance(  //Here is the connection made between module A and B
.inA (inB),  
.outA (outB));
endmodule

这就是连接的方式,如果你想在内部信号上建立这些连接,那么你可以使用线型

于 2013-10-11T22:32:47.223 回答