片上系统芯片及其功耗控制方法

文档序号:6560312阅读:176来源:国知局
专利名称:片上系统芯片及其功耗控制方法
技术领域
本发明涉及一种芯片及其控制方法,尤其涉及一种片上系统芯片及其功耗控制方法。
背景技术
随着集成电路技术的飞速发展和对消费类电子产品-特别是便携式面向客户的电子产品的需求,推动了片上系统芯片的飞速发展,也给人们提出了许多新的课题。
对于电池驱动的片上系统芯片,已不能只考虑它优化空间的两个方面—速度和面积,而必须要注意它已经表现出来的且变得越来越重要的第三个方面—功耗,这样才能延长电池的寿命和电子产品的运行时间。
在实际应用片上系统芯片的过程中,有时可能需要片上系统芯片的所有硬件资源参与,但有时也可能只需要其中的一部分硬件资源参与;在一些应用中可能需要输入很高的工作频率,而在其他的一些应用中却可以大大降低输入的工作频率。
根据片上系统芯片的上述特点,现有技术中采用如下方法对片上系统芯片进行功耗控制,以延长电池的寿命和电子产品的运行时间。如图1所示,片上系统芯片包括处理器系统和若干模块,这些模块可以为外部DMA(DirectMemory Access,直接存取存储器)、外部存储器、时钟产生模块、功耗控制模块、以及功能模块。所述的功能模块可以为协处理器。其中,处理器系统包括中央处理器、存储器、内部DMA等模块,三者之间通过处理器系统存储总线4相连,中央处理器可通过向内部DMA发出控制命令,由内部DMA来完成对内部存储器内数据的搬移操作,而在搬移过程中,中央处理器不再参与。时钟产生模块内部设置有PLL(Phase Locked Loop,锁相环),使得时钟产生模块利用片上系统芯片外部输入的中低频时钟,产生片上系统芯片内部各模块所需的中高频工作时钟信号。由图1中可以看出,处理器系统的中央处理器、内部存储器、内部DMA,与外部DMA、外部存储器共同连接于处理器系统输入/输出总线1上,并可以实现彼此之间的数据传输。外部DMA、外部存储器都与片上系统芯片的存储总线3相连,外部DMA可以实现对外部存储器的数据传输。
在对片上系统芯片进行功耗控制时,中央处理器可以根据当前软件的运行状况判断出具体哪些模块在工作,哪些模块处于的休息状态,进而产生片上系统芯片的控制策略。如图1中,片上系统芯片内部的中央处理器、内部存储器、内部DMA、外部DMA、外部存储器、功能模块均与时钟产生模块的工作时钟总线2相连。中央处理器将需要关闭某些模块的控制信息发送至功耗控制模块,功耗控制模块根据接收到的控制信息向时钟产生模块发出关闭向对应模块输出高频工作时钟的指令,由时钟产生模块停止向对应模块输出工作时钟,从而实现控制片上系统芯片的功耗,达到省电的目的。
在功耗控制模块中,存在有限状态机和对应的执行模块。有限状态机根据中央处理器的指令,通过执行模块控制时钟产生模块对各个模块进行时钟门控,即停止向各个模块供给工作时钟来实现节省片上系统芯片消耗的电能。具体来说,有限状态机中包含以下几种控制状态,在不同的控制状态下,通过执行模块控制时钟产生模块关闭向对应模块的时钟输出。
下面分别介绍有限状态机的几种控制状态正常状态,当片上系统芯片上的处理器系统和各个模块正常运行时,需要时钟产生模块向处理器系统和各模块输出高频时钟信号。此时,有限状态机根据中央处理器的指令,通过执行单元控制时钟产生模块产生高频时钟信号,并输出至处理器系统和各个模块。
空闲状态,当片上系统芯片上只有中央处理器处于空闲,而其他模块正常运行时,有限状态机根据中央处理器的指令,通过执行单元控制时钟产生模块向正常运行的模块输出高频时钟信号,而停止向中央处理器输出高频时钟信号。
休眠状态,当片上系统芯片中包含处理器系统在内的全部模块均处于空闲状态时,可以关闭时钟产生模块向这些模块的时钟信号输出。此时,时钟产生模块也被关闭,不再产生时钟信号,而功耗控制模块则利用片上系统芯片外部输入的低频时钟信号进行休眠控制。在此种控制模式下,可以采用以下两种机制来唤醒时钟产生模块,其一为自然唤醒,即功耗控制模块根据外部的低频时钟信号计时,在到达设定的时刻,唤醒时钟产生模块,恢复工作时钟;另一种唤醒方式为强行唤醒,即只有在片上系统芯片接收到来自芯片外部的唤醒信号后,才由功耗控制模块强行唤醒时钟产生模块,恢复工作时钟。
通过上述对片上系统芯片各模块进行时钟门控,可以实现对片上系统芯片的功耗进行控制,在一定程度上解决了片上系统芯片的功耗控制问题。但是,片上系统芯片在实际工作过程中,可能存在这样的情况,即一部分模块处于空闲状态,而另外一部分模块处于工作状态,而且,这些模块的工作与空闲状态是实时变化的。例如,处理器系统处于空闲,其他模块中的内部DMA、内部存储器也处于空闲状态,而外部DMA、外部存储器、功能模块则处于正常工作状态,那么,按照现有技术中的控制方法就不能精确的对片上系统芯片的功耗进行控制。

