【发明内容】
本发明要解决的技术问题,在于提供一种静态变频CPU的频率自动稳定切换电路.通过改进ISO芯片内部硬件电路来达成自动切换CPU的频率。
本发明是这样实现的:一种静态变频CPU的频率自动稳定切换电路,包括CPU电路、多路选择器、分频电路、切换控制电路以及配置存储单元;所述多路选择器、分频电路、CPU电路依次连接传递时钟信号,所述切换控制电路分别连接所述CPU电路、多路选择器、分频电路以及配置存储单元以传递控制信号,且CPU电路还连接所述配置存储单元以传递配置信号;
所述多路选择器负责切换输出连接到不同的时钟,该多路选择器的选择端受切换控制电路控制;所述分频电路负责将多路选择器输出的时钟进行分频处理,得到所述CPU电路最终的工作时钟,所述分频电路的分频比例受切换控制电路控制;所述切换控制电路工作于外部晶体振荡器输出的低频时钟下,用于根据所述配置存储单元的配置信息来控制CPU电路的低功耗状态请求和恢复、多路选择器的通路选择、分频电路的分频比例以及多路选择器和分频电路的变化稳定时间;所述CPU电路工作于分频电路输出的时钟频率下,并对配置存储单元进行配置;所述配置存储单元负责接收CPU电路的配置动作,并将配置信息进行存储;
其中,所述切换控制电路根据所述配置存储单元的配置信息来控制CPU电路的低功耗状态请求和恢复的具体过程是:当切换控制电路监控到配置存储单元中的变频流程起始开关处于打开状态之后,会开始实时监控CPU电路输出的低功耗状态位;CPU电路在打开配置存储单元中的变频流程起始开关后,需要执行一条让CPU电路进入低功耗状态的指令来使自身进入低功耗状态,在CPU电路完全进入低功耗状态后,低功耗状态输出信号变为有效;切换控制电路在接收到低功耗状态输出信号变为有效后,将配置存储单元中新的多路选择器通路选择控制和分频电路分频比例输出到多路选择器和分频电路的控制端,然后开始使用晶振低频时钟计数,当计数值达到配置存储单元中存储的电路稳定时间周期数后,可以认为时钟切换输出已经稳定;然后切换控制电路4把唤醒控制信号变为有效;CPU电路接收到唤醒控制信号变为有效后,开始唤醒整体CPU电路,使CPU电路重新回到正常工作状态,并且在状态恢复后,将低功耗状态位变为无效,此时CPU电路的工作时钟已经是配置的新的时钟频率;切换控制电路在接收到CPU电路低功耗状态位为无效后,将配置存储单元中的变频流程起始开关关闭,就此完成一次完整的CPU频率切换动作。
其中,所述多路选择器和分频电路的变化稳定时间是实现电路所需要的每个器件的从输入变化到输出稳定的时间长度的累加结果。
本发明具有如下优点:本发明的CPU频率自动稳定切换电路,各电路模块均为硬件模块,不需要软件干预,硬件自动完成切换;可以设置电路稳定时间,且可适应各种foundry(芯片代工生产厂家)工艺差异性。
【具体实施方式】
如图1所示,本发明的CPU频率自动稳定切换电路,包括CPU电路1、多路选择器2、分频电路3、切换控制电路4以及配置存储单元5;所述多路选择器2、分频电路3、CPU电路1依次连接传递时钟信号,所述切换控制电路4分别连接所述CPU电路1、多路选择器2、分频电路3以及配置存储单元5以传递控制信号,且CPU电路1还连接所述配置存储单元5以传递配置信号;
所述多路选择器2负责切换输出连接到不同的时钟,该多路选择器2的选择端受切换控制电路4控制;所述分频电路3负责将多路选择器1输出的时钟进行分频处理,得到所述CPU电路1最终的工作时钟,所述分频电路3的分频比例受切换控制电路4控制;所述切换控制电路4工作于外部晶体振荡器输出的低频时钟下,用于根据所述配置存储单元5的配置信息来控制CPU电路1的低功耗状态请求和恢复、多路选择器2的通路选择、分频电路3的分频比例以及多路选择器2和分频电路3的变化稳定时间;所述CPU电路1工作于分频电路3输出的时钟频率下,并对配置存储单元5进行配置;所述配置存储单元5负责接收CPU电路1的配置动作,并将配置信息进行存储。
本发明的CPU频率自动稳定切换电路的工作流程:
本发明在切换频率进行之前,需要先得到多路选择器2和分频电路3配置变化时的最大稳定时间,这个最大稳定时间就是在配置变化后到输出状态稳定的时间长度。所述多路选择器和分频电路的变化稳定时间是实现电路所需要的每个器件的从输入变化到输出稳定的时间长度的累加结果。因为构成电路的每个器件单元都有其从输入变化到输出稳定的一段时间,而由于每个foundfy的器件实现方式和工艺的不同造成设计中相同的器件在使用不同foundry的实现工艺时会出现稳定时间的不一致,这就需要设计人员在foundry选定后,查询foundry提供的器件手册,得到实现电路所需要的每个器件的从输入变化到输出稳定时间长度,再将路径上所有器件的稳定时间累加起来就得到了在这种foundry工艺下电路的稳定时间。然后将此时间长度换算为在晶振低频时钟的周期数,由CPU电路1配置到配置存储单元5中。晶振低频时钟的周期数的计算方式是电路的稳定时间除以低频时钟每个周期的时间长度的结果向上取整,该稳定时间由上述计算所得的最大稳定时间;比如:稳定时间为100ns,低频时钟24MHz每个周期的长度为41.666ns,则电路的稳定时间除以低频时钟每个周期=100ns/41.66ns=2.4,向上取整后为3个周期。
1.在准备变频之前,CPU电路1处于正常工作状态,当需要变化频率时,CPU电路1将新的多路选择器通路选择控制和分频电路3的分频比例配置到配置存储单元5中,然后配置打开变频流程起始开关。
2.当切换控制电路4监控到配置存储单元5中的变频流程起始开关处于打开状态之后,会开始实时监控CPU电路1输出的低功耗状态位(该指示位用于表示CPU电路1当前是否处于没有工作的低功耗状态)。
3.CPU电路1在打开配置存储单元5中的变频流程起始开关后,需要执行一条让CPU电路1进入低功耗状态的指令来使自身进入低功耗状态,在CPU电路1完全进入低功耗状态后,低功耗状态输出信号变为有效。
4.切换控制电路4在接收到低功耗状态输出信号变为有效后,将配置存储单元5中新的多路选择器通路选择控制和分频电路分频比例输出到多路选择器2和分频电路3的控制端,然后开始使用晶振低频时钟计数,当计数值达到配置存储单元5中存储的电路稳定时间周期数后,可以认为时钟切换输出已经稳定;然后切换控制电路4把唤醒控制信号变为有效。
5.CPU电路1接收到唤醒控制信号变为有效后,开始唤醒整体CPU电路1,使CPU电路1重新回到正常工作状态,并且在状态恢复后,将低功耗状态位变为无效.此时CPU电路1的工作时钟已经是配置的新的时钟频率。
6.切换控制电路4在接收到CPU电路1低功耗状态位为无效后,将配置存储单元5中的变频流程起始开关关闭,就此完成一次完整的CPU频率切换动作。
7.如果希望再次变频,只需要重复1到6的动作即可。
虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。