寬溫范圍的時鐘計時需求正在不斷增加,其應用涉及電表、工業(yè)、通信等帶有部分嵌入式付費系統(tǒng)的設備、全球衛(wèi)星導航接收機及其他行業(yè)應用。準確計時取決于幾個重要參數,當然其他參數也會影響時間計時精度,但以下3個參數是最終用戶需要特別關注的指標。
初始精度:指器件在常規(guī)條件下,最初使用時的精度。長期穩(wěn)定性:用來預測器件在整個有效使用期限內的穩(wěn)定度。溫度系數:估算由于溫度變化造成的精度誤差。
初始精度
初始精度主要受振蕩器質量的影響,通常精度越高價格也越貴,比較經濟的方法是根據具體的設計對振蕩器的初始頻率進行簡單補償。通常需要測量振蕩器的實際頻率,計算出校準值,用其補償振蕩器的頻率誤差。補償初始精度的主要困難在于獲得足夠高的振蕩頻率測量分辨率。實時時鐘采用的音叉振蕩器在室溫下精度的典型值為±20×10-6,頻率測量的分辨率直接影響了時鐘精度的提高,但要獲得頻率的高分辨率測量需要大量的累計計數或以極高的精度測量脈沖周期。確定RTC的初始精度后,可以使用軟件補償時間誤差,但這種方法補償的僅僅是已知的時間間隔,不會改變振蕩器的頻率。如果振蕩器輸出用于需要高精度時鐘的場合,這種方法將不適合。
另外一種RTC經常使用的方法是測量基頻,對分頻鏈路進行加、減計數來調節(jié)計時頻率。這種方法無須額外的軟件開銷即可提高計時精度,但不能調節(jié)基頻。此外,這種方法也需要高精度測量振蕩頻率。以Maxim公司的RTC為例,它采用的方法是通過調節(jié)晶體的負載電容來調節(jié)晶體的振蕩頻率。這種方法可以補償基頻,有效提高計時精度和方波輸出時鐘的精度,二者工作在同一時鐘源。
長期穩(wěn)定度
提高精度的另一途徑是補償器件的長期穩(wěn)定度,要求器件在其使用期限內重復測量并進行校準,這種條件在某些場合是可以接受的,但有些應用則無法采納或不便操作。對于不能進行讀寫操作、獨立工作的設備,如電表,設計人員必須提高振蕩器精度或改變系統(tǒng)結構,以便對其進行讀/寫操作和調節(jié),但是,無論哪種方案都會提高系統(tǒng)成本。
頻率的長期穩(wěn)定性主要受石英晶體老化的影響,補償這種影響的唯一方法是測量頻率并根據測量結果進行頻率校準或調理。因為晶體老化的程度隨著時間而減弱,影響較大的時期一般在設備運行后的前兩年。晶體工作在高溫環(huán)境時會加速老化。晶體安裝在芯片封裝內時,回流焊過程中受高溫影響,會使老化發(fā)生一次躍變。但在安裝之后,系統(tǒng)的老化程度會大大減緩。將晶體封裝在RTC芯片內,相對于其他外置晶體的RTC具有更好的老化特性。
溫度影響
溫度的不穩(wěn)定和相應的溫度系數是許多應用所面臨的問題,特別是那些工作在寬溫范圍的應用,如室外電表或水表。標準的用作RTC時基的32.768kHz音叉晶體的頻率響應與溫度之間的關系為Δf/f=k(T-T0)2+f0。其中,Δf為頻率偏差,f為基頻,k為曲率,T為溫度,T0為折點溫度,f0為折點溫度處的頻偏。
圖1 典型的32.768kHz音叉晶體的頻偏與溫度的關系
當器件工作在溫度變化較大的環(huán)境中,頻率隨溫度的變化將成為影響計時精度的主要因素。標準的±20×10-6晶體每天產生的計時誤差是±1.7s(每年 ±10.3分鐘),如果工作在擴展級溫度范圍,誤差可能達到-150×10-6,每天計時誤差為±13s,每年±1.3h。圖1為頻率隨溫度變化的關系曲線。
消除溫度對精度影響的唯一途徑是提供實時的溫度補償。校準程序要準確測量晶體/振蕩器隨溫度的變化情況,并存儲結果。然后按照一定的時間間隔測量晶體溫度,利用存儲的校準信息調節(jié)溫度效應。
溫補晶體振蕩器
本節(jié)將以Maxim公司的DS32kHz溫補晶體振蕩器為例,介紹通過改變晶體負載電容修正由于溫度變化產生的頻偏的概念,如圖2所示,Maxim的這項內部校準技術還獲得了專利。DS32kHz可以作為大多數系統(tǒng)的32kHz輸入,如RTC或內置RTC的微控制器。
圖2 補償和未補償晶體振蕩器的頻率與溫度關系曲線
帶有RTC的設備通常都有備份電池,當主電源掉電時由備份電池支持RTC工作。備份電池為時鐘振蕩器和RTC供電,DS32kHz有兩個電源輸入引腳,如圖3所示,VBAT接電池,Vcc接主電源。設計人員須注意電池電壓對頻率穩(wěn)定度的影響(典型的供電電壓是主電源5V,備份電池電壓為3V)。DS32kHz溫補電路的設計能夠保證受電源電壓變化的影響最小。當供電電源由主電源切換到電池時,將啟用不同的補償系統(tǒng)。這種方法幾乎消除了供電電壓變化產生的頻率誤差。
圖3 DS32kHz的簡單框圖
帶有溫償晶振的RTC
本節(jié)將以Maxim公司的DS3231為例,介紹帶有溫償晶振的RTC。如圖4所示,DS3231內部集成了溫補振蕩器,類似于DS32kHz。除了RTC和振蕩器外,DS3231還包括以下電路模塊。
圖4 DS3231集成了溫補晶振、I2C接口的實時時鐘
電源控制:電路用于切換主電源和備份電池,僅在主電源低于內部電壓基準時才啟用電池供電。這種結構允許使用工作電壓范圍較寬的電池和3.3V主電源,避免不必要的電池放電。
復位:在主電源電壓低于內部門限時被觸發(fā)。該芯片帶有一個外部手動復位,內部電路設置最小復位周期,對復位信號進行去抖動處理。
32kHz:為漏極開路輸出,可以工作在常規(guī)模式和電池備份模式,時鐘輸出經過溫度補償。
INT/SQW:為漏極開路輸出,產生方波中斷信號。可通過軟件設置1Hz、1.024Hz、4.096Hz或8.192Hz頻率,輸出經過溫度補償。
溫度傳感器:提供溫度數據輸出,通過串口讀取溫度數據。DS3231集成溫度傳感器(精度為±3.0℃)由于替代了外部分立傳感器,從而有效降成本。利用傳感器測量的溫度值,在校準數據查找表內選擇補償數值,由補償電路對溫度產生的頻率誤差進行修正。
控制寄存器:包含對晶體振蕩器長期穩(wěn)定性補償的數值。
I2C接口:支持標準的I2C接口通信,最高速率達400kHz。
圖5 DS3231 RTC典型應用電路
如圖5所示,典型的DS3231應用電路內部集成了晶體,其他電路類似于普通RTC,設計人員無須考慮分立晶體的選擇和布板。因為DS3231包含經過溫度補償校準的振蕩器,可顯著提高RTC的初始精度和溫度穩(wěn)定性。由于內嵌在封裝內的晶體已經經過高溫老化處理,DS3231與分立的晶體相比具有更好的長期穩(wěn)定性。精度可以達到±2×10-6,溫度范圍0~+40℃。