CN113196254A - 增强速度模式下的数据通信 - Google Patents

增强速度模式下的数据通信 Download PDF

Info

Publication number
CN113196254A
CN113196254A CN201980082732.0A CN201980082732A CN113196254A CN 113196254 A CN113196254 A CN 113196254A CN 201980082732 A CN201980082732 A CN 201980082732A CN 113196254 A CN113196254 A CN 113196254A
Authority
CN
China
Prior art keywords
speed
pcie
controller
link
enhanced
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.)
Pending
Application number
CN201980082732.0A
Other languages
English (en)
Inventor
戈登·卡鲁克
格拉德·R·塔尔伯特
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.)
ATI Technologies ULC
Advanced Micro Devices Inc
Original Assignee
ATI Technologies ULC
Advanced Micro Devices 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 ATI Technologies ULC, Advanced Micro Devices Inc filed Critical ATI Technologies ULC
Publication of CN113196254A publication Critical patent/CN113196254A/zh
Pending legal-status Critical Current

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/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
    • 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/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • 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/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/124Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
    • G06F13/126Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine and has means for transferring I/O instructions and statuses between control unit and main processor
    • 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
    • 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
    • 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/4027Coupling between buses using bus bridges
    • G06F13/404Coupling between buses using bus bridges with address mapping
    • 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/4027Coupling between buses using bus bridges
    • G06F13/4045Coupling between buses using bus bridges where the bus bridge performs an extender function
    • 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/4265Bus transfer protocol, e.g. handshake; Synchronisation on a point to point bus
    • G06F13/4278Bus transfer protocol, e.g. handshake; Synchronisation on a point to point bus using an embedded synchronisation
    • 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)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Mathematical Physics (AREA)
  • Information Transfer Systems (AREA)
  • Communication Control (AREA)

Abstract

一种互连控制器包括:数据链路层控制器,所述数据链路层控制器耦合到事务层,其中所述数据链路层控制器选择性地从所述事务层接收数据分组并将所述数据分组发送到所述事务层;以及物理层控制器,所述物理层控制器耦合到所述数据链路层控制器和通信链路。所述物理层控制器选择性地以第一预定链路速度操作。所述物理层控制器具有增强速度模式,其中响应于执行链路初始化,所述互连控制器查询数据处理平台以确定是否允许所述增强速度模式,执行至少一个设置操作以选择增强速度,其中所述增强速度大于所述第一预定链路速度,并且随后使用所述增强速度操作所述通信链路。

Description

增强速度模式下的数据通信
背景技术
数据通信系统常规上被设计成遵守已发布的通信标准,因此一个制造商的部件可以与不同制造商的部件进行互操作。例如,许多现代计算装置利用输入/输出(I/O)适配器和总线,所述I/O适配器和总线利用外围部件互连(PCI)或PCI Express(PCIe)互连标准的某一版本或实现方式。PCIe标准指定用于将外围装置附接到主计算机的计算机通信互连。PCIe是较早期PCI标准的扩展,所述较早期PCI标准使用现有的PCI编程概念,但是使计算机互连基于更快的物理层通信协议。PCIe物理层由上游装置与下游装置之间的双重单向链路组成。
PCIe标准由外围部件互连特殊兴趣小组(PCI-SIG)发布。PCI-SIG不时地修订标准以反映增强速度和能力。例如,PCIe 1.0在2003年发布并指定每秒2.5千兆次传输(GT/s)的传输速率。PCIe 2.0在2007年推出并提供5.0GT/s传输速率,随后是2010年具有8.0GT/s传输速率的PCIe 3.0和2017年具有16.0GT/s传输速率的PCIe 4.0。因此,所述标准以3至7年周期发布的新版本以较长的离散步长提高传输速率。
同时,半导体制造技术迅速发展。诸如深亚微米光刻法和低压互补金属氧化物半导体(CMOS)晶体管之类的技术提高了处理速度,这使得诸如PCI-SIG之类的标准设置机构难以跟上发展的步伐。
附图说明
图1以框图形式示出了使用现有技术中已知的外围部件接口(PCIe)链路的示例性数据处理平台;
图2以框图形式示出了根据一些实施例的使用具有增强速度模式(ESM)的PCIe链路的数据处理平台的一部分;
图3以框图形式示出了根据一些实施例的适用于图2的数据处理平台的具有增强速度模式的互连控制器;
图4示出了根据一些实施例的由图3的互连控制器执行的链路初始化设置的流程图;
图5示出了根据示例性实施例的图3的互连控制器的增强能力描述符;
图6示出了图5的扩展能力描述符的PCIe扩展能力报头;
图7示出了地址映射图,所述地址映射图示出了图2的PCIe根联合体使用当前的扩展能力描述符定位后续的扩展能力描述符;
图8示出了图5的扩展能力描述符的PCIe ESM报头1;
图9示出了图5的扩展能力描述符的PCIe ESM报头2;
图10示出了图5的扩展能力描述符的ESM状态寄存器;
图11示出了图5的扩展能力描述符的ESM控制寄存器;
图12示出了图5的扩展能力描述符的ESM能力1寄存器;
图13示出了图5的扩展能力描述符的ESM能力7寄存器;并且
图14示出了示出图3的互连控制器的初始化的时序图;并且
图15以框图形式示出了根据一些实施例的支持PCIe事务层或CCIX事务层的通信控制器。
在以下描述中,不同附图中使用的相同的附图标记来指示类似或相同的项目。除非另外指出,否则词语“耦合”及其相关动词形式包括直接连接和通过本领域中已知的装置进行的间接电气连接这两者,并且除非另外指出,否则对直接连接的任何描述也意味着使用适当形式的间接电气连接的替代实施例。
具体实施方式
用于数据处理平台的互连控制器包括数据链路层控制器和物理层控制器。数据链路层控制器耦合到事务层,其中数据链路层控制器选择性地从事务层接收数据分组并将数据分组发送到事务层。物理层控制器耦合到数据链路层控制器并且耦合到通信链路。物理层控制器选择性以由已发布标准指定的第一预定链路速度操作。物理层控制器具有增强速度模式,其中响应于执行链路初始化,互连控制器查询数据处理平台以确定是否允许增强速度模式,执行至少一个设置操作以选择增强速度,其中增强速度大于第一预定链路速度且并非由已发布标准指定,并且随后使用增强速度操作通信链路。
数据处理平台包括基本输入/输出系统(BIOS)和数据处理器。数据处理器包括中央处理单元和外围部件互连Express(PCIe)根联合体。中央处理单元耦合到BIOS并响应于BIOS以执行初始化程序。PCIe根联合体耦合到中央处理单元并且包括耦合到PCIe网络的第一PCIe端口控制器。第一PCIe端口控制器支持由已发布标准指定的第一预定链路速度以及增强速度模式。BIOS包括指令,所述指令在由中央处理单元执行时使PCIe根联合体查询数据处理平台以确定是否允许增强速度模式,执行至少一个设置操作以选择增强速度,其中增强速度大于第一预定链路速度且并非由已发布标准指定,并且随后使用增强速度来操作到PCIe网络的通信链路。
一种用于在具有根据已发布标准操作通信链路的互连控制器的数据处理平台中使用的方法包括查询数据处理平台以确定是否允许增强速度模式。执行至少一个设置操作以选择增强速度,其中增强速度并非由已发布标准指定并且大于由已发布标准指定的第一预定链路速度。随后使用增强速度来操作通信链路。
图1以框图形式示出了使用外围部件接口(PCI)Express(PCIe)链路的示例性数据处理平台100。数据处理平台100通常包括中央处理器(CPU)110、存储器120、PCIe端点130、PCI/PCIe桥接器140、交换机150、传统端点(legacy endpoint)160和170以及PCIe端点180和190。
CPU 110包括几个部件,所述几个部件包括CPU核心112、根联合体114和与本公开不相关并且为了便于讨论而从图1中省略的几个其他部件。CPU核心112通过例如高速缓存和内部数据结构在功能上连接到根联合体114。根联合体114双向地连接到几个PCIe链路,所述PCIe链路包括到PCIe端点130的PCIe链路、到PCI/PCIe桥接器140的PCIe链路和到交换机150的PCIe链路。如图1所示,PCI/PCIe桥接器140依次连接到PCI或PCIe装置142的层次,并且交换机150连接到传统端点160和170以及PCIe端点180和190。
CPU 110还双向地连接到存储器120。尽管图1将存储器120描绘为单个存储器系统,但是它通常包括连接到CPU 110的不同子部件的不同类型的存储器。例如,存储器120的第一部分存储系统基本输入/输出系统(BIOS)122,并且通常被实施为非易失性存储器,并通过系统控制器或“南桥”连接到CPU 110。另一方面,存储器120的第二部分存储操作系统124。操作系统通常被存储在大容量存储介质(诸如硬盘驱动器)上,然后在启动时被加载到更快的易失性随机存取存储器(RAM)中。
在操作中,系统BIOS 122用于启动和初始化数据处理平台100。作为初始化的一部分,系统BIOS 122确定存在于数据处理平台100中的输入/输出(I/O)装置,并继续进行配置PCIe结构的过程,所述过程被称为枚举。系统BIOS 122读取与存在于系统中的每个I/O相关联的配置寄存器以确定它们相应的特性和能力。一旦系统BIOS 122完成枚举系统,初始化根联合体114并执行各种其他启动任务,它就会将控制传输到操作系统124,所述操作系统形成在其中运行应用程序的环境。
多年来,随着集成电路技术能力的发展,PCIe标准已经发生了变化,以允许具有更快且更高的速度和增强能力。然而,标准设置过程相对较慢,落后于集成电路制造技术能力的提高。因此,PCI和PCIe系统尚未无缝地适应利用集成电路技术的发展。
图2以框图形式示出了根据一些实施例的使用具有增强速度模式(ESM)的PCIe链路的数据处理平台200的一部分。数据处理平台通常包括CPU 210、存储器220和PCIe网络230。CPU 210包括CPU核心212、根联合体214和与本讨论不相关并且为了便于讨论而从图2中省略的几个其他部件。如图2所示,根联合体214包括PCIe端口控制器216,但是可以包括其他PCIe端口控制器。PCIe端口控制器216双向地连接到PCIe网络230。图2将PCIe网络230示出为云以突出显示以下事实:在启动时,系统配置是未知的,并且必须通过发现过程来学习,并且互连部件通过枚举来分配系统地址。如图1所示,CPU 210也双向地连接到存储器220,并且存储器220具有存储系统BIOS的第一部分222和存储操作系统的第二部分224。
数据处理平台200与图1的数据处理平台100的不同之处在于它支持增强速度模式(ESM)。ESM扩展了由PCIe标准指定的链路速度,因为它不时地进行修订。具体地,相对于在各种PCIe标准版本中指定的标准速度,ESM允许更高和/或不同的速度。只要PCIe网络230中的链路伙伴也以相同速度支持ESM,就可以在这些增强速度下进行链路操作。增强速度可以采用两种形式中的任一者。首先,增强速度可以高于所述标准中发布的最高支持速度。其次,增强速度可以在由标准指定的两个离散速度之间。
下表I示出了由不同代的已发布PCIe标准支持的速度:
表I
Figure BDA0003112695160000061
在ESM的实现方式的一个示例中,增强速度可以是由已发布的PCIe 2.0标准指定的8.0GT/s至由已发布的PCIe 3.0标准指定的16.0GT/s之间的速度。在另一个示例中,增强速度可以是8.0GT/s至16.0GT/s之间的多个离散速度中的任一者。在又一示例中,增强速度可以是高于由已发布的PCIe 3.0标准指定的16.0GT/s的单个离散速度,诸如25.0GT/s。在又另一示例中,增强速度可以是16.0GT/s至25.0GT/s之间的多个离散速度中的任一者。
通过支持高于已发布的PCIe速度的速度,数据处理平台200允许在两个链路伙伴均支持相同的增强速度能力的PCIe链路上提高数据处理平台的性能。例如,可以将速度设置为由两个链路伙伴均支持的最高速度。因此,ESM允许可扩展性能提高,所述可扩展性能提高不受由所述标准指定的离散速度的限制,而仅受上游端口和下游端口以及与它们相关联的控制器所使用的半导体制造工艺能力的限制。
图3以框图形式示出了根据一些实施例的适用于图2的数据处理平台200的具有增强速度模式的互连控制器300。互连控制器300包括PCIe事务层控制器310、PCIe数据链路层控制器320和PCIe物理层控制器330。
PCIe事务层控制器310具有:上游双向连接,其用于接收数据访问并提供数据响应,在图3中被统一标记为“访问”;以及下游双向连接,其用于提供和接收PCIe数据分组。系统BIOS还提供各种访问以用于查询下游系统部件和枚举系统。数据访问包括从数据访问代理接收的存储器读取、存储器写入以及包括从PCIe端点和完成返回的读取数据响应的响应。PCIe事务层控制器310将存储器访问请求转译为PCIe分组,反之亦然。因此,它从存储器访问代理中抽象出互连协议,即,它为存储器访问代理提供了协议隐秘性。
PCIe数据链路层控制器320具有连接到PCIe事务层控制器310的下游端口的双向上游端口,以及双向下游端口。它根据开放系统互连(OSI)模型执行链路设置、分组排序、流量控制、重试以及通常与数据链路层相关联的其他特征。PCIe数据链路层控制器320添加报头、控制信息、帧检查序列等以形成它提供给PCIe物理层控制器330的用于访问请求的数据链路层分组,并且处理从PCIe物理层控制器330接收到的数据链路层分组的报头、控制信息和帧检查序列以形成用于访问响应的PCIe分组。
PCIe物理层控制器330具有:上游双向端口,其连接到PCIe数据链路层控制器320的下游双向端口;以及连接到介质340的下游端口,所述下游端口包括被标记为“TX”的单向传输端口和被标记为“RX”的单向接收端口。PCIe物理层控制器330支持如将在下面进一步描述的一种或多种增强速度。
在示例性实施例中,PCIe事务层控制器310、PCIe数据链路层控制器320和PCIe物理层控制器330全部都是CPU芯片上的电路块。然而,互连控制器300的块可以用硬件与软件(例如,操作系统驱动器)的各种组合来实施。例如,PCIe物理层控制器330可以在硬件中实施,而PCIe事务层控制器310可以在软件中实施,而PCIe数据链路层控制器320可以部分地在硬件并部分地在软件中实施。
图4示出了根据一些实施例的由图3的互连控制器300执行的链路初始化设置的流程图400。在初始化时,互连控制器300按顺序使用动作框410、420和430初始化与它连接的链路。
在动作框410中,系统BIOS控制互连控制器300以查询数据处理平台200以确定是否允许ESM。查询平台涉及枚举总线层次结构以检测平台为允许使用ESM的类型。这种允许涉及首先确定启用平台用于ESM操作,其次确定在链路的与互连控制器300连接的另一端存在能够进行ESM操作的端口。
在动作框420中,系统BIOS控制互连控制器300以执行设置程序使用ESM。一旦确定将要运行ESM,一个部件或另一部件、两个部件或没有部件可能需要在实际上在ESM中运行之间进行某种设置。互连控制器300响应于诸如系统BIOS之类的软件写入其配置寄存器以在上游端口(USP)和下游端口(DSP)两者中启用ESM而开始所述过程的设置阶段。对于支持ESM的端口,可以在将ESM控制寄存器的“ESM使能”位被写入“1”时进行设置。对于不支持ESM的端口,可以使用供应商特定的启动程序寄存器。DSP中的启动程序寄存器必须在USP中的启动程序之前被写入,因为在USP中写入寄存器还会启动到如PCIe标准中定义的链路状态L1和电气空闲(EI)总线状态的转变。
写入启动程序寄存器会触发以下序列。首先,互连控制器300设置变量,所述变量使互连控制器仅在链路处于LinkUp状态的同时在下一次出现端口的发射器进入EI状态并且其接收器检测到EIOS或者检测或推断EI时才执行准备进入ESM所需的设置。其次,对于支持ESM的USP,指示链路控制器启动进入L1状态的条目。不支持ESM的USP将进入D3热码状态以使其转变为软件定向L1链路状态。第三,互连控制器300执行所需环境改变,例如改变电压、重新校准物理层控制器(PHY)和其他硬件等。
随后,每次启动程序位被写入“1”时,都会触发这种序列,并且互连控制器300执行设置。仅在写入启动程序寄存器后才在第一次转变到EI状态时执行设置,并且所有后续EI出现均表现正常,并且不会触发该设置程序。
在动作框430中,互连控制器300以选定的ESM数据速率来操作链路。因此,所述链路能够实现的性能超出了在已发布标准中指定的性能、仅受链路两端的电路所使用的处理技术能力的限制而不受发布如PCI-SIG之类的标准设置组织的技术标准所必需的任意速度定义的限制。
示例性PCIe实现方式
现在将参考特定示例来解释PCIe中ESM的实现方式的细节。
图5示出了根据示例性实施例的图3的互连控制器的扩展能力描述符500。扩展能力描述符500被称为指定供应商特定扩展能力并且包括含有配置信息的11个32位字的集合,其包括:32位PCIe扩展能力报头510;32位ESM报头1 520;32位字530,其包括16位ESM报头2和16位ESM状态寄存器534;32位字540,其包括16位ESM控制寄存器542和被标记有“RsvdP”的16位预留字段544;以及ESM能力寄存器550的集合。ESM能力寄存器550包括ESM能力1寄存器551、ESM能力2寄存器552、ESM能力3寄存器553、ESM能力4寄存器554、ESM能力5寄存器555、ESM能力6寄存器556和ESM能力7寄存器557。扩展能力描述符500被存储在PCIe配置空间中,并且在发现和枚举期间被系统BIOS访问,并定义互连控制器300的支持能力。现在将描述在各种寄存器中使用的位。
图6示出了图5的扩展能力描述符500的PCIe扩展能力报头510。PCIe扩展能力报头510包括在0至15位中的PCIe扩展能力ID字段610、在16至19位中的能力版本612以及在20至31位中的下一能力偏移字段613。PCIe扩展能力ID字段610是0至15位中存储标识号的只读(RO)字段,所述标识号指示扩展能力的本质和格式并且由PCIe SIG定义。能力版本612是16至19位中存储由PCI SIG定义的版本号的RO字段,所述版本号指示所存在的能力结构的版本。下一能力偏移字段620是20至31位中的RO字段,其存储距下一PCI Express能力结构的偏移,或者如果在能力的链接列表中不存在其他项,则存储000h。对于在PCIe配置空间中实施的扩展能力,该偏移将相对于PCI兼容配置空间的开始,因此必须始终为000h(用于终止能力列表)或大于0FFh的偏移。现在将描述BIOS如何使用下一能力偏移613。
图7示出了地址映射图700,所述地址映射图示出了图2的根联合体214如何使用下一能力指针定位后续的扩展能力描述符。地址映射图700包括基地址710,所述基地址在偏移00h处形成PCI兼容配置空间的开始。在基地址710与FFh之间的地址位置720存储扩展能力描述符500的位置。BIOS中的固件访问扩展能力描述符500中的信息。在访问其中的相关信息之后,系统BIOS在偏移00h处从扩展能力描述符500的基地址读取PCIe扩展能力描述符500的20至31位中的“下一能力偏移”。如果该值等于000h,则系统BIOS知道这是端口配置空间中的最后一个扩展能力描述符。如果所述值不等于000h但大于FFh,则系统BIOS将其用作距基地址710的偏移,以查找下一扩展能力描述符740。
图8示出了图5的扩展能力描述符500的PCIe ESM报头1 520。PCIe ESM报头1 520包括在0至15位中的ESM供应商ID字段810、在16至19位中的ESM能力修订820以及在20至31位中的ESM能力长度830。ESM供应商ID字段810被填充有与供应商相对应的唯一编号,所述唯一编号定义扩展能力结构。
ESM能力修订820是指示扩展能力版本的版本号。系统BIOS验证ESM供应商ID和ESM能力ID(参见下文)两者的资格,然后解译该字段。ESM能力长度830指示整个扩展能力数据结构中的字节数量,所述整个扩展能力数据结构包括PCI Express扩展能力报头、ESM报头和ESM寄存器。
图9示出了图5的扩展能力描述符500的PCIe ESM报头2 532。ESM报头2包括在0至15位中用于存储ESM能力ID的单一字段。该字段是供应商定义的ID号,其指示指定供应商特定扩展能力(DVSEC)结构的本质和格式。系统BIOS必须验证ESM供应商ID字段810的资格,然后解译该字段。
图10示出了图5的扩展能力描述符500的ESM状态寄存器534。ESM状态寄存器534占用扩展能力描述符500的字530的前16位,并且包括在0至8位中的EI值1010中的最小时间、在9至11位中的EI刻度1020中的最小时间以及在12至15位中的预留字段。EI值1010中的最小时间和EI刻度1020中的最小时间共同定义EI状态中的最小时间,所述EI状态中的最小时间等于EI值中的最小时间乘以与EI刻度中的最小时间中的位值相对应的乘数。例如,EI刻度中的最小时间可以具有值0以指示乘数为1纳秒(ns),具有值1以指示乘数为32ns,具有值2以指示乘数为1,024ns,具有值3以指示乘数为32,768ns,具有值4以指示乘数为1,045,576ns,并且具有值5以指示乘数为33,554432ns。预留了值6和7。然而,应明白,这些只是示例。
图11示出了图5的扩展能力描述符500的ESM控制寄存器542。ESM控制寄存器542包括在0至6位中的ESM“Gen 3”数据速率字段1110、在7位中的预留字段1120、在8至14位中的ESM“Gen 4”代的数据速率字段1130以及在15位中的ESM使能位。如本文所使用的,Gen 3对应于PCIe 8.0GT/s数据速率,而Gen 4对应于PCIe 16.0GT/s数据速率。ESM Gen 3数据速率字段1110是当速度变化协商到Gen 3数据速率并且在ESM中启用了链路时接口运行的数据速率,以GT/s为单位。在一个示例中,速度等于(64+该字段中的值)*100x106。例如,12.8GT/s=值64。当ESM使能位被设置时,以由该字段定义的数据速率使用ESM来向Gen 3进行速度改变。当ESM使能位被清除时,向Gen 3的速度改变使用正常(非ESM)值并以正常(8.0GT/s)数据速率运行。ESM Gen 4数据速率字段1130是读写字段,其指示当速度变化协商到Gen 4数据速率并且在ESM中启用了链路时接口运行的数据速率,以GT/s为单位。速度等于(128+该字段中的值)*100x106。例如,20.8GT/s=值80。当ESM使能位被设置时,以由该字段定义的数据速率使用ESM来向Gen 4进行速度改变。当ESM使能位被清除时,向Gen 4的速度改变使用正常(非ESM)值并以正常(16.0GT/s)数据速率运行。如果端口不支持Gen 4,则可以将该字段硬连线到000 0000b。ESM使能位1140是启用ESM的读取/写入位。该位的默认值为“0”,并且向该位写入“1”会触发在图4中示出并且在上文描述的ESM初始化序列。
图12示出了图5的扩展能力描述符500的ESM能力1寄存器551。ESM能力1寄存器551是32位寄存器,其具有在0至29位的位置中的30个有效位和在30和31位的位置中的2个预留位。在该示例性实施例中,根联合体214能够以与传输速率100MT/s相对应的增量生成PCIe时钟信号。例如,根联合体214包括具有可编程环路分频器的锁相环(PLL),所述可编程环路分频器能够生成输出PCIe时钟信号,所述输出PCIe时钟信号的频率以8.0GHz的PCIe 3.0代速率开始,而更高的频率在1位的位置中以8.1GT/s开始、在2位的位置中以8.2GT/s开始,依此类推,直到它达到29位的位置中的10.9GT/s。ESM能力1寄存器551是只读能力寄存器;因此,对应位的位置中的“0”指示不支持所述速度下的ESM,而对应位的位置中的“1”指示支持所述速度下的ESM。注意,ESM能力1寄存器551不是独热码寄存器;所有支持的速度用对应位的位置中的“1”指示。ESM能力2寄存器552至ESM能力7寄存器557含有对应的位映射。
图13示出了图5的扩展能力描述符500的ESM能力7寄存器557。ESM能力7寄存器557是32位寄存器,其具有在0至30位的位置中的31个有效位和在31位的位置中的1个预留位。ESM能力7寄存器557指示支持25.0GT/S至28.0GT/s之间的频率在0位的位置中以25.0GT/s开始、在2位的位置中以25.1GT/s开始,以此类推,直到它达到30位的位置中的28.0GT/s。ESM能力7寄存器557是只读能力寄存器;因此,对应位的位置中的“0”指示不支持所述速度下的ESM,而对应位的位置中的“1”指示支持所述速度下的ESM。与ESM能力1寄存器551中一样,ESM能力7寄存器557用对应位的位置中的“1”示出了所有支持速度。
尽管未示出,但是ESM能力2寄存器552、ESM能力3寄存器553、ESM能力4寄存器554、ESM能力5寄存器555和ESM能力6寄存器556具有与ESM能力1寄存器551通常相对应的位分配。ESM能力2寄存器552指示支持11.0GT/2至13.9GT/s之间呈100MT/s增量的传输速率。ESM能力3寄存器553指示支持14.0GT/2至15.9GT/s之间呈100MT/s增量的传输速率,并且与其他寄存器不同的是在20至31位的位置中具有预留位。ESM能力4寄存器554指示支持16.0GT/2至18.9GT/s之间呈100MT/s增量的传输速率。ESM能力5寄存器555指示支持19.0GT/2至21.9GT/s之间呈100MT/s增量的传输速率。ESM能力6寄存器556指示支持22.0GT/2至24.9GT/s之间呈100MT/s增量的传输速率。
在发现和枚举期间,根联合体214通过检查PCIe配置空间中的寄存器并确定每对链路伙伴之间的操作速度来发现数据处理平台200中所有PCIe装置的存在和功能。根联合体214首先确定是否支持扩展速度模式,并且如果支持,则进一步检查根联合体与端点之间的每个装置和端口的ESM能力描述符。通常,所确定的速度将是与根联合体214中的链路控制器以及到树中的端点的所有PCI链路所共有的最高支持速度。
图14示出了时序图1400,所述时序图示出了图3的互连控制器300的初始化。在时序图1400中,水平轴线表示以纳秒(ns)为单位的时间,而竖直轴线表示与链路操作有关的各种参数。沿着水平轴线,时序图1400示出了被标记为“t0”、“t1”、“t2”、“t3”、“t4”和“t5”的六个感兴趣的时间点。沿着竖直轴线,时序图1400示出了五个感兴趣的参数,包括被标记为“程序阶段”的第一链路状态1410、被标记为“链路上的操作”的第二链路状态1420、被标记为“链路速度”的第三链路状态1430、被标记为“链路状态”的第四链路状态1440、被标记为“链路属性”的第五链路状态1450。
在t0至t1之间,程序阶段处于查询阶段。在该时间期间,所述链路用于读取PCIe配置空间中的寄存器,包括在扩展能力描述符500中标识的供应商ID(VID)、装置ID(DID)和ESM开发程序指定供应商特定扩展能力。此外,速度被设置为Gen 3的初始启动速度,即,8.0GT/s。链路状态处于L0(完全开启)状态,并且链路属性是数据流。
在t1至t4之间,程序阶段处于设置阶段。在t1至t2之间,链路上没有数据传输操作。速度改变为Gen 1(2.5GT/s)链路速度,并且链路状态在以新的链路速度转变回L0之前进入恢复状态。在该时间期间,所述链路传输被标记为由EI条件分离的“TSx”的训练集。在t2至t3之间,根联合体314写入寄存器,例如,ESM控制寄存器542,以在所有支持链路上启用ESM。链路速度保持在Gen 1,而链路状态保持在L0。链路属性是数据流。在t3至t4之间,链路状态从L0改变为L1,并且在恢复到L0之前进行恢复。链路属性是L1 DLLP,然后是EI,然后是训练集TSx,然后是数据流。
在t4至t5之间,程序阶段根据支持链路上的所有DSP和USP普遍支持的最高速度执行速度改变。链路速度改变为选定的ESM链路速度,其可能不同于Gen 3链路速度。在恢复到L0状态之前,所述链路进入恢复链路状态。在以新的ESM链路速度传输其他训练集TSx之前,链路在速度改变期间传输被EI状态中断的训练集TSx。
在t5处发生训练结束之后,链路在ESM中操作并且以增强速率在L0链路状态下执行数据访问。一旦已完成必要设置并且链路返回到L0中,协商到Gen 3或Gen 4数据速率的任何后续速度变化将以被编程到ESM控制寄存器中的ESM数据速率来运行。协商到Gen 1或Gen 2数据速率的任何速度变化将以其‘正常’数据速率运行(对于Gen 1为2.5GT/s,对于Gen 2为5.0GT/s)。
图15以框图形式示出了根据一些实施例的支持PCIe事务层或用于加速器的高速缓存一致性互连(CCIX)事务层的通信控制器1500。通信控制器1500通常包括CCIX协议层块1502、具有CCIX链路层块1504的CCIX端口以及PCIe端口1510。
CCIX协议层块1502负责一致性协议,包括存储器读取和写入流。在该层中定义的高速缓存状态允许确定存储器的状态,例如,数据是否是唯一的且未修改的(clean)或者其是否是共享的且已修改的(dirty)。CCIX协议层模块1502通过CCIX链路层模块1504双向地连接到CCIX端口。CCIX协议层负责格式化CCIX流量以及形成CCIX并对CCIX解码。
PCIe端口1510包括CCIX事务层块1512、PCIe事务层块1514和PCIe数据链路层块1520以及CCIX/PCIe物理层块1530。CCIX事务层块1512负责处理CCIX分组,而PCIe事务层块1514负责处理PCIe分组。PCIe端口1510支持虚拟信道以允许不同的数据流在单个PCIe链路上行进。通过将CCIX流量分为一个虚拟信道并将PCIe流量分为第二虚拟信道,PCIe端口1510允许CCIX和PCIe流量两者共享同一PCIe介质1540。PCIe数据链路层块1520对数据链路层执行所有正常功能,包括CRC错误检查、分组确认和超时检查以及信用初始化和交换。CCIX/PCIe物理层块1530建立在标准PCIe物理层上。CCIX扩展PCIe以支持25GT/s ESM(扩展速度模式),其扩展超出在PCI Express 4.0标准中首次引入的16.0GT/s速度。另外,它还支持PCI Express 4.0标准速度(16GT/s)至更高速度(诸如25GT/s)之间的扩展速度。因此,它支持更大的粒度和向更高速度的更稳健迁移路径。
因此,本文公开的互连控制器提供了一种稳健控制器,所述控制器提供了无缝升级路径以实现更高性能,而无需等待对已发布标准的定期修订。更高的性能可以采用两种形式中的一者。首先,它可以扩展超出由所述标准指定的最高数据传输速率和/或最高时钟速度,从而避免在已发布新的标准修订版之后需要开发对应的通信部件。其次,它增加了半导体制造技术可以支持的中间数据传输速率和/或时钟速度,而无需全程为下一已发布速率。互连控制器和结合了这种互连控制器的数据处理器利用半导体制造技术的进步,其可以引领已发布标准的发展,并且在不受大的离散速度步长约束的情况下实现性能增强。所述技术可以用于多种数据通信协议,包括PCIe和CCIX(使用PCIe数据链路和物理层进行操作)。
PCIe端口控制器216和CPU 210或其任何部分可以由数据库或其他数据结构形式的计算机可访问数据结构来描述或表示,所述数据库或其他数据结构可以由程序读取并直接或间接用于制造集成电路。例如,该数据结构可以是用诸如Verilog或VHDL之类的高级设计语言(HDL)对硬件功能性的行为级描述或寄存器传输级(RTL)描述。所述描述可以通过合成工具来读取,所述合成工具可以对描述进行合成以从合成库中产生包括一系列门的网表。所述网表包括门的集合,这些门还表示包括集成电路的硬件的功能性。然后,所述网表可以被放置和路由以产生描述要应用于掩模的几何形状的数据集。然后,可以在各种半导体制造步骤中使用掩模来产生集成电路。替代地,计算机可访问存储介质上的数据库根据需要可以为网表(具有或不具有合成库)或数据集或者图形数据系统(GDS)II数据。
尽管已经描述了特定实施例,但是对这些实施例的各种修改对于本领域技术人员将是显而易见的。例如,各种高频振荡器可以用于时数转换器中的参考振荡器。这些包括CMOS环形振荡器、串联谐振LC振荡器、并联谐振LC振荡器和RC振荡器。此外,可以使用各种电流控制振荡器电路。在基于电阻器的电流控制振荡器电路中,电阻器可以采用各种形式,诸如多晶硅电阻器、薄膜金属合金电阻器和薄膜金属混合电阻器。此外,除法器可以使用多种固定数字作为分子。
因此,所附权利要求意图涵盖落入所公开实施例的范围内的对所公开实施例的所有修改。

Claims (25)

1.一种用于数据处理平台的互连控制器,其包括:
数据链路层控制器,所述数据链路层控制器适于耦合到事务层,其中所述数据链路层控制器选择性地从所述事务层接收数据分组并将数据分组发送到所述事务层;以及
物理层控制器,所述物理层控制器耦合到所述数据链路层控制器并且适于耦合到通信链路,所述物理层控制器选择性地以第一预定链路速度操作,其中所述物理层控制器具有增强速度模式,
其中响应于执行链路初始化,所述互连控制器:
查询所述数据处理平台以确定是否允许所述增强速度模式;
执行至少一个设置操作以选择增强速度,其中所述增强速度大于所述第一预定链路速度;并且
随后使用所述增强速度来操作所述通信链路。
2.如权利要求1所述的互连控制器,其中:
所述第一预定链路速度由已发布标准指定,并且所述增强速度并非由所述已发布标准指定。
3.如权利要求2所述的互连控制器,其中:
所述增强速度在所述第一预定链路速度与由所述已发布标准指定的第二预定速度之间。
4.如权利要求2所述的互连控制器,其中:
所述物理层控制器符合外围部件互连快速(PCIe)基本规范。
5.如权利要求4所述的互连控制器,其中:
所述互连控制器是PCIe根联合体的一部分,所述PCIe根联合体基于端点的上游端口的能力来确定所述互连控制器的所述增强速度。
6.如权利要求5所述的互连控制器,其中:
所述PCIe根联合体将所述互连控制器的所述增强速度确定为所述互连控制器与所述端点的所述上游端口的最高相互支持速度。
7.如权利要求5所述的互连控制器,其中:
所述PCIe根联合体通过访问PCIe配置空间来确定所述互连控制器的所述增强速度。
8.如权利要求7所述的互连控制器,其中:
所述互连控制器通过访问所述PCIe配置空间中的扩展能力描述符来确定所述增强速度。
9.如权利要求2所述的互连控制器,其中:
所述第一预定链路速度是所述已发布标准支持的最高发布速度。
10.如权利要求1所述的互连控制器,其中:
所述事务层包括PCIe事务层。
11.如权利要求1所述的互连控制器,其中:
所述事务层包括用于加速器的高速缓存一致性互连(CCIX)事务层。
12.一种数据处理平台,其包括:
基本输入/输出系统(BIOS);
数据处理器,所述数据处理器包括:
中央处理单元,所述中央处理单元耦合到所述BIOS并响应于所述BIOS以执行初始化程序;
外围部件接口快速(PCIe)根联合体,所述PCIe根联合体耦合到所述中央处理单元并且包括适于耦合到PCIe网络的第一PCIe端口控制器,其中所述第一PCIe端口控制器支持第一预定链路速度和增强速度模式;
其中所述BIOS包括指令,所述指令在由所述中央处理单元执行时使所述PCIe根联合体:
查询所述数据处理平台以确定是否允许所述增强速度模式;
执行至少一个设置操作以选择增强速度,其中所述增强速度大于所述第一预定链路速度;并且
随后使用所述增强速度来操作到所述PCIe网络的通信链路。
13.如权利要求12所述的数据处理平台,其中:
所述第一预定链路速度由已发布标准指定,并且所述增强速度并非由所述已发布标准指定。
14.如权利要求13所述的数据处理平台,其中:
所述增强速度在所述第一预定链路速度与由所述已发布标准指定的第二预定速度之间。
15.如权利要求13所述的数据处理平台,其中:
所述第一预定链路速度是所述已发布标准支持的最高发布速度。
16.如权利要求12所述的数据处理平台,其中:
所述增强速度在所述第一预定链路速度与第二预定速度之间。
17.如权利要求12所述的数据处理平台,其中:
所述PCIe根联合体基于下游端口的能力来确定所述第一PCIe端口控制器的所述增强速度。
18.如权利要求12所述的数据处理平台,其中:
所述PCIe根联合体将所述第一PCIe端口控制器的所述增强速度确定为所述第一PCIe端口控制器与下游端口之间的最高相互支持速度。
19.如权利要求12所述的数据处理平台,其中:
所述PCIe根联合体通过访问PCIe配置空间来确定所述第一PCIe端口控制器的所述增强速度。
20.如权利要求19所述的数据处理平台,其中:
所述PCIe根联合体通过访问所述PCIe配置空间中的扩展能力描述符来确定所述第一PCIe端口控制器的所述增强速度。
21.一种用于在具有根据已发布标准操作通信链路的互连控制器的数据处理平台中使用的方法,其包括:
查询所述数据处理平台以确定是否允许增强速度模式;
执行至少一个设置操作以选择增强速度,其中所述增强速度并非由所述已发布标准指定并且大于由所述已发布标准指定的第一预定链路速度;以及
随后使用所述增强速度来操作所述通信链路。
22.如权利要求21所述的方法,其中:
所述互连控制器支持大于所述第一预定链路速度的第二预定链路速度;并且
所述增强速度在所述第一预定链路速度与所述第二预定链路速度之间。
23.如权利要求22所述的方法,其中:
所述已发布标准是所述外围部件互连快速(PCIe)基本规范。
24.如权利要求21所述的方法,其还包括:
将所述互连控制器的所述增强速度确定为所述互连控制器与上游端口之间的最高相互支持速度。
25.如权利要求21所述的方法,其中执行至少一个设置操作以选择所述增强速度包括:
执行至少一个设置操作以选择所述增强速度,其中所述增强速度大于由所述已发布标准指定的最高速度。
CN201980082732.0A 2018-12-14 2019-06-27 增强速度模式下的数据通信 Pending CN113196254A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/221,181 US11151075B2 (en) 2018-12-14 2018-12-14 Data communications with enhanced speed mode
US16/221,181 2018-12-14
PCT/US2019/039505 WO2020122989A1 (en) 2018-12-14 2019-06-27 Data communications with enhanced speed mode

Publications (1)

Publication Number Publication Date
CN113196254A true CN113196254A (zh) 2021-07-30

Family

ID=71071666

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980082732.0A Pending CN113196254A (zh) 2018-12-14 2019-06-27 增强速度模式下的数据通信

Country Status (6)

Country Link
US (2) US11151075B2 (zh)
EP (1) EP3895029B1 (zh)
JP (1) JP7420804B2 (zh)
KR (1) KR20210092230A (zh)
CN (1) CN113196254A (zh)
WO (1) WO2020122989A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11151075B2 (en) * 2018-12-14 2021-10-19 Ati Technologies Ulc Data communications with enhanced speed mode
US11386026B1 (en) 2021-02-09 2022-07-12 Microsoft Technology Licensing, Llc Shell PCIe bridge and shared-link-interface services in a PCIe system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110231685A1 (en) * 2010-03-18 2011-09-22 Faraday Technology Corp. High speed input/output system and power saving control method thereof
US20180253398A1 (en) * 2017-03-03 2018-09-06 Intel Corporation High performance interconnect

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8059673B2 (en) 2003-05-01 2011-11-15 Genesis Microchip Inc. Dynamic resource re-allocation in a packet based video display interface
US7620062B2 (en) * 2003-05-01 2009-11-17 Genesis Microchips Inc. Method of real time optimizing multimedia packet transmission rate
US7426597B1 (en) * 2003-05-07 2008-09-16 Nvidia Corporation Apparatus, system, and method for bus link width optimization of a graphics system
US9262837B2 (en) 2005-10-17 2016-02-16 Nvidia Corporation PCIE clock rate stepping for graphics and platform processors
US7461195B1 (en) * 2006-03-17 2008-12-02 Qlogic, Corporation Method and system for dynamically adjusting data transfer rates in PCI-express devices
WO2008076700A2 (en) 2006-12-13 2008-06-26 Rambus Inc. Interface with variable data rate
US7660925B2 (en) * 2007-04-17 2010-02-09 International Business Machines Corporation Balancing PCI-express bandwidth
US8477831B2 (en) * 2010-02-17 2013-07-02 Altera Corporation Multi-protocol multiple-data-rate auto-speed negotiation architecture for a device
US9268732B2 (en) 2012-06-08 2016-02-23 Advanced Micro Devices, Inc. Tunnel suitable for multi-segment communication links and method therefor
US9244872B2 (en) 2012-12-21 2016-01-26 Ati Technologies Ulc Configurable communications controller
US9692426B2 (en) * 2013-05-06 2017-06-27 Advanced Micro Devices, Inc. Phase locked loop system with bandwidth measurement and calibration
BR112016012902A2 (pt) 2014-01-16 2017-08-08 Intel Corp Aparelho, método e sistema para um mecanismo de configuração rápida
US10275387B2 (en) 2015-08-10 2019-04-30 Mediatek Inc. Method and associated interface circuit for mitigating interference due to signaling of a bus
US9825730B1 (en) 2016-09-26 2017-11-21 Dell Products, Lp System and method for optimizing link performance with lanes operating at different speeds
US20180173666A1 (en) 2016-12-16 2018-06-21 Intel Corporation APPARATUSES AND METHODS TO COUPLE AN EMBEDDED UNIVERSAL SERIAL BUS (eUSB) CIRCUIT TO A UNIVERSAL SERIAL BUS (USB) TRANSCEIVER INTERFACE CIRCUIT
US10880137B2 (en) * 2017-05-12 2020-12-29 Intel Corporation Bypassing equalization at lower data rates
US10545773B2 (en) * 2018-05-23 2020-01-28 Intel Corporation System, method, and apparatus for DVSEC for efficient peripheral management
US11151075B2 (en) * 2018-12-14 2021-10-19 Ati Technologies Ulc Data communications with enhanced speed mode

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110231685A1 (en) * 2010-03-18 2011-09-22 Faraday Technology Corp. High speed input/output system and power saving control method thereof
US20180253398A1 (en) * 2017-03-03 2018-09-06 Intel Corporation High performance interconnect

