verilog分频模块设计

Posted yskn

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了verilog分频模块设计相关的知识,希望对你有一定的参考价值。

verilog设计:

分频器的设计:

  分频器就是将一个时钟源的频率降低的过程(可以通过观察分频之后周期中包含几个原时钟周期来看是几分频),分频分为基数分频也分为偶数分频,

偶数分频的代码如下:(其中就是计数器翻转的过程)

 1 module div(clk,rst_n);
 2     input clk,rst_n;
 3     
 4     reg clk_1k;//1k Hz的时钟
 5     reg [20:0] count; //计数器
 6     parameter div = 6;//这个分频为了方便仿真,随意定了个较小的值,10分分频
 7     parameter flag=div/2-1;
 8     
 9     always @(posedge clk or negedge rst_n)
10     begin
11         if(!rst_n)
12         begin 
13             clk_1k <= 1;
14             count <= flag;
15         end
16         else
17            if(count < flag)
18                count  <= count + 1;
19            else
20            begin
21                count <= 0 ;
22                clk_1k <= ~clk_1k;
23             end
24     end
25 endmodule

奇数分频(计数不用以整个周期为单位)

 1 module intec(clk,rst_n);
 2     input clk,rst_n;
 3     
 4     reg clk_1k;//1k Hz的时钟
 5     reg [20:0] count; //计数器
 6     parameter div = 3;//这个分频为了方便仿真,随意定了个较小的值,10分分频
 7     parameter flag=div-1;
 8     
 9     always @(clk or negedge rst_n)
10     begin
11         if(!rst_n)
12         begin 
13             clk_1k <= 1;
14             count <= flag;
15         end
16         else
17            if(count < flag)
18                count  <= count + 1;
19            else
20            begin
21                count <= 0 ;
22                clk_1k <= ~clk_1k;
23             end
24     end
25 endmodule

 

以上是关于verilog分频模块设计的主要内容,如果未能解决你的问题,请参考以下文章

基于verilog的分频器设计(半整数分频,小数分频:下)

时钟分频

求一个用verilog实现二分之一分频(是提高频率,不是降低频率)的代码

FPGA教程案例8基于verilog的分频器设计与实现

Verilog实现之任意分频电路

IC面试常考题 Verilog三分频电路设计(占空比50%,三分之一,三分之二)