操作片上系统的方法、片上系统和电子系统与流程

文档序号:14910610发布日期:2018-07-10 23:18阅读:219来源:国知局

本申请要求于2016年12月30日在韩国知识产权局(KIPO)提交的韩国专利申请10-2016-0183423的优先权,其公开内容通过引用整体并入本文。

技术领域

符合示例实施例的设备和方法涉及功率管理,并且更具体地涉及操作片上系统的方法,执行该方法的片上系统和包括片上系统的电子系统。



背景技术:

片上系统(SOC)是指一种处理系统,将各种功能块(例如,中央处理单元、存储器、接口单元、数字信号处理单元、模拟信号处理单元等)集成到单个或几个半导体集成电路(TC)来实现诸如计算机系统之类的使用有限数目的IC的电子系统。动态电压和频率缩放(DVFS)在SOC中已被用于降低功耗。DVFS代表了一种动态控制或调整操作频率和操作电压的技术。



技术实现要素:

根据示例实施例,提供了一种操作片上系统(SOC)的方法,所述片上系统包括中央处理单元(CPU)和应用了动态电压和频率缩放(DVFS)的目标硬件。该方法包括:确定目标硬件的操作方案;基于目标硬件的操作方案,设置用于将DVFS应用于目标硬件的DVFS应用方案;以及基于DVFS应用在目标硬件上执行DVFS方案。

根据示例实施例,提供了一种片上系统(SOC),包括:目标硬件,应用了动态电压和频率缩放(DVFS),以及DVFS控制器,被配置为确定目标硬件的操作方案,基于目标硬件的操作方案,设置用于将DVFS应用于目标硬件的DVFS应用方案,并且基于DVFS应用方案,产生用于在目标硬件上执行DVFS的第一控制信号和第二控制信号。SOC还包括:中央处理单元(CPU),被配置为控制目标硬件和DVFS控制器,以及时钟管理单元,被配置为基于第一控制信号产生时钟信号并将时钟信号提供给目标硬件。

根据示例实施例,提供了一种电子系统,包括:片上系统(SOC),电源管理集成电路(PMIC),被配置为向SOC提供电源信号,以及与由SOC执行的动态电压和频率缩放(DVFS)相关联的触发信号。SOC包括:目标硬件,应用了DVFS;DVFS控制器,被配置为确定目标硬件的操作方案,基于目标硬件的操作方案,设置用于将DVFS应用于目标硬件的DVFS应用方案,并基于DVFS应用方案产生用于在目标硬件上执行DVFS的第一控制信号和第二控制信号。SOC还包括:中央处理单元(CPU),被配置为控制目标硬件和DVFS控制器;以及时钟管理单元(CMU),被配置为基于第一控制信号产生时钟信号并将时钟信号提供给目标硬件。

根据示例实施例,提供了一种片上系统(SOC),包括:目标硬件,应用了动态电压和频率缩放(DVFS);以及DVFS控制器,被配置为检测表示目标事件是否要由所述目标硬件执行的触发信号,响应于所述触发信号被激活,将所述目标硬件的监视操作的周期设置为第一周期中的一个,并且将所述监视操作的起始点设置为基本上等于触发信号被激活的起始点,并且基于监视操作的周期和起始点产生用于执行监视操作的控制信号。SOC还包括:时钟管理单元(CMU),被配置为基于控制信号产生时钟信号,并向所述目标硬件提供所述时钟信号。

附图说明

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

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

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

图4和图5是用于描述操作图3的SOC的方法的图。

图6是示出了根据示例实施例的包括SOC的电子系统的框图;

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

图8和图9是用于描述操作图7的SOC的方法的图。

图10是示出了根据示例实施例的包括SOC的电子系统的框图;

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

图12是用于描述操作图11的SOC的方法的图。

图13和图14是根据示例实施例的用于描述操作SOC的方法的图。

图15和图16是示出了根据示例实施例的包括SOC的电子系统的图。

图17是示出了根据示例实施例的电子系统中包括的接口的框图。

具体实施方式

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

参考图1,在根据示例实施例的操作SOC的方法中,确定目标硬件的操作方案(步骤S100)。SOC包括中央处理单元(CPU)和应用了动态电压和频率缩放(DVFS)的目标硬件。目标硬件可以是CPU以外的非CPU知识产权产品(IP)。换句话说,示例实施例中要描述的DVFS可以在非CPU IP上执行。非CPU IP可以表示不具有CPU的IP,并且IP可以是具有定制设计特征和/或功能的硬件模块。将参考图2描述SOC的配置。

基于目标硬件的操作方案来设置用于将DVFS应用于目标硬件的DVFS应用方案(步骤S200)。基于DVFS应用方案在目标硬件上执行DVFS(步骤S300)。在下文中,基于DVFS应用于非CPU IP,在非CPU IP上执行或实行DVFS的示例来描述根据示例实施例的操作SOC的方法。

在示例实施例中,目标硬件的操作方案可以包括用于由目标硬件执行的第一目标事件的第一单元操作,并且DVFS应用方案可以包括目标硬件的监视操作的起始点。在这个示例中,如将参考图2至图5描述的,DVFS应用方案可以通过将目标硬件的监视操作的起始点与第一单元操作的起始点匹配来设置。

