在此代码中出现$display
时,出现错误。为什么呢?
module always_example();
reg clk,reset,enable,q_in,data;
always @ (posedge clk)
if (reset) begin
data <= 0;
end else if (enable) begin
data <= q_in;
end
$display("data=%d", data);
endmodule
错误消息是:
10:语法错误10:错误:模块项无效
答案 0 :(得分:1)
您需要将显示放在always块中。
module always_example();
reg clk,reset,enable,q_in,data;
always @ (posedge clk) begin
if (reset) begin
data <= 0;
end else if (enable) begin
data <= q_in;
end
$display("data=%d", data);
end
endmodule
您仍需要初始化块来初始化变量并进行更改。您还需要创建一个时钟。如果您查看Verilog的一些教程并了解如何创建测试平台和设计模块,情况会更加清晰。