多时钟域系统复位电路的制作方法

文档序号:6641701阅读:200来源:国知局
专利名称:多时钟域系统复位电路的制作方法
技术领域
本发明涉及ASIC电路领域,尤其涉及时钟域系统复位电路的实现电路。
背景技术
在ASIC电路设计中,复位电路方式分为同步复位(图1)和异步复位(图2)两种。
图1为典型的同步复位电路。同步复位电路的复位信号与数据输入相与后作用于触发器的数据输入端。电路的复位条件是在时钟有效沿时刻复位信号有效。
图2为典型的异步复位电路。异步复位电路的复位信号作用于触发器的异步复位端。电路的复位条件是复位信号有效。
这两种类型的复位电路各有优缺点。
同步复位电路具有以下优点触发器只对时钟有效沿时的数据输入端的信号敏感,复位信号作用于触发器的数据端,所以对时钟有效沿外的毛刺不敏感。
同步复位电路具有以下缺点1、仿真初期,触发器的数据输出端会出现不确定值,会造成仿真结果与实际结果不一致;2、由于在触发器的数据输入端增加了一个逻辑门,数据通路时序会变差;
3、同步复位信号失效的时刻对于电路来说不受控,有时到达不同触发器的时间不一致,会造成电路中的触发器复位时间不一致,导致电路复位状态的不确定。
异步复位电路具有以下优点1、异步复位信号与电路的时钟无关,传输路径可以很长;2、在仿真期间,触发器的数据输出端不会出现不确定值;3、没有把复位信号引入数据通路,数据通路时序比同步复位电路好。
异步复位电路有以下缺点1、异步复位电路对复位信号的稳定度要求高,不允许有任何毛刺;2、异步复位信号失效的时刻对于电路来说不受控,有时到达不同触发器的时间不一致,会造成电路中的触发器复位时间不一致,导致电路复位状态的不确定。
如图1、图2所示,由于传输线路的原因,复位信号到达触发器1、触发器2的异步复位端的时刻会有微小的差别,假使复位信号在时钟有效沿附近失效,可能会造成复位信号在不同的时钟周期内到达触发器1、触发器2,那么,这两个触发器的初始状态就会和预期状态不一致。所以,简单的同、异步复位方式可能会导致电路的初始状态不正确。
在一些比较大的ASIC电路系统中,往往有多个时钟域且存在不同时钟域之间的数据交换。在正常工作状态下,不同时钟域间的数据交换根据数据的特点有多种交换方式,可通过不同类型的交换电路解决。但是,假如复位方式单一,复位发生时刻不可预测,复位失效时刻不可控,电路的数据交换在复位时可能会发生数据丢失,造成系统运行紊乱。
在多时钟域系统(假设系统存在A时钟、B时钟)中,A时钟域产生的数据输出A按照穿越B时钟域是否使用了B时钟域回应信号分为握手式和直接式两种。
握手式指数据输出A从A时钟域穿越至B时钟域,在数据输出A需要变化时,通过检测B时钟域回应信号是否有效判断B时钟域是否已经成功接收数据,假如B时钟域回应信号有效,则可以变换数据输出A,假如B时钟域回应信号无效,则保持数据输出A一直到B时钟域回应信号有效。
这种方式传输效率慢,电路复杂但安全性好,适用于数据输出A变化频率大于B时钟频率或总线型数据传输的电路。
直接式指数据输出A从A时钟域穿越至B时钟域时,在数据输出A需要变化时,不需要检测B时钟域是否已经成功接收数据输出A,直接变换数据输出A。
这种方式传输效率高,电路简单,适用于数据输出A变化频率小于B时钟频率且数据输出A为非总线型信号的电路。
在系统复位时,尤其多时钟域异步复位,由于各时钟域的复位时刻不一致,会导致直接式数据传输的错误。
如图3所示,A时钟频率大于B时钟频率,数据输出A为非总线型信号,变化频率小于B时钟频率,数据输出A由A时钟域穿越B时钟域,适合于直接式数据传输。数据输出A的复位值为0,在A复位失效后的第1个A时钟周期后变为1,然后在复位失效后的第3个A时钟有效沿变为0。
电路设计的初衷是A时钟域、B时钟域电路工作正常时,无论数据输出A何时变化(变化频率小于B时钟频率),始终能被B时钟域正确采样(图3中数据输出B的虚线波形),但是,假如B时钟域中的B复位失效时刻滞后于数据输出A的变化时刻,会造成B时钟域电路在复位期无法正确采样到数据输出A,从而丢失数据(图3中数据输出B的实线波形)。
这种情况是由于各时钟域的复位信号失效时刻不可控造成的。
综上所述,一般的复位电路具有如下问题
1、复位信号存在毛刺时,会引起系统不期望的复位;2、复位信号存在于数据通路时,会使数据通路时序变差;3、在仿真初期,触发器可能会出现不确定值;4、当复位信号在时钟有效沿附件失效时,会引起触发器的输出呈亚稳态;5、复位信号失效的时刻不可控,有时到达不同触发器的时间不一致,会造成电路中的触发器复位时间不一致;6、时钟域系统复位时,可能会有数据传输错误。

发明内容
本发明所要解决的技术问题是现有技术存在的复位信号在毛刺时系统的不期望复位、复位信号存在于数据通路时的数据通路时序劣化、仿真初期存在的触发器不确定值、复位信号失效的时刻不可控、时钟域系统复位时的数据传输错误等缺点,以期提出一种能够克服现有技术缺点的多时钟域系统复位电路。
本发明所提出的多时钟域系统复位电路,包括信号延迟部件;双输入单输出的与门1;异步复位类型的主控制时钟域触发器1、异步复位类型的主控制时钟域触发器2;异步复位类型的副控制时钟域触发器1、异步复位类型的副控制时钟域触发器2;异步复位类型的被控制时钟域触发器1、异步复位类型的被控制时钟域触发器2;信号延迟部件的输入连接外部复位信号;与门1的一个输入端连接外部复位信号,另一个输入端连接信号延迟部件的输出端;被控制时钟域触发器1的时钟端连接被控制时钟信号,信号输入端连接高电平,异步复位端连接与门1的输出端;被控制时钟域触发器2的时钟端连接被控制时钟信号,信号输入端连接被控制时钟域触发器1的输出端,异步复位端连接与门1的输出端,信号输出端作为电路的被控制时钟域复位信号;副控制时钟域触发器1的时钟端连接副控制时钟信号,信号输入端连接被控制时钟域复位信号,异步复位端连接与门1的输出端;副控制时钟域触发器2的时钟端连接副控制时钟信号,信号输入端连接副控制时钟域触发器1的输出端,异步复位端连接与门1的输出端,信号输出端作为电路的副控制时钟域复位信号;主控制时钟域触发器1的时钟端连接主控制时钟信号,信号输入端连接副控制时钟域复位信号,异步复位端连接与门1的输出端;主控制时钟域触发器2的时钟端连接主控制时钟信号,信号输入端连接主控制时钟域触发器1的输出端,异步复位端连接与门1的输出端,信号输出端作为电路的主控制时钟域复位信号。
所述延迟部件包括一定数量的缓冲器,所述缓冲器按序号串行排列,形成序号低的缓冲器的输出连接序号高的缓冲器的输入;外部复位信号的毛刺宽度和缓冲器的传输速度决定了缓冲器的个数。
所述复位电路适用于多时钟域同时工作的系统。
所述复位电路适用于SOC芯片。
本发明的异步复位信号同步化功能结合了同步复位和异步复位的优点,消除了两者的缺点,同时,解决了多时钟域系统复位阶段数据传输可能紊乱的可能性
1、采用了毛刺抑制电路,使得系统对外部复位信号的毛刺不敏感,系统不会非正常复位;2、系统复位信号属于异步复位类型,与数据通路无关,系统中数据通路的传输路径可以比较长;3、系统复位信号属于异步复位类型,在仿真初期,触发器输出不会出现不确定值;4、系统复位信号经两个触发器后输出,不会呈亚稳态;5、系统复位信号经过时钟同步化处理,在时钟的有效沿变化,因此,复位信号传输路径可以比较长,在复位信号路径传输时间在1个时钟周期的前提下,每个触发器在同一个时钟周期内复位;6、不同时钟域的复位顺序化功能消除多时钟域系统复位时的数据传输紊乱,复位阶段数据传输的正确性由复位电路保证,模块电路设计者只需考虑正常工作时数据传输的正确性而不必关心如何保证复位阶段的数据传输正确性。


