CN1953461A - 编码数据包头以启用PCIe链路高带宽效率的系统和方法 - Google Patents

编码数据包头以启用PCIe链路高带宽效率的系统和方法 Download PDF

Info

Publication number
CN1953461A
CN1953461A CNA2006101528138A CN200610152813A CN1953461A CN 1953461 A CN1953461 A CN 1953461A CN A2006101528138 A CNA2006101528138 A CN A2006101528138A CN 200610152813 A CN200610152813 A CN 200610152813A CN 1953461 A CN1953461 A CN 1953461A
Authority
CN
China
Prior art keywords
packet
memory
pcie
head part
computer system
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA2006101528138A
Other languages
English (en)
Other versions
CN1953461B (zh
Inventor
威廉·P·朱
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nvidia Corp
Original Assignee
Nvidia Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nvidia Corp filed Critical Nvidia Corp
Publication of CN1953461A publication Critical patent/CN1953461A/zh
Application granted granted Critical
Publication of CN1953461B publication Critical patent/CN1953461B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种采用外围部件互连高速(PCIe)链路的计算机系统包括产生一PCIe数据包的装置,其中所述PCIe数据包具有小于一常规PCI数据包头部分的一头部分。所述装置可为例如一图形处理器的一端点装置和例如一根联合体的一芯片组。所述经减小尺寸的头改进所述计算机系统的总线吞吐率且减少所述计算机系统的功率需求。

Description

编码数据包头以启用PCIe链路高带宽效率的系统和方法
技术领域
本发明大体上涉及计算机系统的通信。更明确地说,本发明涉及一种用于一采用外围部件互连高速(PCIe)链路计算机系统中通信的方法和系统。
背景技术
外围部件互连高速(PCIe)是用于一计算机内两个或两个以上装置之间的通信的通用输入/输出(I/O)互连。所述装置的实例可包括一图形处理器和一芯片组。采用PCIe的计算机系统通过发送数据包来通信。数据包形成于三个离散逻辑层中,所述三个离散逻辑层包括处理层、数据链路层和物理层。每一数据包具有一对应于这些层和一数据有效载荷部分的头。头含有可包括数据包格式、类型和属性的信息,地址/路由信息,编码信息和数据保护。数据有效载荷部分含有装置所需的数据。
在常规系统中,在由端点装置发出的存储器读取请求完成时,由包含根联合体的芯片组产生读取完成数据包。所述读取完成数据包包括常规读取完成头部分和数据有效载荷部分。常规读取完成头部分包括长度为两个字节的物理层头、长度为六个字节的数据链路层头和长度为十二个字节的处理层头。
此外,在常规系统中,存储器写入请求数据包由端点装置在发出存储器写入请求到根联合体时产生。存储器写入请求数据包包括常规存储器写入请求头部分和数据有效载荷部分。所述常规存储器写入请求头部分包括长度为两个字节的物理层头、长度为六个字节的数据链路层头和长度为十二个字节的处理层头。
这些数据包大量消耗采用PCIe链路的计算机系统的总线带宽且限制所述系统的总线吞吐率。因此存在对一种可增加采用PCIe链路的计算机系统的总线吞吐率的方法和系统的需要。
发明内容
本发明的一方面是提供一种用于改进采用PCIe链路的计算机系统的总线吞吐率的方法和系统。
为了达成上述方面,提供用于采用外围部件互连高速(PCIe)链路的计算机系统中通信的方法和系统。
本发明的一实施例中,提供一种处理存储器读取请求的方法。所述方法包括在PCIe链路上接收所述存储器读取请求且根据所述存储器读取请求从一存储器位置读取数据。所述方法进一步包括产生一读取完成数据包,其包括一头部分和一数据有效载荷部分,其中所述头部分长度小于20字节。接着在PCIe链路上传输所述读取完成数据包。
在本发明的另一实施例中,提供一种在PCIe链路上发出一存储器写入请求的方法。所述方法包括产生一存储器写入请求数据包,其包括一头部分和一数据有效载荷部分。所述头部分长度小于20字节。接着在PCIe链路上传输所述存储器写入请求。
附图说明
随附图式(其中遍布不同的图,相似参考数字指相同或功能上相似的元件)和下文的具体实施方式一起并入说明书且形成说明书的一部分,用以根据本发明进一步说明各实施例且解释各原则和优势。
图1是一显示一环境(其为例示性的,本发明的各实施例可在其中起作用)的方框图。
图2是一用于处理计算机系统中的存储器读取请求的方法步骤的流程图。
图3是根据本发明的一实施例的用于发出存储器读取请求的方法步骤的流程图。
图4A显示现有技术读取完成数据包的一头部分。
图4B显示根据本发明的一例示性实施例产生的读取完成数据包的一头部分。
图5是一用于在计算机系统中发出一存储器写入请求的方法步骤的流程图。
图6A显示现有技术存储器写入请求数据包的头部分。
图6B显示根据本发明的一例示性实施例产生的存储器写入请求数据包的一头部分。
图7是一显示根据本发明的一实施例的计算机系统的方框图。
参考数字
100                   环境
102                   芯片组
104,106              端点装置
108                   中央处理单元(CPU)
110                   存储器
402,404,602,604    头部分
700                   计算机系统
702    端点装置
704    芯片组
706    跟踪表模块
具体实施方式
本发明的各实施例提供用于采用外围部件互连高速(PCIe)链路的计算机系统中的通信的方法和系统。PCIe是一用于一计算机内的两个或两个以上装置之间的通信的通用输入/输出(I/O)互连。所述装置可包括一个或一个以上端点装置和一芯片组。
图1是显示环境100(其为例示性的,例如计算机系统,本发明的各实施例可在其中起作用)的方框图。环境100包括一芯片组102、一端点装置104和一端点装置106。所属领域的技术人员将易于了解,端点装置的数量不以任何形式限制本发明。
芯片组102是根联合体,例如芯片组,其包含与端点装置104和端点装置106中的至少一个通信的普通地熟知为北桥和南桥的芯片、一中央处理单元(CPU)108和一用于存储可由不同单元所需的信息的存储器110。芯片组102经PCIe链路连接到端点装置104和端点装置106。芯片组102、端点装置104和端点装置106中的每一个具备一经特定配置的PCIe接口,经所述接口形成PCIe链路连接。芯片组102也可通过PCIe链路经连接到芯片组102、端点装置104和端点装置106中的每一个的交换器与端点装置104和端点装置106通信。
端点装置104和端点装置106可包含I/O装置。这些端点装置的实例可包括(但不限于)图形处理器、以太网卡和声卡。通过在将端点装置104、106连接到芯片组102的PCIe链路上发送复数个PCIe数据包而执行通信。
PCIe数据包大致形成于离散逻辑层中,例如处理层、数据链路层和物理层。每一PCIe数据包含有一对应于这些离散逻辑层中的一个或一个以上的头,即处理层头(TLH)、数据链路层头(DLLH)和物理层头(PLH)。包含于这些头中的数据包括(但不限于)PCIe数据包的格式、类型、属性,地址/路由信息,编码信息,数据保护和数据有效载荷的长度。除这些头以外,每一PCIe数据包包括一数据有效载荷。所述数据有效载荷含有待由接收PCIe数据包的逻辑装置使用的数据。在下文中解释根据本发明的各实施例用于PCIe系统中通信的用于产PCIe数据包的方法。
图2是根据本发明的一实施例处理计算机系统中存储器读取请求的方法步骤的流程图。所述计算机系统包含一第一装置和一第二装置,其通过PCIe链路相互耦合。所述第一装置可为端点装置104、106中的一个且所述第二装置可为芯片组102。第一装置发出存储器读取请求。本发明的一实施例中,第一装置在由存储器-读取标签索引的跟踪表中存储至少一个必要参数。结合图3解释所述存储至少一个必要参数的方法。
在步骤202中,由第二装置接收存储器读取请求。在步骤204,根据存储器读取请求由第二装置从存储器位置读取数据。存储器位置的实例可包括(但不限于)随机存取存储器(RAM)、只读存储器(ROM)和动态随机存取存储器(DRAM)。在步骤206,在完成存储器读取请求时产生读取完成数据包。其后,在步骤208,将读取完成数据包经PCIe链路传输到第一装置。
读取完成数据包包括数据有效载荷部分和头部分。数据有效载荷部分包括在存储器读取请求中由第一装置所请求的信息。头部分长度小于20字节。在本发明的一例示性实施例中,头部分包括一长度为两个字节的PLH和一长度为六个字节的DLLH。结果,在本发明的此例示性实施例中,读取完成数据包头部分的长度为八个字节。
本发明的一实施例中,在读取完成数据包头部分上传输处理层数据包(TLP)序列号和完成标签。TLP序列号是PCIe数据包的识别号。完成标签参考跟踪表,其含有与存储器读取请求关联的至少一个必要参数。
图3是根据本发明的一实施例的用于发出存储器读取请求的方法步骤流程图。在步骤302,第一装置在跟踪表中存储与存储器读取请求关联的至少一个必要参数。至少一个必要参数的实例可包括通信量级别(TC)字段、灵活排序(RO)字段、非监控(NS)字段、字节计数字段和较低地址字段。TC字段将PCI处理序列分为不同级别。每一级别使PCI处理序列与其所需的服务类型关联。RO字段和NO字段为帮助处理PCIe链路上的通信量的属性。这些字段中的值必须随存储器读取请求被执行和读取完成被报告而保持相同。字节计数字段传送存在于数据包中的数据字节数。较低地址字段为读取位置的最低七位。在存储器读取请求数据包的头部分中指定完整的读取地址。在步骤304,跟踪表以与由第一装置发出的存储器读取请求一起传输的存储器-读取标签为索引。存储器-读取标签为8位的号码。在本文说明的本发明的实施例中,存储器-读取标签具有小于16的值。在步骤306,由第一装置将PCIe数据包传输到第二装置以发出存储器读取请求。
图4A显示现有技术读取完成数据包的头部分402。头部分402包括一长度为两个字节的PLH(未显示于图4A)、一长度为六个字节的DLLH(其包括图4A显示的两个字节和图4A中未显示的链路循环冗余检查(LCRC)码的四个字节),和长度为十二字节的TLH。头部分402的DLLH包括第零字节和第一字节。头部分402的TLH包括从第二字节到第13字节的字节。TLP序列号在与第一字节的八位连接的头部分402的第零字节的前四位上传输。第零字节的最后四位作为保留位传输。此外,第一组参数在头部分402的TLH上传输。第一组参数包括格式字段、类型字段、存储器-标签字段、TC字段、处理描述(TD)字段、端点(EP)字段、RO字段、NS字段、完成者ID、请求者ID、完成状态、较低地址字段、长度字段、BC字段和字节计数字段。
格式字段描述请求格式。类型字段描述请求类型。另外,头部分402的存储器-标签字段长度为八位。TD字段描述PCIe处理序列的特性。EP字段用于错误转送。长度字段含有对应于响应读取请求而读取的字节总数的值。完成者ID为完成者的用于唯一识别完成者的总线号、装置号和功能号的组合。请求者ID为请求者的用于唯一识别请求者的总线号、装置号和功能号的组合。完成状态指示所请求的读取是否成功。BC字段通常为零。
除第一组参数外,头部分402的TLH的复数个位作为保留位传输。举例来说,头部分402的TLH的第二字节的第七位、第三字节的第零位到第三位和第三字节的第七位、第四字节的第二位和第三位、第13字节的第七位作为保留位传输。
图4B显示根据本发明的例示性实施例产生的读取完成数据包的头部分404。头部分404包括一长度为两个字节的PLH(未显示于图4B中)和一长度为六个字节的DLLH(其包括图4B显示的两个字节和图4B中未显示的LCRC码的四个字节)。TLP序列号和完成标签在头部分404的DLLH上传输。TLP序列号在与头部分404的DLLH的第零字节的前四位连接的第一字节的八位上传输。完成标签长度为四位且在头部分404的DLLH的第零字节的最后四位上传输。完成标签包括与存储器读取请求一起传输的存储器-读取标签的四个最不重要位。在本文说明的本发明的实施例中,存储器-读取标签的四个最不重要位假设为零且不包括在头部分404中。
第一装置接收具有头部分404的读取完成数据包且以以下方式提取头信息。首先,读取完成数据包的格式和类型不包括于头部分404中而读取完成数据包仅具有一类型,即读取完成,且因此第一装置的PCIe接口假设所接收到的PCIe数据包具有读取完成类型。存在其他头信息,其被假设具有某些值且因此不包括于头部分404中。其包括:TD字段,其被假设为零;EP字段,其被假设为零;完成状态,其被假设为成功;BC字段,其被假设为零;和存储器-标签字段的四个最不重要位,其被假设为零。另外,不使用完成者ID和请求者ID,且这些字段不包括于头部分404中。长度字段不包括于头部分404中,因为数据包长度从所接收的数据包计算。使用完成标签从跟踪表恢复剩余的头信息,包括TC字段、RO字段、NS字段、字节计数字段和较低地址字段。
图5是根据本发明的一实施例计算机系统中发出存储器写入请求的方法步骤的流程图。计算机系统包括一第一装置和一第二装置,其通过一PCIe链路相互耦合。第一装置可具有端点装置104、106中的一个且第二装置可为芯片组102。由第一装置发出存储器写入请求。在步骤502,产生存储器写入请求数据包。存储器写入请求数据包包括一数据有效载荷部分和一小于20字节的头部分。数据有效载荷部分含有第二装置所需的用于处理存储器写入请求的信息。在本发明的一例示性实施例中,头部分包括一长度为两个字节的PLH、一长度为六个字节的DLLH和一长度为四个字节的TLH。结果,在此例示性实施例中,头部分长度为12字节。
另外,在步骤504,存储器写入请求数据包在PCIe链路上传输到第二装置。TLP序列号和一预定组的参数在存储器写入请求数据包的头部分上传输。
预定组的参数包括格式指示符、尺寸指示符、TC字段、RO字段和NS字段中的一个或一个以上。此外,预定组参数包括一存储器写入地址。
图6A显示现有技术存储器写入请求数据包的一头部分602。头部分602包括一长度为两个字节的PLH(未显示于图6A中)、一长度为六个字节的DLLH(其包括显示于图6A中的两个字节和未显示于图6A中的LCRC码的四个字节),和一长度为十二个字节的TLH。头部分602的DLLH包括第零字节和第一字节,且头部分602的TLH包括从第二字节到第13字节的字节。TLP序列号在与第零字节的前四位连接的第一字节的八位上传输。第零字节的最后四位作为保留位传输。其他参数包括格式字段、类型字段、存储器-写入标签字段、3位TC字段、TD字段、BP字段、RO字段、NS字段、长度字段、请求者ID字段、最后的双字字节使能(最后的DW BE)字段和第一DW BE字段。最后的DW BE字段含有用于服务请求的最后DW的字节使能。第一DW BE字段含有用于服务请求的第一DW的字节使能。另外,地址位在第十字节、第十一字节、第十二字节和第十三字节的最后六位上传输。第二字节的第七位、第三字节的第零位到第三位和第三字节的第七位、第四字节的第二位和第三位和第十三字节的第零位和第一位作为保留位传输。
图6B显示根据本发明的一例示性实施例产生的存储器写入请求数据包的头部分604。头部分604包括一长度为两个字节的PLH(未显示于图6B中)、一长度为六个字节的DLLH(其包括显示于图6B中的两个字节和未显示于图6B中的LCRC码的四个字节),和一长度为四个字节的TLH。DLLH包括第零字节和第一字节。TLH包括第二字节、第三字节、第四字节和第五字节。
TLP序列号和预定组参数在头部分604上传输。TLP序列号在与第零字节的四位连接的第一字节上传输。预定组参数包括格式指示符,尺寸指示符,TC字段的第一位和第二位、RO字段和NS字段。格式指示符在DLLH的第零字节的第七位上传输,且其含有对应于存储器写入请求的值之一。在DLLH的第零字节的第六位上传输的尺寸指示符含有对应于存储器写入请求数据包的64位尺寸的值之一。尺寸指示符的一零值对应于存储器写入请求数据包的32位尺寸。另外,TC字段的第一位和第二位在第零字节的第五和第四位上传输。除这些参数以外,地址位在与第五字节的五位连接的第二、第三、第四字节上传输。另外,RO字段在第一位上传输,且NS字段在第五字节的第零位上传输。
第二装置接收存储器以以下方式写入请求并提取头信息。格式和类型编码为1和1以指示一64位存储器写入请求,且编码为1和0以指示一32位存储器写入请求。存在其他头信息,其被假设为具有某些值且因此不包括于头部分604中。其包括:TC字段的第三位,其被假设为零;TD字段,其被假设为零;EP字段,其被假设为零;和最后DW BE字段和第一DW BE字段中的每一个,其被假设为具有值之一。另外,不使用请求者ID和存储器-写入标签且其不包括于头部分604中。
图7是显示根据本发明的一实施例的计算机系统700的方框图。计算机系统700包括一装置,其具有一PCIe接口,其经编程以产生一具有一小于20字节的头部分的PCIe数据包。所述装置可为一端点装置702和一芯片组704中的一个。
本发明的一实施例中,PCIe数据包可为一由与存储器读取请求相关的端点装置702产生的存储器写入请求数据包。一预定组参数和一TLP序列号在由芯片组704接收的存储器写入请求数据包上传输。接着由芯片组704的PCIe接口提取预定组参数。在本发明的另一实施例中,PCIe数据包可为当由端点装置702发出的存储器读取请求已完成时由芯片组704产生的读取完成数据包。完成标签和TLP序列号在由端点装置702接收的读取完成数据包上传输。头信息由的端点装置702的PCIe接口提取。
端点装置702可包括一跟踪表模块706,其在跟踪表中存储与存储器读取请求关联的至少一个必要参数。使用跟踪表由端点装置702在其响应存储器读取请求从芯片组704接收到读取完成数据包时恢复所述至少一个必要参数。
本发明的各实施例提供一种用于改进PCIe链路的总线吞吐率的方法和系统。举例来说,对于具有32字节的有效载荷的完成数据包,总线吞吐率从61%改进到80%。同样,对于具有64字节的有效载荷的完成数据包,总线吞吐率从76%改进到89%。在另一实例中,对于具有32字节的有效载荷的已标出的写入数据包,总线吞吐率从61%改进到73%。同样,对于具有64字节的有效载荷的已标出的写入数据包,总线吞吐率从76%改进到84%。
另外,实施本发明各方面的计算机系统较快地转换到低功率状态且停留在低功率状态较长时间。这对省电作出贡献,其在移动式应用中非常有价值。
尽管已结合本发明的特定实施例对其进行了描述,但所属领域的技术人员将易于了解额外的优势和修改。因此本发明在其广泛方面不限于所展示和描述的特定细节、代表性设备和说明性实例。按照上文描述,所属领域的技术人员将易于了解各种改变、修改和变化。因此,应理解本发明不受上文描述的限制,而包含根据所附的权利要求书的精神和范畴的所有这些改变、修改和变化。

Claims (20)

1.在一具有通过一外围部件互连高速(PCIe)链路相互耦合的一第一装置和一第二装置的计算机系统中,一种通过所述第二装置处理一存储器读取请求的方法,所述方法包含以下步骤:
a.接收由所述第一装置在所述PCIe链路上发出的所述存储器读取请求;
b.根据所述存储器读取请求从一存储器位置读取数据;
c.产生一读取完成数据包,其包括一头部分和一数据有效载荷部分,其中所述头部分长度小于20字节;和
d.在所述PCIe链路上将所述读取完成数据包传输到所述第一装置。
2.根据权利要求1所述的方法,其中所述第一装置为一端点装置,且所述第二装置为一芯片组。
3.根据权利要求1所述的方法,其中所述头部分长度为八字节。
4.根据权利要求1所述的方法,其中在所述读取完成数据包上传输一处理层数据包(TLP)序列号和一完成标签。
5.根据权利要求4所述的方法,其中使用所述完成标签来恢复与所述存储器读取请求关联的至少一个必要参数。
6.根据权利要求5所述的方法,其中将所述至少一个必要参数存储于一跟踪表中。
7.根据权利要求6所述的方法,其中使所述跟踪表以一存储器-读取标签为索引。
8.在一具有通过一外围部件互连高速(PCIe)链路相互耦合的一第一装置和一第二装置的计算机系统中,一种通过所述第一装置发出一存储器写入请求的方法,所述方法包含以下步骤:
a.产生一存储器写入请求数据包,其包括一头部分和一数据有效载荷部分,其中所述头部分长度小于20字节;和
b.在所述PCIe链路上将所述存储器写入请求数据包传输到所述第二装置。
9.根据权利要求8所述的方法,其中所述第一装置为一端点装置,且所述第二装置为一芯片组。
10.根据权利要求8所述的方法,其中所述头部分长度为12字节。
11.根据权利要求8所述的方法,其中在所述存储器写入请求数据包上传输一处理层数据包(TLP)序列号和一预定组参数。
12.根据权利要求11所述的方法,其中所述预定组参数包括一存储器写入地址。
13.根据权利要求11所述的方法,其中所述预定组参数包含下列参数中的至少一者:
a.一格式指示符,所述格式指示符指示数据包的一格式和类型;
b.一尺寸指示符,所述尺寸指示符指示所述数据包的尺寸;
c.一通信量级别(TC)字段,所述TC字段将PCI处理序列分为不同级别;和
d.一灵活排序(RO)字段和一非监控(NS)字段中的至少一者。
14 一种计算机系统,其包含一装置,所述装置经编程以产生一外围部件互连高速(PCIe)数据包,所述PCIe数据包包括一头部分,所述头部分长度小于20字节。
15.根据权利要求14所述的计算机系统,其中所述装置为一端点装置。
16.根据权利要求15所述的计算机系统,其中所述PCIe数据包为一存储器写入请求数据包,且所述存储器写入请求数据包是由所述端点装置结合一存储器写入请求而产生,且其中一处理层数据包(TLP)序列号和一预定组参数在所述存储器写入请求数据包上传输。
17.根据权利要求15所述的计算机系统,其中所述端点装置包含一跟踪表模块,所述跟踪表模块在一跟踪表中存储与一存储器读取请求关联的至少一个必要参数,所述端点装置在其响应所述存储器读取请求而接收到一读取完成数据包时恢复所述至少一个必要参数。
18.根据权利要求14所述的计算机系统,其中所述装置是一芯片组。
19.根据权利要求18所述的计算机系统,其中所述PCIe数据包是一读取完成数据包,且所述读取完成数据包由所述芯片组结合一存储器读取请求的一完成而产生,且其中一处理层数据包(TLP)序列号和一完成标签在所述读取完成数据包上传输。
20.根据权利要求14所述的计算机系统,其中所述装置为一图形处理器。
CN2006101528138A 2005-10-19 2006-10-18 编码数据包头以启用PCIe链路高带宽效率的系统和方法 Expired - Fee Related CN1953461B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/253,870 US8516165B2 (en) 2005-10-19 2005-10-19 System and method for encoding packet header to enable higher bandwidth efficiency across bus links
US11/253,870 2005-10-19

Publications (2)

Publication Number Publication Date
CN1953461A true CN1953461A (zh) 2007-04-25
CN1953461B CN1953461B (zh) 2011-01-12

Family

ID=38059574

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2006101528138A Expired - Fee Related CN1953461B (zh) 2005-10-19 2006-10-18 编码数据包头以启用PCIe链路高带宽效率的系统和方法

Country Status (3)

Country Link
US (1) US8516165B2 (zh)
CN (1) CN1953461B (zh)
TW (1) TWI339798B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102057362A (zh) * 2008-07-11 2011-05-11 Lsi股份有限公司 用pci高速标记字段传递信息
CN101087256B (zh) * 2007-07-13 2011-08-17 杭州华三通信技术有限公司 报文传输方法及系统
CN103049240A (zh) * 2011-10-13 2013-04-17 北京同步科技有限公司 Pci-e设备及其接收数据重排序方法
CN105721338A (zh) * 2016-01-29 2016-06-29 浪潮(北京)电子信息产业有限公司 一种接收数据的处理方法及装置
CN109471833A (zh) * 2017-09-08 2019-03-15 三星电子株式会社 用于最大化PCIe对等连接的带宽的系统和方法
WO2021147048A1 (zh) * 2020-01-22 2021-07-29 华为技术有限公司 一种基于PCIe的数据传输方法、装置及系统
CN113498601A (zh) * 2020-01-22 2021-10-12 华为技术有限公司 一种基于PCIe的数据传输方法及装置
CN113498600A (zh) * 2020-01-22 2021-10-12 华为技术有限公司 一种基于PCIe的数据传输方法及装置

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9836424B2 (en) * 2001-08-24 2017-12-05 Intel Corporation General input/output architecture, protocol and related methods to implement flow control
WO2003019393A1 (en) 2001-08-24 2003-03-06 Intel Corporation A general intput/output architecture, protocol and related methods to implement flow control
JP2005242806A (ja) * 2004-02-27 2005-09-08 Renesas Technology Corp データ処理装置
US8782654B2 (en) 2004-03-13 2014-07-15 Adaptive Computing Enterprises, Inc. Co-allocating a reservation spanning different compute resources types
US7490325B2 (en) 2004-03-13 2009-02-10 Cluster Resources, Inc. System and method for providing intelligent pre-staging of data in a compute environment
US20070266388A1 (en) 2004-06-18 2007-11-15 Cluster Resources, Inc. System and method for providing advanced reservations in a compute environment
US8176490B1 (en) 2004-08-20 2012-05-08 Adaptive Computing Enterprises, Inc. System and method of interfacing a workload manager and scheduler with an identity manager
US8271980B2 (en) 2004-11-08 2012-09-18 Adaptive Computing Enterprises, Inc. System and method of providing system jobs within a compute environment
US8863143B2 (en) 2006-03-16 2014-10-14 Adaptive Computing Enterprises, Inc. System and method for managing a hybrid compute environment
US9231886B2 (en) 2005-03-16 2016-01-05 Adaptive Computing Enterprises, Inc. Simple integration of an on-demand compute environment
EP1866767B1 (en) 2005-03-16 2018-04-18 III Holdings 12, LLC Automatic workload transfer to an on-demand center
US7765357B2 (en) * 2005-03-24 2010-07-27 Fujitsu Limited PCI-express communications system
JP4410190B2 (ja) * 2005-03-24 2010-02-03 富士通株式会社 PCI−Express通信システム
CA2603577A1 (en) 2005-04-07 2006-10-12 Cluster Resources, Inc. On-demand access to compute resources
US7916750B2 (en) * 2005-12-28 2011-03-29 Intel Corporation Transaction layer packet compression
US8139574B2 (en) * 2006-08-18 2012-03-20 George Madathilparambil George Creation and transmission of part of protocol information corresponding to network packets or datalink frames separately
US8041773B2 (en) 2007-09-24 2011-10-18 The Research Foundation Of State University Of New York Automatic clustering for self-organizing grids
US8108584B2 (en) * 2008-10-15 2012-01-31 Intel Corporation Use of completer knowledge of memory region ordering requirements to modify transaction attributes
US20100306442A1 (en) * 2009-06-02 2010-12-02 International Business Machines Corporation Detecting lost and out of order posted write packets in a peripheral component interconnect (pci) express network
US9054990B2 (en) 2009-10-30 2015-06-09 Iii Holdings 2, Llc System and method for data center security enhancements leveraging server SOCs or server fabrics
US9077654B2 (en) 2009-10-30 2015-07-07 Iii Holdings 2, Llc System and method for data center security enhancements leveraging managed server SOCs
US8599863B2 (en) 2009-10-30 2013-12-03 Calxeda, Inc. System and method for using a multi-protocol fabric module across a distributed server interconnect fabric
US9465771B2 (en) 2009-09-24 2016-10-11 Iii Holdings 2, Llc Server on a chip and node cards comprising one or more of same
US20130107444A1 (en) 2011-10-28 2013-05-02 Calxeda, Inc. System and method for flexible storage and networking provisioning in large scalable processor installations
US20110103391A1 (en) 2009-10-30 2011-05-05 Smooth-Stone, Inc. C/O Barry Evans System and method for high-performance, low-power data center interconnect fabric
US9876735B2 (en) * 2009-10-30 2018-01-23 Iii Holdings 2, Llc Performance and power optimized computer system architectures and methods leveraging power optimized tree fabric interconnect
US9648102B1 (en) 2012-12-27 2017-05-09 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
US9311269B2 (en) 2009-10-30 2016-04-12 Iii Holdings 2, Llc Network proxy for high-performance, low-power data center interconnect fabric
US10877695B2 (en) 2009-10-30 2020-12-29 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
US11720290B2 (en) 2009-10-30 2023-08-08 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
US9680770B2 (en) 2009-10-30 2017-06-13 Iii Holdings 2, Llc System and method for using a multi-protocol fabric module across a distributed server interconnect fabric
US8375156B2 (en) * 2010-11-24 2013-02-12 Dialogic Corporation Intelligent PCI-express transaction tagging
CN102622044B (zh) * 2011-01-28 2014-04-02 微盟电子(昆山)有限公司 主机板及其pcie端口动态配置方法
US9432298B1 (en) 2011-12-09 2016-08-30 P4tents1, LLC System, method, and computer program product for improving memory systems
US9092594B2 (en) 2011-10-31 2015-07-28 Iii Holdings 2, Llc Node card management in a modular and large scalable server system
US20130173834A1 (en) * 2011-12-30 2013-07-04 Advanced Micro Devices, Inc. Methods and apparatus for injecting pci express traffic into host cache memory using a bit mask in the transaction layer steering tag
US8943255B2 (en) 2012-05-29 2015-01-27 Lsi Corporation Methods and structure for accounting for connection resets between peripheral component interconnect express bridges and host devices
US20170269959A1 (en) * 2016-03-15 2017-09-21 Intel Corporation Method, apparatus and system to send transactions without tracking
JP2019164486A (ja) * 2018-03-19 2019-09-26 東芝メモリ株式会社 情報処理システム、情報処理方法及びメモリシステム
US10866917B2 (en) * 2018-12-03 2020-12-15 Ati Technologies Ulc Inter device data exchange via external bus by utilizing communication port
CN111954265B (zh) * 2020-08-17 2023-12-19 Oppo广东移动通信有限公司 一种生成包头的方法及终端、存储介质

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6032197A (en) * 1997-09-25 2000-02-29 Microsoft Corporation Data packet header compression for unidirectional transmission
US6574238B1 (en) * 1998-08-26 2003-06-03 Intel Corporation Inter-switch link header modification
US6480489B1 (en) * 1999-03-01 2002-11-12 Sun Microsystems, Inc. Method and apparatus for data re-assembly with a high performance network interface
US6330630B1 (en) * 1999-03-12 2001-12-11 Intel Corporation Computer system having improved data transfer across a bus bridge
US6970450B1 (en) * 1999-10-29 2005-11-29 Array Telecom Corporation System, method and computer program product for point-to-point bandwidth conservation in an IP network
CN1347062A (zh) * 2001-11-26 2002-05-01 北方交通大学 千兆ip网卡
CN1426203A (zh) * 2001-12-11 2003-06-25 深圳市中兴通讯股份有限公司上海第二研究所 数据包在不同总线间转发的装置及方法
US7184399B2 (en) * 2001-12-28 2007-02-27 Intel Corporation Method for handling completion packets with a non-successful completion status
US20050002265A1 (en) * 2003-07-01 2005-01-06 Broadcom Corporation Header compression
US7210000B2 (en) * 2004-04-27 2007-04-24 Intel Corporation Transmitting peer-to-peer transactions through a coherent interface
US7246191B2 (en) * 2005-03-31 2007-07-17 Intel Corporation Method and apparatus for memory interface
US7536489B2 (en) * 2005-08-30 2009-05-19 Ricoh Company Limited Information processing system for determining payload size based on packet-to-payload size ratio

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101087256B (zh) * 2007-07-13 2011-08-17 杭州华三通信技术有限公司 报文传输方法及系统
CN102057362A (zh) * 2008-07-11 2011-05-11 Lsi股份有限公司 用pci高速标记字段传递信息
CN103049240A (zh) * 2011-10-13 2013-04-17 北京同步科技有限公司 Pci-e设备及其接收数据重排序方法
CN103049240B (zh) * 2011-10-13 2016-03-02 北京同步科技有限公司 Pci-e设备及其接收数据重排序方法
CN105721338A (zh) * 2016-01-29 2016-06-29 浪潮(北京)电子信息产业有限公司 一种接收数据的处理方法及装置
CN105721338B (zh) * 2016-01-29 2019-08-02 浪潮(北京)电子信息产业有限公司 一种接收数据的处理方法及装置
CN109471833A (zh) * 2017-09-08 2019-03-15 三星电子株式会社 用于最大化PCIe对等连接的带宽的系统和方法
WO2021147048A1 (zh) * 2020-01-22 2021-07-29 华为技术有限公司 一种基于PCIe的数据传输方法、装置及系统
CN113498601A (zh) * 2020-01-22 2021-10-12 华为技术有限公司 一种基于PCIe的数据传输方法及装置
CN113498600A (zh) * 2020-01-22 2021-10-12 华为技术有限公司 一种基于PCIe的数据传输方法及装置

Also Published As

Publication number Publication date
CN1953461B (zh) 2011-01-12
TW200732921A (en) 2007-09-01
US20070130397A1 (en) 2007-06-07
TWI339798B (en) 2011-04-01
US8516165B2 (en) 2013-08-20

Similar Documents

Publication Publication Date Title
CN1953461B (zh) 编码数据包头以启用PCIe链路高带宽效率的系统和方法
DE112010001824B4 (de) Paketierte Schnittstelle zur Kopplung von Agenten
CN102984123A (zh) 使用多个消息组的计算机系统中的代理之间的通信消息请求事务类型
CN101501660B (zh) 因特网连接交换机和因特网连接系统
CN103490852B (zh) 用于处理与点到点数据链路有关的数据的方法和装置
US20070147426A1 (en) PCI-Express™ transaction layer packet compression
CN101901205B (zh) 在PCIExpress上启用基于ID的流的方法和装置
CN205263808U (zh) Spi从设备及spi通信系统
CN103427846B (zh) 动态可重构高速串行总线中错误控制方法
CN102866971A (zh) 传输数据的装置、系统及方法
WO2003058469A1 (en) Communicating transaction types between agents in a computer system using packet headers including an extended type/extended length field
CN105243044A (zh) 基于串口的管理系统及管理方法
US8799550B2 (en) System and method for increased efficiency PCI express transaction
CN117556754B (zh) PCIe交换机芯片硅前仿真系统
CN1324499C (zh) 处理不期望的完成分组和具有非成功完成状态的完成分组的方法
CN113168388A (zh) 总线上的存储器请求链接
CN106549845A (zh) 一种基于ntb硬件的通信方法及系统
JP6053692B2 (ja) データ転送装置、データ転送方法およびチップ間通信システム
US20230066736A1 (en) On-demand packetization for a chip-to-chip interface
JPH06187267A (ja) コンピュータバスと高速環状ネットワークとの間のデータ伝送システム
CN102523265A (zh) 一种过程数据动态分配mvb控制器和处理数据方法
CN102035618B (zh) 一种数据传输的方法、装置及系统
CN105739919A (zh) 资料存取系统及方法
CN102981988A (zh) 数据传送设备和数据传送方法
US9268725B2 (en) Data transferring apparatus and data transferring method

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110112