欢迎光临小豌豆知识网!
当前位置:首页 > 电学技术 > 电通讯技术> 用于多通道端口的高精度时间戳记独创技术56251字

用于多通道端口的高精度时间戳记

2020-11-22 04:31:39

用于多通道端口的高精度时间戳记

  相关申请

  本申请涉及“TECHNOLOGIES FOR HIGH-PRECISION TIME STAMPING OF PACKETS”,发明人为Southworth等人,2017年4月7日提交,发表WO2018/186876 (P113218PCT)。

  本申请涉及“TECHNOLOGIES FOR TIME STAMPING WITH ERROR CORRECTION”,发明人为Landau等人,2018年3月30日提交,发表号US-2019-0044839-A1 (AA6166-US)。

  技术领域

  本文所述的各个示例涉及用于设置传送的或接收的分组的时间戳的技术。

  背景技术

  确定使用网络接口接收和传送分组所在的时间戳在许多应用中是重要的。例如,分组的传输时间和到达时间的确定可用来同步在传送与接收计算装置之间的日时计数器,这对时间敏感应用(例如某些无线通信协议)是必要的。

  但是,传送或接收分组时的时间戳可具有不精确性的若干来源。例如,分组可被加扰,从而要求在能够识别模式以用于时间戳记之前进行解扰,或者分组可在具有异步时钟(如与用于时间戳记的时钟相比)的域之间传递,这两种情况均可促成分组实际到达装置时在时间戳记中的不精确性。

  附图说明

  图1示出传送和接收系统的示例。

  图2A示出跨通道的可变延迟的示例。

  图2B示出解决多通道问题所采用的方式。

  图3示出帧起始定界符(SFD)的示例。

  图4示出系统的示例。

  图5示出系统的示例。

  图6示出系统的示例。

  图7示出多个通道传输和接收的示例。

  图8示出能够用来确定跨多个通道所传送和接收的接收分组的时间戳的系统的示例。

  图9A和图9B示出示例过程。

  图10示出系统。

  图11示出网络接口。

  图12示出交换机。

  图13示出数据中心的示例。

  具体实施方式

  对于接收的分组,可需要在物理网络接口接收分组时的高精确时间戳。在一些环境中,要求纳秒和亚纳秒时间戳记。纳秒精确时间戳允许网络定时应用(例如IEEE 1588应用)在接收节点处恢复频率和相位,其相对于大师级定时(grandmaster timing)是很精确的。例如,准确时间协议(PTP)是用来同步整个计算机网络的时钟的协议。例如,在金融交易和无线基站中需要纳秒精确时间戳准确度。例如,在5G蜂窝设计中,信号离开天线的准确时间能够用来使网络更有效,并且减少从一个天线到另一个天线的错误切换的机会。

  提供在多个通道上的聚合传输或接收速率(例如100Gbps(例如4个25Gbps通道)、50Gbps(例如2个25Gbps通道)和40Gbps(4个10Gbps通道))的多通道端口因为在许多链路上的对齐标志/码字插入而增加了取得期望的时间戳精度的附加复杂度。对于四个链路,为每个链路发送对齐标志。在100Gbps以太网情况下,对齐标志的数量能够达到在4个链路上为20,其中各自66位的20个对齐标志被重新映射到1280个位加上5位填充(pad),达到总共1285个位,这是五个257位块的相同长度。

  去偏斜缓冲器被用来使用对齐标志来支持并行通道上的对齐。与最长路径关联的通道被用作对通道进行对齐的参考。

  对于50Gbps和100Gbps的多通道以太网端口,使用里德-所罗门前向纠错(ReedSolomon Forward Error, RS-FEC)。但是,RS-FEC能够增加在传送和接收时间戳记路径二者中的大变化。时间戳记设计必须计及RS-FEC延迟变化和去偏斜变化,以便满足5G网络的精度等级。这在从ITU到IEEE 802.3(例如ITU SG15 LS72到IEEE 802.3以及ITU SG15LS226到IEEE 802.3)的协作中提到。

  例如,在处理采用RS-FEC的多通道以太网时的时间戳误差源包括:在多个并行链路上的对齐标志(AM)/码字标志(CWM)插入(在传送)和去除(在接收处);从66位块到257位块的FEC转码;具有最小可变性的去偏斜缓冲器对齐;以及伴随携带SFD的特定通道的固有误差。对于伴随携带SFD的特定通道的固有误差,甚至在去偏斜补偿之后,也存在与SFD通道关联的特定误差,例如PCS对齐误差和相位对齐误差,它们能够引起时间戳中多个纳秒不精确性。另外,跟踪SFD通道的误差能够改变(例如对4通道40Gbps,SFD能够出现于用于每个PTP分组的4个通道中的任何通道上)。

  各个实施例能够通过计及与各种信号操纵关联的延迟,来改进确定的时间戳的精度。各个实施例能够测量与去偏斜缓冲器关联的延迟,直到分组能够被解码找出帧起始定界符(SFD)的时刻出现为止,并且调整接收的分组的确定的时间戳来近似地计及延迟中的至少一些。各个实施例能够基于网络接口的时钟域与来自在传送分组的一部分的最后到达通道(LAL)上接收的信号的恢复时钟信号之间的相位偏移来调整时间戳。各个实施例能够进一步调整时间戳,以计及块中的SFD的位置。各个实施例能够进一步调整时间戳,以计及在并行输出多个块之后块中的SFD的位置。各个实施例能够进一步调整时间戳,以计及对于最后到达通道的通道延迟。

  结合网络接口的时钟域与恢复时钟信号之间的相位偏移的确定,各个实施例能够减少所使用的相位测量装置(例如测量SERDES时钟与时间戳记时钟之间的相位)的数量。例如,对于多通道网络接口,在已知应用中,使用每通道的相位测量装置,并且这些能够用完多个通道的大量硅面积。各个实施例规定单个相位测量装置和使用最慢通道(例如最后到达通道(LAL))来进行相位测量。这能够将用于四个通道的相位测量装置的数量减少4倍,但是还允许单通道和多通道网络接口的实现无缝。

  图1示出如802.3-2018第90.4.1.1条款所定义的传送和接收时间戳记点。在接收侧,IEEE 802.3-1028陈述在介质无关接口(MII)处测量时间戳。在xMII处测量时间戳之前,物理层接口(PHY)具有自动协商层(AN)、物理介质相关(PMD)层、物理介质附连(PMA)层、RS-FEC层、物理编码子层(PCS)。相应地,在确定接收时间戳中可计及来自PHY的许多层的延迟。

  图2A示出跨通道的可变延迟的示例。该示例从ITU SG15 LS226到IEEE 802.3被再现。在这个示例中,四个通道被用来传送分组的部分。在传送处对齐块。但是由于每个通道遭遇不同延迟,所以块能够在不同时间到达接收器。去偏斜缓冲器在接收器处用来重新对齐块。

  图2B示出解决多通道问题所采用的方式。跨全部通道的最大物理介质延迟用作每一个通道的物理介质延迟。具有较小物理介质延迟的通道的去偏斜延迟被重新分配给通道的对应物理介质延迟。结果是全部通道具有相等物理介质延迟,并且其中时间戳事件将同时发生。在这个示例中,最后到达通道是底部倒数第二个。标志被用来对齐通道以及何时从通道上接收的内容来重新组装分组。

  要注意,时间戳记在并行通道上而不是在并行通道的串行化版本上进行。到达时间戳测量平面是在去偏斜之后,其中已经对齐全部通道。但是,因为参考平面处于介质相关接口(MDI),所以MDI与时间戳测量平面之间的延迟(入口延迟)(所述延迟可以是实现相关的)可以是已知的或者被测量以用来校正时间戳。

  图3示出SFD的示例。例如,IEEE 802.3-2018定义以太网帧,该以太网帧包括前同步码和起始帧定界符(SFD)。SFD在长度上能够是一个八位组。SFD标记前同步码的结束,并且指示以太网帧的开始。以太网帧包括以太网报头,该以太网报头包含目标和源MAC地址。帧的中间段是有效载荷数据,其包括帧中携带的其他协议(例如因特网协议)的任何报头。帧以帧校验序列(FCS)结束。但是,作为补充或替代,技术能被应用于其他帧或分组类型能够被使用,诸如但不限于用户数据报协议(UDP)、传输控制协议(TCP)等。

  图4示出系统的示例。系统400能够用于网络接口、结构接口、存储网络接口、到互连的接口、总线接口、接收和/或传送分组或信号并确定时间戳的任何技术等。在一些示例中,系统400的部分的多个实例或复制品能够用来接收来自多个通道的信号,其中系统400的一部分的实例接收和处理在特定通道上接收的信号。信号的一个或多个通道能够由系统400的部分的一个或多个复制品来接收。例如,PMA子层402和PCS子层406的实例能够用于通道。所述一个或多个通道能够提供分组的部分,由此分组跨通道来分成带或跨通道分布,并且被传送。例如,以太网帧能够跨通道来分成带,并且被传送。在一些示例中,在各种通道上传送66位块。相应地,分组内容(例如报头、SFD或有效载荷)能够在各个通道之间跨66位块分布。

  物理介质附连子层402能够对来自物理介质的入局信号进行取样,并且提供信号(例如处于标准化电压电平的串行电信号)。物理介质附连子层402可工作在任何适当速率或带宽,例如每秒10千兆位(Gbps)、25Gbps、40Gbps、100Gbps或者高于或低于那些速率。物理介质附连子层402还能够配置成向附连到它的物理介质发送从网络接口控制器的其他组件所接收的出局信号。物理介质能够是电信号导体、光信号导体或无线介质中的一个或多个。物理介质附连子层402使用串行器/解串器(SerDes)404将串行信号转换成并行信号,和/或将并行信号转换成一个或多个串行信号。在一些示例中,SerDes 404对来自物理介质的入局信号进行解串以供物理介质附连子层402使用,并且串行化来自物理介质附连子层402的信号以便在物理介质上发送。SerDes 404可在任何适当位大小(例如16、40、66个位或其他大小)的串行接口与并行接口之间进行转化。在一些示例中,变速箱能够用来将第一位宽度转化成第二位宽度/从第二位宽度来转化到第一位宽度。

  物理编码子层406配置成对入局和出局信号执行编码。在一些实施例中,物理编码子层406能够使用IEEE Std 802.3-2018中描述的64b/66b编码算法来执行64b/66b编码以将66个位解码成64个位或者将64个位编码成66个位。物理编码子层208能够取出局数据的64个位,添加作为同步报头的2个位,并且然后对64个位进行加扰。在一些实施例中,物理编码子层406能够执行附加或备选编码/解码,例如4b/5b编码/解码、8b/10b编码/解码或者其他编码/解码。

  时间戳检测器408能够确定与所接收或传送分组关联的时间戳,并且补偿时间戳记中的不精确性的至少部分来源。例如,能够针对接收的以太网帧来确定调整的时间戳。在其他示例中,能够针对以太网帧的传送时间来确定调整的时间戳。对时间戳的调整能够对产生于下列一个或多个的定时误差进行:恢复时钟信号与系统时钟信号之间的相位偏移,数据块内的分组起始指示符位置,多块段内的分组起始位置,或者串行器/解串器时间延迟。所确定的分组时间戳能够用于多种用途,包括但不限于5G天线切换、金融交易时间戳记和时钟同步。

  分组定界符检测器410能够识别触发模式或分组定界符。例如,触发模式或分组定界符能够是SFD。分组的时间戳能够基于检测到触发模式或分组定界符时的计数器值。能够对时间戳进行各种调整。相位调整412能够基于系统400所使用的时钟域与来自在最后到达通道(LAL)上接收的信号的恢复时钟信号之间的相位偏移来调整时间戳。如后面更详细描述的,最后到达通道是提供相对于提供分组的其他条带或(一个或多个)部分的其他通道最后到达接收器的分组的条带或者一部分的通道。例如,PMA子层402的多个副本能够接收不同通道。最后到达通道能够基于标志的接收而被确定。例如,接收最后到达通道的PMA子层402的副本能够基于最后到达通道上的接收的信号的频率来确定时钟信号。在关联于最后到达通道的恢复时钟信号与系统时钟之间的相位偏移能够用来调整所确定时间戳值。相应地,相位调整412能够补偿与SerDes关联的通道延迟。

  触发符号补偿器414能够调整时间戳,以计及块中的触发模式或分组定界符的位置。例如,触发符号补偿器414能够调整时间戳,以计及66位块中的SFD的位置。SFD能够定位在66位块的开头、中间或末尾,但是时间戳与SD的检测关联而与块中的位置无关。触发符号补偿器414能够调整时间戳,以计及66位块中的SFD的位置。

  段校正416能够调整时间戳,以计及并行输出多个块之后的块中的SFD的位置。例如,66位块能够传送SFD,以及四个66位块能够组合并且作为对264位总线的输出来提供。段校正416能够校正时间戳,以计及更大的264位输出中的SFD的位置。例如,能够跟踪在其上接收SFD的通道。如果存在4个通道,则2位通道跟踪器能够用来指示多个块内的块。

  通道延迟补偿418能够调整时间戳,以计及对于最后到达通道的通道延迟。最后到达通道能够用来传送恢复时钟信号。能够存在通道特定延迟。例如,如果LAL是被用于时间戳记的通道1,则这个通道没有或者具有最小的来自去偏斜缓冲器的延迟。如果SFD处于通道2上,则通道2可具有与通道1的延迟不同的一些特定延迟。一个示例是后面论述的0-65位PCS延迟寄存器。PMA和PCS的制造商能够提供数据,所述数据指示由PMA子层装置和PCS子层装置所引入的相对延迟。

  介质访问控制(MAC)层和其他分组处理层能够用来处理分组。

  图5示出系统的示例。该系统能够用于4通道40Gbps系统或者数据传输或接收的其他速度。在传送方向上,对齐标志作为相位先进先出(FIFO)的部分来插入,并且因此当完成时间戳记时,不存在数据中的可变性。在传送方向上,时间戳捕获就在264到257位转换之前在SENSE(感测)点发生。

  在接收器处,使用解串器将数据解串到物理介质附连(PMA)域的总线。使用变速箱(GB)将数据从与PMA时钟关联的PMA域传递到与PCS时钟关联的物理编码子层(PCS)域。例如,在PMA域中,使用40个位的总线宽度,但是在PCS域中,使用66个位的总线宽度。变速箱从40个位的总线宽度转换到66位的总线宽度。在接收方向上,就在257到264位转换之后提供时间戳SENSE点。在接收方向上,对齐标志作为PPM FIFO的部分被去除。因此,这没有引起数据中的任何间隙,因为时间戳记已经被完成。作为64/66b编码块的部分,能够得到帧起始定界符(SFD)。SENSE点表示在4个通道中的特定通道上检测到SFD的时间。2位位置字段能够以每分组为基础发生变化,并且携带出自4个通道的SFD的位置。来自解串器的接收的66位字是被对齐的字,并且因此所接收的字需要从0-65个位的任何位置来移位。REG_66ui对齐寄存器携带移位信息。这个值在一旦解除重置则是固定的,但是能够随每一个重置而变化。dt(GB)表示经过变速箱(GB)的延迟。这个延迟能够随每个重置而改变,但是一旦解除重置则是固定的。使用例如针对图8所描述的相位测量技术来估计这个延迟。dt(desk)表示经过里德所罗门变速箱的延迟,并且也使用针对8所描述的相位测量技术来被测量。

  图6示出系统的示例。该系统能够用于4通道100Gbps系统。该操作除了更高的带宽之外与图5的系统的操作相似。

  图7示出多个通道传输和接收的示例。在这个示例中,传送通道0-3。在传送(TX),块0-块3准备好传送,并且被对齐。例如,串行地传送66位块。在这个示例中,在接收(RX)处,对齐通道0、2和3,但是通道1上的块1是最后到达通道。例如,对于40Gbps,66位块的16383个列在插入标志之前在每个PCS通道上被插入。在全部通道上的标志的接收能够用来执行通道之间的去偏斜。

  图8示出能够用来确定跨多个通道传送和接收的接收的分组的时间戳的系统的示例。该系统能够定位在xMII接口之后且在MAC层处理之前。该系统能够提供控制信号,以通过测量和去除产生于在多个通道的组合内定位SFD的误差,来改进SFD(或者另一触发模式或分组定界符)的时间戳记精度。控制信号能够指示在一组块内最后到达通道(LAL)和SFD(或者其他触发模式或分组定界符)位置。LAL控制信号能够不那么频繁地发生变化(对于一个或多个分组),而SFD控制信号能够每分组发生变化。

  与LAL相关的误差条件包括LAL通道的相位测量对总体装置定时,并且能够去除数纳秒误差。LAL控制信号能够用来选择一个时钟信号,以便传递给单个相位测量调整装置。与多个通道内的SFD通道相关的误差条件是264位处理总线内的66位通道的位置,但是能够使用其他位大小。264位处理总线能够用于40Gbps/100Gbps通道处理。66位总线是在聚合为40Gbps/100Gbps高速总线前物理通道的部分。该系统能够指示SFD与哪个66位物理通道关联。这能够去除高达大约6ns的时间戳误差。

  一个或多个接收通道能够向对齐标志校验器802提供块。对齐标志校验器802等待全部标志到达所有通道上。在一些示例中,对齐标志校验器802能够从通道去除标志,并且向去偏斜缓冲器806提供数据。对齐标志校验器802向LAL确定器804指示何时接收到与最后到达通道(LAL)对应的标志(例如在一组标志中接收的最后一个标志)。例如,对于多个通道,如果同时接收到全部标志,则LAL对应于通道的任一个。对于在其他通道上的其他标志之后在特定通道上接收的标志,那个特定通道对应于LAL。在最后一个标志的到达之后,对于在通道上接收的下一组标志,能够更新LAL。

  参照图7的示例,来自相应通道0、2和3的块0、2和3在接收时被对齐。但是,通道1上的块1具有不同延迟,并且较迟到达。对齐标志校验器802等待全部标志(例如标志0-3)到达,以了解通道之间的相对延迟。标志0、2和3同时被接收,但是通道1的标志被延迟。去偏斜缓冲器806缓冲来自通道0、2和3的数据。当通道1的标志1到达时,去偏斜缓冲器806释放全部块0-3。在这个示例中,通道1定义为LAL。

  再次参照图8,最后到达通道(LAL)确定器804输出LAL通道号。对于图7的示例,LAL是通道1。LAL能够用来从全部通道之间的恢复时钟信号中选择SERDES恢复时钟信号(示为SERDES CLK)。时钟和数据恢复装置能够用来从通道上接收的信号来恢复数据。例如,能够通过PMA或PCS(未示出)从通道上的接收的数据信号的频率来生成恢复时钟信号。恢复时钟信号能够与芯片时钟域(系统时钟(CLK)850)时钟信号不同。例如,对于四个通道,来自通道0至3的接收的数据的恢复时钟信号被提供给复用器808。除了恢复时钟信号之外,对于每个通道,提供控制信号,所述控制信号指示分组开头的相位定时脉冲。复用器808将允许与LAL对应的恢复时钟信号和控制信号的通过。

  相位测量调整器810能够确定恢复时钟信号与来自系统CLK 850的系统时钟信号之间的相位偏移。在一些实施例中,使用单个实例或装置相位测量调整器810,而与通道的数量无关。相位测量调整器810能够相对于系统时钟来执行相位测量,并且输出恢复时钟信号与系统时钟之间的百分比周期偏移的表示。输出相位关系能够用来微调恢复时钟信号与系统时钟之间的偏移。在一些情况下,系统时钟频率在频率上能够恢复时钟信号的频率要高许多。关于“TECHNOLOGIES FOR HIGH-PRECISION TIME STAMPING OF PACKETS”(发明人为Southworth等人,2017年4月7日提交,发表WO2018/186876 (P113218PCT))所描述的技术能够用来确定恢复时钟信号与系统时钟信号之间的相位调整。例如,相位测量调整器810确定可变等待时间,该可变等待时间因系统时钟与恢复时钟信号之间的相位差而发生。由于系统时钟信号和恢复时钟信号没有相互锁定,所以不存在两个时钟的相位之间的明确关系。相位测量调整器810确定恢复时钟信号相对于系统时钟信号的相位差。能够使用每个时钟循环更新的时间计数器,并且时间计数器具有在任何给定时间对应时钟的时钟循环的一小部分的误差,且该误差在更新时间计数器(在对应时钟信号的边缘发生)之后立即被最小化。相位测量调整器810可通过监测与时钟信号对应的时间计数器之间的差,来确定恢复时钟信号与系统时钟信号之间的相位差。相位测量调整器810可基于所述两个时钟信号的已知频率来外推对应时钟信号之间的当前相位差。可使用用于估计两个时钟信号之间的相位的其他方式,这可以取决或者可以不取决确定两个时间计数器之间的差。

  假定相位测量方案测量SERDES时钟相位与系统时钟相位之间的差,这两者可能偏移高达系统时钟的一个周期。例如,系统时钟频率能够是800MHz(1.25ns的周期)。相位测量方案能够将这个1.25ns相位分解为16段,每个为1.25ns/16。最终结果基于SFD出现的时间以及SERDES时钟相对于800MHz时钟的位置。结果将为16个相位之一。例如,如果SFD在相位#2出现,则(1.25/16)^2将是从时间戳值的调整量(在接收方向上被减去)。

  PCS块处理812接收来自去偏斜缓冲器806的多个通道的对齐数据。对齐数据能够是来自同时被释放的多个通道的数据,由此全部通道与来自LAL的数据同时被释放。PCS块处理812能够检测SFD,并且通过输出检测到的信号SFD来指示SFD被检测。SFD时间戳生成器814能够确定SFD被指示为被检测所在的时间戳,并且输出与检测SFD的时间大致对应的时间戳(TS)。SFD标志的出现相对于来自接收的数据的恢复时钟信号。但是,SFD时间戳生成器814基于相对于来自系统CLK 850的系统时钟信号检测的指示SFD通过使用(例如64、96或另一值)位计数器来生成中间时间戳值。

  在PMA/PCS时域中检测SFD,并且使用相位调整来将SFD带入系统时钟域。第一加法器816接收与来自SFD时间戳生成器814的SFD检测时间对应的时间戳,并且基于来自相位测量调整810的相位调整信号来调整时间戳。相位调整信号能够表示为时间戳偏移,并且能够从SFD时间戳中被减去。

  总线对齐器818能够接收SFD被检测到的指示以及在其上检测到SFD的通道号。总线对齐器818能够接收其中SFD出现的通道号的输入以及最后到达通道号的指示。总线对齐器818能够执行66位块到264位总线的对齐,但是能够使用其他位大小。总线对齐器818能够识别在264位总线的66位块(例如通道)中的SFD位置,并且在位置[1:0]输出中指示块。对于更大尺寸的总线,总线中的66位块位置能够使用附加位置位来跟踪66位块的位置。总线对齐器818能够输出66位块中的SFD的位置(例如位置0-65)。

  确定要用来基于块中的SFD位置来调整时间戳的计数器值的数值的示例方式能够如下所述。对于接收侧,能够确定下列关系:接收等待时间 = (136 + X)UI + 80ps= Z纳秒,其中UI = 0.97皮秒,X是从该寄存器得到的0-65的值。然后从接收时间戳中减去单位为皮秒的最终值。

  时间戳可反映SFD在66位块的末尾处出现,但是SFD的位置能够是66位块中的任何位置。相应地,SFD时间戳可能没有精确地反映SFD的位置。66位块中的SFD的位置能够用来调整SFD的时间戳,以计及66位块内的SFD的实际位置。能够使用块的其他大小。第二加法器820能够通过减去66位块中的SFD的位置(使用来自总线对齐器818的SFD的位置),来调整SFD时间戳。

  在具有SFD的块与例如输出到总线的多个并行块的其他块相组合后,对齐偏移822能够调整对于SFD出现在其上的通道号的SFD时间戳。信号“位置”能够指示其中定位SFD的通道号。例如,对于组合为单个输出的4个通道,信号位置能够是2个位,以指示SFD在其上被接收的四个通道之一。对齐偏移822能够通过考虑通道的组合内的SFD的位置来输出时间戳调整值。例如,如果信号位置指示通道0携带SFD,则时间戳偏移为0。如果信号位置指示通道1携带SFD,则时间戳偏移是相当于+66个位的时间戳计数器。如果信号位置指示通道2携带SFD,则时间戳偏移是相当于+132个位的时间戳计数器。如果信号位置指示通道3携带SFD,则时间戳偏移是相当于+198个位的时间戳计数器。相应地,能够改进时间戳精度,以计及为在264位总线上输出而对多个块进行转换。

  确定要用来基于264位总线中的块的位置号来调整时间戳的计数器值的数值的示例方式如下。接收等待时间 = (136 + X + Y)UI + 80皮秒 = Z纳秒,其中UI = 0.97皮秒,Y是从查找表所得到的值。查找表中的四个值能够是:例如0、66UI、128UI、192UI。然后从接收时间戳中减去单位为皮秒的最终值。

  通道延迟补偿824能够补偿固定SERDES通道延迟。SERDES通道延迟能够由SERDES的制造商来提供,并且存储在通道延迟补偿824中。延迟能够是基于LAL号的固定值。

  第三加法器826能够调整时间戳,以基于来自通道延迟补偿824的输出来补偿SERDES通道(例如PMA/PCS)延迟。第三加法器826能够输出最终时间戳值。

  图9A示出示例过程。该过程能够在使用多个通道的分组或帧的接收器处执行。在902,接收块的多个通道之中的最后一个通道,并且识别最后到达通道。能够接收多个通道之中的最后一个通道,其中通道传送分组或帧的部分。能够通过对在其他通道中提供的标志之后被接收的标志的检测来识别最后一个通道到达通道。在904,生成与分组时间符号被识别之时对应的时间戳。分组时间符号能够是SFD或者帧结束指示符。在906,识别分组时间符号在其上被接收的通道。在908,能够识别块内的分组时间符号的位置。例如,如果66位块用来传送分组时间符号,则能够识别分组时间符号起始的位位置。在910,能够识别在其他块的组合内包括分组时间符号的块的位置。例如,块能够包括分组时间符号,以及多个66位块能够组合为对总线的264位输出。在912,能够基于下列中的一个或多个来调整时间戳:恢复时钟信号与系统时钟信号之间的相位偏移、数据块内的分组时间符号的位置、多块段内的分组时间符号位置或者最后到达通道串行器/解串器时间延迟。动作912能够包括动作914、916、918或920中的一个或多个。

  图9B示出能由912执行的一个或多个动作的示例。在914,能够基于在来自在最后到达通道上接收的信号的恢复时钟信号与系统时钟信号之间的确定的相位调整偏移来调整分组时间符号的时间戳。能够使用单个相位测量装置,尽管多个通道的多个恢复时钟信号是可用的。在916,能够基于块内的分组时间符号的位置来调整分组时间符号的时间戳。在918,能够基于在一组块内具有分组时间符号的块的位置来调整分组时间符号的时间戳。例如,如果块与其他块相组合,则具有分组时间符号的块的位置能够用来确定时间戳调整。例如,如果66位块与其他66位块相组合以形成264位输出,则块的位置能够被识别并且用来调整时间戳。在920,能够基于与最后到达通道所使用的串行器/解串器关联的时间延迟来调整分组时间符号的时间戳。最后到达通道指示符能够用来从查找表确定时间延迟。

  图10示出一种系统。该系统能够使用本文所述的实施例执行与分组传输或接收相联系的时间戳测量或调整。系统1000包括处理器1010,所述处理器1010提供用于系统1000的处理、操作管理以及指令的执行。处理器1010能够包括任何类型的微处理器、中央处理单元(CPU)、图形处理单元(GPU)、处理核、或者为系统1000提供处理的其他处理硬件、或者处理器的组合。处理器1010控制系统1000的整体操作,并且能够是或者包括一个或多个可编程通用或专用微处理器、数字信号处理器(DSP)、可编程控制器、专用集成电路(ASIC)、可编程逻辑装置(PLD)等或者这类装置的组合。

  在一个示例中,系统1000包括耦合到处理器1010的接口1012,所述接口1012能够表示用于需要更高带宽连接的系统组件(例如存储器子系统1020或图形接口组件1040或者加速器1042)的更高速度接口或高吞吐量接口。接口1012表示接口电路,该接口电路能够是独立组件或者集成到处理器管芯上。在存在的情况下,图形接口1040与图形组件进行接口,以用于向系统1000的用户提供可视显示。在一个示例中,图形接口1040能够驱动向用户提供输出的高清晰度(HD)显示器。高清晰度能够指的是具有大约100 PPI(每英寸像素)或更大的像素密度的显示器,并且能够包括诸如全HD(例如1080p)、视网膜显示器、4K(超高清晰度或UHD)等的格式。在一个示例中,显示器能够包括触摸屏显示器。在一个示例中,图形接口1040基于存储器1030中存储的数据或者基于处理器1010所执行的操作或两者来生成显示。在一个示例中,图形接口1040基于存储器1030中存储的数据或者基于处理器1010所执行的操作或两者来生成显示。

  加速器1042能够是能够由处理器1010所访问或使用的固定功能卸载引擎。例如,加速器1042之中的加速器能够提供压缩(DC)能力、密码服务(例如公有密钥加密(PKE)、密码、哈希/认证能力、解密)、或其他能力或服务。在一些实施例中,作为补充或替代,加速器1042之中的加速器提供如本文所描述的现场选择控制器能力。在一些情况下,加速器1042能够集成到CPU插座(例如,到包括CPU并且提供与CPU的电接口的主板或电路板的连接器)中。例如,加速器1042能够包括单核或多核处理器、图形处理单元、逻辑执行单元、单或多级高速缓存、可用来独立执行程序或线程的功能单元、专用集成电路(ASIC)、神经网络处理器(NNP)、可编程控制逻辑以及可编程处理元件(例如现场可编程门阵列(FPGA))。加速器1042能够提供多个神经网络、处理器核或图形处理单元,它们能够被变得可用于供人工智能(AI)或机器学习(ML)模型使用。例如,AI模型能够使用或包括下列任一个或组合:强化学习方案,Q学习方案,深度Q学习或异步优势动作者评价(Asynchronous Advantage Actor-Critic,A3C)、组合的神经网络、递归组合的神经网络或者其他AI或ML模型。能够使多个神经网络、处理器核或图形处理单元变得可用于供AI或ML模型使用。

  存储器子系统1020表示系统1000的主存储器,并且为将要由处理器1010执行的代码或者将要在执行例程中使用的数据值提供存储。存储器子系统1020能够包括一个或多个存储器装置1030,例如只读存储器(ROM)、闪速存储器、一个或多个种类的随机存取存储器(RAM)(例如DRAM)或其他存储器装置或者这类装置的组合。除了别的以外,存储器1030存储和包含操作系统(OS)1032以为系统1000中指令的执行提供软件平台。另外,应用1034能够在来自存储器1030的OS 1032的软件平台上执行。应用1034表示程序,所述程序具有其自己的操作逻辑以执行一个或多个功能的执行。过程1036表示代理或例程,所述代理或例程向OS 1032或一个或多个应用1034或者组合提供辅助功能。OS 1032、应用1034和过程1036提供用于提供系统1000的功能的软件逻辑。在一个示例中,存储器子系统1020包括存储器控制器1022,所述存储器控制器1022是生成并且向存储器1030发出命令的存储器控制器。将会理解,存储器控制器1022可能是处理器1010的物理部分或者接口1012的物理部分。例如,存储器控制器1022能够是集成到带有处理器1010的电路上的集成存储器控制器。

  虽然没有具体示出,但是将会理解,系统1000能够包括装置之间的一个或多个总线或总线系统,例如存储器总线、图形总线、接口总线等。总线或其他信号线能够在通信或电学上将组件耦合在一起,或者在通信上和电气地耦合组件。总线能够包括物理通信线、点对点连接、桥接器、适配器、控制器或其他电路或者组合。总线能够包括例如以下中的一个或多个:系统总线、外设部件互连(PCI)总线、超传输或工业标准架构(ISA)总线、小型计算机系统接口(SCSI)总线、通用串行总线(USB)、或者电气和电子工程师协会(IEEE)标准1394总线。

  在一个示例中,系统1000包括接口1014,所述接口1014能够耦合到接口1012。在一个示例中,接口1014表示接口电路,该接口电路能够包括独立组件和集成电路。在一个示例中,多个用户接口组件或外围组件或两者耦合到接口1014。网络接口1050为系统1000提供通过一个或多个网络与远程装置(例如服务器或其他计算装置)进行通信的能力。网络接口1050能够包括以太网适配器、无线互连组件、蜂窝网络互连组件、USB(通用串行总线)或者其他基于有线或无线标准的或者专有的接口。网络接口1050能够向远程装置传送数据,这能够包括发送存储器中存储的数据。网络接口1050能够从远程装置接收数据,这能够包括将所接收数据存储到存储器中。各个实施例能够与网络接口1050、处理器1010和存储器子系统1020结合地使用。

  在一个示例中,系统1000包括一个或多个输入/输出(I/O)接口1060。I/O接口1060能够包括一个或多个接口组件,用户经过所述接口组件与系统1000进行交互(例如音频、字母数字、触觉/触摸或其他接口连接)。外围接口1070能够包括以上没有具体提到的任何硬件接口。外设一般表示相关地连接到系统1000的装置。相关连接是这样的一种连接,其中系统1000提供操作在上面执行并且用户与之进行交互的软件平台或硬件平台或两者。

  在一个示例中,系统1000包括存储子系统1080,以按照非易失性方式来存储数据。在一个示例中,在某些系统实现中,存储装置1080的至少某些组件能够与存储子系统1020的组件重叠。存储子系统1080包括(一个或多个)存储装置1084,所述存储装置1084能够是或者包括用于按照非易失性方式来存储大量数据的任何常规介质,例如一个或多个基于磁、固态或光的盘或者组合。存储装置1084按照永久状态(即,尽管对系统1000的电力中断,也保留值)来保存代码或指令和数据1086。存储装置1084能够一般被认为是“存储器”,但是存储器1030通常是用以向处理器1010提供指令的执行或操作存储器。虽然存储装置1084是非易失性的,但是存储器1030能够包括易失性存储器(即,如果对系统1000中断电力,则数据的值或状态是不确定的)。在一个示例中,存储子系统1080包括控制器1082,以便与存储装置1084进行接口。在一个示例中,控制器1082是接口1014或处理器1010的物理部分,或者能够包括处理器1010和接口1014二者中的电路或逻辑。

  电源(未示出)向系统1000的组件提供电力。更具体来说,电源通常与系统1000中的一个或多个电力供应装置进行接口,以便向系统1000的组件提供电力。在一个示例中,电力供应装置包括用以插入壁式插座的AC-DC(交流-直流)适配器。这种AC电力能够是再生能量(例如太阳能)电源。在一个示例中,电源包括DC电源,例如外部AC-DC转换器。在一个示例中,电源或电力供应装置包括无线充电硬件,以经由与充电场的接近进行充电。在一个示例中,电源能够包括内部电池、交流供应装置、基于运动的电力供应装置、太阳能供应装置或燃料电池源。

  在示例中,能够使用处理器、存储器、存储装置、网络接口和其他组件的互连计算撬来实现系统1000。能够使用高速互连,例如PCIe、以太网或光互连(或者其组合)。

  实施例可在各种类型的计算和连网设备中实现,例如交换机、路由器、机架以及刀片服务器(例如在数据中心和/或服务器农场环境中采用的刀片服务器)。在数据中心和服务器农场中使用的服务器包括阵列服务器配置,例如基于机架的服务器或刀片服务器。这些服务器经由各种网络配置相互通信互连,例如通过在局域网(LAN)之间的适当交换和路由设施将服务器集合划分为LAN,以形成专用内联网。例如,云托管设施通常可采用具有大量服务器的大数据中心。刀片包括配置成执行服务器类型功能的独立计算平台,即,“卡上服务器”。相应地,每个刀片包括与常规服务器共用的组件,这包括提供用于耦合适当集成电路(IC)及安装到板的其他组件的内部布线(即,总线)的主印刷电路板(主板)。

  图11示出网络接口,该网络接口能够使用实施例或者被实施例使用以执行时间戳测量或调整。网络接口1100能够包括收发器1102、处理器1104、传送队列1106、接收队列1108、存储器1110、以及总线接口1112、以及DMA引擎1152。收发器1102能够具有按照可适用协议(例如,如IEEE 802.3中所描述的以太网,但是可使用其他协议)来接收和传送分组的能力。收发器1102能够经由网络介质(未示出)从/向网络接收/传送分组。收发器1102能够包括PHY电路1114和介质访问控制(MAC)电路1116。PHY电路1114能够包括编码和解码电路(未示出),用以按照可适用物理层规范或标准对数据分组进行编码和解码。MAC电路1116能够配置成组装要传送到分组中的数据,这包括目标和源地址连同网络控制信息和检错哈希值。处理器1104能够是下列任一个或组合:处理器、核、图形处理单元(GPU)、现场可编程门阵列(FPGA)、专用集成电路(ASIC)、或者允许网络接口1100的编程的其他可编程硬件装置。例如,处理器1104能够提供要用来执行工作负荷的资源的识别以及供在所选资源上执行的比特流的生成。例如,“智能网络接口”能够使用处理器1104来提供网络接口中的分组处理能力。

  分组分配器1124能够使用本文所描述的时隙分配或RSS来提供接收分组的分发,以供多个CPU或核处理。当分组分配器1124使用RSS时,分组分配器1124能够基于接收分组的内容来计算哈希或者做出另一个确定,以确定哪一个CPU或核将处理分组。

  中断联合1122能够执行中断慢化(moderation),由此网络接口中断联合1122等待多个分组到达或者等待超时到期,然后生成对主系统的中断以处理(一个或多个)接收分组。接收段联合(RSC)能够由网络接口1100来执行,由此入局分组的部分被组合为分组的段。网络接口1100向应用提供这个联合的分组。

  直接存储器存取(DMA)引擎1152能够将分组报头、分组有效载荷和/或描述符从主存储器直接复制到网络接口或者反之亦然,而不是将分组复制到主机处的中间缓冲器并然后使用从中间缓冲器到目标缓冲器的另一个复制操作。

  存储器1100能够是任何类型的易失性或者非易失性存储器装置,并且能够存储用来对网络接口1100进行编程的任何队列或指令。传送队列1106能够包括供网络接口传输的数据或者对数据的引用。接收队列1108能够包括由网络接口从网络所接收的数据或者对数据的引用。描述符队列1120能够包括描述符,所述描述符引用传送队列1106或接收队列1108中的数据或分组。总线接口1112能够提供与主机装置(未示出)的接口。例如,总线接口1112能够与PCI、PCI高速、PCI-x、串行ATA和/或USB兼容接口兼容(但是可使用其他互连标准)。

  图12示出交换机。各个实施例能够在图12的交换机中使用或者与其一起使用,以执行时间戳测量或调整。交换机1204能够将任何格式的或者按照任何规范的分组或帧从任一端口1202-0至1202-X路由到端口1206-0至1206-Y中的任何端口(或者反之亦然)。端口1202-0至1202-X中任何端口能够连接到一个或多个互连装置的网络。类似地,端口1206-0至1206-X中任何端口能够连接到一个或多个互连装置的网络。交换机1204能够使用将分组特性关联输出端口进行映射的表来判定哪个端口用来传递分组或帧。另外,交换机1204能够执行分组复制,以用于分组或帧到多个端口的转发以及分组或帧在传递到输出端口之前的排队。

  图13示出数据中心的示例。各个实施例能够在图13的数据中心中使用或者与其一起使用,以执行针对分组传输或接收的时间戳测量或调整。如图13中所示,数据中心1300可包括光学结构1312。光学结构1312一般可包括光信令介质(例如光缆)和光交换基础设施的组合,经由该组合,数据中心1300中的任何特定撬能够向数据中心1300中的其他撬发送信号(以及从其接收信号)。但是,能够使用结构1312来传送光、无线和/或电信号。光学结构1312向任何给定撬提供的信令连通性可包括到同一机架中的其他撬和其他机架中的撬二者的连通性。数据中心1300包括四个机架1302A至1302D,且机架1302A至1302D容纳以下相应的对:撬1304A-1和1304A-2、1304B-1和1304B-2、1304C-1和1304C-2以及1304D-1和1304D-2。因此,在这个示例中,数据中心1300包括总共八个撬。光学结构1312能够提供与七个其他撬中的一个或多个的撬信令连通性。例如,经由光学结构1312,机架1302A中的撬1304A-1可拥有与机架1302A中的撬1304A-2以及在数据中心1300的其他机架1302B、1302C和1302D之间分布的六个其他撬1304B-1、1304B-2、1304C-1、1304C-2、1304D-1和1304D-2的信令连通性。实施例并不局限于这个示例。例如,结构1312能够提供光和/或电信令。

  可使用硬件元件、软件元件或两者的组合来实现各个示例。在一些示例中,硬件元件可包括装置、组件、处理器、微处理器、电路、电路元件(例如晶体管、电阻器、电容器、电感器等)、集成电路、ASIC、PLD、DSP、FPGA、存储器单元、逻辑门、寄存器、半导体装置、芯片、微芯片、芯片组等。在一些示例中,软件元件可包括软件组件、程序、应用、计算机程序、应用程序、系统程序、机器程序、操作系统软件、中间件、固件、软件模块、例程、子例程、功能、方法、过程、软件接口、API、指令集、计算代码、计算机代码、代码段、计算机代码段、字、值、符号或者它们的任何组合。确定是否使用硬件元件和/或软件元件来实现示例可按照如对给定实现所期望的任何数量的因素而改变,例如期望的计算速率、功率级、耐热性、处理循环预算、输入数据速率、输出数据速率、存储器资源、数据总线速度以及其他设计或性能限制。要注意,硬件、固件和/或软件元件可在本文中共同或单独称作“模块”、“逻辑”、“电路”或“电路系统

  一些示例可使用或者作为制品或者至少一个计算机可读介质来实现。计算机可读介质可包括用来存储逻辑的非暂时存储介质。在一些示例中,非暂时存储介质可包括能够存储电子数据的一种或多种类型的计算机可读存储介质,这包括易失性存储器或非易失性存储器、可移除或不可移除存储器、可擦或不可擦存储器、可写或可重写存储器等。在一些示例中,逻辑可包括各种软件元件,例如软件组件、程序、应用、计算机程序、应用程序、系统程序、机器程序、操作系统软件、中间件、固件、软件模块、例程、子例程、功能、方法、过程、软件接口、API、指令集、计算代码、计算机代码、代码段、计算机代码段、字、值、符号或者它们的任何组合。

  按照一些示例,计算机可读介质可包括存储或保持指令的非暂时存储介质,指令在由机器、计算装置或系统执行时使机器、计算装置或系统执行按照所描述的示例的方法和/或操作。指令可包括任何适当类型的代码,例如源代码、编译代码、解释的代码、可执行代码、静态代码、动态代码等。指令可按照预定义计算机语言、方式或语法来实现,以用于指示机器、计算装置或系统执行某个功能。指令可使用任何适当的高级、低级、面向对象、可视、编译的和/或解释的编程语言来实现。

  至少一个示例的一个或多个方面可通过在至少一个机器可读介质上存储的、表示处理器中的各种逻辑的代表指令来实现,所述指令在由机器、计算装置或系统读取时使机器、计算装置或系统制造执行本文所描述的技术的逻辑。称作“IP核”的这类表示可存储在有形机器可读介质上,并被提供给各种客户或制造设施,以便加载到实际制作逻辑或处理器的制造机器中。

  措辞“一个示例”或“一示例”的出现不一定全部指代同一个示例或实施例。本文所描述的任何方面能够与本文所描述的任何其他方面或相似方面相组合,而不管所述方面是否针对同一个图或元件来描述。对附图中所描绘的块功能的分割、省略或包含并不意味着用于实现这些功能的硬件组件、电路、软件和/或元件将一定在实施例中被分割、省略或包含。

  一些示例可使用表达“耦合的”和“连接的”及其派生词来描述。这些术语不一定意在作为彼此的同义词。例如,使用术语“连接的”和/或“耦合的”的描述可指示两个或更多元件相互直接物理或电接触。但是,术语“耦合的”还可表示两个或更多元件不是相互直接接触,但还仍然相互配合或交互。

  本文的术语“第一”、“第二”等并不表示任何顺序、量或重要性,而是用来区分一个元件与另一个元件。本文中的术语“一”(a以及an)并不表示量的限制,而是表示存在所引用项的至少一个。本文参照信号使用的术语“断言”表示信号的状态,其中信号是活动的,并且该状态能够通过对信号应用任何逻辑电平(逻辑0或逻辑1)来取得。术语“跟随”或“之后”能够表示紧随或者跟随某个(或某些)其他事件之后。步骤的其他序列还可按照备选实施例来执行。此外,可根据特定应用来添加或去除附加步骤。能够使用变化的任何组合,且获益于本公开的本领域技术人员会理解许多变更、修改和其的备选实施例。

  除非另加特别说明,否则例如措辞“X、Y或Z的至少一个”的转折语在使用的上下文之内一般被理解为表示:项、术语等可以是X、Y或者Z或它们的任何组合(例如X、Y和/或Z)。因此,这种转折语一般不意在暗示并且不应当暗示某些实施例要求X的至少一个、Y的至少一个或者Z的至少一个各自存在。另外,除非另加特别说明,否则例如措辞“X、Y和Z的至少一个”的连接语也应当被理解为表示X、Y、Z或者它们的任何组合,包括“X、Y和/或Z”。

  下面提供本文所公开的装置、系统和方法的说明性示例。装置、系统和方法的实施例可包括以下所述示例的任一个或多个以及它们的任何组合。

  示例1包括一种物理层处理设备,包括:至少一个物理介质附连和物理编码子层装置,用于接收来自信号的多个通道的分组并提供所述分组和关联的恢复时钟信号,其中从所述多个通道之一来接收帧起始定界符(SFD);以及时间戳调整器,用于:确定与所接收的分组关联的时间戳;基于在所述通道之一上接收的数据块内的SFD位置以及下列中一项或多项来调整所述时间戳:所述恢复时钟信号与系统时钟信号之间的相位偏移、多块段内的SFD位置或者串行器/解串器时间延迟;以及作为输出来提供所调整的时间戳。

  示例2包括任一示例的设备,其中为了基于所述恢复时钟信号与系统时钟之间的所述相位偏移来调整所述时间戳,所述时间戳调整器要执行以下操作:确定提供所述分组的一部分的最后到达通道;确定在来自所述最后到达通道的所述恢复时钟信号与所述系统时钟信号之间的相位偏移;以及基于所述相位偏移来调整所述SFD的时间戳。

  示例3包括任一示例的设备并且包括单个相位测量调整装置,以供用来确定所述系统时钟信号与关联多个物理介质附连和物理编码子层装置的恢复时钟信号之间的相位偏移。

  示例4包括任一示例的设备并且包括复用器,所述复用器用于基于最后到达通道从个物理介质附连和物理编码子层装置来选择恢复时钟信号。

  示例5包括任一示例的设备,其中为了基于数据块内的所述SFD位置来调整所述时间戳,所述时间戳调整器要执行以下操作:确定所述数据块内的所述SFD的位置;以及将所述时间戳调整从所述块的起始到所述数据块内的所述SFD的所述位置的差。

  示例6包括任一示例的设备,其中为了基于多块段内的所述SFD位置来调整所述时间戳,所述时间戳调整器要执行以下操作:确定在多块总线输出内包括所述SFD的块的位置;以及将所述时间戳调整来自所述多块总线输出的起始和包括所述SFD的所述块的差。

  示例7包括任一示例的设备并且包括总线对齐器,所述总线对齐器用于指示在所述多块总线输出内包括所述SFD的所述块的块号,其中所述时间戳调整器要基于所述块号来确定在多块总线输出内包括所述SFD的所述块的所述位置。

  示例8包括任一示例的设备并且包括耦合到以下中的一个或多个的网络接口:服务器、数据中心、刀片、机架或主计算机。

  示例9包括一种调整分组的时间戳的方法,所述方法包括:接收来自信号的多个通道的恢复时钟信号,信号的所述多个通道提供分组;从所述多个通道确定最后到达通道;基于通道内的帧起始指示符来确定所述分组的时间戳;提供在所述通道上接收的数据的并行组合;以及调整所述时间戳以计及在数据的所述并行组合中所述帧起始指示符的位置。

  示例10包括任一示例的方法,其中:提供在所述通道上接收的数据的并行组合包括向总线接口提供所述并行组合;以及调整所述时间戳以计及在数据的所述并行组合中所述帧起始指示符的位置包括调整所述时间戳以计及包括所述帧起始指示符的通道的通道号。

  示例11包括任一示例的方法并且包括:提供包括所述帧起始指示符的通道的通道号指示。

  示例12包括任一示例的方法,其中所述帧起始指示符包括与IEEE 1588-2008兼容的帧起始定界符(SFD)。

  示例13包括任一示例的方法并且包括:基于所述最后到达通道来选择恢复时钟信号;以及调整所述时间戳,以减少系统时钟信号与关联所述最后到达通道的所选的恢复时钟信号之间的相位差。

  示例14包括任一示例的方法并且包括:调整所述时间戳,以计及在数据块内所述帧起始指示符的位置。

  示例15包括任一示例的方法并且包括:基于所述最后到达通道来选择恢复时钟信号;以及调整所述时间戳,以计及所述最后到达通道的串行器/解串器时间延迟。

  示例16包括任一示例的方法,其中所述分组包括与IEEE 802.3-2018兼容的以太网帧。

  示例17包括一种系统,所述系统包括:计算平台,所述计算平台包括一个或多个处理器和一个或多个存储器装置;以及网络接口,在通信上耦合到所述计算平台,所述网络接口包括:时钟恢复装置,用于从通道上接收的信号来恢复时钟信号;对齐标志校验器,用于确定多个通道之中的最后到达通道;时间戳确定装置,用于从多个通道上接收的数据之中来确定接收分组的时间戳;以及时间戳校正装置,用于基于下列一项或多项来调整所述时间戳:所述恢复时钟信号与系统时钟信号之间的相位偏移、数据块内的分组起始指示符位置、多块段内的分组起始位置、或者串行器/解串器时间延迟,其中所述时间戳校正装置将作为输出来提供所调整的时间戳。

  示例18包括任一示例的系统,其中所述时间戳确定装置将基于帧起始定界符(SFD)来确定所述时间戳。

  示例19包括任一示例的系统,其中为了基于多块段内的分组起始位置来调整所述时间戳,所述时间戳校正装置要执行以下操作:确定多块总线输出内的块的位置;以及将所述时间戳调整来自所述多块总线输出的起始和包括所述分组起始指示符的块的差。

  示例20包括任一示例的系统,其中所调整的时间戳将提供亚纳秒时间戳精度。

《用于多通道端口的高精度时间戳记.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式(或pdf格式)