CN111373382B - 高速外围组件互连(PCI)(PCIe)地址转译服务(ATS)中的快速失效 - Google Patents

高速外围组件互连(PCI)(PCIe)地址转译服务(ATS)中的快速失效 Download PDF

Info

Publication number
CN111373382B
CN111373382B CN201880075493.1A CN201880075493A CN111373382B CN 111373382 B CN111373382 B CN 111373382B CN 201880075493 A CN201880075493 A CN 201880075493A CN 111373382 B CN111373382 B CN 111373382B
Authority
CN
China
Prior art keywords
fast
endpoint
message
series
communication link
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
Application number
CN201880075493.1A
Other languages
English (en)
Other versions
CN111373382A (zh
Inventor
J·L·帕尼安
D·罗德
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.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN111373382A publication Critical patent/CN111373382A/zh
Application granted granted Critical
Publication of CN111373382B publication Critical patent/CN111373382B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0745Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in an input/output transactions management context
    • 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/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4221Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols
    • G06F12/0831Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
    • G06F12/0833Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means in combination with broadcast means (e.g. for invalidation or updating)
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1081Address translation for peripheral access to main memory, e.g. direct memory access [DMA]
    • 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/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4291Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0026PCI express

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Debugging And Monitoring (AREA)
  • Communication Control (AREA)
  • Multi Processors (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

高速外围组件互连(PCI)(PCIe)地址转译服务(ATS)中的快速失效最初利用快速失效请求向诸端点警告地址正被失效,以及利用快速失效同步命令,该快速失效同步命令使得这些端点彻底冲洗掉与任何已失效地址相关联的残留的读/写命令,并且删除地址转译高速缓存(ATC)中的任何相关联的地址条目。每个端点可向主机发送同步完成确收。此外,具有针对每个失效请求的递增标识符的标签可被用于确定端点是否已缺失失效请求。

Description

高速外围组件互连(PCI)(PCIe)地址转译服务(ATS)中的快速 失效
优先权要求
本申请要求于2018年1月4日提交的题为“FAST INVALIDATION IN PERIPHERALCOMPONENT INTERCONNECT(PCI)EXPRESS(PCIe)ADDRESS TRANSLATION SERVICES(ATS)(高速外围组件互连(PCI)(PCIe)地址转译服务(ATS)中的快速失效)”的美国临时专利申请S/N.62/613,602的优先权,其内容通过引用全部纳入于此。
本申请还要求于2018年12月18日提交的题为“FAST INVALIDATION INPERIPHERAL COMPONENT INTERCONNECT(PCI)EXPRESS(PCIe)ADDRESS TRANSLATIONSERVICES(ATS)(高速外围组件互连(PCI)(PCIe)地址转译服务(ATS)中的快速失效)”的美国专利申请S/N.16/223,364的优先权,其内容通过引用全部纳入于此。
背景
I.公开领域
本公开的技术一般涉及高速外围组件互连(PCI)(PCIe)系统中使用地址转译服务(ATS)的地址失效命令。
II.背景技术
计算设备在现代社会已变得越来越常见,并且已从仅执行最基本功能的大型笨重设备演进成在提供电话功能和类似功能的同时作为完整多媒体平台来操作的小型便携式设备。此类设备的功能性的增加部分地归因于将越来越多的晶体管缩小成个体集成电路(IC)以允许越来越小的空间中改善的处理功率的持续进展。虽然IC在尺寸上持续地缩小,但大多数计算设备继续在计算设备内采用多个IC以实现不同功能。这样的多个IC需要这些IC能够彼此通信。已经颁布了阐述IC可彼此通信的方式的各种协议和标准。
一种流行的协议是外围组件互连(PCI)标准中所阐述的协议。PCI已经经历了多次置换,但截止至撰写本文时,更流行的版本之一是高速PCI(PCIe)。PCIe的一种流行用途是用于从外围元件通过主机设备到存储器元件的存储器读/写命令。此类读/写命令通常与读/写命令所应用的存储器内的地址相关联。早期迭代要求外围设备使用存储器的物理地址。随着存储器尺寸增大,地址范围超过了外围设备的定址能力,于是引入了虚拟地址的概念。
虽然虚拟地址的使用帮助允许外围设备使用所有内存,但虚拟地址的使用对主机施加了处理负担,因为虚拟地址必须被转译回到物理地址。这样的处理还添加了读/写过程的等待时间。相应地,地址转译通过在外围设备处使用地址转译服务(ATS)和使用地址转译高速缓存(ATC)而被推回到了外围设备。外围设备将在内部使用虚拟地址,但使用ATC来寻找物理地址。位于ATC中的物理地址将用从外围设备到主机的读/写命令来发送以供与存储器联用。
ATC由主机中的存储器管理单元填充。周期性地,主机可确定特定地址转译已过期、期满、或以其他方式不再使用。藉以处置使用期满地址的传统技术是通过从主机到外围设备的失效命令。一次可能有至多达三十二(32)个此类命令待决。当外围设备完成与失效命令相关联的某些清扫任务时,外围设备将确收失效。这些确收对外围设备与主机之间的通信施加了信令开销。相应地,仍存在对于改进地址转译失效过程的需求。
公开概述
详细描述中公开的各方面包括用于高速外围组件互连(PCI)(PCIe)地址转译服务(ATS)中的快速失效的系统和方法。本公开的示例性方面最初利用快速失效请求向诸端点警告地址正被失效。作为需要在端点一方立即采取动作的替代,主机允许这些端点累积此类失效请求,直到快速失效同步命令从该主机被发送给这些端点。在接收到这样的同步命令时,这些端点就彻底清洗掉与任何失效地址相关联的任何残留的读/写命令,并删除地址转译高速缓存(ATC)中的任何相关联的地址条目。在完成这些任务之后,每个端点可向主机发送同步完成确收。本公开的示例性方面进一步提供具有针对每个失效请求在数值上递增的标识符的标签。当同步命令被发送时,该同步命令包括该递增标识符的当前值。如果端点尚未接收到具有上次同步标签号与同步命令中的标签之间的每个标签的诸请求,则该端点可采取动作以获得缺失的失效请求。使用快速失效命令、同步命令和标签既帮助减小系统中的开销,又帮助确保接收到诸失效命令并对其采取动作,以使得旧式地址转译不会遗留以扰乱主机与端点之间的通信。
就此而言,在一个方面,公开了一种在通信链路上进行通信的方法。该方法包括将包括递增标识符的标签插入到与地址转译表相关的一系列快速失效请求消息之中的每个快速失效请求消息中。该方法还包括基于缺失的递增标识符来检测缺失或损坏的快速失效请求消息。
在另一方面,公开了一种通信系统。该通信系统包括通信链路。该通信链路还包括根复合体。该根复合体包括链路接口,其被配置成耦合到该通信链路。该根复合体还包括控制系统。该控制系统被配置成将包括递增标识符的标签插入到与地址转译表相关的一系列快速失效请求消息之中的每个快速失效请求消息中。该控制系统还被配置成在该通信链路上发送这一系列快速失效请求消息。该通信系统还包括端点。该端点包括端点链路接口,其被配置成耦合到该通信链路。该端点还包括端点控制系统。该端点控制系统被配置成在该通信链路上接收这一系列快速失效请求消息。该端点控制系统还被配置成基于缺失的递增标识符来检测这一系列快速失效请求消息之内缺失或损坏的快速失效请求消息。
在另一方面,公开了一种装置。该装置包括根复合体。该根复合体包括链路接口,其被配置成耦合到通信链路。该根复合体还包括控制系统。该控制系统被配置成将包括递增标识符的标签插入到与地址转译表相关的一系列快速失效请求消息之中的每个快速失效请求消息中。该控制系统还被配置成在该通信链路上发送这一系列快速失效请求消息。
在另一方面,公开了一种装置。该装置包括端点。该端点包括端点链路接口,其被配置成耦合到通信链路。该端点还包括端点控制系统。该端点控制系统被配置成在该通信链路上接收一系列快速失效请求消息。该端点控制系统还被配置成基于缺失的递增标识符来检测这一系列快速失效请求消息之内缺失或损坏的快速失效请求消息。
在另一方面,公开了一种用于在通信链路上进行通信的方法。该方法包括将包括递增标识符的标签插入到与地址转译表相关的一系列快速失效请求消息之中的每个快速失效请求消息中。该方法还包括在该通信链路上发送这一系列快速失效请求消息。
在另一方面,公开了一种用于在通信链路上进行通信的方法。该方法包括在该通信链路上接收一系列快速失效请求消息。该方法还包括基于缺失的递增标识符来检测这一系列快速失效请求消息之内缺失或损坏的快速失效请求消息。
附图简述
图1是在高速外围组件互连(PCI)(PCIe)链路的端点和根复合体之间使用物理地址的示例性计算设备的框图;
图2是在PCIe链路的端点和根复合体之间使用虚拟地址的示例性计算设备的框图;
图3是跨PCIe链路使用物理地址但在端点中具有地址转译高速缓存(ATC)以使得该端点的各部分使用虚拟地址的示例性计算设备的框图;
图4是包括直接以及通过开关连接到多个端点的根复合体的示例性计算设备的框图;
图5是快速失效请求消息和快速失效同步消息的简化信号流图,所有这些消息都具有其中含有用于缺失消息检测的递增标识符的标签;
图6是快速失效消息的简化信号流图,其中一个快速失效消息在到达端点之前被丢失或损坏,由此从该端点排除快速失效同步消息并触发所有居间快速失效请求消息的重新发送;
图7是快速失效消息的简化信号流图,其中一个快速失效消息在到达端点之前被丢失或损坏,从而使该端点向根复合体发信令通知该消息的丢失;
图8是快速失效消息的简化信号流图,其中一个快速失效消息在到达端点之前被丢失或损坏,从而使该端点在接收到来自根复合体的快速失效同步消息之后发信令通知其缺失了特定消息;
图9是具有其中含有递增标识符的标签的示例性PCIe失效相关消息;
图10A-10C是解说分别对应于图6-8的信号流的示例性过程的流程图;
图11是可包括可以使用图6-8的快速失效同步技术的PCIe链路和元件的基于处理器的示例性系统的框图。
详细描述
现在参照附图,描述了本公开的若干示例性方面。措辞“示例性”在本文中用于意指“用作示例、实例、或解说”。本文中描述为“示例性”的任何方面不必被解释为优于或胜过其他方面。
详细描述中公开的各方面包括用于高速外围组件互连(PCI)(PCIe)地址转译服务(ATS)中的快速失效的系统和方法。本公开的示例性方面最初利用快速失效请求向诸端点警告地址正被失效。作为需要在端点一方立即采取动作的替代,主机允许这些端点累积此类失效请求,直到快速失效同步命令从该主机被发送给这些端点。在接收到此类同步命令时,这些端点就彻底冲洗掉与任何已失效地址相关联的任何残留的读/写命令,并删除地址转译高速缓存(ATC)中的任何相关联的地址条目。在完成这些任务之后,每个端点可向主机发送同步完成确收。本公开的示例性方面进一步提供具有针对每个失效请求在数值上递增的标识符的标签。当同步命令被发送时,该同步命令包括递增标识符的当前值。如果端点尚未接收到具有上次同步标签号与同步命令中的标签之间的每个标签的诸请求,则该端点可采取动作以获得缺失的失效请求。使用快速失效命令、同步命令和标签既帮助减小系统中的开销,又帮助确保接收到诸失效命令并对其采取动作,以使得旧式地址转译不会遗留以扰乱主机与端点之间的通信。
在叙述本公开的详情之前,参照图1-3提供了常规PCIe系统中的ATS的简要讨论,继以参照图4的多端点PCIe系统的讨论。本公开的示例性方面的讨论在以下参照图5开始。
就此而言,图1是计算设备100的框图,其具有第一IC 102,第一IC 102通过PCIe链路106耦合到第二IC 104。虽然本文中描述的PCIe连接(不仅针对图1而且针对其他附图)可充当总线,但PCIe标准的命名法和一般点对点性质使得将连接称为链路更合适。然而,应当领会,这样的连接也可被称为总线。第一IC 102可以是端点(如由PCIe规范所使用的该术语那样),并且在功能上可对应于调制解调器、加速器、或类似物。第一IC 102可包括链路接口108,其可对应于被配置成在PCIe链路106上通信的物理层(PHY)。第一IC 102可进一步包括控制系统(在附图中被标记为CS)110。
继续参照图1,第二IC 104可以是主机(如由PCIe规范所使用的该术语那样),并且在功能上可以是应用处理器、片上系统(SoC)、或类似物。作为是主机的一部分,第二IC 104包括形成根复合体112的逻辑元件,根复合体112包括被配置成在PCIe链路106上通信的PHY114。第二IC 104进一步包括输入/输出存储器管理单元(IOMMU)116,其在内部相干总线120上与存储器模块118通信。存储器模块118可包含高速缓存存储器122、存储器控制器124和存储器元件126。第二IC 104可进一步包括控制系统128,其可以是处理核或类似物。
继续参照图1,在原始PCIe系统(诸如计算设备100)中,第一IC 102可通过PCIe链路106发起至存储器元件126的读/写命令。为了确保存储器元件126的恰适部分被定址,第一IC 102将使用与存储器元件126的相关部分的地址直接对应的物理地址。如此,在早期系统中不存在地址转译。
随着存储器元件126的尺寸增大并且随着由于不能够分段使用存储器元件126引起的不便增加,PCIe规范允许使用虚拟地址。
就此而言,图2解说了计算设备200,其类似于图1的计算设备100。计算设备200具有第一IC 202,第一IC 202通过PCIe链路206耦合到第二IC 204。第一IC 202可以是端点(如由PCIe规范所使用的该术语那样),并且在功能上可对应于调制解调器、加速器、或类似物。第一IC 202可包括链路接口208,其可对应于被配置成在PCIe链路206上通信的PHY。第一IC 202可进一步包括控制系统(在附图中被标记为CS)210。
继续参照图2,第二IC 204可以是主机(如由PCIe规范所使用的该术语那样),并且在功能上可以是应用处理器、SoC、或类似物。作为是主机的一部分,第二IC 204包括形成根复合体212的逻辑元件,根复合体212包括被配置成在PCIe链路206上通信的链路接口或即PHY 214。第二IC 204进一步包括IOMMU 216,其在内部相干总线220上与存储器模块218通信。存储器模块218可包含高速缓存存储器222、存储器控制器224和存储器元件226。第二IC204可进一步包括控制系统228,其对应于处理核或类似物。
继续参照图2,第一IC 202可通过PCIe链路206发起至存储器元件226的读/写命令。然而,与图1的计算设备100形成对比的是,第一IC 202在其定址存储器元件226时可以使用虚拟地址。虚拟地址由IOMMU 216指派,并且IOMMU 216接收具有虚拟地址的读/写命令。在接收到时,IOMMU 216就将虚拟地址转译成物理地址,之后在内部相干总线220上向存储器模块218发送具有物理地址的请求。虽然这一办法允许使用较大的存储器元件并且允许局部存储器使用,但这一办法也造成了IOMMU 216处的瓶颈,因为多个端点可能同时需要地址转译。
为了减轻IOMMU 216处的瓶颈,PCIe的进一步演进将地址转译移到了端点中的ATC。图3中解说了这一布置。就此而言,图3解说了计算设备300,其类似于图1和2的计算设备100和200。具体地,计算设备300具有第一IC 302,第一IC 302通过PCIe链路306耦合到第二IC 304。第一IC 302可以是端点(如由PCIe规范所使用的该术语那样),并且在功能上可对应于调制解调器、加速器、或类似物。第一IC 302可包括链路接口308,其可对应于被配置成在PCIe链路306上通信的PHY。第一IC 302可进一步包括控制系统(在附图中被标记为CS)310。
继续参照图3,第二IC 304可以是主机(如由PCIe规范所使用的该术语那样),并且在功能上可以是应用处理器、SoC、或类似物。作为是主机的一部分,第二IC 304包括形成根复合体312的逻辑元件,根复合体312包括被配置成在PCIe链路306上通信的链路接口或即PHY 314。第二IC 304进一步包括IOMMU 316,其在内部相干总线320上与存储器模块318通信。存储器模块318可包含高速缓存存储器322、存储器控制器324和存储器元件326。第二IC304可包括控制系统328,其可以是处理核或类似物。
与图1的计算设备100或图2的计算设备200形成对比的是,计算设备300的第一IC302包括ATC 330,其可包括必需且充足的存储器元件以存储查找表或类似物以保持地址转译。具体而言,当第一IC 302具有初始存储器访问请求(即,读取或写入)时,第一IC 302通过转译请求来与IOMMU 316通信。IOMMU 316指派物理地址到虚拟地址转译,并将这一转译传达给第一IC 302以供存储在ATC 330中。随后,当第一IC 302具有存储器访问请求时,第一IC 302最初使用虚拟地址但将其发送给ATC 330。ATC 330将该虚拟地址转译成由IOMMU316提供的物理地址,并且第一IC 302将具有该物理地址的存储器访问请求发送给第二IC304。在接收到时,IOMMU 316就在内部相干总线320上将具有该物理地址的该请求发送给存储器模块318。
在某一时段不使用或者预定义时间量或其他事件期满之后,IOMMU 316或IOMMU316内的转译代理可确定最初提供的虚拟地址到物理地址映射已期满。相应地,IOMMU 316使根复合体312向第一IC 302发送失效请求消息。在传统PCIe系统中,接收到失效请求消息使得第一IC 302删除ATC 330中的条目,从而确保使用已失效地址的所有未发布的待决事务得以完成,并冲洗掉利用了已失效地址的所有已发布的待决事务。在完成这些活动时,第一IC 302将向第二IC 304发送失效完成消息。失效完成消息可在针对其使用了已失效地址的每一话务类上被发送。根复合体312随后收集每一话务类的所有失效完成消息,等待使用已失效地址的所有先前已发布和未发布的事务完成,并且向软件指示已接收到并执行了失效完成消息。在任何给定时间,至多达三十二(32)个失效请求消息可以是活跃且待决的。失效请求和失效完成消息的发送和接收对PCIe链路306施加了信令开销惩罚。
图4提供了示例性PCIe系统400,其中主机404中的根复合体402可直接与多个端点406(1)-406(N)通信以及通过开关410与附加端点408(1)-408(M)通信。相应元件之间的每一连接是高速串行点对点PCIe链路412(1)-412(M+N+1)。
最近提议构想了快速失效请求。如前,图3的根复合体312中的软件可确定使较早转译条目失效是恰适的。根复合体312向第一IC 302发送快速失效请求消息。当第一IC 302接收到快速失效请求消息时,第一IC 302执行若干动作,包括:使ATC 330中的条目失效并停止使用已失效地址;继续处理使用已失效地址的所有未发布的待决事务直至完成;以及冲洗掉使用已失效地址的所有已发布的待决事务。然而,第一IC 302不需要发送失效完成消息。
在快速失效提议下,当根复合体312中的软件想要冲洗所有先前的快速失效请求消息时,根复合体312向第一IC 302发送快速失效同步消息。第一IC 302完成在接收到快速失效请求之前已发起的任务,并且还等待利用已失效地址的所有未发布的当前事务完成(在其尚未完成的情况下)。当最后事务完成时,第一IC 302向根复合体312发送快速失效同步完成消息。根复合体312等待所有先前已发布或未发布的事务完成,或者在向软件通知已接收到并执行了快速失效同步完成消息之前进行冲洗。
当前提议假定端点将接收到所有快速失效请求,并且由此,当端点对快速失效同步消息作出响应时,根复合体假定当端点发送快速失效同步完成消息时所有快速失效消息已经被处理。然而,如果端点未曾接收到快速失效请求消息,则该端点将不对与未接收到的消息相对应的一个或多个已失效地址执行清扫任务,并且该端点将继续具有使用已失效地址的事务。
本公开的示例性方面引入了具有递增标识符的标签,该标签帮助标识损坏或缺失的快速失效请求消息。当端点检测到缺失标签时,端点可采取补救动作。
图5是图4的根复合体402与端点(诸如端点408(M))之间通过开关410的快速失效请求消息以及快速失效同步(sync)消息的简化信号流图500,所有这些消息具有其中含有用于缺失消息检测的递增标识符的标签(有时被称为递增标签)。图5假定了其中根复合体402和端点408(M)之间不存在丢失或损坏的信号的系统。由此,根复合体402发送快速失效同步消息502,快速失效同步消息502具有含有递增标识符的标签(例如,S-Tag=68)。这使得端点408(M)完成针对任何先前接收到的失效请求消息的其所有清扫任务(例如,清除ATC,将所有未公布和已公布的任务推给根复合体,等等)。在完成针对自上次同步以来(或如果尚无先前同步,则从S-Tag=1)的所有未完结快速失效请求消息的清扫任务时,端点408(M)发送使用与同步消息502中所使用的相同递增标识符(即,S-Tag=68)的快速失效同步完成消息504。随后,根复合体402发送具有含有经递增的标识符(例如,S-Tag=69)的标签的附加快速失效请求消息506、具有经递增的标识符(例如,S-Tag=70)的快速失效请求消息508、以及具有经递增的标识符(例如,S-Tag=71)的快速失效请求消息510。根复合体402随后发送使用上一标识符(例如,S-Tag=71)的快速失效同步消息512。在信号流500中,所有失效请求消息在端点408(M)处被接收,并且端点408(M)发送具有与同步消息相对应的标识符(例如,S-Tag=71)的快速失效同步完成消息514。注意,这些标识符在消息中的标签中。
在本公开的示例性方面,端点408(M)可将来自标签的标识符存储在寄存器中,设置关于已接收到它们的标志,将计数器递增,或以其他方式确定已接收到给定S-Tag。
虽然信号流500假定了所有失效请求消息都已被接收,但本公开的示例性方面提供了供端点408(M)向根复合体402指示并非所有失效请求都已被接收的机制。就此而言,图6是快速失效消息的简化信号流600,其中一个快速失效消息在到达端点之前被丢失或损坏,由此从该端点排除快速失效同步消息并触发所有居间快速失效请求消息的重新发送。信号流600非常类似于图5的信号流500地开始于根复合体402发送消息502、504、506、508、510和512。然而,请求消息508未被端点408(M)接收到。由此,当同步消息512被发送时,端点408(M)确定并非每个消息都已被接收到。例如,寄存器可示出只接收到两个请求,但经递增的标识符示出发送了三个消息。可做出标识符与寄存器中的标志的比较。无论该确定是如何做出的,端点408(M)都不发送同步完成消息(例如,信号流500的同步完成消息514)。在未接收到同步完成消息的情况下在预定时间量之后,根复合体402以消息602、604和606的形式重新发送在标签中具有递增标识符的快速失效请求消息连同另一同步消息608。例如,消息602、604和606被端点408(M)接收到,并且端点408(M)发送具有与上一经递增的标识符相对应的标识符(S-Tag=71)的同步完成消息610。如果消息602、604和606之中的一者或多者未被接收到,则将发生另一超时。
其中每个快速失效请求消息被重新发送的信号流600对计算设备施加了信令惩罚。另外,在发送同步消息512后等待一超时所花费的时段减慢了操作。相应地,本公开的替换示例性方面在检测到缺失的失效请求消息时发送警告。就此而言,图7是快速失效消息的简化信号流700,其中一个快速失效消息在到达端点408(M)之前被丢失或损坏,从而使端点408(M)向根复合体402发信令通知该消息的丢失。信号流700等同于图5的信号流500地开始于消息502、504、506、508和510。然而,如同图6的信号流600一样,消息508在到达端点408(M)之前被丢失或损坏。在接收到在标签中具有比所接收的上一标识符高不止1的经递增标识符的消息510时(例如,消息510中的S-Tag=71反映了缺失的消息508的S-Tag 70),端点408(M)就生成出错消息702并将出错消息702发送给根复合体402。在一示例性方面,出错消息702通过使用标签中的标识符来指示哪一消息缺失。响应于接收到出错消息702,根复合体402至少重新发送具有已知的缺失标识符(S-Tag=70)的缺失快速失效请求消息704,并且可以可任选地重新发送快速失效请求消息706(S-Tag=71)。根复合体402随后发送快速失效同步消息(S-Tag=71)512,并且端点408(M)在现在已经接收到所有失效请求消息的情况下发送同步完成消息514。
作为信号流700的替换方案,端点408(M)可在发送出错消息之前等待直到同步信号512。这一办法类似于图6的信号流600,但并不等待一超时来重新发送消息。就此而言,图8是快速失效消息的简化信号流800,其中一个快速失效消息在到达端点之前被丢失或破坏,从而使该端点在接收到来自根复合体的快速失效同步消息之后发信令通知其缺失了特定消息。信号流800类似于信号流500地开始于消息502、504、506、508、510和512。然而,例如,消息508未被端点408(M)接收到。在接收到同步消息512时,端点408(M)就发送出错消息802。出错消息802可指示自上一同步消息502以来未曾接收到哪些标识符。取决于出错消息802中有什么信息,根复合体402随后可将针对自上次成功同步以来的所有请求的快速失效请求作为消息804、806和808来重新发送。替换地,如果出错消息802以足够的准确度指示未曾接收到哪些请求,则只重新发送该请求(例如,消息806)。或者,作为另一选项,重新发送缺失消息和所有后续消息(例如,消息806和808)。另一同步消息810被发送,并且端点408(M)现在发送同步完成消息514。
虽然存在可以实现具有递增标识符的标签的众多方式,但参照图9提供了其中具有增量标识符的示例性PCIe帧。具体而言,图9解说了PCIe分组900,其具有可在其中放置形成本公开的标签的标识符的字段902。注意,虽然字段902被认为是适合于插入标识符的,但可以使用其他位置而不会脱离本公开的范围。
图10A-10C提供了分别对应于图6-8的信号流的流程图。就此而言,图10A解说了RC发起ATS并填充ATC(框1002)的过程1000A。RC向一个或多个EP发送消息(框1004)。RC发送具有S-Tag=1的第一快速失效请求消息(框1006)。RC随后发送具有递增了的S-Tag(即,可递增标识符)的下一快速失效请求消息(框1008)。RC确定是否到了要进行同步的时间(框1010)。只要回答为否,RC就将继续发送接下来的各自具有经递增的S-Tag的快速失效请求消息。
继续参照图10A,一旦对框1010的回答为是,则RC发送具有与上一消息S-Tag值相等的S-Tag的快速失效同步消息(框1012)(消息502)。EP完成清扫并发送具有与同步消息的S-Tag相等的S-Tag的快速失效同步完成消息(框1014)(消息504)。RC发送具有递增了的S-Tag的下一快速失效请求消息(框1016)(消息506、508和510),同时检查以查看是否到了要进行同步的时间(框1018)。如果在框1018回答为否,则有可能EP未接收到这些请求消息中的一者或多者(框1020)。然而,RC仍发送更多的快速失效请求消息。一旦框1018得到肯定回答,则RC发送具有与上一消息S-Tag值相等的S-Tag的快速失效同步消息(框1022)(消息512)。EP不作出响应且发生超时(框1024)。在RC检测到超时之后,RC重新发送这些消息(框1026)。
图10B的过程1000B类似地开始直至框1016,在框1016之后端点或许不会接收到请求(框1028)。端点将所接收到的S-Tag与经递增的预期S-Tag作比较,以确定是否已接收到这些请求或是否存在S-Tag的不连续性(框1030)。当存在不连续性时,EP发送出错消息(框1032),该出错消息指示一个或多个请求尚未被接收到。根复合体随后重新发送一个或多个请求(框1034)。如上所述,取决于出错消息的详情以及根复合体是否已经发送进一步请求(以及端点是否能存储脱序接收的请求),所重新发送的请求的数目可能有所不同。
类似地,图10C的过程1000C在框1022之前与图10A的过程1000A类似地操作,在那之后,端点发送出错消息(框1036)。取决于出错消息的详情,根复合体重新发送恰适的消息(框1038)。
可在任何基于处理器的设备中提供根据本文中所公开的各方面的PCIe ATS中的快速失效或者将其集成到任何基于处理器的设备中。不作为限定的示例包括:机顶盒、娱乐单元、导航设备、通信设备、固定位置数据单元、移动位置数据单元、全球定位系统(GPS)设备、移动电话、蜂窝电话、智能电话、会话发起协议(SIP)电话、平板设备、平板手机、服务器、计算机、便携式计算机、移动计算设备、可穿戴计算设备(例如,智能手表、保健或健康跟踪器、眼镜,等等)、台式计算机、个人数字助理(PDA)、监视器、计算机监视器、电视机、调谐器、无线电设备、卫星无线电设备、音乐播放器、数字音乐播放器、便携式音乐播放器、数字视频播放器、视频播放器、数字视频碟(DVD)播放器、便携式数字视频播放器、汽车、车载组件、航空电子系统、无人机、以及多旋翼飞行器。
就此而言,图11是示例性移动终端1100(诸如智能电话、移动计算设备、平板设备等)的系统级框图。虽然尤其构想了移动终端能够受益于本公开的诸示例性方面,但应当领会,本公开不限于此并且在具有PCIe链路的任何系统中可以是有用的。
继续参照图11,移动终端1100包括应用处理器1104(有时被称为主机),该应用处理器1104通过通用闪存(UFS)总线1108与大容量存储元件1106通信。应用处理器1104可进一步通过显示器串行接口(DSI)总线1112连接到显示器1110并且通过相机串行接口(CSI)总线1116连接到相机1114。各种音频元件(诸如话筒1118、扬声器1120、以及音频编解码器1122)可通过串行低功率芯片间多媒体总线(SLIMbus)1124被耦合到应用处理器1104。另外,这些音频元件可通过SOUNDWIRE NEXT总线1126彼此通信。调制解调器1128也可被耦合到SLIMbus 1124。调制解调器1128可进一步通过外围组件互连(PCI)或高速PCI(PCIe)总线1130和/或系统功率管理接口(SPMI)总线1132连接到应用处理器1104。PCIe总线1130可受益于以上提供的本公开的诸示例性方面。
继续参照图11,SPMI总线1132还可被耦合到局域网(LAN)集成电路(IC)(LAN IC)1134、功率管理集成电路(PMIC)1136、伴随集成电路(有时被称为桥接芯片)1138、以及射频集成电路(RFIC)1140。应当领会,分开的PCI总线1142和1144也可以将应用处理器1104耦合到伴随集成电路1138和LAN IC 1134。应用处理器1104可进一步通过传感器总线1148连接到传感器1146。调制解调器1128和RFIC 1140可以使用总线1150进行通信。
继续参照图11,RFIC 1140可通过射频前端(RFFE)总线1157耦合到一个或多个RFFE元件,诸如天线调谐器1152、开关1154、以及功率放大器1156。另外,RFIC 1140可通过总线1160耦合到包络跟踪电源(ETPS)1158,并且ETPS 1158可以与功率放大器1156通信。这些RFFE元件(包括RFIC 1140)一起可被认为是RFFE系统1162。应当领会,RFFE总线1157可由时钟线和数据线(未解说)形成。
本领域技术人员将进一步领会,结合本文所公开的各方面描述的各种解说性逻辑块、模块、电路和算法可被实现为电子硬件、存储在存储器中或另一计算机可读介质中并由处理器或其他处理设备执行的指令、或这两者的组合。作为示例,本文中描述的设备可被用在任何电路、硬件组件、IC、或IC芯片中。本文中所公开的存储器可以是任何类型和大小的存储器,且可配置成存储所需的任何类型的信息。为清楚地解说这种可互换性,各种解说性组件、框、模块、电路和步骤在上文已经以其功能性的形式一般性地作了描述。此类功能性如何被实现取决于具体应用、设计选择、和/或加诸于整体系统上的设计约束。技术人员可针对每种特定应用以不同方式来实现所描述的功能性,但此类实现决策不应被解读为致使脱离本公开的范围。
结合本文中所公开的各方面描述的各种解说性逻辑块、模块、以及电路可用设计成执行本文中描述的功能的处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其他可编程逻辑器件、分立的门或晶体管逻辑、分立的硬件组件、或其任何组合来实现或执行。处理器可以是微处理器,但在替换方案中,处理器可以是任何常规处理器、控制器、微控制器或状态机。处理器还可以被实现为计算设备的组合(例如DSP与微处理器的组合、多个微处理器、与DSP核协作的一个或多个微处理器、或任何其他此类配置)。
本文所公开的各方面可被体现为硬件和存储在硬件中的指令,并且可驻留在例如随机存取存储器(RAM)、闪存、只读存储器(ROM)、电可编程ROM(EPROM)、电可擦可编程ROM(EEPROM)、寄存器、硬盘、可移动盘、CD-ROM、或本领域中所知的任何其它形式的计算机可读介质中。示例性存储介质被耦合至处理器,以使得处理器能从/向该存储介质读取信息和写入信息。替换地,存储介质可被整合到处理器。处理器和存储介质可驻留在ASIC中。ASIC可驻留在远程站中。在替换方案中,处理器和存储介质可作为分立组件驻留在远程站、基站或服务器中。
还注意到,本文任何示例性方面中描述的操作步骤是为了提供示例和讨论而被描述的。所描述的操作可按除了所解说的顺序之外的众多不同顺序来执行。此外,在单个操作步骤中描述的操作实际上可在数个不同步骤中执行。另外,示例性方面中讨论的一个或多个操作步骤可被组合。应理解,如对本领域技术人员显而易见地,在流程图中解说的操作步骤可进行众多不同的修改。本领域技术人员还将理解,可使用各种不同技术和技艺中的任何一种来表示信息和信号。例如,贯穿上面说明始终可能被述及的数据、指令、命令、信息、信号、比特、码元和码片可由电压、电流、电磁波、磁场或磁粒子、光场或光粒子、或其任何组合来表示。
提供对本公开的先前描述是为使得本领域任何技术人员皆能够制作或使用本公开。对本公开的各种修改对于本领域技术人员将是显而易见的,并且本文中所定义的普适原理可被应用于其他变形。由此,本公开并非旨在被限定于本文中所描述的示例和设计,而是应被授予与本文中所公开的原理和新颖特征一致的最广义的范围。

Claims (35)

1.一种在通信链路上进行通信的方法,包括:
将包括递增标识符的标签插入到与地址转译表相关的一系列快速失效请求消息之中的每个快速失效请求消息中;以及
基于缺失的递增标识符来检测缺失或损坏的快速失效请求消息。
2.如权利要求1所述的方法,其特征在于,进一步包括:在检测到所述缺失或损坏的快速失效请求消息时向主机发送出错消息。
3.如权利要求1所述的方法,其特征在于,进一步包括:在接收到快速失效同步消息之后发送出错消息。
4.如权利要求1所述的方法,其特征在于,进一步包括:接收在超时时段之后重新发送的快速失效请求消息。
5.如权利要求1所述的方法,其特征在于,插入所述标签包括:在与高速外围组件互连(PCI)(PCIe)链路相关联的根复合体处插入所述标签。
6.如权利要求1所述的方法,其特征在于,检测所述缺失或损坏的快速失效请求消息包括:在与高速外围组件互连(PCI)(PCIe)链路相关联的端点处进行检测。
7.如权利要求1所述的方法,其特征在于,进一步包括:将递增标识符存储在端点处的寄存器中。
8.如权利要求1所述的方法,其特征在于,进一步包括:在所述通信链路上从根复合体向端点发送所述一系列快速失效请求消息之中具有相应标签的至少一个快速失效请求消息。
9.如权利要求8所述的方法,其特征在于,进一步包括:在所述端点处接收所述一系列快速失效请求消息之中的所述至少一个快速失效请求消息。
10.如权利要求8所述的方法,其特征在于,进一步包括:通过中间开关来传递所述一系列快速失效请求消息之中的所述至少一个快速失效请求消息。
11.一种通信系统,包括:
通信链路;
根复合体,其包括:
链路接口,其被配置成耦合到所述通信链路;以及
控制系统,其被配置成:
将包括递增标识符的标签插入到与地址转译表相关的一系列快速失效请求消息之中的每个快速失效请求消息中;以及
在所述通信链路上发送所述一系列快速失效请求消息;以及
端点,其包括:
端点链路接口,其被配置成耦合到所述通信链路;以及
端点控制系统,其被配置成:
在所述通信链路上接收所述一系列快速失效请求消息;以及
基于缺失的递增标识符来检测所述一系列快速失效请求消息之内缺失或损坏的快速失效请求消息。
12.如权利要求11所述的通信系统,其特征在于,所述通信链路包括高速外围组件互连(PCI)(PCIe)链路。
13.如权利要求11所述的通信系统,其特征在于,所述通信链路包括中间开关。
14.如权利要求11所述的通信系统,其特征在于,所述端点控制系统被进一步配置成:在检测到所述缺失或损坏的快速失效请求消息时向所述根复合体发送出错消息。
15.如权利要求11所述的通信系统,其特征在于,所述端点控制系统被进一步配置成:在接收到来自所述根复合体的快速失效同步消息之后发送出错消息。
16.如权利要求11所述的通信系统,其特征在于,所述控制系统被进一步配置成:在超时时段之后重新发送快速失效请求消息。
17.如权利要求11所述的通信系统,其特征在于,所述端点进一步包括:寄存器,其被配置成存储递增标识符。
18.如权利要求11所述的通信系统,其特征在于,包括选自包括以下各项的组的设备:机顶盒、娱乐单元、导航设备、通信设备、固定位置数据单元、移动位置数据单元、全球定位系统(GPS)设备、移动电话、蜂窝电话、智能电话、会话发起协议(SIP)电话、平板设备、平板手机、服务器、计算机、便携式计算机、移动计算设备、可穿戴计算设备、台式计算机、个人数字助理(PDA)、监视器、计算机监视器、电视机、调谐器、无线电设备、卫星无线电设备、音乐播放器、数字音乐播放器、便携式音乐播放器、数字视频播放器、视频播放器、数字视频碟(DVD)播放器、便携式数字视频播放器、汽车、车载组件、航空电子系统、无人机、以及多旋翼飞行器。
19.一种装置,包括:
根复合体,其包括:
链路接口,其被配置成耦合到通信链路;以及
控制系统,其被配置成:
将包括递增标识符的标签插入到与地址转译表相关的一系列快速失效请求消息之中的每个快速失效请求消息中;以及
在所述通信链路上发送所述一系列快速失效请求消息。
20.如权利要求19所述的装置,其特征在于,所述控制系统被进一步配置成:在超时时段之后重新发送快速失效请求消息。
21.如权利要求19所述的装置,其特征在于,所述控制系统被进一步配置成:在所述通信链路上从端点接收出错消息。
22.如权利要求21所述的装置,其特征在于,所述控制系统被进一步配置成:基于所述出错消息而重新发送所述一系列快速失效请求消息之中的特定快速失效请求消息。
23.如权利要求19所述的装置,其特征在于,所述控制系统被进一步配置成:发送快速失效同步消息。
24.如权利要求23所述的装置,其特征在于,所述控制系统被进一步配置成:在发送所述快速失效同步消息之后接收出错消息。
25.如权利要求19所述的装置,其特征在于,进一步包括:包括所述根复合体的集成电路(IC)。
26.如权利要求19所述的装置,其特征在于,进一步包括选自包括以下各项的组的设备:机顶盒、娱乐单元、导航设备、通信设备、固定位置数据单元、移动位置数据单元、全球定位系统(GPS)设备、移动电话、蜂窝电话、智能电话、会话发起协议(SIP)电话、平板设备、平板手机、服务器、计算机、便携式计算机、移动计算设备、可穿戴计算设备、台式计算机、个人数字助理(PDA)、监视器、计算机监视器、电视机、调谐器、无线电设备、卫星无线电设备、音乐播放器、数字音乐播放器、便携式音乐播放器、数字视频播放器、视频播放器、数字视频碟(DVD)播放器、便携式数字视频播放器、汽车、车载组件、航空电子系统、无人机、以及多旋翼飞行器。
27.一种装置,包括:
端点,其包括:
端点链路接口,其被配置成耦合到通信链路;以及
端点控制系统,其被配置成:
在所述通信链路上接收一系列快速失效请求消息;以及
基于缺失的递增标识符来检测所述一系列快速失效请求消息之内缺失或损坏的快速失效请求消息。
28.如权利要求27所述的装置,其特征在于,所述端点进一步包括:寄存器,其用于存储递增标识符。
29.如权利要求27所述的装置,其特征在于,所述端点控制系统被进一步配置成:在检测到所述缺失或损坏的快速失效请求消息之后发送出错消息。
30.如权利要求29所述的装置,其特征在于,所述端点控制系统被进一步配置成:在接收到快速失效同步消息之后发送所述出错消息。
31.如权利要求27所述的装置,其特征在于,所述端点控制系统被进一步配置成:接收重新发送的快速失效请求消息。
32.如权利要求27所述的装置,其特征在于,进一步包括:包括所述端点的集成电路(IC)。
33.如权利要求27所述的装置,其特征在于,进一步包括选自包括以下各项的组的设备:机顶盒、娱乐单元、导航设备、通信设备、固定位置数据单元、移动位置数据单元、全球定位系统(GPS)设备、移动电话、蜂窝电话、智能电话、会话发起协议(SIP)电话、平板设备、平板手机、服务器、计算机、便携式计算机、移动计算设备、可穿戴计算设备、台式计算机、个人数字助理(PDA)、监视器、计算机监视器、电视机、调谐器、无线电设备、卫星无线电设备、音乐播放器、数字音乐播放器、便携式音乐播放器、数字视频播放器、视频播放器、数字视频碟(DVD)播放器、便携式数字视频播放器、汽车、车载组件、航空电子系统、无人机、以及多旋翼飞行器。
34.一种用于在通信链路上进行通信的方法,包括:
将包括递增标识符的标签插入到与地址转译表相关的一系列快速失效请求消息之中的每个快速失效请求消息中;以及
在所述通信链路上发送所述一系列快速失效请求消息。
35.一种用于在通信链路上进行通信的方法,包括:
在所述通信链路上接收一系列快速失效请求消息;以及
基于缺失的递增标识符来检测所述一系列快速失效请求消息之内缺失或损坏的快速失效请求消息。
CN201880075493.1A 2018-01-04 2018-12-19 高速外围组件互连(PCI)(PCIe)地址转译服务(ATS)中的快速失效 Active CN111373382B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201862613602P 2018-01-04 2018-01-04
US62/613,602 2018-01-04
US16/223,364 US10585734B2 (en) 2018-01-04 2018-12-18 Fast invalidation in peripheral component interconnect (PCI) express (PCIe) address translation services (ATS)
US16/223,364 2018-12-18
PCT/US2018/066399 WO2019135909A1 (en) 2018-01-04 2018-12-19 FAST INVALIDATION IN PERIPHERAL COMPONENT INTERCONNECT (PCI) EXPRESS (PCIe) ADDRESS TRANSLATION SERVICES (ATS)

Publications (2)

Publication Number Publication Date
CN111373382A CN111373382A (zh) 2020-07-03
CN111373382B true CN111373382B (zh) 2023-08-15

Family

ID=67059607

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880075493.1A Active CN111373382B (zh) 2018-01-04 2018-12-19 高速外围组件互连(PCI)(PCIe)地址转译服务(ATS)中的快速失效

Country Status (5)

Country Link
US (1) US10585734B2 (zh)
EP (1) EP3735637A1 (zh)
CN (1) CN111373382B (zh)
TW (1) TWI778195B (zh)
WO (1) WO2019135909A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10938875B2 (en) * 2019-04-26 2021-03-02 Dell Products L.P. Multi-processor/endpoint data duplicating system
US11593281B2 (en) * 2019-05-08 2023-02-28 Hewlett Packard Enterprise Development Lp Device supporting ordered and unordered transaction classes
CN112749121A (zh) * 2019-10-31 2021-05-04 中兴通讯股份有限公司 基于pcie总线的多芯片互联系统
CN112667561B (zh) * 2020-12-29 2024-05-31 成都旋极历通信息技术有限公司 一种在fpga中实现ufs阵列控制器的方法
CN113297105B (zh) * 2021-05-08 2024-01-09 阿里巴巴新加坡控股有限公司 一种转换地址的缓存处理方法及装置
KR20230105441A (ko) 2022-01-04 2023-07-11 삼성전자주식회사 스토리지 시스템과 장치 및 그 동작 방법
US11663157B1 (en) * 2022-12-22 2023-05-30 IQ-Analog Corporation Joint electron devices engineering council (JESD)204-to-peripheral component interconnect express (PCIe) interface

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101165663A (zh) * 2006-10-17 2008-04-23 国际商业机器公司 使用高速缓存的地址转换与i/o适配器进行通信的装置、方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6728210B1 (en) * 1998-12-21 2004-04-27 Nec America, Inc. Multi-logical access for a serial data link
US6725337B1 (en) * 2001-05-16 2004-04-20 Advanced Micro Devices, Inc. Method and system for speculatively invalidating lines in a cache
US7334107B2 (en) * 2004-09-30 2008-02-19 Intel Corporation Caching support for direct memory access address translation
US7246191B2 (en) * 2005-03-31 2007-07-17 Intel Corporation Method and apparatus for memory interface
US8301839B2 (en) 2005-12-30 2012-10-30 Citrix Systems, Inc. System and method for performing granular invalidation of cached dynamically generated objects in a data communication network
US7707383B2 (en) 2006-11-21 2010-04-27 Intel Corporation Address translation performance in virtualized environments
US8171230B2 (en) 2007-12-03 2012-05-01 International Business Machines Corporation PCI express address translation services invalidation synchronization with TCE invalidation
US9400555B2 (en) * 2008-10-10 2016-07-26 Internet Services, Llc System and method for synchronization of haptic data and media data
US8880771B2 (en) * 2012-10-25 2014-11-04 Plx Technology, Inc. Method and apparatus for securing and segregating host to host messaging on PCIe fabric
US20150103822A1 (en) * 2013-10-15 2015-04-16 Netspeed Systems Noc interface protocol adaptive to varied host interface protocols
US10042777B2 (en) 2016-03-30 2018-08-07 Qualcomm Incorporated Hardware-based translation lookaside buffer (TLB) invalidation
US10176006B2 (en) 2016-07-18 2019-01-08 International Business Machines Corporation Delaying purging of structures associated with address translation
US20180288179A1 (en) * 2017-04-03 2018-10-04 Randeep S. Bhatia Proxy for serving internet-of-things (iot) devices
US10505677B2 (en) * 2017-10-29 2019-12-10 Mellanox Technologies, Ltd. Fast detection and retransmission of dropped last packet in a flow

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101165663A (zh) * 2006-10-17 2008-04-23 国际商业机器公司 使用高速缓存的地址转换与i/o适配器进行通信的装置、方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Address Tranlation Services Revision 1.1.PCI Express.2009,第12-13、17-18、31-32页,图1-1、1-2、1-4、1-5、3-1. *

Also Published As

Publication number Publication date
EP3735637A1 (en) 2020-11-11
CN111373382A (zh) 2020-07-03
TW201933123A (zh) 2019-08-16
WO2019135909A1 (en) 2019-07-11
TWI778195B (zh) 2022-09-21
US20190205278A1 (en) 2019-07-04
US10585734B2 (en) 2020-03-10

Similar Documents

Publication Publication Date Title
CN111373382B (zh) 高速外围组件互连(PCI)(PCIe)地址转译服务(ATS)中的快速失效
CN107771325B (zh) 在高速外围组件互连(pcie)系统中传达因事务而异的属性
JP6517243B2 (ja) リンクレイヤ/物理レイヤ(phy)シリアルインターフェース
EP3279801B1 (en) Removable memory card discrimination systems and methods
KR101919433B1 (ko) 무선 네트워크 환경에서 기지국으로 mdt 측정 정보를 제공하는 방법 및 시스템
CN105556497A (zh) 查明闪存中的命令完成
WO2015195784A1 (en) Systems and methods for providing power savings and interference mitigation on physical transmission media
US7822903B2 (en) Single bus command having transfer information for transferring data in a processing system
CN112639753B (zh) 聚合带内中断
EP2360599A2 (en) Cooperative writes over the address channel of a bus
EP4189549B1 (en) Expanded function datagram in a system power management interface (spmi) system
CN110941578B (zh) 一种具有dma功能的lio的设计方法及装置
US20050108454A1 (en) Method and apparatus for providing an inter integrated circuit interface with an expanded address range and efficient priority-based data throughput
US20130346635A1 (en) Assigning Addresses To Devices On An Interconnect
US7822040B2 (en) Method for increasing network transmission efficiency by increasing a data updating rate of a memory
JP2016540300A (ja) 低電圧セキュアデジタル(sd)インターフェースのためのシステムおよび方法
WO2020102037A1 (en) Reducing latency on long distance point-to-point links
TW202326438A (zh) 用於快速記憶體存取的系統和方法
CN101013935A (zh) 数据传输的方法和接收装置及系统
WO2022039881A1 (en) I3c pending read with retransmission
US20230185484A1 (en) System and method for managing transactions in integrated circuits
US11327922B2 (en) Bus ownership for a system power management interface (SPMI) bus
CN117648209A (zh) 一种fpga和arm高速通信的方法、系统

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