CN103842929A - 在管芯上系统结构中管理边带段 - Google Patents
在管芯上系统结构中管理边带段 Download PDFInfo
- Publication number
- CN103842929A CN103842929A CN201280047855.9A CN201280047855A CN103842929A CN 103842929 A CN103842929 A CN 103842929A CN 201280047855 A CN201280047855 A CN 201280047855A CN 103842929 A CN103842929 A CN 103842929A
- Authority
- CN
- China
- Prior art keywords
- message
- sideband
- power management
- postal delivery
- management logic
- 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
-
- 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/3287—Power saving characterised by the action undertaken by switching off individual functional units in the computer system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7807—System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
- G06F15/7825—Globally asynchronous, locally synchronous, e.g. network on chip
-
- 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
-
- 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
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Power Sources (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Multi Processors (AREA)
Abstract
本发明描述了用于在管芯上系统结构(OSF)中管理边带段的方法和装置。在一个实施例中,边带OSF包括多个段,所述多个段可以在功率管理逻辑确定正在进行中的消息已经被处理且被复位或断电的段的将来的消息会被阻挡之后而独立地被复位或断电。还公开了其他实施例。
Description
技术领域
本公开内容总体上涉及电子领域。更具体地,本发明的实施例涉及用于在管芯上系统结构(OSF)中对边带段进行管理的技术。
背景技术
集成电路器件可以包括各种部件。例如由于功耗的考虑、错误等,这些部件的子集会需要复位并随后断电。但孤立地复位并随后断电任何子集都会导致一个或多个剩余子集变为不可操作或易于出错,例如当消息在部件的子集之间被传送的正在进行中。或者,如果所有部件子集同时复位并断电,设计就会失去灵活性,例如,失去维持至少某些集成电路器件部件至少部分地可操作的能力。
附图说明
参考附图提供了详细说明。在附图中,参考标记的最左侧的数字表示参考标记首次出现的附图。在不同附图中使用相同的参考标记来表示相似或相同的项目。
图1和4-5例示了计算系统的实施例的方框图,该计算系统可以用于实施本文所述的多个实施例。
图2和3例示了根据某些实施例的方法的流程图。
具体实施方式
在以下说明中,阐明了多个具体细节,从而提供对多个实施例的透彻理解。但可以实施某些实施例而无需这些具体细节。在其他实例中,为了不使得特定实施例模糊不清,没有详细说明公知的方法、过程、部件和电路。
在某些实施例中,OSF边带网络可以分为多个段。这些段中的每一个都可以位于分离的功率域中。在实施例中,可以存在三个功率域,所述三个功率域可以称为SUS(芯片组挂起功率域,其中存在功率管理控制器)、ASW(辅助功率域,其中存在芯片组管理)、和CORE(芯片组核心功率域,其中存在芯片组核心逻辑)(从最深的功率域到最浅的功率域)。每一段都可以包括一个或多个OSF边带路由器(例如,用以在OSF中的多个代理之间路由消息)和终点(例如在OSF中的代理,其发送或接收消息)。终点可以通过发送消息彼此进行通信,消息通过OSF中的路由器在点到点接口链路上传播。如本文所述的那样,“边带”网络、结构等通常指代用于传送带外信息的接口,例如用以去除专用连线,其引起了不同设计中电路块(例如,知识产权(IP)块)的重复使用的最大风险。此外,边带消息接口在多个实施例中可以用于状况、功率管理、配置遮蔽(configuration shadowing)、测试模式等。
本文所述的技术可以应用于多个计算系统中,例如参考图1和4-5所论述的那些系统。更具体地,图1示出了根据本发明实施例的计算系统100的方框图。系统100可以包括一个或多个代理102-1到102-M(本文统称为“多个代理102”或更普遍地“代理102”)。在实施例中,一个或多个代理102可以是计算系统的任意部件,所述计算系统例如是参考图4-5所论述的计算系统。
如图1所示,代理102可以经由诸如OSF之类的主要结构104进行通信。因此,在实施例中,代理102和结构104可以出现在相同集成电路芯片上。如本文所述的那样,“OSF”可以指代管芯上系统结构,其可缩放、可配置和/或是产品专用的。例如,每一个代理102都可以是桥(例如,用于耦合到另一个结构)、IP块或经由结构104耦合的电子器件的另一个部件。在一个实施例中,结构104可以包括计算机网络,其允许多个代理(例如计算设备)传送数据。在实施例中,结构104可以包括一个或多个互连(或互连网络),其经由串联(例如点到点)链路和/或共享通信网络通信。例如,某些实施例可以有利于链路上的部件调试或确认,链路允许借助全缓冲双列直插存储器模块(FBD)的通信,例如,其中FBD链路是用于将存储器模块耦合到主机控制器设备(例如处理器或存储器集线器)的串联链路。可以从FBD信道主机发送调试信息,以使得可以通过信道业务量追踪捕获工具(例如一个或多个逻辑分析器)来沿信道观察调试信息。
在一个实施例中,系统100可以支持包括物理层、链路层、路由层、传输层和/或协议层的分层的协议方案。结构104可以进一步有利于点到点或共享网络的从一个协议(例如高速缓存处理器或高速缓存识别存储器控制器)到另一个协议的数据的发送(例如分组的形式)。此外,在某些实施例中,结构104可以提供通信,该通信遵守一个或多个高速缓存一致性协议。或者,结构104可以遵守非一致性协议。
进一步,如图1中箭头方向所示的那样,代理102可以经由结构104发送和/或接收数据。因此,一些代理可以利用单向链路,而其他的可以利用双向链路来进行通信。例如,一个或多个代理(例如代理102-M)可以发送数据(例如经由单向链路106),其他代理(例如代理102-2)可以接收数据(例如经由单向链路108),而某些代理(例如代理102-1)可以发送和接收数据(例如经由双向链路110)。在某些实施例中,链路106-110可以是OSF接口,所述OSF接口提供协议和/或信令以允许IP块在多个设计方案中交互操作。
在实施例中,耦合代理102的OSF接口(例如链路106-110)可以提供被称为主信道和边带信道的两个端口的。主信道可以:(a)是高性能接口,用于在对等端和/或上游之间的数据传送;(b)支持存储器(例如32位、44位)、输入/输出(I/O)、配置和消息传输;(c)支持外设部件互连(PCI)排序规则和/或列举;(d)支持数据分割传输协议;和/或(e)映射PCI头信息。边带信道可以:(i)提供标准接口,用以传送边带(本文中可互换地也称为“带外”)信息,并去除专用布线;(ii)提供点到点网络;(iii)用于状况、功率管理、配置遮蔽、测试模式等;和/或(iv)用于低性能(例如不打算用于主要数据传送的)。如本文所述的那样,外设部件互连(PCI)高速(“PCIe”)可以根据2008年8月的PCI Express Base Specification3.0(PCI高速基础规范3.0),修订版0.5。
如图1所示,在某些实施例中,可以通过分段的边带OSF120来提供边带信道。边带OSF120可以包括一个或多个路由器122,其有利于经由接口130、132和134在两个或多个代理102之间的带外消息的传送。接口130、132和134可以实现为点到点链路。此外,点到点链路可以是单向或双向的(例如,具有专门用于消息的发送的一条单向链路,和专门用于消息的接收的另一条链路)。在某些实施例中,边带OSF120可以分为多个段。这些段中的每一个都可以位于分离的功率域中。在一个实施例中,存在三个功率域。每一段都可以包括一个或多个OSF边带路由器122。
使任何边带段复位并随后断电可以导致整个边带网络挂起或故障,尤其是当向/从段传送消息的正在进行中时。通常,如果是以下情况,则消息被认为正在进行中:
(1)任何消息的结尾(最后的扫掠(flit),其中,“扫掠”指代用于边带消息信道中来传送有效载荷数据的流控制单位或基本传送尺寸)还没有放置在边带结构上,或者已经放置在边带上但仍必须由目标终点/代理使用。
(2)非邮递式消息的完成消息没有到达或由非邮递式消息发起方使用。
(3)邮递式请求-在一对终点之间的邮递式确认握手已经启动,但邮递式确认消息仍需到达或由握手发起方使用。
通常,OSF接口(例如,图1的主OSF104和次OSF120)支持三个基本请求类型:邮递式的、非邮递式的和完成。邮递式请求无需完成,因此在接收方之前在发送方首先完成传输。非邮递式请求需要完成,用以返回请求的数据或状况,因此,在接收方之后在发送方最后完成传输。在某些实施例中,从读数据应答去耦读请求允许接口对可用的资源进行优化。
图2-3例示了根据某些实施例的用以在管芯上系统结构(OSF)中管理边带段的流程图。在一个实施例中,处理边带OSF中所有的正在进行中的消息,并且在复位边带段之前整个边带网络进入空闲状态。
如图2-3所示,为边带网络提供PREP和复位警告流。除了无功率循环的主机分区热复位以外,它们是Sx转换(其指代CORE阱(CORE Well)功率状态转换),和Mx转换(其指代管理引擎功率状态转换,其包括ASW阱(ASW Well)功率状态转换)。PREP流在边带网络上的完成是边带网络上复位警告流的先决条件。边带网络上复位警告流的完成是用以复位边带段的任何系统复位流的先决条件(图3中示出了后者)。
如本文所述的那样,PREP指代用于确保OSF边带上所有的邮递式-邮递式握手在边带进入复位之前完成的流。参考图2,功率管理控制器(PMC)逻辑124(可以在图1所示的分段OSF120中提供它,或者在系统中的其他位置提供它)通过在202处向可以参与在OSF边带上的邮递式-邮递式握手的终点断言PREP_REQ信号来启动PREP流(可以是边带OSF上的直通线或点到点消息)。在204处,在接收到PREP_REQ断言时发起邮递式请求的终点在206处停止发起新的邮递式请求,并在210处向PMC124断言PREP_ACK信号(可以是边带OSF上的直通线或点到点消息)之前,在208处等待各自的邮递式确认。在从210接收到PREP确认信号后,PREP流在212处结束。
边带上的复位警告流(我们称其为SBI(边带接口)复位警告流)包括在功率管理控制器(PMC)124与边带界之间的握手。PMC是OSF边带代理,可以充当SBI复位警告流的发起方。为了启动流,PMC在214处在边带网络上广播RESET_WARN非邮递式消息。当PMC从218在216处接收到对这个复位_警告消息(Reset_Warn message)的完成时,所有的终点通过在220处接收复位_警告消息,在222处阻挡新的邮递式消息和非邮递式消息,在224处完成发起的所有的正在进行中的邮递式消息,并在218处返回对复位_警告的完成,来承诺不发起新的循环。
如图1所示,PMC124在226处等待进行中的任何其他消息完成。当所有消息都已经从内部的队列或FIFO(先进先出)清除出去,并且连接到它的终点具有代理_ISM==空闲(Agent_ISM==IDLE)时,每一个路由器都可以断言其自身的路由器_空闲(router_idle)信号。根据一个实施例,在发起的消息的结尾(最后的扫掠)已经从内部的队列/FIFO清除出去并且如果有的话,对于所有发起的非邮递式消息的完成消息已经返回以后,每一个终点的代理_ISM(Agent_ISM)都可以仅移动到空闲。
当所有路由器已经断言路由器_空闲时,PMC将这个状态认为是没有任何更多的消息在进行中,即OSF边带完全静默(quite)。复位_警告消息的接收和所有路由器_空闲的断言标志着SBI复位警告流的结束,PMC现在可以继续进行系统复位流,其将复位一个或多个边带段,如图3所示。
在实施例中,接收复位_警告消息的终点会基于以下规则返回对复位_警告的完成:
1、一旦捕获到复位_警告,就停止发起新的邮递式消息(除了完成以外)和新的非邮递式消息。
2、在返回对复位_警告的完成之前,完成由其代理发起的所有的正在进行中的邮递式(不是完成)消息。
3、在返回对复位_警告消息的完成之前,不等待由代理发起的正在进行中的非邮递式消息被完成。这样做的一个原因是:在发送完成前等待非邮递式会产生IN-OUT依赖性,这会导致死锁。
4、发起非邮递式消息的代理将终点的代理_ISM保持在有效状态,直到捕获到对发起的所有非邮递式消息的完成为止。
5、当代理捕获到复位_警告消息时,代理允许在终点目标接口上正常接收到来的消息。当终点发起复位_警告完成消息时,有可能存在仍以这个终点为目标的消息。复位_警告流不限定这个终点的代理_ISM从空闲转换出来以便接收到来的消息。
参考图3,在302处,PMC对边带段进行断电或使其处于休息。在图2的SBI复位警告流的结尾,边带保持静默,直到PMC在304处发起复位_完毕广播消息。当系统复位流已经复位或断电边带段时,PMC可以发起复位_完毕消息。其终点不在已经断电或复位的段中的代理在306处接收这个复位_完毕非邮递式消息。在接收到复位_完毕后,这些代理会在308处去除发起新的消息的任何阻挡。代理随后在310处返回对复位_完毕的完成。在流结束前,PMC124在312处等待对复位_完毕(Reset_Done)的完成消息。
在多个实施例中,复位_警告和复位_完毕可以实现为OSF边带上的直通线或消息。另外,每一个终点和路由器都可以实现在OSF边带120接口上的空闲状态机(ISM)。将所有终点的代理_ism==空闲(agent_ism==IDLE)和所有路由器的结构_ism==空闲(fabric_ism==IDLE)作为复位段的条件是不够的,在满足这个条件后,主终点可以启动新的循环1个时钟。因此,在复位任何段之前,整个边带网络需要保持在静默。
在使边带段断电后,保持通电的其他段会需要能够从静默状态中退出。为此,实施例提供了技术,用以在不丧失保持通电的边带结构/网络的功能的情况下,使边带网络静默,以便复位并断电边带网络。
在某些实施例中,CORE阱中的边带段会在Sx转换中的经过功率状态变化,ASW阱中的边带段会在Mx转换中经过功率状态变化,SUS井中的边带段会一直处于导通。在主机分区热复位(无功率循环)的情况下,CORE井边带段在没有功率状态变化的情况下可以经过复位周期。静默整个边带网络的相同要求适用于这个情况。因此,某些实施例能够适度地根据功率分级来复位边带网络。
各种类型的计算系统可以用于实施本文所述的实施例(例如参考图1-3所述的那些实施例)。例如,图4示出了计算系统400的实施例的方框图。图1的一个或多个代理102可以包括计算系统400的一个或多个部件。计算系统400可以包括一个或多个中央处理单元(CPU)402(其可以在本文统称为“多个处理器402”或更普遍地“处理器402”),其耦合到互连网络(或总线)404。处理器402可以是任何类型的处理器,例如通用处理器、网络处理器(其可以处理通过计算机网络405传送的数据)等(包括精简指令集计算机(RISC)处理器或复杂指令集计算机(CISC))。此外,处理器402可以具有单核或多核设计。具有多核设计的处理器402可以将不同类型的处理器核心集成在相同的集成电路(IC)管芯上。而且,具有多核设计的处理器402可以实施为对称的或不对称的多处理器。
处理器402可以包括一个或多个高速缓存和/或存储器管理单元(MMU,未示出)。在多个实施例中,高速缓存可以是私有和/或共享的。通常,高速缓存存储对应于存储在其他位置或较早计算的原始数据的数据。为了减小存储器访问等待时间,一旦将数据存储在高速缓存中,就可以通过访问高速缓存的副本来进行将来的使用,而不是重新取回或重新计算原始数据。高速缓存可以是任意类型的高速缓存,例如1级(L1)高速缓存、2级(L2)高速缓存、3级(L3)高速缓存、中间级高速缓存、最末级高速缓存(LLC)等,用以储存由系统400的一个或多个部件使用的电子数据(例如,包括指令)。
如图4所示,OSF104/120可以耦合在一个或多个IP块403与处理器402之间(例如,通过互连404)。如参考图1-3所述的那样,边带OSF120可以分割并可以包括逻辑(例如PMC124),以便有利于边带OSF120的多个域中的功率管理。
芯片组406可以附加地耦合到互连网络404。此外,芯片组406可以包括存储器控制集线器(MCH)408。MCH408可以包括存储器控制器410,其耦合到存储器412。存储器412可以存储数据,例如包括指令的序列,其由处理器402或与计算系统400的部件通信的任何其他设备执行。在一个实施例中,存储器412可以用于存储诸如参考图1-3所述的数据(例如页面表)。此外,在本发明的一个实施例中,存储器412可以包括一个或多个易失性存储(或内存)设备,例如随机存取存储器(RAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、静态RAM(SRAM)等。也可以使用诸如硬盘的非易失性存储器。附加的设备可以耦合到诸如多个处理器和/或多个系统存储器之类的互连网络404。
MCH408可以进一步包括耦合到显示设备416的图形接口414(例如,在一个实施例中经由图形加速器)。在一个实施例中,图形接口414可以经由加速图形接口(AGP)耦合到显示设备416。在本发明的一个实施例中,显示设备416(例如平板显示器)可以例如通过信号转换器耦合到图形接口414,信号转换器将存储在诸如视频存储器或系统存储器(例如存储器412)的存储设备中的图像的数字表示转变为显示信号,其由显示器416解译并显示。
如图4所示,集线器接口418可以将MCH408耦合到输入/输出控制集线器(ICH)420。ICH420可以向耦合到计算系统400的输入/输出(I/O或IO)设备提供接口。ICH420可以通过外设桥(或控制器)424耦合到总线422,例如外设部件互连(PCI)桥,其可以与PCI规范兼容,通用串联总线(USB)控制器等。桥424可以在处理器402和外围设备之间提供数据通路。可以使用其他类型的结构布局。此外,多条总线可以耦合到ICH420,例如通过多个桥或控制器。例如,总线422可以遵照PCI局部总线规范,修订版3.0,2004,可以从PCI Special Interest Group,Portland,Oregon,U.S.A.获得(下文中称为“PCI总线”)。可替换地,总线422可以包括遵照PCI-X规范,修订版3.0a,2003(下文中称为“PCI-X总线”)和/或PCI高速(PCIe)规范(PCI规范,修订版2.0,2006)的总线,可从前述的PCI Special InterestGroup,Portland,Oregon,U.S.A.获得。此外,总线422可以包括其他类型和结构的总线系统。而且,在本发明的多个实施例中,耦合到ICH420的其他外围设备可以包括集成驱动电路(IDE)或小型计算机系统接口(SCSI)硬盘驱动器、USB端口、键盘、鼠标、并行端口、串行端口、软盘驱动器、数字输出支持(例如,数字视频接口(DVI))等。
总线422可以耦合到音频设备426、一个或多个磁盘驱动器428、和网络适配器430(在一个实施例中其可以是NIC)。在一个实施例中,耦合到总线422的网络适配器430或其他设备可以经由开关逻辑412(在某些实施例中其可以与图4的逻辑412相同或相似)与芯片组406通信。其他设备可以耦合到总线422。此外,在本发明的某些实施例中,多个部件(例如网络适配器430)可以耦合到MCH408。另外,处理器402和MCH408可以被组合以构成单个芯片。
另外,计算系统400可以包括易失性和/或非易失性存储器(或存储设备)。例如,非易失性存储器可以包括以下的一个或多个:只读存储器
(ROM)、可编程ROM(PROM)、可擦除PROM(EPROM)、电EPROM
(EEPROM)、磁盘驱动器(例如428)、软盘、光盘ROM(CD-ROM)、数字多用途盘(DVD)、闪存、磁光盘、或能够存储电子数据(例如包括指令)的其他类型的非易失性机器可读介质。
在实施例中,存储器412可以包括以下项中的一个或多个:操作系统
(O/S)432、应用程序434、和/或设备驱动器436(例如OS、应用程序和/或设备驱动器)存储器412还可以包括专用于MMIO操作的区域。存储在存储器412中的程序和/或数据可以作为部分存储器管理操作交换到磁盘驱动器428中。应用程序434可以执行(例如在处理器402上)以便与耦合到网络405的一个或多个计算设备传送一个或多个分组。在一个实施例中,分组可以是一个或多个符号和/或数值的序列,其可以由从至少一个发送方发送到至少一个接收方(例如通过诸如网络405的网络)的一个或多个电信号编码。例如,每一个分组都可以具有报头,其包括多个信息,可以用于路由和/或处理分组,例如源地址、目标地址、分组类型等、每一个分组和可以具有有效载荷,其包括分组通过计算机网络(例如网络405)在多个计算设备之间传送的原始数据(或内容)。
在实施例中,应用程序434可以利用O/S432例如通过设备驱动器436来与系统400的多个部件通信。因此,设备驱动器436可以包括网络适配器430专用命令,用以例如借助芯片组406,在O/S432与网络适配器430,或耦合到系统400的其他I/O设备之间提供通信接口。
在实施例中,O/S432可以包括网络协议堆栈。协议堆栈通常指代一组过程或程序,可以执行它以处理通过网络405发送的分组,其中,分组可以符合特定协议。例如,可以使用TCP/IP堆栈处理TCP/IP(传输控制协议/网际网路协议)分组。设备驱动器436可以例如经由协议堆栈来指示要被处理的缓冲器438。
网络405可以包括任何类型的计算机网络。网络适配器430可以进一步包括直接存储器存取(DAM)引擎452,其向分配给可用描述符(例如存储在存储器412中)的缓冲器写入分组(例如存储在存储器412中),以通过网络405发送和/或接收数据。
图5例示了根据本发明实施例的计算系统500,其设置在点到点(PtP)结构中。具体地,图5显示了一个系统,其中,处理器、存储器和输入/输出设备由多个点到点接口互连。可以由系统500的一个或多个部件来执行参考图1-4所述的操作。
如图5所示,系统500可以包括几个处理器,为了清楚,仅显示了其中的两个,处理器502和504。处理器502和504每一个都可以包括局部存储器控制器集线器(MCH)506和508,以实现与存储器510和512的通信(其可以存储MMIO区)。存储器510和/或512可以存储各种数据,例如参考图4的存储器412所述的那些。如图5所示,处理器502和504还可以包括诸如参考图4所述的之类的一个或多个高速缓存。
在实施例中,处理器502和504可以是参考图4所述的处理器402中的一个。处理器502和504可以分别使用PtP接口电路516和518经由点到点(PtP)接口514交换数据。此外,处理器502和504每一个都可以使用点到点接口电路526、528、530和532,经由各自的PtP接口522和524与芯片组520交换数据。芯片组520可以进一步例如使用PtP接口电路537,经由高性能图形接口536来与高性能图形电路534交换数据。
在至少一个实施例中,OSF104/120可以将处理器502、504(例如,通过PtP接口)耦合到一个或多个IP块403。但本发明的其他实施例可以存在于图5的系统500内的其他电路、逻辑单元或设备中。而且,并发明的其他实施例可以分布遍及图5所示的几个电路、逻辑单元或设备中。此外,处理器502、504可以包括MMU。此外,OSF104/120可以位于系统500中的其他位置,例如在芯片组520、通信设备546、耦合到总线540/744的设备内等。
芯片组520可以使用PtP接口电路541与总线540通信。总线540可以具有与之通信的一个或多个设备,例如总线桥542和I/O设备543。经由总线544,总线桥542可以与其他设备通信,例如键盘/鼠标545、通信设备546(例如调制解调器、网络接口设备或可以与计算机网络405通信的其他通信设备)、音频I/O设备、和/或数据存储设备548。数据存储设备548可以存储代码549,其可以由处理器502和/或504执行。
在本发明的各个实施例中,例如参考图1-5的本文所述的操作可以实现为硬件(例如电路)、软件、固件、微代码、或其组合,其可以作为计算机程序产品来提供,例如包括机器可读或计算机可读介质,具有存储在其上的指令(或软件程序),用于编程计算机以执行本文所述的过程。此外,术语“逻辑”示例性地可以包括软件、硬件、或软件与硬件的组合。(例如非暂时性)机器可读介质可以包括存储设备,例如相对于图1-5所述的那些。另外,这种计算机可读介质可以作为计算机程序产品下载,其中,程序可以经由通信链路(例如总线、调制解调器或网络连接)通过在载波或其他传播介质中提供的数据信号,从远程计算机(例如服务器)传送到请求计算机(例如客户机)。
说明书中对“一个实施例”,“实施例”的提及表示结合该实施例所述的特定特征、结构或特性可以包括在至少一个实施方式中。说明书中多处出现的术语“在一个实施例中”可以指代同一实施例或可以指代不同的实施例。
此外,在说明书和权利要求书中,可以使用术语“耦合的”或“连接的”连同其派生词。在本发明的某些实施例中,“连接的”可以用于指示两个或多个元件彼此直接物理或电接触。“耦合的”可以表示两个或多个元件直接物理或电接触。但“耦合的”也可以表示两个或多个元件可以彼此不直接接触,而仍可以彼此协作或相互作用。
因此,尽管以专门针对结构特征和/或方法操作的语言来描述了本发明的实施例,但应当理解,要求保护的主题可以不限于所述的特定特征或操作。相反,作为实施所要求保护的主题的示例性形式而公开了特定特征和操作。
Claims (20)
1.一种集成电路,包括:
边带管芯上系统结构(OSF),所述边带管芯上系统结构用于耦合第一代理和第二代理,其中,所述边带OSF用于允许所述第一代理和所述第二代理经由一个或多个路由器传送带外信息;以及
功率管理逻辑,所述功率管理逻辑用于发起请求以复位所述边带OSF的多个段中的一段,
其中,所述功率管理逻辑用于响应于来自所述多个段中的所述段中的一个或多个代理的、所述一个或多个代理已经处理了所有正在进行中的邮递式消息的确认而使所述段复位。
2.根据权利要求1所述的集成电路,其中,所述一个或多个代理用于响应于来自所述功率管理逻辑的广播消息而阻挡新的邮递式消息和非邮递式消息。
3.根据权利要求1所述的集成电路,其中,所述一个或多个代理用于响应于来自所述功率管理逻辑的消息而完成所有正在进行中的邮递式消息。
4.根据权利要求1所述的集成电路,其中,所述功率管理逻辑用于在使所述段复位之前等待边带空闲状态。
5.根据权利要求1所述的集成电路,其中,所述一个或多个代理用于响应于来自所述功率管理逻辑的消息而停止发起新的邮递式-邮递式握手消息。
6.根据权利要求1所述的集成电路,其中,所述一个或多个代理用于响应于来自所述功率管理逻辑的消息而完成正在进行中的邮递式-邮递式握手消息。
7.根据权利要求1所述的集成电路,其中,在所述多个段中的不同段中的至少一个代理用于响应于来自所述功率管理逻辑的指示所述段被复位的消息而去除对发起任何消息的阻挡。
8.根据权利要求1所述的集成电路,其中,所述第一代理包括处理器。
9.根据权利要求8所述的集成电路,其中,所述处理器包括一个或多个处理器核心。
10.根据权利要求1所述的集成电路,其中,所述第二代理包括逻辑块。
11.一种方法,包括:
通过边带管芯上系统结构(OSF)在第一代理和第二代理之间对一个或多个带外消息进行路由;以及
发起请求以复位所述边带OSF的多个段中的一段,
其中,响应于来自所述多个段中的所述段中的一个或多个代理的、所述一个或多个代理已经处理了所有正在进行中的邮递式消息的确认而复位所述段。
12.根据权利要求11所述的方法,进一步包括,所述一个或多个代理响应于来自功率管理逻辑的广播消息而阻挡新的邮递式消息和非邮递式消息。
13.根据权利要求11所述方法,进一步包括,所述一个或多个代理响应于来自功率管理逻辑的消息而完成所有正在进行中的邮递式消息。
14.根据权利要求11所述方法,进一步包括,在使所述段复位之前等待边带空闲状态。
15.根据权利要求11所述的方法,进一步包括,所述一个或多个代理响应于来自功率管理逻辑的消息而停止发起新的邮递式-邮递式握手消息。
16.一种系统,包括:
输入/输出(IO)设备;
边带管芯上系统结构(OSF),所述边带管芯上系统结构用于将处理器耦合到所述IO设备;以及
功率管理逻辑,所述功率管理逻辑用于发起请求以复位所述边带OSF的多个段中的一段,
其中,所述功率管理逻辑用于响应于来自所述多个段中的所述段中的一个或多个代理的、所述一个或多个代理已经处理了所有正在进行中的邮递式消息的确认而使所述段复位。
17.根据权利要求16所述的系统,其中,所述一个或多个代理用于响应于来自所述功率管理逻辑的广播消息而阻挡新的邮递式消息和非邮递式消息。
18.根据权利要求16所述的系统,其中,所述一个或多个代理用于响应于来自所述功率管理逻辑的消息而完成所有正在进行中的邮递式消息。
19.根据权利要求16所述的系统,其中,所述功率管理逻辑用于在使所述段复位之前等待边带空闲状态。
20.根据权利要求16所述的系统,其中,所述一个或多个代理用于响应于来自所述功率管理逻辑的消息而停止发起新的邮递式-邮递式握手消息。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
MYPI2011004721 | 2011-09-30 | ||
MYPI2011004721 | 2011-09-30 | ||
MY2011004721 | 2011-09-30 | ||
PCT/US2012/056883 WO2013048960A1 (en) | 2011-09-30 | 2012-09-24 | Managing sideband segments in on-die system fabric |
Publications (3)
Publication Number | Publication Date |
---|---|
CN103842929A true CN103842929A (zh) | 2014-06-04 |
CN103842929B CN103842929B (zh) | 2016-12-21 |
CN103842929B8 CN103842929B8 (zh) | 2017-05-10 |
Family
ID=47993811
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280047855.9A Active CN103842929B8 (zh) | 2011-09-30 | 2012-09-24 | 在管芯上系统结构中管理边带段 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9489028B2 (zh) |
EP (1) | EP2761386B1 (zh) |
CN (1) | CN103842929B8 (zh) |
WO (1) | WO2013048960A1 (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2761386B1 (en) | 2011-09-30 | 2017-09-06 | Intel Corporation | Managing sideband segments in on-die system fabric |
US9467368B2 (en) * | 2013-03-04 | 2016-10-11 | Dell Products, Lp | System and method for routing data to devices within an information handling system |
US9319232B2 (en) | 2014-04-04 | 2016-04-19 | Netspeed Systems | Integrated NoC for performing data communication and NoC functions |
US9874910B2 (en) * | 2014-08-28 | 2018-01-23 | Intel Corporation | Methods and apparatus to effect hot reset for an on die non-root port integrated device |
US9727114B2 (en) | 2014-09-25 | 2017-08-08 | Telefonaktiebolaget L M Ericsson (Publ) | HW-controlled power domains with automatic power-on request |
GB2537852B (en) | 2015-04-28 | 2019-07-17 | Advanced Risc Mach Ltd | Controlling transitions of devices between normal state and quiescent state |
GB2537855B (en) | 2015-04-28 | 2018-10-24 | Advanced Risc Mach Ltd | Controlling transitions of devices between normal state and quiescent state |
EP3776231B1 (en) | 2018-03-30 | 2023-05-03 | Google LLC | Procedures for implementing source based routing within an interconnect fabric on a system on chip |
US20190302861A1 (en) | 2018-03-30 | 2019-10-03 | Provino Technologies, Inc. | Protocol level control for system on a chip (soc) agent reset and power management |
US11294848B1 (en) * | 2020-10-20 | 2022-04-05 | Micron Technology, Inc. | Initialization sequencing of chiplet I/O channels within a chiplet system |
US11467655B1 (en) | 2021-06-07 | 2022-10-11 | Apple Inc. | Multi-die power synchronization |
US11698751B2 (en) | 2021-06-07 | 2023-07-11 | Western Digital Technologies, Inc. | Data storage device and method for low-latency power state transitions by having power islanding in a host memory buffer |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6179486B1 (en) * | 1997-05-13 | 2001-01-30 | Micron Electronics, Inc. | Method for hot add of a mass storage adapter on a system including a dynamically loaded adapter driver |
CN1696921A (zh) * | 2004-05-14 | 2005-11-16 | 国际商业机器公司 | 利用睡眠状态进行动态节点分区的方法和系统 |
US20070230344A1 (en) * | 2006-03-28 | 2007-10-04 | Binh Hua | Method for changing ethernet MTU size on demand with no data loss |
CN101069174A (zh) * | 2004-12-01 | 2007-11-07 | 皇家飞利浦电子股份有限公司 | 用于同步数据通信量的数据处理系统和方法 |
US20100054039A1 (en) * | 2008-09-02 | 2010-03-04 | Juhan Kim | High speed flash memory |
US20100250889A1 (en) * | 2009-03-31 | 2010-09-30 | Zhen Fang | Control of on-die system fabric blocks |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6009488A (en) | 1997-11-07 | 1999-12-28 | Microlinc, Llc | Computer having packet-based interconnect channel |
US6502161B1 (en) * | 2000-01-05 | 2002-12-31 | Rambus Inc. | Memory system including a point-to-point linked memory subsystem |
US7356633B2 (en) | 2002-05-03 | 2008-04-08 | Sonics, Inc. | Composing on-chip interconnects with configurable interfaces |
JP5083757B2 (ja) * | 2007-04-19 | 2012-11-28 | インターナショナル・ビジネス・マシーンズ・コーポレーション | データをキャッシュする技術 |
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 |
US8724465B2 (en) * | 2009-10-28 | 2014-05-13 | International Business Machines Corporation | Zero packet loss energy efficient ethernet link transition via driver fast failover |
US8868941B2 (en) * | 2011-09-19 | 2014-10-21 | Sonics, Inc. | Apparatus and methods for an interconnect power manager |
EP2761386B1 (en) | 2011-09-30 | 2017-09-06 | Intel Corporation | Managing sideband segments in on-die system fabric |
-
2012
- 2012-09-24 EP EP12836528.5A patent/EP2761386B1/en active Active
- 2012-09-24 WO PCT/US2012/056883 patent/WO2013048960A1/en active Application Filing
- 2012-09-24 CN CN201280047855.9A patent/CN103842929B8/zh active Active
- 2012-09-29 US US13/631,870 patent/US9489028B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6179486B1 (en) * | 1997-05-13 | 2001-01-30 | Micron Electronics, Inc. | Method for hot add of a mass storage adapter on a system including a dynamically loaded adapter driver |
CN1696921A (zh) * | 2004-05-14 | 2005-11-16 | 国际商业机器公司 | 利用睡眠状态进行动态节点分区的方法和系统 |
CN101069174A (zh) * | 2004-12-01 | 2007-11-07 | 皇家飞利浦电子股份有限公司 | 用于同步数据通信量的数据处理系统和方法 |
US20070230344A1 (en) * | 2006-03-28 | 2007-10-04 | Binh Hua | Method for changing ethernet MTU size on demand with no data loss |
US20100054039A1 (en) * | 2008-09-02 | 2010-03-04 | Juhan Kim | High speed flash memory |
US20100250889A1 (en) * | 2009-03-31 | 2010-09-30 | Zhen Fang | Control of on-die system fabric blocks |
Also Published As
Publication number | Publication date |
---|---|
EP2761386A4 (en) | 2015-04-29 |
WO2013048960A1 (en) | 2013-04-04 |
CN103842929B8 (zh) | 2017-05-10 |
US20130086398A1 (en) | 2013-04-04 |
EP2761386A1 (en) | 2014-08-06 |
EP2761386B1 (en) | 2017-09-06 |
US9489028B2 (en) | 2016-11-08 |
CN103842929B (zh) | 2016-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103842929A (zh) | 在管芯上系统结构中管理边带段 | |
US9525626B2 (en) | Managing sideband routers in On-Die system fabric | |
US10101797B2 (en) | Efficient power management of UART interface | |
US20140250202A1 (en) | Peer-to-peer interrupt signaling between devices coupled via interconnects | |
US10210120B2 (en) | Method, apparatus and system to implement secondary bus functionality via a reconfigurable virtual switch | |
US9916269B1 (en) | Packet queueing for network device | |
US8806025B2 (en) | Systems and methods for input/output virtualization | |
US20220050662A1 (en) | Scalable input/output system and techniques to transmit data between domains without a central processor | |
US8225069B2 (en) | Control of on-die system fabric blocks | |
US9154451B2 (en) | Systems and methods for sharing devices in a virtualization environment | |
CN107003955A (zh) | 用于在根复合体中集成设备的方法、装置和系统 | |
JP6505012B2 (ja) | アクセラレーテッド処理デバイス内でネットワークメッセージを処理するための方法およびシステム | |
US10409744B1 (en) | Low-latency wake-up in a peripheral device | |
US10191865B1 (en) | Consolidating write transactions for a network device | |
WO2014051765A1 (en) | Fast deskew when exiting low-power partial-width high speed link state | |
US20190324930A1 (en) | Method, device and computer program product for enabling sr-iov functions in endpoint device | |
WO2019200914A1 (zh) | 终端及投屏系统 | |
US9411763B2 (en) | Allocation of flow control credits for high performance devices | |
KR20050080704A (ko) | 프로세서간 데이터 전송 장치 및 방법 | |
CN114445260A (zh) | 基于fpga的分布式gpu通信的方法及装置 | |
CN108563602A (zh) | 电子设备及信息传输方法 | |
US11487695B1 (en) | Scalable peer to peer data routing for servers | |
US20240104045A1 (en) | System and method for ghost bridging | |
US20150378957A1 (en) | Employing multiple i2c devices behind a microcontroller in a detachable platform |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CI01 | Publication of corrected invention patent application |
Correction item: Priority first application number Correct: PI 2011004721 False: 2011004721 Number: 51 Volume: 32 |
|
CI01 | Publication of corrected invention patent application | ||
CI03 | Correction of invention patent |
Correction item: Priority first application number Correct: PI 2011004721 False: 2011004721 Number: 51 Page: The title page Volume: 32 |
|
CI03 | Correction of invention patent |