創龍首頁 >關于創龍 > 新聞資訊 > 技術文章

聯系我們

Contact Us

公司總機:020-8998-6280

技術熱線:020-3893-9734

技術郵箱:support@tronlong.com

銷售郵箱:sales@tronlong.com

B碼對時方案,基于TI AM62x異構多核工業處理器實現!

2024/03/07

什么是IRIG-B碼對時


IRIG-B(inter-range instrumentationgroup-B)碼是一種時間同步標準,通常用于精確的時間測量和數據同步,廣泛應用于電力、通信、航空等領域。


IRIG-B碼為每秒一幀的時間串碼,一幀串碼中包含100個碼元,頻率為1KHz,即每個碼元占用10ms時間。IRIG-B碼基本的碼元為"0"碼元、"1"碼元和"P"碼元,"0"碼元和"1"碼元對應的脈沖寬度為2ms和5ms,"P"碼元為位置碼元,對應的脈沖寬度為8ms,IRIG-B碼信息的基本碼元的示意圖如下所示。




 

圖1

下圖為一幀的IRIG-B碼脈沖序列結構示意圖。連續兩個"P"碼元表示整秒的開始,第二個"P"碼元的脈沖前沿為“準時”參考點,定義其為"Pr"。每10個碼元有一個位置碼元,共有10個,定義其為P1,P2,…,P9,P0。IRIG-B碼時間格式的時序為秒、分、時、天,所占信息位分別為:秒7位、分7位、時6位、天10位,其位置在P0 ~ P5之間。


 

通常,從"Pr"開始對碼元進行編號,分別定義為第0,1,2,…,99碼元,則“秒”信息位于第1、2、3、4、6、7、8碼元,“分”信息位于第10、11、12、13、15、16,17碼元,“時”信息位于第20、21、22、23、25、26碼元,“天”信息位于第30、31、32、33、35、36、37、38、40、41碼元。

 

圖2

IRIG-B碼對時應用場景


IRIG-B碼對時可應用于繼電保護裝置、電力RTU、電力錄波器、通訊管理機、電能質量在線監測等領域。創龍科技已基于TI AM62x異構多核處理器實現IRIG-B碼對時方案,降低了終端用戶的開發難度,縮減了研發時間,可快速進行產品方案評估與技術預研。

 

圖3


 

常見IRIG-B碼對時實現方案

IRIG-B碼對時的實現常見方案一般基于FPGA或MCU實現,具體方案實現方式如下。


(1)基于FPGA實現


為達到IRIG-B碼與時間信號輸入、輸出的精確同步,采用現代化靶場的IRIG-B碼編碼和解碼的原理,從工程的角度出發,提出了使用現場可編程門陣列(FPGA)來實現IRIG-B碼編碼和解碼的設計方案和體系結構,設計中會涉及到幾個不同的時鐘頻率,FPGA對時鐘的同步性具有靈活性、效率高、且功耗低,抗干擾性好的特點。結果表明,FPGA能夠確保為從設備提供同源的時鐘基準,使時鐘與信號的延遲控制在200ns以內,從而得到了IRIG-B碼與時間精確同步的效果。


但是,基于FPGA實現IRIG-B碼開發難度較大,時間投入較多,開發成本將會較高,不利于產品的快速上市。


(2)基于MCU實現


MCU(Micro Control Unit)即微控制單元,通過MCU核心可實現解析IRIG-B碼時序并提取時間信息,再將時間信息同步至其他核心?;贛CU實現IRIG-B碼開發方案結構簡單、開發成本較低、同步精度較高,可滿足多種工業應用場景要求。

 

AM62x IRIG-B碼對時方案

本章節主要描述創龍科技基于TI AM62x的MCU(Cortex-M4F)核心實現IRIG-B碼信號解析功能。

 

AM62x內部集成Cortex-A53 + Cortex-M4F核心,可使用Cortex-M4F實現IRIG-B碼對時功能,無需增加額外的MCU成本。并且,通過內部MCU實現IRIG-B碼對時功能方案,硬件設計簡單,有利于快速開發產品。


 

(1)案例說明
 

衛星時鐘同步裝置(廠家:南京諾煌電氣科技有限公司,型號:YS-DN-100)通過GPS天線模塊獲取標準時間信息并輸出IRIG-B碼信號,經評估板板載RS485芯片轉換成電平信號后傳輸至Cortex-M4F核心,Cortex-M4F核心通過讀取GPIO引腳電平,解析IRIG-B碼時序并提取時間信息,再通過TI-RPMsg機制將時間信息發送至Cortex-A53核心打印時間信息。系統框圖如下所示。


 

圖4

(2)

案例測試

本案例需在開闊場地進行測試,請確保衛星時鐘同步裝置的RUN指示燈處于常亮狀態(表示設備工作正常),否則請檢查GPS天線連接是否正常。

由于評估底板RS485_2 UART5為Cortex-A53核心的外設,因此請通過飛線的方式將RS485芯片(U30)的pin3引腳連接至EXPROT接口(J11)的pin4引腳(即Cortex-M4F核心GPIO)。衛星時鐘同步裝置輸出的IRIG-B碼信號經評估底板RS485_2 UART5接口后,再經過EXPROT接口(J11)的pin4引腳輸入至Cortex-M4F核心。

圖5


 

圖6

 

請將衛星時鐘同步裝置的ANT接口連接至GPS天線模塊,將衛星時鐘同步裝置OUT1接口的“+端子”連接至評估板的RS485_2 UART5接口“A2端子”、OUT1接口的“-端子”連接至評估板的RS485_2 UART5接口“B2端子”,硬件連接如下圖所示。


 

圖7


 

請將本案例"dts\bin\"目錄下的tl62x-evm.dtb設備樹文件拷貝至Linux系統啟動卡"/boot/"目錄下,替換原有的tl62x-evm.dtb設備樹文件。然后將案例bin目錄下的am62-mcu-m4f0_0-fw文件、irig_b_decode可執行程序拷貝至Linux系統啟動卡文件系統"/home/root/"目錄下。


 

圖8

評估板上電,從Linux系統啟動卡啟動,依次執行如下命令,更新Cortex-M4F核心固件,并重啟評估板。


 

Target#rm /lib/firmware/am62-mcu-m4f0_0-fw

Target#cd /lib/firmware/

Target#ln -sf /home/root/am62-mcu-m4f0_0-fw am62-mcu-m4f0_0-fw

Target#sync

Target#reboot

圖9


 

執行如下命令,查詢Cortex-M4F核心與remoteproc對應關系。

備注:Cortex-M4F核心對應的RemoteProc Name為5000000.m4fss。


 

Target#head /sys/class/remoteproc/remoteproc*/name

圖10


根據查詢結果,執行如下命令查看Cortex-M4F核心程序運行日志,確認Cortex-M4F核心運行狀態。


 

Target#cat /sys/kernel/debug/remoteproc/remoteproc0/trace0

圖11


 

執行如下命令,查看程序運行參數。


 

Target#./irig_b_decode -h


 

備注:rproc_id:核心ID。Cortex-M4F核心ID為9,默認ID為0。

圖12

 

執行如下命令,解析IRIG-B碼時序并提取時間信息,可看到串口終端打印當前日期如下圖所示。


 

Target#./irig_b_decode -r 9


 

圖13




創龍官方微信公眾號

Copyright © 2013~2025 廣州創龍電子科技有限公司 All Rights Reserved  | 粵ICP備15055271號