CN101727413A - 使用完成者对存储器区域排序要求的知识来修改事务属性 - Google Patents
使用完成者对存储器区域排序要求的知识来修改事务属性 Download PDFInfo
- Publication number
- CN101727413A CN101727413A CN200910208029A CN200910208029A CN101727413A CN 101727413 A CN101727413 A CN 101727413A CN 200910208029 A CN200910208029 A CN 200910208029A CN 200910208029 A CN200910208029 A CN 200910208029A CN 101727413 A CN101727413 A CN 101727413A
- Authority
- CN
- China
- Prior art keywords
- ordering
- finish
- endpoint device
- read
- pending
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 230000015654 memory Effects 0.000 title claims description 21
- 238000000034 method Methods 0.000 claims abstract description 16
- 230000002040 relaxant effect Effects 0.000 claims abstract description 4
- 230000015572 biosynthetic process Effects 0.000 claims description 12
- 238000003786 synthesis reaction Methods 0.000 claims description 12
- 230000007246 mechanism Effects 0.000 claims description 10
- 230000005540 biological transmission Effects 0.000 claims 4
- 230000006399 behavior Effects 0.000 description 4
- 238000011144 upstream manufacturing Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- GOLXNESZZPUPJE-UHFFFAOYSA-N spiromesifen Chemical compound CC1=CC(C)=CC(C)=C1C(C(O1)=O)=C(OC(=O)CC(C)(C)C)C11CCCC1 GOLXNESZZPUPJE-UHFFFAOYSA-N 0.000 description 2
- 238000007599 discharging Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011369 optimal treatment Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000011282 treatment Methods 0.000 description 1
Images
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/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/161—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
- G06F13/1626—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement by reordering requests
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Systems (AREA)
- Multi Processors (AREA)
- Memory System (AREA)
- Bus Control (AREA)
- Power Sources (AREA)
Abstract
一种通过设置读取完成中的排序属性来放宽读取完成的排序的方法和系统。放宽的排序属性允许读取完成绕开待决写入。
Description
技术领域
本发明的实施例一般涉及事务排序,尤其涉及允许修改严格排序的系统和方法。
背景技术
外围组件互连(PCI)是于1992年开发的第二代并行总线架构,其作为行业标准架构(ISA)总线的替代。在PCI中,所有设备共享相同的双向、32位(或64位)并行信号路径。PCI总线带来优于ISA总线的数个优点,包括处理器独立性、缓冲隔离、总线主控、以及实在的即插即用操作。PCI高速(PCI Express,PCIe)是被设计用来替代PCI总线的第三代通用串行I/O互连。并非总线,PCIe是围绕被称为通道(lane)的点对点串行链路而构造的。
PCI高速的点对点串行链路架构非常适合经由分布式多处理器架构模型的分布式处理。分布式处理器一般被优化用于实现数据分组处理功能。与严重依赖于高速缓存以提高性能的通用CPU不同,分布式处理器在分组处理上缺乏局部性并且需要高性能I/O,这已推动设计者提出创新架构以减少处理等待时间,同时仍以高数据率处理分组。
目前,PCIe中的事务排序属性和类似互连必须由请求者来设置。由于主CPU是通用资源,因此它们通常不具有根据正执行的活动的具体要求来设置排序属性的能力,并且必然落后于最低的公共平均水平,这导致低性能。CPU至IO读取通常是性能最关键的系统事务,因为CPU核可能停转以等待结果。改进这种读取的性能因此通过释放CPU资源供其它更有用工作用就直接导致整个系统性能的提高。
附图说明
通过参考用来说明本发明的实施例的以下描述和附图,可最好地理解本发明。
图1是图解宽松排序属性的PCIe请求报头的示意图解。
图2是图解宽松排序属性的PCIe完成报头的示意图解。
图3是本发明的一个实施例的示意图解。
图4是本发明的另一个实施例的示意图解。
具体实施方式
如说明书及权利要求书中所使用的,单数形式的“一”、“一个”以及“该”包括复数引用,除非上下文另外明确地指出。“根联合体”(“RC”)是将中央处理单元(“CPU”或“处理器”)和存储器连接到PCI高速开关结构的PCI高速设备。根联合体代表处理器生成事务请求。“请求者”是作出请求的任何设备。“完成者”是服务请求的任何实体。“媒介”是请求者与完成者之间的任何设备,诸如开关。通常,媒介仅向前传递请求。如说明书和权利要求书中所使用的“上游”指示往根联合体的流。“下游”指示远离根联合体的流。“区域”是由地址或地址范围定义的存储器部分。设备例如可能希望用于存储对设备的指令的一个区域和用于由设备产生或消耗的数据的另一个区域有不同行为。
本发明的实施例描述如何通过使IO设备基于该设备对因事务而异的要求的理解来修改完成的排序属性,来恢复迷失于不必要的严格排序的一些性能以用于CPU至IO设备读取。作为严格排序问题的示例,考虑如果初始要花费2μs来完成的读取可被改进到1μs,则这1μs之差可被“返回”给核心以完成有用工作——这是足以执行数千指令的时间。当前系统频繁地在CPU至IO设备读取上引发0.6μs到若干μs的等待时间。较大系统针对常规排序的CPU至IO设备读取可能引发4μs的等待时间。这种延迟中的大部分是由于禁止完成绕开写入的常规排序要求造成的。由于常常存在大量的IO设备至主存写入业务,因此对CPU的读取完成常常简单地因这许多写入造成的排队延迟而延迟。
PCIe和类似的互连将排序属性与事务相关联以允许最优化处理。例如,在PCI/PCIe中,默认排序规则要求读取完成等待所有先前发出的在同一方向上流动的写入,作为PCI生产者/消费者排序模型的正确要求。然而,这种模型对于大多数情形而言过于保守。例如,在读取描述IO设备的状态的数据结构之前通常必须清空IO设备写入主存。清空设备写入常常通过使CPU读取设备来完成。然而,一旦清空读取完成,附加的设备状态读取通常不必针对上游写入进行排序。此外,通常不必针对来自无关设备的上游写入来排序CPU的读取,即使PCI/PCIe默认排序规则要求该行为。
通常,主CPU无法知晓如何标注读取请求以指示所要求的排序属性。然而,IO设备通常知晓哪些区域要求常规排序而哪些不要求。在各设备之间、设备内的一个寄存器与同一设备中另一个寄存器之间、以及甚至是针对基于如何访问该寄存器的一个寄存器,排序要求可能显著变化。排序要求的知识理论上可通过在主机上运行的设备驱动软件来传达,但大多数当前架构CPU不提供这样做的机制。然而,通常IO设备自身具有排序要求的知识。然而,IO设备不能标记CPU至设备请求——该事务的这部分必须在假定应用最保守的排序要求下处理,除非某种其它机制另行作出指示。
在许多情形中,加诸于各完成上的排序要求导致显著的停转。然而使用本发明的系统和方法,可由IO设备标记排序要求,用于在恰适之处放宽排序要求。排序要求取决于实现架构。在本发明的一个实施例中,该架构是PCIe。PCIe设备能访问被称为宽松排序(RO)的排序属性。
图1示出PCIe请求报头中的RO比特的位置。通常,在请求中将RO比特设为0,除非存在为CPU提供用以理解哪些请求可允许RO比特被置位的信息的某种机制。根据现有的PCIe规则,由完成者简单地将RO比特(以及相关联的排序含意)从请求复制到完成中。图2示出PCIe完成报头中的相应宽松排序(RO)比特。
在当今的PCI-x/PCIe中,RO比特仅在其在对应的请求中被置位的情况下才在完成报头中被置位。这种策略对于设备读取至主存有意义,因为假定该设备“知晓”哪些请求可标注RO而哪些不能。本发明的实施例认识到针对设备返回的完成,CPU读取设备可标注RO。这允许完成绕开无关的设备写入存储器。
图3示出可如何由IO设备置位宽松排序属性(在这种情形中为PCI/PCIe完成的RO比特)的示例。在该示例中,系统100包括3个PCI/PCIe端点1、2、3。然而,系统100可具有任何数目的PCI/PCIe端点。前两个PCI/PCIe端点1、2经由PCIe互连122连接到开关108。开关108通过另一个PCIe互连122连接到根综合体110。第三PCI/PCIe端点3经由PCIe互连122直接连接到根综合体110。根综合体110包括输入/输出控制器集线器控制器(ICH)112、存储器控制器集线器(MCH)114、主存116、以及CPU 118。输入/输出控制器集线器控制器(ICH)112经由桌面管理接口(DMI)120连接到存储器控制器集线器(MCH)114。
在该实施例中,端点2和3将数据写入主存116。这些写入与端点1的活动无关。CPU核118读取端点1。常规PCI排序规则在这些写入可能与读取数据相关的(过度保守的)假定下禁止完成绕开对存储器的写入。这种行为是PCI生产者/消费者模型所要求的。通常,端点1“知晓”CPU正读取的数据是否与未完结的写入存储器相关,并且如果与未完结的写入有关系,则将不指示读取完成的RO。然而,在大多数情形中,端点1“知晓”该读取与任何未完结的写入无关,并且在这种情形中端点1可安全地关于RO标注该完成。
图4图解本发明的另一个实施例,其中寻址设备集成在根综合体110中。系统200包括连接到输入/输出控制集线器控制器(ICH)112的2个集成端点124、126。输入/输出控制器集线器控制器(ICH)11经由桌面管理接口(DMI)120连接到存储器控制器集线器(MCH)114。存储器控制器集线器(MCH)114连接到CPU 118和主存116。该实施例包括单个PCI/PCIe端点1。然而,系统100可具有任何数目的集成寻址设备124、126或PCI/PCIe端点1。
在许多情形中,集成寻址设备124、126按照很好地定义的方式使用,并且能够简化用于确定何时可接受完成排序放宽的机制。注意,完成排序的具体处理无需遵守PCIe RO要求。即,根据所需成本/益处,可使得本发明的其它实施例更简单或更复杂。
图4示出其根综合体集成设备参与完成排序放宽方案的系统。在图4中所示的系统中,可实现以下策略或其它类似策略。
●认识到CPU读取集成设备针对从其它集成设备写入主存可能从来没有排序要求
●认识到CPU读取集成设备针对从非集成设备写入主存可能从来没有排序要求
●认识到CPU读取非集成设备针对从其它集成设备写入主存可能从来没有排序要求
●认识到CPU读取非集成设备针对从其它非集成设备写入主存可能从来没有排序要求
以上示例是用PCI/PCIe RO属性例示的。然而,本发明不局限于PCI/PCIe RO。在更一般性情形中,排序属性可不同于RO。此外,表达排序属性的方式可能不同。完成者具有用于确定是否能从默认行为安全地修改完成排序的知识是充分的。此外,以上示例是以针对上游写入排序的形式来例示的。然而,该系统是对称的。即,排序属性也可被放宽以改变针对下游写入的排序。
本发明的实施例可提供对于宽泛的计算机系统合需的性能改进。PC兼容的架构系统被特别约束,因为与支持传统硬件和软件相关联的要求使得很难实现排序放宽。然而,以上描述的机制在PC环境中工作良好。
虽然本发明已用本发明的若干实施例的形式进行了描述,但本领域普通技术人员将认识到,本发明并不被限定于所描述的本发明的实施例,而是可以用落在所附权利要求书的精神和范围内的修改和变更来实践。因此本说明书应被认为是说明性的而不是限制性的。
Claims (25)
1.一种数据处理系统,包括:
事务排序机制,其被配置成确定是否能放宽读取完成的排序属性,且被进一步配置成在适当的情况下放宽所述排序属性,
其中放宽的排序属性允许所述读取完成绕开待决写入。
2.如权利要求1所述的系统,其特征在于,所述事务排序机制被配置成设置完成报头中的放宽排序比特,并且绕开发生在外围组件互连中。
3.如权利要求1所述的系统,其特征在于,所述事务排序机制被配置成设置完成报头中的放宽排序比特,并且绕开发生在桌面管理接口中。
4.如权利要求1所述的系统,其特征在于,所述系统包括第一端点设备,所述第一端点设备包括所述事务排序机制。
5.如权利要求4所述的系统,其特征在于,所述事务排序机制适于基于所述第一端点设备对因事务而异的要求的理解来放宽所述排序属性。
6.如权利要求4所述的系统,其特征在于,所述系统包括附加端点设备,并且放宽比特的设置允许所述读取完成绕开来自所述附加端点设备的待决写入。
7.如权利要求1所述的系统,其特征在于,还包括集成在根综合体中的端点设备。
8.如权利要求7所述的系统,其特征在于,还包括附加端点设备。
9.如权利要求8所述的系统,其特征在于,所述附加端点设备中的至少一个位于所述根综合体中。
10.一种方法,包括:
确定是否能放宽读取完成的排序属性以允许所述读取完成绕开一个或多个待决写入;
设置所述读取完成的所述排序属性以允许所述读取完成绕开所述一个或多个待决写入。
11.如权利要求10所述的方法,其特征在于,还包括确定第一端点设备的读取完成是否与所述一个或多个待决写入相关。
12.如权利要求10所述的方法,其特征在于,设置所述排序属性包括设置完成报头中的放宽排序比特,并且其中绕开发生在外围组件互连中。
13.如权利要求10所述的方法,其特征在于,设置所述排序属性包括设置完成报头中的放宽排序比特,并且其中绕开发生在桌面管理接口中。
14.如权利要求10所述的方法,其特征在于,确定是否能放宽读取完成的排序属性是基于所述第一端点设备对因事务而异的要求的理解的。
15.如权利要求12所述的方法,其特征在于,还包括所述读取完成绕开所述一个或多个待决写入。
16.如权利要求13所述的方法,其特征在于,还包括所述读取完成绕开所述一个或多个待决写入。
17.如权利要求11所述的方法,其特征在于,所述一个或多个待决写入来自一个或多个附加端点设备。
18.如权利要求17所述的方法,其特征在于,所述一个或多个附加端点设备中的至少一个集成在根综合体中。
19.如权利要求18所述的方法,其特征在于,还包括:
从中央处理单元向所述第一端点设备发送读取请求,所述第一端点设备集成在所述根综合体中;以及
从所述第一端点设备向主存发送所述读取完成,
其中所述排序属性可总是被设置成允许所述读取完成绕开来自所述至少一个附加集成设备的一个或多个待决写入。
20.如权利要求18所述的方法,其特征在于,还包括:
从中央处理单元向所述第一端点设备发送读取请求,所述第一端点设备集成在所述根综合体中;以及
从所述第一端点设备向主存发送所述读取完成,
其中所述排序属性可总是被设置成允许所述读取完成绕开来自附加的非集成设备的一个或多个待决写入。
21.如权利要求18所述的方法,其特征在于,还包括:
从中央处理单元向所述第一端点设备发送读取请求,所述第一端点设备并非集成在所述根综合体中;以及
从所述第一端点设备向主存发送所述读取完成,
其中所述排序属性可总是被设置成允许所述读取完成绕开来自所述至少一个附加集成设备的一个或多个待决写入。
22.如权利要求18所述的方法,其特征在于,还包括:
从中央处理单元向所述第一端点设备发送读取请求,所述第一端点设备并非集成在所述根综合体中;以及
从所述第一端点设备向主存发送所述读取完成,
其中所述排序属性可总是被设置成允许所述读取完成绕开来自附加的非集成设备的一个或多个待决写入。
23.一种装置,包括:
用于确定是否能放宽读取完成的排序属性以允许所述读取完成绕开一个或多个待决写入的装置;
用于设置所述读取完成的所述排序属性以允许绕开所述一个或多个待决写入的装置。
24.如权利要求23所述的装置,其特征在于,所述用于设置所述排序属性的装置包括用于设置完成报头中的放宽排序比特的装置。
25.如权利要求23所述的装置,其特征在于,所述装置是外围组件互连。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210586797.9A CN102981984B (zh) | 2008-10-15 | 2009-10-14 | 使用完成者对存储器区域排序要求的知识来修改事务属性 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/252,303 | 2008-10-15 | ||
US12/252,303 US8108584B2 (en) | 2008-10-15 | 2008-10-15 | Use of completer knowledge of memory region ordering requirements to modify transaction attributes |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210586797.9A Division CN102981984B (zh) | 2008-10-15 | 2009-10-14 | 使用完成者对存储器区域排序要求的知识来修改事务属性 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101727413A true CN101727413A (zh) | 2010-06-09 |
CN101727413B CN101727413B (zh) | 2013-09-11 |
Family
ID=41462384
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910208029.8A Active CN101727413B (zh) | 2008-10-15 | 2009-10-14 | 使用完成者对存储器区域排序要求的知识来修改事务属性 |
CN201210586797.9A Active CN102981984B (zh) | 2008-10-15 | 2009-10-14 | 使用完成者对存储器区域排序要求的知识来修改事务属性 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210586797.9A Active CN102981984B (zh) | 2008-10-15 | 2009-10-14 | 使用完成者对存储器区域排序要求的知识来修改事务属性 |
Country Status (6)
Country | Link |
---|---|
US (2) | US8108584B2 (zh) |
JP (3) | JP5479020B2 (zh) |
CN (2) | CN101727413B (zh) |
DE (2) | DE102009049078B4 (zh) |
GB (1) | GB2464403B (zh) |
TW (2) | TWI420319B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104081722A (zh) * | 2012-01-13 | 2014-10-01 | 英特尔公司 | SoC构造中的高效对等通信支持 |
CN107710173A (zh) * | 2015-05-29 | 2018-02-16 | 高通股份有限公司 | 用于存储器管理单元的多线程转换及事务重新排序 |
CN110688332A (zh) * | 2019-09-12 | 2020-01-14 | 无锡江南计算技术研究所 | 一种面向高速消息传输的pcie数据传输系统及计算机 |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8108584B2 (en) * | 2008-10-15 | 2012-01-31 | Intel Corporation | Use of completer knowledge of memory region ordering requirements to modify transaction attributes |
WO2011052002A1 (en) * | 2009-10-27 | 2011-05-05 | Hitachi, Ltd. | Storage system mounted with plurality of processors |
US9129071B2 (en) * | 2012-10-24 | 2015-09-08 | Texas Instruments Incorporated | Coherence controller slot architecture allowing zero latency write commit |
KR102065664B1 (ko) | 2013-08-09 | 2020-01-13 | 삼성전자 주식회사 | 메모리 장치의 열화 상태 추정 방법 및 이를 이용한 메모리 시스템에서의 웨어 레벨링 방법 |
US10013385B2 (en) | 2014-11-13 | 2018-07-03 | Cavium, Inc. | Programmable validation of transaction requests |
US9569362B2 (en) * | 2014-11-13 | 2017-02-14 | Cavium, Inc. | Programmable ordering and prefetch |
US10127968B2 (en) * | 2015-08-03 | 2018-11-13 | Intel Corporation | Method and apparatus for completing pending write requests to volatile memory prior to transitioning to self-refresh mode |
US10223307B2 (en) * | 2017-06-15 | 2019-03-05 | International Business Machines Corporation | Management of data transaction from I/O devices |
US10353833B2 (en) | 2017-07-11 | 2019-07-16 | International Business Machines Corporation | Configurable ordering controller for coupling transactions |
US11762785B2 (en) * | 2021-05-03 | 2023-09-19 | Mellanox Technologies, Ltd. | Peripheral component interconnect attributes shared using address bits |
Family Cites Families (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3255908B2 (ja) * | 1988-06-30 | 2002-02-12 | エルジー・セミコン・カンパニー・リミテッド | メモリー制御ユニット |
GB2230120B (en) * | 1989-04-07 | 1992-12-02 | Intel Corp | Read/write ordering apparatus and method for a microprocessor |
US5418940A (en) * | 1993-08-04 | 1995-05-23 | International Business Machines Corporation | Method and means for detecting partial page writes and avoiding initializing new pages on DASD in a transaction management system environment |
US5530933A (en) * | 1994-02-24 | 1996-06-25 | Hewlett-Packard Company | Multiprocessor system for maintaining cache coherency by checking the coherency in the order of the transactions being issued on the bus |
US5657472A (en) * | 1995-03-31 | 1997-08-12 | Sun Microsystems, Inc. | Memory transaction execution system and method for multiprocessor system having independent parallel transaction queues associated with each processor |
US5790870A (en) * | 1995-12-15 | 1998-08-04 | Compaq Computer Corporation | Bus error handler for PERR# and SERR# on dual PCI bus system |
US6272600B1 (en) * | 1996-11-15 | 2001-08-07 | Hyundai Electronics America | Memory request reordering in a data processing system |
US5860126A (en) * | 1996-12-17 | 1999-01-12 | Intel Corporation | Controlling shared memory access ordering in a multi-processing system using an acquire/release consistency model |
US5878237A (en) * | 1997-07-11 | 1999-03-02 | Compaq Computer Corp. | Apparatus, method and system for a comuter CPU and memory to PCI bridge having a pluarlity of physical PCI buses |
US6145052A (en) * | 1997-11-04 | 2000-11-07 | Western Digital Corporation | Disk drive with adaptive pooling for command reordering |
US6038646A (en) * | 1998-01-23 | 2000-03-14 | Sun Microsystems, Inc. | Method and apparatus for enforcing ordered execution of reads and writes across a memory interface |
US6816934B2 (en) * | 2000-12-22 | 2004-11-09 | Hewlett-Packard Development Company, L.P. | Computer system with registered peripheral component interconnect device for processing extended commands and attributes according to a registered peripheral component interconnect protocol |
US6175889B1 (en) * | 1998-10-21 | 2001-01-16 | Compaq Computer Corporation | Apparatus, method and system for a computer CPU and memory to high speed peripheral interconnect bridge having a plurality of physical buses with a single logical bus number |
US6625683B1 (en) * | 1999-08-23 | 2003-09-23 | Advanced Micro Devices, Inc. | Automatic early PCI transaction retry |
US6490635B1 (en) * | 2000-04-28 | 2002-12-03 | Western Digital Technologies, Inc. | Conflict detection for queued command handling in disk drive controller |
JP2002043544A (ja) * | 2000-07-21 | 2002-02-08 | Mitsubishi Electric Corp | 半導体装置およびその製造方法 |
US6615295B2 (en) * | 2000-12-26 | 2003-09-02 | Hewlett-Packard Development Company, L.P. | Relaxed read completion ordering in a system using transaction order queue |
US6757768B1 (en) * | 2001-05-17 | 2004-06-29 | Cisco Technology, Inc. | Apparatus and technique for maintaining order among requests issued over an external bus of an intermediate network node |
US7177971B2 (en) | 2001-08-24 | 2007-02-13 | Intel Corporation | General input/output architecture, protocol and related methods to provide isochronous channels |
US6801970B2 (en) * | 2001-09-30 | 2004-10-05 | Hewlett-Packard Development Company, L.P. | Priority transaction support on the PCI-X bus |
US6754737B2 (en) * | 2001-12-24 | 2004-06-22 | Hewlett-Packard Development Company, L.P. | Method and apparatus to allow dynamic variation of ordering enforcement between transactions in a strongly ordered computer interconnect |
US7184399B2 (en) * | 2001-12-28 | 2007-02-27 | Intel Corporation | Method for handling completion packets with a non-successful completion status |
US20030145136A1 (en) * | 2002-01-31 | 2003-07-31 | Tierney Gregory E. | Method and apparatus for implementing a relaxed ordering model in a computer system |
US7047374B2 (en) * | 2002-02-25 | 2006-05-16 | Intel Corporation | Memory read/write reordering |
US20050289306A1 (en) * | 2004-06-28 | 2005-12-29 | Sridhar Muthrasanallur | Memory read requests passing memory writes |
JP4410190B2 (ja) * | 2005-03-24 | 2010-02-03 | 富士通株式会社 | PCI−Express通信システム |
US8516165B2 (en) * | 2005-10-19 | 2013-08-20 | Nvidia Corporation | System and method for encoding packet header to enable higher bandwidth efficiency across bus links |
US7721023B2 (en) * | 2005-11-15 | 2010-05-18 | International Business Machines Corporation | I/O address translation method for specifying a relaxed ordering for I/O accesses |
US7698498B2 (en) * | 2005-12-29 | 2010-04-13 | Intel Corporation | Memory controller with bank sorting and scheduling |
US7461210B1 (en) * | 2006-04-14 | 2008-12-02 | Tilera Corporation | Managing set associative cache memory according to entry type |
US7949794B2 (en) * | 2006-11-02 | 2011-05-24 | Intel Corporation | PCI express enhancements and extensions |
KR100823171B1 (ko) * | 2007-02-01 | 2008-04-18 | 삼성전자주식회사 | 파티션된 플래시 변환 계층을 갖는 컴퓨터 시스템 및플래시 변환 계층의 파티션 방법 |
US8108584B2 (en) * | 2008-10-15 | 2012-01-31 | Intel Corporation | Use of completer knowledge of memory region ordering requirements to modify transaction attributes |
-
2008
- 2008-10-15 US US12/252,303 patent/US8108584B2/en active Active
-
2009
- 2009-10-12 DE DE102009049078.7A patent/DE102009049078B4/de active Active
- 2009-10-12 TW TW098134482A patent/TWI420319B/zh not_active IP Right Cessation
- 2009-10-12 TW TW102109839A patent/TWI548997B/zh active
- 2009-10-12 DE DE102009061252.1A patent/DE102009061252B3/de active Active
- 2009-10-14 CN CN200910208029.8A patent/CN101727413B/zh active Active
- 2009-10-14 CN CN201210586797.9A patent/CN102981984B/zh active Active
- 2009-10-15 GB GB0918065A patent/GB2464403B/en not_active Expired - Fee Related
- 2009-10-15 JP JP2009237987A patent/JP5479020B2/ja active Active
-
2011
- 2011-12-22 US US13/335,345 patent/US8307144B2/en active Active
-
2013
- 2013-08-27 JP JP2013175504A patent/JP5824488B2/ja active Active
-
2015
- 2015-10-09 JP JP2015201103A patent/JP6141379B2/ja active Active
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104081722A (zh) * | 2012-01-13 | 2014-10-01 | 英特尔公司 | SoC构造中的高效对等通信支持 |
US9755997B2 (en) | 2012-01-13 | 2017-09-05 | Intel Corporation | Efficient peer-to-peer communication support in SoC fabrics |
CN104081722B (zh) * | 2012-01-13 | 2018-05-22 | 英特尔公司 | SoC构造中的高效对等通信支持 |
CN107710173A (zh) * | 2015-05-29 | 2018-02-16 | 高通股份有限公司 | 用于存储器管理单元的多线程转换及事务重新排序 |
CN110688332A (zh) * | 2019-09-12 | 2020-01-14 | 无锡江南计算技术研究所 | 一种面向高速消息传输的pcie数据传输系统及计算机 |
Also Published As
Publication number | Publication date |
---|---|
JP2016033823A (ja) | 2016-03-10 |
GB0918065D0 (en) | 2009-12-02 |
CN102981984B (zh) | 2016-04-06 |
CN101727413B (zh) | 2013-09-11 |
JP5479020B2 (ja) | 2014-04-23 |
JP6141379B2 (ja) | 2017-06-07 |
TWI420319B (zh) | 2013-12-21 |
GB2464403B (en) | 2011-08-24 |
DE102009049078A1 (de) | 2010-05-20 |
US20120096212A1 (en) | 2012-04-19 |
GB2464403A (en) | 2010-04-21 |
US20100095032A1 (en) | 2010-04-15 |
TW201019128A (en) | 2010-05-16 |
DE102009061252B3 (de) | 2023-04-20 |
CN102981984A (zh) | 2013-03-20 |
JP2014041618A (ja) | 2014-03-06 |
JP2010097615A (ja) | 2010-04-30 |
TW201329732A (zh) | 2013-07-16 |
DE102009049078B4 (de) | 2015-03-05 |
TWI548997B (zh) | 2016-09-11 |
US8307144B2 (en) | 2012-11-06 |
JP5824488B2 (ja) | 2015-11-25 |
US8108584B2 (en) | 2012-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101727413B (zh) | 使用完成者对存储器区域排序要求的知识来修改事务属性 | |
EP3796179A1 (en) | System, apparatus and method for processing remote direct memory access operations with a device-attached memory | |
US6587905B1 (en) | Dynamic data bus allocation | |
US6535941B1 (en) | Method and apparatus for avoiding data bus grant starvation in a non-fair, prioritized arbiter for a split bus system with independent address and data bus grants | |
KR101036445B1 (ko) | 다중 버스트 프로토콜 장치 제어기 | |
TW200534110A (en) | A method for supporting improved burst transfers on a coherent bus | |
US20200159681A1 (en) | Information processor with tightly coupled smart memory unit | |
CN104932996B (zh) | 用于控制链路接口的未使用硬件的功率消耗的方法、装置和系统 | |
CN103116551B (zh) | 应用于CLB总线的NorFLASH存储接口模块 | |
TW484068B (en) | Method and system for resolution of transaction collisions to achieve global coherence in a distributed symmetric multiprocessor system | |
US20040068603A1 (en) | Reordering of requests between an initiator and the request queue of a bus controller | |
US20070038790A1 (en) | Integrated circuit devices, methods, and computer program products for monitoring a bus | |
CN115686769A (zh) | 根据cxl协议处理一致存储器事务的系统、装置和方法 | |
JP2021522608A (ja) | ストリーミングデータ転送のためのフロー圧縮を用いたデータ処理ネットワーク | |
US11093276B2 (en) | System and method for batch accessing | |
CN100587680C (zh) | 管理分离总线上总线代理之间的数据流的方法和系统 | |
US7987437B2 (en) | Structure for piggybacking multiple data tenures on a single data bus grant to achieve higher bus utilization | |
US9697059B2 (en) | Virtualized communication sockets for multi-flow access to message channel infrastructure within CPU | |
US7073004B2 (en) | Method and data processing system for microprocessor communication in a cluster-based multi-processor network | |
CN114281726B (zh) | 用于soc芯片的系统架构及外设通信方法 | |
CN107003959B (zh) | 虚拟遗留线 | |
CN115297169A (zh) | 数据处理方法、装置、电子设备及介质 | |
CN114064198A (zh) | 经由os接口表的单numa域内的多虚拟numa域 | |
JP2000066946A (ja) | メモリコントローラ | |
JP2009042992A (ja) | バス制御装置 |
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 |