CN104583944B - 在退出低功率部分宽度高速链路状态时的快速抗扭斜 - Google Patents
在退出低功率部分宽度高速链路状态时的快速抗扭斜 Download PDFInfo
- Publication number
- CN104583944B CN104583944B CN201380044767.8A CN201380044767A CN104583944B CN 104583944 B CN104583944 B CN 104583944B CN 201380044767 A CN201380044767 A CN 201380044767A CN 104583944 B CN104583944 B CN 104583944B
- Authority
- CN
- China
- Prior art keywords
- link
- idle channels
- time point
- deskew
- microplate
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4265—Bus transfer protocol, e.g. handshake; Synchronisation on a point to point 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)
- Power Sources (AREA)
Abstract
描述了与在退出低功率部分宽度高速链路状态时的快速抗扭斜有关的方法和装置。在一个实施例中,可以在第一时间点,在活动通道上传输退出微片和/或在空闲通道上传输唤醒信号/序列,以使得链路的一个或多个空闲通道进入活动状态。在第二时间点(紧跟第一时间点或在第一时间点之后),在所述链路的所述一个或多个空闲通道上传输训练序列。并且,在第三时间点(紧跟第二时间点或在第二时间点之后)之前并响应于所述训练序列,对所述一个或多个空闲通道进行抗扭斜。还公开并要求保护其它实施例。
Description
技术领域
本公开总体上涉及电子领域。更具体地,一些实施例涉及在退出低功率、部分宽度高速链路状态时的快速抗扭斜。
背景技术
计算机系统总体上由为了各种目的而相互通信的组件组成。将计算机组件进行互连的链路提供用于传送数据的机制并且每条链路包括多个“通道(lane)”,其中每条通道在给定周期内传送一些数据。在通信期间所要使用的通道的数量总体上限定了链路宽度,链路宽度进而有效地控制该链路的带宽。由此,较宽的链路比较窄的链路提供更大的带宽。另一方面,较宽的链路倾向于消耗更多功率,这是由于支持额外通道的额外电路。另外,在决定链路宽度时,功率消耗、服务质量、或性能可以成为问题。
附图说明
本详细描述提供有对附图的参照。在图中,附图标记最左边数字标识该附图标记首次出现的附图。在不同的附图中使用相同的附图标记以指示类似或相同的部件。
图1示出了计算系统的实施例的框图,该计算系统可用于实现本文所讨论的各个实施例。
图2示出了计算系统的实施例的框图,该计算系统可用于实现本文所讨论的各个实施例。
图3示出了根据实施例的链路对的框图。
图4示出了根据实施例的用于提供快速抗扭斜的流程图。
图5示出了根据实施例的时序图。
图6示出了计算系统的实施例的框图,该计算系统可用于实现本文所讨论的各个实施例。
图7示出了计算系统的实施例的框图,该计算系统可用于实现本文所讨论的各个实施例。
图8A示出了根据实施例的时序图。
图8B示出了根据实施例的时序图。
具体实施方式
在以下描述中,阐述了许多具体细节以便提供对各个实施例的透彻理解。然而,一些实施例也可以被实践而无需这些具体细节。在其它实例中,为了不模糊这些特定实施例而未详细详述公知的方法、过程、组件和电路。本发明实施例的各个方面采用各种手段来执行,例如集成半导体电路(“硬件”)、被组织成一个或多个程序的计算机可读指令(“软件”)或硬件和软件的一些组合。为了本公开的目的,对“逻辑”的提及可意味着硬件、软件或其一些组合。
在诸如QPI(快速路径互连)或Keizer技术互连(KTI)的串行链路上,存在跨链路的宽度(例如,20条通道)的数据微片(data flit)的连续流——该状态被称为L0。在低利用率的时段期间,为了节省功率,将微片集中于部分宽度(例如,8条通道)——该状态被称为L0p。随着利用率增加,空闲通道需要被带回、训练(例如,以确保比特锁维持(bit lockmaintenance))、重新抗扭斜、并且与活动通道无缝地合并从而使得该链路可以回到完全运行状态(例如,L0)。这种从低功率、降低宽度状态的退出(例如,从L0p到L0)需要非常迅速,从而使得性能不受不利影响。然而,一些实施方式限制低功率状态的驻留以消除扭斜漂移(其过度消耗功率)或中断数据流以执行抗扭斜以及空闲通道与活动通道的合并(其降低链路性能和/或服务质量)。
本文所讨论的实施例中的一些支持在退出低功率部分宽度高速链路状态时的快速抗扭斜。实施例操作而无需转发时钟(forwarded clock)。由此,在没有转发时钟的情况下,一些实施例需要在进入L0(例如,从L0p)时使通道重新抗扭斜。
如在本文所讨论的,“L0”一般是指在一个方向上以全部宽度(例如,所有通道)运行的链路,而“L0p”一般是指在一个方向上以部分宽度(例如,减少数量的通道)运行的链路。另外,在链路上传送的基本单元在本文中被称为“微片(flit)”(其在实施例中为80比特,例如,8比特用于错误检测、8比特用于链路层头、以及64比特用于数据,尽管也可以使用其它配置)。
本文所讨论的各个实施例参照计算系统组件,例如本文例如参照图1-2和图6-7所讨论的组件。更具体地,图1示出了根据本发明的实施例的计算系统100的框图。该系统100包括一个或多个代理102-1至102-M(本文中统称为“多个代理102”或更一般地“代理102”)。在实施例中,代理102为计算系统(例如,参照图2和图6-7所讨论的计算系统)的组件。
如图1所示,代理102经由网络结构104进行通信。在实施例中,网络结构104包括经由串行(例如,点对点)链路和/或共享通信网络进行通信的一个或多个互连(或互连网络)。例如,一些实施例促成对允许与全缓冲双列直插存储器模块(FBD)进行通信的链路的组件调试或验证,例如,其中FBD链路是用于将存储器模块耦合到主机控制设备(例如,处理器或存储器集线器)的串行链路。调试信息可从FBD信道主机发送,从而使得通过信道业务追踪捕捉工具(例如,一个或多个逻辑分析器)沿着信道观察调试信息。
在一个实施例中,系统100支持分层协议方案,其包括物理层、链路层、路由层、传输层、和/或协议层。结构104还可促成点对点网络中数据(例如,以分组的形式)从一个协议(例如,高速缓存处理器或高速缓存感知存储器控制器)传输到另一协议。另外,在一些实施例中,网络结构104提供遵循一个或多个高速缓存一致性协议的通信。
此外,如图1中箭头的方向所示,代理102经由网络结构104发送和/或接收数据。因此,一些代理利用单向链路而其它代理利用双向链路以进行通信。例如,一个或多个代理(例如,代理102-M)发送数据(例如,经由单向链路106),其它代理(例如,代理102-2)接收数据(例如,经由单向链路108),而一些代理(例如,代理102-1)可发送和接收数据(例如,经由双向链路110)。
另外,根据实施例,代理102中的一个或多个包括链路宽度调制(LWM)逻辑120。例如,如将参照图2进一步讨论的,存在于计算系统中的每个CPU插座包括LWM 120逻辑。另外,例如,如将在本文中讨论的,代理102中的一个或多个可包括用于促成在状态从L0p变为L0时的快速抗扭斜的快速抗扭斜逻辑122。如图1所示,逻辑122被包括在逻辑120中;然而,本发明的实施例并不限于该实施方式并且可将逻辑122提供在系统中的其它位置。
更具体地,图2是根据实施例的计算系统200的框图。系统200包括多个插座202-208(示出了4个,但在一些实施例中具有更多或更少的插座)。插座中的一个或多个包括处理器、LWM逻辑120、以及快速抗扭斜逻辑122。另外,每个插座经由点对点(PtP)链路,或差分互连(例如,快速路径互连(QPI)、MIPI(移动行业处理器接口)等)而耦合到其它插座。如关于图1的网络结构104所讨论的,每个插座耦合到系统存储器的本地部分,例如由包括动态随机存取存储器(DRAM)的多个双列直插存储器模块(DIMMs)构成的系统存储器。
在另一实施例中,网络结构可用于任何片上系统(SoC)应用,利用定制或标准接口,例如用于AMBA(高级微控制器总线架构)、OCP(开放式内核协议)、MIPI(移动行业处理器接口)、PCI(外围组件互连)或PCIe(快速外围组件互连)的ARM兼容接口。
一些实施例使用使能使用基于PC(个人计算机)的系统(例如,基于PCI的系统)中的异构资源而不对IP资源本身做任何改变的技术(例如,AXI/OCP技术)。实施例提供了两个非常薄的硬件块,其在本文中被称为Y单元(Yunit)和垫片(shim),其可用于将AXI/OCP IP插入到自动生成的互连结构中以创建PCI兼容系统。Y单元的第一(例如,北)接口连接到与PCI兼容总线(例如,直接媒体接口(DMI)总线、PCI总线、或快速外围组件互连(PCIe)总线)接合的适配器块。第二(例如,南)接口直接连接到非PC互连,例如AXI/OCP互连。在各个实施方式中,该总线可以是OCP总线。
在一些实施例中,Y单元通过将PCI配置周期转换成目标IP能够理解的事物来实现PCI列举。该单元还执行从可重新定位的PCI地址到固定AXI/OCP地址的转换,反之亦然。Y单元还可以执行排序机制,以满足生产者-消费者模型(例如,PCI生产者-消费者模型)。进而,个人IP经由专用的PCI垫片而连接到互连。每个垫片可以实现针对对应IP的整个PCI头。所述Y单元将对PCI头的访问以及设备存储空间路由到垫片。该垫片消耗所有头读/写事物,并将其它事物传递到IP。在一些实施例中,该垫片还实现IP的与功率管理相关的所有功能。
因此,实现Y单元的实施例采取了分布式的方法,而不是作为一个单片兼容块。所有IP中常见的功能(例如,地址转换及排序)在Y单元中实现,而IP特定的功能(例如,功率管理、错误处理等)在为该IP定制的垫片中实现。
以这种方式,可以以对Y单元最小的改变而添加新的IP。例如,在一种实施方式中,可以通过在地址重定向表中添加的新条目而发生改变。虽然垫片为IP特定的,但是在一些实施方式中,大量的功能(例如,90%以上)是所有IP中常见的。这使得能够为新的IP快速重新配置现有的垫片。因此,一些实施例还使得能够使用自动生成的互连结构而无需修改。在点对点总线架构中,设计互连结构可能是挑战性的任务。上述Y单元方法以最小的努力将产业生态系统利用到PCI系统中,并且无需对行业标准工具的任何修改。
如图2所示,每个插座耦合到存储器控制器(MC)/本地代理(HA)(例如,MC0/HA0至MC3/HA3)。所述存储器控制器耦合到对应的可作为系统存储器(例如,图6中的存储器612)的一部分的本地存储器(被标记为MEM0至MEM3)。在一些实施例中,存储器控制器(MC)/本地代理(HA)(例如,MC0/HA0至MC3/HA3)与图1中的代理102-1相同或相似,并且被标记为MEM0至MEM3的存储器与参照本文任一附图所讨论的存储相同或相似。一般地,处理/高速缓存代理向本地节点发送请求以访问与对应的“本地代理”相关联的存储器地址。另外,在一个实施例中,MEM0至MEM3被配置为例如作为主和从的镜像数据。另外,在一些实施例中,系统200的一个或多个组件被包括在同一集成电路管芯上。诸如图2所示的实施例用于具有镜像的插座无缝配置。例如,被分配给存储器控制器(例如,MC0/HA0)的数据通过PtP链路被镜像到另一存储器控制器(例如MC3/HA3)。
在一些遗留系统中,可以关闭完整链路以在空闲时段节省功率。然而,在低利用率时段期间,链路以较低宽度运行而非关闭整个链路(例如,以减少与重新启动链路相关联的延迟)可以更有效率。为了这个目的,LWM逻辑120允许链路例如在改变链路宽度时在更长的时间段内可用。例如,链路响应于功率管理微片(其在一些实施例中可以不是完整的微片)而从第一宽度转换为第二宽度。另外,在传输功率管理微片之后,非空闲微片可以继续在该链路上传输。
另外,将计算机组件进行互连的链路提供用于传送数据的机制并且每条链路包括多个“通道(lane)”,其中每条通道在给定周期内传送一些数据。在通信期间所要使用的通道的数量总体上限定了链路宽度,链路宽度进而有效地控制该链路的带宽。在实施例中,每条链路是点对点链路。
更具体地,图3示出了根据实施例的链路对(例如,在代理X和Y(例如,参照图1所讨论的代理102)之间的具有端口A-D的链路对)的框图,其中一个方向处于L0p而另一方向处于L0。图4示出了根据实施例的提供快速抗扭斜的流程图。图5示出了根据实施例的时序图(其中通道0-7是活动的而通道8-23是空闲的)。时序图中的“d”是指数据而EIEOS是指电空闲退出有序集。
参照图3-5,为了退出L0p,A在A0时发送退出微片(如图4中的PMexitL0p所示),该退出微片例如作为唤醒信号以使得链路的一个或多个空闲通道进入活动状态并退出L0p状态。或者,A0可以由空闲通道上的特殊信令(例如,EIEOS)标识,该特殊信令被对齐到活动通道上的微片边界(flit boundary)。另外,A在A1时在活动通道上发送数据或特殊微片。如本文所讨论的,“特殊”微片一般是指不可重试的(non-retry-able)微片,例如“空(null)”微片。另外,可以在所示的起始点(例如,A1等)之前开始空微片并且可以在该起始点之后延伸。在预先确定的点(在A2时)之后,A开始在空闲通道上发送训练序列(TS)。在A3时,假定已完成了训练并且Tx(发射器)(A)在所有通道上(例如,经由快速抗扭斜逻辑122)发送开始数据序列(SDS)。这进而完成了通道的抗扭斜并且将通道合并,从而使得在A4时在所有通道上发送数据。在实施例中,端口A耦合到快速抗扭斜逻辑122以在退出L0p时引发快速抗扭斜,这包括参照图3-5讨论的一个或多个操作。
一些实施方式减少了SDS时段(A3-A4),这是由于该链路在那时完全不可用,这降低了性能。在一个实施例中,与时间A1一致而开始空闲通道上的TS(或者在多个TS长度之后,例如由快速抗扭斜逻辑122)。另外,可与时间A1在相同时间(same time)、同时(simultaneous)、同时期(contemporaneous)、和/或关于时间A1或至少部分地与在A1时在活动通道上的数据传送并行而开始空闲通道上的TS。接着,在时间A3之前,使用TS(例如,由快速抗扭斜逻辑122)在空闲通道之间对这些空闲通道进行抗扭斜。在A3之前(例如,由快速抗扭斜逻辑122)确定通道的空闲组和活动组之间的扭斜(其在通道之间被抗扭斜)。在A3时,将活动通道组和空闲通道组合并。该合并可以非常迅速地完成(即,使用很短的SDS),这是由于已经知道了抗扭斜。在实施例中,活动通道上不需要SDS而使用了特殊(或数据)微片。
图8A和图8B示出了根据一些实施例的时序图。活动组和空闲组之间的相关扭斜可以是图8A和图8B的左边所示的两种情况的任何一种。在图8A中,空闲组比活动组慢,而在图8B中,空闲组比活动组快。在前者的情况下,在各个实施例中,可以通过将延迟添加到活动组中或者通过从空闲组的管线中移除一些时延,以实现抗扭斜。第二种方法可以更加复杂,这是因为该方法涉及重新布置流水线中的对齐和时延缓冲,但是该方法避免了需要在活动组中插入任何延迟或甚至插入SDS。在图8B中,在实施例中,可以通过仅将延迟添加到空闲组而实现抗扭斜。
图6示出了根据本发明的实施例的计算系统600的框图。计算系统600包括经由互连网络(或总线)604进行通信的一个或多个中央处理单元(CPU)602-1到602-N或处理器(本文中统称为“多个处理器602”或更一般地“处理器602”)。处理器602包括通用处理器、网络处理器(其处理通过计算机网络603传送的数据)、或其它类型的处理器(包括精简指令集计算机(RISC)处理器或复杂指令集计算机(CTSC))。
另外,处理器602具有单个或多个内核设计。具有多核设计的处理器602将不同类型的处理器内核集成在同一集成电路(IC)管芯上。另外,具有多核设计的处理器602可以被实现为对称或非对称多处理器。另外,参照图1-5所讨论的操作由系统600的一个或多个组件执行。在一些实施例中,处理器602与图2中的处理器202-208相同或相似。此外,在一些实施例中,处理器602包括LWM逻辑120和/或快速抗扭斜逻辑122。
芯片组606还与互连网络604进行通信。在实施例中,芯片组606包括LWM逻辑120和/或逻辑122。芯片组606包括存储器控制器集线器(MCH)608。MCH 608包括与存储器612通信的存储器控制器610。存储器612存储数据,该数据包括由CPU 602或计算系统600中包括的任何其它设备执行的指令序列。例如,存储器612存储与操作系统(OS)对应的数据。在本发明的一个实施例中,存储器612包括一个或多个易失性存储(或存储器)设备,例如随机存取存储器(RAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、静态RAM(SRAM)、或其它类型的存储设备。也可使用非易失性存储器,例如硬盘。额外的设备,例如多个CPU和/或多个系统存储器也可以经由互连网络604进行通信。
另外,在一些实施例中,处理器602中的一个或多个可以访问一个或多个高速缓存(其包括私有和/或共享高速缓存)并且可以访问相关联的高速缓存控制器(未示出)。该高速缓存可遵循一个或多个高速缓存一致性协议。该高速缓存可存储由系统600的一个或多个组件所利用的数据(例如,包括指令)。
例如,高速缓存在本地缓存存储在存储器612中的数据,以供由处理器602的组件更快地访问。在实施例中,所述高速缓存(共享的)包括中间级高速缓存和/或末级高速缓存(LLC)。另外,处理器602的各个组件可以通过总线或互连网络、和/或存储器控制器或集线器而与高速缓存直接通信。另外,在一些实施例中,处理器602中的每个(或处理器602中出现的每个内核)包括LWM逻辑120和/或逻辑122。
MCH 608还包括例如经由图形加速器而与显示设备616进行通信的图形接口614。在本发明的一个实施例中,图形接口614经由加速图形端口(AGP)而与图形加速器进行通信。显示设备616(例如,平板显示器)通过例如信号转换器与图形接口614进行通信,所述信号转换器将在例如视频存储器或系统存储器这样的存储设备中存储的图像的数字表示成转换由显示设备616解释和显示的显示信号。在被显示设备616解释并随后在其上显示之前,由显示设备产生的显示信号通过各个控制设备。
集线器接口618允许MCH 608和输入/输出控制集线器(ICH)620进行通信。ICH 620提供到与计算系统600进行通信的I/O设备的接口。ICH 620通过外围桥(或控制器)624(例如,外围组件互连(PCI)桥、通用串行总线(USB)控制器、或其它类型的外围桥或控制器)与总线622进行通信。
桥624在CPU 602与外围设备之间提供数据通路。也可以利用其它类型的拓扑。另外,多条总线通过例如多个桥或控制器与ICH 620进行通信。另外,在本发明的各个实施例中,与ICH 620通信的其它外围设备包括各种集成驱动电子设备(IDE)或小型计算机系统接口(SCSI)硬盘驱动器、USB端口、键盘、鼠标、并行端口、串行端口、软盘驱动器、数字输出支持(例如,数字视频接口(DVI))、或其它设备。
总线622与音频设备626、一个或多个盘驱动器628、和/或网络接口设备630(其与计算机网络603通信)进行通信。在其它实施例中,其它设备经由总线622进行通信。另外,在本发明的一些实施例中,各个组件(例如,网络接口设备630)与MCH 608进行通信。另外,MCH608中的一个和多个组件与处理器602组合以形成单个芯片。
此外,计算系统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所讨论的那些数据。处理器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内。LWM逻辑120和快速抗扭斜逻辑122被提供在处理器702和704内(或在处理器702和/或704中的每个内核内)。然而,本发明的其它实施例存在于图7的系统700内的其它电路、逻辑单元或设备中。此外,本发明的其它实施例可分布遍及图7所示的几个电路、逻辑单元或设备。
芯片组720使用PtP接口电路741而与总线740进行通信。总线740与诸如总线桥742和/或I/O设备743这样的一个或多个设备进行通信。总线桥742可经由总线744而与其它设备例如键盘/鼠标745、通信设备746(例如,调制解调器、网络接口设备或与计算机网络603通信的其它通信设备)、音频I/O设备、和/或数据存储设备748进行通信。数据存储设备748存储由处理器702和/或704执行的代码749。
在本发明的各个实施例中,本文例如参照图1-7所讨论的操作可被实现为硬件(例如,电路)、软件、固件、微代码或它们的组合,其可被提供为计算机程序产品,例如包括(例如,非瞬时性)机器可读或(例如,非瞬时性)计算机可读介质,其上存储有用于对计算机进行编程以执行本文所讨论的过程的指令(或软件程序)。
另外,术语“逻辑”可包括,以示例的方式,软件、硬件、或软件和硬件的组合。机器可读介质可包括存储设备,例如参照图1-7所讨论的那些设备。此外,这种计算机可读介质可被下载作为计算机程序产品,其中,通过经由载波传输的数据信号的方式或通过经由通信链路(例如,总线、调制解调器、或网络连接)的其它传播介质的方式而将所述程序以从远程计算机(例如,服务器)传送到请求计算机(例如,客户端)。
说明书中提及的“一个实施例”或“实施例”是指与结合该实施例描述的特定特征、结构或特性可被包含在至少一个实施方式中。在说明书中各处出现的短语“在一个实施例中”可以或可以不全部指代同一实施例。
另外,在说明书和权利要求中,也可以使用术语“耦合”和“连接”及其派生词。在本发明的一些实施例中,“连接”可指示两个或更多元件彼此直接物理或电接触。“耦合”可指示两个或更多元件直接物理或电接触。然而,“耦合”也可指示两个或更多元件彼此并不直接接触,但仍彼此协作或交互。
因此,虽然以特定于结构特征和/或方法动作的语言描述了本发明实施例,但应理解的是,所要求保护的主题可不限于所描述的具体特征或动作。相反,这些具体特征和动作被公开为实现所要求保护的主题的示例形式。
Claims (34)
1.一种用于退出低功率部分宽度高速链路状态的方法,包括:
在第一时间点传输唤醒信号以使得耦合在第一代理与第二代理之间的链路的一个或多个空闲通道进入活动状态;并且
在所述第一时间点之后的第二时间点,通过所述链路的所述一个或多个空闲通道传输训练序列,同时通过所述链路的一个或多个活动通道传输特殊微片和数据微片;
其中,在所述第二时间点之后的第三时间点之前并且响应于所述训练序列,所述一个或多个空闲通道被抗扭斜。
2.根据权利要求1所述的方法,进一步包括在以下中的至少一个上传输抗扭斜序列:所述链路的所有的所述一个或多个空闲通道和一个或多个活动通道,而所述一个或多个空闲通道被抗扭斜。
3.根据权利要求1所述的方法,进一步包括传输以下中的至少一个:在所述链路的一个或多个活动通道上的一个或多个特殊微片和一个或多个数据微片,而所述一个或多个空闲通道被抗扭斜。
4.根据权利要求1所述的方法,进一步包括在以下中的至少一个上传输抗扭斜序列:所述链路的所有的所述一个或多个空闲通道和一个或多个活动通道,以使得合并所述一个或多个空闲通道以用于在以下中的至少一个上传送数据微片:所述链路的所有的所述一个或多个空闲通道和所述一个或多个活动通道。
5.根据权利要求1所述的方法,进一步包括在所述第二时间点之后的所述第三时间点,在合并所述链路的所述一个或多个空闲通道和一个或多个活动通道时,修改所述一个或多个空闲通道的管线的时延。
6.根据权利要求5所述的方法,其中修改所述一个或多个空闲通道的所述管线的时延是通过重新布置所述管线中的多个缓冲而执行的。
7.根据权利要求1所述的方法,进一步包括在所述第一时间点,通过所述链路的所述一个或多个空闲通道传输所述训练序列。
8.根据权利要求1所述的方法,进一步包括传输以下中的至少一个:在所述第一时间点,在所述链路的一个或多个活动通道上的特殊微片和数据微片。
9.根据权利要求1所述的方法,进一步包括响应于功率管理微片而将所述链路从第一宽度转换为第二宽度。
10.根据权利要求1所述的方法,其中,所述链路包括点对点互连。
11.一种处理器,包括:
用于在第一时间点传输唤醒信号以使得链路的一个或多个空闲通道进入活动状态的逻辑单元;以及
用于在所述第一时间点之后的第二时间点,通过所述链路的所述一个或多个空闲通道传输训练序列,同时通过所述链路的一个或多个活动通道传输特殊微片和数据微片的逻辑单元,
其中,在所述第二时间点之后的第三时间点之前并且响应于所述训练序列,所述一个或多个空闲通道被抗扭斜。
12.根据权利要求11所述的处理器,进一步包括用于在以下中的至少一个上传输抗扭斜序列的逻辑单元:所述链路的所有的所述一个或多个空闲通道和一个或多个活动通道,而所述一个或多个空闲通道被抗扭斜。
13.根据权利要求11所述的处理器,进一步包括用于传输以下中的至少一个的逻辑单元:在所述链路的一个或多个活动通道上的一个或多个特殊微片和一个或多个数据微片,而所述一个或多个空闲通道被抗扭斜。
14.根据权利要求11所述的处理器,进一步包括用于在以下中的至少一个上传输抗扭斜序列的逻辑单元:所述链路的所有的所述一个或多个空闲通道和一个或多个活动通道,以使得合并所述一个或多个空闲通道,以用于在以下中的至少一个上传递数据微片:所述链路的所有的所述一个或多个空闲通道和所述一个或多个活动通道。
15.根据权利要求11所述的处理器,进一步包括用于在所述第二时间点之后的所述第三时间点,合并所述链路的所述一个或多个空闲通道和一个或多个活动通道的逻辑单元。
16.根据权利要求11所述的处理器,进一步包括用于在所述第一时间点,通过所述链路的所述一个或多个空闲通道传输所述训练序列的逻辑单元。
17.根据权利要求11所述的处理器,进一步包括用于传输以下中的至少一个的逻辑单元:在所述第一时间点,在所述链路的一个或多个活动通道上的一个或多个特殊微片和一个或多个数据微片。
18.根据权利要求11所述的处理器,进一步包括用于响应于功率管理微片而将所述链路从第一宽度转换为第二宽度的逻辑单元。
19.根据权利要求11所述的处理器,其中,所述链路包括点对点互连。
20.根据权利要求11所述的处理器,其中,所述处理器包括多个处理器内核。
21.根据权利要求11所述的处理器,其中,所述处理器被耦合到处理器插座。
22.一种计算系统,包括:
经由链路耦合的第一处理器内核和第二处理器内核;以及
用于在第一时间点通过所述链路从所述第一处理器内核向所述第二处理器内核传输唤醒信号,以使得所述链路的一个或多个空闲通道进入活动状态的逻辑单元;以及
用于在所述第一时间点之后的第二时间点,通过所述链路的所述一个或多个空闲通道传输训练序列并且同时通过所述链路的一个或多个活动通道传输特殊微片和数据微片的逻辑单元,
其中,在所述第二时间点之后的第三时间点之前并且响应于所述训练序列,所述一个或多个空闲通道被抗扭斜。
23.根据权利要求22所述的系统,进一步包括用于在以下中的至少一个上传输抗扭斜序列的逻辑单元:所述链路的所有的所述一个或多个空闲通道和一个或多个活动通道,而所述一个或多个空闲通道被抗扭斜。
24.根据权利要求22所述的系统,进一步包括用于传输以下中的至少一个的逻辑单元:在所述链路的一个或多个活动通道上的一个或多个特殊微片和一个或多个数据微片,而所述一个或多个空闲通道被抗扭斜。
25.根据权利要求22所述的系统,进一步包括用于在以下中的至少一个上传输抗扭斜序列的逻辑单元:所述链路的所有的所述一个或多个空闲通道和一个或多个活动通道,以使得合并所述一个或多个空闲通道以用于在以下中的至少一个上传送数据微片:所述链路的所有的所述一个或多个空闲通道和所述一个或多个活动通道。
26.根据权利要求22所述的系统,进一步包括用于在所述第二时间点之后的所述第三时间点,合并所述链路的所述一个或多个空闲通道和一个或多个活动通道的逻辑单元。
27.根据权利要求22所述的系统,进一步包括用于在所述第一时间点,通过所述链路的所述一个或多个空闲通道传输所述训练序列的逻辑单元。
28.根据权利要求22所述的系统,进一步包括用于传输以下中的至少一个的逻辑单元:在所述第一时间点,在所述链路的一个或多个活动通道上的特殊微片和数据微片。
29.根据权利要求22所述的系统,进一步包括用于响应于功率管理微片而将所述链路从第一宽度转换为第二宽度的逻辑单元。
30.根据权利要求22所述的系统,其中,所述链路包括点对点互连。
31.根据权利要求22所述的系统,其中,处理器包括所述第一处理器内核和所述第二处理器内核。
32.一种用于退出低功率部分宽度高速链路状态的装置,包括:
用于在第一点传输第一微片以指示互连结构的一个或多个空闲通道要进入活动状态的逻辑单元;
用于在第二点,在所述互连结构的至少一个活动通道上传输第二微片的逻辑单元,其中,所述第二点在所述第一点之后;
用于在与所述第二点同时地相关的第三点在所述互连结构的所述一个或多个空闲通道上发起训练序列并且同时通过所述互连结构的所述至少一个活动通道传输特殊微片和数据微片的逻辑单元,其中,所述训练序列被用于在所述第三点之后的第四点合并所述一个或多个空闲通道和至少所述活动通道之前对所述互连结构的所述一个或多个空闲通道进行抗扭斜。
33.根据权利要求32所述的装置,还包括用于传输以下中的至少一个的逻辑单元:在所述一个或多个空闲通道上的一个或多个特殊微片和一个或多个数据微片,而所述一个或多个空闲通道被抗扭斜。
34.根据权利要求32所述的装置,还包括用于传输以下中的至少一个的逻辑单元:在所述第一点,在所述至少一个活动通道上的一个或多个特殊微片和一个或多个数据微片。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/631,876 US9183171B2 (en) | 2012-09-29 | 2012-09-29 | Fast deskew when exiting low-power partial-width high speed link state |
US13/631,876 | 2012-09-29 | ||
PCT/US2013/047251 WO2014051765A1 (en) | 2012-09-29 | 2013-06-24 | Fast deskew when exiting low-power partial-width high speed link state |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104583944A CN104583944A (zh) | 2015-04-29 |
CN104583944B true CN104583944B (zh) | 2018-03-30 |
Family
ID=50386329
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380044767.8A Active CN104583944B (zh) | 2012-09-29 | 2013-06-24 | 在退出低功率部分宽度高速链路状态时的快速抗扭斜 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9183171B2 (zh) |
KR (1) | KR101661259B1 (zh) |
CN (1) | CN104583944B (zh) |
DE (1) | DE112013003766T5 (zh) |
WO (1) | WO2014051765A1 (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8868955B2 (en) | 2011-07-01 | 2014-10-21 | Intel Corporation | Enhanced interconnect link width modulation for power savings |
US9053244B2 (en) | 2012-06-28 | 2015-06-09 | Intel Corporation | Utilization-aware low-overhead link-width modulation for power reduction in interconnects |
US9183171B2 (en) | 2012-09-29 | 2015-11-10 | Intel Corporation | Fast deskew when exiting low-power partial-width high speed link state |
US9355058B2 (en) * | 2012-10-22 | 2016-05-31 | Intel Corporation | High performance interconnect physical layer |
US9910809B2 (en) * | 2014-12-19 | 2018-03-06 | Intel Corporation | High performance interconnect link state transitions |
US10601425B2 (en) | 2018-05-30 | 2020-03-24 | Intel Corporation | Width and frequency conversion with PHY layer devices in PCI-express |
US11467999B2 (en) | 2018-06-29 | 2022-10-11 | Intel Corporation | Negotiating asymmetric link widths dynamically in a multi-lane link |
US10846247B2 (en) | 2019-03-05 | 2020-11-24 | Intel Corporation | Controlling partial link width states for multilane links |
US11836101B2 (en) | 2019-11-27 | 2023-12-05 | Intel Corporation | Partial link width states for bidirectional multilane links |
KR102518317B1 (ko) | 2021-04-13 | 2023-04-06 | 에스케이하이닉스 주식회사 | PCIe 인터페이스 장치 및 그 동작 방법 |
US11782497B2 (en) | 2021-06-01 | 2023-10-10 | SK Hynix Inc. | Peripheral component interconnect express (PCIE) interface device and method of operating the same |
US11789658B2 (en) | 2021-04-13 | 2023-10-17 | SK Hynix Inc. | Peripheral component interconnect express (PCIe) interface system and method of operating the same |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1737870A (zh) * | 2004-08-16 | 2006-02-22 | 美国博通公司 | 减少IrDA激活设备的能量消耗的方法和系统 |
US7664146B1 (en) * | 2002-02-15 | 2010-02-16 | Marvell Israel (M.I.S.L.) Ltd. | Dynamic alignment for data on a parallel bus |
US7809969B2 (en) * | 2005-12-28 | 2010-10-05 | Intel Corporation | Using asymmetric lanes dynamically in a multi-lane serial link |
Family Cites Families (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5396635A (en) | 1990-06-01 | 1995-03-07 | Vadem Corporation | Power conservation apparatus having multiple power reduction levels dependent upon the activity of the computer system |
JPH04359335A (ja) | 1991-06-06 | 1992-12-11 | Fujitsu Ltd | メモリアクセス方式 |
US5781784A (en) | 1992-07-09 | 1998-07-14 | Zilog, Inc. | Dynamic power management of solid state memories |
JPH08223390A (ja) | 1995-02-10 | 1996-08-30 | Murata Mach Ltd | 全二重モデムを有したファクシミリ装置 |
US6222825B1 (en) | 1997-01-23 | 2001-04-24 | Advanced Micro Devices, Inc. | Arrangement for determining link latency for maintaining flow control in full-duplex networks |
US6009488A (en) | 1997-11-07 | 1999-12-28 | Microlinc, Llc | Computer having packet-based interconnect channel |
DE19822259C2 (de) | 1998-05-18 | 2000-07-06 | Siemens Ag | Sendeeinrichtung und Bussystem zur Datenübertragung |
JP2000261435A (ja) | 1999-03-05 | 2000-09-22 | Nec Corp | 最小帯域保証接続方法及び装置 |
JP2001022690A (ja) | 1999-07-09 | 2001-01-26 | Canon Inc | 装置間のデータ通信方法及びそのシステム |
US6526469B1 (en) | 1999-11-12 | 2003-02-25 | International Business Machines Corporation | Bus architecture employing varying width uni-directional command bus |
US20020087716A1 (en) | 2000-07-25 | 2002-07-04 | Shakeel Mustafa | System and method for transmitting customized multi priority services on a single or multiple links over data link layer frames |
US6665742B2 (en) | 2001-01-31 | 2003-12-16 | Advanced Micro Devices, Inc. | System for reconfiguring a first device and/or a second device to use a maximum compatible communication parameters based on transmitting a communication to the first and second devices of a point-to-point link |
US6766464B2 (en) | 2001-02-13 | 2004-07-20 | Sun Microsystems, Inc. | Method and apparatus for deskewing multiple incoming signals |
JP2002259327A (ja) | 2001-02-28 | 2002-09-13 | Hitachi Ltd | バス制御回路 |
JP3523616B2 (ja) | 2001-07-24 | 2004-04-26 | 松下電器産業株式会社 | バス最適化方法及び通信ノード |
US20030088799A1 (en) | 2001-11-05 | 2003-05-08 | Bodas Devadatta V. | Method and apparatus for regulation of electrical component temperature and power consumption rate through bus width reconfiguration |
US7200186B2 (en) | 2002-03-14 | 2007-04-03 | Intel Corporation | Methods and apparatus for reducing power usage of a transmitter and receiver coupled via a differential serial data link |
US6996738B2 (en) * | 2002-04-15 | 2006-02-07 | Broadcom Corporation | Robust and scalable de-skew method for data path skew control |
US7490187B2 (en) * | 2002-05-15 | 2009-02-10 | Broadcom Corporation | Hypertransport/SPI-4 interface supporting configurable deskewing |
GB0211764D0 (en) | 2002-05-22 | 2002-07-03 | 3Com Corp | Automatic power saving facility for network devices |
US7137018B2 (en) | 2002-12-31 | 2006-11-14 | Intel Corporation | Active state link power management |
US7047475B2 (en) | 2003-02-04 | 2006-05-16 | Hewlett-Packard Development Company, L.P. | CRC encoding scheme for conveying status information |
US7188263B1 (en) | 2003-05-07 | 2007-03-06 | Nvidia Corporation | Method and apparatus for controlling power state of a multi-lane serial bus link having a plurality of state transition detectors wherein powering down all the state transition detectors except one |
US7136953B1 (en) | 2003-05-07 | 2006-11-14 | Nvidia Corporation | Apparatus, system, and method for bus link width optimization |
US7706282B2 (en) | 2003-06-25 | 2010-04-27 | Leping Huang | Bluetooth personal area network routing protocol optimization using connectivity metric |
TWI273789B (en) | 2004-02-24 | 2007-02-11 | Via Tech Inc | Method for adjusting the power consumption of a network interface |
US8046488B2 (en) | 2004-05-21 | 2011-10-25 | Intel Corporation | Dynamically modulating link width |
US7957428B2 (en) | 2004-05-21 | 2011-06-07 | Intel Corporation | Methods and apparatuses to effect a variable-width link |
US7844767B2 (en) | 2004-05-21 | 2010-11-30 | Intel Corporation | Method for identifying bad lanes and exchanging width capabilities of two CSI agents connected across a link |
US7313712B2 (en) | 2004-05-21 | 2007-12-25 | Intel Corporation | Link power saving state |
US7197591B2 (en) | 2004-06-30 | 2007-03-27 | Intel Corporation | Dynamic lane, voltage and frequency adjustment for serial interconnect |
US20060034611A1 (en) | 2004-08-16 | 2006-02-16 | Weidong Li | Method and system for reducing power consumption of IrDA enabled handsets by turning on/off an IrDA port dynamically |
US7571271B2 (en) | 2005-09-28 | 2009-08-04 | Ati Technologies Ulc | Lane merging |
US20070239922A1 (en) | 2005-12-09 | 2007-10-11 | Horigan John W | Technique for link reconfiguration |
US20080077793A1 (en) * | 2006-09-21 | 2008-03-27 | Sensory Networks, Inc. | Apparatus and method for high throughput network security systems |
US7660261B2 (en) | 2006-11-14 | 2010-02-09 | The Trustees Of Columbia University In The City Of New York | Systems and methods for computing data transmission characteristics of a network path based on single-ended measurements |
US8208467B2 (en) | 2009-06-16 | 2012-06-26 | Oracle America, Inc. | Method and apparatus for modulating the width of a high-speed link |
US8412911B2 (en) * | 2009-06-29 | 2013-04-02 | Oracle America, Inc. | System and method to invalidate obsolete address translations |
US8868955B2 (en) * | 2011-07-01 | 2014-10-21 | Intel Corporation | Enhanced interconnect link width modulation for power savings |
US9444509B2 (en) * | 2012-09-27 | 2016-09-13 | Intel Corporation | Non-blocking power management for on-package input/output architectures |
US9183171B2 (en) | 2012-09-29 | 2015-11-10 | Intel Corporation | Fast deskew when exiting low-power partial-width high speed link state |
-
2012
- 2012-09-29 US US13/631,876 patent/US9183171B2/en not_active Expired - Fee Related
-
2013
- 2013-06-24 WO PCT/US2013/047251 patent/WO2014051765A1/en active Application Filing
- 2013-06-24 KR KR1020157004642A patent/KR101661259B1/ko active IP Right Grant
- 2013-06-24 CN CN201380044767.8A patent/CN104583944B/zh active Active
- 2013-06-24 DE DE112013003766.1T patent/DE112013003766T5/de active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7664146B1 (en) * | 2002-02-15 | 2010-02-16 | Marvell Israel (M.I.S.L.) Ltd. | Dynamic alignment for data on a parallel bus |
CN1737870A (zh) * | 2004-08-16 | 2006-02-22 | 美国博通公司 | 减少IrDA激活设备的能量消耗的方法和系统 |
US7809969B2 (en) * | 2005-12-28 | 2010-10-05 | Intel Corporation | Using asymmetric lanes dynamically in a multi-lane serial link |
Also Published As
Publication number | Publication date |
---|---|
US20140095751A1 (en) | 2014-04-03 |
WO2014051765A1 (en) | 2014-04-03 |
KR20150038265A (ko) | 2015-04-08 |
KR101661259B1 (ko) | 2016-09-29 |
US9183171B2 (en) | 2015-11-10 |
CN104583944A (zh) | 2015-04-29 |
DE112013003766T5 (de) | 2015-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104583944B (zh) | 在退出低功率部分宽度高速链路状态时的快速抗扭斜 | |
US11507528B2 (en) | Pooled memory address translation | |
US8904079B2 (en) | Tunneling platform management messages through inter-processor interconnects | |
US9043526B2 (en) | Versatile lane configuration using a PCIe PIe-8 interface | |
KR101831550B1 (ko) | 다중슬롯 링크 계층 플릿에서의 제어 메시징 | |
US11366773B2 (en) | High bandwidth link layer for coherent messages | |
US20160179427A1 (en) | Low power entry in a shared memory link | |
CN105740195B (zh) | Or链式总线的增强数据总线反转编码的方法和装置 | |
US20120079156A1 (en) | IMPLEMENTING QUICKPATH INTERCONNECT PROTOCOL OVER A PCIe INTERFACE | |
US9208110B2 (en) | Raw memory transaction support | |
US20220342841A1 (en) | Die-to-die adapter | |
CN103827776B (zh) | 通过pci高速组件减少功耗的活动状态功率管理(aspm) | |
CN110659239A (zh) | 在多通路链路中动态地协商不对称链路宽度 | |
US20220334995A1 (en) | Parameter exchange for a die-to-die interconnect | |
US20220342840A1 (en) | Die-to-die interconnect | |
US20210004347A1 (en) | Approximate data bus inversion technique for latency sensitive applications | |
Sharma et al. | An introduction to the compute express link (cxl) interconnect | |
KR101844812B1 (ko) | 고속 레인에서 가기능정지를 이용한 emi 완화 | |
KR101736460B1 (ko) | 크로스-다이 인터페이스 스누프 또는 글로벌 관측 메시지 오더링 |
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 |