本發(fā)明涉及網(wǎng)絡(luò)對時,具體為一種ptp高精度網(wǎng)絡(luò)對時的實現(xiàn)方法。
背景技術(shù):
1、網(wǎng)絡(luò)對時是針對自動化系統(tǒng)中的計算機、控制裝置等進行校時的高科技產(chǎn)品,網(wǎng)絡(luò)對時設(shè)備它從gps衛(wèi)星上獲取標準的時間信號,將這些信息通過各種接口類型來傳輸給自動化系統(tǒng)中需要時間信息的設(shè)備,這樣就可以達到整個系統(tǒng)的時間同步。
2、通常的網(wǎng)絡(luò)對時是通過軟件實現(xiàn)或者通過phy芯片實現(xiàn),軟件實現(xiàn)由于程序受cpu主頻、系統(tǒng)中斷、dma傳輸延遲、任務調(diào)度等影響導致精度低(對時精度為ms級別),而通過帶對時功能的phy芯片對時,又會導致電路設(shè)計復雜或者系統(tǒng)時間更新不及時或只支持鏈路層對時報文(不支持ipv4和ipv6)問題。
技術(shù)實現(xiàn)思路
1、本發(fā)明的目的在于提供一種ptp高精度網(wǎng)絡(luò)對時的實現(xiàn)方法,以解決上述背景技術(shù)中提出的問題。
2、為了解決上述技術(shù)問題,本發(fā)明提供如下技術(shù)方案一種ptp高精度網(wǎng)絡(luò)對時的實現(xiàn)方法,
3、該方法包括如下步驟:
4、s1、mac層解析以太網(wǎng)報文,識別出ptp報文及類型,如果是ptp報文,mac在上傳dma時會在dma描述符里填充接收該報文的時間戳,時間戳由mac控制器內(nèi)部維護;
5、s2、mac控制器留有寄存器,允許cpu設(shè)置或更新當前系統(tǒng)時間;
6、s3、每到整秒時刻,mac控制器輸出脈沖信號;
7、s4、cpu輸出時鐘給mac控制器用于維護系統(tǒng)時間,mac控制器假定該時鐘速率為50mhz,cpu根據(jù)實際的時鐘速率去更新滴答計數(shù)器的寄存器,用于動態(tài)調(diào)整時鐘速率。
8、進一步的,所述步驟s1中,mac控制器篩選識別ptp報文,簡化以太網(wǎng)驅(qū)動的處理邏輯。
9、進一步的,所述步驟s1中,ptp報文的接收時間戳由mac控制器維護,時間精確到ns級,提高對時的準確性。
10、進一步的,電路設(shè)計簡單可以提供不同速率的時鐘,且所述步驟s4中,cpu可以通過寄存器調(diào)整時鐘速率快慢,可以減小晶振由于環(huán)境問題導致的時鐘不穩(wěn)定的問題,提高對時的準確性。
11、與現(xiàn)有技術(shù)相比,本發(fā)明所達到的有益效果是:具有較為簡單的處理流程、較好的跨系統(tǒng)移植性和較高的系統(tǒng)安全性;包括兩個重點:一是通過mac控制器維護內(nèi)部高精度時間戳,發(fā)送和接收的ptp報文由mac控制器記錄報文的發(fā)送或者接收時間戳;二是網(wǎng)絡(luò)驅(qū)動軟件通過dma拿到ptp對時報文及時間戳后,計算本地系統(tǒng)時間與授時設(shè)備時間的時間偏差及時鐘頻率差異,軟件計算完畢后校準mac控制器的內(nèi)部時鐘。
1.一種ptp高精度網(wǎng)絡(luò)對時的實現(xiàn)方法,其特征在于,該方法包括如下步驟:
2.根據(jù)權(quán)利要求1所述的ptp高精度網(wǎng)絡(luò)對時的實現(xiàn)方法,其特征在于:所述步驟s1中,mac控制器篩選識別ptp報文,簡化以太網(wǎng)驅(qū)動的處理邏輯。
3.根據(jù)權(quán)利要求2所述的ptp高精度網(wǎng)絡(luò)對時的實現(xiàn)方法,其特征在于:所述步驟s1中,ptp報文的接收時間戳由mac控制器維護,時間精確到ns級。
4.根據(jù)權(quán)利要求2所述的ptp高精度網(wǎng)絡(luò)對時的實現(xiàn)方法,其特征在于:所述步驟s4中,cpu可以通過寄存器調(diào)整時鐘速率快慢。