专利名称:多核处理器系统及其动态电源管理方法与控制装置的制作方法
技术领域:
本发明有关于一种处理器系统及其电源管理方法,且特别是有关于一种多核处理器系统及其动态电源管理方法与控制装置。
背景技术:
多核处理器系统一般是由一颗一般型处理器与一颗或多颗具有特殊运算能力的处理器所组成。此多核处理器系统采用资源共享的概念,借以降低硬件配置成本,其中最普遍共享的资源是存储器,此存储器内可以存放任何数据,包括用以指示处理器之间通讯状态的信号以及由多个处理器同时进行运算的数据。近年来,智能型手机和平板计算机等移动装置快速地普及并逐渐融入人们的日常生活中。这类装置可提供多样化的功能,借以帮助人们处理生活中的大小事务。而随着所处理事件的种类与数量的增加,对于处理器运算能力的要求也相对提高。若能在此装置内整合多个不同处理器的运算特性,不仅能够达到更好的效能,也比一般使用单一高速处理器的方法来得有效率。然而,这类装置通常采用进阶精简指令集机器(AdvancedRISC Machine,ARM)架构的处理器,此架构无法像x86系统般可整合多种系统功能模块以提供高阶功能。以电源管理为例,非X86系统的处理器所能采用的系统方案相当受限。在此架构下,许多系统功能模块彼此之间无法沟通,因此也无法互相整合以实现高阶的电源管理。除此之外,该架构的处理器在执行阶段无法进入低阶电源状态以节省电力消耗。
发明内容
有鉴于此,本发明提出一种多核处理器系统及其动态电源管理方法与控制装置, 在执行阶段(Runtime)根据工作负载(Workload)适时将多核处理器系统中的主核及副核关机或唤醒,可达到省电功效。本发明提出一种多核处理器系统的动态电源管理方法,适用于应用多核处理器的处理器系统,此多核处理器包括主核及至少一个副核。此方法先取得多核处理器于执行阶段的工作负载,而根据此工作负载以及各个副核的工作状态,分别对副核执行热插拔(hot plug)操作,其中该热插拔操作包含热拔出步骤或热插入步骤。然后,通过监测总线主控状态(Bus masterstatus)以及副核的工作状态,据以判断是否将主核关闭(Poweroff),其中所述的总线主控状态由多个总线装置反映出总线是否闲置的状态。最后,当总线主控状态为闲置状态时以及副核皆已被热拔出时,将主核关闭。本发明提出一种多核处理器系统,其包括多核处理器、电源管理单元(PMU)、电源管理暂存器、处理器调整单元及处理器热插拔单元(CPU hot-plug)。其中,多核处理器包括主核及至少一个副核。电源管理单元耦接主核及所述副核。电源管理暂存器用以记录由多个总线装置反映出总线是否闲置的多个装置状态产生的一总线主控状态。处理器调整单元用以取得多核处理器于执行阶段的工作负载以及各个副核的工作状态,据以判断是否分别对所述副核执行热插拔操作并对应输出调整通知。处理器热插拔单元用以接收调整通知, 据以控制电源管理单元分别对所述副核执行热插拔操作。本发明提出一种多核处理器系统的控制装置,所述多核处理器系统包括多核处理器及电源管理单元,多核处理器包括主核及至少一个副核,电源管理单元耦接所述主核及副核。此控制装置包括电源管理暂存器、处理器调整单元及处理器热插拔单元。电源管理暂存器用以记录总线主控状态,其中总线主控状态为多个总线装置反映出总线是否闲置的状态。处理器调整单元系用以取得多核处理器于执行阶段的工作负载以及副核的工作状态, 据以判断是否分别对副核执行热插拔操作并对应输出一调整通知。处理器热插拔单元用以接收调整通知,据以控制电源管理单元分别对副核执行热插拔操作。基于上述,本发明的多核处理器系统及其动态电源管理方法与控制装置根据多核处理器于执行阶段的工作负载对副核执行热插拔操作,并监测总线主控状态以适时地将主核关闭。借此,可达到省电功效。
图1是依照本发明一实施例所绘示的多核处理器系统的方块图。图2是依照本发明一实施例所绘示的多核处理器系统的动态电源管理方法流程图。图3是依照本发明一实施例所绘示的多核处理器系统的动态电源管理方法流程图。图4是依照本发明一实施例所绘示的多核处理器系统的方块图。图5是依照本发明一实施例所绘示的多核处理器系统的动态电源管理方法流程图。附图中的符号简单说明如下10,40 多核处理器系统;11、41 多核处理器;12、42 电源管理单元;43 控制模块;112,412 主核;114,414 副核;13,433 电源管理暂存器;14,434 处理器调整单元; 15,435 处理器热插拔单元;416 第二中断控制器;432 装置状态暂存器;434 逻辑电路; 436 第一中断控制器;S202 S208 本发明一实施例之多核处理器系统的动态电源管理方法的步骤;S302 S310 本发明一实施例之多核处理器系统的动态电源管理方法的步骤; S502 S508 本发明一实施例之多核处理器系统的动态电源管理方法的步骤。
具体实施例方式为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合所附图式作详细说明如下。本发明将处理器的动态频率调整(dynamic frequencyscaling)、闲置处理(idle handler)、热插拔(hot plug)等系统功能模块与处理器系统的硬件整合,以寻求在包含进阶精简指令集机器(Advanced RISC Machine, ARM)架构下,提供一种可动态调整处理器系统的主核及副核频率,以及将主核与副核关机或唤醒的解决方案,而可达到省电功效。本发明可适用于多种指令集的计算机系统,包含各种精简指令集或复杂指令集的多核处理器。图1是依照本发明一实施例所绘示的多核处理器系统的方块图。请参照图1,多核处理器系统10包括多核处理器11、电源管理单元12、电源管理暂存器(Power Management I/O Register,PMIO Register) 13、处理器调整单元14及处理器热插拔单元15。其中,多核处理器11包括主核112及至少一个副核114,例如一个或三个副核114。电源管理单元12 耦接至主核112及副核114,用以调整提供给主核112及副核114的工作电压及操作频率。电源管理暂存器13用以记录由多个总线装置(未绘示)反映出总线的忙碌状态 (即总线主控状态)所产生的逻辑状态(例如逻辑0或逻辑1)。处理器调整单元14可根据多核处理器11的工作负载控制电源管理单元12动态调整提供给主核112及副核114的处理器频率,并适时地关闭或开启主核112及副核114。 在本发明中,通过处理器热插拔单元15对于主核112或者至少一个副核114进行热拔出或热插入(plug in),而对主核112或者副核114进行不同电源状态的运作。另外,上述的处理器调整单元14或处理器热插拔单元15例如是以一固件方式实现。图2是依照本发明一实施例所绘示的多核处理器系统的动态电源管理方法流程图。请同时参照图1及图2,本实施例介绍图1的多核处理器系统10的动态电源管理流程, 以下即搭配多核处理器系统10的各项元件说明此方法的详细步骤。首先,由处理器调整单元14取得多核处理器11于执行阶段的工作负载以及其中各个副核114的工作状态(步骤S202),据以判断是否分别对副核执行热插拔操作,并对应输出调整通知至处理器热插拔单元15,而由处理器热插拔单元15控制电源管理单元13分别对副核执行热插拔操作(步骤S204)。所述热插拔操作包含热拔出步骤或热插入步骤。其中,所述的工作负载数据例如是从支持操作系统直接电源管理(OS-directed PowerManagement, 0SPM)的电源管理驱云力器(Power managementdriver, PM driver)中取得。详言之,本实施例通过注册相关限制条件,并利用一个核线程(kernel thread)去监测多核处理器11的工作负载,借以提供给处理器调整单元14。需说明的是,在ARM架构处理器的规格中,执行阶段下的电源管理仅限定在下表1 所示的某些特定状态。表 权利要求
1.一种多核处理器系统的动态电源管理方法,其特征在于,适用于应用一多核处理器的一处理器系统,该多核处理器包括一主核及至少一副核,该方法包括下列步骤取得该多核处理器于一执行阶段的一工作负载;根据该工作负载与该至少一副核的一工作状态,分别对该至少一副核执行一热插拔操作,其中该热插拔操作包含热拔出步骤或热插入步骤;监测一总线主控状态以及该至少一副核的工作状态,据以判断是否关闭该主核,其中该总线主控状态为多个总线装置反映出该总线是否闲置的状态;以及当该总线主控状态为一闲置状态以及该至少一副核皆已被热拔出时,关闭该主核。
2.根据权利要求1所述的多核处理器系统的动态电源管理方法,其特征在于,上述热拔出步骤包括判断该工作负载是否低于一下限值与该至少一副核的该工作状态;以及若该工作负载低于该下限值以及该工作状态为工作,对该至少一副核执行一热拔出操作,以及其中上述热插入步骤还包括判断该工作负载是否高于一上限值与该至少一副核的该工作状态;以及若该工作负载高于该上限值以及该工作状态为非工作,对该至少一副核执行一热插入操作。
3.根据权利要求1所述的多核处理器系统的动态电源管理方法,其特征在于,上述热拔出步骤还包括根据该工作负载调降该主核及该至少一副核的一处理器频率至一最低频率。
4.根据权利要求1所述的多核处理器系统的动态电源管理方法,其特征在于,在关闭该主核的步骤之后,还包括利用一第一中断控制器接收多个外围设备发出的一中断请求,并通知一电源管理单元;该电源管理单元重新启动该主核;该第一中断控制器传送该中断请求至该多核处理器中的一第二中断控制器;以及该第二中断控制器通知该主核服务该中断请求。
5.根据权利要求4所述的多核处理器系统的动态电源管理方法,其特征在于,该第一中断控制器为一向量中断控制器,而该第二中断控制器为一通用中断控制器。
6.一种多核处理器系统,其特征在于,包括 一多核处理器,包括一主核及至少一副核; 一电源管理单元,耦接该主核及该至少一副核;一电源管理暂存器,记录一总线主控状态,其中该总线主控状态为多个总线装置反映出该总线是否闲置的状态;一处理器调整单元,取得该多核处理器于一执行阶段的一工作负载以及各所述副核的一工作状态,据以判断是否分别对该至少一副核执行一热插拔操作并对应输出一调整通知;以及一处理器热插拔单元,接收该调整通知,据以控制该电源管理单元分别对该至少一副核执行一热插拔操作。
7.根据权利要求6所述的多核处理器系统,其特征在于,该处理器调整单元在判断该总线主控状态为一闲置状态以及该至少一副核皆已被热拔出时,决定关闭该主核。
8.根据权利要求6所述的多核处理器系统,其特征在于,该处理器调整单元还包括在该工作负载低于一下限值以及该工作状态为工作时,通知该处理器热插拔单元逐一对该至少一副核执行一热拔出操作。
9.根据权利要求6所述的多核处理器系统,其特征在于,该处理器调整单元还包括根据该工作负载调降该主核及该至少一副核的一处理器频率至一最低频率。
10.根据权利要求6所述的多核处理器系统,其特征在于,该处理器调整单元还包括在该工作负载高于一上限值以及该工作状态为非工作时,通知该处理器热插拔单元对该至少一副核执行一热插入操作。
11.根据权利要求6所述的多核处理器系统,其特征在于,还包括多个装置状态暂存器,分别记录所述总线装置反映的装置状态;以及一逻辑电路,耦接所述装置状态暂存器及该电源管理暂存器,整合所述装置状态为该总线主控状态,并记录该总线主控状态于该电源管理暂存器。
12.根据权利要求6所述的多核处理器系统,其特征在于,还包括一第一中断控制器,耦接该电源管理单元,接收该总线上的外围设备发出的一中断请求,据以通知该电源管理单元重新启动该主核。
13.根据权利要求12所述的多核处理器系统,其特征在于,该第一中断控制器耦接至该多核处理器中的一第二中断控制器,在该主核重新启动后,该第一中断控制器传送该中断请求至该第二中断控制器,由该第二中断控制器通知该主核服务该中断请求。
14.根据权利要求13所述的多核处理器系统,其特征在于,该第一中断控制器为一向量中断控制器,而该第二中断控制器为一通用中断控制器。
15.根据权利要求6所述的多核处理器系统,其特征在于,该多核处理器系统为一系统级芯片。
16.一种多核处理器系统的控制装置,其特征在于,该多核处理器系统包括一多核处理器及一电源管理单元,该多核处理器包括一主核及至少一副核,该电源管理单元耦接该主核及该至少一副核,该控制装置包括一电源管理暂存器,记录一总线主控状态,其中该总线主控状态为多个总线装置反映出该总线是否闲置的状态;一处理器调整单元,取得该多核处理器于一执行阶段的一工作负载以及该至少一副核的一工作状态,据以判断是否分别对该至少一副核执行一热插拔操作并对应输出一调整通知;以及一处理器热插拔单元,接收该调整通知,据以控制该电源管理单元分别对该至少一副核执行一热插拔操作。
全文摘要
一种多核处理器系统及其动态电源管理方法与控制装置。此方法先取得多核处理器于执行阶段的工作负载,而根据此工作负载以及各个副核的工作状态,分别对副核执行热插拔操作。然后,通过监测总线主控状态以及副核的工作状态,据以判断是否将主核关闭,其中所述的总线主控状态由多个总线装置反映总线状态所产生。最后,当总线主控状态为闲置状态时,将主核关闭。本发明可达到省电功效。
文档编号G06F1/32GK102566739SQ201210003639
公开日2012年7月11日 申请日期2012年1月6日 优先权日2012年1月6日
发明者刘明诚, 张国航, 詹浚玮, 齐宗普 申请人:威盛电子股份有限公司