在其他示例实施例中,目标硬件的操作方案可以包括用于由目标硬件执行的第二目标事件的第二单元操作。第二目标事件和第二单元操作可以分别与第一目标事件和第一单元操作不同。在这个示例中,如将参考图6至图9描述的,DVFS应用方案可以通过将目标硬件的监视操作的起始点与第二单元操作的起始点匹配来设置。

在其他示例实施例中,目标硬件的操作方案可以包括第一单元操作和第二单元操作。在这个示例中,如将参考图10至图12描述的,DVFS应用方案可以基于第一目标事件和第二目标事件的优先级,通过将目标硬件的监视操作的起始点与第一单元操作和第二单元操作中的一个的起始点匹配来设置。备选地,如将参考图13和图14所描述的,目标硬件的操作方案可以包括多于三个的单元操作。

基于预定且固定的周期或者只有当CPU正常操作时,DVFS已经在CPU上周期性地执行或者实行。类似地,DVFS可以周期性地在非CPU IP上执行或实行。在一个CPU绑定作业(例如,一个核心绑定作业或一个计算绑定作业)的示例中,即使DVFS周期性地在非CPU IP上执行或实行,DVFS效率也不会降低。但是,在存储器绑定作业的示例中,当DVFS周期性地在非CPU IP上执行或实行时,DVFS效率可能会降低。

在根据示例实施例的操作SOC的方法中,可以基于目标硬件的操作方案,即非CPU TP来设置优化的DVFS应用方案,并且DVFS可以基于优化的DVFS应用方案在目标硬件上执行或实行。例如,可以动态地控制或调整目标硬件的监视操作的起始点,从而可以控制或调整监视操作的周期和DVFS的周期。相应地,可以减少SOC中的不必要的功耗,并且SOC可以具有相对提高的功率效率和改善的性能。

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

参考图2,电子系统10包括SOC 100、电源管理集成电路(PMIC)200、存储设备300和触发对象400。

在示例实施例中,电子系统10可以是任何计算设备或任何移动/便携式设备,例如移动电话、智能电话、平板电脑、膝上型计算机、个人数字助理(PDA)、便携式多媒体播放器(PMP)、数码相机、便携式游戏机、音乐播放器、摄录机、视频播放器、导航装置、可穿戴设备、物联网(IoT)设备、万能互联网设备(IoE)、电子书、虚拟现实(VR)设备、增强现实(AR)设备、机器人设备等。

SOC 100包括CPU 101、DVFS控制器110、存储器接口(MIF)120、具有总线(INTB)的内部逻辑电路130以及时钟管理单元(CMU)170。SOC100还可以包括第一性能监视单元(PPMU)122、第二PPMU132、定时器140、中断控制器(INTC)150和电源管理单元(PMU)160。

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

存储器接口120控制或有助于SOC 100与存储设备300之间的数据传输。存储器接口120可以基于第一时钟信号CLK1和第一电源信号PWR1来操作。根据示例实施例,存储器接口120可以是应用了DVFS的目标硬件。例如,当DVFS在存储器接口120上执行或实行时,可以动态地控制或调整(例如,增加、保持或降低)所述第一时钟信号CLK1的频率和所述第一电源信号PWR1的电压电平。

第一PPMU 122可以监视存储器接口120的性能。例如,第一PPMU122可以监视提供给存储器接口120的第一时钟信号CLK1的频率、存储器接口120的数据业务比率和/或存储器接口120的使用(或利用率)。作为存储器接口120的监视操作的结果,第一PPMU 122可以产生第一监视信号MT1。数据业务比率可以表示传输数据的实际频率与第一时钟信号CLK1的参考频率(例如,原始频率)的比率。存储器接口120的使用可以表示实际使用存储器接口120的时间间隔与参考时间间隔(例如,预定且固定的时间间隔)的比率。

内部逻辑电路130包括总线和与内部数据传送相关联的各种逻辑电路。内部逻辑电路130可以基于第二时钟信号CLK2和第二电源信号PWR2进行操作。根据示例实施例,内部逻辑电路130可以是应用了DVFS的目标硬件。例如,当在内部逻辑电路130上执行或实行DVFS时,可以动态地控制或调整第二时钟信号CLK2的频率和第二电源信号PWR2的电压电平。

第二PPMU 132可以监视内部逻辑电路130的性能。例如,第二PPMU 132可以监视提供给内部逻辑电路130的第二时钟信号CLK2的频率、内部逻辑电路130的数据业务量率和/或内部逻辑电路130的使用。作为内部逻辑电路130的监视操作的结果,第二PPMU 132可以产生第二监视信号MT2。

CPU 101控制SOC 100的整体操作。CPU 101可以控制诸如存储器接口120、内部逻辑130等的目标硬件,可以控制DVFS控制器110,并且可以控制SOC 100中包括的各种元件。CPU 101可以基于第三时钟信号CLK3和第三电源信号PWR3进行操作。在示例实施例中,CPU 101可以包括单个处理器核或多个处理器核。

DVFS控制器110执行根据示例实施例操作SOC的方法。DVFS控制器110确定目标硬件(例如,存储器接口120、内部逻辑130)的操作方案,基于目标硬件的操作方案,设置用于将DVFS应用于目标硬件的DVFS应用方案,并基于DVFS应用方案产生用于在目标硬件上执行DVFS的第一控制信号CTR1和第二控制信号CTR2。

