verilog:除了检查器实例化之外,在顺序区域中不允许实例化

时间:2017-10-20 08:28:20

标签: verilog

我试图制作一个4位输入模3模块。我一直收到错误"除了检查器实例化"之外,顺序区域不允许实例化。我不确定我做错了什么。

module divisible_3(
   input [3:0] a,
   output div3);

wire xnor30;
wire xnor21;
wire and32;
wire xnor10;
wire xnor_and;
wire andxnor_and;

begin
always @ (*)

two_input_xnor xnor1 (a[3], a[0], xnor30);
two_input_xnor xnor2 (a[2], a[1], xnor21);

two_input_and and1 (a[3], a[2], and32);
two_input_xnor xnor3 (a[1], a[0], xnor10);

two_input_and and2 (xnor30, xnor21, xnor_and);
two_input_and and3 (and32, xnor10, andxnor_and);

two_input_or or1 (xnor_and, andxnor_and, div3);

end

endmodule

1 个答案:

答案 0 :(得分:2)

我不知道你在这里想做什么,但是你不能在一个总阻塞中实例化模块。它没有任何意义。此开头语句在您放置它的地方没有任何功能。它属于always块的开头。 无论你想做什么,只需在always块之外实例化所有模块,就可以了。