我是通过 xilinx 编写 verilog 的初学者。
我了解到端口声明必须如下所示
module mealy(
nReset,
clk,
in,
out
);
input nReset;
input clk;
input in;
output out;
endmodule
当我使用 xilinx 时,它具有设置变量的默认选项,如下所示:
module mealy(
input nReset,
input clk,
input in,
output out
);
endmodule
有时,当我使用第二种方式时,它会产生错误。两种风格有什么区别?
第二个问题,当将输出声明为reg
s 时,第一种样式可以正常工作,即
module mealy(
in,
out
);
output out;
input in;
reg out;
endmodule
使用第二种样式时,它会生成一个错误,指出您不能声明两次。
module mealy(
input in,
output out
);
reg out;
endmodule
什么事?我只是初学者我不知道为什么我必须声明'reg'。