• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > IEEE1588和高精度時間同步的方法

    IEEE1588和高精度時間同步的方法

    作者: 時間:2013-02-05 來源:網(wǎng)絡 收藏

    2,第二步主節(jié)點向從節(jié)點發(fā)送一個“跟隨”(Follow_up)報文,這個報文包含先前的同步報文準確的發(fā)送時間的標記。從節(jié)點利用這兩個可以得到它與主節(jié)點的延遲,據(jù)此可調整它的時鐘的頻率。

    3,從節(jié)點向主節(jié)點發(fā)送“延時請求”(Delay_Request報文(延時請求報文的間隔是獨立設置的,一般應較同步報文間隔長),這個報文是由從節(jié)點記錄它的準確發(fā)送時間,由主節(jié)點打上準確的接收。

    4,主節(jié)點向從節(jié)點返回一個“延時響應”(Delay_ Response)報文,這個報文帶著先前的“延時請求”報文的準確的接收,從節(jié)點利用這個時間和由它所記錄的準確的發(fā)送時間,可計算出主節(jié)點和從節(jié)點之間的傳輸延遲并調整它的時鐘漂移誤差。


    圖2 偏移的校正


    圖3 傳輸延時的測量

    圖2,圖3例示主節(jié)點與從節(jié)點之間報文的交換,圖中的時間也僅是為了理解假設的,不代表實際情況(中表示時間使用64位數(shù),可以精確地表示絕對時間)。圖2表示經過兩次同步可以校正主節(jié)點與從節(jié)點之間的偏差。但無法計算傳輸延時。

    經過延時報文的請求和應答以及同步報文的時間標記,可以計算出兩個方向的平均傳輸延時,在以后的計算中就可使用。實際上偏移與延時值的測量是互相影響的,要經過多次測量和計算,才會逐步收斂到接近實際值。測量時間間隔的選取很重要,選擇間隔短時通信負荷較重,間隔過長則不能保證同步的精度,所以同步和延時的測量間隔應根據(jù)同步要求和系統(tǒng)配置選擇。

    并沒有規(guī)定使用的網(wǎng)絡,但從通信的負荷和時間要求來說,以太網(wǎng)是比較適合的網(wǎng)絡,當前實際的實現(xiàn)也差不多都是基于以太網(wǎng)的網(wǎng)絡。以上四種PTP報文都是基于IP多點通信(Multicast),它不限于Ethernet,并且可用于任何支持多點通信的總線系統(tǒng)。多點通信提供簡單化的優(yōu)點,IP地址管理不需要在PTP節(jié)點上實現(xiàn),這樣可以進一步擴展到很大數(shù)目的PTP節(jié)點。

    4 本地時鐘的考慮

    PTP協(xié)議可能達到很高的同步精度,組成龐大的同步系統(tǒng),但實際系統(tǒng)可以根據(jù)需要達到的精度和功能組建??梢赃x用1級或2級時鐘作為主時鐘,也可選用3級,4級時鐘,可按價格和性能需要綜合考慮。但作為普通節(jié)點本地時鐘的振蕩器,出于成本考慮基本上只能選擇石英晶體振蕩器。但石英晶振的頻率會隨溫度,機械因素和老化漂移,其中最主要的影響是溫度,典型的不補償?shù)氖⒕д竦臏囟蕊h移是1PPM/C0,如果同步間隔是2秒,則溫度上升1度在每個同步間隔會產生2微秒的誤差。但通過對晶振的熱環(huán)境的控制,可以明顯降低漂移。

    從上面論述也可知道如果本地時鐘的振蕩頻率稍有偏離,就會造成時間的偏離,而且時間的偏離是累計的會越來越大,雖然通過同步報文的計算可以校正時間,但本地時間的頻繁校正會打亂本地時鐘的連續(xù)性,使需要定時處理的任務像PID調節(jié),通過時間段計量脈沖的速度測量等應用陷入混亂。所以在PTP系統(tǒng)內使用頻率可調的晶振,通過頻率的校正使本地時鐘的頻率與主時鐘同步。對這種晶振的要求是0.01%精度和0.02%的頻率可調范圍。同時PTP并不在接收同步報文后立即校正本地時鐘的時間,而是將這個偏移作為一個數(shù)據(jù)保存在端口中,通過本地時間加偏移值得到正確時間。

    同時PTP定義的外部定時信號是可選特性,支持這個特性的主時鐘另外提供10MHZ頻率的曼徹斯特編碼的時鐘信號,在每秒的邊界信號跳變給出秒信號。這個定時信號可用于校正時鐘頻率。

    5 關于邊界時鐘

    從上面的同步原理很容易看到,在計算偏移時需要用到傳輸延時,這個延時是以前得到的測量值計算的結果,如果延時是穩(wěn)定的,就能代表當次測量的延時,偏移的測量就準確。反之延時的起伏將直接影響同步的精度。點對點連接可提供最高的精度,帶路由器會增加網(wǎng)絡抖動,在PTP系統(tǒng)內通過交換機連接時,由于交換機在傳送報文時需要存儲和排隊,不可避免出現(xiàn)傳遞的延遲,而且這個延遲隨排隊報文的多少,報文的大小而變。為了解決這個問題通常使用支持的交換機作為邊界時鐘,支持IEEE的交換機內部包含了一個PTP時鐘,由于它是直接接收主時鐘報文的,它與主時鐘的傳輸延時不存在排隊與存儲的問題,所以在需要分支時通常使用帶邊界時鐘的交換機。

    6 時鐘的評價和最佳時鐘算法概要

    最佳時鐘算法是1588協(xié)議的很重要的部分,1588雖然是適用于局域網(wǎng)的協(xié)議,但它沒有限制網(wǎng)絡的結構,范圍,設備數(shù)目和選用。對于任意結構的網(wǎng)絡怎樣確定祖母時鐘,主時鐘,時間基準怎樣逐級傳遞到各節(jié)點,以取得盡可能好的時鐘精度,就是最佳時鐘算法要達到的目標。1588的算法是動態(tài)運行的,即在時鐘同步系統(tǒng)運行中根據(jù)實時數(shù)據(jù)不斷計算,動態(tài)調整各節(jié)點和端口的狀態(tài),也就會調整時間的傳遞路線。所以在當前主時鐘故障或性能下降時,系統(tǒng)可能會選擇其它更合適的節(jié)點替代它作為主時鐘。由于這部分內容相對復雜,這里只介紹相關的基礎概念。



    評論


    相關推薦

    技術專區(qū)

    關閉
    主站蜘蛛池模板: 灵山县| 潜江市| 双桥区| 绵阳市| 库车县| 大足县| 遂平县| 古丈县| 大石桥市| 石景山区| 铜山县| 元阳县| 锦屏县| 镇安县| 定西市| 杭锦旗| 横山县| 文成县| 成安县| 广水市| 宁河县| 福州市| 闽侯县| 景东| 香河县| 霍林郭勒市| 汾阳市| 德州市| 潞城市| 栾城县| 宁海县| 绥芬河市| 湘潭县| 高青县| 房山区| 曲水县| 徐闻县| 藁城市| 宁津县| 睢宁县| 平舆县|