CN109643297B - 电压调制的控制通路 - Google Patents
电压调制的控制通路 Download PDFInfo
- Publication number
- CN109643297B CN109643297B CN201780053201.XA CN201780053201A CN109643297B CN 109643297 B CN109643297 B CN 109643297B CN 201780053201 A CN201780053201 A CN 201780053201A CN 109643297 B CN109643297 B CN 109643297B
- Authority
- CN
- China
- Prior art keywords
- data
- signal
- clock
- link
- lanes
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4265—Bus transfer protocol, e.g. handshake; Synchronisation on a point to point bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/325—Power saving in peripheral device
- G06F1/3253—Power saving in bus
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Systems (AREA)
- Computer Hardware Design (AREA)
Abstract
计算组件被提供物理层逻辑,用于在包括多个通路的物理链路上接收数据,其中数据是从物理链路的一个或多个数据通路上的特定组件接收的。物理层还用于在物理链路的多个通路中的特定一个通路上接收流信号,其中流信号用于标识一个或多个数据通路上的数据的类型,该类型是由特定组件支持的多个不同类型中的一个类型,并且通过电压幅度调制在特定通路上对流信号进行编码。
Description
相关申请的交叉引用
本申请要求2016年9月30日提交的题为“VOLTAGE MODULATED CONTROL LANE”的美国非临时专利申请第15/283,028号的优先权的利益,该申请通过引用整体并入本文。
技术领域
本公开涉及计算系统,并且更特别地(但非排他地)涉及点对点互连。
背景技术
半导体加工和逻辑设计的进步已经允许增加可存在于集成电路器件上的逻辑量。必然地,计算机系统配置已经从系统中的单个或多个集成电路演进到多核,多个硬件线程,以及存在于单个集成电路上的多个逻辑处理器,以及其它集成在此类处理器内的接口。处理器或集成电路典型地包括单个物理处理器管芯,其中处理器管芯可包括任意数量的核、硬件线程、逻辑处理器、接口、存储器、控制器中心等。
由于在较小的封装中配备更多处理能力的更大能力,较小的计算设备的普及度增加。智能手机、平板设备、超薄笔记本以及其它用户装备已经成指数增长。然而,这些较小的设备依赖于既用于数据存储又用于超过形状因子的复杂处理的服务器。结果,高性能计算市场(即,服务器空间)的需求也已增加。例如,在现代服务器中,典型地不仅存在具有多核的单个处理器,而且存在多个物理处理器(也称为多个插槽)来提高计算能力。但是,随着处理能力连同计算系统中的设备数量增长,插槽与其它设备之间的通信变得更加重要。
事实上,互连已经从主要处置电通信的更加传统的多分支总线增长到利于快速通信的成熟的互连架构。不幸的是,由于对未来处理器的需求以甚至更高的速率消耗,对应的需求放在现有互连架构的能力上。
附图说明
图1示出了包括互连架构的计算系统的实施例。
图2示出了包括分层栈的互连架构的实施例。
图3示出了在互连架构内生成或接收到的请求或分组的实施例。
图4示出了用于互连架构的发送器和接收器对的实施例。
图5A示出了多芯片封装的实施例。
图5B示出了多协议链路(MPL)的使用。
图6是示例MPL的简化框图。
图7是关于示例MPL的示例发信号(signaling)的表示。
图8是示出电压幅度调制的简化框图。
图9是利用电压幅度调制的示例MPL上的示例发信号的表示。
图10A-10B是利用支持电压幅度调制的示例MPL的系统的简化框图。
图11A-11C是用于处理用控制信号编码的示例时钟信号的简化电路图。
图12是利用电压幅度调制的示例MPL上的示例发信号的表示。
图13是MPL的简化框图。
图14示出了包括多核处理器的计算系统的框图的实施例。
图15示出了包括处理器的计算系统的框图的另一实施例。
图16示出了用于包括多个处理器的计算系统的块的实施例。
各附图中相似的附图标记和名称表示相似的元件。
具体实施方式
在下面的说明中,为了提供对本发明的全面理解,阐述了若干具体的细节,诸如处理器和系统配置的具体类型的示例、具体硬件结构的示例、具体架构和微架构的细节的示例、具体寄存器配置的示例、具体指令类型的示例、具体系统组件的示例、具体测量/高度的示例、具体处理器流水线级和操作的示例,等等。然而,本领域技术人员显而易见的是,无需采用这些具体细节来实现本发明。在其它实例中,公知的组件或方法,诸如具体的和替代的处理器架构、用于所描述的算法的具体的逻辑电路/代码、具体的固件代码、具体的互连操作、具体的逻辑配置、具体的制造技术和材料、具体的编译器实现、算法的具体代码表达、具体的掉电和选通技术/逻辑以及计算机系统的其它具体操作细节没有被详细描述,以免不必要地模糊本发明。
虽然下面的实施例可以参考诸如计算平台或微处理器中的具体的集成电路中的能量节约和能量效率来描述,但是其它实施例能够应用于其它类型的集成电路和逻辑器件。本文所描述的实施例的类似的技术和教导可应用于也会受益于更佳的能量效率和能量节约的其它类型的电路或半导体器件。例如,公开的实施例不限于台式计算机系统或UltrabooksTM。并且,还可用于其它设备,诸如手持式设备、平板设备、其它薄的笔记本、片上系统(SOC)设备以及嵌入式应用。手持式设备的一些示例包括蜂窝电话、因特网协议设备、数字照相机、个人数字助理(PDA)以及手持式PC。嵌入式应用典型地包括微控制器、数字信号处理器(DSP)、片上系统、网络计算机(NetPC)、机顶盒、网络集线器、广域网(WAN)交换机、或者能够执行下面教导的功能和操作的任何其它系统。而且,本文所描述的装置、方法和系统不限于物理计算设备,而且可能涉及到用于能量节约和能效的软件优化。如将在下面的说明中变得易于明白的是,本文所描述的方法、装置和系统的实施例(无论是提到硬件、固件、软件还是它们的组合)对于与性能考量平衡的‘绿色技术’未来来说至关重要。
随着计算系统进步,其中的组件变得越来越复杂。结果,在组件之间进行耦合和通信的互连架构复杂度也渐增以确保对于最优组件操作满足带宽要求。此外,不同的市场部门需要互连架构的不同方面来适应市场需要。例如,服务器要求较高的性能,而移动生态系统有时能够为功率节约而牺牲总体性能。然而,更多结构的单一目的是提供具有最大功率节约的最高可能的性能。下面,论述了多种互连,它们将可能受益于本文所描述的发明的各方面。
一个互连结构架构包括外围组件互连(PCI)Express(PCIe)架构。PCIe的主要目标是使得来自不同销售商的组件和设备能够在开放的架构中相互协作,跨越多个市场部门;客户端(桌面和移动),服务器(标准和企业)以及嵌入式和通信设备。PCI Express是一种为各种未来计算和通信平台定义的高性能、通用I/O互连。一些PCI属性,诸如其使用模型,负荷库架构和软件接口,已经通过其修正而维持,而先前的并行总线实现已经被高度可扩展的、全串行接口替代。PCI Express的更近期的版本利用了点对点互连、基于交换机的技术以及分组协议的进步以输送新级别的性能和特征。功率管理、服务品质(QoS)、热插拔/热交换支持、数据完整性以及错误处置是PCI Express所支持的先进特征中的一些。
参考图1,示出了由将一组组件互连的点对点链路构成的结构的实施例。系统100包括与控制器中心115耦合的处理器105以及系统存储器110。处理器105包括任何处理元件,诸如微处理器、主机处理器、嵌入式处理器、协处理器或其它处理器。处理器105通过前端总线(FSB)106与控制器中心115耦合。在一个实施例中,FSB 106是如下文所述的串行点对点互连。在另一实施例中,链路106包括符合不同互连标准的串行的、差分互连架构。
系统存储器110包括任何存储器设备,诸如随机存取存储器(RAM)、非易失性(NV)存储器、或者其它能够由系统100中的设备访问的存储器。系统存储器110通过存储器接口116与控制器中心115耦合。存储器接口的示例包括双数据率(DDR)存储器接口、双通路DDR存储器接口以及动态RAM(DRAM)存储器接口。
在一个实施例中,控制器中心115是外围组件互连Express(PCIe或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、监控器、打印机、鼠标、键盘、路由器、便携式存储设备、Firewire设备、通用串行总线(USB)设备、扫描仪以及其它输入/输出设备。经常,在PCIe专用语中,诸如设备,称为端点。虽然没有具体示出,但是设备125可以包括支持旧有设备或其它版本的PCI设备的PCIe到PCI/PCI-X桥。PCIe中的端点设备经常分类为旧有、PCIe或根复合体集成端点。
图形加速器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栈、下一代高性能计算互连栈或其它分层栈。虽然下文紧接着参考图1-4的论述与PCIe栈有关,但是相同的构思可应用于其它互连栈。在一个实施例中,协议栈200是包括事务层205、链路层210和物理层220的PCIe协议栈。诸如图1的接口117、118、121、122、126和131的接口可表示为通信协议栈200。表示为通信协议栈还可称为实现/包括协议栈的模块或接口。
PCI Express使用分组以在组件之间传送信息。分组形成在事务层205和数据链路层210中以将信息从发送组件载到接收组件。随着发送的分组流经其它层,它们被用处理那些层中的分组所必要的附加信息进行扩展。在接收侧,发生相反的过程,并且分组从它们的物理层220表示变换成数据链路层210表示,并且最终(用于事务层分组)变换成能够由接收设备的事务层205处理的形式。
事务层
在一个实施例中,事务层205提供设备的处理核与互连架构之间的接口,诸如数据链路层210和物理层220。在这方面,事务层205的主要责任是分组(即,事务层分组或TLP)的组合和分解。事务层205典型地管理TLP的基于信用的流控制。PCIe实现分割事务,即按时间分开的具有请求和响应的事务,允许链路承载其它业务量,同时目标设备收集用于响应的数据。
另外,PCIe使用基于信用的流控制。在该方案中,设备对于事务层205中的每个接收缓冲器公布初始信用量。在链路的相对端的外部设备,诸如图1的控制器中心115,对每个TLP消耗的信用数量进行计数。如果事务没有超过信用限制,则可发送事务。在接收到响应时,恢复一定量的信用。信用方案的优点在于,假设没有遭遇信用限制,信用返回的延迟不影响性能。
在一个实施例中,四个事务地址空间包括配置地址空间、存储器地址空间、输入/输出地址空间、以及消息地址空间。存储器空间事务包括传输数据到/自存储器映射位置的读请求和写请求中的一个或多个。在一个实施例中,存储器空间事务能够使用两个不同的地址格式,例如,短地址格式,诸如32位地址,或者长地址格式,诸如64位地址。配置空间事务用于访问PCIe设备的配置空间。到配置空间的事务包括读请求和写请求。消息空间事务(或者仅消息)被定义以支持PCIe代理之间的带内通信。
因此,在一个实施例中,事务层205组合分组报头/有效负荷206。当前分组报头/有效负荷的格式可见于PCIe规范网站的PCIe规范中。
迅速参考图3,PCIe事务描述符的实施例被示出。在一个实施例中,事务描述符300是用于承载事务信息的机制。在这点上,事务描述符300支持系统中事务的标识。其它可能的用途包含跟踪缺省事务排序的修改以及事务与信道的关联。
事务描述符300包括全局标识符字段302、属性字段304和通路标识符字段306。在示出的示例中,全局标识符字段302被描绘为包括局部事务标识符字段308以及源标识符字段310。在一个实施例中,全局事务标识符302对于全部的未解决的请求是唯一的。
根据一个实现方式,局部事务标识符字段308是通过请求代理生成的字段,并且对于要求对该请求代理的完成的全部未解决请求是唯一的。此外,在该示例中,源标识符310唯一地标识PCIe层级内的请求方代理。因此,连同源ID 310一起,局部事务标识符308字段提供层级域内的事务的全局标识。
属性字段304规定事务的特性和关系。在这方面,属性字段304可能用于提供允许事务的缺省处理的修正的附加信息。在一个实施例中,属性字段304包括优先级字段312、预留字段314、排序字段316和非窥探字段318。此处,优先级子字段312可通过启动程序修改以将优先级分配给事务。预留属性字段314保留以备将来用,或者是销售商定义的用途。使用优先级或安全属性的可能的使用模型可利用预留属性字段来实现
在该示例中,排序属性字段316用于供应传达可修改缺省排序规则的排序类型的可选信息。根据一个示例的实现方式,排序属性“0”表示缺省排序规则将被应用,其中排序属性“1”表示松弛排序,其中写能够沿相同的方向传递写,并且读完成能够沿相同的方向传递写。窥探属性字段318用来判定事务是否被窥探。如图所示,信道ID字段306标识与事务相关联的信道。
链路层
链路层210,也称为数据链路层210,充当了事务层205与物理层220之间的中间级。在一个实施例中,数据链路层210的责任是提供用于在链路的两个组件之间交换事务层分组(TLP)的可靠的机制。数据链路层210的一侧接受由事务层205组合的TLP,应用分组顺序标识符211,即标识号或分组号,计算并应用错误检测码,即CRC 212,并且将修改后的TLP提交给物理层220,用于经物理设备传输到外部设备。
物理层
在一个实施例中,物理层220包括逻辑子块221和电子块222,用来将分组物理地发送到外部设备。此处,逻辑子块221负责物理层221的“数字”功能。在这方面,逻辑子块包括:发送部,其准备用于通过物理子块222发送的向外的信息,以及接收部,其在将接收到的信息传递到链路层210之前标识并准备该接收到的信息。
物理块222包括发送器和接收器。发送器由逻辑子块221供应符号,发送器将符号串行化并且发送到外部设备。接收器被供应来自外部设备的串行化符号并且将接收到的信号变换成位流。位流被解串行化且供应到逻辑子块221。在一个实施例中,8b/10b发送码被采用,其中十位符号被发送/接收。此处,使用特殊符号来用帧223以将分组组成帧。另外,在一个示例中,接收器还提供从向内的串行流恢复的符号时钟。
如上所述,虽然事务层205、链路层210和物理层220是参考PCIe协议栈的具体实施例来论述的,但是分层协议栈不限于此。事实上,可以包含/实现任何分层协议。作为示例,表示为分层协议的端口/接口包括:(1)组合分组的第一层,即事务层;为分组定序的第二层,即链路层;以及发送分组的第三层,即物理层。作为具体示例,使用共同标准接口(CSI)分层协议。
接着参考图4,示出了PCIe串行点对点结构的实施例。虽然PCIe串行点对点链路的实施例被示出,但是串行点对点链路不限于此,因其包含任何用于发送串行数据的传输路径。在所示的实施例中,基础PCIe链路包括两个低电压、差分驱动信号对:发送对406/411以及接收对412/407。因此,设备405包括发送数据到设备410的发送逻辑406以及从设备410接收数据的接收逻辑407。换言之,两个发送路径,即路径416和417,以及两个接收路径,即路径418和419,包含在PCIe链路中。
发送路径是指用于发送数据的任何路径,诸如发送线路、铜线、光学线路、无线通信信道、红外通信链路或其它通信路径。诸如设备405与设备410的两个设备之间的连接称为链路,诸如链路415。链路可以支持一个通路——每个通路表示一组差分信号对(一对用于发送,一对用于接收)。为了缩放带宽,链路可以聚集由xN表示的多个通路,其中N是任何支持的链路宽度,诸如1、2、4、8、12、16、32、64或更宽。
差分对是指两个发送路径,例如线路416和417,用于发送差分信号。作为示例,当线路416从低压电平触发到高压电平时,即上升沿,线路417从高逻辑电平驱动到低逻辑电平,即下降沿。差分信号可能显现出更佳的电特性,诸如更佳的信号完整性,即交叉耦合,电压过冲/欠冲、瞬时扰动等。这允许有更佳的定时窗,这使得实现更快的传输频率。
图5A-5B是简化框图500a-b,示出了实现链路以启用其中可以发送不同协议的数据的发信号窗口的示例系统。在图5A的示例中,示出了示例性多芯片封装505,其包括使用示例性多协议链路(MPL)520a通信地连接的两个或更多个芯片或管芯(例如,510,515)。虽然图5A示出了利用示例的MPL 520a互连的两个(或以上)管芯的示例,应当理解,本文关于MPL实现方式所描述的原理和特征能够应用于连接管芯(例如,510)和其它组件的任何互连或链路,包括连接两个以上管芯(例如,510,515),连接管芯(或芯片)到另一管芯外组件,连接管芯到另一设备或封装外管芯(例如,505),连接管芯到BGA封装,插入机构上补丁(POINT)的实现以及可能其它的示例。
一般地,多芯片封装(例如505)可以是如下的电子封装:其中多个集成电路(IC)、半导体管芯或其它分立组件(例如,510,515)封装到联合衬底(例如,硅或其它半导体衬底)上,利于组合的组件用作单一组件(例如,好像是较大的IC一样)。在一些实例中,较大的组件(例如,管芯510,515)本身可以是IC系统,诸如片上系统(SoC)、多处理器芯片或者包括设备上,例如单个管芯(例如,510,515)上的多个组件(例如,525-530和540-545)的其他组件。多芯片封装505能够提供用于由可能多个分立组件和系统构建复杂且多变的系统的灵活性。例如,管芯510,515中的每个可由两个不同的实体来制造或以其它方式提供,封装505的硅衬底由又一第三实体来提供,以及许多其它的例子。此外,多芯片封装505内的管芯和其它组件本身可以包括提供设备(例如,分别是510,515)内的组件(例如,525-530和540-545)之间的通信的基础设施的互连或其它通信结构(例如,535,550)。各种组件和互连(例如,535,550)可能支持或使用多个不同的协议。此外,管芯(例如,510,515)之间的通信可能包括管芯上各组件之间通过多种不同协议的事务。提供多芯片封装上的芯片(或管芯)之间的通信的设计机制可能存在挑战,传统的解决方案采用了基于寻求互连的组件(以及期望的事务)的特定组合的高度专门化的、昂贵的以及封装特定的解决方案。
在该说明书中描述的示例、系统、算法、装置、逻辑和特征能够解决上文所标识的至少一些问题,包括可能许多其它未在本文中明确提到的问题。例如,在一些实现方式中,高带宽、低功率、低延迟接口能够被提供以将主机设备(例如,CPU)或其它设备连接到辅助芯片(companion chip),辅助芯片位于与主机相同的封装中。该多协议链路(MPL)能够支持多种封装选项,多个I/O协议,以及可靠性、可用性和可服务性(RAS)特征。此外,物理层(PHY)可以包括电层和逻辑层并且能够支持较长的信道长度,包括多达近似45mm并且在一些情况下超过近似45mm的信道长度。在一些实现中,示例的MPL能够以高数据率操作,包括超过8-10Gb/s的数据率。
尽管图5A的示例示出了在多芯片封装中使用MPL,多芯片封装可以包括多个功能丰富的组件(具有支持多个引脚的大型岸线,其可以用于支持具有潜在多个数据通路和多个控制通路的多通路MPL链路),MPL的其他实现方式可以用于具有较小或以用户为中心的形状因子的较简单设备,例如智能电话、物联网(IoT)设备等。例如,图5B示出了简化的系统560的示例实现方式,其可以包括一个或多个处理器(例如,565)和其他组件(例如,传感器组件570),其可以使用MPL链路(例如,520b)的简化版本互连。设备560的组件(例如,565,570)可具有比图5A的多芯片封装505示例的管芯上系统510,515更少的功能和更小的占用面积。因此,示例设备560可以支持更少的引脚,其可以同时适合于更简单的组件(例如,565,570),其相比于示例性多芯片封装器505的更复杂的高速组件(例如,525-530,540-545)可以以相对较低的速度操作,支持较少的协议,发送较小的数据报(以可能较低的速度),并且支持较少的功能。在一些实现方式中,可以提供简化的MPL链路520b,以提供相同的多协议功能性,但引脚数较少,如下面的示例中所述。
在MPL的一个示例的实现方式中,PHY电层能够改善传统的多信道互连解决方案(例如,多信道DRAM I/O),扩展数据率和信道配置,例如通过多种特征,包括作为示例的调整后中轨终止(mid-rail termination)、低功率活跃串扰抵消、电路冗余、每位占空比校正和抗扭斜、线路编码以及发送器均衡,以及可能其它的示例。
在MPL的一个示例的实现方式中,PHY逻辑层能够被实现,其能够进一步辅助(例如,电层特征)扩展数据率和信道配置,同时还使得互连能够跨电层路由多个协议。这些实现方式能够提供并限定模块化共用物理层,其是协议不可知的并且被架构设计为与可能任何现有的或未来的互连协议协作。
转到图6,示出了简化框图600,其表示包括多协议链路(MPL)的示例实现方式的系统的至少一部分。在一个示例中,被配置为支持更复杂连接的MPL(例如,在多芯片封装之间)可以使用连接第一设备605(例如,包括一个或多个子组件的第一管芯)与第二设备610(例如,包括一个或多个其他子组件的第二管芯)的物理电连接(例如,实现为通路的导线)来实现。在图600的高级表征中所示的特定示例中,全部信号(信道615,620中的)能够是单向的,并且能够为数据信号提供通路以便具有上游和下游数据传输。虽然图6的框图600将第一组件605称为上游组件且将第二组件610称为下游组件,并且用于发送数据的MPL的物理通路称为下游信道615以及用于接收数据(从组件610)的通路称为上游信道620,应当理解,设备605,610之间的MPL能够由每个设备来使用以便在设备间发送和接收数据。
在一个示例的实现方式中,MPL能够提供包括电MPL PHY 625a,b(或者统称为625)以及实现MPL逻辑PHY 630a,b(或者统称为630)的可执行逻辑的物理层(PHY)。电的、或者物理的PHY 625能够提供物理连接,通过该物理连接在设备605,610之间传送数据。信号调节组件和逻辑能够与物理PHY 625相结合来实现,从而建立链路的高数据率和信道配置能力,在一些应用中,这会涉及到在近似45mm或以上的长度下紧密群集的物理连接。逻辑PHY 630可以包括用于促进时钟定时、链路状态管理(例如,用于链路层635a,635b)以及在可能的用于通过MPL的通信的多种不同的协议之间的协议多路复用的逻辑。
在一个示例的实现方式中,物理PHY 625可以包括,用于每个信道(例如,615,620)的一组数据通路,带内数据能够在该组数据通路上送出。在该特定示例中,在上游和下游信道615,620中各设置50个数据通路,尽管在布局和功率约束、期望应用、设备约束等所允许的情况下,可以使用任何其他数量的通路。每个信道可进一步包括一个或多个用于信道的选通脉冲、或时钟信号的专用通路,用于信道的有效信号的一个或多个专用通路,用于流信号的一个或多个专用通路以及用于链路状态机管理或边带信号的一个或多个专用通路。物理PHY可进一步包括边带链路640,在一些示例中,边带链路640可以是用于协调连接设备605,610的MPL的状态转换和其他属性的双向低频控制信号链路,以及其他示例。
如上所述,可以使用MPL来支持多个协议。事实上,在一些实现方式中,可以在每个设备605,610处提供多个独立的事务层650a,650b。例如,每个设备605,610可以支持和利用两个或更多个协议,例如PCI、PCIe、QPI、Intel管芯内互连(IDI)、超路径互连(UPI)等。还可以支持其他协议,包括以太网协议、Infiniband协议和基于PCIe结构的协议。对于涉及特殊用途、低频或其他更简化系统的IoT和其他互连,多种协议可能包括一个或多个协议,如通用异步接收器/发送器(UART)、串行数字接口(SDI)、I2C,以及其它可能的示例。逻辑PHY和物理PHY的组合还能够用作将一个管芯上的SerDes PHY(PCIe、以太网、Infiniband或其他高速SerDes)与实现在另一管芯上的它的上层进行连接的管芯到管芯互连,以及其他示例。
逻辑PHY 630能够支持MPL上的这些多种协议之间的多路复用。例如,专用流通路能够用于断定(assert)标识哪个协议要应用于在信道的数据通路上基本同时送出的数据的编码的流信号。此外,逻辑PHY 630能够用于协商各种协议可支持或请求的各种类型的链路状态转换。在一些实例中,能够使用通过信道的专用LSM_SB通路送出的LSM_SB信号连同边带链路640一起在设备605,610之间传送和协商链路状态转换。进一步,链路训练、错误检测、扭斜检测、抗扭斜以及传统互连的其他功能能够部分地利用逻辑PHY 630而被替代或掌控。例如,在每个信道中的一个或多个专用有效信号通路上送出的有效信号能够用于以信号发送链路活动,检测扭斜,链接错误,以及实现其他特征,以及其他示例。在图6的特定示例中,在MPL提供较大数量数据通路(例如,在每个方向上50个通路)的实现方式中,每个信道可以提供多个有效通路。例如,信道内的数据通路可以成束或集群(物理地和/或逻辑地),并且有效通路可以被针对每个集群而提供。此外,在一些情况下,多个选通脉冲通路还能够被提供以提供用于信道中的多个数据通路集群中的每个集群的专用选通脉冲信号,以及其他示例。
如上所述,逻辑PHY 630能够用于协商和管理MPL所连接的设备之间送出的链路控制信号。在一些实现方式中,逻辑PHY 630可以包括能够用于通过MPL(即,带内)发送链路层控制消息的链路层分组(LLP)生成逻辑660。这些消息能够通过信道的数据通路发送,流通路标识数据是链路层到链路层的消息传递,诸如链路层控制数据,以及其他示例。利用LLP模块660使能的链路层消息能够有助于链路层状态转换、功率管理、回送、禁用、再定中心(re-center)、加扰以及设备605,610的各自的链路层635a,635b之间的其他链路层特征的协商和执行。
转到图7,示出了表示使用第一示例实现MPL的特定信道中的一组通路(例如,615,620)的示例发信号的示意图700。图7的示例可以呈现适合于具有较大可用引脚数的互连组件(例如,多组件芯片)的系统的MPL实现方式。例如,在图7的示例中,对于信道中的五十(50)个全部数据通路,提供二十五(25)个数据通路的两个集群。示出了通路的一部分,而为了图示特定示例方便,省去了(例如,作为冗余信号)其他(例如,DATA[4-46]和第二选通脉冲信号通路(STRB))。当物理层处于活跃状态时(例如,未断电或者处于低功率模式(例如,L1状态))时,选通脉冲通路(STRB)能够被提供同步时钟信号。在一些实现方式中,数据能够在选通脉冲的上升沿和下降沿发送。每个边沿(或者一半时钟周期)能够定界一个单位间隔(UI)。因此,在该示例中,可在每个通路上发送位(例如,705),允许每8UI发送一个字节。字节时间段或字节窗710能够定义为8UI,或者在数据通路的单一数据通路上发送字节(例如,DATA[0-49])的时间。
在一些实现方式中,在一个或多个专用有效信号信道(例如,VALID0,VALID1)上发送的有效信号能够充当接收设备的引导指示符,以便当断定(高)时向接收设备或宿标识在下一时间段内,例如字节时间段710内,数据正在数据通路(例如,DATA[0-49])上从发送设备或源被发送。替代地,当有效信号为低时,源向宿指示,宿在下一时间段内将不在该数据通路上发送数据。因此,当宿逻辑PHY检测到有效信号未被断定(例如,在通路VALID0和VALID1上)时,宿会忽视在下一时间段内在数据通路(例如,DATA[0-49])上检测到的任何数据。例如,当实际上源没有发送任何数据时,串扰噪声或其他位会出现在一个或多个数据通路上。借助于在前一时间段(例如,前一字节时间段)内低的或者非断定的有效信号,宿能够确定在下一时间段内应当忽视数据通路。
在MPL的每个通路上发送的数据能够与选通脉冲或其它时钟信号对准。能够基于选通脉冲来定义时间段,诸如字节时间段,并且这些时间段中的每一个能够对应于定义的窗,在该定义的窗中,要在数据通路(例如,DATA[0-49])、有效通路(例如,VALID1,VALID2)以及流通路(例如,STREAM)上发送信号。因此,这些信号的对准能够使能标识:前一时间段窗中的有效信号应用于下一时间段窗中的数据,以及流信号应用于同一时间段窗中的数据。流信号可以是编码信号(例如,用于字节时间段窗的1字节数据),其被编码以识别应用于在同一时间段窗内发送的数据的协议。
为了图示说明,在图7的特定示例中,定义了字节时间段窗。在数据通路DATA[0-49]上注入任何数据之前,在时间段窗n(715)断定有效。在下一时间段窗n+1(720),在至少一些数据通路上发送数据。在该情况下,在n+1(720)内,在全部五十个数据通路上发送数据。因为在前一时间段窗n(715)的持续期间内断定了有效信号,所以宿设备能够验证在时间段窗n+1(720)内在数据通路DATA[0-49]上接收到的数据。另外,在时间段窗n(715)内有效信号的引导本质允许接收设备为向内的数据做好准备。继续图7的示例,在时间段窗n+1(720)的持续期间内有效信号仍被断定(在VALID1和VALID2上),使得宿设备期望在时间段窗n+2(725)内在数据通路DATA[0-49]上发送的数据。如果有效信号在时间段窗n+2(725)内仍被断定,则宿设备可进一步期望接收(以及处理)在紧接其后的时间段窗n+3(730)内发送的附加数据。然而,在图7的示例中,有效信号在时间段窗n+2(725)的持续期间内被解断定,向宿设备指示在时间段窗n+3(730)内没有数据要发送以及在时间段窗n+3(730)内在数据通路DATA[0-49]上检测到的任何位应当被忽视。
如上所述,在一些情况下,MPL链路可以用每个信道的多个有效通路和选通脉冲通路来实现。在一些系统中,这能够有助于维持电路简化以及连接两个设备的相对较长的物理通路的集群间的同步,以及其他优点。在一些实现方式中,一组数据通路能够划分成数据通路集群。例如,在图7的示例中,数据通路DATA[0-49]能够划分成两个二十五通路集群并且每个集群能够具有专用的有效和选通脉冲通路。例如,有效通路VALID1能够与数据通路DATA[0-24]相关联并且有效通路VALID2能够与数据通路DATA[25-49]相关联。在用于每个集群的有效通路和选通脉冲通路的每个“副本”上的信号可以相同。
如上文介绍的,在支持一个或多个专用STREAM通路的情况下,流通路STREAM上的数据能够用于向接收逻辑PHY指示何种协议要应用于在数据通路DATA[0-49]上发送的对应数据。在图7的示例中,在与数据通路DATA[0-49]上的数据相同的时间段窗内在STREAM上发送流信号以指示数据通路上的数据的协议。在替代的实现方式中,流信号可以在前一时间段窗内发送,诸如具有对应的有效信号,以及其他可能的变型。然而,继续图7的示例,在时间段窗n+1(720)内发送流信号735,其被编码以指示适用在时间段窗n+1(720)内在数据通路DATA[0-49]上发送的位的协议(例如,PCIe,PCI,IDI,QPI等)。类似地,另一流信号740可以在后续时间段窗n+2(725)内被发送以指示应用于在时间段窗n+2(725)内在数据通路DATA[0-49]上发送的位的协议,等等。在一些情况下,诸如图7的示例(其中两个流信号735,740具有相同编码,二进制FF),顺序的时间段窗(例如,n+1(720)和n+2(725))中的数据可以属于相同的协议。然而,在其他情况下,顺序的时间段窗(例如,n+1(720)和n+2(725))中的数据可以来自不同协议所应用的不同事务,并且流信号(例如,735,740)能够相应地被编码以识别应用于数据通路(例如,DATA[0-49])上的数据的顺序字节的不同协议,以及其他示例。
在一些实现方式中,可以为MPL定义低功率或空闲状态。例如,当MPL的任一设备均不发送数据时,MPL的物理层(电和逻辑)能够进行到空闲或低功率状态。例如,在图7的示例中,在时间段窗n-2(745)中,MPL处于安静或空闲状态并且选通脉冲被禁用以节约功率。MPL能够摆脱低功率或空闲模式,唤醒时间段窗n-1(例如,705)的选通脉冲。选通脉冲能够完成发送前同步信号(例如,辅助唤醒和同步信道的各通路,以及宿设备),在其他非选通脉冲通路上的任何其他发信号之前开始选通脉冲信号。在该时间段窗n-1(705)之后,有效信号能够在时间段窗n(715)中被断定以通知宿:数据即将在下一时间段窗n+1(720)到来,如上所述。
MPL可以在检测到MPL信道的有效通路、数据通路和/或其他通路上的空闲状况后再次进入低功率或空闲状态(例如,L1状态)。例如,在时间段窗n+3(730)开始时没有检测到发信号并且继续向前。源设备或宿设备上的逻辑能够发起到低功率状态的返回,再次导致(例如,时间段窗n+5(755))选通脉冲在功率节约模式下进入空闲,以及其他示例和原理(包括那些在下文中论述的)。
物理PHY的电特性可包括发送器(源)和接收器(宿)的单端发信号、半率转送时钟、互连信道的匹配以及片上传送延时中的一个或多个,优化静电放电(ESD)保护,焊盘电容以及其他特征。此外,MPL可以被实现以实现比传统封装I/O解决方案更高的数据率(例如,接近16Gb/s)以及能效特性。
尽管图6和7的示例示出了作为互连的MPL的示例实现方式,用于促进支持更复杂特征并且具有支持多种引脚(包括用于专用时钟、有效、流、边带通知和数据通路,甚至进一步的控制通路,例如数据总线反转(DBI)通路的引脚)的岸线的设备之间的高速、高带宽信道,其他实现方式可能不合适或者根本不能支持这种MPL配置。在一些实现方式中,MPL的控制功能(例如,通过有效、流、边带通知和其他信号提供)可以在MPL的实现方式中提供,其极大地减少或甚至放弃在以上图6和图7的示例中提供的至少一些专用控制通路。例如,在一些实现方式中,可以利用脉冲幅度调制(PAM)来编码MPL的一个或多个通路上的附加数据,例如控制通路之一、时钟(选通脉冲)通路,或甚至一个或多个数据通路,以实现使用上面的图6和7的示例中的专用通路发送的控制信号。
例如,图8示出了表示通过脉冲幅度调制对数据进行编码的表示800。在图8的特定示例中,示出了PAM-4调制方案,通过该方案定义了三个非零电压电平(例如,V1,V2,V3),超过了传统数字信号中的典型二进制幅度。然后,每个电压电平可以与对应的数据值相关联(在这种情况下通过四个2比特数字值之一表示)。例如,当在可以发送脉冲的单位间隔(或半时钟周期)期间电压为零时,零脉冲可以被解释为二进制“00”。相反,如果接收到具有电压V1的脉冲,则脉冲可以被解释为二进制“01”,电压V2可以对应于二进制“10”,并且V3可以对应于二进制“11”。因此,在PAM-4方案中,在包括8个单位间隔的字节窗口上,可能通过脉冲幅度调制信号发送可能的4^8种可能的编码。可以使用其他PAM方案,包括PAM-3调制(对于两个可能的非零脉冲幅度),以及其他示例。
转到图9,示出了关于MPL的另一实现方式的发信号的示例。在该示例中,在图7中所示的MPL的示例中,在专用通路STREAM和VALID0上发送的信号由选通脉冲/时钟通路CLK上的电压调制代替。当未用附加控制数据编码时,时钟信号可以类似于典型的二进制时钟(以PAM-2模式有效地调制)。在该示例中,应用PAM-4调制以增强标准PAM-2时钟信号,使得可以利用较高电压电平(即,在标准时钟信号之上)来编码时钟通路上的控制消息。例如,在时钟上编码的这些控制信号可用于支持MPL的多协议通信功能。事实上,图9的示例对应于图7的示例,因为有效信号在时钟信号上被编码(在905处),以指示在下一个8UI字节窗口中的数据通路(例如,DATA[0-2])上可以预期有效数据。在一个示例中,接收组件可以确定在每个8UI字节窗口中接收的解码信号。
在一个实现方式中,被编码以指示有效信号的UI可以是字节窗口的第一UI。继续图9的示例,在有效信号905之后,可以在数据通路上的下一个字节窗口中发送数据,并且可以在相同的字节窗口中发送与数据相对应的流标识符(在910处),但是在时钟信号上编码。在某些情况下,也可以在与流标识符相同的字节窗口中发送有效(对于下一个字节窗口)。例如,在图9的示例中,PAM可以应用于时钟信号的8UI,以在同一字节窗口中编码有效信号和流信号(以指示在相同字节窗口中发送的数据的协议)(在910处)。例如,在一个示例中,前四个UI可以用于指示有效(或不是),并且相同窗口910的最后四个UI可以用于指示当前在相同字节窗口910中发送的数据的流ID。在图9的特定示例中,可以在时钟上对组合的有效/流ID信号进行编码,以指示对应于代码“FF”的协议的数据(例如,920)正在数据通路DATA[0-2]上发送。在下一个窗口915中,可以通过PAM进一步编码时钟信号以指示没有有效(即,在下一个字节窗口中将不发送有效数据)和对应于另一个互连协议的流ID,指示该字节窗口用于发送不同协议或流类型(例如,物理层分组(PLP)、PCIe、IDI、UPI等)的数据(例如,925)。
应该理解的是,图9的示例中所示的编码仅提供作为非限制性示例。实际上,可以定义各种编码,允许一个或多个控制信号覆盖在时钟信号上以替换一个或多个专用控制通路并支持MPL的多协议能力。实际上,取决于可用于促进设备中的组件之间的MPL的引脚的数量,可以定义基于PAM的编码以通过在时钟通路或另一控制通路上编码控制信号来替换一个或多个专用控制通路。此外,可用编码还可以基于连接两个组件的MPL上的通信中支持的协议的数量。例如,如果要通过MPL仅发送两个不同的协议,则PAM代码可以限于用于识别这两个协议的代码(在流信号中),其中更多代码被定义用于要在流信号中识别两个以上协议的实现方式。基于所使用的PAM方案,以及其中可以在特定通路上发送基于PAM的代码的UI的数量,可以定义编码空间。例如,在可以使用时钟通路的4UI来编码控制信号的实现方式中(例如在图9的示例中),在PAM-3方案中,24或16个不同的代码中的一个可以被选择来在单字节窗口中的时钟信号之上发送。然而,在PAM-4方案中,可以在单个字节窗口中的时钟信号之上发送34或81个不同代码的编码空间。在其他情况下,例如控制通路的每个UI可以用基于PAM的信号编码的情况,更大的编码空间可能是可用的(例如,PAM-3方案中的38(6,561)个可用代码以及PAM-4方案中的48(65,536)个可用代码),允许在单个通路上实现更详细和/或变化的发信号(例如,用于各种流、DBI和有效以信号发送,包括传递流信息、DBI信息、有效,甚至是同一字节窗口中单个通路上的数据的组合的代码),以及其他示例中。
转到图10A-10B,示出了简化框图1000a-b,示出了包括耦合两个组件的简化MPL的示例系统,其利用电压幅度调制来覆盖MPL中的通路上的多协议控制信息。例如,在图10A的示例中,示出了系统1000a,其包括上游组件1005a和下游组件1010a。上游和下游组件1005a,1010a可以使用MPL互连,MPL包括下游信道1015a和上游信道1020a。与图6中所示的示例MPL相反,在该示例中,在下游和上游信道中的每一个中提供有限数量的物理通路。例如,在图10A的示例中,不是两个有效通路,而是每个信道提供1个流通路、1个边带控制通路和50个数据通路,每个信道1015a,1020a提供时钟通路和四个数据通路,但是可以保留在信道上发送的数据的多协议窗口化(如图6和图7的示例中所示)。例如,下游和上游信道1015a,1020a中的每一个中的时钟通路可以用于不仅发送对应于链路的时钟信号,而且可以在时钟信号之上添加PAM编码以便保留时钟信号同时还传送附加数据,包括通过每个信道1015,1020a的数据通路发送的每个数据窗口(例如,每个字节窗口)的流ID信息,类似于图9中所示的示例。实际上,可以提供编码以识别可以在MPL上的不同数据窗口中采用的多个不同协议中的每一个。可以向每个组件1005,1010a提供基于硬件和/或软件的逻辑,以实现通信栈,以便利用潜在的多个不同协议促进通信。例如,1005,1010a可以包括每个MPLPHY逻辑(例如,1025a,b)和MPL逻辑PHY逻辑1030a,1030b,以支持MPL的实现方式并且在每个组件处启用基于PAM的编码和解码,以及通过链路发送的数据的窗口化和以信号发送(例如,有效和流)控制定义的窗口内的多协议支持。MPL PHY和逻辑PHY逻辑可以基于用于实现MPL的更复杂实现方式的相同PHY硬件和代码,例如图6中所示的,其中提供专用控制通路。为了支持多个协议,还可以提供链路层(例如,1035a,b)和事务层逻辑(例如,1050a,b),以及LLP生成逻辑1060a,b,例如也结合图6的示例讨论的。
此外,还可以在时钟上编码附加控制信息以识别有效(或“预有效”)指示符,识别边带通知(例如,LSM边带指示符)、DBI信息以及其他示例。在图10A的示例中,可以提供边带信道1070,在其上可以发送状态转换和握手以及带外控制信息。如图6的示例中,为了指示数据是或将要通过边带信道1070发送,边带通知信号可以在带内发送并在下游或上游信道的时钟通路上的时钟信号之上编码(除了提供以实现流识别的编码)以及其他示例特征。在一个示例中,边带通知信号可以作为跨越整个字节窗口的脉冲被发送,其中边带数据将被发送(通过边带信道1070)。
转到图10B的示例,示出了简化的MPL的另一实现方式。在该示例中,可以在下游和上游信道(例如,1015b,1020b)中的每一个中提供一个或多个控制通路。例如,可以提供不专用于为MPL提供多协议支持的控制通路。相反,可以提供控制通路用于另一目的,例如用于DBI发信号。因此,在一些实现方式中,不是在时钟信号之上编码附加MPL控制发信号,而是可以通过幅度调制在要在专用控制通路上发送的控制信号之上或作为要在专用控制通路上发送的控制信号的附加提供附加控制信号。此外,可以通过单个控制通路替换多个专用MPL控制通路(例如,有效通路、流通路和/或边带通知通路)。另外,因为控制通路不携带时钟信号,所以控制数据可以在发信号窗口的每个UI中编码(而不是仅在那些涉及冒险时钟边缘的UI上),以及其他示例。例如,如图10B的示例中所示,一些实现方式可能不利用并消除边带信道(其中控制编码类似地省略专用于识别这种边带信道上的发信号的编码)。在又一个示例中,虽然图10A-10B示出了专用数据通路,在一些实现方式中,数据通路也可以被省略、替换或与控制或时钟通路组合,例如在低带宽数据以有限的潜在值或者以相对不频繁的间隔发送的情况中(例如,IoT传感器)。例如,传感器可以仅通过MPL传送有限的值集合中的一个,并且该数据同样可以通过幅度调制(例如,PAM-4)在物理通路上编码,该物理通路也用于以信号发送与该通路上的多协议支持(例如,流识别)有关的控制代码,以及其他示例。
转到图11A-11C的示例,如上所述,在一些实现方式中,用于识别通过MPL发送或将要发送的数据的流类型的控制信号可以在MPL的专用时钟通路上的时钟信号之上编码。图11A-11C示出了各种实现方式,其中控制信息可以用各种类型的时钟信号(例如,单端,差分等)编码。例如,如图11A所示,单端2UI时钟信号1105可以通过基于PAM的方案(例如,PAM-3)利用附加信息进行编码。信号1105可以被提供给电路(例如,1110),该电路包括作为输入的参考电压(例如,Vref1和Vref2),其可以对应于幅度调制编码中使用的电压电平(如图所示)。可以在电路内提供比较器以将时钟信号(例如,大于Vref1的脉冲)与重叠的控制数据(例如,大于Vref2的脉冲)分离,以提供时钟输出1115和控制信号输出1120以由组合时钟(例如,CLK_in)信号1105的接收器处理。
转到图11B的示例,时钟信号可以实现为s差分时钟(例如,1125)。与单端时钟一样,可以对差分时钟信号进行幅度调制(例如,在1125处),以在与差分时钟信号相同的通路上编码MPL控制信息。可以提供示例解码电路(例如,1130,具有四输入差分放大器1135(例如,提供偏移校正))以再次将时钟信号作为输入,并将控制数据1140与时钟分开(在1145输出)。在一些情况下,较高速时钟信号的幅度调制可能引入时钟占空比抖动。因此,在一些实现方式中,可通过经由共模调制而非时钟摆动来编码时钟信号中的MPL控制信息来针对差分时钟减少抖动,例如图11C中的示例共模调制差分信号1150中所示。图11C的示例还示出了电路1155,控制信号1160和差分时钟1165可以通过电路1155与调制时钟信号1150隔离。
如上所述,在一些实现方式中,可以通过在另一控制通路而不是时钟通路上编码MPL控制信号(例如,流ID信号)来代替MPL控制通路。例如,可以使用简单的转发时钟,并且可以扩展已经在实现方式中提供的一个或多个控制通路(例如,用于数据总线反转)以携带基于PAM的代码。在一个示例中,可以提供在MPL上协调DBI的通路。DBI是一种可用于在传输期间策略性地反转数据总线的技术,以便减少通路转换的数量,从而降低功率。因此,DBI值可以从UI到UI发生改变,并且可以有利地在单独的控制通路上发送。该DBI通路还可以用于控制信号编码。例如,如图12的示例中所示,可以通过基于PAM的编码来扩展控制通路,允许在发信号窗口中发送比可以使用时钟通路来承载MPL控制信号的另一实现方式更多的信息。在一些情况下,可以根据对准时钟对控制通路进行编码,使得以特定频率发送对准信号或值(例如,零)。例如,在图12的示例中,每第4个UI可以是00,后跟非00值,这允许容易的对齐时钟恢复。在这样的示例中(使用PAM-4编码),在每个4UI窗口中,前3个UI是非00值,允许3^3(27)代码。在一个示例中,27个可能代码中的16个可以用于DBI,剩余部分用于MPL控制信息(并且可能还有数据)。通过这样的示例,可以将对准事件编码到通路上以允许容易地恢复符号边界(例如,8UI‘符号’或窗口边界)。在一些实现方式中,在要支持相对较少的协议的情况下,可以指定单个UI(或两个连续的UI等)用于流ID信息的编码。例如,在一个示例中,流ID可以在UI 3、UI 7或一些其他实例处被编码。除了其他示例特征之外,符号边界仍然可以被编码并导出到先前的控制代码(例如,EarlyValid、前同步信号、后同步信号)中。此外,可以使用各种DBI算法。实际上,算法可以在发送器处改变,并在传输开始时通过附加控制代码传送到接收器。由此,这样的实现方式可以用作实现前向子信道以动态地改变物理链路设置的示例机制,以及其他示例。
在MPL的一些示例中还可以可选地实现附加的特征以增强物理链路的性能特性。例如,可以提供线路编码。虽然诸如上述的中轨终止能够允许省略DC数据总线反转(DBI),但是AC DBI仍能够用于降低动态功率。更复杂的编码也能够用于消除1和0的最差情况差别以降低例如中轨调节器的驱动要求,以及限制I/O开关噪声,以及其他示例的益处。此外,还能够可选地实现发送器均衡。例如,在极高数据率下,插入损耗对于封装内信道而言可以是显著的。在一些情况下,两抽头(two-tap)加权发送器均衡(例如,在初始加电顺序期间执行)能够足以缓解这些问题中的一些问题,以及其他问题。
转到图13,示出了简化框图1300,其示出了示例MPL的示例逻辑PHY。物理PHY 1305可以连接到包括逻辑PHY 1310的组件和支持MPL的链路层的附加逻辑。在该示例中,管芯还可以包括支持MPL上的多个不同协议的逻辑。例如,在图13的示例中,可以提供PCIe逻辑1315以及UPI逻辑1320,使得组件可以通过连接两个组件的相同MPL使用PCIe或UPI进行通信,可能还有许多其他示例,包括在MPL上支持两个以上协议或除了PCIe和UPI以外的协议的示例。组件之间支持的各种协议可以提供不同级别的服务和功能。
逻辑PHY 1310可以包括链路状态机管理逻辑1325,用于关于(例如,通过PCIe或UPI接收的)组件的上层逻辑的请求协商链路状态转换。逻辑PHY 1310在一些实现方式中还可以包括链路测试和调试逻辑(例如,1330)。如上所述,示例MPL可以支持通过MPL在组件之间发送的控制信号,以促进MPL的协议不可知、高性能和功率效率特征(以及其他示例特征)。例如,逻辑PHY 1310可以支持关于通过数据通路发送和接收数据的有效信号、流信号和LSM边带信号的生成和发送,以及接收和处理,例如以上示例中所描述的。
在一些实现方式中,多路复用(例如,1335)和解多路复用(例如,1340)逻辑能够被包含在逻辑PHY 1310中或者以其他方式对于逻辑PHY1310可访问。例如,多路复用逻辑(例如,1335)能够用于标识要发送到MPL上的数据(例如,具体实施为分组,消息,等等)。多路复用逻辑1335能够标识管控数据的协议且生成被编码以标识协议的流信号。例如,在一个示例性的实施方案中,流信号可编码为两个十六进制符号的字节(例如,UPI:FFh;PCIe:F0h;LLP:AAh;边带:55h;等等)或简称二进制值,并且能够在所标识的协议管控的数据的相同窗(例如,字节时间段窗)内发送。类似地,解多路复用逻辑1340能够用于解译向内的流信号以对流信号译码并且标识要应用于与数据通路上的流信号同时接收到的数据的协议。解多路复用逻辑1340随后能够应用(或确保)协议特定链路层处理并且使得数据由对应的协议逻辑(例如,PCIe逻辑1315或UPI逻辑1320)来处理。
逻辑PHY 1310可进一步包括能够用于处理各种链路控制功能的链路层分组逻辑1350,包括功率管理任务,回送,禁用,再定中心,加扰等等。LLP逻辑1350能够促进通过MPL的链路层到链路层消息,以及其他功能。对应于LLP发信号的数据还能够由被编码以标识该数据通路LLP数据的流信号标识。多路复用逻辑和解多路复用逻辑(例如,1335,1340)还能够用于生成并解译对应于LLP业务量的流信号,以及使得该业务量由适合的组件逻辑(例如,LLP逻辑1350)来处理。同样,由于MCLP的一些实现方式可包括专用边带(例如,边带1355和支持逻辑),诸如异步和/或低频边带通路,以及其他示例。
逻辑PHY逻辑1310可进一步包括链路状态机管理逻辑,其能够生成并接收(以及使用)通过专用链路状态管理(LSM)边带通路进行消息传递的链路状态管理。例如,LSM边带通路能够用于执行握手以推进链路训练状态,脱离功率管理状态(例如,L1状态),以及其他可能的示例。LSM边带信号可以是异步信号,因为其不与链路的数据信号、有效信号和流信号对准,而是对应于发信号状态转换,并且对准链路连接的两个组件或芯片之间的链路状态机,以及其他示例。在一些示例中,提供专用LSM边带通路可以允许消除模拟前端(AFE)的传统静噪和接收的检测电路,以及其他示例的益处。边带握手能够用于促进多芯片封装中组件或芯片之间的链路状态机转换。例如,MPL的LSM边带通路上的信号能够用于跨管组件同步状态机转换。例如,当退出状态(例如,Reset.Idle)条件满足时,满足那些条件的边能够在其向外LSM_SB通路上断定LSM边带信号并且等待另一远程组件达到相同的条件并且在其LSM_SB通路上断定LSM边带信号。当两个LSM_SB信号都被断定时,每个相应组件的链路状态机能够转换到下一状态(例如,Reset.Cal状态)。能够定义最小重叠时间,在该最小重叠时间内两个LSM_SB信号应当在转换状态之前保持被断定。此外,在LSM_SB被解断定后可以定义最小静默时间,以允许精确的换向(turn-around)检测。在一些实现中,每个链路状态机转换可以以该LSM_SB握手为条件且通过该LSM_SB握手来促进。
注意,上述的装置、方法和系统可以实现于上述的任何电子设备或系统中。作为具体的图示说明,下面的图提供了用于利用本文所描述的发明的示例性的系统。由于下面的系统更详细地被描述,根据上文的论述公开、描述和再次提到多种不同的互连。并且显而易见的是,上述的进步可应用于那些互连、结构或架构中的任一者。
参考图14,描绘了包括多核处理器的计算系统的框图的实施例。处理器1400包括任何处理器或处理设备,诸如微处理器、嵌入式处理器、数字信号处理器(DSP)、网络处理器、手持式处理器、应用处理器、协处理器、片上系统(SOC)或者执行代码的其他设备。在一个实施例中,处理器1400包括至少两个核——核1401和1402,它们可包括非对称核或对称核(图示的实施例)。然而,处理器1400可包括可以对称或非对称的任意数量的处理元件。
在一个实施例中,处理元件是指支持软件线程的硬件或逻辑。硬件处理元件的示例包括:线程单元、线程槽、线程、处理单元、上下文、上下文单元、逻辑处理器、硬件线程、核和/或任何其他元件,其能够保存处理器的状态,诸如执行状态或架构状态。换言之,在一个实施例中,处理元件是指任何能够独立地与如软件线程、操作系统、应用或其他代码的代码相关联的硬件。物理处理器(或处理器插槽)典型地是指集成电路,其可能包含任意数量的其他处理元件,诸如核或硬件线程。
核通常是指能够维持独立的架构状态的位于集成电路上的逻辑,其中每个独立维持的架构状态与至少一些专用执行资源相关联。与核相比,硬件线程通常是指任何能够维持独立的架构状态的位于集成电路上的逻辑,其中独立维持的架构状态共享对执行资源的访问。能够看出,当某些资源被共享而其他资源专用于架构状态时,硬件线程与核的命名法之间的线重叠。然而,核和硬件线程通常被操作系统视为单独的逻辑处理器,其中操作系统能够单独地调度每个逻辑处理器上的操作。
如图14所示,物理处理器1400包括两个核——核1401和1402。此处,核1401和1402被视为对称的核,即具有相同配置、功能单元和/或逻辑的核。在另一实施例中,核1401包括乱序处理器核,而核1402包括有序处理器核。然而,核1401和1402可单独地选自任何类型的核,诸如本地核、软件管理核、适于执行本地指令集架构(ISA)的核、适于执行变换指令集架构(ISA)的核、共同设计的核或其他已知的核。在异构核环境中(即,非对称核),一些形式的变换,诸如二进制变换,可用于调度或者执行一个或两个核上的代码。而进一步论述,在核1401中示出的功能单元在下文更详细描述,因为在核1402中的单元以与所描绘的实施例类似的方式操作。
如所描绘的,核1401包括两个硬件线程1401a和1401b,它们还可以称为硬件线程槽1401a和1401b。因此,软件实体,诸如操作系统,在一个实施例中可能将处理器1400视为四个分开的处理器,即,能够同时执行四个软件线程的四个逻辑处理器或处理元件。如所提及的,第一线程与架构状态寄存器1401a相关联,第二线程与架构状态寄存器1401b相关联,第三线程可以与架构状态寄存器1402a相关联,第四线程可以与架构状态寄存器1402b相关联。此处,每个架构状态寄存器(1401a,1401b,1402a,以及1402b)可以称为处理元件、线程槽、或线程单元,如上所述的。如图所示,架构状态寄存器1401a在架构状态寄存器1401b中被复制,因此单个的架构状态/上下文能够被存储而用于逻辑处理器1401a和逻辑处理器1401b。在核1401中,其他较小的资源,诸如分配器与重命名器块1430中的指令指针和重命名逻辑,也可以对于线程1401a和1401b被复制。一些资源,诸如重排序器/引退单元1435、ILTB 1420、装载/存储缓冲器以及队列中的重排序缓冲器,可以通过分区来共享。其他资源,诸如通用内部寄存器、页表库寄存器、低级数据高速缓存以及数据TLB 1415、执行单元1440和乱序单元1435的部分可能完全共享。
处理器1400通常包括其他资源,其可以完全共享,通过分区共享,或者被处理元件专用/专用于处理元件。在图14中,示出了具有处理器的示例的逻辑单元/资源的纯示例性的处理器的实施例。注意,处理器可以包括或者省去这些功能单元中的任一个,以及包括未示出的任何其他已知的功能单元、逻辑或固件。如图所示,核1401包括简化的、代表性的乱序(OOO)处理器核。但是,在不同实施例中可以使用有序处理器。OOO核包括预测待执行/采取的分支的分支目标缓冲器1420以及存储用于指令的地址变换入口的指令变换缓冲器(I-TLB)1420。
核1401还包括与取得单元(fetch unit)1420耦合以对取得的元件进行译码的译码模块1425。在一个实施例中,取得逻辑包括分别与线程槽1401a,1401b相关联的单独的定序器。通常,核1401与第一ISA相关联,其定义/规定能够在处理器1400上执行的指令。通常,作为第一ISA的部分的机器代码指令包括指令的部分(称为操作码),其引用/规定待执行的指令或操作。译码逻辑1425包括从它们的操作码中识别这些指令以及将译码后的指令在流水线上传送以便进行如第一ISA定义的处理的电路。例如,如关于下文更详细论述的,在一个实施例中,译码器1425包括被设计或适于识别诸如交易指令的具体指令的逻辑。作为译码器1425识别的结果,架构或核1401采取具体的、预定义的措施来执行与适合的指令相关联的任务。需要指出的是,本文所描述的任何任务、模块、操作和方法可响应于单条或多条指令而执行;其中一些可以是新指令或旧指令。注意,在一个实施例中,译码器1426识别相同的ISA(或者其子集)。可替选地,在异构核环境中,译码器1426识别第二ISA(要么第一ISA的子集要么不同的ISA)。
在一个示例中,分配器和重命名器块1430包括预留资源的分配器,资源诸如存储指令处理结果的寄存器文件。然而,线程1401a和1401b可能能够乱序执行,其中分配器和重命名器块1430还预留其他资源,诸如跟踪指令结果的重排序缓冲器。单元1430还可以包括将程序/指令引用寄存器重命名成处理器1400内的其他寄存器的寄存器重命名器。重排序器/引退单元1435包括诸如上述的重排序缓冲器、装载缓冲器和存储缓冲器的组件,以支持乱序地执行的指令的乱序执行和后来的有序引退。
在一个实施例中,调度器和执行单元块1440包括调度执行单元上的指令/操作的调度器单元。例如,浮点指令在具有可用浮点执行单元的执行单元的端口上被调度。与执行单元相关联的寄存器文件也被包含以存储信息指令处理结果。示例性的执行单元包括浮点执行单元、整数执行单元、跳跃执行单元、装载执行单元、存储执行单元和其他已知的执行单元。
较低级数据高速缓存和数据变换缓冲器(D-TLB)1450与执行单元1440耦合。数据高速缓存存储近期使用/操作的元件,诸如数据操作数、其可能保持在存储器相干状态下。D-TLB存储近期的虚拟/线性到物理地址变换。作为具体的示例,处理器可包括将物理存储器分解成多个虚拟页的页表结构。
在此,核1401和1402共享对较高级或较远离高速缓存的访问,诸如与片上接口1410相关联的第二级高速缓存。注意,较高级或较远离是指高速缓存级别增加或变得更远离执行单元。在一个实施例中,较高级高速缓存是最后一级数据高速缓存——处理器1400上的存储器层级中的最后的高速缓存——如第二或第三级数据高速缓存。然而,较高级高速缓存不限于此,因为其可与指令高速缓存相关联或者包括指令高速缓存。追踪(trace)高速缓存——一种指令高速缓存——作为替代可以耦合在译码器1425之后以存储近期译码的追踪。此处,指令可能是指宏指令(即,译码器所识别的普通指令),其可译码成多个微指令(微操作)。
在所描绘的配置中,处理器1400还包括片上接口模块1410。历史上讲,下面更详细描述的存储器控制器已经包含在处理器1400之外的计算系统中。在该方案中,片上接口1410要与处理器1400外的设备通信,诸如系统存储器1475、芯片组(经常包含连接到存储器1475的存储器控制器中心以及连接外围设备的I/O控制器中心)、存储器控制器中心、北桥或其他集成电路。并且,在该方案中,总线1405可包括任何已知的互连,诸如多点分支总线、点对点互连、串行互连、并行总线、相干(例如,高速缓存相干)总线、分层协议架构、差分总线以及GTL总线。
存储器1475可专用于处理器1400或者与系统中的其他设备共享。存储器1475的类型的常见示例包括DRAM、SRAM、非易失性存储器(NV存储器)以及其他已知的存储设备。注意,设备1480可包括与存储器控制器中心耦合的图形加速器、处理器或卡、与I/O控制器中心耦合的数据存储设备、无线收发机、闪存设备、音频控制器、网络控制器、或其他已知的设备。
然而,近来,随着更多的逻辑、组件和设备集成在单个管芯上,诸如SOC,这些设备中的每个可以并入处理器1400。例如,在一个实施例中,存储器控制器中心在与处理器1400相同的封装和/或管芯上。此处,核的部分(核上部分)1410包括用于与诸如存储器1475或图形设备1480的其他设备接合的一个或多个控制器。包括用于与这些设备接合的互连和控制器的配置经常称为核上(或非核配置)。作为示例,片上接口1410包括用于片上通信的环形互连以及用于片外通信的高速串行点对点链路1405。然而,在SOC环境中,甚至更多的设备,诸如网络接口、协处理器、存储器1475、图形处理器1480和任何其他已知的计算机设备/接口可集成到单个管芯或集成电路上以便提供具有高功能和低功耗的小的形状因子。
在一个实施例中,处理器1400能够执行编译器、优化和/或变换器代码1477以对应用代码1476进行编译、变换和/或优化,从而支持本文所述的装置和方法或者与它们接合。编译器经常包括将源文本/代码变换成目标文本/代码的程序或程序组。通常地,通过编译器对程序/应用代码的编译是在多个阶段和通过(pass)完成的以将高级编程语言代码变换成低级机器或汇编语言代码。然而,单一通过编译器仍可用于简单的编译。编译器可使用任何已知的编译技术并且执行任何已知的编译器操作,诸如词法分析、预处理、解析、语义分析、代码生成、代码变换和代码优化。
较大的编译器通常包括多个阶段,但是更经常这些阶段包含在两个普通阶段内:(1)前端,即通常是句法处理、语义处理和一些变换/优化可以发生的地方,以及(2)后端,即通常是分析、变换、优化和代码生成发生的地方。一些编译器是指中间,其示出了编译器的前端与后端之间的定界的模糊。结果,对编译器的插入、关联、生成或其他操作的引用可以发生在任意前述阶段或通过中,以及编译器的任何其他已知的阶段或通过。作为说明性的示例,编译器可能插入一个或多个编译阶段中的操作、调用、函数等,诸如编译的前端阶段中的调用/操作的插入,以及随后在变换阶段调用/操作变换成较低级代码。注意,在动态编译过程中,编译器代码或动态优化代码可以插入这些操作/调用,以及优化用于在运行时期间执行的代码。作为具体的说明性的示例,二进制代码(已经编译的代码)可以在运行时期间动态地优化。此处,程序代码可包括动态优化代码、二进制代码或它们的组合。
类似编译器,变换器,诸如二进制变换器,将代码静态地或者动态地变换以优化和/或变换代码。因此,对代码、应用代码、程序代码或其他软件环境的执行的提及可以是指:(1)编译器程序的执行、优化代码优化器的执行、或者动态或静态地变换器的执行,以便编译程序代码,维持软件结构,执行其他操作,以优化代码,或者变换代码;(2)包括操作/调用的主程序代码的执行,诸如已经优化/编译的应用代码;(3)与主程序代码相关联的其他程序代码诸如库的执行以维持软件结构,执行其他软件相关操作,或者优化代码;或者(4)它们的组合。
转到图15,示出了形成有包括执行指令的执行单元的处理器的示范性的计算机系统的框图,其中一个或多个互连实现根据本发明的一个实施例的一个或多个特征。根据本发明,诸如在本文所述的实施例中,系统1500包括组件,诸如采用包括执行处理数据的算法的逻辑的执行单元的处理器1502。系统1500代表了基于PENTIUM IIITM、PENTIUM 4TM、XeonTM、Itanium、XScaleTM和/或StrongARMTM微处理器的处理系统,但是还可以使用其他系统(包括具有其他微处理器、工程工作站、机顶盒等的PC)。在一个实施例中,样本系统1500执行可从华盛顿的Redmond的微软公司获得的WINDOWSTM操作系统的版本,但是还可以使用其他操作系统(例如UNIX和Linux)、嵌入式软件和/或图形用户接口。因此,本发明的实施例不限于任何具体的硬件电路系统和软件的组合。
实施例不限于计算机系统。本发明的替代实施例能够用于其他设备,诸如手持式设备和嵌入式应用。手持式设备的一些示例包括蜂窝电话、因特网协议设备、数字照相机、个人数字助理(PDA)和手持式PC。嵌入式应用可包括微控制器、数字信号处理器(DSP)、片上系统、网络计算机(NetPC)、机顶盒、网络集线器、广域网(WAN)交换机、或者能够执行根据至少一个实施例的一条或多条指令的任何其他系统。
在该示出的实施例中,处理器1502包括实现执行至少一个指令的算法的一个或多个执行单元1508。一个实施例可被描述在单处理器台式或服务器系统的上下文中,但是替代的实施例可包含在多处理器系统中。系统1500是‘中心’系统架构的示例。计算机系统1500包括处理数据信号的处理器1502。作为一个示范性的示例,处理器1502包括复杂指令集计算机(CISC)微处理器、精减指令集计算(RISC)微处理器、极长指令字(VLIW)微处理器、实现指令集的组合的处理器、或者例如诸如数字信号处理器的任何其他处理器设备。处理器1502与处理器总线1510耦合,处理器总线1510在处理器1502与系统1500的其他组件之间传输数据信号。系统1500的元件(例如,图形加速器1512、存储器控制器中心1516、存储器1520、I/O控制器中心1524、无线收发机1526、闪存BIOS 1528、网络控制器1534、音频控制器1536、串行扩展端口1538、I/O控制器1540等)执行它们常规的功能,这是本领域技术人员公知的。
在一个实施例中,处理器1502包括级别1(L1)内部高速缓存存储器1504。根据架构,处理器1502可具有单一内部高速缓存或多级内部高速缓存。其他实施例包括内部高速缓存和外部高速缓存的组合,取决于特定的实现和需要。寄存器文件1506将不同类型的数据存储在包括整数寄存器、浮点寄存器、向量寄存器、库(banked)寄存器、阴影寄存器、检查点寄存器、状态寄存器和指令指针寄存器的各寄存器中。
执行单元1508,包括执行整数运算和浮点运算的逻辑,也贮存在处理器1502中。在一个实施例中,处理器1502包括存储微码的微码(ucode)ROM,当被执行时,微码执行用于某些宏指令的算法或者处置复杂场景。此处,微码可能是能更新的以处置处理器1502的逻辑漏洞/修理。对于一个实施例,执行单元1508包括处置压缩指令集1509的逻辑。通过将压缩指令集1509包含在通用处理器1502的指令集中,连同执行指令的相关联的电路一起,多个多媒体应用所使用的操作可利用通用处理器1502中的压缩数据来执行。因此,通过利用用于对压缩数据执行操作的处理器数据总线的全宽度,许多多媒体应用被更高效地加速和执行。这样可能消除了对如下的需要:跨处理器数据总线传递较小的数据单元以执行一个或多个操作,一次一个数据元素。
执行单元1508的替代实施例还可以用于微控制器、嵌入式处理器、图形设备、DSP、以及其他类型的逻辑电路。系统1500包括存储器1520。存储器1520包括动态随机存取存储器(DRAM)设备、静态随机存取存储器(SRAM)设备、闪速存储器设备或其他存储器设备。存储器1520存储由将要被处理器1502执行的数据信号所表示的指令和/或数据。
注意的是,本发明的任何前述特征或方面可以用于图15所示的一个或多个互连。例如,用于耦合处理器1502的内部单元的未示出的管芯上互连(ODI)实现了上述本发明的一个或多个方面。或者,本发明与处理器总线1510(例如,其他已知的高性能计算互连)、到存储器1520的高带宽存储器路径1518、到图形加速器1512的点对点链路(例如,快速外围组件互连(PCIe)适用结构)、控制器中心互连1522、I/O或用于耦合其他示出的组件的其他互连(例如,USB,PCI,PCIe)相关联。这些组件的一些示例包括音频控制器1536、固件中心(闪存BIOS)1528、无线收发机1526、数据存储设备1524、包含用户输入和键盘接口1542的旧有I/O控制器1510、诸如通用串行总线(USB)的串行扩展端口1538,以及网络控制器1534。数据存储设备1524可以包括硬盘驱动器、软盘驱动器、CD-ROM设备、闪速存储器设备或其他大容量存储设备。
现在参考图16,示出了根据本发明实施例的第二系统1600的框图。如图16所示,多处理器系统1600是点对点互连系统,并且包括经由点对点互连1650耦合的第一处理器1670和第二处理器1680。处理器1670和1680中的每一个可以是某版本的处理器。在一个实施例中,1652和1654是串行、点对点相干互连结构的部分,诸如高性能架构。结果,本发明可实现在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所示,IMC 1672和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/O 1624与第二总线1620耦合。注意,其他架构是可能的,其中所包括的组件和互连架构是变化的。例如,不是图16的点对点架构,系统可以实现多点分支总线或其他这样的架构。
虽然已经关于有限数量的实施例描述了本发明,本领域技术人员将从中理解到若干修改和改变。目的在于随附的权利要求涵盖所有落入本发明的真正的精神和范围内的这样的修改和改变。
设计可经过各个阶段,从创建到模拟到制造。表示设计的数据可以以多种方式表示设计。首先,如模拟中有用的,硬件可以利用硬件描述语言或者另一功能描述语言来表示。另外,具有逻辑和/或晶体管栅极的电路级模型可以在设计过程的某阶段生产。此外,在某阶段的大部分设计达到表示在硬件模型中各设备的物理布置的数据的级别。在使用常规的半导体制作技术的情况下,表示硬件模型的数据可以是规定用于生产集成电路的掩模的不同掩模层上的各特征的存在或缺失的数据。在设计的任何表示中,数据可以以机器可读介质的任意形式来存储。诸如磁盘的存储器或磁或光存储设备可以是存储经由被调制或以其他方式生成以发送该信息的光或电波传输的信息的机器可读介质。当指示或承载代码或设计的电载波被传输时,在电信号的拷贝、缓冲、或再发送被执行的范围内,制作了新的副本。因此,通信提供商或者网络提供商可以在有形的机器可读介质上至少临时地存储诸如编码到载波中的信息的具体实施本发明的实施例的技术的物件。
本文所使用的模块是指硬件、软件和/或固件的任意组合。作为示例,模块包括硬件,诸如微控制器,其与非暂时性介质相关联以存储适于由微控制器执行的代码。因此,在一个实施例中,提到模块是指具体配置成识别和/或执行保存在非暂时性介质中的代码的硬件。此外,在另一实施例中,模块的使用是指包括具体适于由微控制器执行以执行预定操作的代码的非暂时性介质。并且,能够推导出,在另外的实施例中,术语模块(在该示例中)可以是指微控制器和非暂时性介质的组合。经常地,图示为分离的模块界限通常是变化的并且可能重叠。例如,第一模块和第二模块可共享硬件、软件、固件或其组合,同时可能保持了一些独立的硬件、软件或固件。在一个实施例中,术语逻辑的使用包括了硬件,诸如晶体管、寄存器或其他硬件,诸如可编程逻辑器件。
在一个实施例中,短语‘配置为’的使用是指布置、放到一起、制造、许诺销售、导入和/或设计执行指定的或确定的任务的装置、硬件、逻辑或元件。在该示例中,未操作的装置或其元件,如果被设计、耦合和/或互连而执行所述指定任务,则仍‘配置为’执行指定的任务。作为纯说明性的示例,逻辑门可以在操作期间提供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)、磁卡或光卡、闪速存储器、或用于经由电、光、声或其它形式的传播信号(例如,载波、红外信号、数字信号等)在因特网上发送信息的有形的、机器可读存储设备。因此,计算机可读介质包括适合存储或发送以能够由机器(例如,计算机)读取的形式的电子指令或信息的任何类型的有形机器可读介质。
以下示例涉及根据本说明书的实施例。示例1是一种装置,包括物理层逻辑,用于:在包括多个通路的物理链路上接收数据,其中在物理链路的一个或多个数据通路上从特定组件接收数据;以及在物理链路的多个通路中的特定一个通路上接收流信号,其中所述流信号用于标识一个或多个数据通路上的数据类型,该类型是由特定组件支持的多个不同类型中的一个,并且通过电压幅度调制在特定通路上对流信号进行编码。
示例2可以包括示例1的主题,其中所述物理层逻辑还用于:与链路状态转换相关联地通过边带链路发送链路状态机管理信号;以及通过电压幅度调制在特定通路上编码边带通知信号,其中边带通知信号指示通过边带链路对链路状态机管理信号的发送。
示例3可以包括示例1-2中任一个的主题,其中所述类型包括与所述数据相关联的协议,并且所述协议是由所述特定组件支持的多个协议中的特定一个。
示例4可以包括示例3的主题,其中所述物理层逻辑还用于对所述流信号进行解码,以标识所述多个不同协议中的哪个适用于所述数据。
示例5可以包括示例4的主题,其中所述物理层逻辑还用于将所述数据传递到与所述多个协议中的在所述流信号中标识的特定协议对应的上层协议逻辑,并且所述装置还包括多个协议中的每一个的上层逻辑。
示例6可以包括示例5的主题,其中所述物理层逻辑还用于在所述物理链路的所述特定通路上接收有效信号,其中所述有效信号用于标识有效数据遵循对在所述一个或多个数据通路上的有效信号的断定。
示例7可以包括示例6的主题,其中所述物理层逻辑还用于定义其中数据要被在所述数据通路上发送的一系列数据窗口,所述有效信号被在所述一系列数据窗口中的特定一个中发送。
示例8可以包括示例7的主题,其中所述有效信号被在紧接在其中数据要被发送的窗口之前的窗口中断定。
示例9可以包括示例8的主题,其中在紧接在其中所述有效信号未断定的前一窗口之后的窗口中在数据通路上忽略数据。
示例10可以包括示例7-9中任一个的主题,其中所述有效信号通过电压幅度调制在所述特定通路上被编码。
示例11可以包括示例6-10中任一个的主题,其中所述流信号在一系列数据窗口中的与所述数据相同的数据窗口中发送。
示例12可以包括示例1-11中任一个的主题,其中所述特定通路包括时钟通路,并且所述流信号被在时钟信号之上编码,所述时钟信号是在所述时钟通路上发送的。
示例13可以包括示例12的主题,其中所述时钟包括单端时钟。
示例14可以包括示例12的主题,其中所述时钟包括差分时钟。
示例15可以包括示例14的主题,其中所述电压幅度调制包括调制所述差分时钟的共模电压。
示例16可以包括示例1-15中任一个的主题,其中所述特定通路包括控制通路,并且所述流信号和至少一个其他控制信号要被在所述控制通路上发送。
示例17可以包括示例16的主题,其中所述控制通路包括用于数据总线反转(DBI)的通路。
示例18可包括示例1-17中任一个的主题,其中所述电压幅度调制包括脉冲幅度调制。
示例19是一种装置,包括:第一事务层逻辑,用于根据多个通信协议中的第一通信协议来生成第一数据,第二事务层逻辑,用于根据所述多个通信协议中的不同的第二通信协议来生成第二数据,以及物理层逻辑。物理层逻辑能够在包括多个通路的物理链路的一个或多个数据通路上发送第一数据,在多个通路中的特定一个通路上编码第一流信号,以指示第一数据是使用第一通信协议的,其中第一流信号通过电压幅度调制在特定通路上编码,在物理通路的一个或多个数据通路上发送第二数据,并且在特定通路上编码第二流信号以指示第一数据是使用所述第一通信协议的,其中第一流信号通过电压幅度调制在特定通路上编码。
示例20可以包括示例19的主题,其中在第一发信号窗口期间发送所述第一数据和所述第一流信号,并且在第二发信号窗口期间发送所述第二数据和所述第二流信号。
示例21可以包括示例20的主题,其中其他信息也被在所述第一发信号窗口期间与所述第一流信号一起在所述特定通路上发送。
示例22可以包括示例21的主题,其中所述其他信息包括时钟信号,并且所述特定通路包括时钟通路。
示例23可以包括示例21的主题,其中所述其他信息包括有效信号,用于指示要在所述第二发信号窗口中发送有效数据,并且所述有效信号对应于所述第二数据。
示例24是一种系统,包括:第一组件以及第二组件,其通过多协议链路连接到第一组件,其中第一组件和第二组件中的每一个支持以多个通信协议中的任何一个进行的数据通信,并且第二组件包括物理层逻辑,用于:将多协议链路上的数据发送到第一组件,其中多协议链路包括多个通路,并且数据在多个协议链路的一个或多个数据通路上发送,以及在物理链路的多个通路中的特定通路上发送流信号,其中所述流信号用于标识多个通信协议中的特定一个适用于数据,并且流信号通过电压幅度调制在特定通路上编码。
示例25可以包括示例24的主题,其中,所述特定通路包括时钟通路,并且所述流信号被在时钟信号之上编码,所述时钟信号是在所述时钟通路上发送的。
示例26可以包括示例24-25中任一个的主题,其中所述流信号与所述数据同时发送。
示例27可以包括示例24-26中任一个的主题,其中所述数据包括第一数据,所述流信号包括第一流信号,并且所述物理层逻辑还用于:在多协议链路的一个或多个数据通路上将多协议链路上的第二数据发送到第一组件,以及在物理链路的多个通路中的特定通路上发送第二流信号,其中第二流信号用于标识多个通信协议中的第二通信协议适用于第二数据,并且第二流信号被通过电压幅度调制在特定通路上编码。
在该说明书通篇提到“一个实施例”或“实施例”意指,与实施例相结合所描述的特定的特征、结构或特性包含在本发明的至少一个实施例中。因此,在该说明书通篇的各处出现的短语“在一个实施例中”或者“在实施例中”不一定都指同一实施例。此外,特定的特征、结构或特性可以以任何适合的方式组合在一个或多个实施例中。
在前面的说明书中,已经参考具体的示例性实施例给出了详细说明。然而,显而易见的是,可以对其做出各种修改和改变,而不偏离如随附权利要求中阐述的本发明的更宽的精神和范围。因此,说明书和附图视为示例性的含义而不是限制的含义。进而,前面使用的实施例和其它示例性的语言不一定都指代同一实施例或者同一示例,而是可以指代不同的以及有差别的实施例,以及可能相同的实施例。
Claims (22)
1.一种用于数据通信的装置,所述装置包括:
物理层逻辑,用于:
在包括多个通路的物理链路上接收数据,其中,所述数据是在所述物理链路的一个或多个数据通路上从特定组件接收的,并且所述多个通路还包括用于承载时钟信号的时钟通路;以及
接收流信号,所述流信号被在所述物理链路的时钟通路上的时钟信号之上编码,其中,所述流信号用于标识在所述一个或多个数据通路上的所述数据的类型,所述类型是由所述特定组件支持的多个不同类型中的一个,并且所述流信号被通过电压幅度调制在所述时钟通路上编码。
2.如权利要求1所述的装置,其中,所述物理层逻辑还用于:
与链路状态转换相关联地通过边带链路发送链路状态机管理信号;以及
通过电压幅度调制在所述时钟通路上编码边带通知信号,其中,所述边带通知信号指示通过所述边带链路对所述链路状态机管理信号的发送。
3.如权利要求1所述的装置,其中,所述类型包括与所述数据相关联的协议,并且所述协议是由所述特定组件支持的多个不同协议中的特定协议。
4.如权利要求3所述的装置,其中,所述物理层逻辑还用于对所述流信号进行解码,以标识所述多个不同协议中的哪个适用于所述数据。
5.如权利要求4所述的装置,其中,所述物理层逻辑还用于将所述数据传递到与所述多个不同协议中的在所述流信号中标识的所述特定协议对应的上层协议逻辑,并且所述装置还包括所述多个不同协议中的每一个的上层逻辑。
6.如权利要求1所述的装置,其中,所述物理层逻辑还用于在所述物理链路的所述时钟通路上接收有效信号,其中,所述有效信号用于标识有效数据遵循对在所述一个或多个数据通路上的所述有效信号的断定。
7.如权利要求6所述的装置,其中,所述物理层逻辑还用于定义其中数据要被在所述数据通路上发送的一系列数据窗口,所述有效信号被在所述一系列数据窗口中的特定数据窗口中发送。
8.如权利要求7所述的装置,其中,所述有效信号要被在紧接在其中所述数据要被发送的窗口之前的窗口中断定。
9.如权利要求8所述的装置,其中,数据要被在紧接在其中所述有效信号未被断定的前一窗口之后的窗口中在数据通路上忽略。
10.如权利要求7所述的装置,其中,所述有效信号要被通过电压幅度调制在所述时钟通路上编码。
11.如权利要求7所述的装置,其中,所述流信号被在所述一系列数据窗口中的与所述数据相同的数据窗口中发送。
12.如权利要求1所述的装置,其中,所述时钟包括单端时钟。
13.如权利要求1所述的装置,其中,所述时钟包括差分时钟,并且,所述电压幅度调制包括调制所述差分时钟的共模电压。
14.如权利要求1所述的装置,其中,所述多个通路还包括控制通路,并且至少一个其他控制信号要被在所述控制通路上发送。
15.如权利要求14所述的装置,其中,所述控制通路包括用于数据总线反转(DBI)的通路。
16.一种用于数据通信的装置,所述装置包括:
第一事务层逻辑,用于根据多个通信协议中的第一通信协议来生成第一数据;
第二事务层逻辑,用于根据所述多个通信协议中的不同的第二通信协议来生成第二数据;以及
物理层逻辑,用于:
在包括多个通路的物理链路的一个或多个数据通路上发送所述第一数据,并且所述多个通路包括所述数据通路和用于承载时钟信号的时钟通路;
在所述时钟通路上的时钟信号之上编码第一流信号,以指示所述第一数据是使用所述第一通信协议的,其中,所述第一流信号被通过电压幅度调制在所述时钟通路上编码;
在所述物理链路的一个或多个数据通路上发送所述第二数据;以及
在所述时钟通路上的时钟信号之上编码第二流信号以指示所述第二数据是使用所述第二通信协议的,其中,所述第二流信号被通过电压幅度调制在所述时钟通路上编码。
17.如权利要求16所述的装置,其中,所述第一数据和所述第一流信号被在第一发信号窗口期间发送,并且所述第二数据和所述第二流信号被在第二发信号窗口期间发送。
18.如权利要求17所述的装置,其中,其他信息也被在所述第一发信号窗口期间与所述第一流信号一起在所述时钟通路上发送。
19.如权利要求18所述的装置,其中,所述其他信息包括有效信号,用于指示有效数据要被在所述第二发信号窗口中发送,并且所述有效信号对应于所述第二数据。
20.一种用于数据通信的系统,所述系统包括:
第一组件;以及
第二组件,其通过多协议链路连接到所述第一组件,其中,所述第一组件和所述第二组件中的每一个支持以多个通信协议中的任何一个进行的数据通信,并且所述第二组件包括物理层逻辑,用于:
将所述多协议链路上的数据发送到所述第一组件,其中,多协议链路包括多个通路,所述数据被在所述多协议链路的多个通路中的一个或多个数据通路上发送,并且所述多个通路还包括用于承载时钟信号的时钟通路;以及
发送流信号,所述流信号被在所述多协议链路的时钟通路上的时钟信号之上编码,其中,所述流信号用于标识所述多个通信协议中的特定通信协议适用于所述数据,并且所述流信号被通过电压幅度调制在所述时钟通路上编码,并且其他信息也被与所述流信号一起在所述时钟通路上发送。
21.如权利要求20所述的系统,其中,所述流信号被与所述数据并发地发送。
22.如权利要求20所述的系统,其中,所述数据包括第一数据,所述流信号包括第一流信号,并且所述物理层逻辑还用于:
在所述多协议链路的数据通路中的一个或多个上,将所述多协议链路上的第二数据发送到所述第一组件;以及
在所述时钟通路上的时钟信号之上发送第二流信号,其中,所述第二流信号用于标识所述多个通信协议中的第二通信协议适用于所述第二数据,并且所述第二流信号被通过电压幅度调制在所述时钟通路上编码。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/283,028 US10846258B2 (en) | 2016-09-30 | 2016-09-30 | Voltage modulated control lane |
US15/283,028 | 2016-09-30 | ||
PCT/US2017/049343 WO2018063707A1 (en) | 2016-09-30 | 2017-08-30 | Voltage modulated control lane |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109643297A CN109643297A (zh) | 2019-04-16 |
CN109643297B true CN109643297B (zh) | 2023-09-05 |
Family
ID=61758828
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780053201.XA Active CN109643297B (zh) | 2016-09-30 | 2017-08-30 | 电压调制的控制通路 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10846258B2 (zh) |
CN (1) | CN109643297B (zh) |
DE (1) | DE112017004963T5 (zh) |
WO (1) | WO2018063707A1 (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111713097A (zh) * | 2019-04-22 | 2020-09-25 | 深圳市大疆创新科技有限公司 | 图像数据处理方法、传输方法、传输装置及数据接口转换装置 |
US11971841B2 (en) | 2020-05-21 | 2024-04-30 | Intel Corporation | Link layer-PHY interface adapter |
CN111708724B (zh) * | 2020-05-29 | 2022-02-22 | 苏州浪潮智能科技有限公司 | 一种PCIe板卡的资源分配的方法和设备 |
KR20210149543A (ko) * | 2020-06-02 | 2021-12-09 | 삼성전자주식회사 | 메모리 장치 및 이를 포함하는 메모리 시스템 |
CN114442514B (zh) * | 2020-11-02 | 2024-05-14 | 芯启源(上海)半导体科技有限公司 | 一种基于fpga的usb3.0/3.1控制系统 |
US12216607B2 (en) * | 2020-11-16 | 2025-02-04 | Intel Corporation | Source ordering in device interconnects |
US11656958B2 (en) * | 2021-04-29 | 2023-05-23 | Mellanox Technologies, Ltd. | Redundancy data bus inversion sharing |
US11411560B1 (en) * | 2021-07-30 | 2022-08-09 | Global Unichip Corporation | Electronic system, integrated circuit die and operation method thereof |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1364264A (zh) * | 1999-09-27 | 2002-08-14 | 皇家菲利浦电子有限公司 | 数据通信系统的节点中多链路层到单个物理层的接口 |
CN103119908A (zh) * | 2010-09-24 | 2013-05-22 | 英特尔公司 | 在PCIe接口上实现快速通路互连协议 |
WO2015099719A1 (en) * | 2013-12-26 | 2015-07-02 | Intel Corporation | Multichip package link |
CN104995614A (zh) * | 2012-10-22 | 2015-10-21 | 英特尔公司 | 高性能互连物理层 |
US9425903B1 (en) * | 2013-07-11 | 2016-08-23 | Inphi Corporation | Built-in redundancy scheme for communication system on chip |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7684534B2 (en) | 2005-07-11 | 2010-03-23 | International Business Machines Corporation | Method and apparatus for handling of clock information in serial link ports |
US8351536B2 (en) * | 2008-09-11 | 2013-01-08 | Motorola Mobility Llc | Wireless communication of data symbols |
EP2761479A4 (en) * | 2011-09-30 | 2015-04-15 | Intel Corp | MECHANISM FOR FACILITATING THE CUSTOMIZATION OF MULTIPURPOSE INTERCONNECTING AGENTS ON COMPUTER DEVICES |
US9264270B2 (en) | 2013-06-27 | 2016-02-16 | Intel Corporation | Transition time measurement of PAM4 transmitters |
US20160072651A1 (en) | 2014-09-04 | 2016-03-10 | Luxtera, Inc. | Method and system for a multi-level encoded data path with decoder |
US20160285624A1 (en) * | 2015-03-26 | 2016-09-29 | Intel Corporation | Pseudorandom bit sequences in an interconnect |
US9946676B2 (en) * | 2015-03-26 | 2018-04-17 | Intel Corporation | Multichip package link |
US10152446B2 (en) * | 2016-10-01 | 2018-12-11 | Intel Corporation | Link-physical layer interface adapter |
-
2016
- 2016-09-30 US US15/283,028 patent/US10846258B2/en active Active
-
2017
- 2017-08-30 CN CN201780053201.XA patent/CN109643297B/zh active Active
- 2017-08-30 DE DE112017004963.6T patent/DE112017004963T5/de active Pending
- 2017-08-30 WO PCT/US2017/049343 patent/WO2018063707A1/en active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1364264A (zh) * | 1999-09-27 | 2002-08-14 | 皇家菲利浦电子有限公司 | 数据通信系统的节点中多链路层到单个物理层的接口 |
CN103119908A (zh) * | 2010-09-24 | 2013-05-22 | 英特尔公司 | 在PCIe接口上实现快速通路互连协议 |
CN104995614A (zh) * | 2012-10-22 | 2015-10-21 | 英特尔公司 | 高性能互连物理层 |
US9425903B1 (en) * | 2013-07-11 | 2016-08-23 | Inphi Corporation | Built-in redundancy scheme for communication system on chip |
WO2015099719A1 (en) * | 2013-12-26 | 2015-07-02 | Intel Corporation | Multichip package link |
CN105765544A (zh) * | 2013-12-26 | 2016-07-13 | 英特尔公司 | 多芯片封装链路 |
Non-Patent Citations (1)
Title |
---|
PCI Express端点应用的FPGA实现;唐世民等;《微计算机信息》;20091115(第32期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
DE112017004963T5 (de) | 2019-06-13 |
US20180095925A1 (en) | 2018-04-05 |
US10846258B2 (en) | 2020-11-24 |
WO2018063707A1 (en) | 2018-04-05 |
CN109643297A (zh) | 2019-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109661658B (zh) | 链路物理层接口适配器 | |
US11663154B2 (en) | Virtualized link states of multiple protocol layer package interconnects | |
US10552357B2 (en) | Multichip package link | |
CN109643297B (zh) | 电压调制的控制通路 | |
CN107430569B (zh) | 多芯片封装链路 | |
JP6251806B2 (ja) | 装置、方法、プログラム、システム、およびコンピュータ可読ストレージ媒体 | |
US9558145B2 (en) | Method, apparatus and system for measuring latency in a physical unit of a circuit | |
CN107408032B (zh) | 互连中的伪随机比特序列 | |
EP3087403A1 (en) | Interconnect retimer enhancements | |
US12117960B2 (en) | Approximate data bus inversion technique for latency sensitive applications | |
JP2019192287A (ja) | 装置、方法、プログラム、システム、およびコンピュータ可読ストレージ媒体 | |
JP2018049658A (ja) | 装置、方法、およびシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |