时间同步方法及系统的制作方法_3

文档序号:9307257阅读:来源:国知局
差值I Tm_2-ts_a_2 I而得到第一差值E2并判断第一差值E2是否小于第一预设值。其中封包P_2代表第三个封包。
[0077]其中,更新时间ts_a_2由运算补偿模块223依第二播放装置22接收封包P_2时第二系统时钟221的时间ts_2增加或减少误差值EO计算而得,其中若更新时间ts_a_l为第二系统时钟221的时间ts_l减少误差值EO计算而得,更新时间ts_a_2亦将为第二系统时钟221的时间ts_2减少误差值EO计算而得。
[0078]此外,封包P_2包括第一播放装置20广播封包P_2至基地台21时第一系统时钟201的时间Tm_2以及第一播放装置20自基地台21接收封包P_2的前一封包P_1时第一系统时钟201的时间tm_l。
[0079]如前所述,第二播放装置22自基地台21接收封包P_0时的更新时间ts_a_0与第一播放装置20传送封包P_0至基地台21时第一系统时钟201的时间Tm_0相同,因此第二播放装置22接收封包P_2时的更新时间ts_a_2与封包P_2被广播至基地台21时第一系统时钟201的时间Tm_2亦应相同,故在系统及网络处于稳定状态时,第一差值E2亦应小于第一预设值而趋近或等于O。若第一差值E2大于第一预设值,则可判断系统及网络暂时处于不稳定状态,此时可重新执行步骤(C)直至系统及网络处于稳定状态为止。
[0080]当第一差值El及第一差值E2皆小于第一预设值时,即可判断系统及网络持续处于稳定状态而可继续进行后续步骤。需要说明的是,第一预设值可因应各种不同的状况而设定,并不以8毫秒为限,且步骤(D)的执行次数(所使用的封包个数)亦可因应各种不同的状况而设定,并不以两次为限。
[0081]完成前述步骤后,于第二播放装置22接收来自基地台21的封包P_2的下一封包P_3时,运算补偿模块223首先计算第二播放装置22接收封包P_3时第二系统时钟221的时间ts_3与误差值EO之和或差值而得到第二播放装置22接收封包P_3时的更新时间ts_a_3。其中封包P_3代表第四个封包,包括第一播放装置20广播封包P_3至基地台21时第一系统时钟201的时间Tm_3以及第一播放装置20自基地台21接收封包P_3的前一封包P_2时第一系统时钟201的时间tm_2。
[0082]需要说明的是,若更新时间ts_a_l为第二系统时钟221的时间ts_l减少误差值EO计算而得,则更新时间ts_a_3亦将为第二系统时钟221的时间ts_3减少误差值EO计算而得。
[0083]而后如步骤(E)所示,运算补偿模块223将计算第一播放装置20与第二播放装置22接收来自基地台21的同一封包的时间的第二差值。如前所述,封包P_3包括第一播放装置20自基地台21接收封包P_3的前一封包P_2时第一系统时钟201的时间tm_2,因此运算补偿模块223得以于接收封包P_3后计算第一播放装置20接收封包P_2时第一系统时钟201的时间tm_2与第二播放装置22接收封包P_2时的更新时间ts_a_2的差值I tm_2_ts_a_2 I而得到第二差值E3。举例来说,若第一播放装置20接收封包卩_2时第一系统时钟201的时间tm_2为I分20秒,第二播放装置22接收封包P_2时的更新时间ts_a_2为I分21秒,则第二差值E3即为I秒钟。
[0084]由于基地台21同时将封包P_2广播至第一播放装置20及第二播放装置22,因此第二差值E3即代表了第一播放装置20的第一系统时钟201的时间与第二播放装置22的更新时间(由第二系统时钟221的时间增加或减少误差值EO而得)的时间差,故同步模块222使第二播放装置22的第二系统时钟221的时间增加或减少误差值EO并增加或减少第二差值E3所得的一同步时间Ta即能同步于第一播放装置20的第一系统时钟201的时间,如步骤(F)所示。
[0085]举例来说,若第一播放装置20广播封包P_0时的第一系统时钟201的时间Tm_0为I分10秒,第二播放装置22接收封包P_0时的第二系统时钟221的时间ts_0为I分11秒,且第一播放装置20接收封包P_2时第一系统时钟201的时间tm_2为I分20秒,第二播放装置22接收封包P_2时的更新时间ts_a_2为I分21秒,则同步时间Ta即为第二系统时钟221的时间减少误差值EO并减少第二差值E3所得的时间,其中误差值EO及第二差值E3皆为I秒钟。
[0086]此外,如步骤(El)所示,当第二差值E3大于第二预设值,例如8毫秒时,将重复步骤(E)而不续行步骤(F),且当第二差值E3大于第二预设值超过一定次数,例如20次时,将重新执行步骤(C)以确保系统及网络处于稳定状态。
[0087]需要说明的是,前述步骤(C)、步骤⑶及步骤(E)并不需使用连续的封包,例如步骤(C)可使用第二个封包,步骤(D)可使用第四个封包及第五个封包,步骤(E)可使用第七个封包等,但不以此为限。
[0088]完成上述同步流程后,于使用者使用数字媒体控制器24控制播放群组G进行音讯播放时,第一播放装置20的第一播放模块204及第二播放装置22的第二播放模块225即可分别使用第一系统时钟201的时间及同步时间Ta(第二系统时钟221的时间增加或减少误差值EO并增加或减少第二差值E3)同步进行音讯播放。
[0089]需要说明的是,第一播放装置20及第二播放装置22各自利用其内部的振荡器(Oscillator)所提供的时钟信号而产生第一系统时钟201及第二系统时钟221,依据振荡器的精确度的不同,第一系统时钟201及第二系统时钟221每经过一定时间后将产生时间上的误差,例如精确度Ippm的振荡器在经过1,000,000秒后会有I秒的误差,且网络传输速率亦非固定不变的,因此于本发明中将重复执行步骤(E)及步骤(F),以计算接收最近一个封包时的第二差值以实时更新同步时间(由第二系统时钟221的时间增加或减少误差值EO并增加或减少第二差值计算而得)。
[0090]此外,基于上述因素且接收不同封包时计算而得的第二差值并非固定不变的,因此二同步时间的时间间隔很可能并不等于第二系统时钟221的二时间点的时间间隔,故于本发明中可依据第二系统时钟221的时间调整同步时间的时间偏移以提高时间同步的精确度,如步骤(G)所示。
[0091]请同时参照图3及图5,图5是本发明时间同步方法的步骤(G)的流程图。首先,第二记录模块224记录接收封包P_i时第二系统时钟221的第一时间ts_i,以及对应第一时间ts_i的同步时间Ti,如步骤(Gl)所示。其中封包P_i代表第i个封包。
[0092]其中,应第一时间ts_i的同步时间Ti为第二系统时钟221的时间增加或减少误差值EO并增加或减少第二差值Ei计算而得,且第二差值Ei为第一播放装置20接收封包P_i的前一封包时第一系统时钟201的时间与第二播放装置22接收封包P_i的前一封包时的更新时间ts_a_(1-l)的时间差I tm_(1-l)-ts_a_(1-l) I。
[0093]接下来,第二记录模块224记录接收封包PJ时第二系统时钟221的第二时间ts_j,以及对应第二时间ts_j的同步时间Tj,如步骤(G2)所示。其中封包P_j代表第j个封包。
[0094]其中,第一时间ts_i及第二时间ts_j相差第一时间间隔,对应第二时间ts_j的同步时间Tj为第二系统时钟221的时间增加或减少误差值EO并增加或减少第二差值Ej计算而得,且第二差值Ej为第一播放装置20接收封包P_j的前一封包时第一系统时钟201的时间与第二播放装置22接收封包P_j的前一封包时的更新时间ts_a_(j_l)的时间差 I tm_(j_l)_ts_a_(j_l) I。
[0095]而后运算补偿模块223计算二同步时间T1、Tj的差值Tj-Ti而得到第二时间间隔
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1