Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
GLOBAL SYNCHRONIZATION METHOD AND SYSTEM BASED ON PACKET SWITCHING SYSTEM
Document Type and Number:
WIPO Patent Application WO/2013/097092
Kind Code:
A1
Abstract:
Disclosed is a global synchronization method based on a packet switching system, comprising: selecting a reference chip; and each chip calibrating a counter thereof by taking the reference chip as a reference, wherein each chip sends a pulse of time = 0 or pulse cell of time = 0 to all high-speed links (serdes), and feeds back a calibrated cell according to the pulse of time = 0 or pulse cell of time = 0 that each link has received. Also disclosed is a global synchronization system based on a packet switching system accordingly. Through the present invention, packet loss rate can be decreased and the calibration accuracy can be improved.

Inventors:
HUANG WEI (CN)
Application Number:
PCT/CN2011/084738
Publication Date:
July 04, 2013
Filing Date:
December 27, 2011
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
ZTE CORP (CN)
HUANG WEI (CN)
International Classes:
H04J3/06
Foreign References:
US7002996B12006-02-21
CN101562490A2009-10-21
CN101931585A2010-12-29
CN101674645A2010-03-17
US20110191619A12011-08-04
Other References:
See also references of EP 2790336A4
Attorney, Agent or Firm:
CHINA PAT INTELLECTUAL PROPERTY OFFICE (CN)
北京派特恩知识产权代理事务所(普通合伙) (CN)
Download PDF:
Claims:
权利要求书

1、一种基于分组交换系统的全局同步方法,其特征在于,该方法包括: 选定基准芯片;

各芯片以所述基准芯片为基准对自身的计数器进行校准。

2、 根据权利要求 1所述的方法, 其特征在于, 所述选定基准芯片为: 各个芯片选举出基准芯片, 或者, 由中央处理器 CPU指定基准芯片。

3、 根据权利要求 1所述的方法, 其特征在于, 该方法还包括: 每个芯 片往所有的高速链路 serdes发出 0时刻脉沖或 0时刻脉沖信元, 每个芯片 也根据每个 serdes接收到的 0时刻脉沖或 0时刻脉沖信元反馈校准信元。

4、 根据权利要求 3所述的方法, 其特征在于, 所述各芯片以所述基准 芯片为基准对自身的计数器进行校准为: 芯片被层次低的芯片校准时使用 接收到的 0时刻脉沖或 0时刻脉沖信元校准自身的计时器, 芯片被层次高 的芯片校准时使用接收到的校准信元内的差异值进行校准, 同层次的芯片 也使用差异值进行校准, SF2、 交换芯片 1 SF1、 接入芯片 SA的层次依次 降低。

5、根据权利要求 3所述的方法,其特征在于,基准芯片为交换芯片 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最小的链路来对自身进行校准。

6、 根据权利要求 5所述的方法, 其特征在于, 该方法还包括: SF2发 送校准信元到各个输出 serdes, 所述校准信元中的 P— SF2— ID填为所述 SF2 的 ID, 并携带测量出的差异值 Diff— 1。

7、 根据权利要求 3所述的方法, 其特征在于, 基准芯片为 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最小的链路来对自身进行校准。

8、 根据权利要求 7所述的方法, 其特征在于, 该方法还包括: SF1在 确定自身的基准芯片后,将基准芯片填到 C— SF2— ID域,发送到与自身连接 的 SF2, 将自身物理连接的 ID最小的 SF2填到 P— SF2— ID域, 发送到与自 身连接的 SA; 如果 SF1与所有的 SF2均断开连接, 则将 P— SF2— ID填为最 大无效值。

9、 根据权利要求 3所述的方法, 其特征在于, 基准芯片为 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大, 则表示自身就是基 准时钟, 不对自身进行校准。

10、 根据权利要求 9所述的方法, 其特征在于, 该方法还包括: SA在 确定自身的基准芯片后, 将基准芯片填到 C— SF2— ID 域, 并测量出差异值 Diff— Time发送校准信元到各个输出 serdes。

11、 一种基于分组交换系统的全局同步系统, 其特征在于, 该系统包 括一基准芯片和至少一个其他芯片 , 所述其他芯片以所述基准芯片为基准 对自身的计数器进行校准。

12、 根据权利要求 11所述的系统, 其特征在于, 所述基准芯片由各个 芯片选举或由 CPU指定。

13、 根据权利要求 11所述的系统, 其特征在于, 所述芯片, 还用于往 所有的 serdes发出 0时刻脉沖或 0时刻脉沖信元; 以及根据每个 serdes接 收到的 0时刻脉沖或 0时刻脉沖信元反馈校准信元。

14、 根据权利要求 13所述的系统, 其特征在于, 所述芯片以所述基准 芯片为基准对自身的计数器进行校准为: 芯片被层次低的芯片校准时使用 接收到的 0时刻脉沖或 0时刻脉沖信元校准自身的计时器, 芯片被层次高 的芯片校准时使用接收到的校准信元内的差异值进行校准, 同层次的芯片 也使用差异值进行校准, SF2、 交换芯片 1 SF1、 接入芯片 SA的层次依次 降低。

15、 根据权利要求 13 所述的系统, 其特征在于, 基准芯片为 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最小的链路来对自身进行校准。

16、 根据权利要求 15所述的系统, 其特征在于, 所述 SF2, 还用于发 送校准信元到各个输出 serdes, 所述校准信元中的 P— SF2— ID填为所述 SF2 的 ID, 并携带测量出的差异值 Diff— 1。

17、 根据权利要求 13 所述的系统, 其特征在于, 基准芯片为 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最小的链路来对自身进行校准。

18、 根据权利要求 17所述的系统, 其特征在于, 所述 SF1 , 还用于在 确定自身的基准芯片后,将基准芯片填到 C— SF2— ID域,发送到与自身连接 的 SF2, 将自身物理连接的 ID最小的 SF2填到 P— SF2— ID域, 发送到与自 身连接的 SA; 如果 SF1与所有的 SF2均断开连接, 则将 P— SF2— ID填为最 大无效值。

19、 根据权利要求 13 所述的系统, 其特征在于, 基准芯片为 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大, 则表示自身就是基 准时钟, 不对自身进行校准。

20、 根据权利要求 19所述的系统, 其特征在于, 所述 SA, 还用于在 确定自身的基准芯片后, 将基准芯片填到 C— SF2— ID域, 并测量出差异值 Diff Time发送校准信元到各个输出 serdes。

Description:
一种基于分组交换系统的全局同步方法及系统 技术领域

本发明涉及分组交换领域, 尤其涉及一种基于分组交换系统的全局同 步方法及系统。 背景技术

分组交换设备由线卡上的交换接入芯片 SA和交换芯片 SF组成, 大容 量的分组交换系统中,交换芯片由两级组成, 最上一层为 SF2 ,下层为 SF1 , 如果是中小容量的交换系统,则只需由 SA和 SF2组成即可,一种全局同步 网络的结构如图 1 所示。 在分布式的分组交换设备中, 各个线卡间需要保 持时戳计数的同步, 以保证各个线卡同时发出的数据包具有相同的 时戳, 以便在下游目的线卡处能够重组起来。

在目前的全局同步方法中, 选择基准的方式基本为软件指定的方式, 分组交换系统中的每个芯片都上报自己的状态 和 serdes链路状态到一个统 一的网管, 网管通过运算, 得到应指定哪个芯片为基准, 再以此为依据, 计算出每个芯片需要选择哪条链路作为校准来 源, 再逐一将这些命令配置 到系统中的每个芯片, 如果系统中的任意一条链路或任意一个芯片故 障, 以上过程需要重新进行。 以上的计算方法复杂, 同时收集状态和下发命令 的过程漫长, 尤其在大型分组交换系统中可能有上千片芯片 时。 在系统中 的某条链路或某个芯片故障时, 重新选择基准的时间将会很长, 可能导致 在这期间发生系统丟包或由于时间不对齐产生 拥塞。

而本发明是基于纯硬件的运算, 运算也是各个芯片自己单独运算, 在 很短的时间内即可完成基准的重新选择和同步 , 大大降低了在系统部分链 路或芯片发生故障时发生丟包和拥塞的几率。 发明内容

有鉴于此, 本发明的主要目的在于提供一种基于分组交换 系统的全局 同步方法及系统, 能够减少丟包率, 提高校准精度。

为达到上述目的, 本发明的技术方案是这样实现的:

一种基于分组交换系统的全局同步方法, 包括:

选定基准芯片;

各芯片以所述基准芯片为基准对自身的计数器 进行校准。

所述选定基准芯片为: 各个芯片选举出基准芯片, 或者, 由中央处理 器 CPU指定基准芯片。

该方法还包括:每个芯片往所有的高速链路 serdes发出 0时刻脉沖或 0 时刻脉沖信元, 每个芯片也根据每个 serdes接收到的 0时刻脉沖或 0时刻 脉沖信元反馈校准信元。

所述各芯片以所述基准芯片为基准对自身的计 数器进行校准为: 芯片 被层次低的芯片校准时使用接收到的 0时刻脉沖或 0时刻脉沖信元校准自 身的计时器, 芯片被层次高的芯片校准时使用接收到的校准 信元内的差异 值进行校准, 同层次的芯片也使用差异值进行校准, SF2、 交换芯片 1 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— 1。

基准芯片为 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、 交换芯片 1 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— 1。

基准芯片为 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为实施例一种全局同步网络的结构示意图;

图 1为本发明基于分组交换系统的全局同步方法 程示意图; 图 3为系统正常工作时的时钟基准扩散路径示意 ;

图 4为基准时钟芯片故障导致重新选择新的基准 示意图;

图 5为 SF1的 serdes故障导致基准选择路径变更的示意图;

图 6为通过另外的平面进行计时同步的示意图;

图 7为通过 SF2进行同步信息传递的示意图;

图 8为通过多个芯片进行同步的示意图;

图 9为多级同步时各个芯片的计时偏差示意图。 具体实施方式

本发明的基本思想是: 选定基准芯片; 各芯片以所述基准芯片为基准 对自身的计数器进行校准, 其中,每个芯片都往所有的 serdes发出 0时刻脉 沖或 0时刻脉沖信元,每个芯片也都根据每个链路 收到的 0时刻脉沖或 0 时刻脉沖信元反馈回校准信元。

图 1 为本发明基于分组交换系统的全局同步方法流 程示意图, 如图 1 所示, 该方法包括:

步驟 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都只有一条路径和一个 SF 1相连, 而 系统中 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— 1。

基准芯片为 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。

以上所述仅为本发明的实施例而已, 并非用于限定本发明的保护范围。