CN103827776A - 通过pci高速组件减少功耗的活动状态功率管理(aspm) - Google Patents
通过pci高速组件减少功耗的活动状态功率管理(aspm) Download PDFInfo
- Publication number
- CN103827776A CN103827776A CN201280047803.1A CN201280047803A CN103827776A CN 103827776 A CN103827776 A CN 103827776A CN 201280047803 A CN201280047803 A CN 201280047803A CN 103827776 A CN103827776 A CN 103827776A
- Authority
- CN
- China
- Prior art keywords
- agent
- dllp
- power consumption
- state
- flow control
- 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.)
- Granted
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
- G06F1/3206—Monitoring of events, devices or parameters that trigger a change in power modality
- G06F1/3215—Monitoring of peripheral devices
-
- 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
- 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/325—Power saving in peripheral device
- G06F1/3253—Power saving in bus
-
- 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)
- Multi Processors (AREA)
- Power Sources (AREA)
Abstract
描述了关于通过PCI高速组件减少功耗的活动状态功率管理(ASPM)的方法和装置。在一个实施例中,具有嵌入信息的专用分组触发进入较低功耗状态。嵌入信息还包括在两个代理之间的流控制信用信息以及目标功耗状态。还公开和要求保护其他实施例。
Description
技术领域
本公开一般涉及电子领域。更具体地,一些实施例涉及通过PCI高速组件减少功耗的活动状态功率管理(ASPM)。
背景
在计算机***中使用的一种常用接口是***组件互连(PCI)高速(根据2008年8月第0.5版本的PCI高速基础规范3.0的“PCIe”)。PCIe规范定义了诸如L0、L1、以及L2/L3之类的若干活动状态功率管理(ASPM)机制,以允许PCIe控制器在链路处于空闲时或者在平台处于空闲时节省功率。当PCIe控制器进入ASPML1状态时,可触发功率门控以减少泄漏功率。然而,功率门控的效率直接取决于在该时间段期间功率门控的电路数量。
附图说明
参考附图提供详细描述。在附图中,附图标记的最左边数字标识附图标记首先出现在其中的附图。在不同的附图中使用相同的附图标记来指示相同或相似的项目。
图1-2以及6-7示出可用于实现本文中所讨论的各个实施例的计算***的实施例的方框图。
图3A-3C示出根据一些实施例的关于用于功率管理的数据链路层分组(DLLP)的信息。
图4-5示出根据一些实施例的流程图。
详细描述
在以下描述中,为了提供对各个实施例的透彻理解,阐述了大量具体细节。然而,在没有这些具体细节的情况下,可实践一些实施例。在其他实例中,未详细地描述公知方法、过程、组件、以及电路,从而不混淆特定实施例。可使用诸如集成半导体电路(“硬件”)、组织成一个或多个程序(“软件”)的计算机可读指令、或者硬件和软件的一些组合之类的各种手段来执行本发明的实施例的各方面。出于本公开的目的,对“逻辑”的引用应当意味着硬件、软件、或者其一些组合。
随着处理技术在维度上改进,泄漏功率对平台中消散的总功率的影响增加。尽管动态功率可通过控制活动因素(例如,通过时钟门控)显著地减少,但是泄漏功率通常可只在整个电网被关闭(例如,通过功率门控)时显著地减少。这指示功率门控特征对PCIe控制器、PCIe端点、PCIe开关、和/或PCIe根端口的重要性。
为此,一些实施例提供用于通过创建命名为“L1_DL_RESET(L1_DL_重置)(L1数据链路重置)”的新ASPML1来增强PCIe基础规范的功率管理的新颖和/或有效技术,这通过使更多逻辑电路能够例如在PCIe链路处于空闲时被功率门控来提高PCIe控制器的功率门控的效率。本申请包括关于新流的信息、细节、增强、以及新ASPML1_DL_RESET和ASPML1之间的差异。
在本文中参考诸如本文中参考例如图1-2以及6-7所讨论的组件之类的计算***组件来讨论各个实施例。更具体地,图1示出根据本发明的一个实施例的计算***100的方框图。***100可包括一个或多个代理102-1至102-M(在本文中统称为“(诸)代理102”或者更一般地“代理102”)。在一个实施例中,代理102可以是诸如参考图2以及6-7所讨论的计算***之类的计算***的组件。
如图1所示,代理102可经由网络结构(fabric)104通信。在一个实施例中,网络结构104可包括经由串行(例如,点对点)链路和/或共享通信网络进行通信的一个或多个互连(或互连网络)。例如,一些实施例可便于链路上的组件调试或验证,这些链路允许与全缓冲双列直插式存储器模块(FBD)通信,例如其中FBD链路是用于使存储器模块耦合到主机控制器设备(诸如处理器或存储器中枢)的串行链路。可从FBD信道主机传送调试信息,从而可通过信道交通轨迹捕获工具(诸如一个或多个逻辑分析仪)沿着该信道观察调试信息。
在一个实施例中,***100可支持分层协议方案,该分层协议方案可包括物理层、链路层、路由层、传输层、和/或协议层。结构104还可便于数据(例如,以分组的形式)从一种协议(例如,高速缓存处理器或者高速缓存知晓的存储器控制器)传送到用于点对点网络的另一协议。同样,在一些实施例中,网络结构104可提供遵循一种或多种高速缓存相干协议的通信。
此外,如图1中的箭头方向所示,代理102可经由网络结构104传送和/或接收数据。因此,一些代理可利用单向链路,而其他代理可利用双向链路来通信。举例而言,一个或多个代理(诸如代理102-M)可传送数据(例如,经由单向链路106),其他代理(诸如代理102-2)可接收数据(例如,经由单向链路108),而一些代理(诸如代理102-1)可传送和接收数据(例如,经由双向链路110)。
同样,根据实施例,代理102中的一个或多个代理可包括一个或多个输入/输出中枢(IOH)120以便于代理(例如,所示的代理102-1)与一个或多个输入/输出(“I/O”或“IO”)设备124(诸如PCIe I/O设备)之间的通信。IOH120可包括根联合体(Root Complex:RC)122(该RC122包括一个或多个根端口),以耦合代理102-1(诸如处理器、存储器子***等)的组件和I/O设备124并且根据PCIe规范便于这些组件和I/O设备124之间的通信。在一些实施例中,多代理***(诸如处理器内核、芯片组、输入/输出中枢、存储器控制器等)的一个或多个组件可包括RC122和/或IOH120,如将参考其余附图进一步讨论的。另外,代理102可包括PCIe控制器135,以管理PCIe接口的各种操作,包括例如代理102中的PCIe组件的功率管理特征/方面。此外,如图1所示,代理102-1可访问存储器140。如将参考图2-7进一步讨论的,存储器140可存储各种项目,包括例如OS、设备驱动器等。
更具体地,图2是根据实施例的计算***200的方框图。***200可包括多个套接口(socket)202-208(示出四个,但是一些实施例可具有更多或更少的套接口)。每一套接口可包括处理器、以及IOH120、RC122和PCIe控制器135中的一个或多个。在一些实施例中,IOH120、RC122、和/或PCIe控制器135可存在于***200的一个或多个组件(诸如图2所示的那些组件)中。此外,取决于该实现,更多或更少的方框120、122、和/或135可存在于***中。
另外,每一套接口可经由诸如快速通道互连(QPI)之类的点对点(PtP)链路耦合到其他套接口。如针对图1的网络结构104所讨论的,每一套接口可耦合到***存储器的本地部分,其例如由可包括动态随机存取存储器(DRAM)的多个双列直插式存储器模块(DIMM)形成。
如图2所示,每一套接口可耦合到存储器控制器(MC)/归属(home)代理(HA)(诸如MC0/HA0至MC3/HA3)。存储器控制器可耦合到相应本地存储器(标记为MEM0至MEM3),该本地存储器可以是***存储器(诸如图4的存储器412)的一部分。在一些实施例中,存储器控制器(MC)/归属代理(HA)(诸如MC0/HA0至MC3/HA3)可与图1的代理102-1相同或相似,并且标记为MEM0至MEM3的存储器可与参考本文中的任一附图所讨论的存储器设备相同或相似。通常,处理/高速缓存代理可将请求发送到归属节点,以访问与相应“归属代理”相关联的存储器地址。同样,在一个实施例中,MEM0至MEM3可被配置成镜像数据,例如作为主控(master)和从属(slave)。同样,在一些实施例中,***200的一个或多个组件可被包括在同一集成电路管芯上。
此外,一种实现(诸如图2所示的)可用于具有镜像的套接口无粘接配置。例如,可在PtP链路上将分派给存储器控制器(诸如MC0/HA0)的数据镜像到另一存储器控制器(诸如MC3/HA3)。
此外,在PCIe基础规范中,当PCIe控制器(例如,PCIe控制器135)退出ASPM L1以重新进入全功能L0状态时,PCIe链路的大部分上下文不在上游组件和下游组件之间交换。因此,预期当PCIe控制器在ASPML1期间触发功率门控时,PCIe控制器需要保持存储链路的上下文信息的逻辑上的功率,从而不丢失上下文信息。在一个实施例中,与ASPM L1相比,新L1_DL_RESET可需要由PCIe控制器存储的更少的链路上下文。在下文中进一步讨论与ASPM L1相比,L1_DL_RESET的流和细节规范中的差异。
参考图3A,根据一个实施例,示出关于用于功率管理的数据链路层分组(DLLP)的信息。如所示的,该分组可包括在字节0处的DDLP类型部分。在一个实施例中,所示的编码可用于PM(功率管理)进入L1(PM进入L1)和PM进入L1_DL_RESET。此外,在一些实施例中,进入L1可由下游组件经由PM DLLP通信。新ASPM LI_DL_RESET可利用图3A所示的DLLP类型。
图3B示出根据一个实施例的关于ASPM进入准则的信息。与需要下游组件来等待一个最大有效载荷信用的最低值的ASPM L1相比,ASPML1_DL_RESET不需要这种准则。在实施例中,例如当上游组件发送PM请求确认时,进入ASPM L1_DL_RESET将信用信息巧妙地嵌入DLLP,并且因此可缩短进入ASPM(因为在L1进入的情况下DLLP信用可能丢失)。
此外,如在PCIe基础规范中规定的,当PCIe控制器处于ASPML1时,不是所有流控制信用都可完全“返回”(因为只有最低信用需要进入L1)。因此,当PCIe控制器从ASPM L1重新进入L0状态时,PCIe控制器可从其余信用恢复流控制更新以发送TLP(事务层分组)。另一方面,在实施例中,ASPML1_DL_RESET需要所有流控制信用返回,且需要上游组件确保所有信用限值(limit)在发送PM请求确认DLLP之前已经被传送。在一些实施例中,一旦下游组件接收PM请求确认DLLP,它将间接地知道所有信用已经返回。使PCIe设备流控制信用完全返回的一个优点在于,在ASPML1_DL_RESET期间,所有流控制跟踪相关逻辑现在可被功率门控。因此,上游组件和下游组件之间的流控制信用可以能够在PCIe链路从L1_DL_RESET唤醒以重新进入L0时被重新初始化(因为所有流控制信用在ASPML1_DL_RESET之前被返回)。
此外,对于PCIe基础规范,由于到ASPML1的进入流需要所有TLP首先得到确认,因此从该规范角度来看保持顺序ID(标识符)信息没有实际益处。在实施例中,在ASPM L1_DL-RESET中,将重置与跟踪TLP有关的所有上下文。这使ASPM L1_DL_RESET能够实现比ASPML1高得多的功率节省,部分地因为所有TLP跟踪逻辑现在可被功率门控。如图3C所示,所存储的上下文信息在ASPML1和ASPML1_DL_RESET之间是不同的。
图4示出根据一个实施例的关于进入L1_DL_RESET的操作的流程图。根据一个实施例,在ASPML1_DL_RESET流中,上游组件确保在向下发送PM请求确认DLLP之前所有信用(流控制DLLP)被返回下游组件。下游组件在接收PM请求确认DLLP之后可知道所有流控制信用已经返回,而无需如在PCIe基础规范中进行的那样累积最低信用。在与需要下游组件等待最低信用(其中流控制DLLP可能被破坏且需要后续30微秒用于每一流控制更新)的PCIeL1进入流相比时,这将流控制信用协议以稳健得多的方式嵌入PM_Request_Ack(PM_请求_确认)DLLP。
图5示出根据一个实施例的从L1_DL_RESET退出的流程图。ASPML1_DL_RESET退出流部分地类似于ASPML1退出流。然而,附加流控制初始化用于经由PCIe链路重新建立这些代理之间的信用。这在图5中示出。一旦退出ASPM L1_DL_RESET,PCIe链路就将是全功能PCIe L0状态。
在一些实施例中,参考图4和/或图5所讨论的操作中的一个或多个操作由PCIe控制器知晓。例如,本文中所讨论的新ASPM可在PCIe控制器135中实现。该新ASPM具有比ASPML1稳健得多的进入流,并且具有比ASPML1更高的功率门控效率。
图6示出根据本发明的一个实施例的计算***600的方框图。计算***600可包括经由互联网络(或总线)604通信的一个或多个中央处理单元(CPU)602-1至602-N或处理器(在本文中统称为“(诸)处理器602”或者更一般地“处理器602”)。处理器602可包括通用处理器、网络处理器(该网络处理器处理在计算机网络603上通信的数据)、或者其他类型的处理器(包括缩减的指令集计算机(RISC)处理器或复杂的指令集计算机(CISC))。此外,处理器602可具有单或多内核设计。具有多内核设计的处理器602可在同一集成电路(IC)管芯上集成不同类型的处理器核。同样,具有多核设计的处理器602可被实现为对称或非对称的多处理器。
同样,参考图1-5所讨论的操作可由***600的一个或多个组件执行。在一些实施例中,处理器602可以与图2的处理器202-208相同或相似。此外,处理器602(或者***600的其他组件)可包括IOH120、RC122、以及PCIe控制器135中的一个或多个。此外,虽然图6示出项目120/122/135的一些位置,但是这些组件可位于***600中的其他地方。例如,I/O设备124可经由总线622等通信。
芯片组606还可与互联网络604通信。芯片组606可包括图形和存储器控制器中枢(GMCH)608。GMCH608可包括与存储器612通信的存储器控制器610。存储器612可存储由CPU602或者包括在计算***600中的任何其他设备执行的数据,包括指令顺序。例如,存储器612可存储与参考先前附图所讨论的操作***(OS)613和或设备驱动器611相对应的数据。在一个实施例中,存储器612和图1的存储器140可以是相同或相似的。在本发明的一个实施例中,存储器612可包括一个或多个易失性存储(或存储器)设备,诸如随机存取存储器(RAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、静态RAM(SRAM)、或者其他类型的存储设备。还可利用诸如硬盘之类的非易失性存储器。附加设备可经由诸如多CPU和/或多***存储器之类的互联网络604通信。
另外,处理器602中的一个或多个处理器可对一个或多个高速缓存(在各个实施例中,这些高速缓存可包括私有和/或共享高速缓存)以及相关联的高速缓存控制器(未示出)进行访问。这些高速缓存可遵循一种或多种高速缓存相干协议。这些高速缓存可存储由***600的一个或多个组件利用的数据(例如,包括指令)。例如,这些高速缓存可在本地高速缓存存储在存储器612中的数据,以供处理器602的组件更快速地访问。在一个实施例中,该高速缓存(该高速缓存可被共享)可包括中级高速缓存和/或最后一级高速缓存(LLC)。同样,每一处理器602可包括第一级(L1)高速缓存。处理器602的各个组件可通过总线或互联网络、和/或存储器控制器或中枢直接与高速缓存通信。
GMCH608还可包括例如经由图形加速器与显示设备616通信的图形接口614。在本发明的一个实施例中,图形接口614可经由加速图形端口(AGP)与图形加速器通信。在本发明的一个实施例中,显示器616(诸如平板显示器)可通过例如信号转换器与图形接口614通信,该信号转换器将存储在诸如视频存储器或***存储器之类的存储设备中的图像的数字表示翻译成由显示器616解释和显示的显示信号。在由显示器616解释并且随后在显示器616上显示之前,显示设备所产生的显示信号可经过各种控制设备。
中枢接口618可允许GMCH608和输入/或输出控制中枢(ICH)620通信。ICH620可提供与计算***600通信的到I/O设备的接口。ICH620可通过诸如***组件互连(PCI)桥、通用串行总线(USB)控制器、或者其他类型的***桥或控制器之类的***桥(或控制器)624与总线622通信。桥624可提供CPU602和***设备之间的数据通道。可利用其他类型的拓扑。同样,多条总线可通过例如多个桥或控制器与ICH620通信。此外,在本发明的各个实施例中,与ICH620通信的其他***设备可包括集成驱动电子设备(IDE)或小计算机***接口(SCSI)硬驱动、USB端口、键盘、鼠标、并行端口、串行端口、软盘驱动、数字输出支持件(例如,数字视频接口(DVI))、或者其他设备。
总线622可与音频设备626、一个或多个盘驱动628、以及网络接口设备630(该网络接口设备630与计算机网络603通信)通信。其他设备可经由总线622通信。同样,在本发明的一些实施例中,各个组件(诸如网络接口设备630)可与GMCH608通信。另外,处理器602、以及GMCH608和/或芯片组606中的一个或多个组件可组合以形成单一集成电路芯片(或者以其他方式存在于同一集成电路管芯上)。
此外,计算***600可包括易失性和/或非易失性存储器(或存储)。例如,非易失性存储器可包括以下存储器中的一个或多个:只读存储器(ROM)、可编程ROM(PROM)、可擦除PROM(EPROM)、电EPROM(EEPROM)、盘驱动(例如,628)、软盘、压缩盘ROM(CD-ROM)、数字多功能盘(DVD)、闪存、磁电-光盘、或者能够存储电子数据(例如,包括指令)的其他类型的非易失性机器可读介质。
图7示出根据本发明的一个实施例的排列在点对点(PtP)配置的计算***700。具体而言,图7示出其中处理器、存储器、以及输入/输出设备通过大量点对点接口互连的***。参考图1-6所讨论的操作可由***700的一个或多个组件执行。
如图7所示,***700可包括若干处理器,其中为了清楚起见,只示出两个处理器702和704。处理器702和704各自可包括本地存储器控制器中枢(MCH)706和708,以实现与存储器710和712的通信。存储器710和/或712可存储各种数据,诸如参考图6的存储器612所讨论的那些数据。如图7所示,处理器702和704还可包括参考图6所讨论的高速缓存。
在一个实施例中,处理器702和704可以是参考图6所讨论的处理器602中的一个处理器。处理器702和704可分别经由点对点(PtP)接口714使用PtP接口电路716和718来交换数据。同样,处理器702和704各自可经由各个PtP接口722和724使用点对点接口电路726、728、730和732与芯片组720交换数据。芯片组720还可经由高性能图形接口736(例如,使用PtP接口电路737)与高性能图形电路734交换数据。
本发明的至少一个实施例可设置在处理器702和704或者芯片组720内。例如,处理器702和704、和/或芯片组720可包括IOH120、RC122、以及PCIe控制器135中的一个或多个。然而,本发明的其他实施例可存在于图7的***700内的其他电路、逻辑单元、或设备中。此外,本发明的其他实施例可在图7所示的若干电路、逻辑单元、或设备之间分布。因此,图7所示的项目120/122/135的位置是示例性的,并且这些组件可以或者可以不设置在所示位置中。
芯片组720可使用PtP接口电路741与总线740通信。总线740可具有与诸如总线桥742和I/O设备743通信的一个或多个设备。经由总线744,总线桥742可与诸如键盘/鼠标745、通信设备746(诸如调制解调器、网络接口设备、或者可与计算机网络603通信的其他通信设备)、音频I/O设备、和/或数据存储设备748之类的其他设备通信。数据存储设备748可存储可由处理器702和/或704执行的代码749。
在本发明的各个实施例中,本文中例如参考图1-7所讨论的操作可被实现为硬件(例如,电路)、软件、固件、微代码、或者其组合,其可被提供为计算机程序产品,例如包括其上存储有用于对计算机编程以执行本文中所讨论的过程的指令(或软件程序)的(例如,非瞬态)机器可读或(例如,非瞬态)计算机可读介质。同样,作为示例,术语“逻辑”可包括软件、硬件、或者软件和硬件的组合。机器可读介质可包括存储设备,诸如参考图1-7所讨论的那些存储设备。另外,这种计算机可读介质可被下载为计算机程序产品,其中可借助于经由载波或者其他传播介质传送的数据信号经由通信链路(例如,总线、调制解调器、或网络连接)将该程序从远程计算机(例如,服务器)传输到请求计算机(例如,客户机)。
在说明书中对“一个实施例”或“实施例”的引用意味着结合实施例所描述的特定特征、结构、或特性可被包括在至少一种实现中。在说明书中词组“在一个实施例中”出现在各个地方可以是或者可以不是全部引用同一实施例。
同样,在该描述和权利要求中,可使用术语“耦合”和/或“连接”、及其派生词。在本发明的一些实施例中,“连接”可用于指示两个或两个以上元件彼此直接物理或电接触。“耦合”可意味着两个或两个以上元件直接物理或电接触。然而,“耦合”还可意味着两个或两个以上元件可以彼此不直接接触,但是仍然可以彼此协同操作或交互。
由此,虽然本发明的实施例已经以结构特征和/或方法动作专用的语言进行了描述,但是应当理解要求保护的主题可以不限于所描述的特定特征或动作。相反,特定特征和动作被公开为实现要求保护的主题的样本形式。
Claims (20)
1.一种装置,包括:
第一代理,所述第一代理经由链路耦合到第二代理;以及
所述第一代理包括控制器逻辑,以使所述链路响应于数据链路层分组(DLLP)进入新的较低功耗状态,
其中所述DLLP指示进入所述新的功耗状态的请求,并且其中所述DLLP包括在所述第一代理和所述第二代理之间共享的流控制信用信息。
2.如权利要求1所述的装置,其特征在于,所述新的功耗状态包括L1状态。
3.如权利要求2所述的装置,其特征在于,所述DLLP指示进入所述L1状态或L1_DL_RESET状态。
4.如权利要求2所述的装置,其特征在于,所述DLLP嵌入所述流控制信用信息。
5.如权利要求2所述的装置,其特征在于,在进入所述L1状态之前返回所述第一和第二代理之间的所有流控制信用。
6.如权利要求1所述的装置,其特征在于,所述控制器逻辑导致在退出所述新的功耗状态之后所述第一代理和所述第二代理之间的流控制信用的重新初始化。
7.如权利要求1所述的装置,其特征在于,所述第一代理包括根联合体,用以便于所述第一代理和所述第二代理之间通过所述链路的通信。
8.如权利要求1所述的装置,其特征在于,所述第一代理包括以下各项中的一个或多个:处理器核、芯片组、输入/输出中枢、或者存储器控制器。
9.如权利要求1所述的装置,其特征在于,所述第二代理包括输入/输出设备。
10.如权利要求1所述的装置,其特征在于,所述链路包括点对点相干互连。
11.如权利要求1所述的装置,其特征在于,所述第一代理包括多个处理器核以及一个或多个套接口。
12.如权利要求1所述的装置,其特征在于,所述第一代理、所述第二代理、以及所述存储器中的一个或多个位于同一集成电路芯片上。
13.一种方法,包括:
接收数据链路层分组(DLLP);以及
使耦合第一代理和第二代理的链路响应于所述DLLP进入新的较低功耗状态,
其中所述DLLP指示进入所述新的功耗状态的请求,并且其中所述DLLP包括在所述第一代理和所述第二代理之间共享的流控制信用信息。
14.如权利要求13所述的方法,其特征在于,所述新的功耗状态包括L1状态,其中所述DLLP指示进入所述L1状态或L1_DL_RESET状态。
15.如权利要求13所述的方法,还包括:在所述DLLP中嵌入所述流控制信用信息。
16.如权利要求13所述的方法,还包括:导致在退出所述新的功耗状态之后所述第一代理和所述第二代理之间的流控制信用的重新初始化。
17.一种计算***,包括:
第一处理器核和输入/输出设备;
输入/输出中枢,所述输入/输出中枢用于经由点对点链路耦合所述第一处理器核和所述输入/输出设备;并且
所述输入/输出中枢包括控制器逻辑,用以使所述链路响应于数据链路层分组(DLLP)进入新的较低功耗状态,
其中所述DLLP指示进入所述新的功耗状态的请求,并且其中所述DLLP包括在所述第一代理和所述第二代理之间共享的流控制信用信息。
18.如权利要求17所述的***,其特征在于,所述新的功耗状态包括L1状态。
19.如权利要求17所述的***,其特征在于,在进入所述L1状态之前返回所述第一和第二代理之间的所有流控制信用。
20.如权利要求17所述的***,其特征在于,所述控制器逻辑导致在退出所述新的功耗状态之后所述第一代理和所述第二代理之间的流控制信用的重新初始化。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
MYPI2011004723 | 2011-09-30 | ||
MYPI2011004723 | 2011-09-30 | ||
PCT/US2012/056851 WO2013048943A1 (en) | 2011-09-30 | 2012-09-24 | Active state power management (aspm) to reduce power consumption by pci express components |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103827776A true CN103827776A (zh) | 2014-05-28 |
CN103827776B CN103827776B (zh) | 2017-11-07 |
Family
ID=47993813
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280047803.1A Active CN103827776B (zh) | 2011-09-30 | 2012-09-24 | 通过pci高速组件减少功耗的活动状态功率管理(aspm) |
Country Status (3)
Country | Link |
---|---|
US (1) | US9632557B2 (zh) |
CN (1) | CN103827776B (zh) |
WO (1) | WO2013048943A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105743690A (zh) * | 2014-12-24 | 2016-07-06 | 英特尔公司 | 用于管理网络设备的功率和性能的技术 |
CN112015683A (zh) * | 2020-08-27 | 2020-12-01 | 深圳忆联信息***有限公司 | Pcie链路的动态切换方法、装置、计算机设备及存储介质 |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140047161A1 (en) * | 2012-08-08 | 2014-02-13 | Avalanche Technology, Inc. | System Employing MRAM and Physically Addressed Solid State Disk |
WO2013048927A1 (en) | 2011-09-30 | 2013-04-04 | Intel Corporation | Robust governing of power management infrastructure in a bridge |
CN103827776B (zh) | 2011-09-30 | 2017-11-07 | 英特尔公司 | 通过pci高速组件减少功耗的活动状态功率管理(aspm) |
US10496152B2 (en) * | 2013-09-27 | 2019-12-03 | Intel Corporation | Power control techniques for integrated PCIe controllers |
US9423859B2 (en) | 2014-04-04 | 2016-08-23 | International Business Machines Corporation | Delaying execution in a processor to increase power savings |
US9619012B2 (en) | 2014-05-30 | 2017-04-11 | Apple Inc. | Power level control using power assertion requests |
US10430577B2 (en) | 2014-05-30 | 2019-10-01 | Apple Inc. | Method and apparatus for inter process privilige transfer |
US9396089B2 (en) | 2014-05-30 | 2016-07-19 | Apple Inc. | Activity tracing diagnostic systems and methods |
US10855600B2 (en) * | 2018-11-13 | 2020-12-01 | Intel Corporation | System, apparatus and method for traffic shaping of data communication via an interconnect |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050086549A1 (en) * | 2003-10-15 | 2005-04-21 | Solomon Gary A. | Power management over switching fabrics |
CN101477403A (zh) * | 2009-01-22 | 2009-07-08 | 浪潮电子信息产业股份有限公司 | 一种***功耗自动控制方法 |
JP2009176294A (ja) * | 2007-12-27 | 2009-08-06 | Ricoh Co Ltd | 画像処理装置及びその省電力制御方法、半導体集積回路及びその省電力制御方法、並びに半導体装置 |
Family Cites Families (67)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7058726B1 (en) | 1996-07-08 | 2006-06-06 | Internet Number Corporation | Method and systems for accessing information on a network using message aliasing functions having shadow callback functions |
US5748539A (en) | 1997-03-05 | 1998-05-05 | Sun Microsystems, Inc. | Recursive multi-channel interface |
JPH10312338A (ja) | 1997-05-13 | 1998-11-24 | Toshiba Corp | メモリ制御装置、及びメモリ制御方法 |
US6128703A (en) | 1997-09-05 | 2000-10-03 | Integrated Device Technology, Inc. | Method and apparatus for memory prefetch operation of volatile non-coherent data |
US6009488A (en) | 1997-11-07 | 1999-12-28 | Microlinc, Llc | Computer having packet-based interconnect channel |
US6314501B1 (en) | 1998-07-23 | 2001-11-06 | Unisys Corporation | Computer system and method for operating multiple operating systems in different partitions of the computer system and for allowing the different partitions to communicate with one another through shared memory |
US6542968B1 (en) | 1999-01-15 | 2003-04-01 | Hewlett-Packard Company | System and method for managing data in an I/O cache |
US6886085B1 (en) | 2000-04-19 | 2005-04-26 | International Business Machines Corporation | Method and apparatus for efficient virtual memory management |
CA2346231A1 (en) | 2000-05-08 | 2001-11-08 | Internet Number Corporation | Method and system for accessing information on a network using message aliasing functions having shadow callback functions |
US6789168B2 (en) | 2001-07-13 | 2004-09-07 | Micron Technology, Inc. | Embedded DRAM cache |
US8270423B2 (en) | 2003-07-29 | 2012-09-18 | Citrix Systems, Inc. | Systems and methods of using packet boundaries for reduction in timeout prevention |
US6981099B2 (en) | 2002-12-16 | 2005-12-27 | Sun Microsystems, Inc. | Smart-prefetch |
US20040123278A1 (en) | 2002-12-23 | 2004-06-24 | Murthi Nanja | Persistent cache apparatus and methods |
US7137018B2 (en) * | 2002-12-31 | 2006-11-14 | Intel Corporation | Active state link power management |
US7350087B2 (en) * | 2003-03-31 | 2008-03-25 | Intel Corporation | System and method of message-based power management |
US20040233146A1 (en) | 2003-05-21 | 2004-11-25 | Nguyen Don J. | Selective window display |
US20050091432A1 (en) | 2003-10-28 | 2005-04-28 | Palmchip Corporation | Flexible matrix fabric design framework for multiple requestors and targets in system-on-chip designs |
US7310721B2 (en) | 2003-10-30 | 2007-12-18 | Microsoft Corporation | Shadow page tables for address translation control |
US20050149562A1 (en) | 2003-12-31 | 2005-07-07 | International Business Machines Corporation | Method and system for managing data access requests utilizing storage meta data processing |
US20050160229A1 (en) | 2004-01-16 | 2005-07-21 | International Business Machines Corporation | Method and apparatus for preloading translation buffers |
US7930503B2 (en) | 2004-01-26 | 2011-04-19 | Hewlett-Packard Development Company, L.P. | Method and apparatus for operating multiple security modules |
US7313712B2 (en) * | 2004-05-21 | 2007-12-25 | Intel Corporation | Link power saving state |
US7650443B1 (en) * | 2004-07-22 | 2010-01-19 | Unisys Corporation | Methods and apparatus for allocating access to a host device buffer |
US7340582B2 (en) | 2004-09-30 | 2008-03-04 | Intel Corporation | Fault processing for direct memory access address translation |
BRPI0419075A (pt) | 2004-10-06 | 2007-12-11 | Thomson Licensing | método e sistema para armazenar dados em cache |
JP2006127407A (ja) | 2004-11-01 | 2006-05-18 | Canon Inc | 半導体集積回路 |
US7330940B2 (en) | 2005-02-02 | 2008-02-12 | Hewlett-Packard Development Company, L.P. | Method and system for cache utilization by limiting prefetch requests |
US7334076B2 (en) | 2005-03-08 | 2008-02-19 | Microsoft Corporation | Method and system for a guest physical address virtualization in a virtual machine environment |
GB0505289D0 (en) | 2005-03-15 | 2005-04-20 | Symbian Software Ltd | Computing device with automated page based rem shadowing and method of operation |
US7492710B2 (en) | 2005-03-31 | 2009-02-17 | Intel Corporation | Packet flow control |
US7299337B2 (en) | 2005-05-12 | 2007-11-20 | Traut Eric P | Enhanced shadow page table algorithms |
US7363463B2 (en) | 2005-05-13 | 2008-04-22 | Microsoft Corporation | Method and system for caching address translations from multiple address spaces in virtual machines |
US8286169B2 (en) | 2005-06-17 | 2012-10-09 | Intel Corporation | Dynamic scheduling an interval for polling devices based on a current operational power mode in an extensible firmware interface architecture |
US20060288130A1 (en) | 2005-06-21 | 2006-12-21 | Rajesh Madukkarumukumana | Address window support for direct memory access translation |
US8490065B2 (en) | 2005-10-13 | 2013-07-16 | International Business Machines Corporation | Method and apparatus for software-assisted data cache and prefetch control |
US7395407B2 (en) | 2005-10-14 | 2008-07-01 | International Business Machines Corporation | Mechanisms and methods for using data access patterns |
US7389400B2 (en) | 2005-12-15 | 2008-06-17 | International Business Machines Corporation | Apparatus and method for selectively invalidating entries in an address translation cache |
US7694049B2 (en) * | 2005-12-28 | 2010-04-06 | Intel Corporation | Rate control of flow control updates |
US7653803B2 (en) | 2006-01-17 | 2010-01-26 | Globalfoundries Inc. | Address translation for input/output (I/O) devices and interrupt remapping for I/O devices in an I/O memory management unit (IOMMU) |
US7716423B2 (en) | 2006-02-07 | 2010-05-11 | International Business Machines Corporation | Pseudo LRU algorithm for hint-locking during software and hardware address translation cache miss handling modes |
US7669028B2 (en) | 2006-02-07 | 2010-02-23 | International Business Machines Corporation | Optimizing data bandwidth across a variable asynchronous clock domain |
US7739474B2 (en) | 2006-02-07 | 2010-06-15 | International Business Machines Corporation | Method and system for unifying memory access for CPU and IO operations |
KR101173539B1 (ko) | 2006-02-15 | 2012-08-14 | 삼성전자주식회사 | 멀티프로세서 시스템 그리고 멀티프로세서 시스템의 초기화방법 |
TW200802175A (en) | 2006-06-28 | 2008-01-01 | Giga Byte Tech Co Ltd | Hot-pluggable video display card and computer system using the same |
US7716536B2 (en) * | 2006-06-29 | 2010-05-11 | Intel Corporation | Techniques for entering a low-power link state |
US7707383B2 (en) | 2006-11-21 | 2010-04-27 | Intel Corporation | Address translation performance in virtualized environments |
US20080276029A1 (en) * | 2007-05-03 | 2008-11-06 | Haraden Ryan S | Method and System for Fast Flow Control |
US20080313240A1 (en) * | 2007-06-18 | 2008-12-18 | Freking Ronald E | Method for Creating Data Transfer Packets With Embedded Management Information |
US8161243B1 (en) | 2007-09-28 | 2012-04-17 | Intel Corporation | Address translation caching and I/O cache performance improvement in virtualized environments |
US8284766B2 (en) * | 2007-12-28 | 2012-10-09 | Intel Corporation | Multi-core processor and method of communicating across a die |
US7747809B2 (en) * | 2008-02-19 | 2010-06-29 | International Business Machines Corporation | Managing PCI express devices during recovery operations |
JP5206040B2 (ja) | 2008-03-13 | 2013-06-12 | 日本電気株式会社 | パケット処理装置、省電力装置及び電源供給方法 |
JP5143601B2 (ja) | 2008-03-24 | 2013-02-13 | 株式会社日立製作所 | 情報処理装置と情報処理方法およびストレージシステム |
US8214845B2 (en) | 2008-05-09 | 2012-07-03 | International Business Machines Corporation | Context switching in a network on chip by thread saving and restoring pointers to memory arrays containing valid message data |
US8233551B2 (en) | 2008-07-07 | 2012-07-31 | Intel Corporation | Adjustable transmitter power for high speed links with constant bit error rate |
US8023522B2 (en) | 2009-03-30 | 2011-09-20 | Intel Corporation | Enabling long-term communication idleness for energy efficiency |
US8225069B2 (en) | 2009-03-31 | 2012-07-17 | Intel Corporation | Control of on-die system fabric blocks |
EP2267983B1 (en) * | 2009-06-22 | 2018-08-08 | Citrix Systems, Inc. | System and method for providing link management in a multi-core system |
US8359436B2 (en) * | 2009-12-18 | 2013-01-22 | Intel Corporation | Core snoop handling during performance state and power state transitions in a distributed caching agent |
US8539260B2 (en) | 2010-04-05 | 2013-09-17 | Intel Corporation | Method, apparatus, and system for enabling platform power states |
US8713338B2 (en) | 2010-05-28 | 2014-04-29 | Lsi Corporation | Methods and apparatus for low power out-of-band communications |
US8255582B2 (en) | 2010-07-09 | 2012-08-28 | Sae Magnetics (H.K.) Ltd. | Optical communication module, universal serial bus cable with the same and processing method of data transfer thereof |
US8457247B2 (en) | 2010-11-18 | 2013-06-04 | Plx Technology, Inc. | In-band generation of low-frequency periodic signaling |
KR101571278B1 (ko) * | 2011-07-01 | 2015-11-24 | 퀄컴 인코포레이티드 | 시리얼 통신 시스템에서의 대기 전력 감소를 위한 시스템 및 방법 |
CN103827776B (zh) | 2011-09-30 | 2017-11-07 | 英特尔公司 | 通过pci高速组件减少功耗的活动状态功率管理(aspm) |
WO2013048927A1 (en) | 2011-09-30 | 2013-04-04 | Intel Corporation | Robust governing of power management infrastructure in a bridge |
US20140006826A1 (en) | 2012-06-30 | 2014-01-02 | Mahesh Wagh | Low power low frequency squelch break protocol |
-
2012
- 2012-09-24 CN CN201280047803.1A patent/CN103827776B/zh active Active
- 2012-09-24 WO PCT/US2012/056851 patent/WO2013048943A1/en active Application Filing
- 2012-09-29 US US13/631,869 patent/US9632557B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050086549A1 (en) * | 2003-10-15 | 2005-04-21 | Solomon Gary A. | Power management over switching fabrics |
JP2009176294A (ja) * | 2007-12-27 | 2009-08-06 | Ricoh Co Ltd | 画像処理装置及びその省電力制御方法、半導体集積回路及びその省電力制御方法、並びに半導体装置 |
CN101477403A (zh) * | 2009-01-22 | 2009-07-08 | 浪潮电子信息产业股份有限公司 | 一种***功耗自动控制方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105743690A (zh) * | 2014-12-24 | 2016-07-06 | 英特尔公司 | 用于管理网络设备的功率和性能的技术 |
CN105743690B (zh) * | 2014-12-24 | 2020-05-15 | 英特尔公司 | 用于管理网络设备的功率和性能的技术 |
CN112015683A (zh) * | 2020-08-27 | 2020-12-01 | 深圳忆联信息***有限公司 | Pcie链路的动态切换方法、装置、计算机设备及存储介质 |
CN112015683B (zh) * | 2020-08-27 | 2022-06-07 | 深圳忆联信息***有限公司 | Pcie链路的动态切换方法、装置、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2013048943A1 (en) | 2013-04-04 |
CN103827776B (zh) | 2017-11-07 |
US9632557B2 (en) | 2017-04-25 |
US20130086400A1 (en) | 2013-04-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103827776A (zh) | 通过pci高速组件减少功耗的活动状态功率管理(aspm) | |
US10380059B2 (en) | Control messaging in multislot link layer flit | |
US9749413B2 (en) | Peer-to-peer interrupt signaling between devices coupled via interconnects | |
CN106681938B (zh) | 用于控制多时隙链路层微片中的消息收发的装置和*** | |
US7761696B1 (en) | Quiescing and de-quiescing point-to-point links | |
KR101887126B1 (ko) | Or 체인 버스를 위한 향상된 데이터 버스 반전 인코딩 | |
US9952644B2 (en) | Device power management state transition latency advertisement for faster boot time | |
US11709774B2 (en) | Data consistency and durability over distributed persistent memory systems | |
KR101661259B1 (ko) | 저전력 부분 폭 고속 링크 상태에서 나갈 때의 고속 디스큐 | |
CN105531684A (zh) | 通用pci express端口 | |
CN103959266A (zh) | 在边带接口中聚合完成消息 | |
TW201727479A (zh) | 內含目錄狀態之更新技術(二) | |
US8990451B2 (en) | Controller for direct access to a memory for the direct transfer of data between memories of several peripheral devices, method and computer program enabling the implementation of such a controller | |
CN103907102A (zh) | 管理管芯上的***组织结构中的边带路由器 | |
Sharma et al. | An introduction to the compute express link (cxl) interconnect | |
CN103927233A (zh) | 多节点内存互联装置及一种大规模计算机集群 | |
KR101844812B1 (ko) | 고속 레인에서 가기능정지를 이용한 emi 완화 | |
US11231927B2 (en) | System, apparatus and method for providing a fabric for an accelerator | |
WO2013105978A1 (en) | Allocation of flow control credits for high performance devices | |
US20220158865A1 (en) | Asynchronous communication in multiplexed topologies |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |