CN115373506A - 集成电路、动态电压和频率缩放调节器及包括其的系统 - Google Patents
集成电路、动态电压和频率缩放调节器及包括其的系统 Download PDFInfo
- Publication number
- CN115373506A CN115373506A CN202210556012.7A CN202210556012A CN115373506A CN 115373506 A CN115373506 A CN 115373506A CN 202210556012 A CN202210556012 A CN 202210556012A CN 115373506 A CN115373506 A CN 115373506A
- Authority
- CN
- China
- Prior art keywords
- data
- signal
- bus
- integrated circuit
- event
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/08—Clock generators with changeable or programmable clock frequency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3206—Monitoring of events, devices or parameters that trigger a change in power modality
- G06F1/3228—Monitoring task completion, e.g. by use of idle timers, stop commands or wait commands
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3206—Monitoring of events, devices or parameters that trigger a change in power modality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/324—Power saving characterised by the action undertaken by lowering clock frequency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3243—Power saving in microcontroller unit
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3296—Power saving characterised by the action undertaken by lowering the supply or operating voltage
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Systems (AREA)
- Debugging And Monitoring (AREA)
Abstract
公开了一种集成电路,其对动态电压和频率缩放(DVFS)操作所需的参数进行计数。该集成电路包括:访问将处理设备彼此连接的总线,并基于通过总线传输的数据输出事件信号的事件块;对从时钟管理单元接收到的时钟信号的数量进行计数的时钟计数器;基于事件信号分别对用于计算工作负载的参数进行计数的多个性能计数器;从DVFS调节器接收操作信号并将时钟信号的数量和参数发送到DVFS调节器的接口,该DVFS调节器基于工作负载来确定处理设备的操作频率和操作电压;以及基于操作信号来控制事件块、时钟计数器和多个性能计数器的操作的控制器。
Description
相关申请的交叉引用
本申请基于于2021年5月21日向韩国知识产权局提交的韩国专利申请No.10-2021-0065710和于2021年9月2日向韩国知识产权局提交的韩国专利申请No.10-2021-0117198,并其要求优先权,这些申请的公开内容通过引用整体结合于此。
技术领域
本公开涉及集成电路,并且更具体地,涉及一种用于对动态电压和频率缩放(dynamic voltage and frequency scaling,DVFS)操作所需的参数进行计数的集成电路、DVFS调节器(governor)以及包括该集成电路和DVFS调节器的计算系统。
背景技术
近来,随着诸如移动设备的计算系统尺寸的减小,功率管理已经成为一个重要的问题。具体地,随着移动设备中包括的处理设备的数量增加以提高移动设备的性能,功率管理功能的复杂性也增加了。
例如,移动设备的应用处理器可以通过根据嵌入在应用处理器中的处理设备的工作负载调整处理设备的频率和电压的DVFS操作来调整电压,从而管理功率。
发明内容
本公开的实施例提供了集成电路、动态电压和频率缩放(DVFS)调节器以及包括该集成电路和该DVFS调节器的计算系统,该集成电路占用更小的空间、消耗更低的功率并且允许执行DVFS操作。
根据本公开的一个方面,提供了一种集成电路,包括:被配置为监视连接多个处理设备的总线,并且基于通过总线传输的数据输出事件信号的事件块;被配置为对从时钟管理电路接收到的时钟信号的数量进行计数的时钟计数器;被配置为基于事件信号分别对与工作负载的计算相关的参数进行计数的多个性能计数器;被配置为从动态电压和频率缩放(DVFS)调节器接收操作信号,并将时钟信号的数量和参数发送到DVFS调节器的接口,该DVFS调节器被配置为基于工作负载来确定多个处理设备中的每一个处理设备的操作频率和操作电压;以及被配置为基于操作信号来控制事件块、时钟计数器和多个性能计数器的操作的控制器。
根据本公开的另一个方面,提供了一种动态电压和频率缩放(DVFS)调节器,包括:被配置为从集成电路接收参数和时钟信号的数量,并基于时钟信号的数量和参数来计算工作负载的处理设备分析器,该参数和时钟信号的数量是基于通过多个处理设备之间的总线传输的数据来计数的;被配置为从处理设备分析器接收工作负载并存储该工作负载的主分析器;被配置为基于工作负载来确定处理设备的操作频率和操作电压的控制器;以及被配置为将操作频率和操作电压发送到多个处理设备当中的处理设备的处理设备驱动器。
根据本公开的另一个方面,提供了一种计算系统,包括:第一处理设备;第二处理设备;将第一处理设备连接到第二处理设备的总线;连接到总线的集成电路;以及连接到集成电路的动态电压和频率缩放(DVFS)调节器,其中该集成电路包括:被配置为基于通过总线传输的数据来监视总线并输出事件信号的事件块;被配置为对从时钟管理电路接收到的时钟信号的数量进行计数的时钟计数器;被配置为基于事件信号分别对与工作负载的计算相关的参数进行计数的多个性能计数器;被配置为从DVFS调节器接收操作信号,并将时钟信号的数量和参数发送到DVFS调节器的接口;以及被配置为基于操作信号来控制事件块、时钟计数器和多个性能计数器的操作的控制器,并且其中该DVFS调节器包括:被配置为基于时钟信号的数量和参数来计算工作负载的处理设备分析器;被配置为从处理设备分析器接收工作负载并存储该工作负载的主分析器;被配置为基于工作负载来确定每个处理设备的操作频率和操作电压的控制器;以及被配置为将操作频率和操作电压发送到第一处理设备和第二处理设备的处理设备驱动器。
根据本公开的另一个方面,提供了一种装置,包括:被配置为对从时钟管理电路接收到的时钟信号的数量进行计数的时钟计数器;多个性能计数器,其包括:被配置为基于在连接多个处理设备的总线中检测到的事件信号来对与工作负载的计算相关的第一参数进行计数的第一性能计数器,以及被配置为基于事件信号来对与工作负载的计算相关的第二参数进行计数的第二性能计数器;以及被配置为将时钟信号的数量、第一参数和第二参数发送到动态电压和频率缩放(DVFS)调节器的接口,该DVFS调节器被配置为基于工作负载来确定多个处理设备中的每一个处理设备的操作频率和操作电压。
附图说明
根据以下结合附图的详细描述,将更清楚地理解本公开的实施例,其中:
图1是示出根据本公开的实施例的计算系统的框图;
图2是详细示出根据本公开的实施例的集成电路的框图;
图3是示出根据本公开的实施例的集成电路的操作的流程图;
图4是示出根据本公开的实施例的动态电压和频率缩放(DVFS)调节器的框图;
图5、图6和图7各自是示出根据本公开的实施例的由DVFS调节器执行的计算延迟时间的方法的图;
图8是示出根据本公开的实施例的DVFS调节器的操作的流程图;
图9是示出根据本公开的实施例的计算系统的操作的流程图;
图10是示出根据本公开的实施例的集成电路的性能的表;
图11是示出根据本公开的实施例的系统的框图;以及
图12是示出根据本公开的实施例的包括应用处理器的通信设备的框图。
具体实施方式
在下文中,将参考附图详细描述本公开的实施例。本文描述的实施例是示例实施例,因此,本发明构思不限于此,并且可以以各种其他形式来实现。
图1是示出根据本公开的实施例的计算系统的框图。
参考图1,计算系统10可以包括一个或多个集成电路100_1、100_2和100_3(在下文中用100表示)、动态电压和频率缩放(DVFS)调节器200、多个处理设备300_1、300_2、300_3和300_4(在下文中用300表示)以及一条或多条总线400_1、400_2和400_3(在下文中用400表示)。
计算系统10可以对应于各种数据处理设备,并且作为示例,计算系统10可以对应于移动设备。此外,计算系统10可以对应于膝上型计算机、移动电话、智能手机、平板个人计算机(PC)、个人数字助理(PDA)、企业数字助理(EDA)、数字相机、数字摄像机、便携式多媒体播放器(PMP)、个人导航设备或便携式导航设备(personal navigation device/portablenavigation device,PND)、手持式游戏控制台、移动互联网设备(MID)、可穿戴计算机、物联网(IoT)设备、万物互联(IoE)设备或电子书(e-book)阅读器。在一些实施例中,计算系统10可以由片上系统(SoC)实现。
首先,多个处理设备300可以执行由计算系统10预设的功能。例如,每个处理设备可以是中央处理单元(CPU)、图形处理单元(GPU)、存储器接口(MIF)、神经处理单元(NPU)或图像信号处理器(ISP)。尽管图1示出了总共四个处理设备作为多个处理设备300,但是计算系统10中包括的处理设备300的数量不限于此。因此,根据另一个实施例,计算系统10可以包括多于或少于四个处理设备。
一条或多条总线400可以将多个处理设备300彼此连接。因此,多个处理设备300可以通过一条或多条总线400来发送和接收数据。作为一条或多条总线400的标准规范,可以应用高级RISC机器(ARM)有限公司的高级微控制器总线架构(AMBA)协议。AMBA协议的总线类型可以包括高级高性能总线(AHB)、高级外围总线(APB)、高级可扩展接口(AXI)、AXI4、AXI一致性扩展(ACE)、一致集线器接口(CHI)等。除此之外,可以应用另外类型的协议,诸如SONICs的uNetwork、IBM的CoreConnect、OCP-IP的Open Core协议等。
根据实施例,一个或多个集成电路100中的每一个集成电路可以连接到一条或多条总线400。一个或多个集成电路100可以访问一条或多条总线400,并读取通过一条或多条总线400传输的数据。此外,一个或多个集成电路100可以基于读取的数据执行计算。
DVFS调节器200可以基于从一个或多个集成电路100接收到的数据来调整多个处理设备300的操作电压和操作频率。
DVFS调节器200可以指能够执行DVFS功能和操作的硬件、或者指允许DVFS功能和操作被执行的计算机程序代码。然而,本公开不限于此,并且DVFS调节器200可以指其中安装了允许DVFS功能和操作被执行的计算机程序代码的电子记录介质,例如处理器。也就是说,DVFS调节器200可以指用于实现本公开的硬件和用于驱动硬件的软件的功能和/或结构组合。
图2是详细示出根据本公开的实施例的集成电路的框图。
参考图2,根据本公开的实施例的计算系统20可以包括集成电路100、DVFS调节器200、第一处理设备300_1、第二处理设备300_2、总线400和时钟管理电路(CMC)500。
集成电路100可以包括事件块110、时钟计数器(CCNT)120、多个性能计数器(PMCNT)130、接口140和控制器150。此外,集成电路100还可以包括触发器160、时钟门控块170和寄存器180。多个性能计数器130可以包括第一性能计数器(PMCNT1)130-1、第二性能计数器(PMCNT2)130-2、第三性能计数器(PMCNT3)130-3和第四性能计数器(PMCNT4)130-4。
事件块110可以访问将第一处理设备300_1连接到第二处理设备300_2的总线400。事件块110可以读取通过总线400传输的数据。事件块110可以基于通过总线400传输的数据来输出事件信号。
事件信号是基于通过总线400传输的数据而设置的信号,并且可以根据通过总线400传输的数据的内容而被不同地设置。
根据实施例,事件信号可以仅包括对下述参数进行计数所必需的信号。根据本公开的实施例,事件信号可以包括传输激活信号、多重未决(multiple-outstanding)信号、数据读取信号、数据写入信号和请求信号。
传输激活信号可以是指示数据正通过总线400传输的信号。例如,当数据正通过总线400传输时,事件块110可以将传输激活信号设置为1。相反,当数据没有通过总线400传输时,事件块110可以将传输激活信号设置为0。
多重未决信号可以是指示是否传输请求数据的信号和指示是否传输相对于请求数据的响应数据的信号。当请求数据和响应数据通过总线400传输时,多重未决信号可以改变。例如,当请求数据通过总线400传输时,事件块110可以将多重未决信号增加1(这表示将多重未决信号的值增加1)。另一个方面,当所有响应数据都通过总线400传输时,事件块110可以将多重未决信号减少1(这表示将多重未决信号的值减少1)。尽管多重未决信号要么增加1要么减少1,但是本公开不限于此,并且因此,根据另一个示例实施例,当请求数据通过总线400传输时,多重未决信号可以增加不同于1的数、或者当所有响应数据通过总线400传输时,多重未决信号可以减少不同于1的数。
数据读取信号可以是指示与读取请求数据相对应的读取响应数据通过总线400传输的信号。例如,当传输读取响应数据时,事件块110可以生成数据读取信号。另一个方面,当未传输读取响应数据时,事件块110可以不生成数据读取信号。
数据写入信号可以是指示与写入请求数据相对应的写入响应数据通过总线400传输的信号。例如,当传输写入响应数据时,事件块110可以生成数据写入信号。另一个方面,当未传输写入响应数据时,事件块110可以不生成数据写入信号。
请求信号可以是指示传输读取请求数据或写入请求数据的信号。例如,当传输读取请求数据或写入请求数据时,事件块110可以生成请求信号。另一个方面,当未传输读取请求数据或写入请求数据时,事件块110可以不生成请求信号。
事件块110可以基于用于第一处理设备300_1和第二处理设备300_2之间的通信的协议来输出事件信号。也就是说,事件块110可以基于被应用于将第一处理设备300_1连接到第二处理设备300_2的总线400的协议来输出事件信号。
根据本公开的实施例,当用于第一处理设备300_1和第二处理设备300_2之间的通信的协议是操作码协议时,事件块110可以基于包括在通过总线400传输的数据中的操作码来设置多重未决信号,并输出多重未决信号。
操作码协议可以指通过使用操作码(opcode)来执行数据发送和接收的协议,诸如AMBA协议的总线类型中的CHI协议总线类型。这里,操作码可以耦合到通过总线400传输的数据的前端,从而与数据一起传输,并且操作码可以指示数据的类型。
在操作码表示数据读取请求或数据写入请求的情况下,当读取请求数据或写入请求数据通过总线400传输时,事件块110可以将多重未决信号增加1,并且当相对于读取请求数据或写入请求数据的响应数据中的第一数据通过总线400传输时,事件块110可以将多重未决信号减少1。
此外,在操作码表示原子事务的情况下,当请求数据通过总线400传输时,事件块110可以将多重未决信号增加1,并且当与请求数据相对应的读取响应数据和写入响应数据之一通过总线400传输时,事件块110可以将多重未决信号减少1。
此外,在操作码表示高速缓存维护操作的情况下,当读取请求数据或写入请求数据通过总线400传输时,事件块110可以将多重未决信号增加1,并且当读取响应数据、写入响应数据或不包括数据的响应通过总线400传输时,事件块110可以将多重未决信号减少1。
根据本公开的实施例,当用于第一处理设备300_1和第二处理设备300_2之间的通信的协议不是操作码协议时,事件块110可以设置并输出多重未决信号,而不管包括在通过总线传输的数据中的操作码。
这里,当请求数据通过总线400传输时,事件块110可以将多重未决信号增加1。另一个方面,当所有响应数据都通过总线400传输时,事件块110可以将多重未决信号减少1。
时钟计数器120可以对从时钟管理电路500接收到的时钟信号的数量进行计数。根据本公开的实施例,每当时钟信号从0切换到1时,时钟计数器120可以计数并增加时钟信号的数量。在本公开的另一个实施例中,每当时钟信号从1切换到0时,时钟计数器120可以计数并增加时钟信号的数量。
多个性能计数器130可以基于事件信号来对用于计算工作负载的参数进行计数(这表示对参数的值进行计数)。
如下所述,参数可以仅包括计算工作负载所需的参数。根据本公开的实施例,参数可以包括活跃时间、数据传输的数量、传输请求的数量和多重未决累积值。活跃时间可以指通过总线400进行数据传输的时间段。数据传输的数量可以指通过总线400执行数据传输的次数。传输请求的数量可以指通过总线400执行数据请求的次数。多重未决累积值可以指由事件块110生成的多重未决信号为1的总时间段。
多个性能计数器130可以包括第一性能计数器130_1、第二性能计数器130_2、第三性能计数器130_3和第四性能计数器130_4。
第一性能计数器130_1可以对活跃时间进行计数。根据实施例,第一性能计数器130_1可以基于包括在事件信号中的传输激活信号或多重未决信号来对进行活跃时间计数。
这里,第一性能计数器130_1可以基于用于第一处理设备300_1和第二处理设备300_2之间的通信的协议来对活跃时间进行计数。
在本公开的一个实施例中,在用于第一处理设备300_1和第二处理设备300_2之间的通信的协议不是操作码协议的情况下,当传输激活信号为1时,第一性能计数器130_1可以计数并增加活跃时间。此外,在用于第一处理设备300_1和第二处理设备300_2之间的通信的协议是操作码协议的情况下,当多重未决信号为1时,第一性能计数器130_1可以计数并增加活跃时间。
第二性能计数器130_2可以对数据传输的数量进行计数。根据实施例,第二性能计数器130_2可以将包括在事件信号中的数据读取信号和数据写入信号的数量计数为数据传输的数量。
在本公开的一个实施例中,当数据读取信号或数据写入信号出现时,第二性能计数器130_2可以计数并增加数据传输的数量。
第三性能计数器130_3可以对传输请求的数量进行计数。根据实施例,第三性能计数器130_3可以将包括在事件信号中的请求信号的数量计数为传输请求的数量。
在本公开的一个实施例中,当请求信号出现时,第三性能计数器130_3可以计数并增加传输请求的数量。
第四性能计数器130_4可以对多重未决累积值进行计数。根据实施例,第四性能计数器130_4可以基于包括在事件信号中的多重未决信号来对多重未决累积值进行计数。
在本公开的一个实施例中,当多重未决信号为1时,第四性能计数器130_4可以计数并增加多重未决累积值。
接口140可以从DVFS调节器200接收操作信号,该DVFS调节器200基于工作负载来确定第一处理设备300_1和第二处理设备300_2的操作频率和操作电压。操作信号是用于控制集成电路100的操作的信号,并且可以包括用于激活集成电路100的激活信号、用于去激活集成电路100的去激活信号等。此外,操作信号可以包括中断参考值,该中断参考值是用于确定时钟计数器120和多个性能计数器130中是否发生中断的参考值。
此外,接口140可以将参数和时钟信号的数量发送到DVFS调节器200。也就是说,接口140可以将由时钟计数器120和多个性能计数器130计数的值发送到DVFS调节器200。
控制器150可以基于操作信号来控制事件块110、时钟计数器120和多个性能计数器130的操作。
控制器150可以基于操作信号来激活或去激活事件块110、时钟计数器120和多个性能计数器130。
在本公开的一个实施例中,当操作信号是激活信号时,控制器150可以控制时钟计数器120对时钟信号的数量进行计数,并控制多个性能计数器130对参数进行计数。相反,当操作信号是去激活信号时,控制器150可以控制时钟计数器120和多个性能计数器130停止其操作。
此外,控制器150可以基于操作信号来确定时钟计数器120和多个性能计数器130中是否发生中断。
在本公开的一个实施例中,控制器150可以通过将中断参考值与由时钟计数器120和多个性能计数器130计数的值之一进行比较来确定是否发生中断。例如,当由时钟计数器120计数的时钟信号的数量超过中断参考值时,控制器150可以确定在时钟计数器120中发生了中断。
触发器160可以连接在事件块110和多个性能计数器130之间。触发器160可以采样事件信号并将其传送到多个性能计数器130。
时钟门控块170可以确定是否接收到时钟信号。在本公开的一个实施例中,当通过接口140接收到激活信号时,时钟门控块170可以接收时钟信号。相反,当通过接口140接收到去激活信号时,时钟门控块170可以不接收时钟信号。
时钟门控块170可以将时钟信号发送到时钟计数器120和多个性能计数器130。这里,尽管图2示出了时钟门控块170仅向时钟计数器120发送时钟信号,但是本公开不限于此。也就是说,时钟门控块170可以将时钟信号发送到包括在集成电路100中的其他块。
寄存器180可以存储操作信号、时钟信号的数量和参数。也就是说,寄存器180可以存储由时钟计数器120计数的时钟信号的数量,以及由多个性能计数器130计数的参数。因此,接口140可以从寄存器180读取时钟信号的数量和参数,并将时钟信号的数量和参数发送到DVFS调节器200。
图3是示出根据本公开的实施例的集成电路的操作的流程图。
参考图3,在操作S310中,事件块110可以输出事件信号。也就是说,事件块110可以基于通过将第一处理设备300_1连接到第二处理设备300_2的总线400传输的数据来输出事件信号。
在操作S320中,时钟计数器120可以对时钟信号的数量进行计数。也就是说,时钟计数器120可以对从时钟管理电路500接收到的时钟信号的数量进行计数。
在操作S330中,多个性能计数器130可以基于事件信号来对参数进行计数。也就是说,多个性能计数器130可以基于从事件块110接收到的事件信号,对用于计算工作负载的参数进行计数。
这里,尽管图3示出了操作S320和S330以所示次序依次执行,但是本公开不限于此,操作S320和S330可以同时执行。
最后,在操作S340中,接口140可以发送时钟信号的数量和参数。也就是说,接口140可以从时钟计数器120和多个性能计数器130接收时钟信号的数量和参数,并将时钟信号的数量和参数发送到DVFS调节器200。
图4是示出根据本公开的实施例的DVFS调节器的框图。
参考图4,DVFS调节器200可以包括一个或多个处理设备分析器210_1、210_2和210_3(在下文中由210表示)、主分析器220、一个或多个处理设备驱动器230_1、230_2和230_3(在下文中由230表示)以及主控制器240。
一个或多个处理设备分析器210可以从集成电路100接收时钟信号的数量和参数。此外,一个或多个处理设备分析器210可以基于时钟信号的数量和参数来计算工作负载。这里,一个或多个处理设备分析器210可以各自计算对应的处理设备300的工作负载。
尽管图4示出了三个处理设备分析器210作为一个或多个处理设备分析器210,但是本公开不限于此。处理设备分析器210的数量可以等于由DVFS调节器200控制的处理设备300的数量。处理设备分析器210可以由硬件、软件或硬件和软件的组合来实现。
工作负载是指示要由处理设备300处理的工作量的指示。工作负载用于主分析器220计算处理设备300的操作频率和操作电压。工作负载可以包括活跃比率、带宽利用率值和平均延迟时间。
活跃比率可以指处理设备300连接到的总线400的激活的时间段相对于总时间段的比率。这里,处理设备300的激活的时间段可以被测量为通过总线400从发送请求的时间点到接收响应的时间点为止的时间段。
一个或多个处理设备分析器210可以通过将参数当中的活跃时间除以时钟信号的数量来计算活跃比率。
带宽利用率值可以是指示处理设备300连接到的总线400的带宽有多活跃的值。
一个或多个处理设备分析器210可以通过将参数当中的数据传输的数量乘以时钟信号的数量和预先存储的数据宽度所获得的结果除以操作频率来计算带宽利用率值。这里,数据宽度可以是总线400的数据宽度的值,其是由一个或多个处理设备分析器210预先测量并存储的。此外,操作频率可以指处理设备300当前操作的频率。
平均延迟时间可以指通过总线400从发送请求数据的时间点到接收响应数据的时间点为止的平均时间段。
一个或多个处理设备分析器210可以通过将参数当中的多重未决累积值除以参数当中的传输请求的数量来计算平均延迟时间。
这里,可以根据用于处理设备300之间的通信的协议类型和操作码类型来不同地计算平均延迟时间。参考图5、图6和图7对此进行了更详细地描述。
图5、图6和图7各自是示出根据本公开的实施例的由DVFS调节器执行的计算延迟时间的方法的图。
参考图5,当用于处理设备300之间的通信的协议是操作码协议,并且操作码表示数据读取请求或数据写入请求时,可以看到描绘计算延迟时间的方法的图。
当操作码表示数据读取请求或数据写入请求时,延迟时间可以被计算为从发送请求数据Req的时间点到接收最后响应数据DLast的时间点为止的时间段(T2),如图5中的下箭头所示。然而,根据本公开,延迟时间可以被计算为从发送请求数据Req的时间点到接收第一响应数据DFirst的时间点为止的时间段(T1),如图5中的上箭头所示。根据本公开,通过这样计算延迟时间,即使没有确定响应数据是否是最后响应数据DLast,也可以通过在接收到第一响应数据DFirst之后立即计算延迟时间,使用较少的门来计算延迟时间。
这里,图5示出了从发送请求数据Req的时间点到接收第一响应数据DFirst的时间点为止的时间段和从接收第一响应数据DFirst的时间点到接收最后响应数据DLast的时间点为止的时间段之间没有显著差异。然而,实际上,从发送请求数据Req的时间点到接收第一响应数据DFirst的时间点为止的时间段远大于从接收第一响应数据DFirst的时间点到接收最后响应数据DLast的时间点为止的时间段。因此,即使当根据本公开计算延迟时间时,也没有显著的误差。
此外,参考图6和图7,当用于处理设备300之间的通信的协议是操作码协议,并且操作码表示高速缓存维护操作时,可以看到描绘计算延迟时间的方法的图。
在高速缓存维护操作的情况下,即使当请求数据Req通过总线400传输时,也可以传输不包括数据的响应Rsp,而不是响应数据Data。
在操作码表示高速缓存维护操作的情况下,当不包括数据的响应作为响应传输时,延迟时间可以被计算为0。然而,根据本公开,在操作码表示高速缓存维护操作的情况下,当不包括数据的响应作为响应传输时,延迟时间可以被计算为从发送请求数据Req的时间点到接收不包括数据的响应Rsp的时间点为止的时间段,如图6所示。
此外,在操作码表示高速缓存维护操作的情况下,当响应数据Data作为响应被接收时,延迟时间可以被计算为从发送请求数据Req的时间点到接收响应数据Data的时间点为止的时间段,如图7中的箭头所示。
此外,根据实施例,延迟时间可以被计算为从发送请求数据的时间点到已经接收到所有响应数据的时间点为止的时间段。
再次参考图4,如在参考图5、图6和图7描述的方法中,可以根据用于处理设备300之间的通信的协议类型和操作码类型来不同地计算延迟时间,并且计算出的延迟时间的平均值可以被计算为平均延迟时间。
这里,如上所述,事件块110可以根据用于处理设备300之间的通信的协议类型和操作码类型来不同地计算多重未决信号。此外,事件块110可以在与用于计算延迟时间的时间点相同的时间点处将多重未决信号输出为1。因此,一个或多个处理设备分析器210可以通过简单地将多重未决累积值除以参数当中的传输请求的数量来计算平均延迟时间,而不考虑用于处理设备300之间的通信的协议类型以及操作码类型。
主分析器220可以从一个或多个处理设备分析器210接收工作负载,并存储该工作负载。此外,主分析器220可以将存储的工作负载发送到主控制器240。
此外,主分析器220可以从主控制器240接收处理设备300的操作电压和操作频率,然后可以将该操作电压和操作频率发送到一个或多个处理设备驱动器230。
主控制器240可以控制DVFS调节器200的整体操作。主控制器240可以基于从主分析器220接收到的工作负载来确定处理设备300的操作频率和操作电压。
在本公开的一个实施例中,主控制器240可以确定与活跃比率、带宽利用率值和平均延迟时间成比例的操作电压和操作频率。也就是说,当工作负载被测量为高时,主控制器240可以允许通过增加操作电压和操作频率来促进处理设备300的操作。相反,当工作负载被测量为低时,主控制器240可以通过降低操作电压和操作频率来降低处理设备300消耗的功率。
一个或多个处理设备驱动器230可以向处理设备300发送操作频率和操作电压。也就是说,当从主控制器240接收到操作频率和操作电压时,一个或多个处理设备驱动器230可以将操作频率和操作电压发送到对应的处理设备300。
尽管一个或多个处理设备驱动器230在图4中被示为三个处理设备驱动器230,但是本公开不限于此。处理设备驱动器230的数量可以等于由DVFS调节器200控制的处理设备300的数量,并且可以等于处理设备分析器210的数量。
图8是示出根据本公开的实施例的DVFS调节器的操作的流程图。
参考图8,在操作S810中,一个或多个处理设备分析器210可以基于时钟信号的数量和参数来计算工作负载。一个或多个处理设备分析器210可以通过使用时钟信号的数量并使用参数当中的活跃时间来计算活跃比率。此外,一个或多个处理设备分析器210可以基于时钟信号的数量和参数当中的数据传输的数量来计算带宽利用率值。此外,一个或多个处理设备分析器210可以通过使用参数当中的多重未决累积值并使用参数当中的传输请求的数量来计算平均延迟时间。由一个或多个处理设备分析器210执行的计算工作负载的方法的更详细描述可以与参考图4描述的相同。此外,一个或多个处理设备分析器210可以将计算出的工作负载发送到主分析器220。
在操作S820中,主控制器240可以基于工作负载来确定处理设备300的操作频率和操作电压。这里,主控制器240可以确定与由一个或多个处理设备分析器210计算出的活跃比率、带宽利用率值和平均延迟时间成比例的处理设备300的操作频率和操作电压。
在操作S830中,一个或多个处理设备驱动器230可以将操作频率和操作电压发送到处理设备300。一个或多个处理设备驱动器230可以将操作频率和操作电压发送到对应的处理设备300,从而通过DVFS操作来管理处理设备300的功率。
图9是示出根据本公开的实施例的计算系统的操作的流程图。
参考图9,在操作S910中,DVFS调节器200可以激活集成电路100。DVFS调节器200可以通过向集成电路100发送激活信号来激活集成电路100。当集成电路100从DVFS调节器200接收到激活信号时,集成电路100可以通过控制器150来激活事件块110、时钟计数器120和多个性能计数器130。这里,控制器150可以初始化时钟计数器120和多个性能计数器130直到当前时间为止所计数的值。此外,集成电路100可以为时钟计数器120和多个性能计数器130中的每一个计数器设置中断参考值。
在操作S920中,集成电路100可以通过时钟计数器120和多个性能计数器130来对时钟信号的数量和参数进行计数。这里,时钟计数器120可以对从时钟管理电路500接收到的时钟信号的数量进行计数。此外,多个性能计数器130可以基于事件信号来对参数进行计数。对时钟信号的数量和参数进行计数的方法可以与参考图2描述的相同。
在操作S930中,集成电路100可以通过控制器150来确定在时钟计数器120和多个性能计数器130中的哪一个中发生了中断。这里,控制器150可以通过将中断参考值与由时钟计数器120和多个性能计数器130计数的值之一进行比较来确定中断的发生与否。
当控制器150确定在时钟计数器120和多个性能计数器130两者中没有发生中断时,可以在预设的参考时间过去之后重复操作S930。
相反,当控制器150确定在时钟计数器120和多个性能计数器130之一中已经发生中断时,集成电路100可以进行到操作S940。这里,控制器150可以将在时钟计数器120和多个性能计数器130之一中已经发生中断的事实发送到DVFS调节器200。
在操作S940中,控制器150可以去激活时钟计数器120和多个性能计数器130。当从DVFS调节器200接收到去激活信号时,控制器150可以去激活时钟计数器120和多个性能计数器130。
此外,在操作S950中,控制器150可以将时钟信号的数量和参数发送到DVFS调节器200。这里,控制器150可以通过接口140将时钟信号的数量和参数发送到DVFS调节器200。
图10是示出根据本公开的实施例的集成电路的性能的表。
参考图10,根据本公开的实施例的集成电路100消耗4.4mW的功率,并且总共具有16120个门。相比之下,相关技术的集成电路消耗15.7mW的功率,并且总共有113630个门。也就是说,通过根据本公开的实施例的集成电路100,功率消耗可以减少大约72%,并且集成电路100占据的面积可以减少大约85%。
图11是示出根据本公开的实施例的系统的框图。
参考图11,系统30可以由手持式设备(诸如移动电话、智能手机、平板计算机、PDA、EDA、数字相机、数字摄像机、PMP、PND、手持式游戏控制台或电子书阅读器)来实现。
系统30可以包括SoC 3100和存储器设备3200。SoC 3100可以包括CPU3110、GPU3120、NPU 3130、ISP 3140、MIF 3150、时钟管理电路(CMC)3160和功率管理电路(PMC)3170。CPU 3110、GPU 3120、NPU 3130、ISP3140和MIF 3150可以各自对应于上面参考图1至图10描述的处理设备300的实现示例。因此,根据本公开的实施例的集成电路100可以连接到将CPU3110、GPU 3120、NPU 3130、ISP 3140和MIF 3150彼此连接的总线,并且DVFS调节器200可以基于通过集成电路100接收到的时钟信号的数量和参数来执行DVFS操作。
CPU 3110可以响应于由CMC 3160生成的时钟信号,处理或执行存储在存储器设备3200中的命令和/或数据。
GPU 3120可以响应于由CMC 3160生成的时钟信号,获得存储在存储器设备3200中的图像数据。GPU 3120可以根据从MIF 3150提供的图像数据,生成通过显示设备输出的图像的数据、或者可以对图像数据进行编码。
NPU 3130可以指用于执行机器学习模型的任何设备。NPU 3130可以是被设计为执行机器学习模型的硬件块。机器学习模型可以是基于人工神经网络、决策树、支持向量机、回归分析、贝叶斯网络、遗传算法等的模型。人工神经网络的非限制性示例可以包括卷积神经网络(CNN)、具有卷积神经网络的区域(R-CNN)、区域提议网络(RPN)、循环神经网络(RNN)、基于堆叠的深度神经网络(S-DNN)、状态空间动态神经网络(S-SDNN)、去卷积网络、深度置信网络(DBN)、受限玻尔兹曼机(RBM)、完全卷积网络、长短期记忆(LSTM)网络和分类网络。
ISP 3140可以对从位于SoC 3100外部的图像传感器接收到的原始数据执行信号处理操作,并且可以生成具有改善的图像质量的数字数据。
MIF 3150可以为位于SoC 3100外部的存储器设备3200提供接口。存储器设备3200可以包括动态随机访问存储器(DRAM)、相变随机访问存储器(PRAM)、电阻式随机访问存储器(ReRAM)或闪存。
CMC 3160可以生成时钟信号并将该时钟信号提供给SoC 3100的组件。CMC 3160可以包括时钟生成器,诸如锁相环(PLL)、延迟的锁定环(DLL)、晶体等。PMC 3170可以将外部功率转换为内部功率,并且可以向SoC 3100的组件供应内部功率。
图12是示出根据本公开的实施例的包括应用处理器的通信设备的框图。
参考图12,通信设备40可以包括应用处理器(AP)4010、存储器设备4020、显示器4030、输入设备4040和无线电收发器4050。应用处理器4010可以是以上参考图1至图11描述的处理设备300的至少一种实现示例。
无线电收发器4050可以通过天线4060来发送或接收无线电信号。例如,无线电收发器4050可以将通过天线4060接收到的无线电信号改变为能够被应用处理器(AP)4010处理的信号。
因此,应用处理器(AP)4010可以处理从无线电收发器4050输出的信号,并且可以将处理后的信号发送到显示器4030。此外,无线电收发器4050可以将从应用处理器4010输出的信号改变为无线电信号,并且可以通过天线4060将无线电信号输出到外部设备。
输入设备4040是可以通过其输入用于控制应用处理器4010的操作的控制信号或要由应用处理器4010处理的数据的设备,并且可以通过诸如触摸板或计算机鼠标、小键盘或键盘的定点设备来实现。
这里,根据本公开的实施例的集成电路100可以连接到总线(其连接到应用处理器4010),并且DVFS调节器200可以基于通过集成电路100接收到的时钟信号的数量和参数来执行DVFS操作。
根据实施例,通信设备40还可以包括用于向通信设备40中包括的各种组件提供时钟信号的CMU,以及用于向各种组件提供电源电压的PMC。
根据本公开,通过使用上述的集成电路100、DVFS调节器200和计算系统10,可以对用于计算工作负载的参数进行计数,并且可以基于这些参数来执行DVFS操作,从而在占用更少的空间时以更低的功耗执行DVFS操作。
尽管已经参考本公开的实施例具体示出和描述了本公开,但是应当理解,在不脱离所附权利要求的精神和范围的情况下,可以在形式和细节上进行各种改变。
Claims (20)
1.一种集成电路,包括:
事件块,被配置为:
监视连接多个处理设备的总线;以及
基于通过总线传输的数据,输出事件信号;
时钟计数器,被配置为对从时钟管理电路接收到的时钟信号的数量进行计数;
多个性能计数器,被配置为基于事件信号,分别对与工作负载的计算相关的参数进行计数;
接口,被配置为从动态电压和频率缩放DVFS调节器接收操作信号,并将时钟信号的数量和参数发送到DVFS调节器,所述DVFS调节器被配置为基于所述工作负载来确定多个处理设备中的每一个处理设备的操作频率和操作电压;以及
控制器,被配置为基于所述操作信号来控制事件块、时钟计数器和多个性能计数器的操作。
2.根据权利要求1所述的集成电路,其中,所述事件块被配置为基于用于多个处理设备之间的通信的协议,输出事件信号。
3.根据权利要求2所述的集成电路,其中,所述事件信号包括多重未决信号,并且
其中,所述事件块还被配置为当用于处理设备之间的通信的协议包括操作码协议时,基于包括在通过总线传输的数据中的操作码,设置并输出多重未决信号。
4.根据权利要求3所述的集成电路,其中,所述事件块还被配置为:
基于包括在通过总线传输的数据中的操作码对应于数据读取请求或数据写入请求,
当读取请求数据或写入请求数据通过总线传输时,将多重未决信号增加1;以及
当相对于读取请求数据或写入请求数据的响应数据的第一数据通过总线传输时,将多重未决信号减少1。
5.根据权利要求3所述的集成电路,其中,所述事件块还被配置为:
基于包括在通过总线传输的数据中的操作码对应于原子事务,
当请求数据通过总线传输时,将多重未决信号增加1;以及
当与请求数据相对应的读取响应数据和写入响应数据之一通过总线传输时,将多重未决信号减少1。
6.根据权利要求3所述的集成电路,其中所述事件块还被配置为:
基于包括在通过所述总线传输的数据中的操作码对应于高速缓存维护操作,
当读取请求数据或写入请求数据通过总线传输时,将多重未决信号增加1;以及
当读取响应数据、写入响应数据或不包括数据的响应通过总线传输时,将多重未决信号减少1。
7.根据权利要求1所述的集成电路,其中,所述参数包括活跃时间、数据传输的数量、传输请求的数量和多重未决累积值,并且
所述多个性能计数器包括:
第一性能计数器,被配置为对活跃时间进行计数;
第二性能计数器,被配置为对数据传输的数量进行计数;
第三性能计数器,被配置为对传输请求的数量进行计数;以及
第四性能计数器,被配置为对多重未决累积值进行计数。
8.根据权利要求7所述的集成电路,其中,所述第一性能计数器还被配置为基于包括在事件信号中的传输激活信号或多重未决信号,对活跃时间进行计数。
9.根据权利要求7所述的集成电路,其中,所述第二性能计数器还被配置为对包括在事件信号中的数据读取信号和数据写入信号的数量进行计数,作为数据传输的数量。
10.根据权利要求7所述的集成电路,其中,所述第三性能计数器还被配置为对包括在事件信号中的请求信号的数量进行计数,作为传输请求的数量。
11.根据权利要求7所述的集成电路,其中,所述第四性能计数器还被配置为基于包括在事件信号中的多重未决信号,对多重未决累积值进行计数。
12.根据权利要求1所述的集成电路,其中,所述控制器还被配置为:
基于所述操作信号,激活或去激活事件块、时钟计数器或多个性能计数器;以及
确定时钟计数器和多个性能计数器中是否发生了中断。
13.一种动态电压和频率缩放DVFS调节器,包括:
处理设备分析器,被配置为:
从集成电路接收参数和时钟信号的数量,以及
基于所述时钟信号的数量和所述参数来计算工作负载,所述参数和所述时钟信号的数量是基于通过多个处理设备之间的总线传输的数据来计数的;
主分析器,被配置为从处理设备分析器接收工作负载并存储工作负载;
控制器,被配置为基于所述工作负载,确定处理设备的操作频率和操作电压;以及
处理设备驱动器,被配置为将操作频率和操作电压发送到多个处理设备当中的处理设备。
14.根据权利要求13所述的DVFS调节器,其中,所述处理设备分析器还被配置为通过将参数当中的活跃时间除以时钟信号的数量来计算活跃比率。
15.根据权利要求13所述的DVFS调节器,其中,所述处理设备分析器还被配置为:
通过将参数当中的数据传输的数量乘以时钟信号的数量和预先存储的数据宽度来获得结果;以及
通过将所述结果除以操作频率来计算带宽利用率值。
16.根据权利要求13所述的DVFS调节器,其中,所述处理设备分析器还被配置为通过将参数当中的多重未决累积值除以参数当中的传输请求的数量来计算平均延迟时间。
17.一种装置,包括:
时钟计数器,被配置为对从时钟管理电路接收到的时钟信号的数量进行计数;
多个性能计数器,包括:
第一性能计数器,被配置为基于在连接多个处理设备的总线中检测到的事件信号,对与工作负载的计算相关的第一参数进行计数,以及
第二性能计数器,被配置为基于所述事件信号,对与工作负载的计算相关的第二参数进行计数;以及
接口,被配置为将时钟信号的数量、第一参数和第二参数发送到动态电压和频率缩放DVFS调节器,所述DVFS调节器被配置为基于所述工作负载,确定多个处理设备中的每一个处理设备的操作频率和操作电压。
18.根据权利要求17所述的装置,还包括:
控制器,被配置为:
从DVFS调节器接收操作信号;以及
基于所述操作信号,控制时钟计数器、第一性能计数器或第二性能计数器中的一个或多个的操作。
19.根据权利要求17所述的装置,还包括:
事件块,被配置为:
检测总线中的事件,以及
生成事件信号。
20.根据权利要求17所述的装置,其中,所述第一参数或所述第二参数包括活跃时间、数据传输的数量、传输请求的数量或多重未决累积值中的一个。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20210065710 | 2021-05-21 | ||
KR10-2021-0065710 | 2021-05-21 | ||
KR1020210117198A KR20220157845A (ko) | 2021-05-21 | 2021-09-02 | 집적 회로, dvfs 제어 장치 및 이들을 포함하는 컴퓨팅 시스템 |
KR10-2021-0117198 | 2021-09-02 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115373506A true CN115373506A (zh) | 2022-11-22 |
Family
ID=84061059
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210556012.7A Pending CN115373506A (zh) | 2021-05-21 | 2022-05-20 | 集成电路、动态电压和频率缩放调节器及包括其的系统 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11927981B2 (zh) |
CN (1) | CN115373506A (zh) |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090049314A1 (en) | 2007-08-13 | 2009-02-19 | Ali Taha | Method and System for Dynamic Voltage and Frequency Scaling (DVFS) |
KR101991682B1 (ko) | 2012-08-29 | 2019-06-21 | 삼성전자 주식회사 | Dvfs 제어 방법 및 이를 이용한 시스템-온 칩 |
KR102135100B1 (ko) | 2013-08-23 | 2020-07-17 | 삼성전자주식회사 | 전자 장치의 동적 전압 주파수 제어 방법 및 장치 |
KR101842016B1 (ko) | 2013-12-10 | 2018-03-28 | 한국전자통신연구원 | 멀티 코어 환경에서의 동적 전력 제어방법 |
US20150378424A1 (en) | 2014-06-27 | 2015-12-31 | Telefonaktiebolaget L M Ericsson (Publ) | Memory Management Based on Bandwidth Utilization |
KR102222752B1 (ko) | 2014-08-01 | 2021-03-04 | 삼성전자주식회사 | 프로세서의 동적 전압 주파수 스케일링 방법 |
KR102278475B1 (ko) | 2014-10-14 | 2021-07-19 | 삼성전자주식회사 | 전자 장치 및 그 제어 방법 |
KR102375925B1 (ko) | 2015-08-31 | 2022-03-17 | 삼성전자주식회사 | Cpu의 작동 방법과 상기 cpu를 포함하는 시스템의 작동 방법 |
KR20180076840A (ko) | 2016-12-28 | 2018-07-06 | 삼성전자주식회사 | Dvfs 동작을 수행하는 어플리케이션 프로세서, 이를 포함하는 컴퓨팅 시스템 및 이의 동작 방법 |
KR20180078558A (ko) | 2016-12-30 | 2018-07-10 | 삼성전자주식회사 | 시스템 온 칩의 구동 방법, 이를 수행하는 시스템 온 칩 및 이를 포함하는 전자 시스템 |
-
2022
- 2022-05-20 US US17/749,681 patent/US11927981B2/en active Active
- 2022-05-20 CN CN202210556012.7A patent/CN115373506A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
US11927981B2 (en) | 2024-03-12 |
US20220374038A1 (en) | 2022-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11327555B2 (en) | Application processor performing a dynamic voltage and frequency scaling operation, computing system including the same, and operation method thereof | |
US8656196B2 (en) | Hardware automatic performance state transitions in system on processor sleep and wake events | |
US8694811B2 (en) | Power management for digital devices | |
US8924753B2 (en) | Apparatus and method for adaptive frequency scaling in digital system | |
US10509455B2 (en) | Method and apparatus to control a link power state | |
US9798375B1 (en) | Credit-based processor energy consumption rate limiting system | |
KR20120063436A (ko) | 인터럽트 분산 스킴 | |
WO2010080499A2 (en) | Optimization of application power consumption and performance in an integrated system on a chip | |
US11054882B2 (en) | Externally-triggered throttling | |
US6970962B2 (en) | Transfer request pipeline throttling | |
US20060026375A1 (en) | Memory controller transaction scheduling algorithm using variable and uniform latency | |
US9971390B1 (en) | Processor energy consumption rate limiting system | |
US8161252B1 (en) | Memory interface with dynamic selection among mirrored storage locations | |
EP4145249A1 (en) | Per-lane power management of bus interconnects | |
CN115373506A (zh) | 集成电路、动态电压和频率缩放调节器及包括其的系统 | |
US20150186157A1 (en) | Techniques for workload scalability-based processor performance state control | |
US20170075589A1 (en) | Memory and bus frequency scaling by detecting memory-latency-bound workloads | |
US11552892B2 (en) | Dynamic control of latency tolerance reporting values | |
WO2022144677A1 (en) | Method and apparatus for providing non-compute unit power control in integrated circuits | |
KR20220113087A (ko) | Dvfs 동작을 수행하는 집적 회로, 컴퓨팅 시스템 및 집적 회로의 동작 방법 | |
KR20220157845A (ko) | 집적 회로, dvfs 제어 장치 및 이들을 포함하는 컴퓨팅 시스템 | |
US10621115B2 (en) | System and method for communication link management in a credit-based system | |
US20220187866A1 (en) | Electronic device controlling frequency of clock signal and method of operating the electronic device | |
US8447895B2 (en) | Methods and apparatus for decreasing power consumption and bus activity | |
CN117590925A (zh) | 集成电路及其操作方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |