CN113504809B - 一种多路时钟的动态切换方法、装置及系统 - Google Patents
一种多路时钟的动态切换方法、装置及系统 Download PDFInfo
- Publication number
- CN113504809B CN113504809B CN202110780453.0A CN202110780453A CN113504809B CN 113504809 B CN113504809 B CN 113504809B CN 202110780453 A CN202110780453 A CN 202110780453A CN 113504809 B CN113504809 B CN 113504809B
- Authority
- CN
- China
- Prior art keywords
- clock
- circuit
- clock circuit
- signal
- output
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 58
- 238000012545 processing Methods 0.000 claims abstract description 11
- 238000012790 confirmation Methods 0.000 claims description 10
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 claims 2
- 230000008569 process Effects 0.000 abstract description 22
- 230000001360 synchronised effect Effects 0.000 abstract description 18
- 238000010586 diagram Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 3
- 239000013078 crystal Substances 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/12—Synchronisation of different clock signals provided by a plurality of clock generators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/06—Clock generators producing several clock signals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/24—Resetting means
Abstract
本发明公开了一种多路时钟的动态切换方法、装置及系统。所述装置包括依次连接的指令接收与译码模块、决策处理模块以及时钟输出模块。所述系统包括多路时钟的动态切换电路以及多时钟电路,所述动态切换电路执行如前所述的方法,所述动态切换电路连接到所述多时钟电路,从而实现多路时钟的动态切换。通过对使能信号进行同步,并根据同步后的使能信号或未同步的使能信号进行判断输出,该方法、装置及系统提升了多路时钟的动态切换过程的平滑性和稳定性。
Description
技术领域
本发明涉及多时钟电路的切换领域,涉及一种多路时钟的动态切换方法、装置及系统。
背景技术
时钟电路就是产生像时钟一样准确运动的振荡电路。时钟电路一般由晶体振荡器、晶振控制芯片和电容组成,其应用也十分广泛(如电脑的时钟电路、电子表的时钟电路以及MP3、MP4的时钟电路)。在芯片中,任何工作都必须按时间顺序,而用于产生这个时间的电路就是时钟电路,每个时钟电路都具有自己的时钟频率。但是,集成芯片中的不同器件对于时钟频率的需求是不同的,此时就需要进行时钟切换以针对不同器件提供不同的时钟频率。
简单的时钟切换可以通过多路选择器(mu ltip lexer)来实现,通过改变时钟选择信号的值,实现由其中一路时钟输出切换到另一路时钟输出,但是,这种实现方式不能实现时钟的动态切换,因为当两路时钟都在工作时进行切换,容易产生毛刺,影响系统正常工作。
在现有技术中,为了解决切换过程中的毛刺问题,针对两路时钟切换电路,通常利用时钟选择信号以及另外一路生成的反馈信号生成时钟门控信号,再用这个时钟门控信号来控制时钟信号的输出,再将两路门控后的时钟进行相与/相或最终得到要输出的时钟(例如,专利CN112130617A公开的方法);在此基础上,解决多路时钟切换的问题,一个最容易想到的方法就是利用上面提到的两路时钟切换电路的级联来实现,其他方法主要是在两路时钟切换电路的基础上,对电路进行变形(变形的方法就比较多样,例如,专利CN110308763A和专利CN107517046A),以添加更多路的时钟。
但是,将两路时钟切换电路进行级联的设计存在无法克服的缺陷:随着时钟数的增加,电路面积也会快速增加,而且多级级联也造成切换的时间较长;而在两路时钟切换电路基础上进行变形的设计没有考虑到实际应用上的一些问题:1.低功耗设计无复位或复位不能同步到时钟域,从而影响电路正常工作;2.无毛刺时钟切换方案仅在两时钟均工作的前提下才能实现;3.在当前输出为默认时钟电路所对应的时钟信号,且输入的外部控制信号表示该默认时钟关闭时,时钟切换电路会卡死而无法工作。
因此,当前需要一种多路时钟的动态切换方法、装置及系统,从而解决现有技术存在的上述问题。
发明内容
针对现存的上述技术问题,本发明的目的在于提供一种多路时钟的动态切换方法、装置及系统,该方法、装置及系统提升了多路时钟的动态切换过程的平滑性和稳定性。
本发明提供了一种多路时钟的动态切换方法,所述方法包括:接收时钟选择指令和多个时钟信号,并对所述时钟选择指令进行译码以获取第一时钟选择信号、第三时钟选择信号以及多个第二时钟选择信号,从而确定用于切换输出的第一时钟电路、当前输出的第三时钟电路以及除所述第一时钟电路和所述第三时钟电路外的多个第二时钟电路;其中,所述第一时钟选择信号对应所述第一时钟电路;所述多个时钟信号分别与多个时钟电路一一对应;确认各个时钟电路是否关闭,并根据确认结果分别生成与所述第一时钟电路对应的第一反馈信号、与所述第三时钟电路对应的第三反馈信号以及与所述多个第二时钟电路各自对应的第二反馈信号;根据所述第一反馈信号、第二反馈信号、第三反馈信号和各个时钟选择信号,在各个时钟电路上分别对应生成第一使能信号,以控制所述第三时钟电路以及所述多个第二时钟电路所对应的时钟信号在当前时刻不能作为时钟源输出;根据与各个时钟电路一一对应的时钟信号,分别对多个所述第一使能信号进行相应同步,以在所述各个时钟电路上分别对应生成第二使能信号;根据所有第二使能信号,判断是否输出所述第一时钟电路所对应的时钟信号;若是,则将所述第一时钟电路所对应的时钟信号作为时钟源输出。
在一个实施例中,该方法还包括:在接收到外部复位信号时,根据所述外部复位信号,将预设的默认时钟电路确定为待输出时钟电路,并输出所述默认时钟电路所对应的时钟信号。
在一个实施例中,根据第二使能信号,判断是否输出所述第一时钟电路所对应的时钟信号,具体为:当所述第三时钟电路为默认时钟电路,接收到外部时钟控制信号,且所述外部时钟控制信号用于表示所述默认时钟电路为关闭状态时,根据所述第三时钟电路所对应的第一使能信号以及除所述第三时钟电路外的所有时钟电路各自对应的第二使能信号判断是否能够输出所述第一时钟电路所对应的时钟信号;当所述第三时钟电路为默认时钟电路,接收到外部时钟控制信号,且所述外部时钟控制信号表示默认时钟电路打开时,根据第二使能信号判断是否能够输出所述第一时钟电路所对应的时钟信号;当所述第三时钟电路不是默认时钟电路时,根据所有第二使能信号判断是否能够输出所述第一时钟电路所对应的时钟信号。
本发明还提供了一种多路时钟的动态切换装置,所述装置包括依次连接的指令接收与译码模块、决策处理模块以及时钟输出模块;其中,所述指令接收与译码模块接收时钟选择指令和多个时钟信号,并对所述时钟选择指令进行译码以获取第一时钟选择信号、第三时钟选择信号以及多个第二时钟选择信号,从而确定用于切换输出的第一时钟电路、当前输出的第三时钟电路以及除所述第一时钟电路和所述第三时钟电路外的多个第二时钟电路;其中,所述第一时钟选择信号对应所述第一时钟电路;所述多个时钟信号分别与多个时钟电路一一对应;所述决策处理模块用于确认各个时钟电路是否关闭,并根据确认结果分别生成与所述第一时钟电路对应的第一反馈信号、与所述第三时钟电路对应的第三反馈信号以及与所述多个第二时钟电路各自对应的第二反馈信号;根据所述第一反馈信号、第二反馈信号、第三反馈信号和各个时钟选择信号,在各个时钟电路上分别对应生成第一使能信号,以控制所述第三时钟电路以及所述多个第二时钟电路所对应的时钟信号在当前时刻不能作为时钟源输出;根据与各个时钟电路一一对应的时钟信号,分别对多个所述第一使能信号进行相应同步,以在所述各个时钟电路上分别对应生成第二使能信号;以及,根据所有第二使能信号,判断是否输出所述第一时钟电路所对应的时钟信号;所述时钟输出模块用于将所述第一时钟电路所对应的时钟信号作为时钟源输出。
在一个实施例中,所述决策处理模块包括多个子路控制模块,每个所述子路控制模块均包括使能信号生成模块、同步模块以及门控及反馈模块,所述使能信号生成模块、所述同步模块以及所述门控及反馈模块依次连接,其中,所述使能信号生成模块用于根据所述第一反馈信号、第二反馈信号、第三反馈信号和各个时钟选择信号,在各个时钟电路上分别对应生成第一使能信号,以控制所述第三时钟电路以及所述多个第二时钟电路所对应的时钟信号在当前时刻不能作为时钟源输出;所述同步模块用于根据与各个时钟电路一一对应的时钟信号,分别对多个所述第一使能信号进行同步,以在所述各个时钟电路上分别对应生成第二使能信号;所述门控及反馈模块用于确认各个时钟电路是否关闭,并根据确认结果分别生成与所述第一时钟电路对应的第一反馈信号、与所述第三时钟电路对应的第三反馈信号以及与所述多个第二时钟电路各自对应的第二反馈信号;以及,根据所有第二使能信号,判断是否输出所述第一时钟电路所对应的时钟信号。
在一个实施例中,所述子路控制模块还包括复位模块,所述复位模块用于在接收到外部复位信号时,根据所述外部复位信号,将预设的默认时钟电路确定为待输出时钟电路,并输出所述默认时钟电路所对应的时钟信号。
本发明还提供了一种多路时钟的动态切换系统,所述系统包括多路时钟的动态切换电路以及多时钟电路,所述动态切换电路执行如前所述的方法,所述动态切换电路连接到所述多时钟电路,从而实现多路时钟的动态切换。
在一个实施例中,所述动态切换电路包括反相器和或门电路的组合、多级D类型触发器、第一逻辑门电路、第二逻辑门电路以及第三逻辑门电路。
在一个实施例中,所述第一逻辑门电路包括或门电路,所述第二逻辑门电路包括或门电路,所述第三逻辑门电路包括与门电路。
在一个实施例中,所述多级D类型触发器包括复位端口。
相比于现有技术,本发明实施例具有如下有益效果:
本发明提供了一种多路时钟的动态切换方法、装置及系统,通过对使能信号进行同步,并根据同步后的使能信号或未同步的使能信号进行判断输出,该方法、装置及系统提升了多路时钟的动态切换过程的平滑性和稳定性。
进一步地,本发明提供的一种多路时钟的动态切换方法、装置及系统还通过对第一使能信号进行同步,进一步提升了多路时钟的动态切换过程的稳定性。
进一步地,本发明提供的一种多路时钟的动态切换方法、装置及系统还通过外部时钟控制信号、第一使能信号或第二使能信号综合判断是否输出时钟电路,从而更进一步地提升了多路时钟的动态切换过程的稳定性。
附图说明
下文将结合说明书附图对本发明进行进一步的描述说明,其中:
图1示出了根据本发明的多路时钟的动态切换方法的一个实施例的流程图;
图2示出了根据本发明的多路时钟的动态切换装置的一个实施例的结构图;
图3示出了根据本发明的多路时钟的动态切换装置的另一实施例的结构图;
图4示出了根据本发明的多路时钟的动态切换系统的一个实施例的电路图。。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
具体实施例一
图1示出了根据本发明的多路时钟的动态切换方法的一个实施例的流程图。如图1所示,该方法包括如下步骤:
S1:接收时钟选择指令和多个时钟信号,并对所述时钟选择指令进行译码以获取第一时钟选择信号、第三时钟选择信号以及多个第二时钟选择信号,从而确定用于切换输出的第一时钟电路、当前输出的第三时钟电路以及除所述第一时钟电路和所述第三时钟电路外的多个第二时钟电路。
进行时钟切换,首先要对接收到的时钟选择指令进行译码,以确定最终要输出哪一路时钟。在此过程中,接收到的是一个时钟选择指令以及多个时钟信号,而对时钟选择指令译码后生成的是多个时钟选择信号。其中,时钟选择指令的编码方式此处不受限定,可以是二进制编码方式,也可以是独热编码方式,而多个时钟选择信号的有效电平取决于预先的设置,可以设置为高电平有效,也可以设置为低电平有效。为了确定最终输出的第一时钟电路、当前输出的第三时钟电路以及除第一时钟电路和第三时钟电路外的多个第二时钟电路,将译码后生成的多个时钟选择信号分为第一时钟选择信号、第三时钟选择信号和多个第二时钟选择信号,其中,第一时钟选择信号对应于切换输出的第一时钟电路,第三时钟选择信号对应于当前输出的第三时钟电路,多个第二时钟选择信号分别与多个第二时钟电路一一对应。多个时钟信号分别与多个时钟电路一一对应。
S2:确认各个时钟电路是否关闭,并根据确认结果分别生成与所述第一时钟电路对应的第一反馈信号、与所述第三时钟电路对应的第三反馈信号以及与所述多个第二时钟电路各自对应的第二反馈信号。
在确定输出第一时钟电路后,即要对第三时钟电路以及多个第二时钟电路进行确认,从而判断当前时刻是否使能该第一时钟电路输出。当对第三时钟电路以及多个第二时钟电路进行确认后会对应生成第三反馈信号和第二反馈信号,第三反馈信号对应着第三时钟电路的开闭情况,每个第二反馈信号对应着第二时钟电路的开闭情况。
S3:根据所述第一反馈信号、第二反馈信号、第三反馈信号和各个时钟选择信号,在各个时钟电路上分别对应生成第一使能信号,以控制所述第三时钟电路以及所述多个第二时钟电路所对应的时钟信号在当前时刻不能作为时钟源输出。
具体地,唯有当时钟选择信号指明选择第一时钟电路,并且第三反馈信号以及多个第二反馈信号表示第三时钟电路以及多个第二时钟电路都已关闭(即,第三时钟电路以及多个第二时钟电路在当前时刻不能作为时钟源输出)时,才能输出与时钟选择指令相对应的多个第一使能信号。其中,该第一使能信号可以设置为高电平有效,也可以设置为低电平有效,且使能信号的有效电平的设置与前述时钟选择信号的有效电平设置需保持一致。
S4:根据与所述各个时钟电路一一对应的时钟信号,分别对多个所述第一使能信号进行相应同步,以在所述各个时钟电路上分别对应生成第二使能信号。
在多个第一使能信号输出后,为了进一步避免亚稳态情况的产生,还需要根据与所述各个时钟电路一一对应的时钟信号,分别对所述各个第一使能信号进行相应同步,以在所述各个时钟电路上分别对应生成第二使能信号。
S5:根据所有第二使能信号,判断是否输出所述第一时钟电路所对应的时钟信号。
在现有技术中,由于将同步后的使能信号作为最终输出的判断依据,并且仅在接收到同步后的使能信号时才允许输出,因此,多路时钟最终是否执行动态切换的动作,是完全根据同步后的使能信号来决定的。
在实际应用中,当前输出的时钟电路可能是默认时钟,而默认时钟的时钟切换往往存在问题:在当前输出的时钟为默认时钟,且默认时钟关闭时,则无法对使能信号进行同步(无法生成同步后的使能信号),从而使得仅在接收到同步后的使能信号时才允许输出的整个时钟切换过程卡死,既无法输出也无法重新选择切换。
本发明针对这一问题进行了改进,除了能够根据同步后的使能信号判断输出外,还能在无法生成同步后的使能信号时,通过当前输出的时钟电路所对应的未同步的使能信号,以及其余各个时钟电路所对应的同步后的使能信号允许最终输出,并最终根据一个未同步的使能信号以及多个同步后的使能信号判断是否能够输出第一时钟电路对应的时钟信号,从而避免切换过程卡死的情况。
当判断认为第一时钟电路对应的使能信号为有效信号,且其他时钟电路的使能信号为无效信号时,会确定输出与第一时钟电路相对应的时钟信号;否则,则可能是因为第三时钟电路为默认时钟电路且默认时钟电路关闭了,这会使得第三时钟电路所对应的第二使能信号无法生成,从而导致无法完全根据所有第二使能信号进行判断,在这种情况下,暂时不输出第一时钟电路所对应的时钟信号,而是引入第三时钟电路所对应的第一使能信号,以与除第三时钟电路之外的各个时钟电路各自对应的第二使能信号结合,并根据该第一使能信号和除第三时钟电路之外的各个时钟电路各自对应的第二使能信号,判断是否输出第一时钟电路所对应的时钟信号。
具体地,当所述第三时钟电路为默认时钟电路,接收到外部时钟控制信号,且所述外部时钟控制信号表示默认时钟电路打开时,根据所有第二使能信号判断是否能够输出第一时钟电路所对应的时钟信号;当所述第三时钟电路不是默认时钟电路时,根据所有第二使能信号判断是否能够输出所述第一时钟电路所对应的时钟信号(其中,切换过程中生成的稳定电平可以是1或0);而当所述第三时钟电路为默认时钟电路,接收到外部时钟控制信号,且所述外部时钟控制信号用于表示所述默认时钟电路为关闭状态时,由于无法对第三时钟电路所对应的第一使能信号同步以生成第二使能信号,因此,额外通过第三时钟电路所对应的第一使能信号允许最终输出,从而根据第三时钟电路所对应的第一使能信号以及除所述第三时钟电路外的所有时钟电路(第一时钟电路和所有第二时钟电路)各自对应的第二使能信号,判断是否能够输出与第一时钟电路相对应的时钟信号。
即,在本实施例中,在当前输出的第三时钟电路为默认时钟电路且默认时钟电路关闭时,根据所述第三时钟电路所对应的第一使能信号以及除所述第三时钟电路外的所有时钟电路各自对应的第二使能信号,判断是否能够输出第一时钟电路所对应的时钟信号;而在在当前输出的第三时钟电路为默认时钟电路且默认时钟电路打开时,或当前输出的第三时钟电路不是默认时钟电路时,则根据所有第二使能信号判断是否输出该第一时钟电路所对应的时钟信号。
S6:若是,则将所述第一时钟电路所对应的时钟信号作为时钟源输出。
本步骤其实是在根据判断结果确定输出第一时钟电路所对应的时钟信号的时机。当若判断结果为“是”,则说明此时可以输出第一时钟电路所对应的时钟信号;若判断结果为“否”,则说明此时不应该进行切换,应继续等待下一次判断结果,直到某一次接收到的判断结果为“是”。
在一个实施例中,上述方法还包括:在接收到外部复位信号时,根据所述外部复位信号,将预设的默认时钟电路确定为待输出时钟电路,并输出所述默认时钟电路所对应的时钟信号。
由于存在时钟切换的初始情况不确定、或者需要进行复位的情况,采用现有技术很容易使时钟电路无法工作,或是产生亚稳态情况。因此,本发明进行了改进,以使得在接收到外部复位信号时,根据所述外部复位信号,将预设的默认时钟电路确定为待输出时钟电路,并输出所述默认时钟电路所对应的时钟信号。
本发明提供了一种多路时钟的动态切换方法,通过对使能信号进行同步,并根据同步后的使能信号或未同步的使能信号进行判断输出,该方法提升了多路时钟的动态切换过程的平滑性和稳定性;进一步地,本发明提供的一种多路时钟的动态切换方法还通过在接收到外部复位信号时,根据所述外部复位信号,将预设的默认时钟电路确定为待输出时钟电路,并输出所述默认时钟电路所对应的时钟信号,从而进一步提升了多路时钟的动态切换过程的稳定性;进一步地,本发明提供的一种多路时钟的动态切换方法还通过外部时钟控制信号、第一使能信号或第二使能信号综合判断是否输出时钟电路,从而更进一步地提升了多路时钟的动态切换过程的稳定性。
具体实施例二
除上述方法外,本发明还提供了一种多路时钟的动态切换装置。图2示出了根据本发明的多路时钟的动态切换装置的一个实施例的结构图。
如图2所示,所述装置11包括依次连接的指令接收与译码模块111、决策处理模块112以及时钟输出模块113。
指令接收与译码模块111用于接收时钟选择指令和多个时钟信号,并对所述时钟选择指令进行译码以获取第一时钟选择信号、第三时钟选择信号以及多个第二时钟选择信号,从而确定用于切换输出的第一时钟电路、当前输出的第三时钟电路以及除所述第一时钟电路和所述第三时钟电路外的多个第二时钟电路。
具体地,在此过程中,接收到的是一个时钟选择指令和多个时钟信号,而对时钟选择指令译码后生成的是多个时钟选择信号;其中,所述多个时钟信号分别与多个时钟电路一一对应,时钟选择指令的编码方式此处不受限定,可以是二进制编码方式,也可以是独热编码方式,而多个时钟选择信号的有效电平取决于预先的设置,可以设置为高电平有效,也可以设置为低电平有效。为了确定最终切换输出的第一时钟电路、当前输出的第三时钟电路和除第一时钟电路和第三时钟电路外的多个第二时钟电路,将译码后生成的多个时钟选择信号分为第一时钟选择信号、第三时钟选择信号和多个第二时钟选择信号,其中,第一时钟选择信号对应于切换输出的第一时钟电路,第三时钟选择信号对应当前输出的第三时钟电路,多个第二时钟选择信号分别与多个第二时钟电路一一对应。
决策处理模块112包括多个子路控制模块,每个所述子路控制模块均包括使能信号生成模块1121、同步模块1122以及门控及反馈模块1123,使能信号生成模块1121、同步模块1122以及门控及反馈模块1123依次连接。
使能信号生成模块1121用于根据所述第一反馈信号、第二反馈信号、第三反馈信号和各个时钟选择信号,在各个时钟电路上分别对应生成第一使能信号,以控制所述第三时钟电路以及所述多个第二时钟电路所对应的时钟信号在当前时刻不能作为时钟源输出。
同步模块1122用于根据与各个时钟电路一一对应的时钟信号,分别对多个所述第一使能信号进行同步,以在所述各个时钟电路上分别对应生成第二使能信号。
门控及反馈模块1123用于确认各个时钟电路是否关闭,并根据确认结果分别生成与所述第一时钟电路对应的第一反馈信号、与所述第三时钟电路对应的第三反馈信号以及与所述多个第二时钟电路各自对应的第二反馈信号;以及,根据所有第二使能信号,判断是否输出所述第一时钟电路所对应的时钟信号。具体地,在确定输出第一时钟电路后,门控及反馈模块1123即要对第三时钟电路和多个第二时钟电路进行确认,从而判断当前时刻是否使能该第一时钟电路输出。在门控及反馈模块1123对第三时钟电路和多个第二时钟电路进行确认后,会对应生成第三反馈信号和第二反馈信号,第二反馈信号对应第二时钟电路的开闭情况,第三反馈信号对应着第三时钟电路的开闭情况。
门控及反馈模块1123还用于根据所有第二使能信号,判断是否输出所述第一时钟电路。在实际应用中,当前输出的时钟电路可能是默认时钟电路。而在现有技术中,默认时钟的时钟切换往往存在问题:在当前输出的时钟为默认时钟,且默认时钟关闭时,整个时钟切换过程卡死,既无法输出也无法重新选择切换。
本发明针对这一问题进行了改进。具体地,当所述第三时钟电路为默认时钟电路,接收到外部时钟控制信号,且所述外部时钟控制信号用于表示所述默认时钟电路为关闭状态时,根据第三时钟电路所对应的第一使能信号以及除所述第三时钟电路外的所有时钟电路各自对应的第二使能信号,判断是否能够输出第一时钟电路所对应的时钟信号;当所述第三时钟电路为默认时钟电路,接收到外部时钟控制信号,且所述外部时钟控制信号表示默认时钟电路打开时,根据所有第二使能信号判断是否能够输出所述第一时钟电路所对应的时钟信号;当所述第三时钟电路不是默认时钟电路时,根据所有第二使能信号判断是否能够输出所述第一时钟电路所对应的时钟信号。
即,在本实施例中,在当前输出的第三时钟电路为默认时钟电路,且默认时钟电路关闭时,根据第三时钟电路所对应的第一使能信号以及与第二时钟电路和第一时钟电路各自对应的第二使能信号,判断是否能够输出第一时钟电路所对应的时钟信号。
其中,输出的稳定电平可以是1或0。
时钟输出模块113用于将所述第一时钟电路对应的时钟信号作为时钟源输出。
由于存在时钟切换的初始情况不确定、或者需要进行复位的情况,采用现有技术很容易使时钟电路无法工作,或是产生亚稳态情况。在一个实施例中,每个所述子路控制模块还包括复位模块1124,所述复位模块1124用于在接收到外部复位信号时,根据所述外部复位信号,将预设的默认时钟电路确定为待输出时钟电路,并输出所述默认时钟电路所对应的时钟信号。
本发明提供了一种多路时钟的动态切换装置,通过设置同步模块对使能信号进行同步,并使得门控及反馈模块根据同步后的使能信号或未同步的使能信号进行判断输出,该装置提升了多路时钟的动态切换过程的平滑性和稳定性;进一步地,本发明提供的一种多路时钟的动态切换装置还通过设置复位模块以在接收到外部复位信号时,根据所述外部复位信号,将预设的默认时钟电路确定为待输出时钟电路,并输出所述默认时钟电路所对应的时钟信号,进一步地提升了多路时钟的动态切换过程的稳定性;进一步地,本发明提供的一种多路时钟的动态切换装置还通过门控及反馈模块,对外部时钟控制信号、第一使能信号或第二使能信号综合判断是否输出时钟电路,从而更进一步地提升了多路时钟的动态切换过程的稳定性。
具体实施例三
此外,本发明还提供一种多路时钟的动态切换系统,该系统包括多路时钟的动态切换电路以及多时钟电路,所述动态切换电路连接到所述多时钟电路,从而实现多路时钟的动态切换。
本实施例用于说明本发明提供的多路时钟的动态切换系统的其中一个实施例,在本实施例中,该多路时钟的动态切换系统包括前述多路时钟的动态切换装置的另一实施例,并通过该动态切换装置3实现多路时钟的动态切换。图3示出了根据本发明的多路时钟的动态切换装置的另一实施例的结构图。
如图3所示,该动态切换装置3包括指令接收与译码单元301、决策处理单元302以及时钟输出单元303,决策处理单元302包括多个子路控制单元,指令接收与译码单元301分别通过各个子路控制单元连接到时钟输出单元303,其中,每个子路控制单元均包括使能信号生成单元304、同步单元305、门控及反馈单元306以及复位单元307。
通过上述结构,该装置3能够执行如前所述的多路时钟的动态切换方法以在需要进行时钟切换时进行切换。具体地,当需要进行时钟电路的切换时,指令接收与译码单元301接收时钟选择指令和多个时钟信号,并对所述时钟选择指令进行译码以获取第一时钟选择信号、第三时钟选择信号以及多个第二时钟选择信号,从而确定用于切换输出的第一时钟电路、当前输出的第三时钟电路以及除所述第一时钟电路和所述第三时钟电路外的多个第二时钟电路;随后,门控及反馈单元306确认各个时钟电路是否关闭,并根据确认结果分别生成与所述第一时钟电路对应的第一反馈信号、与所述第三时钟电路对应的第三反馈信号以及与所述多个第二时钟电路各自对应的第二反馈信号;接着,使能信号生成单元304根据所述第一反馈信号、第二反馈信号、第三反馈信号和各个时钟选择信号,在各个时钟电路上分别对应生成第一使能信号,以控制所述第三时钟电路以及所述多个第二时钟电路所对应的时钟信号在当前时刻不能作为时钟源输出;然后,同步模块305根据与各个时钟电路一一对应的时钟信号,分别对多个所述第一使能信号进行同步,以在所述各个时钟电路上分别对应生成第二使能信号;门控及反馈单元306根据所有第二使能信号,判断是否输出所述第一时钟电路所对应的时钟信号;而在接收到外部复位信号时,复位单元307根据所述外部复位信号,将预设的默认时钟电路确定为待输出时钟电路,并输出所述默认时钟电路所对应的时钟信号。
为了进一步说明多路时钟的动态切换系统,图4示出了根据本发明的多路时钟的动态切换系统的一个实施例的电路图。如图4所示,在一个实施例中,所述动态切换电路4包括反相器和或门电路的组合401、多级D类型触发器405、第一逻辑门电路404、第二逻辑门电路406以及第三逻辑门电路403。
其中,反相器和或门电路的组合401依次分别对应连接到多个第一逻辑门电路404、多个多级D类型触发器405、多个第二逻辑门电路406以及第三逻辑门电路403。
具体地,在一个多时钟切换的系统中,当需要进行时钟切换时,先向反相器和或门电路的组合401输入一个时钟选择指令以及多个时钟信号,所述反相器和或门电路的组合401对所述时钟选择指令进行译码以获取第一时钟选择信号、第三时钟选择信号以及多个第二时钟选择信号,从而确定用于切换输出的第一时钟电路、当前输出的第三时钟电路以及除所述第一时钟电路和所述第三时钟电路外的多个第二时钟电路;随后,由第二逻辑门电路406确认各个时钟电路是否关闭,并根据确认结果分别生成与所述第一时钟电路对应的第一反馈信号、与所述第三时钟电路对应的第三反馈信号以及与所述多个第二时钟电路各自对应的第二反馈信号;在分别生成各个时钟电路所对应的反馈信号后,第一逻辑门电路401根据所述第一反馈信号、第二反馈信号、第三反馈信号和各个时钟选择信号,在各个时钟电路上分别对应生成第一使能信号,以控制所述第三时钟电路以及所述多个第二时钟电路所对应的时钟信号在当前时刻不能作为时钟源输出;接着,多级D类型触发器405根据与所述各个时钟电路一一对应的时钟信号,分别对多个所述第一使能信号进行相应同步,以在所述各个时钟电路上分别对应生成第二使能信号;在第三时钟电路为默认时钟电路的情况下,当默认时钟电路关闭时,各个第二逻辑门电路406根据与第三时钟电路相对应的第一使能信号以及除所述第三时钟电路外的所有时钟电路各自对应的第二使能信号,判断是否能够输出第一时钟电路所对应的时钟信号;当默认时钟电路打开时,各个第二逻辑门电路406根据各个第二使能信号判断是否能够输出所述第一时钟电路所对应的时钟信号,而在第三时钟电路不是默认时钟电路的情况下,各个第二逻辑门电路406直接根据各个第二使能信号判断是否能够输出所述第一时钟电路;当判断结束后,第三逻辑门电路403根据判断结果将所述第一时钟电路作为时钟源输出,从而完成时钟切换过程。此外,当多级D类型触发器405通过复位端口接收到外部复位信号时,会根据所述外部复位信号,将预设的默认时钟电路确定为待输出时钟电路,并输出所述默认时钟电路所对应的时钟信号。
在本实施例中,第一逻辑门电路404包括或门电路,第二逻辑门电路406包括或门电路、反相器以及多路选择器,第三逻辑门电路403包括与门电路。
在一个实施例中,根据动态切换电路的不同设计思路,第一逻辑门电路404、第二逻辑门电路406以及第三逻辑门405也可以替换为其他可以实现上述功能的器件或器件的组合。
在一个实施例中,反相器和或门电路的组合401、多级D类型触发器405可以根据多路时钟电路中时钟的个数而适应性替换为其他器件或器件的组合。
本发明提供了一种多路时钟的动态切换系统,通过配置多级D类型触发器对使能信号进行同步,并配置第二逻辑门电路以根据同步后的使能信号进行判断输出,该系统提升了多路时钟的动态切换过程的平滑性和稳定性;进一步地,本发明提供的一种多路时钟的动态切换系统还通过多级D类型触发器上的复位端口接收外部复位信号,以在接收到外部复位信号时,根据所述外部复位信号,将预设的默认时钟电路确定为待输出时钟电路,并输出所述默认时钟电路所对应的时钟信号,进一步提升了多路时钟的动态切换过程的稳定性;进一步地,本发明提供的一种多路时钟的动态切换系统还通过第二逻辑门电路,对外部时钟控制信号、第一使能信号或第二使能信号进行综合判断,从而确定是否输出时钟电路,从而进一步提升了多路时钟的动态切换过程的稳定性。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步的详细说明,应当理解,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围。特别指出,对于本领域技术人员来说,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种多路时钟的动态切换方法,其特征在于,所述方法包括:
接收时钟选择指令和多个时钟信号,并对所述时钟选择指令进行译码以获取第一时钟选择信号、第三时钟选择信号以及多个第二时钟选择信号,从而确定用于切换输出的第一时钟电路、当前输出的第三时钟电路以及除所述第一时钟电路和所述第三时钟电路外的多个第二时钟电路;其中,所述第一时钟选择信号对应所述第一时钟电路;所述多个时钟信号分别与多个时钟电路一一对应;
确认各个时钟电路是否关闭,并根据确认结果分别生成与所述第一时钟电路对应的第一反馈信号、与所述第三时钟电路对应的第三反馈信号以及与所述多个第二时钟电路各自对应的第二反馈信号;
根据所述第一反馈信号、第二反馈信号、第三反馈信号和各个时钟选择信号,在各个时钟电路上分别对应生成第一使能信号,以控制所述第三时钟电路以及所述多个第二时钟电路所对应的时钟信号在当前时刻不能作为时钟源输出;
根据与各个时钟电路一一对应的时钟信号,分别对多个所述第一使能信号进行相应同步,以在所述各个时钟电路上分别对应生成第二使能信号;
根据所有第二使能信号,判断是否输出所述第一时钟电路所对应的时钟信号;
若是,则将所述第一时钟电路所对应的时钟信号作为时钟源输出。
2.根据权利要求1所述的多路时钟的动态切换方法,其特征在于,还包括:在接收到外部复位信号时,根据所述外部复位信号,将预设的默认时钟电路确定为待输出时钟电路,并输出所述默认时钟电路所对应的时钟信号。
3.根据权利要求1或2所述的多路时钟的动态切换方法,其特征在于,根据第二使能信号,判断是否输出所述第一时钟电路所对应的时钟信号,具体为:
当所述第三时钟电路为默认时钟电路,接收到外部时钟控制信号,且所述外部时钟控制信号用于表示所述默认时钟电路为关闭状态时,根据所述第三时钟电路所对应的第一使能信号以及除所述第三时钟电路外的所有时钟电路各自对应的第二使能信号,判断是否能够输出所述第一时钟电路所对应的时钟信号;
当所述第三时钟电路为默认时钟电路,接收到外部时钟控制信号,且所述外部时钟控制信号表示默认时钟电路打开时,根据所有时钟电路各自对应的第二使能信号判断是否能够输出所述第一时钟电路所对应的时钟信号;
当所述第三时钟电路不是默认时钟电路时,根据所有时钟电路各自对应的第二使能信号判断是否能够输出所述第一时钟电路所对应的时钟信号。
4.一种多路时钟的动态切换装置,其特征在于,所述装置包括依次连接的指令接收与译码模块、决策处理模块以及时钟输出模块;
其中,所述指令接收与译码模块用于接收时钟选择指令和多个时钟信号,并对所述时钟选择指令进行译码以获取第一时钟选择信号、第三时钟选择信号以及多个第二时钟选择信号,从而确定用于切换输出的第一时钟电路、当前输出的第三时钟电路以及除所述第一时钟电路和所述第三时钟电路外的多个第二时钟电路;其中,所述第一时钟选择信号对应所述第一时钟电路;所述多个时钟信号分别与多个时钟电路一一对应;
所述决策处理模块用于确认各个时钟电路是否关闭,并根据确认结果分别生成与所述第一时钟电路对应的第一反馈信号、与所述第三时钟电路对应的第三反馈信号以及与所述多个第二时钟电路各自对应的第二反馈信号;根据所述第一反馈信号、第二反馈信号、第三反馈信号和各个时钟选择信号,在各个时钟电路上分别对应生成第一使能信号,以控制所述第三时钟电路以及所述多个第二时钟电路所对应的时钟信号在当前时刻不能作为时钟源输出;根据与各个时钟电路一一对应的时钟信号,分别对多个所述第一使能信号进行相应同步,以在所述各个时钟电路上分别对应生成第二使能信号;以及,根据所有第二使能信号,判断是否输出所述第一时钟电路所对应的时钟信号;
所述时钟输出模块用于将所述第一时钟电路所对应的时钟信号作为时钟源输出。
5.根据权利要求4所述的多路时钟的动态切换装置,其特征在于,所述决策处理模块包括多个子路控制模块,每个所述子路控制模块均包括使能信号生成模块、同步模块以及门控及反馈模块,所述使能信号生成模块、所述同步模块以及所述门控及反馈模块依次连接,其中,
所述使能信号生成模块用于根据所述第一反馈信号、第二反馈信号、第三反馈信号和各个时钟选择信号,在各个时钟电路上分别对应生成第一使能信号,以控制所述第三时钟电路以及所述多个第二时钟电路所对应的时钟信号在当前时刻不能作为时钟源输出;
所述同步模块用于根据与各个时钟电路一一对应的时钟信号,分别对多个所述第一使能信号进行同步,以在所述各个时钟电路上分别对应生成第二使能信号;
所述门控及反馈模块用于确认各个时钟电路是否关闭,并根据确认结果分别生成与所述第一时钟电路对应的第一反馈信号、与所述第三时钟电路对应的第三反馈信号以及与所述多个第二时钟电路各自对应的第二反馈信号;以及,根据所有第二使能信号,判断是否输出所述第一时钟电路所对应的时钟信号。
6.根据权利要求5所述的多路时钟的动态切换装置,其特征在于,所述子路控制模块还包括复位模块,所述复位模块用于在接收到外部复位信号时,根据所述外部复位信号,将预设的默认时钟电路确定为待输出时钟电路,并输出所述默认时钟电路所对应的时钟信号。
7.一种多路时钟的动态切换系统,其特征在于,所述系统包括多路时钟的动态切换电路以及多时钟电路,所述动态切换电路执行如权利要求1-3任一项所述的方法,所述动态切换电路连接到所述多时钟电路,从而实现多路时钟的动态切换。
8.根据权利要求7所述的多路时钟的动态切换系统,其特征在于,所述动态切换电路包括反相器和或门电路的组合、多级D类型触发器、第一逻辑门电路、第二逻辑门电路以及第三逻辑门电路。
9.根据权利要求8所述的多路时钟的动态切换系统,其特征在于,所述第一逻辑门电路包括或门电路,所述第二逻辑门电路包括或门电路,所述第三逻辑门电路包括与门电路。
10.根据权利要求8-9任一项所述的多路时钟的动态切换系统,其特征在于,所述多级D类型触发器包括复位端口。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110780453.0A CN113504809B (zh) | 2021-07-09 | 2021-07-09 | 一种多路时钟的动态切换方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110780453.0A CN113504809B (zh) | 2021-07-09 | 2021-07-09 | 一种多路时钟的动态切换方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113504809A CN113504809A (zh) | 2021-10-15 |
CN113504809B true CN113504809B (zh) | 2024-01-19 |
Family
ID=78012641
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110780453.0A Active CN113504809B (zh) | 2021-07-09 | 2021-07-09 | 一种多路时钟的动态切换方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113504809B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101030086A (zh) * | 2007-04-20 | 2007-09-05 | 威盛电子股份有限公司 | 时钟切换电路及时钟信号切换的方法 |
CN102012717A (zh) * | 2010-11-16 | 2011-04-13 | 青岛海信信芯科技有限公司 | 一种时钟切换方法及时钟切换装置 |
JP2012146260A (ja) * | 2011-01-14 | 2012-08-02 | Nec Computertechno Ltd | クロック動的切替制御装置 |
CN103684375A (zh) * | 2013-11-26 | 2014-03-26 | 深圳市芯海科技有限公司 | 一种时钟分频切换电路及时钟芯片 |
CN104579295A (zh) * | 2014-12-10 | 2015-04-29 | 中国电子科技集团公司第四十七研究所 | 时钟动态切换电路及方法 |
CN107517046A (zh) * | 2017-06-27 | 2017-12-26 | 山东师范大学 | 一种多时钟选择切换电路、时钟切换芯片及方法 |
-
2021
- 2021-07-09 CN CN202110780453.0A patent/CN113504809B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101030086A (zh) * | 2007-04-20 | 2007-09-05 | 威盛电子股份有限公司 | 时钟切换电路及时钟信号切换的方法 |
CN102012717A (zh) * | 2010-11-16 | 2011-04-13 | 青岛海信信芯科技有限公司 | 一种时钟切换方法及时钟切换装置 |
JP2012146260A (ja) * | 2011-01-14 | 2012-08-02 | Nec Computertechno Ltd | クロック動的切替制御装置 |
CN103684375A (zh) * | 2013-11-26 | 2014-03-26 | 深圳市芯海科技有限公司 | 一种时钟分频切换电路及时钟芯片 |
CN104579295A (zh) * | 2014-12-10 | 2015-04-29 | 中国电子科技集团公司第四十七研究所 | 时钟动态切换电路及方法 |
CN107517046A (zh) * | 2017-06-27 | 2017-12-26 | 山东师范大学 | 一种多时钟选择切换电路、时钟切换芯片及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113504809A (zh) | 2021-10-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11139805B1 (en) | Bi-directional adaptive clocking circuit supporting a wide frequency range | |
US6600345B1 (en) | Glitch free clock select switch | |
US6107841A (en) | Synchronous clock switching circuit for multiple asynchronous clock source | |
US8375239B2 (en) | Clock control signal generation circuit, clock selector, and data processing device | |
US5764710A (en) | Meta-stable-resistant front-end to a synchronizer with asynchronous clear and asynchronous second-stage clock selector | |
KR101436042B1 (ko) | 클럭 스위칭 회로에서 글리치를 방지하기 위한 장치 및방법 | |
US20030001612A1 (en) | Multiplexor generating a glitch free output when selecting from multiple clock signals | |
US7180336B2 (en) | Glitch-free clock switching apparatus | |
JP2010158004A (ja) | 遅延回路及び可変遅延回路 | |
KR100533915B1 (ko) | 클럭 신호의 연속성을 보장하는 클럭 신호 선택 장치 및방법 | |
CN103684375A (zh) | 一种时钟分频切换电路及时钟芯片 | |
US8253449B2 (en) | Clock switch circuit and clock switch method of the same | |
US7003683B2 (en) | Glitchless clock selection circuit | |
US6973155B2 (en) | Highly scalable glitch-free frequency divider | |
CN113504809B (zh) | 一种多路时钟的动态切换方法、装置及系统 | |
CN111313869A (zh) | 一种千兆以太网收发器的时钟切换电路 | |
EP1626501B1 (en) | Variable division method and variable divider | |
CN115242224A (zh) | 一种多时钟无毛刺切换电路及切换方法 | |
US20040095166A1 (en) | Clock switching circuit | |
US6075398A (en) | Tunable digital oscillator circuit and method for producing clock signals of different frequencies | |
JP3132657B2 (ja) | クロック切替回路 | |
CN100381968C (zh) | 系统时钟脉冲切换装置以及切换其频率的方法 | |
US6774681B2 (en) | Switchable clock source | |
CN110867199A (zh) | 同步镜延迟电路和同步镜延迟操作方法 | |
CN117411465A (zh) | 一种时钟切换电路、芯片及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 510555 No. 107 Bowen Road, Huangpu District, Guangzhou, Guangdong Applicant after: Guangzhou Ankai Microelectronics Co.,Ltd. Address before: Unit 301, 302, 303, 3 / F, C1 area, 182 science Avenue, Science City, Guangzhou hi tech Industrial Development Zone, Guangzhou, Guangdong 510000 Applicant before: Guangzhou Ankai Microelectronics Co.,Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |