题解 | #可置位计数器#
可置位计数器
http://www.nowcoder.com/practice/b96def986e29475e8100c213178b73a8
比较简单的计数器。参考答案多了一个num
中间计数器,使时序后移了一个周期。这里也加入了一个中间计数器。
`timescale 1ns/1ns
module count_module(
input clk,
input rst_n,
input set,
input [3:0] set_num,
output reg [3:0]number,
output reg zero
);
reg [3:0] num;
always@(posedge clk or negedge rst_n) begin
if(~rst_n)
num <= 0;
else
num <= set? set_num: num+1;
end
always@(posedge clk or negedge rst_n) begin
if(~rst_n)
number <= 0;
else
number <= num;
end
always@(*) begin
if(~rst_n)
zero <= 0;
else
zero <= number==0;
end
endmodule
Verilog篇题解 文章被收录于专栏
本人对牛客网verilog篇题目一些理解