会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
首页 / 专利库 / 电脑零配件 / 数据接收器 / 用于器件的多协议多数据速率自动速度协商架构

用于器件的多协议多数据速率自动速度协商架构

阅读:65发布:2021-02-24

IPRDB可以提供用于器件的多协议多数据速率自动速度协商架构专利检索,专利查询,专利分析的服务。并且一种用于在本地设备中使用的接口包括:发射器部分,可编程地可配置成至少三个数据速率;接收器部分,可编程地可配置成该至少三个数据速率;以及自动速度协商模块,操作地连接到发射器部分和接收器部分以配置发射器部分和接收器部分以用于在单个数据速率与远程设备通信,该单个数据速率是该至少三个数据速率中的最佳可用数据速率。可以通过调整发射器数据路径宽度和接收器数据路径宽度、调整所述发射器数据路径和所述接收器数据路径的频率以及过采样来调整数据速率。可以启用或者禁用字节序列化或者去序列化以根据数据速率变更用于向/从本地设备的其余部分传送的数据的宽度。,下面是用于器件的多协议多数据速率自动速度协商架构专利的具体信息内容。

1.一种用于在本地设备中使用的接口,所述接口包括:发射器部分,可编程地可配置成至少三个数据速率;

接收器部分,可编程地可配置成所述至少三个数据速率;以及自动速度协商模块,操作地连接到所述发射器部分和所述接收器部分以配置所述发射器部分和所述接收器部分以用于在单个数据速率与远程设备通信,所述单个数据速率是所述至少三个数据速率中的最佳可用数据速率。

2.根据权利要求1所述的接口,其中所述自动速度协商模块通过以下操作中的至少一个操作将所述发射器部分和所述接收器部分配置成所述至少三个数据速率中的所述最佳可用数据速率:调整发射器数据路径宽度和接收器数据路径宽度;

调整所述发射器数据路径和所述接收器数据路径的频率;以及过采样。

3.根据权利要求2所述的接口,其中所述自动速度协商模块通过启用/禁用字节序列化/去序列化以变更用于向/从所述本地设备的除了所述接口之外的部分传送的数据宽度以来配置所述发射器部分和所述接收器部分。

4.根据权利要求1所述的接口,还包括用于相应数据速率范围的相应PCS模块,其中:所述自动速度协商模块通过选择所述相应PCS模块之一将所述发射器部分和所述接收器部分配置成所述至少三个数据速率中的所述最佳可用数据速率。

5.根据权利要求1所述的接口,其中所述自动速度协商模块响应于来自所述本地设备的另一部分的信号配置所述发射器部分和所述接收器部分。

6.根据权利要求5所述的接口,其中所述信号是误差信号,所述误差信号指示所述发射器部分和所述接收器部分中的至少一个部分中的数据误差。

7.根据权利要求5所述的接口,其中:

所述自动速度协商模块包括用于监视所述接收器部分中的数据的误码率监视器;并且所述本地设备的所述另一部分从所述误码率监视器接收输出并且基于所述输出生成所述信号。

8.根据权利要求5所述的接口,其中:

在配置所述发射器部分和所述接收器部分期间三态化所述发射器部分达预定持续时间;并且所述自动速度协商模块包括用于对所述预定持续时间计时的计时器。

9.根据权利要求1所述的接口,其中所述自动速度协商模块监视所述接收器部分并且响应于所述监视的结果配置所述发射器部分和所述接收器部分。

10.根据权利要求9所述的接口,其中:

所述自动速度协商模块包括用于监视所述接收器部分中的数据的误码率监视器;并且所述自动速度协商模块响应于来自所述误码率监视器的信号配置所述发射器部分和所述接收器部分。

11.根据权利要求9所述的接口,其中:

所述自动速度协商模块监视所述接收器部分中的所述数据中的定界符图案的出现;并且所述自动速度协商模块响应于所述定界符图案的所述出现来配置所述发射器部分和所述接收器部分。

12.根据权利要求11所述的接口,其中所述自动速度协商模块包括:图案生成器,用于生成所述定界符图案;以及

比较器,用于比较所述接收器部分中的数据与所述定界符图案。

13.根据权利要求9所述的接口,其中所述自动速度协商模块包括用于在接收所述信号之后延迟配置所述发射器部分和接收器部分的计时器。

14.根据权利要求1所述的接口,其中:

所述自动速度协商模块包括用于生成定界符图案的图案生成器;并且所述自动速度协商模块在配置所述发射器部分和所述接收器部分之前向所述发射器部分中的数据中插入所述定界符图案。

15.一种用于协商集成电路器件接口中的数据速率的方法,所述方法包括:监视所述接口中的(a)速率改变信号,以及(b)速率改变引发定界符图案之一的出现;

在检测到所述速率改变信号时,传输所述速率改变引发定界符图案,并且等待接收速率改变确认定界符图案;并且在检测到所述速率改变引发定界符图案时,传输所述速率改变确认定界符图案;

在出现(a)接收,以及(b)传输所述速率改变确认定界符图案之一时,通过以下操作中的至少一个操作来改变所述数据速率:调整发射器数据路径频率和接收器数据路径频率;以及过采样。

16.根据权利要求15所述的方法,还包括启用/禁用字节序列化/去序列化以变更用于向/从除了所述接口之外的集成电路部分传送的数据宽度。

17.根据权利要求15所述的方法,其中所述改变所述数据速率还包括调整发射器数据路径宽度和接收器数据路径宽度。

18.根据权利要求15所述的方法,其中所述改变所述数据速率还包括选择多个相应PCS模块之一。

19.根据权利要求15所述的方法,还包括:在所述出现(a)接收和(b)发送所述速率改变确认定界符图案之一之后,并且在所述改变所述数据速率之前,等待预定时间间隔流逝。

20.根据权利要求15所述的方法,其中所述监视速率改变信号的出现包括监视来自所述集成电路器件的在所述接口以外的部分的速率改变信号。

21.根据权利要求15所述的方法,其中所述监视速率改变信号的出现包括监视来自所述接口的部件的速率改变信号。

22.根据权利要求21所述的方法,其中所述监视速率改变信号的出现包括监视来自所述接口中的误码率监视器的速率改变信号。

说明书全文

用于器件的多协议多数据速率自动速度协商架构

技术领域

[0001] 本发明涉及一种可以在不同数据速率操作的尤其在可编程集成电路器件(比如可编程逻辑器件(PLD))中的高速串行接口。

背景技术

[0002] 可编程器件并入高速串行接口以适应高速(即,大于1Gbps)串行I/O标准已经变得常见。
[0003] 这样的标准的早期示例是XAUI(扩展附着单元接口)标准。例如,根据XAUI标准,高速串行接口包括称为“四工(quad)”的收发器组,每组包括四个收发器和一些中央逻辑。
[0004] 在一个实现方式中,每个收发器划分成与外界设备通信的物理介质附着(PMA)部分或者模块,以及执行用于向那些外界设备发送的或者从那些外界设备接收的数据的串行处理的物理编码子层(PCS)部分或者模块。
[0005] 即使当在相同标准之下操作时,特定串行接口仍然可以例如根据线路条件在不同速度操作。因此,已知串行接口的PCS与它的对应方协商将支持在两端的可靠传输和接收的最高速度。原先,在可编程器件实现方式中,在串行接口本身以外用软件或者用可编程器件的可编程逻辑芯实现这样的协商。
[0006] 更后期的串行协议(比如PCI快速2代(“PCIe2”)、3Gbps光纤信道(“4GFC”)和8Gbps光纤信道(“8GFC”))具有更短速度协商窗口。那些窗口一般对于相对慢的软件或者可编程逻辑而言太短。因而,第7,684,477号共同转让美国专利公开了描述的该类型的可以并入于可编程器件中的高速串行接口(该接口具有用于自动速度协商以选择两个数据速率之一的内置硬件模块)。
[0007] 更加新的串行协议(比如PCI快速3代(“PCIe gen 3”)和40/100千兆比特以太网)可能需要从三个数据速率之中选择。另外,此类协议可能要求速率协商在明显更慢的第四数据速率出现。

发明内容

[0008] 本发明提供描述的该类型的在可编程器件(比如PLD)中的高速串行接口(该接口具有用于自动速度协商的内置硬件模块)。自动速度协商优选地在器件可以与另一器件建立有效连接时的最高可能速度在有限时间间隔内收敛以最大化性能。优选地,器件可以在最高或者最低可能数据速率开始并且分别向下或者向上步进以向由两个设备及其互连机制可靠支持的最高速度收敛。
[0009] 当器件在高数据速率开始并且向下步进时,在每个步进校验连接。如果在特定步-15 -12 15进未超过最大可接受误码率(例如,在约10 与约10 之间——即在10 位中的约一个
12
误差与10 位中的约一个误差之间),则数据速率保持不变。如果在特定步进超过最大可接受误码率,则再次向下步进数据速率。这继续直至达到未超过到最大可接受误码率时的数据速率。
[0010] 当器件在低数据速率开始并且向上步进时,也在每个步进校验连接。然而,由于从更低数据速率接近每个步进,所以在特定步进尚未超过最大可接受误码率的事实并非已经达到最大可能数据速率的确证。因此,只要尚未超过最大可接受误码率,就(根据协议)由另一步进增加数据速率,直至达到超过最大可接受误码率时的数据速率。这是数据速率已经变成太高的指示,并且因而如上文在器件从高开始的情况下那样,按步进减少数据速率直至达到未超过最大可接受误码率时的数据速率。由于已经从更低数据速率增加数据速率直至超过最大可接受误码率,所以通常一旦数据速率的减少已经开始,除非条件已经在过渡期间改变,否则数据速率就将必须被减少仅一个步进。
[0011] 根据特定实现方式,在实现速率改变之前,可以向数据流中插入定界符图案以让另一器件知道速率改变即将到来。可以交换其它参数以指示速率改变的方向和量值。
[0012] 在一个优选实施例中,一旦通过刚刚描述的方法之一建立了初始最佳数据速率,如果误码率超过最大可接受值,数据速率就将减少。然而,优选地,也存在用于提高数据速率的定期尝试。
[0013] 根据本发明,通过优选地在收发器的PCS部分中提供硬件以执行协商过程的至少部分来加速自动协商过程。在一个优选实施例中,每个信道——即每个PCS发射器/接收器对——存在一个这样的硬件模块,并且另一这样的硬件模块用于每组绑定信道(例如,用于上文描述的“四工”之一,或者用于任何数目的信道的绑定)
[0014] 如下文讨论的那样,在检测到数据速率改变要求时,自动速度协商模块改变信道速度或者数据速率。这可以用多种方式来实现。例如,可以改变信道中的数据路径的宽度,其中更宽数据路径允许更多数据流动,由此增加信道的数据速率,而更窄数据路径限制可以流动的数据量,从而减少信道的数据速率。备选地,可以通过改变或者缩放数据路径的操作频率来改变数据速率。作为另一备选,数据路径宽度调整与数据路径频率缩放的组合可以用来调整数据速率。作为又一备选,每个信道可以包括多个PCS模块(每个PCS模块与不同协议和数据速率范围相适),并且数据速率调整可以包括选择适合的PCS模块。
[0015] 在一个实施例中,可以从PCS以外提供数据速率改变要求的指示。例如,该指示可以完全在收发器以外由在器件上的别处(比如,如果器件是PLD则在可编程逻辑部分中)的逻辑发起。在另一实施例中,自动速度协商模块可以包括用于自行确定是否需要数据速率改变的电路。例如,模块可以包括用于监视接收的数据的误码率监视器(显然的是,由于太高的信道速度而产生的在传输的数据中的误差将仅在数据离开发射器之后才出现,从而使得此类误差将不可由收发器检测)。
[0016] 如上文所言,当数据速率改变即将到来时,讨论的协议可以要求向数据流中插入在实施数据速率改变之前必须用相似定界符图案应答的定界符图案。因此,在一个优选实施例中,自动速度协商模块优选地包括定界符图案生成器以允许它向传输路径中插入定界符图案。优选地,模块也包括定界符图案识别电路,该电路可以包括定界符图案生成器和比较器,该比较器比较接收路径中的数据与生成的定界符图案。
[0017] 因此,当使用需要用于数据速率改变的定界符图案的协议时,如果自动速度协商模块无论是由于它从PCS以外接收速率改变信号或者命令还是由于它自己的误码率监视器指示需要数据速率改变而发起数据速率改变,则它可以在传输的数据中插入速率改变定界符图案,该图案将由远程设备检测,从而使得远程设备可以相应地做出反应(例如,通过改变它自己的数据速率)。类似地,如果自动速度协商模块检测到接收的数据中的速率改变定界符图案,则它可以相应地做出反应(例如,通过改变它自己的数据速率)。
[0018] 在一些协议之下,在已经在每端传输和接收定界图案之后,数据速率改变同时出现于两端。这意味着如果在一端的接收器在该端的发射器已经发送它自己的定界图案之后接收定界图案,则数据速率改变过程可以在该端开始。它也将在另一端(该端将已经接收和发送了定界图案)开始。另一方面,如果在一端的接收器接收定界图案并且在该端的发射器尚未发送定界图案,则另一端发起针对数据速率改变的请求并且在一端的发射器必须在数据速率改变在该一端(该端将现在已经接收和传输了定界图案)开始之前向另一端发送回定界图案。在此类协议之下,在两端的发射器可以在速率改变时段期间被三态化持续预定持续时间。优选地,在PCS中提供计时器以对三态时段计时。
[0019] 某些协议可以包括自动协商过程本身在比信道速率本身低得多的数据速率出现这样的要求。例如,在40/100千兆比特以太网协议之下,将在156.25Mbps(这是在该协议之下的最低数据速率1.25Gbps的八分之一(以及中间速率3.125Gbps的二十分之一和最高速率10.3125Gbps的六十六分之一))实现自动协商阶段。为了适应这一低频信令要求,根据本发明的自动速度协商模块可以生成过采样使能信号。通过按照某一因子过采样每个数据脉冲,将按照该因子减少有效数据速率。因此,为了例如在40/100千兆比特以太网协议之下实现用于自动协商的前述156.25Mbps数据速率,可以将信道设置成1.25Gbps的数据速率并且继而按照因子八来过采样(即,将为每个数据脉冲发送八个相同数据脉冲,从而将数据速率有效减缓至它的实际值的八分之一)。
[0020] 因此,根据本发明,提供一种用于在本地设备中使用的接口。该接口包括:发射器部分,可编程地可配置成至少三个数据速率;接收器部分,可编程地可配置成该至少三个数据速率;以及自动速度协商模块,操作地连接到发射器部分和接收器部分以配置发射器部分和接收器部分以用于在单个数据速率与远程设备通信,该单个数据速率是该至少三个数据速率中的最佳可用数据速率。
[0021] 也提供一种在这样的可编程器件串行接口中协商和实现数据速率改变的方法。

附图说明

[0022] 在考虑与附图结合的下文具体描述时,本发明的上述和其它优点将变得明显,在附图中相似标号全篇指代相似部分,并且在附图中:
[0023] 图1是本发明可以运用于其中的可编程逻辑器件的一个优选实施例的框图;
[0024] 图2是本发明可以并入于其中的串行接口的示意图;
[0025] 图3是根据本发明的示例性自动速度协商模块的一个优选实施例的示意图;
[0026] 图4A和图4B(下文统称为图4)是图3的实施例的自动速度协商模块的操作的流程图;以及
[0027] 图5是根据本发明的运用可编程逻辑器件的例示性系统的简化框图,该可编程逻辑器件并入串行接口。

具体实施方式

[0028] 第7,684,477号共同转让美国专利描述一种并入硬件自动速度协商模块的高速串行接口,该模块允许在串行接口信道上的两个数据速率之间协商以及通过调整数据路径的宽度来调整数据速率。现在将参照图1-图4描述允许本发明,本发明允许在多个(即三个或者更多)数据速率之间协商以及不仅通过数据路径宽度调整而且还通过频率调整或者缩放来调整数据速率。
[0029] 在图1中示意地示出了的PLD 10是可编程器件的一个示例,该器件包括并入本发明的串行接口20。PLD 10具有可编程逻辑芯,该可编程逻辑芯包括可由可编程互连结构12访问的可编程逻辑区域11。如图1中所示,区域11和互连结构12的布局旨在于仅为示意,因为本领域普通技术人员已知或者可以创建许多实际布置。
[0030] PLD 10也包括多个其它输入/输出(“I/O”)区域13。I/O区域13优选地可编程从而允许选择多个可能I/O信令方案(这些方案可以包括差分和/或非差分信令方案)之一。备选地,I/O区域13可以是固定的(每个区域仅允许特定信令方案)。在一些实施例中,可以提供多个不同类型的固定的I/O区域13,从而使得尽管个别区域13不允许选择信令方案,但是PLD 10作为整体确实允许这样的选择。
[0031] 例如,如图2中所示,每个I/O区域20优选地是如上文描述的高速串行接口,优选地包括多个(例如,四个)信道21,但是仅示出了一个信道21。每个信道21包括它自己的PMA模块26,并且可以包括用于支持多个不同协议的多个不同PCS模块。在所示示例中,信道21包括三个不同PCS模块22、23、24,其中之一在data_path_select(数据_路径_选择)信号250的控制之下由复用器25连接到PMA模块26)。在这一示例中,PCS模块22是用于支持更慢协议(比如使用8B/10B编码的协议)的更低数据速率PCS。PCS模块23可以是能够支持使用128B/130B编码的PCIe Gen 3协议的PCIe Gen 3 PCS,并且优选地与PCI快速协议的更早几代向后兼容。PCS模块24可以是能够支持其它协议(比如使用64B/65B编码、64B/66B编码、64B/67B编码或者其它编码方案的协议)的更高数据速率PCS。
[0032] 中央逻辑27可以由多个(N个)信道21共享并且可以包括用于在所有信道21与相同协议一起使用的情形中使用的自动速度协商模块270。每个信道21优选地也具有它自己的用于在信道21与不同协议一起使用的情形中使用的自动速度协商模块271。优选地,自动速度协商模块271与自动速度协商模块270相同,但是这并非必需。
[0033] 在PCS模块22、23、24的与PMA模块26相反的末端,PCS模块22、23、24中的每个PCS模块可以连接到物理MAC调和子层(PHY/MAC)28或者与远程通信结构的其它连接。
[0034] 图3示出了根据本发明的自动速度协商可31的一个实施例31,该模块可以充当自动速度协商模块270、271之一或者两者。相对于PCS接收器部分350和PCS发射器部分351示出了自动速度协商模块31,但是自动速度协商模块31相对于任何PCS或者其部分的实际物理布置可以不同。
[0035] 自动速度协商模块31优选地包括速率改变信号生成器311、接收速率定界符生成器312、传输速率定界符生成器313、误码率监视器314(在模块31以外示出、是视为其部件)和自动速度协商控制器310。自动速度协商控制器310优选地包括接收速率定界符比较器315、接收速率定界符接收信号生成器316、传输速率定界符插入单元317、传输速率定界符传输信号生成器318和计时器319。
[0036] 由于在接收的数据中检测到过量误码率,或者由于设备的在收发器外部的根据相关协议操作的一些部分发出速率改变信号(升高或者下降),或者由于远程设备已经改变了它的数据速率(因为远程设备检测到过量误码率或者出于另一原因)并且在由PCS接收器部分350接收的数据中包括速率改变定界符图案,所以自动速度协商模块31可能需要改变数据速率。如果在接收的数据中检测到过量误码率,则它可以由误码率监视器314检测,该监视器经由线路300向器件逻辑或者经由线路301直接向速率改变信号生成器311发送指示。如果向器件逻辑发送指示,则器件逻辑将处理指示并且经由线路302向速率改变信号生成器311发送信号。无论那种方式,速率改变信号生成器311将生成速率改变信号320——该信号可以是速度改变信号或者过采样生成信号——并且向自动速度协商控制器
310发送该信号。
[0037] 自动速度协商控制器310继而将根据速率改变信号改变数据速率。根据速率改变信号的性质,改变数据速率的方法可以是(a)生成和发出信号,该信号使各种复用器选择分别具有减少或者增加串行数据速率的效果的更窄或者更宽数据路径;(b)指示器件上的PLL改变它的数据速率(或者选择具有不同数据速率的PLL);或者(c)使按照某一因子的过采样能够按照该因子减缓数据速率。此外,自动速度协商控制器310可以生成data_path_select(数据_路径_选择)信号250以选择PCS模块22、23、24中的与新数据速率相适的PCS模块。也可以根据新数据速率启用或者禁用字节序列化或者去序列化以变更数据的宽度以用于向和/或从可编程器件的其余部分传送。
[0038] 如上文讨论的那样,涉及到的协议可以在数据速率改变即将到来时预期或者至少允许在数据中插入速率改变定界符图案,从而使得远程设备可以预备数据速率改变。因此,在图3的实施例中,接收速率定界符生成器312和传输速率定界符生成器313生成那些定界符信号。由于将预期每个收发器能够与每个其它收发器通信,所以通常将预期接收速率定界符图案和传输速率定界符图案相同,从而使得一个定界符生成器应当是足够的。然而,可以存在接收速率定界符图案和传输速率定界符图案不同的情况,因而优选地,为了最大灵活性,提供接收速率定界符生成器312和传输速率定界符生成器313两者。
[0039] 因此,如果误差信号由误码率监视器314生成或者速率改变信号由器件逻辑生成,从而造成数据速率改变,则优选地在速率改变信号生成器311向自动速度协商控制器310发送所得速率改变命令时,它使传输速率定界符插入单元317指示传输速率定界符生成器313经由线路333向传输的数据流中插入传输速率定界符图案。
[0040] 此外,传输速率定界符插入单元317优选地使传输速率定界符传输信号生成器318向计时器19发送信号,该信号指示传输速率定界符图案已经被传输,从而使得计时器
19开始倒计时上文讨论的延迟时段(在该时段期间禁止数据传输(优选地通过三态化发射器)),而又发送适当控制信号以改变速率。
[0041] 类似地,如果接收定界符信号,则它可以在343由接收速率定界符比较器315检测,该比较器优选地连续比较在343的接收的数据与由接收速率定界符生成器312生成的定界符图案。接收速率定界符比较器315优选地使接收速率定界符接收信号生成器316向计时器19发送信号,该信号指示接收速率定界符图案已经被接收,从而使得计时器19开始倒计时上文讨论的延迟时段(在该时段期间禁止数据传输(优选地通过三态化发射器)),而又发送适当控制信号以改变速率。
[0042] 在一些协议之下,可以设想在信道上的速率可以改变之前,优选地,在引发改变的一端的接收器和在另一端的接收器两者必须发送和接收定界图案,并且继而优选地等待由计时器19计时的延迟时段流逝。因此,引发端优选地发送定界符图案并且接收定界符图案,并且继而优选地等待延迟时段流逝。类似地,非引发端优选地接收定界符图案并且发送定界符图案并且继而优选地等待由计时器19计时的延迟时段流逝。
[0043] 然而,可以存在其它协议或者操作模式,在这些协议或者操作模式之下,在本发明内的操作期间,计时器19是可选的。在此类实施例中,两端一旦已经发送和接收了定界符图案,速率就可以改变。类似地,可以存在其它协议或者操作模式,在这些协议或者操作模式之下,成对定界符信号的使用可以是可选的,并且引发端可以在传输定界符图案之后发起速率改变,继而延迟时段流逝(引发端将在传输定界符图案时开始对延迟计时,而非引发端将在接收定界符图案时开始对延迟计时)。甚至可设想在一些实施例中,引发端将在传输定界符图案之后立即改变它的速率,并且非引发端将在接收定界符图案时立即改变它的速率。
[0044] 图4示出了在其中可以增加或者减少数据速率并且定界符图案的使用是可选的一个实施例中的自动速度协商模块31的优选操作模式400。该过程始于步骤401,其中PCS上电并且被配置成由它被用于的应用所确定的初始数据速率。
[0045] 接着,在测试451,PCS(即,PCS的自动速度协商模块31)确定是否已经(例如,从软件或者从其它协议层)接收了对开始自动协商的请求。如果尚未接收到请求,则在452,监视继续直至已经接收了对开始自动协商的请求。对开始自动协商的任何请求可以指定自动协商将出现时的数据速率,并且一旦已经接收了自动协商请求,就在步骤453确定当前数据速率是否与自动协商将出现的任何指定数据速率匹配。
[0046] 如果当前数据速率未与自动协商将出现时的指定数据速率匹配,则在测试454确定自动协商将出现时的指定数据速率是否如此低以至于需要过采样。如果自动协商将出现时的指定数据速率如此低以至于需要过采样,则在步骤455启用过采样(例如,通过确立oversampling_enable(过采样_启用)信号351)并且自动速度协商模块31继续至步骤456。如果在测试454确定自动协商将出现时的指定数据速率未如此低以至于需要过采样,则略过步骤455并且自动速度协商方法继续至步骤456。
[0047] 如果在测试453确定当前数据速率与自动协商将出现时的任何指定数据速率匹配,则自动速度协商方法继续至步骤456。
[0048] 在步骤456,PHY/MAC 28和PCS 22/23/24与远程设备交换数据速率能力并且确定最高可行数据速率。在那时,在步骤457,完成自动协商握手。如果已经在步骤455启用了过采样,则禁用过采样(例如,通过去确立oversampling_enable(过采样_启用)信号351)。无论哪种方式,自动速度协商方法继续至步骤402,并且针对速率改变信号监视PHY/MAC接口28速率改变信号。在测试403,如果不存在速率改变信号,则该方法循环回到步骤
402直至在步骤403存在速率改变信号。
[0049] 一旦在测试403存在速率改变信号,则在步骤404,可选地传输定界符图案,在步骤405可选地等待接收定界符图案,并且继而在步骤406可选地等待延迟时段(计时器319)经过以允许PMA或者其它远程设备修改它自己的数据速率,此后,在步骤407,通过缩放数据宽度或者通过缩放频率或者时钟(例如,通过调整PLL或者选择不同PLL)来调整PCS数据速率。也可以调整其它有关参数(比如时钟复用器控制输入),并且旁路/启用所选PCS模块22/23/24内的块(例如,如在前述美国专利7,684,477中描述的那样)。此外,可以根据新数据速率启用或者禁用字节序列化或者去序列化以变更数据的宽度,以用于向/从可编程器件的其余部分传送。
[0050] 接着,在测试408,该方法测试以查看新数据速率是否高于先前数据速率——即,查看是否已经增加了数据速率。如果不是,则该方法返回到步骤451并且等待自动协商发起请求。如果在测试408已经增加了数据速率,则在步骤409和测试410,针对达到不可接受水平的误差率增加(在已经减少了数据速率时通常未考虑这一点)监视误码率监视器314,并且如果在预定间隔(该间隔可以随实现方式变化)之后无增加,则该方法返回到步骤402并且等待速率改变信号。如果在该间隔内存在达到不可接受水平的误码率增加,则在步骤411误码率监视器314本身可以引起生成速率改变信号。如果测试412确定在步骤
411尚未生成速率改变信号,则该方法返回到步骤402并且等待速率改变信号。如果测试
412确定在步骤411已经生成了速率改变信号,则该方法返回到步骤404以处理速率改变。
[0051] 因此可见已经提供一种具有硬件速度协商模块的串行接口,该接口允许响应于误差信号更快地处理数据速率改变。在每个信道的基础上实施这一特征优化系统性能,从而使每个个别信道在它自己的最高可靠数据速率工作。备选地,在绑定信道的情况下,可以共享自动协商模块。
[0052] 作为根据本发明的实施例的数据路径与频率缩放的组合示例,可以在125MHz(PCIe Gen 1)或者在250MHz(PCIe Gen 2)或者在500MHz(PCIe Gen 3)传输16×8位。作为另一示例,在PCIe Gen 1之下在250MHz传输的8×8位可以缩放成在PCIe Gen 2之下在500MHz的8×8位和在PCIe Gen 3之下在500MHz的16×8位。
[0053] 作为本发明的实施例中的字节去序列化的使用的示例,在PCIe Gen 3之下在250MHz传输的32×8位可以使用在PCS接口的字节去序列化来变成在PCIe Gen 2之下在250MHz的16×8位,或者使用在PCS接口的字节去序列化来变成在PCIe Gen 2之下在
125MHz的16×8位。在可编程器件中,这允许重用为更早几代开发的编程。
[0054] 并入根据本发明的接口20的PLD 10可以使用于许多种类的电子器件中。一种可能的使用是在图5中所示数据处理系统900中。数据处理系统900可以包括以下部件中的一个或者多个部件:处理器901;存储器902;I/O电路903;以及外围设备904。这些部件由系统总线905耦合在一起并且填充于终端用户系统907中包含的电路板906上。
[0055] 系统900可以使用于广泛多种应用(比如计算机联网、数据联网、仪表、视频处理、数字信号处理或者任何其它应用(在该应用中希望有使用可编程或者可重编程逻辑的优点))中。PLD 10可以用来执行多种不同逻辑功能。例如,PLD 10可以配置为与处理器901配合工作的处理器或者控制器。也可以使用PLD 10作为用于仲裁对系统900中的共享资源的访问的仲裁器。在又一示例中,PLD 10可以配置为在处理器901与系统900中的其它部件之一之间的接口。应当注意,系统900仅为示例性,并且本发明的真实范围和精神实质应当由所附权利要求指示。
[0056] 各种技术可以用来实施如上文描述的并且并入本发明的PLD 10。
[0057] 将理解,前文仅举例说明本发明的原理,并且各种修改可以由本领域技术人员做出而不脱离本发明的范围和精神实质,而且本发明仅由所附权利要求限制。
高效检索全球专利

IPRDB是专利检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,专利查询、专利分析

电话:13651749426

侵权分析

IPRDB的侵权分析产品是IPRDB结合多位一线专利维权律师和专利侵权分析师的智慧,开发出来的一款特色产品,也是市面上唯一一款帮助企业研发人员、科研工作者、专利律师、专利分析师快速定位侵权分析的产品,极大的减少了用户重复工作量,提升工作效率,降低无效或侵权分析的准入门槛。

立即试用