張 軍
(天津市計(jì)量監(jiān)督檢測科學(xué)研究院,天津 300192)
時(shí)間同步是網(wǎng)絡(luò)測控的基本問題[1-2],受到廣泛關(guān)注和研究[3-7]。由于各節(jié)點(diǎn)時(shí)鐘的漂移,測控系統(tǒng)必須周期性對(duì)鐘。而在對(duì)鐘間期,系統(tǒng)通常運(yùn)行時(shí)間漂移修正算法,以盡可能修正時(shí)鐘漂移,延長對(duì)鐘間隔,從而減小節(jié)點(diǎn)開銷。尤其對(duì)于資源受限節(jié)點(diǎn)(如傳感器網(wǎng)絡(luò)節(jié)點(diǎn)),高效的時(shí)鐘漂移修正算法有助于延長節(jié)點(diǎn)壽命。
線性時(shí)鐘漂移修正實(shí)現(xiàn)簡單,因而被廣泛使用。但該算法用于修正非線性時(shí)鐘漂移效果并不理想。本文首先通過實(shí)驗(yàn)數(shù)據(jù)說明了典型時(shí)鐘芯片的時(shí)間漂移具有非線性特性,之后提出一種二階時(shí)鐘漂移修正算法。實(shí)驗(yàn)表明該算法能夠有效修正非線性時(shí)鐘漂移。
時(shí)鐘通常由晶體振蕩器及外圍電路構(gòu)成。限于成本,電子產(chǎn)品的時(shí)鐘通常由時(shí)鐘芯片實(shí)現(xiàn)。對(duì)ADE7569芯片內(nèi)部時(shí)鐘進(jìn)行連續(xù)約19天測試,按照溫度和施加電壓的不同分為4個(gè)測試階段,測試結(jié)果見表1。
表1ADE7569內(nèi)部時(shí)鐘的漂移
續(xù)表
在表1中,將GPS時(shí)間視為標(biāo)準(zhǔn)時(shí)間,據(jù)此計(jì)算芯片時(shí)間的誤差。圖1為芯片1、2、3的平均累計(jì)漂移曲線。
由圖1和表1表明,ADE7569芯片在55℃下具有非線性累計(jì)漂移,漂移率為負(fù);25℃下具有非線性漂移,漂移率隨時(shí)間增加;-20℃下具有線性累計(jì)漂移率,漂移率近似為正常數(shù)。
圖1 ADE7569內(nèi)部時(shí)鐘的累計(jì)漂移
由于時(shí)鐘漂移導(dǎo)致計(jì)時(shí)誤差的積累,因此,為維持時(shí)鐘誤差處于可接受范圍,必須周期性對(duì)鐘。提供參考時(shí)間的時(shí)鐘為主時(shí)鐘,需要對(duì)鐘的時(shí)鐘為從時(shí)鐘。所謂對(duì)鐘即從時(shí)鐘通過一定方式獲取主時(shí)鐘時(shí)間,并據(jù)此調(diào)整自身時(shí)間的過程。為了延長從時(shí)鐘對(duì)鐘間隔,從時(shí)鐘在對(duì)鐘間期通常運(yùn)行時(shí)間誤差修正算法,以減緩計(jì)時(shí)誤差的積累速度。而常規(guī)的線性誤差修正算法在處理非線性時(shí)鐘漂移時(shí)效果不甚理想。
第i個(gè)同步周期[tS,i,tS,i+1)內(nèi),從時(shí)鐘(本地時(shí)鐘)在tS,i時(shí)接收主時(shí)鐘(源時(shí)鐘)tM,i。假定tS,i與tM,i之間存在如下非線性關(guān)系:
(1)
式中,δ為偏移項(xiàng);ρ為漂移率,(1+ρ)構(gòu)成線性項(xiàng)系數(shù);l為平方項(xiàng)系數(shù);r(tS)為隨機(jī)項(xiàng)。根據(jù)拉格朗日二階插值公式[8]得到各項(xiàng)的估計(jì)方法如式(2)、式(3)和式(4)所示。計(jì)算過程中存儲(chǔ)器必須保存最近的r+2k個(gè)時(shí)間對(duì)[tM,i,tS,i]。本文取r=64,k=8。
(2)
(3)
(4)
誤差修正的步驟如下:
1)第i個(gè)時(shí)間同步周期開始,從時(shí)鐘獲取當(dāng)前的[tM,i,tS,i],并保存最近的r+2k個(gè)時(shí)間對(duì)。
2)根據(jù)式(3)和式(4)獲取式(1)中相應(yīng)項(xiàng)系數(shù)的估計(jì)值。
3)利用第2)步結(jié)果,根據(jù)式(5)計(jì)算當(dāng)前從時(shí)鐘時(shí)間。
(5)
(6)
(7)
對(duì)鐘結(jié)束。第i+1個(gè)周期開時(shí)跳轉(zhuǎn)0。
經(jīng)過上述步驟得到的本地時(shí)間僅在對(duì)鐘階段保持較高準(zhǔn)確度,隨時(shí)間推移,誤差呈增加趨勢(shì)。為在整個(gè)周期內(nèi)都能獲得高度準(zhǔn)確的時(shí)間,還需執(zhí)行式(8)修正算法。在同步周期[tS,i,tS,i+1)內(nèi),[tS,i,tS,i+T)為對(duì)鐘階段,采取線性修正算法,須使修正后的時(shí)間數(shù)值單調(diào)增長,T是對(duì)鐘所需的計(jì)算時(shí)間;[tS,i+T,tS,i+1)為修正階段,采取二階修正算法。在修正階段,二階算法較線性修正具有較小誤差(圖2中粗實(shí)線表示修正后的本地時(shí)間)。
(8)
圖2 對(duì)鐘與時(shí)間誤差修正
在圖3所示測試系統(tǒng)中,控制板CB1作為主時(shí)鐘,CB2、CB3、CB4作為從時(shí)鐘,都配置有以太網(wǎng)接口,四者通過交換機(jī)經(jīng)由以太網(wǎng)相連。CB1安裝有GPS模塊,可以獲取GPS時(shí)間。CB1~CB4通過測試連接與時(shí)間頻率計(jì)相連。但由于時(shí)間頻率計(jì)同時(shí)只能比較兩個(gè)輸入信號(hào)的時(shí)間間隔,所以,在時(shí)間頻率計(jì)與CB1~CB4之間插入多路選擇器。該設(shè)備在監(jiān)控主機(jī)控制線實(shí)現(xiàn)對(duì)任意一對(duì)測試連接線路的選取。監(jiān)控主機(jī)通過仿真連接控制CB1~CB4,實(shí)現(xiàn)對(duì)時(shí)間同步參數(shù)的設(shè)定以及數(shù)據(jù)的讀取。監(jiān)控主機(jī)通過GPIB總線與時(shí)間頻率計(jì)相連,讀取兩條測試連接線輸入的脈沖信號(hào)時(shí)間差。CBn工作于50MHz,從而硬件計(jì)時(shí)器擁有80ns的分辨率。時(shí)間按頻率計(jì)HP53132A擁有150ps的分辨率。
圖3 測試系統(tǒng)組成
實(shí)驗(yàn)在25℃下進(jìn)行,分別采用本文提出的二階修正算法和常規(guī)線性修正算法,得到兩組實(shí)驗(yàn)結(jié)果。從表2及圖4可知,應(yīng)用二階修正算法后時(shí)鐘在8天內(nèi)的漂移小于1s,而在使用線性修正算法的情況下(表3、圖5),8天內(nèi)的漂移大于2s。
表2二階修正時(shí)間采樣(25℃)
續(xù)表
圖4 二階修正時(shí)間采樣(25℃)
圖5 線性修正采樣(25℃)
表3線性修正時(shí)間采樣(25℃)
從上述圖表中可以看出,長期內(nèi)二階修正算法較線性修正算法具有更好的修正效果。
時(shí)間同步問題是分布式測控系統(tǒng)的基本問題,也是網(wǎng)絡(luò)化數(shù)據(jù)采集和應(yīng)用分析的基礎(chǔ)問題。本文通過實(shí)驗(yàn)數(shù)據(jù)說明了時(shí)鐘漂移的基本變化規(guī)律:環(huán)境溫度對(duì)漂移性質(zhì)有著顯著的影響,且漂移率一般為非線性。針對(duì)非線性時(shí)間漂移,提出了對(duì)鐘間期的二階修正算法。該算法利用二階差分估計(jì)修正公式的平方項(xiàng)。試驗(yàn)表明二階誤差修正算法在修正時(shí)鐘非線性漂移時(shí)較線性誤差修正算法有明顯的優(yōu)勢(shì)。
[1] B.Simons,J.L.Welch,and N.Lynch,An Overview of Clock Synchronization.1988
[2] B.Patt-Shamir,and S.Rajsbaumy,A Theory of Clock Synchronization,26th Symp.on Theory of Computing,May 1994
[3] 李孝輝,楊旭海,劉婭,張慧君,施韶華.時(shí)間頻率信號(hào)的精密測量.北京:科學(xué)出版社,2010
[4] F.B.Schneider,A Paradigm for Reliable Clock Synchronization.1986
[5] D.Barsotti,L.P.Nieto,A.Tiu,Verification of Clock Synchronization Algorithms:Experiments on a combination of deductive tools.2005
[6] M.Przedwojski,I.Markovsky,E.Rogers,Estimation of clock synchronization errors.IEEE SIGNAL PROCESSING LETTERS
[7] P.Ohly,D.N.Lombard,K.B.Stanton,Hardware Assisted Precision Time Protocol Design and case study
[8] 李慶揚(yáng),王能超,易大義.數(shù)值分析.北京:清華大學(xué)出版社,2001