Time Master行為
在gPTP網(wǎng)絡中作為Time Master的節(jié)點存在著如下報文處理流程:
Time Master負責SYNC報文與Follow-Up報文的發(fā)送,SYNC報文可以通過設置參數(shù)EthTSynGlobalTimeTxPeriod來進行周期性發(fā)送,在發(fā)送SYNC報文的過程中需進行如下三個基本步驟:
通過函數(shù) EthIf_ProvideTxBuffer來獲取空閑的buffer來存儲發(fā)送的數(shù)據(jù);
如果參數(shù)EthTSynHardwareTimestampSupport設置為TRUE,那么可通過函數(shù)EthIf_EnableEgressTimeStamp來激活硬件時間戳功能;
通過調(diào)用函數(shù)Ethif_Transmit來觸發(fā)報文的發(fā)送;
當參數(shù)EthTSynHardwareTimestampSupport設置為TRUE,通過調(diào)用函數(shù)EthTSyn_TxConfirmation來獲取SYNC報文外發(fā)時刻的時間戳;
通過設置參數(shù)EthTSynGlobalTimeTxFollowUpOffset來決定SYNC報文發(fā)送之后多久發(fā)送Follow_Up報文,F(xiàn)ollow_Up報文發(fā)送需經(jīng)過如下兩個基本步驟:
通過函數(shù) EthIf_ProvideTxBuffer來獲取空閑的buffer來存儲發(fā)送的數(shù)據(jù);
通過調(diào)用函數(shù)Ethif_Transmit來觸發(fā)報文的發(fā)送;
通過函數(shù) EthTSyn_TrcvLinkStateChg來獲取當前使用的PHY狀態(tài),當PHY狀態(tài)由 ETHTRCV_LINK_STATE_ACTIVE 切換成ETHTRCV_LINK_STATE_DOWN時就會重置所有時間同步報文的發(fā)送與接收狀態(tài)機。
通過函數(shù) EthTSyn_TrcvLinkStateChg來獲取當前使用的PHY狀態(tài),當PHY狀態(tài)由 ETHTRCV_LINK_STATE_DOWN切換成ETHTRCV_LINK_STATE_ACTIVE時就會重啟所有時間同步報文的發(fā)送與接收。
可通過調(diào)用函數(shù)EthTSyn_SetTransmissionMode并設置成ETHTSYN_TX_OFF,所有發(fā)送的請求將會被禁止發(fā)送,設置成ETHTSYN_TX_ON則所有的報文發(fā)送請求均會被接受。
-
網(wǎng)絡
+關注
關注
14文章
7517瀏覽量
88628 -
時間
+關注
關注
0文章
40瀏覽量
19742 -
汽車
+關注
關注
13文章
3423瀏覽量
37168
發(fā)布評論請先 登錄
相關推薦
評論