發布時間:2023-11-06 作者: 來源: 閱讀量:0
分布式節點的同步時鐘管理模型由節點本地晶振,時鐘同步電路和定時電路組成,是研究容錯時鐘同步的基礎。分布式系統中節點的同步時鐘管理功能由本地晶振,本地定時電路和時鐘同步電路三部分共同實現。
晶振產生觸發節點時間更新的脈沖是節點本地可識別的最小間隔,是時鐘同步電路、本地定時電路和本地其他邏輯工作的基礎。晶振的故障,或者精度較差必然會導致節點故障。本地定時電路根據本地晶振產生的晶振嘀嗒,通過分頻產生本地的全局時間。本地定時電路產生的本地全局時鐘是本地其他電路工作的基礎。
由于分布式節點的晶振存在漂移問題,因此不同節點產生的晶振嘀嗒間隔長度有差異,因此需要時鐘同步電路周期性的產生修正信息,確保系統中所有節點產生的全局時間的偏差小于指定的閾值。
安全關鍵系統必須使用容錯的時鐘同步電路。如果本地節點是正常的,即使系統中存在m個(m>0)故障節點,本地的時鐘同步電路也必須產生正確的時鐘校正信息。
從時鐘同步角度,本地時鐘發生故障的原因有兩個。一是本地節點無法正確的與其他節點進行同步消息交換;二是本地定時器產生的本地全局時鐘信息與系統中其他在時鐘同步上達成一致的正確節點間的全局同步時鐘偏差大于δ。
市場上的晶振在質量和價格上差異很大。漂移率較小的晶振價格昂貴。通常計算機使用的晶振漂移為50-100ppm,而普通手表中使用晶振的漂移率為1ppm。如果使用漂移率為20ppm的晶振計時,每秒鐘與標準時間的最大可能誤差可達20us。如果兩個晶振分別快20ppm和慢20ppm,那么兩個20ppm晶振的1秒計時誤差可達40us??梢宰C明,節點間最大時鐘偏差時是漂移率和同步間隔的線性函數。如果節點的漂移偏差超過一個給定的精度范圍,可認為節點時故障的。而低成本低質量的晶振更容易實現大的漂移,因此更容易造成節點的故障。
晶振的漂移并不是一成不變的,隨著器件老化、電壓和環境溫度的變化,晶振的漂移率也會變化。因此需要用算法動態的適應晶振的漂移,保證時鐘的漂移偏差小于給定精度要求。如何利用較低質量的晶振實現一個高可靠,具有長期穩定性和高精準度的全局時基,是分布式時間同步研究的熱點。
時鐘頻率調整又稱為時鐘速率調整,是時鐘同步邏輯計算本地定時電路中MT嘀嗒間隔與其他節點MT嘀嗒間隔的差值,通過修改分頻器參數調整本地MT嘀嗒間隔,實現與其他節點的時鐘同步。相比于相位調整,頻率調整粒度更細,因此可以取得更好的效果。為了頻率調整的精確性,分頻參數可能不是整數,因此分頻參數一般用有理數M/N表示,其中M和N為正整數。
節點的同步時鐘管理模型是對容錯機制進一步分析的基礎。采用部分高質量晶振與其他低質量晶振相結合的同步方式,通過算法設計,在保證同步精度的同時降低成本。采用相位調整與頻率調整相結合的方式,獲取較高的同步精度。