摘要:長期以來電子計時一直缺少高精度的解決方案,主要原因是石英晶體的溫度特性較差。為了提高32.768kHz石英晶體的計時精度,設計人員采用了各種不同的技術。本文介紹了一款高度集成器件,可以提供獨一無二的高精度計時,價格則與普通的未經校準的實時時鐘(RTC)相當。該器件的推出可以排除當前為提高計時精度而采用的低性價比方案,使得精確計時成為一種標準,而不再是奢望。
"你會遲到, 但時間不會。"
- 本杰明弗蘭克林
如果本杰明弗蘭克林用石英晶體和實時時鐘(RTC)來計時,恐怕他要重新考慮他的這一座右銘。晶體的精度在整個溫度范圍內變化很大,會使時鐘變慢(某些情況下使時鐘變快)。
對于絕大多數電子應用,帶有32.768kHz音叉晶體的RTC是標準的計時參考方案。RTC通過秒計數確定時間和日期,這需要從32.768kHz晶體振蕩器中獲取1Hz的時鐘信號。當前時間和日期保存在一組寄存器中,通過通信接口進行訪問。
圖1. 32.768kHz典型音叉晶體精度隨溫度的變化曲線
特定頻率(f)和溫度(T)的典型晶體頻率偏差(Δf):
Δf/f = k(T - To)2 + fo
其中,f是晶體標稱頻率,k是曲率常數,T是溫度,To轉折溫度, fo是轉折溫度下的相對頻偏。
從上式可以看出:只有三個變量控制著每個晶體的溫度特性,這三個參數是:曲率常數、轉折溫度、轉折溫度下的相對頻偏。曲率常數對全溫范圍內頻偏的拋物線形狀影響最大,但這個常數本身的偏差很小。不同的轉折溫度可以將拋物線左/右平移,不同的轉折溫度下的相對頻偏可以將拋物線上下平移。
通過篩選,晶體生產廠商可以提供室溫下±20ppm至±10ppm,甚至±5ppm的頻率精度。但是,這些精度得到提升的晶體并沒有改善高溫和低溫區域的精度。
根據對精度和負載電容的要求,生產中仍然會有部分損耗。結果造成能夠滿足條件的晶體數量不足。
制造商也可以通過控制晶體切割的角度來控制轉折溫度,但這種方法不切實際,而且花費很大。盡管晶體廠家盡其所能采用不同的自動生產流程,但仍然不能滿足要求。生產廠商為一個非標準器件而打亂生產秩序的可能性非常小。
一些集成電路公司通常不具備測試和調理晶體參數的能力,他們從供應商那里采購晶體,并將晶體和裸片安裝在一個封裝內。這種方法一般不會提高精度。Dallas Semiconductor也提供過類似的集成器件,例如DS1337C、DS1338C、DS1339C、DS1340C和DS1374C,這些器件可以很好地工作在精度要求不高的計時產品。
另外,有些能夠生產晶體的公司可以將未封裝的晶體放入一個小尺寸的密封封裝內,并對晶體進行調理使其滿足精度要求。如上所述,這種方法并不改變拋物線的特征,僅僅可以提高室溫下的精度。高溫和低溫區域的精度并未得到改善。這種方法的缺點是陶瓷封裝和晶體調理增加了總體成本。
溫度補償可以用兩種方法之一實現。第一種方法是研究一種溫度補償算法,利用溫度傳感器,由計時器件完成模擬或數字的時鐘補償。這種方法通常需要較大的開發和校準投入。另一種方法是使用現成的溫補晶振(TCXO)作為RTC的時鐘源。
圖2. 典型晶體曲線向上平移,使精度接近0.0ppm
帶有校準寄存器的RTC配合溫度傳感器,能夠在指定溫度達到-2.034ppm到+4.068ppm的計時精度。在高溫和低溫端點,調整范圍為-126ppm至+63ppm,無法將曲線校準到接近0.0ppm。需要處理器周期性地測量溫度,對校準寄存器以及其它RTC寄存器進行調節。
這種方法的主要難點在于需要工廠校準。因為每個晶體的特征不同,因此需要對每個RTC提供一個指定溫度范圍內的校準表,從而花費較大的人力和較長時間。通常采用非易失寄存器保存校準數據,也大大增加了器件成本。另外,校準過程并未補償晶體的老化,可能存在±3ppm的變化。
盡管校準寄存器不能自動地隨著溫度的變化進行調整,但它仍然提高了計時精度。
圖3. 利用TCXO使晶體特性曲線平坦
TCXO的內置溫度傳感器可以定時檢測器件溫度,用得到的溫度值在查找表內查詢,查找到的參數用來計算并產生內部32.768kHz晶體的負載電容,以達到0.0ppm的精度。查找表置于芯片內,不需要額外的輸入。
晶體在生產過程中優化于特定的負載電容,數據資料中提供了相應的規格。如果實際負載電容不符合規格要求,將相對于標稱頻率產生偏差。這也正是TCXO提高精度的途徑。如果知道特定晶體在每個溫度點的頻偏,TCXO可以通過調整負載電容來調整頻偏。
使用現成的TCXO不需要研究算法,也不需要工廠校準。缺點是增加了成本,這種多芯方案也增大了PCB面積。
圖4. DS3231S在最差情況下的精度
與上述TCXO方案相同,完全集成的器件經過工廠校準,不需要用戶校準,也不需要額外的開發投入。它將同樣的功能集成在更小的面積上,同時也降低了系統成本。
與獨立TCXO不同的是,其內部寄存器可以通過串行接口訪問。芯片內部的器件老化寄存器可以提供進一步的負載電容和溫度補償,補償晶體老化造成的精度損失。
"你會遲到, 但時間不會。"
- 本杰明弗蘭克林
如果本杰明弗蘭克林用石英晶體和實時時鐘(RTC)來計時,恐怕他要重新考慮他的這一座右銘。晶體的精度在整個溫度范圍內變化很大,會使時鐘變慢(某些情況下使時鐘變快)。
對于絕大多數電子應用,帶有32.768kHz音叉晶體的RTC是標準的計時參考方案。RTC通過秒計數確定時間和日期,這需要從32.768kHz晶體振蕩器中獲取1Hz的時鐘信號。當前時間和日期保存在一組寄存器中,通過通信接口進行訪問。
問題的根源
用RTC計時本身并沒有錯,但計時精度取決于參考時鐘。遺憾的是,典型的32.768kHz音叉晶體不能夠在寬溫范圍內提供較高精度,在整個溫度范圍內精度呈拋物線型(圖1),室溫下(+25°C)精度典型值為±20ppm。相當于每天慢或快1.7秒,即每年誤差10.34分鐘。圖1所示,在高溫和低溫區域精度變差,精度會低于150ppm (典型值),相當于每天誤差13.0秒,每年誤差1.3小時。圖1. 32.768kHz典型音叉晶體精度隨溫度的變化曲線
特定頻率(f)和溫度(T)的典型晶體頻率偏差(Δf):
Δf/f = k(T - To)2 + fo
其中,f是晶體標稱頻率,k是曲率常數,T是溫度,To轉折溫度, fo是轉折溫度下的相對頻偏。
從上式可以看出:只有三個變量控制著每個晶體的溫度特性,這三個參數是:曲率常數、轉折溫度、轉折溫度下的相對頻偏。曲率常數對全溫范圍內頻偏的拋物線形狀影響最大,但這個常數本身的偏差很小。不同的轉折溫度可以將拋物線左/右平移,不同的轉折溫度下的相對頻偏可以將拋物線上下平移。
各種解決方案
對于要求精確計時的系統,有幾種選擇可以克服晶體的不準確,包括合理選擇晶體、集成晶體、校準寄存器或溫補晶振。篩選晶體
提高計時精度的方法之一是要求供應商提供室溫精度處于指定范圍的晶體。這需要供應商在發貨前對每個晶體室溫下的頻偏進行分析,顯然,這種方法將大大增加成本。另外,這種方法不會影響晶體精度的拋物線特征。通過篩選,晶體生產廠商可以提供室溫下±20ppm至±10ppm,甚至±5ppm的頻率精度。但是,這些精度得到提升的晶體并沒有改善高溫和低溫區域的精度。
根據對精度和負載電容的要求,生產中仍然會有部分損耗。結果造成能夠滿足條件的晶體數量不足。
制造商也可以通過控制晶體切割的角度來控制轉折溫度,但這種方法不切實際,而且花費很大。盡管晶體廠家盡其所能采用不同的自動生產流程,但仍然不能滿足要求。生產廠商為一個非標準器件而打亂生產秩序的可能性非常小。
集成晶體
比晶體篩選進步的一種方法是,將音叉晶體和計時電路放在同一個封裝里,把晶體供貨的負擔轉移給了器件廠商。集成晶體解決了設計者選購晶體的難題,也降低了晶體參數符合計時器件要求的難度,同時還簡化了PCB布板。一些集成電路公司通常不具備測試和調理晶體參數的能力,他們從供應商那里采購晶體,并將晶體和裸片安裝在一個封裝內。這種方法一般不會提高精度。Dallas Semiconductor也提供過類似的集成器件,例如DS1337C、DS1338C、DS1339C、DS1340C和DS1374C,這些器件可以很好地工作在精度要求不高的計時產品。
另外,有些能夠生產晶體的公司可以將未封裝的晶體放入一個小尺寸的密封封裝內,并對晶體進行調理使其滿足精度要求。如上所述,這種方法并不改變拋物線的特征,僅僅可以提高室溫下的精度。高溫和低溫區域的精度并未得到改善。這種方法的缺點是陶瓷封裝和晶體調理增加了總體成本。
溫度補償
為了實現寬溫范圍內的精確計時,某種形式的溫度補償是必須的。溫度補償需要定期檢測溫度, 然后根據溫度調整晶體的負載,或者是調整時鐘源。溫度補償可以用兩種方法之一實現。第一種方法是研究一種溫度補償算法,利用溫度傳感器,由計時器件完成模擬或數字的時鐘補償。這種方法通常需要較大的開發和校準投入。另一種方法是使用現成的溫補晶振(TCXO)作為RTC的時鐘源。
校準寄存器
某些RTC,例如DS1340,提供了一個數字校準寄存器,可以定時調整時間。這種方法并不改變晶體的任何特性,但可以上下調整32.768kHz拋物線,在指定溫度使精度達到0.0ppm。這是通過在振蕩器分頻鏈上加、減時鐘脈沖實現的。需要減去的時鐘脈沖(負校準減時鐘),或需要插入的時鐘(正校準加時鐘)由寄存器的數值設置。加時鐘脈沖,時間加快;減時鐘脈沖,時間減慢。圖2給出的典型曲線表明拋物線上移至精度接近0.0ppm的位置,溫度監測點為+55°C。圖2. 典型晶體曲線向上平移,使精度接近0.0ppm
帶有校準寄存器的RTC配合溫度傳感器,能夠在指定溫度達到-2.034ppm到+4.068ppm的計時精度。在高溫和低溫端點,調整范圍為-126ppm至+63ppm,無法將曲線校準到接近0.0ppm。需要處理器周期性地測量溫度,對校準寄存器以及其它RTC寄存器進行調節。
這種方法的主要難點在于需要工廠校準。因為每個晶體的特征不同,因此需要對每個RTC提供一個指定溫度范圍內的校準表,從而花費較大的人力和較長時間。通常采用非易失寄存器保存校準數據,也大大增加了器件成本。另外,校準過程并未補償晶體的老化,可能存在±3ppm的變化。
盡管校準寄存器不能自動地隨著溫度的變化進行調整,但它仍然提高了計時精度。
溫補晶振
另一種有效提高計時精度的方法是使用具有溫度補償的32.768kHz晶體振蕩器(TCXO),如DS32kHz,作為獨立的RTC時鐘源。這種器件經過工廠校準,在擴展工業級溫度范圍內(-40°C至+85°C)能夠提供±7.5ppm的精度。TCXO的作用是將晶體拋物線變得平坦(圖3)。圖3. 利用TCXO使晶體特性曲線平坦
TCXO的內置溫度傳感器可以定時檢測器件溫度,用得到的溫度值在查找表內查詢,查找到的參數用來計算并產生內部32.768kHz晶體的負載電容,以達到0.0ppm的精度。查找表置于芯片內,不需要額外的輸入。
晶體在生產過程中優化于特定的負載電容,數據資料中提供了相應的規格。如果實際負載電容不符合規格要求,將相對于標稱頻率產生偏差。這也正是TCXO提高精度的途徑。如果知道特定晶體在每個溫度點的頻偏,TCXO可以通過調整負載電容來調整頻偏。
使用現成的TCXO不需要研究算法,也不需要工廠校準。缺點是增加了成本,這種多芯方案也增大了PCB面積。
最精確的方案―集成RTC/TCXO/晶體
理想的精確計時器件是集成了RTC、TCXO和石英晶體的單芯片方案。DS3231S、 DS3232和即將公布的DS3234既是這樣的器件。這些器件具有無與倫比的精度:0°C到+40°C范圍內精度為±2.0ppm,相當于每年±1.0分鐘;-40°C到0°C和+40°C到+85°C范圍內為±3.5ppm,相當于每年±1.8分鐘。最差情況下所能提供的精度如圖4所示。如上所述,集成TCXO使晶體原有的拋物線特性曲線變成較為平坦的曲線。圖4. DS3231S在最差情況下的精度
與上述TCXO方案相同,完全集成的器件經過工廠校準,不需要用戶校準,也不需要額外的開發投入。它將同樣的功能集成在更小的面積上,同時也降低了系統成本。
與獨立TCXO不同的是,其內部寄存器可以通過串行接口訪問。芯片內部的器件老化寄存器可以提供進一步的負載電容和溫度補償,補償晶體老化造成的精度損失。
評論
查看更多