用以简化重定时器逻辑的数据速率检测的制作方法

文档序号:11637184阅读:385来源:国知局
用以简化重定时器逻辑的数据速率检测的制造方法与工艺

相关申请的交叉引用

本申请要求2014年12月23日提交的美国专利申请号14/582,105的提交日的权益,该申请被通过引用结合到本文中。

本技术一般地涉及支持多个数据速率的重定时器。更具体地,本技术涉及重定时器的物理层(phy)中的数据速率检测。



背景技术:

重定时器被用作用于扩展互连的物理长度的方法。当重定时器将支持多个数据速率时,数据速率检测在重定时器处发生以适当地对信号进行重定时。数据速率检测通常对phy处的预定数据速率进行编程,并然后评估由phy发送的数据以便确定该数据速度是否正确。使用到phy的数字逻辑来确定数据速度是否正确。如果预定数据速率不正确,则重置phy处的数据速率。一旦确定了正确的数据速率,则重定时器然后可以发送数据。

附图说明

图1是互连模型的层的图示;

图2是重定时器的层的图;

图3是将在phy中执行速度检测的电路的框图;

图4是用于在phy中检测数据速率的方法的过程流程图;

图5是示出了存储用于数据速率检测的代码的有形、非暂时性计算机可读介质的框图;以及

图6是示例性计算机系统的框图。

在某些情况下,遍及本公开和附图使用相同的编号来提及相同的组件和特征。100系列中的编号指代最初在图1中发现的特征;200系列中的编号指代最初在图2中发现的特征等等。

具体实施方式

重定时器可以是对协议有认识的,使得重定时器可以根据多个协议对数据进行重定时。此类协议可以包括:快速外围组件互连(pci)(pcie)规范,诸如2010年11月10日发布的pcie3.0;通用串行总线(usb)规范,诸如2013年7月26日发布的usb3.1规范或者串行ata(sata)规范,诸如2013年8月发布的sata3.2规范。每个协议的各种世代能够支持不同的数据速率。例如,pci架构可以以每秒2.5、5、8和16g次传输的数速率(gt/s)进行操作。多数据速率重定时器可以支持协议的所有数据速率。为了支持多个数据速率,重定时器执行数据速率检测以适当地对数据进行重定时。传统上,用纯数字式方法来执行数据速率检测。纯数字式方法可能导致重定时信号中的误差。

本文中所述的实施例确定重定时器的phy中的数据速率。这消除了对phy中的特定数据速率进行编程和然后的关于数据速率是否正确的任何后续评估的需要。以这种方式,当多数据速率重定时器将再次开始发送数据时减少等待时间。

在以下描述中,阐述了许多特定细节,诸如特定类型的处理器和系统配置、特定硬件结构、特定架构和微架构细节、特定寄存器配置、特定指令类型、特定系统组件、特定测量结果/高度、特定处理器管线阶段和操作等的示例,以便提供本发明的透彻理解。然而,对于本领域的技术人员而言将显而易见的是不需要采用这些特定细节来实施本发明。在其它实例中,并未详细地描述众所周知的组件或方法,诸如特定和替换处理器架构、用于所述算法的特定逻辑电路/代码、特定固件代码、特定互连操作、特定逻辑配置、特定制造技术和材料、特定编译器实施方式、算法在代码中的特定表达、特定功率降低和选通技术/逻辑、以及计算机系统的其它特定操作细节,以免不必要地使本发明含糊难懂。

虽然可能参考特定集成电路中(诸如计算平台或微处理器中)的能量保存和能量效率来描述以下实施例,但其它实施例适用于其它类型的集成电路和逻辑器件。本文中所述的实施例的类似技术和讲授内容可以应用于也可以受益于更好的能量效率和能量保存的其它类型的电路或半导体器件。例如,公开实施例不限于台式计算机系统或ultrabook™。并且还可以在其它装置中使用,诸如手持式装置、平板电脑、其它薄笔记本、片上系统(soc)装置以及嵌入式应用。手持式装置的某些示例包括蜂窝电话、网际协议装置、数字式相机、个人数字助理(pda)以及手持式pc。嵌入式应用通常包括微控制器、数字信号处理器(dsp)、片上系统、网络计算机(netpc)机顶盒、网络集线器、广域网(wan)交换机或者可以执行下面讲授的功能和操作的任何其它系统。此外,本文中所述的设备、方法以及系统不限于物理计算装置,而是还可以涉及软件优化以实现能量保存和效率。如在以下描述中将容易地变得显而易见的,本文中所述的方法、设备以及系统的实施例(无论是参考硬件、固件、软件还是其组合)对与性能考虑相平衡的“绿色技术”未来至关重要。

随着计算系统的进步,其中的组件正在变得更加复杂。结果,用以在组件之间进行耦合和通信的互连架构在复杂性方面也在增加,以确保满足带宽要求以实现最优组件操作。此外,不同的市场细分需要互连架构的不同方面以适应市场的需求。例如,服务器要求较高性能,而移动生态系统有时能够牺牲总体性能来实现功率节约。然而,以最大的功率节约提供最高的可能性能是大多数结构的单一目的。下面讨论了许多互连,其将潜在地受益于本文中所述的本发明的各方面。

在图中所示的每个系统中,元件在某些情况下可以各自具有相同的参考标号或不同的参考标号以暗示所表示的元件可能是不同的和/或相似的。然而,元件可以灵活到足以具有不同的实施方式和与本文中所示或所述的某些或所有系统一起工作。图中所示的各种元件可以是相同或不同的。哪一个被称为第一元件和哪一个被称为第二元件是任意的。

图1是互连模型100的层的图示。互连模型100可以图示出多数据速率重定时器的层。在示例中,互连模型100包括物理层(phy)。phy可以包括互连的硬件传输技术组件。在某些情况下,phy可以定义互连的原始位或数据分组的传输。物理层可以提供到传输介质的电、机械以及程序接口。此外,电连接器的特性、特定物理层所使用的频率、要使用的调制方案和类似低级参数由phy指定。参数可以根据phy所支持的特定协议而不同。虽然列出了特定规范,但本技术可以与任何输入/输出协议一起使用。

互连模型100包括逻辑子块102和物理子块104。在本情形中,逻辑子块102负责互连模型100的“数字”功能。在这方面,逻辑子块104包括介质访问层(mac)106和物理编码子层(pcs)108。在实施例中,mac106使得能够实现用于重定时器的寻址和信道访问控制机制。在实施例中,mac106是逻辑链路控制(llc)子层与物理层(phy)之间的接口。pcs108执行数据编码/解码、加扰/解扰、对准标记插入/去除、块和符号再分发以及通道块同步和抗扭斜及其它。

phy/mac接口110被设置在mac层106与pcs108之间。phy/mac接口110是phy和mac之间的接口,其包括被结合到phy中的特定功能。在实施例中,phy/mac接口是用于快速pci(pipe)接口的phy接口。在实施例中,接口还可以是用于sata和usb超高速架构的phy接口。

物理子块104包括物理介质附着(pma)层112和数据速率检测器114。在本情形中,物理子块负责互连模型100的“模拟”功能。pma层112可以将数据编码到pcs108。在实施例中,pcs108可以被配置成执行在pma层112与mac106之间发送的数据的编码和解码。数据速率检测器114包括总线速度检测。在实施例中,数据速率检测器是独立模拟电路,其检测由包括重定时器的互连发送的数据的数据速率。

以这种方式,总线速度检测移动至重定位器模拟电路中的电路中,大大地简化了重定时器数字逻辑实现。在实施例中,总线速度检测由phy层的模拟电路执行。另外,在实施例中,pcs108、pma层112以及数据速率检测器是互连模型100的phy层的组件,而mac106是数据链路层的组件。

图1的图并不意图指示互连100将包括图1中所示的所有组件。在互连100内可以包括任何数目的附加组件,取决于本文中所述的重定时器的装置的细节和特定实施方式。例如,所讨论的项目不限于所述的功能,而是可以在不同地点或用不同组件来完成该功能。

图2是重定时器的层200的图。层200包括mac/控制器202和phy层204。phy204包括模拟电路206,其中,模拟电路206将检测互连的数据速率。一旦检测到此数据速率,则将其作为数据速率信息208发送到mac/控制器202。数据速率被跨接口210发送。在实施例中,接口210是pipe接口。pipe接口是可以在phy与mac/控制器一个实现之间使用的接口的示例。然而,可以将所示的一般分区与多个接口一起使用,不考虑所使用的特定内部接口。

传统上,mac/控制器202将把phy层中的数据速率编程成当链路开始发送数据或退出空闲状态时预期的数据速率。在电空闲状态下,没有正在驱动正和负信号。当从电空闲重新开始传输时,发送器必须实现训练会话以便重建与接收机的链路。在某些情况下,数据速率在电空闲状态之后改变,并且重定时器将确定新的数据速率。在速率被编程之后,mac/控制器202将通过评估数据/错误信息来检查phy中的输入数据,并且然后判定速度是否正确。

通过纯数字式方案来确定新的数据速率是容易产生错误的,因为与重定时器耦合的端点可能在没有在新数据速率的链路上发送通知的情况下由于内部错误而改变数据速率。本技术确定phy中的数据速度。这消除了对phy中的特定数据速率进行编程和然后的关于数据速率是否正确的任何后续评估的需要。以这种方式,当多数据速率重定时器将再次开始发送数据时减少等待时间。

在pcie协议的情况下,可以将链路退出称为到电空闲的转换,如pcie规范所述。在实施例中,mac/控制器将预先对新数据速率进行编程。然而,使用mac/控制器对新数据速率进行编程可能固有地是容易产生错误的,因为装置可能由于内部错误而非预期地转换数据速率。当数据速率被编程回到较低数据速率时情况尤其如此。例如,在pcie情形中,当数据速率返回至开始的2.5gt/s速率而未改变重定时器的数据速率时,可能会向数据传输中引入错误。这导致数据速率编程有时是不正确的。传统上,在mac/控制器中放置附加数字逻辑以检测这些容易产生错误的情况并正确地对速度重编程。然而,此逻辑是容易产生错误的,并且难以调试。在实施例中,本技术提出一种其中phy包含用以每当链路改变数据速率时执行快速速度检测的模拟电路的模型。在pcie协议的情况下,模拟电路将每当链路根据pci-e规范退出电空闲状态时执行快速速度检测。检测到的速度然后被中继到mac/控制器。此架构消除了对用以预测速率变化的监视业务中涉及到的重定时器的mac/控制器中的所有数字逻辑和用以检测预测/编程速率何时不正确的错误逻辑的需要。以这种方式,可以大大地简化重定时器的数字逻辑。

图3是将在phy中执行速度检测的电路的框图。路径300图示出用于数据速率检测的信号路径。在实施例中,边缘检测器302和计数器304形成phy中的将使得能够实现phy中的速度检测的模拟电路。可以对数据执行均衡化以便确保边缘检测器的操作。

数据路径300可以沿着可能引发符号间干扰的各种组件行进。符号间干扰(isi)一般指的是其中一个符号与数据流中的后续符号相干扰的一种信号失真。在高速i/o通信中通常发现由于isi而引起的失真。为了使isi最小化,高速链路执行各种均衡化步骤。特别地,可以在发送机处执行均衡化以便使沿着高速互连发送的高速信号的失真最小化。

例如,传输线性均衡化(txle)308通常包括使用在运行时确定且取决于物理信道的系数对发送机处的信号进行自适应滤波。传输驱动器310从txle308向信道312发送数据。传输驱动器310还可以相比于较低频率内容强调发送信号的高频内容以便抵消高频率下的信道引发的失真。信道312可以根据特定协议发送数据。例如,电路300可以根据pci协议来发送数据。可以对数据信号应用连续时间线性均衡化(ctle)和放大器(amp)314以补偿isi,并且还将数据信号放大。可以使用判定反馈均衡器(dfe)316来在信号处理期间进一步抑制isi。在实施例中,截减器(slicer)316可能足以在信号处理期间进一步抑制isi。

为了使用phy中的模拟电路来确定数据速率,执行发送机均衡化和接收机连续时间线性均衡化的组合以恢复数据转换边缘。在没有均衡化的情况下,某些数据转换边缘可能遗漏。因此,用战略上选择的发送机均衡化和接收机连续时间线性均衡化,边缘检测器302之后是计数器,其将在给定测量时段内输出边缘的数目。通过所述边缘的数目,可以确定数据速率,如在306中的数据速率处所指示的。

在某些情况下,可以使用txle和ctle来对信号进行过均衡化,使得可以检测到许多数据转换边缘。过均衡化意味着txle和ctle当与由信道引发的损耗相比时具有较高的频率增益。同样地,组合的txle、ctle以及信道在高频下与低频相比具有更多增益。如本文中所使用的过均衡化仍可以提供用于检测边缘转换的适当均衡化。因此,可以优化tx均衡化和rxctle设置以使得能够实现phy中的数据速率检测。在实施例中,可以使用仿真来确定适当的tx均衡化和rxctle设置。在pcie协议的示例中,针对具有25db的插入损耗的目标信道,使用如由快速pci规范和ctle峰值定义的tx均衡化预置#7,范围从6db至16db的dc至ac增益导致在理论数目的百分之一内的边缘数目准确度。通过比较,如果未使用均衡化,则将损失超过50%的边缘。由于可工作ctle峰值的范围是相当宽的,大多数快速pcirx设计将可能具有在该范围内的某些ctle设置。这意味着根据pci的现有rxctle和tx均衡电路可以被再用于此目的。将现有rxctle设置成最大峰值并将tx均衡化设置成预置#7常常将是足够的。仅有的附加电路是边缘检测器和计数器。

在实施例中,计数器304是以数字方式实现的。由于rxctle放大器的输出常常是低摆幅电流型逻辑(cml),所以可以使用cml边缘检测器。cml边缘检测器具有高于数字式边缘检测器的功率。在此类情形中,一旦数据速率检测操作完成,则边缘检测器和计数器被关掉。在实施例中,边缘检测电路可以具有一位的错误。例如,由于pcie各代之间的线数据速率差为约1.6-2x,所以边缘检测中的百分之几的误差将不会引起不正确的分类。

图4是用于在phy中检测数据速率的方法400的过程流程图。在方框402处,在phy层中构建数据速率检测器。在实施例中,数据速率检测器包括边缘检测器和计时器。计数器可以在phy内以数字方式实现。

在方框404处,由数据速率检测器检测到的数据速率被发送到介质访问控制层。在某些实施例中,pipe接口在phy层与介质访问控制层之间。因此,在某些实施例中,使用pipe接口将数据速率信息发送到介质访问控制层。

图4的方法400并不意图指示方法400将包括图4中所示的所有步骤。此外,在方法400内可以包括任何数目的附加步骤,取决于如本文中所述的模拟电路的细节和特定实施方式。

图5是示出了存储用于数据速率检测的代码的有形、非暂时性计算机可读介质500的框图。有形非暂时性计算机可读介质500可以被处理器502通过计算机总线504访问。此外,有形、非暂时性计算机可读介质500可以包括被配置成指导处理器502执行本文中所述的方法的代码。

本文中所讨论的各种软件组件可以被存储在一个或多个有形、非暂时性计算机可读介质500上,如图5中所指示的。例如,检测器模块506可以被配置成检测重定时器的phy层级处的数据速率。发送模块508可以被配置成发送检测到的数据速率。可以使用pipe接口将该数据速率发送到mac层。

图5的框图并不意图指示有形、非暂时性计算机可读介质500将包括图5中所示的所有组件。此外,有形、非暂时性计算机可读介质500可以包括图5中未示出的任何数目的附加组件,取决于特定实施方式的细节。

在实施例中,本技术使得要实现快速pci3.0/4.0重定时器所需的数字逻辑当与在重定时器的数字逻辑中处理速度检测和不正确的速度编程逻辑的情况下所需的逻辑相比时更简单。此外,本技术使得重定时器实施方式在与数字逻辑相比时测试和调试起来更为容易。此外,本技术大大地减少了一旦链路退出根据pci规范的电空闲时重定时器要正确地确定或确认数据速率所花费的时间量以及因此的重定时器要开始转送数据所花费的时间。使此时间最小化使得重定时器当在具有现有装置的链路中使用时不那么可能产生互操作性问题。

图6是示例性计算机系统600的框图。系统600包括具有用以执行指令的执行单元的处理器,其中,图示出互连中的一个或多个实现根据本发明的一个实施例的一个或多个特征。系统600包括根据本发明(诸如在本文所述的实施例中)的组件,诸如处理器602,其将采用包括用以实行用于处理数据的算法的逻辑的执行单元608。在某些情况下,系统600表示基于可从加利福尼亚州圣克拉拉市的英特尔公司获得的pentiumiii™、pentium4™、xeon™、itanium、xscale™和/或strongarm™微处理器的处理系统,但是还可以使用其它系统(包括具有其它微处理器的pc、工程工作站、机顶盒等)。在实施例中,系统600执行可从华盛顿州雷蒙德的微软公司获得的windows™操作系统的版本,但是还可以使用其它操作系统(例如unix和linux)、嵌入式软件和/或图形用户界面。因此,本发明的实施例不限于硬件电路和软件的任何特定组合。

本文中所述的实施例不限于计算机系统。在其它装置(诸如手持式装置和嵌入式应用)中可以使用本技术的替换实施例。手持式装置的某些示例包括蜂窝电话、网际协议装置、数字式相机、个人数字助理(pda)以及手持式pc。嵌入式应用可以包括微控制器、数字信号处理器(dsp)、片上系统、网络计算机(netpc)、机顶盒、网络集线器、广域网(wan)交换机或者可以执行根据至少一个实施例的一个或多个指令的任何其它系统。

在本所示实施例中,处理器602包括将实现用以执行至少一个指令611的算法的一个或多个执行单元608。可以在单处理器台式计算机或服务器系统的背景下描述一个实施例,但在多处理器系统中可以包括替换实施例。系统600是“集线器”系统架构的示例。计算机系统600包括用以处理数据信号的处理器602。作为一个例证性示例,处理器602包括复杂指令集计算机(cisc)微处理器、精简指令集计算(risc)微处理器、超长指令字(vliw)微处理器、实现指令集的组合的处理器或者任何其它处理器装置,诸如例如数字信号处理器。处理器602被耦合到处理器总线610,其在处理器602与系统600中的其它组件之间发送数据信号。系统600的元件(例如图形加速器612、存储器控制器集线器616、存储器620、i/o控制器集线器625、无线收发机626、闪速bios628、网络控制器609、音频控制器636、串行扩展端口638、i/o控制器640等)执行本领域的技术人员众所周知的其常规功能。

在一个实施例中,处理器602包括层级7(l1)内部高速缓冲存储器604。取决于架构,处理器602可以具有单个内部高速缓存器或多个层级的内部高速缓存器。其它实施例根据特定实施方式和需要而包括内部和外部高速缓存器两者的组合。寄存器文件606将在各种寄存器中存储不同类型的数据,所述各种寄存器包括整数寄存器、浮点寄存器、向量寄存器、分组寄存器、影子寄存器、检查点寄存器、状态寄存器以及指令指针寄存器。

执行单元608(包括用以执行整数和浮点操作的逻辑)也常驻于处理器602中。在一个实施例中,处理器602包括用以存储微代码的微代码(ucode)rom,所述微代码在被执行时将实行用于某些宏指令的算法或处理复杂情形。在这里,微代码潜在地可更新以处理用于处理器602的逻辑错误/修复。针对一个实施例,执行单元608包括用以处理打包指令集609的逻辑。通过将打包指令集609连同用以执行指令的关联电路一起包括在通用处理器602的指令集中,可以在通用处理器602中使用打包数据来执行许多多媒体应用所使用的操作。因此,通过使用处理器的数据总线的全宽以便对打包数据实行操作,可以更高效地加速并执行许多多媒体应用。这潜在地消除了跨处理器的数据总线传输较小数据单元以执行一个或多个操作(每次一个数据元素)的需要。

在微控制器、嵌入式处理器、图形装置、dsp及其它类型的逻辑电路中还可以使用执行单元608的替换实施例。系统600包括存储器620。存储器620包括动态随机存取存储器(dram)装置、静态随机存取存储器(sram)装置、闪存装置或其它存储器装置。存储器620存储将由处理器602执行的数据信号所表示的数据613和/或指令611。

请注意,可以在图6中所示的一个或多个互连上利用本技术的任何上述特征或方面。例如,未示出的用于耦合处理器602的内部单元的管芯上互连(odi)实现上文所述的本发明的一个或多个方面。本发明与处理器总线610(例如英特尔快速路径互连(qpi)或其它已知高性能计算互连)、到存储器620的高带宽存储器路径618、到图形加速器614的点到点链路(例如服从快速外围组件互连(pcie)的结构)、控制器集线器互连622以及i/o或用于耦合其它所示组件的其它互连(例如,usb、pci、pcie)630a、630b、630c、630d、630e和630f相关联。此类组件的某些示例包括音频控制器636、固件集线器(闪速bios)628、无线收发机626、数据储存器624、包含用户输入和键盘接口642的传统i/o控制器610、诸如通用串行总线(usb)之类的串行扩展端口638以及网络控制器609。数据存储装置624可以包括硬盘驱动、软盘驱动、cd-rom装置、闪存装置或其它大容量存储装置。

图6的框图并不意图指示计算装置600将包括图6中所示的所有组件。此外,计算装置600可以包括图6中未示出的任何数目的附加组件,取决于特定实施方式的细节。

示例1

本文中描述了一种设备。该设备包括物理层(phy)和介质访问层。物理层的模拟电路将确定数据速率,并且介质访问层将从物理层接收数据速率。

模拟电路可以包括边缘检测器和计数器。边缘检测器可以是电流型逻辑(cml)边缘检测器。可以增加信号的均衡化值以确定数据速率。均衡化值可以是最大值。该设备可以包括物理层与介质访问层之间的接口,并且其中,可以使用所述接口将数据速率从物理层发送到介质访问层。接口可以是用于快速pci、sata的phy接口以及usb超高速架构(pipe)接口。该设备可以支持快速外围组件互连(pci)(pcie)规范、通用串行总线(usb)规范、串行ata(sata)规范或其任何组合。可以响应于链路退出电空闲状态而确定数据速率。可以响应于确定数据速率而将模拟电路断电。

示例2

本文中描述了一种系统。该系统包括传输均衡化(txle)组件和连续时间线性均衡化(ctle)组件。该系统还包括物理层(phy)和介质访问层(mac)。物理层的模拟电路将确定数据速率,模拟电路包括边缘检测器和计数器,并且其中txle和ctle将使得能够实现其中边缘检测器和计数器将确定数据速率的均衡化条件。介质访问层将从物理层接收数据速率。

边缘检测器可以是电流型逻辑(cml)边缘检测器。可以根据pci协议来传输数据,并且其中均衡化条件包括tx均衡化预置#7。均衡化条件可以是信号的均衡化,使得将检测相当大的数目的边缘。可以以数字方式实现计数器。边缘检测器可以是cml检测器。由边缘检测器在预定时间段内检测到的边缘的数目可以确定链路的数据速率。可以减少用以在链路退出电空闲之后转送数据的时间。系统可以包括物理层与介质访问层之间的接口,并且其中,可以使用所述接口将数据速率从物理层发送到介质访问层。该系统可以支持快速外围组件互连(pci)(pcie)规范、通用串行总线(usb)规范、串行ata(sata)规范或其任何组合。

示例3

在本文中描述了一种方法。本方法包括将数据速率检测器构建到物理层中,并将由数据速率检测器检测到的数据速率发送到介质访问控制层。

数据速率检测器可以是物理层中的模拟电路。数据速率检测器还可以包括边缘检测器和计时器。边缘检测器可以是电流型逻辑(cml)边缘检测器。另外,数据速率检测器包括线性均衡化组件。本方法可以包括物理层与介质访问层之间的接口,并且其中,可以使用所述接口将数据速率从物理层发送到介质访问层。接口可以是用于快速pci、sata的phy接口以及usb超高速架构(pipe)接口。可以根据快速外围组件互连(pci)(pcie)规范、通用串行总线(usb)规范、串行ata(sata)规范或其任何组合来发送数据。另外,可以响应于链路退出电空闲状态而确定数据速率。可以响应于确定数据速率而将数据速率检测器断电。

示例4

本文中描述了一种设备。该设备包括用以确定物理层中的数据速率的部件。该设备还包括介质访问层(mac),其中,所述介质访问层将从物理层接收数据速率。

用以确定数据速率的部件可以包括边缘检测器和计数器。边缘检测器可以是电流型逻辑(cml)边缘检测器。可以增加信号的均衡化值以确定数据速率。另外,均衡化值可以是最大值。本设备可以包括物理层与介质访问层之间的接口,并且其中,可以使用所述接口将数据速率从物理层发送到介质访问层。接口可以是用于快速pci、sata的phy接口以及usb超高速架构(pipe)接口。该设备可以支持快速外围组件互连(pci)(pcie)规范、通用串行总线(usb)规范、串行ata(sata)规范或其任何组合。可以响应于链路退出电空闲状态而确定数据速率。另外,可以响应于确定数据速率而将用以确定数据速率的部件断电。

示例5

本文中描述了一种非暂时性计算机可读介质。该计算机可读介质包括用以指导处理器向物理层中构建数据速率检测器并将由数据速率检测器检测到的数据速率发送到介质访问控制层的代码。

数据速率检测器可以是物理层中的模拟电路。数据速率检测器可以包括边缘检测器和计时器。边缘检测器可以是电流型逻辑(cml)边缘检测器。另外,数据速率检测器可以包括线性均衡化组件。此外,所述计算机可读介质可以包括物理层与介质访问层之间的接口,并且其中,可以使用该接口将数据速率从物理层发送到介质访问层。接口可以是用于快速pci、sata的phy接口以及usb超高速架构(pipe)接口。可以根据快速外围组件互连(pci)(pcie)规范、通用串行总线(usb)规范、串行ata(sata)规范或其任何组合来发送数据。可选地,可以响应于链路退出电空闲状态而确定数据速率。可以响应于确定数据速率而将数据速率检测器断电。

虽然已经关于有限数量的实施例描述了本发明,但是本领域技术人员将认识到从这些实施例的许多修改和变化。所意图的是,所附权利要求涵盖落入本发明的真实精神和范围内的所有这些修改和变化。

设计可以经历从创建到模拟到制造的各个阶段。表示设计的数据可以以多种方式来表示设计。首先,如在模拟中有用的,可以使用硬件描述语言或其它功能描述语言来表示硬件。此外,可以在设计过程的某些阶段产生具有逻辑门和/或晶体管门的电路级模型。而且,大多数设计在某些阶段达到表示硬件模型中各种装置的物理放置的数据级别。在使用常规半导体制造技术的情况下,表示硬件模型的数据可以是指定用于生产集成电路的掩模的不同掩模层上存在或不存在各种特征的数据。在设计的任何表示中,可以以任何形式的机器可读介质来存储数据。诸如盘的磁储存器或光学储存器或者存储器可以是机器可读介质,其用以存储通过光波或电波传送的信息,该光波或电波被调制或以其它方式生成以传送此类信息。当传送指示或携带代码或设计的电载波时,就执行电信号的复制、缓冲或重传而言,制作新的副本。因此,通信提供商或网络提供商可以至少暂时性地在有形的机器可读介质上存储制品(诸如编码到载波中的信息),从而体现本发明实施例的技术。

本文所使用的模块是指硬件、软件和/或固件的任何组合。作为示例,模块包括与非暂时性介质相关联的诸如微控制器的硬件,以存储适于由微控制器执行的代码。因此,在一个实施例中,对模块的参考是指硬件,其被特别地配置为识别和/或执行要在非暂时性介质上保持的代码。此外,在另一个实施例中,模块的使用是指包括代码的非暂时性介质,该代码特别适于由微控制器执行以实行预定操作。并且如可以推断的,在又一个实施例中,术语模块(在该示例中)可以指微控制器和非暂时性介质的组合。常常分开说明的模块边界通常发生变化并且潜在地重叠。例如,第一和第二模块可以共享硬件、软件、固件或其组合,同时潜在地保留一些独立的硬件、软件或固件。在一个实施例中,术语逻辑的使用包括硬件,诸如晶体管、寄存器或其它硬件,诸如可编程逻辑装置。

在一个实施例中,短语“用以”或“被配置成”的使用是指对设备、硬件、逻辑或元件进行布置、放在一起、制造、提供销售、导入和/或设计,以执行指定或确定的任务。在该示例中,如果未正进行操作的设备或其元件被设计、耦合和/或互连以执行指定任务,那么该设备或其元件仍被“配置成”执行所述指定任务。作为纯粹的例证性示例,逻辑门可以在操作期间提供0或1。但是,“被配置成”向时钟提供使能信号的逻辑门不包括可提供1或0的每个潜在逻辑门。相反,逻辑门是以某种方式耦合的门,使得在操作期间,1或0输出将启用时钟。再次注意,术语“被配置成”的使用不需要操作,而是着重于设备、硬件和/或元件的潜在状态,其中在该潜在状态下,设备、硬件和/或元件被设计为在设备、硬件和/或元件正进行操作时执行特定任务。

此外,在一个实施例中,短语“能够……”和/或“可操作用于”的使用是指一些设备、逻辑、硬件和/或元件以这样的方式设计为使得能够以指定方式使用该设备、逻辑、硬件和/或元件。注意,如上所述,在一个实施例中使用“用以”、“能够”或“可操作为”指的是设备、逻辑、硬件和/或元件的潜在状态,其中该设备、逻辑、硬件和/或元件并非正进行操作,而是以这样的方式被设计为使得能够以指定的方式使用该设备。

如本文所使用的,值包括数字、状态、逻辑状态或二进制逻辑状态的任何已知表示。通常,逻辑电平、逻辑值或逻辑的值的使用也指的是1和0,这简单地表示二进制逻辑状态。例如,1指代高逻辑电平,并且0指代低逻辑电平。在一个实施例中,诸如晶体管或闪存单元的存储单元可以能够保持单个逻辑值或多个逻辑值。然而,已经使用了计算机系统中的值的其它表示。例如,十进制数“十”也可以表示为二进制值1010和十六进制字母a。因此,值包括能够被保持在计算机系统中的信息的任何表示。

此外,状态可以由值或值的部分来表示。作为示例,第一值(诸如逻辑1)可以表示默认或初始状态,而第二值(诸如逻辑0)可以表示非默认状态。此外,在一个实施例中,术语重置和设置分别指代默认值或状态和更新值或状态。例如,默认值潜在地包括高逻辑值(即重置),而更新值潜在地包括低逻辑值,即设置。注意,值的任何组合可以用于表示任何数量的状态。

某些实施例可以用硬件、固件以及软件中的一个或其组合来实现。上文阐述的方法、硬件、软件、固件或代码的实施例可以经由可被处理元件执行的存储在机器可访问、机器可读、计算机可访问或计算机可读介质上的指令或代码来实现。非暂时性机器可访问/可读介质包括以可被机器(诸如计算机或电子系统)读取的形式提供(即,存储和/或发送)信息的任何机构。例如,非暂时性机器可访问介质包括随机存取存储器(ram),诸如静态ram(sram)或动态ram(dram);rom;磁性或光学存储介质;闪存装置;电学存储装置;光学存储装置;声学存储装置;用于保持从暂时性(传播)信号(例如,载波、红外信号、数字信号)接收到的信息的其它形式的存储装置等,其将被与可以从其接收信息的非暂时性介质区别开。

用来对逻辑进行编程以执行本发明的实施例的指令可以被存储在系统的存储器(诸如dram、高速缓存器、闪存或其它储存器)内。此外,可以经由网络或者经由其它计算机可读介质来分发指令。因此,机器可读介质可以包括用于以可被机器(例如,计算机)读取的形式存储或发送信息的任何机构,但不限于软盘、光盘、紧凑盘只读存储器(cd-rom)以及磁光盘、只读存储器(rom)、随机存取储器(ram)、可擦可编程只读存储器(eprom)、电可擦可编程只读存储器(eeprom)、磁卡或光卡、闪存或者在经由电学、光学、声学或其它形式的传播信号(例如,载波、红外信号、数字信号等)通过互联网来传输信息中使用的有形的机器可读储存器。因此,计算机可读介质包括适合于以可被机器(例如,计算机)读取的形式存储或发送电子指令或信息的任何类型的有形机器可读介质。

遍及本说明书的对“一个实施例”或“实施例”的参考意指结合该实施例所述的特定特征、结构或特性被包括在本发明的至少一个实施例中。因此,短语“在一个实施例中”或“在实施例中”在遍及本说明书的各种位置上的出现不一定全部参考同一实施例。此外,可以用任何适当方式在一个或多个实施例中将特定特征、结构或特性组合。并非在本文中描述和图示出的所有组件、特征、结构、特性等都需要被包括在特定的一个或多个实施例中。如果例如本说明书叙述“可以”、“可能”、“能够”或“能”包括组件、特征、结构或特性的情况下,不必须包括该特定组件、特征、结构或特性。如果本说明书或权利要求提及“一”或“一个”元件,其并不意味着仅存在一个该元件。如果本说明书或权利要求提及“附加”元件,其并不排除存在超过一个的该附加元件。

在前文的说明书中,已参考特定示例性实施例给出了详细描述。然而,将显而易见的是可以对其进行各种修改和变更而不脱离如在所附权利要求中阐述的本发明的更宽泛范围和精神。因此,应在例证性意义而不是限制性意义上考虑本说明书和附图。此外,实施例和其它示例性语言的前文使用不一定指代同一实施例或同一示例,而是可以指代不同且有区别的实施例以及潜在地同一实施例。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1