ptp/gptp
在車載,vehicle time使用gptp來(lái)做vehicle time的同步,gptp算是ptp的簡(jiǎn)化版,規(guī)范定義來(lái)源于IEEE 802.1AS,理論上可以達(dá)到ns級(jí)的誤差。針對(duì)不通的ptp版本和gptp的對(duì)比如下:
- gptp同步原理
針對(duì)gptp,所有slave節(jié)點(diǎn),都與master(grandmaster)的時(shí)鐘保持同步;在車載領(lǐng)域,master節(jié)點(diǎn)都是靜態(tài)指定的,并且從功能安全的角度來(lái)看,會(huì)選擇具備功能安全的mcu來(lái)做為master節(jié)點(diǎn)。所以會(huì)一般選用gw(gateway)或者tbox來(lái)做master,而選擇gw或者tbox對(duì)后續(xù)整車整個(gè)時(shí)間管理是策略會(huì)有影響。
master節(jié)點(diǎn)的sync報(bào)文(sync+follow up,以下用sync報(bào)文代替)會(huì)使用二層報(bào)文傳遍整個(gè)時(shí)鐘樹(shù),gptp中,sync報(bào)文使用二層報(bào)文,mac地址是指定的廣播mac地址,但是實(shí)際上sync報(bào)文都是以單播的形式發(fā)送到下一跳節(jié)點(diǎn),如果下一條節(jié)點(diǎn)是Bridage,則將重新修正correctionField(路由處理所消耗的時(shí)間),然后再將原來(lái)信息添加到sync報(bào)文從而路由到下一跳節(jié)點(diǎn),直至到終端節(jié)點(diǎn)--End-Station。sync報(bào)文會(huì)包含master preciseOriginTimestamp、correctionField等。如下圖:
slave節(jié)點(diǎn)會(huì)根據(jù)sync報(bào)文帶上的preciseOriginTimestamp、correctionField來(lái)調(diào)整自己的時(shí)鐘頻率以及偏移;為了消除總線上的傳輸時(shí)延,slave節(jié)點(diǎn)會(huì)發(fā)送延遲測(cè)量報(bào)文,由于在車載每一跳都會(huì)有g(shù)ptp協(xié)議棧,所以理論上測(cè)出的時(shí)鐘同步是單向、精確的,如下圖:
Pdelay=((t(4)-t(1)) - (t(3)-t(2)))/2
Pdelay測(cè)量的僅僅相鄰兩跳之間的傳輸時(shí)延,所以Pdelay是不會(huì)穿透Bridge的,從上面可以看到,gptp相對(duì)于can tsync不僅僅消除了傳輸延遲和路由報(bào)文時(shí)的處理延遲,同時(shí)時(shí)間戳是由硬件加上的,所以其時(shí)鐘同步精度遠(yuǎn)遠(yuǎn)大于can tsync。
有了上述基礎(chǔ)后,我們將所有g(shù)ptp報(bào)文放一起,如下所示,并推導(dǎo)出slave節(jié)點(diǎn)用于調(diào)幅和調(diào)相的公式。
C Pdelay = ((t6-t3)-(t5-t4))/2 Gm = t1 + Pdelay + CorrectionField //主時(shí)鐘時(shí)刻+線纜傳輸時(shí)間+路由報(bào)文花銷掉的時(shí)間 TimeOffset = t2 - Gm //用于調(diào)相或者調(diào)幅 Ratio = (Gm-Gm_last) /(t2-t2_last) //Gm_last和t2_last可以更久之前的。 FreqOffset = (1-Ratio)*1e9//用于調(diào)頻
根據(jù)規(guī)范,sync報(bào)文一般是125ms發(fā)送一次;而Pdelay報(bào)文是1s發(fā)送一次,也可以是每次sync報(bào)文觸發(fā)一次Pdelay報(bào)文,并且一般來(lái)說(shuō)說(shuō)同步精度是可配置的,當(dāng)超過(guò)threshold時(shí)才去調(diào)整本地時(shí)鐘。gptp調(diào)整的時(shí)鐘(gptp時(shí)鐘),是與網(wǎng)卡時(shí)鐘源同一層級(jí)的時(shí)鐘樹(shù)端點(diǎn),在linux上一般會(huì)抽象成設(shè)備,也就是/dev/ptpx;在使用硬件時(shí)鐘戳?xí)r,當(dāng)網(wǎng)絡(luò)報(bào)文發(fā)送或者接收時(shí)的采樣點(diǎn)到達(dá)時(shí),會(huì)從gptp時(shí)鐘上獲取時(shí)間戳。采樣點(diǎn)如下圖所示:
額外:上圖不僅僅展示了采樣點(diǎn),還展示了latency,如果是為了追求超高精度的時(shí)鐘同步,需要將ingress_latency和egress_latency在實(shí)際計(jì)算時(shí)進(jìn)行補(bǔ)償。
gptp報(bào)文格式略微復(fù)雜,在這里不再具體展開(kāi),對(duì)于了解gptp原理的角度來(lái)說(shuō),可以暫時(shí)不用關(guān)注報(bào)文格式。
-
車載
+關(guān)注
關(guān)注
18文章
638瀏覽量
83946 -
節(jié)點(diǎn)
+關(guān)注
關(guān)注
0文章
222瀏覽量
24975 -
時(shí)鐘同步
+關(guān)注
關(guān)注
0文章
117瀏覽量
13024 -
報(bào)文
+關(guān)注
關(guān)注
0文章
39瀏覽量
4188
發(fā)布評(píng)論請(qǐng)先 登錄
介紹車載通信技術(shù)的現(xiàn)狀與今后發(fā)展動(dòng)向
s32g-vnp-rdb2上傳sja1110_uc和使用gPTP時(shí)出錯(cuò)了怎么解決?
車載以太網(wǎng)時(shí)間同步之EthTsync技術(shù)解析

車載以太網(wǎng)時(shí)間同步AUTOSAR層級(jí)關(guān)系

EthTsync模塊時(shí)間同步協(xié)議gPTP拓?fù)浣Y(jié)構(gòu)

gPTP時(shí)間同步流程介紹

車載AUTOSAR中gPTP協(xié)議介紹

車載以太網(wǎng)時(shí)間同步Time Slave行為

智能網(wǎng)聯(lián)汽車對(duì)“時(shí)間同步”的總結(jié)

車載時(shí)間融合與utc同步

車載網(wǎng)絡(luò)中gPTP交換機(jī)的應(yīng)用方案

評(píng)論