系统芯片以及操作系统芯片的方法与流程

文档序号:18256280发布日期:2019-07-24 10:14阅读:408来源:国知局
系统芯片以及操作系统芯片的方法与流程

本申请要求于2017年10月30日在韩国知识产权局提交的韩国专利申请No.10-2017-0142872的优先权,该申请的公开以引用方式全文并入本文中。

技术领域

示例实施例整体涉及功率管理,并且更具体地说,涉及操作系统芯片的方法、执行所述方法的系统芯片和包括该系统芯片的电子系统。



背景技术:

系统芯片(SOC)是指在一个或几个半导体集成电路(IC)中集成各种功能块(例如,中央处理单元(CPU)、存储器、接口单元、数字信号处理单元、模拟信号处理单元等)的处理系统,以使用有限数量的IC来实现诸如计算机系统的电子系统。近年来,随着电子系统性能的提高或改进,已经开发了一种包括多个处理器核的系统芯片,并且研究人员正在进行关于优化包括在系统芯片中的多个处理器核的功率管理和性能的技术的各种研究项目。



技术实现要素:

本发明构思的至少一个示例实施例提供了一种操作系统芯片(SOC)的方法,能够基于允许功耗优化SOC的性能。

本发明构思的至少一个示例实施例提供了一种执行操作SOC的方法的SOC。

本发明构思的至少一个示例实施例提供了一种包括SOC的电子系统。

根据示例实施例,提供了一种操作包括多个处理器核的SOC的方法。所述方法可包括:基于SOC的允许功耗和所述多个处理器核的操作状态,将所述多个处理器核的操作频率设为第一操作频率,第一操作频率在所述多个处理器核的最大操作频率以内;通过所述多个处理器核中的至少一个处理器核基于第一操作频率执行至少一个处理操作;响应于确定SOC的当前功耗超过允许功耗,激活警告信号;以及在警告信号激活之后立即执行用于降低当前功耗的第一控制操作。

根据示例实施例,提供了一种SOC,该SOC可包括:动态电压和频率调节(DVFS)控制器,其被构造为基于SOC的允许功耗和所述多个处理器核的操作状态将多个处理器核的操作频率设为第一操作频率,第一操作频率在所述多个处理器核的最大操作频率以内;处理单元,其包括所述多个处理器核,并且被构造为基于第一操作频率执行至少一个处理操作;以及控制逻辑,其被构造为接收响应于确定SOC的当前功耗超过允许功耗而激活的警告信号,并且在激活警告信号之后立即执行用于降低当前功耗的第一控制操作。

根据示例实施例,提供了一种SOC,该SOC可包括:处理单元,其包括多个处理器核,并且被构造为基于第一操作电压或第一操作频率执行至少一个处理操作;动态电压和频率调节(DVFS)控制器,其被构造为根据活跃的处理器核的数量、所述至少一个处理操作的工作负载和所述至少一个处理操作的类型中的至少一个来改变分别大于或等于第一操作电压或第一操作频率的最大操作电压或最大操作频率;以及控制逻辑,其被构造为接收响应于确定SOC的当前功耗超过允许功耗而激活的警告信号,并且在激活警告信号之后降低当前操作电压或当前操作频率。

在根据示例实施例的操作SOC的方法和执行所述方法的SOC中,可在满足允许功耗的范围内不受限制地在不同设置频率之间确定所述多个处理器核的操作频率。另外,当SOC的当前功耗几乎达到允许功耗时,操作频率可基于警告信号减小,因此,SOC的功耗可不超过限定功耗。因此,SOC可在允许功耗内基于最高操作频率操作,并且SOC和包括SOC的电子系统的性能可最大化和最优化。

附图说明

通过以下结合附图的详细描述将更清楚地理解示出性、非限制性示例实施例。

图1是示出根据示例实施例的操作系统芯片(SOC)的方法的流程图。

图2是示出根据示例实施例的包括SOC的电子系统的框图。

图3A、图3B、图4A和图4B是用于描述根据示例实施例的包括在SOC中的多个处理器核的操作状态的图。

图5是用于描述图1的方法的时序图。

图6是示出根据示例实施例的操作SOC的方法的流程图。

图7是示出根据示例实施例的包括SOC的电子系统的框图。

图8是用于描述图6的方法的时序图。

图9和图10是示出根据示例实施例的操作SOC的方法的流程图。

图11和图12是用于描述图9和图10的方法的时序图。

图13和图14是示出根据示例实施例的包括SOC的电子系统的框图。

具体实施方式

将参照附图更完全地描述各个示例实施例。然而,本发明构思可按照许多不同形式实施,并且不应被理解为限于本文阐述的实施例。在实施例的说明中,相同附图标记始终指代相同元件。

图1是示出根据示例实施例的操作系统芯片(SOC)的方法的流程图。

参照图1,在根据示例实施例的操作SOC的方法中,SOC包括多个处理器核。基于SOC的允许功耗和多个处理器核的操作状态将多个处理器核的操作频率设为第一操作频率(S100)。第一操作频率在多个处理器核的最大操作频率以内。

SOC的允许功耗可表示由SOC在SOC正常工作或操作的其正常范围和限度内消耗的功率的可接受和/或最大的量。可在SOC的设计和/或制造的过程中预定允许功耗。多个处理器核的操作状态可包括实际工作或操作的处理器核的数量、实际工作或操作的处理器核执行的处理操作的工作负载等。将参照图3A、图3B、图4A和图4B详细描述SOC的允许功耗和多个处理器核的操作状态。第一操作频率可小于或等于最大操作频率。第一操作频率可表示用于优化的性能的操作频率,根据多个处理器核在多个处理器核正常地工作或操作的它们的正常范围和限度内的允许功耗和当前操作状态设置所述优化的性能。

多个处理器核中的至少一个处理器核基于第一操作频率执行至少一个处理操作(S200)。在执行所述至少一个处理操作的同时,确定SOC的当前功耗是否超过允许功耗(S310)。

当确定当前功耗不超过允许功耗时(S310:否),例如,当当前功耗小于或等于允许功耗时,多个处理器核中的至少一个处理器核基于第一操作频率连续地执行所述至少一个处理操作(S200)。

当确定当前功耗超过允许功耗时(S310:是),激活警告信号(S320)。例如,可由布置在SOC外部的功率管理集成电路(PMIC)提供警告信号或从其接收警告信号。

当当前功耗超过允许功耗时,SOC和/或包括SOC的计算系统或电子系统不会正常工作或操作,而是会异常地工作或操作。例如,当当前功耗超过允许功耗时,SOC会由于超过参考电流的过大的电流而被损坏或破坏,或者SOC会具有高于参考温度的高温,因此导致SOC和/或包括SOC的计算系统或电子系统的故障。因此,可激活警告信号以向SOC通知异常状态(例如,过大的电流、高温等)。

在激活警告信号之后立即执行用于降低当前功耗的第一控制操作(S400)。例如,第一控制操作可表示相对急迫、快速、迅速、显著和/或明显降低当前功耗的操作。将参照图5详细描述第一控制操作。

图2是示出根据示例实施例的包括SOC的电子系统的框图。

参照图2,电子系统10包括SOC 100、PMIC 200和存储器装置300。

在一些示例实施例中,电子系统10可为任何计算装置或者任何移动/便携式装置,诸如移动电话、智能电话、平板计算机、笔记本计算机、个人数字助理(PDA)、企业数字助理(EDA)、便携式多媒体播放器(PMP)、数码相机、便携式游戏控制台、音乐播放器、摄像机、视频播放器、导航装置、可穿戴装置、物联网(IoT)装置、万维网(IoE)装置、电子书、虚拟现实(VR)装置、增强现实(AR)装置、机器人装置等。

SOC 100执行根据示例实施例的图1的方法。SOC 100包括处理单元110、动态电压和频率调节(DVFS)控制器(DVFS CONT)120和控制逻辑130。SOC 100还可包括内部总线101、时钟管理单元(CMU)140、功率管理单元(PMU)150、存储器接口(MIF)160和输入/输出(I/O)接口(I/O IF)170。

在一些示例实施例中,SOC 100可为应用处理器(AP)、移动AP等。

处理单元110控制SOC 100的整体操作,并且执行诸如特定计算和任务的各种计算功能。例如,处理单元110可控制DVFS控制器120、存储器接口160和I/O接口170,并且可控制包括在SOC 100中的各种元件。处理单元110可基于第一时钟信号CLK和第一电源信号PWR操作。

处理单元110包括多个处理器核(CORE1、CORE2、CORE3和CORE4)112、114、116和118。换句话说,处理单元110可为多核处理单元。可驱动多个处理器核112、114、116和118中的至少一个处理器核以执行诸如特定计算、任务和控制的各种操作、工作或任务中的至少一个。

在一些示例实施例中,处理单元110可包括中央处理单元(CPU)或图形处理单元(GPU)。在其它示例实施例中,处理单元110可包括一个或多个处理器,例如,图像信号处理器(ISP)、数字信号处理器(DSP)、显示处理器、通信处理器(例如,调制解调器芯片)、多媒体处理器等。

DVFS控制器120可控制第一时钟信号CLK和第一电源信号PWR。例如,可在SOC 100中采用DVFS技术,并且DVFS控制器120可基于DVFS技术调整第一时钟信号CLK的频率和/或第一电源信号PWR的电压电平。DVFS技术表示动态地控制或调整SOC 100的操作频率和操作电压以降低功耗的技术。

虽然图2中未示出,但是处理单元110可包括测量性能参数或为其计数的性能监视器。例如,性能参数可包括指令周期、工作负载、缓存命中、缓存未命中、分支错误等。处理单元110可根据性能监视器的操作产生中断,并且DVFS控制器120可基于从处理单元110提供的中断产生用于控制第一时钟信号CLK的第一时钟控制信号CTRC和用于控制第一电源信号PWR的第一功率控制信号CTRP。

控制逻辑130从PMIC 200接收警告信号WS。如参照图1的描述,当SOC 100的当前功耗超过允许功耗时,激活警告信号WS,并且控制逻辑130可在激活警告信号WS之后立即产生第一控制信号CS1,从而基于第一控制信号CS1执行用于急迫地降低当前功耗的第一控制操作。

CMU 140可基于第一时钟控制信号CTRC产生用于处理单元110的第一时钟信号CLK。例如,CMU 140可基于第一时钟控制信号CTRC增大、保持或减小第一时钟信号CLK的频率。此外,CMU 140可基于第一控制信号CS1急迫地和显著地改变第一时钟信号CLK的频率。

PMU 150可监视SOC 100的当前功耗,可存储关于SOC的允许功耗100的信息,并且可将当前功耗与允许功耗进行比较。PMU 150可基于第一功率控制信号CTRP和/或比较操作的结果产生用于控制PMIC 200的功率管理控制信号CTRPM。

存储器接口160可控制或有利于SOC 100与存储器装置300之间的数据转移。例如,存储器接口160可根据处理单元110的控制并且基于分别与第一时钟信号CLK和第一电源信号PWR不同的第二时钟信号和第二电源信号控制关于存储器装置300的写操作或读操作。虽然图2中未示出,但是可从CMU 140和PMIC 200分别提供第二时钟信号和第二电源信号。例如,处理单元110可作为主装置操作,并且存储器接口160可作为从装置操作。

存储器装置300可布置在SOC 100外部,并且可经存储器接口160与SOC 100交换数据。在一些示例实施例中,存储器装置300可包括易失性存储器中的至少一个和/或非易失性存储器中的至少一个,易失性存储器诸如动态随机存取存储器(DRAM)、同步DRAM(SDRAM)、静态随机存取存储器(SRAM)等,非易失性存储器诸如电可擦除可编程只读存储器(EEPROM)、闪速存储器、相变随机存取存储器(PRAM)、电阻式随机存取存储器(RRAM)、磁性随机存取存储器(MRAM)、铁电随机存取存储器(FRAM)、纳米浮栅存储器(NFGM)或聚合物随机存取存储器(PoRAM)等。可替换地,存储器装置300可包括固态驱动器或固态盘(SSD)、嵌入式SSD(eSSD)、多媒体卡(MMC)、嵌入式MMC(eMMC)、通用闪速存储器(UFS)等。

I/O接口170可控制或有利于SOC 100与外部系统(未示出)之间的数据转移。例如,I/O接口170可根据处理单元110的控制并且基于分别与第一时钟信号CLK和第一电源信号PWR不同的第三时钟信号和第三电源信号控制SOC 100的数据输入操作或数据输出操作。第三时钟信号和第三电源信号也可分别与第二时钟信号和第二电源信号不同。虽然图2中未示出,但是可从CMU 140和PMIC 200分别提供第三时钟信号和第三电源信号。例如,处理单元110可作为主装置操作,并且I/O接口170可作为从装置操作。

在一些示例性实施例中,I/O接口170可支持串行高级技术附件(SATA)、快速SATA(SATAe)、SAS(串行附属小型计算机系统接口(SCSI))、快速外围组件互连快速非易失性存储器(NVMe)或移动工业处理器接口

处理单元110和存储器接口160或处理单元110和I/O接口170可经内部总线101彼此进行信号和/或数据通信。在一些示例实施例中,内部总线101可实施为先进微控制器总线体系结构先进高性能总线(AHB)、先进外围总线(APB)、先进可扩展接口(AXI)、先进系统总线(ASB)、AXI一致性扩展(ACE)或它们的组合。

PMIC 200可布置在SOC 100外部,并且可基于功率管理控制信号CTRPM产生用于处理单元110的第一电源信号PWR。例如,PMIC 200可基于功率管理控制信号CTRPM增大、保持或减小第一电源信号PWR的电压电平。此外,PMIC 200可基于功率管理控制信号CTRPM产生警告信号WS,并且可将警告信号WS提供至控制逻辑130。

在一些示例实施例中,处理单元110和控制逻辑130可实施为硬件。例如,处理单元110和控制逻辑130可包括在基于计算机的电子系统中。

在一些示例实施例中,DVFS控制器120、CMU 140和PMU 150的至少一部分可实施为硬件。例如,DVFS控制器120、CMU 140和PMU150的至少一部分可包括在基于计算机的电子系统中。在其它示例实施例中,DVFS控制器120、CMU 140和PMU 150的至少一部分可实施为指令或例行程序(例如,软件程序)。例如,指令或例行程序可由处理单元110执行,并且可被存储在包括在SOC 100中的内部贮存器(未示出)中或被存储在位于SOC 100外部的存储器装置300中。

在一些示例实施例中,SOC 100、存储器装置300和/或SOC 100和存储器装置300的组件可按照各种形式封装,诸如层叠封装(PoP)、球栅阵列(BGA)、芯片级封装(CSP)、塑料引脚芯片载体(PLCC)、塑料双列直插式封装(PDIP)、华夫组件晶片、华夫形式晶片、板上芯片(COB)、陶瓷双列直插封装(CERP)、塑料公制四方扁平封装(MQFP)、薄型四方扁平封装(TQFP)、小外形IC(SOIC)、收缩小外形封装(SSOP)、薄型小外形封装(TSOP)、系统封装(SIP)、多芯片封装(MCP)、晶圆级制造封装(WFP)或晶片级处理堆叠封装(WSP)。例如,在PoP的示例中,SOC 100可形成为第一封装件,存储器装置300可形成为第二封装件,并且第二封装件可堆叠在第一封装件上方。

根据示例实施例详细描述SOC 100的操作。首先,DVFS控制器120基于SOC 100的允许功耗和多个处理器核112、114、116和118的操作状态将多个处理器核112、114、116和118的操作频率设为第一操作频率。SOC 100的允许功耗是预定的,并且第一操作频率在多个处理器核112、114、116和118的最大操作频率以内。处理单元110基于第一操作频率驱动多个处理器核112、114、116和118中的至少一个处理器核,并且基于第一操作频率执行至少一个处理操作。PMU 150监视SOC 100的当前功耗。当当前功耗超过允许功耗时,PMU150基于功率管理控制信号CTRPM向PMIC 200通知关于超过当前功耗的信息,然后,PMIC 200激活警告信号WS。控制逻辑130在激活警告信号WS之后立即产生第一控制信号CS1,从而基于第一控制信号CS1执行急迫地降低当前功耗的第一控制操作。

尽管图2示出了DVFS控制器120设置多个处理器核112、114、116和118的操作频率的示例,但是根据示例实施例,布置在SOC 100内部并与处理单元110通信的任何控制器(未示出)可设置多个处理器核112、114、116和118的操作频率。

图3A、图3B、图4A和图4B是用于描述根据示例实施例的包括在SOC中的多个处理器核的操作状态的图。

参照图2、图3A和图3B,当SOC 100的功耗超过限定功耗LPL时,SOC 100会损坏或者会异常地操作(例如,会导致SOC 100的故障)。因此,可预先确定低于限定功耗LPL(例如,相对于限定功耗LPL还有特定裕量)的允许功耗PL,并且当SOC 100的功耗超过允许功耗PL时,可降低SOC 100的功耗。结果,可防止SOC 100的功耗超过限定功耗LPL。

在图3A的曲线图中,水平轴线表示流动通过SOC 100的电流I的量,并且竖直轴线表示SOC 100的操作电压V或操作频率f。由于通过将电压和电流相乘获得功耗(例如,P=V×I),因此分别具有恒定值的限定功耗LPL和允许功耗PL在图3A的曲线图中示为对角线。另外,由于操作电压V随着操作频率f增大而增大(例如,由于操作电压V和操作频率f彼此成比例),因此在同一竖直轴线中示出操作电压V和操作频率f。

在图3B的曲线图中,竖直轴线表示SOC 100的功耗P,并且CASE1、CASE2、CASE3和CASE4分别表示驱动了多个处理器核112、114、116和118中的一个处理器核、两个处理器核、三个处理器核和四个处理器核的示例。

如图3A和图3B所示,多个处理器核112、114、116和118的操作状态可包括用于执行至少一个处理操作的处理器核的数量。多个处理器核112、114、116和118的不同设置频率中的最大操作频率可随着用于执行所述至少一个处理操作的处理器核的数量增加而减小。

例如,如图3A所示,当驱动或操作一个处理器核(例如,处理器核112)时,流经SOC 100的电流I的量可为I1,并且允许功耗PL内,最大操作电压和最大操作频率可分别为相对高的电压和频率V1和f1。当驱动或操作两个处理器核(例如,处理器核112和114)时,流经SOC 100的电流I的量可为大于I1的I2,并且在允许功耗PL内,最大操作电压和最大操作频率可为分别低于V1和f1的V2和f2。相似地,当驱动或操作三个处理器核(例如,处理器核112、114和116)时,流经SOC 100的电流I的量可为大于I2的I3,并且在允许功耗PL内,最大操作电压和最大操作频率可为分别低于V2和f2的V3和f3。当驱动或操作四个处理器核(例如,处理器核112、114、116和118)时,流经SOC 100的电流I的量可为大于I3的I4,并且在允许功耗PL内,最大操作电压和最大操作频率可为分别低于V3和f3的V4和f4。在图3A中,I0表示在SOC 100被供电的同时电流I的默认量。

另外,如图3B所示,当基于相同操作频率驱动或操作处理器核时,功耗可根据用于执行所述至少一个处理操作的处理器核的数量而改变。例如,驱动两个处理器核的CASE2的功耗可大于驱动一个处理器核的CASE1的功耗。相似地,驱动三个处理器核的CASE3的功耗可大于CASE2的功耗,并且驱动四个处理器核的CASE4的功耗可大于CASE3的功耗。因此,随着用于执行所述至少一个处理操作的处理器核的数量减少,处理器核的操作频率可设得更高。

虽然基于图3A和图3B描述了处理器核的数量、最大操作频率与功耗之间的关系以及SOC 100包括四个处理器核112、114、116和118的示例,但是包括在SOC中的处理器核的数量可不限于此,而是可根据示例实施例改变。

在图4A的曲线图中,水平轴线表示通过SOC 100执行的处理操作的工作负载WL,并且竖直轴线表示SOC 100的操作频率f。在图4B的曲线图中,竖直轴线表示SOC 100的功耗P,CASEA表示执行相对低的工作负载量的处理操作的示例,CASEB表示执行相对高的工作负载量的处理操作的示例。

参照图2、图4A和图4B,多个处理器核112、114、116和118的操作状态可包括由多个处理器核112、114、116和118中的至少一个执行的至少一个处理操作的工作负载。例如,如图4A所示,多个处理器核112、114、116和118的不同设置频率中的最大操作频率f可随着所述至少一个处理操作的工作负载WL增加而减小。

另外,如图4B所示,当驱动或操作相同数量的(例如,两个)处理器核时,功耗可根据处理操作的类型而改变。例如,执行相对高的工作负载量的处理操作(例如,浮点计算)的CASEB的功耗可大于执行相对低的工作负载的处理操作(例如,整数计算)的CASEA的功耗。因此,处理器核的操作频率可随着处理操作的工作负载的量减小而设得较高。

在一些示例实施例中,多个处理器核112、114、116和118的操作状态可包括用于执行至少一个处理操作的处理器核的数量和所述至少一个处理操作的工作负载二者。换句话说,可根据处理器核的全部数量和工作负载确定最大操作频率。在一些示例实施例中,可根据除处理器核的数量和工作负载之外的各个参数中的至少一个或者它们的组合确定最大操作频率。

图5是用于描述图1的方法的时序图。

参照图1、图2和图5,在时间t11,SOC 100的当前功耗超过允许功耗,并且PMIC 200激活警告信号WS。例如,警告信号WS可从第一逻辑电平(例如,逻辑低电平)转变为第二逻辑电平(例如,逻辑高电平)。

在激活警告信号WS之后,控制逻辑130执行用于立即减小当前功耗的第一控制操作。例如,控制逻辑130可响应于警告信号WS的边沿产生第一控制信号CS1,以基于第一控制信号CS1执行第一控制操作。

CMU 140基于第一控制信号CS1执行第一控制操作。例如,CMU140可响应于第一控制信号CS1急迫地和显著地降低对应于多个处理器核112、114、116和118的操作频率的第一时钟信号CLK的频率FCLK。例如,第一时钟信号CLK的频率FCLK可一次从第一操作频率F1降至比第一操作频率F1低第一频率FCU1的操作频率F2。换句话说,第一时钟信号CLK的频率FCLK可一次降低第一频率FCU1。图5中的第一频率FCU1可比图8中的第二频率FCU2大得多。例如,在执行第一控制操作之后,第一时钟信号CLK的频率FCLK可降低约第一操作频率F1的一半。

在时间t12,当在执行第一控制操作之后过去预定时间时(例如,当当前功耗变得小于允许功耗时),将警告信号WS去激活。当警告信号WS被去激活时,第一时钟信号CLK的频率FCLK可恢复或回到第一操作频率F1。

虽然基于图5和第一时钟信号CLK的频率FCLK一次降低第一频率FCU1的示例描述了第一控制操作,但是本发明构思可不限于此。例如,第一控制操作中的频率FCLK的减小次数可在SOC的设计和/或制造过程中不同地设置,并且第一时钟信号CLK的频率FCLK可减小例如两次、三次等。然而,频率FCLK减小的次数可不变,并且一旦设置或建立就可固定。

虽然基于减小第一时钟信号CLK的频率FCLK的示例描述了第一控制操作,但是本发明构思可不限于此。例如,第一控制操作可为用于急迫地和显著地减小当前功耗的任何操作,诸如减小第一电源信号PWR的电压电平的操作、使多个处理器核112、114、116和118中的至少一个停止的操作、使至少一个处理操作停止或将其跳过的操作等。

图6是示出根据示例实施例的操作SOC的方法的流程图。

