高性能互连物理层的制作方法

文档序号:14099846阅读:288来源:国知局
高性能互连物理层的制作方法
本公开概括而言涉及计算机发展的领域,并且更具体地涉及包括对相互依赖的约束系统进行协调的软件发展。
背景技术
:在半导体处理和逻辑设计中的进步允许可以存在于集成电路设备中的逻辑的数量的增加。作为必然结果,计算机系统配置从系统中的单个或多个集成电路发展到存在于单独集成电路上的多个核心、多个硬件线程和多个逻辑处理器,以及集成在这样的处理器中的其它接口。处理器或集成电路一般包括单个物理处理器管芯,其中处理器管芯可以包括任何数量的核心、硬件线程、逻辑处理器、接口、存储器、控制器集线器等。作为在较小封装中适合较大处理功率的较大能力的结果,较小的计算设备增加了普及性。智能电话、平板计算机、超薄笔记本计算机和其它用户设备指数地增长。然而,所述较小的设备依赖于用于数据存储和超过规格因子的复杂处理二者的服务器。因此,对高性能计算市场(即,服务器空间)的需求也增加了。例如,在现代服务器中,一般不仅存在具有多个核心的单个处理器,而存在多个物理处理器(也被称为多个插口)以增加计算能力。但当处理功率连同计算系统中的设备的数量一起增长时,在插口和其它设备之间的通信变得更加重要。事实上,互连从主要操纵电通信的多个传统多点总线增长到促成快速通信的充分发展的互连架构。不幸的是,作为对未来的处理器甚至消耗更高的速率的相对应的要求,关注对现有的互连架构的能力。附图说明图1示出了根据一个实施例的包括用于连接在计算机系统中的I/O设备的串联点对点互连的系统的简化框图。图2示出了根据一个实施例的分层协议栈的简化框图。图3示出了事务描述符的实施例。图4示出了串联点对点链路的实施例。图5示出了潜在的高性能互连(HPI)系统配置的实施例。图6示出了与HPI相关联的分层协议栈的实施例。图7示出了示例状态机的表示。图8示出了示例控制超序列。图9示出了嵌入在数据流中的示例控制窗口的表示。图10示出了示例握手的流程图。图11示出了到部分宽度状态的示例转变的流程图。图12示出了从部分宽度状态的示例转变。图13示出了用于包括多核处理器的计算系统的框图的实施例。图14示出了用于包括多核处理器的计算系统的框图的另一实施例。图15示出了用于处理器的框图的实施例。图16示出了用于包括处理器的计算系统的框图的另一实施例。图17示出了包括多个处理器插口的计算系统的块的实施例。图18示出了用于计算系统的框图的另一实施例。在各种附图中相似的附图标记和名称指示相似的元件。具体实施方式在下面的描述中,阐述了很多特定的细节,例如,特定类型的处理器和系统配置、特定的硬件结构、特定的架构和微架构细节、特定的寄存器配置、特定的指令类型、特定的系统部件、特定的处理器管线级、特定的互连层、特定的分组/事务配置、特定的事务名称、特定的协议交换、特定的链路宽度、特定的实现和操作等的示例,以便提供对本发明的透彻的理解。然而对本领域中的技术人员而言可能显而易见的是,这些特定的细节不需要一定被应用来实施本公开的主题。在其它实例中,避免了公知部件或方法的非常详细的描述,以便避免不必要地使本公开难理解,所述公知部件或方法例如是,特定和可选的处理器架构、所述算法的特定的逻辑电路/代码、特定的固件代码、低级互连操作、特定的逻辑配置、特定的制造技术和材料、特定的编译器实现、以代码形式的算法的特定表达、特定的断电和选通技术/逻辑和计算系统的其它特定的操作细节。虽然下面的实施例可以参考在特定的集成电路中的能量节约、能量效率、处理效率等(例如,在计算平台或微处理器中)进行了描述,但是其它实施例可适用于其它类型的集成电路和逻辑设备。本文描述的实施例的类似的技术和教导可以被应用于也可以受益于这样的特征的其它类型的电路或半导体设备。例如,所公开的实施例不限于服务器计算机系统、桌上型计算机系统、膝上型计算机、UltrabooksTM,而还可以应用在其它设备(例如,手持设备、智能电话、平板计算机、其它薄笔记本计算机、片上系统(SOC)设备和嵌入式应用)中。手持设备的一些示例包括蜂窝电话、互联网协议设备、数字照相机、个人数字助理(PDA)和手持PC。在这里,用于高性能互连的类似技术可以应用于提高在低功率互连中的性能(或甚至节省功率)。所嵌入的应用一般包括微控制器、数字信号处理器(DSP)、片上系统、网络计算机(NetPC)、机顶盒、网络集线器、广域网(WAN)交换机或可以执行下面教导的功能和操作的任何其它系统。而且,本文描述的装置、方法和系统不限于物理计算设备,而还可以涉及对能量节约和效率的软件优化。如可以在下面的描述中变得容易显而易见的,本文描述的装置、方法和系统的实施例(无论是关于硬件、固件、软件还是其组合的)可以被考虑为对与性能考虑因素平衡的“绿色技术”未来是极其重要的。当计算系统进步时,其中的部件变得更复杂。在部件之间耦合和通信的互连架构也增加了复杂性,以确保针对最佳部件操作满足带宽要求。此外,不同的市场区隔要求互连架构的不同方面适合相应的市场。例如,服务器需要较高的性能,而移动生态系统有时能够针对功率节省而牺牲总性能。然而,大部分结构的单一目的是以最大的功率节省提供最大可能的性能。此外,各种不同的互连可以潜在地受益于本文描述的主题。快速外部部件互连(PCI)(PCIe)互连结构架构和快速通道互连(QPI)结构架构连同其它示例可以潜在地根据本文描述的一个或多个原理被提高,以及其它示例。例如,PCIe的主要目标能够使来自不同销售方的部件和设备能够在跨越多个市场区隔的开放式架构、客户端(桌上型计算机和移动设备)、服务器(标准和企业)、以及嵌入式和通信设备中进行交互操作。快速PCI是针对各种各样的未来计算和通信平台定义的高性能、通用I/O互连。一些PCI属性(例如,其使用模型、装入-存储架构、以及软件接口)通过其修订版被维持,而以前的并行总线实现由高度可扩展的、完全串行接口所代替。快速PCI的最近版本利用在点对点互连、基于交换机的技术和分组化的协议中的进步来交付新水平的性能和特征。功率管理、服务质量(QoS)、热插拔/热交换支持、数据整体性和误差操作是在由快速PCI所支持的一些先进特征当中的。虽然本文主要讨论的是参考新的高性能互连(HPI)架构,但是本文描述的本发明的方面可以被应用于其它互连架构,例如,符合PCIe的架构、符合QPI的架构、符合MIPI的架构、高性能架构、或其它已知的互连架构。参考图1,示出了由使部件的集合互连的点对点链路组成的结构的实施例。系统100包括耦合到控制器集线器115的处理器105和系统存储器110。处理器105可以包括任何处理元件,例如,微处理器、主机处理器、嵌入式处理器、协处理器、或其它处理器。处理器105通过前端总线(FSB)106耦合到控制器集线器115。在一个实施例中,FSB106是如下所述的串行点对点互连。在另一实施例中,链路106包括符合不同的互连标准的串行、差分互连架构。系统存储器110包括任何存储器设备,例如,随机存取存储器(RAM)、非易失性(NV)存储器、或由系统100中的设备可访问的其它存储器。系统存储器110通过存储器接口116耦合到控制器集线器115。存储器接口的示例包括双数据率(DDR)存储器接口、双通道DDR存储器接口、和动态RAM(DRAM)存储器接口。在一个实施例中,控制器集线器115可以包括例如在PCIe互连分级结构中的根集线器、根复合体、或根控制器。控制器集线器115的示例包括芯片组、存储器控制器集线器(MCH)、北桥、互连控制器集线器(ICH)、南桥、和根控制器/集线器。术语芯片组通常指两个物理地分离的控制器集线器,例如,耦合到互连控制器集线器(ICH)的存储器控制器集线器(MCH)。注意,当前系统通常包括与处理器105集成的MCH,而控制器115以与下面描述的类似的方式与I/O设备进行通信。在一些实施例中,对等路由可选地通过根复合体115来被支持。在这里,控制器集线器115通过串行链路119耦合到交换机/桥120。还可以被称为接口/端口117和121的输入/输出模块117和121可以包括/实现分层协议栈,以提供在控制器集线器115和交换机120之间的通信。在一个实施例中,多个设备能够被耦合到交换机120。交换机/桥120将分组/消息从设备125向上,即,沿着分级结构向上朝着根复合体路由到控制器集线器115,并且向下,即,从根控制器沿着分级结构向下、从处理器105或系统存储器110路由到设备125。在一个实施例中,交换机120被称为多个虚拟PCI到PCI桥设备的逻辑组件。设备125包括被耦合到电子系统(例如,I/O设备、网络接口控制器(NIC)、插卡、音频处理器、网络处理器、硬盘驱动器、存储设备、CD/DVDROM、监视器、打印机、鼠标、键盘、路由器、便携式存储设备、火线设备、通用串行总线(USB)设备、扫描仪、以及其它输入/输出设备)的任何内部或外部设备或部件。通常在PCIe术语中,例如,设备被称为端点。虽然没有特别示出,但是设备125可以包括用于支持设备或由这样的设备支持的互连结构的旧版本或其它版本的桥(例如,PCIe到PCI/PCI-X桥)。图形加速器130还可以通过串行链路132被耦合到控制器集线器115。在一个实施例中,图形加速器130耦合到MCH,所述MCH被耦合到ICH。交换机120和相应地I/O设备125然后被耦合到ICH。I/O模块131和118还用于实现分层协议栈,以在图形加速器130和控制器集线器115之间进行通信。类似于上面讨论的MCH,图形控制器或图形加速器130本身可以被集成在处理器105中。转到图2,示出了分层协议栈的实施例。分层协议栈200可以包括任何形式的分层通信栈,例如,QPI栈、PCIe栈、下一代高性能计算互连(HPI)栈或其它分层栈。在一个实施例中,协议栈200可以包括事务层205、链路层210、以及物理层220。接口(例如,图1中的接口117、118、121、122、126和131)可以被表示为通信协议栈200。作为通信协议栈的表示也可以被称为实现/包括协议栈的模块或接口。分组可以用于在部件之间传递信息。分组可以在事务层205和数据链路层210中形成,以将信息从发送部件携带到接收部件。当所发送的分组流动通过其它层时,所发送的分组被扩展带有用于在那些层处理分组的附加的信息。在接收侧处,发生反向过程,并且分组从其物理层220表示转换成数据链路层210表示,并且最后(对于事务层分组)转换成可以由接收设备的事务层205处理的形式。在一个实施例中,事务层205可以提供在设备的处理核心和互连架构(例如,数据链路层210和物理层220)之间的接口。在这个方面中,事务层205的主要职责可以包括分组(即,事务层分组或TLP)的组装和分解。事务层205还可以管理用于TLP的基于信用的流控制。在一些实现中,可以利用分离的事务,即,具有由时间分离的请求和响应的事务,允许链路携带其它业务,同时目标设备收集用于响应的数据,以及其它示例。基于信用的流控制可以被用于利用互连结构来实现虚拟通道和网络。在一个示例中,设备可以告知在事务层205中的接收缓冲器中的每一个的初始信用量。在链路的对端处的外部设备(例如,图1中的控制器集线器115)可以对由每一个TLP消耗的信用的数量进行计数。如果事务不超过信用限制,则事务可以被发送。当接收到响应时,信用的量被恢复。这样的信用方案的优点的一个示例是信用返回的延迟不影响性能,假定信用限制未被遇到,以及其它潜在的优点。在一个实施例中,四个事务地址空间可以包括配置地址空间、存储器地址空间、输入/输出地址空间、以及消息地址空间。存储器空间事务包括用于向/从存储器映射的位置传递数据的一个或多个读请求和写请求。在一个实施例中,存储器空间事务能够使用两个不同的地址格式,例如,短地址格式(例如,32位地址)或长地址格式(例如,64位地址)。配置空间事务可以被用于访问连接到互连的各种设备的配置空间。用于配置空间的事务可以包括读请求和写请求。消息空间事务(或,仅仅消息)还可以被限定为支持在互连代理之间的带内通信。因此,在一个示例实施例中,事务层205可以组装分组头部/有效载荷206。快速参考图3,示出了事务层分组描述符的示例实施例。在一个实施例中,事务描述符300可以是用于携带事务信息的机制。在这个方面中,事务描述符300支持对系统中的事务的识别。其它可能的使用包括跟踪对默认事务排序的修改和事务与通道的关联性。例如,事务描述符300可以包括全局标识符字段302、属性字段304和通道标识符字段306。在所示出的示例中,描绘了包括局部事务标识符字段308和源标识符字段310的全局标识符字段302。在一个实施例中,全局事务标识符302对于所有未完成的请求是唯一的。根据一个实现,局部事务标识符字段308是由请求代理生成的字段,并且可能对于需要完成该请求代理的所有未完成的请求是唯一的。此外,在本示例中,源标识符310唯一地标识在互连分级结构内的请求程序代理。因此,连同源ID310一起,局部事务标识符308字段提供了在分级结构域内的事务的全局标识。属性字段304指定了事务的特征和关系。在这个方面中,属性字段304潜在地用于提供允许对事务的默认处理进行修改的附加的信息。在一个实施例中,属性字段304包括优先级字段312、预留字段314、排序字段316和非窥探字段318。在这里,优先级子字段312可以由启动器修改以将优先级分配给事务。预留属性字段314被预留以用于未来或销售方定义使用。可以使用预留的属性字段来实现使用优先级或安全属性的可能的使用模型。在本示例中,排序属性字段316用于供应传达可选信息,所述可选信息可以修改默认排序规则的排序的类型。根据一个示例实现,“0”的排序属性表示要应用的默认排序规则,其中“1”的排序属性表示放宽的排序,其中写可以在同一方向上通过写,并且读完成可以在同一方向上通过写。窥探属性字段318用来确定事务是否被窥探。如所示出的,通道ID字段306识别与事务相关联的通道。返回到对图2的讨论,也被称为数据链路层210的链路层210可以充当在事务层205和物理层220之间的中间级。在一个实施例中,数据链路层210的职责是提供用于在链路上的两个部件之间交换事务层分组(TLP)的可靠机制。数据链路层210的一侧接受由事务层205组装的TLP,应用分组序列标识符211,即,标识号或分组号,计算并且应用误差检测码,即,CRC212,并且将所修改的TLP提交到物理层220以用于越过物理设备传输到外部设备。在一个示例中,物理层220包括用于将分组物理地发送到外部设备的逻辑子块221和电气子块222。在这里,逻辑子块221负责物理层221的“数字”功能。在这个方面中,逻辑子块可以包括准备外发信息以用于由物理子块222传输的发送部分和在将所接收的信息传递到链路层210之前识别并且准备所接收的信息的接收器部分。物理块222包括发射器和接收器。发射器由逻辑子块221供应符号,发射器将所述符号串行化并且发送到外部设备上。接收器被供应有来自外部设备的串行化符号,并且将所接收的信号转换成位流。位流被解串行化,并且被供应到逻辑子块221。在一个示例实施例中,应用8b/10b传输代码,其中十位符号被发送/接收。在这里,特殊符号被用于使用帧223来构造分组。此外,在一个示例中,接收器还提供从进入的串行流恢复的符号时钟。如上面所指示的,虽然关于协议栈的特定实施例(例如,PCIe协议栈)讨论了事务层205、链路层210和物理层220,但是分层协议栈并不限于此。事实上,任何分层协议都可以被包括/实现,并且可以采纳所本文讨论的特征。作为示例,被表示为分层协议的端口/接口可以包括:(1)用于组装分组的第一层,即,事务层;用于按顺序排列分组的第二层,即,链路层;以及用于发送分组的第三层,即,物理层。作为特定的示例,利用如在本文描述的高性能互连分层协议。接着参考图4,示出了串行点对点结构的示例实施例。串行点对点链路可以包括用于发送串行数据的任何传输路径。在所示的实施例中,链路可以包括两个、低电压、差分驱动信号对:传输对406/411和接收对412/407。因此,设备405包括用于将数据发送到设备410的传输逻辑406,和用于从设备410接收数据的接收逻辑407。换句话说,两个传输路径,即,路径416和417,以及两个接收路径,即,路径418和419,被包括在链路的一些实现中。传输路径指用于发送数据的任何路径,例如,传输线、铜线、光学线、无线通信通道、红外通信链路、或其它通信路径。在两个设备(例如,设备405和设备410)之间的连接被称为链路,例如,链路415。链路可以支持一个通路(lane),每一个通路表示一组差分信号对(一对用于传输,一对用于接收)。为了按比例调整带宽,链路可以聚集由xN表示的多个通路,其中N是任何支持的链路宽度,例如,1、2、4、8、12、16、32、64或更宽。差分对可以指两个传输路径(例如,线416和417),以用于发送差分信号。作为示例,当线416从低电压电平切换到高电压电平时,即,上升沿时,线417从高逻辑电平驱动到低逻辑电平,即,下降沿。差分信号潜在地表明更好的电特性,例如,更好的信号整体性,即,交叉耦合、电压过冲/欠冲、振铃、连同其它示例优点。这允许更好的定时窗口,其能够实现更快的传输频率。在一个实施例中,提供了新的高性能互连(HPI)。HPI可以包括下一代高速缓存器相干的、基于链路的互连。作为一个示例,HPI可以在高性能计算平台(例如,工作站或服务器)中被利用,所述高性能计算平台包括PCIe或另一互连协议一般被用于连接处理器、加速器、I/O设备等的系统。然而,HPI并不限于此。替代地,HPI可以被利用在本文描述的任一系统或平台中。此外,所发展的单独的思想可以被应用于其它互连和平台,例如,PCIe、MIPI、QPI等。在一个示例实现中,为了支持多个设备,HPI可以包括不可知的指令集架构(ISA)(即,HPI能够在多个不同的设备中被实现)。在另一场景中,HPI还可以被用来连接高性能I/O设备,不仅仅是处理器或加速器。例如,高性能PCIe设备可以通过适当的转换桥(即,HPI到PCIe)耦合到HPI。而且,HPI链路可以由很多基于的HPI的设备(例如,处理器)以各种方式(例如,星形、环形、网等)被利用。图5示出了多个可能的多插口配置的示例实现。如所描绘的双插口配置505可以包括两个HPI链路;然而,在其它实现中,可以利用一个HPI链路。对于较大的拓扑,只要标识符(ID)是可指定的,并且存在某种形式的虚拟路径,连同其它附加的或替代的特征,则可以利用任何配置。如所示出的,在一个示例中,四插口配置510具有从每一个处理器到另一处理器的HPI链路。但在配置515中所示的八插口实现中,不是每个插口都通过HPI链路直接相互连接。然而,如果虚拟路径或通道存在于处理器之间,则配置被支持。所支持的处理器的范围包括在本地域中的2-32。可以通过使用多个域或在节点控制器之间的其他互连来实现更多数量的处理器,连同其它示例。HPI架构包括分层协议架构的定义,在一些示例中,分层协议架构包括协议层(基于相干性、非相干性、和可选地其它存储器的协议)、路由层、链路层、和物理层。此外,HPI还可以包括与功率管理器(例如,功率控制单元(PCU))有关的增强、对测试和调试(DFT)、默认处理、寄存器、安全性的设计、连同其它示例。图5示出了示例HPI分层协议栈的实施例。在一些实现中,图5所示的至少一些层可以是可选的。每一层处理其自己级别的信息(具有分组630的协议层605a,b、具有链路层传送单元635的链路层610a,b、以及具有物理层传送单元640的物理层605a,b)的粒度或总量。注意,在一些实施例中,基于实现分组可以包括部分链路层传送单元、单个链路层传送单元或多个链路层传送单元。作为第一示例,物理层传送单元640的宽度包括链路宽度到位的1对1映射(例如,20位链路宽度包括20位的物理层传送单元等)。链路层传送单元可以具有较大的尺寸,例如,184、192或200位。注意,如果物理层传送单元640是20位宽,并且链路层传送单元635的尺寸是184位,则它占据极小数量的物理层传送单元640以发送一个链路层传送单元635(例如,用于发送184位链路层传送单元635的在20位处的9.2物理层传送单元或用于发送192位链路层传送单元的在20位处的9.6、连同其它示例)。注意,在物理层处的基本链路的宽度可以不同。例如,每方向通路的数量可以包括2、4、6、8、10、12、14、16、18、20、22、24等。在一个实施例中,链路层610a、b能够将多条不同事务嵌入在单个链路层传送单元中,并且一个多个头部(例如,1、2、3、4)可以被嵌入在链路层传送单元内。在一个示例中,HPI将头部分成相对应的槽,以使多个消息能够在去往不同的节点的链路层传送单元中。在一个实施例中,物理层605a、b能够负责在物理介质(电或光等)上对信息的快速传送。物理链路可以是在两个链路层实体(例如,层605a和605b)之间的点对点。链路层610a、b可以从上层提取物理层605a、b,并且提供可靠地传输数据(以及请求)并且管理在两个直接连接的实体之间的流控制的能力。链路层也可以负责将物理通道虚拟化成多个虚拟通道和消息类。协议层620a、b依赖于链路层610a、b,以在将协议消息递交到物理层605a、b以用于在物理链路上传送之前将协议消息映射到适当的消息类和虚拟通道中。链路层610a、b可以支持多个消息,例如,请求、窥探、响应、写回、非相干性数据、连同其它示例。HPI的物理层605a、b(或PHY)可以在电气层(即,连接两个部件的电导体)之上和链路层610a、b之下实现,如图6所示。物理层和相对应的逻辑可以存在于每一个代理上,并且连接在彼此分离的两个代理(A和B)上(例如,在链路的任一侧上的设备上)的链路层。本地和远程电气层是由物理介质(例如,电线、导体、光学的等)连接的。在一个实施例中,物理层605a、b具有两个主要阶段:初始化和操作。在初始化期间,连接对链路层是不透明的,并且信令可以涉及计时状态和握手事件的组合。在操作期间,连接对链路层是透明的,并且信令在某速度下,将所有通路操作作为单个链路。在操作阶段期间,物理层将链路层传送单元从代理A传送到代理B,并且从代理B传送到代理A。连接也被称为链路,并且从链路层提取包括媒体、宽度和速度的一些物理方面,同时与链路层交换链路层传送单元和当前配置(例如,宽度)的控制/状态。初始化阶段包括次要阶段,例如,轮询、配置。操作阶段也包括次要阶段(例如,链路功率管理状态)。在一个实施例中,链路层610a、b可以被实现,以便提供在两个协议或路由实体之间的可靠的数据传送。链路层可以从协议层620a、b提取物理层605a、b,并且可以负责在两个协议代理(A、B)之间的流控制,并且向协议层(消息类)和路由层(虚拟网络)提供虚拟通道服务。在协议层620a、b和链路层610a、b之间的接口一般可以处于分组级。在一个实施例中,在链路层处的最小传送单元被称为链路层传送单元(flit),其为指定数量的位,例如,192位或某些其它单位。链路层605a、b依赖于物理层605a、b来将物理层605a、b的传输单元(物理层传送单元)构造成链路层610a、b的传送单元(链路层传送单元)。此外,链路层610a、b可以在逻辑上被分成两个部分:发送器和接收器。在一个实体上的发送器/接收器对可以连接到在另一实体上的接收器/发送器对。通常在链路层传送单元和分组基础二者上执行流控制。还潜在地在链路层传送单元级基础上执行误差检测和校正。在一个实施例中,路由层615a、b可以提供灵活和分布式的方法来将HPI事务从源路由到目的地。方案是灵活的,因为用于多个拓扑的路由算法可以通过可编程的路由表在每一个路由器处被指定(在一个实施例中,编程由固件、软件或其组合执行)。路由功能可以是分布式的;路由可以通过一系列路由步骤来完成,每一个路由步骤通过在源、中间或目的路由器处对表的查找而被限定。在源处的查找可以用于将HPI分组注入到HPI结构中。在中间路由器处的查找可以用于将HPI分组从输入端口路由到输出端口。在目的端口处的查找可以用于将目的HPI协议代理作为目标。注意,在一些实现中,路由层可能是缺少的,因为路由表以及因而路由算法没有由说明书特别定义。这允许各种使用模型和灵活性,所述各种使用模型包括由系统实现定义的灵活平台架构拓扑。路由层615a、b依赖于链路层610a、b,以提供多达三个(或更多)虚拟网络(VN)的使用——在一个示例中,具有在每一个虚拟网络中定义的几个消息类的两个无死锁VN:VN0和VN1。可以在链路层中定义共享的自适应虚拟网络(VNA),但所述自适应网络可以不直接暴露在路由概念中,因为每一个消息类和虚拟网络可以具有专用资源和被保证的转发进展,连同其它特征和示例。在一些实现中,HPI可以利用嵌入式时钟。时钟信号可以嵌入在使用互连发送的数据中。使用嵌入在数据中的时钟信号,可以省略不同的和专用的时钟通路。这可能是有用的,例如,因为它可以允许设备的更多管脚专用于数据传送,特别是在非常需要管脚的空间的系统中。可以在互连的任一侧上的两个代理之间建立链路。发送数据的代理可以是本地代理,并且接收数据的代理可以是远程代理。状态机可以由这两个代理使用以管理链路的各种方面。在一个实施例中,物理层数据路径可以将链路层传送单元从链路层发送到电气前端。在一个实现中,控制路径包括状态机(也被称为链路训练状态机或类似物)。状态机的动作和从状态的退出可以取决于内部信号、定时器、外部信号或其它信息。事实上,一些状态(例如,几个初始化状态)可以具有定时器,以提供用于退出状态的超时值。注意,在一些实施例中,检测指检测在通路的两个方向上的事件;但不一定同时。然而,在其它实施例中,检测指由所提及的代理进行的对事件的检测。作为一个示例,防反跳指信号的持久有效。在一个实施例中,HPI支持在非功能通路的事件中进行操作。在这里,通路可以在特定的状态下被丢掉。在状态机中定义的状态可以包括复位状态、初始化状态、和操作状态、连同其它类别和子类别。在一个示例中,一些初始化状态可以具有辅助定时器,其用于在超时时退出状态(本质上,是由于没有在状态中取得进展而引起的中止)。中止可以包括对寄存器(例如,状态寄存器)的更新。一些状态还可以具有用于对状态中的主要功能进行定时的主定时器。可以定义其它状态,使得内部或外部信号(例如,握手协议)驱动从一种状态到另一状态的转变,连同其它示例。状态机也可以通过单个步骤、固定初始化中止和测试器的使用来支持调试。在这里,可以推迟/保持状态退出,直到调试软件准备好为止。在一些实例中,可以推迟/保持退出,直到辅助超时为止。在一个实施例中,动作和退出可以基于训练序列的交换。在一个实施例中,链路状态机在本地代理时钟域中运行,并且从一个状态转变到下一状态以与发射器训练序列边界一致。状态寄存器可以被用来反映当前状态。图7示出了在HPI的一个示例实现中由代理使用的状态机的至少一部分的表示。应认识到,包括在图7的状态表中的状态包括可能状态的非排他列表。例如,一些转变被省略以简化图。此外,一些状态可以被组合、拆分、或省略,而其它状态可以被添加。这样的状态可以包括:事件复位状态:在热或冷复位事件时进入。恢复默认值。使计数器初始化(例如,同步计数器)。可以退出到另一状态,例如,另一复位状态。定时复位状态:用于带内复位的定时状态。可以驱动预定义的电气有序集(EOS),所以远程接收器能够检测EOS并且也进入定时复位。接收器具有保持电气设置的通路。可以退出到代理以校准复位状态。校准复位状态:在通路上没有信令的情况下校准(例如,接收器校准状态)或关闭驱动器。状态中的预定数量的时间可以是基于定时器的。可以设置操作速度。当端口未被启用时,可以充当等待状态。可以包括最小驻留时间。接收器调节或交错可以是基于设计而发生的。可以在超时之后和/或校准完成之后退出到接收器检测状态。接收器检测状态:检测在通路上的接收器的存在。可以查找接收器终止(例如,接收器下拉插入)。当所指定的值被设置时或当另一指定的值未被设置时,可以退出到校准复位状态。如果检测到接收器或达到超时,则可以退出到发射器校准状态。发射器校准状态:对于发射器校准。定时状态可以针对发射器校准而被分配。可以包括在通路上的信令。可以连续地驱动EOS,例如,EIEOS。在进行校准时或在定时器终止时,可以退出到顺应性状态。如果计数器被终止或辅助超时出现,则可以退出到发射器检测状态。发射器检测状态:证明有效信令合格。可以是握手状态,在握手状态中,代理完成动作,并且基于远程代理信令而退出到下一状态。接收器可以证明来自发射器的有效信令合格。在一个实施例中,接收器查找唤醒检测,并且如果在一个或多个通路上防反跳,则在其它通路上查找唤醒检测。发射器驱动检测信号。响应于对所有通路完成防反跳和/或超时,或如果在所有通路上的防反跳未被完成并且存在超时,则可以退出到轮询状态。在这里,一个或多个监控器通路可以保持醒着,以使唤醒信号防反跳。并且如果被防反跳,则其它通路可能被防反跳。这能够在低功率状态中实现功率节省。轮询状态:接收器适应、初始化漂移缓冲器,并且锁定位/字节(例如,识别符号边界)。通路可以被抗扭斜。远程代理可以响应于确认消息而引起退出到下一状态(例如,链路宽度状态)。轮询可以附加地包括通过锁定到EOS进行的训练序列锁定和训练序列头部。在远程发射器处的通路到通路扭斜可以针对最高速度被定界在第一长度处,而针对慢速度被定界在第二长度处。抗扭斜可以在慢模式中以及在操作模式中被执行。接收器可以具有用于对通路到通路扭斜进行抗扭斜的特定的最大值,例如,6、16或32个扭斜间隔。接收器动作可以包括延迟修复。在一个实施例中,接收器动作可以在有效的通路图的成功抗扭斜时被完成。在一个示例中,当多个连续训练序列头部具有确认的被接收到,并且具有确认的多个训练序列在接收器完成其动作之后被发送时,可以实现成功的握手。链路宽度状态:代理向远程发射器传递最终通路图。接收器接收信息并且解码。接收器可以在第二结构中的前面的通路图值的检查点之后的结构中记录所配置的通路图。接收器还可以使用确认(“ACK”)做出响应。可以发起带内复位。作为一个示例,第一状态发起带内复位。在一个实施例中,响应于ACK而执行退出到下一状态,例如,链路层传送单元配置状态。此外,在进入低功率状态之前,如果唤醒检测信号出现的频率下降到指定的值之下(例如,每单位间隔(UI)的数量1,例如,4KUI),则复位信号也可以被生成。接收器可以保持当前和以前的通路图。发射器可以基于具有不同值的训练序列来使用不同组的通路。在一些实施例中,通路图可以不修改某些状态寄存器。链路层传送单元锁定配置状态:由发射器进入,但当发射器和接收器二者都退出到阻塞链路状态或其它链路状态时,状态被考虑为退出(即,辅助超时案例)。在一个实施例中,发射器退出到链路状态包括在接收到行星对齐信号之后,数据序列的开始部分(SDS)和训练序列(TS)边界。在这里,接收器可以基于从远程发射器接收到SDS而退出。这个状态可以是从代理到链路状态的桥。接收器识别SDS。如果在解扰器被初始化之后SDS被接收到,则接收器可以退出到阻塞链路状态(BLS)(或控制窗口)。如果出现超时,则退出可以到复位状态。发射器使用配置信号来驱动通路。发射器退出可以变为复位、BLS、或基于条件或超时的其它状态。传输链路状态:链路状态。链路层传送单元被发送到远程代理。可以从阻塞链路状态进入,并且在事件(例如,超时)时返回到阻塞链路状态。发射器发送链路层传送单元。接收器接收链路层传送单元。还可以退出到低功率链路状态。在一些实现中,传输链路状态(TLS)可以被称为L0状态。阻塞链路状态:链路状态。发射器和接收器以统一的方式操作。可以是定时状态,在定时状态期间,链路层链路层传送单元被保持,同时物理层信息被传递到远程代理。可以退出到低功率链路状态(或基于设计的其它链路状态)。在一个实施例中,阻塞链路状态(BLS)定期地出现。时间段被称为BLS间隔,并且可以被定时,以及可以在低速和操作速度之间不同。注意,链路层可以从发送链路层传送单元被定期地阻塞,使得一定长度的物理层控制序列可以例如在传输链路状态或部分宽度传输链路状态期间被发送。在一些实现中,阻塞链路状态(BLS)可以被称为L0控制或L0c状态。部分宽度传输链路状态:链路状态。可以通过进入部分宽度状态来节省功率。在一个实施例中,非对称部分宽度指具有不同宽度的双向链路的每一个方向,其可以在一些设计中被支持。在图9的示例中示出了发送部分宽度指示以用于进入部分宽度传输链路状态的启动器(例如,发射器)的示例。在这里,部分宽度指示被发送,同时在具有第一宽度的链路上发送以将链路转变为在第二、新宽度处发送。失配可以导致复位。注意,速度不可以被改变,但宽度可以被改变。因此,链路层传送单元潜在地以不同的宽度被发送。在逻辑上可以类似于传输链路状态;然而因为有较小的宽度,所以发送链路层传送单元可能花费更长时间。可以退出到其它链路状态,例如,基于某些接收和发送的消息的低功率链路状态或退出基于其它事件的部分宽度传输链路状态或链路阻塞状态。在一个实施例中,发射器端口可以用交错的方式关闭空闲通路,以提供更好的信号整体性(即,噪声迁移),如在时序图中所示出的。在这里,可以在链路宽度被改变的时间段期间,利用没有重试能力的链路层传送单元,例如,空链路层传送单元。相对应的接收器可以丢弃这些空链路层传送单元,并且以交错的方式关闭空闲通路,以及在一个或多个结构中记录当前和以前的通路图。注意,状态和相关联的状态寄存器可以保持不变。在一些实现中,部分宽度传输链路状态可以被称为部分L0或L0p状态。退出部分宽度传输链路状态:退出部分宽度状态。在一些实现中,可以或可以不使用阻塞链路状态。在一个实施例中,发射器通过在空闲通路上发送部分宽度退出模式以训练空闲通路和使它们抗扭斜,来发起退出。作为一个示例,退出模式以EIEOS开始,EIEOS被检测并且防反跳到通路准备开始进入到全传输链路状态的信号,并且可以以SDS或在空闲通路上的快速训练序列(FTS)结束。在退出序列(接收器动作,例如,在超时之前未完成的抗扭斜)期间的任何故障都使到链路层的链路层传送单元传送停止,并且使复位生效,这通过在下一阻塞链路状态出现时使链路复位来被处理。SDS也可以将在通路上的扰码器/解扰器初始化为适当的值。低功率链路状态:是较低功率状态。在一个实施例中,它是比部分宽度链路状态更低的功率,因为在这个实施例中,信令在所有通路上并且在两个方向上停止。发射器可以使用阻塞链路状态,以用于请求低功率链路状态。在这里,接收器可以对请求进行解码,并且使用ACK或NAK做出响应:否则复位可以被触发。在一些实现中,低功率链路状态可以被称为L1状态。在一个实施例中,可以支持两种类型的管脚复位:通电(或“冷”)复位和热复位。由软件发起的或在一个代理上发生(在物理层或另一层中)的复位可以在带内被传递到另一代理。然而,由于使用嵌入式时钟,可以使用有序集(例如,特定的电气有序集或EIEOS)通过到另一代理的通信来处理带内复位,如上面所介绍的。这样的有序集可以被实现为可以用十六进制格式表示的限定的16字节代码,连同其它示例。有序集可以在初始化期间被发送,并且PHY控制序列(或“阻塞链路状态”)可以在初始化之后被发送。阻塞链路状态可以阻止链路层发送链路层传送单元。作为另一示例,链路层业务可以被阻止以发送可以在接收器处被丢弃的几个空链路层传送单元。在HPI的一些实现中,可以定义超序列,每一个超序列与相应的状态相对应或进入相应的状态/从相应的状态退出。超序列可以包括数据集和符号的重复序列。在一些实例中,序列可以重复,直到状态或状态转变的完成或相对应的事件的传递为止,连同其它示例。在一些实例中,超序列的重复序列可以根据限定的频率(例如,限定数量的单位间隔(UI))来重复。单位间隔(UI)可以与用于在链路或系统的通路上发送单个位的时间间隔相对应。在一些实现中,重复序列可以以电气有序集(EOS)开始。因此,EOS的实例可以被预期根据预定义的频率重复。这样的有序集可以被实现为可以以十六进制格式表示的限定的16字节代码,连同其它示例。在一个示例中,超序列的EOS可以是电气排序的电气空闲有序集(或EIEOS)。在一个示例中,EIEOS可以类似于低频时钟信号(例如,预定义的数量的重复FF00或FFF000十六进制符号等)。数据的预定义的集合可以遵循EOS,例如,预定义的数量的训练序列或其它数据。这样的超序列可以在包括链路状态转变以及初始化的状态转变中被利用,连同其它示例。如上面所介绍的,在一个实施例中,初始化可以最初以慢速度进行,跟随有快速度的初始化。慢速度的初始化使用寄存器和定时器的默认值。软件然后使用慢速链路来建立寄存器、定时器和电气参数,并且清除校准信号量以针对快速初始化铺路。作为一个示例,初始化可以由这样的状态或任务(例如,复位、检测、轮询和配置、连同其它示例)组成。在一个示例中,链路层阻塞控制序列(即,阻塞链路状态(BLS)或L0c状态)可以包括定时状态,在定时状态期间,链路层链路层传送单元被保持,同时PHY信息被传递到远程代理。在这里,发射器和接收器可以开始时钟控制序列定时器。而且当定时器终止时,发射器和接收器可以退出阻塞状态,并且可以采取其它动作,例如,退出到复位、退出到不同的链路状态(或其它状态),不同的链路状态包括允许在链路上发送链路层传送单元的状态。在一个实施例中,可以提供链路训练,并且链路训练包括发送扰码训练序列、有序集和控制序列(例如,结合所定义的超序列)中的一个或多个。训练序列符号可以包括头部、预留部分、目标延迟、号码对、物理通路图代码参考通路或一组通路和初始化状态中的一个或多个。在一个实施例中,头部可以以ACK或NAK、连同其它示例被发送。作为示例,训练序列可以作为超序列的部分被发送,并且可以被扰码。在一个实施例中,有序集和控制序列不被扰码或交错,并且在所有通路上通等地、同时并且完全地被传输。对有序集的有效接收可以包括检查有序集(或部分有序集的整个有序集)的至少一部分。有序集可以包括电气有序集(EOS),例如,电气空闲有序集(EIOS)或EIEOS。超序列可以包括快速训练序列(FTS)或数据序列(SDS)的开始部分。这样的集合和控制超序列可以被预定义,并且可以具有任何模式或十六进制表示、以及任何长度。例如,有序集和超序列可以是8字节、16字节、或32字节等长度。作为示例,FTS可以附加地在部分宽度传输链路状态的退出期间被利用以用于快速位锁定。注意,FTS定义可以是每通路的,并且可以利用FTS的循环版本。在一个实施例中,超序列可以包括在训练序列流中插入EOS,例如,EIEOS。在一个实现中,当信令开始时,通路以交错的方式上电。然而,这可以导致初始超序列在一些通路上的接收器处被截短。然而,超序列可以在短间隔(例如,大约一千单位间隔(或:1KUI))上重复。训练超序列可以附加地被用于抗扭斜、配置中的一个或多个,并且用于传递初始化目标、通路图等。EIEOS可以被用于下列操作中的一个或多个:将通路从不活动转变到活动状态、筛选良好通路、识别符号和TS边界、连同其它示例。转到图8,示出了示例超序列的表示。例如,可以限定示例性检测超序列805。检测超序列805可以包括单个EIEOS(或其它EOS)的重复序列,跟随有特定训练序列(TS)的预定数量的实例。在一个示例中,EIEOS可以被发送,紧接着跟随有七个重复的TS实例。当七个TS的最后一个被发送时,EIEOS可以被再次发送,跟随有七个附加的TS的实例,依此类推。这个序列可以根据特定的预定义的频率而重复。在图8的示例中,EIEOS可以大约每一千UI一次(:1KUI)重新出现在通路上,跟随有检测超序列805的其余部分。接收器可以针对重复检测超序列805的存在来监控通路,并且当使得超序列705生效时可以得出远程代理存在、被添加(例如,热插拨)在通路上、被唤醒或被重新初始化等的结论。在另一示例中,另一超序列810可以被定义为指示轮询、配置或环回条件或状态。如同示例检测超序列805一样,链路的通路可以由接收器针对这样的轮询/配置/环回超序列810进行监控,以识别轮询状态、配置状态或环回状态或条件。在一个示例中,轮询/配置/环回超序列810可以以EIEOS开始,跟随有预定义数量的TS重复实例。例如,在一个示例中,EIEOS可以跟随有三十一(31)个TS的实例,而EIEOS大约每四千UI(例如,~4KUI)进行重复。此外,在另一示例中,可以定义部分宽度传输状态(PWTS)退出超序列815。在一个示例中,PWTS退出超序列可以包括初始EIEOS,以在发送超序列中的第一完全序列之前重复到先决条件通路。例如,要在超序列815中重复的序列可以以EIEOS开始(每1KUI重复大约一次)。此外,可以利用快速训练序列(FTS)来代替其它训练序列(TS),FTS被配置为帮助较快的位锁定、字节锁定和抗扭斜。在一些实现中,FTS可以被解扰以进一步帮助尽可能快地并且非破坏性地将空闲通路带回到活动的。如同在进入链路传输状态之前的其它超序列一样,超序列815可以被中断并且通过发生数据序列的开始部分(SDS)结束。此外,部分FTS(FTSp)可以被发送,以例如通过允许位从FTSp被减去(或加到FTSp),来帮助使新通路与活动通路同步,连同其它示例。超序列(例如,检测超序列705和轮询/配置/环回超序列710等)可以在链路的整个初始化或重新初始化中潜在地被发送。接收器在接收并且检测到特定的超序列时,可以在一些实例中通过在通路上对相同的超序列产生回波到发射器来做出响应。通过发射器和接收器来接收和验证特定超序列可以用作握手,以确认通过超序列传递的状态或条件。例如,这样的握手(例如,利用检测超序列705)可以用于识别对链路的重新初始化。在另一示例中,这样的握手可以被用来指示电复位或低功率状态的结束,导致相对应的通路被带回,连同其它示例。例如,可以利用在发射器和接收器之间的握手来识别电复位的结束,其中每一个发射器和接收器发送检测超序列705。在另一示例中,通路可以针对超序列被监控,并且结合对通路的筛选来使用超序列,以用于检测、唤醒、状态退出和进入,连同其它事件。超序列的预定义的和可预测的性质和形式可以进一步被用于执行这样的初始化任务,例如,位锁定、字节锁定、防反跳、解扰、抗扭斜、适应、延迟修复、协商的延迟和其它可能的使用。实际上,通路可以针对这样的事件被实质上连续地监控,以加快系统对这样的条件做出反应并且处理这样的条件的能力。在防反跳的情况下,可以在通路上引入瞬变过程作为各种条件的结果。例如,对设备的添加或上电可以将瞬变过程引入到通路上。此外,由于不良的通路质量或电气故障,电压的不规则可以存在于通路上。例如,当EIEOS的值关于瞬变过程或其它位误差意外地偏离时,这样的不规则可以容易地在具有可预测的值的超序列上被检测到。在一个示例中,发送设备可以试图进入特定的状态。例如,发送设备可以试图激活链路,并且进入初始化状态。在另一示例中,发送设备可以试图退出低功率状态,例如,L1状态,连同其它示例。在L1状态的一些实例中,L1状态可以用作功率节省、空闲、或待机状态。实际上,在一些示例中,主电源可以在L1状态中保持活动。在退出L1状态时,第一设备可以发送与从L1状态转变到特定的其它状态(例如,L0传输链路状态(TLS))相关联的超序列。如在其它示例中,超序列可以是跟随有预定数量的TSe的EOS的重复序列,使得EOS以特定的预定义频率被重复。在一个示例中,检测超序列可以用于退出L1或其它低功率状态。接收设备可以接收并且验证数据,识别超序列,并且接收设备可以通过将超序列发送回到发送设备来完成与发送设备的握手。在发送和接收设备二者都接收相同的超序列的情况下,每一个设备可以进一步利用超序列来执行附加的初始化任务。例如,每一个设备可以利用超序列来执行防反跳、位锁定、字节锁定、解扰和抗扭斜。附加的初始化信息可以通过包括在超序列中的TSe的头部和有效载荷来传递。当链路被初始化时,在一些情况下,可以发送开始数据发送(SDS)序列,中断超序列(例如,在TS或EISOS的中部被发送),并且在链路的任一侧上的相应的设备可以准备同步进入到TLS中。在TLS或“L0”状态中,超序列可以结束,并且链路层传送单元可以利用协议栈的链路层而被发送。当在TLS中时,物理层仍然可以被提供执行控制任务的有限的机会。例如,可以在L0状态期间,在一个或多个通路上识别位误差和其它误差。在一个实现中,可以提供控制状态L0c。L0c状态可以被提供作为在TLS内的周期性窗口,以允许物理层控制消息在通过链路层发送的链路层传送单元的流之间被发送。例如,如在图9所示的示例中所表示的,L0状态可以被细分成L0c间隔。每一个L0c间隔可以以L0c状态或窗口(例如,905)开始,在所述窗口中可以发送物理层控制代码和其它数据。L0c间隔的其余部分(例如,910)可以专用于发送链路层传送单元。L0c间隔的长度和在每一个间隔中的L0c状态可以例如,由一个或多个设备的BIOS、另一基于软件的控制器、连同其它示例可编程地进行定义。L0c状态可以指数地比L0c间隔的其余部分更短。例如,在一个示例中,L0c可以是8UI,而L0c间隔的其余部分大约是4KUI,连同其它示例。这可以允许窗口,在所述窗口中,相对短的、预定义消息可以被发送,而实质上不干扰或浪费链路数据带宽。L0c状态消息可以在物理层级处传递各种条件。在一个示例中,一个设备可以例如,基于位误差或其它误差超过特定的阈值量来发起对链路或通路的复位。也可以在L0c窗口(例如,前面的L0c窗口)中传递这样的误差。L0c状态还可以被支持以实现其它带内信令,例如,在帮助或触发在其它链路状态之间的转变时使用的信令。在一个示例中,L0c消息可以被用来将链路从活动L0状态转变到待机或低功率状态,例如,L1状态。如在图10的简化流程图中所示的,特定的L0c状态可以用于传递L1进入请求(例如,1010)。另外的链路层传送单元(例如,1020、1030)可以被发送,同时设备(或在设备上的代理)等待请求1010的确认。链路上的其它设备可以发送确认(例如,1040)。在一些示例中,确认还可以在L0c窗口中发送。在一些实例中,可以在接收到/发送L1请求1010之后,在下一L0c窗口中发送确认。定时器可以被用于使在每一个设备处的L0c间隔同步,并且请求设备可以基于识别出确认1040在下一L0c窗口处被发送来将确认1040识别为请求1010(例如,而不是独立的L1进入请求)的确认,连同其它示例。在一些实例中,确认可以通过与在L1进入请求1010中使用的代码不同的L0c代码来被传递。在其它实例中,确认1040可以包括对在请求1010中使用的L1进入请求代码产生回波,连同其它示例。此外,在可选的示例中,可以在L0c窗口中传递未确认信号或NAK。除了使用L0c代码进行握手以外(或作为可选方案),还可以结合使链路复位和重新初始化来发送超序列,例如,检测超序列。另外的握手可以出现在设备之间作为由第一设备发送并且由第二、接收设备产生回波的超序列。如上所述,超序列可以用于帮助对链路的重新初始化,包括对链路的通路进行防反跳、位锁定、字节锁定、解扰和抗扭斜。此外,设备可以利用定时器(例如,使用L0c间隔)来使设备和链路同步地进入到所请求的L1状态中。例如,对确认1040的接收可以向设备指示它们将在L0c间隔结束时相互进入(或开始进入)L1状态,所述L0c间隔与确认在其中被发送的L0c窗口相对应,连同其它示例。例如,在被包括在确认1040中或另外与确认1040相关联的、在L0c窗口中发送的数据可以指示设备将进入L1状态时的时间,连同其它潜在的示例。附加的链路层传送单元(例如,1050),在一些实例中可以被发送,同时设备等待与转变到L1状态相对应的超时。在HPI的一些实现中,可以在任何数量的两个或更多个通路上建立链路。此外,链路可以在第一数量的通路上被初始化,并且稍后转变到部分带宽状态,使得只有该数量的通路的一部分被使用。部分宽度状态可以被指定为低功率状态,例如,L0p状态。在一个示例中,L0c状态可以用于从L0状态(其中第一数量的通路是活动的)转变到L0p状态(其中更少数量的通路将是活动的)。例如,如在图11的示例中所示的,链路可以在第一宽度1110处是活动的。在一些实例中,第一宽度可以是全宽度(例如,在L0处)。在其它实例中,链路可以从利用第一数量的通路的第一L0p状态转变到使用不同数量(或组)的通路的另一L0p,连同其它示例。在第一宽度中的通路的L0c窗口期间,L0p进入代码1120可以被发送。L0p进入请求1120可以识别出哪个新宽度应被应用。在一些实例中,新链路宽度可以被预先确定,并且简单地利用接收到L0p请求1120而被识别。此外,在部分宽度状态中将被放弃的特定通路也可以结合L0p请求1120被指定或另外被识别或预先配置,连同其它示例。以图11的示例继续,链路层传送单元或其它数据可以继续在全宽度的通路上被发送,同时链路等待转变到L0p状态。例如,持续时间t可以由在通过链路连接的设备处同步定时器指定,以使进入到L0状态同步。在一个示例中,持续时间t可以与L0c间隔的其余部分相对应,其中,L0c间隔的其余部分与请求1120相对应。在该间隔结束时,通路的一部分将保持活动,而通路的另一部分被置于不活动或空闲状态中。链路将接着在新宽度(例如,1140)处操作,至少直到L0p退出请求或其它链路宽度转变请求被接收到为止,连同其它示例。HPI可以利用一个或多个功率控制单元(PCU)来帮助在L0和较低功率状态(例如,L0p和L1)之间的定时转变。此外,HPI可以支持主设备-从设备、主设备-主设备和其它架构。例如,PCU可以存在于在链路上连接的设备中的仅仅一个上或否则与在链路上连接的设备中的仅仅一个相关联,并且具有PCU的设备可以被考虑为主设备。主设备-主设备配置可以例如在这两个设备具有可以提示链路状态转变的相关联的PCU时实现。一些实现可以指定特定的低功率状态(例如,L0p或L1)的最小停留,例如,以试图使在状态之间的转变最小化,并且试图使在进入的低功率状态内的功率节省最大化,连同其它示例。从部分宽度低功率状态退出可以适合于有效和快速地发生,以便使对活动通路的影响和中断最小化。在一些实现中,L0c窗口和代码也可以用于触发从L0p或其它状态退出以重新激活空闲通路。例如,转到图12的示例,示出了简化的流程图,其示出了从L0p状态的示例退出。在图12的特定示例中,当遇到L0c窗口1210时,可以发送链路层传送单元数据(例如,1205),其中,L0进入(L0p退出)请求被包括在L0c窗口1210中。附加的链路层传送单元1215可以在L0p退出出现时的点之前被发送。正如在其它示例中,L0c代码1210可以包括识别或隐含地识别出状态转变开始/结束以及状态转变的特定事件时的时间。链路层传送单元(例如,1215)可以继续被发送以使数据传送最大化,同时设备预期进入状态转变。在一个示例中,EIEOS1220(或其它数据,例如,另一EOS)可以在不活动通路上被发送,以开始调节通路。在一些实例中,这样的不活动通路(例如,通路“n+1”到“z”)可能在某个时间是不活动的,并且唤醒通路可能引入电气瞬变过程和其它不稳定性。因此,EIEOS1220以及关于从L0p状态的退出而发送的部分宽度超序列可以用于在通路唤醒时使通路防反跳。此外,在一些实例中,在唤醒通路(例如,通路“n+1”到“z”)上的瞬变可以潜在地影响活动通路(例如,通路“0”到“n”)。为了预防源于消极地影响活动通路的空闲通路的重新唤醒的不规则,在初始信号(例如,1220)在唤醒通路上被发送时或紧接着在初始信号(例如,1220)在唤醒通路上被发送之前,活动通路可以被同步以发送空链路层传送单元(例如,在1225)。在一些实现中,对空闲通路的重新初始化可以被计时,以例如在相对应的L0c间隔结束时开始。在其它实例中,可选的时间可以被用于在早期开始重新初始化。在这样的实例中,L0p退出请求的发射器可以使空闲通路例如通过发送一个或多个单EIEOS而被预先调节。发送这样的调节信号可以与活动通路相协调,使得空链路层传送单元在活动通路上被即刻发送,以与EIEOS的初始发送相符合,并且保护活动通路免受在空闲通路的开始时的瞬变干扰,连同其它示例。例如,链路层缓冲器可以可选地或附加地用于免受在重新唤醒空闲通路时由这样的瞬变所导致的位损失,连同其它技术。此外,在一些实现中,在发送初始EIEOS(或超序列)之后,可以发送部分宽度退出超序列(例如,1230)。超序列的至少一部分可以在活动通路上重复(例如,在1225)。此外,接收超序列1225的设备可以对超序列产生回波,以握手并且确认状态转变,连同其它示例。发送超序列(例如,1230)可以进一步被用于执行位锁定、字节锁定、防反跳、解扰和抗扭斜。例如,可以使重新激活的通路相对于活动通路抗扭斜。在一些实例中,可以访问和应用在链路的原始初始化中针对空闲通路确定的初始配置,但是在其它实例中,通路的空闲特性可以导致对扭斜的改变,并且其它通路特征导致对空闲通路的有效重新初始化。简要地返回图8,表示可以结合部分宽度传输状态退出(例如,从L0p状态到L0状态的转变)而发送的序列的一个示例。因为通路在这样的转变之前和之后保持活动的,所以奖励可以被置于加速状态转变,以便提供对活动通路的最小破坏。在一个示例中,部分超序列可以被发送(例如,如在图12的1220中),而没有随后的训练序列来加速防反跳。例如,瞬变可以试图在第一EIEOS内被解析,而不等待另一1KUI,所述另一1KUI用于使第二完整的EIEOS被发送以开始位锁定、字节锁定、抗扭斜和其它任务。此外,全部部分宽度传输状态退出超序列可以包括跟随有预定义数量的训练序列的EOS(例如,EIEOS)的重复序列。在图8的示例中,可以发送EIEOS,跟随有一系列训练序列(例如,七个连续的训练序列)。在一个实现中,不发送完整的训练序列(例如,在超序列805、810中使用的“TS”),而可以发送缩短的“快速训练序列”(或FTS)。FTS的符号可以被优化以帮助重新激活的通路的快速位和字节锁定以及抗扭斜,连同其它特征。在一个示例中,FTS可以在长度上小于150UI(例如,128UI)。此外,FTS可以保持被解扰,以便进一步帮助空闲通路的快速恢复。如在元件815中的第三行所示出的,一旦控制器确定重新激活的通路已经被有效地初始化,则部分宽度传输状态退出超序列就还可以由SDS中断。在一个示例中,部分FTS(或FTSp)可以跟随SDS以帮助使重新激活的通路与活动通路同步(例如,一旦位锁定、字节锁定和抗扭斜完成)。例如,FTSp的位长度可以被设置为与完整的链路层传送单元边界相对应,所述完整的链路层传送单元边界用于在重新激活的通路与活动通路之间的最终宽度。为了促成通路的快速同步,位可以在FTSp之前或在FTSp期间在接收器处被添加到通路或从通路中减去,以解决扭斜。可选地或此外,位还可以在SDS之前或在SDS期间在接收器处被添加到通路或从通路中被减去,以促成对最新激活的通路进行抗扭斜,连同其它示例。返回到图12的讨论,在一些示例中,对数据链路层传送单元的传输可以在活动通路(例如,通路0到n)上重新开始(例如,在1225处),同时对唤醒通路的初始化完成。例如,一旦防反跳被解决,链路层传输就可以重新开始。在一些实例中,可以结合以前空闲的通路(例如,通路n+1到z)的最终重新激活和同步(例如,结合FTSp1235的发送)来即刻中断链路层传送单元传输(例如,在1240处)。在通路被恢复的情况下,链路层传送单元数据1245可以接着在所有通路上重新开始。在一个实施例中,时钟可以被嵌入在数据中,所以没有单独的时钟通路。在通路上发送的链路层传送单元可以被扰乱以促成时钟恢复。作为一个示例,接收器时钟恢复单元可以将采样时钟传送到接收器(即,接收器从数据恢复时钟,并且使用它来对进入的数据进行采样)。在一些实现中,接收器持续地适应于进入的位流。通过嵌入时钟,管脚引出线可以潜在地被减少。然而,将时钟嵌入在带内数据中可以改变带内复位被接近的方式。在一个实施例中,可以在初始化之后利用阻塞链路状态(BLS)。此外,可以在初始化期间利用电气排序集超序列以促成复位(例如,如上所述),连同其它考虑因素。所嵌入的时钟可以在链路上的设备之间是公共的,并且公共操作时钟可以在链路的校准和配置期间被设置。例如,HPI链路可以参考具有漂移缓冲器的公共时钟。这样的实现可以实现比在非公共参考时钟中使用的弹性缓冲器更低的延迟,连同其它可能的优点。此外,参考时钟分布段可以被匹配到指定的限制内。如上面所提到的,HPI链路可能能够在多个速度下操作,所述多个速度包括初始化、默认通电的“慢模式”等。每一个设备的操作(或“快速”)速度或模式可以由BIOS静态地设置。在链路上的公共时钟可以基于在链路的任一侧上的每一个设备的相应的操作速度来被配置。例如,链路速度可以基于这两个设备操作速度中较慢的,连同其它示例。任何操作速度变化可以伴随有热或冷复位。在一些示例中,在上电时,链路初始化为具有例如100MT/s的传送速率的慢模式。软件接着建立链路的操作速度的两侧,并且开始初始化。在其它实例中,边带机制可以被用于例如在慢模式缺乏或不可用时建立链路,所述链路包括在链路上的公共时钟。在一个实施例中,慢模式初始化阶段可以使用与操作速度相同的编码、扰乱、训练序列(TS)、状态等,但具有可能更少的特征(例如,没有电参数建立、无适应等)。慢模式操作阶段也可以潜在地使用相同的编码、扰乱等(虽然其它实现可以不这样做),但与操作速度相比可以具有更少的状态和特征(例如,无低功率状态)。此外,可以使用设备的本地锁相环(PLL)时钟频率来实现慢模式。例如,HPI可以支持仿真的慢模式而不改变PLL时钟频率。虽然一些设计对于慢和快速度可以使用单独的PLL,但是在HPI的一些实现中,可以通过允许PLL时钟在慢模式期间以相同的快操作速度运行,来实现仿真的慢模式。例如,发射器可以通过多次重复位来仿真较慢的时钟信号,以便仿真慢高时钟信号,并且然后仿真慢低时钟信号。接收器可以接着对所接收的信号过采样,以定位由重复的位仿真的边缘,并且识别该位。在这样的实现中,共享PLL的端口可以在慢和快速度下共存。公共慢模式速度可以在两个设备之间被初始化。例如,在链路上的这两个设备可以具有不同的快操作速度。例如,可以在链路上的恢复阶段或状态期间配置公共慢模式速度。在一个示例中,仿真倍数可以被设置为快速度与慢速度的整数(或非整数)比,并且不同的快速度可以被向下转换以与相同的慢速度一起工作。例如,支持至少一个公共频率的两个设备代理可以被热附接,而不考虑主机端口正运行的速度。软件发现然后可以使用慢模式链路来识别并且建立大部分最佳链路操作速度。在倍数是快速度与慢速度的整数比的场合,不同的快速度可以与可以在(例如,热附接的)发现阶段期间使用的相同的慢速度一起工作。在HPI的一些实现中,可以支持对链路上的通路的适应。物理层可以支持接收器适应和发射器、或发送器适应二者。使用接收器适应,在通路上的发射器可以将采样数据发送到接收器,接收器逻辑可以处理该采样数据以识别在通路的电特性和信号的质量中的缺点。接收器然后可以基于对所接收的采样数据的分析,来对通路的校准进行调节以优化通路。在发射器适应的情况下,接收器可以再次接收采样数据,并且开发描述通路的质量的度量,但在这种情况下将度量传递到发射器(例如,使用后向通道,例如,软件、硬件、嵌入式、边带或其它通道),以允许发射器基于反馈来对通路进行调节。可以使用从远程发射器发送的轮询超序列,在轮询状态开始时发起接收器适应。类似地,可以通过对每一个发射器参数重复下列项来完成发射器适应。这两个代理都可以作为主设备进入环回方式状态,并且发送指定的模式。这两个接收器都可以测量在远程代理处的该特定发射器设置的度量(例如,BER)。这两个代理都可以转到环回标记状态,并且然后复位,并使用后向通道(慢模式TLS或边带)来交换度量。基于这些度量,可以识别下一发射器设置。最终,最佳发射器设置可以被识别,并且被保存用于随后使用。在链路上的这两个设备都可以完成相同的参考时钟(例如,refclk),弹性缓冲器可以被省略(任何弹性缓冲器可以被绕过或用作具有最低可能延迟的漂移缓冲器)。然而,相位调节或漂移缓冲器可以在每一个通路上被利用,以将相应的接收器位流从远程时钟域传送到本地时钟域。漂移缓冲器的延迟可以足以处理来自电器规范中的所有源(例如,电压、温度、由参考时钟路由不匹配引入的残余SSC等)的漂移的和,但尽可能小地减小传送延迟。如果漂移缓冲器太浅,则漂移误差可能产生,并且显示为一系列的CRC误差。因此,在一些实现中,可以提供漂移警告,其可以在实际漂移误差出现之前发起物理层复位,连同其它示例。HPI的一些实现可以支持以相同的标称参考时钟频率运行但具有ppm差异的两侧。在这种情况下,频率调节(或弹性)缓冲器可能是被需要的,并且可以在扩展的BLS窗口期间或在定期地出现的特殊序列期间被调节,连同其它示例。HPIPHY逻辑层的操作可以独立于下层传输媒体,假定延迟不导致在链路层处的延迟修复误差或超时,连同其它考虑因素。外部接口可以在HPI中被提供,以帮助对物理层的管理。例如,可以提供外部信号(来自管脚、熔丝、其它层的)、定时器、控制、和状态寄存器。输入信号可以相对于PHY状态在任何时间改变,但在相应的状态中在特定的点处由物理层观察。例如,改变对齐信号(如下面介绍的)可以被接收,但在链路进入传输链路状态之后没有影响,连同其它示例。类似地,命令寄存器值可以只在特定的时间点由物理层实体进行观察。例如,物理层逻辑可以获取值的快照,并且在随后的操作中使用它。因此,在一些实现中,对命令寄存器的更新可以与特定时间段(例如,在传输链路状态中或当保持在复位校准中时,在慢模式传输链路状态中)的有限子集相关联,以避免反常行为。因为状态值跟踪硬件变化,所以所读取的值可以取决于它们何时被读取。然而,一些状态值(例如,链路图、延迟、速度等)在初始化之后可以不改变。例如,重新初始化(或低功率链路状态(LPLS)、或L1状态、退出)是可以使这些状态值改变的唯一事情(例如,在TLS中的硬通路故障可以不导致对链路的重新配置,直到重新初始化被触发为止,连同其它示例)。接口信号可以包括在物理层外部但影响物理层行为的信号。这样的接口信号作为示例可以包括编码和定时信号。接口信号可以是设计特定的。这些信号可以是输入或输出。一些接口信号(例如,所谓的信号量和带前缀的EO、连同其它示例)可以每有效边缘活动一次,即,它们可以被无效,并且接着再次有效以再次生效,连同其它示例。例如,表1包括示例功能的示例列表:表1可以成对地提供CSR定时器默认值,一个用于慢模式,而一个用于操作速度。在一些实例中,值0禁用定时器(即,超时从不出现)。定时器可以包括下面在表2中示出的定时器。主定时器可以用于对状态中预期的动作进行定时。辅助定时器用于中止进展不顺利的初始化或用于在自动测试设备(或ATE)模式中在精确的时间进行正向状态转变。在一些情况下,在一种状态中,辅助定时器可以比主定时器大得多。指数定时器集合可以被附有后缀exp,并且定时器值是升高到字段值2。对于线性定时器,定时器值是字段值。任一定时器可以使用不同的粒度。此外,在功率管理部分中的一些定时器可以在被称为定时简档的集合中。这些可以与相同名称的时序图相关联。表2定时器表Tpriexp集合用于驱动EIEOS的复位常驻区接收器校准最小时间;用于使发射器交错地断开发射器校准最小时间;用于交错的接通Tsecexp集合定时接收器校准定时发射器校准噪声抑制退出检测/防反跳用于握手的DetectAtRx突出量适应+位锁/字节锁/抗扭斜配置链路宽度等待行星对齐的完整链路层传送单元边界重新字节锁/抗扭斜Tdebugexp集合热插拨;用于调试挂起的非0值TBLSentry集合BLS进入延迟-精细BLS进入延迟-粗略TBLS集合发射器的BLS持续时间接收器的BLS持续时间发射器的BLS完整链路层传送单元间隔接收器的TBLS完整链路层传送单元间隔可以提供命令和控制寄存器。控制寄存器可以是以后的动作,并且在一些实例中,可以由软件读取或写入。以后的动作值可以在复位中连续地生效(例如,从面向软件阶段经历到面向硬件阶段)。控制信号量(带前缀CP)是RW1S,并且可以由硬件清除。控制寄存器可以用来执行本文描述的任何项目。它们可以是可修改的,并且由硬件、软件、固件或其组合可访问的。状态寄存器可以被提供以跟踪硬件变化(由硬件写入和使用),并且可以是只读的(但调试软件还可能能够对它们写入)。这样的寄存器可能不影响互操作性,并且一般可以用很多私有状态寄存器补充。状态信号量(带前缀SP)可以被托管,这是因为它们可以由软件清除,以重做设置状态的动作。默认意味着初始(在复位时)值可以被提供作为与初始化有关的这些状态位的子集。在初始化中止时,所述寄存器可以被拷贝到存储结构中。可以提供工具盒寄存器。例如,在物理层中的可测试性工具盒寄存器可以提供模式生成、模式检查和环回控制机制。较高级应用可以利用这些寄存器连同电参数来确定余量。例如,内置在测试中的互连可以利用所述工具盒来确定余量。对于发射器适应,可以结合在前面的章节中描述的特定寄存器来使用这些寄存器,连同其它示例。在一些实现中,HPI支持利用物理层的可靠性、可用性和可服务性(RAS)能力。在一个实施例中,HPI可以支持热插拨,并且移除可以包括软件的一层或多层。热移除可以包括使链路静止,并且初始化开始状态/信号可以针对待移除的代理而被清除。远程代理(即,未被移除的远程代理(例如,主机代理))可以被设置为慢速度,并且它的初始化信号也可以被清除。带内复位(例如,通过BLS)可以使这两个代理在复位状态(例如,校准复位状态(CRS))中等待;以及待移除的代理可以被移除(或可以在目标管脚复位、断电中被保持),连同其它示例和特征。实际上,可以省略上述事件中的一些,并且可以添加附加的事件。热添加可以包括可以默认为慢的初始化速度,并且初始化信号可以被设置在待添加的代理上。软件可以将速度设置为慢,并且可以清除在远程代理上的初始化信号。链路可以在慢模式中出现,并且软件可以确定操作速度。在一些情况下,此时没有远程的PLL重新锁定被执行。可以在这两个代理上设置操作速度,并且可以针对适应来设置启用(如果以前没有做)。初始化开始指示器可以在这两个代理上被清除,并且带内BLS复位可以使这两个代理在CRS中等待。软件可以使(待添加的)代理的热复位(例如,目标复位或自复位)有效,这可以使PLL重新锁定。软件还可以通过任何已知的逻辑来设置初始化开始信号,并且进一步在远程上设置(因而使它前进到接收器检测状态(RDS))。软件可以使正在添加代理的热复位无效(因而使它前进到RDS)。链路接着可以以操作速度初始化为传输链路状态(TLS)(或到环回,如果适应信号被设置),连同其它示例。实际上,可以省略上述事件中的一些,并且可以添加附加的事件。可以支持数据通路故障恢复。在一个实施例中,在HPI中的链路可以通过将本身配置为小于全宽度(例如,小于全宽度的一半)来对单个通路上的硬误差有承受力,全宽度因而可以排除有错误的通路。作为示例,配置可以通过链路状态机来完成,并且未使用的通路可以在配置状态中被关闭。作为结果,链路层传送单元可以在较窄的宽度上被发送,连同其它示例。在HPI的一些实现中,可以在一些链路上支持通路反转。通路反转可以例如指连接到接收器的通路n/n-1/n-2…(例如,n可以等于19或7等)的发射器的通路0/1/2…。通路反转可以在接收器处被检测为在TS头部的字段中所识别的。接收器可以通过使用用于逻辑通路0…n的物理通路n…0而在轮询状态中开始来处理通路反向。因此,对通路的引用可以指逻辑通路号。因此,电路板设计者可以更有效地拟定物理或电气设计,并且HPI可以与虚拟通路分配一起工作,如本文所描述的。而且,在一个实施例中,极性可以反转(即,当微分发射器+/-被连接到接收器-/+时)。在一个实施例中,极性也可以在接收器处利用一个或多个TS头部字段被检测到,并且在轮询状态中被处理。参考图13,描绘了用于包括多核处理器的计算系统的框图的实施例。处理器1300包括任何处理器或处理设备,例如,微处理器、嵌入式处理器、数字信号处理器(DSP)、网络处理器、手持处理器、应用处理器、协处理器、片上系统(SOC)或执行代码的其它设备。在一个实施例中,处理器1300包括至少两个核心——核心1301和1302,其可以包括不对称核心或对称核心(所示出的实施例)。然而,处理器1300可以包括可以是对称或非对称的任何数量的处理元件。在一个实施例中,处理元件指用于支持软件线程的硬件或逻辑。硬件处理元件的示例包括:线程单元、线程槽、线程、处理单元、上下文、上下文单元、逻辑处理器、硬件线程、核心、和/或能够保持处理器的状态(例如,执行状态或架构状态)的任何其它元件。换句话说,在一个实施例中,处理元件指能够独立地与代码(例如,软件线程、操作系统、应用或其它代码)相关联的任何硬件。物理处理器(或处理器插口)一般指集成电路,其可能包括任何数量的其它处理元件,例如,核心或硬件线程。核心通常指位于能够维持独立架构状态的集成电路上的逻辑,其中每一个独立维持的架构状态与至少一些专用的执行资源相关联。与核心相反,硬件线程一般指位于能够维持独立架构状态的集成电路上的任何逻辑,其中独立维持的架构状态共享对执行资源的访问。如可以看到的,当某些资源被共享,并且其它资源专用于架构状态时,在硬件线程和核心的信号量之间的线重叠。然而通常,核心和硬件线程由操作系统视为单独的逻辑处理器,其中操作系统能够在每一个逻辑处理器上单独地调度操作。如图13所示的物理处理器1300包括两个核心——核心1301和1302。在这里,核心1301和1302被考虑为对称核心,即,具有相同的配置、功能单元、和/或逻辑的核心。在另一实施例中,核心1301包括乱序处理器核心,而核心1302包括有序处理器核心。然而,核心1301和1302可以单独地选自任何类型的核心,例如,本地核心、软件管理的核心、适合于执行本地指令集架构(ISA)的核心、适合于执行已转换的指令集架构(ISA)的核心、共同设计的核心、或其它公知的核心。在异构核心环境(即,不对称核心)中,某种形式的转换(例如,二进制转换)可以用来在一个或两个核心上调度或执行代码。然而为了进一步讨论,在下面更详细描述在核心1301中所示的功能单元,而在核心1302中的单元在所述实施例中以类似的方式操作。如所描绘的,核心1301包括两个硬件线程1301a和1301b,其也可以被称为硬件线程槽1301a和1301b。因此,在一个实施例中,软件实体(例如,操作系统)可能将处理器1300视为四个单独的处理器,即,能够同时执行四个软件线程的四个逻辑处理器或处理元件。如上面所暗指的,第一线程与架构状态寄存器1301a相关联,第二线程与架构状态寄存器1301b相关联,第三线程可以与架构状态寄存器1302a相关联,以及第四线程可以与架构状态寄存器1302b相关联。在这里,每一个架构状态寄存器(1301a、1301b、1302a和1302b)可以被称为处理元件、线程槽、或线程单元,如上所述的。如所示出的,架构状态寄存器1301a在架构状态寄存器1301b中被复制,所以单独的架构状态/上下文能够被存储以用于逻辑处理器1301a和逻辑处理器1301b。在核心1301中,其它较小的资源(例如,在分配器和重命名块1330中的指令指针和重命名逻辑)也可以被复制用于线程1301a和1301b。可以通过分区来共享一些资源,例如,在重排序/引退单元1335、ILTB1320、装入/存储缓冲器、以及队列中的重排序缓冲区。可能完全共享其它资源,例如,通用内部寄存器、页表基址寄存器、低级数据缓存器和数据TLB1315、执行单元1340和乱序单元1335的部分。处理器1300通常包括可以被完全共享、通过分区来共享、或由处理元件专用/专用于处理元件的其它资源。在图13中,示出了具有处理器的例证性逻辑单元/资源的纯示例性的处理器的实施例。注意,处理器可以包括或省略这些功能单元中的任一个,以及包括未描绘的任何其它已知的功能单元、逻辑或固件。如所示出的,核心1301包括简化的、代表性的乱序(OOO)处理器核心。但在不同的实施例中可以利用有序处理器。OOO核心包括用于预测待执行/采用的分支的分支目标缓冲器1320和用于存储指令的地址转换条目的指令转换缓冲器(I-TLB)1320。核心1301还包括耦合到取出单元1320用于对取出的单元进行解码的解码模块1325。在一个实施例中,取出逻辑包括分别与线程槽1301a、1301b相关联的单独序列。通常,核心1301与第一ISA相关联,第一ISA限定/指定在处理器1300上可执行的指令。通常,作为第一ISA的部分的机器代码指令包括指令的一部分(被称为操作码),其参考/指定待执行的指令或操作。解码逻辑1325包括电路,所述电路识别来自其操作码的这些指令,并且在管线中传递解码的指令以用于处理如在第一ISA中所限定的。例如,在一个实施例中,如在下面更详细讨论的,解码器1325包括被设计为或适合于识别特定的指令(例如,事务指令)的逻辑。作为由解码器1325识别的结果,架构或核心1301采取特定的、预定义的动作来执行与适当的指令相关联的任务。重要的是注意到,可以响应于单个或多个指令来执行本文所描述的任何任务、块、操作和方法;其中一些指令可以是新指令或老指令。注意,在一个实施例中,解码器1326识别相同的ISA(或其子集)。可选地,在异构核心环境中,解码器1326识别第二ISA(第一ISA的子集或不同的ISA)。在一个示例中,分配器和重命名器块1330包括用于预留资源的分配器,例如,用于存储指令处理结果的寄存器文件。然而,线程1301a和1301b能够乱序执行,其中分配器和重命名块1330也预留其它资源,例如,用于跟踪指令结果的重排序缓冲器。单元1330也可以包括寄存器重命名器,以将程序/指令参考寄存器重命名到在处理器1300内部的其它寄存器。重排序/引退单元1335包括部件,例如,上面提到的重排序缓冲器、装入缓冲器和存储缓冲器,以支持乱序执行和乱序执行的指令的稍后按序引退。在一个实施例中,调度器和执行单元块1340包括用于在执行单元上调度指令/操作的调度器单元。例如,浮点指令在具有可用的浮点执行单元的执行单元的端口上被调度。还包括与执行单元相关联的寄存器文件以存储信息指令处理结果。示例性执行单元包括浮点执行单元、整数执行单元、跳跃执行单元、装入执行单元、存储执行单元、和其它已知的执行单元。较低级数据高速缓存和数据转换缓冲器(D-TLB)1350被耦合到执行单元1340。数据高速缓存用于存储可能被保持在存储器相干性状态中的最近使用/操作的元件,例如,数据操作数。D-TLB用于存储最近的虚拟/线性到物理地址的转换。作为特定的示例,处理器可以包括页表结构,其用于将物理存储器分成多个虚拟页。在这里,核心1301和1302共享对较高级的或进一步发展的高速缓存(例如,与片上接口1310相关联的第二级高速缓存)的访问。注意,较高级或进一步发展指从执行单元增加或变得更进一步的高速缓存级别。在一个实施例中,较高级高速缓存是最后一级数据高速缓存——在处理器1300上的存储器分级结构中的最后一级高速缓存,例如,第二或第三级数据高速缓存。然而,较高级高速缓存并不限于此,因为它可以与指令高速缓存相关联或包括指令高速缓存。追踪高速缓存——一种类型的指令高速缓存——替代地可以耦合在解码器1325之后,以存储最近解码的轨迹。在这里,指令可能指宏指令(即,由解码器识别的一般指令),其可以解码成多个微指令(微操作)。在所描绘的配置中,处理器1300还包括片上接口模块1310。从历史角度看,在下面更详细描述的存储器控制器被包括在处理器1300外部的计算系统中。在这个场景中,片上接口1310与在处理器1300外部的设备(例如,系统存储器1375、芯片组(通常包括连接到存储器1375的存储器控制器集线器和连接外围设备的I/O控制器集线器)、存储器控制器集线器、北桥或其它集成电路)进行通信。而且在这个情形中,总线1305可以包括任何已知的互连,例如,多点分支总线、点对点互连、串行互连、并行总线、相干(例如,缓存相干)总线、分层协议架构、差分总线和GTL总线。存储器1375可以专用于处理器1300或与系统中的其它设备共享。存储器的类型的公共示例包括DRAM、SRAM、非易失性存储器(NV存储器)和其它已知的存储设备。注意,设备1380可以包括图形加速器、耦合到存储器控制器集线器的处理器或卡、耦合到I/O控制器集线器的数据存储装置、无线收发机、闪存设备、音频控制器、网络控制器、或其它已知的设备。然而最近,随着更多的逻辑和设备被集成在单个管芯(例如,SOC)上,这些设备中的每一个都可以被合并在处理器1300上。例如,在一个实施例中,存储器控制器集线器与处理器1300在相同的封装和/或管芯上。在这里,核心(核心上部分)1310的一部分包括用于与其它设备(例如,存储器1375或图形设备1380)进行连接的一个或多个控制器。包括用于与这样的设备进行连接的互连和控制器的配置通常被称为核心上(或非核心配置)。作为示例,片上接口1310包括用于片上通信的环形互连和用于片外通信的高速串行点对点链路1305。然而在SOC环境中,甚至更多的设备(例如,网络接口、协处理器、存储器1375、图形处理器1380和任何其它已知的计算机设备/接口)可以集成在单个管芯或集成电路上,以提供具有高功能和低功率消耗的小规格因子。在一个实施例中,处理器1300能够执行编译器、优化和/或转换器代码1377,以编译、转换和/或优化应用代码1376,以支持本文描述的装置和方法或与其进行连接。编译器通常包括程序或程序的集合,以将源文本/代码转换成目标文本/代码。通常,使用编译器对程序/应用代码进行的编译在多个阶段中完成,并且进行传递以将高级编程语言代码转换成低级机器或汇编语言代码。然而,单程编译器仍可以用于简单的编译。编译器可以利用任何已知的编译技术,并且执行任何已知的编译器操作,例如,词汇分析、预处理、解析、语义分析、代码生成、代码转换和代码优化。较大的编译器通常包括多个阶段,但最经常地这些阶段被包括在两个一般阶段内:(1)前端,即,通常其中句法处理、语义处理和一些转换/优化可以发生,以及(2)后端,即,通常其中分析、转换、优化和代码生成发生。一些编译器指中间部分,其示出了在编译器的前端和后端之间的轮廓的模糊。作为结果,对插入、关联、生成或编译器的其它操作的引用可以发生在任何前述的阶段或过程以及编译器的任何其它已知的阶段或过程中。作为例证性示例,编译器可能将操作、调用、功能等插入编译的一个或多个阶段中,例如,在编译的前端阶段中插入调用/操作和然后在转换阶段期间将调用/操作转换为低级代码。注意,在动态编译期间,编译器代码或动态优化代码可以插入这样的操作/调用,以及优化代码以用于在运行时期间执行。作为特定的例证性示例,二进制代码(已经编译的代码)可以在运行时期间动态地被优化。在这里,程序代码可以包括动态优化代码、二进制代码、或其组合。类似于编译器,转换器(例如,二进制转换器)静态或动态地转换代码以优化和/或转换代码。因此,对代码、应用代码、程序代码或其它软件环境的执行的引用可以指:(1)动态或静态地执行编译器程序、优化代码优化器或转换器,用于编译程序代码、用于维持软件结构、用于执行其它操作、用于优化代码、或用于转换代码;(2)执行包括操作/调用的主程序代码,所述主程序代码例如被优化/编译的应用代码;(3)执行与主程序代码相关联的其它程序代码(例如,库),用于维持软件结构、用于执行其它软件相关操作、或用于优化代码;或(4)其组合。现在参考图14,示出了多核处理器的实施例的框图。如在图14的实施例中所示的,处理器1400包括多个域。具体地,核心域1430包括多个核心1430A-1430N,图形域1460包括具有媒体引擎1465的一个或多个图形引擎和系统代理域1410。在各种实施例中,系统代理域1410处理功率控制事件和功率管理,使得域1430和1460的单独的单元(例如,核心和/或图形引擎)独立地可控制地根据在给定单元中出现的活动(或不活动)在适当的功率模式/级别(例如,活动、涡轮、睡眠、休眠、深睡眠、或其它高级配置功率接口如状态)下动态地操作。每一个域1430和1460可以在不同的电压和/或功率下操作,并且此外在域内的单独单元的每一个都可能在独立的频率和电压下操作。注意,虽然只示出了三个域,但是应理解本发明的范围并不被限制在这个方面,并且在其它实施例中附加的域可以存在。如所示出的,除了各种执行单元和附加的处理元件以外,每一个核心1430还包括低级高速缓存。在这里,各种核心相互耦合,并且与由最后一级高速缓存(LLC)1440A-1440N的多个单元或分片构成的共享缓存存储器相耦合;这些LLC通常包括存储装置和缓存控制器功能,并且在核心当中以及也可能在图形引擎当中被共享。如所看到的,环形互连1450将核心耦合在一起,并且经由多个止动环1452A-1452N提供在核心域1430、图形域1460和系统代理电路1410之间的互连,每一个止动环在核心和LLC分片之间的耦合处。如在图14中看到的,互连1450用于携带各种信息,包括地址信息、数据信息、确认信息和窥探/无效信息。虽然示出了环互连,但是可以利用任何已知的管芯上互连或结构。作为例证性示例,可以用类似的方式来利用上面讨论的一些结构(例如,另一管芯上互连、片上系统结构(OSF)、高级微控制器总线架构(AMBA)互连、多维网状结构、或其它已知的互连架构)。如进一步描绘的,系统代理域1410包括显示引擎1412,显示引擎1412提供对相关联的显示器的控制和到相关联的显示器的接口。系统代理域1410可以包括其它单元,例如,提供到系统存储器(例如,使用多个DIMM实现的DRAM)的接口的集成存储器控制器1420、执行存储器相干操作的相干逻辑1422。多个接口可以存在以实现在处理器和其它电路之间的互连。例如,在一个实施例中,提供至少一个直接媒体接口(DMI)1416接口,以及一个或多个PCIeTM接口1414。显示引擎和这些接口一般经由PCIeTM桥1418耦合到存储器。仍然进一步地,为了提供在其它代理(例如,附加的处理器或其它电路)之间的通信,可以提供一个或多个其它接口。现在参考图15,示出了代表性核心的框图;具体地,核心(例如,来自图14的核心1430)的后端的逻辑块。通常,图15所示的结构包括具有用于取出进入指令、执行各种处理(例如,缓存、解码、分支预测等)的前端单元1570并且将指令/操作传递到乱序(OOO)引擎1580的乱序处理器。OOO引擎1580对解码的指令执行进一步的处理。具体地在图15的实施例中,乱序引擎1580包括分配单元1582,用于从前端单元1570接收解码的指令并且将它们分配到适当的资源(例如,寄存器等),所述解码的指令可以以一个或多个微指令或uop的形式。接着,指令被提供到预留站1584,其预留资源并且调度它们以用于在多个执行单元1586A-1586N中的一个上执行。各种类型的执行单元可以存在,包括例如,算术逻辑单元(ALU)、装入和存储单元、矢量处理单元(VPU)、浮点执行单元等。来自这些不同的执行单元的结果被提供到重排序缓冲器(ROB)1588,其获取未排序的结果,并且将它们返回到正确的程序顺序。仍然参考图15,注意,前端单元1570和乱序引擎1580二者都耦合到存储器分级结构的不同级别。具体地示出的是指令级高速缓存1572,指令级高速缓存1572继而耦合到中级高速缓存1576,中级高速缓存1576继而耦合到最后一级高速缓存1595。在一个实施例中,最后一级高速缓存1595实现在片上(有时被称为非核心)单元1590中。作为示例,单元1590类似于图14的系统代理1410。如上面讨论的,非核心1590与系统存储器1599进行通信,系统存储器1599在所示的实施例中经由EDRAM实现。也注意,在乱序引擎1580内的各种执行单元1586与第一级高速缓存1574进行通信,第一级高速缓存1574也与中级高速缓存1576进行通信。也注意,附加的核心1530N-2——1530N可以耦合到LLC1595。虽然在图15的实施例中的这个高级别处示出,但是应理解,各种变化和附加的部件可以存在。转到图16,示出了由包括用于执行指令的执行单元的处理器构成的示例计算机系统的框图,其中一个或多个互连根据本发明的一个实施例实现一个或多个特征。系统1600包括部件(例如,处理器1602),其用于根据本发明(例如,在本文描述的实施例),使用包括用于执行处理数据的算法的逻辑的执行单元。系统1600代表基于PENTIUMIIITM、PENTIUM4TM、XeonTM、Itanium、XScaleTM和/或StrongARMTM微处理器的处理系统,但是还可以使用其它系统(包括具有其它微处理器、工程设计工作站、机顶盒等的PC)。在一个实施例中,范例系统1600执行从RedMond,Washington的MicrosoftCorporation可得到的WINDOWSTM操作系统的版本,但是也可以使用其它操作系统(例如,UNIX和Linux)、嵌入式软件、和/或图形用户界面。因此,本发明的实施例并不限于硬件电路和软件的任何特定的组合。实施例不限于计算机系统。可以在其它设备(例如,手持设备和嵌入式应用)中使用本发明的可选实施例。手持设备的一些示例包括蜂窝电话、互联网协议设备、数字照相机、个人数字助理(PDA)、和手持PC。嵌入式应用可以包括微控制器、数字信号处理器(DSP)、片上系统、网络计算机(NetPC)、机顶盒、网络集线器、广域网(WAN)交换机、或可以执行根据至少一个实施例的一个或多个指令的任何其它系统。在所示出的实施例中,处理器1602包括一个或多个执行单元1608,以实现执行至少一个指令的算法。可以在单个处理器桌面或服务器系统的上下文中描述一个实施例,但可选的实施例可以被包括在多处理器系统中。系统1600是“集线器”系统架构的示例。计算机系统1600包括用于处理数据信号的处理器1602。作为一个例证性示例,处理器1602包括例如复杂指令集计算机(CISC)微处理器、精简指令集计算(RISC)微处理器、超长指令字(VLIW)微处理器、实现指令集的组合的处理器、或任何其它处理器设备,例如,数字信号处理器。处理器1602耦合到在处理器1602和系统1600中的其它部件之间发送数据信号的处理器总线1610。系统1600的元件(例如,图形加速器1612、存储器控制器集线器1616、存储器1620、I/O控制器集线器1624、无线收发机1626、闪存BIOS1628、网络控制器1634、音频控制器1636、串行扩展端口1638、I/O控制器1640等)执行熟悉本领域的人员所公知的常规功能。在一个实施例中,处理器1602包括第1级(L1)内部高速缓存存储器1604。取决于架构,处理器1602可以具有单个内部高速缓存或多个级别的内部高速缓存。取决于特定的实现和需要,其它实施例包括内部和外部高速缓存二者的组合。寄存器文件1606将不同类型的数据存储在各种寄存器中,所述各种寄存器包括整数寄存器、浮点寄存器、矢量寄存器、分组寄存器、影子寄存器、检查点寄存器、状态寄存器和指令指针寄存器。执行单元1608,包括用于执行整数和浮点操作的逻辑,执行单元1608也存在于处理器1602中。在一个实施例中,处理器1602包括微代码(ucode)ROM,以存储微代码,所述微代码在被执行时,用于实现某些微指令的算法或处理复杂的情形。在这里,微代码可能是可以更新的以处理处理器1602的逻辑故障/修复。对于一个实施例,执行单元1608包括用于处理打包的指令集1609的逻辑。通过将打包的指令集1609包括在通用处理器1602的指令集中连同用于执行指令的相关联的电路,可以在通用处理器1602中使用打包的数据来执行由很多多媒体应用使用的操作。因此,通过使用用于对打包的数据执行操作的处理器的数据总线的全宽度来加速并且更有效地执行很多多媒体应用。这可能消除了在处理器的数据总线上传送数据的较小单位以执行一个或多个操作的需要,一次一个数据元素。也可以在微控制器、嵌入式处理器、图形设备、DSP和其它类型的逻辑电路中使用执行单元1608的可选实施例。系统1600包括存储器1620。存储器1620包括动态随机存取存储器(DRAM)设备、静态随机存取存储器(SRAM)设备、闪存设备、或其它存储器设备。存储器1620存储由数据信号表示的指令和/或数据,所述数据信号是由处理器1602执行的。注意,可以在图16中示出的一个或多个互连上利用本发明的任何前述特征或方面。例如,未示出的用于耦合处理器1602的内部单元的管芯上互连(ODI)实现了上面描述的本发明的一个或多个方面。或者本发明与处理器总线1610(例如,其它已知的高性能计算互连)、到存储器1620的高带宽存储器路径1618、到图形加速器1612的点对点链路(例如,符合快速外围部件互连(PCIe)的结构)、控制器集线器互连1622、I/O或用于耦合其它所示部件的其它互连(例如,USB、PCI、PCIe)相关联。这样的部件的一些示例包括音频控制器1636、固件集线器(闪存BIOS)1628、无线收发机1626、数据存储装置1624、包含用户输入和键盘接口1642的旧版I/O控制器1610、串行扩展端口1638(例如,通用串行总线(USB))、和网络控制器1634。数据存储设备1624可以包括硬盘驱动器、软盘驱动器、CD-ROM设备、闪存设备、或其它大容量存储设备。现在参考图17,示出了根据本发明的实施例的第二系统1700的框图。如图17所示,微处理器系统1700是点对点互连系统,并且包括经由点对点互连1750耦合的第一处理器1770和第二处理器1780。每一个处理器1770和1780可以是处理器的某个版本。在一个实施例中,1752和1754是串行、点对点相干互连结构(例如,高性能架构)的部分。作为结果,本发明可以在QPI架构内实现。虽然只示出了两个处理器1770、1780,但是应理解,本发明的范围并不限于此。在其它实施例中,一个或多个附加的处理器可以存在于给定的处理器中。处理器1770和1780被示出为分别包括集成存储器控制器单元1772和1782。处理器1770还包括点对点(P-P)接口1776和1778作为其总线控制器单元的一部分;类似地,第二处理器1780包括P-P接口1786和1788。处理器1770、1780可以使用P-P接口电路1778、1788经由点对点(P-P)接口1750来交换信息。如图17所示,IMC1772和1782将处理器耦合到可以是在本地附连到相应的处理器的主存储器的部分的相应的存储器,即,存储器1732和存储器1734。处理器1770、1780的每一个经由单独的P-P接口1752、1754使用点对点接口电路1776、1794、1786、1798与芯片组1790交换信息。芯片组1790还经由接口电路1792连同高性能图形互连1739与高性能图形电路1738交换信息。共享高速缓存(未示出)可以包括在任一处理器中或在两个处理器的外部;然而如果处理器被置于低功率模式中,则经由P-P互连与处理器连接,使得任一或两个处理器的本地高速缓存信息可以存储在共享高速缓存中。芯片组1790可以经由接口1796被耦合到第一总线1716。在一个实施例中,第一总线1716可以是外围部件互连(PCI)总线或诸如快速PCI总线或另一第三代I/O互连总线之类的总线,但是本发明的范围并不限制于此。如图17所示,各种I/O设备1716耦合到第一总线1716,连同将第一总线1716耦合到第二总线1720的总线桥1718。在一个实施例中,第二总线1720包括低管脚数(LPC)总线。在一个实施例中,各种设备耦合到第二总线1720,所述各种设备包括例如,键盘和/或鼠标1722、通信设备1727和存储单元1728,例如,磁盘驱动器或通常包括指令/代码和数据1730的其它大容量存储设备。此外,音频I/O1724被示出为耦合到第二总线1720。注意,其它架构是可能的,其中所包括的部件和互连架构不同。例如,不是图17的点对点架构,系统可以实现多点总线或其它这样的架构。接着转到图18,描绘了根据本发明的片上系统(SOC)设计的实施例。作为特定的例证性示例,SOC1800包括在用户设备(UE)中。在一个实施例中,UE指由最终用户使用来进行通信的任何设备,例如,手持电话、智能电话、平板计算机、超薄笔记本计算机、具有宽带适配器的笔记本计算机或任何其它类似的通信设备。UE通常连接到基站或节点,其可能实际上与在GSM网络中的移动台(MS)相对应。在这里,SOC1800包括2个核心——1806和1807。类似于上面的讨论,核心1806和1807可以符合指令集架构,例如,基于架构CoreTM的处理器、AdavancedMicroDevices,Inc.(AMD)处理器、基于MIPS的处理器、基于ARM的处理器设计、或其客户,以及其许可方或采纳者。核心1806和1807耦合到与总线接口单元1809和L2缓存器1811相关联的高速缓存控制器1808,以用于与系统1800的其它部分进行通信。互连1810包括可能实现本文描述的一个或多个方面的芯片上互连,例如,IOSF、AMBA或上面讨论的其它互连。互连1810将通信通道提供到其它部件,例如,与SIM卡进行连接的用户识别模块(SIM)1830、保存引导代码用于由核心1806和1807执行以初始化并且引导SOC1800的引导rom1835、与外部存储器(例如,DRAM1860)进行连接的SDRAM控制器1840、与非易失性存储器(例如,闪存1865)进行连接的闪存控制器1845、与外围设备进行连接的外围控件1850(例如,串行外围接口)、显示并且接收输入(例如,启用触摸的输入)的视频编码译码器1820和视频接口1825、执行与图形相关的计算的GPU1815等。这些接口中的任一个可以并入本文描述的发明的方面。此外,系统示出了用于通信的外围设备,例如,蓝牙模块1870、3G调制解调器1875、GPS1885和WiFi1885。注意,如上面提到的,UE包括用于通信的无线装置。作为结果,这些外围通信模块并不全部都是需要的。然而在UE的某个形式中,用于外部通信的无线装置将被包括。虽然关于有限数量的实施例描述了本发明,但是本领域中的技术人员将从其认识到很多修改和变型。意图是所附的权利要求涵盖如落在本发明的真正精神和范围内的所有这样的修改和变型。设计可以经历各种阶段,从创建到模拟到制造。表示设计的数据可以用多种方式表示设计。首先,如在模拟中有用的,硬件可以被表示为使用硬件描述语言或另一功能描述语言。此外,可以在设计过程的一些阶段产生具有逻辑和/或晶体管栅极的电路级模型。此外,大部分设计在某个阶段达到表示在硬件模型中的各种设备的物理放置的数据的级别。在使用常规半导体制造技术的情况下,表示硬件模型的数据可以是指定在用于生成集成电路的掩模的不同掩蔽层上的各种特征的存在或缺乏的数据。在设计的任何表示中,数据可以存储在任何形式的机器可读介质中。存储器或磁性或光学存储装置(例如,磁盘),可以是机器可读介质,其用于存储经由光波或电波调制或另外生成以发送这样的信息而发送的信息。当指示或携带代码或设计的电载波被发送时,在电信号的拷贝、缓冲或重新传输被执行的程度上,新拷贝被制造。因此,通信提供者或网络提供者可以在有形、机器可读介质上至少临时地存储体现本发明的实施例的技术的制品,例如,被编码到载波中的信息。如本文所使用的模块指硬件、软件和/或固件的任何组合。作为示例,模块包括硬件,例如,微控制器,所述硬件与非临时介质相关联以用于存储适合于由微控制器执行的代码。因此,在一个实施例中,对模块的提及指硬件,所述硬件特别地被配置为识别和/或执行保存在非临时介质上的代码。此外,在另一实施例中,对模块的使用指包括特定地适合于由微控制器执行以实现预先确定的操作的代码的非临时介质。而且如可以推断出的,在又一实施例中,术语“模块”(在本示例中)可以指微控制器和非临时介质的组合。被示出为单独的其它模块边界通常不同并且可能重叠。例如,第一和第二模块可以共享硬件、软件、固件或其组合,同时可能保留一些独立的硬件、软件或固件。在一个实施例中,术语“逻辑”的使用包括硬件,例如,晶体管、寄存器或其它硬件,例如,可编程逻辑设备。在一个实施例中,对短语“被配置为”的使用指布置、放置在一起、制造、提供以出售、引入和/或设计装置、硬件、逻辑或元件,以执行指定或确定的任务。在本示例中,其中未操作的装置或元件仍然“被配置为”执行指定任务,如果它被设计、耦合和/或互连以执行所述指定的任务。作为纯粹例证性的示例,逻辑门可以在操作期间提供0或1。但“被配置为”向时钟提供启动信号的逻辑门不包括可以提供1或0的每一个可能的逻辑门。替代地,逻辑门是以某种方式耦合的逻辑门,在该方式中,在操作期间,1或0输出启动时钟。再一次注意,对术语“被配置为”的使用并不需要操作,而相反关注装置、硬件和/或元件的潜在状态,其中在潜在状态中,当装置、硬件、和/或元件正操作时,所述装置、硬件和/或元件被设计为执行特定的任务。此外,在一个实施例中,对短语“用于”、“能够/用于”和/或“可操用于”的使用指以指定的方式能够实现对装置、逻辑、硬件和/或元件的使用的方式设计的某些装置、逻辑、硬件和/或元件。注意,如上所述的,在一个实施例中,对用于、能够或可操作用于的使用指装置、逻辑、硬件和/或元件的潜在状态,其中所述装置、逻辑、硬件和/或元件不操作,但以指定的方式来实现装置的使用的方式进行设计。如在本文中所使用的,值包括数字、状态、逻辑状态、或二进制逻辑状态的任何已知的表示。通常,对逻辑电平、逻辑值或逻辑学值的使用也被称为1和0,其简单地表示二进制逻辑状态。例如,1指高逻辑电平,而0指低逻辑电平。在一个实施例中,存储单元(例如,晶体管或闪存单元)可能能够保存单个逻辑值或多个逻辑值。然而,在计算机系统中的值的其它表示被使用。例如,十进制数十也可以被表示为1010的二进制值和十六进制字母A。因此,值包括能够被保存在计算机系统中的信息的任何表示。而且,状态可以由值或值的部分表示。作为示例,第一值(例如,逻辑一)可以表示默认或初始状态,而第二值(例如,逻辑零)可以表示非默认状态。此外,在一个实施例中,术语“复位”和“置位”分别指默认和更新值和状态。例如,默认值可能包括高逻辑值,即,复位,而更新值可能包括低逻辑值,即,置位。注意,值的任何组合可以用于表示任何数量的状态。上面所阐述的方法、硬件、软件、固件或代码的实施例可以经由存储在机器可访问、机器可读、计算机可访问或计算机可读介质上的由处理元件可执行的指令或代码来实现。非临时机器可访问/可读介质包括提供(即,存储和/或传输)以机器(例如,计算机或电子系统)可读的形式的信息的任何机制。例如,非临时机器可访问介质包括随机存取存储器(RAM),例如,静态RAM(SRAM)或动态RAM(DRAM)、ROM;磁性或光学存储介质;闪存设备;电存储设备;光存储设备;声存储设备;用于保存从临时(传播)信号(例如,载波、红外信号、数字信号等)接收的信息的其它形式的存储设备等,其应与可以从那里接收信息的非临时介质区分开。用于对逻辑进行编程以执行本发明的实施例的指令可以存储在系统中的存储器(例如,DRAM、高速缓存、闪速存储器、或其它存储装置)内。此外,可以经由网络或通过其它计算机可读介质来分布指令。因此,机器可读介质可以包括用于以机器(例如,计算机)可读的形式存储或发送信息的任何机制,但不限于软盘、光盘、压缩光盘、只读存储器(CD-ROM)、以及磁光盘、只读存储器(ROM)、随机存取存储器(RAM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、磁卡或光卡、闪存或在互联网上经由电、光、声或其它形式的传播信号(例如,载波、红外信号、数字信号等)传输信息中使用的有形、机器可读存储介质。因此,计算机可读介质包括适合于以由机器(例如,计算机)可读的形式存储或发送电子指令或信息的任何类型的有形机器可读介质。下面的示例属于根据本说明书的实施例。一个或多个实施例可以提供将周期性的控制窗口嵌入在链路层数据流中以在串行数据链路上发送的装置、系统、机器可读存储介质、机器可读介质和方法,其中控制窗口被配置为提供包括用于在数据链路上发起状态转变时使用的信息的物理层信息。在至少一个示例中,数据流包括一系列链路层传送单元。在至少一个示例中,链路层数据流在数据链路的链路传输状态期间被发送。一个或多个示例还可以提供在数据流中识别特定的控制窗口,并且在特定控制窗口期间将复位数据发送到连接到数据链路的设备,其中复位数据用于传递从链路传输状态进入复位状态的尝试。一个或多个示例还可以提供生成与复位状态相关联的超序列,并且将所述超序列发送到设备。一个或多个示例还可以提供在数据流中识别特定控制窗口,并且在特定控制窗口期间将链路宽度转变数据发送到连接到数据链路的设备,其中链路宽度转变数据用于传递改变链路上的活动通路的数量的尝试。在至少一个示例中,通路的数量从原始数量减小到新数量,其中减小活动通路的数量与进入部分宽度链路传输状态相关联。一个或多个示例还可以提供在数据流中识别随后的控制窗口,并且在随后的控制窗口期间将部分宽度状态退出数据发送到设备,其中部分宽度状态退出数据用于传递将活动通路的数量返回到原始数量的尝试。一个或多个示例还可以提供在数据流中识别特定的控制窗口,并且在特定控制窗口期间将低功率数据发送到连接到数据链路的设备,其中低功率数据用于传递从链路传输状态进入低功率状态的尝试。在至少一个示例中,控制窗口根据所定义的控制间隔被嵌入,并且连接到数据链路的设备使状态转变与相对应的控制间隔的结束同步。一个或多个实施例可以提供用于接收数据流的装置、系统、机器可读存储介质、机器可读介质和方法,其中数据流包括交替的发送间隔和控制间隔,其中链路层链路层传送单元在传输间隔期间被发送,并且控制间隔提供发送物理层控制信息的机会;识别包括在控制间隔中的特定控制间隔中的控制数据,所述控制数据用于指示从第一状态尝试进入特定状态,其中数据流在第一状态中被接收;以及促成转变到特定状态。在至少一个示例中,特定状态包括复位状态。在至少一个示例中,促成转变到特定状态包括发送尝试进入特定状态的确认。在至少一个示例中,确认在控制间隔内被发送。在至少一个示例中,数据流在包括多个活动通路的串行数据链路上被发送,并且特定状态包括部分宽度状态,其中包括在多个活动通路中的通路的至少子集在部分宽度状态中变为空闲的。一个或多个示例还可以提供识别包括在控制间隔中的随后的控制间隔中的随后数据,所述随后数据指示退出部分宽度状态并且重新启动空闲通路的尝试。在至少一个示例中,特定状态包括低功率传输状态。在至少一个示例中,数据流在包括多个活动通路的串行数据链路上被接收,并且特定的状态包括部分宽度状态,其中包括在多个活动通路中的通路的至少子集在部分宽度状态中变为空闲的。在至少一个示例中,特定状态包括复位状态。在至少一个示例中,物理层控制信息描述数据链路的误差。一个或多个实施例可以提供将时钟信号嵌入在数据中以在包括多个通路的串行数据链路上从第一设备传递,并且从使用第一数量的多个通路的第一链路传输状态转变到使用第二数量的多个通路的第二链路传输状态的装置、系统、机器可读存储介质、机器可读介质和方法。在至少一个示例中,通路的第二数量大于通路的第一数量。在至少一个示例中,从第一链路传输状态转变到第二链路传输状态包括发送部分宽度状态退出超序列,其包括包含电气有序集(EOS)的序列的一个或多个实例和训练序列的多个实例。在至少一个示例中,从第一链路传输状态转变到第二链路传输状态还包括在部分宽度状态退出超序列之前发送初始EOS。在至少一个示例中,空链路层传送单元在发送初始EOS期间在活动通路上被发送。在至少一个示例中,训练序列包括解扰的快速训练序列(FTS)。在至少一个示例中,从第一链路传输状态转变到第二链路传输状态还包括使用部分宽度状态退出超序列来初始化包括在多个通路中的空闲通路的至少一部分。在至少一个示例中,从第一链路传输状态转变到第二链路传输状态还包括在对空闲通路的该部分的初始化之后,发送数据序列的开始部分(SDS)。在至少一个示例中,从第一链路传输状态转变到第二链路传输状态还包括在发送SDS之后发送部分FTS(FTSp)。在至少一个示例中,从第一链路传输状态转变到第二链路传输状态还包括接收对转变的确认,其中确认包括部分宽度状态退出超序列。在至少一个示例中,从第一链路传输状态转变到第二链路传输状态包括在数据链路上将带内信号发送到第二设备。在至少一个示例中,通路的第一数量大于通路的第二数量。在至少一个示例中,数据包括数据流,所述数据流包含交替的传输间隔和控制间隔,并且信号在特定控制间隔内被发送,并且指示从第一链路传输状态到第二链路传输状态的转变。在至少一个示例中,从第一链路传输状态到第二链路传输状态的转变与紧接着在特定控制间隔之后的特定传输间隔的结束同步。在至少一个示例中,转变是基于功率控制单元的请求的。一个或多个实施例可以提供用于接收数据流的装置、系统、机器可读存储装置、机器可读介质和方法,其中数据流包括交替的传输间隔和控制间隔,其中控制间隔提供发送物理层控制信息的机会,并且数据流在包括活动通路和不活动通路的串行数据链路上被发送;识别包括在控制间隔中的特定控制间隔中的控制数据,其中数据指示激活链路的不活动通路的至少一部分的尝试;以及促成激活不活动通路的该部分。在至少一个示例中,数据流在数据链路在部分宽度状态中时被接收,并且控制数据用于指示退出部分宽度状态的尝试。在至少一个示例中,促成激活不活动通路的该部分包括接收指示对激活不活动通路的该部分进行激活的尝试的超序列。在至少一个示例中,超序列包括包含电气空闲退出有序集(EIEOS)的序列的一个或多个实例和训练序列的多个实例。在至少一个示例中,促成激活不活动通路的该部分包括发送紧接着在超序列之前的至少一个初始EIEOS。在至少一个示例中,空链路层传送单元在发送初始EIEOS期间在活动通路上被发送。在至少一个示例中,训练序列包括解扰的快速训练序列(FTS)。在至少一个示例中,促成激活不活动通路的该部分还包括使用超序列来初始化不活动通路的该部分。在至少一个示例中,促成激活不活动通路的该部分还包括在对不活动通路的该部分进行初始化之后接收数据序列的开始部分(SDS)。在至少一个示例中,促成激活不活动通路的该部分还包括在SDS之后接收部分FTS(FTSp)。在至少一个示例中,促成激活不活动通路的该部分还包括通过对超序列产生回波来确认尝试。一个或多个实施例可以提供用于接收数据流的装置、系统、机器可读存储介质、机器可读介质和方法,其中数据流包括交替的传输间隔和控制间隔,其中链路层链路层传送单元在传输间隔期间被发送,并且控制间隔提供发送物理层控制信息的机会;识别指示从链路传输状态尝试进入低功率状态中的控制数据,其中数据流在链路传输状态中被接收;并且转变到低功率状态。在至少一个示例中,控制数据包括预定义代码。在至少一个示例中,转变到低功率状态包括在随后的控制间隔中对预定义代码产生回波。在至少一个示例中,转变到低功率状态包括接收指示到低功率状态的转变的超序列。在至少一个示例中,转变到低功率状态还包括对超序列产生回波。在至少一个示例中,超序列包括包含电气有序集(EOS)的序列的一个或多个实例,跟随有训练序列的预定数量的实例。在至少一个示例中,EOS包括电气空闲电气有序集(EIEOS)。一个或多个实施例可以提供识别在链路传输状态期间在串行数据链路上嵌入在数据流中的周期控制窗口的特定实例、在控制间隔的特定实例期间将状态转变数据发送到设备、并且转变到低功率状态的装置、系统、机器可读存储介质、机器可读介质和方法,其中状态转变数据指示进入低功率状态的尝试。一个或多个示例还可以提供从设备接收确认,所述确认包括状态转变数据。在至少一个示例中,确认与下一周期控制间隔一致。在至少一个示例中,转变到低功率状态包括将指示到低功率状态的转变的超序列发送到设备。在至少一个示例中,转变到低功率状态还包括从设备接收超序列的重复实例。在至少一个示例中,超序列包括包含电气有序集(EOS)的序列的一个或多个实例,跟随有训练序列的预定数量的实例。在至少一个示例中,EOS包括电气空闲退出有序集(EIEOS)。在至少一个示例中,转变到低功率状态是基于对功率控制单元的请求的。一个或多个示例还可以提供发起从低功率状态到链路传输状态的转变。一个或多个示例还可以提供被配置为耦合到串行差分链路的物理层(PHY),PHY定期性地发出阻塞链路状态(BLS),BLS请求使代理进入BLS以在持续时间内阻止链路层链路层传送单元传输,其中PHY在与PHY相关联的任务持续时间利用串行差分链路。在至少一个示例中,PHY在与PHY相关联的任务持续时间利用串行差分链路包括发送优先级消息列表的一个或多个消息,其包括no-op、复位、带内复位、进入低功率状态、进入部分宽度状态、进入其它PHY状态等。一个或多个示例还可以提供被配置为耦合到链路的物理层(PHY),所述链路包括第一数量的通路,其中PHY在全宽度传输链路状态中在第一数量的通路上传输链路层传送单元,并且其中PHY在部分宽度传输链路状态中在第二数量的通路上传输链路层传送单元,其中通路的第二数量小于通路的第一数量。在至少一个示例中,PHY利用阻塞链路状态来从阻塞链路状态进入部分宽度传输链路状态。在至少一个示例中,当在第一数量的通路和第二数量的通路上传输时,链路层传送单元具有相同的尺寸。在至少一个示例中,PHY利用用于在第一数量的通路上和在第二数量的通路上传输的嵌入式时钟。在至少一个示例中,PHY利用嵌入式时钟,以用于在第一数量的通路上传输和利用转发的时钟,以用于在第二数量的通路上传输。在整个说明书中对“一个实施例”或“实施例”的提及意味着关于该实施例描述的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,短语“在一个实施例中”或“在实施例中”在整个这个说明书中不同地方的出现并不一定都指同一实施例。此外,特定特征、结构或特性可以在一个或多个实施例中以任何适当的方式组合。在前述说明书中,参考特定的示例性实施例给出了详细描述。然而,将显而易见的是,可以对其做出各种修改和改变,而不偏离如在所附的权利要求中阐述的本发明的更宽精神和范围。说明书和附图因此在例证性意义而不是限制性意义上被考虑。此外,实施例的前述使用和其它示例性语言并不一定指同一实施例或同一示例,但可以指不同的和独特的实施例以及可能是同一实施例。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1