專利名稱:一種嵌入式高精度網(wǎng)絡(luò)時(shí)間服務(wù)器系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及時(shí)間同步領(lǐng)域,尤其涉及一種嵌入式網(wǎng)絡(luò)時(shí)間提供方法。
背景技術(shù):
網(wǎng)絡(luò)時(shí)間服務(wù)器是針對(duì)自動(dòng)化系統(tǒng)中的計(jì)算機(jī)、控制裝置等進(jìn)行校時(shí)的高科技產(chǎn)品,它從GPS/北斗衛(wèi)星、靶場(chǎng)儀器組(IRIG-B)碼信號(hào)上獲取標(biāo)準(zhǔn)的時(shí)間信號(hào),將這些信息通過網(wǎng)絡(luò)接口傳輸給自動(dòng)化系統(tǒng)中需要時(shí)間信息的設(shè)備(計(jì)算機(jī)、保護(hù)裝置、故障錄波器、事件順序記錄裝置、安全自動(dòng)裝置等),以達(dá)到整個(gè)系統(tǒng)的時(shí)間同步。網(wǎng)絡(luò)時(shí)間服務(wù)器對(duì)提高網(wǎng)絡(luò)內(nèi)部設(shè)備時(shí)間同步精度有著重要的意義。目前大部分網(wǎng)絡(luò)時(shí)間服務(wù)器的輸入時(shí)鐘源采用串行RS232或者RS422/485接口,由CPU通過串行接口讀入,再經(jīng)過格式轉(zhuǎn)化提供給網(wǎng)絡(luò)時(shí)間服務(wù)器作為基準(zhǔn)時(shí)鐘源對(duì)網(wǎng)絡(luò)時(shí)間進(jìn)行校準(zhǔn)。由于串行接口數(shù)據(jù)傳輸速度較慢,同時(shí)軟件解碼時(shí)延不確定,使得網(wǎng)絡(luò)時(shí)間服務(wù)器的輸出時(shí)間精度受到了影響。同時(shí)使用串行接口,使得網(wǎng)絡(luò)時(shí)間服務(wù)器的時(shí)間源選擇受限,要改變輸入時(shí)間源,則需要對(duì)軟件進(jìn)行重新配置或修改,降低了系統(tǒng)的兼容性。目前大部分網(wǎng)絡(luò)時(shí)間服務(wù)器采用PC架構(gòu),由于PC機(jī)為開放式系統(tǒng),因此故障點(diǎn)較多,網(wǎng)絡(luò)時(shí)間服務(wù)器系統(tǒng)工作不穩(wěn)定,部署方式受限較多,缺乏靈活性。如何減小系統(tǒng)體積,提高系統(tǒng)安全性和穩(wěn)定性成為網(wǎng)絡(luò)時(shí)間服務(wù)器系統(tǒng)下一步的發(fā)展目標(biāo)。嵌入式系統(tǒng)是以應(yīng)用為中心、軟件硬件可裁剪、適應(yīng)應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積、功耗嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng),應(yīng)用于網(wǎng)絡(luò)時(shí)間服務(wù)器系統(tǒng),在在條件嚴(yán)苛的環(huán)境下與PC式系統(tǒng)相比有著更強(qiáng)的穩(wěn)定性與適應(yīng)性。因此,基于嵌入式系統(tǒng)開發(fā)的網(wǎng)絡(luò)時(shí)間服務(wù)器系統(tǒng),將會(huì)成為網(wǎng)絡(luò)時(shí)鐘同步系統(tǒng)中不可或缺的一個(gè)重要分支。
發(fā)明內(nèi)容
本發(fā)明公開了一種嵌入式高精度時(shí)間服務(wù)器系統(tǒng),該系統(tǒng)由時(shí)鐘源接入及解碼模塊、微秒時(shí)間計(jì)數(shù)模塊、時(shí)間信息寄存器模塊、網(wǎng)絡(luò)時(shí)間服務(wù)器接口模塊、網(wǎng)絡(luò)時(shí)間服務(wù)器模塊、系統(tǒng)存儲(chǔ)模塊和系統(tǒng)遠(yuǎn)程訪問模塊組成。該系統(tǒng)可根據(jù)信號(hào)質(zhì)量自動(dòng)選擇GPS信號(hào)、IRIG-B碼或北斗信號(hào)作為系統(tǒng)外部時(shí)間基準(zhǔn)信號(hào),并通過系統(tǒng)內(nèi)部的恒溫晶振產(chǎn)生微秒級(jí)時(shí)間,提高系統(tǒng)基準(zhǔn)時(shí)間源精度,并同時(shí)提供網(wǎng)絡(luò)時(shí)間協(xié)議(NTP)、簡(jiǎn)單網(wǎng)絡(luò)時(shí)間協(xié)議(SNTP)和日時(shí)間協(xié)議(Daytime)供網(wǎng)絡(luò)中其它客戶端進(jìn)行時(shí)間校準(zhǔn)。此外,該系統(tǒng)還可以通過遠(yuǎn)程方式反向查詢和設(shè)置系統(tǒng)網(wǎng)絡(luò)地址,降低了網(wǎng)絡(luò)管理難度。本發(fā)明能實(shí)現(xiàn)0.1毫秒級(jí)誤差的網(wǎng)絡(luò)時(shí)間校時(shí)服務(wù),彌補(bǔ)了傳統(tǒng)時(shí)間服務(wù)器時(shí)間基準(zhǔn)信號(hào)切換困難、時(shí)間精度較低、管理不便的缺陷。實(shí)現(xiàn)本發(fā)明的技術(shù)方案如下:一種嵌入式高精度時(shí)間服務(wù)器系統(tǒng),其特征在于,該系統(tǒng)包括如下部分:a)時(shí)鐘源解碼模塊根據(jù)外部輸入的GPS信號(hào)、靶場(chǎng)儀器組(IRIG-B)碼或北斗信號(hào)產(chǎn)生標(biāo)準(zhǔn)格式時(shí)間信息和秒脈沖信號(hào),并將標(biāo)準(zhǔn)格式時(shí)間信息輸出給時(shí)間信息寄存模塊,將秒脈沖信號(hào)輸出給微秒時(shí)間計(jì)數(shù)模塊;b)微秒時(shí)間計(jì)數(shù)模塊使用恒溫晶振模塊輸出的時(shí)鐘信號(hào)進(jìn)行計(jì)數(shù),并使用時(shí)鐘源解碼模塊輸出的秒脈沖信號(hào)對(duì)晶振計(jì)數(shù)進(jìn)行同步,微秒時(shí)間計(jì)數(shù)模塊將產(chǎn)生的微秒級(jí)時(shí)鐘信號(hào)輸出給時(shí)間信息寄存模塊;c)恒溫晶振模塊用于產(chǎn)生穩(wěn)定的高精度的時(shí)鐘信號(hào),并將時(shí)鐘信號(hào)輸出給微秒時(shí)間計(jì)數(shù)模塊;d)時(shí)間信息寄存模塊用于寄存時(shí)鐘源解碼模塊輸出的標(biāo)準(zhǔn)格式時(shí)間信息和微秒時(shí)間計(jì)數(shù)模塊輸出的微秒級(jí)時(shí)間信息,并將時(shí)間信息輸出給網(wǎng)絡(luò)時(shí)間服務(wù)器接口模塊;e)網(wǎng)絡(luò)時(shí)間服務(wù)器接口模塊根據(jù)網(wǎng)絡(luò)時(shí)間服務(wù)器模塊請(qǐng)求信號(hào),讀取時(shí)間信息寄存模塊中的標(biāo)準(zhǔn)格式時(shí)間信息和微秒時(shí)間信息,并標(biāo)準(zhǔn)格式時(shí)間信息送入網(wǎng)絡(luò)時(shí)間服務(wù)器;f)網(wǎng)絡(luò)時(shí)間服務(wù)器模塊根據(jù)時(shí)間信息寄存模塊中的標(biāo)準(zhǔn)格式時(shí)間信息和微秒時(shí)間信息,計(jì)算產(chǎn)生校準(zhǔn)后的時(shí)間信息,并根據(jù)網(wǎng)絡(luò)時(shí)間協(xié)議(NTP)、簡(jiǎn)單網(wǎng)絡(luò)時(shí)間協(xié)議(SNTP)和日時(shí)間協(xié)議(Daytime)將校準(zhǔn)后的時(shí)間信息通過系統(tǒng)遠(yuǎn)程訪問模塊發(fā)送到網(wǎng)絡(luò)
端口 ;g)系統(tǒng)存儲(chǔ)模塊用以存儲(chǔ)網(wǎng)絡(luò)時(shí)間服務(wù)器模塊運(yùn)行時(shí)所需要的系統(tǒng)工作參數(shù)、網(wǎng)絡(luò)時(shí)間對(duì)時(shí)誤差、系統(tǒng)應(yīng)用程序等信息;h)系統(tǒng)遠(yuǎn)程服務(wù)模塊將網(wǎng)絡(luò)時(shí)間服務(wù)器模塊的時(shí)間信息發(fā)送到網(wǎng)絡(luò)端口上,網(wǎng)絡(luò)端口上的設(shè)備還可以通過系統(tǒng)遠(yuǎn)程訪問模塊對(duì)網(wǎng)絡(luò)時(shí)間服務(wù)器模塊進(jìn)行遠(yuǎn)程訪問和管理。為了接收外部基準(zhǔn)時(shí)鐘源作為系統(tǒng)時(shí)鐘基準(zhǔn)信號(hào),即模塊(a)描述的功能,時(shí)鐘源接入及解碼模塊的功能進(jìn)一步包含如下步驟:al)時(shí)鐘基準(zhǔn)源端口接收到外部時(shí)間基準(zhǔn)源信號(hào)后,時(shí)鐘源解碼模塊根據(jù)時(shí)間基準(zhǔn)源信號(hào)的狀態(tài)信息,按優(yōu)先順序選擇外部時(shí)間基準(zhǔn)源作為時(shí)間同步源,選擇順序?yàn)镚PS信號(hào)、IRIG-B碼、北斗信號(hào);a2)對(duì)選擇的時(shí)間基準(zhǔn)源信號(hào)進(jìn)行時(shí)鐘解碼,得到標(biāo)準(zhǔn)格式時(shí)間,時(shí)間格式為年、月、日、時(shí)、分、秒;a3)如果時(shí)間基準(zhǔn)源信號(hào)為GPS信號(hào)或北斗信號(hào),則等待秒沖信號(hào)到來,如果外部時(shí)鐘源使用靶場(chǎng)儀器組(IRIG-B)碼,則從靶場(chǎng)儀器組(IRIG-B)碼中解碼出秒脈沖信號(hào);a4)當(dāng)秒脈沖信號(hào)出現(xiàn)時(shí),將解碼完成的標(biāo)準(zhǔn)時(shí)間格式信息寫入時(shí)間信息寄存,同時(shí)利用秒脈沖信號(hào)產(chǎn)生中斷,通知后端網(wǎng)絡(luò)時(shí)間服務(wù)器接口模塊讀取。為了給時(shí)間服務(wù)器系統(tǒng)提供微秒級(jí)精確時(shí)鐘信號(hào),提高外部時(shí)間基準(zhǔn)源精度,SP模塊(b)描述的功能,微秒時(shí)間計(jì)數(shù)模塊的功能進(jìn)一步包含如下步驟:bl)對(duì)外部I 20兆的恒溫晶振進(jìn)行分頻,然后對(duì)分頻輸出信號(hào)進(jìn)行計(jì)數(shù);b2)當(dāng)外部時(shí)間基準(zhǔn)信號(hào)的秒脈沖來臨,清空計(jì)數(shù)器值并復(fù)位計(jì)數(shù)模塊,對(duì)輸入的晶振時(shí)鐘重新進(jìn)行計(jì)數(shù);b3)當(dāng)收到后端網(wǎng)絡(luò)時(shí)間服務(wù)器時(shí)鐘源接入模塊的時(shí)鐘讀取信號(hào),則鎖定當(dāng)前計(jì)數(shù)器中的計(jì)數(shù)值,并刷新到時(shí)間信息寄存器當(dāng)中,供后端讀取。為了將轉(zhuǎn)換后的外部基準(zhǔn)時(shí)鐘源信息按照給定格式要求提供給時(shí)鐘服務(wù)器輪詢,即模塊(d)描述的功能,網(wǎng)絡(luò)時(shí)間服務(wù)器接口模塊的功能進(jìn)一步包含如下步驟:
dl)檢查時(shí)間信息寄存器的狀態(tài)標(biāo)志位是否為0x5A5A,如果是則說明時(shí)鐘解碼及微秒計(jì)數(shù)正常,如果否則說明模塊異常,模塊停止時(shí)鐘讀取并發(fā)送告警信號(hào);d2)等待時(shí)鐘源接入及解碼模塊的中斷輸入信號(hào),如果中斷來臨則從時(shí)間信息寄存器讀取標(biāo)準(zhǔn)格式時(shí)間,并對(duì)當(dāng)前時(shí)間進(jìn)行秒數(shù)加I操作,以彌補(bǔ)當(dāng)前時(shí)間和寄存器時(shí)間之間的讀取間隔誤差;d3)當(dāng)網(wǎng)絡(luò)時(shí)間服務(wù)器時(shí)間輪詢請(qǐng)求到來,發(fā)出微秒時(shí)間讀取請(qǐng)求并從時(shí)間信息寄存器讀出微秒時(shí)間;d4)將標(biāo)準(zhǔn)格式時(shí)間和微秒時(shí)間轉(zhuǎn)換組合為網(wǎng)絡(luò)時(shí)間服務(wù)器要求的時(shí)間格式,并提交給網(wǎng)絡(luò)時(shí)間服務(wù)器。本發(fā)明公開的嵌入式高精度網(wǎng)絡(luò)時(shí)鐘服務(wù)器系統(tǒng)在大多數(shù)情況下部署在無人值守的場(chǎng)合,同時(shí)部署的網(wǎng)絡(luò)環(huán)境復(fù)雜多變,因此可能出現(xiàn)管理者無法知曉服務(wù)器網(wǎng)絡(luò)地址的情況。針對(duì)這一問題。本發(fā)明還包含一種通過媒體訪問控制(MAC)地址遠(yuǎn)程查詢網(wǎng)絡(luò)地址的方法,其步驟如下:I)按照地址解析協(xié)議(ARP)格式偽裝網(wǎng)絡(luò)地址查詢數(shù)據(jù)包,在目標(biāo)硬件地址部分加入待查詢系統(tǒng)的媒體訪問控制(MAC)地址;2)修改系統(tǒng)地址解析協(xié)議(ARP)層解析程序,檢查數(shù)據(jù)包目標(biāo)硬件地址是否為空,如果為空則說明該數(shù)據(jù)包為正常數(shù)據(jù)包,按照正常地址解析協(xié)議流程處理,否則轉(zhuǎn)入遠(yuǎn)程網(wǎng)絡(luò)地址查詢;3)檢查數(shù)據(jù)包目標(biāo)硬件地址部分內(nèi)容是否與媒體訪問控制(MAC)地址相同,如果相同則從本機(jī)獲得本地網(wǎng)絡(luò)地址,并填入地址解析協(xié)議(ARP)格式數(shù)據(jù)包的目標(biāo)協(xié)議地址部分發(fā)送回查詢主機(jī),如果不同則丟棄該數(shù)據(jù)包;4)查詢主機(jī)接收返回的地址解析協(xié)議(ARP)格式數(shù)據(jù)包并解析該數(shù)據(jù)包,如果目標(biāo)硬件地址部分?jǐn)?shù)據(jù)與待查詢主機(jī)一致,則提取目標(biāo)協(xié)議地址中的網(wǎng)絡(luò)地址并返回給查詢界面,否則丟棄該數(shù)據(jù)包。目前,大部分場(chǎng)合下更改系統(tǒng)網(wǎng)絡(luò)地址需要在本地操作。為了提高系統(tǒng)網(wǎng)絡(luò)地址設(shè)置的靈活性,本發(fā)明還包含一種通過媒體訪問控制(MAC)地址遠(yuǎn)程設(shè)置網(wǎng)絡(luò)地址的方法,其步驟如下:I)遠(yuǎn)程主機(jī)通過地址解析協(xié)議(ARP)工具將需設(shè)置主機(jī)的媒體訪問控制(MAC)地址和網(wǎng)絡(luò)地址綁定,再通過遠(yuǎn)程登陸協(xié)議(Telnet)工具向網(wǎng)絡(luò)I號(hào)端口發(fā)出遠(yuǎn)程登錄請(qǐng)求;2)系統(tǒng)監(jiān)聽網(wǎng)絡(luò)I號(hào)端口,接收遠(yuǎn)程登陸協(xié)議(Telnet)登錄請(qǐng)求數(shù)據(jù)包,并解析出數(shù)據(jù)包中的目的網(wǎng)絡(luò)地址;3)將取出的目的網(wǎng)絡(luò)地址設(shè)置到系統(tǒng),并重新啟動(dòng)網(wǎng)絡(luò)服務(wù)使新的目的地址生效,同時(shí)發(fā)出登錄拒絕數(shù)據(jù)包;4)遠(yuǎn)程主機(jī)收到登錄拒絕數(shù)據(jù)包之后,關(guān)閉該連接并在網(wǎng)絡(luò)23號(hào)端口重新發(fā)出遠(yuǎn)程登錄請(qǐng)求,完成新的網(wǎng)絡(luò)地址的使用。以下結(jié)合附圖,通過具體實(shí)施方式
對(duì)本發(fā)明進(jìn)行詳細(xì)描述。
圖1是嵌入式高精度時(shí)間服務(wù)器系統(tǒng)組成框2是時(shí)鐘源接入及解碼模塊組成框3是靶場(chǎng)儀器組(IRIG-B)碼秒脈沖產(chǎn)生原理4是靶場(chǎng)儀器組(IRIG-B)碼時(shí)間信息提取流程5是微秒時(shí)間計(jì)數(shù)模塊組成框6是網(wǎng)絡(luò)時(shí)間服務(wù)器接口模塊寄存器定義7是遠(yuǎn)程網(wǎng)絡(luò)地址查詢交互流程圖嵌入式高精度時(shí)間服務(wù)器系統(tǒng)組成框圖如圖1所示。該系統(tǒng)由如下幾個(gè)部分組成:時(shí)鐘源解碼模塊、微秒時(shí)間計(jì)數(shù)模塊、時(shí)間信息寄存模塊、網(wǎng)絡(luò)時(shí)間服務(wù)器接口模塊、網(wǎng)絡(luò)時(shí)間服務(wù)器模塊、系統(tǒng)存儲(chǔ)模塊和系統(tǒng)遠(yuǎn)程服務(wù)模塊。時(shí)鐘源解碼模塊的主要功能是,對(duì)前端GPS/北斗接收機(jī)送出的NMEA-0183語句或者靶場(chǎng)儀器組(IRIG-B)碼進(jìn)行解碼,經(jīng)信號(hào)選擇模塊選擇后同步輸出到時(shí)間寄存器模塊。該模塊組成框圖如圖2所示。GPS/北斗接收機(jī)配置與解碼模塊由串口模塊、NMEA語句解碼模塊以及配置模塊組成。GPS接收機(jī)與北斗接收機(jī)的輸出與配置語句都是NMEA-0183格式,GPS/北斗配置與解碼模塊的結(jié)構(gòu)完全相同。該模塊通過UART模塊接收NMEA-0183格式的語句,經(jīng)NMEA解碼模塊解碼后,放入相應(yīng)的寄存器中,供時(shí)鐘模塊使用;配置模塊首先初始化相關(guān)寄存器,然后送出配置啟動(dòng)信號(hào),再將相應(yīng)寄存器的內(nèi)容組織起來,通過串口模塊并串轉(zhuǎn)換后,送到GPS/北斗接收機(jī)。靶場(chǎng)儀器組(IRIG-B)碼的解碼分為兩個(gè)部分,一是對(duì)秒脈沖信號(hào)的提取,另一個(gè)是對(duì)時(shí)間信息的解碼。對(duì)秒脈沖信號(hào)提取是解碼的關(guān)鍵,秒脈沖的提取誤差將直接影響秒脈沖的精度。靶場(chǎng)儀器組(IRIG-B)秒脈沖提取和解碼模塊由秒準(zhǔn)時(shí)沿提取電路、時(shí)延補(bǔ)償電路以及IRIG-B碼解碼電路組成。靶場(chǎng)儀器組(IRIG-B)碼的準(zhǔn)時(shí)沿是連續(xù)兩個(gè)P碼元中的第二個(gè)碼元的上升沿,當(dāng)連續(xù)兩個(gè)碼元的高電平持續(xù)時(shí)間達(dá)到P碼元的要求時(shí),才能確定秒準(zhǔn)時(shí)沿,但此時(shí)秒的準(zhǔn)時(shí)刻已經(jīng)過去了 8ms。為了能夠提取出的秒準(zhǔn)時(shí)沿,通過觀察P碼元的個(gè)數(shù)count_p,產(chǎn)生一個(gè)屏蔽信號(hào)Mask,該信號(hào)在秒準(zhǔn)時(shí)沿到來前一個(gè)時(shí)鐘時(shí)刻打開,在秒準(zhǔn)時(shí)沿所在高電平過后下一個(gè)時(shí)鐘時(shí)刻關(guān)閉,那么秒準(zhǔn)時(shí)沿將是Mask信號(hào)與進(jìn)入的IRIG-B信號(hào)相“與”的結(jié)果,利用這種組合邏輯實(shí)現(xiàn)PPS信號(hào)的同步提取。秒脈沖產(chǎn)生原理如圖3所示。初始時(shí)刻count_p等于0,在第一次觀察到連續(xù)兩個(gè)P碼元以后,每遇到一個(gè)P碼元將count_p加I,之后再次觀察到連續(xù)兩個(gè)P碼元時(shí),將count_p清零。在count_p等于10這段時(shí)間,就是Mask信號(hào)為高電平的時(shí)間。碼元位置代表各種不同的時(shí)間信息,前59位碼元包含年、月、日、時(shí)、分、秒信息,71 74位碼元為時(shí)間質(zhì)量。IRIG-B時(shí)間信息提取流程如圖4所示。模塊定義一個(gè)100位的寄存器,在解碼過程中,把與碼元位置對(duì)應(yīng)的寄存器位,設(shè)置成相應(yīng)的電平,P碼元設(shè)置為低電平。然后進(jìn)行數(shù)據(jù)的串并轉(zhuǎn)化,最后把收集的BCD碼時(shí)間轉(zhuǎn)化為二進(jìn)制碼時(shí)間信息。接收完成后,模塊將解碼出的時(shí)間、狀態(tài)信息存于相應(yīng)的寄存器中,信號(hào)選擇模塊根據(jù)寄存器中的狀態(tài)信息,選擇一路外部時(shí)間基準(zhǔn)源作為時(shí)間同步源,并利用選擇的外部時(shí)間基準(zhǔn)源生成高精度的秒脈沖信號(hào),在高精度秒脈沖的同步下將IRIG-B解碼模塊、GPS/北斗解碼模塊輸出的時(shí)間信息按照規(guī)定編碼寫入時(shí)間信息寄存器模塊。信號(hào)選擇模塊根據(jù)狀態(tài)信息status_time_bd、lockstar_gps、timeQ 從 PPS_GPS、PPS_BD、PPS_B三路秒脈沖信號(hào)中篩選出時(shí)間同步信號(hào)PPS_IN,PPS_IN的篩選原則如下:I)衛(wèi)星授時(shí)源正常工作時(shí),使用衛(wèi)星授時(shí)源。2)GPS、北斗衛(wèi)星授時(shí)源同時(shí)有效時(shí),根據(jù)用戶配置要求,選擇其中一路衛(wèi)星授時(shí)源優(yōu)先,另一路作為備用授時(shí)源。3)當(dāng)衛(wèi)星授時(shí)源都失效時(shí),根據(jù)B碼的時(shí)間質(zhì)量,決定是否使用B碼作為同步源。4)三路路外部時(shí)間基準(zhǔn)信號(hào)都無效時(shí),PPS_IN持續(xù)低電平。GPS/北斗信號(hào)中的NEMA語句僅提供毫秒級(jí)時(shí)間,IRIG-B碼僅提供秒級(jí)時(shí)間,作為時(shí)間服務(wù)器的基準(zhǔn)時(shí)鐘源,這樣的時(shí)間精度是不能滿足網(wǎng)絡(luò)時(shí)間服務(wù)器的要求的。如果需要提高時(shí)間精度,就需要微秒時(shí)間計(jì)數(shù)模塊產(chǎn)生微秒級(jí)時(shí)鐘。該模塊采用高精度恒溫晶振作為計(jì)數(shù)時(shí)鐘源,可以很好地滿足系統(tǒng)微秒級(jí)時(shí)鐘的精度要求。由于恒溫晶體振蕩器具有優(yōu)異的短期頻率穩(wěn)定度和頻率溫度穩(wěn)定度,所以,短期內(nèi)的恒溫晶振輸出頻率可認(rèn)為保持不變。但長(zhǎng)期來看,恒溫晶振的固有頻偏會(huì)影響時(shí)鐘計(jì)數(shù)的準(zhǔn)確性。因此,模塊使用秒脈沖信號(hào)在秒時(shí)鐘到來的時(shí)刻復(fù)位計(jì)數(shù)電路,以消除長(zhǎng)期的累積誤差。該模塊的結(jié)構(gòu)框圖如圖5所示,其工作流程如下:模塊由復(fù)位模塊、預(yù)分頻模塊、計(jì)數(shù)模塊和微秒寄存器組成。外部I 20兆的恒溫晶振接入預(yù)分頻模塊進(jìn)行分頻,以產(chǎn)生周期為I微秒的計(jì)數(shù)時(shí)鐘,供計(jì)數(shù)模塊進(jìn)行計(jì)數(shù)。計(jì)數(shù)模塊等待復(fù)位模塊輸出的復(fù)位信號(hào)為0,才開始正常計(jì)數(shù),否則,在復(fù)位信號(hào)為I的情況下,計(jì)數(shù)模塊中的計(jì)數(shù)值復(fù)位為O。計(jì)數(shù)模塊還包含計(jì)數(shù)值讀取功能,當(dāng)模塊收到微秒讀取請(qǐng)求uTime_req,模塊暫停計(jì)數(shù),并且鎖存當(dāng)前計(jì)數(shù)器中的數(shù)值,再通過讀寫接口將計(jì)數(shù)值刷新到時(shí)間信息寄存器。復(fù)位模塊與秒脈沖信號(hào)相連,當(dāng)秒脈沖來臨,則復(fù)位模塊將復(fù)位信號(hào)由O變?yōu)?,并在下一個(gè)周期回到O狀態(tài),以實(shí)現(xiàn)計(jì)數(shù)器的周期性復(fù)位。值得注意的是,由于固有頻偏或者外部干擾因素的存在,秒脈沖來臨時(shí)計(jì)數(shù)值可能會(huì)偏離999999這個(gè)期望計(jì)數(shù)值。為了防止由于微秒計(jì)數(shù)偏移造成的基準(zhǔn)時(shí)鐘源偏差,計(jì)數(shù)模塊在收到復(fù)位信號(hào)后會(huì)首先檢查當(dāng)前計(jì)數(shù)值與期望計(jì)數(shù)值之間的差值。如果差值大于±3,則說明恒溫晶振已遠(yuǎn)遠(yuǎn)超出正常工作誤差范圍,模塊立刻停止計(jì)數(shù)并發(fā)出告警信息,刷新到時(shí)間信息寄存器。如果當(dāng)前計(jì)數(shù)值大于期望計(jì)數(shù)值并且在+3的允許范圍內(nèi),則使用期望計(jì)數(shù)值替換當(dāng)前計(jì)數(shù)值,以避免后級(jí)的時(shí)間調(diào)整模塊出現(xiàn)進(jìn)位錯(cuò)誤。解碼的時(shí)間信息和微秒信息、狀態(tài)信息等存放在時(shí)間信息寄存器模塊中,由復(fù)雜可編程邏輯器件(CPLD)中的片內(nèi)靜態(tài)存儲(chǔ)器(SRAM)實(shí)現(xiàn)。片內(nèi)靜態(tài)存儲(chǔ)器有四條地址線,數(shù)據(jù)線寬度為16位,共提供16個(gè)長(zhǎng)度為16字節(jié)的寄存器。寄存器地址和功能分配如圖6所示。網(wǎng)絡(luò)時(shí)間服務(wù)器接口模塊為硬件的基準(zhǔn)時(shí)鐘源提供層和軟件的網(wǎng)絡(luò)時(shí)間服務(wù)器應(yīng)用層之間提供透明轉(zhuǎn)換接口,主要工作是將時(shí)間信息寄存器中的時(shí)間信息轉(zhuǎn)換為網(wǎng)絡(luò)時(shí)間服務(wù)器可接受的時(shí)間格式,實(shí)現(xiàn)網(wǎng)絡(luò)時(shí)間服務(wù)器的參考時(shí)鐘獲取。該模塊由兩部分構(gòu)成,運(yùn)行于Linux系統(tǒng)的時(shí)間信息寄存器讀取驅(qū)動(dòng)模塊和網(wǎng)絡(luò)時(shí)間服務(wù)器參考時(shí)鐘接口模塊。時(shí)間信息寄存器讀取驅(qū)動(dòng)模塊按照Linux字符設(shè)備驅(qū)動(dòng)模式編寫,其主要核心結(jié)構(gòu)為驅(qū)動(dòng)操作指針struct file_operations,該結(jié)構(gòu)定義如下:struct file_operations rtc_fops = {.0wner = THIS_MODULE,.read = cpld_read,.write = cpld_write,.1octl = cpld一 ioctl,.0pen = cpld_open,.release = cpld_release,
};除此之外,模塊還定義了函數(shù) static irqretum_t cpld_interrupt (int irq,void*dev_id)用以處理秒脈沖中斷。當(dāng)模塊被加載,系統(tǒng)首先調(diào)用cpld_open申請(qǐng)內(nèi)存、中斷等資源,并檢查時(shí)間信息寄存器的狀態(tài)位是否正常。接下來,等待外部的秒脈沖信號(hào)并調(diào)用cplcLinterrupt中斷處理函數(shù)進(jìn)行處理。中斷函數(shù)首先從時(shí)間信息寄存器讀取標(biāo)準(zhǔn)時(shí)間格式信息(不包括微秒),然后對(duì)取回的數(shù)據(jù)進(jìn)行調(diào)整。調(diào)整的原因主要有兩點(diǎn):一是模塊是在秒脈沖到來時(shí)間讀取寄存器的,此時(shí)寄存器保留的實(shí)際是上一秒得到的解碼時(shí)間,因此當(dāng)前時(shí)間與讀取時(shí)間存在I秒的誤差,需要軟件進(jìn)行補(bǔ)償;二是當(dāng)選擇的信號(hào)源類型不同時(shí),時(shí)間格式寄存器中的時(shí)間格式存在一定的差別,需要使用軟件進(jìn)行格式調(diào)整。時(shí)間調(diào)整的流程如下:1)根據(jù)收到的當(dāng)前年份當(dāng)前判斷是否為閏年;2)根據(jù)信號(hào)類型判斷時(shí)間來源與時(shí)區(qū);3)因?yàn)镮RIG-B的解碼時(shí)間只提供年日信息,所以如果當(dāng)前接收的是GPS/北斗信號(hào),則將時(shí)間也轉(zhuǎn)換為年日信息;
4)如果當(dāng)前接收的是GPS/北斗信號(hào),則收到的是UTC時(shí)間,而如果接收的是IRIG-B信號(hào),則收到的是時(shí)區(qū)時(shí)間,因此還需要進(jìn)行時(shí)區(qū)處理,將時(shí)區(qū)時(shí)間轉(zhuǎn)換為UTC時(shí)間。如果在加減時(shí)區(qū)之后出現(xiàn)大于23或者小于O的情況則需要依次對(duì)時(shí)以上的單位日、年進(jìn)行修改;5)由于接收到的時(shí)間信號(hào)是上一秒處理后的信號(hào),所以所有的秒信號(hào)都需要作加I處理。如果處理之后出現(xiàn)需要進(jìn)位的情況,則需要依次對(duì)于秒以上的單位分、時(shí)、日、年進(jìn)行修改;6)最后將年、日格式轉(zhuǎn)換為年、月、日格式,暫存于本地緩沖。函數(shù)cplcLread為時(shí)間讀取提供接口,其主要工作為從時(shí)間信息寄存器中讀取微秒信息,并與本地緩沖中的時(shí)間信息拼合成完整的時(shí)間格式,提供給網(wǎng)絡(luò)時(shí)間服務(wù)器參考時(shí)鐘接口使用。為了防止微秒讀取時(shí)微秒時(shí)間計(jì)數(shù)模塊中的數(shù)值正在變化,因此函數(shù)會(huì)連續(xù)讀取兩次微秒時(shí)間,以保證當(dāng)前微秒計(jì)數(shù)值處于穩(wěn)定狀態(tài)。如果不同,則繼續(xù)讀取,直到連續(xù)兩次微秒時(shí)間相同 為止。網(wǎng)絡(luò)時(shí)間服務(wù)器參考時(shí)鐘接口模塊按照網(wǎng)絡(luò)時(shí)間服務(wù)器接口要求編寫,其主要核心結(jié)構(gòu)為參考時(shí)鐘操作指針struct refclock,該結(jié)構(gòu)定義如下:struct refclock refclock_cpld = {
cpld_start,/*啟動(dòng)參考時(shí)鐘*/
cpld_shutdown,/*關(guān)閉參考時(shí)鐘*/
cpld_poll,/*輪詢參考時(shí)鐘*/
noentry,/* 未用 */
noentry,/* 未用 */
noentry,/* 未用 */
NOFLAGS/* 未用 */
};當(dāng)中關(guān)鍵函數(shù)為參考時(shí)鐘輪詢函數(shù)static void cpld_poll (int unit, structpeer*),該函數(shù)從驅(qū)動(dòng)模塊中獲得標(biāo)準(zhǔn)時(shí)間格式信息,并轉(zhuǎn)化到數(shù)據(jù)結(jié)構(gòu)struct peer當(dāng)中,再提交給網(wǎng)絡(luò)時(shí)鐘服務(wù)器處理。在嵌入式高精度網(wǎng)絡(luò)時(shí)鐘服務(wù)器系統(tǒng)的實(shí)際應(yīng)用中,系統(tǒng)在大多數(shù)情況下會(huì)部署在無人值守的場(chǎng)合,同時(shí)部署的網(wǎng)絡(luò)環(huán)境復(fù)雜多變,因此系統(tǒng)只會(huì)在出廠前預(yù)置系統(tǒng)的MAC地址,IP地址只會(huì)在部署在實(shí)際應(yīng)用場(chǎng)合時(shí)才會(huì)設(shè)置。為了解決這一問題,系統(tǒng)包含了通過媒體訪問控制(MAC)地址遠(yuǎn)程查詢和設(shè)置網(wǎng)絡(luò)地址的功能,其主要工作流程如下:地址解析協(xié)議(ARP)是主機(jī)在發(fā)送幀前將目標(biāo)IP地址轉(zhuǎn)換成目標(biāo)MAC地址的協(xié)議。通過對(duì)ARP協(xié)議組包和解包過程的改變,可以使ARP協(xié)議兼有目標(biāo)IP地址轉(zhuǎn)換成目標(biāo)MAC地址和目標(biāo)MAC地址轉(zhuǎn)換成目標(biāo)IP地址的能力,從而滿足系統(tǒng)的需求。在通用ARP協(xié)議中,目標(biāo)硬件地址部分為空,因此通過該字段是否填入數(shù)據(jù),可以區(qū)分當(dāng)前ARP查詢數(shù)據(jù)包完成哪一種查詢功能。當(dāng)需要查詢系統(tǒng)IP地址,則ARP查詢數(shù)據(jù)包在目標(biāo)硬件地址部分加入待查詢系統(tǒng)的媒體訪問控制(MAC)地址,當(dāng)TCP/IP協(xié)議棧中的ARP層解析程序接收到該數(shù)據(jù)包時(shí),首先檢查數(shù)據(jù)包目標(biāo)硬件地址是否為空。如果數(shù)據(jù)包目標(biāo)硬件地址部分內(nèi)容與系統(tǒng)MAC地址相同,則填入地址解析協(xié)議(ARP)格式數(shù)據(jù)包的目標(biāo)協(xié)議地址部分發(fā)送回查詢主機(jī),當(dāng)查詢主機(jī)接收返回的ARP應(yīng)答數(shù)據(jù)包時(shí),則檢查目標(biāo)硬件地址部分?jǐn)?shù)據(jù)是否與待查詢主機(jī)一致,一致則提取目標(biāo)協(xié)議地址中的網(wǎng)絡(luò)地址并返回給查詢界面。遠(yuǎn)程網(wǎng)絡(luò)地址查詢交互流程如圖7所示。遠(yuǎn)程設(shè)置網(wǎng)絡(luò)地址功能與查詢功能相似,也是通過偽裝Telnet登錄請(qǐng)求數(shù)據(jù)包獲得遠(yuǎn)程設(shè)置網(wǎng)絡(luò)地址的能力。系統(tǒng)中運(yùn)行遠(yuǎn)程網(wǎng)絡(luò)設(shè)置地址進(jìn)程,負(fù)責(zé)監(jiān)聽網(wǎng)絡(luò)端口 I獲得設(shè)置網(wǎng)絡(luò)地址數(shù)據(jù)包。為了使遠(yuǎn)程主機(jī)可以對(duì)未設(shè)置網(wǎng)絡(luò)地址的系統(tǒng)進(jìn)行IP地址設(shè)置,遠(yuǎn)程主機(jī)首先需要將系統(tǒng)MAC地址和欲設(shè)置網(wǎng)絡(luò)地址通過ARP工具綁定。綁定之后,遠(yuǎn)程主機(jī)向系統(tǒng)端口 I發(fā)送偽裝的Telnet登錄請(qǐng)求包,系統(tǒng)進(jìn)程接收之后從數(shù)據(jù)包的IP層數(shù)據(jù)解析出目的IP地址,并將該地址設(shè)置到系統(tǒng)之中。為了使設(shè)置的地址立即生效,進(jìn)程在設(shè)置完畢之后立即重新啟動(dòng)網(wǎng)絡(luò)服務(wù)。在完成設(shè)置后,為了驗(yàn)證是否網(wǎng)絡(luò)地址設(shè)置成功,進(jìn)程斷開當(dāng)前連接并強(qiáng)制啟動(dòng)查詢主機(jī)的Telnet客戶端,如果客戶端能夠成功連接系統(tǒng),則證明IP地址已設(shè)置成功。應(yīng)用上述模塊和方法可形成本發(fā)明所述的嵌入式高精度網(wǎng)絡(luò)時(shí)鐘服務(wù)器系統(tǒng),本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)意識(shí)到在不脫離本發(fā)明技術(shù)方案所給出的技術(shù)特征和范圍的情況下,對(duì)技術(shù)內(nèi)容所作的增加,以本領(lǐng)域一些同樣內(nèi)容的替換,均應(yīng)屬本發(fā)明的保護(hù)范圍。
權(quán)利要求
1.一種嵌入式高精度時(shí)鐘服務(wù)器系統(tǒng),其特征在于: 所述的時(shí)鐘服務(wù)系統(tǒng)包括:時(shí)鐘源解碼模塊、微秒時(shí)間計(jì)數(shù)模塊、恒溫晶振模塊、時(shí)間信息寄存模塊、網(wǎng)絡(luò)時(shí)間服務(wù)器接口模塊、網(wǎng)絡(luò)時(shí)間服務(wù)器模塊、系統(tǒng)存儲(chǔ)模塊和系統(tǒng)遠(yuǎn)程訪問模塊; 所述的時(shí)鐘服務(wù)系統(tǒng)還包括兩個(gè)端口:時(shí)鐘基準(zhǔn)源端口和網(wǎng)絡(luò)端口 ; 所述的時(shí)鐘基準(zhǔn)源端口用于輸入時(shí)鐘基準(zhǔn)源信號(hào),時(shí)鐘基準(zhǔn)源信號(hào)包括:GPS信號(hào)、靶場(chǎng)儀器組(IRIG-B)碼和北斗信號(hào); 所述的網(wǎng)絡(luò)端口用于時(shí)鐘服務(wù)系統(tǒng)與外部網(wǎng)絡(luò)上的其他設(shè)備信息交換; 所述的時(shí)鐘源解碼模塊根據(jù)外部輸入的GPS信號(hào)、靶場(chǎng)儀器組(IRIG-B)碼或北斗信號(hào)產(chǎn)生標(biāo)準(zhǔn)格式時(shí)間信息和秒脈沖信號(hào),并將標(biāo)準(zhǔn)格式時(shí)間信息輸出給時(shí)間信息寄存模塊,將秒脈沖信號(hào)輸出給微秒時(shí)間計(jì)數(shù)模塊; 所述的微秒時(shí)間計(jì)數(shù)模塊使用 恒溫晶振模塊輸出的時(shí)鐘信號(hào)計(jì)數(shù),并使用時(shí)鐘源解碼模塊輸出的秒脈沖信號(hào)對(duì)晶振計(jì)數(shù)進(jìn)行同步,微秒時(shí)間計(jì)數(shù)模塊將產(chǎn)生的微秒級(jí)時(shí)鐘信號(hào)輸出給時(shí)間信息寄存模塊; 所述的恒溫晶振模塊用于產(chǎn)生穩(wěn)定的高精度的時(shí)鐘信號(hào),并將時(shí)鐘信號(hào)輸出給微秒時(shí)間計(jì)數(shù)模塊; 所述的時(shí)間信息寄存模塊用于寄存時(shí)鐘源解碼模塊輸出的標(biāo)準(zhǔn)格式時(shí)間信息和微秒時(shí)間計(jì)數(shù)模塊輸出的微秒級(jí)時(shí)間信息,并將時(shí)間信息輸出給網(wǎng)絡(luò)時(shí)間服務(wù)器接口模塊;所述的網(wǎng)絡(luò)時(shí)間服務(wù)器接口模塊根據(jù)網(wǎng)絡(luò)時(shí)間服務(wù)器模塊請(qǐng)求信號(hào),讀取時(shí)間信息寄存模塊中的標(biāo)準(zhǔn)格式時(shí)間信息和微秒時(shí)間信息,并標(biāo)準(zhǔn)格式時(shí)間信息送入網(wǎng)絡(luò)時(shí)間服務(wù)器; 所述的網(wǎng)絡(luò)時(shí)間服務(wù)器模塊根據(jù)時(shí)間信息寄存模塊中的標(biāo)準(zhǔn)格式時(shí)間信息和微秒時(shí)間信息,計(jì)算產(chǎn)生校準(zhǔn)后的時(shí)間信息,并根據(jù)網(wǎng)絡(luò)時(shí)間協(xié)議(NTP)、簡(jiǎn)單網(wǎng)絡(luò)時(shí)間協(xié)議(SNTP)和日時(shí)間協(xié)議(Daytime)將校準(zhǔn)后的時(shí)間信息通過系統(tǒng)遠(yuǎn)程訪問模塊發(fā)送到網(wǎng)絡(luò)端口 ; 所述的系統(tǒng)存儲(chǔ)模塊用以存儲(chǔ)網(wǎng)絡(luò)時(shí)間服務(wù)器模塊運(yùn)行時(shí)所需要的系統(tǒng)工作參數(shù)、網(wǎng)絡(luò)時(shí)間對(duì)時(shí)誤差、系統(tǒng)應(yīng)用程序等信息; 所述的系統(tǒng)遠(yuǎn)程訪問模塊將網(wǎng)絡(luò)時(shí)間服務(wù)器模塊的時(shí)間信息發(fā)送到網(wǎng)絡(luò)端口上,網(wǎng)絡(luò)端口上的設(shè)備還可以通過系統(tǒng)遠(yuǎn)程訪問模塊對(duì)網(wǎng)絡(luò)時(shí)間服務(wù)器模塊進(jìn)行遠(yuǎn)程訪問和管理。
2.根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于:所述的時(shí)鐘源解碼模塊所使用的解碼方法為: 1)時(shí)鐘基準(zhǔn)源端口接收到外部時(shí)間基準(zhǔn)源信號(hào)后,時(shí)鐘源解碼模塊根據(jù)時(shí)間基準(zhǔn)源信號(hào)的狀態(tài)信息,按優(yōu)先順序選擇外部時(shí)間基準(zhǔn)源作為時(shí)間同步源,選擇順序?yàn)镚PS信號(hào)、IRIG-B碼、北斗信號(hào); 2)對(duì)選擇的時(shí)間基準(zhǔn)源信號(hào)進(jìn)行時(shí)鐘解碼,得到標(biāo)準(zhǔn)格式時(shí)間,時(shí)間格式為年、月、日、時(shí)、分、秒; 3)如果時(shí)間基準(zhǔn)源信號(hào)為GPS信號(hào)或北斗信號(hào),則等待秒沖信號(hào)到來,如果外部時(shí)鐘源使用靶場(chǎng)儀器組(IRIG-B)碼,則從靶場(chǎng)儀器組(IRIG-B)碼中解碼出秒脈沖信號(hào); 4)當(dāng)秒脈沖信號(hào)出現(xiàn)時(shí),將解碼完成的標(biāo)準(zhǔn)時(shí)間格式信息寫入時(shí)間信息寄存,同時(shí)利用秒脈沖信號(hào)產(chǎn)生中斷,通知后端網(wǎng)絡(luò)時(shí)間服務(wù)器接口模塊讀取。
3.根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于:所述的微秒時(shí)間計(jì)數(shù)模塊產(chǎn)生微秒時(shí)間信息的方法為: 1)對(duì)I 20兆恒溫晶振模塊產(chǎn)生的時(shí)鐘信號(hào)分頻為周期為I微秒的時(shí)鐘信號(hào),并根據(jù)分頻輸出信號(hào)進(jìn)行計(jì)數(shù); 2)當(dāng)外部時(shí)間基準(zhǔn)信號(hào)的秒脈沖信號(hào)出現(xiàn)時(shí),清空計(jì)數(shù)器值并復(fù)位計(jì)數(shù)模塊,對(duì)恒溫晶振模塊產(chǎn)生的時(shí)鐘信號(hào)重新進(jìn)行計(jì)數(shù); 3)當(dāng)收到網(wǎng)絡(luò)時(shí)間服務(wù)器模塊的時(shí)鐘讀取信號(hào),則鎖定當(dāng)前計(jì)數(shù)器中的計(jì)數(shù)值,并刷新到時(shí)間信息寄存當(dāng)中 ,供后端讀取。
4.根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于:所述的網(wǎng)絡(luò)時(shí)間服務(wù)器接口模塊所采用的讀取時(shí)間信息的方法為: 1)檢查時(shí)間信息寄存的狀態(tài)標(biāo)志位是否為0x5A5A,如果是則說明時(shí)鐘解碼及微秒計(jì)數(shù)正常,如果否則說明模塊異常,模塊停止時(shí)鐘讀取并發(fā)送告警信號(hào); 2)等待時(shí)鐘源解碼模塊的中斷輸入信號(hào),如果中斷來臨則從時(shí)間信息寄存讀取標(biāo)準(zhǔn)格式時(shí)間,并對(duì)當(dāng)前時(shí)間進(jìn)行秒數(shù)加I操作,以彌補(bǔ)當(dāng)前時(shí)間和寄存時(shí)間之間的讀取間隔誤差; 3)當(dāng)網(wǎng)絡(luò)時(shí)間服務(wù)器時(shí)間輪詢請(qǐng)求到來,發(fā)出微秒時(shí)間讀取請(qǐng)求并從時(shí)間信息寄存讀出微秒時(shí)間; 4)將標(biāo)準(zhǔn)格式時(shí)間和微秒時(shí)間轉(zhuǎn)換組合為網(wǎng)絡(luò)時(shí)間服務(wù)器要求的時(shí)間格式,并提交給網(wǎng)絡(luò)時(shí)間服務(wù)器。
5.基于權(quán)利要求1所述系統(tǒng)的一種通過媒體訪問控制(MAC)地址遠(yuǎn)程查詢網(wǎng)絡(luò)地址的方法,其特征在于:該方法包括如下步驟: 1)按照地址解析協(xié)議(ARP)格式偽裝網(wǎng)絡(luò)地址查詢數(shù)據(jù)包,在目標(biāo)硬件地址部分加入待查詢系統(tǒng)的媒體訪問控制(MAC)地址; 2)修改系統(tǒng)地址解析協(xié)議(ARP)層解析程序,檢查數(shù)據(jù)包目標(biāo)硬件地址是否為空,如果為空則說明該數(shù)據(jù)包為正常數(shù)據(jù)包,按照正常地址解析協(xié)議流程處理,否則轉(zhuǎn)入遠(yuǎn)程網(wǎng)絡(luò)地址查詢; 3)檢查數(shù)據(jù)包目標(biāo)硬件地址部分內(nèi)容是否與媒體訪問控制(MAC)地址相同,如果相同則從本機(jī)獲得本地網(wǎng)絡(luò)地址,并填入地址解析協(xié)議(ARP)格式數(shù)據(jù)包的目標(biāo)協(xié)議地址部分發(fā)送回查詢主機(jī),如果不同則丟棄該數(shù)據(jù)包; 4)查詢主機(jī)接收返回的地址解析協(xié)議(ARP)格式數(shù)據(jù)包并解析該數(shù)據(jù)包,如果目標(biāo)硬件地址部分?jǐn)?shù)據(jù)與待查詢主機(jī)一致,則提取目標(biāo)協(xié)議地址中的網(wǎng)絡(luò)地址并返回給查詢界面,否則丟棄該數(shù)據(jù)包。
6.基于權(quán)利要求1所述系統(tǒng)的一種通過媒體訪問控制(MAC)地址遠(yuǎn)程設(shè)置網(wǎng)絡(luò)地址的方法,其特征在于:該方法包括如下步驟: 1)遠(yuǎn)程主機(jī)通過地址解析協(xié)議(ARP)工具將需設(shè)置主機(jī)的媒體訪問控制(MAC)地址和網(wǎng)絡(luò)地址綁定,再通過遠(yuǎn)程登陸協(xié)議(Telnet)工具向網(wǎng)絡(luò)I號(hào)端口發(fā)出遠(yuǎn)程登錄請(qǐng)求; 2)系統(tǒng)監(jiān)聽網(wǎng)絡(luò)I號(hào)端口,接收遠(yuǎn)程登陸協(xié)議(Telnet)登錄請(qǐng)求數(shù)據(jù)包,并解析出數(shù)據(jù)包中的目的網(wǎng)絡(luò)地址;3)將取出的目的網(wǎng)絡(luò)地址設(shè)置到系統(tǒng),并重新啟動(dòng)網(wǎng)絡(luò)服務(wù)使新的目的地址生效,同時(shí)發(fā)出登錄拒絕數(shù)據(jù)包; 4) 遠(yuǎn)程主機(jī)收到登錄拒絕數(shù)據(jù)包之后,關(guān)閉該連接并在網(wǎng)絡(luò)23號(hào)端口重新發(fā)出遠(yuǎn)程登錄請(qǐng)求,完成新的網(wǎng)絡(luò)地址的使用。
全文摘要
本發(fā)明公開了一種嵌入式高精度時(shí)鐘服務(wù)器系統(tǒng),該系統(tǒng)時(shí)鐘源接入及解碼模塊、微秒時(shí)間計(jì)數(shù)模塊、時(shí)間信息寄存器模塊、網(wǎng)絡(luò)時(shí)間服務(wù)器接口模塊、網(wǎng)絡(luò)時(shí)間服務(wù)器模塊、系統(tǒng)存儲(chǔ)模塊和系統(tǒng)遠(yuǎn)程訪問模塊組成。該系統(tǒng)可根據(jù)信號(hào)質(zhì)量自動(dòng)選擇GPS信號(hào)、靶場(chǎng)儀器組(IRIG-B)碼或北斗信號(hào)作為系統(tǒng)外部時(shí)間基準(zhǔn)信號(hào),并通過系統(tǒng)內(nèi)部的恒溫晶振產(chǎn)生微秒級(jí)時(shí)間,提高系統(tǒng)基準(zhǔn)時(shí)間源精度,并同時(shí)提供網(wǎng)絡(luò)時(shí)間協(xié)議(NTP)、簡(jiǎn)單網(wǎng)絡(luò)時(shí)間協(xié)議(SNTP)和日時(shí)間協(xié)議(Daytime)供網(wǎng)絡(luò)中其它客戶端進(jìn)行時(shí)間校準(zhǔn)。此外,該系統(tǒng)還可以通過遠(yuǎn)程方式反向查詢和設(shè)置系統(tǒng)網(wǎng)絡(luò)地址,降低了網(wǎng)絡(luò)管理難度。本發(fā)明能實(shí)現(xiàn)0.1毫秒級(jí)誤差的網(wǎng)絡(luò)時(shí)間校時(shí)服務(wù),彌補(bǔ)了傳統(tǒng)時(shí)間服務(wù)器時(shí)間基準(zhǔn)信號(hào)切換困難、時(shí)間精度較低、管理不便的缺陷。
文檔編號(hào)H04J3/06GK103152117SQ201210378738
公開日2013年6月12日 申請(qǐng)日期2012年9月14日 優(yōu)先權(quán)日2012年9月14日
發(fā)明者周磊, 吳寧, 張肖強(qiáng), 葉云飛, 戰(zhàn)金玉, 葛昀, 孫科, 武治平 申請(qǐng)人:南京航空航天大學(xué)