发明内容
本发明针对现有技术的缺点,提供一种片上系统芯片以及片上系统芯片的功耗控制方法,可以根据片上系统芯片内部各模块的运行状态更加精确的实现功耗控制。
本发明所述的片上系统芯片包括处理器系统、外部直接存取存储器、外部存储器、时钟产生模块、功能模块、以及功耗控制模块,所述功耗控制模块包括有限状态机及对应的执行模块,在有限状态机中还设置有睡眠状态控制单元,在执行模块中还设置有睡眠状态执行单元;其中,睡眠状态控制单元根据处理器系统的控制信息,通过睡眠状态执行单元控制时钟产生模块,使时钟产生模块向对应模块输出高频时钟信号。
上述的睡眠状态控制单元还可以包括小睡状态控制单元,和/或深度睡眠状态控制单元,所述睡眠状态执行单元包括对应的小睡状态执行单元,和/或深度睡眠状态执行单元。
本发明还提供一种片上系统芯片的功耗控制方法,其步骤包括步骤一,确定中央处理器、各直接存取存储器及对应各存储器的工作状态;步骤二,根据上述确定的工作状态下发相应的控制信息;步骤三,时钟产生模块根据上述控制信息向各模块输出高频时钟信号。
上述步骤一中,根据中央处理器的数据处理结果确定中央处理器自身,以及外部直接存取存储器和对应的外部存储器,和/或内部直接存取存储器以及内部存储器的工作状态。
本发明中,片上系统芯片的中央处理器根据其确定的各模块的工作状态下发对应的控制信息,由功耗控制模块根据该控制信息控制时钟产生模块向对应的模块输出高频时钟信号。与现有技术相比,本发明实现了对片上系统芯片内的各模块更加精确的时钟控制,从而可以更好的控制片上系统芯片的功耗,达到省电的目的。


