分频器

提及分频器我们首先会想到计数器,计数器实际上是控制时序的一个很好的方法,所以对计数器有一个比较深入的了解是十分必要的事情。下面我们就从计数器开始对分频器做一个简单的介绍。

1、计数器

说到计数器的电路结构其实非常简单,无非就是一个寄存器和一个加法器。


分频器_第1张图片
加法器对应的电路结构.png
  module test(
        clk,
        rst,
       count
        );

input clk,rst;
output[3:0] count;
reg [3:0]count;

always@(posedge clk or negedge rst)
begin
  if(!rst)
   count<=0;
  else if(count==5)
    count<=0;
  else
    count<=count+1;
  end

endmodule
仿真波形图.png

2、整数分频

电路的输入时钟频率为1MHz,要求输出250KHz,1:3的方波。
代码分为两个部分,一个是计时器,另一个是占空比的处理。

  module test(
                        clk,
                        rst,
                        dout1
                        );

 input clk,rst;
 output dout1;
 reg dout1;

 reg [1:0]count1;

 always@(posedge clk or negedge rst)
 begin
   if (!rst)
    count1<=0;
   else if(count1==3)
     count1<=0;
   else
     count1<=count1+1;
  end

 always@(posedge clk or negedge rst)
   begin
     if (!rst)
       dout1<=0;
      else if(count1==0)
      dout1<=1;
     else if (count1==1)
      dout1<=0;
     else
        dout1<=dout1;
  end   

 endmodule
仿真波形图.png

3、小数分频

关于小数分频,我们来分析一个例子,这里只做思路上的分析。
例:由68MHz得到9MHz。
68/9=7......5;可以推出68/9分频,可以看成5个8分频和4个7分频,这个7分频和8分频中的数字7和8就是从商中得出来的。那5个8分频和4个7分频中的数字5和4就是从余数中的出来的,5是余数,4是(9-5)。

你可能感兴趣的:(分频器)