车载以太网时间同步Time Master行为

描述

  Time Master行为

  在gPTP网络中作为Time Master的节点存在着如下报文处理流程:

  Time Master负责SYNC报文与Follow-Up报文的发送,SYNC报文可以通过设置参数EthTSynGlobalTimeTxPeriod来进行周期性发送,在发送SYNC报文的过程中需进行如下三个基本步骤:

  通过函数 EthIf_ProvideTxBuffer来获取空闲的buffer来存储发送的数据;

  如果参数EthTSynHardwareTimestampSupport设置为TRUE,那么可通过函数EthIf_EnableEgressTimeStamp来激活硬件时间戳功能;

  通过调用函数Ethif_Transmit来触发报文的发送;

  当参数EthTSynHardwareTimestampSupport设置为TRUE,通过调用函数EthTSyn_TxConfirmation来获取SYNC报文外发时刻的时间戳;

  通过设置参数EthTSynGlobalTimeTxFollowUpOffset来决定SYNC报文发送之后多久发送Follow_Up报文,Follow_Up报文发送需经过如下两个基本步骤:

  通过函数 EthIf_ProvideTxBuffer来获取空闲的buffer来存储发送的数据;

  通过调用函数Ethif_Transmit来触发报文的发送;

  通过函数 EthTSyn_TrcvLinkStateChg来获取当前使用的PHY状态,当PHY状态由 ETHTRCV_LINK_STATE_ACTIVE 切换成ETHTRCV_LINK_STATE_DOWN时就会重置所有时间同步报文的发送与接收状态机。

  通过函数 EthTSyn_TrcvLinkStateChg来获取当前使用的PHY状态,当PHY状态由 ETHTRCV_LINK_STATE_DOWN切换成ETHTRCV_LINK_STATE_ACTIVE时就会重启所有时间同步报文的发送与接收。

  可通过调用函数EthTSyn_SetTransmissionMode并设置成ETHTSYN_TX_OFF,所有发送的请求将会被禁止发送,设置成ETHTSYN_TX_ON则所有的报文发送请求均会被接受。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分