[go: up one dir, main page]

CN104380274B - Apparatus and method for optimized link training and management - Google Patents

Apparatus and method for optimized link training and management Download PDF

Info

Publication number
CN104380274B
CN104380274B CN201380021347.8A CN201380021347A CN104380274B CN 104380274 B CN104380274 B CN 104380274B CN 201380021347 A CN201380021347 A CN 201380021347A CN 104380274 B CN104380274 B CN 104380274B
Authority
CN
China
Prior art keywords
state
link
physical
integrated circuit
low power
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201380021347.8A
Other languages
Chinese (zh)
Other versions
CN104380274A (en
Inventor
M·瓦格
D·J·哈里曼
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
Priority claimed from US13/477,310 external-priority patent/US8437343B1/en
Application filed by Intel Corp filed Critical Intel Corp
Priority to CN201610857743.XA priority Critical patent/CN107092335B/en
Publication of CN104380274A publication Critical patent/CN104380274A/en
Application granted granted Critical
Publication of CN104380274B publication Critical patent/CN104380274B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/325Power saving in peripheral device
    • G06F1/3253Power saving in bus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13003Constructional details of switching devices
    • 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
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Communication Control (AREA)

Abstract

在一个实施例中,聚合协议栈能够用于统一从第一通信协议至第二通信协议的通信,以提供跨物理互连的数据传送。能够将这个栈合并到如下装置中,该装置包括用于包括事务及链路层的第一通信协议的协议栈以及耦接到该协议栈以经由物理链路提供该装置与耦接到该装置的设备间的通信的物理(PHY)单元。这个PHY单元可以包括根据第二通信协议的物理单元电路。描述并要求保护其它实施例。

In one embodiment, an aggregate protocol stack can be used to unify communications from a first communication protocol to a second communication protocol to provide data transfer across a physical interconnect. This stack can be incorporated into an apparatus including a protocol stack for a first communication protocol including a transaction and link layer and a physical (PHY) unit coupled to the protocol stack to provide communication between the apparatus and a device coupled to the apparatus via a physical link. This PHY unit may include physical unit circuitry according to a second communication protocol. Other embodiments are described and claimed.

Description

用于优化的链路训练及管理的装置和方法Apparatus and method for optimized link training and management

技术领域technical field

实施例涉及互连技术。Embodiments relate to interconnect technologies.

背景background

为了提供系统内不同设备之间的通信,使用某种类型的互连机制。取决于系统实施方式,广泛的各种这样的互连是可能的。时常为了使两个设备能够互相通信,它们分享共同的通信协议In order to provide communication between different devices within a system, some type of interconnection mechanism is used. A wide variety of such interconnections are possible, depending on the system implementation. Often times in order for two devices to communicate with each other, they share a common communication protocol

一种用于计算机系统内设备间通信的典型通信协议是根据基于PCI Express™规范基础规范版本3.0(2010年11月18日出版)(下文称为PCIeTM规范)的链路的外围组件快速互连(PCI ExpressTM(PCIeTM))通信协议。这个通信协议是加载/存储输入/输出(IO)互连系统的一个实例。通常根据这一协议以非常高的速度串行执行所述设备间的通信。当在台式计算机的背景下开发PCIeTM通信协议时,为了在不考虑功率效率的情况下实现最大性能的目的,开发了关于这一协议的各种参数。结果,其许多特征无法缩减至能够被合并到移动系统中的较低功率解决方案。A typical communication protocol for inter-device communication within a computer system is Peripheral Component Express Interconnect based on a link based on the PCI Express™ Specification Base Specification Version 3.0 (published November 18, 2010) (hereinafter referred to as the PCIeTM Specification). PCI Express TM (PCIe TM ) communication protocol. This communication protocol is an instance of a load/store input/output (IO) interconnect system. The communication between the devices is usually performed serially at very high speed according to this protocol. When the PCIe communication protocol was developed in the context of desktop computers, various parameters regarding this protocol were developed for the purpose of achieving maximum performance without regard to power efficiency. As a result, many of its features cannot be reduced to lower power solutions that can be incorporated into mobile systems.

除了这些关于常规加载/存储通信协议的功率问题外,现有的链路管理方案通常非常复杂并涉及大量状态,导致执行状态间转换的冗长过程。这部分地归因于现有的链路管理机制,其被开发以领会诸如连接器、不同系统合并等多种不同的形式因素要求。一个这样的实例是根据PCIeTM通信协议的链路管理。In addition to these power issues with conventional load/store communication protocols, existing link management schemes are usually very complex and involve a large number of states, resulting in lengthy procedures for performing transitions between states. This is due in part to existing link management mechanisms, which were developed to accommodate a variety of different form factor requirements such as connectors, merging of different systems, and the like. One such example is link management according to the PCIe communication protocol.

附图简述Brief description of the drawings

图1为根据本发明实施例的用于通信协议的协议栈的高级别框图。FIG. 1 is a high-level block diagram of a protocol stack for a communication protocol according to an embodiment of the present invention.

图2为根据本发明实施例的片上系统(SoC)的框图。FIG. 2 is a block diagram of a system on chip (SoC) according to an embodiment of the present invention.

图3为根据本发明另一实施例的物理单元的框图。Fig. 3 is a block diagram of a physical unit according to another embodiment of the present invention.

图4为示出根据本发明实施例的协议栈的进一步细节的框图。Figure 4 is a block diagram showing further details of a protocol stack according to an embodiment of the present invention.

图5为用于链路训练状态机的状态图,其能够是根据本发明实施例的链路管理器的部分。Figure 5 is a state diagram for a link training state machine, which can be part of a link manager according to an embodiment of the invention.

图6为根据本发明实施例的用于边带机制的各个状态的流程图。FIG. 6 is a flowchart of various states for a sideband mechanism according to an embodiment of the present invention.

图7为根据本发明实施例的方法的流程图。Fig. 7 is a flowchart of a method according to an embodiment of the present invention.

图8为根据本发明实施例的计算机系统中存在的组件的框图。FIG. 8 is a block diagram of components present in a computer system according to an embodiment of the present invention.

图9为实施例能够与其一起使用的实例系统的框图。9 is a block diagram of an example system with which an embodiment can be used.

具体实施方式detailed description

实施例可以提供输入/输出(IO)互连技术,其具有低功率、加载/存储架构,且尤其适用于在包括诸如智能电话的蜂窝电话、平板计算机、电子阅读器、超级本™等的移动设备中使用。Embodiments may provide input/output (IO) interconnect technology that has a low power, load/store architecture and is particularly suitable for use in mobile devices including cellular phones such as smartphones, tablet computers, e-readers, Ultrabooks™, etc. used in the device.

在各实施例中,用于给定通信协议的协议栈能够与不同的通信协议的物理单元或与用于给定通信协议的物理单元不同的至少一个物理(PHY)单元一起使用。物理单元包括逻辑层和物理或电气层两者,物理或电气层在互连(诸如链接两个独立半导体管芯的链路)上提供信息信号的实际、物理的通信,两个独立半导体管芯可以是在单个集成电路(IC)封装或例如经由电路板路由、迹线等耦接的分离封装内的两个半导体管芯。此外,所述物理单元能够执行数据包的成帧(framing)/解帧(deframing),执行链路训练及初始化,并处理用于从物理互连接收或递送至物理互连上的数据包。In various embodiments, a protocol stack for a given communication protocol can be used with physical units of a different communication protocol or at least one physical (PHY) unit different from the physical unit used for the given communication protocol. A physical unit includes both a logical layer and a physical or electrical layer that provides the actual, physical communication of information signals over an interconnect, such as a link linking two separate semiconductor dies. There may be two semiconductor dies within a single integrated circuit (IC) package or separate packages coupled eg via circuit board routing, traces, or the like. Additionally, the physical unit is capable of performing framing/deframing of packets, performing link training and initialization, and processing packets for reception from or delivery onto the physical interconnect.

虽然可能有不同的实施方式,但在一个实施例中,所述协议栈可能具有常规的基于个人计算机(PC)的通信协议(诸如根据PCI Express™规范基础规范版本3.0(2010年11月18日出版)(下文称为PCIeTM规范)的外围组件快速互连(PCI)ExpressTM(PCIeTM))通信协议)、应用协议扩展的进一步版本,或另一此类协议,同时所述物理单元不依据所述PCIeTM通信协议。出于实现低功率操作的目的,这一物理单元能够被特别设计为允许基本不改变的PCIeTM上协议栈与这一低功率物理电路合并。这样,为了易于合并到以低功率操作的便携并且其它不基于PC的形式因素中,能够利用PCIeTM通信协议的广泛的传统基础。但是本发明的范围不限于此,在一个实施例中,这一物理单元可以是由移动平台(诸如根据移动工业处理器接口(MIPI)联盟(其是针对移动计算设备设定标准的小组)的M-PHY规范版本1.00.00——2011年2月8日(2011年4月28日批准的MIPI Board)(下文为MIPI规范)的所谓的M-PHY)适配的物理单元。然而,能够使用其它低功率物理单元(诸如根据诸如用于把多芯片封装内的个体管芯耦接在一起的其它低功率规范),或定制的低功率解决方案。如本文所用的,术语“低功率”意指处于低于常规PC系统的功耗水平,并且其可以应用于广泛的各种移动及便携设备。作为实例,“低功率”可以是消耗的功率少于常规PCIeTM物理单元的物理单元。Although different implementations are possible, in one embodiment the protocol stack may have a conventional personal computer (PC) based communication protocol (such as the PCI Express™ Specification Base Specification Version 3.0 (Nov. 18, 2010) Published) (hereinafter referred to as the PCIe TM Specification) Peripheral Component Interconnect Express (PCI) Express TM (PCIe TM ) Communication Protocol), a further version of the Application Protocol Extensions, or another such protocol, while the physical unit does not According to the PCIe TM communication protocol. For the purpose of achieving low power operation, this physical unit can be specially designed to allow a substantially unchanged protocol stack on PCIe to be merged with this low power physical circuit. In this way, the broad legacy base of the PCIe communications protocol can be leveraged for ease of incorporation into portable and other non-PC based form factors that operate at low power. While the scope of the invention is not limited thereto, in one embodiment, this physical unit may be defined by a mobile platform, such as according to the Mobile Industry Processor Interface (MIPI) Alliance (which is a group that sets standards for mobile computing devices). M-PHY Specification Version 1.00.00 - physical unit of so-called M-PHY) adaptation on February 8, 2011 (MIPI Board approved on April 28, 2011) (hereinafter MIPI Specification). However, other low power physical units (such as according to other low power specifications such as for coupling together individual dies within a multi-chip package), or custom low power solutions can be used. As used herein, the term "low power" means at a lower power consumption level than conventional PC systems, and it can be applied to a wide variety of mobile and portable devices. As an example, "low power" may be a physical unit that consumes less power than a conventional PCIe physical unit.

这样,通过将传统的PCIeTM协议栈与不同类型的物理单元聚合,大量再使用的针对PCIeTM开发的传统组件能够被用来合并到移动或其它便携或低功率平台中。In this way, by aggregating legacy PCIe protocol stacks with different types of physical units, a large number of reused legacy components developed for PCIe can be used to incorporate into mobile or other portable or low power platforms.

实施例还可以利用如下认识:即现有加载/存储IO技术,尤其是PCIeTM以如下目的被设计:在功率效率不是主要问题的情况下实现最大性能,并且因此不会缩减至低功率应用。通过将常规加载/存储协议栈的部分与低功率设计的物理单元组合,实施例可以保留PCIeTM的性能优势,同时在设备及平台级别在功率方面达到最佳。Embodiments may also take advantage of the recognition that existing load/store IO technologies, especially PCIe , are designed to achieve maximum performance where power efficiency is not a major concern, and thus not scaled down to low power applications. By combining portions of a conventional load/store protocol stack with low power designed physical units, embodiments can preserve the performance advantages of PCIe while optimizing in terms of power at the device and platform level.

照此,实施例可以是与具有大的传统基础的普遍存在的PCIeTM架构兼容的软件。此外,实施例还可以实现直接PHY再使用移动设计 PHY,例如M-PHY。这样,能够利用传送的高效功率/比特以及友好地成为电磁接口/射频接口(EMI/RFI)的方法实现低活跃和空闲功率,因为PHY可以以不干扰相关联无线电(因为用于PHY的时钟速率的谐波不干涉典型的无线电解决方案以其操作的常规射频(例如,1.8、1.9、2.4千兆赫(GHz))或其他这样的射频)的时钟速率操作。As such, embodiments may be software compatible with the ubiquitous PCIe architecture with a large legacy base. Furthermore, embodiments may also enable direct PHY reuse of mobile design PHYs, such as M-PHY. In this way, low active and idle power can be achieved with efficient power/bits delivered and what is friendly as Electromagnetic Interface/Radio Frequency Interface (EMI/RFI) since the PHY can do so without interfering with the associated radio (because of the clock rate used for the PHY A typical radio solution operates at the clock rate of the conventional radio frequency (eg, 1.8, 1.9, 2.4 gigahertz (GHz)) or other such radio frequency on which it operates.

实施例可以进一步提供实现优化的链路训练和管理机制(LTSSM)的架构改进;优化的流控制和重试缓冲和管理机制;用于改变链路操作模式的架构协议;快速硬件支持设备状态保存及恢复;以及用于具有可选的带内支持的链路管理的统一边带机制。Embodiments may further provide architectural improvements enabling optimized link training and management mechanisms (LTSSM); optimized flow control and retry buffering and management mechanisms; architectural protocols for changing link operating modes; fast hardware support for device state preservation and recovery; and a unified sideband mechanism for link management with optional in-band support.

在各实施例中,PCIeTM事务及数据链路层能够被实施为具有有限修改的协议栈的部分以计及不同的链路速度和非对称链路。此外,可以提供修正的链路训练及管理,以包括对多通道通信、非对称链路配置、边带统一及动态带宽缩放性的支持。实施例可以进一步提供对现有的基于PCIeTM及基于非PCIeTM的逻辑和诸如M-PHY逻辑和电路之类的电路间的桥接的支持。In various embodiments, the PCIe transaction and data link layer can be implemented as part of the protocol stack with limited modifications to account for different link speeds and asymmetric links. In addition, modified link training and management may be provided to include support for multi-lane communication, asymmetric link configuration, sideband unification, and dynamic bandwidth scalability. Embodiments may further provide support for bridging between existing PCIe -based and non-PCIe -based logic and circuits such as M-PHY logic and circuits.

这种分层方法使得现有的软件栈(例如,操作系统(OS)、 虚拟机管理器及驱动器)能够在不同的物理层上无缝运行。对所述数据链路及事务层的影响被最小化并且可以包括更新相关的定时器以更新应答频率、重放定时器等。This layered approach enables existing software stacks (eg, operating system (OS), hypervisor, and drivers) to run seamlessly on different physical layers. Impact on the data link and transaction layers is minimized and may include updating related timers to update acknowledgment frequency, replay timers, etc.

因此,各实施例能够限制PCIeTM系统中提供的一些灵活性,因为这种灵活性某些情况下在PCIeTM系统及其它系统两者内能够创建某些复杂性。确实如此,因为这两种协议都提供了实现即插即播能力的极大灵活性。相反,各实施例能够定制最小化设计灵活性的量的解决方案,因为当被合并到给定系统(例如与另一集成电路(IC)互连的片上系统(SoC))中时,出现已知和固定的配置。因为在实现存在的精确配置方面是已知的,当SoC及连接的设备两者均附贴在平台内时,例如焊接到该系统的电路板,这些设备无需即插即播能力,并且因此可能不需要PCIeTM或其它基于PC的通信协议固有的、使得不同设备能够无缝地合并到具有即插即播能力的系统中的较大灵活性。Accordingly, embodiments can limit some of the flexibility provided in PCIe systems, as this flexibility can in some cases create certain complexities both within PCIe systems and others. This is true because both protocols offer great flexibility in enabling plug-and-play capabilities. Rather, embodiments enable custom solutions that minimize the amount of design flexibility because, when incorporated into a given system, such as a system-on-chip (SoC) interconnected with another integrated circuit (IC), existing Known and fixed configuration. As is known in achieving precise configurations that exist, when both the SoC and the connected devices are attached within the platform, for example soldered to the circuit board of the system, these devices do not require plug and play capability and thus may The greater flexibility inherent in PCIe or other PC-based communication protocols to enable seamless incorporation of different devices into a plug-and-play capable system is not required.

作为一个实例,所述SoC能够充当第一IC中实施的根联合体(root complex),并耦接到可以为无线电解决方案的第二IC,其能够包括多个无线通信设备中的一个或多个设备。这样的设备的范围能够从诸如根据蓝牙TM规范的低功率短程通信系统、诸如根据给定的电气及电子工程协会(IEEE)802.11标准的所谓的WiFiTM系统的局域无线通信,到诸如给定的蜂窝通信协议(诸如3G或4G通信协议)的高功率无线系统。As an example, the SoC can act as a root complex implemented in a first IC and is coupled to a second IC, which can be a radio solution, which can include one or more of a plurality of wireless communication devices devices. Such devices can range from low-power short-range communication systems such as according to the Bluetooth specification, local area wireless communication such as the so-called WiFi system according to the given Institute of Electrical and Electronics Engineering (IEEE) 802.11 standard, to such as the given High-power wireless systems with cellular communication protocols such as 3G or 4G communication protocols.

现在参考图1,示出了根据本发明实施例的用于通信协议的协议栈的高级别框图。如图1中所示,栈100可以是半导体组件(诸如IC)内软件、固件及硬件的组合,用于提供对所述半导体设备和与其耦接的另一设备间数据通信的处理。在图1的实施例中,示出了开始于高级别软件110的高级别视图,高级别软件110可以是在给定平台上执行的各种类型的软件。这种高级别软件可以包括操作系统(OS)软件、固件、应用软件等。要经由互连140传送的数据能够通过协议栈的各层传递,通常在图1内示出,互连140可以是将所述半导体设备与另一组件耦接的给定物理互连。如所见的,这一协议栈各部分可以是常规PCIeTM栈120的部分,并可以包括事务层125和数据链路层128。通常,事务层125用于生成能够是请求或由时间分离的基于响应的数据包的事务层数据包(TLP),从而允许该链路携带其它业务,同时目标设备收集用于所述响应的数据。所述事务层进一步处理基于信用的流控制。因此,事务层125提供设备的处理电路与互连架构间的接口,诸如数据链路层和物理层。在这方面,所述事务层的主要职责是数据包(即,事务层数据包(TLP))的组装和分解以及处理基于信用的流控制。Referring now to FIG. 1 , shown is a high level block diagram of a protocol stack for a communication protocol in accordance with an embodiment of the present invention. As shown in FIG. 1 , stack 100 may be a combination of software, firmware, and hardware within a semiconductor component, such as an IC, for providing processing of data communications between the semiconductor device and another device coupled thereto. In the embodiment of FIG. 1, a high-level view is shown beginning with high-level software 110, which may be various types of software executing on a given platform. Such high-level software may include operating system (OS) software, firmware, application software, and the like. Data to be communicated via interconnect 140 , which may be a given physical interconnect coupling the semiconductor device with another component, can be passed through layers of a protocol stack, generally shown within FIG. 1 . As seen, portions of this protocol stack may be part of a conventional PCIe stack 120 and may include a transaction layer 125 and a data link layer 128 . Typically, the transaction layer 125 is used to generate transaction layer packets (TLPs), which can be request or response based packets separated by time, allowing the link to carry other traffic while the target device collects data for the response . The transaction layer further handles credit-based flow control. Thus, the transaction layer 125 provides the interface between the device's processing circuitry and the interconnection fabric, such as the data link layer and the physical layer. In this regard, the main responsibilities of the transaction layer are the assembly and disassembly of data packets (ie, Transaction Layer Packets (TLPs)) and handling credit-based flow control.

继而,数据链路层128可以排序事务层生成的TLP,并确保两个端点间TLP的可靠递送(包括处理错误检查)和应答处理。因此,链路层128充当事务层与物理层之间的中间阶段,并提供用于通过链路在两个组件间交换TLP的可靠机制。所述链路层的一侧接收由所述事务层组装的TLP,应用标识符,计算并应用错误检测代码(例如循环恢复码(CRC)),并将修改的TLP提交给物理层以用于跨物理链路传输至外部设备。In turn, the data link layer 128 can sequence the TLPs generated by the transaction layer and ensure reliable delivery of TLPs between two endpoints (including handling error checking) and reply processing. Thus, the link layer 128 acts as an intermediate stage between the transaction layer and the physical layer and provides a reliable mechanism for exchanging TLPs between the two components over the link. One side of the link layer receives the TLP assembled by the transaction layer, applies an identifier, calculates and applies an error detection code (such as a cycle recovery code (CRC)), and submits the modified TLP to the physical layer for use in Transmitted across physical links to external devices.

在数据链路层128中处理后,能够将数据包传送给PHY单元130。通常,PHY单元130可以包括低功率PHY134,其可以包括逻辑层和物理(包括电气)子层两者。在一个实施例中,由PHY单元130表示的物理层以物理方式将数据包传输到外部设备。所述物理层包括为传输准备外出信息的传输区段和在将接收的信息传递到链路层之前标识并准备它的接收器区段。将被串行化并传输到外部设备的符号供应给所述传输器。将来自外部设备的串行化符号供应给所述接收器,并且接收器将所接收的信号变换为比特流。将所述比特流解串行并供应给逻辑子块。After processing in the data link layer 128 , the data packet can be passed to the PHY unit 130 . In general, PHY unit 130 may include a low power PHY 134, which may include both logical layers and physical (including electrical) sublayers. In one embodiment, the physical layer, represented by PHY unit 130, physically transmits data packets to external devices. The physical layer includes a transmit section that prepares outgoing information for transmission and a receiver section that identifies and prepares received information before passing it on to the link layer. Symbols to be serialized and transmitted to an external device are supplied to the transmitter. The receiver is supplied with serialized symbols from an external device, and the receiver transforms the received signal into a bit stream. The bitstream is deserialized and supplied to logical sub-blocks.

在一个实施例中,低功率PHY134(其能够是特别开发或由诸如M-PHY之类的另一PHY适配的给定低功率PHY)可以提供对打包数据的处理以用于沿互连140传送。如图1中进一步所见的的,链路训练及管理层132(本文也称作链路管理器)也可以存在于PHY单元130内。在各实施例中,链路管理器132可以包括可以根据诸如PCIeTM协议的另一通信协议实施的特定逻辑和处理例如上述PCIeTM协议栈的常规和具有不同协议的物理PHY134间接口的专有逻辑。In one embodiment, low power PHY 134 (which can be a given low power PHY specially developed or adapted by another PHY such as M-PHY) may provide processing of packed data for use along interconnect 140 send. As further seen in FIG. 1 , a link training and management layer 132 (also referred to herein as a link manager) may also reside within the PHY unit 130 . In various embodiments, Link Manager 132 may include specific logic that may be implemented in accordance with another communications protocol, such as the PCIe protocol, and proprietary processing of interfaces between conventional and physical PHYs 134 with different protocols, such as the PCIe protocol stack described above. logic.

在图1的实施例中,互连140能够实施为差分线对,差分线对可以是两对单向线。在某些实施方式中,多组差分对可以用来增加带宽。要注意,根据PCIeTM通信协议,要求每个方向上差分对的数目相同。然而,根据各实施例,能够在每个方向上提供不同数目的对,这允许操作更高效、功率更低。该整个聚合的栈及链路140可以称作移动快速PCIeTM互连或链路。虽然在图1的实施例中以这一高级别示出,但要理解本发明的范围不限于此。也就是说,要理解,图1中所示的视图只是关于通过物理层的来自事务层的协议栈以及高级别软件,并且未示出SoC的各种其它电路或包括这个栈的其它半导体设备。In the embodiment of FIG. 1 , interconnect 140 can be implemented as a differential wire pair, which can be two pairs of unidirectional wires. In some implementations, multiple sets of differential pairs can be used to increase bandwidth. It should be noted that according to the PCIe TM communication protocol, the number of differential pairs in each direction is required to be the same. However, according to various embodiments, different numbers of pairs can be provided in each direction, which allows for more efficient and lower power operation. This entire aggregated stack and link 140 may be referred to as a Mobile Express PCIe interconnect or link. While shown at this high level in the embodiment of FIG. 1 , it is to be understood that the scope of the present invention is not so limited. That is, it is to be understood that the view shown in FIG. 1 is only about the protocol stack from the transaction layer through the physical layer and high-level software, and does not show various other circuits of the SoC or other semiconductor devices including this stack.

现在参考图2,示出根据本发明实施例的SoC的框图。如图2所示,SoC200能够是用于实施在各种类型的SoC中的任何类型的平台,范围从诸如智能电话、个人数字助手(PDA)、平板计算机、笔记本、超级本TM等之类的相对较小的低功率便携设备到能够在高级别系统中实施的更高级的SoC。Referring now to FIG. 2 , a block diagram of a SoC according to an embodiment of the present invention is shown. As shown in FIG. 2, SoC 200 can be any type of platform for implementation in various types of SoCs ranging from devices such as smart phones, personal digital assistants (PDAs), tablet computers, notebooks, UltrabooksTM , etc. Relatively small low-power portable devices to more advanced SoCs capable of being implemented in high-level systems.

如图2中所见的,SoC200可以包括一个或多个内核2100-210n。因此在各实施例中,可能有多核SoC,所述内核全都可以是具有给定架构的同质内核,例如有序或无序处理器。或者能够存在异质内核,例如某些相对较小的低功率内核,例如具有有序架构的内核;具有存在的附加内核,该附加内核可以具有更大和更复杂的架构,例如无序架构。协议栈实现这些内核中的一个或多个与系统的其它组件之间数据通信。如看见的,这个栈能够包括软件215,其可以是较高级别软件(诸如OS、固件)和在一个或多个内核上执行的应用级软件。另外,所述协议栈包括事务层220和数据链路层230。在各实施例中,这些事务及数据链路层可以具有诸如PCIeTM协议的给定通信协议。当然,其它实施例中可以存在诸如根据通用串行总线(USB)协议栈的不同协议栈的层。而且,在一些实施方式中,能够用现有的替换协议栈多路复用本文所述的低功率PHY电路。As seen in FIG. 2 , SoC 200 may include one or more cores 210 0 - 210 n . Thus in various embodiments, there may be a multi-core SoC, the cores may all be homogeneous cores of a given architecture, such as in-order or out-of-order processors. Or there can be heterogeneous cores, eg some relatively small low power cores eg with an in-order architecture; there can be additional cores that can have larger and more complex architectures eg an out-of-order architecture. The protocol stack enables data communication between one or more of these cores and other components of the system. As seen, this stack can include software 215, which may be higher level software (such as OS, firmware) and application level software executing on one or more cores. In addition, the protocol stack includes a transaction layer 220 and a data link layer 230 . In various embodiments, these transaction and data link layers may have a given communication protocol such as the PCIe protocol. Of course, layers of a different protocol stack, such as according to the Universal Serial Bus (USB) protocol stack, may be present in other embodiments. Also, in some embodiments, the low power PHY circuits described herein can be multiplexed with existing replacement protocol stacks.

仍然参考图2,继而这一协议栈能够耦接到物理单元240,物理单元240可以包括能够经由多条互连提供通信的多个物理单元。在一个实施例中,第一物理单元250可以是低功率PHY单元,其在一个实施例中可以对应于根据MIPI规范的M-PHY,用于经由主互连280提供通信。另外,可以存在边带(SB)PHY单元244。在所示的实施例中,这个边带PHY单元可以经由边带互连270提供通信,边带互连270可以是用于例如以慢于耦接到第一PHY250的主互连280的数据速率提供某些边带信息的统一边带。在某些实施例中,所述协议栈的各层能够具有耦接到这个SB PHY244以实现沿这一边带互连的通信的分离边带。Still referring to FIG. 2, this protocol stack can then be coupled to a physical unit 240, which can include multiple physical units capable of providing communication via multiple interconnects. In one embodiment, the first physical unit 250 may be a low power PHY unit, which in one embodiment may correspond to an M-PHY according to the MIPI specification, for providing communication via the main interconnect 280 . Additionally, a sideband (SB) PHY unit 244 may be present. In the illustrated embodiment, this sideband PHY unit may provide communications via sideband interconnect 270, which may be configured for, for example, at a slower data rate than main interconnect 280 coupled to first PHY 250. Uniform sidebands that provide some sideband information. In some embodiments, layers of the protocol stack can have separate sidebands coupled to this SB PHY 244 for communication along this sideband interconnect.

此外,PHY单元240可以进一步包括能够用于控制SB PHY244的SB链路管理器242。另外,可以存在链路训练及状态管理器245,并且其能够用于将具有第一通信协议的协议栈适配到具有第二通信协议的第一PHY250,以及提供对于第一PHY250和互连280的整体控制。Additionally, PHY unit 240 may further include an SB link manager 242 operable to control SB PHY 244 . In addition, a link training and state manager 245 may be present and can be used to adapt the protocol stack with the first communication protocol to the first PHY 250 with the second communication protocol, as well as provide support for the first PHY 250 and the interconnect 280 overall control.

如进一步所见的,第一PHY250中可以存在各种组件。更具体地,可以存在传输器及接收器电路(即TX253和RX254)。通常,这种电路可以用来执行串行化操作、解串行操作以及经由主互连280传输及接收数据。可以存在保存状态管理器251,并且当其处于低功率状态时可以用于保存关于第一PHY250的配置及其它状态信息。而且,能够存在编码器252,用于例如根据8b/10b协议执行线编码。As further seen, various components may be present in the first PHY 250 . More specifically, there may be transmitter and receiver circuits (ie TX253 and RX254). In general, such circuitry may be used to perform serialization operations, deserialization operations, and transmit and receive data via the main interconnect 280 . A save state manager 251 may be present and may be used to save configuration and other state information about the first PHY 250 when it is in a low power state. Furthermore, there can be an encoder 252 for performing line encoding eg according to the 8b/10b protocol.

如图2进一步所见的,可以存在机械接口258。这个机械接口258可以是给定互连,用于提供来自根联合体200的通信,并且更具体地经由主互连280到达/来自第一PHY250的通信。在各实施例中,这种机械连接能够利用诸如球栅阵列(BGA)或其它表面贴装之类的半导体设备的引脚,或通过孔连接电镀。As further seen in FIG. 2 , there may be a mechanical interface 258 . This mechanical interface 258 may be a given interconnect for providing communication from the root complex 200 , and more specifically to/from the first PHY 250 via the primary interconnect 280 . In various embodiments, this mechanical connection can utilize pins of a semiconductor device such as a ball grid array (BGA) or other surface mount, or via via connection plating.

除了这些主要通信机制外,附加的通信接口可以利用低功率串行(LPS)PHY单元255,低功率串行(LPS)PHY单元255经由包括软件层216、事务层221、以及链路层231的分离栈在内核210与一个或多个片外设备260a-c间耦接,所述片外设备能够是诸如传感器、加速计、温度传感器、全球定位系统(GPS)电路、罗盘电路、触摸屏电路、键盘电路、鼠标电路等之类的各种低数据速率外围设备。In addition to these primary communication mechanisms, additional communication interfaces may utilize Low Power Serial (LPS) PHY unit 255 via The split stack is coupled between the core 210 and one or more off-chip devices 260a-c, which can be, for example, sensors, accelerometers, temperature sensors, global positioning system (GPS) circuits, compass circuits, touch screen circuits, Various low data rate peripherals such as keyboard circuits, mouse circuits, etc.

要注意,在各实施例中,边带互连270或主互连280两者都能够在SoC200和另一半导体组件(例如诸如多带无线电解决方案之类的另一IC)间耦接。Note that in various embodiments, either sideband interconnect 270 or main interconnect 280 can be coupled between SoC 200 and another semiconductor component (eg another IC such as a multi-band radio solution).

再次,虽然图2的图示是相对较高级别,但可以有变化。例如,可以提供多个低功率PHY以例如经由多条信道实现更高速率的数据通信,其中各信道与独立的PHY相关联。现在参考图3,示出根据本发明另一实施例的物理单元的框图。如图3中所示,物理单元300包括链路训练及状态管理器310。这个状态管理器可以如上所述,并能够是逻辑集合,用于使具有第一通信协议的协议栈能够与具有第二(例如不同)通信协议的物理单元接口。Again, while the illustration of Figure 2 is at a relatively high level, variations are possible. For example, multiple low power PHYs may be provided to enable higher rate data communication, eg, via multiple channels, where each channel is associated with a separate PHY. Referring now to FIG. 3 , a block diagram of a physical unit according to another embodiment of the present invention is shown. As shown in FIG. 3 , the physical unit 300 includes a link training and state manager 310 . This state manager can be as described above and can be a logical set for enabling a protocol stack with a first communication protocol to interface with a physical unit with a second (eg different) communication protocol.

如图3中进一步所见的,链路训练及状态管理器310可以与多个M-PHY3200-320n通信。通过提供多于一个的此类PHY,能够进行更高速率的数据通信。要注意,虽然图3所示的每个M-PHY可以包括一些数目的逻辑以用于使其个体独立通信能够发生,但对这些不同M-PHY的通信的整体控制可以经由链路训练及状态管理器310。而且,要理解,虽然图3中示出多个M-PHY,但在其它实施例中,能够存在另一类型的多个PHY单元,并能够提供另外的多个异质PHY单元。要注意,每个M-PHY单元能够被用作唯一逻辑链路的部分,或用在组中,其中组与单个逻辑链路相关联。每个设备通常可以消耗单个逻辑链路,但是在一些实施例中单个物理设备可以消耗多个逻辑链路,例如用于为多功能组件的不同功能提供专有链路资源。As further seen in FIG. 3, link training and state manager 310 may communicate with a plurality of M- PHYs 3200-320n . By providing more than one such PHY, higher rate data communication is enabled. Note that while each of the M-PHYs shown in FIG. 3 may include some amount of logic for enabling their individual independent communications to occur, the overall control over the communications of these different M-PHYs may be via link training and state Manager 310. Also, it is to be understood that while multiple M-PHY units are shown in FIG. 3, in other embodiments there can be another type of multiple PHY units and that additional heterogeneous multiple PHY units can be provided. Note that each M-PHY unit can be used as part of a unique logical link, or in a group where a group is associated with a single logical link. Each device may typically consume a single logical link, but in some embodiments a single physical device may consume multiple logical links, for example to provide dedicated link resources for different functions of a multi-function component.

现在参考图4,示出的是示出根据本发明实施例的协议栈的进一步细节的框图。如图4中所示,栈400包括各种层,包括:事务层410、数据链路层420及物理层430。如上所述,能够使用PCIeTM协议栈的常规事务及数据链路部分或此类栈的修改版本配置这些不同的层,以容纳具有该第一通信协议的这些层与具有另一通信协议的物理层之间的交互,物理层在图4的实施例中可以是根据MIPI规范的M-PHY。Referring now to FIG. 4 , shown is a block diagram showing further details of a protocol stack in accordance with an embodiment of the present invention. As shown in FIG. 4 , stack 400 includes various layers including: transaction layer 410 , data link layer 420 , and physical layer 430 . As noted above, these different layers can be configured using the conventional transaction and data link portions of the PCIe protocol stack, or modified versions of such stacks, to accommodate the integration of the layers with the first communication protocol with the physical layer with another communication protocol. Interaction between layers, the physical layer in the embodiment of FIG. 4 may be M-PHY according to the MIPI specification.

如图4中所见的,关于从协议栈400传输信息的传输方向,在事务层的通常组合控制及数据路径以形成TLP的传输数据包组装器412中接收例如从SoC的其它电路(诸如内核或其它处理逻辑)到协议栈的到来信息。在被组装到传输数据包之后(传输数据包在各实施例中能够是具有例如1至4096字节(或具有较小的最大允许大小,例如,128或256)的数据包),把组装的数据包提供给流控制器414,流控制器414基于排队传输的接下来的(一个或多个)TLP所要求的数目确定是否有足够的流控制信用可用,并且控制将数据包注入到数据链路层420中。更具体所见的,给错误检测器和序列器422提供这些注入的数据包,在一个实施例中错误检测器和序列器422可以生成TLP序列号和LCRC。进一步所见的,数据链路层420进一步包括传输消息机构426,传输消息机构426继而生成用于链路管理功能的DLLP,并耦接到数据链路传输控制器425,其是用于流控制及数据链路完整性(ACK/NAK)机制的控制器功能;要注意,这可以被细分,以使得使用不同的逻辑块实施这些功能。As seen in FIG. 4 , with regard to the direction of transmission of information transmitted from the protocol stack 400 , in the transport packet assembler 412 that typically combines the control and data paths at the transaction layer to form a TLP it receives data from, for example, other circuits of the SoC such as the core or other processing logic) to the incoming information of the protocol stack. After being assembled into a transport packet (a transport packet can be a packet with, for example, 1 to 4096 bytes (or a smaller maximum allowed size, such as 128 or 256) in various embodiments), the assembled The packet is provided to flow controller 414, which determines whether sufficient flow control credits are available based on the required number of next TLP(s) queued for transmission, and controls injection of the packet into the data link Road layer 420. As seen more specifically, these injected packets are provided to an error detector and sequencer 422, which in one embodiment may generate a TLP sequence number and LCRC. As further seen, the data link layer 420 further includes a transport message mechanism 426 which in turn generates a DLLP for link management functions and is coupled to a data link transport controller 425 which is used for flow control and data link integrity (ACK/NAK) mechanisms; note that this can be subdivided such that different logic blocks are used to implement these functions.

