CN104052621A - 用于跨快速外围组件互连(pcie)段的平台管理消息的方法和系统 - Google Patents
用于跨快速外围组件互连(pcie)段的平台管理消息的方法和系统 Download PDFInfo
- Publication number
- CN104052621A CN104052621A CN201410255092.8A CN201410255092A CN104052621A CN 104052621 A CN104052621 A CN 104052621A CN 201410255092 A CN201410255092 A CN 201410255092A CN 104052621 A CN104052621 A CN 104052621A
- Authority
- CN
- China
- Prior art keywords
- point
- serial differential
- pcie
- interconnection
- segment identifier
- 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
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/382—Information transfer, e.g. on bus using universal interface adapter
- G06F13/385—Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
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)
Abstract
本发明公开一种用于跨快速外围组件互连(PCIE)段的平台管理消息的方法和系统,所述方法经过在计算系统的根复合体上实现的多个高速外围组件互连(PCIe)段来管理平台管理消息。
Description
技术领域
本发明的实施例通常涉及计算机系统的管理。更具体地,本发明的实施例涉及用于跨一个或多个快速外围组件互连(PCIe)段的平台管理信息传输的方法和系统。
背景技术
典型的服务器平台包括多个处理器插槽、存储器子系统和多个PCTExpress(PCIe)控制器。稳健的平台管理水平是将服务器与针对个人使用的平台区分开的关键属性之一,该针对个人使用的平台例如是个人计算机、膝上电脑、笔记本电脑、平板电脑、智能手机等等。服务器平台的管理典型地由基板管理控制器(BMC)协调。BMC允许经过使用应用或包括远程管理控制台的基于web的接口来远程地管理所述平台,并且使用到所述网络控制器的边带路径来促进所述BMC与所述远程管理控制台之间的通信。由于服务管理是复杂的任务,所以BMC让管理器引擎(ME)分担一些职责。ME配置为经由与平台组件在可应用互连上的通信来执行各种平台管理任务,并且将组件操作参数和相关联的数据传回到所述BMC。
几个可管理性应用要求相对高的带宽(~10MB/s)和各种组件之间低的延迟时间通信路径。媒体重定向(安装远程驱动)和视频重定向是这样的应用的两个示例。在当前的服务器平台中,使用诸如简化的媒体独立接口(RMII)的快速边带总线或内部总线来满足这些需要。专用边带总线增加了组件成本(更多引脚),并且限制了母板安置选项。内部总线限制了混搭配置,例如阻碍了使用分立的局域网(LAN)或分立的图形组件的媒体重定向。因此,需要一种用于可管理性应用的不同的方案。
管理组件传输协议(MCTP)是由分布式管理任务组(DMTF)平台管理开发的一种协议标准。它设计为支持构成平台管理子系统的不同智能硬件组件之间的通信,该平台管理子系统在受管理系统内部提供监控和控制功能。“MCTP PCIe供应商定义消息(VDM)传输绑定协议”是DMTF编写的规范,其定义了如何通过PCT Express(PCIe)总线发送MCTP分组。通过PCIe的MCTP使得能够在PCIe总线上复用高带宽管理流量。由于大多数管理组件已经与这些总线之一挂钩,所以这一方案不需要单独的高带宽总线,并且使能可管理性组件的更加灵活的布置。这些组件中的每一个能够是“MCTP端点”并且通过现有结构交换消息。当通过PCIe传输时,MCTP分组采取供应商定义消息(VDM)的形式。此外,能够将MCTP,或者更一般地将PCI Express VDM用于管理处理器复合体本身(例如,处理器热量、功率和误差)。然而,由于VDM格式内地址的长度限制,MCTP,或者更一般地PCI Express VDM,仅能够规定最多256条总线。
具有一个或多个处理器插槽的较大型服务器平台会包含多于256条PCIe总线。这一种类的服务器平台可以由单个BMC管理。为此,BMC必须能够寻址多于256条PCIe总线。外围组件互连特别兴趣组(PCI-SIG)是电子工业联盟,其规定了各种外围互连,包括PCIe计算机总线。PCI-SIG提出了引入PCIe总线段概念的PCI固件规范,其中每个PCIe总线段可以包括高达256条PCIe总线。服务器平台可以具有多个PCIe总线段,因而所有PCIe总线段一起可以包含多于256条PCIe总线。包含多个PCIe总线段的服务器平台对于基于VDM/MCTP的传输提出了挑战,因为所定义的VDM格式不包含用于PCIe总线段的字段。
附图说明
在所附的附图中通过示例而非限制的方式说明了本发明,附图中类似的标记指示相似的元件。应该注意到,本公开中对“某个”或“一个”实施例的不同引用不必针对同一个实施例,并且这样的引用意味着至少一个。进而,当结合某个实施例描述特定的特征、结构或特性时,要承认无论是否明确描述,结合其它实施例来影响这样的特征、结构或特性是本领域技术人员公知的。
图1A说明了支持大量PCI总线的问题。
图1B说明了根据本发明一个实施例使用段标识符来支持多于256条PCIe总线的方法。
图2A是说明PCIe上MCTP分组格式的框图。
图2B说明了根据本发明一个实施例的PCIe上MCTP分组格式的端点标识符字段的解释。
图3是说明根据本发明一个实施例跨多个段路由MCTP分组的实现的流程图。
图4是说明根据本发明一个实施例在计算系统中将提取的目标段标识符匹配到本地段标识符的实现的框图。
图5是说明根据本发明一个实施例利用MCTP分组来跨多个段路由消息的方法的另一流程图。
图6是说明根据一个实施例经过使计算系统中提取的目标总线标识符与多个处理器节点匹配来路由MCTP分组的实现的框图。
图7是说明根据一个实施例具有多处理节点支持的PCIe上MCTP分组格式的框图。
图8是说明根据本发明一个实施例在具有多个处理器节点和多个PCIe总线段的计算系统中路由MCTP分组的实现的框图。
图9是说明根据本发明一个实施例具有多处理节点和多个PCIe总线段支持的PCIe上MCTP分组格式的框图。
图10是说明根据本发明一个实施例合并跨多个PCIe总线段路由MCTP包的方法的计算系统的根复合体的框图。
图11说明了包括高速外围组件互连(PCIe)兼容架构的计算系统的实施例。
图12说明了包括分层栈的PCIe兼容互连架构的实施例。
图13说明了在互连架构内生成或接收的PCIe兼容请求或分组的实施例。
图14说明了用于PCIe兼容互连架构的发射机和接收机对的实施例。
图15说明了用于计算系统的框图的实施例。
图16说明了用于计算系统的框图的另一实施例。
具体实施方式
在接下来的描述中,阐述了许多具体细节。然而,要理解的是,可以在没有这些具体细节的情况下来实践本发明的实施例。在其它情况下,为了不模糊对这一描述的理解,没有详细地显示公知的电路、结构和技术。然而,本领域技术人员将意识到可以在没有这些具体细节的情况下来实践本发明。那些本领域公知常识,加上所包括的描述,将能够在不需要过多实验的情况下实现适当的功能。
在本说明书中,对“一个实施例”、“某个实施例”、“某个示例实施例”等等的引用指示所描述的实施例可以包括特定的特征、结构或特性,但是不必每一个实施例都包含所述特定的特征、结构或特性。而且,这样的短语不必指代同一个实施例。进而,当结合某个实施例描述特定的特征、结构或特性时,要承认本领域技术人员能够结合无论是否明确描述的其它实施例来实施这样的特征、结构或特性。
在随后的描述和权利要求中,可以使用词语“耦合”、“连接”及其衍生词。应该理解这些词语并不意在作为彼此的同义词。“耦合”用于指示彼此可以具有或不具有直接物理或电接触的两个或多个元件彼此协作或交互。“连接”用于指示在彼此耦合的两个或多个元件之间建立通信。
一个互连组织架构包括高速(PCIe)外围组件互连(PCI)架构。PCIe的主要目标是使来自不同供应商的组件及设备能够在开放架构中交互操作,跨越多个市场段;客户端(台式与移动)、服务器(标准与企业)、嵌入式与通信设备。PCI Express是针对各种各样未来的计算及通信平台定义的高性能通用I/O互连。某些PCI属性,例如其使用模型、负载-存储架构和软件接口,通过其修订版来维护,然而高度可扩展的全串行接口已经代替了之前的并行总线实现。更近版本的PCI Express利用了点对点互连、基于交换机的技术和分组协议的发展来提供新级别的性能和特征。功率管理、服务质量(QoS)、热插拔/热交换支持、数据完整性及误差处理都属于由PCIExpress支持的某些高级特征。
参照图11,说明了由互连一组组件的点对点链路构成的组织的实施例。系统1100包括耦合到控制器中心1115的处理器1105和系统存储器1110。处理器1105包括任意处理元件,例如微处理器、主机处理器、嵌入式处理器、协处理器或其它处理器。处理器1105经过前端总线(FSB)1106耦合到控制器中心1115。在一个实施例中,FSB1106是如下描述的串行点对点互连。在另一实施例中,链路1106包括与不同的互连标准兼容的串行差分互连架构。
系统存储器1110包括任意存储器设备,例如随机存取存储器(RAM)、非易失性(NV)存储器或可由系统1100中的设备存取的其它存储器。系统存储器1110经过存储器接口1116耦合到控制器中心1115。存储器接口的示例包括双倍数据速率(DDR)存储器接口、双通道DDR存储器接口和动态RAM(DRAM)存储器接口。
在一个实施例中,控制器中心1115是高速外围组件互连(PCIe或PCIE)互连层级中的根中心、根复合体或根控制器。控制器中心1115的示例包括芯片集、存储控制器中心(MCH)、北桥、互连控制器中心(ICH)、南桥以及根控制器/中心。通常术语芯片集指代两个物理上分离的控制器中心,即,耦合到互连控制器中心(ICH)的存储器控制器中心(MCH)。注意到,当前系统经过包括集成有处理器1105的MCH,同时控制器1115按照如下所述的类似方式与I/O设备通信。在某些实施例中,可选地经过根复合体1115来支持对等路由。
这里,控制器中心1115经过串行链路1119耦合到交换机/桥1120。输入/输出模型1117和1121,也可以被称为接口/端口1117和1121,包括/实现分层协议栈以便提供控制器中心1115与交换机1120之间的通信。在一个实施例中,多个设备能够耦合到交换机1120。
交换机/桥1120将分组/消息向上,即,在朝向根复合体的层级上面,从设备1125路由到控制器中心1115并且向下,即,在远离根控制器的层级下面,从处理器1105或系统存储器1110路由到设备1125。在一个实施例中,交换机1120被称为多个虚拟PCI到PCI桥设备的逻辑组合体。设备1125包括耦合到电子系统的任一内部或外部设备或组件,例如I/O设备、网络接口控制器(NIC)、外接卡、音频处理器、网络处理器、硬驱、存储设备、CD/DVD ROM、监视器、打印机、鼠标、键盘、路由器、便携式存储设备、火线设备、通用串行总线(USB)设备、扫描仪和其它输入/输出设备。经过在PCIe的术语中,例如设备被称为端点。尽管未具体示出,但是设备1125可以包括支持传统或其它版本PCI设备的PCIe到PCI/PCI-X桥。PCIe中的端点设备通常被分类为传统、PCIe或根复合体集成端点。
图形加速器1130也经过串行链路1132耦合到控制器中心1115。在一个实施例中,图形加速器1130耦合到MCH,该MCH其耦合到ICH。交换机1120,并且因此I/O设备1125,然后耦合到ICH。I/O模块1131和1118也实现分层协议栈以便在图形加速器1130和控制器中心1115之间通信。类似于上面的MCH讨论,图形控制器或图像加速器1130本身可以集成在处理器1105中。
转到图12,说明了分层协议栈的实施例。分层协议栈1200包括任意形式的分层通信栈,例如快速路径互连(QPI)栈、PCIe栈、下一代高性能计算互连栈或其它分层栈。尽管下面紧接着的参照图11-14的讨论与PCIe栈相关,但是可以将相同的概念应用于其它互连栈。在一个实施例中,协议栈1200是PCIe协议栈,包括事务层1205、链路层1210和物理层1220。可以将接口,例如图1中的接口1117、1118、1121、1122、1126和1131,表示为通信协议栈1200。通信协议栈的表示还可以被称为实现/包括协议栈的模块或接口。
PCI Express使用分组在组件之间通信信息。在事务层1205和数据链路层1210中形成分组,以便将所述信息从发射组件带至接收组件。当所传输的分组流经其它层时,使用在那些层处理分组所必需的额外信息来扩展它们。在接收侧发生相反的过程,并且将分组从它们的物理层1220表示转换到数据链路层1210表示,并且最终(对于事务层分组)成为能够由接收设备的事务层1205处理的形式。
事务层
在一个实施例中,事务层1205用于在设备的处理核心与互连架构之间提供接口,例如数据链路层1210和物理层1220。在这一方面,事务层1205的主要职责是组装和分拆分组(即,事务层分组或TLP)。事务层1205典型地管理针对TLP的基于信用的流控制。PCIe实现分割的事务,即具有通过时间分离的请求和响应的事务,在目标设备收集针对所述响应的数据的同时,允许链路携带其它流量。
此外,PCIe利用基于信用的流控制。在这一方案中,设备针对事务层1205中的每一个接收缓冲器公布初始信用量。在所述链路相对端处的外部设备,例如图1中的控制器中心515,对由每一个TLP消耗的信用数量进行计数。如果事务没有超出信用限制,则可以传送该事务。一旦接收到响应,就恢复信用量。信用方案的优点是信用返回的延迟时间不会影响性能,假如不遇到信用限制。
在一个实施例中,四个事务地址空间包括配置地址空间、存储器地址空间、输入/输出地址空间和消息地址空间。存储器空间事务包括一个或多个读请求及写请求,以便将数据传送到存储器映射单元/从其传送。在一个实施例中,存储器空间事务能够使用两种不同的地址格式,例如以32位地址为例的短地址格式,或以64为地址为例的长地址格式。配置空间事务用于访问PCIe设备的配置空间。到配置空间的事务包括读请求和写请求。消息空间事务(或者简单的是消息)定义为支持PCIe代理之间的带内通信。
因此,在一个实施例中,事务层1205组装分组头/有效载荷1206。可以在PCIe规范网站的PCIe规范中找到用于当前分组头/有效载荷的格式。
快速参照图13,说明了PCIe事务描述符的实施例。在一个实施例中,事务描述符1300是用于携带事务信息的机制。在这一方面,事务描述符1300支持系统中事务的标识。其它的潜在用途包括跟踪缺省事务排序的修改以及事务与信道的关联性。
事务描述符1300包括全局标识符字段1302、属性字段1304和信道标识符字段1306。在所说明的示例中,全局标识符字段1302被描述为包括本地事务标识符字段1308和源标识符字段1310。在一个实施例中,全局事务标识符1302对于所有未完成的请求是唯一的。
根据一种实现,本地事务标识符字段1308是由请求代理生成的字段,并且它对于要求针对那个请求代理的完成的所有未完成请求是唯一的。而且,在这一示例中,源标识符1310唯一地识别PCIe层级内的请求方代理。因此,本地事务标识符1308字段连同源ID1310提供事务在层级范围内的全局标识。
属性字段1304规定了事务的特性和关系。在这一方面,属性字段1304潜在地用于提供允许修改事务缺省处理的额外信息。在一个实施例中,属性字段1304包括优先级字段1312、保留字段1314、排序字段1316和非窥探字段1318。这里,发起方可以修改优先级子字段1312以便向所述事务分配优先级。保留属性字段1314是留给未来的或者供应商定义的用途。可以使用所述保留属性字段来实现使用优先级或安全属性的可能使用模型。
在这一示例中,排序属性字段1316用于提供可选信息,其传达可以修改缺省排序规则的排序类型。根据一个示例实现,排序属性“0”表示要应用的缺省排序规则,其中排序属性“1”表示松散排序,其中写能够在同一方向传递写,并且读完成能够在同一方向传递写。窥探属性字段1318用于确定是否窥探事务。如图所示,信道ID字段1306标识与事务相关联的信道。
链路层
链路层1210,也被称为数据链路层1210,用作事务层1205和物理层1220之间的中间级。在一个实施例中,数据链路层1210的职责是为在两个组件之间交换事务层分组(TLP)提供可靠的机制,链路。数据链路层1210的一侧接受由事务层1205组装的TLP,应用分组序列标识符1211,即标识号或分组号,计算并应用误差检测码,即CRC 1212,向物理层1220提交修改的TLP,用于跨物理设备传送到外部设备。
物理层
在一个实施例中,物理层1220包括逻辑子块1221和电学子块1222以便将分组物理地传送到外部设备。这里,逻辑子块1221负责物理层1221的“数字”功能。在这一方面,所述逻辑子块包括为物理子块1222的传送准备传出信息的传输部分以及在将接收到的信息传递到链路层1210之前标识并准备该接收到的信息的接收机部分。
物理块1222包括发射机和接收机。逻辑子块1221为所述发射机供应符号,所述发射机将该符号串行化并且传送到外部设备。所述接收机提供有来自外部设备的串行化符号,并且将接收到的符号转换为比特流。对所述比特流去串行化,并且供应到逻辑子块1221。在一个实施例中,运用了8b/10b发射码,其中发射/接收十位符号。这一,特殊符号用于使用帧1223来设计分组。此外,在一个示例中,所述接收机还提供从进来的串行流恢复的符号时钟。
如上所述,尽管参照PCIe协议栈的具体实施例讨论了事务层1205、链路层1210和物理层1220,但是分层协议栈并不局限于此。实际上,可以包括/实现任意分层协议。作为示例,表示为分层协议的端口/接口包括:(1)组装分组的第一层,即事务层;排序分组的第二层,即链路层;以及发射分组的第三层,即物理层。作为具体示例,利用了常规标准接口(CSI)分层协议。
接下来参照图14,说明了PCIe串行点对点组织的实施例。尽管说明了PCIe串行点对点链路的实施例,但是串行点对点链路并不局限于此,因为它包括用于发射串行数据的任意发射路径。在所示的实施例中,基本的PCIe链路包括两个低压差分驱动信号对:发射对1406/1411和接收对1412/1407。因此,设备1405包括用于向设备1410发射数据的发射逻辑1406和用于从设备1410接收数据的接收逻辑1407。换言之,在PCIe链路中包括两条发射路径,即路径1416和1417,和两条接收路径,即路径1418和1419。
发射路径指的是用于发射数据的任意路径,例如传输线、铜线、光学线、无线通信信道、红内线通信链路或其它通信路径。两个设备,例如设备1405和设备1410,之间的连接指的是链路,例如链路1415。链路可以支持一个通道,每一个通道表示一组差分信号对(一对用于发射,一对用于接收)。为了调整带宽,一条链路可以聚合多条标记为xN的多个通道,其中N是任意所支持的链路宽度,例如1、2、4、8、12、16、32、64或更宽。
差分对指的是用于发射差分信号的两条发射路径,例如线路1416和1417。作为示例,当线路1416从低压电平切换到高压电平,即上升沿时,线路1417从高逻辑电平驱动到低逻辑电平,即下降沿。差分信号潜在地例示了更好的电学特性,例如更好的信号完整性,即交叉耦合、电压过冲/下冲,响铃等等。这允许更好的定时窗,能够实现更快的传输频率。
如上面讨论的,管理组件传输协议(MCTP)是用于定义如何在PCIExpress(PCIe)总线上发送MCTP分组的协议。MCTP独立于基础的物理总线属性和在所述总线上使用的“数据-链路”层消息传送。用于跨给定介质的MCTP通信的物理和数据-链路层方法由姐妹篇“传输绑定”规范定义,例如PCIe供应商定义消息(VDM)上的MCTP和系统管理总线或I2C上的MCTP(SMBus)。这一方案能够定义未来的传输绑定以便支持额外的总线,例如通用串行总线(USB)、简化媒体独立接口(RMII)及其它,而不会影响基本MCTP规范。DMTF出版了涉及包括所述MCTP基本规范的涉及MCTP的各种规范。
当在PCIe总线上传输时,MCTP分组采取供应商定义消息(VDM)的形式,并且这一种类的实现通常被称为PCIe上MCTP。DMTF编写的“MCTPPCIe VDM传输绑定规范”定义了PCIe上MCTP的实现细节。这一规范包括针对分组格式、物理地址格式、消息路由和用于PCIe上MCTP VDM通信的发现机制的定义。
处理器的PCIe根复合体可以路由MCTP分组。支持PCIe上MCTP的处理器架构包括用于根据MCTP基本规范路由MCTP消息分组的各种设施。MCTP中数据传输的基本单元是“MCTP分组”。一个或多个MCTP分组用于传输“MCTP消息”。所述基本MCPT协议定义了用于MCTP分组的公共字段以及如何使用它们。这包括定义了字段,例如源和目的地地址字段,标识哪些分组属于特定MCTP消息的字段,以及定义要在MCTP消息中携带什么类型的通信流量的字段。所述基本协议还定义了用于组装MCTP消息、路由MCTP分组以及处理诸如丢弃或丢失的分组的错误状况的过程。MCTP消息可以传输平台管理信息,在本文被称为平台管理消息。
MCTP端点是设备内端接MCTP的通信协议并且处理MCTP控制命令的功能元件。MCTP使用用于寻址并且路由到和自端点的MCTP分组的被端点ID(EID)的逻辑地址。在MCTP中,将总线定义为共享公共物理层地址空间的平台组件之间的互连。如本文在下面详细讨论的,经过诸如PCIe总线段的总线段来传输MCTP消息对于PCIe上MCTP是一种挑战。
每一条MCTP总线都具有总线所有者。总线所有者负责向那条总线上的任意MCTP设备分配EID。总线所有者也可以具有附加的媒体特有职责,例如设备发现和物理地址的分配。MCTP桥是连接到两条或更多条MCTP总线并且负责在那些总线之间路由MCTP分组的设备。桥典型地也是对于其连接到的至少一条总线的总线所有者。
MCTP允许多个桥、总线和总线所有者互连以便形成“MCTP网络”。因为总线所有者负责为它拥有的总线上的任意设备分配EID,所以MCTP提供一种机制,使得能够向总线所有者分配端点ID的池,该端点ID的池可以被指派或分配到其它设备。用于整个MCTP网络的EID的最终源来自被称为“最高总线所有者”的地方。在一个实施例中,总线所有者是管理引擎(ME)。
可以基于MCTP分组的EID来路由这些MCTP分组。MCTP桥维持被称为“路由表”的一组信息,其跟踪物理地址和EID与其相关联的总线之间的关系。当接收到进来的分组时,这一信息用于将所述分组路由到合适的总线。如果源和目标总线使用不同的物理介质,则所述桥按照目标介质所要求的来转换所述分组的物理层格式。所述路由表中的信息还用于处理请求以便将EID解析为物理地址并且支持针对他们的路由信息查询单个桥和总线所有者的能力。该后一种能力提供了获取MCTP网络的路由配置的快照的一种方式。在每一个分组的基础上,所述MCTP桥功能元件基于端点寻址信息来转发分组。否则,桥不解释消息内容,或者处理针对被路由的分组的消息类型特有的协议行为。桥不会中途组装或拆分被路由的分组。仅分别由所述目的地和源端点来处理消息组装和拆分。
MCTP消息中的通信有效载荷的类型由被称为“MCTP消息类型”的细目来标识。MCTP设计为能够跨公共通信介质携带用于多种消息类型的分组。所述MCTP基本协议规范包括对于MCTP控制消息的消息类型和支持供应商定义的MCTP消息的消息类型的定义。由MCTP消息的头中携带的消息类型字段来标识不同的消息类型。
所述传输绑定规范是描述如何在特定的物理介质上实现MCTP的文档。这包括针对所述介质的MCTP分组格式的定义,源和目的地物理寻址处理、物理层数据完整性和媒体特有时序参数。
图1A说明了支持大量PCI总线的问题。在图1A中,计算系统包含多于256个PCIe总线号。向计算系统的某些端点分配分别在标记102-108处的PCI总线号0、1、255和282。总线所有者190(例如,BMC)控制MCTP分组路由。如果总线号用于路由MCTP分组152,则总线号的标识字段需要多于8位长。然而如下面将更加详细讨论的,MCTP分组VDM仅包含用于路由分组的8位。因而,可以使用不高于256的总线号来路由分组,并且例如不能够寻址在标记108处的PCI总线号282。
MCTP正在越来越多地用于计算系统中,包括较大的服务器平台。某些计算系统用完了针对所支持的PCI总线的地址。在它们用完针对MCTPEID的地址之前,它们可能用完了针对所支持的PCI总线的地址。PCI总线与EID之间的地址使用差异的原因众多,下面列出几个:
(1)由于对齐要求,浪费了大量的PCI Express总线号。例如,具有集成PCI Express的某些处理器要求每处理器最少32条总线,即使可能较少的PCI Express输入/输出(IO)设备附接到每一个处理器。
(2)在PCI Express架构中,交换机逻辑上呈现为两级PCI桥。这意味着至少一个总线号对于端点使用不可用。
(3)每一个PCI Express IO设备将占据总线号,但是可能不是MCTP端点。
(4)诸如SR-IOV(单根IO虚拟化)之类的技术要求软件向单个端点分配多于一条总线。
(5)能够热插拔(或热交换)的平台,允许在不关闭平台的情况下更换平台的组件,要求软件超额分配总线号。
实际上,为了映射所有IO设备,存在现在要求多于256条PCIe总线的4到8个插槽服务器平台。单个BMC可以管理这些种类的平台,其可以包括IO扩展底盘。大量的PCIe总线可以被分段为PCIe总线段。PCIe总线段是PCIe总线的逻辑分组。一个段与其它段共享公共物理空间。每一个PCIe总线段可以包括高达256条总线。由于较大的系统/平台可能具有多个PCIe总线段,因策所述多个PCIe总线段能够寻址所述较大的系统/平台所包含的多于256条总线。
图1B说明了根据本发明一个实施例使用段标识符来支持多于256条PCIe总线的方法。在计算系统中,在图1B中,所述计算系统包含多于256个PCIe总线号。然而,向每一条PCIe总线分配端点ID(EID)与段标识符的组合,并且EID与段标识符的组合用于路由分组。在这一示例中,PCIe总线0由标记192处的EID10和段0标识,PCIe总线1由标记194处的EID11和段0标识。类似地,PCIe总线128由标记196处的EID58和段0标识,PCIe总线282由标记198处的EID68和段1标识。当在总线所有者190处路由MCTP分组192时,它可以仍然使用8位来标识PCIe总线,但是它使用EID和段标识符的组合,并且现在它能够寻址每一条PCIe总线,甚至标记198处的那条。
图2A是说明PCIe上MCTP分组格式的框图。所述字段被规定用于使用PCIe VDM来携带MCTP分组。由标记204处的“MCTP传输头”和标记206处的“MCTP分组有效载荷”所分组的字段是对于所有MCTP分组和消息的公共字段,并且由MCTP基本规范规定。所述PCIe VDM头格式对于在PCIe上发送的MCTP消息共用。它包括涉及基本MCTP消息结构的各种字段,以及能够在其中输入供应商特有信息的字段。
MCTP分组有效载荷206始于字节16,并且能够扩展到高达字节80,产生高达64字节的总有效载荷。这一部分分组也与PCIe VDM数据相对应。有兴趣讨论在PCIe总线段上进行路由,所述PCIe VDM头包含两个地址字段。一个是标记212和214处的物理地址字段,其包括用于PCI请求方ID(在标记212处)的字段和用于PCI目标ID(在标记214处)的字段。另一个是标记222和224处的逻辑地址字段,其包括用于目的地EID(在标记222处)的字段和用于源EID(在标记224处)的字段。每一个地址字段都包含其自身的限制,如下面讨论的,并且因而能够仅寻址最多256个实体。
对于物理地址字段,MCTP VDM使用8位总线号、5位设备号和3位功能号(被称为BDF)来规定所述请求方以及目标的PCIe地址。具体地说,图2A中说明的VDM中的字节4-5保持请求方BDF,并且字节8-9保持目标BDF。因而,PCIe Express根复合体能够使用8位(28=256条总线)在256条总线内路由MCTP分组。
对于标记222和224处的逻辑地址字段,图2A中说明的VDM中的字节13和14分别携带针对目的地和源的EID。8位EID字段将MCTP网络限制到256个端点。如本文上面讨论的,EID由MCTP总线所有者分配,并且EID可能不承载与BDF的任何关系。在一个实施例中,将管理引擎(ME)指定为MCTP总线所有者,并且总线所有者维持EID与BDF之间的映射。
因而,物理地址字段和逻辑地址字段二者都仅能够寻址最多256个实体(所述实体分别是总线和EID)。然而,由于PCIe VDM不包含段字段,所以本领域公知的根复合体实现不能够跨PCIe总线段传输MCTP VDM。这在多个PCIe总线段平台中会是问题,因为受管理设备(例如,网络接口卡(NIC))的PCIe总线段号通常不同于管理控制器(例如,BMC或ME)段号。现有系统可以按照两种方式之一来解决该问题:
(1).MCTP规范定义了能够用于跨PCIe总线段路由MCT的MCTP桥。然而,MCTP桥要求具有复杂拓扑的额外硬件控制器并且因而是不期望的。例如,BMC能够用作桥,但是跨8个插槽或8个PCIe总线段系统来桥接MCTP将要求具有8个PCIe端口的BMC芯片,每一个连接到不同的插槽。这一种类的实现非常昂贵。
(2).可以修改PCIe VDM定义以便包括段字段。这一方案将要求MCTP端点对所述段字段进行解码,而目前的PCIe端点不知道PCIe段标识符。这一方式可以是长期解决方案,但是它对于传统MCTP端点将不起作用。
在将多个节点管理为单个单元的情况下,在多计算机系统(例如,微服务器)中可能发生类似的问题。这些节点在可管理性操作(例如,跨节点重新平衡功率预算)期间彼此通信。每一个节点运行它自己的操作系统(OS)实例和它自己的PCI总线计数器的实例。由于总线号混淆,所以节点间MCTP通信不能够使用BDF,因而地址用尽会导致PCIe总线段和在多计算机系统中跨PCIe总线段路由的需要。
图2B说明了根据本发明一个实施例的PCIe上MCTP分组格式的端点标识符字段的解释。图2B中的PCIe上MCTP分组格式类似于图2A,并且可以类似地分别分析或解释所有字段,除了标记252和254。在标记252处,该字段现在指示目标端点和目标段标识符二者,而不是如图2A中标记222处说明的仅指示目的地端点。类似地,标记254指示源端点和源段标识符二者。
因而,在一个实施例中,利用PCIe上MCTP分组的源和目的地EID字段的一部分来分别标识源PCIe总线段和目标PCIe总线段。每一个PCIe总线段具有不同范围的端点标识符,每一个端点标识符的范围小于256。然而,每一个PCIe总线段中的总线标识符仍然可以具有全范围256。例如,对于仅具有两个PCIe总线段的处理器,EID字段中的单个位可以用于标识PCIe总线段。下表说明了总线号和EID号的范围,EID字段的最高位用于标识PCIe总线段。
表1 PCIe总线段和总线/EID范围
PCIe总线段和总线号范围 | 分配给MCTP端点的EID范围 |
段0,总线0-255 | 0-127 |
段1,总线0-255 | 128-255 |
在其它实施例中,EID字段中的更多位可以用于标识PCIe总线段。例如,EID字段内的二、三、四位、五位、甚至更多位可以用于标识PCIe总线段。此外,用于PCIe总线段标识的一个或多个位不需要是较高位或较低位。它们可以由处理器/系统/平台根据需要来定义。实际上,用于PCIe总线段标识的所述位可以不彼此相邻。然而,用于PCIe总线段的EID字段越多,每一个段能够寻址的MCTP端点就越少。如本文上面讨论的,在许多情况下,系统在用完MCTP端点之前就用完了PCIe总线号。在这些情况下,除了MCTP端点标识之外,还利用用于PCIe总线段标识的EID字段是跨多个段路由MCTP分组的一种有效方式。
图3是说明根据本发明一个实施例跨多个段路由MCTP分组的实现的流程图。图3的操作可以由计算系统的处理器非核心(非核心指代不是计算引擎的处理器裸片中的元件)实现。例如,可以在根复合体中实现图3的操作。
所述操作开始于操作302,其中在根复合体处接收PCIe管理消息。所述PCIe管理消息作为MCTP分组传输,并且利用VDM格式的实施例。流程从操作302移至操作304,其中所述根复合体确定是否将接收到的PCIe管理消息的VDM格式的目的地EID字段的一部分解释为PCIe总线段。在一个实施例中,所述确定可以基于计算系统的基本输入/输出系统(BIOS)内的设置。所述BIOS内的设置可以进一步指示要将EID字段的哪一部分(例如,EID字段内的哪些位)解释为PCIe总线段标识符。如果根复合体确定不将目的地EID字段解释为PCIe总线段标识符,则所述流移至操作314以便执行可选的执行。由于现有技术已经公开了使用目的地EID字段路由MCTP分组,因此所述可选的执行的细节在本说明书的范围之外。
如果根复合体确定将目的地EID字段解释为PCIe总线段标识符,则流程从操作304移至操作306,其中根复合体从所述目的地EID字段提取PCIe总线段标识符。在一个实施例中,所述计算系统的BIOS内的设置确定了要被提取的位。在另一实施例中,要被提取的位是预定的(即,缺省)而不要求所述BIOS内的设置。流程接着移至操作308,其中根复合体将接收到的PCIe管理消息路由到由所述PCIe总线段标识符标识的PCIe总线段。在一个实施例中,为了路由所述PCIe管理消息,所述根复合体比较存储在寄存器中的指示当前PCIe总线段的段标识符值的值。如果从用于目的地PCIe总线段标识符的目的地EID字段的部分提取的位包含与所述寄存器中的值相同的值,则将在目前的PCIe总线段内路由所接收到的PCIe管理消息。否则,将所述消息路由到不同的PCIe总线段。
注意到,当对PCIe管理消息打包时,可以将源段ID插入EID字段中。在具有多个处理器的系统中,具有源段ID插入的PCIe管理消息的创建可以由另一处理器执行。所述计算系统可以跨多个PCIe总线段进行路由,只要计算系统的元件对源EID字段中的源段ID保留的特定位位置和为VDM格式的目标段ID保留的特定位位置达成协议。
还注意到,可以避开插入一部分EID字段并且将其解释为PCIe总线段标识符。例如,BIOS中的设置可以指示是否在创建MCTP分组时将PCIe总线段标识符插入在源EID字段中,和/或是否将一部分目标EID字段解释为目标PCIe总线段标识符。
在根复合体处,能够按照各种方式进行MCTP分组的路由。在一个实施例中,执行将MCTP分组的目标段标识符与本笃段标识符相匹配。图4是说明根据本发明一个实施例在计算系统中将提取的目标段标识符匹配到本地段标识符的实现的框图。所述比较与找出匹配可以被称为目标段标识符查找。在一个实施例中,经过存储在处理器非核心中并且由计算系统的BIOS配置的查找表来执行所述查找。
标记402处的比较器用于目标段标识符查找。在一个实施例中,比较器402从本地段标识符寄存器(LSIR)接收一个值。比较器402从目标段寄存器408接收目标段标识符。目标段ID实体与比较器402之间的单线路代表两条线连接,其由每一个条单线路附近的数字2进行符号化表示。除非以其它方式说明,标有数字的所有单线路符号化表示了本说明书附图中单线路的物理连接数量。在这一实施例中,最高的2个位,位6和7(在目标段ID408处标记为[7∶6])表示接收到的MCTP分组的目标段ID。所述目标段ID寄存器从MCTP VDM头406提取所接收到的MCTP分组的PCIe目标段ID。比较器402将所提取的位与LSIR452中的值进行比较。比较器402接着确定这一MCTP VDM是否意在用于本地插槽。如果MCTP VDM意在用于本地插槽,则它将被发送到本地插槽的PCI快速端口。否则,它将被发送到图6所示的目标节点ID查找过程。注意到,取决于所述计算系统包含的PCIe总线段的数量,可以从接收到的MCTP管理消息的MCTPVDM头提取更多或更少的位。
图4中的实现可以在具有包括多于256条PCIe总线的单个处理器的计算系统中实现,并且因而多个PCIe总线段用于管理这些PCIe总线上的所有适用设备。
在一些实施例中,计算系统包含多个处理器。所述多个处理器经过点对点处理器互连耦合在一起。例如,可以经过英特尔的快速路径互连(QPI)、通用系统接口(CSI)或任何其它特别设计的互连将处理器及其相关联的处理器插槽耦合在一起。对于具有多个处理器的计算系统,现有技术已经公开了用于在点对点处理器互连上路由PCIe上MCTP消息的方法。例如,LukeChang、Mahesh Natu、James R.Vash、Michelle M.Sebot和Robert J Safranek于2012年6月25日递交的发明名称为“Tunneling Platform ManagementMessages Through Inter-processor Interconnects”的非临时性美国专利申请13/532,085zhong公开了在QPI上隧道化MCTP分组。在实现在QPI上隧道化MCTP分组的计算系统中,所述计算系统可以使用分PCI请求字段的一部分来查找目标QPI处理器节点ID。接着,所述计算系统的BIOS配置MCTP源地址解码器(SAD),同时它将PCI总线号分配到处理器插槽。因而,可以将MCTP分组传输到目标QPI处理器。然而,所述传输MCTP分组忽视了跨PCIe总线段的路由。
图5是说明根据本发明一个实施例在计算系统中将提取的目标段标识符匹配到本地段标识符的实现的另一流程图。根复合体考虑在具有多个PCIe总线段和多个处理器节点/插槽的系统内路由MCTP分组。
方法500开始于操作502,其中接收PCIe管理消息。所述PCIe管理消息作为MCTP分组传输,并且MCTP分组利用VDM格式的实施例。接着在标记504处,所述根复合体确定是否将接收到的PCIe管理消息的VDM格式的目的地EID字段的一部分解释为PCIe总线段,或者将VDM格式内的所接收到的PCIe管理消息的PCI目标标识符字段的一部分解释为处理器节点标识符。
在一个实施例中,所述确定可以基于所述计算系统的基本输入/输出系统(BIOS)内的设置。所述BIOS内的设置可以进一步指示要将EID字段的哪一部分解释为PCIe总线段标识符。此外,当要将PCI目标标识符字段的一部分解释为处理器节点标识符时,所述设置可以指示要被解释的PCI目标标识符字段的部分。当确定要将PCI目标标识符字段的一部分解释为处理器节点标识符时,在操作510处执行可选的执行。如本文上面讨论的,所述可选的执行在本领域是公知的。
当如果确定要将VDM格式的一部分目的地EID域字段的一部分解释为PCIe总线段标识符时,在操作506处从所述目的地EID域字段提取所述PCIe总线段标识符。在一个实施例中,所述计算系统的BIOS内的设置确定要被提取的位。在另一个实施例中,要被提取的位是预定的(即,缺省)而无需所述BIOS内的设置就预定(例如,缺省)所要提取的位。接着在标记508处,将接收到的PCIEe管理消息路由到由所述PCIe总线段标识符所标识的PCIe总线段。在一个实施例中,为了路由所述PCIe管理消息,该方法比较存储在寄存器中存储的值,所述值指示当前PCIe总线段的段标识符值。如果从用于目的地PCIe总线段标识符的目的地EID字段的部分提取的位包含与所述寄存器中的值相同的值,则将在当前PCIe总线段内路由所接收到的PCIe管理消息。否则,将该消息路由到不同的PCIe总线段。
图6是说明根据一个实施例经过在具有多个处理器节点的计算系统中匹配所提取的目标总线标识符来路由MCTP分组的实现的框图。由于存在多于一个处理器节点,因此需要目标节点标识符查找。所述目标节点标识符实体包含8个目标标识符寄存器620-627,分别存储目标标识符值目标[0]-[7]。所述目标标识符寄存器可以由所述计算系统的BIOS配置。接收到的MCTP分组包含MCTP VDM头606,可以从其提取目标总线标识符。提取目标总线ID,并且将其存储在目标总线寄存器608中。在这一实施例中,3个较高位(位7∶5)用于指示所述目标总线标识符,所述较高位在目标总线608处被标记为[7∶5]。因而,提取位7∶5中的值,并且将其存储在目标总线寄存器608中。接着,所述计算系统的BIOS可以配置MCTP SAD602以便向处理器/插槽节点分配PCI总线号。MCTP SAD602考虑将存储在目标总线寄存器608中的目标总线号字段的位7∶5作为查找所述目标的节点标识符的索引。
图7是说明根据一个实施例具有多处理器节点支持的另一PCIe VDM分组格式的框图。这一格式不遵循MCTP,但是能够使用在之前段落中描述的机制来跨处理器对它进行路由。这一实施例说明了VDM头与QPI隧道分组头之间的字段映射。所述映射的细节超出了本说明书的范围。在图7中,对字节12的使用不同于图2所示。PECI消息头702、写字节704和VDM格式706特有的VDM码现在占据了字节12-15。然而,如本文上面讨论的,现有技术没有公开识别MCTP分组的PCIe总线段的方法。这一实施例说明了尽管考虑了跨多个处理器节点的VDM分组路由,但是这些多个处理器节点需要位于同一个PCIe总线段中,当多于256个受管理设备耦合到所述计算系统时,这会是一个限制。
图8是说明根据本发明一个实施例在具有多个处理器节点和多个PCIe总线段的计算系统中路由MCTP分组的实现的框图。图8类似于图6,并且相同或相似的标记指示具有相同或相似功能的元件或组件。本文下面讨论图8与图6之间的区别。尽管图6的实施例描述了仅提取目标总线标识符字段位7∶5,但是在图8的实施例中,提取了目标总线标识符字段位7∶5和目标EID字段位7∶5。在这一实施例中,将目标EID字段的这3个高位用于目标PCIe总线段标识符。将提取的位存储在解码寄存器854中。在这一实施例中,所述解码寄存器854包含用于给定MCTP分组的六个位:三个位用于目标总线标识符,并且三个位用于目标段标识符(从目标EID字段提取)。选择器858用于选择由MCTP源地址解码器(SAD)802利用的用于所述目标总线标识符的三个位或者用于目标段标识符的三个位。选择器858的设置可以由所述计算系统的BIOS配置。所述计算系统进一步包括本地段标识符寄存器852以便存储用于标识本地段的本地PCIe总线段标识符。
当选择器858从解码寄存器854选择段标识符时,MCTP SAD802对于接收到的MCTP分组查找目标段。结果,所述MCTP分组可以跨多个PCIe总线段路由。当选择器858从解码寄存器854选择目标总线标识符时,MCTPSAD802按照参照图6描述的类似方式对于接收到的MCTP分组查找目标处理器/插槽节点标识符。
注意到,图8说明了从所述目标总线标识符字段和目标EID字段提取相同数量的位。在其它实施例中,可以从所述目标总线标识符字段和目标EID字段提取不同数量的位。例如,计算系统可以从所述目标EID字段取3个位,因为存在高达8个PCIe总线段,同时当没有配置多个PCIe总线段时,所述计算系统仅从所述目标总线标识符字段取2个位。
所述计算系统的总线计数器(enumerator)可以分配所述PCI段和总线号。MCTP总线所有者可以分配EID,以使得它能够利用图8描述的逻辑。所述分配可以取决于与每一个处理器节点和段耦合的受管理设备。表2说明了附接到给定处理器的用于PCIe总线号的范围和EID范围的分配。
表2具有多个处理器的PCIe总线段和总线/EID偏置分布
节点ID5具有更多的附接的输入/输出,并且向其分配256条总线。随着总线的数量越多,EID池也越大,为64。在某些实施例中,节点ID 0可以得到较大的EID池,因为节点ID 0代表处理用于SM总线上MCTP端点的EID的处理器插槽0。
表3说明了具有四个处理器和四个PCIe总线段的系统中较简单的分配。在这一情况下,在4个插槽之间平均地划分EID。
表3具有多个处理器的PCIe总线段和总线/EID均匀分布
图9是说明根据本发明一个实施例具有多个处理器节点和多个PCIe总线段支持的PCIe上MCTP分组格式的框图。图9类似于图7。但是图7表示的是适配于多个处理器节点的PCIe VDM格式,而没有考虑多个PCIe总线段支持。因而在图9中,在字节13中插入目标端点标识符+目标PCIe总线段标识符902,在字节14中插入源端点标识符+源PCIe总线段标识符904。VDM码906可以指示不同的格式码。在一个实施例中,还更新了其它字段。例如,MCTP分组的头可以嵌入指示EID字段嵌入PCIe总线段标识符的码。
图10是说明根据本发明一个实施例并入跨多个PCIe总线段路由MCTP分组的方法的计算系统的根复合体的框图。根复合体1000与存储器1200、MCTP端点1072-1074、接口代理1044、MCTP总线所有者1043和BIOS1048交互。在某个实施例中,根复合体1000作为非内核心组件集成在处理器内。根复合体1000经过接口代理1044与处理器交互。在某个实施例中,集成输入/输出(IIO)是所利用的集成接口工具1044的功能。根复合体1000与用于路由MCTP分组的MCTP总线所有者1043、接口工具1044和BIOS1048交互。根复合体1000包含在标记1062-1064处的多个PCIe总线根端口。在标记1072-1074处的MCTP端点被附接到根端口。在某个实施例中,根复合体1000可以包含多于256条总线,在这种情况下,需要将这些总线分类为不同的PCIe总线段。例如为了管理效率,当PCIe总线计数少于256时,根复合体1000可以将PCIe总线分类为不同的PCIe总线段。
MCTP消息逻辑1042接收并传输MCTP分组。所述MCTP分组可以包含PCIe管理消息,并且要跨多个PCIe总线段路由这些PCIe管理消息。段映射逻辑1050可以配置为处理接收到的MCTP分组和要被传输的MCTP分组。段映射逻辑1050包含存储本地段标识符的本地段标识符寄存器(LSIR)1052。在某个实施例中,LSIR可以存储在段映射逻辑1050外部。段映射逻辑1050还与段ID分组生成逻辑1056和MCTP分组段标识符提取逻辑1058包含PCIe上MCTP。所述两个逻辑执行分别将PCIe总线段标识符插入到要生成的MCTP分组和从接收到的MCTP分组提取PCIe总线段标识符的相反任务。VDM EID到段ID映射1054存储了段ID和VDM EID之间的映射。例如,可以存储用于MCTP分组的EID的范围。所述段映射逻辑还能够将本地段号值插入在它从MCTP端点接收到的MCTP VDM的目标EID字段中的适当位中。当总线所有者还没有分配端点ID时,这有助于所述总线所有者在MCTP枚举阶段区分消息源。
段映射逻辑1050可以与源地址解码器(SAD)逻辑1046、BIOS1048和MCTP总线所有者1043可通信地耦合。SAD逻辑1046能够利用分别用于处理器节点或PCIe总线段查找的目标标识符字段或目标EID字段。所述选择的选择器可以是存储在SAD逻辑1046中的设置,并且由BIOS1048编程。BIOS1048可以配置SAD逻辑1046,还有LSIR1052。此外,BIOS1048可以将段号与处理器节点ID之间的映射传输到MCTP总线所有者1043。MCTP总线所有者1043配置为分配端点ID,以使得某些EID位匹配所述端点的PCIe总线段号。可以执行所述分布,以使得对于处理器/插槽可用的EID的数量与分配到所述处理器/插槽的总线数量成比例。
段映射逻辑1050与PCIe上MCTP管理逻辑1022可通信地耦合。PCIe上MCTP管理逻辑1022包含PCIe上MCTP打包逻辑1018和PCIe上MCTP拆包逻辑1016。在PCIe上MCTP打包逻辑1018处,利用除了由段映射逻辑1050提供的信息之外的打包信息来生成MCTP分组。例如,可以插入处理器/插槽节点信息。在PCIe上MCTP拆包逻辑1016处,对MCTP分组进行拆包以便提取除了在段映射逻辑1050所提取的信息之外的信息。
在一个实施例中,根复合体1000接收PCIe管理消息。所述PCIe管理消息被作为MCTP分组传送,其中利用了VDM格式。所述消息(现在是MCTP分组)被发送到SAD1046以便确定是否将所述MCTP分组的VDM的EID字段的一部分解释为PCIe总线段标识符。当确定要将VDM格式的目的地EID字段的一部分解释为PCIe总线段标识符时,段映射逻辑1050,特别是MCTP分组段ID提取逻辑1058,提取PCIe总线段标识符。接着,PCIe上MCTP管理逻辑1022将MCTP分组路由到指定的PCIe总线段。
如本文上面讨论的,BIOS1048可以存储用于根复合体1000所属于的计算系统的设置,所述设置确定是否要将接收到的PCIe管理消息的VDM格式的目的地EID字段的一部分解释为PCIe总线段标识符,并且当要提取PCIe总线段标识符时,所述设置指示用于解释的位的数量和位的位置。所述设置还可以确定是否将PCI目标标识符的一部分解释为处理器节点标识符。
参照图10的示例性实施例描述了所述流程图的操作。然而,应该理解,除了参照图3和图5描述的那些之外,本发明实施例还能够执行所述流程图的操作,并且参照图10讨论的实施例能够执行与参照图3和图5的流程图讨论的那些操作不同的操作。
注意到,可以在前面提到的任一电子设备或系统中实现上述的装置、方法和系统。作为具体说明,下面的图示提供了用于利用本文描述的本发明的示例性系统。由于更具体地描述了下面的系统,所以根据上面的讨论公开、描述和重新讨论了多个不同的互连。并且显而易见的是,前述的改进可以应用于那些互连、组织或架构中的任意一个。
现在参照图15,说明了根据本发明实施例存在于计算机系统中的组件的框图。如图15所示,系统1500包括组件的任意组合。这些组件可以被实现为适配于计算机系统的IC、其部分、分立电子设备或其它模块、逻辑、硬件、软件、固件或其组合,或者以其它方式并入所述计算机系统的底盘内的组件。还要注意到,图15的框图意在示出所述计算机系统的许多组件的高级视图。然而,要理解的是,可以省去所示的某些组件,可以存在额外的组件,并且在其它实现中可以出现所示组件的不同布置。结果,可以在下面说明或描述的一个或多个互连的任意部分中实施上述的本发明。
如图15所示,在一个实施例中,处理器1510包括微处理器、多核处理器、多线程处理器、超低压处理器、嵌入式处理器或其它已知的处理元件。在所说明的实现中,处理器1510用作用于与系统1500的许多各种组件通信的主处理单元和中央中心。作为一个示例,处理器1510实现为片上系统(SoC)。作为具体的说明性示例,处理器1510包括诸如i3、i5、i7的基于英特尔架构核心的处理器或者可从加州圣克拉拉市的英特尔公司获取的另一这样的处理器。然而,理解到,在其它实施例中可以代替在存在诸如苹果的A5/A6处理器、高通骁龙处理器或TI OMAP处理器,例如可从加州桑尼韦尔市的高级微设备公司(AMD)、加州桑尼韦尔市的MIPS技术公司的基于MIPS的设计、ARM控股有限公司或其客户或它们的获得许可者或采用者的基于ARM的设计获取的其它低功率处理器。注意到,这样的处理器的许多客户版本都有修改和变化;然而,如处理器授权商所指出的,它们可以支持或识别执行定义的算法的具体指令集。这里,所述微架构实现可以变化,但处理器的架构功能通常是一致的。下面将进一步讨论在一种实现中关于处理器1510的架构和操作的某些细节,以便提供说明性示例。
在一个实施例中,处理器1510与系统存储器1515通信。作为说明性示例,其在实施例中能够经由多个存储设备实现以便提供给定量的系统存储。作为示例,所述存储器能够依据联合电子设备工程委员会(JEDEC)的基于低功耗双数据率(LPDDR)的设计,例如当前的根据JEDEC JESD209-2E的LPDDR2标准(2009年4月出版),或扩展LPDDR2以便增加带宽的被称为LPDDR3或LPDDR4的下一代LPDDR标准。在各种实现中,单独存储器设备可以具有不同的封装类型,例如单裸片封装(SDP)、双裸片封装(DDP)或四裸片封装(Q17P)。在某些实施例中,将这些设备直接焊接在母板上以便提供低配置解决方案,同时在其它实施例中,所述设备配置为由给定连接器依次耦合到所述母板的一个或多个存储器模块。当然,其它存储器实现也是可能的,例如其它类型的存储器模块,例如,不同品种的双列直插式存储器模块(DIMM),包括但不局限于微DIMM、迷你DIMM。在一个特定的说明性实施例中,存储器的大小在2GB和16GB之间,并且可以配置为DDR3LM封装或经由球栅阵列(BGA)焊接到母板上的LPDDR2或LPDDR3存储器。
为了提供诸如数据、应用、一个或多个操作系统等等的信息的持久存储,海量存储1520也可以耦合到处理器1510。在各种实施例中,为了实现更薄和更轻的系统设计,并且为了提高系统响应性,这一海量存储可以经由SSD实现。然而在其它实施例中,可以主要利用硬盘驱动(HDD)来实现所述海量存储,较少量的SSD存储用作SSD高速缓存以便在断电事件期间能够进行上下文状态和其它这样的信息的非易失性存储,以使得能够在重新启动系统活动时发生快速开机。如图15所示,闪存设备1522可以耦合到处理器1510,例如经由串行外围接口(SPI)。这一闪存设备可以提供系统软件,包括基本输入/输出软件(BIOS)以及系统的其它固件,的非易失性存储。
在各种实施例中,所述系统的海量存储由SSD单独实现,或者作为具有SSD高速缓存的磁盘、光学或其它驱动。在某些实施例中,所述海量存储被实现为SSD或具有恢复(RST)高速缓存模块的HDD。在各种实现中,所述HDD提供了320GB-4兆兆字节之间及以上的存储,同时使用具有容量24GB-256GB的SSD来实现RST高速缓存。注意到,这样的SSD高速缓存可以配置为单级高速缓存(SLC)或多级高速缓存(MLC)选项以便提供适当的响应度。在仅SSD选项中,所述模块可以被放入各种位置中,例如在mSATA或NGFF插槽中。作为示例,SSD的容量范围从120GB到1TB。
系统1500内可以存在各种输入/输出(IO)设备。图15中的实施例特别示出了显示器1524,其可以是配置在底盘的盖体内的高清LCD或LED面板。这一显示器面板还可以提供触摸屏1525,例如,外部适配在所述显示器面板上,以使得经由用户与这一触摸屏的交互,可以将用户输入提供到所述系统以便使能期望的操作,例如,关于信息的显示、信息的访问等等。在一个实施例中,显示器1524可以经由能够被实现为高性能图形互连的显示器互连耦合到处理器1510。触摸屏1525可以经由另一互连耦合到处理器1510,其在一个实施例中可以是I2C互连。如图15进一步显示的,除了触摸屏1525,通过触摸方式的用户输入还能够经由触摸板1530发生,其可以配置在所述底盘内,并还可以与触摸屏1525相同地耦合到I2C互连。
所述显示器面板可以在多个模式中操作。在第一模式中,能够在透明状态中布置所述显示器面板,在该状态中,所述显示器面板对可见光透明。在各种实施例中,除了围绕周边的边框,大多数显示器面板可以是显示器。当所述系统操作在笔记本模式中并且所述显示器面板操作在透明状态中时,用户可以观看呈现显示器面板上的信息,同时还能够观看显示器背后的对象。此外,位于显示器背后的用户可以观看在所述显示器面板上显示的信息。或者,所述显示器面板的操作状态能够是不透明状态,在该状态中可见光不透过显示器面板。
在平板电脑模式中,折叠关闭所述系统,以使得当将基板的底面搁在一个表面上或由用户拿着时,所述显示器面板的背部显示面处于静止位置,以使得它朝向用户向外。在操作的平板电脑模式中,所述背部显示面执行显示器和用户接口的作用,因为这一面可以具有触摸屏功能,并且可以执行常规触摸屏设备,例如平板电脑设备,的其它已知功能。为此,显示器面板可以包括置于触摸屏层与前部显示面层之间的透明度调节层。在某些实施例中,所述透明度调节层可以是电致变色层(EC)、LCD层或EC和LCD层的组合。
在各种实施例中,所述显示器可以具有不同的尺寸,例如11.6”或13.3”屏幕,并且可以具有16∶9的屏幕高宽比以及至少300个单位的亮度。而且,所述显示器可以具有全高清(HD)分辨率(至少1920x1080p),可兼容嵌入式显示端口(eDP),并且是具有面板自刷新的低功率面板。
至于触摸屏能力,所述系统可以提供显示多触摸面板,其是多触摸电容型,至少能够具有5根手指能力。并且在某些实施例中,所述显示器能够具有10根手指能力。在一个实施例中,将所述触摸屏放入用于低摩擦的防损害及刮擦的玻璃和涂层(例如,Gorilla玻璃TM或Gorilla玻璃2TM)中,以便减少“手指烧伤”并消除“手指跳跃”。为了提供增强的触摸体验和响应性,在某些实现中,触摸面板具有多触摸功能,例如在捏变焦期间每静态视图少于2个帧(30Hz),以及200毫秒(手指到指针的拖延)的每帧少于1厘米(30Hz)的单触摸功能。在某些实现中,所述显示器支持具有也与面板表面平齐的最小屏幕边框的边到边玻璃,并且当使用多触摸时具有限制的IO干扰。
为了感知计算和其它目的,各种传感器可以存在于所述系统内并且可以按照不同的方式耦合到处理器1510。某些惯性和环境传感器可以经过传感器中心1540,例如经由I2C互连,耦合到处理器1510。在图15所示的实施例中,这些传感器可以包括加速度计1541、环境光传感器(ALS)1542、罗盘1543或陀螺仪1544。其它环境传感器可以包括一个或多个热传感器1546,其在某些实施例中经由系统管理总线(SM总线)总线耦合到处理器1510。
使用平台中存在的各种惯性和环境传感器,可以实现许多不同的用例。这些用例使能包括感知计算的高级计算操作,并且还允许功率管理/电池寿命、安全和系统响应性的增强。
例如,关于功率管理/电池寿命问题,至少部分地基于来自环境光传感器的信息,确定平台位置中的皇家光状况,并且因此控制显示器的亮度。因而,在某些光情况下减少操作显示器消耗的功率。
关于至于安全操作,基于从传感器获取的例如诸如位置信息的上下文信息,可以确定是否允许用户访问某些安全文档文件。例如,可以允许用户在工作地点或家庭位置访问这些文件。然而,当该平台处于公共位置时,防止用户访问这些文档文件。在一个实施例中,这一这种确定基于位置信息,例如由经由GPS传感器或地标的摄像头识别地标来确定。其它安全操作可以包括在彼此接近相近的距离内提供设备配对,例如,本文所述描述的便携式平台、和用户的台式机、移动电话等等。在某些实施方式实现中,当对这些设备进行这样的如此配对这些设备时,通过经由近场通信来实现某些共享。然而,当所述设备超过某个距离时,这样的共享会被禁用。而且,当如本文描述地配对平台和智能手机时,如果处于公共位置时设备移动超过了预设的相互距离,则可以配置触发警报。相反,当这些配对的设备处于安全位置中时,例如在工作地点或家庭位置,所述设备可以超出这一预定限制,而不会触发这一警报。
还可以使用传感器信息来增强响应性。例如,即使当平台处于低功率状态,仍然可以使所述传感器以相对低的频率运行。因此,确定所述平台位置的任何变化,例如通过惯性传感器、GPS传感器等等。如果没有登记这样的变化,则会发生到之前的无线中心,例如Wi-FiTM接入点或类似的无线使能器,的快速连接,因为在这种情况下不需要扫描现有无线网络资源。因而,当实现从低功率状态的唤醒时,实现更高水平的响应性。
要理解的是,使用经由本文描述的平台内的集成传感器获得的传感器信息可以使能许多其它用例,并且上面的示例只是出于说明目的。使用本文描述的系统,感知计算系统可以允许加入可选的输入模态,包括手势识别,并且使该系统能够感测用户操作和意图。
在某些实施例中,可以存在一个或多个红内线或其它热感测元件,或者用于感测用户的存在或移动的任意其它元件。这样的感测元件可以包括多个不同元件,它们一起工作、顺序工作或两者皆可。例如,感测元件包括有元件,该元件提供例如光或声音投射的初始感测,随后感测例如通过飞行相机或图案化光相机的超声时间的手势检测。
并且,在某些实施例中,所述系统还包括光发生器以便生成产生照明光线的光发生器。在某些实施例中,这一光线提供了涉及关于虚拟边界的视觉提示,即空间内中的虚构或虚拟位置,其中此处将用户通过或突破虚拟界限边界或平面的动作解释为意在参与参与计算系统的意图。在某些实施例中,所述照明线光线可以随着计算系统转换到关于用户转换到的不同状态而改变颜色。所述照明光线可以用于为空间内中虚拟边界的用户提供视觉提示,并且可以被由所述系统用来使用以便确定关于用户的计算机状态关于用户的转换,包括确定用户何时希望参与计算机。
在某些实施例中,所述计算机感测用户位置,并且操作为将用户的手部经过虚拟边界的移动解释为指示用户希望参与计算机的手势。在某些实施例中,在用户经过所述虚拟线或平面时,由光发生器生成的光会变化,从而向用户提供该用户已经进入提供手势以便向计算机提供输入的区域的视觉反馈。
显示屏可以提供计算系统关于用户的状态转换的视觉指示。在某些实施例中,在系统例如经过使用一个或多个感测元件感测用户存在的第一状态中提供第一屏幕。
在某些实现中,所述系统行动以便感测用户身份,例如通过脸部识别。这里,可以在所述计算系统已经识别出用户身份的第二状态中提供到第二屏幕的转换,其中该第二屏幕向用户提供该用户已经转换到新状态的视觉反馈。可以在其中用户已经确认用户的识别的第三状态中发生到第三屏幕的转换。
在某些实施例中,所述计算系统可以使用转换机制来确定用户的虚拟边界的位置,其中虚拟边界的位置可以随着用户和上下文变化。所述计算系统可以生成光,例如照明光线,以便指示用于与所述系统接合的虚拟边界。在某些实施例中,所述计算系统可以处于等待状态,并且可以产生第一颜色的光。所述计算系统可以检测该用户是否已经到达越过所述虚拟边界,例如通过使用传感元件来感测用户的存在和移动。
在某些实施例中,如果已经检测到用户穿过了所述虚拟边界(例如,用户的手部与虚拟边界线相比较更接近计算系统),则所述计算系统可以转换到用于从该用户接收手势输入的状态,其中指示所述转换的机制可以包括指示所述虚拟边界改变到第二颜色的光。
在某些实施例中,所述计算系统接着可以确定是否检测到手势移动。如果检测到手势移动,则所述计算系统可以进行手势识别过程,其可以包括使用来自手势数据库的数据,该手势数据库可以位于计算设备的存储器中或可以其其它方式由计算设备可访问。
如果识别了用户的手势,则所述计算系统可以响应于所述输入而执行功能,并且如果该用户在所述虚拟边界内,则返回以便接收附加的手势。在某些实施例中,如果没有识别出手势,则所述计算系统可以转换到错误状态,其中用于指示错误状态的机制可以包括指示所述虚拟边界改变到第三颜色的光,如果该用户在所述虚拟边界内用于参与计算系统,则系统返回以便接收附加的手势。
如上面提及的,在其它实施例中,该系统能够配置为能够用于至少两种不同模式,平板电脑模式和笔记本模式,的可变式平板电脑系统。所述可变式系统可以具有两个面板,即显示器面板和基面板,以使得在平板电脑模式中将所述两个面板彼此顶部堆叠放置。在所述平板电脑模式中,所述显示器面板面向朝外,并且可以提供如在常规平板电脑中看到的触摸屏功能。在所述笔记本模式中,可以按照开放的蛤壳式配置布置所述两个面板。
在各种实施例中,所述加速度计可以是具有至少50Hz数据率的3轴加速度计。还可以包括陀螺仪,其能够是3轴陀螺仪。此外,还可以存在电子罗盘/磁力计。而且,还可以提供一个或多个近距传感器(例如,用于盖体打开以便感测个人何时靠近(或不靠近)所述系统,并且调整功率/性能以便延长电池寿命)。对于某些OS的传感器融合能力,包括加速度计、陀螺仪和罗盘,可以提供增强的特征。此外,经由具有实时时钟(RTC)的传感器中心,可以实现从传感器机制的唤醒,以便当系统的剩余部分处于低功率状态时接收传感器输入。
在某些实施例中,内部盖体/显示器打开开关或传感器用于指示何时关上/打开该内部盖体,并且能够用于使系统在线待机或自动从在线待机状态唤醒。其它系统传感器能够包括用于内部处理器、存储器和皮肤温度监测的ACPI传感器,以便能够基于感测到的参数改变处理器和系统操作状态。
在实施例中,所述OS可以是实现在线待机的8OS(这里也被称为Win8CS)。Windows8在线待机或具有相似状态的另一OS能够经本文描述的平台提供非常低的超空闲功率,以便使应用能够以非常低的功率保持连接到例如基于云的位置。所述平台能够支持3种功率状态,即屏幕开(正常);在线待机(作为缺省的“关”状态);和关机(功耗为0瓦特)。因而在所述在线待机状态中,该平台逻辑上为开(以最低功率水平),即使屏幕为关。在这样的平台中,部分地由于使功率最低的组件能够执行操作的卸载技术,能够使功率管理对于应用是透明的,并且维持恒定的连接性。
在图15中还可以看到,各种外围设备可以经由低引脚计数(LPC)互连耦合到处理器1510。在所示的实施例中,能够经过嵌入式控制器1535耦合各种组件。这样的组件能够包括键盘1536(例如,经由PS2接口耦合)、风扇1537和热传感器1539。在某些实施例中,触摸板1530还可以经由PS2接口耦合到EC1535。此外,安全处理器,例如根据日期为2003年10月2日的可信计算组(TCG)TPM规范版本1.2的可信平台模块(TPM)1538,还可以经由这一LPC互连耦合到处理器1510。然而,要理解的是,本发明的范围不局限于此,并且安全处理和安全信息的存储可以位于另一受保护的位置中,例如安全协处理器中的静态随机存取存储器(SRAM),或者作为仅当受安全飞地(SE)处理器模式保护时才被解密的加密数据块。
在特定的实现中,外围端口可以包括高清媒体接口(HDMI)连接器(其能够具有不同的形状因子,例如全尺寸、小或微);一个或多个USB端口,例如根据通用串行总线修改版3.0规范(2008年11月)的全尺寸外部端口,当系统处于在线待机状态并且插入在AC墙电源时,至少一个USB端口被加电以便向USB设备(例如智能电话)充电。此外,能够提供一个或多个ThunderboltTM端口。其它端口可以包括外部可访问的读卡器,例如用于WWAN(例如,8引脚读卡器)的全尺寸SD-XC读卡器和/或SIM读卡器。对于音频,能够存在具有立体声和话筒能力(例如,混合功能)的3.5毫米插孔,支持插孔检测(例如,仅支持使用所述盖体中的话筒的耳机或具有有线话筒的耳机)。在某些实施例中,这种插孔在立体声耳机与立体声话筒输入之间是能够再分配任务。而且,能够提供电源插孔用于耦合到AC模块(brick)。
系统1500能够按照各种方式与外部设备通信,包括无线方式。在图15中示出的实施例中,存在各种无线模块,每一个模块能够对应于配置用于特定无线通信协议的无线电。一种用于例如近场的短距离无线通信的方式可以经由近场通信(NFC)单元1545,其在一个实施例中可以经由SMBus与处理器1510通信。注意到,经由这一NFC单元1545,彼此紧密靠近的设备能够通信。例如,用户能够使系统1500经由将关系密切的两个设备适配在一起并且使能诸如识别信息、支付信息的信息、诸如图像数据的数据等等的信息的传输来与诸如用户的智能电话的另一(例如)便携式设备通信。还可以使用NFC系统执行无线功率传输。
使用本文所述的NFC单元,用户能够通过利用一个或多个这样的设备的线圈之间的耦合,并排撞击设备,并且并排放置设备用于近场耦合功能(例如,近场通信和无线功率传输(WPT))。更具体地说,实施例提供具有铁氧材料并且形状和布置都有战略性的设备,以便提供线圈的更好耦合。每一个线圈具有与其相关联的电感,其能够结合该系统的电阻、电容和其它特征来选择,以便使能用于该系统的谐振频率。
进一步在图15中可以看到,额外的无线单元能够包括其它短距离无线引擎,包括WLAN单元1550和蓝牙单元1552。使用WLAN单元1550,能够实现根据给定的电气电子工程师协会(IEEE)802.11标准的Wi-Fi通信,同时经由蓝牙单元1552,能够发生经由蓝牙协议的短距离通信。这些单元可以经由例如USB链接或通用异步接收机发射机(UART)链路与处理器1510通信。或者这些单元可以经由根据高速外围组件互连TM(PCIeTM)协议,例如根据PCI ExpressTM规范基本规范版本3.0(2007年1月17日出版)或诸如串行数据输入/输出(SIDO)标准的另一这样的协议,的互连耦合到处理器1510。当然,这些外围设备之间的实际物理连接,其可以在一个或多个外接卡上配置,能够利用适配到母板的NGFF连接器。
此外,无线广域通信,例如根据蜂窝或其它无线广域协议,能够经由WWAN单元1556发生,该WWAN单元1556依次可以耦合到订户身份模块(SIM)1557。此外,为了使能位置信息的接收和使用,还可以存在GPS模块1555。注意到,在图15所示的实施例中,WWAN单元1556和诸如照相机模块1554的集成捕获设备可以经由给定的USB协议,例如USB2.0或3.0链路,或UART或I2C协议,进行通信。再次,这些单元的实际物理连接可以经由NGFF外接卡到配置在母版上的NGFF连接器的适配。
在特定实施例中,能够按照模块化的方式提供无线功能,例如利用支持Windows8CS的WiFiTM802.11ac解决方案(例如,与IEEE802.11abgn向后兼容的外接卡)。能够在内部插槽中配置这个卡(例如,经由NGFF适配器)。附加的模块可以提供蓝牙能力(例如,具有向后兼容性的蓝牙4.0)以及英特的无线显示功能。此外,可以经由单独的设备或多功能设备提供NFC支持,并能作为示例可以位于底盘的前右部分以便容易访问。另一个附加的模块可以是能够为3G/4G/LTE和GPS提供支持的WWAN设备。能够在内部(例如,NGFF)插槽中实现这一模块。能够为WiFiTM、蓝牙、WWAN、NFC和GPS提供集成的天线支持,使能从WiFi到WWAN无线电、根据无线千兆规范(2010年7月)的无线千兆(WiGig),的无缝转换,并且反之亦然。
如上所述,能够在所述盖体中结合集成照相机。作为一个示例,这一照相机可以是高分辨率照相机,例如,具有的分辨率至少为2.0兆像素(MP),并扩展到6.0MP及以上。
为了提供音频输入和输出,音频处理器能够经由数字信号处理器(DSP)1560实现,该DSP可以经由高清音频(HAD)链路耦合到处理器1510。类似地,DSP1560可以与集成的编码器/解码器(CODEC)和放大器1562通信,这些设备可以顺次耦合到能够在底盘内实现的输出扬声器1563。类似地,放大器和CODEC1562能够耦合以便从话筒1565接收音频输入,其在一个实施例中能够经由双阵列话筒1565(例如,数字话筒阵列)实现以便提供高质量音频输入,使能所述系统内各种操作的语音触发控制。还要注意到,能够从放大器/CODEC1562向耳机插孔1564提供音频输出。尽管在图15的实施例中示出了这些特定的组件,但是要理解的是,本发明的范畴不局限于此。
在特定实施例中,所述数字音频编解码器和放大器能够驱动立体声耳机插孔、立体声话筒插孔、内部话筒阵列和立体声扬声器。在不同的实现中,所述编解码器能够集成在音频DSP或经由HD音频路径耦合到外围控制器中心(PCH)。在某些实现中,除了集成的立体声扬声器,还能够提供一个或多个低音扬声器,并且所述扬声器解决方案能够支持DTS音频。
在某些实施例中,处理器1510可以由外部调压器(VR)和集成在处理器裸片内部的多个内部调压器,被统称为全集成调压器(FIVR),供电。在所述处理器中使用多个FIVR使得能够将组件分组为分离的电源平面,以使得将由所述FIVR调节所述功率并且将其仅供应到该组中的那些组件。在功率管理期间,当将处理器置于某个低功率状态时,可以断电或关闭一个FIVR的给定功率平面,同时另一个FIVR的另一个功率平面保持活动,或者被完全供电。
在一个实施例中,在某些深度睡眠状态期间能够使用维持功率平面以便开启用于几个I/O信号的I/O引脚,例如处理器与PCH之间的接口、具有外部VR的接口以及具有EC1535的接口。这一维持功率平面还为支持板上SRAM或睡眠状态期间存储处理器上下文的其它高速缓存的裸片上调压器供电。所述维持电源平面还用于开启处理器的唤醒逻辑,该唤醒逻辑监测并处理各种唤醒源信号。
在功率管理期间,尽管当所述处理器进入某些深度睡眠状态时关闭或关断其它功率平面,但是所述维持功率平面仍然开启以便支持上面提及的组件。然而,当不需要这些组件时这会导致不必要的功率消耗或浪费。为此,实施例可以提供在线待机睡眠状态以便使用专用功率平面来维持处理器上下文。在一个实施例中,所述在线待机睡眠模式利用本身可能存在于具有处理器的封装中的PCH的资源来促进处理器唤醒。在一个实施例中,所述在线待机睡眠状态促进维持PCH中的处理器架构功能,直到处理器唤醒,这使得能够关闭在深度睡眠期间先前被打开的所有不必要的处理器组件,包括关闭所有时钟。在一个实施例中,PCH包含时间戳计数器(TSC)和用于在在线待机状态期间控制系统的在线待机逻辑。用于维持功率平面的集成调压器也可以位于所述PCH上。
在实施例中,在所述在线待机状态期间,集成调压器可以用作保持通电的专用功率平面,以便支持当所述处理器进入深度睡眠状态和在线待机状态时存储诸如临界状态变量的处理器上下文的专用高速缓存。这一临界状态可以包括与所述架构、微架构、调试状态相关联的状态变量和/或与所述处理器相关联的类似状态变量。
在在线待机状态期间,可以将来自EC1535的唤醒源信号发送到PCH,而不是处理器,以使得所述PCH能够代替处理器来管理唤醒处理。此外,在PCH中维持TSC以便促进维持处理器架构功能。尽管在图15的实施例中示出了这些特定组件,但是要理解,本发明的范围不局限于此。
所述处理器中的功率控制能够导致增强的功率节约。例如,能够在核心之间动态地分配功率,单独的核心能够改变频率/电压,并且能够提供多个深度低功率状态以便使能非常低的功耗。此外,动态控制所述核心或独立的核心部分能够通过在不使用组件时使这些组件断电来提供减少的功耗。
某些实现可以提供具体功率管理IC(PMIC)来控制平台功率。使用这一解决方案,当处于给定待机状态时,例如当处于Win8的在线待机状态时,系统可以看出在延长的持续时间(例如,16小时)内电池退化得极少(例如,少于5%)。在Win8的空闲状态,可以实现电池寿命超过例如9小时(例如,平均亮度150)。对于视频回放,能够实现长的电池寿命,例如全HD视频回放能够进行至少6个小时。在一种实现中,对于使用SSD的Win8CS,平台可以具有例如35瓦小时(Whr)的能力容量,并且对于使用具有RST高速缓存配置的HDD的Win8CS,.是(例如)40-44Whr。
特定实现可以为15W标定CPU热设计功率(TDP)提供支持,可配置的CPU TDP具有高达大致25W TDP的设计点。由于上述的热特征,该平台可以包括最少的通风口。此外,该平台是枕头般友好的(因为没有热空气吹用户)。取决于底盘材料,能够实现不同的最高温度点。在塑料底盘(至少盖体或基部为塑料)的实现中,最高操作温度可以是52摄氏度(C)。而对于金属底盘的实现,最高操作温度可以是46℃。
在不同的实现中,诸如TPM的安全模块能够集成在处理器中,或者能够是诸如TPM2.0设备的分立设备。利用集成的安全模块,也被称为平台信任技术(PTT),可以使BIOS/固件能够使某些硬件特征具有某些安全特征,包括安全指令、安全引导、的反窃取技术、的身份保护技术、的可信执行技术(TXT)和的可管理性引擎技术以及诸如安全键盘和显示器的用户接口。
现在参照图16,示出了根据本发明实施例的第二系统1600的框图。如图16所示,多处理器系统1600是点对点互连系统,并且包括经点对点互连1650耦合的第一处理器1670和第二处理器1680。处理器1670和1680的每一个可以是处理器的某一版本。在一个实施例中,1652和1654是部分串行点对点一致性互连组织的一部分,例如英特尔的快速路径互连(QPI)架构。结果,可以在所述QPI架构内实现本发明。
尽管仅示出了两个处理器1670、1680,但是要理解的是,本发明的范围不局限于此。在其它实施例中,在给定处理器中可以存在一个或多个额外的处理器。
处理器1670和1680被表示为分别包括集成存储器控制器单元1672和1682。处理器1670还包括点对点(P-P)接口1676和1678作为它的总线控制器单元的一部分;类似地,第二处理器1680包括P-P接口1686和1688。处理器1670、1680可以使用点对点(P-P)接口电路1678、1688,经由P-P接口1650交换信息。如图16所示,IMC1672和1682将所述处理器耦合到各自存储器,即,存储器1632和存储器1634,其可以是本地附接到各自处理器的主存储器的部分。
处理器1670、1680分别使用点对点接口电路1676、1694、1686、1698,经由单独的P-P接口1652、1654与芯片集1690交换信息。芯片集1690还沿着高性能图形互连1639经由接口电路1692与高性能图形电路1638交换信息。
可以在处理器中或者在两个处理器外部包括共享高速缓存(未示出);然而经由P-P互连与所述处理器连接,以使得如果将处理器置于低功率模式,则可以将一个或两个处理器的本地高速缓存信息存储在该共享高速缓存中。
芯片集1690可以经由接口1696耦合到第一总线1616。在一个实施例中,第一总线1616可以是外围组件互连(PCI)总线,或者是诸如PCI Express总线的总线或另一第三代I/O互连总线,尽管本发明的范围不局限于此。
如图16所示,各种I/O设备1614耦合到第一总线1616连同将第一总线1616耦合到第二总线1620的总线桥1618。在一个实施例中,第二总线1620包括低引脚数(LPC)总线。在一个实施例中,各种设备耦合到第二总线1620,包括例如键盘和/或鼠标1622、通信设备1627以及诸如磁盘驱动或通常包含指令/代码及数据1630的其它海量存储设备的存储单元1628。进而,示出了音频I/O1624耦合到第二总线1620。注意到,其它架构是可能的,其中所包括的组件和互连架构会变化。例如,代替图16的点对点架构,系统可以实现多点总线或其它这样的架构。
尽管参照有限数量的实施例描述了本发明,但是本领域技术人员将意识到其其众多变体和变形。所附权利要求意在覆盖落入本发明的真实精神和范围内的所有这样的变体和变形。
设计可以经历各个阶段,从创建到仿真到制造。表示设计的数据可以按照各种方式来表示该设计。首先,可以使用硬件描述语言或另一功能性描述语言来表示所述硬件,这在仿真中是有用的。此外,可以在设计过程的某些阶段生产具有逻辑和/或晶体管门的电路级模型。而且,大多数设计在某个阶段,达到代表各种设备在硬件模型中的物理放置的数据水平。在使用常规半导体制造技术的情况下,代表硬件模型的数据可以是指定在用于生产集成电路的掩模的不同掩蔽层上各种特征的存在或不存在的数据。在所述设计的任一种表示中,该数据可以存储在任意形式的机器可读介质中。存储器或诸如磁盘的磁性或光学存储可以是用于存储信息的机器可读介质,经由调制或以其它方式生成用于传输这样的信息的光学或电学波来传输所述信息。当传输指示或携带所述代码或设计的电载波时,就执行电信号的拷贝、缓冲或重传输而言,进行新的拷贝。因而,通信供应商或网络供应商可以在有形的机器可读介质上至少暂时地存储物品,例如编码在载波中的信息,实施本发明实施例的技术。
本文使用的模块指的是硬件、软件和/或固件的任意组合。作为示例,模块包括硬件,例如微控制器,其与非暂态介质相关联以便存储适合于由微控制器执行的代码。因此,在一个实施例中,对模块的引用指的是硬件,其特别地配置为识别和/或执行要保持在非暂态介质上的代码。而且,在另一实施例中,使用模块指代包括代码的非暂态介质,其特别地适合于由微处理器执行以便执行预定操作。并且可以推断,在另一实施例中,术语模块(在这一示例中)可以指代微控制器和非暂态介质的组合。通常被说明为单独的模块边界通常变化并且潜在地重叠。例如,第一模块和第二模块可以共享硬件、软件、固件或其组合,尽管潜在地保留某些独立的硬件、软件或固件。在一个实施例中,术语逻辑的使用包括硬件,例如晶体管、寄存器或诸如可编程逻辑器件的其它硬件。
在一个实施例中,使用短语“以便”或“配置为”指代布置、组合、制造、出售、进口和/或设计装置、硬件、逻辑或元件以便执行指定或确定的任务。在这一示例中,如果设计、耦合和/或互连装置或其元件以便执行所述指定任务,则其不操作也仍然“配置为”执行该指定任务。作为纯说明性示例,在操作期间,逻辑门可以提供0或1。但是“配置为”向时钟提供使能信号的逻辑门不包括可能提供1或0的每一个潜在的逻辑门。相反,所述逻辑门是按照某种方式耦合的门,在操作期间输出1或0以便使能所述时钟。再次注意,使用术语“配置为”不要求操作,而是着眼于装置、硬件和/或元件的潜伏状态,在所述潜伏状态中,所述装置、硬件和/或元件设计为当所述装置、硬件和/或元件操作时执行特定任务。
而且,在一个实施例中,使用短语“能够”和或“可操作地”指代按照这样的方式设计某种装置、逻辑、硬件和/或元件,以便能够按照指定的方式使用所述装置、逻辑、硬件和/或元件。如上要注意到的,在一个实施例中,使用“为了”、“能够”或“可操作地”指代装置、逻辑、硬件和/或元件的潜伏状态,所述装置、逻辑、硬件和/或元件不操作,但是按照这样的方式设计以使得能够按照指定的方式使用装置。
如本文使用的,值包括数字、状态、逻辑状态或二进制逻辑状态的任意已知表示。通常,逻辑电平、逻辑值或逻辑上值的使用也被称为1和0,这简单地表示二进制逻辑状态。例如,1指代高逻辑电平,并且0指代低逻辑电平。在一个实施例中,例如晶体管或闪存单元的存储单元可以能够保持单个逻辑值或多个逻辑值。然而,使用了计算机系统中值的其它表示。例如,十进制数10还可以被表示为二进制值1010和十六进制字母A。因此,值包括能够在计算机系统中保持的信息的任意表示。
而且,可以由值或值的部分来表示状态。作为示例,诸如逻辑一的第一值可以表示缺省或初始状态,而诸如逻辑零的第二值可以表示非缺省状态。此外,在一个实施例中,术语复位和设置分别指代缺省和更新的值或状态。例如,缺省值潜在地包括高逻辑值,即复位,而更新的值潜在地包括低逻辑值,即设置。注意到,可以使用值的任意组合来表示任意数量的状态。
上面尝试的方法、硬件、软件、固件或代码集的实施例可以经由存储在机器可访问、机器可读、计算机可访问或计算机可读的介质上的能够由处理元件执行的指令或代码实现。非暂太机器可访问/可读介质包括按照诸如计算机或电子系统的机器可读的方式提供(即,存储和/或传输)信息的任意机制。例如,非暂态机器可访问介质包括:随机存取存储器(RAM),例如静态RAM(SRAM)或动态RAM(DRAM);ROM;磁性或光学存储介质;闪存设备;电学存储设备;光学存储设备;声学存储设备;用于保持从暂态(传播)信号(例如,载波、红内信号、数字信号)接收到的信息的其它形式的存储设备;等等,该用于保持从暂态信号接收到的信息的其它形式的存储设备有别于可以从其接收信息的非暂态介质。
用于对逻辑编程以便执行本发明实施例的指令可以存储在该系统的存储器中,例如DRAM、高速缓存、闪存或其它贮存器。而且,所述指令能够经由网络或者通过其它计算机可读介质进行分布。因而,机器可读介质可以包括用于以机器(例如,计算机)可读的形式存储或传输信息的任一机制,但不局限于软盘、光盘、压缩磁盘、只读存储器(CD-ROM)和磁光碟、只读存储器(ROM)、随机存取存储器(RAM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、磁或光卡、闪存或有形的机器可读贮存器,用于在互联网上经由电学、光学、声学或其它形式的传播信号(例如,载波、红内信号、数字信号等等)的信息传输。
在整个说明书中对“一个实施例”或“某个实施例”的引用意味着结合该实施例描述的特定特征、结构或特性包括在本发明的至少一个实施例中。因而,在整个说明书的各个地方出现的短语“在一个实施例中”或“在某个实施例中”不必全部指代同一个实施例。而且,在一个或多个实施例中,可以按照适当的方式组合特定的特征、结构或特性。
示例性实施例包括用于管理经过在计算系统的根复合体上实现的多个高速外部组件互连(PCIe)段管理平台管理消息的方法,所述方法包括:接收PCIe管理消息作为管理组件传输协议(MCTP)分组,其中所述MCTP分组利用供应商定义消息(VDM)格式;从所述MCTP分组的目的地端点标识符(EID)字段提取PCIe总线段标识符;并且将接收到的PCIe管理消息路由到由所述PCIe总线段标识符标识的PCIe总线段。
在所述方法的某些实施例中,彼此结合或单独地实现下面中的一个或多个:i)其中确定是否将接收到的PCIe管理消息的VDM格式的目的地EID字段的一部分解释为PCI总线段标识符包括检查所述计算系统的基本输入/输出系统(BIOS)内的设置;ii)其中所述计算系统的BIOS规定将接收到的PCIe管理消息的VDM格式的EID目的地字段内的多个位解释为PCIe总线段标识符;iii)其中所述BIOS内的设置指示是否将接收到的PCIe管理消息的VDM格式的目的地EID字段的一部分解释为PCIe总线段标识符,或者是否将VDM格式的PCI目标标识符字段的一部分解释为处理器节点标识符:iv)其中所述计算系统的BIOS内的设置指示接收到的PCIe管理消息的VDM格式的PCI目标标识符字段的一部分被解释为处理器节点标识符,其中将所述PCIe管理消息路由到所标识的处理器节点,并且其中将所标识的处理器节点与第一处理器耦合,经过点对点处理器互连从该第一处理器接收所述PCIe消息;v)在当确定要将所述VDM格式的目的地EID字段的一部分解释为PCIe总线段标识符时,在提取所述PCIe总线段标识符之前,确定要将接收到的PCIe管理消息的VDM格式的EID目的地字段内的多个位解释为PCIe总线段标识符;vi)其中要被解释为PCIe总线段标识符的所述VDM格式的目的地EID字段的一部分是一个位、两个位、三个位、四个位和五个位中的一个;vii)其中路由所述PCIe管理消息包括将所述VDM格式的目的地EID字段的一部分内的PCIe总线段标识符与包含与第一处理器相关联的段标识符的根复合体的寄存器进行比较;viii)其中所述PCIe管理消息包含由所述计算系统的第二处理器插入的PCIe总线段标识符;ix)其中所述计算系统的第二处理器进一步包含插入在源EID字段中的PCIe总线段标识符。
示例性实施例包括一种装置,包括:根复合体,所述根复合体包括:配置为接收高速外围组件互连(PCIe)管理消息的管理组件传输协议(MCTP)消息逻辑,所述PCIe管理消息作为MCTP分组传输,其中所述MCTP分组利用供应商定义消息(VDM)格式;源地址解码器逻辑,配置为确定是否将接收到的PCIe管理消息的VDM格式的目的地端点标识符(EID)字段的一部分解释为PCIe总线段标识符;MCTP分组段标识符提取逻辑,配置为当确定将VDM格式的目的地EID字段的一部分解释为PCIe总线段标识符时提取所述PCIe总线段标识符;以及PCIe上MCTP管理逻辑,配置为将接收到的PCIe管理消息路由到由所述VDM格式的目的地EID字段的一部分内的PCIe总线段标识符指定的PCIe总线段。
在所述装置的某些实施例中,或者彼此结合或者单独地实现下面中的一个或多个:i)其中所述计算系统进一步包括基本输入/输出系统(BIOS),配置为存储用于所述计算系统的设置以便确定是否将接收到的PCIe管理消息的VDM格式的目的地EID字段的一部分解释为PCIe总线段标识符;ii)其中所述计算系统的BIOS指定将接收到的PCIe管理消息的VDM格式的EID目的地字段内的多个位解释为PCIe总线段标识符;iii)其中所述BIOS内的设置指示是否将接收到的PCIe管理消息的VDM格式的目的地EID字段的一部分解释为PCIe总线段标识符,或者是否将接收到的PCIe管理消息的VDM格式的PCI目标标识符字段的一部分解释为处理器节点标识符;iv)其中所述计算系统的BIOS内的设置指示将接收到的PCIe管理消息的VDM格式的PCI目标标识符字段的一部分解释为处理器节点标识符,其中将所述PCIe管理消息路由到所标识的处理器节点,并且其中所述标识的处理器节点与第一处理器耦合,经过点对点处理器互连从所述第一处理器接收PCIe消息;v)其中所述分组解释逻辑进一步配置为当确定将目的地EID字段的一部分解释为PCIe总线段标识符时,在提取所述PCIe总线段标识符之前,确定将接收到的PCIe管理消息的VDM格式的EID目的地字段内的多个位解释为PCIe总线段标识符;vi)其中要被解释为PCIe总线段标识符的接收到的PCIe管理消息的VDM格式的目的地EID字段的一部分是一个位、两个位、三个位、四个位和五个位中的一个;vii)其中所述根复合体进一步包括本地段标识符寄存器,配置为存储第一处理器的本地PCIe总线段的段标识符,并且其中利用所存储的所述本地PCIe总线段的段标识符来与所提取的接收到的MCTP消息的PCIe总线段标识符进行比较;viii)第二处理器,其中所述第二处理器配置为将PCIe总线段标识符插入到要被传输的MCTP消息中;ix)其中所述第二处理器进一步配置为将所述PCIe总线段标识符插入到要被传输的MCTP消息的源EID字段。
在前面的说明书中,已经参照具体的示例性实施例给出了详细描述。然而,显然的是,在不偏离在所附权利要求中阐释的本发明的广阔的精神和范围的情况下,可以对本发明进行各种修改和改变。因此,所述说明书和附图被认为具有说明性意义,而不是具有限制性意义。而且,之前使用的实施例或其它示例性语言不必指代同一实施例或同一示例,但是可以指代不同且独特的实施例,以及可能是同一实施例。
Claims (25)
1.一种用于管理平台管理消息的方法,包括:
接收串行差分点对点互连管理消息作为媒体独立协议分组,其中,所述媒体独立协议分组利用允许串行差分点对点互连的扩展的格式;
从所述分组的标识符字段提取总线段标识符;并且
将接收到的管理消息路由到由所述总线段标识符标识的总线段。
2.如权利要求1所述的方法,其中,确定是否将接收到的串行差分点对点互连管理消息的允许所述串行差分点对点互连的扩展的所述格式的目的地字段的一部分解释为总线段标识符包括检查所述计算系统的基本输入/输出系统(BIOS)内的设置。
3.如权利要求2所述的方法,其中,所述计算系统的BIOS指定要将接收到的串行差分点对点互连管理消息的允许所述串行差分点对点互连的扩展的所述格式的目的地字段内的多个位解释为串行差分点对点互连总线段标识符。
4.如权利要求2所述的方法,其中,所述BIOS内的设置指示是否将接收到的串行差分点对点互连管理消息的允许所述串行差分点对点互连的扩展的所述格式的目的地字段的一部分解释为串行差分点对点互连总线段标识符,或者是否将允许所述串行差分点对点互连的扩展的所述格式的目标标识符字段的一部分解释为处理器节点标识符。
5.如权利要求4所述的方法,其中,所述计算系统的BIOS内的设置指示将接收到的串行差分点对点互连管理消息的允许所述串行差分点对点互连扩展的所述格式的目标标识符字段的一部分解释为处理器节点标识符,其中,将所述串行差分点对点互连管理消息路由到所标识的处理器节点,并且其中,将所标识的处理器节点与第一处理器耦合,经过点对点处理器互连从所述第一处理器接收所述串行差分点对点互连消息。
6.如权利要求1所述的方法,进一步包括当确定要将允许所述串行差分点对点互连的扩展的所述格式的目的地字段的一部分解释为串行差分点对点互连总线段标识符时,在提取所述串行差分点对点互连总线段标识符之前,确定要将接收到的串行差分点对点互连管理消息的允许所述串行差分点对点互连的扩展的所述格式的目的地字段内的多个位解释为所述串行差分点对点互连总线段标识符。
7.如权利要求1所述的方法,其中,要被解释为串行差分点对点互连总线段标识符的允许所述串行差分点对点互连的扩展的所述格式的目的地字段的一部分是一个位、两个位、三个位、四个位和五个位中的一个。
8.如权利要求1所述的方法,其中,路由所述串行差分点对点互连管理消息包括将允许所述串行差分点对点互连的扩展的所述格式的目的地字段的一部分内的所述串行差分点对点互连总线段标识符与包含与第一处理器相关联的段标识符的根复合体的寄存器进行比较。
9.如权利要求8所述的方法,其中,所述串行差分点对点互连管理消息包含通过所述计算系统的第二处理器插入的所述串行差分点对点互连总线段标识符。
10.如权利要求9所述的方法,其中,所述计算系统的所述第二处理器进一步包含在源字段中插入的串行差分点对点互连总线段标识符。
11.一种装置,包括:
根复合体,所述根复合体包括:
消息逻辑,配置为接收串行差分点对点互连管理消息,所述串行差分点对点互连管理消息要被作为媒体独立协议分组进行传输,其中,所述媒体独立协议分组要利用允许串行差分点对点互连的扩展的格式;
解码器逻辑,配置为确定是否要将要被接收的串行差分点对点互连管理消息的允许所述串行差分点对点互连扩展的所述格式的目的地字段的一部分解释为串行差分点对点互连总线标识符;
提取逻辑,配置为当确定要将允许所述串行差分点对点互连的扩展的所述格式的目的地字段的一部分解释为串行差分点对点互连总线段标识符时,提取所述串行差分点对点互连总线段标识符;以及
管理逻辑,配置为将接收到的串行差分点对点互连管理消息路由到由允许所述串行差分点对点互连的扩展的所述格式的目的地字段的一部分内的所述串行差分点对点互连总线段标识符指定的串行差分点对点互连总线段。
12.如权利要求11所述的装置,其中,所述计算系统进一步包括基本输入/输出系统(BIOS),配置为存储用于所述计算系统的设置,以便确定是否将接收到的串行差分点对点互连管理信息的允许所述串行差分点对点互连的扩展的所述格式的目的地字段的一部分解释为串行差分点对点互连总线段标识符。
13.如权利要求12所述的装置,其中,所述计算系统的BIOS指定将接收到的串行差分点对点互连管理消息的允许所述串行差分点对点互连扩展的所述格式的目的地字段内的多个位解释为串行差分点对点互连总线段标识符。
14.如权利要求12所述的装置,其中,所述BIOS内的设置指示是否将接收到的串行差分点对点互连管理消息的允许所述串行差分点对点互连扩展的所述格式的目的地字段的一部分解释为串行差分点对点互连总线段标识符,或者是否将允许接收到的串行差分点对点互连管理消息的允许所述串行差分点对点互连的扩展的所述格式的目标标识符字段的一部分解释为处理器节点标识符。
15.如权利要求14所述的装置,其中,所述计算系统的BIOS内的设置指示将接收到的串行差分点对点互连管理消息的允许所述串行差分点对点互连的扩展的所述格式的目标标识符字段的一部分解释为处理器节点标识符,其中,将所述串行差分点对点互连管理消息路由到所标识的处理器节点,并且其中,将所标识的处理器节点与第一处理器耦合,经过点对点处理器互连从所述第一处理器接收所述串行差分点对点互连消息。
16.如权利要求11所述的装置,其中,所述分组解释逻辑进一步配置为当确定要将所述目的地字段的一部分解释为串行差分点对点互连总线段标识符时,在提取所述串行差分点对点互连总线段标识符之前,确定要将接收到的串行差分点对点互连管理消息的允许所述串行差分点对点互连的扩展的所述格式的目的地字段内的多个位解释为所述串行差分点对点互连总线段标识符。
17.如权利要求11所述的装置,其中,要被解释为串行差分点对点互连总线段标识符的接收到的串行差分点对点互连管理消息的允许所述串行差分点对点互连的扩展的所述格式的目的地字段的一部分是一个位、两个位、三个位、四个位和五个位中的一个。
18.如权利要求11所述的装置,其中,所述根复合体进一步包括本地段标识符寄存器,配置为存储第一处理器的本地串行差分点对点互连总线段的段标识符,并且其中,利用所存储的所述本地串行差分点对点互连总线段的段标识符来与接收到的媒体独立协议消息的所提取的串行差分点对点互连总线段标识符进行比较。
19.如权利要求18所述的装置,进一步包括第二处理器,其中,所述第二处理器配置为将串行差分点对点互连总线段标识符插入到要传输的媒体独立协议消息中。
20.如权利要求19所述的装置,其中,所述第二处理器进一步配置为将所述串行差分点对点互连总线段标识符插入到要传输的所述媒体独立协议消息的源字段中。
21.如权利要求11所述的装置,进一步包括:
耦合到所述根复合体的端点,所述端点用于:
接收串行差分点对点互连管理消息,所述串行差分点对点互连管理消息要被作为媒体独立协议分组进行传输,其中,所述媒体独立协议分组利用允许所述串行差分点对点互连的扩展的格式;
确定是否将要被接收的所述串行差分点对点互连管理消息的允许所述串行差分点对点互连的扩展的所述格式的目的地字段的一部分解释为串行差分点对点互连总线段标识符;
当确定要将允许所述串行差分点对点互连的扩展的所述格式的目的地字段的一部分解释为串行差分点对点互连总线段标识符时,提取所述串行差分点对点互连总线段标识符;并且
将接收到的串行差分点对点互连管理消息路由到要由允许串行差分点对点互连的扩展的所述格式的目的地EID字段的一部分内的所述串行差分点对点互连总线段标识符指定的串行差分点对点互连总线段。
22.权利要求11的所述装置,进一步包括:
触摸使能的输入设备。
23.一种装置,包括:
根复合体,所述根复合体包括:
管理组件传输协议(MCTP)消息逻辑,配置为接收高速外围组件互连(PCIe)管理消息,所述PCIe管理消息被作为MCTP分组进行传输,其中,所述MCTP分组利用允许串行差分点对点互连的扩展的格式;
源地址解码器逻辑,配置为确定是否将接收到的PCIe管理消息的允许所述串行差分点对点互连的扩展的所述格式的目的地字段的一部分解释为PCIe总线段标识符;
MCTP分组段标识符提取逻辑,配置为当确定要将允许所述串行差分点对点互连扩展的所述格式的目的地字段的一部分解释为PCIe总线段标识符时,提取所述PCIe总线段标识符;以及
PCIe上MCTP管理逻辑,配置为将接收到的PCIe管理消息路由到由允许所述串行差分点对点互连的扩展的所述格式的目的地字段的一部分内的所述PCIe总线段标识符指定的PCIe总线段。
24.如权利要求23所述的装置,其中,所述计算系统进一步包括基本输入/输出系统(BIOS),配置为存储用于所述计算系统的设置,以便确定是否将接收到的PCIe管理消息的允许所述串行差分点对点互连的扩展的所述格式的目的地字段的一部分解释为PCIe总线段标识符。
25.如权利要求23所述的装置,其中,所述分组解释逻辑进一步配置为当确定要将所述目的地字段的一部分解释为PCIe总线段标识符时,在提取所述PCIe总线段标识符之前,确定要将接收到的PCIe管理消息的允许所述串行差分点对点互连的扩展的所述格式的目的地字段内的多个位解释为所述PCIe总线段标识符。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/843,066 US9411762B2 (en) | 2013-03-15 | 2013-03-15 | Method and system for platform management messages across peripheral component interconnect express (PCIe) segments |
US13/843,066 | 2013-03-15 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104052621A true CN104052621A (zh) | 2014-09-17 |
CN104052621B CN104052621B (zh) | 2018-05-08 |
Family
ID=50280199
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410255092.8A Active CN104052621B (zh) | 2013-03-15 | 2014-03-14 | 用于跨快速外围组件互连(pcie)段的平台管理消息的方法和系统 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9411762B2 (zh) |
EP (1) | EP2778931B1 (zh) |
CN (1) | CN104052621B (zh) |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107453999A (zh) * | 2016-05-31 | 2017-12-08 | 新华三技术有限公司 | 一种网络设备和网络报文转发方法 |
CN108021518A (zh) * | 2017-11-17 | 2018-05-11 | 华为技术有限公司 | 一种数据交互方法和计算设备 |
CN108334400A (zh) * | 2017-01-18 | 2018-07-27 | 英特尔公司 | 为安全飞地管理存储器 |
CN109471493A (zh) * | 2017-09-08 | 2019-03-15 | 瑞昱半导体股份有限公司 | 扩展坞装置、电子装置及设置基本输入输出系统的方法 |
CN109582998A (zh) * | 2017-09-28 | 2019-04-05 | 英特尔公司 | 小巧PCIe端点的根复合体集成端点仿真 |
CN109684084A (zh) * | 2018-12-12 | 2019-04-26 | 浪潮(北京)电子信息产业有限公司 | 一种总线资源的分配方法、系统及相关组件 |
CN111352889A (zh) * | 2020-02-29 | 2020-06-30 | 苏州浪潮智能科技有限公司 | 一种基于mctp协议的设备管理方法、设备、装置和介质 |
TWI705334B (zh) * | 2019-04-22 | 2020-09-21 | 緯創資通股份有限公司 | 擴展系統與伺服器主機及其操作方法 |
CN113687869A (zh) * | 2021-10-27 | 2021-11-23 | 苏州浪潮智能科技有限公司 | 一种兼容txt功能和asd功能的方法和装置 |
CN113836060A (zh) * | 2021-09-24 | 2021-12-24 | 北京机电工程研究所 | 一种适用于仿真模型及流程模型的分布式实时仿真平台 |
CN113906400A (zh) * | 2019-04-29 | 2022-01-07 | 迈凌有限公司 | 经由PCIe(高速串行计算机扩展总线)链接的系统通信技术 |
CN113961481A (zh) * | 2021-12-23 | 2022-01-21 | 苏州浪潮智能科技有限公司 | 一种cpu互联总线架构及电子设备 |
CN114153768A (zh) * | 2021-11-26 | 2022-03-08 | 山东云海国创云计算装备产业创新中心有限公司 | 一种数据传输方法、装置、设备及计算机可读存储介质 |
WO2022116801A1 (en) * | 2020-12-03 | 2022-06-09 | Huawei Technologies Co., Ltd. | Peripheral component interconnect express protection controller |
CN115277348A (zh) * | 2022-07-20 | 2022-11-01 | 阿里巴巴(中国)有限公司 | 一种服务器管理方法、服务器及服务器管理系统 |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9043527B2 (en) * | 2013-01-04 | 2015-05-26 | American Megatrends, Inc. | PCI express channel implementation in intelligent platform management interface stack |
CN105653197A (zh) * | 2014-10-20 | 2016-06-08 | 伊姆西公司 | 数据缓存设备和用于数据缓存的方法 |
US11157200B2 (en) * | 2014-10-29 | 2021-10-26 | Hewlett-Packard Development Company, L.P. | Communicating over portions of a communication medium |
US9552269B2 (en) * | 2014-12-23 | 2017-01-24 | Intel Corporation | Test logic for a serial interconnect |
US10229076B2 (en) | 2015-09-09 | 2019-03-12 | International Business Machines Corporation | Peripheral component interconnect express (PCIE) pseudo-virtual channels using vendor defined messages |
US10157153B2 (en) * | 2016-02-03 | 2018-12-18 | Qualcomm Incorporated | Inline cryptographic engine (ICE) for peripheral component interconnect express (PCIe) systems |
US10360114B2 (en) * | 2016-02-24 | 2019-07-23 | Quanta Computer Inc. | Hardware recovery systems |
US10402252B1 (en) * | 2016-03-30 | 2019-09-03 | Amazon Technologies, Inc. | Alternative event reporting for peripheral devices |
TWI602368B (zh) * | 2016-11-01 | 2017-10-11 | 仁寶電腦工業股份有限公司 | 轉接模組及具有其之電子裝置 |
US10242176B1 (en) | 2017-01-17 | 2019-03-26 | Cisco Technology, Inc. | Controlled access communication between a baseboard management controller and PCI endpoints |
US10769094B2 (en) * | 2017-02-01 | 2020-09-08 | Hewlett-Packard Development Company, L.P. | Configuration options for display devices |
WO2018209513A1 (zh) * | 2017-05-15 | 2018-11-22 | 华为技术有限公司 | 操作硬盘的方法和硬盘管理器 |
CN111860020A (zh) | 2018-04-25 | 2020-10-30 | 创新先进技术有限公司 | 业务处理方法、装置以及设备 |
US10846250B2 (en) | 2018-11-12 | 2020-11-24 | Arm Limited | Apparatus and method for handling address decoding in a system-on-chip |
US11296905B2 (en) * | 2018-12-13 | 2022-04-05 | Ati Technologies Ulc | Management component transport protocol (MCTP) support for multiple bus segment groups |
US11132215B2 (en) * | 2019-06-27 | 2021-09-28 | Intel Corporation | Techniques to facilitate out of band management in a virtualization environment |
US11410264B2 (en) | 2019-09-27 | 2022-08-09 | Intel Corporation | Switchable image source in a hybrid graphics systems |
US11334416B2 (en) * | 2019-10-25 | 2022-05-17 | Dell Products L.P. | System and method for transferring peripheral firmware core data |
US11314673B2 (en) * | 2019-12-27 | 2022-04-26 | Texas Instruments Incorporated | Configurable multi-function PCIe endpoint controller in an SoC |
WO2021168758A1 (zh) * | 2020-02-27 | 2021-09-02 | 华为技术有限公司 | 一种基于PCIe的通信方法及装置 |
US20230214346A1 (en) * | 2021-12-30 | 2023-07-06 | Ati Technologies Ulc | Allocating peripheral component interface express (pcie) streams in a configurable multiport pcie controller |
US11960439B2 (en) * | 2022-03-09 | 2024-04-16 | Intel Corporation | Scalable MCTP infrastructure |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7069477B2 (en) * | 2002-10-30 | 2006-06-27 | International Business Machines Corporation | Methods and arrangements to enhance a bus |
US8776080B2 (en) | 2007-09-25 | 2014-07-08 | Intel Corporationa | Management component transport protocol interconnect filtering and routing |
US7752346B2 (en) * | 2007-12-21 | 2010-07-06 | Aprius, Inc. | Universal routing in PCI-Express fabrics |
US20100011146A1 (en) * | 2008-07-11 | 2010-01-14 | Lsi Corporation | Conveying Information With a PCI Express Tag Field |
US8370534B2 (en) * | 2009-12-03 | 2013-02-05 | Dell Products, Lp | Host-based messaging framework for PCIe device management |
US9077761B2 (en) * | 2011-02-16 | 2015-07-07 | Dell Products L.P. | System and method for scalable, efficient, and robust system management communications via vendor defined extensions |
EP2515241B1 (en) | 2011-04-21 | 2016-05-25 | RJ Intellectual Properties, LLC | Unified system area network and switch |
US8970498B2 (en) * | 2011-04-29 | 2015-03-03 | Hewlett-Packard Development Company, L.P. | Touch-enabled input device |
US8904079B2 (en) * | 2012-06-25 | 2014-12-02 | Intel Corporation | Tunneling platform management messages through inter-processor interconnects |
-
2013
- 2013-03-15 US US13/843,066 patent/US9411762B2/en active Active
-
2014
- 2014-03-13 EP EP14159595.9A patent/EP2778931B1/en active Active
- 2014-03-14 CN CN201410255092.8A patent/CN104052621B/zh active Active
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107453999B (zh) * | 2016-05-31 | 2020-10-02 | 新华三技术有限公司 | 一种网络设备和网络报文转发方法 |
CN107453999A (zh) * | 2016-05-31 | 2017-12-08 | 新华三技术有限公司 | 一种网络设备和网络报文转发方法 |
CN108334400A (zh) * | 2017-01-18 | 2018-07-27 | 英特尔公司 | 为安全飞地管理存储器 |
CN108334400B (zh) * | 2017-01-18 | 2024-01-12 | 英特尔公司 | 为安全飞地管理存储器 |
CN109471493A (zh) * | 2017-09-08 | 2019-03-15 | 瑞昱半导体股份有限公司 | 扩展坞装置、电子装置及设置基本输入输出系统的方法 |
CN109471493B (zh) * | 2017-09-08 | 2020-10-23 | 瑞昱半导体股份有限公司 | 扩展坞装置、电子装置及设置基本输入输出系统的方法 |
CN109582998A (zh) * | 2017-09-28 | 2019-04-05 | 英特尔公司 | 小巧PCIe端点的根复合体集成端点仿真 |
CN108021518A (zh) * | 2017-11-17 | 2018-05-11 | 华为技术有限公司 | 一种数据交互方法和计算设备 |
CN108021518B (zh) * | 2017-11-17 | 2019-11-29 | 华为技术有限公司 | 一种数据交互方法和计算设备 |
CN109684084A (zh) * | 2018-12-12 | 2019-04-26 | 浪潮(北京)电子信息产业有限公司 | 一种总线资源的分配方法、系统及相关组件 |
TWI705334B (zh) * | 2019-04-22 | 2020-09-21 | 緯創資通股份有限公司 | 擴展系統與伺服器主機及其操作方法 |
US11442518B2 (en) | 2019-04-22 | 2022-09-13 | Wistron Corp. | Extended system, server host and operation method thereof |
CN113906400A (zh) * | 2019-04-29 | 2022-01-07 | 迈凌有限公司 | 经由PCIe(高速串行计算机扩展总线)链接的系统通信技术 |
CN111352889B (zh) * | 2020-02-29 | 2021-10-19 | 苏州浪潮智能科技有限公司 | 一种基于mctp协议的设备管理方法、设备、装置和介质 |
CN111352889A (zh) * | 2020-02-29 | 2020-06-30 | 苏州浪潮智能科技有限公司 | 一种基于mctp协议的设备管理方法、设备、装置和介质 |
WO2022116801A1 (en) * | 2020-12-03 | 2022-06-09 | Huawei Technologies Co., Ltd. | Peripheral component interconnect express protection controller |
CN113836060A (zh) * | 2021-09-24 | 2021-12-24 | 北京机电工程研究所 | 一种适用于仿真模型及流程模型的分布式实时仿真平台 |
CN113836060B (zh) * | 2021-09-24 | 2024-05-28 | 北京机电工程研究所 | 一种适用于仿真模型及流程模型的分布式实时仿真平台 |
CN113687869A (zh) * | 2021-10-27 | 2021-11-23 | 苏州浪潮智能科技有限公司 | 一种兼容txt功能和asd功能的方法和装置 |
CN114153768A (zh) * | 2021-11-26 | 2022-03-08 | 山东云海国创云计算装备产业创新中心有限公司 | 一种数据传输方法、装置、设备及计算机可读存储介质 |
CN113961481A (zh) * | 2021-12-23 | 2022-01-21 | 苏州浪潮智能科技有限公司 | 一种cpu互联总线架构及电子设备 |
CN115277348A (zh) * | 2022-07-20 | 2022-11-01 | 阿里巴巴(中国)有限公司 | 一种服务器管理方法、服务器及服务器管理系统 |
Also Published As
Publication number | Publication date |
---|---|
EP2778931B1 (en) | 2016-04-27 |
CN104052621B (zh) | 2018-05-08 |
EP2778931A1 (en) | 2014-09-17 |
US20140281070A1 (en) | 2014-09-18 |
US9411762B2 (en) | 2016-08-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104052621A (zh) | 用于跨快速外围组件互连(pcie)段的平台管理消息的方法和系统 | |
CN104063290B (zh) | 处理超时的系统、方法和装置 | |
CN104050114B (zh) | 同步端口进入低功率状态的系统、方法和设备 | |
CN107409056B (zh) | 用于促进数据通信的装置、系统、方法和设备 | |
CN109891399B (zh) | 在相同的物理串行总线集线器上产生多个虚拟串行总线集线器实例的装置和方法 | |
CN108701109A (zh) | 用于计算机扩展总线的插件机制的方法、装置和系统 | |
CN110532212A (zh) | 用于有效外围组件管理的dvsec的系统、方法和装置 | |
TWI524184B (zh) | 用於在分散式記憶體組織架構中處理位址衝突之方法、設備及系統 | |
CN107924380A (zh) | 使用业务类别分配高速缓存的方法、装置和系统 | |
CN105027444B (zh) | 集成时钟差分缓冲 | |
CN108027785B (zh) | 用于对链路拆分进行去偏斜的方法、设备和系统 | |
CN109634899A (zh) | 针对pcie进行sris模式选择的系统、方法和装置 | |
CN109074341B (zh) | 减少引脚计数接口 | |
CN107278299A (zh) | 经由可重配置的虚拟交换机实现次级总线功能性的方法、装置和系统 | |
CN106462208A (zh) | Usb电力输送控制器共享 | |
CN107003971A (zh) | 用于高性能互连中的嵌入式流通道的方法、装置、系统 | |
CN104956347A (zh) | 将一种互连协议的枚举和/或配置机制用于不同的互连协议 | |
CN105830053A (zh) | 用于快速配置机制的装置、方法和系统 | |
CN105378694A (zh) | 用于执行与通用串行总线(usb)装置的管理组件传输协议(mctp)通信的方法、设备和系统 | |
CN110121703B (zh) | 用于向量通信的系统和方法 | |
US20210389371A1 (en) | Debug data communication system for multiple chips | |
CN109643577A (zh) | 用于存储器训练的电参数的多维优化 | |
US20220116322A1 (en) | Interconnect network for multi-tile system on chips | |
CN116340250A (zh) | 分立图形的加速器结构 | |
US20220121594A1 (en) | Soc architecture to reduce memory bandwidth bottlenecks and facilitate power management |
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 |