CN110959257B - 用处理器核中本地检测回路降低或减轻芯片上电源噪声电压 - Google Patents

用处理器核中本地检测回路降低或减轻芯片上电源噪声电压 Download PDF

Info

Publication number
CN110959257B
CN110959257B CN201880049163.5A CN201880049163A CN110959257B CN 110959257 B CN110959257 B CN 110959257B CN 201880049163 A CN201880049163 A CN 201880049163A CN 110959257 B CN110959257 B CN 110959257B
Authority
CN
China
Prior art keywords
processor core
local
noise
global
voltage
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.)
Active
Application number
CN201880049163.5A
Other languages
English (en)
Other versions
CN110959257A (zh
Inventor
C·贝齐尔茨
P·I-J·庄
A·巴亚科托苏诺格鲁
P·J·雷斯特尔
P·博斯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN110959257A publication Critical patent/CN110959257A/zh
Application granted granted Critical
Publication of CN110959257B publication Critical patent/CN110959257B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/003Modifications for increasing the reliability for protection
    • H03K19/00346Modifications for eliminating interference or parasitic voltages or currents
    • H03K19/00361Modifications for eliminating interference or parasitic voltages or currents in field effect transistor circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/30Means for acting in the event of power-supply failure or interruption, e.g. power-supply fluctuations
    • G06F1/305Means for acting in the event of power-supply failure or interruption, e.g. power-supply fluctuations in the event of power-supply fluctuations
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K17/00Electronic switching or gating, i.e. not by contact-making and –breaking
    • H03K17/16Modifications for eliminating interference voltages or currents
    • H03K17/161Modifications for eliminating interference voltages or currents in field-effect transistor switches
    • H03K17/162Modifications for eliminating interference voltages or currents in field-effect transistor switches without feedback from the output circuit to the control circuit
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/003Modifications for increasing the reliability for protection
    • H03K19/00369Modifications for compensating variations of temperature, supply voltage or other physical parameters
    • H03K19/00384Modifications for compensating variations of temperature, supply voltage or other physical parameters in field effect transistor circuits
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)
  • Microcomputers (AREA)

Abstract

本公开的实施例涉及用处理器核中本地检测回路降低或减轻芯片上电源噪声电压,并提供了使用处理器核中的本地检测回路来促进片上电源噪声电压降低和/或减轻的技术。在一个示例中,计算机实现的方法可以包括由处理器核检测处理器核的第一区域处的电压下降。所述计算机实现的方法还可以包括由所述处理器核向位于所述第一区域中的本地控制器和位于所述处理器核中的全局控制器发送电压下降信息。此外,所述计算机实现的方法可以包括由所述处理器核响应于从所述本地控制器接收的本地指令在所述处理器核的所述第一区域处应用第一减轻对策。该本地指令可以包括第一减轻对策的指示。

Description

用处理器核中本地检测回路降低或减轻芯片上电源噪声电压
技术领域
本发明涉及芯片上电源噪声电压的降低或减轻,且更具体来说,涉及使用处理器核中的本地检测回路降低或减轻芯片上电源噪声电压。
背景技术
集成电路(例如,处理器)可以从动力源(例如,电源)接收电力,以便为相关联的电路提供源电压。电流量和电路负载量可以是相关电路的工作速度和电源电压的函数。由于电路的有源特性,电路负载可能变化,这可能导致电源电压电平下降或跌落到定义的电压电平以下。例如,电源噪声可能会从电源产生,并且进一步可以传播到相关联的电路,这可以导致处理器的各种路径或单元中的电压下降。电压下降(或多于一个的电压下降)可以影响处理器的工作速度。
因此,在本领域中需要解决上述问题。
发明内容
以下给出了概述以提供对本发明的一个或多个实施例的基本理解。本概述不旨在标识关键或重要元素,或描绘特定实施例的任何范围或权利要求的任何范围。其唯一目的是以简化形式呈现概念,作为稍后呈现的更详细描述的序言。在本文描述的一个或多个实施例中,描述了促进电源噪声电压降低和/或减轻的系统、计算机实现的方法、装置和/或计算机程序产品。
从第一方面来看,本发明提供了一种用于促进片上电源噪声的降低的设备,包括:位于处理器核的第一单元处的第一电压噪声传感器,其中所述第一电压噪声传感器检测所述第一单元处的第一电压下降,并且其中所述处理器核被划分成所述第一单元和第二单元;全局噪声管理器组件,其位于所述处理器核中,并且从所述第一电压噪声传感器接收所述第一电压下降的指示;以及位于所述第一单元中的第一本地噪声管理部件,可操作用于:从所述第一电压噪声传感器接收所述第一电压下降的指示;以及在第一单元处实施第一降噪过程。
从另一方面来看,本发明提供了一种用于促进片上电源噪声的降低的计算机实现的方法,包括:由处理器核检测所述处理器核的第一区域处的电压下降;由所述处理器核将电压下降信息发送到位于所述第一区域中的本地控制器和位于所述处理器核中的全局控制器;以及由处理器核响应于从本地控制器接收的本地指令在处理器核的第一区域处应用第一减轻对策,其中本地指令包括第一减轻对策的指示。
从另一方面来看,本发明提供了一种用于促进片上电源噪声的降低的计算机程序产品,该计算机程序产品包括计算机可读存储介质,其可由处理电路读取并且存储用于由处理电路执行以便执行用于执行本发明的步骤的方法的指令。
从另一方面来看,本发明提供了一种存储在计算机可读介质上并且可加载到数字计算机的内部存储器中的计算机程序,包括当所述程序在计算机上运行时执行本发明的步骤的软件代码部分。
根据实施例,计算机实现的方法可以包括由处理器核检测处理器核的第一区域处的电压下降。所述计算机实现的方法还可以包括由所述处理器核向位于所述第一区域中的本地控制器和位于所述处理器核中的全局控制器发送电压下降信息。此外,所述计算机实现的方法可以包括由所述处理器核响应于从所述本地控制器接收的本地指令在所述处理器核的所述第一区域处应用第一减轻对策。本地指令可以包括第一减轻对策的指示。
根据实施例,一种设备可包括位于处理器核的第一单元处的第一电压噪声传感器。第一电压噪声传感器可以检测第一单元处的第一电压下降。此外,处理器核可被分成第一单元和第二单元。该设备还可包括位于处理器核中并且从第一电压噪声传感器接收第一电压下降的指示的全局噪声管理器组件。此外,该设备可以包括第一本地噪声管理器组件,其位于第一单元中,并且从第一电压噪声传感器接收第一电压下降的指示,并且在第一单元处实施第一降噪过程。
根据另一实施例,促进降低片上电源噪声的计算机程序产品可以包括具有随其体现的程序指令的计算机可读存储介质。程序指令可以由处理器核执行。程序指令可以使处理器核检测处理器核的第一段处的第一电压下降。所述程序指令还可致使所述处理器核将所述第一电压下降的第一指示发送到本地噪声管理单元及公共噪声管理单元。可以将本地噪声管理单元与处理器核的第一段关联。此外,程序指令可以使处理器核基于第一电压下降的第一指示来执行第一指令序列。第一指令序列可从本地噪声管理单元接收,并可与第一电压下降所关联的减轻对策有关。
附图说明
现在将参考附图仅通过示例的方式描述本发明的实施例,在附图中:
图1示出了根据本文描述的一个或多个实施例的有助于片上电源电压噪声降低和/或减轻的示例、非限制性系统的框图
图2示出了电压下降检测和减轻的示例、非限制性图表,其包括在电压下降的检测和全局控制回路的减轻过程的实施之间的延迟或滞后。
图3说明根据本文描述的一个或一个以上实施例的促进响应于在处理器核中检测到的一个或一个以上电压下降而实施一个或一个以上校正程序的实例非限制性系统的框图。
图4示出了根据本文描述的一个或多个实施例的使用每核多个检测/减轻回路来促进芯片上电源噪声电压降低和/或减轻的示例、非限制性系统的框图。
图5示出了根据本文所述的一个或多个实施例的用于下降检测和减轻的示例、非限制性系统的框图。
图6示出了根据本文所述的一个或多个实施例的示例、非限制性计算机实现的方法的流程图,该方法使用本地检测回路来促进芯片上电源噪声电压降低和/或减轻。
图7示出了根据这里描述的一个或者多个实施例的基于本地指令未解决风险下降的指示来执行全局指令的示例、非限制性计算机实现的方法的流程图。
图8示出了根据本文描述的一个或多个实施例的实施多个减轻对策以降低/减轻芯片上电源噪声电压的示例、非限制性计算机实现的方法的流程图。
图9示出了根据本文所述的一个或多个实施例的降低/减轻片上电源噪声的示例、非限制性计算机实现的方法的流程图。
图10示出了其中可促进本文所述的的一个或多个实施例的示例、非限制性操作环境的框图。
具体实施方式
以下详细描述仅是说明性的,并且不旨在限制实施例和/或实施例的应用或使用。此外,并不意图受前面的背景技术或发明内容部分或具体实施方式部分中呈现的任何明示或暗示的信息的约束。
现在参考附图描述一个或多个实施例,其中相同的附图标记始终用于表示相同的元件。在以下描述中,出于解释的目的,阐述了许多具体细节以便提供对一个或多个实施例的更透彻理解。然而,在各种情况下,显然可在没有这些特定细节的情况下实践所述一个或一个以上实施例。
集成电路(例如,处理器)可以从动力源(例如,电源)接收电力,以便为相关联的电路提供源电压。电流量和电路负载量可以是相关电路的工作速度和电源电压的函数。由于电路的有源特性,电路负载可能变化,这可能导致电源电压电平下降或下降到定义的电压电平以下。例如,电源噪声可能会从电源产生,并且进一步可以传播到相关联的电路,这可以导致处理器的各种路径或单元中的电压下降。电压下降(或多于一个的电压下降)可以影响处理器的工作速度。
本文所论述的各个方面涉及在供应电流较大且突然增加的情况下通过防止时序故障来促进芯片上电源噪声的影响的降低和/或减轻。由于检测到电压下降时与应用减轻对策来补偿电压下降时之间的滞后时间,可能发生定时故障。因此,所公开的各方面可针对处理器核提供处理器核的第一部分或第一单元中的一个或一个以上内部或本地(例如,快速)控制回路,以及处理器核中的一个或一个以上外部或全局(例如,慢速)控制回路。(一个或多个)本地控制回路和/或(一个或多个)全局控制回路可以被用于检测电源电压轨上的各种危险事件。此外,一个或多个控制回路(本地的和/或全局的)可以以与其它控制回路不同的方式(或者在一些实现中与其它回路相同的方式)进行响应,以减小或最小化电压下降降低/减轻的性能影响。因此,本文提供的一个或多个实施例可以通过降低施加的电压裕度来促进处理器芯片的功耗的降低或减轻。
图1示出了根据本文所述的一个或多个实施例的有助于片上电源电压噪声降低和/或减轻的示例、非限制性系统100的框图。本公开中所解释的系统(例如,系统100等)、装置或过程的各方面可以构成在(一个或多个)机器内体现的(一个或多个)机器可执行组件,例如,在与一个或多个机器相关联的一个或多个计算机可读介质(或媒体)中体现的机器可执行组件。当由一个或多个机器(例如,计算机、计算设备、虚拟机等)执行时,这样的组件可以使机器执行所描述的操作。
在各种实施例中,系统100可以用于包括处理器和/或可以能够与有线和/或无线网络进行有效和/或操作性通信的任何类型的部件、机器、装置、设施、设备和/或仪器中。可构成系统100的组件、机器、装置、设备、设施和/或工具可包括平板计算设备、手持设备、服务器类计算机器和/或数据库、膝上型计算机、笔记本计算机、台式计算机、蜂窝电话、智能电话、消费电器和/或仪器、工业和/或商业设备、手持设备、数字助理、支持多媒体因特网的电话、多媒体播放器等。
如图所示,系统100可包括处理器核102,其可被分成一个或多个单元,示为第一单元104和第二单元106。第一单元104可以包括第一电压噪声传感器108和第一本地控制器110。第二单元106可以包括第二电压噪声传感器112和第二本地控制器114。此外,处理器核102可以包括全局控制器116和至少一个存储器118。全局控制器116可以位于处理器核102内的某个集中点。例如,全局控制器116可以位于处理器核102的边缘处。
第一电压噪声传感器108可以检测第一单元104处的第一电压下降。基于第一电压下降的检测,第一电压噪声传感器108可将与第一电压下降有关的信息发送到第一本地控制器110和全局控制器116。例如,在检测到第一电压下降时或之后,第一电压噪声传感器108可以通过本地控制回路向第一本地控制器110发送第一信号。此外,第一电压噪声传感器108可以通过全局控制回路将第二信号发送到全局控制器116。本地控制回路保持在第一单元104的内部(例如,不需要与处理器核的其它单元接口)。由于本地控制回路的本地性质,第一本地控制器110可以在比全局控制器116接收信息所花费的时间量更短的时间量内从第一本地控制器110接收信息。基于该较短的时间量,第一本地控制器110可以实施第一降噪过程,其可以减少检测到第一电压下降时与实施降噪过程时之间的滞后时间。由第一本地控制器110实施的第一降噪过程可以被传送到第二本地控制器114和全局控制器116。
全局控制器116在从第一电压噪声传感器108接收到指示时或之后可确定是否应在处理器核102内实施全局对策过程。例如,可以基于由第一本地控制器110实现的本地减轻规程是否解决了检测到的电压下降来做出该确定。如果解决,则全局控制器116可以选择性地忽略所接收的指示。然而,如果电压下降未解决,则全局控制器116可以在第一单元104处、在第二单元106处、在处理器核的其他部分处或者其组合处选择性地实施全局降低/减轻对策过程。根据一些实现,全局降低/减轻对策过程对于处理器核102中的单元可以是共同的。例如,如果时钟频率降低50%,则全局降低/减轻对策过程可以是将核的活动调节到25%的指令。然而,根据一些实现,降低/减轻对策过程对于处理器核102的各个单元可以是不同的。例如,提供给第一本地控制器110的第一指令集可以不同于提供给第二本地控制器114的第二指令集。
电压下降是否已被解决的确定可基于从第一电压噪声传感器108接收的另一指示。例如,当电压噪声被第一电压噪声传感器108检测到时,信息可以被发送到第一本地控制器110和全局控制器116。在一些情况下,该信息可以指示检测到的电压处于定义的电压电平之上(例如,没有检测到电压下降)。因此,如果全局控制器116接收到第一单元104处的电压下降的指示,并且此后接收到第一单元104处不存在电压下降的另一指示,则全局控制器116可以确定不需要进一步的动作。
由全局控制器116实施的全局降低/减轻过程可以是不同的过程。例如,第一全局降低/减轻过程可以在第一单元104处实施,第二降低/减轻过程可以在第二单元106处实施,并且第三降低/减轻过程可以在处理器核102的另一部分处实施。第一降低/减轻过程和第二降低/减轻过程可以是相同的降低/减轻过程或不同的降低/减轻过程。此外,第三降低/减轻过程可以与第一降低/减轻过程或第二降低/减轻过程相同,或者可以与第一降低/减轻过程和第二降低/减轻过程不同。
根据一些实施方式,第二电压噪声传感器112可以检测第二单元106处的第二电压下降。因此,第二电压噪声传感器112可经由本地控制回路(例如,对于第二单元106来说为本地的)将与第二电压降有关的信息发送到第二本地控制器114,且经由全局控制回路将与第二电压降有关的信息发送到全局控制器116。因此,第二本地控制器114可以在第二节点106处实施第二降噪过程。与第二降噪过程相关的信息可以被传送到第一本地控制器110和全局控制器116。注意,第一电压下降(由第一电压噪声传感器108检测)和第二电压下降(由第二电压噪声传感器112检测)可以同时或在不同时间被检测。进一步地,第一降噪过程和第二降噪过程可以是相似过程或不同过程。
如果第二降噪过程解决了第二单元106处的电压下降,则全局控制器116可以选择性地忽略从第二电压噪声传感器112接收的指示。然而,如果电压下降未解决,则全局控制器116可以全局地或者在处理器核102的一个或多个部分(例如,第一单元104、第二单元106、另一单元或处理器核102的另一部分)处实施一个或多个全局降低/减轻过程。
至少一个存储器118可以存储可以由处理器核102执行的计算机可执行组件和/或计算机可执行指令。至少一个存储器118可以存储与实现如本文所讨论的片上电源噪声电压降低/减轻相关联的协议。此外,至少一个存储器118可以促进控制第一单元104、第二单元106和全局控制器116之间的通信的动作,使得系统100可以采用所存储的协议和/或算法来实现如本文所述的片上电源噪声电压降低/减轻。
如上所述,第一单元104中的第一本地控制器110和/或第二单元106中的第二本地控制器114可以减少相应电压下降的检测与相应本地降噪过程的实施之间的延迟或滞后。例如,图2示出了电压下降检测和减轻的示例、非限制性图表200,其包括在全局控制回路的电压下降的检测和减轻过程的实施之间的延迟或滞后。当处理器汲取的电源电流突然增加时,在电压电源上可能产生大的下降。如果电源降低到低于确定的电压值,则处理器的功能可能受到损害。
如本文所讨论的,当利用全局控制回路来通知全局控制器(例如,图1的全局控制器116)检测到的电压下降时,信息长距离穿越处理器核可能花费(相对)长的时间量。此外,全局对抗过程可能被应用很长时间,这可能引起大量的性能开销。
图表200的垂直轴表示供电电压电平202,水平轴表示时间204。所绘制的线206示出了用于处理器核(或处理器核的一部分)的电源电压值。当监视电源电压值时,可能检测到电压下降,如208所示。基于该检测,电压下降的指示可以通过全局回路被发送到全局控制器,该全局控制器可以提供用于降低/减轻电压下降的指令。如210处所指示的,可以在一个时间延迟之后实施降低/减轻过程。因此,在检测到电压下降(在208)时与应用降低/减轻(在210)时之间存在滞后212。滞后212(或时间延迟)可能具有足够长的持续时间以使处理器减速,这在设备处可能是明显的。滞后212可以作为电压回路指示从传感器遍历到全局控制器的时间的函数而被引入。滞后212还包括指令从全局控制器遍历并在相应单元处应用的时间。此外,滞后212可能是由于跨越长距离传送的信号以及组合来自多个传感器(例如,第一电压噪声传感器108、第二电压噪声传感器112等)的许多信号所花费的处理时间。在这些延迟期间,电源进一步下降,并且诸如类似阵列的敏感结构的功能可能被损害。本文提供的各个方面通过实现本地控制器和本地控制回路以实施一个或多个本地降噪过程来减少延迟。
图3示出了根据本文所述的一个或多个实施例的示例、非限制性系统300的框图,该系统有助于响应于在处理器核中检测到的一个或多个电压下降而实施一个或多个校正过程。为了简洁,省略了对在本文描述的其它实施例中采用的类似元素的重复描述。
系统300可以包括系统100的一个或多个组件和/或功能,反之亦然。第一电压噪声传感器108可包括可在本地控制回路304上和在全局控制回路306上发送检测到的电压下降的一个或多个指示的发送器组件302。一个或多个指示可以由发送器组件302并发地发送。例如,在发送器组件302通过本地控制回路304发送指示时或之后,发送器组件302可以通过全局控制回路306发送指示。
第一本地控制器110可以经由通信组件308接收该指示。通信组件308通过本地控制回路304的接收可以比全局控制器116通过全局控制回路306经由通信模块310接收指示更快。例如,由于通过本地控制回路304传送的指示保持在第一单元104的内部,所以由于第一电压噪声传感器108与第一本地控制器110之间的紧密接近,可以更快地接收指示。另一方面,在该全局控制回路306上的指示必须从该第一单元104遍历到该处理器核102的另一部分(例如,到该全局控制器116的位置)。因此,对全局控制器116的指示可能花费更长的时间量,并且基于在第一单元104处接收来自全局控制器116的指令的时间量,可以引入进一步的延迟。
至少部分地基于在通信组件308处接收的指示,实施组件312可以在第一单元104处选择性地应用一个或多个本地降低/减轻对策。第一电压噪声传感器108可在实施一个或一个以上本地减小/减轻对策期间和之后继续监视第一单元104内的电压电平。与所监视的附加电压电平有关的信息可以由发送器组件302通过本地控制回路304(例如,向第一本地控制器110)以及通过全局控制回路306(例如,向全局控制器116)发送。
如果由实施组件312选择性地应用的一个或多个本地降低/减轻对策解决了原始检测到的电压下降,并且没有检测到后续的电压下降,则全局控制器116处的确定组件314可以确定不需要进一步的动作。然而,如果一个或多个本地降低/减轻对策未解决原始检测到的电压下降,或者如果在第一单元处检测到另一电压下降(例如,由第一电压噪声传感器108或由第一单元104中的另一电压噪声传感器),则全局控制器116可以实施一个或多个全局过程。
根据一种实现方式,全局控制器116可以包括指令组件316,其可以确定应当在处理器核102的一个或多个部分中实施的一个或多个全局降低/减轻对策。例如,指令组件316可以选择第一全局降低/减轻对策以在第一单元104处应用。附加地或替换地,指令组件316可以选择第二全局降低/减轻对策以在第二单元106处应用。附加地或替换地,指令组件316可以选择后续全局降低/减轻对策以在后续单元(未示出)处应用。根据一些实现,指令组件316可以确定应当跨处理器核102的所有单元全局地应用全局降低/减轻对策。
在一些实施方案中,第一全局降低/减轻对策、第二全局降低/减轻对策和后续全局降低/减轻对策中的两者或更多者可为相同的全局降低/减轻对策。然而,根据一些实现,第一全局降低/减轻对策、第二全局降低/减轻对策和后续全局降低/减轻对策可以是不同的全局降低/减轻对策。
由指令组件316提供的全局降低/减轻对策可以覆盖在处理器核102的不同单元(例如,第一单元104、第二单元106、后续单元)处本地应用的一个或多个本地降低/减轻对策。例如,第一本地降低/减轻对策正由实施组件312应用,并且从指令组件318接收全局降低/减轻对策。在这种情况下,实施组件312中断第一本地降低/减轻对策的应用并应用该全局降低/减轻对策。
要注意的是,尽管没有具体指示,但是第二单元106和后续单元(未示出)可以包括第一单元104的一个或多个组件和/或功能。例如,第二单元106和/或后续单元可以包括相应的发送器组件、相应的通信组件和相应的实施组件。此外,处理器的其他处理器核可以包括处理器核102的一个或多个组件和/或功能。
图4示出了根据本文所述的一个或多个实施例的使用每核多个检测/减轻回路来促进片上电源噪声电压降低和/或减轻的示例、非限制性系统400的框图。为了简洁,省略了对这里描述的其它实施例中采用的类似元素的重复描述。
系统400可以包括系统100、系统300的一个或多个组件和/或功能,反之亦然。如图所示,处理器核102可包括两个或更多单元,示为第一单元104、第二单元和第N单元402,其中N是整数。例如,根据一些实现,处理器核102可包括三个或更多个单元。
第N单元402可包括第N电压噪声传感器404和第N控制器406。如上所述,第N单元402可包括如参考图3所示和所述的第一单元104的一个或多个组件和/或功能。
第一单元104可以包括一个或多个本地控制回路(例如,本地控制回路304)。第二单元106可以包括一个或多个本地控制回路,其被图示为本地控制回路408。此外,第N单元402可包括一个或多个本地控制回路,示为本地控制回路410。此外,第一单元104可以通过全局控制回路306与全局控制器116通信。此外,第二单元106可通过全局控制回路412与全局控制器116通信,且第N单元402可通过全局控制回路414与全局控制器116通信。
如本文所论述,通过并入下降检测/减轻的多个内部(快速)控制回路和外部(慢速)回路,各个方面可降低/减轻电源下降,且可防止/减少处理器核(例如,处理器核102)中的时序故障。例如,多个内部(快速)控制回路可以包括第一单元104的本地控制回路304、第二单元106的本地控制回路408和第N单元402的本地控制回路410。如上所述,这些单元可以包括多于一个的本地控制回路(如将在下面关于图5进一步详细讨论的)。外部(慢速)回路可以包括全局控制回路306、全局控制回路412和全局控制回路414。
多个内部(快速)控制回路和外部(慢速)回路可以是独立的回路。此外,一个或多个回路(本地和全局)中的回路可以被配置为处理一种或多种类型的下降事件并且执行不同的减轻对策。通过使用这些独立回路,各个方面可以将来自减轻对策的性能损失与下降检测的覆盖解耦。这可以促进更快和更有效的下降检测。例如,由于存在多个回路,因此可以识别不同类型的电压下降,并且可以应用不同的(并且潜在地性能成本较低的)对策。此外,如本文所讨论的独立本地回路的使用可以促进可以导致最小性能开销的效率。
图5示出了根据本文所述的一个或多个实施例的用于下降检测和减轻的示例、非限制性系统500的框图。为了简洁,省略了对这里描述的其它实施例中采用的类似元素的重复描述。
系统500可以包括系统100、系统300、系统400的组件和/或功能中的一个或多个,反之亦然。如图所示,处理器核102可以包括全局噪声管理器组件504(例如,图1的全局控制器116)。此外,处理器核102可以被划分为一个或多个单元,诸如第一单元104(单元1)、第二单元106(单元2)和第三单元502(单元3)。
在该示例中,各种噪声传感器/估计器设备可以被包括在处理器核102中。电源电压下降传感器在图5中由未填充的小四方形表示。例如,第一单元104包括一个电源电压下降传感器(例如,第一电压噪声传感器108),第二单元106包括一个电源电压下降传感器(例如,第二电压噪声传感器112),并且第三单元502包括一个电源电压下降传感器(未标记)。
处理器核102中还可以包括由填充的小四方形表示的其他噪声传感器/估计器。在所示示例中,第一单元104可以包括另一噪声传感器/估计器,第三单元502包括另一噪声传感器/估计器,并且处理器核102(不与单元相关联的)包括另一噪声传感器/估计器。
处理器核102还可以包括全局噪声管理器组件504(例如,全局控制器116)。此外,第一单元104可以包括本地噪声管理器组件506(例如,第一本地控制器110),第二单元106可以包括本地噪声管理组件508(例如,第二本地控制器114),并且第三单元502可以包括本地噪声管理单元510。
当噪声传感器检测到噪声或电压下降时,相应的信号可以被发送到本地噪声管理单元和全局噪声管理器组件504。例如,第二单元106包括电源下降传感器。在检测到电压下降时或之后,电源下降传感器可以将第一信号发送到本地噪声管理部件508(例如,经由本地控制回路)和全局噪声管理器部件504(例如,经由全局控制回路),如由来自电源下降传感器的引出线表示的那样。本地噪声管理组件508可以发送信号512以开始指令调节。此外,全局噪声管理器组件504可以发送另一个信号514以开始指令调节。由于如本文所讨论的与全局控制回路相比的本地控制回路的定时,来自本地噪声管理部件508的信号可以比来自全局噪声管理部件504的信号更早地被提供。
此外,如第三单元502中的供电下降传感器516所指示的,来自供电下降传感器516的信号传输518可以是到全局噪声管理器部件504,而不是到本地噪声管理单元510。例如,可以确定(其可以是预定义的)可以通过将信号从供电下降传感器516直接发送到全局噪声管理器部件504而不是本地噪声管理单元510来获得速度效率。
如本文所论述,除了核级的慢速回路(例如,全局控制回路)之外,在处理器核102的不同部分或单元处,可以有某粒度级的额外的较快回路(例如,本地控制回路)。本地控制回路可以包括不同的检测/感测过程(例如,具有/不具有斜率的关键路径监视器(CPM)、功率代理)以及对策目标和强度。
作为示例而非限制,在可以被划分成三个单元的处理器核中可以有三个本地回路。可以将第一本地回路与第一单元关联,可以将第二本地回路与第二单元关联,并且可以将第三本地回路与第三单元关联。还可以存在用于整个处理器核的全局回路。
第一本地回路上的信号(或指令)可以是将分支预测调节到25%,使用具有斜率的CPM进行检测。第二本地回路上的信号(或指令)可以是将调度单元调节到25%,使用具有斜率的CPM进行检测。第三本地回路上的信号(或指令)可以将发布调节到25%,使用具有斜率的CPM进行检测。此外,本地回路可将信号(指令)广播到其它本地回路和全局回路。进一步对于该示例来说,如果下降持续超过定义的周期数,例如二十个周期(例如,低f下降),则全局回路上的指令可以是对整个核进行调节。全局回路可以覆盖本地回路(因为全局回路可以由除了由传感器检测到的电压下降之外的其他效应来控制)。
根据一些实现,如果存在仅通过较不保守(更积极)的检测来标记的下降,则仅调节1/6的核活动。即使电压下降是假肯定的,利用较不保守的方法,也可能存在最小性能损失。
图6示出了根据本文所述的一个或多个实施例的示例、非限制性计算机实现的方法600的流程图,该方法使用本地检测回路来促进芯片上电源噪声电压降低和/或减轻。为了简洁,省略了对这里描述的其它实施例中采用的类似元素的重复描述。
在计算机实现的方法600的602处,可以检测处理器核的第一区域处的电压下降(例如,经由第一电压噪声传感器108)。例如,可以将处理器划分成两个或更多个以上的不同区域或单元。相应的电压噪声传感器组件可以被包括在该两个或更多个不同区域中。例如,第一电压噪声传感器组件可以位于第一区域中,第二电压噪声传感器组件可以位于第二区域中,并且后续电压噪声传感器组件可以位于后续区域中。根据一些实施方案,一或多个区域可包括两个或两个以上电压噪声传感器组件。此外,两个或更多个区域中的区域可以包括不同数量的电压噪声传感器组件。例如,第一区域可以包括一个电压噪声传感器组件,并且第二区域可以包括三个电压噪声传感器组件。在另一实例中,第一区域可包括两个电压噪声传感器组件,第二区域可包括三个电压噪声传感器组件,且第三区域可包括两个电压噪声传感器组件。
在计算机实现的方法600的604处,可以将电压下降信息发送到位于第一区域中的本地控制器和位于处理器核中的全局控制器(例如,经由通信组件308),在示例中,可以通过本地控制回路(或内部控制回路)将携带电压下降信息的第一信号传输至本地控制器。进一步针对该示例,携带电压下降信息的第二信号可以通过全局控制回路(或外部控制回路)被发送到全局控制器。本地控制器可以位于处理器控件的与传输信号的电压噪声传感器组件相同的区域内,并且全局控制器可以位于处理器核的另一区域处。因此,本地控制回路可以具有比全局控制回路的第二反应时间更快的第一反应时间。
此外,在计算机实现的方法600的606处,可以响应于从本地控制器(例如,经由实施组件312)接收的本地指令而在处理器核的第一区域处应用第一减轻对策。例如,由于本地控制回路可比全局控制回路更快地传输信息,因此本地控制器可以比全局控制器处理信息更快地处理信息和提供降低/减轻指令。因此,从本地控制器接收的指令可以在处理器核的本地区域内应用,这可以提高处理器的处理效率。在一些实施方案中,来自本地控制器的指令可解决噪声电压问题。在此情形中,可以不采取进一步动作,直到检测到另一噪声电压和/或如果在处理器核的其它区域处检测到的一个或一个以上其它噪声电压需要另一降低/减轻动作。
图7图示了根据这里描述的一个或者多个实施例的基于本地指令未解决风险下降的指示来执行全局指令的示例、非限制性计算机实现方法700的流程图。为了简洁,省略了对这里描述的其它实施例中采用的类似元素的重复描述。
在计算机实现的方法700的702处,可以在处理器核的第一区域处检测电压下降(例如,经由第一电压噪声传感器108)。根据一些实施方式,检测电压下降可以包括数字地测量电源噪声值和在定义的电压值处的斜率中的至少一个。可以将电源噪声值和斜率与处理器核的第一区域关联。
在计算机实现的方法700的704处,可以将电压下降信息发送到位于第一区域中的本地控制器和位于处理器核中的全局控制器(例如,经由通信组件308)。在示例中,将电压下降信息发送到本地控制器可以降低与电压下降的检测和减轻相关联的性能开销(例如,可以利用本地控制回路来比使用全局控制回路处理信息更快地处理信息)。
此外,在计算机实现的方法700的706处,可以响应于从本地控制器接收的本地指令在处理器核的第一区域处应用第一减轻对策,其中本地指令包括第一减轻对策的指示(例如,经由实施组件312)。
在计算机实现的方法700的708处,可以对减轻对策是否解决了第一区域处的电压下降(例如,经由第一电压噪声传感器108)做出确定。如果电压下降已经解决("是"),则计算机实现的方法可以停止,或者可以返回到702,等待另一电压下降的检测。或者,如果确定减轻对策尚未解决计算机实现的方法700的第一区域处的电压下降("否"),则在710处,可以响应于从全局控制器接收的全局指令而在处理器核内应用第二减轻对策。
根据一些实现,第二减轻对策可被应用在处理器核内的第一单元处或另一单元处。例如,应用第二减轻对策可包括在处理器核的第一区域处应用第二减轻对策。进一步对于此实施方案,可在处理器核的第二区域处应用第三减轻对策。第二减轻对策和第三减轻对策可以基于从全局控制器接收的相应指令。在一种实现方式中,从本地控制器接收的本地指令可以被从全局控制器接收的相应指令所覆盖。
图8示出了根据本文描述的一个或多个实施例的实施多个减轻对策以降低/减轻芯片上电源噪声电压的示例、非限制性计算机实现的方法800的流程图。为了简洁,省略了对这里描述的其它实施例中采用的类似元素的重复描述。
在计算机实现的方法800的802处,检测处理器核的第一段处的第一电压下降(例如,经由第一电压噪声传感器108)。在计算机实施的方法800的804处,可将第一电压下降的第一指示发送到本地噪声管理单元和公共噪声管理单元(例如,经由通信组件308)。可以将本地噪声管理单元与处理器核的第一段关联。此外,在计算机实现的方法800的806处,可以基于第一电压下降的第一指示(例如,经由实施组件312)来执行第一指令序列。第一指令序列可从本地噪声管理单元接收,并可与第一电压下降所关联的减轻对策有关。
在计算机实现的方法800的808,在第一段处(例如,经由第一电压噪声传感器108)应用第一指令序列之后,可以检测第一段处的第一电压下降或第二电压下降。在计算机实施的方法800的810处,可将第一电压下降或第二电压下降的第二指示发送到本地噪声管理单元和公共噪声管理单元(例如,经由通信组件308)。此外,在计算机实现的方法800的812处,可以基于第一电压下降或第二电压下降的第二指示在第一段处执行第二指令序列(例如,经由实施组件312)。可以从公共噪声管理单元接收第二指令序列。
根据一些实现方式,第二指令序列可以覆盖第一段处的第一指令序列。
图9示出了根据本文所述的一个或多个实施例的降低/减轻片上电源噪声的示例、非限制性计算机实现的方法900的流程图。为了简洁,省略了对这里描述的其它实施例中采用的类似元素的重复描述。
在计算机实现的方法900的902处,可以在处理器核中提供多个电压噪声传感器(例如,经由第一电压噪声传感器108、第二电压噪声传感器112或第三电压噪声传感器404)。多个电压噪声传感器中的电压噪声传感器可以数字地测量电源噪声值和/或斜率(在已知或近似的电压值处)。
此外,在计算机实现的方法900的904处,可以提供电压噪声管理架构。电压噪声架构可以包括全局(例如,慢反应)控制回路和本地(例如,较快反应)控制回路。
在计算机实现的方法900的906处,可以通过利用多个本地控制回路中的本地控制回路(例如,经由本地控制回路304、本地控制回路408或本地控制回路410)在具有快速反应的小区块上实施降噪过程。"快速反应"与全局控制回路提供的另一反应有关。
另外,在计算机实现的方法的908处,可以通过利用全局回路(例如,全局控制回路306、全局控制回路412和全局控制回路414)来在具有较慢反应的较大区块上实施降噪过程。全局回路可以使用比本地回路所使用的数量更多数量(或更多量)的电源噪声传感器。此外,全局回路的反应时间与本地回路的反应时间相比可以更慢。
为了解释的简单起见,将计算机实现的方法描绘和描述为一系列动作。可以理解和明白,本发明不受所示动作和/或动作次序的限制,例如,动作可以按各种次序和/或并发地发生,并且可以与本文未呈现和描述的其它动作一起发生。此外,并非所有示出的动作都是实现根据所公开的主题的计算机实现的方法所必需的。另外,本领域技术人员将理解和明白,计算机实现的方法可以替换地经由状态图或事件被表示为一系列相互关联的状态。另外,还应当理解,下文中以及贯穿本说明书所公开的计算机实现的方法能够被存储在制品上,以便于将这些计算机实现的方法传输和转移到计算机。如本文所使用的术语制品旨在涵盖可从任何计算机可读设备或存储介质访问的计算机程序。
为了提供所公开的主题的各个方面的上下文,图10以及以下讨论旨在提供对其中可实现所公开的主题的各个方面的合适环境的一般描述。图10示出了其中可促进本文所述的一个或多个实施例的示例、非限制性操作环境的框图。为了简洁,省略了对这里描述的其它实施例中采用的类似元素的重复描述。参考图10,用于实现本公开的各方面的合适的操作环境1000还可包括计算机1012。计算机1012还可以包括处理单元1014、系统存储器1016和系统总线1018。系统总线1018将包括但不限于系统存储器1016的系统组件耦合到处理单元1014。处理单元1014可以是各种可用处理器中的任一种。双微处理器和其它多处理器体系结构也可用作处理单元1014。系统总线1018可以是若干类型的总线结构中的任何一种,包括存储器总线或存储器控制器、外围总线或外部总线、和/或使用任何各种可用总线体系结构的本地总线,这些总线体系结构包括但不限于工业标准体系结构(ISA)、微通道体系结构(MSA)、扩展ISA(EISA)、智能驱动电子设备(IDE)、VESA本地总线(VLB)、外围部件互连(PCI)、卡总线、通用串行总线(USB)、高级图形端口(AGP)、火线(IEEE1394)、和小型计算机系统接口(SCSI)。系统存储器1016还可以包括易失性存储器1020和非易失性存储器1022。基本输入/输出系统(BIOS)包含诸如在启动期间在计算机1012内的元件之间传输信息的基本例程,它被存储在非易失性存储器1022中。作为说明而非限制,非易失性存储器1022可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、闪存或非易失性随机存取存储器(RAM)(例如,铁电RAM(FeRAM),易失性存储器1020还可以包括用作外部高速缓存存储器的随机存取存储器(RAM)。作为说明而非限制,RAM可以以许多形式获得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDR SDRAM)、增强型SDRAM(ESDRAM)、同步DRAM(SLDRAM)、直接存储器总线RAM(DRRAM)、直接存储器总线动态RAM(DRDRAM)和存储器总线动态RAM。
计算机1012还可包括可移动/不可移动、易失性/非易失性计算机存储介质。例如,图10示出了盘存储1024。盘存储1024还可包括但不限于,诸如磁盘驱动器、软盘驱动器、磁带驱动器、Jaz驱动器、Zip驱动器、LS-100驱动器、闪存卡、或记忆棒等设备。盘存储1024还可包括单独的存储介质或与其它存储介质组合的存储介质,其它存储介质包括但不限于,诸如紧致盘ROM设备(CD-ROM)、CD可记录驱动器(CD-R驱动器)、CD可重写驱动器(CD-RW驱动器)或数字多功能盘ROM驱动器(DVD-ROM)等光盘驱动器。为了便于将盘存储1024连接到系统总线1018,通常使用诸如接口1026等可移动或不可移动接口。图10还描绘了充当用户和在合适的操作环境1000中描述的基本计算机资源之间的中介的软件。这样的软件还可以包括例如操作系统1028。可存储在盘存储1024上的操作系统1028用于控制和分配计算机1012的资源。系统应用程序1030利用操作系统1028通过例如存储在系统存储器1016或盘存储1024上的程序模块1032和程序数据1034对资源的管理。应当理解,本公开可以用各种操作系统或操作系统的组合来实现。用户通过输入设备1036把命令或信息输入到计算机1012中。输入设备1036包括但不限于诸如鼠标、跟踪球、指示笔、触摸垫等定点设备、键盘、话筒、操纵杆、游戏手柄、圆盘式卫星天线、扫描仪、TV调谐卡、数码相机、数码摄像机、web摄像头等等。这些和其它输入设备通过系统总线1018经由接口端口1038连接到处理单元1014。接口端口1038包括,例如,串行端口、并行端口、游戏端口、以及通用串行总线(USB)。(一个或多个)输出设备1040使用与(一个或多个)输入设备1036相同类型的端口中的一些端口。因此,例如,USB端口可用于向计算机1012提供输入,并从计算机1012向输出设备1040输出信息。提供输出适配器1042来说明存在某些输出设备1040,如监视器、扬声器和打印机,以及其它输出设备1040,它们需要专用适配器。作为示例而非限制,输出适配器1042包括提供输出设备1040和系统总线1018之间的连接方法的显卡和声卡。应当注意,其它设备和/或设备的系统提供输入和输出能力,诸如远程计算机1044。
计算机1012可使用至一个或多个远程计算机,诸如远程计算机1044的逻辑连接在网络化环境中操作。远程计算机1044可以是计算机、服务器、路由器、网络PC、工作站、基于微处理器的电器、对等设备或其它常见的网络节点等,且通常还可包括相对于计算机1012所描述的许多或所有元件。为了简洁起见,仅将存储器存储设备1046与远程计算机1044一起示出。远程计算机1044通过网络接口1048被逻辑地连接到计算机1012,然后经由通信连接1050被物理地连接。网络接口1048包括有线和/或无线通信网络,例如局域网(LAN)、广域网(WAN)、蜂窝网络等。LAN技术包括光纤分布式数据接口(FDDI)、铜线分布式数据接口(CDDI)、以太网、令牌环等。WAN技术包括但不限于,点对点链路、像综合业务数字网(ISDN)那样的电路交换网络及其变体、分组交换网络、以及数字用户线(DSL)。通信连接1050是指用于将网络接口1048连接到系统总线1018的硬件/软件。虽然为了清楚地说明,通信连接1050被示为在计算机1012内部,但是它也可以在计算机1012外部。仅出于示例性目的,用于连接到网络接口1048的硬件/软件还可以包括内部和外部技术,诸如包括常规电话级调制解调器、电缆调制解调器和DSL调制解调器的调制解调器、ISDN适配器和以太网卡。
本发明可以是任何可能的技术细节集成水平的系统、方法、装置和/或计算机程序产品。计算机程序产品可以包括其上具有计算机可读程序指令的计算机可读存储介质(或多个介质),所述计算机可读程序指令用于使处理器执行本发明的各方面。计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、集成电路配置数据或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作动作,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图示出了根据本发明的各种实施例的系统、方法和计算机程序产品的可能实施例的架构、功能和操作。在这点上,流程图或框图中的每个框可以表示指令的模块、段或部分,其包括用于实现指定的逻辑功能的一个或多个可执行指令。在一些替代实施例中,在框中标注的功能可以不按图中标注的顺序发生。例如,连续示出的两个框实际上可以基本上同时执行,或者这些框有时可以以相反的顺序执行,这取决于所涉及的功能。还将注意,框图和/或流程图图示的每个框以及框图和/或流程图图示中的框的组合可以由执行指定功能或动作或执行专用硬件和计算机指令的组合的专用的基于硬件的系统来实现。
尽管以上在运行在一个和/或多个计算机上的计算机程序产品的计算机可执行指令的一般上下文中描述了本主题,但是本领域的技术人员将认识到,本公开也可以结合其它程序模块来实现或可以结合其它程序模块来实现。通常,程序模块包括执行特定任务和/或实现特定抽象数据类型的例程、程序、组件、数据结构等。此外,本领域的技术人员可以理解,本发明的计算机实现的方法可以用其它计算机系统配置来实施,包括单处理器或多处理器计算机系统、小型计算设备、大型计算机、以及计算机、手持式计算设备(例如,PDA、电话)、基于微处理器的或可编程的消费或工业电子产品等。所示的各方面也可以在其中任务由通过通信网络链接的远程处理设备执行的分布式计算环境中实践。然而,本公开的一些方面,如果不是所有方面,可以在独立计算机上实践。在分布式计算环境中,程序模块可以位于本地和远程存储器存储设备中。
如本申请中所使用的,术语"组件"、"系统"、"平台"、"接口"等可以指代和/或可以包括计算机相关的实体或与具有一个或多个特定功能的操作机器相关的实体。这里公开的实体可以是硬件、硬件和软件的组合、软件、或执行中的软件。例如,组件可以是,但不限于,在处理器上运行的进程、处理器、对象、可执行文件、执行线程、程序和/或计算机。作为说明,在服务器上运行的应用程序和服务器都可以是组件。一个或多个组件可以驻留在进程和/或执行的线程内,并且组件可以位于一个计算机上和/或分布在两个或更多计算机之间。在另一示例中,相应组件可从其上存储有各种数据结构的各种计算机可读介质执行。这些组件可以经由本地和/或远程进程进行通信,例如根据具有一个或多个数据分组的信号(例如,来自一个组件的数据,该组件经由该信号与本地系统、分布式系统中的另一个组件进行交互和/或通过诸如因特网之类的网络与其它系统进行交互)。作为另一个示例,组件可以是具有由电气或电子电路操作的机械部件提供的特定功能的装置,该电气或电子电路由处理器执行的软件或固件应用程序操作。在这种情况下,处理器可以在装置的内部或外部,并且可以执行软件或固件应用的至少一部分。作为又一示例,组件可以是通过电子组件而不是机械部件来提供特定功能的装置,其中电子组件可以包括处理器或其他方法以执行至少部分地赋予电子组件的功能的软件或固件。在一方面,组件可经由虚拟机来仿真例如云计算系统内的电子组件
此外,术语“或”旨在表示包含性的"或"而不是排他性的"或"。也就是说,除非另外指定,或者根据上下文含义清楚,否则“X采用A或B”旨在表示任何自然的包含性排列。也就是说,如果X使用A;X采用B;或者X采用A和B两者,则在任何前述情况下都满足“X采用A或B”。此外,除非另外指定或根据上下文清楚是指单数形式,否则如在本说明书和附图中使用的冠词“一”和“一个”一般应被解释为表示“一个或多个”。如本文所使用的,术语“示例”和/或“示例性的”用于表示用作示例、实例或说明。为了避免疑惑,本文公开的主题不受这些示例限制。此外,本文中描述为“示例”和/或“示例性”的任何方面或设计不一定被解释为比其它方面或设计优选或有利,也不意味着排除本领域普通技术人员已知的等效示例性结构和技术。
如在本说明书中所采用的,术语“处理器”可以指基本上任何计算处理单元或设备,包括但不限于单核处理器;具有软件多线程执行能力的单处理器;多核处理器;具有软件多线程执行能力的多核处理器;具有硬件多线程技术的多核处理器;平行平台;以及具有分布式共享存储器的并行平台。另外,处理器可以指被设计为执行本文描述的功能的集成电路、专用集成电路(ASIC)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、可编程逻辑控制器(PLC)、复杂可编程逻辑器件(CPLD)、分立门或晶体管逻辑、分立硬件组件或其任意组合。此外,处理器可以采用纳米级架构,例如但不限于基于分子和量子点的晶体管、开关和门,以便优化空间使用或增强用户设备的性能。处理器也可以实现为计算处理单元的组合。在本公开中,诸如“存储”、“数据库”以及与组件的操作和功能相关的基本上任何其他信息存储组件之类的术语被用来指代“存储器组件”、在“存储器”中体现的实体或包括存储器的组件。应了解,本文所描述的存储器和/或存储器组件可为易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。作为说明而非限制,非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除ROM(EEPROM)、闪存或非易失性随机存取存储器(RAM)(例如,铁电RAM(FeRAM);易失性存储器可包括RAM,RAM可用作外部高速缓存存储器,例如作为说明而非限制,RAM可以许多形式获得,诸如同步RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双倍数据率(DDR SDRAM)、增强型SDRAM(ESDRAM)、同步链路DRAM(SLDRAM)、直接Rambus RAM(DRRAM)、直接Rambus动态RAM(DRDRAM)和Rambus动态RAM(RDRAM)。
以上描述的内容仅包括系统和计算机实现的方法的示例。当然,不可能为了描述本公开而描述组件或计算机实现的方法的每个可想到的组合,但是本领域的普通技术人员可以认识到,本公开的许多进一步的组合和置换是可能的。此外,就在详细描述、权利要求书、附录和附图中使用术语“包括”、“具有”、“拥有“等来说”,这些术语旨在以与术语“包含”在权利要求书中用作过渡词时所解释的类似的方式为包含性的。已经出于说明的目的呈现了对各种实施例的描述,但是不旨在是穷举的或限于所公开的实施例。在不背离所描述的实施例的范围的情况下,许多修改和变化对于本领域的普通技术人员将是显而易见的。选择本文所使用的术语以最好地解释实施例的原理、实际应用或对市场上存在的技术改进,或使本领域的其他普通技术人员能够理解本文所公开的实施例。

Claims (16)

1.一种用于促进降低芯片上电源噪声的设备,其包括:
位于处理器核的第一单元处的第一电压噪声传感器,其中所述第一电压噪声传感器检测所述第一单元处的第一电压下降,并且其中所述处理器核被划分成所述第一单元和第二单元;
全局噪声管理器组件,其位于所述处理器核中,并且从所述第一电压噪声传感器接收所述第一电压下降的指示;以及
位于所述第一单元中的第一本地噪声管理器组件,可操作用于:
从所述第一电压噪声传感器接收所述第一电压下降的所述指示;以及
在所述第一单元处实施第一降噪过程;
其中,所述第一本地噪声管理器组件进一步可操作用于通过所述第一单元内的第一本地控制回路来实施所述第一降噪过程,并且其中,所述第一本地噪声管理器组件进一步可操作用于将与实施所述第一降噪过程相关的信息广播到所述全局噪声管理器组件以及广播到位于所述处理器核的所述第二单元中的至少第二本地噪声管理器组件。
2.根据权利要求1所述的设备,其中所述第一电压噪声传感器可操作以用于数字地测量电源噪声值或所确定电压值处的斜率中的至少一者。
3.根据权利要求1所述的设备,其中所述第一电压噪声传感器可操作以用于数字地测量电源噪声值或所确定电压值处的斜率中的至少一者。
4.根据权利要求3所述的设备,其中所述第一本地控制回路具有比全局控制回路的第二反应时间更快的第一反应时间。
5.根据权利要求1-4中任一项所述的设备,其中所述全局噪声管理器组件进一步可操作以用于基于所述第一电压下降已持续超过所界定数目个周期的确定而实施全局降噪过程,且其中所述全局降噪过程在所述处理器核的所述第一单元及所述第二单元处应用。
6.根据权利要求5所述的设备,其中,所述全局降噪过程进一步可操作用于覆盖所述第一降噪过程。
7.根据权利要求1-4中任一项所述的设备,还包括:
第二电压噪声传感器,其位于所述处理器核的所述第二单元处,可操作用于检测所述第二单元处的第二电压下降;以及
位于所述第二单元中的第二本地噪声管理器组件,可操作用于:
从所述第二电压噪声传感器接收所述第二电压下降的第二指示;以及
在所述第二单元处实施第二降噪过程。
8.根据权利要求7所述的设备,其中,所述第二本地噪声管理器组件还可操作用于通过所述第二单元内的第二本地控制回路来实施所述第二降噪过程,并且其中,所述第二本地噪声管理器组件还可操作用于将与所述第二本地控制回路相关的信息广播到所述全局噪声管理器组件和所述第一本地噪声管理器组件。
9.根据权利要求1-4中任一项所述的设备,其中,在所述第一单元处实施的所述第一降噪过程增加了所述处理器核的处理效率。
10.一种用于促进片上电源噪声的降低的计算机实现的方法,包括:
由处理器核检测所述处理器核的第一区域处的电压下降,其中所述处理器核被划分成所述第一区域和第二区域;
由所述处理器核将电压下降信息发送到位于所述第一区域中的本地控制器和位于所述处理器核中的全局控制器;以及
由所述处理器核响应于从所述本地控制器接收的本地指令而在所述处理器核的所述第一区域处应用第一减轻对策,其中所述本地指令包括所述第一减轻对策的指示;
其中,所述第一区域内的本地控制器进一步可操作用于通过所述第一区域内的第一本地控制回路来实施所述第一减轻对策,并且其中,所述本地控制器进一步可操作用于将与实施所述第一减轻对策相关的信息广播到所述全局控制器以及广播到位于所述处理器核的所述第二区域中的至少第二本地控制器。
11.根据权利要求10所述的计算机实现的方法,还包括:
由所述处理器核确定所述第一减轻对策未解决所述第一区域处的所述电压下降;以及
由所述处理器核响应于从所述全局控制器接收的全局指令而在所述处理器核内应用第二减轻对策。
12.如权利要求11所述的计算机实现的方法,其特征在于,所述应用所述第二减轻对策包括:
由所述处理器核在所述处理器核的所述第一区域处应用所述第二减轻对策;以及
由所述处理器核在所述处理器核的第二区域处应用第三减轻对策,并且其中所述第二减轻对策和所述第三减轻对策基于从所述全局控制器接收的相应指令。
13.根据权利要求12所述的计算机实现的方法,还包括由所述处理器核用从所述全局控制器接收的所述相应指令来覆写从所述本地控制器接收的所述本地指令。
14.根据权利要求10至13中的任一项所述的计算机实现的方法,其中,检测所述电压下降包括由所述处理器核以数字方式测量电源噪声值和在确定的电压值处的斜率中的至少一个,并且其中,将所述电源噪声值和所述斜率与所述处理器核的所述第一区域关联。
15.根据权利要求10至13中任一项所述的计算机实现的方法,其中,所述将电压下降信息发送到所述本地控制器减少与所述电压下降的检测和减轻相关联的性能开销。
16.一种计算机可读介质,其上具有可加载到数字计算机的内部存储器中的计算机程序,包括软件代码部分,当所述程序在计算机上运行时,用于执行根据权利要求10至15中任一项所述的方法。
CN201880049163.5A 2017-07-28 2018-07-27 用处理器核中本地检测回路降低或减轻芯片上电源噪声电压 Active CN110959257B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US15/663,033 US10171081B1 (en) 2017-07-28 2017-07-28 On-chip supply noise voltage reduction or mitigation using local detection loops in a processor core
US15/663,033 2017-07-28
US15/842,482 2017-12-14
US15/842,482 US10333520B2 (en) 2017-07-28 2017-12-14 On-chip supply noise voltage reduction or mitigation using local detection loops in a processor core
PCT/IB2018/055630 WO2019021249A1 (en) 2017-07-28 2018-07-27 CHIP POWER NOISE VOLTAGE REDUCTION OR MITIGATION USING LOCAL DETECTION BUCKLES IN A PROCESSOR CORE

Publications (2)

Publication Number Publication Date
CN110959257A CN110959257A (zh) 2020-04-03
CN110959257B true CN110959257B (zh) 2023-11-28

Family

ID=64739873

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880049163.5A Active CN110959257B (zh) 2017-07-28 2018-07-27 用处理器核中本地检测回路降低或减轻芯片上电源噪声电压

Country Status (6)

Country Link
US (2) US10171081B1 (zh)
JP (1) JP7279013B2 (zh)
CN (1) CN110959257B (zh)
DE (1) DE112018003087B4 (zh)
GB (1) GB2579316B (zh)
WO (1) WO2019021249A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10642336B2 (en) * 2016-07-12 2020-05-05 Advanced Micro Devices, Inc. Clock adjustment for voltage droop
US11073884B2 (en) 2017-11-15 2021-07-27 International Business Machines Corporation On-chip supply noise voltage reduction or mitigation using local detection loops
US11029742B2 (en) 2019-04-01 2021-06-08 International Business Machines Corporation Mitigating voltage droop
US11150716B2 (en) 2020-02-05 2021-10-19 International Business Machines Corporation Dynamically optimizing margins of a processor
US11385698B1 (en) * 2020-12-30 2022-07-12 Innogrit Technologies Co., Ltd. Voltage drop management for VLSI and SoC
US20220300608A1 (en) * 2021-03-16 2022-09-22 Intel Corporation Apparatus and method to detect power supply security attack and risk mitigation
US11586265B2 (en) 2021-06-16 2023-02-21 International Business Machines Corporation Voltage droop management through microarchitectural stall events
US20230071427A1 (en) * 2021-09-08 2023-03-09 International Business Machines Corporation Providing deterministic frequency and voltage enhancements for a processor
US12061509B2 (en) * 2022-12-15 2024-08-13 International Business Machines Corporation Voltage droop and overshoot management using non-linear slope detection

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07219910A (ja) * 1994-01-28 1995-08-18 Hitachi Ltd マルチプロセッサの早期異常検出方法及びマルチプロセッサシステム
JP2009217504A (ja) * 2008-03-10 2009-09-24 Hitachi Ltd 計算機システム、計算機制御方法及び計算機制御プログラム
CN104335519A (zh) * 2012-05-07 2015-02-04 适应性频谱和信号校正股份有限公司 用于脉冲噪声检测和减轻的装置、系统和方法

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5565816A (en) 1995-08-18 1996-10-15 International Business Machines Corporation Clock distribution network
JPH09116098A (ja) 1995-10-17 1997-05-02 Sony Corp クロック配給装置
US6842027B2 (en) * 2002-10-07 2005-01-11 Intel Corporation Method and apparatus for detection and quantification of on-die voltage noise in microcircuits
JP4209377B2 (ja) * 2004-10-20 2009-01-14 株式会社ルネサステクノロジ 半導体装置
US7607028B2 (en) 2006-05-30 2009-10-20 International Business Machines Corporation Mitigate power supply noise response by throttling execution units based upon voltage sensing
US8269544B2 (en) 2010-10-01 2012-09-18 Oracle America, Inc. Power-supply noise suppression using a frequency-locked loop
US20120187991A1 (en) 2011-01-25 2012-07-26 Advanced Micro Devices, Inc. Clock stretcher for voltage droop mitigation
US8587357B2 (en) * 2011-08-25 2013-11-19 International Business Machines Corporation AC supply noise reduction in a 3D stack with voltage sensing and clock shifting
US9092210B2 (en) * 2011-11-30 2015-07-28 Intel Corporation Controlling current transients in a processor
US9057761B2 (en) * 2011-12-30 2015-06-16 Arm Limited Sensing supply voltage swings within an integrated circuit
US9164563B2 (en) 2012-05-24 2015-10-20 International Business Machines Corporation Processor noise mitigation using differential critical path monitoring
US9276460B2 (en) 2012-05-25 2016-03-01 Flextronics Ap, Llc Power converter with noise immunity
US8604852B1 (en) 2012-09-11 2013-12-10 Oracle International Corporation Noise suppression using an asymmetric frequency-locked loop
US10698432B2 (en) 2013-03-13 2020-06-30 Intel Corporation Dual loop digital low drop regulator and current sharing control apparatus for distributable voltage regulators
CN104699531B (zh) * 2013-12-09 2019-12-13 超威半导体公司 3d芯片系统中的电压下降缓解
US9689917B2 (en) * 2014-08-01 2017-06-27 Oracle International Corporation Digital voltage droop monitor with clock jitter adjustment
GB2530782A (en) 2014-10-02 2016-04-06 Ibm Voltage droop reduction in a processor
US10248177B2 (en) 2015-05-22 2019-04-02 Advanced Micro Devices, Inc. Droop detection and regulation for processor tiles
US9798376B2 (en) 2015-08-03 2017-10-24 Qualcomm Incorporated Power distribution network (PDN) droop/overshoot mitigation
JP6533135B2 (ja) * 2015-09-16 2019-06-19 ルネサスエレクトロニクス株式会社 半導体装置
US10437311B2 (en) 2016-09-06 2019-10-08 International Business Machines Corporation Mitigation of on-chip supply voltage noise by monitoring slope of supply voltage based on time-based sensors
US10261561B2 (en) 2016-09-06 2019-04-16 International Business Machines Corporation Mitigation of on-chip supply voltage based on local and non-local (neighboring) cores' supply voltage information and decision

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07219910A (ja) * 1994-01-28 1995-08-18 Hitachi Ltd マルチプロセッサの早期異常検出方法及びマルチプロセッサシステム
JP2009217504A (ja) * 2008-03-10 2009-09-24 Hitachi Ltd 計算機システム、計算機制御方法及び計算機制御プログラム
CN104335519A (zh) * 2012-05-07 2015-02-04 适应性频谱和信号校正股份有限公司 用于脉冲噪声检测和减轻的装置、系统和方法

Also Published As

Publication number Publication date
GB2579316B (en) 2021-09-29
WO2019021249A1 (en) 2019-01-31
JP7279013B2 (ja) 2023-05-22
US10333520B2 (en) 2019-06-25
US10171081B1 (en) 2019-01-01
GB2579316A (en) 2020-06-17
JP2020529072A (ja) 2020-10-01
GB202002342D0 (en) 2020-04-08
CN110959257A (zh) 2020-04-03
DE112018003087B4 (de) 2021-12-23
DE112018003087T5 (de) 2020-03-05
US20190036530A1 (en) 2019-01-31

Similar Documents

Publication Publication Date Title
CN110959257B (zh) 用处理器核中本地检测回路降低或减轻芯片上电源噪声电压
CN111247502B (zh) 处理器内核中的主动电压降的减少和/或减轻
US11561595B2 (en) On-chip supply noise voltage reduction or mitigation using local detection loops
US10261561B2 (en) Mitigation of on-chip supply voltage based on local and non-local (neighboring) cores' supply voltage information and decision
US10853750B2 (en) Controlled resource provisioning in distributed computing environments
US11036276B2 (en) Mitigation of on-chip supply voltage noise by monitoring slope of supply voltage based on time-based sensors
US9677930B2 (en) Method of interrupt control and electronic system using the same
US9329848B2 (en) Mechanism for facilitating dynamic and efficient fusion of computing instructions in software programs
US20170147055A1 (en) Systems and methods for providing local hardware limit management and enforcement
US9329656B2 (en) Apparatus, method, and system for predicitve power delivery noise reduction
US9671779B2 (en) Method and system for filtering lot schedules using a previous schedule
US20230273832A1 (en) Power management for execution of machine learning workloads
SG173845A1 (en) Per-station start time constraint
Penney et al. RAPID: Enabling fast online policy learning in dynamic public cloud environments
CN114327774A (zh) 代码运行方法、装置、设备以及存储介质
CN116756061A (zh) 一种外部设备适配方法、装置、设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant