一種基于ieee1588同步機(jī)制的tps時(shí)間同步改進(jìn)算法
【專利摘要】本發(fā)明公開了一種基于IEEE1588同步機(jī)制的TPS時(shí)間同步改進(jìn)算法,屬于精準(zhǔn)時(shí)鐘同步【技術(shù)領(lǐng)域】。本方法包括以下步驟:步驟一:統(tǒng)計(jì)計(jì)算時(shí)鐘頻率偏差,完成頻率同步;步驟二:統(tǒng)計(jì)計(jì)算同步的時(shí)間偏差、通信時(shí)延以及達(dá)到指定精度時(shí)間同步所需最小報(bào)文的數(shù)量,完成基于對(duì)稱性時(shí)延的初步時(shí)間同步;步驟三:用最小報(bào)文數(shù)量完成基于對(duì)稱性時(shí)延精確時(shí)間同步,在后續(xù)的過(guò)程構(gòu)建以傳輸誤差和傳輸誤差變化率為輸入的模糊控制,進(jìn)行在線的時(shí)間偏差和頻率變化的調(diào)整。該方法能很好的兼容IEEE1588同步機(jī)制并且提供比IEEE1588同步機(jī)制更精準(zhǔn)的時(shí)間同步,有效的抑制了時(shí)間同步中的頻率漂移問(wèn)題以及隨機(jī)波動(dòng)問(wèn)題并能適應(yīng)網(wǎng)絡(luò)拓?fù)涞耐蝗蛔兓?,長(zhǎng)期運(yùn)行中能節(jié)省大量同步報(bào)文開銷。
【專利說(shuō)明】—種基于IEEE1588同步機(jī)制的TPS時(shí)間同步改進(jìn)算法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于精準(zhǔn)時(shí)鐘同步【技術(shù)領(lǐng)域】,特別涉及一種基于IEEE1588同步機(jī)制的TPS時(shí)間同步改進(jìn)算法。
【背景技術(shù)】
[0002]傳統(tǒng)的IP網(wǎng)絡(luò)中,米勒(Mills)提出了一種基于Internet網(wǎng)絡(luò)的遠(yuǎn)程時(shí)間同步技術(shù),即網(wǎng)絡(luò)時(shí)間協(xié)議NTP。它是一種典型的主從同步方法。NTP客戶端(或稱為從時(shí)鐘)發(fā)送的同步協(xié)議報(bào)文含有本地時(shí)間戳Tl,它向指定的服務(wù)器傳輸。一旦服務(wù)器收到此報(bào)文,會(huì)記下此報(bào)文接收時(shí)間戳T2。如果下需要響應(yīng)時(shí)間,會(huì)將響應(yīng)的報(bào)文時(shí)間戳T3附在協(xié)議報(bào)文中傳送給客戶端。從時(shí)鐘會(huì)記下此時(shí)報(bào)文的時(shí)間戳T4,此時(shí),主從時(shí)鐘間傳遞報(bào)文帶有這些時(shí)間信息可以計(jì)算出它們時(shí)間的時(shí)間偏差,從而完成調(diào)整。
[0003]IEEE1588標(biāo)準(zhǔn)自身是一個(gè)比較復(fù)雜的主從同步機(jī)制,但它也能支持其它的單向廣播模式。通常,我們又把它稱為精確時(shí)間同步協(xié)議(PTP),它同樣通過(guò)主從時(shí)鐘交換帶有時(shí)間信息的報(bào)文來(lái)同步。由于PTP提供一種更加精確同步報(bào)文的發(fā)送時(shí)間戳,故它能提供亞毫秒的同步精確,這使得它適應(yīng)于工業(yè)控制、測(cè)量等時(shí)間苛刻性環(huán)境,因此目前國(guó)際上的實(shí)時(shí)以太網(wǎng)標(biāo)準(zhǔn)都采用IEEE1588作為它的標(biāo)準(zhǔn)體系中的一部分。
[0004]IEEE1588時(shí)間同步協(xié)議隱含著以下的假設(shè),但與實(shí)際情況并不完全相符,下面將分析說(shuō)明:
[0005]( I)主時(shí)鐘和從時(shí)鐘自身的頻率會(huì)有偏差,但是是穩(wěn)定的。實(shí)際上節(jié)點(diǎn)晶振特性不一樣,時(shí)鐘頻率不可能與參考頻率相同。同時(shí),受溫度、環(huán)境的影響,頻率還會(huì)產(chǎn)生一定的漂移。
[0006](2)主時(shí)鐘到從時(shí)鐘的延時(shí)是等于從時(shí)鐘到主時(shí)鐘的延時(shí)的,Ds2m = Dm2sO但是實(shí)際上它們并不相等,而且Ds2m和Dm2s本身也不是一個(gè)固定值,它們服從高斯分布,時(shí)延的隨機(jī)誤差部分服從均值為0高斯分布。
[0007](3)同步通信過(guò)程沒(méi)有外界的干擾。但是實(shí)際上存在各種外部干擾、或者某些偶然變化因素,比如說(shuō)報(bào)文的丟失、讀取時(shí)間戳?xí)r出現(xiàn)定時(shí)錯(cuò)誤,網(wǎng)絡(luò)吐吞量的突然變化,都會(huì)影響同步精度和穩(wěn)定。
【發(fā)明內(nèi)容】
[0008]有鑒于此,本發(fā)明的目的在于提供一種基于IEEE1588同步機(jī)制的TPS時(shí)間同步改進(jìn)算法,該算法通過(guò)線性回歸的方法完成頻率調(diào)整;采用概率同步的機(jī)制,用最小的報(bào)文數(shù)量完成指定精度的時(shí)間同步;構(gòu)建以傳輸時(shí)延誤差和傳輸時(shí)延誤差變化率為輸入的模糊控制,進(jìn)行在線的時(shí)間偏差和頻率變化的調(diào)整。
[0009]為達(dá)到上述目的,本發(fā)明提供如下技術(shù)方案:
[0010]一種基于IEEE1588同步機(jī)制的TPS時(shí)間同步改進(jìn)算法,包括以下步驟:步驟一:統(tǒng)計(jì)計(jì)算時(shí)鐘頻率偏差,完成頻率同步;步驟二:統(tǒng)計(jì)計(jì)算同步的時(shí)間偏差、通信時(shí)延以及達(dá)到指定精度時(shí)間同步所需最小報(bào)文的數(shù)量,完成基于對(duì)稱性時(shí)延的初步時(shí)間同步;步驟三:用最小報(bào)文數(shù)量完成基于對(duì)稱性時(shí)延精確時(shí)間同步,在后續(xù)的過(guò)程構(gòu)建以傳輸誤差和傳輸誤差變化率為輸入的模糊控制,進(jìn)行在線的時(shí)間偏差和頻率變化的調(diào)整。
[0011]進(jìn)一步,步驟一具體包括:
[0012]a.從時(shí)鐘首先發(fā)送Delay_Req (時(shí)延請(qǐng)求)報(bào)文(無(wú)需記下此時(shí)的本地時(shí)間);
[0013]b.主時(shí)鐘在收到Delay_Req (時(shí)延請(qǐng)求)報(bào)文后(此時(shí)收到報(bào)文的時(shí)間也無(wú)需記下),立刻將Delay_Resp (時(shí)延響應(yīng))報(bào)文回送給從時(shí)鐘,并記下Delay_Resp (時(shí)延響應(yīng))報(bào)文發(fā)送完畢的時(shí)間Tkm2 ;
[0014]c.從時(shí)鐘接收到Delay_Resp (時(shí)延響應(yīng))報(bào)文后,立刻在接收中斷里面打下此時(shí)時(shí)間戳Tks2 ;
[0015]d.主時(shí)鐘發(fā)送Delay_Follow (跟隨)報(bào)文給從時(shí)鐘,它里面含有Delay_Resp (時(shí)延響應(yīng))報(bào)文發(fā)送的精確時(shí)間Tkm2 ;
[0016]e.循環(huán)操作:重復(fù)步驟a到d —共n次,得到數(shù)據(jù)Tks2, Tkm2, k = 1,2,3,…n,一共n組數(shù)據(jù),利用線性回歸算法分析這n組數(shù)據(jù)并計(jì)算出評(píng)估的最佳頻率偏差n* ;
[0017]f.根據(jù)最佳頻率偏差n*調(diào)整從時(shí)鐘,使之與主時(shí)鐘保持頻率一致。
[0018]進(jìn)一步,步驟e中利用線性回歸算法計(jì)算評(píng)估的最佳頻率偏差n*的方法是:
[0019]首先根據(jù)以下兩個(gè)公式算出n-1對(duì)(Tks,Tj,k= l,2,"《n_l數(shù)據(jù),計(jì)算每組(Tks, Tkm)的時(shí)機(jī)應(yīng)該從第二次循環(huán)就開始,而不應(yīng)認(rèn)為是等到n次循環(huán)結(jié)束后一并計(jì)算:
[0020]Tks — T(k+1)s2-Tks2 (I)> Tkm — T(k+1)m2-Tkm2 (2)
[0021]其次記第k次的頻率偏差值為nk,根據(jù)如下公式計(jì)算nk:
【權(quán)利要求】
1.一種基于IEEE1588同步機(jī)制的TPS時(shí)間同步改進(jìn)算法,其特征在于:包括以下步驟: 步驟一:統(tǒng)計(jì)計(jì)算時(shí)鐘頻率偏差,完成頻率同步; 步驟二:統(tǒng)計(jì)計(jì)算同步的時(shí)間偏差、通信時(shí)延以及達(dá)到指定精度時(shí)間同步所需最小報(bào)文的數(shù)量,完成基于對(duì)稱性時(shí)延的初步時(shí)間同步; 步驟三:用最小報(bào)文數(shù)量完成基于對(duì)稱性時(shí)延精確時(shí)間同步,在后續(xù)的過(guò)程構(gòu)建以傳輸誤差和傳輸誤差變化率為輸入的模糊控制,進(jìn)行在線的時(shí)間偏差和頻率變化的調(diào)整。
2.根據(jù)權(quán)利要求1所述的基于IEEE1588同步機(jī)制的TPS時(shí)間同步改進(jìn)算法,其特征在于: 步驟一具體包括: a.從時(shí)鐘首先發(fā)送Delay_Req報(bào)文; b.主時(shí)鐘在收到Delay_Req報(bào)文后,立刻將Delay_Resp報(bào)文回送給從時(shí)鐘,并記下Delay_Resp報(bào)文發(fā)送完畢的時(shí)間Tkm2 ; c.從時(shí)鐘接收到Delay_Resp報(bào)文后,立刻在接收中斷里面打下此時(shí)時(shí)間戳Tks2; d.主時(shí)鐘發(fā)送Delay_Follow報(bào)文給從時(shí)鐘,它里面含有Delay_Resp報(bào)文發(fā)送的精確時(shí)間Tkm2 ; e.循環(huán)操作:重復(fù)步驟a到d—共n次,得到數(shù)據(jù)Tks2,Tkffl2, k = 1,2,3,…n,一共n組數(shù)據(jù),利用線性回歸算法分析這n組數(shù)據(jù)并計(jì)算出評(píng)估的最佳頻率偏差n* ; f.根據(jù)最佳頻率偏差n*調(diào)整從時(shí)鐘,使之與主時(shí)鐘保持頻率一致。
3.根據(jù)權(quán)利要求2所述的基于IEEE1588同步機(jī)制的TPS時(shí)間同步改進(jìn)算法,其特征在于:步驟e中利用線性回歸算法計(jì)算評(píng)估的最佳頻率偏差n*的方法是: 首先根據(jù)以下兩個(gè)公式算出n-1對(duì)(Tks,Tkffl), k= 1,2,-n-1數(shù)據(jù),計(jì)算每組(Tks,Tkffl)的時(shí)機(jī)應(yīng)該從第二次循環(huán)就開始,而不應(yīng)認(rèn)為是等到n次循環(huán)結(jié)束后一并計(jì)算: T =T-T T =T-T
^ks — 1 (k+l)s2 丄 ks2、丄 km — 1 (k+l)m2 丄 km2 其次記第k次的頻率偏差值為nk,根據(jù)如下公式計(jì)算nk:
4.根據(jù)權(quán)利要求1所述的基于IEEE1588同步機(jī)制的TPS時(shí)間同步改進(jìn)算法,其特征在于: 步驟二具體包括: I)從時(shí)鐘發(fā)送Delay_burst_req報(bào)文給主時(shí)鐘,并打下本地的時(shí)間戳Tjs2,發(fā)送報(bào)文的時(shí)機(jī)為統(tǒng)計(jì)計(jì)算時(shí)鐘頻率差步驟結(jié)束后極短時(shí)間內(nèi),以確保從時(shí)鐘頻率不會(huì)發(fā)生太大的變化,與主時(shí)鐘依然是頻率同步的;2)主時(shí)鐘收到Delay_burst_req報(bào)文打下此時(shí)接收的精確時(shí)間戳Tjm2,并回送Delay_Resp報(bào)文,將時(shí)間戳Tjm2發(fā)送給從時(shí)鐘,記下發(fā)送Delay_Resp報(bào)文的精確時(shí)間Tjm3,隨后發(fā)送Delay_Follow報(bào)文,將時(shí)間戳Tjm3發(fā)送給從時(shí)鐘,從時(shí)鐘收到Delay_Follow報(bào)文后打下時(shí)間戳Tjs3 ; 3)循環(huán)步驟:循環(huán)I)-2)循環(huán)L次,從時(shí)鐘得到L組
5.根據(jù)權(quán)利要求4所述的基于IEEE1588同步機(jī)制的TPS時(shí)間同步改進(jìn)算法,其特征在于:在步驟3)中,利用以下公式計(jì)算的時(shí)間偏差石。通信時(shí)延萬(wàn):
6.根據(jù)權(quán)利要求4所述的基于IEEE1588同步機(jī)制的TPS時(shí)間同步改進(jìn)算法,其特征在于:在步驟5)中,計(jì)算nmin的方法為: 首先利用如下公式計(jì)算第j次的傳輸誤差e j, j = 1,2,3…L
7.根據(jù)權(quán)利要求1所述的基于IEEE1588同步機(jī)制的TPS時(shí)間同步改進(jìn)算法,其特征在于:步驟三具體包括: A、主時(shí)鐘發(fā)送Sync同步報(bào)文給從時(shí)鐘,記下發(fā)送的精確時(shí)間戳Tml,并在之后的Follow_UP跟隨報(bào)文中嵌入時(shí)間戳Tml發(fā)送給從時(shí)鐘,從時(shí)鐘接到Sync同步報(bào)文后打下接收時(shí)間戳Tsl ; B、由于已經(jīng)評(píng)估出單向時(shí)延萬(wàn),從時(shí)鐘根據(jù)以下公式計(jì)算出時(shí)間偏差0, O = T^-Tml-D
f 之后從時(shí)鐘按照0進(jìn)行時(shí)間調(diào)整;C、循環(huán)步驟:循環(huán)步驟八,811_次,則以概率1-P完成了指定精度的時(shí)間同步效果,其中P是系統(tǒng)給出的同步失效概率; D、在11_次循環(huán)步驟后,按照以下公式計(jì)算第j次的傳輸誤差e ^和傳輸誤差變化率Aej:
【文檔編號(hào)】H04J3/06GK103812595SQ201410087822
【公開日】2014年5月21日 申請(qǐng)日期:2014年3月11日 優(yōu)先權(quán)日:2014年3月11日
【發(fā)明者】謝昊飛, 劉星, 陳良平, 吳博, 高舉, 黃榮科 申請(qǐng)人:重慶郵電大學(xué)