CN103797734B - 用于识别数据分组的接收时间点的系统和方法 - Google Patents
用于识别数据分组的接收时间点的系统和方法 Download PDFInfo
- Publication number
- CN103797734B CN103797734B CN201280041919.4A CN201280041919A CN103797734B CN 103797734 B CN103797734 B CN 103797734B CN 201280041919 A CN201280041919 A CN 201280041919A CN 103797734 B CN103797734 B CN 103797734B
- Authority
- CN
- China
- Prior art keywords
- parallel data
- path
- data path
- clock signal
- data
- 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.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0685—Clock or time synchronisation in a node; Intranode synchronisation
- H04J3/0697—Synchronisation in a packet node
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/02—Speed or phase control by the received code signals, the signals containing no special synchronisation information
- H04L7/033—Speed or phase control by the received code signals, the signals containing no special synchronisation information using the transitions of the received signal to control the phase of the synchronising-signal-generating means, e.g. using a phase-locked loop
- H04L7/0331—Speed or phase control by the received code signals, the signals containing no special synchronisation information using the transitions of the received signal to control the phase of the synchronising-signal-generating means, e.g. using a phase-locked loop with a digital phase-locked loop [PLL] processing binary samples, e.g. add/subtract logic for correction of receiver clock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/0008—Synchronisation information channels, e.g. clock distribution lines
- H04L7/0012—Synchronisation information channels, e.g. clock distribution lines by comparing receiver clock with transmitter clock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/04—Speed or phase control by synchronisation signals
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Communication Control (AREA)
Abstract
一种形成SERDES的一部分的解串器,其中,在串行数据路径上接收数据分组的特定部分(例如SOF)的时间点是根据何时在并行数据路径上输出该部分(根据对控制该并行数据路径的时钟的了解)以及在哪条并行路径上输出该部分来确定的。
Description
技术领域
本发明涉及用于对数据分组进行时间戳标记或识别数据分组的接收时间点的系统和方法。
背景技术
在通常通信中,数据分组作为串行数据在一个或更多个数据路径或电缆上长距离传送。这在图1中示出。当要检测和使用或分析这些数据时,从串行链路12检测数据,并且数据被转换为并行数据并馈送到并行数据总线16上,以降低分析电路所需的频率。此转换通常在时间戳标记器(time stamper)10的串行器/解串器或SERDES14中执行。解串器14从链路12导出时钟信号,将时钟信号除以总线16的宽度,并根据这个降低的时钟信号24在总线16上输出数据,还输出这个降低的时钟信号24。然后,将解串行数据馈送到多个异步FIFO18,以允许数据从一个时钟域(时钟24)流向另一时钟域(时钟26)。在SERDES14和FIFO18之间可以提供用于移除所接收的串行数据的编码的解码器28。此编码可以是64b/66b编码或6b/8b编码。此解码由时钟24控制。另一时钟域出现在FIFO18的另一侧,并且此时钟26控制从FIFO18向并行总线20读出并行数据,以及处理器22中其任意后续处理(例如时间戳标记)。
两个时钟域的原因基于以下事实:在链路12上转发串行数据的频率和进一步沿着数据路径20分析数据的频率之间可能存在ppm差。这由FIFO18和确保FIFO18不会超过限度的数据/分组丢弃策略进行处理。一般而言,在串行数据中引入空闲数据/分组以允许这种丢弃,而无需丢弃数据分组。
通过识别在读出FIFO18的数据的并行数据路径20上识别帧起始首部(SOF)的时间点,在第二时钟域中对在串行链路12上接收的数据分组进行时间戳标记。
应当注意的是,可以并行地提供图1中所示的多个设置,以便增加整体传输带宽。在此情形下,例如使用循环策略向链路12顺序地馈送数据分组或数据块,其中,SOF将出现在总线20之一中。
然而,此时间戳是非常不精确的。首先,潜在数据(例如空闲符号)丢弃将使得不可能根据例如在总线20上读取SOF的时间点来确定输出SOF的时间,这是因为不知道已经丢弃了多少分组(如果有的话)。此外,因为并行总线16和20上的时钟频率(除以总线宽度)低于总线12的时钟频率,因此时间戳的粒度(乘以总线宽度)也较低。不论在总线20的哪个通道中识别SOF,此时间戳将是相同的。
此外,通常,SERDES14、总线16和FIFO18在所谓的PHY中提供,期望其输出符合例如XAUI或MII/GMII标准,由此可能期望例如在总线20的第一通道处提供SOF,或者如果使用如图1的多个设置,则引入进一步延迟来对齐相应总线20上的数据。在此情形下,时间戳标记的不确定性再次增加。
本发明涉及针对此问题的解决方案以及可以使得时间戳确定更精确的设置。
在第一方案中,本发明涉及用于识别具有预定部分的数据分组的接收时间点的系统,所述系统包括:
-解串器,用于:
-从串行数据路径接收串行数据,
-从所述串行数据路径导出具有第一频率的第一时钟信号,
-导出具有第二频率的第二时钟信号,所述第二频率是所述第一频率除以预定整数,以及
-向具有预定数量的并行数据路径的并行数据总线输出并行数据,所述并行数据与所述串行数据有关,并且所述并行数据是根据所述第二时钟信号输出的,
-识别器,被适配为:识别所述并行数据路径中在其中输出所述预定部分的至少一部分的一个并行数据路径,
-定时设备,被适配为:根据所述并行数据路径中所识别的一个并行数据路径和所述第二时钟信号来估计所述时间点。
在本上下文中,系统可以由单个元件(例如单个电路/芯片/FPGA)形成,或系统可以由被适配为经由电信号、光信号、电磁信号等相互通信的多个元件形成。因此,单个元件可以相互靠近(例如在相同外壳中和/或在相同印刷电路板上),或可以远离(例如在单独外壳、不同房间或不同建筑物中)。
本系统可以形成更大系统(例如网络分析器、交换机、路由器等)的确定数据接收的时间点的部分。此时间点可以用于多个目的,例如确保保持数据分组的顺序。
数据分组可以是要在网络、数据电缆、数据总线、主干线等上传输的或要由网络、数据电缆、数据总线、主干线等传送的任意类型的数据单元。通常,数据分组/单元符合作为伞(umbrella)的一个或更多个数据标准(例如以太网、SONET、无限带宽技术或光纤通道标准),在该伞下,存在多个不同标准或数据分组类型(例如UDP和TCP数据分组)。数据分组通常具有多个不同信息项或类型,例如地址数据、有效载荷等,其均位于数据分组中的明确定义的位置或已知位置。这些位置和类型一般将随着数据分组类型而改变,但是通常可以根据实际数据分组来确定数据分组类型从而确定其相应内容的位置,然后可以通过任意类型的分析导出、变更和/或使用相应数据项(例如地址数据和/或有效载荷)。该类型或标准可以直接根据数据分组导出(例如当分组的特定数据项标识类型/标准时),或可以根据从数据分组中导出的数据导出(例如基于识别数据分组的数据项的类型和位置以及随后确定在这些位置可以找到这些数据的数据分组的类型或标准)。
此外,可以对数据分组进行或已经进行编码例如以提供差错校验,以便在信号中提供充足的零交叉密度,或如当将初始数据分组分为较小部分然后通过网络传输这些较小部分(该较小部分具有描述该部分的内容的首部)时所看到的那样。针对不同目的存在不同编码技术。编码技术包括诸如曼彻斯特码、4b/5b、6b/8b、8b/10b、64b/66b、64b/67b和128b/130b编码等的码,其中例如4比特的原始数据分组被编码为5比特块,5比特块然后被转发并随后解码为原始分组。
显然,分组或单元具有明确定义的起始比特/字节以及明确定义的内容或部分。通常,分组具有一个或更多个必需的元素(例如地址或编码首部)、以及一个或更多个可选的元素(例如有效载荷)。
可以以多个方式导出或定义时间点,并且只要所有数据分组具有以相同方式确定的其时间点,究竟是哪个时间点并不重要。自然地,这还可以动态地进行,使得可以为每个分组、分组类型、协议等单独地定义要识别的实际部分。
自然地,例如在串行数据的接收和并行数据的输出之间的一个或更多个流水线步骤中可能存在延迟。当确定时间点时可以考虑此延迟。
时间点可以是数据分组的第一个(或最后一个)比特到达解串器的时间点,或时间点可以是与该时间点的偏移。备选地或附加地,时间点可以是数据分组的另一部分到达解串器的时间点,或时间点可以是与该时间点的偏移。
数据分组的以上部分中的任意一个可以被识别并用于导出时间点。
在本上下文中,串行数据是例如在串行电缆上或无线地逐比特传输的数据。因此,串行数据的每一个部分(例如每一个比特或字节)具有不同的发送和接收时间点。可以从电链路、光链路或无线链路(例如从计算机、服务器、网络元件、交换机、路由器等)接收串行数据。备选地,可以从任意类型的存储元件、天线或其他接收机/发射机接收串行数据。
另一方面,以一次输出多于一个比特的方式输出并行数据。当在多个并行电导线(被称为数据总线)上输出数据时可以看到这一点,其中,例如在相同时钟信号上同时输出并传输与所谓的总线宽度相对应的多个比特。通常,在多个并行导线上输出并行数据,但还可以在光缆、电缆中和/或在空中无线地在多个波长或频率上同时输出数据。
可以以多个方式根据数据(例如根据其零点交叉)导出时钟信号。如所述的,串行数据可以被适配为具有足够数量的零点交叉,使得可以导出定时或时钟信号。
备选地,在需要时,可以根据信号的其他特性来导出时钟信号。
因此,该第一频率优选地是发送和/或接收串行信号的比特的频率。
解串器因此接收信号或数据,并将数据馈送到具有预定数量的数据路径或导线的并行数据总线上。优选地,以第一频率除以数据总线的宽度(并行传输的比特的数量;在电子数据总线情况下的并行导线的数量)的频率输出并行数据。以此方式,进出解串器的带宽是相同的。
在本上下文中,当输出与所接收的比特/字节数量相同数量的比特/字节或已知移除或添加的数据的量时,并行数据与串行数据有关。优选地,总体上不移除数据。因此,可以在数据分组中或在数据分组之间替换比特/字节,但在不进行替换的情况下不丢弃比特/字节。此替换优选地是比特替换比特,或字节替换字节。如果丢弃了数据,则可以将此信息馈送到定时设备,以使定时设备考虑此信息。此替换可以是移除不想要的首部或数据分组(例如空闲分组),并且这些部分可以由任意类型的信息所替换,只要比特/字节的总数相同。将在下文中进一步解释,这使得可以根据第二时钟和并行路径ID来确定例如从串行链路接收相同数据的时间点。
如果移除了或添加了数据,那么例如如果向并行通道转发串行数据以及(任意)添加的数据或减少的串行数据的方式,则仍可以确定时间点。
以上整数可以是大于1的任意整数,并通常是2的倍数:2、4、8、16、32、64、128、512等。
优选地,在并行数据路径/导线上输出的数据是同时输出的,即使将可以在不同时间点输出此数据,只要在每个路径/导线上输出数据的频率是第二频率。
即使可以使用任意方式或方案来为从串行数据路径接收的每个数据比特确定向并行数据路径/导线中的哪个转发该比特,优选的是使用循环方案,在循环方案中,向连续的数据路径/导线馈送连续的数据比特,并且当比特已经馈送到最后一个路径/导线时,向第一路径/导线馈送下一个比特。
时间点与在哪个通道/路径/导线上输出数据分组的预定部分有关。如上所述的预定部分可以是数据分组的任意部分。通过第二时钟信号对在并行路径/导线上输出数据定时。
识别数据分组的该部分通常将需要像本领域往常一样分析分组。在一些实例中,这些部分间隔已知数量的比特,由此不分析而是简单地计数或计算将是足够的。
因此,识别器被适配为识别在并行数据路径中的哪条并行数据路径上输出预定部分的至少一部分,然后定时设备被适配为估计时间点。
例如,当从串行链路接收的比特/字节的数量与在并行路径/总线上输出的比特/字节的数量相同时,并且当用于控制在哪条并行路径上输出数据的方案是已知的时,用于输出预定部分的第二时钟信号的时间点及其并行路径/导线可用于计算接收该数据分组的该部分的第一时钟信号的时间点。
在优选实施例中,系统还包括用于从并行数据路径接收数据并根据第三时钟信号输出数据的一个或更多个先进先出元件。通常,至少在时间上,进出FIFO的带宽是相同的。否则,如果FIFO超过限度,则可能必须丢弃数据。在电路中的此位置,通常可以丢弃例如空闲分组和其他多余信息。然而,在两个时钟域(第二时钟和第三时钟)中的时钟的相位可以随时间改变,这是提供这些时钟边界的总体原因。
在一个实施例中,系统还包括:
-一个或更多个附加解串器,所述附加解串器中的每一个附加解串器用于:
-从单独的串行数据路径接收串行数据,
-向具有预定数量的并行数据路径的单独的并行数据总线输出并行数据,所述并行数据与所述串行数据有关,并且所述并行数据是根据附加时钟信号输出的,
其中,所述识别器被适配为:识别并行数据路径中在其中输出所述预定部分的至少一部分的一个并行数据路径,以及
其中,所述定时设备被适配为:根据所述并行数据路径中所识别的一个并行数据路径和所述第二时钟信号来估计所述时间点,其中,根据所述第二时钟信号来向所述并行数据路径中所识别的一个并行数据路径输出所述并行数据。
因此,附加的解串器可以与上文进一步描述的解串器具有相同类型,但可以更简单,这是因为它们不需要确定第一时钟和第二时钟。特别地,当由相同实体输出在第一串行路径和附加串行路径上传输的数据时,可以对其上数据进行同步,使得附加解串器可以使用来自第一解串器的第一时钟信号和第二时钟信号,其中,该附加时钟信号于是是第二时钟信号。如果不是这种情形,则附加解串器还可以被适配为:从串行数据路径导出具有第一频率的单独的第一时钟信号,并且将附加时钟信号导出为具有第二频率的单独的第二时钟信号,该第二频率是有关的第一频率除以预定整数。
此外,针对不同解串器,可以使用相同的识别器和/或定时设备,或可以使用单独的识别器和/或定时设备。
当相同实体在第一串行路径和附加串行路径上转发数据时,该实体可以决定在单个串行路径上转发全部数据分组。备选地,可以将数据分组分为较小部分(有时被称为微片(flit)),根据任意方案(例如循环方案)在串行路径上转发这些较小部分。因此,可以在串行路径中的任意一个上转发分组的预定部分,因此可以由解串器中的任意一个输出分组的预定部分。在此情形下,系统将知道分组是以此方式发送,并在解串器的输出之后,在期望时可以重新聚集该数据分组。
自然地,解串器的并行输出的总线宽度可以大于最小数据分组大小,使得可以同时输出单独数据分组的多个预定部分。在现有系统中,此情形可能导致数据分组具有相同时间戳。
在本发明的一个实施例中,所述识别器被适配为:优选地同时地识别多个并行数据路径,在所述多个并行数据路径中的每一个并行数据路径中,输出数据分组的至少一个预定部分,并且其中,所述定时设备被适配为:针对所述多个并行数据路径中的每一个并行数据路径,根据所述并行数据路径中所识别的一个并行数据路径和第二时钟信号来估计时间点,其中,根据所述第二时钟信号向所述并行数据路径中所识别的一个并行数据路径输出所述并行数据。然后,因为并行路径当然是不同的,时间点也将不同,这也是所期望的,其原因在于例如在串行路径上针对两个数据分组的接收的实际时间点是不同的。
在此实施例或另一实施例中,系统还包括:解码器,具有输入端和输出端,所述解码器被适配为:接收在并行数据总线上输出的数据,移除所述数据分组的至少一部分并在输出端上输出所述数据分组的剩余部分。
如上所述,编码方案可用于多个目的,例如提供差错校验或将较大分组分为例如均等大小的较小部分,通过链路转发这些部分。在后一种情形下,该较小部分中的每一个可以具有描述例如此部分是分组的第一部分还是第二部分的首部。特别地,当部分被标记为分组的第一部分时,此部分的识别特别容易,这是因为仅需要识别该首部。在例如6b/8b编码中,此首部是两比特首部,其中一个比特指示该首部是具有数据分组的第一部分的部分的首部。然后,识别器容易识别在其上输出此比特的并行路径。
本发明的第二方案涉及识别具有预定部分的数据分组的接收时间点的方法,所述方法包括:
-从串行数据路径接收串行数据,
-从所述串行数据路径导出具有第一频率的第一时钟信号,以及
-导出具有第二频率的第二时钟信号,所述第二频率是所述第一频率除以预定整数,
-向具有预定数量的并行数据路径的并行数据总线输出并行数据,所述并行数据与所述串行数据有关,并且所述并行数据是根据所述第二时钟信号输出的,
-识别所述并行数据路径中在其中输出所述预定部分的至少一部分的一个并行数据路径,以及
-根据所述并行数据路径中所识别的一个并行数据路径和所述第二时钟信号来估计所述时间点。
如上所述,时间点可以与全局时钟或本地时钟或甚至一个整数区间中的整数有关,其中,该时间由整数之一所标识,并且该整数针对时钟的每个时钟周期而改变(通常增加;但是回绕)。
此外,预定部分可以是分组的任意部分。通常,预定部分是所有相关分组具有的部分,这是因为这使识别更容易。优选地,预定部分是单个比特,该单个比特可以是例如数据分组的任意期望部分的第一个比特或最后一个比特。通常,数据分组符合一个或更多个标准,其还定义数据分组的不同标准部分(例如地址等)。
通常,从串行数据路径接收串行数据意味着以一次接收一个比特的方式接收数据。
可以基于第一数据的所识别的零点交叉的频率执行从串行数据路径导出具有第一频率的第一时钟信号的步骤,但还已知其他方法。
为了支持可以从解串器输出用于在串行链路上接收数据的带宽,第二时钟信号优选地是第一频率除以并行路径的数量(即并行总线的宽度)。
当输出并行数据时,这优选地由第二时钟信号控制,使得每当第二时钟改变时,在所有并行路径上同时输出并行数据。
当并行数据与串行数据有关时,所接收的数据的总量是输出数据量。只要未丢弃数据,就可以替换数据。如果解串器具有存储器或能够访问存储器,则该带宽匹配可以在少量时间上改变。然而,随着时间的流逝,期望带宽匹配。
如上所述,任何方案可用于确定应当向哪条并行路径转发在串行链路上接收的比特。然而,通常使用循环方案。
当识别部分或预定部分时,识别器可以从并行路径聚集数据分组的一部分并分析这些部分,以识别预定部分或部分。在其他情形下(例如数据分组具有相同或已知的大小,或已经将数据分组分为相同或已知的大小),识别器可以根据上一个部分的确切位置知道下一个部分的位置。备选地,该上一个部分可以用于指导识别器关于在哪里寻找下一个部分。
一般而言,该部分将是单个比特,并且该比特可以是数据分组的任意比特(例如分组首部或其一部分(例如地址)的第一比特)。在数据分组符合标准的情形下,可以根据该标准执行数据分组的分析以识别其中的位置,以便于识别比特/部分。
所识别的并行数据路径可以是单个数据路径或例如输出该部分的那些路径中的第一个(例如最小编号)。
在一个实施例中,方法还包括:一个或更多个先进先出元件从并行数据路径接收数据并根据第三时钟信号输出数据。如上所述,单独的时钟域的使用具有特定优点,并且可以跨越此时钟界限丢弃或不丢弃数据。
在该实施例或其他实施例中,所述方法还包括以下步骤:
-从一个或更多个附加的串行数据路径接收附加的串行数据,以及
-向具有预定数量的附加并行数据路径的附加单独并行数据总线输出附加的并行数据,所述附加的并行数据与附加的并行数据有关。
如在以上情形下,优选地不丢弃数据,但可以替换数据。
在本实施例中,以上识别和估计步骤可以考虑此附加数据的并行数据,或除了针对以上并行数据的识别和估计步骤以外,还可以针对此附加数据执行单独的识别和估计步骤,例如以下步骤:
-识别附加并行数据路径中在其中输出所述预定部分的至少一部分的一个附加并行数据路径,以及
-根据所述附加并行数据路径中所识别的一个附加并行数据路径和附加时钟信号来估计所述时间点,其中,根据所述附加时钟信号来向所述附加并行数据路径中所识别的一个附加并行数据路径输出附加并行数据。
此外,可以基于以上第二时钟信号(然后作为附加时钟信号)执行并行数据的输出和识别,或该方法可以包括从附加串行数据路径导出具有第一频率的单独的第一时钟信号并且导出具有第二频率的单独的第二时钟信号(然后作为附加时钟信号)的附加步骤,所述第二频率是第一频率除以预定整数。当在串行链路上转发的数据由相同实体(计算机、服务器等)输出和/或在时间上同步时,可以优选第一情形。当在串行链路上转发的数据由不同实体输出因此不同步时,可以优选第二情形。
此外,利用此解串行,任意方案可用于确定用于在哪条并行路径上输出所接收的比特。
在一个实施例中,所述识别步骤包括:识别多个并行数据路径,在所述多个并行数据路径中每一个并行数据路径中,输出预定部分的至少一个预定部分,并且其中,所述估计步骤包括:针对多个并行数据路径中的每一个并行数据路径,根据并行数据路径中所识别的一个并行数据路径和第二时钟信号来估计时间点,其中,根据所述第二时钟信号向并行数据路径中所识别的并行数据路径输出并行数据。这可以是总总线宽度超过最小数据分组大小的情形。
在最后一个实施例中,所述方法还包括以下步骤:接收在并行数据总线上输出的数据,移除所述数据分组的至少一部分并在输出端上输出所述数据分组的剩余部分。这可以是上述先前所编码的数据分组的解码。
附图说明
在下文中,将参考附图描述本发明的优选实施例,在附图中:
图1示出了现有技术时间戳标记设置,
图2示出了串行链路上的时间点和并行链路上的时间点和通道号之间的关联,
图3示出了根据本发明的时间戳标记设置的第一实施例,以及
图4示出了在多个串行链路上接收数据的第二实施例。
具体实施方式
上文已经描述了图1。
在图3中,在时间戳标记器10′中使用或可以使用与以上结合图1所描述的元件相同的多个元件。因此,数据分组或其他类型的数字信息在串行链路12上传输,并被转换为并行数据并馈送到并行数据总线16上,以降低分析电路所需的频率。此外,此转换可以在时间戳标记器10′的串行器/解串器或SERDES14中执行。此外,解串器14从链路12导出时钟信号,将时钟信号除以总线16的宽度,并根据这个降低的时钟信号24在总线16上输出数据,还输出这个降低的时钟信号24。
在本实施例中,将总线16上的信息馈送到时间戳标记电路22’,时间戳标记电路22’识别分组的预定部分(例如分组首部)出现在总线16的哪个并行通道或导线上。
应当注意的是,可以基于数据分组的任意部分(例如首部)执行时间戳标记。因此,电路22′可以搜索分组的第一比特或第一部分或仅预定部分。
当电路22′由时钟24定时或至少接收到时钟24时,其能够当在SERDES14和电路22′的接收之间未丢弃数据时,确定或估计例如SERDES14接收到数据分组的此部分的时间。
通常,SERDES14以循环方式将所接收的数据输出到总线16上。如果不是这种情况,则电路22′可能期望知道SERDES14将所接收的比特输出到总线16的通道/导线上的顺序,以便能够将通道/导线号和时钟24上的时钟时间转换为接收的时间(总线12上的时钟时间)。
电路22′意在将时钟24的时钟时间和总线16上的通道/导线号转换为与总线12上的信号有关的时间。当对不同数据分组的相同部分“定时”时,可以确定接收的相对时间点并相应地处理分组。
如以上结合图1所述,然后可以将解串行数据馈送到多个异步FIFO18,以允许数据从一个时钟域(时钟24)流向另一时钟域(时钟26)。
在电路22′之后(例如在FIFO18之前或之后),可以提供用于移除所接收的串行数据的编码的解码器28。此编码可以是例如64b/66b编码或6b/8b编码。此解码由时钟24或时钟26控制。
应当注意的是,期望在SERDES14从链路12接收数据和电路22′之间不丢弃数据。显然,如果在SERDES14以时间差T从链路所接收的两个数据分组之间丢弃数据,电路22′可能以小于T的时间差定时分组。
代替丢弃数据,可以替换这些不想要的数据,使得SERDES14在每个数据分组中和/或两个数据分组之间所接收的全部数据量与电路22′所接收的数据量相同。这些数据可以是在链路12上传输的空闲分组或附加首部(例如,编码方案(例如64b/66b编码)中所使用的首部、VLAN首部等)。当向电路22′发送时,这些数据可以由相同数量的比特/字节替换或以其他方式被保留。电路22′可以输出所接收的数据,或可以输出移除了这些首部、空闲分组等的减少的数据,例如以减少输出这些数据的数据总线上所使用的带宽。
在一种情形中,当从电路22′输出时,可以将与时间戳有关的信息引入数据分组。此信息可以替代数据分组的其他部分、空闲分组,或者除了在总线16上输出的信息/数据之外,还可以提供此信息。
自然地,在总线16上传输的数据分组无需通过电路22′发送。电路28、FIFO18和/或其他电路可以相连以直接从总线16接收数据分组。在此情形下,电路22′可以在总线16上或从其另一输出端(未示出)输出此时间戳信息。
图2示出了将串行链路12上的时间点与时钟24的时间点和总线16上的通道号进行关联的方式。如所述的,时钟信号24具有链路12上的时钟频率除以总线16上的通道数量的频率。在图2中,此数量是8。因此,信号24的频率是链路12的频率除以8。显然,可以将总线12上的比特的接收时间点(圆圈)与时钟24的时间点和总线16的通道号关联,这是因为8个比特将在总线16上同时但在不同通道上输出,并且这些8个比特将在不同时间点从链路12接收。
图4示出了在多个链路12上接收数据分组的实施例10″。在链路12上转发的数据分组可以由相同元件或不同元件转发。所有数据分组可以仅在链路12之一上传输,或数据分组可以部分在一个链路12上并且部分在另一链路12上转发,使得可以从两个SERDES14输出的数据聚集全部接收数据分组。这对于系统此部分的操作不重要。
来自每个链路12的数据由SERDES14接收并解串行,并然后输出到并行总线16并馈送到电路22′以用于时间戳标记。电路22′可以由从单个SERDES14输出的时钟信号24控制,这一般可以是当从链路12接收的数据是从相同元件输出并因此是同步传输的情况。备选地,每个电路22′可以从SERDES14接收时钟24,每个电路22′还从SERDES14接收数据(图3中的剖面线)。
自然地,总时间点可以是针对所有SERDES14或电路22′设置的,时钟24然后可以用于增加时间点,使得时钟的相位可以不同但总时间点至少几乎相同。
在本实施例中,独立于接收到所有接收的分组的链路并独立于每个分组是仅在链路12之一上还是在两个链路12上发送的,对所有接收的分组进行时间戳标记。电路22′都将寻找数据分组的预定部分,并且当识别出预定部分时,将输出定时信息。此信息然后可以跟随分组,不论该分组在总线16之一上发送、电路22′之一上发送还是多个这些总线/电路上发送并此后聚集到单个总线上等。
自然地,可以同时在总线16上识别多于一个数据分组的多个这些预定部分。在此情形下,应当注意的是,当时间戳信息与时间信号24的总时间点以及总线16的通道/导线号有关时,仍将确定不同时间点。
Claims (10)
1.一种用于识别具有预定部分的数据分组的接收时间点的系统,所述系统包括:
-单个解串器,用于:
-从串行数据路径接收串行数据,
-从所述串行数据路径导出具有第一频率的第一时钟信号,以及
-导出具有第二频率的第二时钟信号,所述第二频率是所述第一频率除以预定整数,
-向具有预定数量的并行数据路径的并行数据总线输出并行数据,所述并行数据与所述串行数据有关,并且所述并行数据是根据所述第二时钟信号输出的,
-识别器,被适配为:识别所述并行数据路径中在其中输出所述预定部分的至少一部分的一个并行数据路径的路径号,
-定时设备,被适配为:根据所述并行数据路径中所识别的一个并行数据路径的路径号和所述第二时钟信号来估计所述时间点。
2.根据权利要求1所述的系统,还包括:一个或更多个先进先出元件,用于从所述并行数据路径接收数据并根据第三时钟信号输出数据。
3.根据权利要求1所述的系统,还包括:
-一个或更多个附加解串器,所述附加解串器中的每一个附加解串器用于:
-从单独的串行数据路径接收串行数据,
-向具有预定数量的并行数据路径的单独的并行数据总线输出并行数据,所述并行数据与所述串行数据有关,并且所述并行数据是根据附加时钟信号输出的,
其中,所述识别器被适配为:识别所述并行数据路径中在其中输出所述预定部分的至少一部分的一个并行数据路径的路径号,以及
其中,所述定时设备被适配为:根据所述并行数据路径中所识别的一个并行数据路径的路径号和所述附加时钟信号来估计所述时间点,其中,根据所述附加时钟信号向所述并行数据路径中所识别的一个并行数据路径输出所述并行数据。
4.根据前述权利要求中任一项所述的系统,其中,所述识别器被适配为:识别多个并行数据路径,在所述多个并行数据路径中的每一个并行数据路径中,至少输出数据分组的预定部分,并且所述定时设备被适配为:针对所述多个并行数据路径中的每一个并行数据路径,根据所述并行数据路径中所识别的一个并行数据路径的路径号和所述第二时钟信号来估计时间点,其中,根据所述第二时钟信号向所述并行数据路径中所识别的一个并行数据路径输出所述并行数据。
5.根据权利要求1至3中任一项所述的系统,还包括:解码器,具有输入端和输出端,所述解码器被适配为:接收在所述并行数据总线上输出的数据,移除所述数据分组的至少一部分,并且在所述输出端上输出所述数据分组的剩余部分。
6.一种识别具有预定部分的数据分组的接收时间点的方法,所述方法包括:
-从串行数据路径接收串行数据,
-从所述串行数据路径导出具有第一频率的第一时钟信号,以及
-导出具有第二频率的第二时钟信号,所述第二频率是所述第一频率除以预定整数,
-向具有预定数量的并行数据路径的并行数据总线输出并行数据,所述并行数据与所述串行数据有关,并且所述并行数据是根据所述第二时钟信号输出的,
-识别所述并行数据路径中在其中输出所述预定部分的至少一部分的一个并行数据路径的路径号,以及
-根据所述并行数据路径中所识别的一个并行数据路径的路径号和所述第二时钟信号来估计所述时间点。
7.根据权利要求6所述的方法,还包括:一个或更多个先进先出元件从所述并行数据路径接收数据并根据第三时钟信号输出数据。
8.根据权利要求6所述的方法,还包括以下步骤:
-从一个或更多个附加串行数据路径接收附加串行数据,
-向具有预定数量的附加并行数据路径的附加单独并行数据总线输出附加并行数据,所述附加并行数据与所述附加串行数据有关,并且所述并行数据是根据附加时钟信号输出的,
-识别所述附加并行数据路径中在其中输出所述预定部分的至少一部分的一个附加并行数据路径的路径号,以及
-根据所述附加并行数据路径中所识别的一个附加并行数据路径的路径号和所述附加时钟信号来估计所述时间点,其中,根据所述附加时钟信号向所述附加并行数据路径中所识别的一个附加并行数据路径输出所述附加并行数据。
9.根据权利要求6至8中任一项所述的方法,其中,所述识别步骤包括:识别多个并行数据路径,在所述多个并行数据路径中的每一个并行数据路径中,至少输出起始首部的预定部分,并且所述估计步骤包括:针对所述多个并行数据路径中的每一个并行数据路径,根据所述并行数据路径中所识别的一个并行数据路径的路径号和所述第二时钟信号来估计时间点,其中,根据所述第二时钟信号向所述并行数据路径中所识别的一个并行数据路径输出所述并行数据。
10.根据权利要求6至8中任一项所述的方法,还包括以下步骤:接收在所述并行数据总线上输出的数据,移除所述数据分组的至少一部分,并在所述输出端上输出所述数据分组的剩余部分。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161530763P | 2011-09-02 | 2011-09-02 | |
US61/530,763 | 2011-09-02 | ||
PCT/EP2012/066895 WO2013030298A1 (en) | 2011-09-02 | 2012-08-30 | A system and a method for identifying a point in time of receipt of a data packet |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103797734A CN103797734A (zh) | 2014-05-14 |
CN103797734B true CN103797734B (zh) | 2017-09-12 |
Family
ID=46801480
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280041919.4A Active CN103797734B (zh) | 2011-09-02 | 2012-08-30 | 用于识别数据分组的接收时间点的系统和方法 |
Country Status (7)
Country | Link |
---|---|
US (1) | US9729259B2 (zh) |
EP (1) | EP2751941B1 (zh) |
JP (1) | JP6174581B2 (zh) |
KR (1) | KR20140065409A (zh) |
CN (1) | CN103797734B (zh) |
BR (1) | BR112014003824A2 (zh) |
WO (1) | WO2013030298A1 (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3015971B1 (en) * | 2014-10-28 | 2019-07-31 | Napatech A/S | A system and a method of deriving information |
US11050782B2 (en) | 2015-07-15 | 2021-06-29 | Security Together Corporation | Systems and methods for providing security to an integrated circuit in an endpoint device using a dynamic security architecture environment (DSAE) |
US10380335B1 (en) * | 2015-07-15 | 2019-08-13 | Security Together Corporation | Systems and methods for providing security to a host endpoint device |
CN106126466B (zh) * | 2016-06-27 | 2019-10-11 | 哈尔滨明快机电科技有限公司 | 一种并行数据变串行数据的传输方法 |
US11178263B2 (en) | 2017-12-13 | 2021-11-16 | Arista Networks, Inc. | System and a method for controlling timing of processing network data |
US11003206B1 (en) * | 2020-01-03 | 2021-05-11 | Rockwell Collins, Inc. | Field-programmable gate array precision input timing |
US11940835B2 (en) | 2022-02-25 | 2024-03-26 | FMAD Engineering (SNG) Pte. Ltd. | Clock disciplining and synchronizing |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7535844B1 (en) * | 2004-01-28 | 2009-05-19 | Xilinx, Inc. | Method and apparatus for digital signal communication |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5835498A (en) * | 1995-10-05 | 1998-11-10 | Silicon Image, Inc. | System and method for sending multiple data signals over a serial link |
US6295563B1 (en) * | 1998-01-30 | 2001-09-25 | Unisys Corporation | Control system for recreating of data output clock frequency which matches data input clock frequency during data transferring |
US7362797B2 (en) | 2002-03-21 | 2008-04-22 | Broadcom Corporation | Physical layer device having an analog SERDES pass through mode |
JP4335730B2 (ja) * | 2004-03-31 | 2009-09-30 | Necエレクトロニクス株式会社 | デマルチプレクサ装置 |
TW200620938A (en) * | 2004-09-07 | 2006-06-16 | Nec Electronics Corp | Synchronization device and semiconductor device |
JP4579108B2 (ja) * | 2004-09-07 | 2010-11-10 | ルネサスエレクトロニクス株式会社 | 同期装置及び半導体装置 |
JP2006250824A (ja) * | 2005-03-11 | 2006-09-21 | Nec Electronics Corp | 半導体集積回路およびその半導体集積回路におけるデータ解析方法 |
JP4652261B2 (ja) * | 2006-03-30 | 2011-03-16 | ルネサスエレクトロニクス株式会社 | パラレル変換回路 |
US8666257B2 (en) | 2007-05-24 | 2014-03-04 | Finisar Corporation | Optoelectronic devices with intelligent transmitter modules |
US7843771B2 (en) | 2007-12-14 | 2010-11-30 | Guide Technology, Inc. | High resolution time interpolator |
US7882474B2 (en) * | 2008-03-17 | 2011-02-01 | Avago Technologies Enterprise IP (Singapore) Pte. Ltd. | Testing phase error of multiple on-die clocks |
WO2011059439A2 (en) | 2009-11-12 | 2011-05-19 | Mentor Graphics Corporation | Scan test application through high-speed serial input/outputs |
JP5544896B2 (ja) * | 2010-01-22 | 2014-07-09 | 富士通株式会社 | 受信回路、情報処理装置、およびバッファ制御方法 |
JP5531655B2 (ja) * | 2010-02-08 | 2014-06-25 | 富士通株式会社 | シリアルデータ受信回路装置及びシリアルデータ受信方法 |
-
2012
- 2012-08-30 CN CN201280041919.4A patent/CN103797734B/zh active Active
- 2012-08-30 WO PCT/EP2012/066895 patent/WO2013030298A1/en active Application Filing
- 2012-08-30 BR BR112014003824A patent/BR112014003824A2/pt not_active IP Right Cessation
- 2012-08-30 KR KR1020147006303A patent/KR20140065409A/ko not_active Application Discontinuation
- 2012-08-30 EP EP12756161.1A patent/EP2751941B1/en active Active
- 2012-08-30 JP JP2014527661A patent/JP6174581B2/ja active Active
- 2012-08-30 US US14/238,753 patent/US9729259B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7535844B1 (en) * | 2004-01-28 | 2009-05-19 | Xilinx, Inc. | Method and apparatus for digital signal communication |
Also Published As
Publication number | Publication date |
---|---|
EP2751941B1 (en) | 2019-04-17 |
KR20140065409A (ko) | 2014-05-29 |
CN103797734A (zh) | 2014-05-14 |
US20140211816A1 (en) | 2014-07-31 |
JP6174581B2 (ja) | 2017-08-02 |
JP2014529245A (ja) | 2014-10-30 |
EP2751941A1 (en) | 2014-07-09 |
WO2013030298A1 (en) | 2013-03-07 |
BR112014003824A2 (pt) | 2017-06-13 |
US9729259B2 (en) | 2017-08-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103797734B (zh) | 用于识别数据分组的接收时间点的系统和方法 | |
CN111194529B (zh) | 包分类与加时间戳系统和方法 | |
US20090190595A1 (en) | Method, system and device for transmitting overhead information | |
CN1710888B (zh) | 生成监视数据报的方法 | |
WO2019071598A1 (zh) | 发送和接收时钟同步报文的方法和装置 | |
CN103959713B (zh) | 对通信网络中的数据流的测量 | |
CN113875207A (zh) | 用于在itu-t城域传送网的64b/66b字符流中提供路径信号开销的方法 | |
CN112333151A (zh) | 接收cpri数据流和接收以太网帧的方法、装置及系统 | |
CN113543261B (zh) | 一种卫星网络多径传输方法及装置 | |
US20030095575A1 (en) | Method and circuit for de-skewing data in a communication system | |
CN102971983B (zh) | 具有精确计时协议支持的包协议处理 | |
CN115118663B (zh) | 结合带内网络遥测获取网络拥塞信息的方法 | |
US20090262732A1 (en) | Data Communications Network | |
CN114666681B (zh) | 一种有状态的带内网络遥测方法及系统 | |
US11870687B2 (en) | Method and device for sending data packets over an IP/MPLS network | |
CN116405431A (zh) | 一种数据处理方法、网络节点和计算机可读存储介质 | |
CN102195750B (zh) | 数据传送装置及数据传送系统 | |
US20180124635A1 (en) | Frame start optimizing in telecommunications systems | |
CN111385058A (zh) | 一种数据传输的方法和装置 | |
US9143420B2 (en) | Data transport system, receiver and transmitter | |
CN115225550B (zh) | 一种基于分簇的路径规划算法的按需全网遥测装置 | |
CN101194479B (zh) | 电子设备、用于帧同步的方法以及移动设备 | |
US6954891B1 (en) | Technique for payload-independent frame delineation engine for optical data transport | |
CN108574530B (zh) | 数据发送、接收方法及装置以及多通道epon系统 | |
CN114039888B (zh) | 时延测量方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |