义务:我是Verilog的新手。 我有两个单独的工作verilog模块:一个nios-ii ADC和一个计数器模块。 nios-ii控制的ADC qsys在主模块中正确实例化。我也试图在主模块中实例化计数器。 Quartus不会抛出任何错误,但计数器应该输出的输出上没有任何内容。 主要模块代码如下:
module niosADCv2(
input CLOCK,
input ADC1IN1, // Voltage Level 2.5 V
input ADC1IN2, // Voltage Level 2.5 V
input RESET_N // Voltage Level 2.5 V
);
niosADCv2_qsys u0 (
.clk_clk (CLOCK), // clk.clk
.reset_reset_n (RESET_N) // reset.reset_n
);
verilog_counter verilog_counter_c0(
.CLOCK (CLOCK),
.usec (usec),
.nsec (nsec)
);
endmodule
在一个单独的verilog文件中是我的verliog_counter模块:
module verilog_counter(CLOCK, usec, nsec);
input CLOCK;
output reg [7:0] usec;
output reg [5:0] nsec; //counts by 20nsecs (50MHz clock)
wire CLOCK;
always @ (posedge CLOCK)
if (nsec == 6'b110001) begin //if count is 49 (980ns)
nsec <= 7'b0; //reset 20nsec count
usec <= usec + 7'b1; //incriment usec count
end
else nsec <= nsec + 8'b1; //if a usec not reached, incriment 20ns counter
endmodule
为什么没有出现计数器输出的想法?我是否错误地将计数器模块实例化,或者我不能将它们放在单独的文件中?任何帮助表示赞赏
答案 0 :(得分:0)
您应该在顶层模块中添加usec和nsec的声明。比如
并将文件verilog_counter.v添加到项目中。