参照图6,图6的示例可与图1的示例基本相同,不同的是,图6中还包括操作S510和S520。图6中的操作S100、S200、S310、S320和S400可分别与图1中的步骤S100、S200、S310、S320和S400基本相同,因此省略重复描述。

在根据示例实施例的操作SOC的方法中,SOC的当前功耗在执行用于降低当前功耗的第一控制操作之后可仍超过允许功耗。在这种情况下,可进一步执行用于降低当前功耗的额外操作。

例如,在执行第一控制操作(S400)之后,可确定警告信号的激活是否持续等于或大于第一时间间隔(S510)。

当警告信号的激活时间比第一时间间隔更长时(S510:是),例如,当即使执行第一控制操作,SOC的当前功耗仍超过允许功耗时,可执行用于额外降低当前功耗的第二控制操作(S520)。例如,与第一控制操作不同,第二控制操作可表示相对缓慢地、渐渐地、平稳地和一步步地降低当前功耗的操作。将参照图8详细描述第二控制操作。

当警告信号的激活时间比第一时间间隔更短或相等时(S510:否),可表示SOC的当前功耗已经小于允许功耗,并且可已经将警告信号去激活。因此,可在不进行任何额外操作的前提下终止根据示例实施例的操作SOC的方法。可替换地,根据示例实施例,可通过SOC执行其余处理操作,或者通过SOC的随后的处理操作可排队进行。

图7是示出根据示例实施例的包括SOC的电子系统的框图。

参照图7,图7的电子系统10可与图2的电子系统10基本相同,不同的是,图7中的控制逻辑130还产生第二控制信号CS2。图7中的SOC 100、内部总线101、处理单元110、多个处理器核112、114、116和118、DVFS控制器120、控制逻辑130、CMU 140、PMU 150、存储器接口160、I/O接口170、PMIC 200和存储器装置300可分别与图2中的SOC 100、内部总线101、处理单元110、多个处理器核112、114、116和118、DVFS控制器120、控制逻辑130、CMU 140、PMU 150、存储器接口160、I/O接口170、PMIC 200和存储器装置300基本相同。因此,省略重复描述。

图7中的控制逻辑130可在激活警告信号WS之后立即产生第一控制信号CS1,从而基于第一控制信号CS1执行用于急迫地降低当前功耗的第一控制操作。另外,当警告信号WS的激活持续等于或大于预定时间间隔时,例如,当警告信号WS的激活时间比第一时间间隔长时,图7中的控制逻辑130可产生第二控制信号CS2,以基于第二控制信号CS2执行用于格外降低当前功耗的第二控制操作。

图8是用于描述图6的方法的时序图。

参照图6、图7和图8,在时间t21的操作可与图5中的在时间t11的操作基本相同,因此省略重复描述。

SOC 100的当前功耗在时间t21之后仍超过允许功耗,因此,PMIC200仍保持警告信号WS的激活。

在时间t22,警告信号WS被去激活。当警告信号WS的激活时间比第一时间间隔更长时,例如,当从时间t21至时间t22的时间间隔比第一时间间隔更长时,控制逻辑130执行用于额外降低当前功耗的第二控制操作。例如,控制逻辑130可产生第二控制信号CS2,以基于第二控制信号CS2执行第二控制操作。例如,控制逻辑130可包括用于确定警告信号WS的激活时间是否比第一时间间隔更长的定时器或计数器。

DVFS控制器120和CMU 140基于第二控制信号CS2执行第二控制操作。例如,DVFS控制器120可响应于第二控制信号CS2控制第一时钟控制信号CTRC,并且CMU 140可响应于第二控制信号CS2降低对应于多个处理器核112、114、116和118的操作频率的第一时钟信号CLK的频率FCLK。在降低第一时钟信号CLK的频率FCLK并因此当前功耗变得小于允许功耗之后,警告信号WS可在t22被去激活。当在时间t22将警告信号WS去激活时,第一时钟信号CLK的频率FCLK可从操作频率F2增大至高于操作频率F2的操作频率F3。时间t22之后的操作频率F3可比第一操作频率F1低第二频率FCU2。换句话说,当将警告信号WS去激活并且当第一时钟信号CLK的频率FCLK将被恢复时,第一时钟信号CLK的频率FCLK可恢复至比第一操作频率F1低第二频率FCU2的操作频率F3。第二频率FCU2可比图5中的第一频率FCU1小得多。

虽然基于图8和第一时钟信号CLK的频率FCLK一次减小第二频率FCU2的示例描述了第二控制操作,但是本发明构思可不限于此。例如,如将要参照图11和图12描述的那样,在第二控制操作中将频率FCLK降低的次数可根据第二频率FCU2、当前功耗与允许功耗之间的差等来改变。

虽然基于减小第一时钟信号CLK的频率FCLK的示例描述了第二控制操作,但是本发明构思可不限于此。例如,第二控制操作可为用于额外降低当前功耗的任何操作,诸如降低第一电源信号PWR的电压电平的操作等。

图9和图10是示出根据示例实施例的操作SOC的方法的流程图。

参照图9和图10,图9和图10的示例可分别与图1和图6的示例基本相同,不同的是,在图9和图10中还包括操作S610和S640。因此,省略重复描述。

在根据示例实施例的操作SOC的方法中,在执行用于降低当前功耗的第一控制操作(S400)之后,或者在执行用于额外降低当前功耗的第二控制操作(S520)之后,可再次确定当前功耗是否超过允许功耗(S610)。

当当前功耗超过允许功耗时(S610:否),可将警告信号再次激活(S320),然后在图9的示例中可重复操作S400,或者在图10的示例中可重复操作S400、S510和S520。

当当前功耗变得小于允许功耗时(S610:是),可将警告信号去激活,如参照图5和图8的描述,然后可确定当前功耗是否低于第一功耗(S640)。

当当前功耗大于或等于第一功耗时(S640:否),可表示SOC应该基于在操作S400中通过第一控制操作和/或在操作S520中通过第二控制操作降低的操作频率执行所述至少一个处理操作。在这种情况下,可在保持减小的操作频率的情况下执行操作S200。换句话说,可基于减小的操作频率通过SOC执行其余处理操作,或者通过SOC的以下处理操作可基于减小的操作频率排队进行。

当当前功耗变得低于第一功耗时(S640:是),可表示如果SOC基于降低的操作频率执行所述至少一个处理操作,则SOC的性能将降低。在这种情况下,可为了增大操作频率执行操作S100。

例如,可基于允许功耗以及多个处理器核的操作状态将多个处理器核的操作频率设为最大操作频率内的第一操作频率。可替换地,可将多个处理器核的操作频率设为与第一操作频率不同的第二操作频率。

图11和图12是用于描述图9和图10的方法的时序图。

参照图9、图10和图11,在时间t31和时间t32的操作可分别与图8中的在时间t21和时间t22的操作基本相同,因此省略重复描述。

在时间t32将警告信号WS去激活之后,当前功耗再次超过允许功耗。在时间t33,将警告信号WS再次激活,因此再次执行第一控制操作。例如,第一时钟信号CLK的频率FCLK可从操作频率F3一次降低至比操作频率F3低第一频率FCU1的操作频率F4。

在时间t34,当在执行第一控制操作之后过去了预定时间时,将警告信号WS去激活。当警告信号WS的激活时间比第一时间间隔更长时,例如,当从时间t33至时间t34的时间间隔比第一时间间隔更长时,再次执行第二控制操作。例如,第一时钟信号CLK的频率FCLK可从操作频率F4增大至高于操作频率F4的操作频率F5。在时间t34之后的操作频率F5可比操作频率F3低第二频率FCU2。换句话说,当连续(例如,重复)地执行第二控制操作时,第一时钟信号CLK的频率FCLK可一步步地降低第二频率FCU2。

在时间t35,在时间t34将警告信号WS去激活之后,当前功耗变得低于第一功耗。可基于允许功耗和多个处理器核112、114、116和118的操作状态将对应于多个处理器核112、114、116和118的操作频率的第一时钟信号CLK的频率FCLK再次设为第一操作频率。

在一些示例实施例中,如图11所示,当多个处理器核112、114、116和118的在时间t31之前的操作状态与多个处理器核112、114、116和118的在时间t35之后的操作状态基本相同时,在时间t31之前的第一时钟信号CLK的频率FCLK和在时间t35之后的第一时钟信号CLK的频率FCLK可基本彼此相同(例如,第一操作频率F1)。在其它示例实施例中,虽然图11中未示出,但是当多个处理器核112、114、116和118的在时间t31之前的操作状态与多个处理器核112、114、116和118的在时间t35之后的操作状态不同时,在时间t31之前的第一时钟信号CLK的频率FCLK和在时间t35之后的第一时钟信号CLK的频率FCLK可彼此不同。

参照图9、图10和图12,在时间t41和时间t42的操作可分别与图5中的在时间t11和时间t12的操作基本相同,在时间t43和时间t44的操作可分别与图8中的在时间t21和时间t22的操作基本相同,并且在时间t45、时间t46和时间t47的操作可分别与图11中的在时间t33、时间t34和时间t35的操作基本相同。因此,省略重复描述。

虽然图11和图12中未示出,但是在图11中的时间t33之后或图12中的时间t43或时间t45之后,当警告信号WS的激活时间比第一时间间隔更短或相等时,可省略第二控制操作。

在相关技术SOC中,可通过搜索满足SOC以最大功耗执行处理操作的限制的最大操作频率来确定多核处理单元的最大操作频率。然而,无论实际工作或操作的处理器核的数量和/或处理操作的类型如何,相关技术的SOC由于具有单个最大操作频率而存在问题。

例如,当基于相同操作频率驱动或操作处理器核时,驱动两个处理器核的情况下的功耗与驱动四个处理器核的情况下的功耗不同。因此,随着实际工作或操作的处理器核的数量减少,可将操作频率或最大操作频率可设为更高,然而,因为相关技术的SOC具有单个最大操作频率,所以相关技术的SOC不能按照这种方式实施。对于另一示例,当驱动或操作相同数量的处理器核时,执行整数计算的情况的功耗与执行浮点计算的情况的功耗不同。因此,随着处理操作的工作负载的量减小,可将操作频率或最大操作频率可设为更高,然而,因为相关技术的SOC具有单个最大操作频率,所以相关技术的SOC不能按照这种方式实施。换句话说,在相关技术的SOC中,可基于最大功耗的处理操作确定单个最大操作频率,因此当实际工作或操作的处理器核的数量减少或者执行相对低的工作负载的处理操作时,不能最大化或最优化相关技术的SOC的性能。

在根据示例实施例的操作SOC 100的方法和执行所述方法的SOC中,可在满足允许功耗PL的范围内不受限制地在不同的设置频率中确定多个处理器核112、114、116和118的操作频率。另外,当SOC100的当前功耗几乎达到允许功耗PL时,可基于从PMIC 200提供的警告信号WS降低操作频率,因此SOC 100的功耗可不超过限定功耗LPL。因此,SOC 100可在允许功耗PL内基于最高操作频率操作,可最大化和最优化SOC 100和包括SOC 100的电子系统10的性能。

虽然基于控制或调整包括在处理单元110中的多个处理器核112、114、116和118的操作频率的示例描述了以上示例实施例,但是本发明构思可不限于此。例如,当处理单元110实施为CPU时,可在除CPU以外的非CPU知识产权(IP)采用本发明构思。

非CPU IP可表示不具有CPU的IP,并且该IP可为具有定制设计特征和/或功能的硬件模块。例如,非CPU IP可操作为CPU的从装置,并且可包括图2中的存储器接口160和I/O接口170。如上所述,虽然图2中未示出,但是存储器接口160可基于第二时钟信号和第二电源信号操作,并且I/O接口170可基于第三时钟信号和第三电源信号操作。根据示例实施例,可基于SOC 100的允许功耗以及存储器接口160和/或I/O接口170的操作状态在最大操作频率内设置第二时钟信号的频率和/或第三时钟信号的频率。

可替换地,可在处理单元110(例如,CPU)和非CPU IP二者中采用本发明构思。

图13和图14是示出根据示例实施例的包括SOC的电子系统的框图。

参照图13,图13的电子系统10a和SOC 100a可分别与图2的电子系统10和SOC 100基本相同,不同的是,图13中的控制逻辑130a布置在或位于图13中的处理单元110a内。因此,省略重复描述。

参照图14,图14的电子系统10b和SOC 100b可分别与图2的电子系统10和SOC 100基本相同,不同的是,图14中的控制逻辑130b布置在或位于图14中的CMU 140b内。因此,省略重复描述。

在一些示例实施例中,如图7所示,图13中的控制逻辑130a或图14中的控制逻辑130b还可产生第二控制信号CS2。

本领域技术人员应该理解,本发明构思可实现为系统、方法、计算机程序产品和/或在其上实现了计算机可读程序代码的一个或多个计算机可读介质中实现的计算机程序产品。可将计算机可读程序代码提供至通用计算机、专用计算机或其它可编程数据处理设备的处理器。计算机可读介质可为计算机可读信号介质或计算机可读存储介质。计算机可读存储介质可为可包含或存储由指令执行系统、设备或装置使用或与其结合使用的程序的任何有形介质。例如,计算机可读介质可为非暂时性计算机可读介质。

本发明构思可应用于各种SOC或包括SOC的系统,诸如移动电话、智能电话、PDA、PMP、数码相机、数字电视、机顶盒、音乐播放器、便携式游戏控制台、导航装置、PC、服务器计算机、工作站、平板计算机、笔记本计算机、智能卡、打印机、可穿戴装置、IoT装置、IoE装置、电子书、VR装置、AR装置、机器人装置等。

以上示出了示例实施例,并且不应将其理解为是示例实施例的限制。虽然已经描述了几个示例实施例,但是本领域技术人员应该容易理解,在不实质脱离本发明构思的示例实施例的新颖教导和优点的情况下,示例实施例中的许多修改都是可能的。因此,所有这些修改旨在被包括在如权利要求限定的本发明构思的示例实施例的范围内。因此,应该理解,以上示出了各个示例实施例,并且不应将其理解为限于公开的特定示例实施例,并且对公开的示例实施例的修改形式以及其它示例实施例旨在被包括在权利要求的范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1