Also Published As

Publication number Publication date
JP2022510812A (ja) 2022-01-28
JP7420804B2 (ja) 2024-01-23
EP3895029B1 (en) 2024-04-17
EP3895029A4 (en) 2022-09-07
KR20210092230A (ko) 2021-07-23
US20220035765A1 (en) 2022-02-03
WO2020122989A1 (en) 2020-06-18
US11151075B2 (en) 2021-10-19
US20200192852A1 (en) 2020-06-18
EP3895029A1 (en) 2021-10-20

Similar Documents

Publication Publication Date Title
US8478982B2 (en) Media access control security management in physical layer
US9244872B2 (en) Configurable communications controller
CN110362512B (zh) 一种面向sca和sdr的快速系统重构方法
US20220035765A1 (en) Data communications with enhanced speed mode
US20050091432A1 (en) Flexible matrix fabric design framework for multiple requestors and targets in system-on-chip designs
CN108768981B (zh) 一种实现Powerlink工业实时以太网通讯的IP核
US20030200383A1 (en) Tracking non-posted writes in a system
CN113849433A (zh) 一种总线控制器的执行方法、装置、总线控制器、计算机设备和存储介质
Slogsnat et al. A versatile, low latency HyperTransport core
Slogsnat et al. An open-source hypertransport core
Ma et al. Design and implementation of APB bridge based on AMBA 4.0
US8984196B2 (en) Accessing peripheral devices
US6425071B1 (en) Subsystem bridge of AMBA's ASB bus to peripheral component interconnect (PCI) bus
JP4359618B2 (ja) コンフィグレーション・レジスター・アクセス方法、設定方法、集積回路部品、コンピューター・システム、製品
JP4560601B2 (ja) コンピュータ用バスインタフェース
US20090132747A1 (en) Structure for universal peripheral processor system for soc environments on an integrated circuit
US9442788B2 (en) Bus protocol checker, system on chip including the same, bus protocol checking method
EP1477904A1 (en) Bus architecture techniques employing busses with different complexities
Sarekokku et al. Design and Implementation of APB Bridge based on AMBA AXI 4.0
CN113961502B (zh) 一种交换机接口管理系统和方法
CN214959850U (zh) 基于fpga片上系统的mipi电路板
US20240202156A1 (en) Device and method for adaptive bus protocol
US20050081075A1 (en) Computer system, carrier medium and method for adjusting an expiration period
US9170768B2 (en) Managing fast to slow links in a bus fabric
WO2002063477A2 (en) Accelerated graphics port (agp) controller supporting fast write transactions

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