CN111737167A - 用于高性能互连物理层的装置、方法和系统 - Google Patents

用于高性能互连物理层的装置、方法和系统 Download PDF

Info

Publication number
CN111737167A
CN111737167A CN202010633738.7A CN202010633738A CN111737167A CN 111737167 A CN111737167 A CN 111737167A CN 202010633738 A CN202010633738 A CN 202010633738A CN 111737167 A CN111737167 A CN 111737167A
Authority
CN
China
Prior art keywords
link
training
training sequence
sequence
state
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
CN202010633738.7A
Other languages
English (en)
Other versions
CN111737167B (zh
Inventor
V·艾耶
D·S·尤
R·G·布朗肯希普
F·斯帕戈纳
A·古普塔
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.)
Intel Corp
Original Assignee
Intel 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 Intel Corp filed Critical Intel Corp
Priority to CN202010633738.7A priority Critical patent/CN111737167B/zh
Publication of CN111737167A publication Critical patent/CN111737167A/zh
Application granted granted Critical
Publication of CN111737167B publication Critical patent/CN111737167B/zh
Active 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/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/4286Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a handshaking protocol, e.g. RS232C link
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • 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/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • 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
    • 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/0808Multiuser, multiprocessor or multiprocessing cache systems with cache invalidating means
    • 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/0813Multiuser, multiprocessor or multiprocessing cache systems with a network or matrix configuration
    • 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
    • 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
    • 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
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/1652Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
    • G06F13/1657Access to multiple memories
    • 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/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1689Synchronisation and timing concerns
    • 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/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/22Handling requests for interconnection or transfer for access to input/output bus using successive scanning, e.g. polling
    • 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/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • 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/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
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/77Software metrics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30145Instruction analysis, e.g. decoding, instruction word fields
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/466Transaction processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/15Interconnection of switching modules
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • H04L9/0656Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
    • H04L9/0662Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher with particular pseudorandom sequence generator
    • 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
    • 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/4273Bus transfer protocol, e.g. handshake; Synchronisation on a point to point bus using a clocked protocol
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/25Using a specific main memory architecture
    • G06F2212/254Distributed memory
    • G06F2212/2542Non-uniform memory access [NUMA] architecture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/62Details of cache specific to multiprocessor cache arrangements
    • G06F2212/622State-only directory, i.e. not recording identity of sharing or owning nodes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/73Program documentation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • 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
    • 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
    • Y02D30/00Reducing energy consumption in communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • Information Transfer Systems (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Communication Control (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Multi Processors (AREA)
  • Bus Control (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本发明涉及用于高性能互连物理层的装置、方法和系统。链路的重新初始化可以不终止链路而发生,其中链路包括,发射机和接收机耦合至多个巷道中的每个巷道,链路的重新初始化包括在每一个巷道上发射预定义的序列。

Description

用于高性能互连物理层的装置、方法和系统
本申请是针对分案申请201710038141.6再次提出的分案申请。分案申请201710038141.6是PCT国际申请号为PCT/US2013/032690、国际申请日为2013年3月15日、进入中国国家阶段的申请号为201380016998.8,题为“用于传送数据的方法、装置和系统”的发明专利的分案申请。
技术领域
本公开案一般涉及计算机开发领域,尤其涉及包括协调相互依赖的受约束系统的软件开发。
背景技术
半导体处理和逻辑设计中的进展允许增加集成电路器件上存在的逻辑的数量。计算机系统配置必然已经从系统中的单个或多个集成电路演进为个别集成电路上存在的多核、多硬件线程及多逻辑处理器,以及这种处理器内集成的其他接口。处理器或集成电路一般包括单个物理处理器模,其中处理器模可包括任何数量的核、硬件线程、逻辑处理器、接口、存储器、控制器中枢等。
作为在较小的封装包内适配更多处理能力的较高能力的结果,较小的计算设备越来越流行。智能电话、平板电脑、超薄笔记本电脑及其他用户设备呈指数型增长。然而,这些较小设备依赖于服务器来进行数据存储以及超出规格的复杂处理。因而,也增加了对高性能计算市场(即,服务器空间)的需求。例如,在现代服务器中,一般不仅存在具有多个核的单个处理器,也存在多个物理处理器(也称为多个插槽(socket))来提高计算能力。但随着处理能力随着计算系统中设备数量而增长,插槽及其他设备间的通信变得更为关键。
实际上,互连已经从主要处理电子通信的较传统的多点总线增长为便于快速通信的全面互连基础结构。不幸的是,由于存在对将来处理器以甚至更高速率进行消耗的需求,对现有互连基础结构的能力也存在相应的需求。
附图说明
图1示出按照一实施例的系统的简化框图,该系统包括一系列点对点互连以连接计算机系统中的多个I/O设备;
图2示出按照一实施例的分层协议栈的简化框图;
图3示出事务描述符的实施例。
图4示出串行点对点链路的实施例。
图5示出潜在的高性能互连(HPI)系统配置的多个实施例。
图6示出与HPI相关联的分层协议栈的实施例。
图7示出示例状态机的表示。
图8示出示例控制超序列。
图9示出到部分宽度状态的示例转换的流程图。
图10示出包括多核处理器的计算系统的框图的实施例。
图11示出包括多核处理器的计算系统的框图的另一实施例。
图12示出处理器的框图的实施例。
图13示出包括处理器的计算系统的框图的另一实施例。
图14示出包括多个处理器插槽的计算系统的框图的实施例。
图15示出计算系统的框图的另一实施例。
各附图中的相同附图标记和名称表示相同的元件。
具体实施方式
在以下描述中,提出了许多具体细节以便更透彻地理解本发明,诸如具体处理器和系统配置类型、具体硬件结构、具体结构和微结构细节、具体寄存器配置、具体指令类型、具体系统组件、具体处理器流水线阶段、具体互连层、具体分组/事务配置、具体事务名称、具体协议交换、具体链路宽度、具体实现方式以及操作等等的多个示例。然而,对于本领域技术人员显而易见的是,不需要必须采用这些具体细节来实现本公开案的主题。在其他情况下,为避免不必要地混淆本公开案,已经避免了已知组件或方法的非常详细的描述,所述组件或方法诸如具体的和替代的处理器体系结构、所述算法的具体逻辑电路/代码、具体固件代码、低级互连操作、具体逻辑配置、具体制造技术和材料、具体编译器实现、算法用代码的具体表达、具体掉电和门控技术/逻辑以及计算机系统的其他具体操作细节。
尽管可以参照具体集成电路(诸如计算平台或微处理器)中的能量保存、能量效率等来描述以下实施例,然而其他实施例可应用于其他类型的集成电路和逻辑器件。这里所述的实施例的类似技术和原理可应用于也受益于这些特征的其他类型的电路或半导体器件。例如,所公开的实施例不限于服务器计算机系统、台式计算机系统、膝上型计算机、超级本(Ultrabooks)TM,而可以用于其他设备中,诸如手持设备、智能电话、平板电脑、其他薄型笔记本电脑、芯片上系统(SOC)设备及嵌入式应用。手持设备的一些示例包括蜂窝电话、网际协议设备、数码相机、个人数字助理(PDA)及手持式PC。这里,用于高性能互连的类似技术可应用于增加低功率互连中的性能(或甚至节省功率)。嵌入式应用一般包括微控制器、数字信号处理器(DSP)、芯片上系统、网络计算机(NetPC)、机顶盒、网络中枢、广域网(WAN)交换机或者可执行以下教导的功能和操作的任何其他系统。此外,这里所描述的装置、方法和系统不限于物理计算设备,而是也关于用于能量节省和效率的软件优化。从以下描述中可显而易见,这里所描述的方法、装置和系统的实施例(无论是参照硬件、固件、软件或其组合)可被视为对于以性能考虑因素平衡的“绿色技术”将来是关键的。
随着计算系统的进步,其中的组件变得更为复杂。用于在多个组件之间耦合和通信的互连体系结构的复杂度也增加,以确保对于最佳组件操作满足带宽需求。而且,不同的细分市场要求互连体系结构的不同方面来适合于相应的市场。例如,服务器要求较高性能,而移动生态系统有时能为节省功率而牺牲总性能。大多数构造的单一目的仍然是以最大的功率节省来提供最高的可能性能。而且,各种不同的互连可能潜在地受益于这里描述的主题。
外设布局互连(PCI)Express(快线)(PCIe)互连构造体系结构和快速路径(QPI)构造体系结构等示例可以根据这里描述的一个或多个原理得到潜在的改进。例如,PCIe的主要目标是使来自不同厂商的组件和设备能在开放式体系结构中互操作,跨越多个细分市场、客户机(台式机和移动机)、服务器(标准和企业)以及嵌入式设备和通信设备。PCIExpress是为广泛的将来的计算和通信平台定义的高性能的、通用I/O互连。一些PCI属性(诸如其使用模型、负载存储体系结构和软件接口)已经通过其修订而被维持,而先前的并行总线实现方式已被高度可缩放的完全串行接口所替代。PCI Express的较新版本利用了点对点互连、基于交换机的技术以及分组化协议中的进步来实现新级别的性能和特征。功率管理、服务质量(QoS)、热插拔/热交换支持、数据完整性以及差错处理是PCI Express所支持的高级特征中的一些特征。尽管这里的主要讨论是参照新的高性能互连(HPI)体系结构,但是这里描述的本发明的多个方面可应用于其他互连体系结构,诸如PCIe兼容体系结构、QPI兼容体系结构、MIPI兼容体系结构、高性能体系结构或其他已知的互连体系结构。
参照图1,示出了由互连一组组件的多个点对点链路组成的构造的实施例。系统100包括与控制器中枢115耦合的处理器105和系统存储器110。处理器105可以包括任何处理元件,诸如微处理器、主机处理器、嵌入式处理器、协处理器或其他处理器。处理器105通过前端总线(FSB)106耦合至控制器中枢115。在一实施例中,FSB 106是如下所述的串行点对点互连。在另一实施例中,链路106包括与不同的互连标准相兼容的串行差分互连体系结构。
系统存储器110包括任何存储器设备,诸如随机存取存储器(RAM)、非易失性(NV)存储器、或可由系统100内的设备访问的其他存储器。系统存储器110通过存储器接口116耦合至控制器中枢115。存储器接口的示例包括双数据速率(DDR)存储器接口、双通道DDR存储器接口以及动态RAM(DRAM)存储器接口。
在一实施例中,控制器中枢115可包括诸如PCIe互连层次结构中的根中枢(roothub)、根复合体(root complex)或根控制器。控制器中枢115的示例包括芯片集、存储器控制器中枢(MCH)、北桥、互连控制器中枢(ICH)、南桥以及根控制器/中枢。通常术语芯片集是指两个物理上分开的控制器中枢,例如与互连控制器中枢(ICH)耦合的存储器控制器中枢(MCH)。注意到,当前的系统通常包括与处理器105集成的MCH,而控制器115要以以下描述的类似方式与I/O设备通信。在一些实施例中,通过根复合体115任选地支持对等路由。
这里,控制器中枢115通过串行链路119耦合至交换机/桥120。输入/输出模块117和121也可称为接口/端口117和121,输入/输出模块117和121可包括/实现分层的协议栈以便在控制器中枢115和交换机120之间提供通信。在一实施例中,多个设备能够耦合至交换机120。
交换机/桥120将分组/消息自设备125向上游(即,自分层结构向上朝向根复合体)路由至控制器中枢115,并且自处理器105或系统存储器110向下游(即,自分层结构向下远离根控制器)路由至设备125。在一实施例中,交换机120被称为多个虚拟PCI对PCT桥设备的逻辑装配。设备125包括要耦合至电子系统的任何内部或外部设备或组件,诸如I/O设备、网络接口控制器(NIC)、附加卡、音频处理器、网络处理器、硬盘驱动器、存储设备、CD/DVDROM、监视器、打印机、鼠标、键盘、路由器、便携式存储设备、火线(Firewire)设备、通用串行总线(USB)设备、扫描仪以及其他输入/输出设备。通常在PCIe语言中,诸如设备被称为端点。尽管为特别示出,但设备125可以包括桥(例如PCIe对PCI/PCI-X桥)以支持设备或这些设备所支持的互连构造的传统或其他版本。
图形加速器130也可以通过串行链路132耦合至控制器中枢115。在一实施例中,图形加速器130耦合至MCH,MCH耦合至ICH。于是,交换机120及相应的I/O设备125耦合至ICH。I/O模块131和118也用于实现分层的协议栈以便在图形加速器130和控制器中枢115之间通信。类似于以上的MCH讨论,图形控制器或图形加速器130本身可集成在处理器105内。
转至图2,示出分层协议栈的实施例。分层协议栈200可包括任何形式的分层通信栈,诸如QPI栈、PCIe栈、下一代高性能计算互连(HPI)栈或其他分层栈。在一实施例中,协议栈200可包括事务层205、链路层210和物理层220。接口(诸如图1中的接口117、118、121、122、126和131)可以被表示为通信协议栈200。表示为通信协议栈也可以被称为实现/包括协议栈的模块或接口。
分组可用于在多个组件间传送信息。分组可形成于事务层205和数据链路层210中以将信息自发射组件携带至接收组件。随着所发送的分组流经其他层,使用用于在那些层处理分组的附加信息来扩展这些所发送的分组。在接收侧发生相反过程,分组从它们的物理层220表示变换成数据链路层210表示,最终(对于事务层分组)变换成可由接收设备的事务层205处理的形式。
在一实施例中,事务层205可以在设备的处理核和互连体系结构之间提供接口,诸如数据链路层210和物理层220。在这点上,事务层205的主要责任可包括分组(即,事务层分组,即TLP)的装配和分解。事务层205也可以管理TLP的基于信用的流控制。在一些实现中,在其他示例中,可以利用分割事务,即关于请求的事务和关于响应的事务按时间分开,允许链路携带其他业务而同时目标设备为响应收集数据。
基于信用的流控制可用于实现利用互连构造的虚拟信道和网络。在一示例中,设备可以为事务层205中的每个接收缓冲器广告初始量的信用。在链路相对端的外部设备(诸如图1中的控制器中枢115)可以对每个TLP所消耗的信用数量计数。如果事务不超过信用界限,则发送事务。在接收到响应时,恢复信用的数量。这一信用方案的优点的一个示例在于,在其他潜在优点中,假如不遇到信用界限,信用返回的延迟就不影响性能。
在一实施例中,四个事务地址空间可包括配置地址空间、存储器地址空间、输入/输出地址空间以及消息地址空间。存储器空间事务包括读请求和写请求中的一个或多个,用以将数据传递至存储器映射的位置/自存储器映射的位置传递数据。在一实施例中,存储器空间事务能够使用两个不同的地址格式,例如短地址格式(诸如32位地址)或长地址格式(诸如64位地址)。配置空间事务可用于访问与互连相连接的各个设备的配置空间。到配置空间的事务可包括读请求和写请求。也可以定义消息空间事务(或简称为消息)来支持互连代理之间的带内通信。因此,在一示例实施例中,事务层205可以装配分组头部/有效载荷206。
快速参照图3,示出事务层分组描述符的示例实施例。在一实施例中,事务描述符300可以是用于携带事务信息的机制。在这点上,事务描述符300支持系统中事务的标识。其他潜在用途包括跟踪缺省事务次序的修改以及事务与信道的关联。例如,事务描述符300可包括全局标识符字段302、属性字段304和信道标识符字段306。在所示示例中,全局标识符字段302被描述为包括局部事务标识符字段308和源标识符字段310。在一实施例中,全局事务标识符302对于所有未完成的请求是唯一的。
根据一种实现方式,局部事务标识符字段308是由请求方代理(requestingagent)产生的字段,并且可以是对于对该请求方代理要求完成的所有未完成的请求唯一的。而且,在该示例中,源标识符310唯一地标识互连分层结构内的请求者代理(requestoragent)。因而,局部事务标识符308字段与源ID 310一起提供分层结构域内事务的全局标识。
属性字段304指定事务的特征和关系。在这点上,属性字段304可能用于提供允许修改事务的缺省处理方式的附加信息。在一实施例中,属性字段304包括优先级字段312、保留字段314、排序字段316和无监听(no-snoop)字段318。这里,优先级子字段312可由发起者修改以将优先级分配给事务。保留属性字段314预留给将来的用途或是厂商定义的用途。可以使用保留属性字段来实现使用优先级或安全属性的可能的用途模型。
在该示例中,排序属性字段316用于提供任选的信息,该任选的信息传递可以修改缺省排序规则的排序类型。根据一种示例实现方式,为“0”的排序属性表示要应用缺省的排序规则,其中为“1”的排序属性表示不受拘束的排序,其中写操作可以在相同方向上通过写操作,而读操作完成可以在相同方向上通过写操作。监听属性字段318用于确定事务是否被监听。如图所示,信道ID字段306标识事务与之相关联的信道。
返回图2的讨论,链路层210(也称为数据链路层210)可以充当事务层205和物理层220之间的中间阶段。在一实施例中,数据链路层210的责任是提供用于在链路上的两个组件之间交换事务层分组(TLP)的可靠机制。数据链路层210的一侧接受事务层205所装配的TLP,应用分组序列标识符211(即,标识号或分组号),计算和应用差错检测码(即CRC 212),并且将经修改的TLP提交给物理层220,用于跨过物理组件传输至外部设备。
在一示例中,物理层220包括逻辑子块221和电气子块222以便将分组物理地发送至外部设备。这里,逻辑子块221负责物理层221的“数字”功能。在这点上,逻辑子块可以包括发射部分和接收部分,发射部分用于准备传出信息供物理子块222发送,接收部分用于在将接收到的信息传递至链路层210之前标识和准备该接收到的信息。
物理块222包括发射机和接收机。发射机由具有符号的逻辑子块221提供,发射机将符号串行化并且向外发射至外部设备。接收机被提供来自外部设备的经串行化符号并且将接收信号变换成位流。位流被解串行化并被提供给逻辑子块221。在一示例实施例中,采用8b/10b传输码,其中发射/接收10位的符号。这里,使用特殊的符号来用多个帧223对分组进行组帧。此外,在一示例中,接收机还提供从传入串行流恢复的符号时钟。
如上所述,尽管参照协议栈(诸如PCIe协议栈)的具体实施例讨论了事务层205、链路层210和物理层220,但是分层的协议栈不限于此。实际上,可以包括/实现任何分层的协议,分层的协议可以采用这里讨论的特征。作为一示例,被表示为分层协议的端口/接口可包括:(1)用于装配分组的第一层,即事务层;用于序列化分组的第二层,即链路层;以及用于发射分组的第三层,即物理层。作为一具体示例,使用如此处描述的高性能互连分层协议。
接下来参照图4,示出串行点对点构造的示例实施例。串行点对点链路可包括用于发射串行数据的任何发射路径。在所示实施例中,链路可以包括两个、低压、差分驱动的信号对:发射对406/411和接收对412/407。因而,设备405包括用于将数据发射至设备410的发射逻辑406和用于从设备410接收数据的接收逻辑407。换言之,在链路的一些实现中包括两个发射路径(即路径416和417)和两个接收路径(即路径418和419)。
发射路径是指用于发射数据的任何路径,诸如传输线、铜线、光学线路、无线通信信道、红外通信链路或其他通信路径。两个设备(诸如设备405和设备410)之间的连接被称为链路,诸如链路415。链路可以支持一条巷道,每条巷道表示一组差分信号对(一对用于发射,一对用于接收)。为缩放带宽,链路可以聚集由xN标记的多个巷道,其中N是任何所支持的链路宽度,诸如1、2、4、8、12、16、32、64或更宽。
差分对可以指用于发射差分信号的两条发射路径,诸如线路416和417。作为一示例,当线路416从低电压级别切换至高电压级别时(即,上升沿),线路417自高逻辑电平驱动至低逻辑电平(即,下降沿)。差分信号潜在地说明较佳的电子特性,诸如较佳的信号完整性,即交叉耦合、电压过冲/下冲、振荡等其他示例优点。这允许较佳的定时窗口,从而允许较快的传输频率。
在一实施例中,提供了新的高性能互连(HPI)。HPI可以包括下一代高速缓存相干的基于链路的互连。作为一示例,HPI可用于诸如工作站或服务器等高性能计算平台中,包括在其中PCIe或另一互连协议一般用来连接处理器、加速器、I/O设备等的系统中。然而,HPI不限于此。相反,HPI可用在这里描述的任一系统或平台中。而且,所开发的个别理念可应用于其他互连和平台,诸如PCIe、MIPI、QPI等。
为了支持多个设备,在一示例实现中,HPI可包括指令集架构(ISA)不可知的(即,HPI能够实现于多个不同的设备中)。在另一情况下,HPI也可用于连接高性能I/O设备,而不仅仅是处理器或加速器。例如,高性能PCIe设备可通过适当的转换桥(即,HPI至PCIe)耦合至HPI。此外,HPI连接可由许多基于HPI的设备(诸如处理器)以各种方式(例如,星形、环形、网状等)来使用。图5示出多个潜在的多插槽配置的示例实现。如图所示,双插槽配置505可包括两个HPI链路;然而,在其他实现中,可以使用一个HPI链路。对于较大的拓扑结构,只要可分配标识符(ID)并且存在某一形式的虚拟路径以及其他附加或替代特征,就可以使用任何配置。如图所示,在一示例中,四插槽配置510具有从每个处理器到每个其他处理器的HPI链路。但在配置515所示的八插槽实现中,不是每一个插槽都通过HPI链路彼此直接连接。然而,如果在多个处理器之间存在虚拟路径或信道,则支持该配置。所支持的处理器的范围包括本地域中的2-32个处理器。在其他示例中,可以通过使用多个域或节点控制器之间的其他互连来达到较高数量的处理器。
HPI架构包括分层协议架构的定义,在一些示例中,分层协议架构包括协议层(相干的、非相干的、及任选的其他基于存储器的协议)、路由层、链路层以及物理层。而且,在其他示例中,HPI还可包括与功率管理器(诸如功率控制单元(PCU))、测试和调试的设计(DFT)、错误处理、寄存器、安全性有关的增强。图5示出示例HPI分层协议栈的实施例。在一些实现中,图5所示的至少一些层可以是任选的。每一层处理其自身级别的信息粒度或信息量(协议层605a、b处理分组630,链路层610a、b处理飞片(flit)635,物理层605a、b处理相数位(phit)640)。注意到在一些实现中,基于实现方式,分组可以包括多个部分飞片、单个飞片或是多个飞片。
作为第一示例,相数位640的宽度包括链路宽度到位的1对1映射(例如,20位链路宽度包括20位的相数位,等等)。飞片可以具有更大的尺寸,诸如184、192或200个位。注意到,如果相数位640为20位宽而飞片635的尺寸为184位,则需要一部分数目的相数位640来发射一个飞片635(例如,在其他示例中,20位下的9.2个相数位来发射184位的飞片635,或者20位下的9.6个相数位来发射192位的飞片)。注意到物理层处的基本链路宽度可以变化。例如,每个方向的道数目可以包括2、4、6、8、10、12、14、16、18、20、22、24等。在一实施例中,链路层610a、b能够将多片不同的事务嵌入在单个飞片中,并且一个或多个头部(例如1、2、3、4)可以被嵌入在飞片内。在一示例中,HPI将头部分割成相应的槽以便使飞片内的多个消息去往不同的节点。
在一实施例中,物理层605a、b可以负责在物理介质(电的或光的等等)上快速传递信息。物理链路可以是两个链路层实体(诸如层605a和605b)之间的点对点。链路层610a、b可以从较上层抽象出物理层605a、b,并且提供可靠地传递数据(以及请求)以及管理两个直连实体间的流控制的能力。链路层还可以负责将物理信道虚拟化为多个虚拟信道和消息类。协议层620a、b依赖于链路层610a、b来在将协议消息转交至物理层605a、b以便跨物理链路传递之前,将协议消息映射至适当的消息类和虚拟信道。在其他示例中,链路层610a、b可以支持多个消息,诸如请求、监听、响应、写回、非相干数据。
如图6所示,HPI的物理层605a、b(或PHY)可以在电气层(electrical layer)(即,连接两个组件的电导体)上方并且在链路层610a、b下方实现。物理层和相应的逻辑可以驻留在每个代理上,并且连接彼此隔开的两个代理(A和B)上的链路层(例如,在链路的任一侧上的设备上)。本地和远程的电层通过物理媒介(例如,电线、导体、光学媒介等)来连接。在一实施例中,物理层605a、b具有两个主要的相位、初始化和操作。在初始化器件,连接对链路层不透明,信令可以包括定时的状态和握手事件的组合。在操作期间,连接对链路层透明,信令具有一定速度,其中所有巷道在一起操作作为单个链路。在操作阶段期间,物理层将分片从代理A传输至代理B,且从代理B传输至代理A。该连接也称为链路,并且从链路层抽象出包括媒介、宽度和速度在内的某些物理方面,而同时与链路层交换当前配置的飞片和控制/状态(例如,宽度)。初始化阶段包括次要阶段,例如轮询、配置。操作阶段也包括次要阶段(例如,链路功率管理状态)。
在一实施例中,可以实现链路层610a、b以便在两个协议或路由实体间提供可靠的数据传输。链路层可以从协议层620a、b抽象出物理层605a、b,并且可以负责两个协议代理(A、B)之间的流控制,并且将虚拟信道服务提供给协议层(消息类)和路由层(虚拟网络)。协议层620a、b和链路层610a、b之间的接口一般可以处在分组级别。在一实施例中,链路层处的最小传输单位被称为飞片,飞片是指定数量的位,诸如192个位或某一其他数额。链路层610a、b依赖于物理层605a、b来将物理层605a、b的传输单位(相数位)组帧成链路层610a、b的传输单位(飞片)。此外,链路层610a、b可以在逻辑上被分成两部分,发送者和接收者。一个实体上的发送者/接收者对可以连接至另一实体上的接收者/发送者对。通常在飞片和分组两者的基础上进行流控制。也可能在飞片级基础上执行差错检测和校正。
在一实施例中,路由层615a、b可以提供灵活且分布式的方法以将HPI事务自源路由至目的地。由于可以通过每个路由器处的可编程路由表来指定多个拓扑结构的路由算法(一个实施例中的编程由固件、软件或其组合来执行),因此该方案是灵活的。路由功能可以是分布式的;路由可以通过一系列路由步骤来完成,且每个路由步骤通过源路由器、中间路由器或目的地路由器的任一个处的表格的查找来定义。源处的查找可用于将HPI分组注入HPI构造中。中间路由器处的查找可用于将HPI分组自输入端口路由至输出端口。目的地端口处的查找可用于瞄准目的地HPI协议代理。注意到,在一些实现中,路由层可以是薄的,因为路由表以及由此的路由算法未由说明书具体定义。这允许灵活性以及各种用途模型,包括要由系统实现定义的灵活的平台结构拓扑逻辑。路由层615a、b依赖于链路层610a、b来提供多达三个(或更多个)虚拟网络(VN)的使用――在一示例中,使用两个无死锁VN:VN0和VN1,且每个虚拟网络中定义了几个消息类。在其他特征和示例中,共享自适应虚拟网络(VNA)可定义于链路层中,但该自适应网络可能不直接暴露于路由概念,因为每个消息类和虚拟网络可以有专用的资源和有保证的进步。
在一些实现中,HPI可以使用嵌入式时钟。时钟信号可嵌入在使用互连发射的数据中。因为时钟信号嵌入于数据中,因此可以省略不同的和专用的时钟巷道。这可以是有用的,例如,因为它可以允许设备的更多引脚专用于数据传输,特别是在引脚空间非常重要的系统中。
可以在互连的任一侧上的两个代理之间建立链路。发送数据的代理可以是本地代理,接收数据的代理可以是远程代理。两个代理均可采用状态机来管理链路的各个方面。在一实施例中,物理层数据路径可以将多个飞片自链路层发射至电气前端。在一实现中,控制路径包括状态机(也称为链路训练状态机或类似物)。状态机的动作以及从状态的退出可以取决于内部信号、定时器、外部信号或其他信息。实际上,一些状态(诸如少数初始化状态)可具有定时器来提供退出一状态的超时值。注意到,在一些实施例中,检测是指检测一个巷道的两条腿(leg)上的事件,但不必要同时。然而,在其他实施例中,检测是指由所参考的代理来检测事件。作为一示例,防反跳(debounce)是指信号的持续断言。在一实施例中,HPI支持非功能巷道的情况下的操作。这里,巷道可以以特定的速率减少。
状态机中定义的状态可以包括重置状态、初始化状态和操作状态,以及其他类别和子类别。在一示例中,一些初始化状态可具有辅助定时器,辅助定时器用于在超时(特别是由于未能在状态中取得进展而造成的中止)时退出状态。中止可以包括更新寄存器,诸如状态寄存器。一些状态也可以具有(多个)主定时器,主定时器用于对状态内的主要功能定时。在其他示例中,可以定义其他状态,使得内部或外部信号(诸如握手协议)驱动从状态到另一状态的转变。
状态机还可以支持通过单步骤的调试、冻结初始化端口以及测试器的使用。这里,可以推迟/保持状态退出,直到调试软件准备好为止。在一些情况下,可以推迟/保持退出直到次级超时。在一实施例中,动作和退出可以基于训练序列的交换。在一实施例中,链路状态机要在本地代理时钟域中运行,并且自一个状态到下一个状态的转变要配合发射机训练序列边界。状态寄存器可用于反映当前状态。
图7示出在HPI的一个示例实现中由代理所使用的状态机的至少一部分的表示。应当理解,图7的状态表中所包括的状态包括可能状态的非穷尽列表。例如,省略了一些转变以简化该示意图。同样,可以组合、分割或省略一些状态,而同时可以增加其他状态。这样的状态可以包括:
事件重置状态:进入热或冷重置事件。恢复缺省值。初始化计数器(例如,同步计数器)。可能退出至另一状态,诸如另一重置状态。
定时重置状态:带内重置的定时状态。可能驱动预定义的电有序集(EOS)以使远程接收机也能够检测EOS并进入定时重置。接收机具有保持电气设置的巷道。可能退出至一代理以校准重置状态。
校准重置状态:道上无信令(例如,接收机校准状态)或将驱动器关闭的情况下进行校准。可以是基于定时器的状态中的预定量时间。可以设置操作速度。可以在端口不启用时充当等待状态。可以包括最小驻留时间。接收机调节或错开可基于设计而发生。可以在超时和/或校准完成之后退出至接收机检测状态。
接收机检测状态:检测巷道上接收机的存在。可以查找接收机终止(例如,接收机下拉插入)。可以在设置了指定值或在另一指定值未设置时退出至校准重置状态。如果检测到接收机或达到超时则可以退出至发射机校准状态。
发射机校准状态:用于发射机校准。可以是为发射机校准分配的定时状态。可以包括巷道上的信令。可以连续地驱动EOS,诸如电空闲退出有序集(或EIEIOS)。在校准完成或定时器到期时可以退出至服从状态。如果计数器已到期或已发生次级超时,则可以退出至发射机检测状态。
发射机检测状态:证明有效信令的资格。可以是握手状态,其中代理基于远程代理信令完成动作并且退出至下一状态。接收机可以证明来自发射机的有效信令的资格。在一实施例中,接收机寻找唤醒检测,并且如果在一个或多个巷道上防反跳,则在其他巷道上查找它。发射机驱动检测信号。响应于对于所有巷道完成反跳和/或超时、或者如果所有道上的防反跳未完成且存在超时,可以退出至轮询状态。这里,一个或多个监视道可以保持已唤醒以防反跳唤醒信号。如果被防反跳,则其他道可能被防反跳。这可以在低功率状态下实现功率节省。
轮询状态:接收机适配、初始化漂移缓冲器以及在位/字节(例如,标识符号边界)上锁定。巷道可以被纠偏。远程代理可以响应于确认消息而退出至下一状态(例如,链路宽度状态)。轮询另外可包括通过锁定至EOS的训练序列锁、以及训练序列头部。可以将远程发射机处的巷道与巷道之间的偏移上限设为针对最高速度的第一长度、以及针对低速度的第二长度。可以在低模式以及操作模式下执行纠偏。接收机可以具有具体最大值来纠偏巷道与巷道之间的偏移,诸如8、16或32个偏移间隔。接收机动作还可以包括延迟固定。在一实施例中,接收机动作可以在有效巷道地图的成功纠偏时完成。在一示例中,在带确认的情况下接收数个连续训练序列头部且在接收机已完成其动作之后传送带有确认的数个训练序列时,可以实现成功握手。
链路宽度状态:代理将最终巷道地图传送至远程发射机。接收机接收信息并解码。接收机可以在第二结构中的前一巷道地图值的检查点之后,将已配置的巷道地图记录在一结构中。接收机还可以用确认(“ACK”)来响应。可以发起带内重置。作为一示例,第一状态用于发起带内重置。在一实施例中,响应于ACK而退出至下一状态,诸如飞片配置状态。而且,在进入低功率状态之前,如果唤醒检测信号的出现频率跌落至指定值(例如,每单位间隔(UI)为1,诸如4K UI)以下,也可以产生重置信号。接收机可以保持当前的巷道地图和先前巷道地图。发射机可以基于具有不同值的训练序列来使用不同的巷道组。在一些实施例中,巷道地图可能不修改一些状态寄存器。
飞片锁配置状态:由发射机进入,但在发射机和接收机均已退出至阻断链路状态或其他链路状态时,该状态被视为退出(即,次级超时未决)。在一实施例中,发射机退出至链路状态,包括在接收行星(planetary)对准信号之后的数据序列开始(SDS)和训练序列(TS)边界。这里,接收机退出可以基于自远程发射机接收到SDS。该状态可以是自代理到链路状态的桥。接收机标识SDS。如果在初始化解扰器之后接收到SDS,则接收机可以退出至阻断链路状态(BLS)(或控制窗口)。如果发生超时,则可以退出至重置状态。发射机用配置信号来驱动巷道。发射机也可以基于多个条件或超时而退出至重置状态、BLS状态或其他状态。
发射链路状态:一种链路状态。飞片被发送至远程代理。可以自阻断链路状态进入并且在有事件(诸如超时)时返回至阻断链路状态。发射机发射飞片。接收机接收飞片。也可以退出至低功率链路状态。在一些实现中,发射链路状态(TLS)也可以被称为L0状态。
阻断链路状态:一种链路状态。发射机和接收机以统一方式工作。可以是一种定时状态,在该定时状态期间,在物理层信息被传送至远程代理的同时保持住链路层飞片。可以退出至低功率链路状态(或基于设计的其他链路状态)。在一实施例中,阻断链路状态(BLS)周期性地出现。周期被称为BLS间隔,并且可以被定时,以及在低速度和操作速度之间而不同。注意到可以周期性地阻止链路层发送飞片,使得可以发送一定长度的物理层控制序列,诸如在发射链路状态或部分宽度发射链路状态期间。在一些实现中,阻断链路状态(BLS)可以被称为L0控制(或L0c)状态。
部分宽度发射链路状态:可以通过进入部分宽度状态来节省功率。在一实施例中,非对称部分宽度是指在一些设计中可支持的具有不同宽度的两个方向链路的每个方向。图9的示例中示出诸如发射机的始发者的一示例,始发者发送部分宽度指示以进入部分宽度发射链路状态。这里,在具有第一宽度的链路上发射的同时,发送部分宽度指示,以便将该链路转变成以第二个新宽度进行发送。失配可能导致重置。注意到速度可能不改变,但宽度可以改变。因此,飞片可能以不同的跨度被发送。可能在逻辑上类似于发射链路状态;由于存在较小的宽度,因此发射飞片可能需要较长时间。可以退出至其他链路状态,诸如基于特定接收到的和发送的消息而退出至低功率链路状态,或是基于其他事件退出至部分宽度发射链路状态或链路阻断状态。在一实施例中,发射机端口可以以交错方式将空闲道关闭,以提供较佳的信号完整性(即,噪声减轻),如时序图中所示。这里,在链路宽度正在变化的时间段期间,可以使用不可重试(non-retry-able)飞片,诸如空(Null)飞片。相应的接收机可以丢掉这些空飞片并且以交错方式关闭空闲道。注意,状态以及相关联的状态寄存器可以保持不改变。在一些实现中,部分宽度发射链路状态可以被称为部分L0(或L0p)状态。
退出部分宽度发射链路状态:退出部分宽度状态。在一些实现中,可以使用或可以不使用阻断链路状态。在一实施例中,发射机通过在空闲巷道上发送部分宽度退出模式以便训练和纠偏它们,从而启动退出。作为一示例,退出模式以EIEOS开始,EIEOS被检测和防反跳以发信号通知,巷道已经准备好开始进入完全发射链路状态,并且可以以空闲道上的SDS或快速训练序列(FTS)结束。退出序列期间的任何故障(接收机动作,诸如在超时前未完成的纠偏)都停止到链路层的飞片传输,并且坚持重置,重置通过在下一阻断链路状态出现时重置链路来处理。SDS也可以将多个巷道上的扰频器/解扰器初始化为适当的值。
低功率链路状态:是一种较低功率状态。在一实施例中,它比部分宽度链路状态的功率要低,因为该实施例中的信令在所有巷道上以及在两个方向上都停止。发射机可以使用阻断链路状态来请求低功率链路状态。这里,接收机可以解码该请求并且以ACK或NAK来响应;否则可以触发重置。在一些实现中,低功率链路状态可以被称为L1状态。
在一些实现中,可以便于状态转变以允许状态被旁路,例如,在已经完成状态的状态动作(诸如特定的校准和配置)时。链路的先前状态结果和配置可以被存储,并且在链路的后续初始化和配置中被再用。可以旁路相应的状态,而不是重复这样的配置和状态动作。然而,实现状态旁路的传统系统通常实现复杂设计及昂贵的证实逃避(validationescape)。在一示例中,取代使用传统的旁路,HPI可以在特定状态下使用短定时器,诸如在不需要重复状态动作时。这可以潜在地允许更均匀和同步的状态机转变,以及其他潜在优点。
在一示例中,基于软件的控制器(例如,通过物理层的外部控制点)可以针对一个或多个特定状态启用短定时器。例如,对于已经执行和存储其动作的状态,状态可以被短定时以便于从该状态快速退出至下一状态。然而,如果前一状态动作失败或者不能在短定时器期间应用,可以执行状态退出。而且,控制器可以禁用短定时器,例如在应当重新执行状态动作时。可以为每个相应的状态设置长的,或即缺省的定时器。如果该状态下的动作不能在长定时器内完成,则可以发生状态退出。长定时器可以被设为合理持续期,以便允许状态动作的完成。相反,在其他示例中,短定时器可以短得多,在一些情况下,使其尤其不可能在参照回以前执行的状态动作的情况下执行状态动作。
在一些情况下,在链路初始化(或重新初始化)期间,随着代理前进通过状态机朝向操作链路状态,可能出现使状态重置(例如,重置为重置状态或其他状态)的一个或多个故障或状态退出。实践中,链路的初始化可以循环经过一个或多个状态,而无需完成初始化并进入链路状态。在一示例中,可以为链路初始化内的状态转变中的无效循环数目保持计数。例如,每次初始化在未达到链路状态的情况下返回至重置状态时,计数器可以递增。一旦链路成功地进入链路状态,可以为该链路重置计数器。这种计数器可由链路两侧上的代理来维持。而且,可以设置阈值,例如通过使用一个或多个外部控制点的基于软件的控制器来设置。当无效循环的计数满足(或超过)所定义的阈值时,链路的初始化可以被挂起(例如在重置状态时或之前被设置和保持)。在一些实现中,为了重新开始初始化并且自挂起状态释放初始化,基于软件的控制器可以触发链路的重启或重新初始化。在一些情况下,基于软件的工具可以分析被挂起初始化的性质并且进行诊断、设置寄存器值并且执行其他操作,以便防止初始化的进一步循环。实际上,在一些实现中,在其他示例中,控制器可以结合重启被挂起的链路初始化而设置较高的计数器阈值或甚至覆写计数器。
在HPI的一些实现中,可以定义超序列,每个超序列对应于一个相应状态或对该相应状态的进入/退出至/自其退出。超序列可包括数据集和符号的重复序列。在一些情况下,在其他示例中,序列可以重复,直到状态或状态转变的完成、或是相应事件的传送为止。在一些情况下,超序列的重复序列可以根据已定义的频率来重复,已定义的频率诸如已定义的单位间隔(UI)数目。单位间隔(UI)可以对应于在链路或系统的道上发射单个位的时间间隔。在一些实现中,重复序列可以以电有序集(EOS)开始。因而,可以预期EOS的实例根据预定义的频率来重复。这种有序集可以被实现为可以16进制格式表示的已定义的16字节码,以及其他示例。在一示例中,超序列的EOS可以使EIEIOS。在一示例中,EIEOS可以类似于低频时钟信号(例如,FF00或FFF000十六进制符号的预定义的重复数目等)。预定义的数据集可以跟随EOS,诸如预定义数目的训练序列或其他数据。在其他示例中,这种超序列可用于状态转变中,状态转变包括链路状态转变以及初始化。
在互连的一些实现中,诸如在QPI中,可以开启和关闭串行数据链路的终止,诸如在链路被重置或初始化时。该方法可以将复杂度和时间引入链路的初始化。在HPI的一些实现中,可以在链路的重置和重新初始化期间维持链路的终止。而且,HPI可允许设备的热插。当或通过热插或以其他方式引入另一设备时,向其上添加新远程代理的巷道的电压特性会变化。本地代理可以感测巷道电压中的这些变化以检测远程代理的存在并且促使链路的初始化。可以在状态机中定义状态机状态和定时器以在不终止的情况下协调链路的检测、配置和初始化。
在一种实现中,通过由接收代理针对传入信令筛选巷道,HPI可以支持带内重置上的重新初始化而不改变终止值。信令可用于标识良好的巷道。作为一示例,可以针对要由发射机设备发送的一组预定义信号中的任一个筛选该巷道,以便于恢复和配置该链路。在一示例中,超序列可以对应于一个或多个初始化或重新初始化任务而被定义。预定义序列可以包括EIEOS,其后是附加的序列数据。在一些情况下,随着巷道的任一侧上的每个设备变得活动,设备可以开始发送对应于特定初始化状态的超序列等等。在一实施例中,可以支持两类引脚重置;上电(即“冷”)重置和热重置。由软件发起或在一个代理上始发(在物理层或另一层中)的重置可以被带内传送至另一个代理。然而,由于使用了嵌入式时钟,因此可以通过使用有序集(诸如特定的电有序集,即EIOS)传送至另一代理来处理带内重置。
有序集可以在初始化期间被发送,PHY控制序列(或“阻断链路状态”)可以在初始化之后被发送。阻断链路状态可以阻止链路层发送飞片。作为另一示例,可以阻止链路层业务发送在接收机处被丢弃的少量空(NULL)飞片。
如以上所介绍,在一实施例中,初始化可以以最初低速度然后是快速初始化来完成。低速度下的初始化针对寄存器和定时器使用缺省值。然后,软件使用低速度链路来设置寄存器、定时器和电参数,并且清除校准臂板信号(semaphore)来为快速初始化铺路。作为一示例,在其他可能的示例中,初始化可由诸如重置(Reset)、检测(Detect)、轮询(Polling)和配置(Configuration)这样的状态或任务组成。
在一示例中,链路层阻断控制序列(即,阻断链路状态(BLS)或L0c状态)可以包括一定时状态,在该定时状态期间,在PHY信息被传送至远程代理的同时保持住链路层飞片。这里,发射机和接收机可以启动阻断控制序列定时器。并且在定时器到期时,发射机和接收机可以退出阻断状态并且可以采取其他动作,诸如退出至重置状态、退出至不同的链路状态(或其他状态),不同的链路状态包括允许跨链路发送飞片的状态。
在一实施例中,可以提供链路训练,链路训练包括发送经扰频的训练序列、有序集和控制序列中的一个或多个,诸如结合预定义超序列而发送。训练序列符号可以包括头部、保留部分、目标延迟、对号(pair number)、物理巷道地图代码参照巷道或一组巷道、以及初始化状态中的一个或多个。在一实施例中,头部可以ACK或NAK来发送,还有其他示例。作为一示例,训练序列可以作为超序列的一部分被发送并且可以被扰频。
在一实施例中,有序集和控制序列不被扰频或交错,并且可以在所有巷道上相同地、同时地和完全地被发送。有序集的有效接收可以包括检验有序集的至少一部分(或多个部分有序集的全部有序集)。有序集可以包括电有序集(EOS),诸如电空闲有序集(EIOS)或EIEOS。超序列可以包括数据序列的开始(SDS)或快速训练序列(FTS)。这种集和控制超序列可以被预定义,并且可具有任何模式或十六进制表示以及任何长度。例如,有序集和超序列可以为8字节、16字节或32字节等的长度。作为一示例,在退出部分宽度发射链路状态期间,可以为快速位锁定附加地使用FTS。注意到,FTS定义可以是按道定义的,并且可以使用FTS的旋转版本。
在一实施例中,超序列可以包括将EOS(诸如EIEOS)插入到训练序列流中。在一实施例中,当信令开始时,多个巷道以交错方式被上电。然而,这可能导致初始超序列在一些巷道上在接收机处被截短。然而,超序列可以在短间隔上被重复(例如近似一千单位间隔,(或即~1KUI))。训练超序列可另外用于纠偏、配置中的一个或多个,并且用于传送初始化目标、巷道地图等。EIEOS可用于以下的一个或多个:将巷道从不活动状态转变为活动状态,筛选良好的道,标识符号和TS边界,以及其他示例。
转至图8,示出示例超序列的表示。例如,可以定义示例性的检测超序列805。检测超序列805可以包括单个EIEOS(或其他EOS)且其后跟随特定训练序列(TS)的预定义数量的实例的重复序列。在一示例中,EIEOS可以被发送,其后立即跟随TS的七个重复实例。当七个TS的最后一个被发送时,可以再次发送EIEOS其后跟随TS的七个另外实例,以此类推。该序列可以根据特定的预定义频率来重复。在图8的示例中,EIEOS可以每一千个UI(~1KUI)在巷道上重复出现,其后跟随检测超序列805的其余部分。接收机可以监视巷道上是否存在重复的检测超序列805,并且在确认超序列705时推断出远程代理存在、已被添加(例如,热插拔)至巷道上、已经唤醒、或正在重新初始化等等。
在另一示例中,可以定义另一超序列810来表明轮询、配置或环回(loopback)条件或状态。对于示例的检测超序列805,可由接收机监视链路的巷道上是否有这种轮询/配置/循环(Poll/Config/Loop)超序列810,以标识轮询状态、配置状态或者环回状态或条件。在一示例中,轮询/配置/循环超序列810可以EIEOS开始,其后跟随TS的预定义数量的重复实例。例如,在一示例中,EIEOS后可跟随TS的三十一(31)个实例,其中EIEOS近似每四千个UI(例如,~4KUI)重复一次。
而且,在另一示例中,可以定义部分宽度发射状态(PWTS)退出超序列815。在一示例中,PWTS退出超序列可包括要重复的初始EIEOS,以便在发送超序列中的第一空序列之前对巷道进行预重复。例如,要在超序列815中重复的序列可以以EIEOS开始(要近似每1KUI重复一次)。而且,可以替代其他训练序列(TS)而使用快速训练序列(FTS),FTS被配置为帮助较快的位锁定、字节锁定和纠偏。在一些实现中,FTS可以被解扰,以帮助将空闲巷道尽可能快速和非打扰地带回至活跃。随着其他超序列进入链路发射状态,超序列815可以被中断,并且通过发送数据序列的开始(SDS)而结束。而且,可以发送部分FTS(FTSp)来帮助将新的巷道同步至活动的巷道,诸如通过允许向FTSp减去(或添加)多个位,以及其他示例。
超序列(诸如检测超序列705和轮询/配置/循环超序列710等)可能潜在地在链路的初始化或重新初始化期间被发送。在一些情况下,接收机在接收和检测特定的超序列时,可以通过在巷道上将同一超序列发回声(echo)给发射机来进行响应。发射机和接收机对特定超序列的接收和确认可以充当握手,以确认通过超序列传送的状态或条件。例如,诸如握手(例如,使用检测超序列705)可用于标识链路的重新初始化。在其他示例中,在另一示例中,这一握手可用于表明电重置或低功率状态的结束,导致相应的巷道被带回来。例如,可以自各自发射检测超序列705的发射机和接收机之间的握手来标识电重置的结束。
在其他事件中,在另一示例中,可以监视道上是否有超序列,巷道可以使用超序列来筛选道以进行检测、唤醒、状态退出和进入。还可以进一步使用超序列的预定义和可预测的性质和形式来执行这样的初始化任务,诸如位锁定、字节锁定、防反跳、解扰、纠偏、适配、延迟固定、协商延以及其他潜在用途。实际上,可以基本连续地监视道上是否有这些事件以加速系统反应于或处理这种条件的能力。
在防反跳的情况下,作为各种条件的结果,可以在道上引入瞬变。例如,设备的添加或上电可以将瞬变引入巷道上。此外,由于差的巷道质量或电故障,巷道上可能呈现电压不规则性。在一些情况下,巷道上的“反跳(bounce)”可以产生错误确定,诸如错误EIEOS。然而,在一些实现中,尽管超序列可以以EIEOS开始,但已定义的超序列还可以包括附加的数据序列以及EIEOS将重复所用的已定义频率。结果,即使错误EIEOS出现在巷道上,接收机处的逻辑分析器可以通过数据超过错误EIEOS,来确定EIEOS是错误确定。例如,如果预期的TS或其他数据不跟随EIEOS、或者EIEOS不在预定义超序列之一的多个预定义频率的特定一个频率内重复,接收机逻辑分析器可以使对接收到的EIEOS的确认失败。随着在将设备添加至巷道时反跳在启动时出现,也会产生错误确定。例如,在设备被添加至一组巷道后,设备可以开始发送检测超序列705以便向链路的另一侧警告它的存在,并且开始初始化链路。然而,巷道上引入的瞬变可以破坏初始EIEOS、TS实例以及超序列的其他数据。然而,在其他示例中,接收设备上的逻辑分析器可继续监视这些巷道,并且标识由新设备在重复检测超序列705中发送的EIEOS。
在一些实现中,HPI链路能够以嵌入式时钟实现的多个速度进行操作。例如,可以定义慢模式。在一些实例中,慢模式可用于帮助实施链路的初始化。链路的校准可包括基于软件的控制器提供逻辑来设置链路的各个已校准特征,包括链路要使用哪些巷道、巷道的配置、链路的操作速度、巷道和代理的同步、纠偏、目标延迟、以及其他可能的特征。这种基于软件的控制器可以利用外部控制点来将数据添加至物理层寄存器来控制物理层设施和逻辑的各方面。
链路的操作速度可以比链路初始化中使用的基于软件的控制器的实际操作速度快得多。在其他实例中,慢模式可用于允许使用这种基于软件的控制器,诸如在链路的初始化或重新初始化期间。慢模式可应用于链接接收机和发射机的巷道上,例如当链路被开启、被初始化、被重置等等的时候,以帮助实施链路的校准。
在一实施例中,时钟可嵌入在数据中,因此没有单独的时钟巷道。在巷道上发送的飞片可以被扰频以实施时钟恢复。作为一示例,接收机时钟恢复单元可以将采样时钟传递至接收机(即,接收机自数据恢复时钟并且用它来采样进入的数据)。一些实现中的接收机连续地适配于传入位流。通过嵌入时钟,可以潜在地减少引出线(pinout)。然而,将时钟嵌入在带内数据中可以改变实施带内重置的方式。在一实施例中,可以在初始化之后使用阻断链路状态(BLS)。在其他考虑因素中,同样,可以在初始化期间使用电有序集超序列来实施重置。嵌入式时钟可以在链路上的多个设备间共有,公共操作时钟可以在链路的校准和配置期间被设置。例如,HPI链路可以以漂移缓冲器来参考公共时钟。和非公共参考时钟中使用的弹性缓冲器相比,这种实现方式可以实现较低的延迟,还有其他潜在的优点。而且,参考时钟分布段可以被匹配至指定界限内。
如上所述,HPI链路能够以多个速度操作,包括用于缺省上电、初始化等的“慢模式”。每个设备的操作(或“快速”)速度或模式可由BIOS静态地设置。链路上的公共时钟可以基于链路任一侧上的每个设备的相应操作速度来配置。例如,在其他示例中,链路速度可基于两个设备操作速度中的较慢者。任何操作速度变化可伴随热重置或冷重置。
在一些示例中,在加电时,链路初始化为慢模式,其传输速率例如为100MT/s。然后,软件为链路的操作速度设置两侧,并且开始初始化。在其他情况下,在没有慢模式或慢模式不可用的情况下,可以使用侧带机制来设立链路,包括链路上的公共时钟。
在一实施例中,慢模式初始化阶段可以使用与操作速度相同的编码、扰频、训练序列(TS)、状态等,但可能有较少特征(例如,无电参数设立,无适配等)。与操作速度相比,慢模式操作节点也可能使用相同的编码、扰频等(尽管其他实现可能不相同)但可能有较少的状态和特征(例如,无低功率状态)。
而且,可以使用设备的本地锁相环(PLL)时钟频率来实现慢模式。例如,HPI可以支持模仿的慢模式,而不改变PLL时钟频率。尽管一些设计可以为慢速度和快速度使用单独的PLL,但在HPI的一些实现中,可以通过允许PLL时钟在慢模式期间以相同的快操作速度运行,来实现模仿的慢模式。例如,发射机可以通过多次重复多个位来模拟较慢的时钟信号,以便模拟一个慢的高时钟信号然后是一个慢的低时钟信号。然后,接收机可以对接收信号过采样以定位通过重复位所模拟的多个边缘,并且标识该位。在这种实现中,共享一PLL的多个端口可以在慢速度和快速度下共存。
公共慢模式速度可以在两个设备之间初始化。例如,链路上的两个设备可具有不同的快速操作速度。公共慢模式速度可以在例如发现阶段或链路上的状态期间被配置。在一示例中,模拟倍数可被设为快速度对慢速度的整数(或非整数)比,不同的快速度可以被向下转换以便与相同的慢速度一起工作。例如,支持至少一个公共频率的两个设备代理可以被热附着,无论主机端口以什么速度运行。然后,软件发现可以使用慢模式链路来标识和设立最优的链路操作速度。在倍数是快速度对慢速度的整数比时,不同的快速度可以与相同的慢速度一起工作,相同的慢速度可以在(例如,热附着的)发现阶段期间被使用。
在HPI的一些实现中,可以支持链路上多个巷道的适配。物理层可以支持接收机适配和发射机(或发送者)适配两者。对于接收机适配,巷道上的发射机可以将采样数据发送至接收机,接收机逻辑可以处理采样数据以标识巷道的电特性中的短处以及信号的质量。然后,接收机可以对巷道的校准作出调整以便基于对接收到的采样数据的分析来优化该巷道。在发射机适配的情况下,接收机可以再次接收采样数据并且开发描述巷道质量的度量,但在该情况下是将度量传送至发射机(例如,使用后信道(backchannel),诸如软件、硬件、嵌入式、侧带或其他信道),以使发射机能基于反馈对巷道作出调整。可以在轮询状态的开始处,使用自远程发射机发送的轮询超序列来发起接收机适配。类似地,通过为每个发射机参数重复以下事项,可以完成发射机适配。两个代理都可以作为主机进入环回模式状态,并且发射所指定的模式。两个接收机都可以测量远程代理处的该特定发射机设置的度量(例如,BER)。两个代理都可以进入环回标记状态,然后进入重置状态,并且使用后信道(慢模式TLS或侧带)来交换度量。基于这些度量,可以标识下一个发射机设置。最后可以标识最优发射机设置,并将其保存供后续使用。
由于链路上的两个设备都可以运行相同的参考时钟(例如,ref clk),因此可以省略弹性缓冲器(任何弹性缓冲器都可以被旁路,或者被用作具有最低可能延迟的漂移缓冲器)。然而,可以在每个巷道上使用相位调整或漂移缓冲器来将相应的接收机位流自远程时钟域传输至本地时钟域。漂移缓冲器的等待时间可能足以处理来自电规范中所有源(例如,电压、温度、参考时钟路由适配所引起的残余SSC等等)的漂移总和,但为了减少传输延迟要尽可能小。如果漂移缓冲器过浅,则漂移差错会产生并且会显示为一系列CRC差错。因而,在其他示例中,在一些实现中,可以提供漂移警告,漂移警告会在出现实际漂移差错之前发起物理层重置。
HPI的一些实现可以支持以同一标称参考时钟频率运行但具有ppm差异的两侧。在其他示例中,在该情况下,可能需要频率调整(或弹性)缓冲器,并且可能在扩展的BLS窗口期间或在会周期性出现的特殊序列期间重新调整频率调整缓冲器。
在其他考虑因素中,HPI PHY逻辑层的操作可以独立于底层的传输媒介——假如等待时间不导致链路层处的延迟固定差错或超时。
HPI中可以提供外部接口以帮助管理物理层。例如,可以提供外部信号(来自引脚、保险丝、其他层)、定时器、控制和状态寄存器。输入信号可以在相对于PHY状态的任一时刻变化,并且要由物理层在相应状态下的特定点处观察。例如,在其他示例中,在链路已进入发射链路状态之后,变化的对齐信号(如下介绍)可以被接收,但没有实际效果。类似地,命令寄存器值可由物理层实体仅在特定时间点处观测。例如,物理层逻辑可以获得值的快照,并且将其用于后续操作中。因而,在一些实现中,对命令寄存器的更新可以与特定时间段的有限子集(例如,在发射链路状态时或在保持于重置校准时、在慢模式发射链路状态时)相关联,以避免反常的行为。
由于状态值跟踪硬件改变,因此值读数可取决于它们何时被读取。然而,一些状态值(诸如链路地图、等待时间、速度等)可能在初始化之后不改变。例如,重新初始化(或低功率链路状态(LPLS)、或L1状态、退出)是唯一能使这些发生变化的事项(例如,TLS中的硬巷道故障不会导致链路的重新配置,直到重新初始化被触发,以及其他示例)。
接口信号可包括物理层外部但影响物理层行为的信号。作为示例,这样的接口信号可包括编码和定时信号。接口信号可以是设计专用的。这些信号可以是输入或输出。在其他示例中,一些接口信号(诸如所称的臂板信号和有前缀的EO等其他示例)可以在每次断言边缘时是活动的,即,它们可以被解除断言然后重新断言以再次有效。例如,表1包括示例功能的示例列表:
表1
Figure BDA0002566958350000271
可以成对地提供CSR定时器缺省值――一个用于慢模式,一个用于操作速度。在一些实例中,值0禁用定时器(即,超时用不发生)。定时器可以包括下表2示出的那些定时器。主定时器可用于对状态中的预期动作定时。次定时器用于中止未在进展中的初始化或者用于在自动测试设备(即ATE)模式中以准确的时刻推进状态转变。在一些情况下,状态内的次定时器可以比主定时器大得多。指数定时器集合可以用exp作后缀,定时器值被提高两倍至字段值。对于线性定时器,定时器值是字段值。任一定时器可以使用不同的粒度。此外,功率管理部分中的一些定时器可以在称为定时轮廓的集合中。这些可以与相同名称的时序图相关联。
表2
Figure BDA0002566958350000281
Figure BDA0002566958350000291
可以提供命令和控制寄存器。控制寄存器可以是迟到动作,并且可以在一些实例中由软件读取或写入。迟到动作值可以在重置时连续生效(例如,自软件面临的阶段经过至硬件面临的阶段)。控制臂板信号(有前缀的CP)是RWIS,并且可由硬件清除。可以使用控制寄存器来执行这里描述的任一条目。它们可由硬件、软件、固件或它们的组合来修改和访问。
可以提供状态寄存器来跟踪硬件变化(由硬件写入和使用的)并且可以是只读的(但调试软件可能也能够向它们写入)。这种寄存器可能不会影响互操作性,并且一般可用许多私有状态寄存器来实现。因为状态臂板信号(有前缀的SP)可由软件清除,因此可以强制执行状态臂板信号以重做设置状态的动作。缺省意味着可以提供初始(在重置时)值作为与初始化有关的这些状态位的一个子集。在初始化中止时,该寄存器可以被复制到存储结构内。
可以提供工具箱寄存器。例如,物理层中的可测试性工具箱寄存器可以提供模式生成、模式检验和环回控制机制。较高级的应用可以利用这些寄存器连同电参数来确定余量。例如,测试中构建的互连可以利用该工具箱来确定余量。在其他示例中,对于发射机适配,这些寄存器可以结合前面部分描述的特定寄存器一起使用。
在一些实现中,HPI支持使用物理层的可靠性、可用性及可服务性(RAS)能力。在一实施例中,HPI支持对于一个或多个层的热插拔和热移除,层可包括软件。热移除可包括使链路静默,并且可以清除初始化开始状态/信号使代理被移除。远程代理(即,未在被移除的代理(例如,主机代理))可以被设为慢速度,且其初始化信号也可以被清除。在其他示例和特征中,带内重置(例如,通过BLS)可以使两个代理均在重置状态(诸如校准重置状态(CRS))内等待;要被移除的代理可以被移除(或者可以被保持在定向的引脚重置、被掉电)。实际上,以上事件中的一些可以被省略,并且可以添加附加的事件。
热添加可以包括初始化速度可缺省为慢,且可以在要被添加的代理上设置初始化信号。软件可以将速度设为慢,并且可以清除远程代理上的初始化信号。链路可以在慢模式中发生,软件可以确定操作速度。在一些情况下,在此时不执行远程代理的PLL重新锁定。可以在两个代理上均设置操作速度,可以设置启用以进行适配(如果以前未完成)。可以清除两个代理上的初始化开始指示符,并且带内BLS重置会使两个代理都在CRS中等待。软件可以断言(要被添加的)代理的热重置(例如,定向的重置或自重置),其可以使PLL重新锁定。软件也可以通过任何已知的逻辑来设置初始化开始信号,并且进一步在远程代理上设置(因此将其推入接收机检测状态(RDS))。软件可以解除断言所添加代理的热重置(因此将其推入RDS)。然后,在其他示例中,链路可以在操作速度下初始化为发射链路状态(TLS)(或者如果设置了适配信号则初始化为环回状态)。实际上,可以省略以上事件中的一些事件,并且可以添加附加的事件。
可以支持数据道故障恢复。在一实施例中,HPI中的链路可以将其自身配置为比完全宽度要小(例如,小于完全宽度的一半),从而对单个巷道上的硬差错有弹性,这由此排出了故障巷道。作为一示例,配置可由链路状态机完成,在配置状态中可以关闭不用的巷道。结果,在其他示例中,飞片可以跨较窄的宽度上被发送。
在HPI的一些实现中,可以在一些链路上支持巷巷道逆转。例如,巷道逆转可以指发射机的巷道0/1/2…连接至接收机的巷道n/n-1/n-2…(例如,n可以等于19或7等等)。如TS头部的字段中所标识,巷道逆转可以在接收机处被检测。接收机可以通过对逻辑道0…n使用物理道n…0来开始轮询状态,实施巷道逆转。因此,对巷道的引用可以指逻辑巷道号码。因此,广泛的设计者可能更高效地规定物理或电设计,HPI可以与虚拟巷道分配一同工作,如此处描述的。此外,在一实施例中,极性可以被反转(即,当差分发射机+/-连接至接收机-/+时)。极性也可以在接收机处自一个或多个TS头部字段被检测,并且在一个实施例中在轮询状态中实施。
参照图10,描述了用于包括多核处理器的计算系统的框图的实施例。处理器1000包括任何处理器或处理设备或用于执行代码的其他设备,处理器或处理设备诸如微处理器、嵌入式处理器、数字信号处理器(DSP)、网络处理器、手持处理器、应用处理器、协处理器、芯片上系统(SOC)。在一实施例中,处理器1000包括至少两个核――核1001和1002,核可以包括不对称的核或对称的核(所示实施例)。然而,处理器1000可以包括可以对称或非对称的任何数量的处理元件。
在一实施例中,处理元件是指支持软件线程的硬件或逻辑。硬件处理元件的示例包括:线程单元、线程槽、线程、处理单元、上下文、上下文单元、逻辑处理器、硬件线程、核和/或任何其他能够保持处理器的状态的元件,处理器的状态诸如执行状态或架构状态。换言之,在一实施例中,处理元件是指能够与代码独立相关联的任何硬件,代码诸如软件线程、操作系统、应用或其他代码。物理处理器(或处理器插座)一般是指集成电路,集成电路可能包括任何数量的其他处理元件,诸如核或硬件线程。
核通常是指位于能够维持独立架构状态的集成电路上的逻辑,其中每个独立维持的架构状态与至少一些专用执行资源相关联。与核相反,硬件线程一般是指位于能够维持独立架构状态上的任何逻辑,其中独立维持的架构状态共享对执行资源的访问。如图所示,当特定的资源被共享而其他资源专用于架构状态时,硬件线程的命名和核之间的线重叠。但往往,核和硬件线程被操作系统视为个别的逻辑处理器,其中操作系统能够个别地调度每个逻辑处理器上的操作。
如图10所示,物理处理器1000包括两个核――核1001和1002。这里,核1001和1002被视为对称核,即具有相同配置、功能单元和/或逻辑的核。在另一实施例中,核1001包括无序处理器核,而核1002包括有序处理器核。然而,核1001和1002可以从任何类型的核中个别地选择,诸如本机核、软件管理的核、适用于执行本机指令集架构(ISA)的核、适用于执行经转换指令集架构(ISA)的核、共同设计的核或其他已知核。在异构核环境(即,非对称核)中,可以使用一些形式的转换(例如二进制转换)来在一个或两个核上调度或执行代码。为了进一步讨论,下面进一步详细描述了核1001中所示的功能单元,核1002中的单元在所述实施例中以类似方式操作。
如图所述,核1001包括两个硬件线程1001a和1001b,它们也可以被称为硬件线程槽1001a和1001b。因此,在一实施例中,诸如操作系统的软件实体可能将处理器1000视为四个分开的处理器,即能够同时执行四个软件线程的四个逻辑处理器或处理元件。如以上所提到的,第一线程与架构状态寄存器1001a相关联,第二线程与架构状态寄存器1001b相关联,第三线程可与架构状态寄存器1002a相关联,第四线程可与架构状态寄存器1002b相关联。这里,架构状态寄存器(1001a、1001b、1002a和1002b)的每一个可以被称为处理元件、线程槽或线程单元,如下所述。如图所示,架构状态寄存器1001a在架构状态寄存器1001b中被复制,因此个别的架构状态/上下文能够针对逻辑处理器1001a和逻辑处理器1001b而被存储。在核1001中,也可以为线程1001a和1001b复制其他较小的资源,诸如分配器和重命名器块1030中的指令指针和重命名逻辑。可以通过分区来共享一些资源,诸如重排序/隐退单元1035中的重排序缓冲器、ILTB 1020、负载/存储缓冲器以及队列。其他资源可能被完全共享,其他资源诸如通用内部寄存器、页表基础寄存器、低级数据高速缓存和数据TLB 1015、执行单元1040以及无序单元1035的部分。
处理器1000通常包括其他资源,其他资源可以被完全共享、通过分区被共享、或者由/对处理器元件专用。在图10中,示出具有处理器的示意性逻辑单元/资源的纯示例性处理器的实施例。注意到,处理器可包括或省略这些功能单元的任何,以及包括任何其他未图示的已知功能单元、逻辑或固件。如图所示,核1001包括简化的代表性的无序(OOO)处理器核。但在不同的实施例中可以使用有序处理器。OOO核包括用于预测要被执行/采取的分支的分支目标缓冲器1020和用于存储指令的地址转换条目的指令转换缓冲器(I-TLB)1020。
核1001还包括耦合至取回单元1020以便对取回的元素进行解码的解码模块1025。在一实施例中,取回逻辑包括分别与线程槽1001a、1001b相关联的个别定序器。通常,核1001与第一ISA相关联,第一ISA定义/指定处理器1000上可执行的指令。通常,作为第一ISA一部分的机器码指令包括一部分指令(称为操作码),该部分指令引用/指定要被执行的指令或操作。解码逻辑1025包括用于从它们的操作码中认出这些指令并且在管线上传递经解码的指令用于如第一ISA所定义那样处理的电路。例如,如以下更详细讨论的,在一实施例中,解码器1025包括被设计或适配成识别特定指令(诸如事务指令)的逻辑。作为解码器1025的识别结果,架构或核1001采取特定的、预定义的动作来执行与适当指令相关联的任务。注意以下是重要的:这里描述的任何任务、块、操作和方法可以响应于单个或多个指令而执行;一些指令可以是新指令或旧指令。注意到,在一实施例中,解码器1026认出相同的ISA(或其子集)。或者,在异构核环境中,解码器1026认出第二ISA(或是第一ISA的子集,或是不同的ISA)。
在一示例中,分配器和重命名器块1030包括分配器以保留资源(诸如寄存器文件)以存储指令处理结果。然而,线程1001a和1001b可能能进行无序执行,其中分配器和重命名器块1030也保留其他资源,诸如用于跟踪指令结果的记录器缓冲器。单元1030也可以包括寄存器重命名器以便将程序/指令引用寄存器重命名为处理器1000内部的其他寄存器。记录器/隐退单元1035包括组件,诸如上述记录器缓冲器、负载缓冲器以及存储缓冲器,用以支持无序执行以及无序执行的指令的稍候有序隐退。
在一实施例中,调度器和执行单元块1040包括调度单元以便在执行单元上调度指令/操作。例如,浮点指令在执行单元的一部分上被调度,该部分具有可用的浮点执行单元。也包括与执行单元相关联的寄存器文件以存储信息指令处理结果。示例性的执行单元包括浮点执行单元、整数执行单元、跳跃执行单元、负载执行单元、存储执行单元以及其他已知的执行单元。
较低级的数据高速缓存和数据转换缓冲器(D-TLB)1050被耦合至(多个)执行单元1040。数据高速缓存用于存储元件上最近使用/操作的诸如数据操作数,数据操作数可能被保持在存储器一致性状态中。D-TLB用于存储最近的虚拟/线性到物理的地址转换。作为一具体示例,处理器可以包括页表结构以将物理存储器分成多个虚拟页。
这里,核1001和1002共享对较高级或更高级高速缓存的访问,诸如与芯片上接口1010相关联的第二级高速缓存。注意到,较高级或更高级是指自(多个)执行单元提升或进一步提升的高速缓存级别。在一实施例中,较高级的高速缓存是最后级数据高速缓存-处理器1000上存储器层级中的最后高速缓存,诸如第二或第三级数据高速缓存。然而,较高级高速缓存不限于此,因为它可以与指令高速缓存相关联或者包括指令高速缓存。取而代之,痕迹(trace)高速缓存(一类指令高速缓存)可以耦合在解码器1025之后以存储最近解码的痕迹。这里,指令可能是指宏指令(即,解码器所认出的通用指令),宏指令可以解码为许多微指令(微操作)。
在所述配置中,处理器1000还包括芯片上接口模块1010。历史上,处理器1000外部的计算机系统中已经包括了存储器控制器,以下更详细地描述存储器控制器。在该场景下,芯片上接口101用于与处理器1000外部的设备通信,诸如系统存储器1075、芯片集(通常包括用于连接至存储器1075的存储器控制器中枢以及用于连接外围设备的I/O控制器中枢)、存储器控制器中枢、北桥或其他集成电路。在此场景中,总线1005可以包括任何已知的互连,诸如多点总线、点对点互连、串行互连、并行总线、相干(例如,高速缓存相干)总线、分层协议架构、差分总线以及GTL总线。
存储器1075可以对处理器1000专用,或者与系统中的其他设备共享。存储器1075的常用类型示例包括DRAM、SRAM、非易失性存储器(NV存储器)以及其他已知存储设备。注意到,设备1080可以包括图形加速器、耦合至存储器控制器中枢的处理器或卡、耦合至I/O控制器中枢的数据存储器、无线收发机、闪速设备、音频控制器、网络控制器或其他已知设备。
然而最近,随着更多的逻辑和设备被集成于单个芯片(诸如SOC)上,这些设备的每一个可以被结合于处理器1000上。例如,在一实施例中,存储器控制器中枢与处理器1000在相同的包和/或芯片上。这里,核的一部分(核上部分)1010包括一个或多个控制器,用于与诸如存储器1075或图形设备1080等其他设备相接口。包括互连以及用于与这些设备相接口的控制器在内的配置通常被称为核上(即,非核配置)。作为一示例,芯片上接口1010包括用于芯片上通信的环形互连以及用于芯片外通信的高速串行点对点链路1005。但是,在SOC环境中,可以在单个芯片或集成电路上集成甚至更多的设备(诸如网络接口、协处理器、存储器1075、图形处理器1080以及任何其他已知的计算机设备/接口)以便以高功能和低功耗来提供小的形状因子。
在一实施例中,处理器1000能够执行编译器、优化和/或转换器代码1077以编译、转换和/或优化应用码1076,以支持这里所述的装置和方法或者与这里所述的装置和方法相接口。编译器通常包括将源文本/代码转换成目标文本/代码的程序或程序集。通常,用编译器对程序/应用码所作的编译在多个阶段中被完成,并且多次通过以将高级编程语言代码转换成低级机器或汇编语言代码。然而,对于简单编译仍可利用单通编译器。编译器可以使用任何已知的编译计数并且执行任何已知的编译器操作,诸如词法分析、预处理、解析、语义分析、代码生成、代码转换以及代码优化。
较大的编译器通常包括多个阶段,但通常这些阶段被包括于两个通用阶段:(1)前端,即,一般是词法处理、语义处理及一些转换/优化所发生的阶段;以及(2)后端,即,一般是分析、转换、优化和代码生成所发生的阶段。一些编译器适用于中间,说明编译器的前端和后端之间的划分是模糊的。结果,编译器的插入引用、关联、生成或其他操作可以发生于任一上述阶段或通过中、以及编译器的任何其他已知阶段或通过中。作为说明性的示例,编译器可能在编译的一个或多个阶段中插入操作、调用、函数等,诸如在编译的前端阶段插入调用/操作、然后在转换阶段将调用/操作转换成较低级代码。注意到在动态编译期间,编译器代码或动态优化代码可以插入这样的操作/调用,以及优化代码供运行时间执行。作为一具体的说明性示例,二进制代码(已编译的代码)可以在运行时间被动态地优化。这里,程序代码可以包括动态优化代码、二进制代码或者它们的组合。
类似于编译器,诸如二进制转换器这样的转换器或统计地或动态地转换代码,以优化和/或转换代码。因此,对代码执行、应用代码、程序代码或其他软件环境的引用可以是指:(1)或动态地或统计地执行编译器程序、优化代码优化器、或转换器,以编译程序代码、维持软件结构、执行其他操作、优化代码、或者转换代码;(2)执行包括操作/调用的主程序代码,主程序代码诸如已被优化/编译的应用代码;(3)执行与主程序代码相关联的其他程序代码(诸如库),以维持软件结构、执行其他软件相关的操作、或者优化代码;或(4)以上的组合。
限制参照图11,示出多核处理器的实施例的框图。如图11的实施例所示,处理器1100包括多个域。具体而言,核域1130包括多个核1130A-1130N,图形域1160包括具有媒体引擎1165的一个或多个图形引擎,以及系统代理域1110。
在各个实施例中,系统代理域1110实施功率控制事件和功率管理,使得域1130和1160的个别单元(例如,核和/或图形引擎)是独立可控的,以便根据给定单元内出现的活动(或不活动)以适当的功率模式/级别(例如,活动、涡轮(turbo)、睡眠、冬眠、深睡眠或其他高级配置功率接口类似的状态)进行动态地操作。域1130和1160的每一个可以以不同的电压和/或功率进行操作,而且,域内的每一个别单元可能以独立的频率和电压进行操作。注意到,虽然仅以三个域示出,但可以理解,本发明的范围不限于此,其他实施例中可以存在附加的域。
如图所示,除了各种执行单元和附加的处理元件以外,每个核1130还包括低级别高速缓存。这里,各个核彼此耦合,且耦合至共享高速缓存存储器,共享高速缓存存储器的形式为最后级高速缓存(LLC)的多个单元或片1140A-1140N;这些LLC通常包括存储器和高速缓存控制器功能并且在多个核间共享、也可能在图形引擎间共享。
如图所示,环形互连1150将核耦合在一起,并且经由多个环停止处1152A―1152N在核域1130、图形域1160和系统代理电路1110间提供互连。如图11所示,互连1150用于携带各种信息,包括地址信息、数据信息、确认信息以及监听/无效信息。尽管图示了环形互连,但是可以利用任何已知的芯片上互连或构造。作为一说明性示例,可以以类似方式使用以上讨论的一些构造(例如,另一芯片上互连、芯片上系统构造(OSF)、高级微处理器总线架构(AMBA)互连、多维网格构造或其他已知的互连架构)。
如进一步描述,系统代理域1110包括显示引擎1112,用于提供对到相关联显示器的接口的控制。系统代理域1110可包括其他单元,诸如:提供了到系统存储器(例如,以多个DIMM实现的DRAM)的接口;的集成的存储器控制器1120;用于执行存储器相干操作的相干逻辑1122。可存在多个接口以便在处理器和其他电路间进行互连。例如,在一实施例中,提供了至少一个直接媒体接口(DMI)1116接口以及一个或多个PCIeTM接口1114。显示引擎以及这些接口一般经由PCIeTM桥1118耦合至存储器。进一步,可以提供一个或多个其他接口,用于在其他代理之间的通信,其他代理诸如附加的处理器或其他电路。
现在参照图12,示出代表性核的框图;具体而言,示出核(诸如图11的核1130)的后端的多个逻辑块。通常,图12所示的结构包括具有前端单元1270的无序处理器,前端单元用于取回传入指令、执行各种处理(例如,高速缓存、解码、分支预测等)并将指令/操作一起传递至无序(OOO)引擎1280。OOO引擎1280对已解码的指令执行进一步的处理。
具体而言在图12的实施例中,无序引擎1280包括分配单元1282,分配单元1282用于自前端单元1270接收已解码指令,并且将已解码指令分配给诸如寄存器等适当的资源,已解码指令的形式可以是一个或多个微-指令即微指令。接着,指令被提供给保留站1284,保留站1284保留资源并且调度资源供在多个执行单元1286A-1286N之一上执行。可以存在各种类型的执行单元,包括例如算术逻辑单元(ALU)、负载和存储单元、向量处理单元(VPU)、浮点执行单元等等。来自这些不同的执行单元的结果被提供给记录缓冲器(ROB)1288,记录缓冲器1288记录无序的结果并返回它们以纠正程序次序。
仍然参照图12,注意到前端单元1270和无序引擎1280被耦合至存储器层级的不同级别。具体而言示出指令集高速缓存1272,指令集高速缓存1272又耦合至中级高速缓存1276,中级高速缓存1276又耦合至最后级高速缓存1295。作为一示例,单元1290类似于图8的系统代理810。如以上讨论的,非核1290与系统存储器1299通信,在所示实施例中,系统存储器1299经由ED RAM实现。还注意到,无序引擎1280内的各个执行单元1286与第一级高速缓存1274通信,第一级高速缓存1274也与中级高速缓存1276通信。还注意到,附加的核1230N-2…1230N可耦合至LLC 1295。尽管在图12的实施例中在此高级别示出,也可以理解,可以存在各种更改和附加的组件。
转至图13,示出了形成有处理器的示例性计算机系统的框图,处理器包括执行单元以执行指令,其中,多个互连的一个或多个按照本发明一实施例来实现一个或多个特征。根据本发明,诸如在此处所述的实施例中,系统1300包括一组件(诸如处理器1302)以采用执行单元,执行单元包括用于执行算法来处理数据的逻辑。系统1300代表基于PENTIUMIIITM、PENTIUM 4TM、XeonTM、Itanium、XScaleTM和/或StrongARMTM微处理器的的处理系统,然而也可以使用其他系统(包括具有其他微处理器、工程师工作站、机顶盒等的PC)。在一实施例中,样本系统1300执行可以从华盛顿雷德蒙的微软公司获得的WINDOWSTM操作系统的一个版本,然而也可以使用其他操作系统(例如UNIX和Linux)、嵌入式软件和/或图形用户界面。因此,本发明的实施例不限于硬件电路和软件的任何具体组合。
实施例不限于计算机系统。本发明的替代实施例可用于诸如手持设备和嵌入式应用的其他设备中。手持设备的一些示例包括蜂窝电话、网际协议设备、数码相机、个人数字助理(PDA)和手持PC。嵌入式应用可包括微控制器、数字信号处理器(DSP)、芯片上系统、网络计算机(NetPC)、机顶盒、网络中枢、广域网(WAN)交换机、或者可按照至少一个实施例执行一个或多个指令的任何其他系统。
在该所示实施例中,处理器1302包括一个或多个执行单元1308以实现用于执行至少一个指令的算法。可以在单处理器台式或服务器系统的上下文中描述一个实施例,但是替代的实施例可以被包括在多处理器系统中。系统1300是“中枢”系统架构的一个示例。计算机系统1300包括处理器1302以处理数据信号。作为一个说明性示例,处理器1302包括复杂指令集计算机(CISC)微处理器、精简指令集计算(RISC)微处理器、极长指令字(VLIW)微处理器、实现指令集的组合的处理器、或者任何其他处理器设备(诸如例如数字信号处理器)。处理器1302耦合至处理器总线1310,处理器总线1310在处理器1302和系统1300中的其他组件之间发射数据信号。系统1300的多个元件(例如,图形加速器1312、存储器控制器中枢1316、存储器1320、I/O控制器中枢1324、无线收发机1326、闪速BIOS 1328、网络控制器1334、音频控制器1336、串行扩展端口1338、I/O控制器1340等)执行对于本领域技术人员熟知的它们的常规功能。
在一实施例中,处理器1302包括级1(L1)内部高速缓存存储器1304。取决于架构,处理器1302可以具有单个内部高速缓存,或多个级别的内部高速缓存。取决于特定实现和需求,一个实施例包括内部和外部高速缓存两者的组合。寄存器文件1306用于将不同类型的数据存储于各种寄存器中,各种寄存器包括整数寄存器、浮点寄存器、向量寄存器、分组(banked)寄存器、影子寄存器、检查点寄存器、状态寄存器以及指令指针寄存器。
执行单元1308也驻留于处理器1302中,执行单元1308包括用于执行整数和浮点运算的逻辑。在一实施例中,处理器1302包括用于存储微代码的微代码(微码)ROM,微代码在被执行时用于执行特定宏指令的算法或处理复杂情况。这里,微代码可能可被更新以实施处理器1302的逻辑错误/修复。对于一个实施例,执行单元1308包括用于处理分组指令集1309的逻辑。通过将分组指令集1309包括于通用处理器1302的指令集中,连同用于执行指令的相关联电路,可以使用通用处理器1302中的分组数据来执行由许多多媒体应用所使用的操作。由此,通过使用处理器的数据总线的完全宽度来对分组数据执行操作,可以更有效地加速和执行许多多媒体应用。这潜在地消除了跨处理器的数据总线传递较小数据单元以执行一个或多个操作的需求,一次传递一个数据元素。
执行单元1308的替代实施例也可用于微控制器、嵌入式处理器、图形设备、DSP和其他类型的逻辑电路中。系统1300包括存储器1320。存储器1320包括动态随机存取存储器(DRAM)设备、静态随机存取存储器(SRAM)设备、闪存设备或其他存储器设备。存储器1320存储由数据信号所表示的指令和/或数据,数据信号要由处理器1302执行。
注意到,本发明的上述特征或方面的任一个可用于图13所示的一个或多个互连上。例如,芯片上互连(ODI)(未示出)用于耦合处理器1302的内部单元,芯片上互连实现了上述本发明的一个或多个方面。或者,本发明与以下相关联:处理器总线1310(例如其他已知的高性能计算互连)、到存储器1320的高带宽存储器路径1318、到图形加速器1312的点对点链路(例如,外围组件互连快线(PCIe)兼容的构造)、控制器中枢互连1322、用于耦合其他所示组件的I/O或其他互连(例如,USB、PCI、PCIe)。这些组件的一些示例包括音频控制器1336、固件中枢(闪速BIOS)1328、无线收发机1326、数据存储器1324、包含用户输入和键盘接口1342的的传统I/O控制器1310、诸如通用串行总线(USB)的串行扩展端口1338、以及网络控制器1334。数据存储设备1324可包括硬盘驱动器、软盘驱动器、CD-ROM设备、闪存设备或其他大容量存储设备。
现在参照图14,示出按照本发明一实施例的第二系统1400的框图。如图14所示,微处理器1400是点对点互连系统,并且包括经由点对点互连1450耦合的第一处理器1470和第二处理器1480。处理器1470和1480的每一个可以是处理器的某一版本。在一实施例中,1452和1454是串行的点对点相干互连(诸如高性能架构)的一部分。结果,本发明可以在QPI架构内实现。
尽管示出仅有两个处理器1470、1480,但应当理解,本发明的范围不限于此。在其他实施例中,一个或多个附加的处理器可存在于给定处理器中。
所示的处理器1470和1480分别包括集成的存储器控制器单元1472和1482。处理器1470还包括点对点(P-P)接口1476和1478作为其总线控制器单元的一部分;类似地,第二处理器1480包括P-P接口1486和1488。处理器1470、1480可以使用接口电路1478、1488经由点对点(P-P)接口1450交换信息。如图14所示,IMC 1472和1482将处理器耦合至相应的存储器,也就是存储器1432和存储器1434,存储器1432和存储器1434可以是本地附着于相应处理器的主存储器的部分。
处理器1470、1480的每一个均使用点对点接口电路1476、1494、1486、1498经由个别的P-P接口1452、1454与芯片集1490交换信息。芯片集1490也根据高性能图形互连1439,经由接口电路1492与高性能图形电路1438交换信息。
共享高速缓存(未示出)可以被包括于或任一处理器内或两个处理器外;仍经由P-P互连与处理器相连接,使得在处理器被置于低功率模式时,任一个或两个处理器的本地高速缓存信息可以被存储于共享高速缓存中。
芯片集1490可以经由接口1496耦合至第一总线1416。在一实施例中,第一总线1416可以是外围组件互连(PCI)总线、或者诸如PCI Express(快速)总线这样的总线或者另一第三代I/O互连总线,然而本发明的范围不限于此。
如图14所示,各种I/O设备1414耦合至第一总线1416,连同将第一总线1416耦合至第二总线1420的总线桥1418。在一实施例中,第二总线1420包括低引脚数(LPC)总线。各种设备耦合至第二总线1420,包括例如键盘和/或鼠标1422、通信设备1427以及诸如磁盘驱动器或其他大容量存储设备的存储单元1428,在一实施例中,存储单元通常包括指令/代码和数据1430。而且,所示音频I/O 1424耦合至第二总线1420。注意到其他架构也是可能的,其中所包括的组件和互连架构可以变化。例如,取代图14的点对点架构,系统可以实现多点总线或其他这样的架构。
接下来转至图15,描述了按照本发明的芯片上系统(SOC)设计的实施例。作为具体的说明性示例,SOC 1500被包括于用户设备(UE)中。在一实施例中,UE是指要由终端用户用来传送的任何设备,诸如手持电话、智能电话、平板电脑、超薄笔记本电脑、具有宽带适配器的笔记本电脑或者任何其他类似的通信设备。通常UE连至基站或节点,基站或节点可能从性质上对应于GSM网络中的移动站(MS)。
这里,SOC 1500包括2个核――1506和1507。类似于以上的讨论,核1506和1507可以符合指令集架构,诸如基于
Figure BDA0002566958350000421
架构核TM的处理器、高级微设备公司(AMD)的处理器、基于MIPS的处理器、基于ARM的处理器或者其消费者以及它们的许可证或采用者。核1506和1507耦合至高速缓存控件1508,高速缓存控件1508与总线接口单元1509和L2高速缓存1511相关联以便与系统1500的其他部分通信。互连1510包括芯片上互连,诸如IOSF、AMBA或以上讨论的其他互连,芯片上互连可能实现此处描述的一个或多个方面。
互连1510向其他组件提供通信信道,其他组件诸如订户身份模块(SIM)1530、SDRAM控制器1540、闪存控制器1545、外围控件1550、GPU 1515等等,其中,订户身份模块(SIM)1530用于与SIM卡、引导rom 1535相接口,以保留由核1506和1507执行以初始化和引导SOC 1500的引导代码;SDRAM控制器1540用于与外部存储器(例如,DRAM 1560)相接口;闪存控制器1545用于与非易失性存储器(例如,闪存1565)相接口;外围控件1550(例如,串行外围接口)用于与外围设备、视频编解码器1520和视频接口1525相接口以显示和接收输入(例如,触控输入);GPU 1515用于执行图形相关的计算。任何这些接口可以结合这里所述的本发明的各方面。
此外,系统示出用于通信的外围设备,诸如蓝牙模块1570、3G调制解调器1575、GPS1585及WiFi 1585。注意到如上所述,UE包括用于通信的无线电。结果,这些外围设备通信模块不是全部需要的。然而,在UE中,要包括用于外部通信的某一形式的无线电。
尽管已经相对于有限数量的实施例描述了本发明,但是本领域的技术人员会理解从中得出的许多修改和变化。所附权利要求书意图覆盖所有这些修改和变化,它们落在本发明的实际精神和范围内。
设计可以经历各种阶段,从创建到仿真到制造。表示设计的数据可以以许多方式来表示该设计。首先,如仿真中有用的,硬件可以用硬件描述语言或另一功能描述语言来表示。此外,可以在设计过程的某些阶段产生具有逻辑和/或晶体管门的电路级模型。而且,许多设计在某一阶段达到了表示各个设备在硬件模型中的物理位置的数据级别。在使用常规半导体制造技术的情况下,表示硬件模型的数据可以是指定各个特征在用于生产集成电路的掩膜的不同掩膜层上存在或不存在的数据。在设计的任何表示中,数据可以被存储于任何形式的机器可读介质中。存储器或者诸如磁盘的磁性或光学存储器可以是机器可读介质,机器可读介质用于存储经由光波或电波发射的信息,光波或电波被调制或以其他方式生成以发射这样的信息。当发射指示或携带代码或设计的电载波时,就电信号的复制、缓冲或重传的方面来说,制作新的副本。由此,通信提供商或网络提供商可以至少暂时地在有形的机器可读介质上存储体现本发明实施例的技术的项目,所述项目诸如被编码为载波的信息。
这里使用的模块是指硬件、软件和/或固件的任何组合。作为一示例,模块包括与非暂时性介质相关联的硬件(诸如微控制器),用于存储适合由微控制器执行的代码。因此,在一实施例中,对模块的引用是引用硬件,硬件被专门配置为认出和/或执行要被保持于非暂时性介质上的代码。而且,在另一实施例中,模块的使用是指包括代码的非暂时性介质,代码专门适用于由微处理器执行以便执行预定的操作。在还有另一实施例中,如可推断的,术语模块(在该示例中)是指微处理器和非暂时性介质的组合。通常,图示为分开的模块边界通常会变化并且可能重叠。例如,第一和第二模块可以共享硬件、软件、固件或它们的组合,而可能保留某些独立的硬件、软件或固件。在一实施例中,术语逻辑的使用包括诸如晶体管、寄存器等硬件,或者诸如可编程逻辑器件等其他硬件。
在一实施例中,短语“被配置为”的使用是指对装置、硬件、逻辑或元件进行排列、置于一起、制造、承诺销售、进口和/或设计以执行指定的或确定的任务。在该示例中,如果装置或其元件被设计、耦合和/或互连以执行指定的任务,则装置或元件即使未在运行也仍然“被配置成”执行所述指定的任务。作为纯说明性的示例,逻辑门可以在运算期间提供0或1。但是逻辑门“被配置成”向时钟提供使能信号不包括可能提供1或0的每个可能的逻辑门。相反,逻辑门是以在操作期间1或0输出用于启用时钟的方式耦合的门。再次注意到,术语“被配置成”的使用不要求操作,而是聚焦于装置、硬件和/或元件的潜伏状态,其中在潜伏状态中,装置、硬件和/或元件被设计成在装置、硬件和/或元件正在操作时执行特定的任务。
而且,在一实施例中,短语“用于”、“能够/以”以及或者“可操作用于”的使用是指装置、硬件和/或元件以能以指定方式使用装置、硬件和/或元件的方式被设计。注意到以上,在一实施例中,“用于”、“能够”或“可操作用于”的使用是指装置、硬件和/或元件的潜伏状态,其中装置、硬件和/或元件不在操作,但是以能以指定方式使用装置的方式被设计。
如此处使用的,值包括数字、状态、逻辑状态或二进制逻辑状态的任何已知表示。通常,逻辑电平、逻辑值或逻辑的值的使用也被称为1和0,仅表示二进制逻辑状态。例如,1是指高逻辑电平,0是指低逻辑电平。在一实施例中,存储单元(诸如晶体管或闪存单元)可能能够保持单个逻辑值或多个逻辑值。然而,已经使用了计算机系统中值的其他表示。例如,十进制数10也可以被表示为二进制值1010和十六进制字母A。因此,值包括能被保持在计算机系统中的信息的任何表示。
此外,状态可由值或值的部分表示。作为一示例,第一值(诸如逻辑1)可以表示缺省或初始状态,而第二值(诸如逻辑0)可以表示非缺省状态。此外,在一实施例中,术语重置和设置分别指缺省的和更新的值或状态。例如,缺省的值可能包括高逻辑值,即重置,而更新的值可能包括低逻辑值,即设置。注意到,可以使用值的任何组合来表示任何数量的状态。
以上提出的方法、硬件、软件、固件或代码的实施例可以经由机器可存取、机器可读、计算机可存取或计算机可读介质上存储的指令或代码来实现,指令或代码可由处理元件执行。非暂时性的机器可存取/可读介质包括以可由机器(诸如计算机或电子系统)读取的形式提供(即,存储和/或发射)信息的任何机制。例如,非暂时性的机器可存取介质包括随机存取存储器(RAM)(诸如静态RAM(SRAM)或动态RAM(DRAM));ROM;磁性或光学存储介质;闪存设备;电子存储设备;光学存储设备;声学存储设备;其他形式的用于保持从瞬时(传播的)信号接收到的信息的存储设备等等,这些其他存储设备区别于可以接收信息的非暂时性介质。
用于对逻辑编程以执行本发明多个实施例的指令可以被存储在系统中的存储器内,诸如DRAM、高速缓存、闪存或其他存储器。而且,指令可以经由网络或通过其他计算机可读媒介来分布。由此,机器可读介质可以包括用于以机器(例如计算机)可读的形式存储或发射信息的任何机制,包括但不限于:软盘、光盘、压缩盘、只读存储器(CD-ROM)和磁光盘、只读存储器(ROM)随机存取存储器(RAM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、磁或光卡、闪存或者有形的、机器可读存储器,这些存储器用于经由电学、光学、声学或其他形式的传播信号(例如,载波、红外信号、数字信号等)。因而,计算机可读介质包括适用于以机器(例如,计算机)可读形式存储或发射电子指令或信息的任何类型的有形机器可读介质。
以下示例关于按照本说明书的实施例。一个或多个实施例提供了装置、系统、机器可读存储器、机器可读介质和方法来初始化链路,其中,链路要包括多个道,发射机和接收机要与多个巷道中的每个巷道耦合,链路的重新初始化要包括在每一巷道上发射预定义的序列,其中重新初始化在不终止链路的情况下提供。
在至少一个示例中,预定义的序列要从发射机被发送至接收机,接收机要将预定义的序列重复发送到发射机。
在至少一个示例中,序列包括电空闲退出有序集(EIEOS)。
在至少一个示例中,序列还包括训练序列的多个实例。
在至少一个示例中,要重复的EIEOS是根据最小频率的序列。
在至少一个示例中,重复序列直到链路被初始化。
一个或多个示例还可以提供验证预定义序列的接收实例以检测链路上的代理。
在至少一个示例中,链路包括差分串行数据链路。
在至少一个示例中,序列在重置状态期间被发送,以便发信号通知自重置状态退出。
一个或多个实施例可以提供装置、系统、机器可读存储器、机器可读介质和方法以在差分串行数据链路的多个道上将预定义序列发射至连接至该数据链路的另一实体、自该另一实体接收预定义序列的确认、以及使用该预定义序列来实施数据链路的初始化。
在至少一个实施例中,飞片可以通过数据链路自第一设备被发送至第二设备。第一第二设备可包括微处理器、图形加速器及其他设备。
以下示例关于按照该说明书的实施例。一个或多个实施例可以提供装置、系统、机器可读存储器、机器可读介质和方法以在包括多个巷道的链路上在每一个巷道上检测预定义序列,并且基于预定义序列的检测来确定另一代理的状态。
一个或多个示例还可将预定义序列发回音至该另一代理。
在至少一个示例中,序列包括EIEOS,预定义序列的检测包括序列的验证。
在至少一个示例中,序列的验证至少部分基于标识该EIEOS根据预定义的频率被重复。
在至少一个示例中,序列在整个特定链路初始化状态时被重复。
在至少一个示例中,序列指示初始化状态。
在至少一个示例中,初始化状态被包括在链路的重新初始化中。
在至少一个示例中,序列在重置状态期间被检测,并且指示自重置状态退出。
一个或多个实施例可以提供装置、系统、机器可读存储器、机器可读介质和方法以监视链路初始化期间的循环,并且响应于确定初始化期间的不成功循环而使链路初始化挂起。
一个或多个示例还可在初始化期间在状态机内维持循环的计数。
在至少一个示例中,计数要被维持于使用链路通信连接的每个代理上。
在至少一个示例中,计数要在链路成功初始化时被重置。
在至少一个示例中,链路的成功初始化包括进入链路发射状态。
在至少一个示例中,循环包括重新进入链路训练状态机的重置状态。
在至少一个示例中,链路的初始化在链路训练状态机的重置状态中被挂起。
在至少一个示例中,链路的被挂起初始化要响应于来自控制器的命令而重启。
在至少一个示例中,链路具有20个巷道的链路宽度。
一个或多个实施例可以提供装置、系统、机器可读存储器、机器可读介质和方法以确定是否结合特定初始化状态而执行一个或多个初始化任务;以及基于确定是否执行初始化任务,应用短定时器以自特定状态转换。
一个或多个示例还可以应用第二短定时器以自第二初始化状态转换,第二短定时器的持续期不同于第一短定时器的持续期。
在至少一个示例中,短定时器基于确定不执行初始化任务而被应用。
在至少一个示例中,特定初始化状态的长定时器基于确定执行初始化任务而被应用。
在至少一个示例中,确定是基于短定时器被启用的指示。
在至少一个示例中,短定时器由基于软件的控制器启用。
在至少一个示例中,短定时器基于确定与初始化任务相关联的配置已完成而被启用。
在至少一个示例中,链路包括差分串行数据链路。
一个或多个实施例可以提供装置、系统、机器可读存储器、机器可读介质和方法以在第一模式中以第一速度发射飞片、以及在第二模式中以第二速度发射飞片,其中锁相环(PLL)速度在第一模式和第二模式中相同。
在至少一个示例中,第一速度包括操作速度,第二速度包括慢速度。
在至少一个示例中,慢速度要由操作速度仿真。
在至少一个示例中,仿真慢速度包括以操作速度发送一系列位以仿真慢模式中的位。
在至少一个示例中,物理层逻辑还用于从第一速度转换为第二速度。
在至少一个示例中,转换是基于至少一个部分基于软件的控制器的请求。
一个或多个实施例可以提供装置、系统、机器可读存储器、机器可读介质和方法以:确定第一设备的操作速度,第一设备要在链路上被连至第二设备;确定第二设备的操作速度;以及确定要由第一和第二设备在数据在链路上的传输期间应用的常用的慢速度。
在至少一个示例中,常用的慢速度在链路初始化期间确定。
在至少一个示例中,第一设备的操作速度不同于第二设备的操作速度,链路的初始化还包括确定常用的操作速度。
在至少一个示例中,常用的操作速度是基于第一和第二设备的操作速度中的较慢者。
在至少一个示例中,确定常用的慢模式包括:确定要应用于第一设备的操作速度以实现常用慢速度的第一比率;以及确定要应用于第二设备的操作速度以实现常用慢速度的第二比率。
在至少一个示例中,常用慢速度要由操作速度来仿真。
在至少一个示例中,仿真慢速度包括以相应的操作速度来发送一系列位以便仿真常用慢模式中的位。
一个或多个示例还可以提供被配置成耦合至链路的物理层(PHY),该链路包括第一数量个巷道,其中PHY包括同步(sync)计数器,且其中PHY用于发射电空闲退出有序集(EIEOS),电空闲退出有序集(EIEOS)与和训练序列相关联的同步计数器对齐。
在至少一个示例中,来自同步计数器的同步计数器值不在每个训练序列期间被交换。
一个或多个示例还可以提供被配置成耦合至链路的物理层(PHY),该链路包括第一数量个巷道,其中PHY包括同步(sync)计数器,且其中PHY用于发射电空闲退出有序集(EIEOS),电空闲退出有序集(EIEOS)与和训练序列相关联的同步计数器对齐。
在至少一个示例中,来自同步计数器的同步计数器值在每个训练序列期间不被交换。
在至少一个示例中,与同步计数器的EIEOS对齐要充当一代理,该代理用于在每个训练序列期间交换来自同步计数器的同步计数器值。
一个或多个示例还可以提供被配置成耦合至链路的物理层(PHY),PHY用于包括软件可修改寄存器和PHY状态机,软件可修改寄存器包括控制字段,PHY状态机用于在多个状态间转换,其中PHY状态机用于基于寄存器的控制字段的第一值来保持第一状态和第二状态之间的转换。
在至少一个示例中,PHY状态机用于响应于软件将寄存器的控制字段更新至第二值而在第一状态和第二状态之间转换。
一个或多个示例还可以提供被配置成耦合至链路的物理层(PHY),PHY用于包括PHY状态机以在多个状态之间转换,其中PHY状态机能够基于握手事件自第一状态转换至第二状态、以及基于主定时器事件将PHY自第三状态转换至第四状态。
在至少一个示例中,PHY状态机能够基于主定时器事件结合次定时器事件而将PHY自第五状态转换至第六状态。
一个或多个示例还可以提供被配置成耦合至链路的物理层(PHY),该链路包括第一数量个巷道,其中PHY用于以第一速度发射飞片、以及以第二速度发射飞片,且其中锁相环(PLL)速度在快模式和慢模式中相同。
在至少一个示例中,第一速度是慢速度,第二速度是快速度。
在至少一个示例中,PHY用于以慢速度发射飞片包括:在不改变PLL速度的情况下,PHY以快速度连续多次发射飞片的位,以仿真慢速度下的该位。
一个或多个示例还可以提供被配置成耦合至链路的物理层(PHY),该链路包括第一数量个巷道,其中PHY用于在慢模式中以慢速度发射飞片、以及在快模式中以快速度发射飞片,快速度大于2倍的慢速度,且其中锁相环(PLL)速度在快模式和慢模式中相同。
本说明书中通篇引用“一个实施例”或“一实施例”意指结合本发明至少一个实施例中所包括的实施例所描述的特定的特征、结构或特性。因此,本说明书中各处出现的短语“在一个实施例中”或“在一实施例中”不必要全部指同一个实施例。而且,特定的特征、结构或特性可以以任何适当的方式被组合在一个或多个实施例中。
在以上说明书中,已经参照具体的示例性实施例给出了详细描述。然而显而易见的是,可以对其作出各种修改和变化,而不背离所附权利要求书中所提出的本发明的更宽的精神和范围。因此,说明书和服务被视为是示意性的,而不是限制性的。而且,实施例及其他示例性语言的以上使用不必要是指相同的实施例或相同的示例,而可以指不同的和相异的实施例,以及可能相同的实施例。

Claims (20)

1.一种装置,包括:
处理器,所述处理器包括:
物理层电路,所述物理层电路用于:
在链路的物理层的训练中发送第一训练序列,其中,所述第一训练序列包括重复序列,所述第一训练序列包括用于模仿低速时钟的特定模式,所述第一训练序列用于重复第一频率,并且所述第一训练序列被定义为标识所述训练中的第一训练任务,其中,所述第一训练任务包括设备检测任务;
在所述链路的所述物理层的所述训练中发送第二训练序列,其中,所述第二训练序列与所述第一训练序列不同,所述第二训练序列包括重复序列,所述第二训练序列包括所述特定模式,所述第二训练序列以比所述第一频率慢的第二频率重复,并且所述第二训练序列被定义为标识所述训练中的第二训练任务,其中,所述第二训练任务包括确定所述链路上的巷道极性。
2.如权利要求1所述的装置,其中,所述物理层电路进一步用于发送同步信号,其中,所述链路用于至少部分地基于所述同步信号被发起。
3.如权利要求1所述的装置,其中,所述特定模式包括十六进制值xFF00。
4.如权利要求1所述的装置,其中,所述第一训练序列或所述第二训练序列中的至少一个未经扰频。
5.如权利要求4所述的装置,其中,所述第一训练序列和所述第二训练序列两者都未经扰频。
6.如权利要求1所述的装置,其中,链路层电路用于生成飞片并使所述飞片在所述链路上被发送。
7.如权利要求6所述的装置,其中,所述飞片中的一个或多个飞片包括多个槽。
8.如权利要求1所述的装置,其中,分层协议包括相干互连协议。
9.如权利要求1所述的装置,其中,所述链路包括至少8个巷道,并且所述第一训练序列和所述第二训练序列在所述至少8个巷道上被发送。
10.如权利要求1所述的装置,其中,所述第一训练序列和所述第二训练序列与所述链路的重置相关联地被发送。
11.如权利要求1所述的装置,进一步包括:
链路层电路,用于实现所述链路的链路层的至少部分;以及
协议层逻辑,用于实现所述链路的协议层的至少部分。
12.一种装置,包括:
物理层电路,用于实现分层协议的物理层的至少部分;
链路层电路,用于实现所述分层协议的链路层的至少部分;
协议层电路,用于实现所述分层协议的协议层的至少部分,
其中,所述物理层电路用于:
在链路的训练中接收第一训练序列,其中,所述第一训练序列包括重复序列,所述第一训练序列包括用于模仿低速时钟的特定模式,所述第一训练序列以第一频率重复,并且所述第一训练序列被定义为标识所述训练中的第一训练任务,其中,所述第一训练任务包括设备检测任务;以及
在所述链路的所述物理层的所述训练中接收第二训练序列,其中,所述第二训练序列与所述第一训练序列不同,所述第二训练序列包括重复序列,所述第二训练序列包括所述特定模式,所述第二训练序列以比所述第一频率慢的第二频率重复,并且所述第二训练序列被定义为标识所述训练中的第二训练任务,其中,所述第二训练任务包括确定所述链路上的巷道极性;并且
其中,所述链路层电路用于生成飞片并使所述飞片在所述链路上被发送。
13.如权利要求12所述的装置,其中,所述物理层电路进一步用于将所述第一训练序列的实例发送到另一设备,并且响应于所述第一训练序列的所述实例的发送,所述第一训练序列从所述另一设备被接收。
14.如权利要求12所述的装置,其中,所述物理层电路进一步用于将所述第二训练序列的实例发送到另一设备,并且响应于所述第二训练序列的所述实例的发送,所述第二训练序列从所述另一设备被接收。
15.如权利要求12所述的装置,其中,所述物理层电路进一步用于接收同步信号,其中,所述链路用于至少部分地基于所述同步信号被发起。
16.如权利要求12所述的装置,其中,所述特定模式包括十六进制值xFF00。
17.如权利要求12所述的装置,其中,所述第一训练序列和所述第二训练序列中的一个或多个未经扰频。
18.如权利要求12所述的装置,其中,所述分层协议包括相干互连协议。
19.一种系统,包括:
主机设备,所述主机设备包括处理器;
端点设备,通过互连耦合至所述处理器,
其中,所述主机设备包括:
物理层电路,用于实现分层协议的物理层的至少部分,其中,所述物理层电路用于;
在链路的训练中发送第一训练序列,所述链路用于所述主机设备与所述端点设备之间的通过所述互连的通信,其中,所述第一训练序列包括重复序列,所述第一训练序列包括用于模仿低速时钟的特定模式,所述第一训练序列以第一频率重复,并且所述第一训练序列被定义为标识所述训练中的第一训练任务,其中,所述第一训练任务包括设备检测任务;
在所述链路的所述训练中发送第二训练序列,其中,所述第二训练序列与所述第一训练序列不同,所述第二训练序列包括重复序列,所述第二训练序列包括所述特定模式,所述第二训练序列以比所述第一频率慢的第二频率重复,并且所述第二训练序列被定义为标识所述训练中的第二训练任务,其中,所述第二训练任务包括确定所述链路上的巷道极性。
20.一种方法,包括:
在链路的训练中发送第一训练序列,所述链路用于主机设备与端点设备之间的通过互连的通信,其中,所述第一训练序列包括重复序列,所述第一训练序列包括用于模仿低速时钟的特定模式,所述第一训练序列以第一频率重复,并且所述第一训练序列被定义为标识所述训练中的第一训练任务,其中,所述第一训练任务包括设备检测任务;
在所述链路的所述训练中发送第二训练序列,其中,所述第二训练序列与所述第一训练序列不同,所述第二训练序列包括重复序列,所述第二训练序列包括所述特定模式,所述第二训练序列以比所述第一频率慢的第二频率重复,并且所述第二训练序列被定义为标识所述训练中的第二训练任务,其中,所述第二训练任务包括确定所述链路上的巷道极性;以及
与所述链路的初始化相关联地发送至少一个同步模式。
CN202010633738.7A 2012-10-22 2013-03-15 用于高性能互连物理层的装置、方法和系统 Active CN111737167B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010633738.7A CN111737167B (zh) 2012-10-22 2013-03-15 用于高性能互连物理层的装置、方法和系统

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201261717091P 2012-10-22 2012-10-22
US61/717,091 2012-10-22
PCT/US2013/032690 WO2014065877A1 (en) 2012-10-22 2013-03-15 High performance interconnect physical layer
CN202010633738.7A CN111737167B (zh) 2012-10-22 2013-03-15 用于高性能互连物理层的装置、方法和系统
CN201380016998.8A CN104335196B (zh) 2012-10-22 2013-03-15 用于传送数据的方法、装置和系统

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201380016998.8A Division CN104335196B (zh) 2012-10-22 2013-03-15 用于传送数据的方法、装置和系统

Publications (2)

Publication Number Publication Date
CN111737167A true CN111737167A (zh) 2020-10-02
CN111737167B CN111737167B (zh) 2024-05-28

Family

ID=50485278

Family Applications (26)

Application Number Title Priority Date Filing Date
CN201380049203.3A Active CN104969206B (zh) 2012-10-22 2013-03-15 高性能互连物理层
CN201710038141.6A Active CN106776364B (zh) 2012-10-22 2013-03-15 用于高性能互连物理层的装置、方法和系统
CN201380049212.2A Active CN104769570B (zh) 2012-10-22 2013-03-15 控制多时隙链路层微片中的消息收发
CN201380016998.8A Active CN104335196B (zh) 2012-10-22 2013-03-15 用于传送数据的方法、装置和系统
CN201380049066.3A Active CN104737147B (zh) 2012-10-22 2013-03-15 高性能互连物理层
CN201380016955.XA Active CN104380269B (zh) 2012-10-22 2013-03-15 高性能互连相干协议
CN201710093224.5A Active CN107015924B (zh) 2012-10-22 2013-03-15 高性能互连物理层
CN201410582176.2A Active CN104391816B (zh) 2012-10-22 2013-03-15 高性能互连物理层
CN201710043551.XA Active CN106681938B (zh) 2012-10-22 2013-03-15 用于控制多时隙链路层微片中的消息收发的装置和系统
CN201710043763.8A Active CN107045479B (zh) 2012-10-22 2013-03-15 高性能互连物理层
CN201380049199.0A Pending CN104969207A (zh) 2012-10-22 2013-03-15 高性能互连一致性协议
CN201810337297.9A Active CN108614783B (zh) 2012-10-22 2013-03-15 一致性协议表
CN202010633738.7A Active CN111737167B (zh) 2012-10-22 2013-03-15 用于高性能互连物理层的装置、方法和系统
CN201810011011.8A Active CN108055214B (zh) 2012-10-22 2013-03-15 用于对数据进行通信的装置和系统
CN201711159546.1A Active CN108228495B (zh) 2012-10-22 2013-03-15 高性能互连物理层
CN201380049062.5A Active CN104756097B (zh) 2012-10-22 2013-03-15 一致性协议表
CN201710038234.9A Active CN106815151B (zh) 2012-10-22 2013-03-15 高性能互连相干协议
CN201380055335.7A Active CN104737142B (zh) 2012-10-22 2013-03-16 多时隙链路层流控制单元
CN201380017285.3A Active CN104487958B (zh) 2012-10-22 2013-03-27 高性能互连物理层
CN201710067578.2A Active CN107102960B (zh) 2012-10-22 2013-03-27 高性能互连物理层
CN201810095156.0A Active CN108132892B (zh) 2012-10-22 2013-03-27 高性能互连物理层
CN201410751146.XA Active CN104536933B (zh) 2012-10-22 2013-03-27 高性能互连物理层
CN201380049075.2A Active CN104995614B (zh) 2012-10-22 2013-03-27 高性能互连物理层
CN201710243776.XA Active CN107092565B (zh) 2012-10-22 2013-03-27 高性能互连物理层
CN201711267378.8A Active CN107968756B (zh) 2012-10-22 2013-03-28 高性能互连链路层
CN201380016778.5A Active CN104303166B (zh) 2012-10-22 2013-03-28 高性能互连链路层

Family Applications Before (12)

Application Number Title Priority Date Filing Date
CN201380049203.3A Active CN104969206B (zh) 2012-10-22 2013-03-15 高性能互连物理层
CN201710038141.6A Active CN106776364B (zh) 2012-10-22 2013-03-15 用于高性能互连物理层的装置、方法和系统
CN201380049212.2A Active CN104769570B (zh) 2012-10-22 2013-03-15 控制多时隙链路层微片中的消息收发
CN201380016998.8A Active CN104335196B (zh) 2012-10-22 2013-03-15 用于传送数据的方法、装置和系统
CN201380049066.3A Active CN104737147B (zh) 2012-10-22 2013-03-15 高性能互连物理层
CN201380016955.XA Active CN104380269B (zh) 2012-10-22 2013-03-15 高性能互连相干协议
CN201710093224.5A Active CN107015924B (zh) 2012-10-22 2013-03-15 高性能互连物理层
CN201410582176.2A Active CN104391816B (zh) 2012-10-22 2013-03-15 高性能互连物理层
CN201710043551.XA Active CN106681938B (zh) 2012-10-22 2013-03-15 用于控制多时隙链路层微片中的消息收发的装置和系统
CN201710043763.8A Active CN107045479B (zh) 2012-10-22 2013-03-15 高性能互连物理层
CN201380049199.0A Pending CN104969207A (zh) 2012-10-22 2013-03-15 高性能互连一致性协议
CN201810337297.9A Active CN108614783B (zh) 2012-10-22 2013-03-15 一致性协议表

Family Applications After (13)

Application Number Title Priority Date Filing Date
CN201810011011.8A Active CN108055214B (zh) 2012-10-22 2013-03-15 用于对数据进行通信的装置和系统
CN201711159546.1A Active CN108228495B (zh) 2012-10-22 2013-03-15 高性能互连物理层
CN201380049062.5A Active CN104756097B (zh) 2012-10-22 2013-03-15 一致性协议表
CN201710038234.9A Active CN106815151B (zh) 2012-10-22 2013-03-15 高性能互连相干协议
CN201380055335.7A Active CN104737142B (zh) 2012-10-22 2013-03-16 多时隙链路层流控制单元
CN201380017285.3A Active CN104487958B (zh) 2012-10-22 2013-03-27 高性能互连物理层
CN201710067578.2A Active CN107102960B (zh) 2012-10-22 2013-03-27 高性能互连物理层
CN201810095156.0A Active CN108132892B (zh) 2012-10-22 2013-03-27 高性能互连物理层
CN201410751146.XA Active CN104536933B (zh) 2012-10-22 2013-03-27 高性能互连物理层
CN201380049075.2A Active CN104995614B (zh) 2012-10-22 2013-03-27 高性能互连物理层
CN201710243776.XA Active CN107092565B (zh) 2012-10-22 2013-03-27 高性能互连物理层
CN201711267378.8A Active CN107968756B (zh) 2012-10-22 2013-03-28 高性能互连链路层
CN201380016778.5A Active CN104303166B (zh) 2012-10-22 2013-03-28 高性能互连链路层

Country Status (9)

Country Link
US (20) US9418035B2 (zh)
EP (2) EP2909728A4 (zh)
JP (2) JP6139689B2 (zh)
KR (27) KR101754890B1 (zh)
CN (26) CN104969206B (zh)
BR (1) BR112015006432A2 (zh)
DE (14) DE112013004094B4 (zh)
RU (2) RU2599971C2 (zh)
WO (11) WO2014065880A1 (zh)

Families Citing this family (201)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013105967A1 (en) * 2012-01-13 2013-07-18 Intel Corporation Efficient peer-to-peer communication support in soc fabrics
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
US9280507B2 (en) 2012-10-22 2016-03-08 Intel Corporation High performance interconnect physical layer
US9355058B2 (en) 2012-10-22 2016-05-31 Intel Corporation High performance interconnect physical layer
WO2014065880A1 (en) 2012-10-22 2014-05-01 Robert Beers Coherence protocol tables
US9479196B2 (en) 2012-10-22 2016-10-25 Intel Corporation High performance interconnect link layer
US9367474B2 (en) * 2013-06-12 2016-06-14 Apple Inc. Translating cache hints
US20150006962A1 (en) * 2013-06-27 2015-01-01 Robert C. Swanson Memory dump without error containment loss
CN104579605B (zh) * 2013-10-23 2018-04-10 华为技术有限公司 一种数据传输方法及装置
US9325449B2 (en) 2013-12-06 2016-04-26 Intel Corporation Lane error detection and lane removal mechanism to reduce the probability of data corruption
US9306863B2 (en) * 2013-12-06 2016-04-05 Intel Corporation Link transfer, bit error detection and link retry using flit bundles asynchronous to link fabric packets
US9397792B2 (en) 2013-12-06 2016-07-19 Intel Corporation Efficient link layer retry protocol utilizing implicit acknowledgements
JP6221717B2 (ja) * 2013-12-12 2017-11-01 富士通株式会社 ストレージ装置、ストレージシステム及びデータ管理プログラム
CN105765544B (zh) * 2013-12-26 2019-04-09 英特尔公司 多芯片封装链路
RU2645288C2 (ru) 2013-12-26 2018-02-19 Интел Корпорейшн Усовершенствование интерфейса pci express
US9594719B2 (en) 2014-02-03 2017-03-14 Valens Semiconductor Ltd. Seamless addition of high bandwidth lanes
US9628382B2 (en) 2014-02-05 2017-04-18 Intel Corporation Reliable transport of ethernet packet data with wire-speed and packet data rate match
CN105095147B (zh) * 2014-05-21 2018-03-13 华为技术有限公司 片上网络的Flit传输方法及装置
RU2608881C2 (ru) 2014-05-28 2017-01-25 Общество С Ограниченной Ответственностью "Яндекс" Способ и система для управления турборежимом
US9733847B2 (en) 2014-06-02 2017-08-15 Micron Technology, Inc. Systems and methods for transmitting packets in a scalable memory system protocol
US9619214B2 (en) 2014-08-13 2017-04-11 International Business Machines Corporation Compiler optimizations for vector instructions
US9571465B1 (en) * 2014-09-18 2017-02-14 Amazon Technologies, Inc. Security verification by message interception and modification
US9904645B2 (en) * 2014-10-31 2018-02-27 Texas Instruments Incorporated Multicore bus architecture with non-blocking high performance transaction credit system
US9870328B2 (en) * 2014-11-14 2018-01-16 Cavium, Inc. Managing buffered communication between cores
US9665505B2 (en) 2014-11-14 2017-05-30 Cavium, Inc. Managing buffered communication between sockets
US20160139204A1 (en) * 2014-11-14 2016-05-19 Xpliant, Inc. Testbench builder, system, device and method including a generic driver and transporter
US20160173398A1 (en) * 2014-12-12 2016-06-16 Intel Corporation Method, Apparatus And System For Encoding Command Information In a Packet-Based Network
US9921768B2 (en) * 2014-12-18 2018-03-20 Intel Corporation Low power entry in a shared memory link
US9444551B2 (en) * 2014-12-19 2016-09-13 Intel Corporation High performance optical repeater
US9632862B2 (en) * 2014-12-20 2017-04-25 Intel Corporation Error handling in transactional buffered memory
US10025746B2 (en) * 2014-12-20 2018-07-17 Intel Corporation High performance interconnect
US9740646B2 (en) * 2014-12-20 2017-08-22 Intel Corporation Early identification in transactional buffered memory
US9785556B2 (en) * 2014-12-23 2017-10-10 Intel Corporation Cross-die interface snoop or global observation message ordering
US20160188519A1 (en) * 2014-12-27 2016-06-30 Intel Corporation Method, apparatus, system for embedded stream lanes in a high-performance interconnect
CN104536929A (zh) * 2015-01-14 2015-04-22 浪潮(北京)电子信息产业有限公司 一种物理层初始化方法及客户端
US9998434B2 (en) * 2015-01-26 2018-06-12 Listat Ltd. Secure dynamic communication network and protocol
US9946676B2 (en) 2015-03-26 2018-04-17 Intel Corporation Multichip package link
US20160285624A1 (en) * 2015-03-26 2016-09-29 Intel Corporation Pseudorandom bit sequences in an interconnect
US9720838B2 (en) * 2015-03-27 2017-08-01 Intel Corporation Shared buffered memory routing
US9619396B2 (en) * 2015-03-27 2017-04-11 Intel Corporation Two level memory full line writes
US10282315B2 (en) 2015-03-27 2019-05-07 Cavium, Llc Software assisted hardware configuration for software defined network system-on-chip
US9639276B2 (en) * 2015-03-27 2017-05-02 Intel Corporation Implied directory state updates
US9760515B2 (en) 2015-04-06 2017-09-12 Qualcomm Incorporated Shared control of a phase locked loop (PLL) for a multi-port physical layer (PHY)
US10417128B2 (en) 2015-05-06 2019-09-17 Oracle International Corporation Memory coherence in a multi-core, multi-level, heterogeneous computer architecture implementing hardware-managed and software managed caches
US20160353357A1 (en) * 2015-05-27 2016-12-01 Qualcomm Incorporated Methods and systems for multiplexed communication in dense wireless environments
WO2016197345A1 (zh) * 2015-06-10 2016-12-15 华为技术有限公司 一种信号传输方法、控制器和信号传输系统
US9697145B2 (en) * 2015-06-12 2017-07-04 Apple Inc. Memory interface system
US10089275B2 (en) 2015-06-22 2018-10-02 Qualcomm Incorporated Communicating transaction-specific attributes in a peripheral component interconnect express (PCIe) system
US20160371222A1 (en) * 2015-06-22 2016-12-22 Qualcomm Incorporated COHERENCY DRIVEN ENHANCEMENTS TO A PERIPHERAL COMPONENT INTERCONNECT (PCI) EXPRESS (PCIe) TRANSACTION LAYER
KR102485999B1 (ko) * 2015-07-01 2023-01-06 삼성전자주식회사 마스터-사이드 필터를 포함하는 캐시 코히런트 시스템과 이를 포함하는 데이터 처리 시스템
US9692589B2 (en) * 2015-07-17 2017-06-27 Intel Corporation Redriver link testing
EP3329381B1 (en) * 2015-07-30 2020-02-26 Valens Semiconductor Ltd. Seamless addition of high bandwidth lanes
JP6674085B2 (ja) * 2015-08-12 2020-04-01 富士通株式会社 演算処理装置及び演算処理装置の制御方法
US9990291B2 (en) * 2015-09-24 2018-06-05 Qualcomm Incorporated Avoiding deadlocks in processor-based systems employing retry and in-order-response non-retry bus coherency protocols
WO2017052665A1 (en) * 2015-09-26 2017-03-30 Intel Corporation In-band margin probing on an operational interconnect
US9720439B2 (en) * 2015-09-26 2017-08-01 Intel Corporation Methods, apparatuses, and systems for deskewing link splits
WO2017052661A1 (en) * 2015-09-26 2017-03-30 Intel Corporation Multichip package link error detection
WO2017052663A1 (en) * 2015-09-26 2017-03-30 Intel Corporation Valid lane training
US20200244397A1 (en) * 2015-09-26 2020-07-30 Intel Corporation Stream identifier lane protection
GB2543745B (en) * 2015-10-15 2018-07-04 Advanced Risc Mach Ltd An apparatus and method for operating a virtually indexed physically tagged cache
US10698847B2 (en) 2016-03-01 2020-06-30 Qorvo Us, Inc. One wire bus to RFFE translation system
US10128964B2 (en) 2016-03-10 2018-11-13 Qualcomm Incorporated Multiphase preamble data sequences for receiver calibration and mode data signaling
US9779028B1 (en) 2016-04-01 2017-10-03 Cavium, Inc. Managing translation invalidation
CN105933286B (zh) * 2016-04-05 2019-08-02 浪潮电子信息产业股份有限公司 一种验证协议的方法及装置
RU2643620C2 (ru) * 2016-05-11 2018-02-02 федеральное государственное автономное образовательное учреждение высшего образования "Санкт-Петербургский политехнический университет Петра Великого" (ФГАОУ ВО "СПбПУ") Способ планирования задач предобработки данных Интернета Вещей для систем анализа
US10713202B2 (en) * 2016-05-25 2020-07-14 Samsung Electronics Co., Ltd. Quality of service (QOS)-aware input/output (IO) management for peripheral component interconnect express (PCIE) storage system with reconfigurable multi-ports
US10503641B2 (en) * 2016-05-31 2019-12-10 Advanced Micro Devices, Inc. Cache coherence for processing in memory
US11144691B2 (en) * 2016-06-02 2021-10-12 Siemens Industry Software Inc. Virtual Ethernet mutable port group transactor
TWI613547B (zh) * 2016-06-16 2018-02-01 新漢股份有限公司 具有pci-e增強器的電腦系統,及其pci-e增強器的設定方法
US10103837B2 (en) * 2016-06-23 2018-10-16 Advanced Micro Devices, Inc. Asynchronous feedback training
US10484361B2 (en) * 2016-06-30 2019-11-19 Intel Corporation Systems, methods, and apparatuses for implementing a virtual device observation and debug network for high speed serial IOS
US10303605B2 (en) * 2016-07-20 2019-05-28 Intel Corporation Increasing invalid to modified protocol occurrences in a computing system
US10929059B2 (en) 2016-07-26 2021-02-23 MemRay Corporation Resistance switching memory-based accelerator
US10379904B2 (en) * 2016-08-31 2019-08-13 Intel Corporation Controlling a performance state of a processor using a combination of package and thread hint information
RU2016137176A (ru) * 2016-09-16 2018-03-19 Оракл Интернэйшнл Корпорейшн Связывание преобразованного исходного кода с первоначальным исходным кодом с помощью метаданных
US10255181B2 (en) * 2016-09-19 2019-04-09 Qualcomm Incorporated Dynamic input/output coherency
WO2018057039A1 (en) * 2016-09-26 2018-03-29 Hewlett-Packard Development Company, L. Update memory management information to boot an electronic device from a reduced power mode
US10846258B2 (en) * 2016-09-30 2020-11-24 Intel Corporation Voltage modulated control lane
US10152446B2 (en) * 2016-10-01 2018-12-11 Intel Corporation Link-physical layer interface adapter
CN108121842B (zh) * 2016-11-30 2021-04-27 深圳市中兴微电子技术有限公司 多处理器系统芯片的低功耗工作方式的验证方法和装置
CN106527576A (zh) * 2016-12-01 2017-03-22 郑州云海信息技术有限公司 一种pcie设备的时钟分离设计方法和系统
CN108170370B (zh) 2016-12-07 2021-01-26 慧荣科技股份有限公司 数据储存装置与数据传输速率控制方法
TWI610179B (zh) * 2016-12-07 2018-01-01 慧榮科技股份有限公司 主機裝置與資料傳輸速率控制方法
TWI633777B (zh) * 2016-12-13 2018-08-21 威盛電子股份有限公司 傳輸介面晶片以及其測試方法
KR20180071598A (ko) 2016-12-20 2018-06-28 주식회사 포스코 중장비 위치 추적 시스템
KR101946135B1 (ko) * 2017-01-11 2019-02-08 울산과학기술원 비휘발성 메모리를 이용하는 데이터베이스 관리 시스템 및 방법
US11159636B2 (en) * 2017-02-08 2021-10-26 Arm Limited Forwarding responses to snoop requests
US11182315B2 (en) 2017-02-10 2021-11-23 Intel Corporation Apparatuses, methods, and systems for hardware control of processor performance levels
US10572434B2 (en) 2017-02-27 2020-02-25 International Business Machines Corporation Intelligent certificate discovery in physical and virtualized networks
US10784986B2 (en) 2017-02-28 2020-09-22 Intel Corporation Forward error correction mechanism for peripheral component interconnect-express (PCI-e)
CN107491407B (zh) * 2017-07-03 2019-07-12 西安空间无线电技术研究所 基于fpga内serdes的自适应高速传输系统
US11030126B2 (en) * 2017-07-14 2021-06-08 Intel Corporation Techniques for managing access to hardware accelerator memory
US11249808B2 (en) * 2017-08-22 2022-02-15 Intel Corporation Connecting accelerator resources using a switch
CN107678854A (zh) * 2017-08-31 2018-02-09 郑州云海信息技术有限公司 一种解决计算机缓存一致性冲突的方法
US10474611B2 (en) 2017-09-19 2019-11-12 International Business Machines Corporation Aligning received bad data indicators (BDIS) with received data on a cross-chip link
CN107589698B (zh) * 2017-09-20 2021-05-25 友达光电股份有限公司 应用于物联网中的感测装置及控制方法
US20190095273A1 (en) * 2017-09-27 2019-03-28 Qualcomm Incorporated Parity bits location on i3c multilane bus
US10963035B2 (en) * 2017-10-11 2021-03-30 Qualcomm Incorporated Low power PCIe
WO2019100238A1 (zh) * 2017-11-22 2019-05-31 深圳市大疆创新科技有限公司 一种断链恢复的方法及飞行器
CN107894963B (zh) * 2017-11-27 2021-07-27 上海兆芯集成电路有限公司 用于系统单芯片的通信控制器与通信方法
US10466911B2 (en) * 2017-12-18 2019-11-05 Western Digital Technologies, Inc. Method using logical based addressing for latency reduction
US10853212B2 (en) * 2018-01-08 2020-12-01 Intel Corporation Cross-talk generation in a multi-lane link during lane testing
EP3721565A4 (en) 2018-01-10 2021-01-27 Lumeova, Inc METHOD, DEVICE AND SYSTEM FOR WIRELESS COMMUNICATION CHANNEL FSO
US20190227971A1 (en) * 2018-01-23 2019-07-25 Qualcomm Incorporated Architecture for consolidating multiple sources of low-bandwidth data over a serial bus
US20190294777A1 (en) * 2018-03-26 2019-09-26 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Systems and methods for managing access to host computing devices by external devices
US10534881B2 (en) * 2018-04-10 2020-01-14 Advanced Micro Devices, Inc. Method of debugging a processor
US20190042455A1 (en) * 2018-05-04 2019-02-07 Intel Corporation Globally addressable memory for devices linked to hosts
CN108563510B (zh) * 2018-05-04 2021-07-13 湖南大学 面向e级计算的体系结构感知优化方法
US20190356412A1 (en) * 2018-05-16 2019-11-21 Qualcomm Incorporated Fast termination of multilane double data rate transactions
CN108762747B (zh) * 2018-05-30 2022-02-18 郑州云海信息技术有限公司 数据处理方法以及计算机设备
WO2019237130A1 (en) * 2018-06-04 2019-12-12 Lightfleet Corporation Routing and control protocol for high-performance interconnect fabrics
CN110609866B (zh) * 2018-06-15 2023-08-11 伊姆西Ip控股有限责任公司 用于协商事务的方法、设备和计算机程序产品
US10693589B2 (en) * 2018-06-18 2020-06-23 Huawei Technologies Co., Ltd. Serdes with jitter injection self stress mechanism
US11301160B2 (en) * 2018-06-20 2022-04-12 Genesys Telecommunications Laboratories, Inc. System and method for a replication protocol in a real-time statistical engine
CN109144943A (zh) * 2018-06-26 2019-01-04 深圳市安信智控科技有限公司 基于高速串行通道互连的计算芯片与存储器芯片组合系统
GB2575294B8 (en) * 2018-07-04 2022-07-20 Graphcore Ltd Host Proxy On Gateway
US10841355B2 (en) * 2018-07-13 2020-11-17 Apple Inc. Methods and apparatus for streaming media conversion with reduced buffering memories
US10541841B1 (en) * 2018-09-13 2020-01-21 Advanced Micro Devices, Inc. Hardware transmit equalization for high speed
CN109558122B (zh) * 2018-11-29 2022-08-19 湖南国科微电子股份有限公司 一种提升物理层兼容性的系统与方法
TWI706257B (zh) * 2018-12-13 2020-10-01 新唐科技股份有限公司 匯流排系統
US10761939B1 (en) * 2018-12-13 2020-09-01 Amazon Technologies, Inc. Powering-down or rebooting a device in a system fabric
US10771189B2 (en) * 2018-12-18 2020-09-08 Intel Corporation Forward error correction mechanism for data transmission across multi-lane links
KR102165860B1 (ko) * 2018-12-31 2020-10-14 성균관대학교산학협력단 슬로티드 페이지의 더블 헤더 로깅 방법 및 데이터베이스 장치
US10599601B1 (en) * 2019-01-16 2020-03-24 Qorvo Us, Inc. Single-wire bus (SuBUS) slave circuit and related apparatus
US11099991B2 (en) 2019-01-24 2021-08-24 Vmware, Inc. Programming interfaces for accurate dirty data tracking
US11068400B2 (en) * 2019-01-24 2021-07-20 Vmware, Inc. Failure-atomic logging for persistent memory systems with cache-coherent FPGAs
US20200249275A1 (en) 2019-01-31 2020-08-06 Tektronix, Inc. Systems, methods and devices for high-speed input/output margin testing
US11940483B2 (en) 2019-01-31 2024-03-26 Tektronix, Inc. Systems, methods and devices for high-speed input/output margin testing
US10713209B2 (en) * 2019-02-08 2020-07-14 Intel Corporation Recalibration of PHY circuitry for the PCI Express (PIPE) interface based on using a message bus interface
US10802966B2 (en) * 2019-02-14 2020-10-13 International Business Machines Corporation Simultaneous, non-atomic request processing within an SMP environment broadcast scope for multiply-requested data elements using real-time parallelization
US11637657B2 (en) 2019-02-15 2023-04-25 Intel Corporation Low-latency forward error correction for high-speed serial links
US11099905B2 (en) 2019-02-26 2021-08-24 International Business Machines Corporation Efficient remote resource allocation within an SMP broadcast scope maintaining fairness between operation types
US11249837B2 (en) * 2019-03-01 2022-02-15 Intel Corporation Flit-based parallel-forward error correction and parity
EP3918500B1 (en) * 2019-03-05 2024-04-24 Siemens Industry Software Inc. Machine learning-based anomaly detections for embedded software applications
CN109947551B (zh) * 2019-03-19 2021-04-23 中南大学 一种多轮次任务分配方法、边缘计算系统及其存储介质
US11055221B2 (en) * 2019-03-22 2021-07-06 Samsung Electronics Co., Ltd. Speculative DRAM read, in parallel with cache level search, leveraging interconnect directory
US10698842B1 (en) * 2019-04-10 2020-06-30 Xilinx, Inc. Domain assist processor-peer for coherent acceleration
EP3723345A1 (en) 2019-04-10 2020-10-14 ABB Schweiz AG Aggregating server and method for forwarding node data
IT201900005822A1 (it) * 2019-04-15 2020-10-15 Phoenix Ict S R L S Adattore di periferiche general purpose per computer
US11119958B2 (en) 2019-04-18 2021-09-14 Qorvo Us, Inc. Hybrid bus apparatus
US11226924B2 (en) 2019-04-24 2022-01-18 Qorvo Us, Inc. Single-wire bus apparatus supporting slave-initiated operation in a master circuit
CN110138761B (zh) * 2019-05-09 2021-10-15 豪威触控与显示科技(深圳)有限公司 基于mipi协议的设备间通信方法及设备拓扑结构
US11296994B2 (en) 2019-05-13 2022-04-05 Intel Corporation Ordered sets for high-speed interconnects
JP7259537B2 (ja) * 2019-05-16 2023-04-18 オムロン株式会社 情報処理装置
US10802967B1 (en) * 2019-06-28 2020-10-13 Intel Corporation Partial write management in a multi-tiled compute engine
US11144469B2 (en) * 2019-07-02 2021-10-12 Microsoft Technology Licensing, Llc Per-tenant incremental outward distributed proactive caching
US11444829B2 (en) 2019-09-09 2022-09-13 Intel Corporation Link layer communication by multiple link layer encodings for computer buses
US11271860B1 (en) * 2019-11-15 2022-03-08 Xilinx, Inc. Compressed tag coherency messaging
CN114651426B (zh) * 2019-11-20 2023-08-18 三菱电机株式会社 光通信装置及通信系统
US11740958B2 (en) 2019-11-27 2023-08-29 Intel Corporation Multi-protocol support on common physical layer
RU2738955C1 (ru) * 2019-11-27 2020-12-21 Федеральное государственное бюджетное образовательное учреждение высшего образования "Томский государственный университет систем управления и радиоэлектроники" (ТУСУР) Способ трёхкратного резервирования межсоединений
US10983942B1 (en) 2019-12-11 2021-04-20 Qorvo Us, Inc. Multi-master hybrid bus apparatus
US11132321B2 (en) 2020-02-26 2021-09-28 Quanta Computer Inc. Method and system for automatic bifurcation of PCIe in BIOS
US20230074426A1 (en) * 2020-02-28 2023-03-09 Arizona Board Of Regents On Behalf Of Arizona State University C²mpi: a hardware-agnostic message passing interface for heterogeneous computing systems
US11115176B1 (en) * 2020-03-04 2021-09-07 Qualcomm Incorporated System and method for adjusting clock-data timing in a multi-lane data communication link
US11126585B1 (en) 2020-03-09 2021-09-21 Western Digital Technologies, Inc. Data storage device with improved interface transmitter training
US11886312B2 (en) 2020-04-07 2024-01-30 Intel Corporation Characterizing error correlation based on error logging for computer buses
CN111400232B (zh) * 2020-04-10 2024-01-16 芯启源(上海)半导体科技有限公司 一种基于数据位宽展开的scramble与descramble硬件实现方法
US11288225B2 (en) 2020-04-14 2022-03-29 Western Digital Technologies, Inc. Adapting transmitter training behavior based upon assumed identity of training partner
US11309013B2 (en) 2020-04-29 2022-04-19 Samsung Electronics Co., Ltd. Memory device for reducing resources used for training
US11513981B2 (en) * 2020-04-29 2022-11-29 Dell Products L.P. PCIe link management without sideband signals
US11586446B1 (en) * 2020-05-20 2023-02-21 Marvell Asia Pte Ltd System and methods for hardware-based PCIe link up based on post silicon characterization
US11263137B2 (en) * 2020-05-27 2022-03-01 Arm Limited Core-to-core cache stashing and target discovery
CN116134475A (zh) * 2020-05-29 2023-05-16 奈特力斯股份有限公司 计算机存储器扩展设备及其操作方法
US20210013999A1 (en) * 2020-06-04 2021-01-14 Intel Corporation Latency-Optimized Mechanisms for Handling Errors or Mis-Routed Packets for Computer Buses
KR102254337B1 (ko) * 2020-06-22 2021-05-21 한양대학교 산학협력단 Dc-밸런싱을 고려한 pam4 5b3q 코딩 방법 및 장치
US11360906B2 (en) * 2020-08-14 2022-06-14 Alibaba Group Holding Limited Inter-device processing system with cache coherency
US11362939B2 (en) 2020-08-31 2022-06-14 Micron Technology, Inc. Flow control for a multiple flow control unit interface
US11588745B2 (en) 2020-08-31 2023-02-21 Micron Technology, Inc. Early credit return for credit-based flow control
US11580044B2 (en) * 2020-08-31 2023-02-14 Micron Technology, Inc. Network credit return mechanisms
CN112134859B (zh) * 2020-09-09 2021-07-06 上海沈德医疗器械科技有限公司 一种基于arm架构的聚焦超声治疗设备控制方法
DE102021121105A1 (de) * 2020-09-28 2022-03-31 Samsung Electronics Co., Ltd. Intelligente ablagespeichervorrichtung
TWI783293B (zh) * 2020-11-09 2022-11-11 瑞昱半導體股份有限公司 訊號傳輸裝置識別方法與訊號處理系統
US11409677B2 (en) 2020-11-11 2022-08-09 Qorvo Us, Inc. Bus slave circuit and related single-wire bus apparatus
US11489695B2 (en) 2020-11-24 2022-11-01 Qorvo Us, Inc. Full-duplex communications over a single-wire bus
CN116802510A (zh) 2020-11-24 2023-09-22 特克特朗尼克公司 用于高速输入/输出裕量测试的系统、方法和设备
CN112579479B (zh) * 2020-12-07 2022-07-08 成都海光微电子技术有限公司 在维护缓存一致性时维护事务次序的处理器及其方法
US20220182098A1 (en) * 2020-12-09 2022-06-09 Texas Instruments Incorporated Low power digital modes for duty-cycled integrated transceivers
US11636037B2 (en) 2020-12-21 2023-04-25 Nxp Usa, Inc. Methods and apparatuses involving radar system data paths
CN112953556A (zh) * 2021-02-05 2021-06-11 南京大学 基于斐波那契数列的抗串扰互联的编解码器及编码方法
CN112631989A (zh) * 2021-03-08 2021-04-09 南京蓝洋智能科技有限公司 一种小芯片间、芯片间、小芯片与芯片间的数据传输方法
US11431649B1 (en) * 2021-03-26 2022-08-30 Arm Limited Interconnect resource allocation
CN113019479A (zh) * 2021-03-31 2021-06-25 中国人民解放军空军军医大学 一种用于模拟井下工作环境的试验箱
IT202100008723A1 (it) 2021-04-08 2022-10-08 Phoenix ICT Sistema per la gestione in sicurezza dei documenti digitali
KR102668564B1 (ko) 2021-06-01 2024-05-24 에스케이하이닉스 주식회사 PCIe 인터페이스 장치 및 그 동작 방법
KR102518317B1 (ko) 2021-04-13 2023-04-06 에스케이하이닉스 주식회사 PCIe 인터페이스 장치 및 그 동작 방법
US11789658B2 (en) 2021-04-13 2023-10-17 SK Hynix Inc. Peripheral component interconnect express (PCIe) interface system and method of operating the same
TWI773395B (zh) * 2021-06-22 2022-08-01 慧榮科技股份有限公司 記憶體控制器與連結識別方法
CN113971143B (zh) * 2021-10-22 2023-12-05 展讯半导体(成都)有限公司 一种内存控制器、物联网芯片及电子设备
US11755494B2 (en) 2021-10-29 2023-09-12 Advanced Micro Devices, Inc. Cache line coherence state downgrade
US11706048B1 (en) 2021-12-16 2023-07-18 Qorvo Us, Inc. Multi-protocol bus circuit
CN114510268B (zh) * 2021-12-24 2022-09-20 中国人民解放军战略支援部队航天工程大学 一种基于gpu实现下变频中单精度浮点数累积误差控制方法
US20220342840A1 (en) * 2021-12-30 2022-10-27 Intel Corporation Die-to-die interconnect
US20220327084A1 (en) * 2021-12-30 2022-10-13 Intel Corporation Die-to-die interconnect protocol layer
US11907132B2 (en) 2022-03-23 2024-02-20 International Business Machines Corporation Final cache directory state indication
US11726660B1 (en) * 2022-04-15 2023-08-15 Dell Products L.P. Techniques for flexible physical drive expansion using a loop back connection
US20230342308A1 (en) * 2022-04-22 2023-10-26 Western Digital Technologies, Inc. Reducing Link Up Time In PCIe Systems
CN114942814B (zh) * 2022-06-01 2023-07-11 咪咕视讯科技有限公司 页面组件的聚焦方法、系统、终端设备及介质
US11880686B2 (en) * 2022-06-16 2024-01-23 Ampere Computing Llc Devices transferring cache lines, including metadata on external links
CN115238619B (zh) * 2022-09-20 2023-06-27 北京数字光芯集成电路设计有限公司 数字芯片的子模块后仿真方法和系统
US11914473B1 (en) * 2022-10-20 2024-02-27 Micron Technology, Inc. Data recovery using ordered data requests

Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1044559A (zh) * 1989-01-27 1990-08-08 英国电讯公司 远距离通信系统
US6185250B1 (en) * 1999-03-10 2001-02-06 Lucent Technologies Inc. Training of level learning modems
CN1354915A (zh) * 1999-02-10 2002-06-19 艾利森公司 码多分址无线通信系统中使用的最大似然率rake(瑞克)接收机
US20040103333A1 (en) * 2002-11-22 2004-05-27 Martwick Andrew W. Apparatus and method for low latency power management on a serial data link
US6865231B1 (en) * 2000-06-20 2005-03-08 Hewlett-Packard Development Company, L.P. High-speed interconnection adapter having automated crossed differential pair correction
CN1700701A (zh) * 2004-05-21 2005-11-23 英特尔公司 对基于链路的系统互连进行物理层初始化的方法和装置
US20060047862A1 (en) * 2004-09-02 2006-03-02 International Business Machines Corporation Automatic hardware data link initialization
US7010607B1 (en) * 1999-09-15 2006-03-07 Hewlett-Packard Development Company, L.P. Method for training a communication link between ports to correct for errors
CN1781082A (zh) * 2003-03-25 2006-05-31 英特尔公司 高性能串行总线测试方法
CN1922828A (zh) * 2004-03-15 2007-02-28 英特尔公司 具有基于自动协商的自动配置的收发器
US20070264730A1 (en) * 2006-03-31 2007-11-15 Tim Frodsham Redundant acknowledgment in loopback entry
CN101627593A (zh) * 2007-03-09 2010-01-13 高通股份有限公司 使用频率平滑进行信道估计
CN101631000A (zh) * 2008-06-25 2010-01-20 英特尔公司 在串行链路中用于编码的链路和线路级分组方案
CN101854331A (zh) * 2009-04-02 2010-10-06 天际微芯(北京)科技有限公司 训练序列结构及训练方法
US20110161547A1 (en) * 2009-12-24 2011-06-30 Ati Technologies Ulc Method and device for disabling a higher version of a computer bus and interconnection protocol for interoperability with a device compliant to a lower version of the computer bus and interconnection protocol
US20120082463A1 (en) * 2010-09-30 2012-04-05 Teradyne Inc. Electro-optical communications link
US8161429B1 (en) * 2004-08-20 2012-04-17 Altera Corporation Methods and apparatus for initializing serial links
CN102656574A (zh) * 2009-12-04 2012-09-05 意法爱立信有限公司 用于可靠链路启动的方法和系统

Family Cites Families (253)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4228496A (en) 1976-09-07 1980-10-14 Tandem Computers Incorporated Multiprocessor system
US4191941A (en) 1978-04-03 1980-03-04 Rca Corporation Switch matrix for data transfers
US4716523A (en) 1985-06-14 1987-12-29 International Business Machines Corporation Multiple port integrated DMA and interrupt controller and arbitrator
US5537640A (en) * 1988-12-30 1996-07-16 Intel Corporation Asynchronous modular bus architecture with cache consistency
US4959833A (en) * 1989-03-08 1990-09-25 Ics Electronics Corporation Data transmission method and bus extender
CA2045756C (en) * 1990-06-29 1996-08-20 Gregg Bouchard Combined queue for invalidates and return data in multiprocessor system
EP0552288A1 (en) * 1990-10-03 1993-07-28 Thinking Machines Corporation Parallel computer system
US5222062A (en) 1991-10-03 1993-06-22 Compaq Computer Corporation Expandable communication system with automatic data concentrator detection
US5434993A (en) * 1992-11-09 1995-07-18 Sun Microsystems, Inc. Methods and apparatus for creating a pending write-back controller for a cache controller on a packet switched memory bus employing dual directories
JPH07168763A (ja) * 1992-11-13 1995-07-04 Cyrix Corp ライトスルーキャシュ設計のシステムでのライトバックキャシュのコヒーレンシ
US5325360A (en) 1992-12-09 1994-06-28 National Semiconductor Corporation Controllable PCM state machine user interface
US5394555A (en) * 1992-12-23 1995-02-28 Bull Hn Information Systems Inc. Multi-node cluster computer system incorporating an external coherency unit at each node to insure integrity of information stored in a shared, distributed memory
US5432775A (en) 1993-12-03 1995-07-11 Advanced Micro Devices, Inc. Auto negotiation system for a communications network
US5551005A (en) * 1994-02-25 1996-08-27 Intel Corporation Apparatus and method of handling race conditions in mesi-based multiprocessor system with private caches
US5572703A (en) * 1994-03-01 1996-11-05 Intel Corporation Method and apparatus for snoop stretching using signals that convey snoop results
US5383143A (en) * 1994-03-30 1995-01-17 Motorola, Inc. Self re-seeding linear feedback shift register (LFSR) data processing system for generating a pseudo-random test bit stream and method of operation
EP0706138A1 (en) * 1994-10-03 1996-04-10 International Business Machines Corporation Alternating data valid control signals for high performance data transfer
EP0707269A1 (en) * 1994-10-11 1996-04-17 International Business Machines Corporation Cache coherence network for a multiprocessor data processing system
EP0735480B1 (en) * 1995-03-31 2003-06-04 Sun Microsystems, Inc. Cache coherent computer system that minimizes invalidation and copyback operations
DE69616402T2 (de) * 1995-03-31 2002-07-18 Sun Microsystems Inc Schnelle Zweitor-Cachesteuerungsschaltung für Datenprozessoren in einem paketvermittelten cachekohärenten Multiprozessorsystem
US5898826A (en) * 1995-11-22 1999-04-27 Intel Corporation Method and apparatus for deadlock-free routing around an unusable routing component in an N-dimensional network
US5983326A (en) * 1996-07-01 1999-11-09 Sun Microsystems, Inc. Multiprocessing system including an enhanced blocking mechanism for read-to-share-transactions in a NUMA mode
CN1179043A (zh) * 1996-09-20 1998-04-15 摩托罗拉公司 Tdm/tdma系统中离散可变的时隙宽度
US5991819A (en) * 1996-12-03 1999-11-23 Intel Corporation Dual-ported memory controller which maintains cache coherency using a memory line status table
US6249520B1 (en) * 1997-10-24 2001-06-19 Compaq Computer Corporation High-performance non-blocking switch with multiple channel ordering constraints
US6052760A (en) * 1997-11-05 2000-04-18 Unisys Corporation Computer system including plural caches and utilizing access history or patterns to determine data ownership for efficient handling of software locks
US5987056A (en) * 1997-11-13 1999-11-16 Lsi Logic Corporation PN sequence hopping method and system
US6163608A (en) * 1998-01-09 2000-12-19 Ericsson Inc. Methods and apparatus for providing comfort noise in communications systems
US6141733A (en) * 1998-02-17 2000-10-31 International Business Machines Corporation Cache coherency protocol with independent implementation of optimized cache operations
US6345339B1 (en) * 1998-02-17 2002-02-05 International Business Machines Corporation Pseudo precise I-cache inclusivity for vertical caches
US6334172B1 (en) * 1998-02-17 2001-12-25 International Business Machines Corporation Cache coherency protocol with tagged state for modified values
US6631448B2 (en) * 1998-03-12 2003-10-07 Fujitsu Limited Cache coherence unit for interconnecting multiprocessor nodes having pipelined snoopy protocol
US7471075B2 (en) 1998-04-17 2008-12-30 Unique Technologies, Llc Multi-test Arc fault circuit interrupter tester
EP0991222B1 (en) * 1998-09-30 2003-04-16 Alcatel Method and arrangements for transition between a low power state and a full power state in a communication system
GB2342823B (en) * 1998-10-16 2000-11-29 Marconi Comm Ltd Communication system
US6526481B1 (en) * 1998-12-17 2003-02-25 Massachusetts Institute Of Technology Adaptive cache coherence protocols
US6393529B1 (en) * 1998-12-21 2002-05-21 Advanced Micro Devices, Inc. Conversation of distributed memory bandwidth in multiprocessor system with cache coherency by transmitting cancel subsequent to victim write
AU5158800A (en) * 1999-05-28 2000-12-18 Basic Resources, Inc. Wireless transceiver network employing node-to-node data messaging
US6487621B1 (en) * 1999-08-17 2002-11-26 Compaq Information Technologies Group, L.P. Architecture, system and method for ensuring an ordered transaction on at least one of a plurality of multi-processor buses that experience a hit-to-modified snoop cycle
KR100566289B1 (ko) * 1999-09-03 2006-03-30 삼성전자주식회사 데이타 링크 맵을 이용한 브이5.2 계층 2의 비활성화 제어 방법 및 장치
US6754185B1 (en) * 1999-09-27 2004-06-22 Koninklijke Philips Electronics N.V. Multi link layer to single physical layer interface in a node of a data communication system
US6674720B1 (en) * 1999-09-29 2004-01-06 Silicon Graphics, Inc. Age-based network arbitration system and method
US6751698B1 (en) * 1999-09-29 2004-06-15 Silicon Graphics, Inc. Multiprocessor node controller circuit and method
US6763034B1 (en) * 1999-10-01 2004-07-13 Stmicroelectronics, Ltd. Connection ports for interconnecting modules in an integrated circuit
US6320406B1 (en) 1999-10-04 2001-11-20 Texas Instruments Incorporated Methods and apparatus for a terminated fail-safe circuit
US6665832B1 (en) * 2000-03-31 2003-12-16 Qualcomm, Incorporated Slotted mode decoder state metric initialization
US6961347B1 (en) * 2000-06-20 2005-11-01 Hewlett-Packard Development Company, L.P. High-speed interconnection link having automated lane reordering
US7124252B1 (en) * 2000-08-21 2006-10-17 Intel Corporation Method and apparatus for pipelining ordered input/output transactions to coherent memory in a distributed memory, cache coherent, multi-processor system
US6668335B1 (en) 2000-08-31 2003-12-23 Hewlett-Packard Company, L.P. System for recovering data in a multiprocessor system comprising a conduction path for each bit between processors where the paths are grouped into separate bundles and routed along different paths
US6892319B2 (en) * 2000-09-08 2005-05-10 Hewlett-Packard Development Company, L.P. Method for verifying abstract memory models of shared memory multiprocessors
US7327754B2 (en) 2000-09-28 2008-02-05 Teridian Semiconductor, Corp. Apparatus and method for freezing the states of a receiver during silent line state operation of a network device
US7236490B2 (en) * 2000-11-17 2007-06-26 Foundry Networks, Inc. Backplane interface adapter
US7596139B2 (en) * 2000-11-17 2009-09-29 Foundry Networks, Inc. Backplane interface adapter with error control and redundant fabric
EP1211837A1 (en) * 2000-12-04 2002-06-05 Telefonaktiebolaget Lm Ericsson Unequal error protection in a packet transmission system
EP1217613A1 (fr) * 2000-12-19 2002-06-26 Koninklijke Philips Electronics N.V. Reconstitution de trames manquantes ou mauvaises en téléphonie cellulaire
US6859864B2 (en) * 2000-12-29 2005-02-22 Intel Corporation Mechanism for initiating an implicit write-back in response to a read or snoop of a modified cache line
US20020161975A1 (en) * 2001-02-23 2002-10-31 Zilavy Daniel V. Cache to cache copying of clean data
US7231500B2 (en) * 2001-03-22 2007-06-12 Sony Computer Entertainment Inc. External data interface in a computer architecture for broadband networks
US6987947B2 (en) 2001-10-30 2006-01-17 Unwired Technology Llc Multiple channel wireless communication system
US20030093632A1 (en) * 2001-11-12 2003-05-15 Intel Corporation Method and apparatus for sideband read return header in memory interconnect
US6941425B2 (en) * 2001-11-12 2005-09-06 Intel Corporation Method and apparatus for read launch optimizations in memory interconnect
US7227845B2 (en) * 2001-12-11 2007-06-05 Motorola, Inc. Method and apparatus for enabling a communication resource reset
US7117311B1 (en) * 2001-12-19 2006-10-03 Intel Corporation Hot plug cache coherent interface method and apparatus
US7030737B2 (en) 2002-03-01 2006-04-18 Hewlett-Packard Development Company, L.P. Apparatus, system, and method for indicating a level of network activity
US7200186B2 (en) * 2002-03-14 2007-04-03 Intel Corporation Methods and apparatus for reducing power usage of a transmitter and receiver coupled via a differential serial data link
US7334047B1 (en) * 2002-03-18 2008-02-19 Cisco Technology, Inc. Method and system for selective link state advertisement blocking over a data network area
US7653790B2 (en) * 2002-05-13 2010-01-26 Glasco David B Methods and apparatus for responding to a request cluster
US7020729B2 (en) * 2002-05-16 2006-03-28 Intel Corporation Protocol independent data transmission interface
US6973545B2 (en) * 2002-06-28 2005-12-06 Sun Microsystems, Inc. System with a directory based coherency protocol and split ownership and access right coherence mechanism
US20040028074A1 (en) * 2002-07-26 2004-02-12 Gary Huff Physical layer device with line state encoding
US7093172B2 (en) * 2002-08-07 2006-08-15 Broadcom Corporation System and method for determining on-chip bit error rate (BER) in a communication system
US8037224B2 (en) * 2002-10-08 2011-10-11 Netlogic Microsystems, Inc. Delegating network processor operations to star topology serial bus interfaces
US7505486B2 (en) * 2002-11-19 2009-03-17 Hewlett-Packard Development Company, L.P. Degradable network data path transmission scheme
US20040174570A1 (en) 2002-12-02 2004-09-09 Plunkett Richard Thomas Variable size dither matrix usage
US6892283B2 (en) * 2002-12-05 2005-05-10 International Business Machines Corporation High speed memory cloner with extended cache coherency protocols and responses
US7525989B2 (en) * 2002-12-16 2009-04-28 Intel Corporation System, method and device for time slot status messaging among SONET nodes
US6922756B2 (en) * 2002-12-19 2005-07-26 Intel Corporation Forward state for use in cache coherency in a multiprocessor system
US7047475B2 (en) * 2003-02-04 2006-05-16 Hewlett-Packard Development Company, L.P. CRC encoding scheme for conveying status information
US7535836B2 (en) * 2003-02-12 2009-05-19 Broadcom Corporation Method and system to provide word-level flow control using spare link bandwidth
GB2399722A (en) * 2003-03-21 2004-09-22 Sony Uk Ltd Data communication synchronisation
US7426597B1 (en) * 2003-05-07 2008-09-16 Nvidia Corporation Apparatus, system, and method for bus link width optimization of a graphics system
US7136953B1 (en) 2003-05-07 2006-11-14 Nvidia Corporation Apparatus, system, and method for bus link width optimization
US7792118B2 (en) * 2003-06-19 2010-09-07 Polytechnic University Switch module memory structure and per-destination queue flow control for use in a switch
US7577727B2 (en) * 2003-06-27 2009-08-18 Newisys, Inc. Dynamic multiple cluster system reconfiguration
US20050027876A1 (en) * 2003-07-29 2005-02-03 Toshitomo Umei Data transmission method, data transmission system, and data transmission apparatus
CN1320464C (zh) * 2003-10-23 2007-06-06 英特尔公司 用于维持共享高速缓存一致性的方法和设备
US7146284B2 (en) * 2003-11-07 2006-12-05 Texas Instruments Incorporated Method of testing phase lock loop status during a Serializer/Deserializer internal loopback built-in self-test
EP2247066B1 (en) * 2003-11-12 2012-09-26 Qualcomm Incorporated High data rate interface with improved link control
US8090857B2 (en) * 2003-11-24 2012-01-03 Qualcomm Atheros, Inc. Medium access control layer that encapsulates data from a plurality of received data units into a plurality of independently transmittable blocks
US7440468B2 (en) * 2003-12-11 2008-10-21 International Business Machines Corporation Queue management of a global link control byte in an input/output subsystem
US8009563B2 (en) 2003-12-19 2011-08-30 Broadcom Corporation Method and system for transmit scheduling for multi-layer network interface controller (NIC) operation
US7631118B2 (en) * 2003-12-31 2009-12-08 Intel Corporation Lane to lane deskewing via non-data symbol processing for a serial point to point link
JP4005974B2 (ja) * 2004-01-09 2007-11-14 株式会社東芝 通信装置、通信方法、および通信システム
US7856534B2 (en) * 2004-01-15 2010-12-21 Hewlett-Packard Development Company, L.P. Transaction references for requests in a multi-processor network
US8176259B2 (en) * 2004-01-20 2012-05-08 Hewlett-Packard Development Company, L.P. System and method for resolving transactions in a cache coherency protocol
US7177987B2 (en) * 2004-01-20 2007-02-13 Hewlett-Packard Development Company, L.P. System and method for responses between different cache coherency protocols
US7620696B2 (en) * 2004-01-20 2009-11-17 Hewlett-Packard Development Company, L.P. System and method for conflict responses in a cache coherency protocol
US20050172091A1 (en) * 2004-01-29 2005-08-04 Rotithor Hemant G. Method and an apparatus for interleaving read data return in a packetized interconnect to memory
US20050262250A1 (en) * 2004-04-27 2005-11-24 Batson Brannon J Messaging protocol
US7210000B2 (en) * 2004-04-27 2007-04-24 Intel Corporation Transmitting peer-to-peer transactions through a coherent interface
US20050240734A1 (en) * 2004-04-27 2005-10-27 Batson Brannon J Cache coherence protocol
US7716409B2 (en) * 2004-04-27 2010-05-11 Intel Corporation Globally unique transaction identifiers
JP4312794B2 (ja) * 2004-04-30 2009-08-12 シャープ株式会社 無線通信システム
US8046488B2 (en) * 2004-05-21 2011-10-25 Intel Corporation Dynamically modulating link width
US7219220B2 (en) * 2004-05-21 2007-05-15 Intel Corporation Methods and apparatuses for resetting the physical layers of two agents interconnected through a link-based interconnection
CN1700639A (zh) * 2004-05-21 2005-11-23 华为技术有限公司 导出和导入无线局域网鉴别与保密基础结构证书信息方法
US7957428B2 (en) * 2004-05-21 2011-06-07 Intel Corporation Methods and apparatuses to effect a variable-width link
US7313712B2 (en) * 2004-05-21 2007-12-25 Intel Corporation Link power saving state
US20060041715A1 (en) 2004-05-28 2006-02-23 Chrysos George Z Multiprocessor chip having bidirectional ring interconnect
US7467358B2 (en) * 2004-06-03 2008-12-16 Gwangju Institute Of Science And Technology Asynchronous switch based on butterfly fat-tree for network on chip application
US7295618B2 (en) * 2004-06-16 2007-11-13 International Business Machines Corporation Automatic adaptive equalization method and system for high-speed serial transmission link
US7436836B2 (en) * 2004-06-30 2008-10-14 Cisco Technology, Inc. Method and apparatus for detecting support for a protocol defining supplemental headers
KR100579053B1 (ko) 2004-08-26 2006-05-12 삼성전자주식회사 스마트 카드와 메모리 카드간의 멀티 인터페이스 방법 및멀티 인터페이스 카드
US9727468B2 (en) * 2004-09-09 2017-08-08 Intel Corporation Resolving multi-core shared cache access conflicts
US7191255B2 (en) * 2004-10-27 2007-03-13 Intel Corporation Transaction layer link down handling for PCI express
CN100384118C (zh) * 2004-11-03 2008-04-23 上海贝尔阿尔卡特股份有限公司 处理通用成帧规程帧的方法和装置
US7738484B2 (en) * 2004-12-13 2010-06-15 Intel Corporation Method, system, and apparatus for system level initialization
US7761719B2 (en) * 2005-03-28 2010-07-20 Akros Silicon Inc. Ethernet module
JP4791530B2 (ja) * 2005-04-13 2011-10-12 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 電子デバイス及びフロー制御方法
US7613864B2 (en) * 2005-04-22 2009-11-03 Sun Microsystems, Inc. Device sharing
US7564904B2 (en) 2005-05-03 2009-07-21 Texas Instruments Incorporated Apparatus for and method of detection of powered devices over a network
US7539801B2 (en) * 2005-05-27 2009-05-26 Ati Technologies Ulc Computing device with flexibly configurable expansion slots, and method of operation
US7694060B2 (en) * 2005-06-17 2010-04-06 Intel Corporation Systems with variable link widths based on estimated activity levels
US7620694B2 (en) * 2005-09-27 2009-11-17 Intel Corporation Early issue of transaction ID
US7633877B2 (en) 2005-11-18 2009-12-15 Intel Corporation Method and apparatus for meeting compliance for debugging and testing a multi-speed, point-to-point link
US20070239922A1 (en) * 2005-12-09 2007-10-11 Horigan John W Technique for link reconfiguration
US7924708B2 (en) 2005-12-13 2011-04-12 Intel Corporation Method and apparatus for flow control initialization
US7606981B2 (en) * 2005-12-19 2009-10-20 Intel Corporation System and method for reducing store latency
CN1996782B (zh) * 2005-12-26 2010-05-05 中兴通讯股份有限公司 一种空域自适应链路的天线选择指示方法
US7430628B2 (en) * 2006-01-10 2008-09-30 Kabushiki Kaisha Toshiba System and method for optimized allocation of shared processing resources
US7543115B1 (en) * 2006-01-11 2009-06-02 Intel Corporation Two-hop source snoop based cache coherence protocol
US7512741B1 (en) * 2006-01-11 2009-03-31 Intel Corporation Two-hop source snoop based messaging protocol
JP4572169B2 (ja) * 2006-01-26 2010-10-27 エヌイーシーコンピュータテクノ株式会社 マルチプロセッサシステム及びその動作方法
US9390015B2 (en) * 2006-03-16 2016-07-12 International Business Machines Corporation Method for performing cacheline polling utilizing a store and reserve instruction
US7783959B2 (en) * 2006-03-23 2010-08-24 Intel Corporation Apparatus and method for reduced power consumption communications over a physical interconnect
US7743129B2 (en) 2006-05-01 2010-06-22 International Business Machines Corporation Methods and arrangements to detect a failure in a communication network
US20070260615A1 (en) * 2006-05-08 2007-11-08 Eran Shen Media with Pluggable Codec
US7536515B2 (en) * 2006-06-30 2009-05-19 Intel Corporation Repeated conflict acknowledgements in a cache coherency protocol
US7721050B2 (en) * 2006-06-30 2010-05-18 Intel Corporation Re-snoop for conflict resolution in a cache coherency protocol
US7506108B2 (en) * 2006-06-30 2009-03-17 Intel Corporation Requester-generated forward for late conflicts in a cache coherency protocol
US20100158052A1 (en) * 2006-08-08 2010-06-24 Koninklijke Philips Electronics N.V. Electronic device and method for synchronizing a communication
US7986718B2 (en) * 2006-09-15 2011-07-26 Itron, Inc. Discovery phase in a frequency hopping network
US7600080B1 (en) * 2006-09-22 2009-10-06 Intel Corporation Avoiding deadlocks in a multiprocessor system
GB2443465A (en) * 2006-11-06 2008-05-07 Fujitsu Ltd Communication systems
WO2008070191A2 (en) * 2006-12-06 2008-06-12 Fusion Multisystems, Inc. (Dba Fusion-Io) Apparatus, system, and method for a reconfigurable baseboard management controller
JP2010516143A (ja) * 2007-01-15 2010-05-13 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 無線通信方法及び無線通信ネットワーク
DE102007007136B3 (de) 2007-02-09 2008-08-28 Siemens Ag Radelektronik und Verfahren zum Betreiben einer Radelektronik
US7978635B2 (en) 2007-03-21 2011-07-12 Qualcomm Incorporated H-ARQ acknowledgment detection validation by re-decoding
EP1973254B1 (en) * 2007-03-22 2009-07-15 Research In Motion Limited Device and method for improved lost frame concealment
EP2156595A1 (en) * 2007-05-08 2010-02-24 InterDigital Technology Corporation Method and apparatus for providing piggybacked positive acknowledgement/negative acknowledgement field indicator and a polling indicator
US7827357B2 (en) * 2007-07-31 2010-11-02 Intel Corporation Providing an inclusive shared cache among multiple core-cache clusters
US7899111B2 (en) * 2007-08-07 2011-03-01 Intel Corporation Link interface technique including data indicator symbols
US20090063889A1 (en) * 2007-09-05 2009-03-05 Faisal Dada Aligning data on parallel transmission lines
US20090125363A1 (en) * 2007-10-22 2009-05-14 Nokia Siemens Networks Oy Method, apparatus and computer program for employing a frame structure in wireless communication
EP2063581A1 (en) * 2007-11-20 2009-05-27 STMicroelectronics (Grenoble) SAS Transferring a stream of data between first and second electronic devices via a network on-chip
US8392663B2 (en) * 2007-12-12 2013-03-05 Mips Technologies, Inc. Coherent instruction cache utilizing cache-op execution resources
US8179901B2 (en) 2008-02-11 2012-05-15 Vitesse Semiconductor Corporation System and method for squelching a recovered clock in an ethernet network
EP2248230B1 (en) 2008-02-29 2014-04-16 Hewlett-Packard Development Company, L.P. Modular system and retractable assembly for electronic devices
DE102008012979A1 (de) * 2008-03-06 2009-09-10 Gip Ag Verfahren und Programm zum Bereitstellen von Datenkohärenz in Netzwerken
US7492807B1 (en) 2008-04-07 2009-02-17 International Business Machines Corporation Pseudo-random bit sequence (PRBS) synchronization for interconnects with dual-tap scrambling devices and methods
WO2009134218A1 (en) * 2008-04-28 2009-11-05 Hewlett-Packard Development Company, L.P. Virtual-interrupt-mode interface and method for virtualizing an interrupt mode
US8762652B2 (en) * 2008-04-30 2014-06-24 Freescale Semiconductor, Inc. Cache coherency protocol in a data processing system
CN101599811B (zh) * 2008-06-02 2011-04-06 华为技术有限公司 一种数据处理装置,通信设备以及数据处理方法
US8201069B2 (en) * 2008-07-01 2012-06-12 International Business Machines Corporation Cyclical redundancy code for use in a high-speed serial link
US8205045B2 (en) 2008-07-07 2012-06-19 Intel Corporation Satisfying memory ordering requirements between partial writes and non-snoop accesses
US8250311B2 (en) * 2008-07-07 2012-08-21 Intel Corporation Satisfying memory ordering requirements between partial reads and non-snoop accesses
CN101325461B (zh) * 2008-07-25 2011-04-27 浙江大学 基于无速率码的认知无线电通信链路的建立和维护方法
WO2010028365A1 (en) * 2008-09-08 2010-03-11 Samsung Electronics Co., Ltd. Sub-channel acquisition in a digital television receiver designed to receive mobile/handheld signals
KR101774202B1 (ko) * 2008-09-10 2017-09-01 넥스트나브, 엘엘씨 지상 비컨 네트워크 및 이를 이용한 위치 결정 신호 생성 및 송신 방법
US8917209B2 (en) * 2009-09-10 2014-12-23 Nextnav, Llc Coding in a wide area positioning system (WAPS)
US8265071B2 (en) * 2008-09-11 2012-09-11 Juniper Networks, Inc. Methods and apparatus related to a flexible data center security architecture
CN101430664B (zh) * 2008-09-12 2010-07-28 中国科学院计算技术研究所 一种多处理器系统及Cache一致性消息传输方法
EP2173066B1 (en) 2008-10-01 2012-05-16 STMicroelectronics Srl Method of exchanging information in a Network-on-Chip communication network, corresponding Network-on-Chip communication network and computer program product
US8531943B2 (en) * 2008-10-29 2013-09-10 Adapteva Incorporated Mesh network
KR100988809B1 (ko) * 2008-11-06 2010-10-20 주식회사 하이닉스반도체 반도체 메모리 장치 및 출력인에이블 신호 생성 방법
US8706479B2 (en) * 2008-11-14 2014-04-22 Broadcom Corporation Packet loss concealment for sub-band codecs
CN101437033B (zh) * 2008-12-16 2012-07-11 杭州华三通信技术有限公司 一种支持可变速率的方法和网络设备
US8189504B2 (en) * 2008-12-17 2012-05-29 Viasat, Inc. Physical layer header structure for decoding and synchronization
US8799582B2 (en) * 2008-12-30 2014-08-05 Intel Corporation Extending cache coherency protocols to support locally buffered data
US8026726B2 (en) * 2009-01-23 2011-09-27 Silicon Image, Inc. Fault testing for interconnections
KR101598094B1 (ko) * 2009-02-02 2016-02-26 엘지전자 주식회사 송/수신 시스템 및 데이터 처리 방법
KR20100092353A (ko) * 2009-02-12 2010-08-20 엘지전자 주식회사 트래픽 암호화 키 관리방법 및 장치
WO2010096969A1 (zh) * 2009-02-27 2010-09-02 华为技术有限公司 无源光网络中发送上行传送帧的方法及设备
KR101133256B1 (ko) * 2009-02-27 2012-04-09 한국과학기술원 시그니처 정보를 이용한 물리계층에서의 타임스탬프 처리장치 및 그 방법
US20100228922A1 (en) 2009-03-09 2010-09-09 Deepak Limaye Method and system to perform background evictions of cache memory lines
US8401400B2 (en) * 2009-03-10 2013-03-19 Tyco Electronics Subsea Communications Llc Detection of data in signals with data pattern dependent signal distortion
US8335911B2 (en) * 2009-05-21 2012-12-18 Oracle America, Inc. Dynamic allocation of resources in a threaded, heterogeneous processor
US9690625B2 (en) * 2009-06-16 2017-06-27 Oracle America, Inc. System and method for out-of-order resource allocation and deallocation in a threaded machine
US8199759B2 (en) 2009-05-29 2012-06-12 Intel Corporation Method and apparatus for enabling ID based streams over PCI express
CN101561794B (zh) * 2009-06-05 2012-07-04 威盛电子股份有限公司 通用串行总线装置
US8239704B2 (en) * 2009-06-12 2012-08-07 Cray Inc. Global clock via embedded spanning tree
WO2010147264A1 (en) * 2009-06-16 2010-12-23 Lg Electronics Inc. Method of exchanging messages and transmitting and receiving devices
US8782347B2 (en) * 2009-06-26 2014-07-15 Intel Corporation Controllably exiting an unknown state of a cache coherency directory
US20100332877A1 (en) 2009-06-30 2010-12-30 Yarch Mark A Method and apparatus for reducing power consumption
US8831666B2 (en) * 2009-06-30 2014-09-09 Intel Corporation Link power savings with state retention
CN101695193A (zh) * 2009-09-27 2010-04-14 上海华为技术有限公司 一种下行数据发送和下行数据接收的方法和装置
US8799586B2 (en) 2009-09-30 2014-08-05 Intel Corporation Memory mirroring and migration at home agent
US8327228B2 (en) * 2009-09-30 2012-12-04 Intel Corporation Home agent data and memory management
US8819305B2 (en) * 2009-11-16 2014-08-26 Intel Corporation Directly providing data messages to a protocol layer
US9100809B2 (en) * 2009-12-21 2015-08-04 Julia Olincy Olincy Automatic response option mobile system for responding to incoming texts or calls or both
US20120227045A1 (en) 2009-12-26 2012-09-06 Knauth Laura A Method, apparatus, and system for speculative execution event counter checkpointing and restoring
US8804960B2 (en) * 2010-02-22 2014-08-12 International Business Machines Corporation Implementing known scrambling relationship among multiple serial links
US8868846B2 (en) * 2010-03-19 2014-10-21 Netapp, Inc. Method and system for maintaining data coherency across a network
US8473567B2 (en) * 2010-03-29 2013-06-25 Intel Corporation Generating a packet including multiple operation codes
US8514885B2 (en) * 2010-03-30 2013-08-20 International Business Machines Corporation Using variable length packets to embed extra network control information
US8539260B2 (en) * 2010-04-05 2013-09-17 Intel Corporation Method, apparatus, and system for enabling platform power states
CN101867401B (zh) * 2010-05-04 2013-11-20 西安交通大学 一种遮挡躲避的60GHz多天线系统及其信号处理方法
CN102238623B (zh) * 2010-05-06 2014-04-09 中兴通讯股份有限公司 加快无线链路控制窗口状态应答的方法及基站子系统
JP2011248814A (ja) * 2010-05-31 2011-12-08 Nec Corp PCIExpressリンクエラー検出及び自動復旧機能を備えたデバイス
US9448938B2 (en) * 2010-06-09 2016-09-20 Micron Technology, Inc. Cache coherence protocol for persistent memories
CN101867452B (zh) 2010-06-10 2013-07-17 国网电力科学研究院 一种电力专用串行实时总线的通信方法
KR101323055B1 (ko) * 2010-06-17 2013-10-29 엘지디스플레이 주식회사 내부 디스플레이 포트 인터페이스 테스트 방법 및 장치
CN102315917B (zh) * 2010-07-06 2014-12-17 瑞昱半导体股份有限公司 一种用于信号传输的省电方法及装置
CN102377608B (zh) * 2010-08-12 2014-07-09 盛科网络(苏州)有限公司 物理层故障模拟系统及方法
US8656115B2 (en) * 2010-08-20 2014-02-18 Intel Corporation Extending a cache coherency snoop broadcast protocol with directory information
WO2012038546A1 (en) * 2010-09-23 2012-03-29 St-Ericsson Sa Multi-lane data transmission de-skew
US9104793B2 (en) * 2010-09-24 2015-08-11 Intel Corporation Method and system of adapting communication links to link conditions on a platform
US8751714B2 (en) * 2010-09-24 2014-06-10 Intel Corporation Implementing quickpath interconnect protocol over a PCIe interface
US9146610B2 (en) 2010-09-25 2015-09-29 Intel Corporation Throttling integrated link
JP5597104B2 (ja) * 2010-11-16 2014-10-01 キヤノン株式会社 データ転送装置及びその制御方法
CN102142987B (zh) * 2010-12-09 2014-01-08 浪潮(北京)电子信息产业有限公司 一种高速串行总线设备及其传输数据的方法
JP2012146041A (ja) 2011-01-11 2012-08-02 Hitachi Ltd 計算機装置及び信号伝送方法
JP2012155650A (ja) * 2011-01-28 2012-08-16 Toshiba Corp ルータ及びメニーコアシステム
EP2482196B1 (en) * 2011-01-31 2016-06-29 Canon Kabushiki Kaisha Image processing apparatus, printing apparatus and controlling method in image processing apparatus
US8924672B2 (en) * 2011-02-08 2014-12-30 Infineon Technologies Ag Device with processing unit and information storage
US8756378B2 (en) * 2011-02-17 2014-06-17 Oracle International Corporation Broadcast protocol for a network of caches
US8824489B1 (en) * 2011-04-26 2014-09-02 Marvell International Ltd. Physical layer (PHY) devices for use in automotive and industrial applications
US9189424B2 (en) 2011-05-31 2015-11-17 Hewlett-Packard Development Company, L.P. External cache operation based on clean castout messages
US8868955B2 (en) 2011-07-01 2014-10-21 Intel Corporation Enhanced interconnect link width modulation for power savings
US8788890B2 (en) * 2011-08-05 2014-07-22 Apple Inc. Devices and methods for bit error rate monitoring of intra-panel data link
US8514889B2 (en) * 2011-08-26 2013-08-20 Sonics, Inc. Use of common data format to facilitate link width conversion in a router with flexible link widths
WO2013081580A1 (en) * 2011-11-29 2013-06-06 Intel Corporation Raw memory transaction support
US9442879B2 (en) * 2011-12-07 2016-09-13 Intel Corporation Multiple transaction data flow control unit for high-speed interconnect
CN103188059A (zh) 2011-12-28 2013-07-03 华为技术有限公司 快速通道互联系统中数据包重传方法、装置和系统
CN102571571A (zh) * 2011-12-28 2012-07-11 南京邮电大学 一种应用于时延容忍网络的多层次有效路由方法
CN102594745B (zh) * 2011-12-29 2015-02-04 东南大学 单载波频域均衡系统中的同步方法及其实现电路
US8892269B2 (en) 2012-03-30 2014-11-18 Intel Corporation Power down and quick start of thermal sensor
CN102685128B (zh) * 2012-05-09 2015-09-30 东南大学 一种基于状态机的协议构造方法
US9665521B2 (en) 2012-05-18 2017-05-30 Dell Products, Lp System and method for providing a processing node with input/output functionality by an I/O complex switch
US8856573B2 (en) * 2012-06-27 2014-10-07 Intel Corporation Setting a number (N) of fast training sequences (FTS) automatically to an optimal value
US9280504B2 (en) 2012-08-24 2016-03-08 Intel Corporation Methods and apparatus for sharing a network interface controller
US8984313B2 (en) 2012-08-31 2015-03-17 Intel Corporation Configuring power management functionality in a processor including a plurality of cores by utilizing a register to store a power domain indicator
US8935578B2 (en) 2012-09-29 2015-01-13 Intel Corporation Method and apparatus for optimizing power and latency on a link
US8996757B2 (en) * 2012-09-29 2015-03-31 Intel Corporation Method and apparatus to generate platform correctable TX-RX
US9003091B2 (en) 2012-10-18 2015-04-07 Hewlett-Packard Development Company, L.P. Flow control for a Serial Peripheral Interface bus
US9280507B2 (en) * 2012-10-22 2016-03-08 Intel Corporation High performance interconnect physical layer
WO2014065880A1 (en) 2012-10-22 2014-05-01 Robert Beers Coherence protocol tables
US9479196B2 (en) * 2012-10-22 2016-10-25 Intel Corporation High performance interconnect link layer
US9600431B2 (en) * 2012-10-22 2017-03-21 Intel Corporation High performance interconnect physical layer
US9405718B2 (en) 2013-02-28 2016-08-02 Intel Corporation Leveraging an enumeration and/or configuration mechanism of one interconnect protocol for a different interconnect protocol
US9436244B2 (en) * 2013-03-15 2016-09-06 Intel Corporation Adaptive control loop protection for fast and robust recovery from low-power states in high speed serial I/O applications
CN105765544B (zh) * 2013-12-26 2019-04-09 英特尔公司 多芯片封装链路
US9946676B2 (en) * 2015-03-26 2018-04-17 Intel Corporation Multichip package link

Patent Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1044559A (zh) * 1989-01-27 1990-08-08 英国电讯公司 远距离通信系统
CN1354915A (zh) * 1999-02-10 2002-06-19 艾利森公司 码多分址无线通信系统中使用的最大似然率rake(瑞克)接收机
US6185250B1 (en) * 1999-03-10 2001-02-06 Lucent Technologies Inc. Training of level learning modems
US7010607B1 (en) * 1999-09-15 2006-03-07 Hewlett-Packard Development Company, L.P. Method for training a communication link between ports to correct for errors
US6865231B1 (en) * 2000-06-20 2005-03-08 Hewlett-Packard Development Company, L.P. High-speed interconnection adapter having automated crossed differential pair correction
US20040103333A1 (en) * 2002-11-22 2004-05-27 Martwick Andrew W. Apparatus and method for low latency power management on a serial data link
CN1781082A (zh) * 2003-03-25 2006-05-31 英特尔公司 高性能串行总线测试方法
CN1922828A (zh) * 2004-03-15 2007-02-28 英特尔公司 具有基于自动协商的自动配置的收发器
CN1700701A (zh) * 2004-05-21 2005-11-23 英特尔公司 对基于链路的系统互连进行物理层初始化的方法和装置
US8161429B1 (en) * 2004-08-20 2012-04-17 Altera Corporation Methods and apparatus for initializing serial links
US20060047862A1 (en) * 2004-09-02 2006-03-02 International Business Machines Corporation Automatic hardware data link initialization
US20070264730A1 (en) * 2006-03-31 2007-11-15 Tim Frodsham Redundant acknowledgment in loopback entry
CN101627593A (zh) * 2007-03-09 2010-01-13 高通股份有限公司 使用频率平滑进行信道估计
CN101631000A (zh) * 2008-06-25 2010-01-20 英特尔公司 在串行链路中用于编码的链路和线路级分组方案
CN101854331A (zh) * 2009-04-02 2010-10-06 天际微芯(北京)科技有限公司 训练序列结构及训练方法
CN102656574A (zh) * 2009-12-04 2012-09-05 意法爱立信有限公司 用于可靠链路启动的方法和系统
US20110161547A1 (en) * 2009-12-24 2011-06-30 Ati Technologies Ulc Method and device for disabling a higher version of a computer bus and interconnection protocol for interoperability with a device compliant to a lower version of the computer bus and interconnection protocol
US20120082463A1 (en) * 2010-09-30 2012-04-05 Teradyne Inc. Electro-optical communications link

Also Published As

Publication number Publication date
KR101861312B1 (ko) 2018-05-28
KR101831550B1 (ko) 2018-02-22
CN107102960B (zh) 2021-07-09
RU2014145179A (ru) 2016-05-27
WO2014065882A1 (en) 2014-05-01
CN108132892A (zh) 2018-06-08
US20190391939A1 (en) 2019-12-26
CN104391816A (zh) 2015-03-04
US20180203811A1 (en) 2018-07-19
US20220114122A1 (en) 2022-04-14
US9626321B2 (en) 2017-04-18
KR20170007523A (ko) 2017-01-18
CN104335196B (zh) 2017-10-13
CN104380269A (zh) 2015-02-25
CN107015924A (zh) 2017-08-04
KR20140141616A (ko) 2014-12-10
EP3410304A1 (en) 2018-12-05
WO2014065878A1 (en) 2014-05-01
US10216661B2 (en) 2019-02-26
CN106776364B (zh) 2020-07-17
WO2014065877A1 (en) 2014-05-01
KR101615908B1 (ko) 2016-04-27
KR101985120B1 (ko) 2019-05-31
CN107102960A (zh) 2017-08-29
US20150067207A1 (en) 2015-03-05
US20180143937A1 (en) 2018-05-24
CN107045479B (zh) 2020-09-01
US11741030B2 (en) 2023-08-29
KR20170007865A (ko) 2017-01-20
KR101700261B1 (ko) 2017-01-26
DE112013005093T5 (de) 2015-10-22
US10380046B2 (en) 2019-08-13
KR20160145197A (ko) 2016-12-19
WO2014065876A1 (en) 2014-05-01
KR101599852B1 (ko) 2016-03-07
JP2017188909A (ja) 2017-10-12
US20200356502A1 (en) 2020-11-12
DE112013004094B4 (de) 2018-03-29
KR101828756B1 (ko) 2018-02-12
CN106681938A (zh) 2017-05-17
JP6139689B2 (ja) 2017-05-31
WO2014065873A8 (en) 2014-07-10
CN108055214B (zh) 2021-04-13
KR20150047552A (ko) 2015-05-04
EP3410304B1 (en) 2021-09-22
CN104995614B (zh) 2018-04-06
KR20170042379A (ko) 2017-04-18
CN111737167B (zh) 2024-05-28
KR101815173B1 (ko) 2018-01-30
US20150261711A1 (en) 2015-09-17
KR101905055B1 (ko) 2018-10-08
CN108132892B (zh) 2022-02-11
WO2014065873A1 (en) 2014-05-01
KR101695340B1 (ko) 2017-01-11
CN108614783A (zh) 2018-10-02
WO2014065876A9 (en) 2015-02-26
CN108228495A (zh) 2018-06-29
CN104969206B (zh) 2017-12-26
DE112013005086T5 (de) 2015-09-03
CN104536933A (zh) 2015-04-22
KR20170012581A (ko) 2017-02-02
KR20180018853A (ko) 2018-02-21
US9378171B2 (en) 2016-06-28
US20180095927A1 (en) 2018-04-05
DE112013004094T5 (de) 2015-07-23
KR101861452B1 (ko) 2018-05-25
KR20150047550A (ko) 2015-05-04
CN104995614A (zh) 2015-10-21
KR20150077397A (ko) 2015-07-07
CN107015924B (zh) 2020-10-30
CN104380269B (zh) 2018-01-30
CN107092565A (zh) 2017-08-25
CN104737142B (zh) 2018-03-23
WO2014065880A1 (en) 2014-05-01
CN104769570B (zh) 2018-05-15
RU2579140C1 (ru) 2016-03-27
US20140215112A1 (en) 2014-07-31
CN104536933B (zh) 2018-02-13
KR101772037B1 (ko) 2017-08-28
WO2014065883A1 (en) 2014-05-01
WO2014065881A1 (en) 2014-05-01
US20140215437A1 (en) 2014-07-31
KR20150059721A (ko) 2015-06-02
DE112013005104T5 (de) 2015-07-02
KR101689998B1 (ko) 2016-12-26
DE112013003723T5 (de) 2015-04-16
KR20150052102A (ko) 2015-05-13
CN106776364A (zh) 2017-05-31
US9916266B2 (en) 2018-03-13
KR101691756B1 (ko) 2016-12-30
KR20160150653A (ko) 2016-12-30
US20190347226A1 (en) 2019-11-14
CN104969207A (zh) 2015-10-07
CN108055214A (zh) 2018-05-18
DE112013002090T5 (de) 2015-01-15
CN104303166A (zh) 2015-01-21
DE112013007751B3 (de) 2023-01-12
KR101681509B1 (ko) 2016-12-01
KR101598746B1 (ko) 2016-02-29
CN104303166B (zh) 2018-01-09
CN104737147B (zh) 2018-11-06
KR20150077398A (ko) 2015-07-07
CN104737142A (zh) 2015-06-24
KR20160089541A (ko) 2016-07-27
KR20150063044A (ko) 2015-06-08
US10248591B2 (en) 2019-04-02
US20140201463A1 (en) 2014-07-17
CN108228495B (zh) 2021-05-25
KR20150070107A (ko) 2015-06-24
US10909055B2 (en) 2021-02-02
KR20150047551A (ko) 2015-05-04
KR101755005B1 (ko) 2017-07-06
US20170109315A1 (en) 2017-04-20
EP2909728A4 (en) 2016-06-22
KR101912074B1 (ko) 2018-10-25
BR112015006432A2 (pt) 2017-07-04
DE112013002069B4 (de) 2022-12-01
KR20180049192A (ko) 2018-05-10
CN104487958A (zh) 2015-04-01
CN104756097A (zh) 2015-07-01
US20170109286A1 (en) 2017-04-20
KR101696124B1 (ko) 2017-01-12
CN107045479A (zh) 2017-08-15
DE112013001360B4 (de) 2023-03-23
DE112013005090T5 (de) 2015-07-02
DE112013004105T5 (de) 2015-04-30
KR20150059775A (ko) 2015-06-02
CN104769570A (zh) 2015-07-08
RU2599971C2 (ru) 2016-10-20
US9418035B2 (en) 2016-08-16
US9892086B2 (en) 2018-02-13
CN104335196A (zh) 2015-02-04
CN107968756B (zh) 2021-10-01
KR101754890B1 (ko) 2017-07-06
US20210117350A1 (en) 2021-04-22
DE112013001360T5 (de) 2014-11-27
KR101815180B1 (ko) 2018-01-04
CN108614783B (zh) 2022-11-18
CN107092565B (zh) 2021-03-12
CN104969206A (zh) 2015-10-07
KR101847943B1 (ko) 2018-04-11
US20140112339A1 (en) 2014-04-24
KR101686360B1 (ko) 2016-12-13
CN104737147A (zh) 2015-06-24
KR101700545B1 (ko) 2017-01-26
KR101815178B1 (ko) 2018-01-04
US9753885B2 (en) 2017-09-05
KR101642086B1 (ko) 2016-07-22
JP6423040B2 (ja) 2018-11-14
CN104487958B (zh) 2018-05-22
CN106815151B (zh) 2021-04-20
CN106815151A (zh) 2017-06-09
KR20160144510A (ko) 2016-12-16
KR20170081728A (ko) 2017-07-12
KR20170005897A (ko) 2017-01-16
US20170083476A1 (en) 2017-03-23
KR20150003363A (ko) 2015-01-08
CN104756097B (zh) 2018-05-15
KR20160046928A (ko) 2016-04-29
WO2014065879A1 (en) 2014-05-01
KR101686359B1 (ko) 2016-12-13
US20240012772A1 (en) 2024-01-11
CN106681938B (zh) 2020-08-18
KR20170081730A (ko) 2017-07-12
US20170097907A1 (en) 2017-04-06
DE112013002880T5 (de) 2015-03-05
CN104391816B (zh) 2018-11-09
WO2014065884A1 (en) 2014-05-01
DE112013007767B3 (de) 2023-04-20
JP2016506548A (ja) 2016-03-03
DE112013007752B3 (de) 2023-04-27
CN107968756A (zh) 2018-04-27
EP2909728A1 (en) 2015-08-26
DE112013003723B4 (de) 2018-09-13
KR20140137398A (ko) 2014-12-02
DE112013002069T5 (de) 2015-01-08
US20150081984A1 (en) 2015-03-19
WO2014065875A1 (en) 2014-05-01
US11269793B2 (en) 2022-03-08
US10204064B2 (en) 2019-02-12

Similar Documents

Publication Publication Date Title
US10909055B2 (en) High performance interconnect physical layer
US9612986B2 (en) High performance interconnect physical layer

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