多位宽计数器信号跨时钟同步电路及方法与流程

文档序号:32522505发布日期:2022-12-13 20:01阅读:45来源:国知局
多位宽计数器信号跨时钟同步电路及方法与流程
多位宽计数器信号跨时钟同步电路及方法
1.技术领域
2.本发明涉及一种多位宽计数器信号跨时钟同步电路及方法,属于电子技术领域。


背景技术:

3.当多位宽计数器信号跨时钟域使用时,需要进行跨时钟域同步,否则会引起亚稳态现象。亚稳态现象是指触发器无法在某个规定的时间段内到达一个可确认的状态,在同步系统中,如果触发器的setup time / hold time不满足,就可能产生亚稳态,此时触发器输出端q在有效时钟沿之后比较长的一段时间处于不确定的状态,在这段时间里q端毛刺、振荡、固定的某一电压值,而不是等于数据输入端d的值。这段时间称为决断时间(resolution time)。经过resolution time之后q端将稳定到0或1上,但是究竟是0还是1,是随机的,与输入没有必然的关系。
4.针对此,本案设计了一种多位宽计数器信号跨时钟同步电路及方法用于解决多位宽计数器信号跨时钟域同步时产生亚稳态现象的问题。


技术实现要素:

5.本发明的目的在于提供一种多位宽计数器信号跨时钟同步电路及方法,避免亚稳态现象产生。
6.为实现上述目的,本发明提供如下技术方案:一种多位宽计数器信号跨时钟同步电路,包括慢时钟域clk1、快时钟域clk2、使能信号enb、复位信号rst_n、移位分频模块、打拍同步模块、使能信号叠加模块和计数模块,所述慢时钟域clk1、使能信号enb以及复位信号rst_n的输出端均与移位分频模块对应的输入端相连接,所述移位分频模块、使能信号enb以及快时钟域clk2的输出端均与打拍同步模块对应的输入端相连接,所述复位信号rst_n输出端与打拍同步模块输入端相连接,且复位信号rst_n与打拍同步模块之间设有第一非门电路,所述打拍同步模块设有第一输出口enbb03、第二输出口sftb02和第三输出口sftb03,所述第三输出口sftb03输出端与第二非门电路输入端相连接,第二非门电路的输出端以及第二输出口sftb02的输出端均连接至与门电路的输入端,与门电路输出端与使能信号叠加模块的输入端相连接,使能信号叠加模块、第一输出口enbb03以及快时钟域clk2输出端均与计数模块对应的输入端相连接,所述复位信号rst_n输出端与计数模块输入端相连接,且复位信号rst_n与计数模块之间设有第三非门电路,所述计数模块输出端输出所需计数信号。
7.进一步地,上述多位宽计数器信号跨时钟同步电路,其中:所述与门电路输出端分有四个输出端口,相应地,使能信号叠加模块设有四个输入端口,与门电路与使能信号叠加模块的各个端口对应连接。
8.本发明还公开了一种多位宽计数器信号跨时钟同步方法,采用上述的多位宽计数
器信号跨时钟同步电路,从慢时钟域clk1同步计数器信号到快时钟域clk2,具体包括以下步骤:(1)当计数使能信号enb为高时,在慢时钟域clk1通过移位寄存器的方式,产生4个有时间差的慢时钟域clk1四分频时钟信号sftcnt[3:0];(2)将4个四分频时钟信号sftcnt[3:0]和计数使能信号enb同步到快时钟域clk2时钟域中,即将4个四分频时钟信号sftcnt[3:0]和计数使能信号enb都打3拍流水,得到3个四位同步后的分频时钟信号sftb [3:0]以及3个打拍后的使能信号enbb01~03;(3)选取步骤(2)中所得到的3个同步后的分频时钟信号sftb [3:0]其中的同步后的分频时钟信号sftb02和同步后的分频时钟信号sftb03,将同步后的分频时钟信号sftb02和同步后的分频时钟信号sftb03中每一位对应,分别进行逻辑处理,产生4个新的符合快时钟域clk2脉宽的计数使能信号sftbgn[3:0],所述逻辑处理公式为sftbgn = sftb02 & ~sftb03;(4)当步骤(2)中打拍后的使能信号enbb03为高且当计数使能信号sftbgn[3:0]中任意一位为高时,使快时钟域clk2的计数器+1,即可得到了同步后的计数器信号cnt[24:0]。
[0009]
进一步地,上述多位宽计数器信号跨时钟同步方法,其中:所述步骤(2)中分频时钟信号sftb [3:0]为四位分频时钟信号。
[0010]
本发明的有益效果是:本发明从慢时钟域clk1同步计数器信号到快时钟域clk2,适用范围在于从任意慢时钟域到快时钟域、任意相位关系,避免亚稳态现象产生,保证了数据同步的正确性,提高了系统运行的稳定性。
附图说明
[0011]
图1是本发明多位宽计数器信号同步电路图;图2是多位宽计数器信号同步方法步骤1后波形显示图;图3是多位宽计数器信号同步方法步骤2后波形显示图;图4是多位宽计数器信号同步方法步骤3后波形显示图;图5是多位宽计数器信号同步方法步骤4后波形显示图。
具体实施方式
[0012]
为能进一步了解本发明的发明内容、特点及功效,配合附图详细说明如下。
[0013]
请同时参考图1至图5,下面将结合附图对本发明一种多位宽计数器信号跨时钟同步电路及方法作详细说明。
[0014]
如图1所示,本发明所述的一种多位宽计数信号跨时钟同步电路包括慢时钟域clk1、快时钟域clk2、使能信号enb、复位信号rst_n、移位分频模块、打拍同步模块、使能信号叠加模块和计数模块,所述慢时钟域clk1、使能信号enb以及复位信号rst_n的输出端均与移位分频模块对应的输入端相连接,所述移位分频模块、使能信号enb以及快时钟域clk2的输出端均与打拍同步模块对应的输入端相连接,所述复位信号rst_n输出端与打拍同步模块输入端相连接,且复位信号rst_n与打拍同步模块之间设有第一非门电路,所述打拍同步模块设有第一输出口enbb03、第二输出口sftb02和第三输出口sftb03,所述第三输出口
sftb03输出端与第二非门电路输入端相连接,第二非门电路的输出端以及第二输出口sftb02的输出端均连接至与门电路的输入端,与门电路输出端与使能信号叠加模块的输入端相连接,使能信号叠加模块、第一输出口enbb03以及快时钟域clk2输出端均与计数模块对应的输入端相连接,所述复位信号rst_n输出端与计数模块输入端相连接,且复位信号rst_n与计数模块之间设有第三非门电路,所述计数模块输出端输出所需计数信号。
[0015]
所述与门电路输出端分有四个输出端口,相应地,使能信号叠加模块设有四个输入端口,与门电路与使能信号叠加模块的各个端口对应连接。
[0016]
如图2至图5所示,本发明多位宽计数信号跨时钟同步方法,从慢时钟域clk1同步计数器信号到快时钟域clk2,包括以下步骤:(1)当计数使能信号enb为高时,在慢时钟域clk1通过移位寄存器的方式,产生4个有时间差的慢时钟域clk1四分频时钟信号sftcnt[3:0];具体输出波形可参考图2:例如,若clk1=8m,移位寄存器初始值可设为4’b0011,即相当于将clk1四分频,产生4个2m的时钟信号;(2)将4个四分频时钟信号sftcnt[3:0]和计数使能信号enb同步到快时钟域clk2时钟域中,即将4个四分频时钟信号sftcnt[3:0]和计数使能信号enb都打3拍流水,得到3个四位同步后的分频时钟信号sftb [3:0]以及3个打拍后的使能信号enbb01~03;具体输出波形可参考图3,所述快时钟域clk2即为图3中的hclk;(3)选取步骤(2)中所得到的3个同步后的分频时钟信号sftb [3:0]其中的同步后的分频时钟信号sftb02和同步后的分频时钟信号sftb03,将四位同步后的分频时钟信号sftb02和四位同步后的分频时钟信号sftb03中每一位对应,分别进行逻辑处理,产生4个新的符合快时钟域clk2脉宽的计数使能信号sftbgn[3:0],所述逻辑处理公式为sftbgn = sftb02 & ~sftb03,具体输出波形可参考图4,上述公式对应图1中电路第三输出口sftb03输出端与第二非门电路输入端相连接,第二非门电路的输出端以及第二输出口sftb02的输出端连接至与门电路的输入端,与门电路输出端与使能信号叠加模块的输入端相连接;(4)当步骤(2)中打拍后的使能信号enbb03为高且当计数使能信号sftbgn[3:0]中任意一位为高时,使快时钟域clk2的计数器+1,即可得到了同步后的计数器信号cnt[24:0],具体输出波形可参考图5。
[0017]
通过以上描述可以看出,本发明适用范围在于从任意慢时钟域到快时钟域(快时钟域频率≥慢时钟域)、任意相位关系,避免亚稳态现象产生,保证了数据同步的正确性,提高了系统运行的稳定性。
[0018]
当然,以上只是本发明的典型实例,除此之外,本发明还可以有其它多种具体实施方式,凡采用等同替换或等效变换形成的技术方案,均落在本发明要求保护的范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1