DVFS控制器110可以包括聚焦目标标识符(FTI)112、DVFS触发单元(DT)114和总线业务量监视单元(BTM)116。

总线业务量监视单元116可以读取或接收表示存储器接口120的监视操作的结果的第一监视信号MT1和表示内部逻辑电路130的监视操作的结果的第二监视信号MT2。这里,第一PPMU 122和第二PPMU 132中的每一个可以操作为DVFS控制器110的从设备或者控制DVFS控制器110的CPU 101的从设备。

聚焦目标标识符112可以基于由触发对象400产生的触发信号(例如,第一触发信号TRGD)或者基于由中断控制器150产生的中断(例如,第一中断ITRD和/或第二中断ITRD)来确定目标硬件的操作方案。目标硬件的操作方案可以另外基于存储器接口120和内部逻辑电路130的监视操作的结果来确定。换句话说,聚焦目标标识符112可以检测聚焦IP,是用于改变DVFS应用方案的非CPU IP中的一个。

DVFS触发单元114可以基于目标硬件的操作方案(例如,聚焦的IP的状态、数据业务量比率和使用)来设置目标硬件的DVFS应用方案。DVFS触发单元114可以基于DVFS应用方案来产生第一控制信号CTR1和第二控制信号CTR2。换句话说,DVFS触发单元114可以控制或调整(例如,增加、维持或减少)针对目标硬件的监视操作的周期和DVFS的周期。

在示例实施例中,DVFS控制器110的至少一部分可以被实现为硬件。例如,DVFS控制器110可以是依赖于CPU 101的子CPU。在其他示例实施例中,DVFS控制器110的至少一部分可以被实现为指令或程序例程(例如,软件程序)。例如,指令或程序例程可以由CPU 101或者子CPU执行,并且可以存储在SOC 100中包括的内部存储器或者位于SOC 100外部的存储设备300中。

CMU 170基于第一控制信号CTR1产生用于目标硬件的第一时钟信号CLK1和第二时钟信号CLK2。例如,基于第一控制信号CTR1,CMU170可以增加、保持或降低第一时钟信号CLK1和第二时钟信号CLK2中的每一个的频率。CMU 170还可以为CPU 101产生第三时钟信号CLK3。

PMIC 200基于第二控制信号CTR2产生用于目标硬件的第一电源信号PWR1和第二电源信号PWR2。例如,PMIC 200可以基于第二控制信号CTR2来增加,保持或降低第一电源信号PWR1和第二电源信号PWR2中的每一个的电压电平。PMIC 200还可以产生CPU 101的第三电源信号PWR3。

触发对象400产生与由SOC 100执行的(例如,在目标硬件上执行或实行的)DVFS相关联的第一触发信号TRGD。例如,第一触发信号TRGD可以表示是否要执行第一目标事件(例如,目标硬件是否要用于第一目标事件)。当第一目标事件被执行时,第一触发信号TRGD可以被激活,并且当第一目标事件不被执行时,第一触发信号TRGD可以被去激活。例如,第一个目标事件可以是存储器绑定作业。

在示例实施例中,触发对象400可以包括由用户控制的用户接口,使得执行第一目标事件的操作由该用户接口引起。例如,触发对象400可以包括至少一个输入设备,例如键盘、键区、触摸屏、触摸笔、按钮、麦克风、模拟棒等。在其他示例实施例中,触发对象400可以是任何对象,使得执行第一目标事件的操作由该对象引起。

中断控制器150可以在每个调度时间,基于第一触发信号TRGD以及中断控制信号ITC产生中断。例如,当第一触发信号TRGD被激活时,中断控制器150可以在多个第一周期中的每一个中产生第一中断ITRD,并且当第一触发信号TRGD被去激活时,可以在多个第二周期中的每一个中产生第二中断ITRB。

定时器140可以在多个第二周期中的每个周期中产生中断控制信号ITC,并且可以响应于第一中断ITRD而被初始化。例如,定时器140可以是松弛定时器。每当产生第一中断ITRD时,松弛定时器可以被初始化(例如,待定松弛被取消),然后松弛定时器的计时操作可以从第一时间开始。如果在第二周期内没有产生第一中断ITRD,则可以结束或完成松弛定时器的计时操作,然后产生中断控制信号ITC。中断控制器150可以响应于中断控制信号ITC而产生第二中断ITRB。

PMU 160可以基于中断控制器150的控制来控制对CPU 101的供电。例如,PMU 160可以控制能够将CPU 101的状态从空闲状态改变到运行状态或从运行状态改变到空闲状态的供电。例如,空闲状态可以包括低功率模式或深度掉电模式。

存储设备300可以经由存储器接口120与SOC 100交换数据。在示例实施例中,存储设备300可以包括至少一个易失性存储器,例如动态随机存取存储器(DRAM)、同步DRAM(SDRAM),静态随机存取存储器(SRAM)等、和/或至少一个非易失性存储器,例如电可擦除可编程只读存储器(EEPROM)、闪速存储器、相变随机存取存储器(PRAM)、电阻随机存取存储器(RRAM)、磁随机存取存储器(MRAM)、铁电随机存取存储器(FRAM)、纳米浮栅存储器(NFGM)或聚合物随机存取存储器(PoRAM)等。

虽然图2为了方便说明而示出了包括存储器接口120和内部逻辑130作为目标硬件(例如,非CPU IP)的SOC 100,但是根据示例实施例的目标硬件还可以包括图形处理单元(GPU)、图像信号处理器(ISP)、显示处理器、通信处理器等。

DVFS也可以被应用于CPU101,在CPU101上执行或实行。与用于目标硬件(例如,非CPU IP)的DVFS不同,可以基于预定且固定的周期周期性地执行或者实行用于CPU 101的DVFS。换句话说,用于目标硬件的DVFS和用于CPU 101的DVFS可以基于不同的方案来执行或实行。

图3是示出了根据示例实施例的操作SOC的方法的流程图。图4和图5是用于描述操作图3的SOC的方法的图。

在图4中,“ITR”表示由图2中的中断控制器150产生的中断(例如,第一中断ITRD和第二中断ITRB)。参考标记“ITR”上的每个白色箭头和每个黑色箭头分别表示第二中断ITRB和第一中断ITRD。在图4中,“DVFS”表示执行DVFS的操作。参考标记“DVFS”上的每个阴影箭头表示执行目标硬件的监视操作和提供给目标硬件的时钟信号和电源信号的控制。

参考图2、图3和图4,在根据示例实施例的操作SOC 100的方法中,激活或检测表示是否要执行第一目标事件的第一触发信号TRGD(步骤S110)。例如,第一目标事件可以表示由包括SOC100的电子系统10执行的屏幕更新操作。例如,可以响应于VSYNC中断来执行屏幕更新操作,并且由目标硬件执行的用于第一目标事件的第一单元操作可以表示响应于VSYNC中断而执行的帧改变操作。

当第一触发信号TRGD被去激活(步骤S110:否)时,例如当第一触发信号TRGD具有逻辑低电平时,在每个第二周期TN中产生第二中断ITRB(步骤S140)。例如,由于第一中断ITRD未产生,所以定时器140可以在每个第二周T0N中产生中断控制信号ITC,并且因此中断控制器150可以响应于中断控制信号ITC而在每个第二周期TN中产生第二中断ITRB。

当第一触发信号TRGD被去激活时(步骤S110:否),则基于第二中断ITRB确定第一目标事件未被执行(步骤S150)。在这种情况下,目标硬件的监视操作的周期被设置为第二周期TN,使得监视操作的起始点基本上等于第二中断ITRB的产生点(步骤S220)。例如,如图4所示,阴影箭头与白色箭头相匹配。换句话说,阴影箭头的位置可以基本上等于白色箭头的位置。例如,步骤S150和S220可以由DVFS控制器110执行。

基于设置的周期(例如基于第二周期TN),对目标硬件执行监视操作,并且控制或调整时钟信号CLK1和CLK2以及电源信号PWR1和PWR2(步骤S310)。例如,DVFS控制器110可以基于监视信号MT1和MT2在每个第二周期TN内执行监视操作,并且可以产生用于控制或调整时钟信号CLK1和CLK2以及电源信号PWR1和PWR2的控制信号CTR1和CTR2。CMU 170和PMIC 200可以基于控制信号CTR1和CTR2来在每个第二周期TN中控制或调整时钟信号CLK1和CLK2以及电源信号PWR1和PWR2。

在示例实施例中,监视操作可以表示在下一个时间点(例如,调度时间点)的调度操作,并且DVFS可以表示当前时间点处针对时钟信号CLK1和CLK2以及电源信号PWR1和PWR2的控制操作。例如,DVFS控制器110可以执行监视操作,以在从当前时间点开始经过了第二周期TN的下一个时间点处调度DVFS。DVFS控制器110可以基于在比当前时间点提前第二周期TN的前一时间点处的调度结果,在当前时间点控制或调整时钟信号CLK1和CLK2以及电源信号PWR1和PWR2。

在步骤S310之后,可以基于设置的周期重复步骤S110和随后的步骤。例如,可以在每个第二周期TN内执行监视操作,并且可以在每个第二周期TN中控制或调整时钟信号CLK1和CLK2以及电源信号PWR1和PWR2。

在时刻t1,第一触发信号TRGD被激活。例如,SOC100可以开始执行第一目标事件,然后第一触发信号TRGD可以从逻辑低电平转变为逻辑高电平。

当第一触发信号TRGD被激活时(步骤S110:是),例如当第一触发信号TRGD具有逻辑高电平时,在每个第一周期TD中产生第一中断ITRD(步骤S120)。例如,第一中断ITRD可以是VSYNC中断。例如,因为产生了第一中断ITRD,所以定时器140可以响应于第一中断ITRD而被初始化,并且可以不产生中断控制信号ITC,因此中断控制器150可以不产生第二中断ITRB,而可以产生第一中断ITRD。

在示例性实施例中,如图4所示,为了实现定时器140和中断控制器150的这样的操作,第二周期TN可以比第一周期TD长。例如,如果第一单元操作的频率是大约60Hz,则第一循环TD可以是大约16.67ms,并且第二循环TN可以是大约100ms。

