1.偶分频模块设计

偶分频意思是时钟模块设计最为简单。首先得到分频系数M和计数器值N。

N= 时钟输入频率 / 时钟输出频率

N就是分频系数:

偶分频比较简单,假设为N(偶数)分频,只需计数到N/2-1,然后时钟翻转、计数清零,如此循环就可以得到N(偶)分频,可以通过改变参量N的值和计数变量cnt的位宽实现任意偶分频。代码如下:

DUT:以4分频为例,

SoC之时钟分频(奇数偶数分频)

TB:

SoC之时钟分频(奇数偶数分频)

波形:

SoC之时钟分频(奇数偶数分频)

 

 

2.现占空比为50%的奇(N)分频 
实现奇数分频原理是分别用上升沿计数到(n-1)/2,时钟进行翻转,再计数到(N-1)进行翻转输出clk_out_p,再用下降沿沿计数到(n-1)/2,时钟进行翻转,再计数到(N-1)进行翻转输出clk_out_n,计将clk_out_p和clk_out_n相或即可。可以通过修改N的值和计数器的位宽来实现其他奇数分频。

DUT:

SoC之时钟分频(奇数偶数分频)

SoC之时钟分频(奇数偶数分频)

 

 

TB:

SoC之时钟分频(奇数偶数分频)

波形:

SoC之时钟分频(奇数偶数分频)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

相关文章: