簡(jiǎn)介
在前面的文章中介紹了i.MX RT1180跨界處理器的主要應(yīng)用場(chǎng)景是在工業(yè)自動(dòng)化與智能制造的高精度測(cè)量領(lǐng)域,而這其中時(shí)間同步是一個(gè)實(shí)時(shí)系統(tǒng)能夠穩(wěn)定運(yùn)行的關(guān)鍵。而主流的工業(yè)網(wǎng)絡(luò)協(xié)議基本上的時(shí)鐘同步原理都是一脈相承來(lái)自于IEEE 1588標(biāo)準(zhǔn),今天本文就介紹一下RT1180上如何實(shí)現(xiàn)1588同步。
1588基本原理簡(jiǎn)介
首先來(lái)了解一下802.1AS(又叫g(shù)PTP)協(xié)議本身。gPTP協(xié)議最早可以追溯到20世紀(jì)90年代,以太網(wǎng)的速度開(kāi)始從10Mbps往100Mbps發(fā)展,而早期的時(shí)間同步協(xié)議NTP工作在應(yīng)用層并且由純軟件實(shí)現(xiàn),它通常只能保證毫秒級(jí)的同步精度,這無(wú)法滿足工業(yè)自動(dòng)化,汽車(chē),電力系統(tǒng)等應(yīng)用領(lǐng)域?qū)ν骄鹊囊蟆?/p>
為了解決這個(gè)問(wèn)題,在2002年,IEEE正式發(fā)布了1588協(xié)議的V1版本,定義了時(shí)間同步的基本原理,此版本的同步精度可以達(dá)到亞毫秒級(jí),而在2008年發(fā)布的V2版本中引入了硬件時(shí)間戳的定義,同步精度由此提升到了亞微秒級(jí)。到了2011年第一版的gPTP協(xié)議發(fā)布,它脫胎于1588V2,但是與之不同的是它對(duì)1588V2進(jìn)行了簡(jiǎn)化,拋棄了一些特性選項(xiàng),并且針對(duì)性的僅工作在二層網(wǎng)絡(luò)上以提升精度。再到2020年,IEEE又發(fā)布了一版802.1AS-2020協(xié)議,創(chuàng)新的加入了多個(gè)時(shí)間域的支持,使得不同種類(lèi)的應(yīng)用可以使用獨(dú)立的時(shí)間域,有效提升了容錯(cuò)及冗余能力。
同步原理方面,從NTP到gPTP,使用的原理都是同樣的步驟,如下圖所示:

主時(shí)鐘與從時(shí)鐘之間通過(guò)Sync,F(xiàn)ollow_up,Delay_req,Delay_rsep四種幀的通信,讓從時(shí)鐘能夠獲取與主時(shí)鐘的偏移以及傳輸延遲,然后從時(shí)鐘調(diào)整自己以與主時(shí)鐘同步。
通常來(lái)說(shuō),在計(jì)算偏移與延遲的過(guò)程中,時(shí)間戳越接近模擬信號(hào)的出口就能夠獲取越準(zhǔn)確的結(jié)果,而RT1180就依賴于一個(gè)內(nèi)置的Timer模塊,能夠在MAC的出口獲取時(shí)間戳,獲得相對(duì)較為準(zhǔn)確的數(shù)據(jù)。
RT1180 1588 Timer模塊
RT1180的Timer模塊的基本結(jié)構(gòu)如下圖所示:

時(shí)鐘源的穩(wěn)定是時(shí)鐘同步的基礎(chǔ),所以RT1180的Timer可以支持多種時(shí)鐘源輸入作為計(jì)數(shù)源,可以根據(jù)需求選擇不同穩(wěn)定標(biāo)準(zhǔn)的時(shí)鐘源來(lái)作為時(shí)基。
這個(gè)Timer提供了多個(gè)寄存器以提供準(zhǔn)確的時(shí)間戳。包含兩個(gè)64-bit的counter寄存器TMR_CNT,TMR_OFF。除此以外,還提供了兩個(gè)32-bit的寄存器TMR_ACC配合TMR_ADD寄存器可以用于微調(diào)TMR_CNT的值,以讓輸出的時(shí)間戳能夠與主時(shí)鐘同步。
具體到它的調(diào)節(jié)原理如下,TMR_CNT會(huì)按照TMR_CTRL[TCLK_PERIOD]中設(shè)定的值每個(gè)周期遞增,TMR_ACC(定時(shí)器累加器)在每個(gè)定時(shí)器時(shí)鐘周期都會(huì)按照TMR_ADD[ADDEND]的值遞增。當(dāng)TMR_ACC累加到溢出時(shí),TMR_CNT會(huì)額外加1,用于補(bǔ)償時(shí)鐘頻率中的小數(shù)部分。調(diào)整TCLK_PERIO以及TMR_ADD寄存器的值就可以做到調(diào)節(jié)Timer的輸出時(shí)間戳的值而達(dá)到調(diào)節(jié)時(shí)鐘頻率的目的。
同時(shí)這個(gè)Timer還提供了Alarm以及Fiper寄存器,Alarm寄存器用以實(shí)現(xiàn)到達(dá)指定時(shí)間時(shí)輸出脈沖,F(xiàn)iper模塊用以實(shí)現(xiàn)周期性的脈沖輸出,主要用于1PPS信號(hào)的輸出。
在實(shí)際的1588實(shí)現(xiàn)中,在周期性的計(jì)算offset的情況下,會(huì)使用PI控制的方法來(lái)動(dòng)態(tài)調(diào)節(jié)TCLK_PERIOD與TMR_ADD的值以實(shí)現(xiàn)時(shí)鐘頻率的微調(diào),讓offset能夠保持在一個(gè)穩(wěn)定的范圍以內(nèi)。
RT1180時(shí)鐘同步效果
同步的基本原理上面已經(jīng)介紹過(guò)了,而在i.MX RT1180上,NXP提供的GenAVB/TSN軟件包也可以用于測(cè)量實(shí)際的同步效果,下圖就是基于兩塊RT1180-EVK單跳連接下所測(cè)量出來(lái)的gPTP的同步效果,可以看到offset還是保持在一個(gè)較低的值。

在確定性網(wǎng)絡(luò)和工業(yè)自動(dòng)化的時(shí)代,時(shí)間不僅是維度,更是協(xié)作的基石。i.MX RT1180憑借精準(zhǔn)的時(shí)鐘同步能力,讓每一個(gè)節(jié)點(diǎn)都能“踩準(zhǔn)節(jié)拍”,實(shí)現(xiàn)微秒級(jí)甚至納秒級(jí)的協(xié)同。
未來(lái),無(wú)論是智能工廠、車(chē)聯(lián)網(wǎng),還是能源系統(tǒng),這種“魔法”都將成為推動(dòng)高效、可靠通信的核心力量。時(shí)序共律,才能奏響工業(yè)互聯(lián)的完美樂(lè)章!
-
處理器
+關(guān)注
關(guān)注
68文章
20261瀏覽量
252624 -
時(shí)鐘
+關(guān)注
關(guān)注
11文章
1977瀏覽量
135040 -
時(shí)間同步
+關(guān)注
關(guān)注
1文章
226瀏覽量
10642
原文標(biāo)題:時(shí)序共律:揭秘i.MX RT1180的時(shí)鐘同步魔法
文章出處:【微信號(hào):NXP_SMART_HARDWARE,微信公眾號(hào):恩智浦MCU加油站】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
探索i.MX RT1180:高性能處理器的技術(shù)剖析與應(yīng)用指南
i.MX RT1180實(shí)現(xiàn)EtherCAT+伺服控制的終極實(shí)踐
使用恩智浦i.MX RT700跨界MCU打造智能手表
恩智浦推出i.MX 952人工智能應(yīng)用處理器
恩智浦i.MX 95處理器如何推動(dòng)車(chē)載HMI演進(jìn)
恩智浦i.MX RT1180 MCU如何進(jìn)入Boundary Scan模式
恩智浦助力億境虛擬打造新一代AI眼鏡解決方案
RT1180 XMCD的特點(diǎn)和使用注意事項(xiàng)
恩智浦i.MX RT1180跨界MCU助力下一代伺服控制系統(tǒng)
恩智浦i.MX RT1180跨界處理器如何選型
恩智浦MCU方案 單顆i.MX RT1180實(shí)現(xiàn)EtherCAT+伺服控制
恩智浦i.MX 95系列MPU如何賦能邊緣計(jì)算
如何實(shí)現(xiàn)安卓與恩智浦i.MX RT1170的無(wú)線投屏與控制
恩智浦i.MX 94應(yīng)用處理器和Trimension NCJ29D6超寬帶IC榮獲嵌入式世界大會(huì)兩項(xiàng)大獎(jiǎng)
在恩智浦i.MX RT1180跨界處理器上如何實(shí)現(xiàn)1588協(xié)議同步
評(píng)論