新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 利用IEEE 1588和Blackfin嵌入式處理器實現設備時鐘同步

        利用IEEE 1588和Blackfin嵌入式處理器實現設備時鐘同步

        作者: 時間:2011-01-05 來源:網絡 收藏

        分組檢測

        ADSP-BF518可以檢測 1588的所有事件消息,包括送入和送出的分組,并為其提供硬件時間戳。因為事件消息時間戳的精度及其提取位置會影響路徑延遲的對稱性和穩定性要求,所以 1588系統的精度在很大程度上取決于這二者。ADSP-BF518的TSYNC模塊持續監控MAC控制器與以太網“物理接口收發器”(PHY)之間的硬件接口,即“媒體獨立接口”(MII),并且只要檢測到事件消息,就會產生硬件時間戳,這一功能可提高ADSP-BF518的精度。

        事件消息檢測功能是可編程的,基本配置有兩種:支持 1588-2002(默認狀態)或支持IEEE 1588-2008。此外,這種可編程能力還支持將來版本的IEEE 1588,以及其它要求時間戳的一般協議,包括配置為給進出的每個以太網分組加上時間戳。

        靈活的

        本地的屬性對于IEEE 1588系統的性能很重要。為了滿足各種不同應用的要求,ADSP-BF518可提供三種本地源選項:系統時鐘、外部時鐘或以太網時鐘。如果應用具有特定時鐘要求,則可以選擇“外部時鐘”,并提供定制時鐘源。如果主時鐘與從時鐘“背靠背”連接,由于“以太網時鐘”來自以太網線路,而且兩臺采用同一時鐘工作,因此該時鐘選項可以提供良好的精度。一般應用可以選擇處理器的“系統時鐘”作為時鐘源。

        所選源時鐘也由TSYNC模塊驅動,通過特定引腳Clockout作為處理器輸出,系統的其它部分可該輸出提供本地時間信息。

        PPS輸出

        “每秒脈沖”(PPS)信號是時間信息的物理表示。它名義上是一個1-Hz信號,在每個1秒轉換時間發出一個脈沖。它可用來控制本地設備,或者在發生網絡故障時提供輔助時間通道。它也可以用于測試。兩臺設備的PPS信號之間的相位差是二者時間偏移的物理量度。

        ADSP-BF518處理器提供靈活的PPS輸出。它可編程“開始時間”(PPS_ST)和周期(PPS_P)產生一個在時間(PPS_ST + n × PPS_P)發出脈沖的信號,其中n = 1, 2, 3…。基本用法是將PPS_P設置為1秒,并將PPS_ST設置為用秒數表示的將來任一時刻,從而產生PPS信號。參考基本用法,可以這種PPS輸出功能產生具有可編程頻率和開始時間的周期性信號。

        輔助快照

        一些應用可能需要按照標志信號切換指示,給某一事件加上時間戳。ADSP-BF518的TSYNC模塊通過輔助“快照”功能,使用一個專用引腳來接收外部標志,以便這種請求。切換標志將觸發該模塊捕捉時間戳寄存器中的當前本地時間,供軟件訪問。

        報警

        如果應用需在特定時間執行一項任務,則可以用TSYNC模塊的“報警”功能。這項功能可以設置本地絕對時間,到達該時間時,就會觸發處理器中斷。然后,軟件便可利用中斷執行任務。

        可調時鐘

        TSYNC模塊的可調時鐘是一種“基于加數”的時鐘。如圖6所示,它獲得一個固定輸入時鐘信號,并輸出該輸入的“盜取脈沖”版本信號:對于每個輸入時鐘,“加數”的值增加到累加器中,并且每次累加器溢出時,進位位就會驅動“本地時間計數器”,從而產生以脈沖計數值表示的本地時間。更改加數可以調整本地時鐘的頻率,因為加數決定累加器溢出的頻率,從而決定本地時間計數器遞增的頻率。如果輸入時鐘的頻率為Fin,且加數的值為A,則本地時鐘頻率為:

        (7)

        基于加數的可調時鐘

        圖6. 基于加數的可調時鐘

        采用ADSP-BF518處理器的IEEE 1588實施方案

        ADSP-BF518處理器上構建了一個完整的IEEE 1588-2008兼容系統,如圖7所示。

        采用ADSP-BF518的IEEE 1588實施方案

        圖7. 采用ADSP-BF518的IEEE 1588實施方案

        處理器的TSYNC模塊檢測送入和送出的IEEE 1588消息,并通過硬件給事件消息加上時間戳。由IXXAT (IXXAT Automation GmbH)提供的IEEE 1588協議棧軟件可標準所要求的消息交換協議。它利用TSYNC驅動程序讀取、寫入并調整TSYNC時鐘,并使用MAC控制器驅動程序在以太網MAC層(開放系統互連模型的第二層)發送和接收消息。它還可P2P延遲測量的控制法則和過濾。以太網PHY選擇具有低抖動延遲特性的National Semiconductor DP83848 。為簡明起見,TSYNC模塊時鐘源選擇處理器的系統時鐘(80 MHz)。

        ADSP-BF518上IEEE 1588系統的從時鐘誤差直方圖

        圖8. ADSP-BF518上IEEE 1588系統的從時鐘誤差直方圖

        圖8是兩個完全相同的ADSP-BF518 IEEE 1588系統之間的測量誤差直方圖,由此可看出該器件的時鐘性能。在約1700秒的時間內共進行了6938次測量。最終平均誤差為0.015 ns,標準差為12.96 ns。該測試所用的Sync消息間隔為0.25秒。

        結論

        IEEE 1588標準提供了一種高精度、低成本的分布式時鐘方法。雖然IEEE 1588并未明文要求硬件支持,但硬件輔助消息檢測和時間戳對于實現極高同步精度至關重要。ADSP-BF518為IEEE 1588-2002和IEEE 1588-2008提供硬件支持,包括各種應用的支持功能。利用ADSP-BF518處理器和IXXAT IEEE 1588-2008協議軟件實施IEEE 1588技術,已證明可以實現高精度時鐘同步。

        linux操作系統文章專題:linux操作系統詳解(linux不再難懂)

        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 广平县| 漳州市| 武陟县| 峡江县| 竹山县| 平安县| 凌海市| 芮城县| 沅陵县| 阳江市| 宁明县| 龙川县| 老河口市| 宁蒗| 沅江市| 平南县| 如皋市| 阿拉善左旗| 保靖县| 永康市| 北辰区| 简阳市| 大竹县| 昆山市| 共和县| 遵化市| 开封市| 仲巴县| 福建省| 富源县| 库尔勒市| 溧阳市| 色达县| 宜川县| 泊头市| 榆树市| 襄垣县| 高清| 油尖旺区| 晋州市| 泸西县|