一种基于分组交换系统的全局同步方法及系统与流程

文档序号:12603672阅读:234来源:国知局
一种基于分组交换系统的全局同步方法及系统与流程
本发明涉及分组交换领域,尤其涉及一种基于分组交换系统的全局同步方法及系统。

背景技术:
分组交换设备由线卡上的交换接入芯片SA和交换芯片SF组成,大容量的分组交换系统中,交换芯片由两级组成,最上一层为SF2,下层为SF1,如果是中小容量的交换系统,则只需由SA和SF2组成即可,一种全局同步网络的结构如图1所示。在分布式的分组交换设备中,各个线卡间需要保持时戳计数的同步,以保证各个线卡同时发出的数据包具有相同的时戳,以便在下游目的线卡处能够重组起来。在目前的全局同步方法中,选择基准的方式基本为软件指定的方式,分组交换系统中的每个芯片都上报自己的状态和serdes链路状态到一个统一的网管,网管通过运算,得到应指定哪个芯片为基准,再以此为依据,计算出每个芯片需要选择哪条链路作为校准来源,再逐一将这些命令配置到系统中的每个芯片,如果系统中的任意一条链路或任意一个芯片故障,以上过程需要重新进行。以上的计算方法复杂,同时收集状态和下发命令的过程漫长,尤其在大型分组交换系统中可能有上千片芯片时。在系统中的某条链路或某个芯片故障时,重新选择基准的时间将会很长,可能导致在这期间发生系统丢包或由于时间不对齐产生拥塞。而本发明是基于纯硬件的运算,运算也是各个芯片自己单独运算,在很短的时间内即可完成基准的重新选择和同步,大大降低了在系统部分链路或芯片发生故障时发生丢包和拥塞的几率。

技术实现要素:
有鉴于此,本发明的主要目的在于提供一种基于分组交换系统的全局同步方法及系统,能够减少丢包率,提高校准精度。为达到上述目的,本发明的技术方案是这样实现的:一种基于分组交换系统的全局同步方法,包括:选定基准芯片;各芯片以所述基准芯片为基准对自身的计数器进行校准。所述选定基准芯片为:各个芯片选举出基准芯片,或者,由中央处理器CPU指定基准芯片。该方法还包括:每个芯片往所有的高速链路serdes发出0时刻脉冲或0时刻脉冲信元,每个芯片也根据每个serdes接收到的0时刻脉冲或0时刻脉冲信元反馈校准信元。所述各芯片以所述基准芯片为基准对自身的计数器进行校准为:芯片被层次低的芯片校准时使用接收到的0时刻脉冲或0时刻脉冲信元校准自身的计时器,芯片被层次高的芯片校准时使用接收到的校准信元内的差异值进行校准,同层次的芯片也使用差异值进行校准,SF2、交换芯片1SF1、接入芯片SA的层次依次降低。基准芯片为交换芯片SF2或SA,对于SF2,以所述基准芯片为基准对自身的计数器进行校准为:SF2的基准芯片初始值为最大无效值;SF2待所有有效链路都接收到校准信元后,对接收到的所有校准信元中的C_SF2_ID进行比较,所述C_SF2_ID代表本芯片的计时基准来自于哪个SF2;如果所有的C_SF2_ID都比自身的ID大,则表明自身就是基准时钟,不对自身进行校准;如果自身的ID并非最小,则选择接收到的C_SF2_ID最小的链路来对自身进行校准;如果自身的ID并非最小,并且多个链路都具有相同的最小C_SF2_ID,则在这些链路中选择SRC_ID最小的链路来对自身进行校准。该方法还包括:SF2发送校准信元到各个输出serdes,所述校准信元中的P_SF2_ID填为所述SF2的ID,并携带测量出的差异值Diff_t。基准芯片为SF2或SA,对于SF1,以所述基准芯片为基准对自身的计数器进行校准为:SF1的基准芯片初始值为最大无效值;SF1待所有有效链路接收到校准信元后,再进行比较;如果某一链路校准信元的P_SF2_ID或C_SF2_ID最小,则选择所述链路对自身进行校准,所述P_SF2_ID代表本芯片有物理链路直接连接的ID号最小的SF2,所述C_SF2_ID代表本芯片的计时基准来自于哪个SF2;如果多个链路都具有最小的P_SF2_ID或C_SF2_ID,但对端芯片类型不同,则在这些链路中选择对端为SF2的链路来对自身进行校准;如果多个链路都具有最小的P_SF2_ID或C_SF2_ID,且没有对端为SF2的链路,则根据对端芯片SRC_ID最小的链路来对自身进行校准。该方法还包括:SF1在确定自身的基准芯片后,将基准芯片填到C_SF2_ID域,发送到与自身连接的SF2,将自身物理连接的ID最小的SF2填到P_SF2_ID域,发送到与自身连接的SA;如果SF1与所有的SF2均断开连接,则将P_SF2_ID填为最大无效值。基准芯片为SF2或SA,对于SA,以所述基准芯片为基准对自身的计数器进行校准为:SA的基准芯片初始值为最大无效值;SA待所有有效链路都接收到校准信元后,再进行比较;如果对端芯片是SF1或SF2,则对接收到的校准信元中的P_SF2_ID进行比较,某一链路对应的P_SF2_ID最小,则使用该链路校准自身的计时器,校准后将该最小的P_SF2_ID作为自身的基准芯片记录下来;如果对端芯片是SF1或SF2,并且多个链路都具有最小的P_SF2_ID,则在这些链路中选择SRC_ID最小的链路来对自身进行校准,校准后将该最小的P_SF2_ID作为自身的基准芯片记录下来;如果对端芯片是SA,则对SRC_ID进行比较,使用最小的SRC_ID作为基准来进行校准,并在校准后将该最小的SRC_ID作为自身的基准芯片记录下来;如果接收到的最小SRC_ID比自身的ID大,则表示自身就是基准时钟,不对自身进行校准。该方法还包括:SA在确定自身的基准芯片后,将基准芯片填到C_SF2_ID域,并测量出差异值Diff_Time发送校准信元到各个输出serdes。一种基于分组交换系统的全局同步系统,包括一基准芯片和至少一个其他芯片,所述其他芯片以所述基准芯片为基准对自身的计数器进行校准。所述基准芯片由各个芯片选举或由CPU指定。所述芯片,还用于往所有的serdes发出0时刻脉冲或0时刻脉冲信元;以及根据每个serdes接收到的0时刻脉冲或0时刻脉冲信元反馈校准信元。所述芯片以所述基准芯片为基准对自身的计数器进行校准为:芯片被层次低的芯片校准时使用接收到的0时刻脉冲或0时刻脉冲信元校准自身的计时器,芯片被层次高的芯片校准时使用接收到的校准信元内的差异值进行校准,同层次的芯片也使用差异值进行校准,SF2、交换芯片1SF1、接入芯片SA的层次依次降低。基准芯片为SF2或SA,对于SF2,以所述基准芯片为基准对自身的计数器进行校准为:SF2的基准芯片初始值为最大无效值;SF2待所有有效链路都接收到校准信元后,对接收到的所有校准信元中的C_SF2_ID进行比较,所述C_SF2_ID代表本芯片的计时基准来自于哪个SF2;如果所有的C_SF2_ID都比自身的ID大,则表明自身就是基准时钟,不对自身进行校准;如果自身的ID并非最小,则选择接收到的C_SF2_ID最小的链路来对自身进行校准;如果自身的ID并非最小,并且多个链路都具有相同的最小C_SF2_ID,则在这些链路中选择SRC_ID最小的链路来对自身进行校准。所述SF2,还用于发送校准信元到各个输出serdes,所述校准信元中的P_SF2_ID填为所述SF2的ID,并携带测量出的差异值Diff_t。基准芯片为SF2或SA,对于SF1,以所述基准芯片为基准对自身的计数器进行校准为:SF1的基准芯片初始值为最大无效值;SF1待所有有效链路接收到校准信元后,再进行比较;如果某一链路校准信元的P_SF2_ID或C_SF2_ID最小,则选择所述链路对自身进行校准,所述P_SF2_ID代表本芯片有物理链路直接连接的ID号最小的SF2,所述C_SF2_ID代表本芯片的计时基准来自于哪个SF2;如果多个链路都具有最小的P_SF2_ID或C_SF2_ID,但对端芯片类型不同,则在这些链路中选择对端为SF2的链路来对自身进行校准;如果多个链路都具有最小的P_SF2_ID或C_SF2_ID,且没有对端为SF2的链路,则根据对端芯片SRC_ID最小的链路来对自身进行校准。所述SF1,还用于在确定自身的基准芯片后,将基准芯片填到C_SF2_ID域,发送到与自身连接的SF2,将自身物理连接的ID最小的SF2填到P_SF2_ID域,发送到与自身连接的SA;如果SF1与所有的SF2均断开连接,则将P_SF2_ID填为最大无效值。基准芯片为SF2或SA,对于SA,以所述基准芯片为基准对自身的计数器进行校准为:SA的基准芯片初始值为最大无效值;SA待所有有效链路都接收到校准信元后,再进行比较;如果对端芯片是SF1或SF2,则对接收到的校准信元中的P_SF2_ID进行比较,某一链路对应的P_SF2_ID最小,则使用该链路校准自身的计时器,校准后将该最小的P_SF2_ID作为自身的基准芯片记录下来;如果对端芯片是SF1或SF2,并且多个链路都具有最小的P_SF2_ID,则在这些链路中选择SRC_ID最小的链路来对自身进行校准,校准后将该最小的P_SF2_ID作为自身的基准芯片记录下来;如果对端芯片是SA,则对SRC_ID进行比较,使用最小的SRC_ID作为基准来进行校准,并在校准后将该最小的SRC_ID作为自身的基准芯片记录下来;如果接收到的最小SRC_ID比自身的ID大,则表示自身就是基准时钟,不对自身进行校准。所述SA,还用于在确定自身的基准芯片后,将基准芯片填到C_SF2_ID域,并测量出差异值Diff_Time发送校准信元到各个输出serdes。本发明基于分组交换系统的全局同步方法及系统,选定基准芯片;各芯片以所述基准芯片为基准对自身的计数器进行校准,其中,每个芯片都往所有的serdes发出0时刻脉冲或0时刻脉冲信元,每个芯片也都根据每个链路接收到的0时刻脉冲或0时刻脉冲信元反馈回校准信元。通过本发明,能够在基准芯片或连接基准芯片(直接或间接)的serdes故障时,快速选择新的基准芯片或基准链路,从而可以减少丢包率,并且,层次高的芯片被层次低的芯片校准时使用接收到的0时刻脉冲或0时刻脉冲信元进行校准,所以能提高校准精度。附图说明图1为实施例一种全局同步网络的结构示意图;图2为本发明基于分组交换系统的全局同步方法流程示意图;图3为系统正常工作时的时钟基准扩散路径示意图;图4为基准时钟芯片故障导致重新选择新的基准的示意图;图5为SF1的serdes故障导致基准选择路径变更的示意图;图6为通过另外的平面进行计时同步的示意图;图7为通过SF2进行同步信息传递的示意图;图8为通过多个芯片进行同步的示意图;图9为多级同步时各个芯片的计时偏差示意图。具体实施方式本发明的基本思想是:选定基准芯片;各芯片以所述基准芯片为基准对自身的计数器进行校准,其中,每个芯片都往所有的serdes发出0时刻脉冲或0时刻脉冲信元,每个芯片也都根据每个链路接收到的0时刻脉冲或0时刻脉冲信元反馈回校准信元。图2为本发明基于分组交换系统的全局同步方法流程示意图,如图2所示,该方法包括:步骤201:选定基准芯片。这里,所述选定基准芯片可以为:各个芯片选举出基准芯片,或者,由中央处理器CPU指定基准芯片。步骤202:各芯片以所述基准芯片为基准对自身的计数器进行校准。需要说明的是,基准芯片或连接基准芯片的serdes故障时,选择新的基准芯片,各个芯片以所述新的基准芯片为基准对自身的计数器进行校准。一般的,由于最终需要校准的是SA,而SF2层次最高,相对于SF1和SA,SF2到达SA的路径基本相等,因此应选举SF2作为基准。各个芯片独立地获取周围的芯片连接情况,经过判断,自动选举出一个基准芯片,以它为基准对自身的计数器进行校准,如果本芯片直接连接该基准芯片,则可以直接根据该基准芯片进行校准,如果和基准芯片之间需要通过多跳进行连接,则需路径上的芯片依次校准,最后本芯片才能得到校准。一般的,为系统中所有的SA、SF都设置一个计时器,选定系统中任意一个SF2作为基准(例如id=0的SF2),SF1在计时到0时立刻通过高速链路serdes发出一个脉冲信号或信元(即0时刻脉冲或0时刻脉冲信元),SF2接收到这个脉冲信号或信元后和自身的0计时点相比较,得到一个差异值,然后可以在随后任意的时刻将这个差异值通过一种特殊的校准信元回告SF1,并且给予下级SF1调节SA计时器的权力。SF1再根据这个差异值调节自身的计时器和主SF2保持一致,各个SF1间的计时误差就是各个SF1通过serdes传递计时脉冲的时间差。之后,SA向和自身相连的SF1发出自身的0时刻脉冲或0时刻脉冲信元,具有调节权力的SF1接收到该0时刻脉冲或0时刻脉冲信元之后和自身的0计时点比较,得到差异值,稍后再通过校准信元回告SA,使SA根据这个差异调节自身的计时器,从而使整个网络的SA都能基本保持同步。例如,在图1中,选择平面1的第一个SF2(SF2_0)作为基准,和该SF2相连的SF1和该SF2对齐后,这些SF1再校准和所述SF1相连的SA。如果只是单级的交换,则只需选定ID为0的SF2作为主计时器直接对SA进行校准即可。由于要求在SA或SF1在计时器到达零点时立刻向主计时器发出脉冲,因此必须要能够以最高优先级打断正在发送的其他信元,可以考虑在8B/10B编码中添加一种特殊的控制字来传递这个脉冲,而基准SF则以一种特殊的校准信元回告计时差异值,因此需要单独定义一种控制信元。由于计时零点脉冲只需经过8B/10B编码、serdes、8B/10B解码,因此延时应该是很小的,不会造成大的影响。另外,计时脉冲可以不通过8B/10B编码进行,也可以通过在零时刻发送一个消息信元,通知对端芯片,但精度会比使用8B/10B编码差,例如,如果允许较大的误差,可以采用0脉冲信元,0脉冲信元不能打断当前正在发送到信元,只能排在当前信元之后发送,因此误差最大会有一个信元时间。选举出的基准芯片被拔出,或哪个serdes断掉等,此时需要寻找一个新的基准时钟,并再次进行同步,并且最好新的基准时钟应该基本和原有的基准时钟一致,以避免时戳值发生大的变化。本发明中,定义如下几种概念:SRC_LVL:包括SA,SF2,SF1三种模式(destination_level),定义如下:SRC_ID:代表本芯片的ID号,SA、SF2、SF1各个独立编号。C/P_SF2_ID:C_SF2_ID代表本芯片的计时基准来自于哪个SF2,P_SF2_ID代表本芯片有物理链路直接连接的ID号最小的SF2是哪个SF2。SA发出的校准信元仅使用C_SF2_ID,SF2仅使用P_SF2_ID,SF1向SA发P_SF2_ID,SF1向SF2发C_SF2_ID。本发明中,为了防止意外情况出现,对芯片行为作如下约定:每个芯片都往所有的serdes发出0时刻脉冲或0时刻脉冲信元,每个芯片也都根据每个链路接收到的0时刻脉冲或0时刻脉冲信元反馈回校准信元;层次较高的芯片被层次低的芯片校准时使用接收到的0时刻脉冲或0时刻脉冲信元校准自身的计时器,层次较低的芯片被层次高的芯片校准时使用接收到的校准信元内的差异值进行校准,同层次的芯片(只出现在Mesh结构中)也使用差异值进行校准,层次高低定义为SF2>SF1>SA。基准芯片为SF2或SA时,具体的,SF2的行为约定如下:SF2的基准芯片初始值为最大无效值;SF2待所有有效链路都接收到校准信元后,对接收到的所有校准信元中的C_SF2_ID进行比较;如果所有的C_SF2_ID都比自身的ID大,则表明自身就是基准时钟,不对自身进行校准;如果自身的ID并非最小,则选择接收到的C_SF2_ID最小的那个链路来对自身进行校准;如果自身的ID并非最小,并且多个链路都具有相同的最小C_SF2_ID,则在这些链路中选择SRC_ID最小的链路来对自身进行校准;SF2发送校准信元到各个输出serdes,所述校准信元中的P_SF2_ID填为所述SF2的ID,并携带测量出的差异值Diff_t,换言之,SF2在发放校准信元时,将P_SF2_ID填为自身的ID,并测量出差异值Diff_t发送校准信元到各个输出serdes。基准芯片为SF2或SA时,SF1的行为约定如下:SF1的基准芯片初始值为最大无效值;SF1待所有有效链路接收到校准信元后,再进行比较;如果哪个链路校准信元的P_SF2_ID或C_SF2_ID最小,则选择哪个链路对自身进行校准;如果多个链路都具有最小的P_SF2_ID或C_SF2_ID,但对端芯片类型不同(即SA和SF2),则在这些链路中选择对端为SF2的链路来对自身进行校准(对端为SF2的链路有多条,则选择其中ID最小的链路);如果多个链路都具有最小的P_SF2_ID或C_SF2_ID,在这些链路中先根据对端芯片类型进行选择,没有对端为SF2的链路,再根据对端芯片SRC_ID最小的链路来对自身进行校准;SF1在确定自身的基准芯片(来自于接收到的P_SF2_ID或C_SF2_ID)后,将基准芯片填到C_SF2_ID域,发送到与自身连接的SF2,将自身物理连接的ID最小的SF2填到P_SF2_ID域,发送到与自身连接的SA。如果SF1与所有的SF2均断开连接,则将P_SF2_ID填为最大无效值。基准芯片为SF2或SA时,SA的行为约定如下:SA的基准芯片初始值为最大无效值;SA待所有有效链路都接收到校准信元后,再进行比较;如果对端芯片是SF1或SF2,则对接收到的校准信元中的P_SF2_ID进行比较,哪个链路对应的P_SF2_ID最小,则使用该链路校准自身的计时器,校准后将该P_SF2_ID的ID作为自身的基准芯片记录下来;如果对端芯片是SF1或SF2,并且多个链路都具有最小的P_SF2_ID,则在这些链路中选择SRC_ID最小的链路来对自身进行校准,校准后将该P_SF2_ID的ID作为自身的基准芯片记录下来;如果对端芯片是SA,则对SRC_ID进行比较,使用最小的SRC_ID作为基准来进行校准,如果接收到的最小SRC_ID比自身的ID都大,则表示自身就是基准时钟,不对自身进行校准。校准后将该最小的SRC_ID作为自身的基准芯片记录下来;SA在确定自身的基准芯片后,将基准芯片填到C_SF2_ID域,并测量出差异值Diff_Time发送校准信元到各个输出serdes。需要说明的是,对于SA、SF1和SF2,如果在比较时,多个链路的对端P_SF2_ID或C_SF2_ID相等,且SRC_LVL、SRC_ID也相等,意味着这多个链路接的是同一个芯片,则根据自身链路的ID来进行选择,链路ID最小的链路被用来进行校准。建立了上述机制后,可以有效应对系统的各种异常变化,使系统能够很快重新选择一个新的基准时钟,然后使所有的SA最终能够同步到这个新基准上。在系统正常工作时,确立一个时钟基准后,这个时钟基准将会逐步扩散到整个系统的所有SA和SF上,以图1为例,扩散路径如图3所示。如果基准芯片出现故障,和所有其他芯片失去联系,则和该SF2连接的SF1或SA将在剩下的SF2中重新选择一个新的基准时钟,并和它对齐,然后再将这个新的基准扩散到整个系统,如图4所示。如果只是某个SF1连接基准芯片的serdes故障,则它发出的校准信元的P_SF2_ID将会变更为它所连接的次小SF2,它的下级SA经过比较,将会重新选择另外的和基准芯片相连的最小SF1来进行校准,然后这个和基准芯片连接故障的SF1通过比较,将会选择下级的SA来对自身进行校准,变更路径如图5所示。如果SA和平面1的所有serdes连接故障,则SA仍然能够通过已经被同步的平面2的SF1来对自身进行校准,如图6所示。如果上面一种情况再进一步,某个SA只能和平面2的一个SF1连接,而这个SF1也仅能和这1个SA连接,向上只能和1个SF2连接,这样的话仍然能够将SF2_0的同步信息传递到这个SA,使其和SF2_0保持同步,如图7所示。根据这种情况还可以推导出更多种故障情况下仍然是可以完成同步的,例如系统中正常工作的SA都只有一条路径和一个SF1相连,而系统中SF1也都只能和1个SA和1个SF2相连,每个SF2也只能和2个SF1相连(如果只和1个SF1相连就无法进行数据信元交换了,也就不用全局同步了),只要SA能够有逻辑路径和基准芯片相连就能完成同步。由于从上到下的同步过程(SF2->SA)是使用P_SF2_ID(代表了拓扑结构)进行比较的,而从下到上的同步过程(SA->SF2)是使用C_SF2_ID(代表了基准关系)进行比较的,两个过程相互独立,不会出现两个芯片互相锁定校准的现象,避免了出现死循环,使整个系统都能得到可靠的同步。对于单级交换结构和Mesh来讲,同步更为简单,可以根据上面的过程进行推论。从上面的过程可以看到,在逻辑路径上离基准芯片最远的SA可能需要经过很多级SF2,SF1和SA才能完成同步,需要考虑计时误差是否会随着中间路径级数的增加而增加,如下图8所示的情况:图8中SA基本都是单向连接,离基准芯片距离最远的SA需要通过上百个芯片才能最终获得同步,但是,由于层次较高的芯片被层次低的芯片校准时使用接收到的0时刻脉冲或0时刻脉冲信元校准自身的计时器,层次较低的芯片被层次高的芯片校准时使用接收到的校准信元内的差异值进行校准,两个相反的过程使误差是可以得到补偿的,0时刻脉冲或0时刻脉冲信元发送者的计时总是会比接收者早,而0时刻脉冲或0时刻脉冲信元发送者总是较低层次的芯片,图8中系统的各个芯片的0时刻差异如图9所示,可以看出,实际各个SA的计时起点基本是一致的,没有因为中间的级数增多而使误差增大。本发明还相应地提出了一种基于分组交换系统的全局同步系统,其特征在于,该系统包括一基准芯片和至少一个其他芯片,所述其他芯片以所述基准芯片为基准对自身的计数器进行校准。所述基准芯片由各个芯片选举或由CPU指定。所述芯片,还用于往所有的serdes发出0时刻脉冲或0时刻脉冲信元;以及根据每个serdes接收到的0时刻脉冲或0时刻脉冲信元反馈校准信元。所述芯片以所述基准芯片为基准对自身的计数器进行校准为:芯片被层次低的芯片校准时使用接收到的0时刻脉冲或0时刻脉冲信元校准自身的计时器,芯片被层次高的芯片校准时使用接收到的校准信元内的差异值进行校准,同层次的芯片也使用差异值进行校准,SF2、交换芯片SF1、接入芯片SA的层次依次降低。基准芯片为SF2或SA,对于SF2,以所述基准芯片为基准对自身的计数器进行校准为:SF2的基准芯片初始值为最大无效值;SF2待所有有效链路都接收到校准信元后,对接收到的所有校准信元中的C_SF2_ID进行比较,所述C_SF2_ID代表本芯片的计时基准来自于哪个SF2;如果所有的C_SF2_ID都比自身的ID大,则表明自身就是基准时钟,不对自身进行校准;如果自身的ID并非最小,则选择接收到的C_SF2_ID最小的链路来对自身进行校准;如果自身的ID并非最小,并且多个链路都具有相同的最小C_SF2_ID,则在这些链路中选择SRC_ID最小的链路来对自身进行校准。所述SF2,还用于发送校准信元到各个输出serdes,所述校准信元中的P_SF2_ID填为所述SF2的ID,并携带测量出的差异值Diff_t。基准芯片为SF2或SA,对于SF1,以所述基准芯片为基准对自身的计数器进行校准为:SF1的基准芯片初始值为最大无效值;SF1待所有有效链路接收到校准信元后,再进行比较;如果某一链路校准信元的P_SF2_ID或C_SF2_ID最小,则选择所述链路对自身进行校准,所述P_SF2_ID代表本芯片有物理链路直接连接的ID号最小的SF2,所述C_SF2_ID代表本芯片的计时基准来自于哪个SF2;如果多个链路都具有最小的P_SF2_ID或C_SF2_ID,但对端芯片类型不同,则在这些链路中选择对端为SF2的链路来对自身进行校准;如果多个链路都具有最小的P_SF2_ID或C_SF2_ID,且没有对端为SF2的链路,则根据对端芯片SRC_ID最小的链路来对自身进行校准。所述SF1,还用于在确定自身的基准芯片后,将基准芯片填到C_SF2_ID域,发送到与自身连接的SF2,将自身物理连接的ID最小的SF2填到P_SF2_ID域,发送到与自身连接的SA;如果SF1与所有的SF2均断开连接,则将P_SF2_ID填为最大无效值。基准芯片为SF2或SA,对于SA,以所述基准芯片为基准对自身的计数器进行校准为:SA的基准芯片初始值为最大无效值;SA待所有有效链路都接收到校准信元后,再进行比较;如果对端芯片是SF1或SF2,则对接收到的校准信元中的P_SF2_ID进行比较,某一链路对应的P_SF2_ID最小,则使用该链路校准自身的计时器,校准后将该最小的P_SF2_ID作为自身的基准芯片记录下来;如果对端芯片是SF1或SF2,并且多个链路都具有最小的P_SF2_ID,则在这些链路中选择SRC_ID最小的链路来对自身进行校准,校准后将该最小的P_SF2_ID作为自身的基准芯片记录下来;如果对端芯片是SA,则对SRC_ID进行比较,使用最小的SRC_ID作为基准来进行校准,并在校准后将该最小的SRC_ID作为自身的基准芯片记录下来;如果接收到的最小SRC_ID比自身的ID大,则表示自身就是基准时钟,不对自身进行校准。所述SA,还用于在确定自身的基准芯片后,将基准芯片填到C_SF2_ID域,并测量出差异值Diff_Time发送校准信元到各个输出serdes。以上所述仅为本发明的实施例而已,并非用于限定本发明的保护范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1