CN101438246A - 半导体集成电路 - Google Patents
半导体集成电路 Download PDFInfo
- Publication number
- CN101438246A CN101438246A CNA2006800545986A CN200680054598A CN101438246A CN 101438246 A CN101438246 A CN 101438246A CN A2006800545986 A CNA2006800545986 A CN A2006800545986A CN 200680054598 A CN200680054598 A CN 200680054598A CN 101438246 A CN101438246 A CN 101438246A
- Authority
- CN
- China
- Prior art keywords
- mentioned
- processor
- voltage
- control
- territory
- 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/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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
-
- 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
-
- 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
-
- 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/3293—Power saving characterised by the action undertaken by switching to a less power-consuming processor, e.g. sub-CPU
-
- 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)
- Software Systems (AREA)
- Power Sources (AREA)
- Microcomputers (AREA)
- Semiconductor Integrated Circuits (AREA)
Abstract
兼顾包含多个处理器的半导体集成电路中的低功耗控制的实现和要求实时性的处理性能的保障。在包含多个处理器的半导体集成电路中,设置管理单元,该管理单元用于通过组合第一控制和第二控制来使在上述处理器中进行处理的进度加速,其中,上述第一控制根据程序所包含的控制信息来变更电压的值和时钟信号的频率;上述第二控制按照在上述处理器中进行处理的进展情况来变更上述电压的值和上述时钟信号的频率。虽然各处理器的频率和电压被提升的期间功耗增加,但能够进行高速处理。并且,虽然各处理器的频率和电压未被提升期间不能高速处理,但能够减少功耗。由此,能够兼顾包含多个处理器的半导体集成电路中的低功耗控制的实现和要求实时性的处理性能的保障。
Description
技术领域
本发明涉及半导体集成电路,尤其涉及例如有效应用于包含多个微处理器(简称为“处理器”)的多处理器芯片的技术。
背景技术
由于元件随着半导体制造技术的进步而精细化,能够在1个芯片上集成庞大数量的晶体管。以往,处理器的高频化与精细化一起发展起来,但由于工作时功率的增加、或由漏电流引起的待机时功率的增加,越发难以实现工作频率的提高,进而在基于逻辑方式的改善的性能提高上也开始出现极限。
另一方面,出现了汽车的导航***、手机、数字电视等将图像、声音、数据库信息这样的多种数据同时处理的数字民用设备,在短时间内处理特性不同的庞大的数据的要求日益提高。对于这样的要求,为了兼顾性能提高和功耗降低,使用了将通用处理器、专用处理器、可重构处理器或DSP(Digital Signal Processor)等加速器这样的各种处理器搭载在1个半导体芯片上的、所谓的多处理器芯片。利用多处理器芯片,通过并行进行处理,即使不使工作频率提高也能够获得高运算性能。
另外,在单核的LSI(半导体集成电路)中,通过控制处理器的频率和电压,实现了功耗降低。这是通过在处理器等的处理负载小时使频率和电压降低、或切断不进行运算的处理器的电源来谋求整个***的功耗和发热量降低的技术。该方法在多个处理器被搭载于1个LSI上时也能通过应用对各个处理器控制频率和电压的技术来谋求功耗降低。例如,在专利文献1、专利文献2、以及专利文献3中,已知在多处理器结构***中,通过操作***的控制使***的工作频率和电路的电源电压动态地变化,能够降低整个***的功耗。
专利文献1:日本特开2002-99433号公报
专利文献2:日本特开2002-202893号公报
专利文献3:日本特开2001-229040号公报
发明内容
本发明人研究了包含多个处理器的半导体集成电路中的功耗降低技术。
以往,有对某个任务静态地指定了频率和电压的程序,由此能够以低功耗实现处理。另外,在要求实时性的处理中,使用如下方法,即,计算在处理中相对于要完成处理的时间的当前的处理的进展情况,动态地变更频率和电源电压而谋求功耗降低。这些的组合在例如作为图像处理的MPEG(Moving Picture Coding Experts Group/MovingPicture Experts Group)中,在必须以三十分之一秒处理一帧时,采用了如下方法,即,预先以低电压且低频率执行处理,在工作由于反复处理或异常的干扰而迟缓时使电源电压和频率提高。
但是,按照现有技术,即使执行对多个处理器静态地指定了频率和电压的程序,也不额外进行动态的频率控制。这是因为,以往,被静态地指定了电压和频率的LSI,其电路被分配给实时处理专用,或难以引入异常的干扰,多个实时处理不会同时进行,因此无需动态的频率控制。
但是,今后随着处理性能的要求越来越高,并且,随着多处理器化在嵌入式设备中也渐成主流,考虑到多个实时处理同时执行的情况和通过通信下载程序的情况,此时,出现对指定了静态的频率-电压控制的程序不按计划执行处理的情况。其主要原因在于,对作为公共资源的总线和公共存储器的访问与其它处理器的请求重叠。另外,存在对事件进行的处理、例如由于手机上有来电的情况或在数字家电中通过用户按开关而启动任务的情况而导致在预先静态地计划的频率-电压下进行的处理不能按计划执行的情况。
另外,随着多核化、众核化的发展,用于对各处理器进行频率-电压控制的信息、计算量都很大,有来不及进行频率-电压控制、整个芯片的处理本身也出现破绽的危险。
本发明的目的在于,兼顾包含多个处理器的半导体集成电路中的低功耗控制的实现和要求实时性地处理性能的保障。
本发明的另一目的在于,通过静态地指定的频率-电压控制和根据处理的进度对频率和电压的动态控制的协调来实现低功耗。
本发明的上述以及其它目的和新的特征将会通过本说明书的记述和附图得以明确。
简单说明本申请所公开的发明中有代表性的发明的概要如下。
(1)一种半导体集成电路,包含通过分别被提供电压和时钟信号而能执行程序的多个处理器,还包含管理单元,该管理单元用于通过组合第一控制和第二控制来使在上述处理器中进行处理的进度加速,其中,上述第一控制根据上述程序所包含的控制信息来变更上述电压的值和上述时钟信号的频率;上述第二控制按照在上述处理器中进行处理的进展情况来变更被提供给该处理器的上述电压的值和上述时钟信号的频率。
按照上述装置,虽然各处理器的频率和电压被提升的期间功耗增加,但能够进行高速处理。并且,虽然各处理器的频率和电压未被提升期间不能高速处理,但能够减少功耗。这将达到能够兼顾包含多个处理器的半导体中的低功耗控制的实现和要求实时性的处理性能的保障这样的本发明的目的。并且,能够达到通过静态地指定的频率-电压控制指令和根据处理的进度动态地控制频率和电压机构的协调工作来谋求降低功耗这样的目的。
(2)在上述(1)中,可以构成为,在包含执行预定处理的1个以上处理器的各组中设定域,上述第二控制按照各域的上述进展情况来进行。
(3)在上述(1)中,可以构成为,上述管理单元包含按照上述各域的上述进展情况来变更总线使用的优先级的处理。
(4)一种半导体集成电路,可以是,包含通过分别被提供电压和时钟信号而能执行程序的多个处理器、和用于使在上述处理器中进行处理的进度加速的管理单元,上述管理单元包含用于执行第一控制、第二控制以及第三控制的处理器,其中,上述第一控制根据上述程序所包含的控制信息来变更上述电压的值和上述时钟信号的频率;上述第二控制按照在上述处理器中进行处理的进展情况来变更被提供给该处理器的上述电压的值和上述时钟信号的频率;上述第三控制能按照在上述处理器中进行处理的进展情况来变更总线使用的优先级,在包含执行预定处理的1个以上处理器的各组中设定域,在上述第二控制中包含第一处理和第二处理,其中,上述第一处理确认上述各域的进行处理的进展情况;上述第二处理在存在进度比预定慢的域的情况下,在进度慢的域之中,从优先级高的域开始,顺次针对属于该域的处理器使上述电压的值和上述时钟信号的频率上升。
(5)在上述(4)中,可以是,在上述第三控制中包含第三处理和第四处理,其中,上述第三处理确认各域的进行处理的进展情况,上述第四处理设定总线使用的优先级,使得越是必须确保实时性的域优先级越高,并且,在优先级出现竞争的情况下,提高关于进度慢的域的总线使用的优先级。
(6)一种半导体集成电路,包含通过分别被提供电压和时钟信号而能执行程序的多个处理器,还包含运算电路,能基于根据上述程序所包含的控制信息而设定的上述电压的值和上述时钟信号的频率、和各域的进行处理的进展情况,来计算用于满足结束处理所需要的请求时间的工作频率和工作电压;时钟生成电路,用于生成基于上述运算电路的计算结果的频率的时钟信号并将其提供给相应的处理器;以及电压产生电路,用于将基于上述运算电路的计算结果的工作电压和衬底偏压提供给相应的处理器。
(7)在上述(6)中,可以是,上述电压产生电路通过随着上述处理器的工作电压的控制使该处理器的衬底偏压上升或下降,能够控制形成该处理器的器件的阈值电压。
(8)在上述(6)中,可以是,上述运算电路包含用于按照上述各域的进行处理的进展情况来变更总线使用的优先级的处理。
(9)在上述(1)~(8)中,上述处理器是通用处理器、DSP或可重构处理器。
简单说明本申请所公开的发明中有代表性的发明所获得的效果如下。
即,能够兼顾包含多个处理器的半导体集成电路中的低功耗控制的实现和要求实时性的处理性能的保障。并且,能够通过被静态地指定的频率-电压控制指令、以及根据处理的进度动态地控制频率和电压的机构的协调工作来实现功耗的降低。
附图说明
图1是作为本发明的半导体集成电路的一例的多处理器芯片的结构例框图。
图2是上述多处理器芯片中的要部的结构例框图。
图3是上述多处理器芯片的整体的结构例框图。
图4是上述多处理器芯片中的主要工作的流程图。
图5是上述多处理器芯片中的主要工作的流程图。
图6是上述多处理器芯片中的主要工作的流程图。
图7是上述多处理器芯片中的主要寄存器的设定例说明图。
图8是上述多处理器芯片中的主要寄存器的设定例说明图。
图9是上述多处理器芯片中的主要寄存器的设定例说明图。
图10是上述多处理器芯片中的主要寄存器的设定例说明图。
图11是上述多处理器芯片中的主要寄存器的设定例说明图。
图12是上述多处理器芯片中的主要寄存器的设定例说明图。
图13是上述多处理器芯片中的主要寄存器的设定例说明图。
标号说明
10 多处理器芯片
100 多处理器管理单元
120、121 域
130~135 程序
140~143 通用处理器
144、145 基于IP的处理器
146 DMAC
147 RAM
201 RAM
203 处理器
204 电压产生器
205 振荡器
206 PLL
207 域设定寄存器
208 控制寄存器
209 电压寄存器
210 频率寄存器
310 总线
具体实施方式
在图3中,示出作为本发明的半导体集成电路的一例的多处理器芯片。
图3所示的多处理器芯片10没有特别的限制,包含通用处理器(CPU:Central Processing Unit)140~143、基于IP(IntellectualProperty)的处理器144、145、DMAC(Direct Memory Access Controller)146、RAM(Random Access Memory)147、以及多处理器管理单元(CONT)100,利用公知的半导体集成电路制造技术在单晶硅衬底等的一个半导体衬底上形成。
上述通用处理器140、141、142、143分别按照预先设定的程序或经由通信线而被下载的程序进行预定的运算处理。
上述DMAC146是用于不利用上述通用处理器140~145进行数据传送的模块,通过预先由通用处理器140~145进行传送的设定并发送启动信号而自动地进行数据传送。
通常,IP是用于设计LSI的公共资源,在本例中,上述基于IP的处理器144、145具体来说是DSP和某个功能专用的硬件、可重构处理器等高性能处理器。
此外,方便起见,也将上述通用处理器140、141、142、143和上述基于IP的处理器144、145简称为“处理器”。
上述RAM147是可由上述通用处理器140、141、142、143和上述基于IP的处理器144、145访问的公共存储器,被用于运算处理中的操作区域等。
上述多处理器管理单元100能够进行向上述通用处理器140、141、142、143和上述基于IP的处理器144、145、DMAC146提供的时钟信号的频率控制、向上述通用处理器140、141、142、143和上述基于IP的处理器144、145提供的电源电压的控制、以及用于优先使用总线的总线使用优先级的变更。
该多处理器芯片10如图1所示,设定有多个域120、121。在此,所谓域是指包含用于分割预定的处理而执行的多个处理器的组。没有特别的限制,在域120中包含通用处理器140,在域121中包含通用处理器141~143和基于IP的处理器144、145。该处理器141~145能执行对应的程序130~135。
在图2中示出上述多处理器管理单元100的结构例。
上述多处理器管理单元100如图2所示,包含RAM201、处理器(CPU)203、电压产生器(VGEN)204、振荡器(FGEN)205、域设定寄存器(Domain set REG)、控制寄存器(Control REG)、电压寄存器(V-REG)209、频率寄存器(F-REG)210。
上述CPU203具有通过组合第一控制和第二控制而使上述处理器140~145中进行的处理的进度加快的功能,其中,上述第一控制根据由上述处理器140~145执行的程序(CPU code、IP code)所包含的控制信息变更提供给上述处理器140~145的电压的值、以及提供给上述处理器140~145的时钟信号的频率,上述第二控制根据上述处理器140~145中进行的处理的进展情况变更提供给该处理器140~145的上述电压的值和上述时钟信号的频率。为了进行这样的控制处理,参照在上述RAM201、域设定寄存器207、控制寄存器208、电压寄存器209、频率寄存器210中所设定的各种信息。上述电压产生器204按照上述电压寄存器209的设定信息,产生提供给处理器140~145的电压。该电压包含处理器140~145分别要求的电源电压。另外,上述振荡器205包含PLL(Phase Locked Loop)电路,产生被提供给处理器140~145的时钟信号。该时钟信号的频率按照上述频率寄存器210的设定信息来确定。
说明在上述控制寄存器208中设定的数据。
在上述控制寄存器208中,没有特别限制,设定静态的频率-电压控制、动态的频率-电压控制信息(参照图7)以及是否进行动态的总线使用优先级控制的识别信息(参照图13(A))。即,在执行静态的频率-电压控制的情况下,如图7所示,在相应的存储区域设定逻辑值“1”,在执行动态的频率-电压控制的情况下在相应的存储区域设定逻辑值“1”。在设定了逻辑值“0”的情况下,不执行上述频率-电压控制,在双方都被设定为逻辑值“0”的情况下,不执行频率-电压控制,用预定的频率-电压执行处理。并且,在双方处于同时执行的设定的情况下,执行静态的频率-电压控制和动态的频率-电压控制的协调控制。
在控制寄存器208中,形成存储区域,用于在作为公共资源的总线310和RAM147由属于某个域的处理器使用的情况下,当接受了来自属于优先级比当前使用公共资源的域高的域的处理器的访问时,设定是否使当前的公共资源的使用强制停止并执行属于优先级高的域的处理器等的公共资源的使用。例如,在控制寄存器208中,如图13(B)所示,在对释放(release)的项设定为逻辑值“1”的情况下,来自优先级高的域的访问具有绝对的优势。
在上述RAM201中,形成用于设定通过程序130~135的执行而设定的信息(静态信息)的静态信息记录区域。在此,上述在静态信息记录区域设定的静态信息,没有特别限制,如图8所示,包含提供给处理器140~145的时钟频率的设定信息(Fsta)、提供给处理器的电压的电平信息(Vsta),此外,如图9所示,还包含必须以域单位结束处理的时间(截止线)信息。另外,在上述RAM201中,形成用于设定根据程序的执行情况而设定的信息(动态信息)的动态信息记录区域。在此,在上述动态信息记录区域设定的动态信息,并无特别限制,如图9所示,包含正在以域单位执行的处理的进度信息。上述截止线信息和进度信息在各域由对应的处理器设定。即,在各域利用对应的处理器执行的程序在上述静态信息记录区域和动态信息记录区域存储截止线信息和进度信息。所存储的信息如后述那样,被用于是否需要多处理器管理单元100的动态的频率-电压控制的判断。该截止线信息和进度信息在域单位是必要的信息,所以其存储区域对应于上述域120、121。
在不必确保实时性的处理中,上述截止线设定没有重要的意义。在这种情况下,为了能识别该处理是不必确保实时性的处理而设定预先确定的值。
在图10(A)中,示出频率寄存器210的设定例,在图10(B)中,示出电压寄存器209的设定例。频率寄存器210、电压寄存器209分别与处理器140~145对应设置。对频率寄存器210、电压寄存器209的设定由处理器203进行。如图10(A)所示,对一个频率寄存器210设定了“120”的情况下,对与之对应的处理器从振荡器205提供120MHz的时钟信号。另外,如图10(B)所示,对一个电压寄存器209设定了“1.2”的情况下,对与之对应的处理器从电压产生器204提供1.2V的电源电压。
在图11、图12中,示出上述域设定寄存器207的设定例。
在上述域设定寄存器207中,如图11所示,示出处理器和域的对应关系。在本例中,处理器140以单体形成域120,处理器141~145形成域121。另外,在上述域设定寄存器207中,如图12所示,设定域的优先级。即,在有必要加速多个域相对于截止线的处理的情况下,设定提高频率-电压以及设定总线使用的优先级时的各域的优先级。
在图12所示的例子中,域120的优先级为2,域121的优先级为1。例如,设域121进行必须确保实时性的处理,域122进行不必确保实时性的处理。此时,域121是必须确保实时性的处理,所以频率和电压被提升。并且,还有必要提高总线使用的优先级。在域的优先级不同的情况下,从优先级高的域开始将总线使用的优先级设定得高,同样,从优先级高的域开始进行频率-电压设定的提升。频率-电压的设定被设定为不超过芯片允许的最大功率和最大温度。另外,在域间的优先级相同的情况下,通过进一步从进展情况慢的域开始优先提升时钟信号的频率和电源电压来进行加速处理。
在本发明的多处理器芯片10中,能够用上述通用处理器140、141、142、143和上述基于IP的处理器144、145执行预定的应用程序,为了使其能够实现,生成各处理器的程序130~135。此时,在程序130~135中,可以包含用于变更执行某个任务时的频率和电压的代码。
在面向各处理器的程序130~135中,可以包含在整个域执行的应用程序必须在何时执行结束这样的截止线信息和执行的全部处理的百分之几已结束这样的进度信息。
在各处理器执行的程序代码中存在频率-电压控制指令、截止线设定的指令、处理的进度信息输出指令的情况下,各处理器140~145对上述多处理器管理单元100所包含的上述预定寄存器记录各自的值。
在上述多处理器管理单元100中,进行由程序静态地赋予的频率-电压控制、多处理器管理单元100根据处理的进展情况进行控制的动态的频率-电压的控制以及各处理器的总线使用的优先级的变更。在静态的频率-电压控制、以及动态的频率-电压控制这两者都无效的情况下,不进行频率-电压控制、总线优先级的变更。在两个控制都有效的情况下,进行两者的协调控制。
多处理器管理单元100在频率-电压控制功能有效的情况下,例如定期地确认记录有进展情况和静态地赋予的频率-电压控制的信息的寄存器等的存储区域,根据所记录的值进行各处理器的频率和电压、以及总线优先级的控制。此时,用于进行动态的控制的进度信息在各域对多处理器管理单元100赋予。实际的频率-电压控制在各个处理器进行。由于在各域赋予处理的进展情况,削减了用于动态地进行处理的频率-电压控制的运算量,消除了动态的频率-电压控制和总线优先级变更的麻烦。由此能够防止动态的频率-电压控制的处理的破绽。
例如在某个时刻,在图1中的域121中进行的处理的进展情况为10%,并且,在图1中的域120中执行的处理的进展情况为50%。如果在两个域执行的处理的优先级和截止线相同,则多处理器管理单元100通过使域120全体的频率和电压上升,谋求处理的加速。
同时,提高属于进度慢的域的处理器利用总线310或RAM147这样的公共资源时的优先级。由此,在处理慢的域要利用总线310或DMAC146、RAM147等的公共资源而与其它的域发生了竞争的情况下,由于能优先地使用公共资源而谋求处理的加速。此时,在优先级低的域已经使用了公共资源的情况下,可以设定是否使其处理中断而能够使用公共资源,或在当前正在执行的处理结束之后能否优先地利用其资源。
接下来,详细描述多处理器管理单元100的静态的频率-电压控制。
在图4中,示出基于由程序130~135赋予的频率-电压控制指令的控制的流程。
根据由程序130~135赋予的静态的电压-频率控制指令,在多处理器管理单元100内的RAM201中,设定频率设定值Fsta和电压设定值Vsta(400)。然后,定期地或根据被赋予的指令不定期地确认存储在上述RAM201中的设定值(Fsta和Vsta)(401),进行上次确认时的Fsta’和Vsta’与当前所设定的Fsta和Vsta是否不同的判断(402)。在该判断中,判断为与上次确认时的值不同(YES)的情况下,参考后述的动态的频率-电压设定值,对各处理器设定新的频率和电压值(403)。然后,在频率和电压值稳定了之后重新开始任务的执行(404)。然后,转移到上述步骤400的设定处理。在上述步骤402的判断中,在判断为与上次确认时的值相同(NO)的情况下,转移到上述步骤400的设定处理。
接下来,说明多处理器管理单元100的动态的频率-电压控制。
在图5中,示出根据在各域执行的处理的进展情况动态地控制频率和电压时的流程。
根据对RAM201的设定定期地或根据被赋予的指令确认当前正在各域执行的处理的进展情况(500)。具体来说,通过在各域执行程序,对上述RAM201记录有当前执行中的处理的进展情况,所以根据其值计算相对于必须结束其处理的时间在当前的设定频率和设定电压下其处理是否会结束。在此,必须结束处理的时间对上述RAM201设定(参照图9)。
然后,进行是否存在进度比预定慢的域的判断(501)。即,检查在必须结束上述处理的时间内处理是否结束。在该判断中,当判断为存在进度比预定的慢的域(YES)时,使其域所包含的全部处理器的频率和电压上升,使处理的进度加快(502)。此时设定的频率和电压考虑了上述的静态的频率设定值Fsta和静态的电压设定值Vsta后设定属于对象域的运算器的频率和电压(502)。该频率和电压的变更,可以列举出对静态的频率设定值Fsta和静态的电压设定值Vsta加上动态的频率设定值Fdyn和动态的电压设定值Vdyn的方法、和对静态的频率设定值Fsta和静态的电压设定值Vsta动态地将其倍增的方法。当然,这些频率设定和电压设定取决于作为对象的处理器能获得的频率设定值和电压设定值,也考虑近似的处理。此时,在不超过作为芯片整体能允许的最大功率和最大允许温度的范围使处理的进度加快,在判断为多个域的每一个的处理的进展情况发生了延迟的情况下,从进度慢的域之中执行优先级高的域开始优先地提高电压和频率。由此加快该处理。然后,在频率和电压值稳定了之后重新开始任务的执行(503)。然后,转移到上述步骤500的确认处理。另外,在上述步骤501的判断中,当判断为没有进度比预定的慢的域(NO)时,进行是否正在执行进度加速处理的判断(504)。在该判断中,当判断为正在执行进度加速处理(YES)时,解除对进度的加速中的域的频率-电压提升处理(505)。这是因为在通过提高频率-电压和提高总线使用的优先级而恢复了处理的延迟的情况下,不需要进度的加速。然后,在解除了对进度的加速中的域的频率-电压提升处理之后,转移至上述步骤500的确认处理。另外,在上述步骤504的判断中,当判断为没有在执行进度加速处理(NO)时也转移至上述步骤500的确认处理。像这样观察各域的处理的进展情况,根据需要动态地变更处理器的电源电压和提供给该处理器的时钟信号的频率,如果不需要进度的加速,则解除上述电源电压和时钟信号的频率的提升处理,所以能够不引起功耗的增大。
在图6中,示出根据在各域执行的处理的进展情况动态地变更总线310的使用的优先级时的流程。
根据对多处理器管理单元100内的控制寄存器208的设定定期地、或根据被赋予的指令确认当前正在各域执行的处理的进展情况(600)。具体来说,从各域对上述RAM201记录当前执行中的处理的进展情况,根据其值计算相对于必须结束其处理的时间在当前的设定频率和设定电压下其处理是否会结束。在此,必须结束处理的时间对上述RAM201设定。然后,进行是否存在处理进度比预定慢的域的判断(601)。在该判断中,当判断为存在处理进度比预定慢的域(YES)时,从执行优先级高的域开始优先地提高能使用总线的优先级(602)。例如使越是需要确保实时性的处理优先级越高。各域的有效优先级可以设定在上述域设定寄存器207中。即,参考各域的处理的进展情况和各域的执行优先级进行总线使用的优先级的设定(602)。在进行了该总线使用的优先级的设定之后转移到上述步骤600的处理。另外,在上述步骤601的判断中,当判断为没有处理进度比预定慢的域(NO)时,进行是否正在执行进度加速处理(步骤602的处理)的判断(603)。在该判断中,当判断为正在执行进度加速处理(步骤602的处理)(YES)时,将上述步骤602中的优先级的变更返回到原状态之后转移到上述步骤600的处理(604)。另外,在上述步骤603的判断中,当判断为没有在执行进度加速处理(步骤602的处理)(NO)时,也转移到上述步骤600的处理。
按照上述例子,能够获得以下的作用效果。
(1)当在各处理器执行的程序代码中存在频率-电压控制指令、截止线设定的指令、处理的进度信息输出指令时,各处理器140~145对上述多处理器管理单元100所包含的上述预定寄存器记录各个值。多处理器管理单元100,进行由程序赋予的静态的频率-电压控制、多处理器管理单元100根据处理的进展情况进行控制的动态的频率-电压的控制以及各处理器的总线使用的优先级的变更。多处理器管理单元100在频率-电压控制功能有效的情况下,例如定期地确认记录了进展情况和静态地赋予的频率-电压控制的信息的寄存器等的存储区域,根据所记录的值进行各处理器的频率和电压、以及总线优先级的控制。虽然在各处理器的频率和电压被提升的期间功耗增加,但能够高速处理。另外,虽然在各处理器的频率和电压未被提升的期间不能高速处理但能减少功耗。因此,通过上述这样的控制,能够兼顾包含多个处理器的半导体集成电路中的低功耗控制的实现和要求实时性的处理性能的保障。并且,能够通过静态地指定的频率-电压控制指令和根据处理的进度动态地控制频率和电压的机构的协调工作谋求功耗的降低。
(2)用于进行动态的控制的进度信息在各域对多处理器管理单元100赋予。实际的频率-电压控制在各处理器进行。由于对各域赋予处理的进展情况,所以能够削减动态地进行处理的频率-电压控制的运算量,消除动态的频率-电压控制和总线优先级变更的麻烦。由此能够防止动态的频率-电压控制的处理的破绽。
(3)同时,提高属于进度慢的域的处理器利用总线310或RAM147这样的公共资源时的优先级。由此,在处理慢的域要利用总线310或RAM147等的公共资源而与其它的域发生了竞争的情况下,能优先地使用公共资源,由此进一步加快处理。
(4)上述(1)至(3)的作用效果,在执行手机的信息接收或嵌入设备中的基于用户指示的处理这样的对事件进行的处理的情况下,另外在经由网络下载静态地计划的程序并执行等情况下,在必须保持实时性的处理的执行中尤为显著。
以上基于实施方式具体说明了本发明人做出的发明,但不言而喻,本发明并不限定于此,在不脱离其主旨的范围内可进行各种变更。
例如,也可以通过控制形成处理器140~145的半导体区域的衬底偏压来控制晶体管的阈值电压。例如在电压产生电路204中,在生成形成处理器140~145的半导体区域的衬底偏压的情况下,在根据各域的处理的进展情况提升被提供给处理器的电源电压时,通过与之联动地对该处理器的nMOS晶体管的衬底施加正的电压、并对pMOS晶体管的衬底施加比电源电压低的电压,使得形成该处理器的nMOS晶体管和pMOS晶体管的阈值电压的绝对值降低。通过降低CMOS晶体管的阈值电压的绝对值能够使该器件高速工作。另外,在不必使处理器高速工作的情况下,通过预先对nMOS晶体管的衬底施加负的电压并对pMOS晶体管的衬底施加比电源电压高的电压,使得形成该处理器的nMOS晶体管和pMOS晶体管的阈值电压的绝对值上升。通过使nMOS晶体管和pMOS晶体管的阈值电压的绝对值上升,能够降低该器件的漏电流。这在降低多处理器芯片100的功耗上是有利的。
工业上的可利用性
本发明能够广泛应用于包含多个处理器的数据处理装置。
Claims (9)
1.一种半导体集成电路,包含通过分别被提供电压和时钟信号而能执行程序的多个处理器,其特征在于:
还包含管理单元,该管理单元用于通过组合第一控制和第二控制来使在上述处理器中进行处理的进度加速,其中,
上述第一控制根据上述程序所包含的控制信息来变更上述电压的值和上述时钟信号的频率;上述第二控制按照在上述处理器中进行处理的进展情况来变更被提供给该处理器的上述电压的值和上述时钟信号的频率。
2.根据权利要求1所述的半导体集成电路,其特征在于:
在包含执行预定处理的1个以上处理器的各组中设定域,上述第二控制按照各域的上述进展情况来进行。
3.根据权利要求1所述的半导体集成电路,其特征在于:
上述管理单元包含按照上述各域的上述进展情况来变更总线使用的优先级的处理。
4.一种半导体集成电路,其特征在于:
包含通过分别被提供电压和时钟信号而能执行程序的多个处理器、和用于使在上述处理器中进行处理的进度加速的管理单元,
上述管理单元包含用于执行第一控制、第二控制以及第三控制的处理器,其中,
上述第一控制根据上述程序所包含的控制信息来变更上述电压的值和上述时钟信号的频率;上述第二控制按照在上述处理器中进行处理的进展情况来变更被提供给该处理器的上述电压的值和上述时钟信号的频率;上述第三控制能按照在上述处理器中进行处理的进展情况来变更总线使用的优先级,
在包含执行预定处理的1个以上处理器的各组中设定域,
在上述第二控制中包含第一处理和第二处理,其中,
上述第一处理确认上述各域的进行处理的进展情况;上述第二处理在存在进度比预定慢的域的情况下在进度慢的域之中,从优先级高的域开始,顺次针对属于该域的处理器使上述电压的值和上述时钟信号的频率上升。
5.根据权利要求4所述的半导体集成电路,其特征在于:
在上述第三控制中包含第三处理和第四处理,其中,
上述第三处理确认各域的进行处理的进展情况,上述第四处理设定总线使用的优先级,使得越是必须确保实时性的域优先级越高,并且,在优先级出现竞争的情况下,提高关于进度慢的域的总线使用的优先级。
6.一种半导体集成电路,包含通过分别被提供电压和时钟信号而能执行程序的多个处理器,其特征在于:还包含
运算电路,能基于根据上述程序所包含的控制信息而设定的上述电压的值和上述时钟信号的频率、和各域的进行处理的进展情况,来计算用于满足结束处理所需要的请求时间的工作频率和工作电压;
时钟生成电路,用于生成基于上述运算电路的计算结果的频率的时钟信号并将其提供给相应的处理器;以及
电压产生电路,用于将基于上述运算电路的计算结果的工作电压和衬底偏压提供给相应的处理器。
7.根据权利要求6所述的半导体集成电路,其特征在于:
上述电压产生电路通过随着上述处理器的工作电压的控制使该处理器的衬底偏压上升或下降,能够控制形成该处理器的器件的阈值电压。
8.根据权利要求6所述的半导体集成电路,其特征在于:
上述运算电路包含用于按照上述各域的进行处理的进展情况来变更总线使用的优先级的处理。
9.根据权利要求1-8中任一项所述的半导体集成电路,其特征在于:
上述处理器是通用处理器、DSP或可重构处理器。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2006/311405 WO2007141849A1 (ja) | 2006-06-07 | 2006-06-07 | 半導体集積回路 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101438246A true CN101438246A (zh) | 2009-05-20 |
Family
ID=38801121
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2006800545986A Pending CN101438246A (zh) | 2006-06-07 | 2006-06-07 | 半导体集成电路 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20100005323A1 (zh) |
EP (1) | EP2031510A4 (zh) |
JP (1) | JPWO2007141849A1 (zh) |
KR (1) | KR100985966B1 (zh) |
CN (1) | CN101438246A (zh) |
WO (1) | WO2007141849A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103064504A (zh) * | 2013-01-28 | 2013-04-24 | 浪潮电子信息产业股份有限公司 | 一种服务器主板节能方法 |
CN103178831A (zh) * | 2013-04-03 | 2013-06-26 | 清华大学 | 降低可重构阵列结构功耗的方法和低功耗可重构阵列结构 |
CN103778099A (zh) * | 2012-10-17 | 2014-05-07 | 瑞萨电子株式会社 | 信息处理设备 |
WO2017206857A1 (zh) * | 2016-05-31 | 2017-12-07 | 广东欧珀移动通信有限公司 | 响应控制方法及移动终端 |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100723537B1 (ko) * | 2006-09-12 | 2007-05-30 | 삼성전자주식회사 | 클럭 신호 발생 방법 및 장치와 이를 이용한 클럭 주파수제어 방법 및 장치 |
JP4353990B2 (ja) * | 2007-05-18 | 2009-10-28 | 株式会社半導体理工学研究センター | マルチプロセッサ制御装置 |
EP2304519A2 (en) * | 2008-06-25 | 2011-04-06 | Nxp B.V. | Electronic device, method of controlling an electronic device, and system-on-chip |
FR2943806A1 (fr) * | 2009-03-31 | 2010-10-01 | Inst Nat Rech Inf Automat | Dispositif de commande d'alimentation d'un calculateur |
GB0919253D0 (en) | 2009-11-03 | 2009-12-16 | Cullimore Ian | Atto 1 |
US8484495B2 (en) * | 2010-03-25 | 2013-07-09 | International Business Machines Corporation | Power management in a multi-processor computer system |
EP2553573A4 (en) * | 2010-03-26 | 2014-02-19 | Virtualmetrix Inc | FINANCIAL PERFORMANCE RESOURCE MANAGEMENT OF COMPUTER SYSTEMS |
US8875276B2 (en) | 2011-09-02 | 2014-10-28 | Iota Computing, Inc. | Ultra-low power single-chip firewall security device, system and method |
JPWO2013018230A1 (ja) * | 2011-08-04 | 2015-03-05 | 富士通株式会社 | データ処理システムおよびデータ処理方法 |
WO2013018230A1 (ja) * | 2011-08-04 | 2013-02-07 | 富士通株式会社 | データ処理システムおよびデータ処理方法 |
US8904216B2 (en) | 2011-09-02 | 2014-12-02 | Iota Computing, Inc. | Massively multicore processor and operating system to manage strands in hardware |
JP6051924B2 (ja) | 2013-02-21 | 2016-12-27 | 富士通株式会社 | 情報処理装置の制御方法、制御プログラム、情報処理装置 |
JP6236996B2 (ja) * | 2013-08-28 | 2017-11-29 | 富士通株式会社 | 情報処理装置および情報処理装置の制御方法 |
US10248180B2 (en) | 2014-10-16 | 2019-04-02 | Futurewei Technologies, Inc. | Fast SMP/ASMP mode-switching hardware apparatus for a low-cost low-power high performance multiple processor system |
US10928882B2 (en) | 2014-10-16 | 2021-02-23 | Futurewei Technologies, Inc. | Low cost, low power high performance SMP/ASMP multiple-processor system |
JP6235088B2 (ja) * | 2016-08-24 | 2017-11-22 | ルネサスエレクトロニクス株式会社 | 情報処理装置 |
KR20220028443A (ko) | 2020-08-28 | 2022-03-08 | 삼성전자주식회사 | 주변장치 인터페이스를 포함하는 장치 및 그것의 동작 방법 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH096730A (ja) * | 1995-06-14 | 1997-01-10 | Kofu Nippon Denki Kk | 多重処理装置 |
JPH09297688A (ja) * | 1996-03-06 | 1997-11-18 | Mitsubishi Electric Corp | システムクロック決定装置 |
DE69920460T2 (de) | 1999-10-25 | 2005-01-20 | Texas Instruments Inc., Dallas | Intelligente Leistungssteuerung in verteilten Verarbeitungssystemen |
JP2002099433A (ja) | 2000-09-22 | 2002-04-05 | Sony Corp | 演算処理システム及び演算処理制御方法、タスク管理システム及びタスク管理方法、並びに記憶媒体 |
US7174194B2 (en) * | 2000-10-24 | 2007-02-06 | Texas Instruments Incorporated | Temperature field controlled scheduling for processing systems |
JP3877518B2 (ja) * | 2000-12-13 | 2007-02-07 | 松下電器産業株式会社 | プロセッサの電力制御装置 |
JP2003202935A (ja) * | 2002-01-08 | 2003-07-18 | Mitsubishi Electric Corp | 電力管理方式及び電力管理方法 |
JP2003337713A (ja) * | 2002-05-21 | 2003-11-28 | Hitachi Ltd | プロセッサの制御方法 |
JP2004038767A (ja) * | 2002-07-05 | 2004-02-05 | Matsushita Electric Ind Co Ltd | バス調停装置 |
US7366932B2 (en) * | 2002-10-30 | 2008-04-29 | Stmicroelectronics, Inc. | Method and apparatus to adapt the clock rate of a programmable coprocessor for optimal performance and power dissipation |
JP4433782B2 (ja) * | 2003-12-17 | 2010-03-17 | 株式会社日立製作所 | 情報処理装置及びオペレーティングシステム |
TW200805047A (en) * | 2005-12-23 | 2008-01-16 | Koninkl Philips Electronics Nv | Performance analysis based system level power management |
-
2006
- 2006-06-07 WO PCT/JP2006/311405 patent/WO2007141849A1/ja active Application Filing
- 2006-06-07 JP JP2008520086A patent/JPWO2007141849A1/ja not_active Withdrawn
- 2006-06-07 EP EP06757112A patent/EP2031510A4/en not_active Withdrawn
- 2006-06-07 KR KR1020087027761A patent/KR100985966B1/ko not_active IP Right Cessation
- 2006-06-07 CN CNA2006800545986A patent/CN101438246A/zh active Pending
- 2006-06-07 US US12/300,434 patent/US20100005323A1/en not_active Abandoned
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103778099A (zh) * | 2012-10-17 | 2014-05-07 | 瑞萨电子株式会社 | 信息处理设备 |
CN103778099B (zh) * | 2012-10-17 | 2018-05-15 | 瑞萨电子株式会社 | 信息处理设备 |
CN103064504A (zh) * | 2013-01-28 | 2013-04-24 | 浪潮电子信息产业股份有限公司 | 一种服务器主板节能方法 |
CN103064504B (zh) * | 2013-01-28 | 2017-04-12 | 浪潮电子信息产业股份有限公司 | 一种服务器主板节能方法 |
CN103178831A (zh) * | 2013-04-03 | 2013-06-26 | 清华大学 | 降低可重构阵列结构功耗的方法和低功耗可重构阵列结构 |
CN103178831B (zh) * | 2013-04-03 | 2016-06-01 | 清华大学 | 降低可重构阵列结构功耗的方法和低功耗可重构阵列结构 |
WO2017206857A1 (zh) * | 2016-05-31 | 2017-12-07 | 广东欧珀移动通信有限公司 | 响应控制方法及移动终端 |
Also Published As
Publication number | Publication date |
---|---|
JPWO2007141849A1 (ja) | 2009-10-15 |
KR20080114835A (ko) | 2008-12-31 |
EP2031510A4 (en) | 2011-07-06 |
KR100985966B1 (ko) | 2010-10-06 |
EP2031510A1 (en) | 2009-03-04 |
WO2007141849A1 (ja) | 2007-12-13 |
US20100005323A1 (en) | 2010-01-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101438246A (zh) | 半导体集成电路 | |
TWI285307B (en) | Method, apparatus and system for enabling and disabling voltage regulator controllers | |
JP4974202B2 (ja) | 半導体集積回路 | |
US7529958B2 (en) | Programmable power transition counter | |
CN107003685B (zh) | ***最大电流保护 | |
US20130173951A1 (en) | Controlling communication of a clock signal to a peripheral | |
CN104834581B (zh) | 一种晶体振荡器的停振监测电路 | |
JP2004086912A (ja) | ワーキングコンテキスト格納及び再格納装置、並びに方法 | |
RU2011153305A (ru) | Устройство для архитектуры высокоэффективного управления электропитанием платформы в режиме реального времени | |
US7774017B2 (en) | Semiconductor integrated circuit device | |
JP4713901B2 (ja) | 半導体集積回路装置 | |
JP2013149093A (ja) | 制御装置、制御方法、プログラムおよび電子機器 | |
De Langen et al. | Leakage-aware multiprocessor scheduling for low power | |
CN108052156A (zh) | 一种基于门控技术的处理器时钟树架构及构建方法 | |
JP2002041160A (ja) | 電力制御装置及び方法並びに電力制御プログラムを記録した記録媒体 | |
WO2015135468A1 (en) | Systems and methods for messaging-based fine granularity system-on-a-chip power gating | |
CN103150288B (zh) | 一种快速开机的soc芯片及其实现方法 | |
KR20180078558A (ko) | 시스템 온 칩의 구동 방법, 이를 수행하는 시스템 온 칩 및 이를 포함하는 전자 시스템 | |
KR100975747B1 (ko) | 마이크로 프로세서 시스템 | |
CN102378949A (zh) | 计算机电源控制装置 | |
JP2007158505A (ja) | 半導体集積回路装置及び情報システム | |
CN113595137B (zh) | 直流源并网发电模式切换方法及装置、直流源*** | |
TWI766514B (zh) | 電子裝置及其供電方法 | |
JP5704669B2 (ja) | 半導体装置 | |
JP2006201856A (ja) | 半導体集積回路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Open date: 20090520 |