RTC 设计,第 2 部分:温度补偿至关重要
扫描二维码
随时随地手机看文章
温度波动是晶体频率漂移的最重要原因。系统工程师可以考虑一些选项来缓解这个问题。
带校准寄存器的 RTC
对于在温度稳定但平均温度不超过 25°C 的环境中运行的应用,可以使用带有校准寄存器的实时时钟 (RTC) 来校正时间。这个概念是从时钟计数器中添加或减去计数以加速或减慢时钟。校正时间所需的正计数或负计数的量可以使用晶体供应商提供的晶体频率公式来计算。
系统设计人员还可以将此类 RTC 与外部温度传感器结合使用。根据温度传感器的输出,微控制器可以定期调整计数值。然而,这种方法有很多缺点。
首先,额外的温度传感器会增加系统成本并占用更多的电路板空间。其次,微控制器需要定期调整校准寄存器,这会增加微控制器的开销。第三,晶体频率公式可能不能非常准确地反映晶体的实际温度响应,因为每个晶体可能与其他晶体略有不同,并且晶体频率公式仅代表典型情况。对于高精度应用,这种解决方案可能不可接受。
TCXO作为时钟源
温度补偿晶体振荡器 (TCXO) 将振荡晶体、温度传感器和数字逻辑集成在一个封装中。在整个工作温度范围内,其输出频率误差非常低。只需将 TCXO 的输出连接到晶体输入或 RTC 的时钟输入即可驱动计时逻辑。该解决方案不需要微控制器来校正时间,但仍然存在电路板空间、成本高和功耗较高的问题。
带有集成 TCXO 的 RTC
通过集成温度传感器、晶体、负载电容器和温度补偿电路可以形成高精度 RTC。在工业级 -40 至 85°C 或汽车级 -40 至 125°C 的工作温度范围内,此类 RTC 的精度规格通常约为 5 ppm 或更低。它节省了电路板空间、功耗和微控制器资源。
如前所述,除了温度之外,RTC 还需要了解晶体的温度响应特性,以便校正频率误差。该信息可以从制造过程中的校准过程中获取。尽管晶体供应商提供了计算典型频率的公式,但每种晶体的特性可能略有不同。在室温下,典型晶体的误差高达 20 ppm。
每个 RTC 应单独校准,以实现最高精度的性能。因此,在校准过程中,在多个不同温度点测量晶体的频率。显然,测量的校准点越多,测量数据与实际的频率-温度特性曲线就越吻合。
在校准过程中,每次进行新的测量之前,测试工程师都需要更改测试室的温度或将晶圆移动到具有预设温度的不同室。晶片温度达到平衡后即可进行测量。由于这些原因,制造商不想进行大量测量,因为这将大大增加测试时间,从而增加设备的成本。
设计工程师经常使用插值方法利用有限的测量数据点来重建频率-温度曲线。以设计者考虑二阶方程的情况为例,例如:
在哪里:
f 是频率
t 是温度
a、b、c 是系数
它是晶体频率-温度曲线的近似值,足以满足所需的精度规格,因此工程师只需在不同温度点测量的三个数据点即可求解三个系数。对于任何类型的插值,给定数据点的误差都是最小的。当输入参数远离给定数据点时,计算将偏离真实曲线更多。因此,测量的温度应该间隔开。在这种情况下,选择最低温度、室温和最高温度点是一个合理的选择。
现在,借助插值公式和温度传感器,RTC“确切地”知道实际振荡器频率与理想 32.768 kHz 的差距有多大。但RTC如何校正频率呢?使用前面讨论的校准寄存器是一种可能的方法,但很少在具有集成晶体的 RTC 中实现。在上述带有外部谐振器的 RTC 部分中,有几个因素会影响晶体振荡频率。
其中之一是负载电容器。通过操纵负载电容器,温度补偿电路可以精确地增加或减少振荡频率。可变电容器的一个示例是简单的电容器阵列加上一组用于并联断开或连接电容器的开关。
与 RTC 内的所有其他组件相比,温度传感器消耗大量功率。传感器开启的次数越多,RTC 的平均总电流就越高。测量温度和运行补偿算法的频率取决于操作环境的需要。一些 RTC 提供选项供用户设置适当的温度测量间隔。
下面是一个带有集成 TCXO 和晶体的 RTC 示例。DS3231SN 的精度规格在 -40° 至 85°C 的整个工作温度范围内支持最高 3.5 ppm,但在 0° 至 40°C 的整个工作温度范围内仅支持 2 ppm。图 1显示了显示 TCXO 和典型晶体振荡器之间精度差异的图。
图 1 DS3231SN 与典型晶体振荡器之间的比较突出显示了通过使用带有集成 TCXO 的 RTC 获得的精度增益。
具有集成 MEMS 谐振器的 RTC
集成 TCXO 的 RTC 似乎是一个完美的解决方案;然而,它仍然存在一些弱点。对于可穿戴设备或其他小型应用来说,具有集成 32.768 kHz 晶体的 RTC 过于庞大。晶体供应商无法减小晶体的尺寸,因为频率决定了晶体的尺寸。为了进一步减小尺寸,可以使用不同类型的谐振器,即带有集成 MEMS 谐振器的 RTC。
MEMS 是一种非常小的机电器件,可以振动并产生高度稳定的参考频率。新一代 MEMS 对温度变化的敏感度远低于晶体。它的质量比晶体小数千倍。而且由于 MEMS 谐振器的重量要轻得多,因此它对振动和机械冲击的抵抗能力更强。 MEMS 谐振器安装在 IC 芯片上,因此整体封装尺寸几乎与芯片尺寸一样小。
MEMS谐振器通常比晶体谐振器消耗更多的功率。设计者可以通过最大化MEMS谐振器的阻抗来降低功耗,从而降低电流消耗。等效阻抗为:
当C L接近0时阻抗变得最高,在这种情况下,谐振器在其并联谐振频率附近工作。它将减少电流和功耗;然而,仅仅因为不存在负载电容器,负载电容器对于调整振荡频率以进行温度补偿是无用的。
由于振荡器的输出频率无法通过增加或减少负载电容来改变,因此设计工程师需要采用不同的方法来调整频率,然后再将其输入 RTC 计时逻辑。一种解决方案是在振荡器输出和 RTC 计时时钟输入之间插入小数分频器。
小数分频器
从数字设计入门课程中,人们可能会想起许多实现可除以任何正整数的时钟分频器的方法。小数分频器可以将时钟除以任何小数。为了理解小数除法器如何工作的高级概念,让我们考虑一个非常简单的例子。假设输入时钟为 100 Hz,目标是从该 100 Hz 参考时钟获得 1 Hz 输出。我们可以简单地将时钟除以 100。
图 2简单的时钟分频器无法产生 0.999 Hz 至 1.009 Hz 之间的精确输出频率。
如果参考输入时钟从 100 Hz 稍微更改为 99.9 Hz 会怎样?我们如何从 99.9 Hz 生成 1 Hz?我们知道,如果除数为100,则输出将变为0.999 Hz;也就是说,略慢于 1 Hz。如果除数为 99,则输出变为 1.009 Hz;比 1 Hz 稍快。图 3显示了 100 分频和 99 分频时钟输出信号的重叠,并且 1 Hz 时钟的理想上升沿位于灰色区域内的某个位置。
图 3该图显示了 99 分频与 100 分频输出时钟操作。
简单的时钟分频器无法产生 0.999 Hz 至 1.009 Hz 之间的精确输出频率。小数分频器有一个控制电路来调制除数,使其输出时钟频率可以在0.999 Hz和1.009 Hz之间切换。如果仔细设计两个除数值之间的出现比率,理论上除数器可以随时间生成 0.999 Hz 到 1.009 Hz 之间的任何频率的平均值。尽管每个时钟周期不是精确的 1 Hz 时钟周期,但随着时间的推移,平均输出时钟可以非常精确。
设 x 为 0.999 Hz 时钟出现的次数,y 为 1.009 Hz 时钟出现的次数。为了计算 x 与 y 出现的正确比率,可以这样建立一个方程:
在哪里:
x 是除以 100 时钟周期的出现次数
y 是除以 99 时钟周期的出现次数
T Div_100是一个 100 分频时钟周期的周期(本例中T Div_100 = 100/99.9 Hz)
T Div_99是 1 个 99 分频时钟周期的周期(本例中T Div_99 = 99/99.9 Hz)
T Target是一个目标平均时钟周期的周期(本例中T Target =1)
通过替换所有周期变量:
通过这个方程,经过一些代数运算,计算出的 x:y 的比率为 9:1。这意味着当小数分频器的输入时钟为 99.9 Hz 时,每 9 个 100 分频时钟插入 1 个 99 分频时钟。在总共 10 个时钟周期中,平均频率将恰好为 1 Hz。此 9:1 模式将连续重复,直到输入频率发生变化。如前所述,输入频率可以通过温度频率转换函数或从校准获得的查找表来确定。
Maxim Integrated 的 MAX31343 是业界最小的带有集成谐振器的 RTC。它具有内置温度传感器和用于温度补偿的小数分频器,并且仅消耗 970 nA 的计时电流。它在低于 5 ppm 的工作温度范围内具有稳定的精度规格,适用于各种应用,特别是那些空间受限且需要高精度和坚固性以承受机械振动和冲击的应用。