如进一步所见的,将处理过的数据包提供给重试缓冲424,重试缓冲424保存有每个TLP的拷贝直至被所述链路另一侧上组件应答,要注意,实践中这可以利用缓冲在栈的更上部(在组装器412内或上方)来实施,并且它们能够被存储在对应的条目中,直至被选择用于经由数据/消息选择器428传输到物理层430。通常,上述事务及数据链路层可以根据常规的PCIeTM协议栈电路操作,其中某些修改将在下面进一步描述。As further seen, the processed packets are provided to a retry buffer 424 which holds a copy of each TLP until acknowledged by a component on the other side of the link, noting that in practice this may Utilization buffering is implemented further up the stack (inside or above the assembler 412 ) and they can be stored in corresponding entries until selected for transmission to the physical layer 430 via the data/message selector 428 . In general, the transaction and data link layers described above may operate according to conventional PCIe protocol stack circuitry, with some modifications described further below.

相反关于物理层430,对这层的某些逻辑组件的多得多的修改(例如根据PCIeTM协议栈修改的那样)可以发生以及用于提供对具有另一通信协议的物理单元的实际物理部分的接口。如所见的,可以将到来的数据包应用于帧发生器432,其增加物理层帧符号并为所述数据包生成帧,并且将它们提供给带宽/位置映射器434,其移位数据路径中的字节以生成用于外部传输的要求的校准从而必要时调整数据路径宽度,并且继而耦接到可以用于执行链路训练及跳跃排序的训练器及跳跃序列器436。如所见的,帧发生器432、训练器/序列器436和数据/序列选择器438全都可以耦接到物理层传输控制器435,物理层传输控制器435为LTSSM和相关逻辑的收发器部分。框436是用于生成物理层传输(诸如训练集(TS)和跳跃排序集)的逻辑。这样,成帧的数据包可以被选择并提供给物理电路,以执行编码、串行化和把对应于处理的数据包的串行化信号驱动至物理互连上。在一个实施例中,可以在帧发生器432中执行不同通信协议间符号差的映射。Conversely with respect to the physical layer 430, much more modification of certain logical components of this layer (as modified for example according to the PCIe protocol stack) can take place and serve to provide access to the actual physical part of the physical unit with another communication protocol Interface. As can be seen, incoming data packets can be applied to a frame generator 432, which adds physical layer frame symbols and generates frames for the data packets, and provides them to a bandwidth/location mapper 434, which shifts the data path bytes in to generate the required alignment for external transmissions to adjust the data path width if necessary, and is then coupled to a trainer and hop sequencer 436 which can be used to perform link training and hop sequencing. As seen, frame generator 432, trainer/sequencer 436, and data/sequence selector 438 may all be coupled to physical layer transmit controller 435, which is the transceiver portion of the LTSSM and associated logic . Block 436 is logic for generating physical layer transmissions such as training sets (TS) and hop ordered sets. In this way, framed packets can be selected and provided to physical circuitry to perform encoding, serialization, and drive serialized signals corresponding to the processed packets onto the physical interconnect. In one embodiment, the mapping of symbol differences between different communication protocols may be performed in the frame generator 432 .

如所见的,能够给这一物理互连提供多条个体信道或通道。在所示的实施例中,每个物理信道或通道能够包括其自身的独立PHY单元传输电路4450-445j,在一个实施例中其每一个可以是根据MIPI规范的M-PHY单元的部分。如本文所述,不同于传输器与接收器的数目匹配的PCIeTM,可以存在不同数目的传输器和接收器。因此如所见的,每个传输电路445能够包括用于根据8b/10b编码对符号进行编码的编码器、把已编码的符号串行化的串行器和将信号驱动到物理互连上的驱动器。如进一步所见的,每个通道或信道可以与逻辑单元4400-440j相关联,其可以是根据用于M-PHY的MIPI规范的逻辑电路,用于因此经由对应的通道管理物理通信。As can be seen, this physical interconnect can be provided with multiple individual channels or lanes. In the illustrated embodiment, each physical channel or channel can include its own independent PHY unit transmission circuitry 445 0 - 445 j , each of which may be part of an M-PHY unit according to the MIPI specification in one embodiment . As described herein, unlike PCIe where the number of transmitters and receivers is matched, there may be a different number of transmitters and receivers. Thus as seen, each transmit circuit 445 can include an encoder to encode symbols according to 8b/10b encoding, a serializer to serialize the encoded symbols, and a driver to drive the signal onto the physical interconnect. driver. As further seen, each lane or channel may be associated with a logic unit 440 0 - 440 j , which may be a logic circuit according to the MIPI specification for M-PHY, for managing physical communication via the corresponding lane accordingly.

要注意,这些多个通道能够被配置为以不同的速率操作,且实施例可以包括不同数目的此类通道。另外,可以在传输及接收方向上具有不同数目的通道及通道速度。因此,尽管给定的逻辑单元440控制PHY445的对应通道的操作,但要理解,物理层传输控制器435可以用于控制经由物理互连的整体信息传输。要注意,在某些情况下,一些非常基础的功能由与每个通道相关联的不同逻辑执行;对于能够将通道分配给多于单个链路的情形,可以提供多个LTSSM实例;对于训练的链路,在控制收发器和接收器侧两者的每个组件中存在单个LTSSM。这种整体控制能够包括功率控制、链路速度控制、链路宽度控制、初始化等。Note that these multiple channels can be configured to operate at different rates, and embodiments may include different numbers of such channels. In addition, it is possible to have different numbers of lanes and lane speeds in the transmit and receive directions. Thus, while a given logic unit 440 controls the operation of a corresponding lane of the PHY 445, it is understood that a physical layer transport controller 435 may be used to control the overall information transport via the physical interconnect. Note that in some cases some very basic functions are performed by different logic associated with each channel; for situations where channels can be assigned to more than a single link, multiple LTSSM instances can be provided; for training Link, there is a single LTSSM in each component controlling both the transceiver and receiver sides. Such overall control can include power control, link speed control, link width control, initialization, and the like.

仍然参考图4,经由物理互连接收的到来信息可以类似地通过物理层430、数据链路层420和事务层410经由这些层的接收机制传递。在图4中所示的实施例中,每个PHY单元可以进一步包括接收电路,即接收电路4550-455k,其在所示的实施例中接收电路4550-455k能够针对物理链路的每个通道存在。要注意,在这个实施例中,接收器电路455和传输器电路445的数目不同。如所见的,这一物理电路能够包括用于接收到来信息的输入缓冲、对该信息进行解串行的解串行器以及可以用于解码以8b/10b编码传送的符号的解码器。如进一步所见的,每个通道或信道可以与逻辑单元4500-450k相关联,逻辑单元4500-450k可以是根据给定规范(例如用于M-PHY的MIPI规范)的逻辑电路,用于因此管理经由对应通道的物理通信。Still referring to FIG. 4 , incoming information received via the physical interconnect may similarly pass through the physical layer 430 , the data link layer 420 , and the transaction layer 410 via the reception mechanisms of these layers. In the embodiment shown in FIG. 4 , each PHY unit may further include receive circuits, namely receive circuits 455 0 -455 k , which in the illustrated embodiment are capable of addressing physical link of each channel exists. Note that in this embodiment, the numbers of receiver circuits 455 and transmitter circuits 445 are different. As can be seen, this physical circuit can include an input buffer to receive incoming information, a deserializer to deserialize this information, and a decoder that can be used to decode symbols transmitted in 8b/10b encoding. As further seen, each lane or channel may be associated with a logic unit 4500-450k , which may be a logic circuit according to a given specification (e.g. MIPI specification for M -PHY ) , for thus managing the physical communication via the corresponding channel.

可以继而将所解码的符号提供给物理层430的逻辑部分,其如所见可以包括弹性缓冲460,其中所述弹性缓冲容纳所述链路上这个组件与另一组件之间的时钟差;要注意,在各个实施方式中它的位置可以移位成例如在8b/10b解码器之下,或与通道抗扭斜缓冲组合,并存储到来的已解码符号。继而,该信息可以被提供给宽度/位置映射器462,由那里提供给跨多条通道执行抗扭斜的通道抗扭斜缓冲464,并且对于多通道情形,缓冲464能够处理通道间信号扭斜的差异以重新对准字节。继而,经由抗扭斜的信息可以被提供给帧处理器466,其可以消除到来信息中存在的帧。如所见的,物理层接收控制器465可以耦接到并控制弹性缓冲460、映射器462、抗扭斜缓冲464和帧处理器466。The decoded symbols may then be provided to the logical portion of the physical layer 430, which as seen may include an elastic buffer 460 that accommodates clock differences between this component and another component on the link; Note that in various embodiments its location may be shifted eg below the 8b/10b decoder, or combined with the lane deskew buffer, and store incoming decoded symbols. This information can in turn be provided to a width/position mapper 462, from there to a lane deskew buffer 464 which performs deskew across multiple lanes, and for multi-lane cases the buffer 464 is able to handle inter-lane signal skew difference to realign the bytes. In turn, the de-skewed information may be provided to frame processor 466, which may eliminate the frames present in the incoming information. As seen, physical layer receive controller 465 may couple to and control elastic buffer 460 , mapper 462 , deskew buffer 464 and frame processor 466 .

仍然参考图4,可以将恢复的数据包提供给接收消息机构478及错误检测器、序列检查器和链路级重试(LLR)请求器475。这一电路可以对到来的数据包执行错误校正检查,例如通过执行CRC校验和操作、执行排序检查并请求对错误接收的数据包进行链路级重试。接收消息机构478和错误检测器/请求器475两者都可以处于数据链路接收控制器480的控制下。Still referring to FIG. 4 , the recovered data packets may be provided to a receive message mechanism 478 and error detector, sequence checker and link level retry (LLR) requester 475 . This circuitry can perform error correction checks on incoming packets, such as by performing CRC checksum operations, performing ordering checks, and requesting link-level retries for erroneously received packets. Both receive message mechanism 478 and error detector/requester 475 may be under the control of data link receive controller 480 .

仍然参考图4,因此在单元475中处理的数据包可以提供给事务层410,并且更具体地提供给流控制器485,其对这些数据包执行流控制以将它们提供给数据包解释器495。数据包解释器495执行对所述数据包的解释,并将它们转发给选定的目的地,例如给定的内核或该接收器的其它逻辑电路。虽然图4的实施例中以这一高级别示出,但要理解,本发明的范围不限于此。Still referring to FIG. 4, packets processed in unit 475 may thus be provided to transaction layer 410, and more specifically to flow controller 485, which performs flow control on these packets to provide them to packet interpreter 495. . Packet interpreter 495 performs interpretation of the packets and forwards them to a selected destination, such as a given core or other logic of the receiver. While shown at this high level in the embodiment of FIG. 4, it is to be understood that the scope of the present invention is not so limited.

要注意,PHY440可以使用与由用于传输的PCIeTM所支持的相同的8b/10b编码。所述8b/10b编码方案提供不同于用来表示字符的数据符号的特殊符号。这些特殊符号可以用于PCIeTM规范的物理层章节中所描述的各种链路管理机制。在MIPI M-PHY规范中描述了M-PHY对附加特殊符号的使用。实施例可以提供PCIeTM与MIPI M-PHY符号之间的映射。Note that the PHY 440 can use the same 8b/10b encoding supported by PCIe for transport. The 8b/10b encoding scheme provides special symbols other than the data symbols used to represent characters. These special symbols can be used for various link management mechanisms described in the physical layer chapter of the PCIe TM specification. The use of additional special symbols by M-PHY is described in the MIPI M-PHY specification. Embodiments may provide mapping between PCIe TM and MIPI M-PHY symbols.

现在参考表1,示出了根据本发明一个实施例的PCIeTM符号至M-PHY符号的实例性映射。因此,这个表示出根据本发明一个实施例的用于聚合的协议栈的特殊符号的映射。Referring now to Table 1, an exemplary mapping of PCIe TM symbols to M-PHY symbols is shown, according to one embodiment of the present invention. Thus, this table shows the mapping of special symbols for the aggregated protocol stack according to one embodiment of the invention.

表1Table 1

所述8b/10b解码规则与针对PCIeTM规范定义的相同。8b/10b规则的唯一例外是当检测到TAIL OF BURST时,这是违反8b/10b规则的特定序列。根据各实施例,物理层430能够向数据链路层420提供在TAIL OF BURST期间遭遇的任何错误的通知。The 8b/10b decoding rules are the same as defined for the PCIe specification. The only exception to the 8b/10b rule is when TAIL OF BURST is detected, which is a specific sequence that violates the 8b/10b rule. According to various embodiments, physical layer 430 is capable of providing notification to data link layer 420 of any errors encountered during TAIL OF BURST.

在一个实施例中,符号的成帧及应用于通道可以如PCIeTM规范中所定义的,同时数据加扰能够与PCIeTM规范中所定义的相同。然而,要注意,不扰乱根据MIPI规范的通信的PREPARE阶段中传输的数据符号。In one embodiment, the framing of symbols and application to lanes can be as defined in the PCIe specification, while data scrambling can be the same as defined in the PCIe specification. However, care is taken not to disturb the data symbols transmitted in the PREPARE phase of communication according to the MIPI specification.

关于链路初始化和训练,链路管理器可以提供如上讨论的能够包括一条或多条通道的信道的链路的配置及初始化、对正常数据传送的支持、对从链路错误恢复时状态转换的支持和由低功率状态的端口重启。With regard to link initialization and training, the link manager can provide configuration and initialization of links for channels that can include one or more lanes, support for normal data transfers, support for state transitions when recovering from link errors, as discussed above. Support and port restart from low power state.

为了实现此类操作,下列物理及链路相关的特征可以提前是已知的(例如初始化之前):PHY参数(例如,包括初始链路速度和支持的速度;以及初始链路宽度和支持的链路宽度)。To enable such operations, the following physical and link-related characteristics may be known in advance (e.g., prior to initialization): PHY parameters (including, for example, initial link speed and supported speeds; and initial link width and supported link speeds; road width).

在一个实施例中,训练可以包括各种操作。此类操作可以包括:以配置的链路速度和宽度初始化该链路、每通道比特锁、每通道符号锁、通道极性以及用于多通道链路的通道至通道抗扭斜。这样,训练能够发现通道极性,并据此执行调整。然而,要注意,根据本发明实施例的链路训练可以不包括链路数据速率及宽度协商、链路速度及宽度退化。相反如上所述,一旦初始化链路,两实体都提前知道初始链路宽度及速度,并且因此能够避免与协商相关联的时间及计算代价。In one embodiment, training may include various operations. Such operations may include initializing the link at the configured link speed and width, per-lane bit lock, per-lane symbol lock, lane polarity, and lane-to-lane deskew for multi-lane links. This way, training is able to discover channel polarity and perform adjustments accordingly. However, it should be noted that link training according to embodiments of the present invention may not include link data rate and width negotiation, link speed and width degradation. Instead, as described above, once the link is initialized, both entities know the initial link width and speed ahead of time, and thus can avoid the time and computational costs associated with negotiation.

PCIeTM有序集能够用于下列修改:TS1及TS2有序集用于方便IP再使用,但忽略所述训练有序集的许多字段。而且,不使用快速训练序列。可以保留电气空闲有序集(EIOS)以方便IP再使用,如跳跃OS那样,但跳跃OS的频率可以出于与根据PCIeTM规范的不同速度。还要注意,数据流有序集和符号可以与根据PCIeTM规范的相同。PCIe TM ordered sets can be used for the following modifications: TS1 and TS2 ordered sets are used to facilitate IP reuse, but many fields of the training ordered sets are ignored. Also, fast training sequences are not used. Electrical Idle Ordered Sets (EIOS) may be reserved to facilitate IP reuse, as in Jump OS, but the frequency of Jump OS may be at a different speed than according to the PCIe TM specification. Note also that the dataflow ordered set and symbols can be the same as according to the PCIe specification.

传送下列事件以方便链路训练及管理:(1)存在,其能够用来指示在链路的远程端上存在活跃的PHY;以及(2)配置准备,其被触发以指示完成PHY参数配置以及所述PHY以配置的配置文件准备操作。在一个实施例中,系类信息能够根据本发明实施例经由统一的边带信号传送。The following events are transmitted to facilitate link training and management: (1) present, which can be used to indicate that there is an active PHY on the remote end of the link; and (2) configuration ready, which is triggered to indicate completion of PHY parameter configuration and The PHY is ready to operate with the configured profile. In one embodiment, the family information can be transmitted via a unified sideband signal according to an embodiment of the present invention.

出于控制电气空闲情况的目的,PHY具有用于指示传输器正进入到电气空闲状态中的TAIL OF BURST序列。在一个实施例中,所述边带信道可以用于信号发送退出电气空闲。要注意,这一指示可以加上PHY抑制打破机制。可以将符号的OPENS序列作为EIOS传输以指示进入电气空闲状态。For the purpose of controlling electrical idle conditions, the PHY has a TAIL OF BURST sequence to indicate that the transmitter is entering an electrical idle state. In one embodiment, the sideband channel may be used for signaling exit from electrical idle. Note that this instruction can be coupled with the PHY inhibition break mechanism. An OPENS sequence of symbols may be transmitted as EIOS to indicate entry into the electrical idle state.

在一些实施例中,未定义快速训练序列(FTS)。相反,PHY可以使用特定的物理层序列以用于从停机/睡眠状态退出至能够用来寻址比特锁、符号锁及通道至通道抗扭斜的突发状态。能够将少量FTS定义为针对鲁棒性的符号序列。数据流有序集的开始可以根据PCIeTM规范,如链路错误恢复那样。In some embodiments, no fast training sequence (FTS) is defined. Instead, the PHY can use a specific physical layer sequence for exiting from a shutdown/sleep state to a burst state that can be used to address bit lock, symbol lock, and lane-to-lane deskew. A small number of FTSs can be defined as sequences of symbols for robustness. The start of an ordered set of data streams can be according to the PCIe specification, as in link error recovery.

关于链路数据速率,在各实施例中,所述链路初始化的初始数据速率可以是预定的数据速率。可以通过经历恢复状态发生从这一初始链路速度的数据速率改变。实施例可以支持非对称链路数据速率,其中允许相反方向上数据速率不同。Regarding the link data rate, in various embodiments, the initial data rate of the link initialization may be a predetermined data rate. A data rate change from this initial link speed can occur by going through a recovery state. Embodiments may support asymmetric link data rates, where a different data rate in the opposite direction is allowed.

在一个实施例中,所支持的链路宽度可以根据PCIeTM规范中的那些。另外,如上所述,因为所述链路宽度是预定的,实施例可以不支持用于协商链路宽度的协议,并且因此可以简化链路训练。当然,实施例可以为相反方向上的非对称链路宽度提供支持。同时,针对链路的每个方向配置的初始链路宽度和初始数据速率可以提前在训练开始前是已知的。In one embodiment, the supported link widths may be according to those in the PCIe specification. Additionally, as described above, because the link width is predetermined, embodiments may not support a protocol for negotiating link width, and thus link training may be simplified. Of course, embodiments may provide support for asymmetric link widths in the opposite direction. Meanwhile, the initial link width and initial data rate configured for each direction of the link may be known in advance before training starts.

关于所述PHY单元的物理端口,不要求xN端口形成xN(其中N能够是32、16、12、8、4、2和1)链路以及x1链路的能力,并且xN端口形成N与1间任意链路宽度的能力是可选的。这一行为的实例包括x16端口,其能够仅配置成唯一链路,但所述链路的宽度能被配置为x12、x8、x4、x2以及x16和x1的要求宽度。这样,寻求使用根据本发明实施例的协议栈实施设备的设计者能够以允许两个不同组件满足上述要求的方式连接这些组件间的端口。如果组件间的端口以不符合由组件的端口描述/数据表所定义的预期用途的方式连接,则行为未定义。Regarding the physical ports of the PHY unit, there is no requirement for xN ports to form xN (where N can be 32, 16, 12, 8, 4, 2, and 1) links as well as x1 link capabilities, and xN ports form N with 1 The ability to have arbitrary link widths between is optional. Examples of this behavior include x16 ports, which can only be configured as a unique link, but the width of the link can be configured as x12, x8, x4, x2 and the required width of x16 and x1. In this way, a designer seeking to implement a device using a protocol stack according to an embodiment of the present invention can connect ports between two different components in a manner that allows these components to meet the requirements described above. If ports between components are connected in a way that does not conform to their intended use as defined by the component's port description/datasheet, the behavior is undefined.

另外,不禁用将一个端口分为两个或更多链路的能力。如果这样的支持适于给定设计,则所述端口能够被配置为在训练期间支持特定宽度。这一行为的实例将是可以能够配置两条x8链路、4条x4链路或16条x1链路的x16端口。Also, the ability to split a port into two or more links is not disabled. The ports can be configured to support specific widths during training, if such support is appropriate for a given design. An example of this behavior would be a x16 port that could be configured with two x8 links, 4 x4 links, or 16 x1 links.

当使用8b/10b编码时,如PCIeTM规范中的无歧义通道至通道抗扭斜机制是在训练序列或SKP有序集期间接收的有序集的COM符号,因为在配置的链路的所有通道上同时传输有序集。在HS-BURST的同步序列期间传输的MK0符号可以用于通道-通道抗扭斜。When using 8b/10b encoding, the unambiguous lane-to-lane anti-skew mechanism as in the PCIe TM specification is the COM symbol of the ordered set received during the training sequence or SKP ordered set, since all Sorted sets are transmitted concurrently on the channel. The MK0 symbols transmitted during the synchronization sequence of the HS-BURST can be used for lane-to-lane deskew.

如上参考图4 所简述的,链路训练和状态管理器能够被配置为执行各种操作,包括将PCIeTM协议栈的上层适配至不同协议的下层PHY单元。另外,这一链路管理器能够配置并管理单个或多个通道,并可以包括对如下各项的支持:对称链路带宽、具有PCIeTM事务及数据链路层的状态机的兼容性、链路训练、可选对称链路停机状态和对用于鲁棒通信的边带信号的控制。因此,实施例提供了利用有限的修改实施PCIeTM事务及数据链路层以计及不同的链路速度和非对称链路。另外,使用根据本发明实施例的链路管理器,能够实现对多通道的支持、非对称链路配置、边带统一和动态带宽缩放,同时进一步实现不同通信协议层之间的桥接。As briefly described above with reference to FIG. 4, the link training and state manager can be configured to perform various operations, including adapting the upper layers of the PCIe protocol stack to lower layer PHY units of different protocols. In addition, this link manager is capable of configuring and managing single or multiple lanes and may include support for: symmetric link bandwidth, compatibility with state machines at the PCIe TM transaction and data link layers, link link training, optional symmetric link shutdown state, and control of sideband signals for robust communications. Accordingly, embodiments provide for implementing the PCIe transaction and data link layers with limited modifications to account for different link speeds and asymmetric links. In addition, using the link manager according to the embodiment of the present invention can support multi-channel, asymmetric link configuration, sideband unification and dynamic bandwidth scaling, and further realize bridging between different communication protocol layers.

现在参考图5,示出了用于链路训练状态机的状态图500,其能够是根据本发明实施例的链路管理器的部分。如图5中所示,链路训练能够开始于检测状态510。这一状态在上电复位时发生,并且适用于上游及下游端口。复位完成后,所有配置的通道可以转换至给定状态,即HIBERN8状态,所述链路的每一端在该状态上能够使用边带信道例如经由PRESENCE信号发信号。要注意,在这个检测状态中,可以在所有通道上驱动高阻抗信号,即DIF-Z信号。Referring now to FIG. 5 , there is shown a state diagram 500 for a link training state machine, which can be part of a link manager according to an embodiment of the present invention. As shown in FIG. 5 , link training can begin in a detection state 510 . This state occurs at power-on reset and applies to both upstream and downstream ports. After the reset is complete, all configured lanes can transition to a given state, the HIBERN8 state, where each end of the link can signal using a sideband channel, eg via the PRESENCE signal. Note that in this detection state, a high-impedance signal, the DIF-Z signal, can be driven on all channels.

因此,当信号发送并接收PRESENCE事件时,控制由检测状态510传递至配置状态520,并在所有配置的通道上驱动这一高阻抗。在配置状态520中,能够配置PHY参数,且一旦在所述链路每个端的所有配置通道上完成,则能够例如使用边带互连来指示配置准备信号(CFG-RDY),同时在所有通道上维持高阻抗。Therefore, when a PRESENCE event is signaled and received, control passes from the Detect state 510 to the Configure state 520 and drives this high impedance on all configured channels. In configuration state 520, PHY parameters can be configured and once done on all configuration lanes at each end of the link, a configuration ready signal (CFG-RDY) can be indicated, for example using a sideband interconnect, simultaneously on all lanes maintain high impedance.

因此一旦经由边带互连发送并接收这一配置准备指示,控制就传递至停机状态530。即在这个L0.STALL状态中,PHY转换至STALL状态,并继续在所有配置通道上驱动高阻抗。如所见的,取决于数据是否可用于传输或接收,控制能够传递至活跃状态L1(状态530)、低功率状态(L1状态540)、深低功率状态(L1.OFF状态545)或返回配置状态520。So once this configuration readiness indication is sent and received via the sideband interconnect, control passes to the shutdown state 530 . That is, in this L0.STALL state, the PHY transitions to the STALL state and continues to drive high impedance on all configured channels. As can be seen, depending on whether data is available for transmission or reception, control can pass to the active state L1 (state 530 ), the low power state (L1 state 540 ), the deep low power state (L1.OFF state 545 ) or return to configuration Status 520.

因此,在STALL状态中,能够在所有配置的通道上传送负驱动信号DIF-N。然后,当由启动器引导时,可以开始BURST序列。因此,在传输MARKER0(MK0)符号后,控制传递至活跃状态530。Thus, in the STALL state, the negative drive signal DIF-N can be transmitted on all configured channels. Then, when booted by the initiator, the BURST sequence can begin. Therefore, control passes to active state 530 after the MARKER0 (MK0 ) symbol is transmitted.

在一个实施例中,接收器可以检测在所有配置的通道上从STALL状态的退出,并根据例如MIPI规范执行比特锁和符号锁。在具有多通道链路的实施例中,这一MK0符号可以用于建立通道至通道抗扭斜。In one embodiment, the receiver can detect exit from STALL state on all configured lanes and perform bit lock and symbol lock according to eg MIPI specification. In embodiments with multi-lane links, this MK0 symbol can be used to establish lane-to-lane deskew.

相反,当被引导至低功率状态(即L1状态540)时,所有配置的通道可以转换至SLEEP状态。继而当被引导至更深低功率状态(即L1.OFF状态545)时,所有配置的通道可以转换至HIBERN8状态。最后,当被引导回至配置状态时,类似地,所有配置的通道转换至HIBERN8状态。Conversely, all configured lanes may transition to the SLEEP state when directed to a low power state (ie, L1 state 540 ). All configured lanes may then transition to the HIBERN8 state when directed to a deeper low power state (ie L1.OFF state 545). Finally, when directed back to the configured state, all configured channels are similarly transitioned to the HIBERN8 state.

仍然参考图5,对于活跃数据传送,控制因此传递至活跃状态550。特别地,这是链路及事务层开始使用数据链路层数据包(DLLP)和TLP交换信息的状态。这样,能够发生有效负载传送,并在此类传送结束时,能够传送TAIL OF BURST符号。Still referring to FIG. 5 , for active data transfers, control therefore passes to the active state 550 . Specifically, this is the state at which the Link and Transaction layers start exchanging information using Data Link Layer Packets (DLLPs) and TLPs. In this way, payload transfers can take place, and at the end of such transfers, TAIL OF BURST symbols can be transferred.

如所见的,控制能够由这一活跃状态传递回至STALL状态530、至恢复状态560(例如响应于接收器错误,或当以另外方式被引导时)、或至更深的低功率(例如,L2)状态570。As can be seen, control can be passed from this active state back to the STALL state 530, to the recovery state 560 (e.g. in response to a receiver error, or when otherwise directed), or to a deeper low power (e.g., L2) State 570.

为了返回到所述停机状态,传输器可以在所有配置的通道上发送EIOS序列,后边是TAIL of BURST指示。To return to the halted state, the transmitter may send an EIOS sequence on all configured channels followed by a TAIL of BURST indication.

如果错误发生或以另外方式引导,控制还能够传递至恢复状态560。此处,转换至恢复导致所有配置的通道在两个方向上进入STALL状态。为了实现这个,能够在边带互连上发送GO TO STALL信号,且这个信号的传输器能够等待响应。当这个停机信号已被发送并接收时,如所述边带互连上接收的GO TO STALL指示所指示的,控制传递回到STALL状态530。要注意这个恢复状态因此使用边带建立所述协议以协调同时进入到STALL状态中。Control can also pass to recovery state 560 if an error occurs or is otherwise directed. Here, a transition to recovery causes all configured channels to enter the STALL state in both directions. To achieve this, a GO TO STALL signal can be sent on the sideband interconnect, and the transmitter of this signal can wait for a response. When this stall signal has been sent and received, control passes back to the STALL state 530 as indicated by the GO TO STALL indication received on the sideband interconnect. Note that this recovery state therefore uses sidebands to establish the protocol to coordinate simultaneous entry into the STALL state.

关于低功率状态L1和L1.OFF,操作根据状态540和545。特别地,控制从STALL状态传递至L1低功率状态540,以使得能够将PHY置于SLEEP状态中。在这个状态中,能够在所有配置的通道上驱动负驱动信号,即DIF-N信号。当被引导以退出所述状态时,控制传递回至STALL状态,例如在边带互连上信号发送PRESENCE信号。Operation is according to states 540 and 545 with respect to low power states L1 and L1.OFF. In particular, control passes from the STALL state to the L1 low power state 540 to enable the PHY to be placed in the SLEEP state. In this state, a negative drive signal, the DIF-N signal, can be driven on all configured channels. When directed to exit the state, control passes back to the STALL state, such as signaling a PRESENCE signal on the sideband interconnect.

还如所见的,当满足所有L1.OFF条件时,能够进入更深低状态L1.OFF。在一个实施例中,这些条件可以包括完全功率门控或关掉到PHY单元的功率。在这一更深低功率状态中,可以将PHY置于HIBERN8状态中,并且在所有配置的通道上驱动高阻抗信号。为了退出这一状态,经由在所有配置的通道上驱动DIF-N来控制传递回至STALL状态。As also seen, the deeper low state L1.OFF can be entered when all L1.OFF conditions are met. In one embodiment, these conditions may include full power gating or turning off power to the PHY unit. In this deeper low power state, the PHY can be placed in the HIBERN8 state and drive high impedance signals on all configured channels. To exit this state, control is passed back to the STALL state by driving DIF-N on all configured channels.

进一步如图5中所见的,可以存在附加状态,即再进一步更深的低功率状态(L2)570,当准备关掉功率时,能够从活跃状态进入该再进一步更深的低功率状态(L2)570。在一个实施例中,这个状态可以与PCIeTM规范的那个相同。As further seen in FIG. 5, there may be an additional state, a still further deeper low power state (L2) 570, which can be entered from the active state when power is to be turned off 570. In one embodiment, this state may be the same as that of the PCIe specification.

现在参考表2,示出了根据PCIeTM规范的LTSSM状态与根据本发明实施例的对应M-PHY状态之间的映射。Referring now to Table 2, there is shown a mapping between LTSSM states according to the PCIe specification and corresponding M-PHY states according to an embodiment of the present invention.

表2Table 2

LTSSM状态LTSSM status M-PHY状态M-PHY state 详细信息details 检测,轮询detection, polling SAVESAVE 通过SAVE子状态的状态转换State transitions through the SAVE substate 配置configuration BURSTBURST BURST(PREP、SYNC)子状态BURST (PREP, SYNC) sub-state 恢复recover BURST/SLEEP/STALLBURST/SLEEP/STALL 可以处于BURST状态,但将通过SLEEP/STALL转换至BURSTCan be in BURST state, but will transition to BURST via SLEEP/STALL L0L0 BURST(有效负载)BURST (payload) BURST模式和交换事务BURST mode and swap transactions L0sL0s STALLSTALL STALL状态STALL state L1L1 SLEEPSLEEP SLEEP状态SLEEP state L1.OFFL1.OFF HIBERN8HIBERN8 HIBERN8HIBERN8 L2L2 UNPOWEREDUNPOWERED UNPOWERED状态UNPOWERED state 禁用disabled DISABLEDDISABLED DISABLED状态DISABLED state 回送loopback 无动作no action 从配置进入回送时,链路速度可以改变Link speed can change when entering loopback from configuration 热复位hot reset INLINE RESETINLINE RESET INLINE RESET状态INLINE RESET state

如上参考图2所述的,实施例提供一种能够用于链路管理以及可选带内支持的统一边带机制。以这种方式,使用边带电路和互连,链路管理及控制能够独立于用于主互连的物理层的更高速(以及更大功耗)电路而发生。进一步以这种方式,当与主互连相关联的PHY单元的部分被断电时,能够使用这一边带信道,实现功耗减少。而且,在训练主互连之前能够使用这一统一边带机制,并且当主互连上出现故障时也可以使用。As described above with reference to FIG. 2, embodiments provide a unified sideband mechanism that can be used for link management as well as optional in-band support. In this way, using sideband circuitry and interconnects, link management and control can occur independently of the higher speed (and more power consuming) circuitry of the physical layer for the main interconnect. Further in this way, when the portion of the PHY unit associated with the main interconnect is powered down, this sideband channel can be used, achieving a reduction in power consumption. Also, this unified sideband mechanism can be used before training the main interconnect and also when there is a failure on the main interconnect.

再进一步地,经由这一统一边带机制,能够存在每个方向上的单个互连,例如差分线对,从而减少引脚数并实现增加新能力。实施例还可以实现更快、更鲁棒的时钟/功率门控,并能使用这一链路消除在例如PCIeTM边带机制之类的常规协议中的歧义。Still further, via this unified sideband mechanism, there can be a single interconnect in each direction, such as a differential pair, reducing pin count and enabling the addition of new capabilities. Embodiments can also enable faster, more robust clock/power gating and can use this link to disambiguate in conventional protocols such as the PCIe sideband mechanism.

但本发明的范围不限于此,在不同实施例中,边带互连(例如,图2的边带互连270)能够被实施为单线双向边带信号、双线双向单向信号集、低速带内信号发送机制(诸如使用处于低功率脉冲宽度调制(PWM)模式中的M-PHY可用的)、或实施为带内高速信号发送机制,诸如物理层有序集或DLLP。While the scope of the invention is not limited thereto, in various embodiments, a sideband interconnect (eg, sideband interconnect 270 of FIG. 2 ) can be implemented as a single-wire bidirectional sideband signal, a dual-wire bidirectional In-band signaling mechanisms, such as are available using M-PHY in low-power pulse width modulation (PWM) mode, or implemented as in-band high-speed signaling mechanisms, such as Physical Layer Ordered Set or DLLP.

作为实例而不是出于限制的目的,可以支持各种物理层方法。当使用边带互连时,第一种方法可以是提供最小引脚数的单线双向边带信号。在某些实施例中,能够在现有的边带上多路复用这一信号,例如PERST#、WAKE#或CLKREQ信号。第二种方法可以是双线双向单向信号集,其相较于单线方法可以更简单并且某种程度上更高效,但代价是附加引脚。能够在现有的边带上多路复分这一实施方式,例如用于主机设备的PERST#和用于设备主机的CLKREQ#(在这个实例中,维持现有的信号方向性,简化双模式实施方式)。第三种方法可以是低速带内信号发送机制,诸如M-PHY LS PWM模式,其相对于边带机制减少了引脚数,并可以仍然支持类似的低功率级别。因为这个操作模式与高速操作互斥,所以它能够与诸如物理层有序集或DLLP之类的高速带内机制组合。尽管这种方法不是低功率的,但它最大化了与现有高速IO的共性。当与低速带内信号发送组合时,这种方法可以提供良好的低功率解决方案。By way of example and not limitation, various physical layer methods may be supported. When using sideband interconnects, the first approach can be to provide a single-wire bidirectional sideband signal with minimal pin count. In some embodiments, this signal can be multiplexed on existing sidebands, such as PERST#, WAKE# or CLKREQ signals. A second approach could be a two-wire bidirectional unidirectional signal set, which can be simpler and somewhat more efficient than the single-wire approach, at the cost of additional pins. This implementation can be multiplexed on existing sidebands, such as PERST# for the host device and CLKREQ# for the device host (in this instance, maintaining the existing signal directionality, simplifying the dual-mode implementation). A third approach could be a low-speed in-band signaling mechanism, such as M-PHY LS PWM mode, which reduces pin count relative to sideband mechanisms and can still support similarly low power levels. Because this mode of operation is mutually exclusive with high-speed operation, it can be combined with high-speed in-band mechanisms such as Physical Layer Ordered Sets or DLLP. Although this approach is not low-power, it maximizes commonality with existing high-speed IO. When combined with low-speed in-band signaling, this approach can provide a good low-power solution.

为了在给定系统中实现这些配置中的一种或多种,能够提供语义层,其能够用于确定物理层以及策略层上方交换的信息的含义,该含义能够用于领会设备/平台级别的动作/反应。在一个实施例中,这些层可以存在于SB PHY单元中。To implement one or more of these configurations in a given system, a semantic layer can be provided which can be used to determine the meaning of information exchanged above the physical layer as well as the policy layer which can be used to comprehend device/platform level action/reaction. In one embodiment, these layers may exist in the SB PHY unit.

通过提供分层方法,实施例允许可以包括边带能力(由于简单性和/或低功率操作,其可以在某些实施方式中是优选的)及带内(其对于其它实施方式可以是优选的,例如避免需要附加引脚数)两者的不同物理层实施方式。By providing a layered approach, embodiments allow for sideband capabilities (which may be preferred in some implementations due to simplicity and/or low power operation) and in-band capabilities (which may be preferred for other implementations) , such as avoiding the need for additional pin counts) different physical layer implementations for both.

在一个实施例中,能够例如经由语义层将多个边带信号配置成用于经由统一边带机制(或带内机制)通信的单个数据包。在一个实施例中,下面的表3示出了在一个实施例中可以存在的各个信号。在所示的表中,由箭头示出信号的逻辑方向,其中上箭头被定义为至主机(例如,根联合体)的方向,并且下箭头被定义为至设备(例如,外围设备,诸如无线电解决方案)的方向。In one embodiment, multiple sideband signals can be configured, eg, via a semantic layer, into a single data packet for communication via a unified sideband mechanism (or in-band mechanism). In one embodiment, Table 3 below shows the various signals that may be present in one embodiment. In the table shown, the logical direction of the signals is shown by arrows, where the up arrow is defined as the direction to the host (e.g., the root complex) and the down arrow is defined as the direction to the device (e.g., a peripheral such as a radio solution) direction.

表3table 3

设备存在↑Device exists ↑

功率良好↓Good power ↓

断电↓power off↓

参考时钟良好↓Good reference clock ↓

基础复位↓Base reset↓

配置准备↑↓Configuration preparation ↑↓

准备训练↑↓Ready to train ↑↓

开始训练↑↓Start training ↑↓

L1pg请求↑↓L1pg Request ↑↓

L1pg拒绝↑↓L1pg rejects ↑↓

L1pg授权↑↓L1pg authorization↑↓

OBFF CPU活跃↓OBFF CPU active↓

OBFF DMA↓OBFF DMA↓

OBFF空闲↓OBFF free↓

唤醒↑wake up ↑

握手的应答接收↑↓。The response to the handshake is received ↑↓.

现在参考图6,示出了针对根据本发明实施例的边带机制的各个状态的流程图。如图6中所示的,这些各个状态可以关于根联合体(例如,主机控制操作)。状态图600可以提供经由所述主机对各个状态的控制。如所见的,操作开始于预引导状态610,在该状态中能够传送存在信号。要注意这种存在信号可以如上面关于链路管理操作所述的那样。然后,控制传递至引导状态620,在该状态中可以传送各种信号,即功率良好信号、复位信号、参考时钟状态信号和准备训练信号。要注意,所有这些信号能够经由单个数据包传送,其中这些信号中的每一个都可以对应于所述数据包的指示符或字段(例如,数据包的1比特指示符)。Referring now to FIG. 6 , there is shown a flowchart for various states of a sideband mechanism according to an embodiment of the present invention. As shown in FIG. 6, these various states may relate to the root complex (eg, host control operations). State diagram 600 may provide control of various states via the host. As can be seen, operation begins in a pre-boot state 610 in which a presence signal can be transmitted. Note that this presence signal can be as described above with respect to link management operations. Control then passes to the boot state 620 where various signals can be transmitted, namely a power good signal, a reset signal, a reference clock status signal, and a ready to train signal. Note that all of these signals can be conveyed via a single data packet, where each of these signals may correspond to an indicator or field of the data packet (eg, a 1-bit indicator of the data packet).

仍然参考图6,控制接下来传递至活跃状态630,其中系统可以处于活跃状态(例如,S0),对应设备(例如,下游设备可以是活跃设备状态(例如,D0)并且链路可以处于活跃状态、停机或低功率状态(例如,L0、L0s或L1)。如所见的,在这个状态中,可以传送各种信号,包括OBFF信号、时钟请求信号、参考时钟状态、请求L0信号和准备训练信号。Still referring to FIG. 6, control next passes to the active state 630, where the system may be in the active state (e.g., S0), the corresponding device (e.g., the downstream device may be in the active device state (e.g., D0) and the link may be in the active state , shutdown or low-power state (for example, L0, L0s, or L1). As you can see, in this state, various signals can be transmitted, including OBFF signal, clock request signal, reference clock status, request L0 signal, and prepare for training Signal.

接下来,例如执行上述信号发送后,控制能够传递至低功率状态640。如所见的,在这个低功率状态640中,该系统可以处于活跃状态,同时设备可以处于相对较低延迟的低功率状态(例如,D3热)。另外,所述链路可以处于给定的低功率状态(例如,L2或L3)。如在这些状态中所见的,经由统一边带数据包传送的信号可以包括唤醒信号、复位信号和功率良好信号。Next, control can pass to a low power state 640, eg, after performing the signaling described above. As can be seen, in this low power state 640, the system can be active while the device can be in a relatively low latency low power state (eg, D3 hot). Additionally, the link may be in a given low power state (eg, L2 or L3). As seen in these states, the signals conveyed via the unified sideband packets may include wakeup signals, reset signals, and power good signals.

当所述系统进入更深低功率状态时,能够进入第二低功率状态650(例如,当所述系统处于S0状态并且所述设备处于D3冷状态以及所述链路类似地处于L2或L3状态中时。如所见的,能够传送相同的唤醒、复位和功率良好信号。还在图6中所见的,在更深低功率状态660(例如,系统低功率状态S3)和设备低功率状态(例如,D3冷)以及相同的链路低功率状态L2及L3中能够发生相同的信号。虽然示出了传递的这一特定边带信息集,但要理解,本发明的范围不限于此。A second low power state 650 can be entered when the system enters a deeper low power state (e.g., when the system is in state S0 and the device is in D3 cold state and the link is similarly in L2 or L3 state When. As can be seen, the same wakeup, reset, and power good signals can be conveyed. Also seen in FIG. , D3 cold) and the same signal can occur in the same link low power states L2 and L3. While this particular set of sideband information conveyed is shown, it is to be understood that the scope of the invention is not limited thereto.

实施例因此提供了分层结构,具有能够相对于灵活性平衡简单性与低等待时间的延展性。以这种方式,能够用较少数目的信号代替现有的边带信号和附加的边带信号,并且在不增加更多引脚的情况下实现边带机制的未来扩展。Embodiments thus provide a layered structure with extensibility that balances simplicity and low latency against flexibility. In this way, it is possible to replace existing sideband signals and additional sideband signals with a smaller number of signals, and to enable future expansion of the sideband mechanism without adding more pins.

现在参考图7,示出了一种根据本发明实施例的方法的流程图。如图7中所示,方法700可以用于经由聚合的协议栈传送数据,该聚合的协议栈包括一个通信协议的上层和不同的通信协议的下层,例如物理层。在所示的实例中,假设如上所述的聚合的协议栈,即具有PCIeTM协议的上事务及数据链路层和不同规范(例如MIPI规范)的物理层。当然,还可以存在使这两个通信协议能够聚合为单个协议栈的附加逻辑,例如上面关于图4讨论的逻辑及电路。Referring now to FIG. 7 , a flowchart of a method according to an embodiment of the present invention is shown. As shown in FIG. 7 , method 700 may be used to transmit data via a converged protocol stack comprising upper layers of one communication protocol and lower layers of a different communication protocol, such as a physical layer. In the example shown, a converged protocol stack as described above is assumed, ie with the upper transaction and data link layers of the PCIe protocol and the physical layer of a different specification (eg MIPI specification). Of course, there may also be additional logic that enables the aggregation of these two communication protocols into a single protocol stack, such as the logic and circuitry discussed above with respect to FIG. 4 .

如图7中所见的,方法700能够开始于在第一通信协议的协议栈中接收第一事务(框710)。例如,诸如内核的根联合体的各种逻辑、其它执行引擎等寻求发送信息给另一设备。因此,这种信息可以传递至事务层。如所见的,控制传递至框720,其中事务能够被处理并提供给第二通信协议的PHY的逻辑部分。这种处理可以包括上面关于图4的流程所讨论的各种操作,其中能够发生接收数据、执行流控制、链路操作、打包操作等各种操作。另外,能够发生提供数据链路层数据包给PHY的各种操作。接下来,控制传递至框730,其中能够在PHY的逻辑部分中将这个第一事务转化为第二格式事务。例如,能够执行符号的任意转化(需要时)。另外,能够发生被执行以因此将所述事务转化为用于在所述链路上传输的格式的各种转换操作。因此,控制能够传递至框740,其中能够经由链路将这个第二格式事务从PHY传送至设备。作为实例,第二格式事务能够是线编码、串行化等之后的串行化数据。虽然在图7的实施例中以这一高级别示出,但要理解,本发明的范围不限于此。As seen in FIG. 7 , method 700 can begin by receiving a first transaction in a protocol stack of a first communication protocol (block 710 ). For example, various logic such as the root complex of the kernel, other execution engines, etc. seek to send information to another device. Therefore, this information can be passed to the transaction layer. As seen, control passes to block 720 where the transaction can be processed and provided to the logic of the PHY of the second communication protocol. Such processing may include the various operations discussed above with respect to the flow of FIG. 4, where various operations such as receiving data, performing flow control, linking operations, packing operations, etc., can occur. In addition, various operations can occur to provide data link layer packets to the PHY. Next, control passes to block 730, where this first transaction can be translated into a second format transaction in the logical portion of the PHY. For example, arbitrary transformations of symbols can be performed (when required). Additionally, various conversion operations can occur that are performed to thereby convert the transaction into a format for transmission over the link. Accordingly, control can pass to block 740, where this second format transaction can be communicated from the PHY to the device via the link. As an example, the second format transaction can be serialized data after wire encoding, serialization, or the like. While shown at this high level in the embodiment of FIG. 7, it is to be understood that the scope of the present invention is not so limited.

现在参考图8,示出了一种根据本发明实施例的计算机系统中存在的组件的框图。如图8中所示,系统800能够包括许多不同的组件。这些组件能够被实施为IC、其部分、分立电子设备或适配到诸如计算机系统的母板或插入卡之类的电路板的其它模块,或实施为以另外方式合并在计算机系统的机箱内的组件。还要注意,图8的框图旨在示出计算机系统的许多组件的高级别视图。然而,要理解,在某些实施方式中可以存在附加组件,并且另外,在其它实施方式中可以发生所示组件的不同布置。Referring now to FIG. 8 , there is shown a block diagram of components found in a computer system in accordance with an embodiment of the present invention. As shown in Figure 8, system 800 can include many different components. These components can be implemented as ICs, portions thereof, discrete electronic devices, or other modules that fit into a circuit board, such as a computer system's motherboard or plug-in card, or as an IC that is otherwise incorporated within a computer system's chassis. components. Note also that the block diagram of Figure 8 is intended to show a high-level view of the many components of a computer system. It is to be understood, however, that in certain embodiments additional components may be present, and that additionally, in other embodiments different arrangements of the components shown may occur.

如图8中所见的,处理器810(其可以是诸如超低电压处理器的低功率多核处理器插槽)可以充当用于与所述系统的各种组件通信的主处理单元和中央集线器。这种处理器能够被实施为SoC。在一个实施例中,处理器810可以是基于Intel®架构CoreTM的处理器(诸如可从加州Santa Clara的英特尔公司获取的i3、i5、i7或另一此类处理器)。然而,要理解,在诸如苹果A5处理器的其它实施例中可以替代地存在诸如可从加州Sunnyvale的高级微设备公司(AMD)获取的其它低功率处理器、来自ARM 公司控股有限公司的基于ARM的设计、或来自加州Sunnyvale的MIPS技术公司或它们的获许可者或采纳者的基于MIPS的设计。As seen in FIG. 8, processor 810 (which may be a low power multi-core processor socket such as an ultra-low voltage processor) may serve as the main processing unit and central hub for communicating with the various components of the system . Such a processor can be implemented as a SoC. In one embodiment, processor 810 may be an Intel® Architecture Core based processor (such as an i3, i5, i7, or another such processor available from Intel Corporation of Santa Clara, California). However, it is to be understood that other low power processors such as those available from Advanced Micro Devices (AMD) of Sunnyvale, CA, ARM based ARM from ARM Corporation Holdings, Inc. may alternatively exist in other embodiments such as the Apple A5 processor. or MIPS-based designs from MIPS Technologies, Inc., Sunnyvale, California, or their licensors or adopters.

处理器810可以与系统存储器815通信,系统存储器815在实施例中能通过多个存储器设备实施以提供给定量的系统存储器。作为实例,该存储器能够根据联合电子设备工程会议(JEDEC)的基于低功率双数据速率(LPDDR)的设计,诸如根据JEDEC JESD 209-2E的当前LPDDR2标准(2009年4月出版),或称作LPDDR3的、将提供对LPDDR2的扩展以增加带宽的下一代LPDDR标准。作为实例,可以存在2/4/8千兆字节(GB)的系统存储器,并能经由一个或多个存储器互连耦接到处理器810。在各种实施方式中,个体存储器设备能够具有不同的封装类型,诸如单管芯封装(SDP)、双管芯封装(DDP)或四管芯封装(QDP)。这些设备在一些实施例中能够直接被焊接到母板上以提供低外形解决方案,而在其它实施例中,所述设备能够配置为一个或多个存储模块,其继而能够由给定的连接器耦接到母板。Processor 810 may be in communication with system memory 815, which in embodiments can be implemented with multiple memory devices to provide a given amount of system memory. As an example, the memory can be based on a Low Power Double Data Rate (LPDDR) based design of the Joint Electron Device Engineering Conference (JEDEC), such as the current LPDDR2 standard according to JEDEC JESD 209-2E (published April 2009), or called LPDDR3 is the next-generation LPDDR standard that will provide extensions to LPDDR2 to increase bandwidth. As an example, 2/4/8 gigabytes (GB) of system memory can be present and can be coupled to the processor 810 via one or more memory interconnects. In various implementations, individual memory devices can have different package types, such as single die package (SDP), dual die package (DDP), or quad die package (QDP). These devices can in some embodiments be soldered directly to the motherboard to provide a low profile solution, while in other embodiments the devices can be configured as one or more memory modules which in turn can be connected by a given tor coupled to the motherboard.

为了提供信息(诸如数据、应用、一个或多个操作系统等)的持续存储,海量存储器820也可以耦接到处理器810。在各实施例中,为了实现更薄和更轻的系统设计,以及为了改进系统响应性,这种海量存储器可以经由SSD实施。然而,在其它实施例中,海量存储器可以主要使用硬盘驱动器(HDD)来实施,其中较少量SSD存储器充当SSD高速缓存从而实现在关机事件期间背景状态和其它此类信息的非易失性存储,以使得在重启系统活动时能够发生快速上电。图8中还示出,闪存设备822可以耦接到处理器810,例如经由串行外围接口(SPI)。这个闪存设备可以提供包括基本输入/输出软件(BIOS)以及该系统的其它固件的系统软件的非易失性存储。Mass storage 820 may also be coupled to processor 810 in order to provide persistent storage of information, such as data, applications, one or more operating systems, and the like. In various embodiments, to enable thinner and lighter system designs, and to improve system responsiveness, such mass storage may be implemented via SSDs. However, in other embodiments, mass storage may be implemented primarily using hard disk drives (HDDs), with a lesser amount of SSD storage acting as SSD cache to enable non-volatile storage of background status and other such information during shutdown events , so that fast power-up can occur when restarting system activity. Also shown in FIG. 8, flash memory device 822 may be coupled to processor 810, eg, via a serial peripheral interface (SPI). This flash memory device may provide non-volatile storage of system software including basic input/output software (BIOS) and other firmware for the system.

系统800内可以存在各种输入/输出(IO)设备。图8的实施例中特别示出了显示器824,其可以是在机箱的盖部内配置的高分辨率LCD或LED面板。这个显示器面板还可以提供触摸屏825,例如外部适配于所述显示器面板上以使得经由用户与这一触摸屏的交互,用户输入能够被提供给系统以实现期望的操作,例如关于信息显示、信息访问等。在一个实施例中,显示器824可以经由能够被实施为高性能图形互连的显示器互连耦接到处理器810。触摸屏825可以经由另一互连耦接到处理器810,其在一个实施例中能够为I2C互连。如图8中进一步所示,除了触摸屏825,通过触摸方式的用户输入还能经由触摸板830发生,触摸板830可以配置在所述机箱内,并还可以耦接到与触摸屏825相同的I2C互连。Various input/output (IO) devices may exist within system 800 . Specifically shown in the embodiment of FIG. 8 is a display 824, which may be a high resolution LCD or LED panel disposed within the lid of the chassis. This display panel may also provide a touch screen 825, e.g. externally fitted on said display panel such that via user interaction with this touch screen, user input can be provided to the system to achieve desired operations, e.g. regarding information display, information access Wait. In one embodiment, display 824 may be coupled to processor 810 via a display interconnect, which can be implemented as a high-performance graphics interconnect. The touch screen 825 may be coupled to the processor 810 via another interconnect, which in one embodiment can be an I2C interconnect. As further shown in FIG. 8, in addition to the touch screen 825, user input by touch can also occur via a touch pad 830, which can be disposed within the chassis and can also be coupled to the same I2 as the touch screen 825. C interconnect.

出于感知计算和其它目的,各种传感器可以存在于所述系统内,并能以不同方式被耦接到处理器810。某些惯性和环境传感器可以通过传感器集线器840(例如经由I2C互连)耦接到处理器810。在图8中所示的实施例中,这些传感器可以包括加速仪841、环境光感器(ALS)842、罗盘843和陀螺仪844。在一个实施例中,其它环境传感器可以包括一个或多个热传感器846,其可以经由系统管理总线(SMBus)总线耦接到处理器810。还要理解,根据本发明的实施例,一个或多个所述传感器可以经由LPS链路耦接到处理器810。Various sensors may be present within the system and may be coupled to processor 810 in different ways for perceptual computing and other purposes. Certain inertial and environmental sensors may be coupled to processor 810 through sensor hub 840 (eg, via an I 2 C interconnect). In the embodiment shown in FIG. 8 , these sensors may include an accelerometer 841 , an ambient light sensor (ALS) 842 , a compass 843 and a gyroscope 844 . In one embodiment, other environmental sensors may include one or more thermal sensors 846, which may be coupled to processor 810 via a system management bus (SMBus) bus. It is also to be understood that one or more of the described sensors may be coupled to the processor 810 via an LPS link in accordance with an embodiment of the present invention.

图8中还看见,各种外围设备还可以经由低引脚数(LPC)互连耦接到处理器810。在所示的实施例中,各种组件能够通过嵌入式控制器835被耦接。这些组件能够包括键盘836(例如,经由PS2接口被耦接)、风扇837和热传感器839。在一些实施例中,触摸板830还可以经由PS2接口耦接到EC835。另外,安全处理器(诸如根据可信计算小组(TCG)TPM 规范版本1.2(2003年10月2日)的诸如可信平台模块(TPM)838)也可以经由这一LPC互连耦接到处理器810。Also seen in FIG. 8, various peripheral devices may also be coupled to processor 810 via low pin count (LPC) interconnects. In the illustrated embodiment, various components can be coupled through an embedded controller 835 . These components can include a keyboard 836 (eg, coupled via a PS2 interface), a fan 837 and a thermal sensor 839 . In some embodiments, touchpad 830 may also be coupled to EC 835 via a PS2 interface. Additionally, a secure processor (such as a Trusted Platform Module (TPM) 838 according to the Trusted Computing Group (TCG) TPM Specification Version 1.2 (October 2, 2003)) may also be coupled to the processor via this LPC interconnect. device 810.

系统800能够以包括无线方式的各种方式与外围设备通信。在图8中所示的实施例中,存在各种无线模块,其中每一个能够对应于针对特定无线通信协议配置的无线电。一种针对短程(诸如近场)内的无线通信的方式可以经由近场通信(NFC)单元845,在一个实施例中,近场通信(NFC)单元845可以经由SMBus与处理器810通信。要注意,经由这一NFC单元845,彼此紧邻的设备能够通信。例如,通过将关系紧密的两个设备适配在一起并实现信息(诸如标识信息、支付信息,诸如图像数据的数据等)传送,用户可以使系统800能够与另一(例如)便携设备(诸如用户的智能电话)通信。还可以使用NFC系统执行无线功率传送。System 800 can communicate with peripheral devices in a variety of ways, including wirelessly. In the embodiment shown in Figure 8, there are various wireless modules, each of which can correspond to a radio configured for a particular wireless communication protocol. One means for wireless communication within a short range, such as the near field, may be via a Near Field Communication (NFC) unit 845 , which in one embodiment may communicate with the processor 810 via the SMBus. It is to be noted that via this NFC unit 845, devices in close proximity to each other can communicate. For example, a user can enable system 800 to communicate with another (for example) portable device (such as user's smartphone) communication. Wireless power transfer can also be performed using the NFC system.

如进一步在图8中所见的,附加的无线单元能够包括其它短程无线引擎,包含WLAN单元850和蓝牙单元852。使用WLAN单元850,能够实现根据给定的电气及电子工程协会(IEEE)802.11标准的Wi-Fi™通信,同时经由蓝牙单元852,能够发生经由蓝牙协议的短程通信。这些单元可以经由例如USB链路或通用异步接收传输器(UART)链路与处理器810通信。或者这些单元可以经由互连经由诸如本文所述的聚合PCIe/MIPI互连的低功率互连或诸如串行数据输入/输出(SDIO)标准的另一此类协议耦接到处理器810。当然,可以在一个或多个插入卡上配置的这些外围设备间的实际物理连接能够通过适配到母板的NGFF连接器的方式。As seen further in FIG. 8 , additional wireless units can include other short-range wireless engines, including WLAN unit 850 and Bluetooth unit 852 . Using the WLAN unit 850 , Wi-Fi™ communication according to a given Institute of Electrical and Electronics Engineers (IEEE) 802.11 standard can be realized, while via the Bluetooth unit 852 short-range communication via the Bluetooth protocol can take place. These units may communicate with processor 810 via, for example, a USB link or a Universal Asynchronous Receiver Transmitter (UART) link. Or these units may be coupled to processor 810 via an interconnect via a low power interconnect such as the converged PCIe/MIPI interconnect described herein or another such protocol such as the Serial Data Input/Output (SDIO) standard. Of course, the actual physical connections between these peripherals, which may be configured on one or more add-in cards, can be by means of NGFF connectors that fit into the motherboard.

另外,无线广域通信(例如根据蜂窝或其它无线广域协议)能够经由可以继而耦接到订购者身份模块(SIM)857的WWAN单元856发生。另外,为了实现位置信息的接收及使用,还可以存在GPS模块855。要注意,在图8中所示的实施例中,WWAN单元856和诸如照相机模块854的集成捕获设备可以经由给定USB协议(诸如USB2.0或3.0链路),或者UART或I2C协议通信。这些单元的实际物理连接再次能够经由将NGFF插入卡适配到在母板上配置的NGFF连接器。Additionally, wireless wide area communications (eg, according to cellular or other wireless wide area protocols) can occur via a WWAN unit 856 which may in turn be coupled to a Subscriber Identity Module (SIM) 857 . In addition, in order to realize the reception and use of location information, there may also be a GPS module 855 . It is to be noted that in the embodiment shown in FIG. 8, the WWAN unit 856 and the integrated capture device such as the camera module 854 may communicate via a given USB protocol (such as a USB2.0 or 3.0 link ) , or a UART or I2C protocol communication. The actual physical connection of these units can again be via fitting NGFF plug-in cards to NGFF connectors configured on the motherboard.

为了提供音频输入及输出,音频处理器能够经由数字信号处理器(DSP)860实施,其可以经由高分辨率音频(HAD)链路耦接到处理器810。类似地,DSP860可以与集成编码器/解码器(CODEC)及放大器862通信,集成编码器/解码器(CODEC)及放大器862继而可以耦接到可以在机箱内实施的输出扬声器863。类似地,放大器及CODEC862能够被耦接以从麦克风865接收音频输入,麦克风865在实施例中能够经由双阵列麦克风实施以提供高质量音频输入从而实现对系统内各种操作的语音激活控制。还要注意,音频输出能够从放大器/COEDC862提供到耳机插孔864。To provide audio input and output, an audio processor can be implemented via a digital signal processor (DSP) 860, which may be coupled to processor 810 via a high-resolution audio (HAD) link. Similarly, DSP 860 may communicate with an integrated coder/decoder (CODEC) and amplifier 862, which in turn may be coupled to an output speaker 863, which may be implemented within the chassis. Similarly, the amplifier and CODEC 862 can be coupled to receive audio input from a microphone 865, which in an embodiment can be implemented via a dual array microphone to provide high quality audio input for voice activated control of various operations within the system. Note also that audio output can be provided from amplifier/COEDC 862 to headphone jack 864 .

因此能够在许多不同环境中使用实施例。现在参考图9,示出了能够与实施例一起使用的实例系统900。如所见的,系统900可以是智能电话或其它无线通信器。如图9的框图中所示,系统900可以包括基带处理器910,其可以是能够处理基带处理任务以及应用处理的多核处理器。因此,基带处理器910能够执行关于通信的各种信号处理,以及执行用于所述设备的计算操作。继而,基带处理器910能够耦接到用户接口/显示器920,用户接口/显示器920在一些实施例中能够由触摸屏显示器实现。另外,基带处理器910可以耦接到存储器系统,其在图9的实施例中包括非易失性存储器(即闪存930)和系统存储器(即动态随机存取存储器(DRAM)935)。如进一步所见的,基带处理器910能够进一步耦接到捕获设备940,诸如能够记录视频和/或静止图像的图像捕获设备。Embodiments can thus be used in many different environments. Referring now to FIG. 9 , an example system 900 that can be used with embodiments is shown. As seen, system 900 may be a smartphone or other wireless communicator. As shown in the block diagram of FIG. 9, system 900 may include a baseband processor 910, which may be a multi-core processor capable of handling baseband processing tasks as well as application processing. Accordingly, the baseband processor 910 is capable of performing various signal processing related to communication, as well as performing calculation operations for the device. In turn, the baseband processor 910 can be coupled to a user interface/display 920, which in some embodiments can be implemented by a touch screen display. Additionally, baseband processor 910 may be coupled to a memory system, which in the embodiment of FIG. 9 includes non-volatile memory (ie, flash memory 930 ) and system memory (ie, dynamic random access memory (DRAM) 935 ). As further seen, the baseband processor 910 can be further coupled to a capture device 940, such as an image capture device capable of recording video and/or still images.

为了实现通信的传输与接收,基带处理器910和天线980之间可以耦接各种电路。特别地,可以存在射频(RF)收发器970和无线局域网(WLAN)收发器975。一般来说,RF收发器970可以用于根据诸如根据码分多址(CDMA)、全球移动通信系统(GSM)、长期演进(LTE)或其它协议的诸如3G或4G无线通信协议的给定无线通信协议接收及传输无线数据并进行呼叫。还可以提供诸如接收或传输无线电信号的其它无线通信,例如AM/FM,或全球定位卫星(GPS)信号。另外,经由WLAN收发器975,还能够实现局域无线信号,诸如根据Bluetooth™标准或IEEE802.11标准(诸如IEEE802.11a/b/g/n)。要注意,基带处理器910和收发器970及975中一个或两个之间的链路可以经由组合及映射PCIe™互连和低功率互连(诸如MIPI互连)的功能的低功率聚合互连。虽然图9的实施例中以这一高级别示出,但要理解本发明的范围不限于此。In order to implement communication transmission and reception, various circuits may be coupled between the baseband processor 910 and the antenna 980 . In particular, a Radio Frequency (RF) transceiver 970 and a Wireless Local Area Network (WLAN) transceiver 975 may be present. In general, the RF transceiver 970 can be used in a given wireless communication protocol such as 3G or 4G based on Code Division Multiple Access (CDMA), Global System for Mobile Communications (GSM), Long Term Evolution (LTE), or other protocols. The communication protocol receives and transmits wireless data and makes calls. Other wireless communications such as reception or transmission of radio signals, such as AM/FM, or Global Positioning Satellite (GPS) signals may also be provided. In addition, via the WLAN transceiver 975 local area wireless signals can also be implemented, such as according to the Bluetooth™ standard or the IEEE802.11 standard (such as IEEE802.11a/b/g/n). Note that the link between the baseband processor 910 and one or both of the transceivers 970 and 975 may be via a low-power aggregated interconnect that combines and maps the functions of a PCIe™ interconnect and a low-power interconnect such as a MIPI interconnect. even. While shown at this high level in the embodiment of FIG. 9, it is to be understood that the scope of the present invention is not limited in this regard.

实施例可以用在许多不同类型的系统中。例如,在一个实施例中,通信设备能够被布置为执行本文所述的各种方法及技术。当然,本发明的范围不限于通信设备,并且相反地,其它实施例能够涉及用于处理指令的其它类型装置,或一个或多个机器可读介质,包括响应于在计算设备上被执行而使得所述设备执行本文所述的一种或多种方法及技术的指令。Embodiments may be used in many different types of systems. For example, in one embodiment, a communications device can be arranged to perform the various methods and techniques described herein. Of course, the scope of the present invention is not limited to communication devices, and rather, other embodiments can involve other types of means for processing instructions, or one or more machine-readable media, including instructions that respond to being executed on a computing device such that The device performs instructions for one or more of the methods and techniques described herein.

实施例可以以代码实施,并可以存储在非暂时性存储介质上,非暂时性存储介质具有存储在其上的、能够用于对系统编程以执行所述指令的指令。所述存储介质可以包括,但不限于:任意类型的磁盘,包括软盘、光盘、固态驱动器(SSD)、紧凑盘只读存储器(CD-ROM)、可重写紧凑盘(CD-RW),以及磁光盘;半导体设备,诸如只读存储器(ROM)、随机存取存储器(RAM)(诸如动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM))、可擦除可编程只读存储器(EPROM)、闪存、电可擦除可编程只读存储器(EEPROM);磁或光卡、或适于存储电子指令的任意其它类型介质。Embodiments may be implemented in code and may be stored on a non-transitory storage medium having stored thereon instructions that can be used to program a system to carry out the instructions. The storage media may include, but is not limited to: any type of magnetic disk, including floppy disks, compact disks, solid state drives (SSD), compact disk read only memory (CD-ROM), rewritable compact disk (CD-RW), and Magneto-optical disks; semiconductor devices such as read-only memory (ROM), random-access memory (RAM) (such as dynamic random-access memory (DRAM), static random-access memory (SRAM)), erasable programmable read-only memory (EPROM), flash memory, electrically erasable programmable read-only memory (EEPROM); magnetic or optical cards, or any other type of media suitable for storing electronic instructions.

虽然关于有限数目的实施例描述了本发明,但本领域技术人员将理解由其而来的许多修改和变化。所附的权利要求旨在覆盖落入本发明的真正精神和范围内的所有此类修改和变化。While the invention has been described with respect to a limited number of embodiments, those skilled in the art will appreciate numerous modifications and variations therefrom. The appended claims are intended to cover all such modifications and changes as fall within the true spirit and scope of the invention.

Claims (29)

1.一种用于链路训练及管理的装置,包括:1. A device for link training and management, comprising: 用于外围组件快速互连TM(PCIeTM)通信协议的协议栈,所述协议栈包括事务层和链路层;以及a protocol stack for the Peripheral Component Interconnect Express (PCIe ) communication protocol, the protocol stack including a transaction layer and a link layer; and 物理(PHY)单元,耦接到所述协议栈以经由物理链路提供所述装置与耦接到所述装置的设备间的通信,所述物理单元具有低功率通信协议,并包括根据所述低功率通信协议的物理单元电路和将所述协议栈与所述物理单元电路接口的逻辑层,所述逻辑层包括执行所述物理链路的链路训练的链路训练状态机,并包括将所述PCIeTM通信协议的第一特殊符号映射到所述低功率通信协议的第二特殊符号的映射逻辑。a physical (PHY) unit coupled to the protocol stack to provide communication between the apparatus and a device coupled to the apparatus via a physical link, the physical unit having a low power communication protocol and including a a physical unit circuit of a low power communication protocol and a logical layer interfacing said protocol stack with said physical unit circuit, said logical layer including a link training state machine performing link training of said physical link and including Mapping logic for mapping a first special symbol of the PCIe TM communication protocol to a second special symbol of the low power communication protocol. 2.如权利要求1所述的装置,其中,所述物理链路从所述装置至所述设备具有与从所述设备至所述装置不对称的宽度,且所述物理链路可配置为从所述装置至所述设备以与从所述设备至所述装置不对称的频率操作。2. The apparatus of claim 1 , wherein the physical link has an asymmetric width from the apparatus to the device than from the device to the apparatus, and the physical link is configurable as Operating at an asymmetric frequency from the device to the device as from the device to the device. 3.如权利要求1所述的装置,其中所述链路训练状态机在不与所述设备协商的情况下提前将物理链路从所述装置的复位初始化到初始链路宽度及频率。3. The apparatus of claim 1, wherein the link training state machine initializes a physical link from reset of the apparatus to an initial link width and frequency in advance without negotiation with the device. 4.如权利要求3所述的装置,其中所述链路训练状态机在不与所述设备协商的情况下在所述物理链路的链路宽度中引起改变。4. The apparatus of claim 3, wherein the link training state machine causes a change in a link width of the physical link without negotiation with the device. 5.如权利要求1所述的装置,进一步包括所述装置与所述设备间耦接的、与所述物理链路分离的边带信道,所述边带信道包括具有与所述物理单元分离的第二物理单元的串行链路,并且其中所述第二物理单元把第一存在信号传输给所述设备,并从所述设备接收第二存在信号,所述链路训练状态机响应于在第二物理单元中接收到第二存在信号而配置所述物理链路。5. The apparatus of claim 1, further comprising a sideband channel coupled between the apparatus and the device, separate from the physical link, the sideband channel comprising a and wherein the second physical unit transmits a first presence signal to the device and receives a second presence signal from the device, the link training state machine responds to Receiving a second presence signal in a second physical unit configures the physical link. 6.一种用于链路训练及管理的方法,包括:6. A method for link training and management, comprising: 在经由物理链路耦接到第二集成电路的第一集成电路中,响应于所述第一集成电路的上电,执行具有低功率通信协议的、包括物理单元电路的物理(PHY)单元的链路训练状态机的检测状态,所述物理单元耦接到针对包括事务层和链路层的外围组件快速互连TM(PCIeTM)通信协议的协议栈;In a first integrated circuit coupled to a second integrated circuit via a physical link, executing a physical (PHY) unit comprising a physical unit circuit having a low power communication protocol in response to powering up of the first integrated circuit detection state of a link training state machine coupled to a protocol stack for a Peripheral Component Interconnect Express (PCIe ) communication protocol including a transaction layer and a link layer; 在执行所述检测状态后,在所述第一集成电路中,执行所述链路训练状态机的配置状态,包括经由在所述第一及第二集成电路间耦接的边带链路把配置准备信号发送给所述第二集成电路;以及After execution of the detection state, in the first integrated circuit, the configuration state of the link training state machine is executed, including placing the sending a configuration ready signal to the second integrated circuit; and 在所述第一集成电路中,响应于经由所述边带链路从所述第二集成电路接收到第二配置准备信号,执行链路训练状态机的停机状态,其中在所述停机状态期间,所述物理单元在所述物理链路上驱动差分N信号。In said first integrated circuit, in response to receiving a second configuration ready signal from said second integrated circuit via said sideband link, a halt state of a link training state machine is executed, wherein during said halt state , the physical unit drives a differential N signal on the physical link. 7.如权利要求6所述的方法,进一步包括:在所述停机状态中启动突发序列,以转换到所述链路训练状态机的活跃状态中。7. The method of claim 6, further comprising initiating a burst sequence in the shutdown state to transition into the active state of the link training state machine. 8.如权利要求7所述的方法,进一步包括:在所述活跃状态中,将有效负载从所述第一集成电路传送到所述第二集成电路,并且之后传送突发信号的尾部以转换到所述停机状态。8. The method of claim 7, further comprising: in the active state, transferring a payload from the first integrated circuit to the second integrated circuit, and thereafter transferring a tail of a burst signal to convert to the shutdown state. 9.如权利要求6所述的方法,进一步包括:从所述停机状态转换到第一低功率状态中,并在所述第一低功率状态中在所述物理链路上驱动所述差分N信号。9. The method of claim 6, further comprising: transitioning from the shutdown state into a first low power state, and driving the differential N over the physical link in the first low power state Signal. 10.如权利要求9所述的方法,进一步包括:响应于经由所述边带链路从所述第二集成电路接收到存在信号,从所述第一低功率状态转换到所述停机状态。10. The method of claim 9, further comprising transitioning from the first low power state to the shutdown state in response to receiving a presence signal from the second integrated circuit via the sideband link. 11.如权利要求9所述的方法,进一步包括:当满足一组预定条件时,从所述停机状态转换到第二低功率状态,所述第二低功率状态低于所述第一低功率状态,并且在所述第二低功率状态中在所述物理链路上驱动差分高阻抗信号。11. The method of claim 9, further comprising: transitioning from the shutdown state to a second low power state lower than the first low power state when a set of predetermined conditions is met state, and driving a differential high impedance signal on the physical link in the second low power state. 12.如权利要求7所述的方法,进一步包括:响应于接收器错误,从所述活跃状态转换到恢复状态。12. The method of claim 7, further comprising transitioning from the active state to a resumed state in response to a receiver error. 13.如权利要求6所述的方法,进一步包括:13. The method of claim 6, further comprising: 经由所述边带信道将停机启动信号发送到所述第二集成电路;以及sending a shutdown enable signal to the second integrated circuit via the sideband channel; and 响应于经由所述边带链路从所述第二集成电路接收到停机指示信号而转换到所述停机状态。Transitioning to the shutdown state is responsive to receiving a shutdown indication signal from the second integrated circuit via the sideband link. 14.如权利要求7所述的方法,进一步包括:响应于在物理单元中从所述协议栈接收的通信而从所述活跃状态转换到断电状态。14. The method of claim 7, further comprising transitioning from the active state to a powered-down state in response to a communication received in a physical unit from the protocol stack. 15.一种用于链路训练及管理的系统,包括:15. A system for link training and management, comprising: 多核处理器,包括多个内核和实现所述多核处理器与外围设备间经由物理链路的通信的协议栈,所述协议栈包括:A multi-core processor, including a plurality of cores and a protocol stack for realizing communication between the multi-core processor and peripheral devices via a physical link, the protocol stack includes: 根据外围组件快速互连TM(PCIeTM)通信协议的事务层;Transaction layer according to the Peripheral Component Interconnect Express (PCIe ) communication protocol; 根据所述PCIeTM通信协议的数据链路层;以及A data link layer according to the PCIe TM communication protocol; and 根据低功率通信协议的、包括物理层传输控制器和物理(PHY)单元传输电路的物理层,其中所述物理层传输控制器把所述物理单元传输电路适配到具有PCIeTM通信协议的事务层和数据链路层,所述物理层进一步包括执行所述物理链路的链路训练的链路训练状态机,并包括将所述PCIeTM通信协议的第一特殊符号映射到所述低功率通信协议的第二特殊符号的映射逻辑;以及A physical layer according to a low power communication protocol comprising a physical layer transport controller and a physical (PHY) unit transport circuit, wherein the physical layer transport controller adapts the physical unit transport circuit to a transaction with the PCIe communication protocol layer and a data link layer, the physical layer further includes a link training state machine that performs link training of the physical link, and includes mapping the first special symbol of the PCIe TM communication protocol to the low power mapping logic for the second special symbol of the communication protocol; and 耦接到所述多核处理器的外围设备。A peripheral device coupled to the multi-core processor. 16.如权利要求15所述的系统,其中所述链路训练状态机:响应于所述多核处理器的上电,在执行检测状态后执行所述链路训练状态机的配置状态,包括经由在所述多核处理器与所述外围设备间耦接的边带链路发送配置准备信号给所述外围设备;以及响应于经由所述边带链路从所述外围设备接收到第二配置准备信号而执行所述链路训练状态机的停机状态,其中在所述停机状态期间,所述物理单元传输电路在所述物理链路上驱动差分N信号。16. The system of claim 15 , wherein the link training state machine: in response to powering up of the multi-core processor, executes a configuration state of the link training state machine after executing a detection state, including via a sideband link coupled between the multi-core processor and the peripheral device sends a configuration ready signal to the peripheral device; and in response to receiving a second configuration ready signal from the peripheral device via the sideband link signal to execute a shutdown state of the link training state machine, wherein during the shutdown state the physical unit transmission circuit drives a differential N signal on the physical link. 17.如权利要求16所述的系统,其中所述链路训练状态机在所述停机状态中启动突发序列以转换到所述链路训练状态机的活跃状态中,并在所述活跃状态中将有效负载从所述多核处理器传送到所述外围设备,并且之后传送突发信号的尾部以转换至所述停机状态。17. The system of claim 16 , wherein the link training state machine initiates a burst sequence in the shutdown state to transition into the active state of the link training state machine, and in the active state transferring a payload from the multi-core processor to the peripheral, and then transferring a tail of a burst to transition to the halt state. 18.如权利要求17所述的系统,其中所述链路训练状态机经由所述边带链路将停机启动信号信号发送给所述外围设备,并响应于经由所述边带链路从所述外围设备接收到停机指示信号而转换至所述停机状态。18. The system of claim 17 , wherein the link training state machine sends a shutdown start signal to the peripheral via the sideband link and responds to The peripheral equipment is converted to the shutdown state upon receiving the shutdown indication signal. 19.如权利要求15所述的系统,其中所述外围设备包括多无线电集成电路。19. The system of claim 15, wherein the peripheral device comprises a multiradio integrated circuit. 20.一种用于链路训练及管理的设备,包括:20. A device for link training and management, comprising: 用于在经由物理链路耦接到第二集成电路的第一集成电路中,响应于所述第一集成电路的上电,执行具有低功率通信协议的、包括物理单元电路的物理(PHY)单元的链路训练状态机的检测状态的装置,所述物理单元耦接到针对包括事务层和链路层的外围组件快速互连TM(PCIeTM)通信协议的协议栈;For executing, in a first integrated circuit coupled to a second integrated circuit via a physical link, a physical (PHY) having a low power communication protocol including a physical unit circuit in response to powering up of the first integrated circuit means for detecting state of a link training state machine of a unit coupled to a protocol stack for a Peripheral Component Interconnect Express (PCIe ) communication protocol including a transaction layer and a link layer; 用于在执行所述检测状态后,在所述第一集成电路中,执行所述链路训练状态机的配置状态装置,包括用于经由在所述第一及第二集成电路间耦接的边带链路把配置准备信号发送给所述第二集成电路的装置;以及configuration state means for executing said link training state machine in said first integrated circuit after said detection state is executed, comprising means for via coupling between said first and second integrated circuits means for sending a configuration ready signal to said second integrated circuit via a sideband link; and 用于在所述第一集成电路中,响应于经由所述边带链路从所述第二集成电路接收到第二配置准备信号,执行链路训练状态机的停机状态的装置,其中在所述停机状态期间,所述物理单元在所述物理链路上驱动差分N信号。means for, in said first integrated circuit, in response to receiving a second configuration ready signal from said second integrated circuit via said sideband link, for executing a halt state of a link training state machine, wherein in said During the shutdown state, the physical unit drives a differential N signal on the physical link. 21.如权利要求20所述的设备,进一步包括:用于在所述停机状态中启动突发序列,以转换到所述链路训练状态机的活跃状态中的装置。21. The apparatus of claim 20, further comprising means for initiating a burst sequence in the shutdown state to transition into the active state of the link training state machine. 22.如权利要求21所述的设备,进一步包括:用于在所述活跃状态中,将有效负载从所述第一集成电路传送到所述第二集成电路,并且之后传送突发信号的尾部以转换到所述停机状态的装置。22. The apparatus of claim 21 , further comprising means for, in said active state, transferring a payload from said first integrated circuit to said second integrated circuit, and thereafter transferring a tail of a burst signal to transition the device into the shutdown state. 23.如权利要求20所述的设备,进一步包括:用于从所述停机状态转换到第一低功率状态中,并在所述第一低功率状态中在所述物理链路上驱动所述差分N信号的装置。23. The apparatus of claim 20, further comprising: for transitioning from the shutdown state into a first low power state, and driving the differential N signaling device. 24.如权利要求23所述的设备,进一步包括:用于响应于经由所述边带链路从所述第二集成电路接收到存在信号,从所述第一低功率状态转换到所述停机状态的装置。24. The apparatus of claim 23, further comprising means for transitioning from the first low power state to the shutdown state in response to receiving a presence signal from the second integrated circuit via the sideband link. state of the device. 25.如权利要求23所述的设备,进一步包括:用于当满足一组预定条件时,从所述停机状态转换到第二低功率状态,并且在所述第二低功率状态中在所述物理链路上驱动差分高阻抗信号的装置,所述第二低功率状态低于所述第一低功率状态。25. The apparatus of claim 23, further comprising: for transitioning from the shutdown state to a second low power state when a set of predetermined conditions are met, and in the second low power state in the means for driving a differential high impedance signal on a physical link, said second low power state being lower than said first low power state. 26.如权利要求21所述的设备,进一步包括:用于响应于接收器错误,从所述活跃状态转换到恢复状态的装置。26. The apparatus of claim 21, further comprising means for transitioning from the active state to a resumed state in response to a receiver error. 27.如权利要求20所述的设备,进一步包括:27. The device of claim 20, further comprising: 用于经由所述边带信道将停机启动信号发送到所述第二集成电路的装置;以及means for sending a shutdown activation signal to the second integrated circuit via the sideband channel; and 用于响应于经由所述边带链路从所述第二集成电路接收到停机指示信号而转换到所述停机状态的装置。means for transitioning to the shutdown state in response to receiving a shutdown indication signal from the second integrated circuit via the sideband link. 28.如权利要求21所述的设备,进一步包括:用于响应于在物理单元中从所述协议栈接收的通信而从所述活跃状态转换到断电状态的装置。28. The apparatus of claim 21, further comprising means for transitioning from the active state to the powered-down state in response to a communication received in a physical unit from the protocol stack. 29.一种机器可读介质,具有存储在其上的指令,当所述指令被执行时使得计算设备执行根据权利要求6-14中任一项所述的方法。29. A machine-readable medium having stored thereon instructions which, when executed, cause a computing device to perform the method of any one of claims 6-14.
CN201380021347.8A 2012-05-22 2013-05-16 Apparatus and method for optimized link training and management Active CN104380274B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610857743.XA CN107092335B (en) 2012-05-22 2013-05-16 Optimized link training and management mechanism

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/477310 2012-05-22
US13/477,310 US8437343B1 (en) 2012-05-22 2012-05-22 Optimized link training and management mechanism
PCT/US2013/041322 WO2013176954A2 (en) 2012-05-22 2013-05-16 Optimized link training and management mechanism

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201610857743.XA Division CN107092335B (en) 2012-05-22 2013-05-16 Optimized link training and management mechanism

Publications (2)

Publication Number Publication Date
CN104380274A CN104380274A (en) 2015-02-25
CN104380274B true CN104380274B (en) 2017-10-24

Family

ID=52569929

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201380021347.8A Active CN104380274B (en) 2012-05-22 2013-05-16 Apparatus and method for optimized link training and management
CN201610857743.XA Active CN107092335B (en) 2012-05-22 2013-05-16 Optimized link training and management mechanism

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201610857743.XA Active CN107092335B (en) 2012-05-22 2013-05-16 Optimized link training and management mechanism

Country Status (1)

Country Link
CN (2) CN104380274B (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10331592B2 (en) * 2016-05-28 2019-06-25 Silicon Laboratories Inc. Communication apparatus with direct control and associated methods
US10390114B2 (en) * 2016-07-22 2019-08-20 Intel Corporation Memory sharing for physical accelerator resources in a data center
US11249779B2 (en) * 2017-09-01 2022-02-15 Intel Corporation Accelerator interconnect assignments for virtual environments
US10606785B2 (en) * 2018-05-04 2020-03-31 Intel Corporation Flex bus protocol negotiation and enabling sequence
CN110647486B (en) * 2019-09-29 2021-05-11 江苏芯盛智能科技有限公司 A PCIe link training method, terminal device and communication system
CN112015683B (en) * 2020-08-27 2022-06-07 深圳忆联信息系统有限公司 Dynamic switching method and device of PCIE link, computer equipment and storage medium
CN116803068A (en) * 2021-01-30 2023-09-22 华为技术有限公司 Communication device and data transmission method
CN118093490B (en) * 2024-04-16 2024-07-26 北京开源芯片研究院 Bus protocol conversion method and device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080065796A1 (en) * 1999-08-04 2008-03-13 Super Talent Electronics Inc. High-Level Bridge From PCIE to Extended USB
US20090106476A1 (en) * 2007-10-22 2009-04-23 Peter Joel Jenkins Association of multiple pci express links with a single pci express port
CN101640643A (en) * 2008-07-25 2010-02-03 美国博通公司 Method for energy efficient Ethernet and physical layer equipment for enery efficient ethernet
CN102014048A (en) * 2009-06-30 2011-04-13 英特尔公司 Link Power Savings with State Keeping

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040221315A1 (en) * 2003-05-01 2004-11-04 Genesis Microchip Inc. Video interface arranged to provide pixel data independent of a link character clock
US8218580B2 (en) * 2008-07-15 2012-07-10 Intel Corporation Managing timing of a protocol stack
US8621128B2 (en) * 2009-12-04 2013-12-31 St-Ericsson Sa Methods and systems for reliable link startup

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080065796A1 (en) * 1999-08-04 2008-03-13 Super Talent Electronics Inc. High-Level Bridge From PCIE to Extended USB
US20090106476A1 (en) * 2007-10-22 2009-04-23 Peter Joel Jenkins Association of multiple pci express links with a single pci express port
CN101640643A (en) * 2008-07-25 2010-02-03 美国博通公司 Method for energy efficient Ethernet and physical layer equipment for enery efficient ethernet
CN102014048A (en) * 2009-06-30 2011-04-13 英特尔公司 Link Power Savings with State Keeping

Also Published As

Publication number Publication date
CN107092335B (en) 2020-07-21
CN107092335A (en) 2017-08-25
CN104380274A (en) 2015-02-25

Similar Documents

Publication Publication Date Title
CN104285426B (en) Provides low power physical unit for load/store communication protocol
CN104322033B (en) Use the extended functional structure of the second protocol to control the physical link of the first protocol
US9141577B2 (en) Optimized link training and management mechanism
US8924620B2 (en) Providing a consolidated sideband communication channel between devices
US9262360B2 (en) Architected protocol for changing link operating mode
CN104380274B (en) Apparatus and method for optimized link training and management
US9086966B2 (en) Systems, apparatuses, and methods for handling timeouts

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CI01 Publication of corrected invention patent application

Correction item: Application Date|Priority|International application date

Correct: 2013;05;16|13/477310 2012.05.22 US|2013;05;16

False: 2013;07;16|no|2013;07;16

Number: 08

Volume: 31

CI02 Correction of invention patent application

Correction item: Application Date|Priority|International application date

Correct: 2013.05.16|13/477310 2012.05.22 US|2013.05.16

False: 2013.07.16|None|2013.07.16

Number: 08

Page: The title page

Volume: 31

ERR Gazette correction

Free format text: CORRECT: APPLICATION DATE; PRIORITY DATA; INTERNATIONAL APPLICATION DATE; FROM: 2013;07;16; NONE;2013;07;16 TO: 2013;05;16;13/477310 2012.05.22 US;2013;05;16

RECT Rectification
GR01 Patent grant
GR01 Patent grant