CN107092335A - 优化的链路训练及管理机制 - Google Patents

优化的链路训练及管理机制 Download PDF

Info

Publication number
CN107092335A
CN107092335A CN201610857743.XA CN201610857743A CN107092335A CN 107092335 A CN107092335 A CN 107092335A CN 201610857743 A CN201610857743 A CN 201610857743A CN 107092335 A CN107092335 A CN 107092335A
Authority
CN
China
Prior art keywords
link
layer
physical
logical
physical link
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201610857743.XA
Other languages
English (en)
Other versions
CN107092335B (zh
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
Publication of CN107092335A publication Critical patent/CN107092335A/zh
Application granted granted Critical
Publication of CN107092335B publication Critical patent/CN107092335B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/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

Abstract

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

Description

优化的链路训练及管理机制
本申请是申请日为2013年7月16日,申请号为201380021347.8并且发明名称为“优化的链路训练及管理机制”申请的分案申请。
技术领域
实施例涉及互连技术。
背景
为了提供系统内不同设备之间的通信,使用某种类型的互连机制。取决于系统实施方式,广泛的各种这样的互连是可能的。时常为了使两个设备能够互相通信,它们分享共同的通信协议。
一种用于计算机系统内设备间通信的典型通信协议是根据基于PCI Express™规范基础规范版本3.0(2010年11月18日出版)(下文称为PCIeTM规范)的链路的外围组件快速互连(PCI ExpressTM(PCIeTM))通信协议。这个通信协议是加载/存储输入/输出(IO)互连系统的一个实例。通常根据这一协议以非常高的速度串行执行所述设备间的通信。当在台式计算机的背景下开发PCIeTM通信协议时,为了在不考虑功率效率的情况下实现最大性能的目的,开发了关于这一协议的各种参数。结果,其许多特征无法缩减至能够被合并到移动系统中的较低功率解决方案。
除了这些关于常规加载/存储通信协议的功率问题外,现有的链路管理方案通常非常复杂并涉及大量状态,导致执行状态间转换的冗长过程。这部分地归因于现有的链路管理机制,其被开发以领会诸如连接器、不同系统合并等多种不同的形式因素要求。一个这样的实例是根据PCIeTM通信协议的链路管理。
附图简述
图1为根据本发明实施例的用于通信协议的协议栈的高级别框图。
图2为根据本发明实施例的片上系统(SoC)的框图。
图3为根据本发明另一实施例的物理单元的框图。
图4为示出根据本发明实施例的协议栈的进一步细节的框图。
图5为用于链路训练状态机的状态图,其能够是根据本发明实施例的链路管理器的部分。
图6为根据本发明实施例的用于边带机制的各个状态的流程图。
图7为根据本发明实施例的方法的流程图。
图8为根据本发明实施例的计算机系统中存在的组件的框图。
图9为实施例能够与其一起使用的实例系统的框图。
具体实施方式
实施例可以提供输入/输出(IO)互连技术,其具有低功率、加载/存储架构,且尤其适用于在包括诸如智能电话的蜂窝电话、平板计算机、电子阅读器、超级本™等的移动设备中使用。
在各实施例中,用于给定通信协议的协议栈能够与不同的通信协议的物理单元或与用于给定通信协议的物理单元不同的至少一个物理(PHY)单元一起使用。物理单元包括逻辑层和物理或电气层两者,物理或电气层在互连(诸如链接两个独立半导体管芯的链路)上提供信息信号的实际、物理的通信,两个独立半导体管芯可以是在单个集成电路(IC)封装或例如经由电路板路由、迹线等耦接的分离封装内的两个半导体管芯。此外,所述物理单元能够执行数据包的成帧(framing)/解帧(deframing),执行链路训练及初始化,并处理用于从物理互连接收或递送至物理互连上的数据包。
虽然可能有不同的实施方式,但在一个实施例中,所述协议栈可能具有常规的基于个人计算机(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物理单元的物理单元。
这样,通过将传统的PCIeTM协议栈与不同类型的物理单元聚合,大量再使用的针对PCIeTM开发的传统组件能够被用来合并到移动或其它便携或低功率平台中。
实施例还可以利用如下认识:即现有加载/存储IO技术,尤其是PCIeTM以如下目的被设计:在功率效率不是主要问题的情况下实现最大性能,并且因此不会缩减至低功率应用。通过将常规加载/存储协议栈的部分与低功率设计的物理单元组合,实施例可以保留PCIeTM的性能优势,同时在设备及平台级别在功率方面达到最佳。
照此,实施例可以是与具有大的传统基础的普遍存在的PCIeTM架构兼容的软件。此外,实施例还可以实现直接PHY再使用移动设计 PHY,例如M-PHY。这样,能够利用传送的高效功率/比特以及友好地成为电磁接口/射频接口(EMI/RFI)的方法实现低活跃和空闲功率,因为PHY可以以不干扰相关联无线电(因为用于PHY的时钟速率的谐波不干涉典型的无线电解决方案以其操作的常规射频(例如,1.8、1.9、2.4千兆赫(GHz))或其他这样的射频)的时钟速率操作。
实施例可以进一步提供实现优化的链路训练和管理机制(LTSSM)的架构改进;优化的流控制和重试缓冲和管理机制;用于改变链路操作模式的架构协议;快速硬件支持设备状态保存及恢复;以及用于具有可选的带内支持的链路管理的统一边带机制。
在各实施例中,PCIeTM事务及数据链路层能够被实施为具有有限修改的协议栈的部分以计及不同的链路速度和非对称链路。此外,可以提供修正的链路训练及管理,以包括对多通道通信、非对称链路配置、边带统一及动态带宽缩放性的支持。实施例可以进一步提供对现有的基于PCIeTM及基于非PCIeTM的逻辑和诸如M-PHY逻辑和电路之类的电路间的桥接的支持。
这种分层方法使得现有的软件栈(例如,操作系统(OS)、 虚拟机管理器及驱动器)能够在不同的物理层上无缝运行。对所述数据链路及事务层的影响被最小化并且可以包括更新相关的定时器以更新应答频率、重放定时器等。
因此,各实施例能够限制PCIeTM系统中提供的一些灵活性,因为这种灵活性某些情况下在PCIeTM系统及其它系统两者内能够创建某些复杂性。确实如此,因为这两种协议都提供了实现即插即播能力的极大灵活性。相反,各实施例能够定制最小化设计灵活性的量的解决方案,因为当被合并到给定系统(例如与另一集成电路(IC)互连的片上系统(SoC))中时,出现已知和固定的配置。因为在实现存在的精确配置方面是已知的,当SoC及连接的设备两者均附贴在平台内时,例如焊接到该系统的电路板,这些设备无需即插即播能力,并且因此可能不需要PCIeTM或其它基于PC的通信协议固有的、使得不同设备能够无缝地合并到具有即插即播能力的系统中的较大灵活性。
作为一个实例,所述SoC能够充当第一IC中实施的根联合体(root complex),并耦接到可以为无线电解决方案的第二IC,其能够包括多个无线通信设备中的一个或多个设备。这样的设备的范围能够从诸如根据蓝牙TM规范的低功率短程通信系统、诸如根据给定的电气及电子工程协会(IEEE)802.11标准的所谓的WiFiTM系统的局域无线通信,到诸如给定的蜂窝通信协议(诸如3G或4G通信协议)的高功率无线系统。
现在参考图1,示出了根据本发明实施例的用于通信协议的协议栈的高级别框图。如图1中所示,栈100可以是半导体组件(诸如IC)内软件、固件及硬件的组合,用于提供对所述半导体设备和与其耦接的另一设备间数据通信的处理。在图1的实施例中,示出了开始于高级别软件110的高级别视图,高级别软件110可以是在给定平台上执行的各种类型的软件。这种高级别软件可以包括操作系统(OS)软件、固件、应用软件等。要经由互连140传送的数据能够通过协议栈的各层传递,通常在图1内示出,互连140可以是将所述半导体设备与另一组件耦接的给定物理互连。如所见的,这一协议栈各部分可以是常规PCIeTM栈120的部分,并可以包括事务层125和数据链路层128。通常,事务层125用于生成能够是请求或由时间分离的基于响应的数据包的事务层数据包(TLP),从而允许该链路携带其它业务,同时目标设备收集用于所述响应的数据。所述事务层进一步处理基于信用的流控制。因此,事务层125提供设备的处理电路与互连架构间的接口,诸如数据链路层和物理层。在这方面,所述事务层的主要职责是数据包(即,事务层数据包(TLP))的组装和分解以及处理基于信用的流控制。
继而,数据链路层128可以排序事务层生成的TLP,并确保两个端点间TLP的可靠递送(包括处理错误检查)和应答处理。因此,链路层128充当事务层与物理层之间的中间阶段,并提供用于通过链路在两个组件间交换TLP的可靠机制。所述链路层的一侧接收由所述事务层组装的TLP,应用标识符,计算并应用错误检测代码(例如循环恢复码(CRC)),并将修改的TLP提交给物理层以用于跨物理链路传输至外部设备。
在数据链路层128中处理后,能够将数据包传送给PHY单元130。通常,PHY单元130可以包括低功率PHY134,其可以包括逻辑层和物理(包括电气)子层两者。在一个实施例中,由PHY单元130表示的物理层以物理方式将数据包传输到外部设备。所述物理层包括为传输准备外出信息的传输区段和在将接收的信息传递到链路层之前标识并准备它的接收器区段。将被串行化并传输到外部设备的符号供应给所述传输器。将来自外部设备的串行化符号供应给所述接收器,并且接收器将所接收的信号变换为比特流。将所述比特流解串行并供应给逻辑子块。
在一个实施例中,低功率PHY134(其能够是特别开发或由诸如M-PHY之类的另一PHY适配的给定低功率PHY)可以提供对打包数据的处理以用于沿互连140传送。如图1中进一步所见的的,链路训练及管理层132(本文也称作链路管理器)也可以存在于PHY单元130内。在各实施例中,链路管理器132可以包括可以根据诸如PCIeTM协议的另一通信协议实施的特定逻辑和处理例如上述PCIeTM协议栈的常规和具有不同协议的物理PHY134间接口的专有逻辑。
在图1的实施例中,互连140能够实施为差分线对,差分线对可以是两对单向线。在某些实施方式中,多组差分对可以用来增加带宽。要注意,根据PCIeTM通信协议,要求每个方向上差分对的数目相同。然而,根据各实施例,能够在每个方向上提供不同数目的对,这允许操作更高效、功率更低。该整个聚合的栈及链路140可以称作移动快速PCIeTM互连或链路。虽然在图1的实施例中以这一高级别示出,但要理解本发明的范围不限于此。也就是说,要理解,图1中所示的视图只是关于通过物理层的来自事务层的协议栈以及高级别软件,并且未示出SoC的各种其它电路或包括这个栈的其它半导体设备。
现在参考图2,示出根据本发明实施例的SoC的框图。如图2所示,SoC200能够是用于实施在各种类型的SoC中的任何类型的平台,范围从诸如智能电话、个人数字助手(PDA)、平板计算机、笔记本、超级本TM等之类的相对较小的低功率便携设备到能够在高级别系统中实施的更高级的SoC。
如图2中所见的,SoC200可以包括一个或多个内核2100-210n。因此在各实施例中,可能有多核SoC,所述内核全都可以是具有给定架构的同质内核,例如有序或无序处理器。或者能够存在异质内核,例如某些相对较小的低功率内核,例如具有有序架构的内核;具有存在的附加内核,该附加内核可以具有更大和更复杂的架构,例如无序架构。协议栈实现这些内核中的一个或多个与系统的其它组件之间数据通信。如看见的,这个栈能够包括软件215,其可以是较高级别软件(诸如OS、固件)和在一个或多个内核上执行的应用级软件。另外,所述协议栈包括事务层220和数据链路层230。在各实施例中,这些事务及数据链路层可以具有诸如PCIeTM协议的给定通信协议。当然,其它实施例中可以存在诸如根据通用串行总线(USB)协议栈的不同协议栈的层。而且,在一些实施方式中,能够用现有的替换协议栈多路复用本文所述的低功率PHY电路。
仍然参考图2,继而这一协议栈能够耦接到物理单元240,物理单元240可以包括能够经由多条互连提供通信的多个物理单元。在一个实施例中,第一物理单元250可以是低功率PHY单元,其在一个实施例中可以对应于根据MIPI规范的M-PHY,用于经由主互连280提供通信。另外,可以存在边带(SB)PHY单元244。在所示的实施例中,这个边带PHY单元可以经由边带互连270提供通信,边带互连270可以是用于例如以慢于耦接到第一PHY250的主互连280的数据速率提供某些边带信息的统一边带。在某些实施例中,所述协议栈的各层能够具有耦接到这个SB PHY244以实现沿这一边带互连的通信的分离边带。
此外,PHY单元240可以进一步包括能够用于控制SB PHY244的SB链路管理器242。另外,可以存在链路训练及状态管理器245,并且其能够用于将具有第一通信协议的协议栈适配到具有第二通信协议的第一PHY250,以及提供对于第一PHY250和互连280的整体控制。
如进一步所见的,第一PHY250中可以存在各种组件。更具体地,可以存在传输器及接收器电路(即TX253和RX254)。通常,这种电路可以用来执行串行化操作、解串行操作以及经由主互连280传输及接收数据。可以存在保存状态管理器251,并且当其处于低功率状态时可以用于保存关于第一PHY250的配置及其它状态信息。而且,能够存在编码器252,用于例如根据8b/10b协议执行线编码。
如图2进一步所见的,可以存在机械接口258。这个机械接口258可以是给定互连,用于提供来自根联合体200的通信,并且更具体地经由主互连280到达/来自第一PHY250的通信。在各实施例中,这种机械连接能够利用诸如球栅阵列(BGA)或其它表面贴装之类的半导体设备的引脚,或通过孔连接电镀。
除了这些主要通信机制外,附加的通信接口可以利用低功率串行(LPS)PHY单元255,低功率串行(LPS)PHY单元255经由包括软件层216、事务层221、以及链路层231的分离栈在内核210与一个或多个片外设备260a-c间耦接,所述片外设备能够是诸如传感器、加速计、温度传感器、全球定位系统(GPS)电路、罗盘电路、触摸屏电路、键盘电路、鼠标电路等之类的各种低数据速率外围设备。
要注意,在各实施例中,边带互连270或主互连280两者都能够在SoC200和另一半导体组件(例如诸如多带无线电解决方案之类的另一IC)间耦接。
再次,虽然图2的图示是相对较高级别,但可以有变化。例如,可以提供多个低功率PHY以例如经由多条信道实现更高速率的数据通信,其中各信道与独立的PHY相关联。现在参考图3,示出根据本发明另一实施例的物理单元的框图。如图3中所示,物理单元300包括链路训练及状态管理器310。这个状态管理器可以如上所述,并能够是逻辑集合,用于使具有第一通信协议的协议栈能够与具有第二(例如不同)通信协议的物理单元接口。
如图3中进一步所见的,链路训练及状态管理器310可以与多个M-PHY3200-320n通信。通过提供多于一个的此类PHY,能够进行更高速率的数据通信。要注意,虽然图3所示的每个M-PHY可以包括一些数目的逻辑以用于使其个体独立通信能够发生,但对这些不同M-PHY的通信的整体控制可以经由链路训练及状态管理器310。而且,要理解,虽然图3中示出多个M-PHY,但在其它实施例中,能够存在另一类型的多个PHY单元,并能够提供另外的多个异质PHY单元。要注意,每个M-PHY单元能够被用作唯一逻辑链路的部分,或用在组中,其中组与单个逻辑链路相关联。每个设备通常可以消耗单个逻辑链路,但是在一些实施例中单个物理设备可以消耗多个逻辑链路,例如用于为多功能组件的不同功能提供专有链路资源。
现在参考图4,示出的是示出根据本发明实施例的协议栈的进一步细节的框图。如图4中所示,栈400包括各种层,包括:事务层410、数据链路层420及物理层430。如上所述,能够使用PCIeTM协议栈的常规事务及数据链路部分或此类栈的修改版本配置这些不同的层,以容纳具有该第一通信协议的这些层与具有另一通信协议的物理层之间的交互,物理层在图4的实施例中可以是根据MIPI规范的M-PHY。
如图4中所见的,关于从协议栈400传输信息的传输方向,在事务层的通常组合控制及数据路径以形成TLP的传输数据包组装器412中接收例如从SoC的其它电路(诸如内核或其它处理逻辑)到协议栈的到来信息。在被组装到传输数据包之后(传输数据包在各实施例中能够是具有例如1至4096字节(或具有较小的最大允许大小,例如,128或256)的数据包),把组装的数据包提供给流控制器414,流控制器414基于排队传输的接下来的(一个或多个)TLP所要求的数目确定是否有足够的流控制信用可用,并且控制将数据包注入到数据链路层420中。更具体所见的,给错误检测器和序列器422提供这些注入的数据包,在一个实施例中错误检测器和序列器422可以生成TLP序列号和LCRC。进一步所见的,数据链路层420进一步包括传输消息机构426,传输消息机构426继而生成用于链路管理功能的DLLP,并耦接到数据链路传输控制器425,其是用于流控制及数据链路完整性(ACK/NAK)机制的控制器功能;要注意,这可以被细分,以使得使用不同的逻辑块实施这些功能。
如进一步所见的,将处理过的数据包提供给重试缓冲424,重试缓冲424保存有每个TLP的拷贝直至被所述链路另一侧上组件应答,要注意,实践中这可以利用缓冲在栈的更上部(在组装器412内或上方)来实施,并且它们能够被存储在对应的条目中,直至被选择用于经由数据/消息选择器428传输到物理层430。通常,上述事务及数据链路层可以根据常规的PCIeTM协议栈电路操作,其中某些修改将在下面进一步描述。
相反关于物理层430,对这层的某些逻辑组件的多得多的修改(例如根据PCIeTM协议栈修改的那样)可以发生以及用于提供对具有另一通信协议的物理单元的实际物理部分的接口。如所见的,可以将到来的数据包应用于帧发生器432,其增加物理层帧符号并为所述数据包生成帧,并且将它们提供给带宽/位置映射器434,其移位数据路径中的字节以生成用于外部传输的要求的校准从而必要时调整数据路径宽度,并且继而耦接到可以用于执行链路训练及跳跃排序的训练器及跳跃序列器436。如所见的,帧发生器432、训练器/序列器436和数据/序列选择器438全都可以耦接到物理层传输控制器435,物理层传输控制器435为LTSSM和相关逻辑的收发器部分。框436是用于生成物理层传输(诸如训练集(TS)和跳跃排序集)的逻辑。这样,成帧的数据包可以被选择并提供给物理电路,以执行编码、串行化和把对应于处理的数据包的串行化信号驱动至物理互连上。在一个实施例中,可以在帧发生器432中执行不同通信协议间符号差的映射。
如所见的,能够给这一物理互连提供多条个体信道或通道。在所示的实施例中,每个物理信道或通道能够包括其自身的独立PHY单元传输电路4450-445j,在一个实施例中其每一个可以是根据MIPI规范的M-PHY单元的部分。如本文所述,不同于传输器与接收器的数目匹配的PCIeTM,可以存在不同数目的传输器和接收器。因此如所见的,每个传输电路445能够包括用于根据8b/10b编码对符号进行编码的编码器、把已编码的符号串行化的串行器和将信号驱动到物理互连上的驱动器。如进一步所见的,每个通道或信道可以与逻辑单元4400-440j相关联,其可以是根据用于M-PHY的MIPI规范的逻辑电路,用于因此经由对应的通道管理物理通信。
要注意,这些多个通道能够被配置为以不同的速率操作,且实施例可以包括不同数目的此类通道。另外,可以在传输及接收方向上具有不同数目的通道及通道速度。因此,尽管给定的逻辑单元440控制PHY445的对应通道的操作,但要理解,物理层传输控制器435可以用于控制经由物理互连的整体信息传输。要注意,在某些情况下,一些非常基础的功能由与每个通道相关联的不同逻辑执行;对于能够将通道分配给多于单个链路的情形,可以提供多个LTSSM实例;对于训练的链路,在控制收发器和接收器侧两者的每个组件中存在单个LTSSM。这种整体控制能够包括功率控制、链路速度控制、链路宽度控制、初始化等。
仍然参考图4,经由物理互连接收的到来信息可以类似地通过物理层430、数据链路层420和事务层410经由这些层的接收机制传递。在图4中所示的实施例中,每个PHY单元可以进一步包括接收电路,即接收电路4550-455k,其在所示的实施例中接收电路4550-455k能够针对物理链路的每个通道存在。要注意,在这个实施例中,接收器电路455和传输器电路445的数目不同。如所见的,这一物理电路能够包括用于接收到来信息的输入缓冲、对该信息进行解串行的解串行器以及可以用于解码以8b/10b编码传送的符号的解码器。如进一步所见的,每个通道或信道可以与逻辑单元4500-450k相关联,逻辑单元4500-450k可以是根据给定规范(例如用于M-PHY的MIPI规范)的逻辑电路,用于因此管理经由对应通道的物理通信。
可以继而将所解码的符号提供给物理层430的逻辑部分,其如所见可以包括弹性缓冲460,其中所述弹性缓冲容纳所述链路上这个组件与另一组件之间的时钟差;要注意,在各个实施方式中它的位置可以移位成例如在8b/10b解码器之下,或与通道抗扭斜缓冲组合,并存储到来的已解码符号。继而,该信息可以被提供给宽度/位置映射器462,由那里提供给跨多条通道执行抗扭斜的通道抗扭斜缓冲464,并且对于多通道情形,缓冲464能够处理通道间信号扭斜的差异以重新对准字节。继而,经由抗扭斜的信息可以被提供给帧处理器466,其可以消除到来信息中存在的帧。如所见的,物理层接收控制器465可以耦接到并控制弹性缓冲460、映射器462、抗扭斜缓冲464和帧处理器466。
仍然参考图4,可以将恢复的数据包提供给接收消息机构478及错误检测器、序列检查器和链路级重试(LLR)请求器475。这一电路可以对到来的数据包执行错误校正检查,例如通过执行CRC校验和操作、执行排序检查并请求对错误接收的数据包进行链路级重试。接收消息机构478和错误检测器/请求器475两者都可以处于数据链路接收控制器480的控制下。
仍然参考图4,因此在单元475中处理的数据包可以提供给事务层410,并且更具体地提供给流控制器485,其对这些数据包执行流控制以将它们提供给数据包解释器495。数据包解释器495执行对所述数据包的解释,并将它们转发给选定的目的地,例如给定的内核或该接收器的其它逻辑电路。虽然图4的实施例中以这一高级别示出,但要理解,本发明的范围不限于此。
要注意,PHY440可以使用与由用于传输的PCIeTM所支持的相同的8b/10b编码。所述8b/10b编码方案提供不同于用来表示字符的数据符号的特殊符号。这些特殊符号可以用于PCIeTM规范的物理层章节中所描述的各种链路管理机制。在MIPI M-PHY规范中描述了M-PHY对附加特殊符号的使用。实施例可以提供PCIeTM与MIPI M-PHY符号之间的映射。
现在参考表1,示出了根据本发明一个实施例的PCIeTM符号至M-PHY符号的实例性映射。因此,这个表示出根据本发明一个实施例的用于聚合的协议栈的特殊符号的映射。
所述8b/10b解码规则与针对PCIeTM规范定义的相同。8b/10b规则的唯一例外是当检测到TAIL OF BURST时,这是违反8b/10b规则的特定序列。根据各实施例,物理层430能够向数据链路层420提供在TAIL OF BURST期间遭遇的任何错误的通知。
在一个实施例中,符号的成帧及应用于通道可以如PCIeTM规范中所定义的,同时数据加扰能够与PCIeTM规范中所定义的相同。然而,要注意,不扰乱根据MIPI规范的通信的PREPARE阶段中传输的数据符号。
关于链路初始化和训练,链路管理器可以提供如上讨论的能够包括一条或多条通道的信道的链路的配置及初始化、对正常数据传送的支持、对从链路错误恢复时状态转换的支持和由低功率状态的端口重启。
为了实现此类操作,下列物理及链路相关的特征可以提前是已知的(例如初始化之前):PHY参数(例如,包括初始链路速度和支持的速度;以及初始链路宽度和支持的链路宽度)。
在一个实施例中,训练可以包括各种操作。此类操作可以包括:以配置的链路速度和宽度初始化该链路、每通道比特锁、每通道符号锁、通道极性以及用于多通道链路的通道至通道抗扭斜。这样,训练能够发现通道极性,并据此执行调整。然而,要注意,根据本发明实施例的链路训练可以不包括链路数据速率及宽度协商、链路速度及宽度退化。相反如上所述,一旦初始化链路,两实体都提前知道初始链路宽度及速度,并且因此能够避免与协商相关联的时间及计算代价。
PCIeTM有序集能够用于下列修改:TS1及TS2有序集用于方便IP再使用,但忽略所述训练有序集的许多字段。而且,不使用快速训练序列。可以保留电气空闲有序集(EIOS)以方便IP再使用,如跳跃OS那样,但跳跃OS的频率可以出于与根据PCIeTM规范的不同速度。还要注意,数据流有序集和符号可以与根据PCIeTM规范的相同。
传送下列事件以方便链路训练及管理:(1)存在,其能够用来指示在链路的远程端上存在活跃的PHY;以及(2)配置准备,其被触发以指示完成PHY参数配置以及所述PHY以配置的配置文件准备操作。在一个实施例中,系类信息能够根据本发明实施例经由统一的边带信号传送。
出于控制电气空闲情况的目的,PHY具有用于指示传输器正进入到电气空闲状态中的TAIL OF BURST序列。在一个实施例中,所述边带信道可以用于信号发送退出电气空闲。要注意,这一指示可以加上PHY抑制打破机制。可以将符号的OPENS序列作为EIOS传输以指示进入电气空闲状态。
在一些实施例中,未定义快速训练序列(FTS)。相反,PHY可以使用特定的物理层序列以用于从停机/睡眠状态退出至能够用来寻址比特锁、符号锁及通道至通道抗扭斜的突发状态。能够将少量FTS定义为针对鲁棒性的符号序列。数据流有序集的开始可以根据PCIeTM规范,如链路错误恢复那样。
关于链路数据速率,在各实施例中,所述链路初始化的初始数据速率可以是预定的数据速率。可以通过经历恢复状态发生从这一初始链路速度的数据速率改变。实施例可以支持非对称链路数据速率,其中允许相反方向上数据速率不同。
在一个实施例中,所支持的链路宽度可以根据PCIeTM规范中的那些。另外,如上所述,因为所述链路宽度是预定的,实施例可以不支持用于协商链路宽度的协议,并且因此可以简化链路训练。当然,实施例可以为相反方向上的非对称链路宽度提供支持。同时,针对链路的每个方向配置的初始链路宽度和初始数据速率可以提前在训练开始前是已知的。
关于所述PHY单元的物理端口,不要求xN端口形成xN(其中N能够是32、16、12、8、4、2和1)链路以及x1链路的能力,并且xN端口形成N与1间任意链路宽度的能力是可选的。这一行为的实例包括x16端口,其能够仅配置成唯一链路,但所述链路的宽度能被配置为x12、x8、x4、x2以及x16和x1的要求宽度。这样,寻求使用根据本发明实施例的协议栈实施设备的设计者能够以允许两个不同组件满足上述要求的方式连接这些组件间的端口。如果组件间的端口以不符合由组件的端口描述/数据表所定义的预期用途的方式连接,则行为未定义。
另外,不禁用将一个端口分为两个或更多链路的能力。如果这样的支持适于给定设计,则所述端口能够被配置为在训练期间支持特定宽度。这一行为的实例将是可以能够配置两条x8链路、4条x4链路或16条x1链路的x16端口。
当使用8b/10b编码时,如PCIeTM规范中的无歧义通道至通道抗扭斜机制是在训练序列或SKP有序集期间接收的有序集的COM符号,因为在配置的链路的所有通道上同时传输有序集。在HS-BURST的同步序列期间传输的MK0符号可以用于通道-通道抗扭斜。
如上参考图4 所简述的,链路训练和状态管理器能够被配置为执行各种操作,包括将PCIeTM协议栈的上层适配至不同协议的下层PHY单元。另外,这一链路管理器能够配置并管理单个或多个通道,并可以包括对如下各项的支持:对称链路带宽、具有PCIeTM事务及数据链路层的状态机的兼容性、链路训练、可选对称链路停机状态和对用于鲁棒通信的边带信号的控制。因此,实施例提供了利用有限的修改实施PCIeTM事务及数据链路层以计及不同的链路速度和非对称链路。另外,使用根据本发明实施例的链路管理器,能够实现对多通道的支持、非对称链路配置、边带统一和动态带宽缩放,同时进一步实现不同通信协议层之间的桥接。
现在参考图5,示出了用于链路训练状态机的状态图500,其能够是根据本发明实施例的链路管理器的部分。如图5中所示,链路训练能够开始于检测状态510。这一状态在上电复位时发生,并且适用于上游及下游端口。复位完成后,所有配置的通道可以转换至给定状态,即HIBERN8状态,所述链路的每一端在该状态上能够使用边带信道例如经由PRESENCE信号发信号。要注意,在这个检测状态中,可以在所有通道上驱动高阻抗信号,即DIF-Z信号。
因此,当信号发送并接收PRESENCE事件时,控制由检测状态510传递至配置状态520,并在所有配置的通道上驱动这一高阻抗。在配置状态520中,能够配置PHY参数,且一旦在所述链路每个端的所有配置通道上完成,则能够例如使用边带互连来指示配置准备信号(CFG-RDY),同时在所有通道上维持高阻抗。
因此一旦经由边带互连发送并接收这一配置准备指示,控制就传递至停机状态530。即在这个L0.STALL状态中,PHY转换至STALL状态,并继续在所有配置通道上驱动高阻抗。如所见的,取决于数据是否可用于传输或接收,控制能够传递至活跃状态L1(状态530)、低功率状态(L1状态540)、深低功率状态(L1.OFF状态545)或返回配置状态520。
因此,在STALL状态中,能够在所有配置的通道上传送负驱动信号DIF-N。然后,当由启动器引导时,可以开始BURST序列。因此,在传输MARKER0(MK0)符号后,控制传递至活跃状态530。
在一个实施例中,接收器可以检测在所有配置的通道上从STALL状态的退出,并根据例如MIPI规范执行比特锁和符号锁。在具有多通道链路的实施例中,这一MK0符号可以用于建立通道至通道抗扭斜。
相反,当被引导至低功率状态(即L1状态540)时,所有配置的通道可以转换至SLEEP状态。继而当被引导至更深低功率状态(即L1.OFF状态545)时,所有配置的通道可以转换至HIBERN8状态。最后,当被引导回至配置状态时,类似地,所有配置的通道转换至HIBERN8状态。
仍然参考图5,对于活跃数据传送,控制因此传递至活跃状态550。特别地,这是链路及事务层开始使用数据链路层数据包(DLLP)和TLP交换信息的状态。这样,能够发生有效负载传送,并在此类传送结束时,能够传送TAIL OF BURST符号。
如所见的,控制能够由这一活跃状态传递回至STALL状态530、至恢复状态560(例如响应于接收器错误,或当以另外方式被引导时)、或至更深的低功率(例如,L2)状态570。
为了返回到所述停机状态,传输器可以在所有配置的通道上发送EIOS序列,后边是TAIL of BURST指示。
如果错误发生或以另外方式引导,控制还能够传递至恢复状态560。此处,转换至恢复导致所有配置的通道在两个方向上进入STALL状态。为了实现这个,能够在边带互连上发送GO TO STALL信号,且这个信号的传输器能够等待响应。当这个停机信号已被发送并接收时,如所述边带互连上接收的GO TO STALL指示所指示的,控制传递回到STALL状态530。要注意这个恢复状态因此使用边带建立所述协议以协调同时进入到STALL状态中。
关于低功率状态L1和L1.OFF,操作根据状态540和545。特别地,控制从STALL状态传递至L1低功率状态540,以使得能够将PHY置于SLEEP状态中。在这个状态中,能够在所有配置的通道上驱动负驱动信号,即DIF-N信号。当被引导以退出所述状态时,控制传递回至STALL状态,例如在边带互连上信号发送PRESENCE信号。
还如所见的,当满足所有L1.OFF条件时,能够进入更深低状态L1.OFF。在一个实施例中,这些条件可以包括完全功率门控或关掉到PHY单元的功率。在这一更深低功率状态中,可以将PHY置于HIBERN8状态中,并且在所有配置的通道上驱动高阻抗信号。为了退出这一状态,经由在所有配置的通道上驱动DIF-N来控制传递回至STALL状态。
进一步如图5中所见的,可以存在附加状态,即再进一步更深的低功率状态(L2)570,当准备关掉功率时,能够从活跃状态进入该再进一步更深的低功率状态(L2)570。在一个实施例中,这个状态可以与PCIeTM规范的那个相同。
现在参考表2,示出了根据PCIeTM规范的LTSSM状态与根据本发明实施例的对应M-PHY状态之间的映射。
表2
LTSSM状态 M-PHY状态 详细信息
检测,轮询 SAVE 通过SAVE子状态的状态转换
配置 BURST BURST(PREP、SYNC)子状态
恢复 BURST/SLEEP/STALL 可以处于BURST状态,但将通过SLEEP/STALL转换至BURST
L0 BURST(有效负载) BURST模式和交换事务
L0s STALL STALL状态
L1 SLEEP SLEEP状态
L1.OFF HIBERN8 HIBERN8
L2 UNPOWERED UNPOWERED状态
禁用 DISABLED DISABLED状态
回送 无动作 从配置进入回送时,链路速度可以改变
热复位 INLINE RESET INLINE RESET状态
如上参考图2所述的,实施例提供一种能够用于链路管理以及可选带内支持的统一边带机制。以这种方式,使用边带电路和互连,链路管理及控制能够独立于用于主互连的物理层的更高速(以及更大功耗)电路而发生。进一步以这种方式,当与主互连相关联的PHY单元的部分被断电时,能够使用这一边带信道,实现功耗减少。而且,在训练主互连之前能够使用这一统一边带机制,并且当主互连上出现故障时也可以使用。
再进一步地,经由这一统一边带机制,能够存在每个方向上的单个互连,例如差分线对,从而减少引脚数并实现增加新能力。实施例还可以实现更快、更鲁棒的时钟/功率门控,并能使用这一链路消除在例如PCIeTM边带机制之类的常规协议中的歧义。
但本发明的范围不限于此,在不同实施例中,边带互连(例如,图2的边带互连270)能够被实施为单线双向边带信号、双线双向单向信号集、低速带内信号发送机制(诸如使用处于低功率脉冲宽度调制(PWM)模式中的M-PHY可用的)、或实施为带内高速信号发送机制,诸如物理层有序集或DLLP。
作为实例而不是出于限制的目的,可以支持各种物理层方法。当使用边带互连时,第一种方法可以是提供最小引脚数的单线双向边带信号。在某些实施例中,能够在现有的边带上多路复用这一信号,例如PERST#、WAKE#或CLKREQ信号。第二种方法可以是双线双向单向信号集,其相较于单线方法可以更简单并且某种程度上更高效,但代价是附加引脚。能够在现有的边带上多路复分这一实施方式,例如用于主机设备的PERST#和用于设备主机的CLKREQ#(在这个实例中,维持现有的信号方向性,简化双模式实施方式)。第三种方法可以是低速带内信号发送机制,诸如M-PHY LS PWM模式,其相对于边带机制减少了引脚数,并可以仍然支持类似的低功率级别。因为这个操作模式与高速操作互斥,所以它能够与诸如物理层有序集或DLLP之类的高速带内机制组合。尽管这种方法不是低功率的,但它最大化了与现有高速IO的共性。当与低速带内信号发送组合时,这种方法可以提供良好的低功率解决方案。
为了在给定系统中实现这些配置中的一种或多种,能够提供语义层,其能够用于确定物理层以及策略层上方交换的信息的含义,该含义能够用于领会设备/平台级别的动作/反应。在一个实施例中,这些层可以存在于SB PHY单元中。
通过提供分层方法,实施例允许可以包括边带能力(由于简单性和/或低功率操作,其可以在某些实施方式中是优选的)及带内(其对于其它实施方式可以是优选的,例如避免需要附加引脚数)两者的不同物理层实施方式。
在一个实施例中,能够例如经由语义层将多个边带信号配置成用于经由统一边带机制(或带内机制)通信的单个数据包。在一个实施例中,下面的表3示出了在一个实施例中可以存在的各个信号。在所示的表中,由箭头示出信号的逻辑方向,其中上箭头被定义为至主机(例如,根联合体)的方向,并且下箭头被定义为至设备(例如,外围设备,诸如无线电解决方案)的方向。
表3
设备存在↑
功率良好↓
断电↓
参考时钟良好↓
基础复位↓
配置准备↑↓
准备训练↑↓
开始训练↑↓
L1pg请求↑↓
L1pg拒绝↑↓
L1pg授权↑↓
OBFF CPU活跃↓
OBFF DMA↓
OBFF空闲↓
唤醒↑
握手的应答接收↑↓。
现在参考图6,示出了针对根据本发明实施例的边带机制的各个状态的流程图。如图6中所示的,这些各个状态可以关于根联合体(例如,主机控制操作)。状态图600可以提供经由所述主机对各个状态的控制。如所见的,操作开始于预引导状态610,在该状态中能够传送存在信号。要注意这种存在信号可以如上面关于链路管理操作所述的那样。然后,控制传递至引导状态620,在该状态中可以传送各种信号,即功率良好信号、复位信号、参考时钟状态信号和准备训练信号。要注意,所有这些信号能够经由单个数据包传送,其中这些信号中的每一个都可以对应于所述数据包的指示符或字段(例如,数据包的1比特指示符)。
仍然参考图6,控制接下来传递至活跃状态630,其中系统可以处于活跃状态(例如,S0),对应设备(例如,下游设备可以是活跃设备状态(例如,D0)并且链路可以处于活跃状态、停机或低功率状态(例如,L0、L0s或L1)。如所见的,在这个状态中,可以传送各种信号,包括OBFF信号、时钟请求信号、参考时钟状态、请求L0信号和准备训练信号。
接下来,例如执行上述信号发送后,控制能够传递至低功率状态640。如所见的,在这个低功率状态640中,该系统可以处于活跃状态,同时设备可以处于相对较低延迟的低功率状态(例如,D3热)。另外,所述链路可以处于给定的低功率状态(例如,L2或L3)。如在这些状态中所见的,经由统一边带数据包传送的信号可以包括唤醒信号、复位信号和功率良好信号。
当所述系统进入更深低功率状态时,能够进入第二低功率状态650(例如,当所述系统处于S0状态并且所述设备处于D3冷状态以及所述链路类似地处于L2或L3状态中时。如所见的,能够传送相同的唤醒、复位和功率良好信号。还在图6中所见的,在更深低功率状态660(例如,系统低功率状态S3)和设备低功率状态(例如,D3冷)以及相同的链路低功率状态L2及L3中能够发生相同的信号。虽然示出了传递的这一特定边带信息集,但要理解,本发明的范围不限于此。
实施例因此提供了分层结构,具有能够相对于灵活性平衡简单性与低等待时间的延展性。以这种方式,能够用较少数目的信号代替现有的边带信号和附加的边带信号,并且在不增加更多引脚的情况下实现边带机制的未来扩展。
现在参考图7,示出了一种根据本发明实施例的方法的流程图。如图7中所示,方法700可以用于经由聚合的协议栈传送数据,该聚合的协议栈包括一个通信协议的上层和不同的通信协议的下层,例如物理层。在所示的实例中,假设如上所述的聚合的协议栈,即具有PCIeTM协议的上事务及数据链路层和不同规范(例如MIPI规范)的物理层。当然,还可以存在使这两个通信协议能够聚合为单个协议栈的附加逻辑,例如上面关于图4讨论的逻辑及电路。
如图7中所见的,方法700能够开始于在第一通信协议的协议栈中接收第一事务(框710)。例如,诸如内核的根联合体的各种逻辑、其它执行引擎等寻求发送信息给另一设备。因此,这种信息可以传递至事务层。如所见的,控制传递至框720,其中事务能够被处理并提供给第二通信协议的PHY的逻辑部分。这种处理可以包括上面关于图4的流程所讨论的各种操作,其中能够发生接收数据、执行流控制、链路操作、打包操作等各种操作。另外,能够发生提供数据链路层数据包给PHY的各种操作。接下来,控制传递至框730,其中能够在PHY的逻辑部分中将这个第一事务转化为第二格式事务。例如,能够执行符号的任意转化(需要时)。另外,能够发生被执行以因此将所述事务转化为用于在所述链路上传输的格式的各种转换操作。因此,控制能够传递至框740,其中能够经由链路将这个第二格式事务从PHY传送至设备。作为实例,第二格式事务能够是线编码、串行化等之后的串行化数据。虽然在图7的实施例中以这一高级别示出,但要理解,本发明的范围不限于此。
现在参考图8,示出了一种根据本发明实施例的计算机系统中存在的组件的框图。如图8中所示,系统800能够包括许多不同的组件。这些组件能够被实施为IC、其部分、分立电子设备或适配到诸如计算机系统的母板或插入卡之类的电路板的其它模块,或实施为以另外方式合并在计算机系统的机箱内的组件。还要注意,图8的框图旨在示出计算机系统的许多组件的高级别视图。然而,要理解,在某些实施方式中可以存在附加组件,并且另外,在其它实施方式中可以发生所示组件的不同布置。
如图8中所见的,处理器810(其可以是诸如超低电压处理器的低功率多核处理器插槽)可以充当用于与所述系统的各种组件通信的主处理单元和中央集线器。这种处理器能够被实施为SoC。在一个实施例中,处理器810可以是基于Intel®架构CoreTM的处理器(诸如可从加州Santa Clara的英特尔公司获取的i3、i5、i7或另一此类处理器)。然而,要理解,在诸如苹果A5处理器的其它实施例中可以替代地存在诸如可从加州Sunnyvale的高级微设备公司(AMD)获取的其它低功率处理器、来自ARM 公司控股有限公司的基于ARM的设计、或来自加州Sunnyvale的MIPS技术公司或它们的获许可者或采纳者的基于MIPS的设计。
处理器810可以与系统存储器815通信,系统存储器815在实施例中能通过多个存储器设备实施以提供给定量的系统存储器。作为实例,该存储器能够根据联合电子设备工程会议(JEDEC)的基于低功率双数据速率(LPDDR)的设计,诸如根据JEDEC JESD 209-2E的当前LPDDR2标准(2009年4月出版),或称作LPDDR3的、将提供对LPDDR2的扩展以增加带宽的下一代LPDDR标准。作为实例,可以存在2/4/8千兆字节(GB)的系统存储器,并能经由一个或多个存储器互连耦接到处理器810。在各种实施方式中,个体存储器设备能够具有不同的封装类型,诸如单管芯封装(SDP)、双管芯封装(DDP)或四管芯封装(QDP)。这些设备在一些实施例中能够直接被焊接到母板上以提供低外形解决方案,而在其它实施例中,所述设备能够配置为一个或多个存储模块,其继而能够由给定的连接器耦接到母板。
为了提供信息(诸如数据、应用、一个或多个操作系统等)的持续存储,海量存储器820也可以耦接到处理器810。在各实施例中,为了实现更薄和更轻的系统设计,以及为了改进系统响应性,这种海量存储器可以经由SSD实施。然而,在其它实施例中,海量存储器可以主要使用硬盘驱动器(HDD)来实施,其中较少量SSD存储器充当SSD高速缓存从而实现在关机事件期间背景状态和其它此类信息的非易失性存储,以使得在重启系统活动时能够发生快速上电。图8中还示出,闪存设备822可以耦接到处理器810,例如经由串行外围接口(SPI)。这个闪存设备可以提供包括基本输入/输出软件(BIOS)以及该系统的其它固件的系统软件的非易失性存储。
系统800内可以存在各种输入/输出(IO)设备。图8的实施例中特别示出了显示器824,其可以是在机箱的盖部内配置的高分辨率LCD或LED面板。这个显示器面板还可以提供触摸屏825,例如外部适配于所述显示器面板上以使得经由用户与这一触摸屏的交互,用户输入能够被提供给系统以实现期望的操作,例如关于信息显示、信息访问等。在一个实施例中,显示器824可以经由能够被实施为高性能图形互连的显示器互连耦接到处理器810。触摸屏825可以经由另一互连耦接到处理器810,其在一个实施例中能够为I2C互连。如图8中进一步所示,除了触摸屏825,通过触摸方式的用户输入还能经由触摸板830发生,触摸板830可以配置在所述机箱内,并还可以耦接到与触摸屏825相同的I2C互连。
出于感知计算和其它目的,各种传感器可以存在于所述系统内,并能以不同方式被耦接到处理器810。某些惯性和环境传感器可以通过传感器集线器840(例如经由I2C互连)耦接到处理器810。在图8中所示的实施例中,这些传感器可以包括加速仪841、环境光感器(ALS)842、罗盘843和陀螺仪844。在一个实施例中,其它环境传感器可以包括一个或多个热传感器846,其可以经由系统管理总线(SMBus)总线耦接到处理器810。还要理解,根据本发明的实施例,一个或多个所述传感器可以经由LPS链路耦接到处理器810。
图8中还看见,各种外围设备还可以经由低引脚数(LPC)互连耦接到处理器810。在所示的实施例中,各种组件能够通过嵌入式控制器835被耦接。这些组件能够包括键盘836(例如,经由PS2接口被耦接)、风扇837和热传感器839。在一些实施例中,触摸板830还可以经由PS2接口耦接到EC835。另外,安全处理器(诸如根据可信计算小组(TCG)TPM 规范版本1.2(2003年10月2日)的诸如可信平台模块(TPM)838)也可以经由这一LPC互连耦接到处理器810。
系统800能够以包括无线方式的各种方式与外围设备通信。在图8中所示的实施例中,存在各种无线模块,其中每一个能够对应于针对特定无线通信协议配置的无线电。一种针对短程(诸如近场)内的无线通信的方式可以经由近场通信(NFC)单元845,在一个实施例中,近场通信(NFC)单元845可以经由SMBus与处理器810通信。要注意,经由这一NFC单元845,彼此紧邻的设备能够通信。例如,通过将关系紧密的两个设备适配在一起并实现信息(诸如标识信息、支付信息,诸如图像数据的数据等)传送,用户可以使系统800能够与另一(例如)便携设备(诸如用户的智能电话)通信。还可以使用NFC系统执行无线功率传送。
如进一步在图8中所见的,附加的无线单元能够包括其它短程无线引擎,包含WLAN单元850和蓝牙单元852。使用WLAN单元850,能够实现根据给定的电气及电子工程协会(IEEE)802.11标准的Wi-Fi™通信,同时经由蓝牙单元852,能够发生经由蓝牙协议的短程通信。这些单元可以经由例如USB链路或通用异步接收传输器(UART)链路与处理器810通信。或者这些单元可以经由互连经由诸如本文所述的聚合PCIe/MIPI互连的低功率互连或诸如串行数据输入/输出(SDIO)标准的另一此类协议耦接到处理器810。当然,可以在一个或多个插入卡上配置的这些外围设备间的实际物理连接能够通过适配到母板的NGFF连接器的方式。
另外,无线广域通信(例如根据蜂窝或其它无线广域协议)能够经由可以继而耦接到订购者身份模块(SIM)857的WWAN单元856发生。另外,为了实现位置信息的接收及使用,还可以存在GPS模块855。要注意,在图8中所示的实施例中,WWAN单元856和诸如照相机模块854的集成捕获设备可以经由给定USB协议(诸如USB2.0或3.0链路),或者UART或I2C协议通信。这些单元的实际物理连接再次能够经由将NGFF插入卡适配到在母板上配置的NGFF连接器。
为了提供音频输入及输出,音频处理器能够经由数字信号处理器(DSP)860实施,其可以经由高分辨率音频(HAD)链路耦接到处理器810。类似地,DSP860可以与集成编码器/解码器(CODEC)及放大器862通信,集成编码器/解码器(CODEC)及放大器862继而可以耦接到可以在机箱内实施的输出扬声器863。类似地,放大器及CODEC862能够被耦接以从麦克风865接收音频输入,麦克风865在实施例中能够经由双阵列麦克风实施以提供高质量音频输入从而实现对系统内各种操作的语音激活控制。还要注意,音频输出能够从放大器/COEDC862提供到耳机插孔864。
因此能够在许多不同环境中使用实施例。现在参考图9,示出了能够与实施例一起使用的实例系统900。如所见的,系统900可以是智能电话或其它无线通信器。如图9的框图中所示,系统900可以包括基带处理器910,其可以是能够处理基带处理任务以及应用处理的多核处理器。因此,基带处理器910能够执行关于通信的各种信号处理,以及执行用于所述设备的计算操作。继而,基带处理器910能够耦接到用户接口/显示器920,用户接口/显示器920在一些实施例中能够由触摸屏显示器实现。另外,基带处理器910可以耦接到存储器系统,其在图9的实施例中包括非易失性存储器(即闪存930)和系统存储器(即动态随机存取存储器(DRAM)935)。如进一步所见的,基带处理器910能够进一步耦接到捕获设备940,诸如能够记录视频和/或静止图像的图像捕获设备。
为了实现通信的传输与接收,基带处理器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的实施例中以这一高级别示出,但要理解本发明的范围不限于此。
实施例可以用在许多不同类型的系统中。例如,在一个实施例中,通信设备能够被布置为执行本文所述的各种方法及技术。当然,本发明的范围不限于通信设备,并且相反地,其它实施例能够涉及用于处理指令的其它类型装置,或一个或多个机器可读介质,包括响应于在计算设备上被执行而使得所述设备执行本文所述的一种或多种方法及技术的指令。
实施例可以以代码实施,并可以存储在非暂时性存储介质上,非暂时性存储介质具有存储在其上的、能够用于对系统编程以执行所述指令的指令。所述存储介质可以包括,但不限于:任意类型的磁盘,包括软盘、光盘、固态驱动器(SSD)、紧凑盘只读存储器(CD-ROM)、可重写紧凑盘(CD-RW),以及磁光盘;半导体设备,诸如只读存储器(ROM)、随机存取存储器(RAM)(诸如动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM))、可擦除可编程只读存储器(EPROM)、闪存、电可擦除可编程只读存储器(EEPROM);磁或光卡、或适于存储电子指令的任意其它类型介质。
虽然关于有限数目的实施例描述了本发明,但本领域技术人员将理解由其而来的许多修改和变化。所附的权利要求旨在覆盖落入本发明的真正精神和范围内的所有此类修改和变化。

Claims (36)

1. 一种装置,包括:
逻辑,用于操作基于外围组件快速互连TM(PCIeTM)的事务层和链路层;以及
物理单元,耦接到所述逻辑以经由物理链路传输和接收数据,所述物理单元包括M-PHY电气层和逻辑层,逻辑层用于将逻辑与M-PHY电气层接口,逻辑层包括链路训练和状态机(LTSSM),用于执行物理链路的链路训练和支持物理链路的多通道配置,逻辑层还包括映射逻辑,用于将控制符号从第一编码映射到第二映射。
2.如权利要求1所述的装置,其中LTSSM包括状态机,状态机在检测状态中开始链路训练,物理链路的通道在检测状态中转换到HIBERN8状态,并且此后继续到配置状态,M-PHY电气层的参数在配置状态中被配置。
3.如权利要求1所述的装置,其中LTSSM还引起至少一个电气空闲有序集(EIOS)的传送,以使得物理链路的通道在活跃数据传送之后进入STALL状态。
4. 如权利要求3所述的装置,其中,在EIOS之后并且在进入STALL状态之前,LTSSM还引起TAIL of BURST指示的传送。
5.如权利要求1所述的装置,其中LTSSM把物理链路配置并且初始化为在训练所述物理链路之前所确定的链路宽度。
6.如权利要求1所述的装置,其中LTSSM在深低功率状态中功率门控所述物理单元。
7.如权利要求6所述的装置,其中当在物理链路的通道上驱动负驱动信号时,LTSSM退出深低功率状态。
8.如权利要求1所述的装置,其中LTSSM提供物理链路的配置和初始化、数据传送的支持、对从链路错误恢复时状态转换的支持和由低功率状态的端口重启。
9.如权利要求1所述的装置,其中LTSSM被配置为支持物理链路的非对称链路宽度配置。
10.如权利要求1所述的装置,其中LTSSM被配置为支持物理链路的动态带宽缩放。
11. 一种装置,包括:
加载/存储通信协议的事务层和链路层;以及
物理单元,耦接到所述链路层以与物理链路接口,并且包括:第二通信协议的物理单元电路,物理单元电路具有传输电路和接收电路;和逻辑层,用于将链路层与物理单元电路接口,逻辑层包括链路逻辑,用于执行物理链路的链路训练,逻辑层进一步包括映射逻辑,用于将针对加载/存储通信协议的控制符号的编码映射到针对第二通信协议的映射。
12.如权利要求11所述的装置,其中链路逻辑包括状态机,状态机在检测状态中开始链路训练,物理链路的通道在检测状态中转换到HIBERN8状态,并且此后继续到配置状态,物理单元电路的参数在配置状态中被配置。
13.如权利要求11所述的装置,其中所述状态机还引起至少一个电气空闲有序集(EIOS)的传送,以使得物理链路的通道在活跃数据传送之后进入STALL状态。
14. 如权利要求13所述的装置,其中,在EIOS之后并且在进入STALL状态之前,所述状态机还引起TAIL of BURST指示的传送。
15.如权利要求11所述的装置,其中链路逻辑把物理链路配置并且初始化为在训练所述物理链路之前所确定的链路宽度。
16.如权利要求11所述的装置,其中链路逻辑在深低功率状态中功率门控所述物理单元。
17.如权利要求16所述的装置,其中当在物理链路的通道上驱动负驱动信号时,链路逻辑退出深低功率状态。
18.如权利要求11所述的装置,其中链路逻辑提供物理链路的配置和初始化、数据传送的支持、对从链路错误恢复时状态转换的支持和由低功率状态的端口重启。
19.如权利要求11所述的装置,其中链路逻辑被配置为支持物理链路的多通道配置。
20.如权利要求11所述的装置,其中链路逻辑被配置为支持物理链路的非对称链路宽度配置。
21.如权利要求10所述的装置,其中链路逻辑被配置为支持物理链路的动态带宽缩放。
22.一种系统,包括:
片上系统(SoC),包括:
多个内核;
外围组件快速互连TM(PCIeTM)通信协议的事务层和链路层;以及
物理单元,耦接到链路层以经由物理链路实现通信,所述物理单元包括非PCIeTM通信协议的电气层和逻辑层,逻辑层用于将链路层与电气层接口,逻辑层包括链路训练和状态机(LTSSM),用于执行物理链路的链路训练,逻辑层还包括映射逻辑,用于将控制符号从第一编码映射到第二映射;
物理链路,耦接在SoC和第一收发器之间;
第一收发器,经由物理链路耦接到SoC,第一收发器包括:
PCIeTM通信协议的第二事务层和第二链路层;以及
第二物理单元,耦接到第二链路层以经由物理链路实现通信,第二物理单元包括非PCIeTM通信协议的第二电气层和第二逻辑层,第二逻辑层用于将第二链路层与第二电气层接口;
图像捕获设备,耦接到SoC以捕获图像信息;以及
触摸屏显示器,耦接到SoC。
23.如权利要求22所述的系统,其中所述电气层包括多个物理单元电路,每个物理单元电路经由物理链路的单个信道进行通信。
24.如权利要求22所述的系统,其中LTSSM被配置为支持物理链路的动态带宽缩放。
25.如权利要求22所述的系统,其中SoC还包括至少一个有序内核和至少一个无序内核。
26.如权利要求22所述的系统,进一步包括第二收发器,经由第二物理链路耦接到SoC。
27.如权利要求22所述的系统,其中所述系统包括平板计算机。
28.如权利要求22所述的系统,其中LTSSM被配置为支持物理链路的多通道配置。
29.如权利要求22所述的系统,其中LTSSM被配置为支持物理链路的非对称链路宽度配置。
30.一种方法,包括:
经由链路训练和状态机(LTSSM)执行物理链路的链路训练,物理链路耦接在片上系统(SoC)和一设备,M-PHY的逻辑层的LTSSM,之间,逻辑层将M-PHY的电气层与外围组件快速互连TM(PCIeTM)链路层接口;
经由LTSSM支持物理链路的多通道配置;以及
经由逻辑层的映射逻辑将控制符号从第一编码映射到第二映射。
31.如权利要求30所述的方法,还包括:操作物理链路,该物理链路从SoC到所述设备与从所述设备到SoC具有非对称宽度。
32.如权利要求30所述的方法,还包括:把物理链路配置和初始化为在链路训练之前所确定的链路宽度。
33.如权利要求30所述的方法,还包括:在深低功率状态中功率门控所述M-PHY。
34.如权利要求30所述的方法,还包括:当在物理链路的通道上驱动负驱动信号时,退出深低功率状态。
35.如权利要求30所述的方法,还包括:经由LTSSM支持物理链路的非对称链路宽度配置。
36.如权利要求30所述的方法,还包括:经由LTSSM支持物理链路的动态带宽缩放。
CN201610857743.XA 2012-05-22 2013-05-16 优化的链路训练及管理机制 Active CN107092335B (zh)

Applications Claiming Priority (4)

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
CN201380021347.8A CN104380274B (zh) 2012-05-22 2013-05-16 用于优化的链路训练及管理的装置和方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201380021347.8A Division CN104380274B (zh) 2012-05-22 2013-05-16 用于优化的链路训练及管理的装置和方法

Publications (2)

Publication Number Publication Date
CN107092335A true CN107092335A (zh) 2017-08-25
CN107092335B CN107092335B (zh) 2020-07-21

Family

ID=52569929

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201610857743.XA Active CN107092335B (zh) 2012-05-22 2013-05-16 优化的链路训练及管理机制
CN201380021347.8A Active CN104380274B (zh) 2012-05-22 2013-05-16 用于优化的链路训练及管理的装置和方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201380021347.8A Active CN104380274B (zh) 2012-05-22 2013-05-16 用于优化的链路训练及管理的装置和方法

Country Status (1)

Country Link
CN (2) CN107092335B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112015683A (zh) * 2020-08-27 2020-12-01 深圳忆联信息系统有限公司 Pcie链路的动态切换方法、装置、计算机设备及存储介质

Families Citing this family (4)

* 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
US10034407B2 (en) * 2016-07-22 2018-07-24 Intel Corporation Storage sled for a data center
US11249779B2 (en) * 2017-09-01 2022-02-15 Intel Corporation Accelerator interconnect assignments for virtual environments
CN110647486B (zh) * 2019-09-29 2021-05-11 江苏芯盛智能科技有限公司 一种PCIe链路训练方法、端设备及通讯系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1551626A (zh) * 2003-05-01 2004-12-01 创世纪微芯片公司 用于提供与链路字符时钟无关的像素数据的视频接口
CN101630301A (zh) * 2008-07-15 2010-01-20 英特尔公司 管理协议栈的时间
US20110138096A1 (en) * 2009-12-04 2011-06-09 St-Ericsson Sa Methods and Systems for Reliable Link Startup

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7657692B2 (en) * 1999-08-04 2010-02-02 Super Talent Electronics, Inc. High-level bridge from PCIE to extended USB
US7793030B2 (en) * 2007-10-22 2010-09-07 International Business Machines Corporation Association of multiple PCI express links with a single PCI express port
US8392637B2 (en) * 2008-07-25 2013-03-05 Broadcom Corporation System and method for enabling legacy medium access control to do energy efficent ethernet
US8831666B2 (en) * 2009-06-30 2014-09-09 Intel Corporation Link power savings with state retention

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1551626A (zh) * 2003-05-01 2004-12-01 创世纪微芯片公司 用于提供与链路字符时钟无关的像素数据的视频接口
CN101630301A (zh) * 2008-07-15 2010-01-20 英特尔公司 管理协议栈的时间
US20110138096A1 (en) * 2009-12-04 2011-06-09 St-Ericsson Sa Methods and Systems for Reliable Link Startup

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112015683A (zh) * 2020-08-27 2020-12-01 深圳忆联信息系统有限公司 Pcie链路的动态切换方法、装置、计算机设备及存储介质

Also Published As

Publication number Publication date
CN107092335B (zh) 2020-07-21
CN104380274A (zh) 2015-02-25
CN104380274B (zh) 2017-10-24

Similar Documents

Publication Publication Date Title
CN104285426B (zh) 给加载/存储通信协议提供低功率物理单元
CN104322033B (zh) 使用第二协议的扩展功能结构来控制第一协议的物理链路
US9141577B2 (en) Optimized link training and management mechanism
US9223735B2 (en) Providing a consolidated sideband communication channel between devices
US9830292B2 (en) Architected protocol for changing link operating mode
CN104380274B (zh) 用于优化的链路训练及管理的装置和方法
CN104350720B (zh) 提供用于双向串行互连的串行协议的装置、方法和系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant