32.768KHZ是标准的计时参考方案。
关于32.768KHZ:
“你会迟到,但时间不会。”-----本杰明弗兰克林
假如本杰明弗兰克林用石英晶体和实时时钟(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][1]图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和石英晶体的单芯片方案。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不同的是,其内部寄存器可以通过串行接口访问。芯片内部的器件老化寄存器可以提供进一步的负载电容和温度补偿,补偿晶体老化造成的损失。
结论
在集成TCXO、RTC和32.768kHz晶体出现之前,可供选择的方案很难达到要求。而且,这些方案都需要投进一定的开发精力,需要用户校准和附加的开发本钱。单芯片集成TCXO/RTC/晶体的问世,使计时不再是一种奢求,而是一种切实可行的方案!