1、M进制计数器
一个M进制的计数器的设计,首先需要判断其需要几个触发器,假设需要N个触发器,那么必须满足,以一个十进制的计数器来说,N为4。
代码如下:十进制的计数器除了低电位复位信号清零外还需要再计数到9以后清零。
module comp_10(count,clk,reset);
output[3:0] count;
input clk, reset;
reg[3:0] count;
always@(posedge clk)
if(!reset) count<=4'b0;
else if(count==4'b1001) count<=4'b0;
else count<=count+1;
endmodule
其他进制的计数器根据同样的方式,先确定触发器的个数,随后确定计数到M-1后清零即可进行设计。
2、计数器应用1:分频器
1)偶数分频器(N分频)
偶数分频器的设计方法是:首先设计一个的计数器,然后在时钟上升沿,计数器计到最大时反转,举例8分频器,需要一个3进制的计数器,代码如下:
module