当第一触发信号TRGD被激活(步骤S110:是)时,基于第一中断ITRD确定执行了第一目标事件(步骤S130)。换句话说,可以确定目标硬件用于执行第一目标事件。在这种情况下,目标硬件的监视操作周期被设置为第一周期TD,使得监视操作的起始点基本上等于第一中断ITRD的产生点(步骤S210)。例如,如图4所示,阴影箭头与黑色箭头相匹配。换句话说,阴影箭头的位置可以基本上等于黑色箭头的位置。例如,步骤S130和S210可以由DVFS控制器110执行。

基于设置的周期(例如基于第一周期TD),对目标硬件执行监视操作,并且控制或调整时钟信号CLK1和CLK2以及电源信号PWR1和PWR2(步骤S310)。除了监视操作的周期从第二周期TN改变到第一周期TD之外,步骤S310的操作可以与上述操作基本相同。

在步骤S310之后,可以基于设置的周期重复步骤S110和后续步骤。例如,可以对每个第一周期TD执行监视操作,并且可以在每个第一周期TD中控制或调整时钟信号CLK1和CLK2以及电源信号PWR1和PWR2。

在时刻t2,第一触发信号TRGD被去激活。例如,第一目标事件可以结束或者成功完成,然后第一触发信号TRGD可以从逻辑高电平转换到逻辑低电平。时刻t2之后的操作可以与时间t1之前的操作基本相同。

在示例实施例中,步骤S110、S120、S130、S140和S150可以包括在图1中的步骤S100,步骤S210和S220可以包括在图1中的步骤S200中,并且步骤S310可以包括在图1中的步骤S300中。在示例实施例中,在步骤S140和S150中还可以使用第一触发信号TRGD。在示例实施例中,步骤S130和S150可以由聚焦目标标识符112执行,步骤S210和S220可以由DVFS触发单元114执行。

参考图2和图5,“CASE1”表示执行第一目标事件的第一状态,“CASEO”表示不执行第一目标事件的第二状态。当第一触发信号TRGD被激活(例如EN_TRGD)时,SOC100的状态从第二状态CASEO改变到第一状态CASE1。当第一触发信号TRGD被去激活(例如,DIS_TRGD)时,SOC 100的状态从第一状态CASE1改变到第二状态CASEO。

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

参考图6,电子系统10包括SOC 100、PMIC200、存储设备300和触发对象400。图6中的电子系统10可以基本上与图2中的电子系统10相同。除了图6中的触发对象400产生第二触发信号TRGW而不是第一触发信号TRGD,并且图6中的中断控制器150产生第三中断ITRW,而不是第一中断ITRD。

触发对象400产生与由SOC 100执行的(例如,在目标硬件上执行或实行的)DVFS相关联的第二触发信号TRGW。例如,第二触发信号TRGW可以表示是否要执行第二目标事件(例如,目标硬件是否要用于第二目标事件)。当第二目标事件被执行时,第二触发信号TRGW可以被激活,并且当第二目标事件不被执行时,第二触发信号TRGW可以被去激活。例如,第二目标事件可以是存储器绑定作业,并且可以与第一目标事件不同。

中断控制器150可以在每个调度时间基于第二触发信号TRGW以及中断控制信号ITC产生中断。例如,当第二触发信号TRGW被激活时,中断控制器150可以在多个第三周期中的每一个中产生第三中断ITRW,并且当第二触发信号TRGW被去激活时,可以在多个第二周期中的每一个中产生第二中断ITRB。第三周期可以与第一周期不同。

定时器140可以在多个第二周期中的每个周期中产生中断控制信号ITC,并且可以响应于第三中断ITRW而被初始化。例如,每当产生第三中断ITRW时,定时器140可以被初始化,然后定时器140的计时操作可以从第一时间开始。如果在第二周期期间没有产生第三中断ITRW,则可以结束或者完成定时器140的计时操作,然后可以产生中断控制信号ITC。

图7是示出了根据示例实施例的操作SOC的方法的流程图。图8和图9是用于描述操作图7的SOC的方法的图。

在图8中,“ITR”表示由图6中的中断控制器150产生的中断(例如,第二中断ITRB和第三中断ITRW)。参考标号“ITR”上的白色箭头和黑色箭头中的每一个分别表示第二中断ITRB和第三中断ITRW。在图8中,“DVFS”表示执行DVFS的操作。参考标记“DVFS”上的每个阴影箭头表示执行目标硬件的监视操作和提供给目标硬件的时钟信号和电源信号的控制。

参考图6、图7和图8,在根据示例实施例的操作SOC 100的方法中,激活或检测表示是否要执行第二目标事件的第二触发信号TRGW(步骤S112)。例如,第二目标事件可以表示由包括SOC100的电子系统10执行的海量数据传送操作。例如,可以响应于通用串行总线(USB)连接模式和/或WIFI连接模式中的数据事务中断而执行海量数据传送操作,以及用于由目标硬件执行的第二目标事件的第二单元操作可以表示响应于数据事务中断而执行的单位数据传送操作。

当第二触发信号TROW被去激活(步骤S112:否)时,在每个第二周期TN中产生第二中断ITRB(步骤S140)。基于第二中断ITRB,确定没有执行第二目标事件(步骤S152),然后将目标硬件的监视操作的周期设置为第二周期TN,使得监视操作的起始点基本上等于第二中断ITRB的产生点(步骤S220)。基于设置的周期(例如基于第二周期TN),对目标硬件执行监视操作,并且控制或调整时钟信号CLK1和CLK2以及电源信号PWR1和PWR2(步骤S310)。

图7中的操作S140、S152、S220和S310可以分别与图3中的操作S140、S150和S310基本相同。图8中的时刻t3之前的操作可以与图4中的时刻t1之前的操作基本相同。

在时刻t3,第二触发信号TRGW被激活。当第二触发信号TRGW被激活时(步骤S112:是),在每个第三周期TW中产生第三中断ITRW(步骤S122)。基于第三中断ITRW确定执行第二目标事件(步骤S132)。换句话说,可以确定目标硬件被用于执行第二目标事件。例如,第三中断ITRW可以是数据交易中断。例如,在WIFI连接模式下,第三周期TW可以是约4ms。

当第二触发信号TRGW被激活时(步骤S112:是),用于目标硬件的监视操作的周期被设置为第三周期TW的倍数,使得监视操作的起始点基本上等于第三中断ITRW的产生点(步骤S212)。换句话说,监视操作的周期可以被设置为大约第三周期TW的N倍的第四周期,其中N是大于或等于2的自然数。例如,如图8所示,N可以是2,并且监视操作的周期可以被设置为第三周期TW的两倍(例如,2*TW)。阴影箭头可以与黑色箭头匹配,并且单个阴影箭头可以对应于每两个黑色箭头而定位。

基于设置的周期(例如基于第四周期2*TW),对目标硬件执行监视操作,并且控制或调整时钟信号CLK1和CLK2以及电源信号PWR1和PWR2(步骤S310)。

图7中的步骤S122,S132和S310可以分别基本上与图3中的S120、S130和S310相同并且图11中的步骤S212可以与图3中的步骤S210相似。

在时刻t4,第二触发信号TRGW被去激活。时刻t4之后的操作可以与时间t3之前的操作基本相同。

参考图6和图9,“CASEO”表示不执行第二目标事件的第三状态,“CASE2”表示执行第二目标事件的第四状态。图9中的第三状态CASE0可以类似于图5中的第一状态CASEO。当第二触发信号TRGW被激活(例如,EN_TRGW)时,SOC 100的状态从第三状态CASEO改变到第四状态CASE2。当第二触发信号TRGW被去激活(例如,DIS_TRGW)时,SOC 100的状态从第四状态CASE2改变到第三状态CASEO。

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

如图10所示,电子系统10包括SOC100,PMIC200,存储设备300和触发对象400。图10中的电子系统10可以基本上与图2中的电子系统10相同。除了图6中的触发对象400还产生第二触发信号TRGW,并且图6中的中断控制器150产生第三个中断ITRW。

触发对象400产生与由SOC 100执行的(例如,在目标硬件上执行或执行的)DVFS相关联的第一触发信号TRGD和第二触发信号TRGW。第一触发信号TRGD和第二触发信号TRGW分别可以基本上与参考图2和图6描述的第一触发信号TRGD和第二触发信号TRGW相同。

中断控制器150可以在每个调度时间基于第一触发信号TRGD和第二触发信号TRGW以及中断控制信号ITC产生中断。

在示例实施例中,当第一目标事件和第二目标事件的至少一部分彼此交叠时,例如,当第一触发信号TRGD的激活周期的至少一部分和第二触发信号TRGW的激活周期可以基于第一目标事件和第二目标事件的优先级产生第一中断ITRD和第三中断ITRW中的一个。例如,可以产生与具有较高优先级的目标事件相对应的中断。例如,当第一目标事件和第二目标事件的至少一部分相互交叠,并且当第二目标事件的优先级高于第一目标事件的优先级时,可以产生与第二目标事件相对应的第三中断ITRW,并且可以基于第三中断ITRW设置用于目标硬件的监视操作的周期,使得监视操作的起始点基本上等于具有更高的优先级的第二目标事件的第二单元操作的起始点。

定时器140可以在多个第二周期中的每个周期中产生中断控制信号ITC,并且可以响应于第一中断ITRD和第三中断ITRW而被初始化。

图11是示出了根据示例实施例的操作SOC的方法的流程图。图12是用于描述操作图11的SOC的方法的图。

参考图11和图12,在根据示例实施例的操作SOC 100的方法中,可以检测表示是否要执行第一目标事件的第一触发信号TRGD和表示是否要执行第二目标事件的第二触发信号TRGW。

当所有的第一触发信号TRGD和第二触发信号TRGW都被去激活(步骤S114:是)时,在每个第二周期TN中产生第二中断ITRB(步骤S140)。基于第二中断ITRB,确定第一目标事件和第二目标事件全部未执行(步骤S154),然后将目标硬件的监视操作的周期设置为第二周期TN,使得监视操作的起始点基本上等于第二中断ITRB的产生点(步骤S220)。基于设置的周期(例如基于第二周期TN),对目标硬件执行监视操作,并且控制或调整时钟信号CLK1和CLK2以及电源信号PWR1和PWR2(步骤S310)。上述的这种操作可以基本上与图4中的时间t1之前的操作或者在图8中的时间t3之前的操作相同。

图11中的操作S140、S154、S220和S310可以分别与图3中的操作S140、S150和S310基本相同。

当第一触发信号TRGD和第二触发信号TRGW全部被激活时(步骤S114:否,步骤S116:是),可以基于第一目标事件和第二目标事件的优先级来选择一个触发信号和/或一个目标事件(步骤S118)。例如,可以选择具有较高优先级的目标事件和/或与具有较高优先级的目标事件相对应的触发信号。例如,步骤S118可以由中断控制器150和/或DVFS控制器110执行。基于所选择的触发信号,可以在每个第一周期TD中产生第一中断ITRD,或者可以在每个第三周期TW中产生第三中断ITRW(步骤S124)。

当第一触发信号TRGD和第二触发信号TRGW中仅一个被激活时(步骤S114:否,步骤S116:否),可以基于激活的触发信号,在每个第一周期TD中产生第一中断ITRD,或者在每个第三周期TD中产生第三中断ITRW(步骤S124)。

当第一触发信号TRGD和第二触发信号TRGW中的任一个或两个被激活(步骤S114:否)时,基于步骤S124产生的中断和第一触发信号TRGD和第二触发信号TRGW的激活,确定执行第一目标事件和第二目标事件中的至少一个(步骤S134)。目标硬件的监视操作的周期被设置为使得监视操作的起始点基本上等于步骤S124所产生的中断的产生点(步骤S214)。基于步骤S214所设置的周期,对目标硬件进行监测操作,并且控制或调整时钟信号CLK1和CLK2以及电源信号PWR1和PWR2(步骤S310)。上述的这种操作可以基本上与图4中的时间t1和时刻t2之间的操作或者在图8中的时间t3与时刻t4之间的操作相同。

图11中的步骤S124,S134和S310可以分别基本上与图3中的S120、S130和S310相同并且图11中的步骤S214可以基本上与图3中的步骤S210或图7中的步骤S212相同。

参考图10和图12,“CASE1”表示执行第一目标事件的第一状态,“CASE0”表示不执行第一目标事件和第二目标事件的全部的第二状态,而“CASE2”表示执行第二目标事件的第三状态。

当第一目标事件和第二目标事件基本上同时或并发执行时,由于第二目标事件具有比第一目标事件的优先级更高的优先级,所以SOC100的状态可以改变为第三状态CASE2。对于目标硬件的监视操作的周期可以被设置为使得监视操作的起始点基本上等于具有较高优先级的第二目标事件的第二单元操作的起始点。

第一状态CASE1和第二状态CASE0之间的状态改变可以与参考图5描述的第一状态CASE1和第二状态CASE0之间的状态改变基本相同。第二状态CASE0和第三状态CASE2之间的状态改变可以与参考图9描述的第三状态CASE0和第四状态CASE2之间的状态改变基本相同。

图13和图14是根据示例实施例的用于描述操作SOC的方法的图。

在图13和图14中,第一状态CASE1、第二状态CASE0和第三状态CASE2可以分别与图12中的第一状态CASE1、第二状态CASE0和第三状态CASE2基本相同。

参考图13,“CASE3”表示执行第三目标事件的第四状态。例如,第三目标事件可以是存储器绑定作业,可以与第一目标事件和第二目标事件不同。

在图13的示例中,当第一目标事件和第三目标事件基本上同时或并发执行时,由于第三目标事件具有比第一目标事件的优先级更高的优先级,所以SOC100的状态可以改变为第四状态CASE3。然而,在图13中可以不预先确定第二目标事件和第三目标事件之间的优先级。

在图14中,“CASE4”表示执行第四目标事件的第五状态。例如,第四目标事件可以是存储器绑定作业,并且可以与第一目标事件和第二目标事件不同。

在图14的示例中,当第一目标事件和第四目标事件基本同时或并发执行时,由于第四目标事件具有比第一目标事件的优先级更高的优先级,所以SOC100的状态可以改变为第五状态CASE4。另外,当基本上同时或并发执行第一目标事件、第二目标事件和第四目标事件时,由于第四目标事件具有比第二目标事件的优先级更高的优先级,所以可以将SOC 100的状态改变为第五状态CASE4。

尽管基于其中执行存储器绑定作业的类型和数目的示例来描述针对非CPU IP的DVFS,但是根据示例实施例的针对非CPU IP的DVFS可以应用于或用于执行任何类型或任何数目的存储器绑定作业任何示例。

图15和图16是示出了根据示例实施例的包括SOC的电子系统的图。

参考图15,电子系统10a包括SOC100a、PMIC200、存储设备300和触发对象400。

SOC 100a包括CPU 101a、存储器接口120、具有总线的内部逻辑电路130以及CMU 170。SOC100a还可以包括第一PPMU122、第二PPMU132、定时器140、中断控制器150和PMU160。

在图15的示例中,DVFS控制器1102可以包括在CPU 101a中。例如,CPU 101a可以包括聚焦目标标识符112a、DVFS触发单元114a和总线业务量监视单元116a。图15中的聚焦目标标识符112a、DVFS触发单元114a和总线业务量监视单元116a可以分别与图2中的聚焦目标标识符112、DVFS触发单元114和总线业务量监视单元116基本相同。聚焦目标标识符112a可以基于从触发对象400产生的至少一个触发信号TRGD或者基于从中断控制器150产生的至少一个中断ITR来确定目标硬件的操作方案。

参考图16,电子系统10b包括SOC100b、PMIC200和存储设备300。

SOC 100b包括CPU 101、DVFS控制器110、存储器接口120、具有总线的内部逻辑电路130以及CMU 170。SOC100b还可以包括第一PPMU122、第二PPMU132、定时器140、中断控制器150、PMU160和触发对象400b。

在图16的示例中,SOC100b还可以包括触发对象400b。换句话说,触发对象400b可以位于SOC 100b的内部。例如,图16中的触发对象400b可以基本上与图2中的触发对象400相同。

如图16所示,SOC 100a可以包括位于SOC 100a内部的触发对象400。

根据示例实施例的SOC还可以包括各种功能块和/或功能模块。例如,功能块可以包括显示控制块、文件系统块、多格式编解码器(MFC)块、通信控制块(例如,码分多址(CDMA)、长期演进(LTE)、射频(RF)、超宽带(UWB)、无线局域网(WLAN)、全球微波接入互操作性(W;[MAX)等)、相机控制块(例如,CMOS图像传感器(CIS)等)、触摸屏面板(TSP)控制块,全球定位系统(GPS)控制块、麦克风控制块、扬声器控制块、陀螺仪控制块等。

如本领域技术人员将认识到的,本公开可以体现为一个或多个计算机可读介质中的系统、方法、计算机程序产品和/或计算机程序产品,所述计算机可读介质具有其上体现的计算机可读程序代码。计算机可读程序代码可以被提供给通用计算机,专用计算机或其他可编程数据处理装置的处理器。计算机可读介质可以是计算机可读信号介质或计算机可读存储介质。在本文档的上下文中,计算机可读存储介质可以是任何有形介质,其可以包含或存储由指令执行系统、装置或设备使用或与指令执行系统、装置或设备相关的程序。所述计算机可读介质可以例如是非瞬时性计算机可读介质。

图17是示出了根据示例实施例的电子系统中包括的接口的框图。

参考图17,电子系统1100可以包括SOC1110和多个接口1121、1122、1123、1124、1225、1131、1132、1133、1141、1142、1143、1151、1152、1153、1154和1155。

SOC 1110可以控制电子系统1100的整体操作,并且可以包括根据示例实施例的CPU 1112、非CPU IP(NCPU IP)1114和DVFS控制器(DVFS CONT)1116。

SOC1110可以分别经由显示器(LCD)接口(IF)1121、TSP接口1122、摄录机(CAM)接口1123、TV接口1124和图像传感器(CIS)接口1125来控制显示设备(例如,液晶显示器(LCD))、TSP、摄录机、TV模块和相机模块(或图像传感器模块)的操作状态。SOC1110可以经由GPS接口1131、UWB接口1132和USB接口1133来控制GPS模块、UWB模块和USB模块的操作状态。SOC 1110可以经由WIFI接口1141、3G接口1142和LTE接口1143来控制WIFI模块、3G模块和LTE模块的操作状态。SOC 1110可以经由DRAM接口1151、闪存接口1152、MFC接口1153、音频接口1154和MP3接口来控制DRAM、闪速存储器、MFC模块、音频模块和MP3模块的操作状态1155。

这里,模块和/或接口可以被实现为硬件或软件程序。

本公开可以用于各种SOC或包括SOC的系统,例如移动电话、智能电话、PDA、PMP、数字相机、数字电视机、机顶盒、音乐播放器、便携式游戏机、导航装置、PC、服务器计算机、工作站、平板电脑、膝上型计算机、智能卡、打印机、可穿戴设备、IoT设备、IoE设备、电子书、VR设备、AR设备、机器人设备等。

如本发明构思的领域中通常的做法,以功能块、单元和/或模块来描述并在附图中示出示例实施例。本领域技术人员将理解,这些块、单元和/或模块通过诸如逻辑电路、分立组件、微处理器、硬连线电路、存储器元件、布线连接等的电子(或光)电路来物理地实现,所述电子(或光)电路可以使用基于半导体的制造技术或其他制造技术来形成。在块、单元和/或模块由微处理器或类似物实现的情况下,它们可以使用软件(例如,微代码)被编程以执行本文讨论的各种功能,并且可以备选地由固件和/或软件驱动。备选地,每个块、单元和/或模块可以通过专用硬件实现或实现为执行一些功能的专用硬件和处理器(例如,一个或多个编程的微处理器和相关联的电路)的组合以执行其他功能。此外,在不脱离本发明构思的范围的情况下,示例实施例的每个块、单元和/或模块可以物理地分离成两个或更多个交互和分立的块、单元和/或模块。此外,在不脱离本发明构思的范围的情况下,示例实施例的块、单元和/或模块可以物理地组合成更复杂的块、单元和/或模块。

上述是示例性实施例的说明,而不应被解释为对其的限制。尽管已经描述了一些示例实施例,然而本领域技术人员将容易理解,在不实质上脱离本公开的新颖教义和优点的前提下,可以在示例实施例中进行多种修改。因此,所有这种修改旨在被包括在如在权利要求中限定的本公开的范围内。因此,将理解到,前述是对示例实施例的说明,而不应被解释成限制为所公开的示例实施例,并且对所公开的示例实施例的修改以及其它示例实施例旨在被包括在所附权利要求的范围内。

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