專利名稱:一種保持實時時鐘電路高精度的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信領(lǐng)域中的一種保持實時時鐘電路高精度的方法,更詳細(xì)說是可以 自動補償實時時鐘隨時間經(jīng)過發(fā)生的誤差的一種方法,它特別適用于高精度守時要求的通 信裝置、衛(wèi)星導(dǎo)航等設(shè)備中。
背景技術(shù):
在通信終端移動的情況下,除了可通過衛(wèi)星接收標(biāo)準(zhǔn)的時間信息的CDMA方式和 GSM方式等移動通信系統(tǒng)的情況下,由于無法從衛(wèi)星接收標(biāo)準(zhǔn)時間信息,其自身都設(shè)置有實 時時鐘電路并構(gòu)成移動通信終端的時鐘功能。一般在實時時鐘電路都設(shè)有振蕩電路產(chǎn)生時鐘,由于電路老化,晶體老化或者時 鐘元件由于溫度變化發(fā)生的特性變化引起輸出的時間信息逐漸發(fā)生錯移,現(xiàn)有技術(shù)的實時 時鐘電路利用實時時鐘電路內(nèi)部設(shè)置時鐘元件的誤差信息,周期性的預(yù)測經(jīng)過一定時間后 發(fā)生錯移的時間并進(jìn)行補償而不是利用標(biāo)準(zhǔn)時鐘校準(zhǔn),這樣既不能實時的解決在實時時鐘 電路在使用過程中出現(xiàn)的偏差,也不能連續(xù)的調(diào)整偏差,而且通過預(yù)測出現(xiàn)的誤差信息本 身就存在準(zhǔn)確度逐漸降低的問題。因此我們需要開發(fā)一種合理的方法,使實時時鐘電路不但實現(xiàn)自我調(diào)整,而且能 夠連續(xù)的調(diào)節(jié)小頻率的偏差,實現(xiàn)實時時鐘電路的高精度。
發(fā)明內(nèi)容
本發(fā)明所要解決的問題是提供一種保持實時時鐘電路高精度的方法,實現(xiàn)實時時 鐘電路輸出高精度的秒脈沖,本發(fā)明根據(jù)輸入的標(biāo)準(zhǔn)秒脈沖信號和實時時鐘電路產(chǎn)生的輸 出秒脈沖之間的偏差,通過制訂的調(diào)整策略對實時時鐘電路中的振蕩電路進(jìn)行調(diào)整,使實 時時鐘電路始終保持高精度。本發(fā)明的目的是這樣實現(xiàn)的,它包括步驟—種保持實時時鐘電路高精度的方法,其特征在于包括步驟①實時時鐘電路通常工作在守時模式下,自動從EEPROM讀出補償值來調(diào)整振蕩 電路,維持實時時鐘電路穩(wěn)定輸出秒脈沖;②實時時鐘電路在特定條件下會進(jìn)入微調(diào)模式,檢測電路輸出的秒脈沖和輸入電 路的秒脈沖之間的相位差和相位關(guān)系;③根據(jù)檢測出的輸出秒脈沖和輸入秒脈沖之間的相位差,判斷是否對提供給振蕩 電路的補償值進(jìn)行修正,不需要修正時繼續(xù)檢測輸出秒脈沖和輸入秒脈沖之間的相位差和 相位關(guān)系;④需要進(jìn)行修正時,根據(jù)相位關(guān)系修正補償值后繼續(xù)檢測輸出秒脈沖和輸入秒脈 沖之間的相位關(guān)系,判斷是否繼續(xù)修正;⑤輸出秒脈沖和輸入秒脈沖之間的相位關(guān)系滿足特定條件后,鎖定此時的補償 值;
⑥將鎖定的補償值寫入EEPROM的相應(yīng)地址空間,同時在該地址空間的最高位做 上標(biāo)記,表示EEPROM中該地址空間的補償值已經(jīng)做過修正。其中,②步中所述的特定條件為實時時鐘由備用電源供電轉(zhuǎn)為主電源供電,并且 外部輸入秒脈沖信號和IOMHz的時鐘信號。其中,第②步中所述的檢測電路輸出的秒脈沖和輸入電路的秒脈沖之間的相位關(guān) 系的方法為用外部輸入的IOMHz時鐘計數(shù),計算電路輸出秒脈沖和輸入秒脈沖之間的相 位差和相位關(guān)系,包括輸出秒脈沖和輸入秒脈沖之間的相對位置關(guān)系,即輸出秒脈沖超前 于還是滯后于輸入秒脈沖,以及通過連續(xù)兩次檢測判斷輸出秒脈沖和輸入秒脈沖之間相位 差的變化趨勢。其中,第⑤步中所述的特定條件為電路輸出秒脈沖和輸入秒脈沖之間的相位差不 超過1個IOMHz時鐘周期。其中,第①、⑥步中所述的EEPROM中每個地址空間的最高位作為補償值的修正狀 態(tài)指示。其中,外部輸入給實時時鐘電路的秒脈沖信號為標(biāo)準(zhǔn)的秒脈沖信號。本發(fā)明與背景技術(shù)相比,具有如下優(yōu)點(1)本發(fā)明以標(biāo)準(zhǔn)的秒脈沖輸入信號為基準(zhǔn)檢測實時時鐘電路產(chǎn)生的頻率偏差, 確保了輸出秒脈沖的準(zhǔn)確性。(2)本發(fā)明只在主電源供電時對實時時鐘電路的頻率進(jìn)行微調(diào),不會增加守時模 式下的功耗,因此不會縮短備用電源的使用時間。
圖1是本發(fā)明實施例的流程圖。圖2是本發(fā)明實施例的相位關(guān)系檢測算法原理。圖3是本發(fā)明實施例的補償值調(diào)整策略。
具體實施例方式參照圖1至圖3,本發(fā)明方法包括步驟①實時時鐘電路通常工作在守時模式下,自動從EEPROM讀出補償值來調(diào)整振蕩 電路,維持實時時鐘電路穩(wěn)定輸出秒脈沖,將EEPROM中每個地址空間的最高位作為補償值 的修正狀態(tài)指示,在實施例中,默認(rèn)情況下為0,修正后的補償值寫入EEPROM后,將對應(yīng)地 址空間的最高位寫為1。②實時時鐘電路在由備用電源供電轉(zhuǎn)為主電源供電、外部輸入標(biāo)準(zhǔn)的秒脈沖信號 和IOMHz的時鐘信號條件下會進(jìn)入微調(diào)模式,用外部輸入的IOMHz時鐘計數(shù),計算電路輸出 秒脈沖和輸入秒脈沖之間的相位差和相位關(guān)系,包括輸出秒脈沖和輸入秒脈沖之間的相對 位置關(guān)系,即輸出秒脈沖超前于還是滯后于輸入秒脈沖,以及通過連續(xù)兩次檢測判斷輸出 秒脈沖和輸入秒脈沖之間相位差的變化趨勢。③根據(jù)檢測出的輸出秒脈沖和輸入秒脈沖之間的相位差,判斷是否對提供給振蕩 電路的補償值進(jìn)行修正,不需要修正時繼續(xù)檢測輸出秒脈沖和輸入秒脈沖之間的相位差和 相位關(guān)系。
④需要進(jìn)行修正時,根據(jù)相位關(guān)系對振蕩電路的補償值進(jìn)行修正,即對補償值加1 或者減1,修正補償值后繼續(xù)檢測輸出秒脈沖和輸入秒脈沖之間的相位關(guān)系,判斷是否繼續(xù) 修正。⑤輸出秒脈沖和輸入秒脈沖之間的相位關(guān)系滿足特定條件后,鎖定此時的補償 值,所述的特定條件為電路輸出秒脈沖和輸入秒脈沖之間的相位差不超過1個IOMHz時鐘周期。⑥將鎖定的補償值寫入EEPROM的相應(yīng)地址空間,同時將該地址空間的最高位寫 為1,表示EEPROM中該地址空間的補償值已經(jīng)做過修正。本發(fā)明基于相位關(guān)系的檢測和對振蕩電路的頻率補償來維持實時時鐘電路的高 精度,圖1是本發(fā)明實施例的流程圖。下面以實施例說明本方法的操作過程實時時鐘電路通常工作在守時模式下,根據(jù)傳感器的溫度自動從EEPROM讀出補 償值來調(diào)整振蕩電路的振蕩頻率,維持實時時鐘電路輸出穩(wěn)定的秒脈沖,將EEPROM中每個 地址空間的最高位作為補償值的修正狀態(tài)指示,在實施例中,默認(rèn)情況下為0,修正后的補 償值寫入EEPROM后,將對應(yīng)地址空間的最高位寫為1。實時時鐘電路在由備用電源供電轉(zhuǎn)為主電源供電、外部輸入標(biāo)準(zhǔn)的秒脈沖信號和 IOMHz的時鐘信號條件下會進(jìn)入微調(diào)模式,用外部輸入的IOMHz時鐘計數(shù),計算電路輸出秒 脈沖和輸入秒脈沖之間的相位差和相位關(guān)系,包括輸出秒脈沖和輸入秒脈沖之間的相對位 置關(guān)系,即輸出秒脈沖超前于還是滯后于輸入秒脈沖,以及通過連續(xù)兩次檢測判斷輸出秒 脈沖和輸入秒脈沖之間相位差的變化趨勢。圖2是本發(fā)明實施例的相位關(guān)系檢測算法原理。圖2中的輸入秒脈沖是通過衛(wèi)星 或者其它外部設(shè)備輸入的標(biāo)準(zhǔn)秒脈沖信號,IOMHz時鐘是由外部晶體振蕩器輸入的時鐘信號。根據(jù)檢測出的輸出秒脈沖和輸入秒脈沖之間的相位差判斷是否對提供給振蕩電 路的補償值進(jìn)行修正,如果相位差大于1個IOMHz時鐘周期則需要修正補償值,如果相位差 小于1個IOMHz時鐘周期則不需要修正補償值,不需要修正時繼續(xù)檢測輸出秒脈沖和輸入 秒脈沖之間的相位差和相位關(guān)系。需要進(jìn)行修正時,根據(jù)相位關(guān)系對振蕩電路的補償值進(jìn)行修正,圖3是本發(fā)明實 施例的補償值調(diào)整策略,圖3中圓圈中數(shù)字用來描述輸出秒脈沖和輸入秒脈沖之間的相位 關(guān)系,逗號前面得數(shù)字指示輸出秒脈沖和輸入秒脈沖之間的相對位置關(guān)系,0表示輸出秒脈 沖超前于輸入秒脈沖,1表示輸出秒脈沖滯后于輸入秒脈沖,逗號后面的數(shù)字描述輸出秒脈 沖和輸入秒脈沖之間的相位變化趨勢,0表示輸出秒脈沖向超前于輸入秒脈沖的方向偏移, 1表示輸出秒脈沖向滯后于輸入秒脈沖的方向偏移。具體的調(diào)整方法是檢測結(jié)果為(1,1),即輸出秒脈沖滯后于輸入秒脈沖,且輸出 秒脈沖向滯后于輸入秒脈沖的方向偏移,則需要將補償值加1 ;檢測結(jié)果為(0,0),即輸出 秒脈沖超前于輸入秒脈沖,且輸出秒脈沖向超前于輸入秒脈沖的方向偏移,則需要將補償 值減1 ;檢測結(jié)果為(0,1),即輸出秒脈沖超前于輸入秒脈沖,且輸出秒脈沖向滯后于輸入 秒脈沖的方向偏移,則需要保持當(dāng)前補償值;檢測結(jié)果為(1,0),即輸出秒脈沖滯后于輸入 秒脈沖,且輸出秒脈沖向超前于輸入秒脈沖的方向偏移,則需要保持當(dāng)前補償值;
修正補償值后,如果檢測輸出秒脈沖和輸入秒脈沖之間的相位差仍大于1個 IOMHz時鐘周期,則繼續(xù)根據(jù)相位關(guān)系進(jìn)行修正。如果電路輸出秒脈沖和輸入秒脈沖之間的 相位差不超過1個IOMHz時鐘周期,則鎖定當(dāng)前的補償值。將鎖定的補償值寫入EEPROM的相應(yīng)地址空間,同時將該地址空間的最高位寫為 1,表示EEPROM中該地址空間的補償值已經(jīng)做過修正。
權(quán)利要求
1.一種保持實時時鐘電路高精度的方法,其特征在于包括步驟①實時時鐘電路通常工作在守時模式下,自動從EEPROM讀出補償值來調(diào)整振蕩電路, 維持實時時鐘電路穩(wěn)定輸出秒脈沖;②實時時鐘電路在特定條件下會進(jìn)入微調(diào)模式,檢測電路輸出的秒脈沖和輸入電路的 秒脈沖之間的相位差和相位關(guān)系;③根據(jù)檢測出的輸出秒脈沖和輸入秒脈沖之間的相位差,判斷是否對提供給振蕩電路 的補償值進(jìn)行修正,不需要修正時繼續(xù)檢測輸出秒脈沖和輸入秒脈沖之間的相位差和相位 關(guān)系;④需要進(jìn)行修正時,根據(jù)相位關(guān)系修正補償值后繼續(xù)檢測輸出秒脈沖和輸入秒脈沖之 間的相位關(guān)系,判斷是否繼續(xù)修正;⑤輸出秒脈沖和輸入秒脈沖之間的相位關(guān)系滿足特定條件后,鎖定此時的補償值;⑥將鎖定的補償值寫入EEPROM的相應(yīng)地址空間,同時在該地址空間的最高位做上標(biāo) 記,表示EEPROM中該地址空間的補償值已經(jīng)做過修正。
2.根據(jù)權(quán)利要求1所述的保持實時時鐘電路高精度的方法,其特征在于第②步中所 述的特定條件為實時時鐘由備用電源供電轉(zhuǎn)為主電源供電,并且外部輸入秒脈沖信號和 IOMHz的時鐘信號。
3.根據(jù)權(quán)利要求1所述的保持實時時鐘電路高精度的方法,其特征在于第②步中所 述的檢測電路輸出的秒脈沖和輸入電路的秒脈沖之間的相位關(guān)系的方法為用外部輸入的 IOMHz時鐘計數(shù),計算電路輸出秒脈沖和輸入秒脈沖之間的相位差和相位關(guān)系,包括輸出秒 脈沖和輸入秒脈沖之間的相對位置關(guān)系,即輸出秒脈沖超前于還是滯后于輸入秒脈沖,以 及通過連續(xù)兩次檢測判斷輸出秒脈沖和輸入秒脈沖之間相位差的變化趨勢。
4.根據(jù)權(quán)利要求1所述的保持實時時鐘電路高精度的方法,其特征在于第⑤步中所 述的特定條件為電路輸出秒脈沖和輸入秒脈沖之間的相位差不超過1個IOMHz時鐘周期。
5.根據(jù)權(quán)利要求1所述的保持實時時鐘電路高精度的方法,其特征在于第①、⑥步中 所述的EEPROM中每個地址空間的最高位作為補償值的修正狀態(tài)指示。
6.根據(jù)權(quán)利要求2所述的保持實時時鐘電路高精度的方法,其特征在于外部輸入給 實時時鐘電路的秒脈沖信號為標(biāo)準(zhǔn)的秒脈沖信號。
全文摘要
本發(fā)明公開了一種保持實時時鐘電路高精度的方法,它涉及實時時鐘領(lǐng)域中的校準(zhǔn)技術(shù)。本發(fā)明針對實時時鐘電路在使用過程中由于電路老化、晶體老化等原因造成的頻率偏移,根據(jù)輸入的標(biāo)準(zhǔn)秒脈沖和實時時鐘電路產(chǎn)生的輸出秒脈沖之間的偏差,對實時時鐘電路的振蕩電路進(jìn)行調(diào)整,使實時時鐘電路始終保持高精度。應(yīng)用本方法,優(yōu)點是實時時鐘電路可以在正常使用中進(jìn)行自我調(diào)整,降低人工維護的時間和成本,并且能夠使電路保持高精度以及準(zhǔn)確的時間。特別適用于在導(dǎo)航設(shè)備中使用的實時時鐘電路。
文檔編號G06F1/14GK102096440SQ201010622018
公開日2011年6月15日 申請日期2010年12月31日 優(yōu)先權(quán)日2010年12月31日
發(fā)明者周永川, 李軍佑, 李斌, 王天彪, 田素雷, 馬迅 申請人:中國電子科技集團公司第五十四研究所