图1为现有技术中片上系统芯片的结构示意图;图2为本发明的片上系统芯片的结构示意图;图3为本发明的片上系统芯片的另一种结构示意图;图4为本发明的片上系统芯片的另一种结构示意图;图5为本发明的片上系统芯片的另一种结构示意图;图6为本发明的片上系统芯片的功耗控制方法流程图。
具体实施例方式
本发明通过改变片上系统芯片的结构,根据片上系统芯片中各模块的工作状态更加精确的实现对片上系统芯片的功耗进行控制。
下面结合附图对本发明的片上系统芯片及其功耗控制方法做详细说明。
如图2所示,本发明的片上系统芯片包括处理器系统,以及外部DMA、外部存储器、时钟产生模块、功能模块和功耗控制模块。
本发明在现有技术的基础上,在功耗控制模块的有限状态机中增加设置了睡眠状态控制单元,在执行模块中增加设置了对应的睡眠状态执行单元。
本发明中,中央处理器根据数据处理结果,可以确定片上系统芯片内部各个模块的工作情况,即确定哪些模块处于工作状态,哪些模块处于空闲状态,于是,中央处理器向功耗控制模块发送的信息中包含了对各模块工作时钟的控制信息,该控制信息具体为向对应模块停止输出或正常输出高频时钟信号。
上述的睡眠状态控制单元根据处理器系统的控制信息,通过睡眠状态执行单元控制时钟产生模块,使时钟产生模块向对应模块输出高频时钟信号。
根据片上系统芯片内各模块的实际工作状态,睡眠状态控制单元可进一步包括小睡状态控制单元,和/或深度睡眠状态控制单元,与之相对应的,睡眠状态执行单元可进一步包括小睡状态执行单元,和/或深度睡眠状态执行单元。
如图3所示,为睡眠状态控制单元包括小睡状态控制单元,睡眠状态执行单元包括对应的小睡状态执行单元的示意图。
当中央处理器确定自身和外部DMA及相应的外部存储器,和/或中央处理器确定自身和内部DMA及相应的内部存储器处于空闲状态时,中央处理器向功耗控制模块下发的控制信息中包含了停止向中央处理器、外部DMA及相应的外部存储器,和/或停止向中央处理器、内部DMA及相应的内部存储器输出高频时钟信号的信息。此时,小睡状态控制单元根据上述控制信息,通过小睡状态执行单元控制时钟产生模块,使时钟产生模块停止向中央处理器输出高频时钟信号,以及停止向外部DMA及对应的外部存储器,和/或停止向内部DMA及对应的内部存储器输出高频时钟信号。
如图4所示,为睡眠状态控制单元包括深度睡眠状态控制单元,睡眠状态执行单元包括对应的深度睡眠状态执行单元的示意图。
当中央处理器确定自身及片上系统芯片内其他各模块均处于空闲状态时,其向功耗控制模块下发的控制信息中包含了停止向上述各模块正常输出高频时钟信号的信息。功耗控制模块中的深度睡眠状态控制单元根据中央处理器的控制信息控制深度睡眠状态执行单元,由深度睡眠状态执行单元控制时钟产生模块停止向中央处理器及其他各模块输出高频时钟信号。在此种深度睡眠状态下,时钟产生模块也被关闭,不再产生时钟信号。片上系统芯片处于深度睡眠状态时,如果需要重新进入工作状态,只能采取强行唤醒的方式,即片上系统芯片接收到来自芯片外部的唤醒信号后,由功耗控制模块强行唤醒时钟产生模块,使其恢复输出工作时钟。
如图5所示,为睡眠状态控制单元包括小睡状态控制单元和深度睡眠状态控制单元,睡眠状态执行单元包括小睡状态执行单元和深度睡眠状态执行单元的示意图。
上述小睡状态控制单元和深度睡眠状态控制单元分别根据中央处理器的控制信息,通过对应的小睡状态执行单元和深度睡眠状态执行单元控制时钟产生模块,使时钟产生模块停止向对应的模块输出高频时钟信号。此处所述的两种控制过程分别与上述图3和图4中的控制过程相同,在此不再赘叙。
本发明中,中央处理根据其数据处理结果确定处于工作或空闲状态的各个模块,然后在其向功耗控制模块下发的控制信息中包含控制时钟产生模块停止向上述对应模块输出高频时钟信号的信息,由功耗控制模块内的小睡状态控制单元或深度睡眠状态控制单元控制对应的小睡状态执行单元或深度睡眠状态执行单元,进而控制时钟产生模块停止向相应的模块输出高频时钟信号。
与现有技术相比,本发明通过在功耗控制模块中增加小睡状态控制,使得可以根据片上系统芯片内中央处理器和各DMA及对应的存储器的工作状态对片上系统芯片的功耗进行控制,更加精确的控制了片上系统芯片的功耗。同时,本发明中增加的深度睡眠状态控制由于只支持强行唤醒,故在没有接收到片上系统芯片外部的唤醒信号时,片上系统芯片一直处于睡眠状态,可以更加减少片上系统芯片的功耗。
本发明还提供一种片上系统芯片的功耗控制方法,如图6所示,包括如下步骤步骤101,确定中央处理器、各DMA及对应各存储器的工作状态。
中央处理器根据数据处理结果,可以确定中央处理器自身,以及外部DMA和对应的外部存储器,和/或内部DMA以及内部存储器的工作状态,即可以确定哪些模块处于工作状态,哪些模块处于空闲状态。例如,中央处理器根据数据处理结果确定中央处理器,以及内部DMA和对应的内部存储器,和/或外部DMA和对应的外部存储器处于空闲状态。当然,中央处理器也可以根据数据处理结果确定片上系统芯片内部各模块均处于空闲状态。
步骤102,根据上述确定的工作状态下发相应的控制信息。
本步骤中,根据步骤101确定的中央处理器自身,以及外部DMA和对应的外部存储器,和/或内部DMA以及内部存储器的工作状态下发对应的控制信息。例如,中央处理器根据数据处理结果确定中央处理器、内部DMA及对应的内部存储器处于空闲状态,而外部DMA及对应的外部存储器处于工作状态,则下发的控制信息中包含停止向中央处理器、内部DMA及对应的内部存储器输出高频时钟信号,而向外部DMA及对应的外部存储器输出高频时钟信号的信息;又如,中央处理器根据数据处理结果确定片上系统芯片内部的全部模块都处于空闲状态,即中央处理器、内部DMA及对应的内部存储器、外部DMA及对应的外部存储器、以及功能模块均处于空闲状态,则下发的控制信息中包含了停止向中央处理器及其他各模块输出高频时钟信号的信息;又如,中央处理器根据数据处理结果确定片上系统芯片内部各模块均处于空闲状态,则其下发的控制信息中包含了停止向片上系统芯片内各模块输出高频时钟信号的信息。
步骤103,时钟产生模块根据上述控制信息向各模块输出高频时钟信号。
本步骤中,时钟产生模块根据接收到的控制信息向片上系统芯片内部的各模块输出的高频时钟信号。
例如,上述步骤102中,中央处理器根据数据处理结果确定中央处理器、内部DMA及对应的内部存储器处于空闲状态,而外部DMA及对应的外部存储器处于工作状态,则下发的控制信息中包含了停止向中央处理器、内部DMA及对应的内部存储器输出高频时钟信号,而向外部DMA及对应的外部存储器输出高频时钟信号的信息,于是,时钟产生模块根据此控制信息向外部DMA及对应的外部存储器输出高频时钟信号,而停止向中央处理器、内部DMA及对应的内部存储器输出高频时钟信号。又如,中央处理器下发的控制信息中包含了停止向中央处理器及其他各模块输出高频时钟信号的信息,则时钟产生模块根据此控制信息停止向中央处理器及各模块输出高频时钟信号。又如,中央处理器下发的控制信息中包含了停止向片上系统芯片内部各模块输出高频时钟信号的信息,则时钟产生模块停止向片上系统芯片内各模块输出高频时钟信号。
本发明所述功耗控制方法中,可根据片上系统芯片内部各模块的工作状态下发相应的控制信息,从而实现对功耗的灵活控制,改变了现有技术中对片上系统芯片功耗控制方法单一,无法根据片上系统芯片内部各模块的实际工作状态进行控制的弊端。
尽管本发明的实施方案已公开如上,但其并不仅仅限于说明书和实施方式中所列运用,它完全可以被适用于各种适合本发明的领域,对于熟悉本领域的人员而言,可容易地实现另外的修改,因此在不背离权利要求及等同范围所限定的一般概念下,本发明并不限于特定的细节和这里示出与描述的图例。
权利要求
1.一种片上系统芯片,包括处理器系统、外部直接存取存储器、外部存储器、时钟产生模块、功能模块、以及功耗控制模块,所述功耗控制模块包括有限状态机及对应的执行模块,其特征在于,有限状态机中还设置有睡眠状态控制单元,执行模块中还设置有睡眠状态执行单元;其中,睡眠状态控制单元根据处理器系统的控制信息,通过睡眠状态执行单元控制时钟产生模块,使时钟产生模块向对应模块输出高频时钟信号。
2.如权利要求1所述的片上系统芯片,其特征在于,所述处理器系统的控制信息根据中央处理器的数据处理结果确定。
3.如权利要求1所述的片上系统芯片,其特征在于,所述睡眠状态控制单元包括小睡状态控制单元,和/或深度睡眠状态控制单元,所述睡眠状态执行单元包括对应的小睡状态执行单元,和/或深度睡眠状态执行单元。
4.如权利要求3所述的片上系统芯片,其特征在于,所述小睡状态控制单元对应的控制信息包括停止向中央处理器输出高频时钟信号,以及停止向外部直接存取存储器及对应的外部存储器,和/或停止向内部直接存取存储器及对应的内部存储器输出高频时钟信号。
5.如权利要求4所述的片上系统芯片,其特征在于,所述时钟产生模块停止向中央处理器输出高频时钟信号,以及停止向外部直接存取存储器及对应的外部存储器,和/或停止向内部直接存取存储器及对应的内部存储器输出高频时钟信号。
6.如权利要求3所述的片上系统芯片,其特征在于,深度睡眠状态控制单元对应的控制信息包括停止向片上系统芯片内部各模块输出高频时钟信号。
7.如权利要求6所述的片上系统芯片,其特征在于,所述时钟产生模块停止向片上系统芯片内部各模块输出高频时钟信号。
8.如权利要求3所述的片上系统芯片,其特征在于,所述深度睡眠状态下,当片上系统芯片接收到芯片外部的唤醒信号后,时钟产生模块向各模块输出高频时钟信号。
9.一种片上系统芯片的功耗控制方法,其特征在于,步骤包括步骤一,确定中央处理器、各直接存取存储器及对应各存储器的工作状态;步骤二,根据上述确定的工作状态下发相应的控制信息;步骤三,时钟产生模块根据上述控制信息向各模块输出高频时钟信号。
10.如权利要求9所述的功耗控制方法,其特征在于,所述步骤一中,根据中央处理器的数据处理结果确定中央处理器自身,以及外部直接存取存储器和对应的外部存储器,和/或内部直接存取存储器以及内部存储器的工作状态。
11.如权利要求9或10所述的功耗控制方法,其特征在于,所述步骤一中,确定的工作状态包括中央处理器处于空闲状态,以及外部直接存取存储器和对应的外部存储器,和/或内部直接存取存储器及对应的内部存储器处于空闲状态。
12.如权利要求11所述的功耗控制方法,其特征在于,所述步骤二中,下发的控制信息包括停止向中央处理器输出高频时钟信号,以及停止向外部直接存取存储器及对应的外部存储器,和/或停止向内部直接存取存储器及对应的内部存储器输出高频时钟信号。
13.如权利要求12所述的功耗控制方法,其特征在于,所述步骤三中,时钟产生模块停止向中央处理器输出高频时钟信号,以及停止向外部直接存取存储器及对应的外部存储器,和/或停止向内部直接存取存储器及对应的内部存储器输出高频时钟信号。
14.如权利要求9或10所述的功耗控制方法,其特征在于,所述步骤一中,确定的工作状态包括片上系统芯片内各模块均处于空闲状态。
15.如权利要求14所述的功耗控制方法,其特征在于,所述步骤二中,下发的控制信息包括停止向片上系统芯片内各模块输出高频时钟信号。
16.如权利要求15所述的功耗控制方法,其特征在于,所述步骤三中,时钟产生模块停止向片上系统芯片内各模块输出高频时钟信号。
全文摘要
本发明公开了一种片上系统芯片及其功耗控制方法。所述片上系统芯片的功耗控制模块中增加设置有睡眠状态控制单元和睡眠状态执行单元;其中,睡眠状态控制单元根据处理器系统的控制信息,通过睡眠状态执行单元控制时钟产生模块,使时钟产生模块向对应模块输出高频时钟信号。本发明所述方法为确定中央处理器、各直接存取存储器及对应各存储器的工作状态;根据上述确定的工作状态下发相应的控制信息;时钟产生模块根据上述控制信息向各模块输出高频时钟信号。本发明中,根据片上系统芯片内部各模块的工作状态下发相应的控制信息,从而实现对片上系统芯片的功耗进行灵活控制,更好地节省了片上系统芯片的能量消耗。
文档编号G06F1/32GK1877494SQ20061010629
公开日2006年12月13日 申请日期2006年7月19日 优先权日2006年7月19日
发明者贺超 申请人:北京天碁科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1