图1是典型的同步复位电路图;图2是典型的异步复位电路图;图3是多时钟域数据交换电路及系统复位阶段信号波形图;图4是单时钟域系统复位电路;图5是多时钟域系统复位电路。
具体实施例方式
本复位电路分为3部分1、复位信号去毛刺部分;
2、异步复位同步化部分;3、复位信号顺序化部分。
下面结合附图,对本发明做进一步详细描述。
图4为单时钟域系统复位电路。
图4电路中的器件包含一定数量的缓冲器(缓冲器1、缓冲器2、…、缓冲器N),缓冲器数量根据实际应用中外部复位信号的毛刺宽度以及ASIC中采用的缓冲器的传输速度决定)、双输入单输出类型的与门1、异步复位类型的触发器1、异步复位类型的触发器2。
所有的缓冲器(缓冲器1、缓冲器2、…、缓冲器N)按序号串行排列,序号低的缓冲器的输出连接序号高的缓冲的输入,组成一个由输入连接缓冲器1,由缓冲器N作为输出的单输入、单输出的信号延迟部件。
整个电路的外部信号为高电平(输入),时钟信号(输入),外部复位信号(输入),系统复位信号(输出)。
信号延迟部件的输入连接外部复位信号;与门1的一个输入端连接外部复位信号,另一个输入端连接信号延迟部件的输出端;触发器1的时钟端连接时钟信号,信号输入端连接高电平,异步复位端连接与门1的输出端;触发器2的时钟端连接时钟信号,信号输入端连接触发器1的输出端,异步复位端连接与门1的输出端,信号输出端作为电路的系统复位信号。
图5电路为在单时钟域系统复位电路的基础上构建的多时钟域系统复位电路。
图5电路的器件包含一定数量的缓冲器(缓冲器1、缓冲器2、…、缓冲器N),缓冲器数量根据实际应用中外部复位信号的毛刺宽度以及ASIC中采用的缓冲器的传输速度决定)、双输入单输出的与门1、异步复位类型的A时钟域触发器1、异步复位类型的A时钟域触发器2、异步复位类型的B时钟域触发器1、异步复位类型的B时钟域触发器2、异步复位类型的C时钟域触发器1、异步复位类型的C时钟域触发器2。
所有的缓冲器(缓冲器1、缓冲器2、…、缓冲器N)按序号串行排列,序号低的缓冲器的输出连接序号高的缓冲的输入,组成一个由输入连接缓冲器1,由缓冲器N作为输出的单输入、单输出的信号延迟部件。
整个电路的外部信号为高电平(输入),A时钟信号(输入),B时钟信号(输入),C时钟信号(输入),外部复位信号(输入),A时钟域复位信号(输出),B时钟域复位信号(输出),C时钟域复位信号(输出)。
信号延迟部件的输入连接外部复位信号;与门1的一个输入端连接外部复位信号,另一个输入端连接信号延迟部件的输出端;C时钟域触发器1的时钟端连接C时钟信号,信号输入端连接高电平,异步复位端连接与门1的输出端;C时钟域触发器2的时钟端连接C时钟信号,信号输入端连接C时钟域触发器1的输出端,异步复位端连接与门1的输出端,信号输出端作为电路的C时钟域复位信号;B时钟域触发器1的时钟端连接B时钟信号,信号输入端连接C时钟域复位信号,异步复位端连接与门1的输出端;B时钟域触发器2的时钟端连接B时钟信号,信号输入端连接B时钟域触发器1的输出端,异步复位端连接与门1的输出端,信号输出端作为电路的B时钟域复位信号;A时钟域触发器1的时钟端连接A时钟信号,信号输入端连接B时钟域复位信号,异步复位端连接与门1的输出端;A时钟域触发器2的时钟端连接A时钟信号,信号输入端连接A时钟域触发器1的输出端,异步复位端连接与门1的输出端,信号输出端作为电路的A时钟域复位信号;图4电路中,由外部复位信号产生的外部复位_无毛刺信号作用于触发器1、触发器2的异步复位端,系统复位信号的复位值为0,外部复位信号失效(拉高)后,经过两个时钟周期,在时钟信号的上升沿,系统复位信号拉高。
系统复位信号由高电平信号经两个触发器后输出,这样能去除亚稳态。
外部复位_无毛刺信号由外部复位信号产生,且延迟一定时间(具体时间根据所用的缓冲器的延迟特性、所用数量决定),这样即使外部信号存在细小抖动,但外部复位信号和外部复位_延迟信号相与后的输出外部复位_无毛刺信号稳定,无毛刺。
图5为在单时钟域系统复位电路的基础上构建出的多时钟域系统复位电路,在该电路中,C时钟域复位信号最先拉起,其次是B时钟域复位信号,再次是A时钟域复位信号,这样能严格控制各时钟域的复位顺序。
B时钟域复位完成时,C时钟域电路已经正常工作;A时钟域复位完成时,B时钟域、C时钟域电路已经正常工作,这样就不必担心整个系统复位时C时钟域电路采样不到B时钟域的信号,C时钟域、B时钟域电路采样不到A时钟域的信号。
这种方式适用于在复位时,多时钟域同时工作的系统,其中A时钟域作为主控制系统的时钟,B作为副控制系统的时钟,C作为被控制系统的时钟。
该复位方法应用于SOC芯片中。
SOC芯片系统中共有uart_clk、spi_clk、32k_clk、engine_clk、h_clk6个时钟,属于典型的多时钟域系统。
综合以上对同步复位、异步复位优缺点分析,系统中的复位电路采用外部复位信号作为异步复位,同步产生各个时钟域的复位信号。
理论上可以将各个SOC系统的各个时钟域间的数据传输做成握手方式,但是由于整个系统太大,分多人开发,而且SOC系统的定位是通过增加模块的方式来加快设计周期,不能排除在开发的模块和增加的模块存在数据直接传输(慢时钟域数据到快时钟域数据传输不需要握手)的方式。基于这种原因,复位方式适合采用顺序方式。
结合SOC系统的特点,在各个时钟域中,h_clk时钟域电路属于主控系统,其它时钟域电路属于被控系统,只要保证h_clk时钟域的复位信号最后产生即可。所以,采用各个时钟域复位信号各自单独产生,h_clk时钟域复位信号最后产生的方式。
权利要求
1.一种多时钟域系统复位电路,其特征在于,包括信号延迟部件;双输入单输出的与门(1);异步复位类型的主控制时钟域触发器(1)、异步复位类型的主控制时钟域触发器(2);异步复位类型的副控制时钟域触发器(1)、异步复位类型的副控制时钟域触发器(2);异步复位类型的被控制时钟域触发器(1)、异步复位类型的被控制时钟域触发器(2);信号延迟部件的输入连接外部复位信号;与门(1)的一个输入端连接外部复位信号,另一个输入端连接信号延迟部件的输出端;被控制时钟域触发器(1)的时钟端连接被控制时钟信号,信号输入端连接高电平,异步复位端连接与门(1)的输出端;被控制时钟域触发器(2)的时钟端连接被控制时钟信号,信号输入端连接被控制时钟域触发器(1)的输出端,异步复位端连接与门(1)的输出端,信号输出端作为电路的被控制时钟域复位信号;副控制时钟域触发器(1)的时钟端连接副控制时钟信号,信号输入端连接被控制时钟域复位信号,异步复位端连接与门(1)的输出端;副控制时钟域触发器(2)的时钟端连接副控制时钟信号,信号输入端连接副控制时钟域触发器(1)的输出端,异步复位端连接与门(1)的输出端,信号输出端作为电路的副控制时钟域复位信号;主控制时钟域触发器(1)的时钟端连接主控制时钟信号,信号输入端连接副控制时钟域复位信号,异步复位端连接与门(1)的输出端;主控制时钟域触发器(2)的时钟端连接主控制时钟信号,信号输入端连接主控制时钟域触发器(1)的输出端,异步复位端连接与门(1)的输出端,信号输出端作为电路的主控制时钟域复位信号。
2.如权利要求1所述的多时钟域系统复位电路,其特征在于所述延迟部件包括一定数量的缓冲器,所述缓冲器按序号串行排列,形成序号低的缓冲器的输出连接序号高的缓冲器的输入;外部复位信号的毛刺宽度和缓冲器的传输速度决定了缓冲器的个数。
3.如权利要求1或2所述的多时钟域系统复位电路,其特征在于所述复位电路适用于多时钟域同时工作的系统。
4.如权利要求3所述的多时钟域系统复位电路,其特征在于所述复位电路适用于SOC芯片。
全文摘要
本发明公开了一种多时钟域系统复位电路,包括信号延迟部件;双输入单输出的与门1;异步复位类型的主控制时钟域触发器1、异步复位类型的主控制时钟域触发器2;异步复位类型的副控制时钟域触发器1、异步复位类型的副控制时钟域触发器2;异步复位类型的被控制时钟域触发器1、异步复位类型的被控制时钟域触发器2;采用本发明所述的电路,系统对外部复位信号的毛刺不敏感,不会呈亚稳态,系统正常复位;系统中数据通路的传输路径可以比较长;触发器输出不会出现不确定值;不同时钟域的复位顺序化功能消除多时钟域系统复位时的数据传输紊乱,复位阶段数据传输的正确性由复位电路保证,模块电路设计者只需考虑正常工作时数据传输的正确性而不必关心如何保证复位阶段的数据传输正确性。
文档编号G06F1/04GK1924758SQ200510098560
公开日2007年3月7日 申请日期2005年9月2日 优先权日2005年9月2日
发明者林晓涛, 陈家锦, 汪坚 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1