worlide

PR布局布线

0
阅读(3191)

一,对占空比没要求

①:奇分频

      通过计数器来控制分频时钟的翻转,如5分频,当cnt计数到4(n-1,n为分频数)的时候清零,

可以在0、1、2、3、4这五个cnt的取值中任选两个让clk_g(分频时钟)来取反,比如:

分频时钟波形为:,只不过如果选两个相邻的数,如2、3,占空比为20%,选不同的数还可使占空比分别为40%、60%、80%。比如取0、4翻转,可使占空比为80%。

②:偶分频

      同样通过计数器控制分频时钟的翻转,比如6分频,当cnt计数到5的时候清零,同样是在0、1、2、3、4、5这六个cnt的取值中任选两个让clk_g(分频时钟)来取反,比如2和3,如图所示:,不过这时可以通过让clk_g在cnt为2和5、1和4、0和3取反得到占空比为50%的分频时钟,如图(2和3处clk_g取反):


二、要求占空比为50%

①:偶分频

       已在上面论述,比如4分频,cnt在0和2或者1和3(相差分频数的一半)时让clk_g(分频时钟)取反即可得到占空比为50%的偶分频时钟。又比如8分频,cnt在0和4、1和5、2和6、3和7(相差分频数的一半)时让clk_g(分频时钟)取反即可,如图:

②:奇分频

       a:三分频

           这时要利用时钟下降沿,定义两个计数器:cnt_1、cnt_2,cnt_1在上升沿计数,cnt_2在上升沿计数,均计到2清零。上升沿时,当cnt_1为1和2(0和1也可以)时另clk_g_1取反,下降沿时,当cnt_2为1和2(0和1也可以,但一定要和cnt_1一致)时另clk_g_2取反,这样就会得到两个占空比为1/3的分频时钟,并且clk_g_1和clk_g_2相差半个时钟周期,将clk_g_1和clk_g_2相或即可得到占空比为1/2的clk_g。如图所示:

three.txt

       b:五分频

            上升沿时,当cnt_1为1和3(0和2、2和4也可以)时另clk_g_1取反,下降沿时,当cnt_2为1和3(0和2、2和4也可以,相差(N-1)/2,但一定要和cnt_1一致)时另clk_g_2取反,这样就会得到两个占空比为2/5的分频时钟,并且clk_g_1和clk_g_2相差半个时钟周期,将clk_g_1和clk_g_2相或即可得到占空比为1/2的clk_g。,代码为: