CN101946219B - 具有两个参考时钟的转接驱动器及其操作方法 - Google Patents

具有两个参考时钟的转接驱动器及其操作方法 Download PDF

Info

Publication number
CN101946219B
CN101946219B CN200880127260.8A CN200880127260A CN101946219B CN 101946219 B CN101946219 B CN 101946219B CN 200880127260 A CN200880127260 A CN 200880127260A CN 101946219 B CN101946219 B CN 101946219B
Authority
CN
China
Prior art keywords
inbound
clock
switching driver
elastic buffer
trip point
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.)
Expired - Fee Related
Application number
CN200880127260.8A
Other languages
English (en)
Other versions
CN101946219A (zh
Inventor
H·M·赖
C·K·赛德斯
P·V·布劳内尔
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.)
Hewlett Packard Enterprise Development LP
Original Assignee
Hewlett Packard Development Co LP
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of CN101946219A publication Critical patent/CN101946219A/zh
Application granted granted Critical
Publication of CN101946219B publication Critical patent/CN101946219B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor

Abstract

双参考时钟体系架构的转接驱动器包括入站弹性缓冲器和出站弹性缓冲器。传送到北桥和从北桥接收的数据使用公共参考时钟体系架构。传送到外部刀片和从外部刀片接收的数据使用分开的参考时钟体系架构。该入站弹性缓冲器包括入站弹性缓冲器恢复时钟域,入站弹性缓冲器公共参考时钟域,以及入站解码器/解扰器,入站扰码器/编码器,和入站线性移位寄存器。该出站弹性缓冲器包括出站弹性缓冲器公共参考时钟域,出站弹性缓冲器低抖动时钟域,以及出站解码器/解扰器,出站扰码器/编码器,和出站线性移位寄存器。

Description

具有两个参考时钟的转接驱动器及其操作方法
技术领域
技术领域是电子组件的定时方案。
背景技术
对于一些当前的服务器刀片,存储容量是有限的。可以用来增加具有这样的服务器刀片的系统的存储容量的一种体系架构涉及接近服务器刀片安装存储刀片。服务器刀片和存储刀片通过x4 PCI-Express(PCIe)链路进行通信。然而,和刀片一起使用的底板不支持公共参考时钟。此外,因为当前的x86时钟体系架构实施具有多个输出频率的低成本晶体加时钟(Crystal plus Clock)发生器,服务器以及服务器刀片系统上的时钟源趋于具有大的相位抖动。此外,大部分芯片供应商实施低成本的数字CDR(时钟数据恢复)电路,其在高相位抖动环境中可能不能正常工作。
由于在当前刀片体系架构上使用的分开的参考时钟(refclk),不能支持SSC(扩展频谱时钟控制,spread-spectrum-clocking)。任何使用扩展频谱时钟控制的这种尝试很可能将使得这些体系架构易于发生故障。
发明内容
公开了一种具有两个参考时钟的转接驱动器(redriver)。该转接驱动器将诸如存储刀片之类的外部部件耦合到诸如服务器刀片上的北桥或根复合体之类的集线器(hub)。转接驱动器包括入站弹性缓冲器,所述入站弹性缓冲器具有:用于转接驱动器和外部部件之间的入站弹性缓冲器接口的分开参考时钟;用于北桥和该转接驱动器之间的入站弹性缓冲器接口的公共参考时钟;以及入站解码器/解扰器、入站扰码器/编码器、和入站线性移位寄存器。该转接驱动器还包括出站弹性缓冲器,所述出站弹性缓冲器具有:用于转接驱动器和外部部件之间的出站弹性缓冲器接口的该分开参考时钟;用于北桥和转接驱动器之间的出站弹性缓冲器接口的该公共参考时钟;以及出站解码器/解扰器、出站扰码器/编码器、和出站线性移位寄存器。最后,转接驱动器包括耦合到该转接驱动器的外部部件侧和转接驱动器的北桥侧的时钟恢复逻辑。
还公开了一种使用多个非公共参考时钟的转接驱动器。该转接驱动器具有入站数据部分和出站数据部分。该转接驱动器包括:入站弹性缓冲器,其包括用于调整入站数据以补偿非公共参考时钟的装置;以及出站弹性缓冲器,其包括用于调整出站数据以补偿非公共参考时钟的装置。该转接驱动器还包括耦合到转接驱动器的第一侧的公共参考时钟、耦合到转接驱动器的第二侧的低抖动参考时钟、以及耦合到转接驱动器的第一和第二侧的时钟恢复逻辑。
附图说明
详细的描述将参考附图,在该附图中相同的数字指代相同的项,并且在该附图中:
图1A和1B说明多刀片体系架构的实施例;
图2说明在扩展频谱时钟控制的情况下所允许的频率变化;
图3说明使用两个参考时钟的多刀片体系架构的实施例;
图4说明双参考时钟转接驱动器体系架构的实施例;
图5说明对于快速恢复时钟而言与双参考时钟转接驱动器体系架构一起使用的弹性缓冲器操作的实施例;
图6说明对于慢恢复时钟而言弹性缓冲器操作的实施例;
图7-图9说明两个参考时钟体系架构的可替换应用;以及
图10是说明用于操作具有两个参考时钟的计算机系统部件的方法的实施例的流程图。
具体实施方式
如本文所使用的那样,计算机系统包含任意数量的体系架构,所述体系架构例如包括刀片服务器系统、刀片存储系统、笔记本计算机以及其插接站、PCI-Express扩展系统以及可使用不具有公共参考时钟的设备的任何其它计算系统。在图4和图7-9中提供了这种体系架构的示例。如本文所使用的那样,计算机还包含包括计算机系统的部件的部分或子集。如本文所使用的那样,参考时钟包括低级系统时钟、低抖动时钟以及嵌入在数据流中的时钟。如本文所使用的那样,信号调节器包括信号放大器、转接驱动器以及类似的设备。
像以高数据传输率操作的PCI Express之类的高速、串行差分协议的出现已经导致某些体系架构(尤其在有损传输应用中)中的信号完整性问题。信号调节器可以用于通过使用例如均衡化和预加强/去加强技术来调整并校正信号电平衰减和噪声(抖动),以使得接收端具有用高速信号协议(例如PCI Express)来递送低误比特率所需的裕度。一种这样的信号调节器是转接驱动器。
在同步数字系统(尤其是包含微处理器的那些系统)的设计中使用扩展频谱时钟控制,以便降低这些系统生成的电磁干扰(EMI)的频谱密度。同步数字系统是由时钟信号驱动的系统,因为其周期性质,该时钟信号具有不可避免的窄频谱。实际上,完美的时钟信号将使其所有能量集中在单个频率及其谐波处,并且因此将辐射具有无限谱密度的能量。实际的同步数字系统在于时钟频率及其谐波上扩展的若干窄带上辐射电磁能量,从而导致在某些频率处可能超过电磁干扰的调节限制的频谱。
为了避免这样的EMI发射问题,使用扩展频谱时钟控制来重新整形系统的电磁发射以符合电磁兼容性(EMC)规定。扩展频谱时钟控制分配能量以使得它落入大量的接收机的频带中,而不会将足够的能量放入任何一个频带中而超过规定的限制。然而,对于设计者来说,扩展频谱时钟控制可能产生挑战,因为修改系统时钟有时钟/数据未对准的风险。
通过缓慢地来回将系统时钟的频率调制少的量来实现扩展频谱时钟控制。PCI Express规范允许向下扩展频谱时钟控制,也就是说,可以以30Khz到33Khz范围的调制率将数据率从标称数据率频率调制+0%到-0.5%。参见图2。然而,PCI Express规范仍需要发射机和接收机时钟彼此处于+/-300ppm内,即使启用扩展频谱时钟控制也是如此。这样的需求在具有非公共参考时钟的系统中不能被保证。
PCI Express使用源同步定时体系架构。在源同步定时体系架构中,从始发设备的驱动器传送数据和时钟二者。接收设备恢复时钟以允许数据的同步。PCI Express使用这样的方案,其中使用IBM的8B/10B编码表将转发时钟嵌入到数据流中。这种编码机制确保数据流将具有足够数量的0到1以及1到0的转变以允许恢复时钟。这种机制消除了最小化时滞(skew)的需要,而是改为产生了双时钟域(domain)。也就是说,由于所允许的600ppm容限带,由PCI Express连接彼此连接的两个设备可以并且很有可能将以稍微不同的频率操作。
为了增加刀片式体系架构中的SAS存储容量,提供邻接任何C类服务器刀片安装的存储刀片产品。服务器刀片和存储刀片之间的通信是通过x4 PCI Express链路。在图1A和1B中分别示出两种可能的PCIExpress链路配置(直接的和间接的)。在图1A中,半高C类服务器刀片10耦合到存储刀片20。当PCI Express总线18经由连接16和26直接从服务器刀片10上的北桥(NB)14连接到存储刀片20上的SAS控制卡24时建立直接链路。还在卡10和20上分别示出了时钟12和22。注意,时钟12和22是非公共参考时钟,当启用扩展频谱时钟控制时该事实可以导致系统故障。
在图1B中,邻接存储刀片20安装全高C类服务器刀片30。C类服务器刀片30上的PCI Express总线38从北桥14连接到转接驱动器芯片32,并且然后从该转接驱动器芯片32连接到存储刀片20上的SAS控制卡24。转接驱动器芯片32的使用计及了由于PCI Express总线38较长的迹线长度而引起的附加信号损失。在夹层卡34上安放转接驱动器芯片32。两个刀片20和30分别使用非公共参考时钟22和12。
为了解决在服务器/存储刀片应用中由扩展频谱时钟控制造成的问题,本文所公开的体系架构提供了两个参考时钟。在图3中示出了这种体系架构的示例,其中存储刀片100联接(mate)到服务器刀片120。服务器刀片120可以是任何类型的服务器刀片,包括例如C类服务器刀片。存储刀片包括PCI Express卡24、连接器26和低抖动时钟110。低抖动时钟通常具有低于100ppm(百万分率)的相位抖动。相比之下,低成本时钟具有多于300ppm的相位抖动。利用低抖动时钟,不仅相位抖动低,而且低抖动时钟抗功率噪声调制,并且时钟频率非常稳定。注意,不使用公共参考时钟的任何刀片不能适应扩展频谱时钟控制。这是因为通常安装在PCI设备中的弹性缓冲器仅可以补偿恢复时钟和本地时钟之间的600ppm,并且因此不能与可以具有高达5600ppm时滞的扩展频谱时钟控制一起使用。
服务器刀片120包括北桥14、PCI Express链路130、连接器16、安放在卡150上的转接驱动器200、以及与该转接驱动器200的北桥侧耦合的时钟140。如图3所示,北桥14使用与转接驱动器200的北桥侧共用的参考时钟(时钟140)。虽然北桥14不具有可以调整排出(drain)率和填充率以便适应扩展频谱时钟控制的弹性缓冲器,但是转接驱动器200确实具有这样的弹性缓冲器,如将参考图4-6所讨论的那样。通过在转接驱动器200和北桥14之间使用公共参考时钟,可以将扩展频谱时钟控制的益处应用于北桥14。
耦合到转接驱动器200的存储刀片侧的是低抖动时钟210。该低抖动参考时钟210和低抖动参考时钟110具有相同的电路设计。因为上述体系架构,转接驱动器200利用两个时钟体系架构来操作,即公共参考时钟体系架构140和分开参考时钟体系架构210。这两个参考时钟体系架构的使用支持两个设备之间的时钟频率的(细微)差别,所述两个设备例如启用扩展频谱时钟控制的一个设备(例如北桥14)和利用正常的时钟进行时钟控制的另一个设备(例如存储刀片100);或者每一个都用扩展频谱时钟控制而进行时钟控制的两个设备。
如上面提到的那样,在同步定时体系架构中,公共时钟源向总线上的所有设备供应时钟,并且该时钟用于使得设备的收发机能够为进出的数据计时(clock data in and out)。该体系架构要求时钟正好同时到达每个设备。然而,允许少量的管脚到管脚时滞,这意味着时钟迹线的长度必须匹配以最小化设备之间的时滞。随着时钟速度的增加,所允许的管脚到管脚时滞降低了,这使得时钟迹线的匹配路由更难以实现。
通过使用两个参考时钟体系架构(即公共参考时钟体系架构和分开参考时钟体系架构),对于要流经转接驱动器200的数据,该数据将必须穿过公共参考时钟和分开参考时钟之间的边界。在图3中由平分转接驱动器200的虚线象征性地指示该边界。为了越过(transition)该边界,转接驱动器200包括在其入站和出站侧的弹性缓冲器。通过使用一个时钟体系架构来将所接收到的数据存放在弹性缓冲器中并且使用另一个时钟体系架构来从该弹性缓冲器取出该数据来实现对该边界的桥接。因为这两个参考时钟可以以细微不同的频率运行,并且可以为北桥14启用扩展频谱时钟控制,所以弹性缓冲器可能经历上溢或下溢错误状态。为了消除这些错误,弹性缓冲器的填充率和排出率可以被调整。一种用于调整填充率和排出率的方式涉及在PCI Express体系架构中使用的特殊符号的添加或移除。这些符号被称为SKP符号,并且可在SKP有序集中找到。SKP有序集被用来维持发射机和接收机之间的同步,并且防止上溢或下溢错误状态。接收机可以丢弃SKP字符。SKP有序集包括单个COM符号接着是三个SKP符号。随后将讨论用于调整填充率和排出率的其它方式。
从两个设备之间所允许的最大频率容限(即600ppm)导出传送SKP有序集合的速率。在该水平下,这两个设备的本地时钟每1666个周期移位一个时钟周期。因此,发射机必须将SKP有序集合调度成比每1666个时钟周期更频繁地发送。PCI Express规范将SKP有序集合传输之间的周期限定成处于1180个符号时间和1538个符号时间之间。在接收到SKP有序集合后,弹性缓冲器可以插入或移除SKP符号以补偿两个时钟域之间的频率差。
图4更详细地说明具有两个参考时钟的转接驱动器。在图4中,示出耦合存储刀片100和北桥14的转接驱动器200。然而,该转接驱动器200可以用于其它应用中,例如包括耦合任何两个刀片类型。转接驱动器200包括通过其将数据从存储刀片100传送到北桥14的入站弹性缓冲器220以及通过其传送来自北桥14的数据的出站弹性缓冲器240。如可以从图4中看到的那样,包括入站和出站弹性缓冲器220/240的转接驱动器200的北桥侧使用公共参考时钟140。该公共参考时钟140可以将扩展频谱时钟控制启用。转接驱动器200的存储刀片侧使用分开的低抖动时钟210。该低抖动参考时钟210不使用扩展频谱时钟控制。存储刀片100还使用分开的低抖动参考时钟110,其也不允许扩展频谱时钟控制。参考时钟110、140和210具有标准的100MHz时钟源,其被用作锁相环(PPL)的输入以生成用于内部逻辑和CDR(时钟数据恢复)的较高频率时钟。例如,PLL 145可以将100MHz时钟转换成2.5GHz。
来自存储刀片100的数据160以标称2.5GHz进入入站弹性缓冲器220,并且退出入站弹性缓冲器220的数据165以标称2.5GHz退出。类似地,数据170以标称2.5GHz进入出站弹性缓冲器240,并且数据175以标称2.5GHz退出出站弹性缓冲器240。入站数据160具有由时钟恢复电路216恢复的嵌入时钟。时钟恢复电路216使用本地时钟B信号215,基于低抖动参考时钟210从PLL 212的输出导出所述本地时钟B信号215。本地时钟B信号215还用于对从出站弹性缓冲器240出来的数据计时。出站数据170具有由时钟恢复电路141恢复的嵌入时钟。时钟恢复电路141使用本地时钟A信号145,基于公共参考时钟从PLL 142的输出导出所述本地时钟A信号145。本地时钟A信号145还用于对从入站弹性缓冲器220出来的数据计时。
因为存储刀片100不使用扩展频谱时钟控制而北桥14确实使用扩展频谱时钟控制(当被启用时),所以入站数据160将总是处于比入站数据165更快的时钟。相反,出站数据170将总是处于比出站数据175更慢的时钟。发射机(TX)和接收机(RX)之间的时钟频率差可以多达5600ppm。为了适应这些时钟差,入站弹性缓冲器220和出站弹性缓冲器240必须能够使用当前PCI Express弹性缓冲器不可用的步骤来调整它们的填充率和排出率。
注意,在其中使用转接驱动器200来耦合常见类型的存储刀片的应用中,扩展频谱时钟控制的使用可以引起附加的时钟差。在图7中示出这样的体系架构。
图5说明对于快速恢复时钟来说与图4的转接驱动器200一起使用的弹性缓冲器操作的实施例。弹性缓冲器220接收入站数据流并且提供经过修改的入站数据流。弹性缓冲器220可以被操作为使得它通常是半满的,或正好低于跳变点(trip point)A。对于快速恢复时钟的情况,当弹性缓冲器内容到达跳变点A,因为弹性缓冲器220位于中间点并且因此不能改变SKP有序集合,所以在PCI Express链路处于活动状态的情况下(即在该链路已被加电并且经过了链路训练状态的情况下)该弹性缓冲器220内的缓冲器逻辑首先从入站数据流移除空闲数据。如果PCI Express链路处于训练状态,则缓冲器逻辑将移除整个训练有序集合。注意,在重置之后在所有PCI Express链路上自动出现链路训练,而不需要软件介入。大多数链路训练状态涉及16-符号训练有序集合的传输。每个部件的接收机使用该集合来获得比特锁定、符号锁定和通道至通道时滞。这些集合的交换有助于在链路的每一端的部件协商链路号、通道号、数据率等等。当完成训练时,链路进入其中可以交换事务层分组(TLP)的活动状态。如果弹性缓冲器内容到达跳变点B,则缓冲器逻辑将从入站数据流移除所选择的数据链路层分组(DLLP)。PCI Express被设计成使得包含在每个DLLP中的信息也包含在后续相同类型的DLLP中,以使得在运送中被破坏或丢失的DLLP对链路性能具有最小的影响。然而,如果丢失相同类型的多个连续DLLP,则将出现性能降低(它可引起事务重放和/或禁止新事务的发布)。DLLP开始于未加扰的“SDP”成帧符号接着是DLLP类型字节。弹性缓冲器220内的缓冲器逻辑可以被设计成移除四个DLLP类型,具体为:应答、邮递性信用更新(Posted Credit Updates)、非邮递性信用更新(Non-posted Credit Updates)以及完成信用更新。本文所述的灵活缓冲器使用信号量(semaphore)来防止删除多个相同类型的DLLP。例如,快速恢复时钟可能使得缓冲器逻辑丢弃邮递性信用更新DLLP。当这发生时,内部邮递性信用更新信号量被设置成防止该逻辑丢弃另一个邮递性信用更新,直到(相同虚拟信道)的另一个邮递性信用更新通过为止。第二更新包含与先前分组相同数目的信用,外加它可能包含附加的信用。使第二分组通过移除了出站邮递性循环中的潜在瓶颈。最后,如果弹性缓冲器220的内容到达跳变点C,则缓冲器逻辑丢弃来自入站数据流的事务层分组(TLP)。缓冲器逻辑通过寻找TLP开始成帧符号(STP),并且丢弃每个符号直到它检测到END符号为止来完成此操作。这将使得发射机因为后续TLP的否定应答(Nak)或因为应答(Ack)超时而重放该TLP。移除的TLP的序列号被存储在本地寄存器中以与未来出站Ack分组相比。当出站Ack验证被丢弃的TLP已成功地重放时,TLP处置(disposal)逻辑在下一次弹性缓冲器填充超过跳变点C时重置其自身。这防止可能严重损害链路性能的过度TLP重放。
对于慢恢复时钟的情况,PCI Express规范要求将SKP符号添加到SKP有序集合。在图6中示出了这样的情景。在跳变点E处,与典型弹性缓冲器(例如与弹性缓冲器220的上游和下游部件相关联的弹性缓冲器)相关联的缓冲器逻辑将SKP符号添加到缓冲器内容。类似地,在跳变点E处,与弹性缓冲器220相关联的缓冲器逻辑将SKP有序集合添加到数据流。注意,因为转接驱动器200是中间缓冲器而不是链路上的最后接收机,所以转接驱动器200不能改变SKP有序集合的大小。然而,在某些情况下,即使添加SKP符号也不足以防止使弹性缓冲器220变空。当PCI Express链路处于活动状态时,PCI Express规范允许将逻辑空闲数据添加到数据流。相应地,在跳变点F处,由于该链路处于活动状态,缓冲器逻辑将空闲数据添加到退出弹性缓冲器220的数据流。
为了允许添加SKP有序集合并且减去DLLP和TLP,转接驱动器200包括典型的PCI Express部件,例如如在图6中示出的10/8b解码器221、解扰器222、线性反馈移位寄存器(LSFR)223、SKP/空闲插入模块225、扰码器226、8b/10b编码器227、以及出站线性反馈移位寄存器(LSFR)229。解码器221将10比特入站符号转变成8比特字节,并且解扰器222使用LSFR 223来将字节转变成未加扰的字节。这时,可以针对前面提到的成帧符号来分析数据流。注意,SKP有序集合未被添加到任何其它有序集合或分组的中间。在操纵数据流之后,扰码器226使用出站LFSR 229来再次对这些字节加扰,并且8b/10b编码器227将8比特字节转变回10比特符号。
图5和图6说明入站弹性缓冲器220的操作。入站弹性缓冲器220是双参考时钟弹性缓冲器体系架构。出站弹性缓冲器240也是双参考时钟体系架构的缓冲器,并且从所有相关方面来说用于防止出站弹性缓冲器240的上溢和下溢的体系架构和方法类似于可应用于入站弹性缓冲器220的体系架构和方法。
图7-9说明使用转接驱动器以确保经过多个连接和变化长度的迹线长度的信号连续性和保真度的计算机系统的实施例。
图10是说明用于操作诸如图3的计算机系统之类的具有双参考时钟体系架构的计算机系统的方法500的实施例的流程图。在图10中,从块501处开始,转接驱动器200接收入站数据流(从数据流是从存储刀片100发出的这个意义上来说是入站),该入站数据流具有恢复时钟。在块505中,与入站弹性缓冲器220相关联的缓冲器逻辑记录该恢复时钟。在块510处,入站弹性缓冲器220确定相对于系统时钟140来说该恢复时钟是否是快的。如果该恢复时钟是快的,则该方法500移动到块515,并且检查链路来了解该链路是否是活动的。如果该链路是活动的,方法500移动到块520。如果该链路是不活动的,则该方法500移动到块516以确定该链路是否处于“配置空闲”训练子状态。如果该链路不处于“配置空闲”,则在块518中,与缓冲器220相关联的缓冲器逻辑移除训练有序集合。如果该链路处于“配置空闲”子状态,则该方法500移动到块517并且与入站缓冲器220相关联的缓冲器逻辑从入站数据流移除空闲数据。这时,该逻辑将入站数据转发到NB(块560)。块517或518之后,方法500移动到块560。在块520中,与入站缓冲器220相关联的缓冲器逻辑确定该恢复时钟是否仍太快。如果该恢复时钟仍太快,则该方法500移动到块525,并且缓冲器逻辑移除DLLP符号并且设置相应的信号量。然后,该方法500移动到块530。在块530中,缓冲器逻辑再次确定该恢复时钟是否太快。如果该恢复时钟仍太快,则在块535中,缓冲器逻辑从数据流中移除TLP分组,并且设置TLP信号量。然后,该方法移动到块560。
返回到块530,如果恢复时钟不太快,则该方法500移动到块560。返回到块520,如果恢复时钟不太快,则该方法500移动到块560。
返回到块510,如果恢复时钟不太快,则该方法500移动到块540,并且与入站灵活缓冲器220相关联的缓冲器逻辑确定该恢复时钟是否太慢。如果该恢复时钟不太慢,则该方法移动到块560。如果该恢复时钟太慢,则该方法500移动到块545,并且检查链路来了解该链路是否是活动的。如果该链路是活动的,则该方法500移动到块546,并且将空闲数据添加到入站数据流。如果该链路不是活动的,则在块547中缓冲器逻辑将SKP符号添加到入站数据流。然后该方法移动到块550,并且缓冲器逻辑再次检查以了解恢复时钟是否太慢。如果该恢复时钟仍太慢,则该方法500移动到块555,并且缓冲器逻辑将空闲数据添加到入站数据流。然后该方法移动到块560,并且入站数据流被传送到北桥14。

Claims (20)

1.一种具有两个参考时钟的转接驱动器,该转接驱动器通过PCIExpress链路将外部部件耦合到集线器,所述转接驱动器包括:
入站弹性缓冲器,其包括:
用于所述转接驱动器和所述外部部件之间的入站弹性缓冲器接口的分开参考时钟,
用于所述集线器和所述转接驱动器之间的入站弹性缓冲器接口的公共参考时钟,以及
入站解码器/解扰器、入站扰码器/编码器、以及入站线性移位寄存器;
出站弹性缓冲器,其包括:
用于所述转接驱动器和所述外部部件之间的出站弹性缓冲器接口的所述分开参考时钟,
用于所述集线器和所述转接驱动器之间的出站弹性缓冲器接口的所述公共参考时钟,以及
出站解码器/解扰器、出站扰码器/编码器、以及出站线性移位寄存器;以及
耦合到所述转接驱动器的外部部件侧和所述转接驱动器的集线器侧的时钟恢复逻辑。
2.根据权利要求1所述的转接驱动器,其中所述入站弹性缓冲器还包括缓冲器逻辑和上溢跳变点,所述上溢跳变点包括:
第一上溢跳变点,其中当到达所述第一上溢跳变点并且链路处于不活动状态时,所述缓冲器逻辑从数据流移除空闲数据和整个训练集合之一;
第二上溢跳变点,其中当到达所述第二上溢跳变点时,所述缓冲器逻辑从所述数据流移除数据链路层分组DLLP分组;以及
第三上溢跳变点,其中当到达所述第三上溢跳变点时,所述缓冲器逻辑从所述数据流移除事务层分组。
3.根据权利要求2所述的转接驱动器,还包括DLLP信号量,其中当从所述数据流移除特定类型的DLLP分组时,所述缓冲器逻辑设置对应的DLLP信号量,由此防止进一步移除该类型的DLLP分组。
4.根据权利要求2所述的转接驱动器,还包括事务层分组信号量,其中当移除事务层分组时,设置事务层分组信号量。
5.根据权利要求4所述的转接驱动器,还包括存储所移除的事务层分组的序列号的本地寄存器,由此当所移除的事务层分组被还原时,从所述本地寄存器删除所存储的序列号并且重置事务层分组信号量。
6.根据权利要求2所述的转接驱动器,其中所述入站弹性缓冲器还包括:
第一下溢跳变点,其中当到达所述第一下溢跳变点时,所述缓冲器逻辑将SKP符号添加到退出所述入站弹性缓冲器的数据流;以及
第二下溢跳变点,其中当到达所述第二下溢跳变点时,所述缓冲器逻辑将空闲数据添加到退出所述入站弹性缓冲器的数据流。
7.根据权利要求1所述的转接驱动器,其中所述出站弹性缓冲器还包括:
缓冲器逻辑;
上溢跳变点,其中当到达所述上溢跳变点时,所述缓冲器逻辑移除空闲数据、训练集合、数据链路层分组DLLP分组和事务层分组中的一个或多个;以及
下溢跳变点,其中当到达所述下溢跳变点时,所述缓冲器逻辑将SKP符号和空闲数据添加到退出所述出站弹性缓冲器的数据流。
8.根据权利要求1所述的转接驱动器,其中所述转接驱动器被安装在服务器刀片上,并且其中使用所述PCI Express链路将存储刀片耦合到所述服务器刀片。
9.根据权利要求1所述的转接驱动器,其中第一服务器刀片和第二服务器刀片二者分别安装有所述转接驱动器,并且其中使用所述PCIExpress链路将所述第二服务器刀片耦合到所述第一服务器刀片。
10.根据权利要求1所述的转接驱动器,其中所述分开参考时钟由100MHz低抖动时钟驱动。
11.根据权利要求1所述的转接驱动器,其中所述集线器是启用了扩展频谱时钟控制的北桥,并且其中所述外部部件是禁用了扩展频谱时钟控制的存储刀片。
12.一种使用两个参考时钟的转接驱动器,所述两个参考时钟包括公共参考时钟和分开的低抖动参考时钟,所述转接驱动器具有入站数据部分和出站数据部分,所述转接驱动器包括:
入站弹性缓冲器,其包括用于调整入站数据以补偿所述两个参考时钟的装置;
出站弹性缓冲器,其包括用于调整出站数据以补偿所述两个参考时钟的装置;
耦合到所述转接驱动器的第一侧的所述公共参考时钟;
耦合到所述转接驱动器的第二侧的所述分开的低抖动参考时钟;以及
耦合到所述转接驱动器的第一和第二侧的时钟恢复逻辑,其中耦合到所述转接驱动器的第一侧的时钟恢复逻辑使用所述公共参考时钟,并且耦合到所述转接驱动器的第二侧的时钟恢复逻辑使用所述分开的低抖动参考时钟。
13.根据权利要求12所述的转接驱动器,其中所述入站弹性缓冲器包括:
入站弹性缓冲器恢复时钟域;以及
入站弹性缓冲器公共参考时钟域。
14.根据权利要求13所述的转接驱动器,其中用于调整入站数据以补偿所述两个参考时钟的装置包括:
入站解码器/解扰器;
入站扰码器/编码器;以及
入站线性移位寄存器,所有都耦合到所述入站弹性缓冲器公共参考时钟域。
15.根据权利要求14所述的转接驱动器,其中用于调整入站数据以补偿所述两个参考时钟的装置还包括缓冲器逻辑和上溢跳变点,所述上溢跳变点包括:
第一上溢跳变点,其中当到达所述第一上溢跳变点时,所述缓冲器逻辑从入站数据流移除空闲数据和训练集合之一;
第二上溢跳变点,其中当到达所述第二上溢跳变点时,所述缓冲器逻辑从所述数据流移除数据链路层分组DLLP分组;以及
第三上溢跳变点,其中当到达所述第三上溢跳变点时,所述缓冲器逻辑从所述数据流移除事务层分组。
16.根据权利要求12所述的转接驱动器,其中所述出站弹性缓冲器包括:
出站弹性缓冲器公共参考时钟域;以及
出站弹性缓冲器低抖动参考时钟域。
17.根据权利要求16所述的转接驱动器,其中用于调整出站数据以补偿所述两个参考时钟的装置包括:
出站解码器/解扰器;
出站扰码器/编码器;以及
出站线性移位寄存器,所有都耦合到所述出站弹性缓冲器低抖动参考时钟域。
18.根据权利要求17所述的转接驱动器,其中用于调整出站数据以补偿所述两个参考时钟的装置包括:
缓冲器逻辑;
上溢跳变点,其中当到达所述上溢跳变点时,所述缓冲器逻辑移除空闲数据、数据链路层分组DLLP分组、和事务层分组中的一个或多个;以及
下溢跳变点,其中当到达所述下溢跳变点时,所述缓冲器逻辑将SKP符号和空闲数据添加到退出所述出站弹性缓冲器的数据流。
19.一种用于操作具有根据权利要求1所述的转接驱动器的计算机系统的方法,所述方法包括:
根据入站数据流恢复时钟;
将所恢复的时钟与系统时钟相比较;
如果所恢复的时钟太块:
则从所述入站数据流移除空闲数据和训练集合之一,以及如果所恢复的时钟仍太快,
则从所述入站数据流移除数据链路层分组DLLP分组,以及如果所恢复的时钟仍太快,
则从所述入站参考流移除事务层分组TLP分组;
如果所恢复的时钟太慢:
则将SKP符号添加到所述入站数据流,以及如果所恢复的时钟仍太慢,
则将空闲数据添加到所述入站数据流。
20.根据权利要求19所述的方法,还包括:
当移除所述DLLP分组时设置DLLP信号量;以及
当移除所述TLP分组时设置TLP信号量。
CN200880127260.8A 2008-02-20 2008-02-20 具有两个参考时钟的转接驱动器及其操作方法 Expired - Fee Related CN101946219B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2008/054399 WO2009105095A1 (en) 2008-02-20 2008-02-20 Redriver with two reference clocks and method of operation thereof

