CN110502066A - 时钟切换装置、方法及电子设备 - Google Patents
时钟切换装置、方法及电子设备 Download PDFInfo
- Publication number
- CN110502066A CN110502066A CN201910755474.XA CN201910755474A CN110502066A CN 110502066 A CN110502066 A CN 110502066A CN 201910755474 A CN201910755474 A CN 201910755474A CN 110502066 A CN110502066 A CN 110502066A
- Authority
- CN
- China
- Prior art keywords
- clock
- signal
- selection signal
- time period
- delay
- 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.)
- Granted
Links
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/08—Clock generators with changeable or programmable clock frequency
Abstract
本申请公开了一种时钟切换装置、方法及电子设备,涉及时钟信号切换领域。时钟切换装置,包括:请求处理单元、延时单元和时钟切换单元;请求处理单元获取时钟切换请求,根据时钟切换请求发送第一时钟选择信号至时钟切换单元,以及发送延时信号至延时单元;延时单元根据延时信号延时预设时间段,并在预设时间段内配置第二时钟,在预设时间段延时结束时,发送第二时钟选择信号至时钟切换单元;时钟切换单元根据第一时钟选择信号选择输出第一时钟至负载,以及根据第二时钟选择信号选择输出第二时钟至负载。因此,时钟切换时,依然使用第一时钟,在等到延时时间结束之后,再切换到已配置的第二时钟,使得第一时钟切换到稳定的第二时钟。
Description
技术领域
本申请涉及时钟信号切换领域,更具体地,涉及一种时钟切换装置、方法及电子设备。
背景技术
目前的时钟切换电路往往是针对两个稳定的时钟进行切换,但是,如果要切换的两个时钟中,有一个时钟处于不稳定状态,则在时钟切换的时候,可能会切换到不稳定的时钟信号,进而导致输出时钟不稳定,从而导致系统挂死。
发明内容
本申请提出了一种时钟切换装置、方法及电子设备,以改善上述缺陷。
第一方面,本申请实施例提供了一种时钟切换装置,包括:请求处理单元、延时单元和时钟切换单元,所述请求处理单元和延时单元均与所述时钟切换单元连接;所述请求处理单元用于获取时钟切换请求,所述时钟切换请求用于请求将第一时钟切换至第二时钟;所述请求处理单元还用于根据所述时钟切换请求发送第一时钟选择信号至所述时钟切换单元,以及发送延时信号至所述延时单元;所述延时单元用于根据所述延时信号延时预设时间段,并在所述预设时间段内配置所述第二时钟,在预设时间段延时结束时,发送第二时钟选择信号至所述时钟切换单元;所述时钟切换单元用于根据所述第一时钟选择信号选择输出所述第一时钟至负载,以及根据所述第二时钟选择信号选择输出所述第二时钟至负载。
第二方面,本申请实施例还提供了一种电子设备,包括处理器和上述时钟切换装置;所述处理器与请求处理单元连接,用于将时钟切换请求发送至所述请求处理单元。
第三方面,本申请实施例还提供了一种时钟切换方法,包括:获取时钟切换请求,所述时钟切换请求用于请求将第一时钟切换至第二时钟;继续使用所述第一时钟,并延时预设时间段;在所述预设时间段内配置所述第二时钟;在预设时间段结束时,将所述第一时钟切换至已配置的第二时钟。
本申请提供的时钟切换装置、方法及电子设备,在获取到请求将第一时钟切换至第二时钟的时钟切换请求的时候,发送第一时钟选择信号至所述时钟切换单元,从而时钟切换单元根据所述第一时钟选择信号选择输出所述第一时钟,从而能够继续使用第一时钟,然后,延时预设时间段,并且在预设时间段之内,配置所述第二时钟,在预设时间段结束时,将所述第一时钟切换至已配置的第二时钟。因此,第一时钟切换至第二时钟的时候,先延时一定时间,在所延时的时间段内,对第二时钟配置,也就是说,依然使用第一时钟而不使用不稳定的第二时钟,在等到延时时间结束之后,再切换到已配置的第二时钟,能够实现第一时钟切换至第二时钟的时候,第一时钟切换到稳定的第二时钟。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了一种时钟脉冲切换电路的示意图;
图2示出了另一种时钟脉冲切换电路的示意图;
图3示出了本申请一实施例提供的一种时钟切换装置的示意图;
图4示出了本申请另一实施例提供的一种时钟切换装置的示意图;
图5示出了本申请又一实施例提供的一种时钟切换装置的示意图;
图6示出了本申请实施例提供的时钟切换中各信号的波形图;
图7示出了本申请一实施例提供的电子设备的示意图;
图8示出了本申请另一实施例提供的电子设备的示意图;
图9示出了本申请实施例提供的时钟切换方法的方法流程图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
对于多重时钟脉冲信号作切换的电路,在目前的科技发展中具有相当重要的应用。例如,在计算机系统中即具备有许多不同时钟脉冲操作速度的内存,而该时钟脉冲切换电路即可应用在这些不同操作速率的内存中,读取内存中数据的时钟脉冲切换。而另一种较明显的应用,即是例如在目前手机系统常用到的操作模式(Operating Mode)与闲置模式(Idle Mode)。在操作模式下,当然会以较高频率的时钟脉冲来读取或写入数据,但是若是在闲置模式下,则可降低操作频率,来节省功率的消耗。而这样的切换,则必须应用到操作时钟脉冲的切换,也就是必须应用该时钟脉冲切换结构来实现此目的。
现有的一种时钟脉冲切换电路,如图1所示,该电路包括第一与门和第二与门以及或门,其中,第一与门的一个输入端用于接收clk1和clk1_sel,第二与门的另一个输入端用于接收clk2和clk2_sel,第一与门的输出端与或门的一个输入端连接,第二与门的输出端与或门的另一个输入端连接,当需要选择时钟clk1时,clk1_sel为高电平,而clk2_sel为低电平,则或门输出时钟clk1,而当需要选择时钟clk2时,clk2_sel为高电平,clk1_sel为低电平,则或门输出时钟clk2,从而能够实现clk1和clk2之间的切换。
现有的另一种时钟脉冲切换电路,如图2所示,该电路包括6个D触发器、4个与门、一个或门,与图1中的切换电路类似,通过控制信号syn2_clk1_inv和syn1_clk1_inv选中时钟信号clk_in0,通过控制信号syn2_clk0_inv和syn1_clk0_inv选中时钟信号clk_in1。
然而,发明人在研究中发现,采用上述的时钟切换方法,如果要切换的两个时钟中,有一个时钟处于不稳定状态,则在时钟切换的时候,可能会切换到不稳定的时钟信号,进而导致输出时钟不稳定,从而导致系统挂死,即当选择信号在不稳定时钟域进行同步时会出现切换电路挂死,而且此时可能会出现选择信号不稳定而导致输出时钟不稳定,从而导致系统挂死。
因此,为了克服上述缺陷,本申请实施例提供了一种时钟切换装置,如图3所示,该时钟切换装置30包括:请求处理单元100、延时单元200和时钟切换单元300。
所述请求处理单元100用于获取时钟切换请求,并且根据所述时钟切换请求发送第一时钟选择信号至所述时钟切换单元,以及发送延时信号至所述延时单元200。
具体地,所述时钟切换请求用于请求将第一时钟切换至第二时钟,其中,时钟切换装置30应用于电子设备,在该电子设备内设有负载。具体地,该负载为需要用到时钟信号执行预定操作的装置,例如,该负载可以是电子设备内的处理器,则第一时钟或者第二时钟可以为处理器提供执行标准的,比如信号每一次高电平或低电平的时候,处理器进行一次运算。作为另一种实施方式,该负载还可以是处理器之外的设备。例如,该负载可以是通信模块,根据该第一时钟或者第二时钟等时钟信号,输出一定频段的电磁波信号。
作为一种实施方式,电子设备内包括第三时钟,该第三时钟可以是一个基准时钟信号,第一时钟和第二时钟根据该第三时钟配置而成。例如,将第三时钟倍频或者分频之后,再经过PLL锁相之后,生成一个第一时钟。则于本申请实施例中,第一时钟是一个稳定的时钟信号,并且负载正在使用该第一时钟,也就是说,请求处理单元100获取时钟切换请求的时候,负载正在使用第一时钟,则时钟切换请求用于将负载正在使用的第一时钟切换为第二时钟。
请求处理单元100能够解析该时钟切换请求,并生成第一时钟选择信号和延时信号。具体地,请求处理单元100可以是单片机或逻辑门芯片,则该时钟切换请求可以是一个电平信号,例如,高电平或者低电平,则单片机能够根据该电平信号输出一个电平信号,于本申请实施例中,第一时钟选择信号和延时信号均是同一个电平信号。
作为一种实施方式,请求处理单元100包括逻辑门芯片,具体地,该逻辑门芯片可以是一个触发器,例如,可以是D触发器,则该D触发器的输入端D为该请求处理单元100的输入端,而该D触发器的输出端Q为该请求处理单元100的输出端,该请求处理单元100的输出端与延时单元和时钟切换单元的一个输入端连接。则时钟切换请求为一个高电平,且第一时钟选择信号和延时信号也是一个高电平,且第一时钟选择信号和延时信号可以相同。
另外,该请求处理单元100还可以是一个或门,则或门的一个输入端作为请求处理单元100的输入端,或门的输出端作为请求处理单元100的输出端,则时钟切换请求为一个高电平,且第一时钟选择信号和延时信号也是一个高电平,且第一时钟选择信号和延时信号可以相同。
所述延时单元200用于根据所述延时信号延时预设时间段,并在所述预设时间段内配置所述第二时钟,在预设时间段延时结束时,发送第二时钟选择信号至所述时钟切换单元300。
其中,预设时间段可以是预先设定的一个时间段,该时间段的长度能够保证第二时钟的配置完成,具体地,可以是预设检测第二时钟在被切换的时候,由于配置或者其他的原因导致的不稳定的时间长度,根据所检测到的时间长度生成预设时间段。例如,该预设时间段可以是100ns至300ns之间的数值,作为一种实施方式,该预设时间段可以是200ns。
具体地,延时单元200根据延时信号延时预设时间段的方式可以是,该延时信号可以是一个电平信号也可以是一个脉冲信号,例如,可以是一个高电平。延时单元200可以是一个定时器或者计数器,例如,该定时器可以是一个555定时芯片。则在延时单元200接收到延时信号之后,启动定时功能,其中,计数器用于定时的方式可以是,输入一个脉冲信号,统计该脉冲信号的周期个数或者高电平的个数,在个数达到预设数值的时候就判定预设时间段延时结束。同时,延时单元200还可以是延时的过程中,配置第二时钟,具体地,可以在后续的实施例介绍。
其中,第二时钟选择信号可以是一个脉冲信号,要可以是一个电平信号,需要说明的是,于本申请实施例中,电平信号是指高电平或者低电平的占比大于指定比例的脉冲信号,其中,占比可以是一个周期内该信号的时间长度与真个周期的时间长度的比值。例如,该指定比例可以是80%。例如,高电平信号就是高电平的占比大于80%的脉冲信号。
所述时钟切换单元300用于根据所述第一时钟选择信号选择输出所述第一时钟至负载,以及根据所述第二时钟选择信号选择输出所述第二时钟至负载。
具体地,时钟切换电路可以是一个逻辑器件,例如,一个或门,该时钟切换电路包括两个输入端和一个输出端,则请求处理单元100与时钟切换电路的一个输入端连接,延时单元200与时钟切换电路的另一个输入端连接,时钟切换电路的输出端用于将所选择的时钟输出,以便需要使用时钟信号的负载使用。
具体地,该时钟切换电路的两个输入端,同一时刻只有一个输入端的信号可以被选择输出,具体地,可以是在第一时钟选择信号输入至时钟切换电路的一个输入端的时候,第二时钟选择信号并没被输入另一个输入端,则此时钟切换单元300选择输出所述第一时钟至负载,不选择输出所述第二时钟至负载。当然,还可是在第一时钟选择信号输入至时钟切换电路的一个输入端的时候,第二时钟选择信号也输入至时钟切换电路的另一个输入端,则时钟切换电路还可以包括一个控制端,该控制端接收到不同的信号,例如,可以是不同的电平的时候,能够控制第一时钟还是第二时钟被选择。
作为一种实施方式,请求处理单元100获取时钟切换请求之后,发送第一时钟选择信号至所述时钟切换单元300的一个输入端,并且发送一个第一时钟控制信号至时钟切换电路的控制端,此时,第一时钟被选择;然后,在在预设时间段延时结束时,发送第二时钟选择信号至所述时钟切换单元300的另一个输入端,并且发送第二时钟控制信号至时钟切换电路的控制端,则此时,第一时钟选择信号可以继续发送至时钟切换电路,然后,由于第二时钟控制信号输入至控制端,使得第二时钟被选择,而第一时钟不会被选择。
因此,于本申请实施例中,请求处理单元100在获取到时钟切换请求,解析该时钟切换请求,确定该时钟切换请求是用于将第一时钟切换至第二时钟之后,并不会马上发出第二时钟选择信号至时钟切换单元300,控制第二时钟选择信号选择输出所述第二时钟,即将第一时钟切换为第二时钟,而是发送第一时钟选择信号至所述时钟切换单元300,使得时钟切换单元300继续选择使用第一时钟,由于,第一时钟是一个稳定的时钟信号,则能偶保证此时负载依然在使用一个稳定的时钟信号。
然后,在选择继续使用第一时钟的时候,延时单元200根据所述延时信号延时预设时间段,并在所述预设时间段内配置所述第二时钟,在预设时间段延时结束时,发送第二时钟选择信号至所述时钟切换单元300,则此时时钟切换单元300所切换的时钟信号是一个稳定的第二时钟。因此,第一时钟切换至第二时钟的时候,先延时一定时间,在所延时的时间段内,对第二时钟配置,也就是说,依然使用第一时钟而不使用不稳定的第二时钟,在等到延时时间结束之后,再切换到已配置的第二时钟,能够实现第一时钟切换至第二时钟的时候,第一时钟切换到稳定的第二时钟,避免在时钟切换的时候,可能会切换到不稳定的时钟信号,进而导致输出时钟不稳定,从而导致系统挂死。
另外,还在将预设时间段分成多个时间段,并且在每个时间段分步骤的执行根据所述延时信号延时预设时间段,并在所述预设时间段内配置所述第二时钟,在预设时间段延时结束时,发送第二时钟选择信号至所述时钟切换单元300的操作。
具体地,预设时间段包括第一时间段和第二时间段。所述延时单元200还用于:根据所述延时信号延时所述第一时间段,在所述第一时间段延时结束时,生成第一选择信号,并延时所述第二时间段,在所述第二时间段内配置所述第二时钟,在所述第二时间段延时结束时,生成第二选择信号;根据所述第一选择信号和所述第二选择信号生成所述第二时钟选择信号,并且发送所述第二时钟选择信号至所述时钟切换单元300。
具体地,延时单元200可以在生成第一选择信号,然后,再延时一定时间之后,生成第二选择信号,因此,在第二时钟配置结束的时候,第一选择信号和第二选择信号都完成了,再根据第一选择信号和第二选择信号生成第二时钟选择信号,能够保证稳定的生成第二时钟选择信号。
具体地,上述的第一选择信号可以通过第一计时器210生成,第二选择信号可以通过第二计时器220生成,然后,第二时钟选择信号根据信号发生器230生成。具体地,如图4所示,延时单元200包括第一计时器210、第二计时器220和信号发生器230。
所述第一计时器210的输入端x11与所述请求处理单元100的输出端p1连接,所述第一计时器210的输出端x12分别与所述第二计时器220的输入端x21和所述信号发生器230的第一输入端x31连接,所述第二计时器220的输出端x22与所述信号发生器230的第二输入端x32连接,请求处理单元100的输出端p1与时钟切换单元300的第一输入端s1连接,信号发生器230的输出端x32与时钟切换单元300的第二输入端s2连接,时钟切换单元300的输出端s3与负载400连接。
所述第一计时器210,用于在所述第一计时器210的输入端x11接收到所述请求处理单元100发送的所述延时信号之后,延时所述第一时间段,在所述第一时间段延时结束时,生成第一选择信号并输入至所述信号发生器230的第一输入端x31以及所述第二计时器220的输入端x21。
其中,第一计时器210可以是一个计数器,具体地,在请求处理单元100生成第一时钟选择信号的时候,该第一时钟选择信号输入第一计时器210的输入端x11,第一计时器210对该第一时钟选择信号计数,在计数的数量达到第一时间段的长度的时候,该第一计时器210生成第一选择信号。则通过第一时间段的延时,能够保证请求处理单元100生成的第一时钟选择信号够稳定,而且还能够给时钟切换单元300根据所述第一时钟选择信号选择输出所述第一时钟至负载400提供一个稳定的缓冲时间,在第一时钟被稳定输入负载400之后,再生成第一选择信号。
所述第二计时器220,用于根据所述第一选择信号延时所述第二时间段,在所述第二时间段延时结束时,生成第二选择信号。
具体地,第二时间段内,用于执行上述的配置第二时钟的操作。
所述信号发生器230,用于根据所述第一选择信号和所述第二选择信号生成所述第二时钟选择信号,并且发送所述第二时钟选择信号至所述时钟切换单元300。
其中,信号发生器230在判定第一选择信号和第二选择信号满足一定条件的情况下,再生成所述第二时钟选择信号,并且发送所述第二时钟选择信号至所述时钟切换单元300。具体地,可以是第一选择信号和第二选择信号的电平满足一定要求的时候就判定第一选择信号和第二选择信号满足一定条件,还可以是第一选择信号的电平信号在第一电平的时候,信号发生器230就输出第二时钟选择信号。但是,在第一计时器210生成第一选择信号并输入至所述信号发生器230的第一输入端的时候,第一选择信号的电平信号为第二电平,然后,在信号发生器230获取到第二选择信号的时候,再将第一选择信号的电平信号修改为第一电平,从而输出第二时钟选择信号,具体地,在后续实施例中详细描述。
另外,延时单元200还包括:时钟配置器,所述第一计时器210的输入端与所述时钟配置器连接;所述第一计时器210还用于将第一选择信号输入所述时钟配置器;所述时钟配置器用于根据所述第一选择信号配置所述第二时钟,具体地,在后续实施例中详细描述。
另外,所述第二计时器220包括计数器和信号比较器,所述第一计时器的输出端与所述计数器的输入端连接,所述计数器的输出端与所述信号比较器的第一输入端,所述信号比较器的第二输入端用于接收参考计时信号,所述信号比较器的输出端与所述信号发生器的第二输入端连接。
所述计数器用于接收所述第一选择信号,并对所述第一时钟计数,将计数结果发送至所述信号比较器。此时,第二时钟没有被配置完成,即第二时钟还处于不稳定的状态,则对延时时间的统计可以根据第一时钟来完成,从而能够保证精确计数。
所述信号比较器用于将所述计数结果与所述参考计时信号比较,当所述计数结果与所述参考计时信号二者的时间长度差满足指定条件时,生成第二选择信号,其中,所述计数结果与所述参考计时信号二者的时间长度差满足指定条件表示所述第二时间段延时结束。
其中,参考计时信号可以是一个时间信号,则计数结果与所述参考计时信号二者的时间长度差满足指定条件可以是,计数结果对应的时间长度与参考计时信号对应的时间长度相等。其中,计数结果对应的时间长度是指,统计第一时钟的个数,以一个高电平为一个个数或者以一个完整的时间周期的第一时钟为一个个数,则计数结果能够对应到多个第一时钟,进而能够确定计数结果对应的时间长度,而参考计时信号可以是一个宽脉冲信号,则脉冲的宽度足够宽,具体地,该参考计时信号的脉冲宽度对应的时间长度足够配置第二时钟。
另外,时钟切换装置30还包括第一时钟信号复位器,所述延时单元200与所述第一时钟信号复位器的输入端连接;所述延时单元还用于在预设时间段延时结束时,发送复位信号至所述第一时钟信号复位器;所述第一时钟信号复位器根据所述复位信号将所述第一时钟选择信号清除。
则第一时钟信号复位器能够产生一个复位信号,该复位信号能够在预设时间段延时结束的时候,将第一时钟选择信号清除,从而时钟切换单元300不会选择第一时钟并输出,而是选择将已配置好的第二时钟输出。
请参阅图5,示出了时钟切换装置30的具体电路结构示意图,则时钟切换装置包括:请求处理器U1、第一计数器U2、第二计数器U3、第一比较器U4、信号发生器U5、选择器U6、时钟配置器U7、复位信号发生器U8、复位发生器U9、第二比较器U10、REQ_ACKU11和ACK_SYNC。
其中,请求处理器U1为REQ_SYNC,第一计数器U2为CNT_TRI,第二计数器U3为CLKI_CNT,第一比较器U4为CMP1,信号发生器U5为SEL2_GEN,选择器U6为CLK_SWT,时钟配置器U7为PAR_SYNC,复位信号发生器U8为RST1_GEN,复位发生器U9为RST_SYNC,第二比较器U10为CMP2。
其中,请求处理器U1构成请求处理单元,第一计数器U2、第二计数器U3、第一比较器U4和信号发生器U5构成延时单元,具体地,第一计数器U2为第一计时器,第二计数器U3和第一比较器U4为第二计时器,信号发生器U5为上述延时单元所包括的信号发生器,上述第二计时器所包括的计数器和信号比较器分别为第二计数器U3和第一比较器U4,第一时钟信号复位器由复位信号发生器U8和复位发生器U9构成。
其中,时钟切换请求可以是CPU发送至请求处理器U1,则具体图5所示的各个元器件之前的原理为:
CPU配置一个CLK1_UPDREQ,发送至请求处理器REQ_SYNC,然后,请求处理器REQ_SYNC生成CLK1_SEL,CLK1_SEL被发送至CLK_SWT使得CLK1被选择,CLK1_SEL还输入至CNT_TRI,CNT_TRI产生了CLK2选择请求信号CLK2_SEL_REQ,此信号送给SEL2_GEN并在SEL2_GEN内取反产生选择CLK2的选择信号CLK2_SEL_SET,CLK2_SEL_REQ还送给RST1_GEN产生复位CLK1_SEL的CLK1_RSTN,送至REQ_SYNC复位端。
其中,CLK1_UPDREQ为时钟切换请求,CLK1_SEL为第一时钟选择信号,当CNT_TRI完成第一时间段的延时之后,产生选择请求信号CLK2_SEL_REQ,该信号被发送至SEL2_GEN的SET端,并且会对SEL2_GEN取反,也就是此时的CLK2_SEL_REQ变成了CLK2_SEL_SET信号,使得CLK2当前还没有被选择。需要说明的是,CL1为上述的第一时钟,CLK2为上述的第二时钟,请求信号CLK2_SEL_REQ为上述的第一计时器产生的第一选择信号。其中,CLK1_RSTN为上述的复位信号。
CNT_TRI输出CLK2_SEL_REQ至CLK1_CNT,CLK1_CNT开始计数,CLK1_CNT对CLK1计数的时间长度与SWT_TIME长度相同,其中,SWT_TIME为上述的参考计时信号。则在CMP1确定CLK1_CNT计数达到SWT_TIME长度时输出CLK2_SEL_CLR至SEL2_GEN的CLR端,该CLR端能够将CLK2_SEL_SET输出为CLK2_SEL,从而使CLK_SWT输出CLK2。
另外,CLK2选择请求信号CLK2_SEL_REQ信号还用于将CLK3时钟域送过来的CLK2_PAR_DM3同步到CLK2时钟域并完成对CLK2源(如PLL)的配置,CLK2_SEL_REQ同时触发计数器CLK1_CNT,当计数器计到CLK2时钟稳定时,经过比较器CMP1产生清除CLK2_SEL_CLR,送给SEL2_GEN复位CLK2_SEL。具体地,CNT_TRI输出的第一选择信号,即CLK2_SEL_REQ发送至PAR_SYNC从而输出一个CLK_PAR_SYNC信号,该信号用于支持CPU根据第三时钟CL3对第二时钟配置。
CLK2选择请求信号CLK2_SEL_REQ还送给比较器CMP2,当计数器CLK1_CNT计数到ACK_TIME时,触发相应产生模块REQ_ACK产生CLK2的握手响应信号CLK2_ACK,CLK2_ACK经过CLK3同步器ACK_SYNC后放在CLK3时钟域的寄存器中可读,CLK2_ACK_DM3反映的是时钟切换是否握手成功。
另外,本申请实施例中,各个信号的波形是根据需求而设定的,具体地,如图6所示,在SWT_TIME信号产生下降沿的时候,第二时钟选择信号变为高电平,而第一选择信号被清除而变为低电平,则第二时钟被选择,而第二时钟不被选择。另外,在CNT_TRI输出CLK2_SEL_REQ至RST1_GEN的时候,所产生的CLK1_RSTN并不会马上将CLK1_SEL清零,即并不是立刻将第一时钟选择信号清除,因此,此时第二时钟还没配置完成,如果将第一时钟选择信号清除,则会导致当前没有稳定的时钟可以用,而造成系统不稳定甚至紊乱。
则本申请实施例中,CLK1_RSTN是一个占空比比较大的宽脉冲信号,REQ_SYNC是下降沿触发的,即在CLK1_RSTN由高电平变为低电平的时候,会响应该触发而执行将CLK1_SEL清除的操作。则CLK1_RSTN的高电平的宽度与第二时间段的长度相同,即与SWT_TIME的时间长度相同,从而能够保证在第二时钟配置完成并输出CLK2_SEL信号的时候,CLK1_RSTN会发生高电平至低电平的变化,则将CLK_SEL清除。
具体地,当选择CLK1的请求CLK1_UPDREQ发出后,经过CLK1_CNT计数,ACK_TIME计数(可以是(输出时钟的频率/配置时钟的时钟频率)*N,N>10),从而保证选择CLK1的选择信号CLK1_SEL产生成功。
在CMP1比较器设置了一个足够大的时钟切换握手信号SWT_TIME(可以是(输出时钟的稳定时间)*M,M>10)。当计数器CLK1_CNT和SWT_TIME相同时才输出清除CLK1的选择信号CLK1_SEL,然后将CLK2的选择信号CLK2_SEL置为有效,从而保证CLK1切换到CLK2无毛刺切换成功。
支持跨时钟域PLL等参数配置,当CLK1_SEL有效后,发出更新PLL等参数的配置请求PAR_UPDREQ(可以是配置时钟的周期N倍以上,N>2)。
在本申请所提供的几个实施例中,模块相互之间的耦合可以是电性,机械或其它形式的耦合。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
请参考图7,其示出了本申请实施例提供的一种电子设备的结构框图。该电子设备10可以是智能手机、平板电脑、电子书等能够运行应用程序的电子设备。本申请中的电子设备10可以包括一个或多个如下部件:处理器20和上述时钟切换装置30。处理器20与请求处理单元100连接,用于将时钟切换请求发送至所述请求处理单元100。
其中,处理器20可以包括一个或者多个处理核。处理器20利用各种接口和线路连接整个电子设备10内的各个部分,通过运行或执行存储在存储器内的指令、程序、代码集或指令集,以及调用存储在存储器内的数据,执行电子设备100的各种功能和处理数据。可选地,处理器20可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable LogicArray,PLA)中的至少一种硬件形式来实现。处理器20可集成中央处理器(CentralProcessing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器20中,单独通过一块通信芯片进行实现。
其中,存储器可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。存储器可用于存储指令、程序、代码、代码集或指令集。存储器可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等。存储数据区还可以存储电子设备10在使用中所创建的数据(比如电话本、音视频数据、聊天记录数据)等。
进一步地,如图8所示,时钟切换装置还包括握手信号生成器500,所述延时单元与所述握手信号生成器的输入端连接,所述握手信号生成器500的输出端与所述处理器连接;
所述延时单元用于在预设时间段延时结束时,发送延时结束信号至所述握手信号生成器500;所述握手信号生成器500用于根据所述结束信号生成握手成功指令,并发送至所述处理器;所述处理器用于在获取到所述握手成功指令时,清除所述时钟切换请求。
具体地,握手信号生成器500包括握手信号比较器,所述握手信号比较器的第一端与计数器的输出端连接,所述握手信号比较器的第二端用于接收握手参考计时信号。
所述握手信号比较器用于获取所述计数器输出的计数结果,并与所述握手参考计时信号比较,若所述计数结果与所述握手参考计时信号二者的时间长度差满足预设条件时,生成握手成功指令,并发送至所述处理器。
其中,握手信号比较器可以上述图5所示的第二比较器U10,即该握手信号比较器可以是比较器CMP2,当计数器CLK1_CNT计数到ACK_TIME时,触发相应产生模块REQ_ACK产生CLK2的握手响应信号CLK2_ACK,CLK2_ACK经过CLK3同步器ACK_SYNC后放在CLK3时钟域的寄存器中可读,CLK2_ACK反映的是时钟切换是否握手成功,则CLK2_ACK为握手成功指令,该握手成功指令用于指示处理器,不需要再发送时钟切换请求至请求处理单元,因为,当前已经成功从第一时钟切换至第二时钟。其中,计数结果与所述握手参考计时信号二者的时间长度差满足预设条件可以是计数结果所对应的时间长度等于握手参考计时信号的时间长度。
请参阅图9,本申请实施例还提供了一种时钟切换方法,该方法包括:S901至S904。
S901:获取时钟切换请求,所述时钟切换请求用于请求将第一时钟切换至第二时钟。
S902:继续使用所述第一时钟,并延时预设时间段。
S903:在所述预设时间段内配置所述第二时钟。
S904:在预设时间段结束时,将所述第一时钟切换至已配置的第二时钟。
其中,上述步骤可以参考前述实施例,另外,上述该方法能够应用于上述时钟切换装置和电子设备,即该方法能够以上述时钟切换装置和电子设备为执行载体,具体地,请参阅前述实施例。
综上所述,本申请提供的时钟切换装置、方法及电子设备,在获取到请求将第一时钟切换至第二时钟的时钟切换请求的时候,发送第一时钟选择信号至所述时钟切换单元,从而时钟切换单元根据所述第一时钟选择信号选择输出所述第一时钟,从而能够继续使用第一时钟,然后,延时预设时间段,并且在预设时间段之内,配置所述第二时钟,在预设时间段结束时,将所述第一时钟切换至已配置的第二时钟。因此,第一时钟切换至第二时钟的时候,先延时一定时间,在所延时的时间段内,对第二时钟配置,也就是说,依然使用第一时钟而不使用不稳定的第二时钟,在等到延时时间结束之后,再切换到已配置的第二时钟,能够实现第一时钟切换至第二时钟的时候,第一时钟切换到稳定的第二时钟。
另外,本申请实施例提供的一种计算机可读存储介质。该计算机可读介质中存储有程序代码,所述程序代码可被处理器调用执行上述方法实施例中所描述的方法。
计算机可读存储介质可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。可选地,计算机可读存储介质800包括非易失性计算机可读介质(non-transitory computer-readable storage medium)。计算机可读存储介质具有执行上述方法中的任何方法步骤的程序代码的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码可以例如以适当形式进行压缩。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不驱使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (10)
1.一种时钟切换装置,其特征在于,包括:请求处理单元、延时单元和时钟切换单元,所述请求处理单元和延时单元均与所述时钟切换单元连接;
所述请求处理单元用于获取时钟切换请求,所述时钟切换请求用于请求将第一时钟切换至第二时钟;
所述请求处理单元还用于根据所述时钟切换请求发送第一时钟选择信号至所述时钟切换单元,以及发送延时信号至所述延时单元;
所述延时单元用于根据所述延时信号延时预设时间段,并在所述预设时间段内配置所述第二时钟,在预设时间段延时结束时,发送第二时钟选择信号至所述时钟切换单元;
所述时钟切换单元用于根据所述第一时钟选择信号选择输出所述第一时钟至负载,以及根据所述第二时钟选择信号选择输出所述第二时钟至负载。
2.根据权利要求1所述的时钟切换装置,其特征在于,所述预设时间段包括第一时间段和第二时间段;所述延时单元还用于:
根据所述延时信号延时所述第一时间段,在所述第一时间段延时结束时,生成第一选择信号,并延时所述第二时间段,在所述第二时间段内配置所述第二时钟,在所述第二时间段延时结束时,生成第二选择信号;
根据所述第一选择信号和所述第二选择信号生成所述第二时钟选择信号,并且发送所述第二时钟选择信号至所述时钟切换单元。
3.根据权利要求2所述的时钟切换装置,其特征在于,所述延时单元包括第一计时器、第二计时器和信号发生器,所述第一计时器的输入端与所述请求处理单元连接,所述第一计时器的输出端分别与所述第二计时器的输入端和所述信号发生器的第一输入端连接,所述第二计时器的输出端与所述信号发生器的第二输入端连接;
所述第一计时器,用于在所述第一计时器的输入端接收到所述请求处理单元发送的所述延时信号之后,延时所述第一时间段,在所述第一时间段延时结束时,生成第一选择信号并输入至所述信号发生器的第一输入端以及所述第二计时器的输入端;
所述第二计时器,用于根据所述第一选择信号延时所述第二时间段,在所述第二时间段延时结束时,生成第二选择信号;
所述信号发生器,用于根据所述第一选择信号和所述第二选择信号生成所述第二时钟选择信号,并且发送所述第二时钟选择信号至所述时钟切换单元。
4.根据权利要求3所述的时钟切换装置,其特征在于,所述延时单元还包括:时钟配置器,所述第一计时器的输入端与所述时钟配置器连接;
所述第一计时器还用于将第一选择信号输入所述时钟配置器;
所述时钟配置器用于根据所述第一选择信号配置所述第二时钟。
5.根据权利要求3所述的时钟切换装置,其特征在于,所述第二计时器包括计数器和信号比较器,所述第一计时器的输出端与所述计数器的输入端连接,所述计数器的输出端与所述信号比较器的第一输入端,所述信号比较器的第二输入端用于接收参考计时信号,所述信号比较器的输出端与所述信号发生器的第二输入端连接;
所述计数器用于接收所述第一选择信号,并对所述第一时钟计数,将计数结果发送至所述信号比较器;
所述信号比较器用于将所述计数结果与所述参考计时信号比较,当所述计数结果与所述参考计时信号二者的时间长度差满足指定条件时,生成第二选择信号,其中,所述计数结果与所述参考计时信号二者的时间长度差满足指定条件表示所述第二时间段延时结束。
6.根据权利要求1所述的时钟切换装置,其特征在于,还包括第一时钟信号复位器,所述延时单元与所述第一时钟信号复位器的输入端连接;
所述延时单元还用于在预设时间段延时结束时,发送复位信号至所述第一时钟信号复位器;
所述第一时钟信号复位器根据所述复位信号将所述第一时钟选择信号清除。
7.一种电子设备,其特征在于,包括处理器和如权利要求1-6任一所述的时钟切换装置;所述处理器与请求处理单元连接,用于将时钟切换请求发送至所述请求处理单元。
8.根据权利要求7所述的电子设备,其特征在于,所述时钟切换装置还包括握手信号生成器,所述延时单元与所述握手信号生成器的输入端连接,所述握手信号生成器的输出端与所述处理器连接;
所述延时单元用于在预设时间段延时结束时,发送延时结束信号至所述握手信号生成器;
所述握手信号生成器用于根据所述结束信号生成握手成功指令,并发送至所述处理器;
所述处理器用于在获取到所述握手成功指令时,清除所述时钟切换请求。
9.根据权利要求8所述的电子设备,其特征在于,所述握手信号生成器包括握手信号比较器,所述握手信号比较器的第一端与计数器的输出端连接,所述握手信号比较器的第二端用于接收握手参考计时信号;
所述握手信号比较器用于获取所述计数器输出的计数结果,并与所述握手参考计时信号比较,若所述计数结果与所述握手参考计时信号二者的时间长度差满足预设条件时,生成握手成功指令,并发送至所述处理器。
10.一种时钟切换方法,其特征在于,包括:
获取时钟切换请求,所述时钟切换请求用于请求将第一时钟切换至第二时钟;
继续使用所述第一时钟,并延时预设时间段;
在所述预设时间段内配置所述第二时钟;
在预设时间段结束时,将所述第一时钟切换至已配置的第二时钟。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910755474.XA CN110502066B (zh) | 2019-08-15 | 2019-08-15 | 时钟切换装置、方法及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910755474.XA CN110502066B (zh) | 2019-08-15 | 2019-08-15 | 时钟切换装置、方法及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110502066A true CN110502066A (zh) | 2019-11-26 |
CN110502066B CN110502066B (zh) | 2021-03-02 |
Family
ID=68586482
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910755474.XA Active CN110502066B (zh) | 2019-08-15 | 2019-08-15 | 时钟切换装置、方法及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110502066B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111399588A (zh) * | 2020-03-18 | 2020-07-10 | 深圳市紫光同创电子有限公司 | 时钟信号产生电路、驱动方法及电子设备 |
CN111611768A (zh) * | 2020-05-21 | 2020-09-01 | 北京百度网讯科技有限公司 | 用于监控时钟信号的方法和装置 |
CN113900478A (zh) * | 2021-10-19 | 2022-01-07 | 天津津航计算技术研究所 | 一种适用于SoC芯片的时钟模块设计方法 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1589425A (zh) * | 2001-11-15 | 2005-03-02 | 模拟设备股份有限公司 | 无假信号的时钟选择切换 |
CN101126941A (zh) * | 2007-10-16 | 2008-02-20 | 北京天碁科技有限公司 | 时钟切换方法以及时钟切换装置 |
US8373479B1 (en) * | 2011-09-08 | 2013-02-12 | Global Unichip Corp. | Delay locked loop (DLL) circuit for improving jitter |
CN103650406A (zh) * | 2011-05-23 | 2014-03-19 | 英特尔移动通信有限公司 | 用于同步第一时钟域与第二时钟域之间的数据切换的设备 |
CN104412220A (zh) * | 2012-06-27 | 2015-03-11 | 北欧半导体公司 | 时钟域之间的数据传输 |
WO2015161431A1 (zh) * | 2014-04-22 | 2015-10-29 | 京微雅格(北京)科技有限公司 | Lvds数据恢复方法及电路 |
CN105487457A (zh) * | 2016-01-25 | 2016-04-13 | 中国科学院电子学研究所 | 延时量自动校正的等效采样装置 |
CN105490675A (zh) * | 2014-09-16 | 2016-04-13 | 深圳市中兴微电子技术有限公司 | 时钟动态切换方法及装置 |
CN207650568U (zh) * | 2017-11-08 | 2018-07-24 | 安凯(广州)微电子技术有限公司 | 时间数字转换装置及数字锁相环 |
US20180294022A1 (en) * | 2017-03-15 | 2018-10-11 | SK Hynix Inc. | Semiconductor device and method of operation |
-
2019
- 2019-08-15 CN CN201910755474.XA patent/CN110502066B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1589425A (zh) * | 2001-11-15 | 2005-03-02 | 模拟设备股份有限公司 | 无假信号的时钟选择切换 |
CN101126941A (zh) * | 2007-10-16 | 2008-02-20 | 北京天碁科技有限公司 | 时钟切换方法以及时钟切换装置 |
CN103650406A (zh) * | 2011-05-23 | 2014-03-19 | 英特尔移动通信有限公司 | 用于同步第一时钟域与第二时钟域之间的数据切换的设备 |
US8373479B1 (en) * | 2011-09-08 | 2013-02-12 | Global Unichip Corp. | Delay locked loop (DLL) circuit for improving jitter |
CN104412220A (zh) * | 2012-06-27 | 2015-03-11 | 北欧半导体公司 | 时钟域之间的数据传输 |
WO2015161431A1 (zh) * | 2014-04-22 | 2015-10-29 | 京微雅格(北京)科技有限公司 | Lvds数据恢复方法及电路 |
CN105490675A (zh) * | 2014-09-16 | 2016-04-13 | 深圳市中兴微电子技术有限公司 | 时钟动态切换方法及装置 |
CN105487457A (zh) * | 2016-01-25 | 2016-04-13 | 中国科学院电子学研究所 | 延时量自动校正的等效采样装置 |
US20180294022A1 (en) * | 2017-03-15 | 2018-10-11 | SK Hynix Inc. | Semiconductor device and method of operation |
CN207650568U (zh) * | 2017-11-08 | 2018-07-24 | 安凯(广州)微电子技术有限公司 | 时间数字转换装置及数字锁相环 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111399588A (zh) * | 2020-03-18 | 2020-07-10 | 深圳市紫光同创电子有限公司 | 时钟信号产生电路、驱动方法及电子设备 |
CN111399588B (zh) * | 2020-03-18 | 2021-09-21 | 深圳市紫光同创电子有限公司 | 时钟信号产生电路、驱动方法及电子设备 |
CN111611768A (zh) * | 2020-05-21 | 2020-09-01 | 北京百度网讯科技有限公司 | 用于监控时钟信号的方法和装置 |
CN111611768B (zh) * | 2020-05-21 | 2023-04-25 | 北京百度网讯科技有限公司 | 用于监控时钟信号的方法和装置 |
CN113900478A (zh) * | 2021-10-19 | 2022-01-07 | 天津津航计算技术研究所 | 一种适用于SoC芯片的时钟模块设计方法 |
CN113900478B (zh) * | 2021-10-19 | 2023-11-14 | 天津津航计算技术研究所 | 一种适用于SoC芯片的时钟模块设计方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110502066B (zh) | 2021-03-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110502066A (zh) | 时钟切换装置、方法及电子设备 | |
US8415981B2 (en) | Integrated circuit device, synchronisation module, electronic device and method therefor | |
CN112363763B (zh) | 数据处理方法、装置及计算机可读存储介质 | |
JP5598161B2 (ja) | クロック発生回路 | |
CN107665033B (zh) | 一种具有复位去毛刺功能的数字逻辑电路模块 | |
CN107703878B (zh) | 一种plc分布式远程io扩展模块 | |
CN107368144B (zh) | 一种任意波形发生器及波形播放方法 | |
JP2009544040A5 (zh) | ||
CN108345351A (zh) | 片上系统、时钟门控组件、多路复用器组件以及分频组件 | |
CN102707766A (zh) | 信号同步装置 | |
JPH03170069A (ja) | デジタル・データ取り込み装置 | |
CN103631649A (zh) | 中断处理方法、装置及中断控制器 | |
CN107562163A (zh) | 一种具有稳定复位控制的数字逻辑电路 | |
CN107565940B (zh) | 一种基于fpga系统的时钟切换电路 | |
CN209842447U (zh) | 一种跨时钟域信号同步电路 | |
JP2003158512A (ja) | デジタル信号処理方式及びデータ処理装置 | |
CN104579334A (zh) | 振荡器 | |
CN104702545A (zh) | typeA有源天线应用从模式载波解调自动控制电路 | |
JP3935274B2 (ja) | クロック切替回路 | |
CN210518362U (zh) | 一种单线通信电路及通信系统 | |
CN102761329B (zh) | 可反弹跳的电路、反弹跳模组 | |
CN112187233A (zh) | 复位装置、方法、时钟系统及电子设备 | |
CN101576818B (zh) | 一种读后清零寄存器及读后清零的方法 | |
CN104486541A (zh) | 一种采用触发器分频的时钟电路 | |
CN114826220B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |