周艷英 顧宗良 朱亞東 上海遠景數字信息技術有限公司
?
基于Bfin60x架構的時間同步監測實現
周艷英 顧宗良 朱亞東 上海遠景數字信息技術有限公司
摘要:就利用ADI發布的ADSP-Bfin60x系列處理器平臺實施的時間同步管理系統(TMS)項目的目標、機制做完整的闡述,包括如何利用處理器架構的特點進行相關功能開發、相應的原理、設計實現方法等。
關鍵詞:IEC 61850 MMS;IEEE 1588;TMS;實時GOOSE;SOE
Analog Device最新推出雙核,1 GHz處理能力的Bfin60x系列處理器,以應對迅速發展的中、低壓電力系統內智能設備應用市場需求。總體而言,Bfin60x系列是在其原有單核Bfin518系列的基礎上,結構上做了較大的調整,采用雙核結構,增加了L2級共享存儲單元,增強了DMA并行處理能力,提升了單核處理能力,提供更多的可編程硬件資源和全新的集成開發環境。
ADSP-Bfin60x系列共分為ADSP-BF 606/607/608/609 4個型號,這4個型號完全Pin2Pin兼容,僅僅是在地址空間的范圍及音、視頻引擎功能模塊(PVP)上略有不同,本文的原理適用于上述所有型號的芯片。
ADSP-BF60x旨在支持更經濟的新型IED設計解決方案,尤其是為智能電網應用領域內滿足IEC 61850[1]、IEEE 1588相關標準[2]的IED設計開發提供必要的軟、硬件保障,具備雙核雙系統(例如uCLinux/uCOS、uCLinux/裸核、uCOS/裸核)運行能力。作為典型的基于雙核系統架構設計,將實時任務與非實時任務分別在各自的核上運行,通過共享的數據總線進行內部數據交互。
本文重點關注基于Bfin60x體系的處理器開發時間同步管理系統(TMS)核心功能的方法及原理,并以實際iCore-K0產品開發作為示例介紹了相關功能的實現方法。
當前,典型站內自動化系統時間同步原理如圖1所示,首先,站內具有時間同步源,時間同步源的基準信號來自BDS(中國北斗系統)、GPS(美國全球定位系統)或上級信號基準源,依據對時間精度的要求不同,站內非時間基準源設備時間同步實現主要涉及以下接口及方法。

圖1 站內時間同步系統
(1)網絡接口,納秒級精度,IEEE 1588v2[3] [4];
(2)網絡接口,毫秒級精度,SNTP/NTP[5] [6];
(3)IRIG-B/PPS/串行接口,微秒級精度[7] [8];
(4)協議接口,秒級精度[9];
上述除了(3)是基于模擬同步信號,其余均基于數字同步信號。另一方面,由于時間同步的單方向性,缺乏有效的反饋機制,因此,無論是作為守時設備(基準源)或被授時設備,均無法判斷或預測實際當前的同步狀態及同步精度。
假定在基于對稱均衡網絡傳輸的場景下,PTP是基于數據包傳輸延遲計算得出網絡上主(授時側)、從(被授時側)節點間的時間偏差(Offset)值,然后再利用此偏差值進過系列算法進行本地時間值補償達到同步目的[10] [11]。但是,一方面,現場裝置支持PTP的比重不高;另一方面,從關注設備本身實際的同步狀況出發,進過系列計算誤差和補償誤差后,PTP計算偏差值與實際裝置自身時鐘值仍然有偏差,因此,嚴格意義上說,并不能反映實際裝置時間同步狀況。那么,如何才能真正評估實際被授時裝置的時間同步狀況及同步精度?只有通過該裝置實際對事件發生反映的時間戳來體現。
時間同步管理系統(TMS)的目標即是通過利用現有的自動化系統通訊網絡和時間同步網絡,構建基于設備事件時間戳的反饋評估系統,從而達到對系統內各設備同步授時狀態趨勢進行動態監測及實時評估。
TMS原理基于近20年研制的智能型終端設備(如微機繼保、測控、智能表計等)均能夠支持網絡、串行、現場總線通訊接口,并能夠支持SOE(順序事件記錄)和通過通訊的方式進行SOE傳輸[12]。
從實現基本原理上看,TMS實際是依靠產生精確的外部觸發事件,造成被測設備的內部連鎖反饋,并同時將結果以SOE的形式傳輸至TMS管理端進行分析。外部觸發主要采用以下兩種形式(iCore-K0為TMS系統側)。
(1)TMS產生IEC 61850-8-1 GOOSE發布,如圖2所示。
假定IED與目前同步基準時間有偏差O,在T0時刻,TMS產生GOOSE觸發信號,IED側訂閱聯鎖后產生事件,并以MMS報告塊或SOE方式上報至TMS系統,則有:T1 = T0 + D + O;
其中,T1為IED時刻,D為TMS與IED間的數據包傳輸延遲,D小于4 ms,且對于特定系統可視作常量,由此得出IED當前的時間偏差量為:O = T1-T0-D;這里,將TMS系統時間作為基準時間,為了便于計算,假定IED與基準時間偏差控制在1 s以內,選擇T0為整秒時刻,則O必然是該整秒時刻的IED時間偏差值;

圖2 GOOSE信號觸發
(2)TMS產生狀態ON/OFF信號輸出,如圖3所示。
假定IED與目前同步基準時間有偏差O,在T0時刻,TMS產生狀態觸發信號,IED狀態輸入后產生事件,并以SOE方式上報至TMS系統,則有:T1 = T0 + D + O;其中,T1為IED時刻,D為TMS狀態輸出信號傳輸延遲,一般D可視作常量,由此得出IED當前的時間偏差量為:O = T1-T0-D;這里,將TMS系統時間作為基準時間,為了便于計算,假定IED與基準時間偏差控制在1 s以內,選擇T0為整秒時刻,則O必然是該整秒時刻的IED時間偏差值。
上述方式(1)與方式(2)具有相同的原理,區別在于(1)在IED側無需增加額外設施,僅需配置;(2)需要在IED側增加額外的狀態接入及配置,但在方式(2)下的D值一致性更好,容易取得更精確的結果。
TMS實現的關鍵點是選擇精確的T0觸發時刻及保證TMS與基準時鐘源精確同步。
由于Bfin60x雙核在結構上是對稱的,Core0作為主核,運行uCLinux或uCOS操作系統,通常在上電時先啟動,然后加載程序至Core1上運行。如圖4所示。

圖3 狀態信號觸發
該TMS觸發部件(圖中iCore-K0子卡)實現為特定交換機配套的即插即用型智能模塊,利用Bfin60x原生的兩個支持IEEE 1588v2以太網接口,通過交換機的背板網絡總線實現PTP信號同步和網絡數據交換,同時,在iCore-K0子卡上實現光耦輸入/輸出,滿足狀態觸發的需求。
Core0、Core1分別運行各自的軟件任務,其執行流程示意圖如圖5所示。
iCore-K0實現要點是首先要保證自身與時間基準源的時間偏差小于預設的閾值(這通常取決于TMS的精度要求),iCore-K0由于內嵌于支持PTP同步的交換機,因而可以直接通過PTP進行同步,達到納秒級精度;其次,Core0與Core1必須共享內部統一的時間基準源,由于Bf60x雙核具有共享地址結構,將時間計數器定義在該地址空間即可實現;最后,受限于Linux任務調度特性,非實時性的uCLinux OS(相對于進行了特殊內核改造的實時Linux),GOOSE在Core0上的時間指標無法達到標準定義的4 ms以內的傳輸要求,實測結果大致在30 ms~50 ms區間,偏差較大。由于GOOSE的實現不依賴于TCP/IP層,并且Core1支持網絡物理層和Link鏈路層,通過在Core1環境下實現GOOSE的表現層接口,并將GOOSE任務作為Core1任務的子過程實現,不做任何任務優化,在Bf60x平臺上實測結果顯示在ETH1上的GOOSE性能指標可以達到微秒級的時間特性,完全滿足用作設備間虛端子連鎖觸發的性能要求。
作為實際商用項目,我們在實驗室模擬了TMS的運行效果。

圖4 TMS觸發模塊內嵌于交換機

圖5 軟件執行流程圖示意圖
該實驗環境分別選擇了兩臺常規IED作為被測對象,分別通過其各自的IRIG-B時間同步接口與時間基準源同步,同時,選用了兩臺帶TMS模塊(iCore-K0子卡)的交換機級聯,模擬站端與間隔層兩級數據交換網絡,同時交換機采用PTP與時鐘源同步。同時,設置一臺時間測試分析儀用于捕捉iCore-K0子卡GOOSE觸發與狀態觸發信號,以分析TMS系統整體性能指標。
3.1TMS卡時間精度
分別采用外部IRIG-B-DC基準時間源和EPT-100提供 的PTP Master同步給TMS卡,測試TMS卡的IRIG-B-DC輸出信號與基準時間的偏差Offset,如圖6所示。測試結果見表1。

圖6 TMS時間精度測試用例

表1 TMS時間精度測試結果
3.2GOOSE訂閱、發布測試
根據GOOSE特性要求,通過EPT-100時間測試分析儀驗證TMS卡在外部DI/FDI(光DI)輸入時觸發GOOSE發布是否滿足GOOSE發布時間特性(< 4 ms)和測量訂閱外部GOOSE發布做內部連鎖后的再次發布或DO輸出時間延時,如圖7所示。測試結果見表2。

圖7 GOOSE訂閱、發布測試用例

表2 GOOSE訂閱、發布測試結果
3.3GOOSE PPS觸發測試
根據TMS應用,TMS卡需提供精準時刻(整點0 ms)GOOSE定周期自主發布,本測試用例驗證TMS卡是否滿足整點觸發GOOSE特性,如圖8所示。測試結果見表3。

圖8 GOOSE PPS觸發測試用例

表3 GOOSE PPS觸發測試結果
3.4DO/FDO PPS觸發測試
根據TMS應用,TMS卡需提供精準時刻(通常為整點毫秒)DO/FDO輸出,本測試用例驗證定周期時刻接點輸出時間特性,如圖9所示。測試結果見表4。

圖9 DO/FDO PPS觸發測試用例

表4 DO/FDO PPS觸發測試結果
本文闡述了Bfin60x平臺特點與TMS原理,并就具體的Bfin60x平臺實現TMS關鍵技術做了分析;同時,本文就具體的iCore-K0子卡(TMS核心部件)實現做了描述。事實上,雖然iCore-K0子卡是針對本公司內特定產品設計,但其原理完全適用于獨立裝置的設計。
參考文獻
[1]中華人民共和國國家發展和改革委員會.中華人民共和國電力行業標準 DL/T860—2006 變電站通信網絡和系統.
[2]魏豐,孫文杰.IEEE-1588協議時鐘同步報文的精確時間標記方法研究[J].儀器儀表學報,2009,30(1):162-169.
[3]崔全勝,魏勇,何永吉,史宏光.PTP1588協議的分析[J].電力系統保護與控制,2011,39(10):148-154.
[4]李澤文,楊京渝,彭曙蓉,馮科.智能電網高精度時間同步方法[J].電力科學與技術學報,2011,26(3):35-39.
[5]蔣志營.一中NTP系統設計與實現[J] .科技信息,2011,23:108-109.
[6]溫東旭,馬國強,王俊峰.SNTP協議的協議分析[J] .電力系統保護與控制,2008,36(11):19-21.
[7]馮勝民,陳娟花,王國林,陳思兵.基于FPGA的IRIG-B碼產生器的設計與實現[J] .電子測量技術,2015,38(5):67-71.
[8]龐吉耀.基于FPGA的IRIG-B編碼器實現[J] .現代電子技術,2009,39(24):113-117.
[9]馮煥霞,楊俊華,鄭儉華,吳捷.IEC60870-5-104協議的實時性能分析[J].華東電力,2009,37(4):577-581.
[10]A Vallat,D Schneuwly.Clock Synchronization in Telecommunications via PTP (IEEE 1588) [J].IEEE International Frequency Control Symposium,2007,334-341.
[11]S Lee.An Enhanced IEEE 1588 Time Synchronization Algorithm for Asymmetric Communication Link using Block Burst Transmission[J].IEEE Communications Letters,2008,12(9):687-689.
[12]C Wester,M Adamiak,J Vico.IEC61850 protocol-practical applications in industrial facilities[J].Conference Record-ias Meeting,2011,1-7.
Implementation of Time Synchronization Monitoring Based on Bfin60x Architecture
Zhou Yanyin,Gu Zongliang,Zhu Yadong
Shanghai Digigrid Digital Information Technology Co.,Ltd
Abstract:The article introduces project target and mechanism of using ADI publishing ADSPBfin60x series processor platform implementing time synchronization management system.It includes how to use processor architecture characteristics to develop relevant functions,relevant working principles and design realization methods.
Key words:IEC 61850 MMS,IEEE 1588,TMS,Real-Time GOOSE,SOE
[作者簡介]
周艷英:碩士,主要從事嵌入式應用軟件設計及開發。
DOI:10.13770/j.cnki.issn2095-705x.2016.04.009