Publications (2)

Publication Number Publication Date
CN101946219A CN101946219A (zh) 2011-01-12
CN101946219B true CN101946219B (zh) 2013-03-20

Family

ID=40985813

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200880127260.8A Expired - Fee Related CN101946219B (zh) 2008-02-20 2008-02-20 具有两个参考时钟的转接驱动器及其操作方法

Country Status (6)

Country Link
US (1) US8166334B2 (zh)
EP (1) EP2255263B1 (zh)
JP (1) JP5138050B2 (zh)
KR (1) KR101419292B1 (zh)
CN (1) CN101946219B (zh)
WO (1) WO2009105095A1 (zh)

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5266164B2 (ja) * 2009-08-25 2013-08-21 ルネサスエレクトロニクス株式会社 データ受信装置
JP5426326B2 (ja) * 2009-11-09 2014-02-26 ルネサスエレクトロニクス株式会社 データ受信装置、データ受信方法、及びプログラム
TWI423007B (zh) * 2009-12-31 2014-01-11 Via Tech Inc 串列匯流排裝置以及其時脈差補償方法
JP5748320B2 (ja) * 2010-03-11 2015-07-15 株式会社リコー アダプタ、情報機器、情報システム及び通信方法
JP5764919B2 (ja) * 2010-12-16 2015-08-19 株式会社リコー 通信機器および通信システム
EP2365445B1 (en) 2010-03-11 2013-10-23 Ricoh Company, Ltd. Adapter and communication method
TW201142613A (en) * 2010-05-31 2011-12-01 Jmicron Technology Corp Timing aligning circuit and timing aligning method for aligning data transmitting timing of a plurality of lanes
US8666013B1 (en) 2011-03-22 2014-03-04 Altera Corporation Techniques for clock data recovery
US8645724B2 (en) * 2011-06-03 2014-02-04 Nxp B.V. Redriver circuits with power saving modes
WO2013001631A1 (ja) * 2011-06-29 2013-01-03 富士通株式会社 伝送装置、伝送回路、伝送システムおよび伝送装置の制御方法
WO2012119385A1 (zh) 2011-08-11 2012-09-13 华为技术有限公司 对pcie设备进行时间同步的方法、装置和系统
DE112012005991T5 (de) 2012-03-07 2015-01-29 Intel Corporation Skalierbare gemeinsame Referenztaktungsarchitektur unter Verwendung einer getrennten, einzigen Taktquelle für Blade- und Rack-Server
KR101876418B1 (ko) * 2012-04-05 2018-07-10 한국전자통신연구원 Pci 익스프레스 디스큐 장치 및 그 방법
JP5928192B2 (ja) * 2012-06-28 2016-06-01 株式会社ソシオネクスト ブリッジ回路
US20140036966A1 (en) * 2012-07-31 2014-02-06 Robert C. Elliott Varying rate of deletable bits for spread spectrum clocking
US9153198B2 (en) * 2012-09-25 2015-10-06 Ati Technologies Ulc Method and device for link over-training
US8879680B2 (en) * 2012-11-06 2014-11-04 Ati Technologies Ulc Adaptive clock mismatch compensation symbol insertion in signal transmissions
US9213355B2 (en) 2012-11-06 2015-12-15 Advanced Micro Devices, Inc. Selective insertion of clock mismatch compensation symbols in signal transmissions based on a receiver's compensation capability
US9223385B2 (en) * 2012-12-19 2015-12-29 Intel Corporation Re-driver power management
CN104063352B (zh) * 2013-03-20 2017-03-15 上海华虹集成电路有限责任公司 Pipe的弹性缓冲电路及其状态同步方法
US10237087B2 (en) * 2013-09-02 2019-03-19 Samsung Electronics Co., Ltd. Method for controlling transmission speed and electronic device thereof
DE112013007726T5 (de) * 2013-12-26 2017-02-02 Intel Corporation Verbesserungen eines Zwischenverbindungs-Retimers
KR102108380B1 (ko) 2014-02-04 2020-05-08 삼성전자주식회사 송신 데이터 오류를 복구하도록 작동하는 인터페이스 회로
CN104484011A (zh) * 2014-11-25 2015-04-01 上海高性能集成电路设计中心 一种分布控制双时钟异步发送、接收模块及fifo装置
US9946683B2 (en) * 2014-12-24 2018-04-17 Intel Corporation Reducing precision timing measurement uncertainty
US10248605B2 (en) * 2015-01-28 2019-04-02 Hewlett-Packard Development Company, L.P. Bidirectional lane routing
US9692589B2 (en) 2015-07-17 2017-06-27 Intel Corporation Redriver link testing
KR102507714B1 (ko) 2016-05-02 2023-03-09 삼성전자주식회사 SRIS를 지원하는 PCIe 장치
US10128985B2 (en) 2016-07-01 2018-11-13 International Business Machines Corporation ACK clock compensation for high-speed serial communication interfaces
US10491701B2 (en) * 2016-07-14 2019-11-26 Cisco Technology, Inc. Interconnect method for implementing scale-up servers
CN106848785A (zh) * 2016-12-28 2017-06-13 曙光信息产业(北京)有限公司 Pci‑e信号传输装置
US10789201B2 (en) * 2017-03-03 2020-09-29 Intel Corporation High performance interconnect
US10860449B2 (en) * 2017-03-31 2020-12-08 Intel Corporation Adjustable retimer buffer
US20180329855A1 (en) 2017-05-12 2018-11-15 Intel Corporation Alternate protocol negotiation in a high performance interconnect
US11249808B2 (en) 2017-08-22 2022-02-15 Intel Corporation Connecting accelerator resources using a switch
US11356236B2 (en) * 2019-05-16 2022-06-07 Texas Instruments Incorporated Bidirectional re-driver for half-duplex interfaces
KR102518285B1 (ko) 2021-04-05 2023-04-06 에스케이하이닉스 주식회사 PCIe 인터페이스 및 인터페이스 시스템
KR102519480B1 (ko) 2021-04-01 2023-04-10 에스케이하이닉스 주식회사 PCIe 장치 및 이를 포함하는 컴퓨팅 시스템
KR102415309B1 (ko) 2020-06-16 2022-07-01 에스케이하이닉스 주식회사 인터페이스 장치 및 그 동작 방법
US11546128B2 (en) 2020-06-16 2023-01-03 SK Hynix Inc. Device and computing system including the device
US11271656B1 (en) 2020-11-02 2022-03-08 Cisco Technology, Inc. Dispersing data rate to mitigate electromagnetic interference
US20220190919A1 (en) * 2020-11-02 2022-06-16 Cisco Technology, Inc. Dispersing data rate to mitigate electromagnetic interference
CN115794242B (zh) * 2023-02-08 2023-08-15 苏州浪潮智能科技有限公司 一种服务器展频方法、系统、电子设备及可读介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1466711A (zh) * 2000-08-11 2004-01-07 �Ƚ�΢װ�ù�˾ 多时钟系统中同步跳跃模式及初始化时钟转送接口的系统及方法
CN1552005A (zh) * 2001-07-09 2004-12-01 ����ɭ�绰�ɷ����޹�˾ 状态指示检测装置和方法
CN1957556A (zh) * 2004-05-24 2007-05-02 艾利森电话股份有限公司 确定第一与第二时钟域之间的时间差
CN101001199A (zh) * 2006-01-11 2007-07-18 中兴通讯股份有限公司 一种高速多位并行数据总线的数据处理方法
CN101036120A (zh) * 2004-11-29 2007-09-12 英特尔公司 频率和电压缩放架构

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06338138A (ja) * 1993-05-28 1994-12-06 Toshiba Corp 基準クロック発生装置及び基準クロック発生方法
US6055645A (en) 1996-12-30 2000-04-25 Intel Corporation Method and apparatus for providing a clock signal to a processor
JPH11150475A (ja) * 1997-11-14 1999-06-02 Toyo Commun Equip Co Ltd シンセサイザ
US6079027A (en) 1998-01-23 2000-06-20 Via Technologies, Inc. Computer chip set for computer mother board referencing various clock rates
US6154803A (en) * 1998-12-18 2000-11-28 Philips Semiconductors, Inc. Method and arrangement for passing data between a reference chip and an external bus
JP4335586B2 (ja) * 2003-06-11 2009-09-30 Necエレクトロニクス株式会社 クロックアンドデータリカバリ回路
JP2005252587A (ja) * 2004-03-03 2005-09-15 Seiko Epson Corp クロック整形器およびクロック整形器を用いた電子機器
JP4587798B2 (ja) * 2004-12-08 2010-11-24 ルネサスエレクトロニクス株式会社 スペクトラム拡散クロック発生装置
US7281077B2 (en) * 2005-04-06 2007-10-09 Qlogic, Corporation Elastic buffer module for PCI express devices
US7802031B2 (en) * 2005-05-18 2010-09-21 Qlogic, Corporation Method and system for high speed network application
JP2007109199A (ja) * 2005-09-15 2007-04-26 Seiko Epson Corp バッファ装置、、バッファ装置の制御方法、情報処理装置
US7478255B2 (en) * 2005-12-13 2009-01-13 Hewlett-Packard Development Company, L.P. Clock distribution in multi-cell computing systems
JP2007193633A (ja) * 2006-01-20 2007-08-02 Renesas Technology Corp インタフェース機能付きデバイス回路
US8867683B2 (en) 2006-01-27 2014-10-21 Ati Technologies Ulc Receiver and method for synchronizing and aligning serial streams

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1466711A (zh) * 2000-08-11 2004-01-07 �Ƚ�΢װ�ù�˾ 多时钟系统中同步跳跃模式及初始化时钟转送接口的系统及方法
CN1552005A (zh) * 2001-07-09 2004-12-01 ����ɭ�绰�ɷ����޹�˾ 状态指示检测装置和方法
CN1957556A (zh) * 2004-05-24 2007-05-02 艾利森电话股份有限公司 确定第一与第二时钟域之间的时间差
CN101036120A (zh) * 2004-11-29 2007-09-12 英特尔公司 频率和电压缩放架构
CN101001199A (zh) * 2006-01-11 2007-07-18 中兴通讯股份有限公司 一种高速多位并行数据总线的数据处理方法

Also Published As

Publication number Publication date
JP5138050B2 (ja) 2013-02-06
JP2011519077A (ja) 2011-06-30
US8166334B2 (en) 2012-04-24
EP2255263B1 (en) 2013-07-31
KR20100123836A (ko) 2010-11-25
EP2255263A1 (en) 2010-12-01
WO2009105095A1 (en) 2009-08-27
EP2255263A4 (en) 2011-08-31
CN101946219A (zh) 2011-01-12
US20100315135A1 (en) 2010-12-16
KR101419292B1 (ko) 2014-07-14

Similar Documents

Publication Publication Date Title
CN101946219B (zh) 具有两个参考时钟的转接驱动器及其操作方法
CN1902613B (zh) 为串行点到点链路通过非数据符号处理进行通道到通道的偏斜校正
US8867683B2 (en) Receiver and method for synchronizing and aligning serial streams
US7512201B2 (en) Multi-channel synchronization architecture
WO2001042936A2 (en) Transceiver with latency alignment circuitry
CN108733608B (zh) Usb链路桥接器
US20080147916A1 (en) Data synchronization method of data buffer device
US10671553B2 (en) Link width scaling across multiple retimer devices
US7894537B2 (en) Adaptive data alignment
CN102708086A (zh) 一种应用于usb3.0的弹性缓冲结构及方法
EP1845651B1 (en) Method and apparatus for controlling transmission frequency in serial advanced technology attachment
US20050286567A1 (en) Method and apparatus for periodically retraining a serial links interface
CN100561454C (zh) 接收器符号对准的方法、集成电路装置和系统
US8948192B2 (en) Data switch
US20020110212A1 (en) Dynamic phase aligning interface
US5974103A (en) Deterministic exchange of data between synchronised systems separated by a distance
US11818238B2 (en) Low overhead high bandwidth data transfer protocol
KR102518285B1 (ko) PCIe 인터페이스 및 인터페이스 시스템
JP5545146B2 (ja) シリアル通信システム
US7366207B1 (en) High speed elastic buffer with clock jitter tolerant design
US7212598B2 (en) Data buffer-controlled digital clock regenerator
US20230377618A1 (en) Circuit for synchronization for an interconnection protocol, controller and storage device
GX et al. Production Device Issues for Stratix IV GX Devices
GT et al. Production Device Issues for Stratix IV GT Devices
EP4SGX70 Production Devices for Stratix IV GX Devices

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20170120

Address after: Texas, USA

Patentee after: HEWLETT PACKARD ENTERPRISE DEVELOPMENT L.P.

Address before: Texas, USA

Patentee before: Hewlett-Packard Development Co.,L.P.

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130320

CF01 Termination of patent right due to non-payment of annual fee