RTC 设计,第 2 部分:温度补偿至关重要
扫描二维码
随时随地手机看文章
正如本系列第 1 部分所述,温度波动是晶体频率漂移的最主要原因。系统工程师可以考虑一些方法来缓解此问题。
带校准寄存器的RTC
对于在温度稳定但平均温度不为 25°C 的环境中运行的应用,可以使用带有校准寄存器的实时时钟 (RTC) 来校正时间。其概念是从时钟计数器中增加或减去计数以加快或减慢时钟。校正时间所需的正计数或负计数量可以使用晶体供应商提供的晶体频率公式来计算。
系统设计人员还可以将这种 RTC 与外部温度传感器结合使用。根据温度传感器的输出,微控制器可以定期调整计数值。然而,这种方法有很多缺点。
首先,额外的温度传感器会增加系统成本并占用更多电路板空间。其次,微控制器需要定期调整校准寄存器,这将增加微控制器的开销。第三,晶体频率公式可能无法非常准确地反映晶体的实际温度响应,因为每个晶体可能与其他晶体略有不同,并且晶体频率公式仅代表典型情况。对于高精度应用,这种解决方案可能不可接受。
TCXO作为时钟源
温度补偿晶体振荡器 (TCXO) 将振荡晶体、温度传感器和数字逻辑集成在一个封装中。在整个工作温度范围内,其输出频率误差非常低。只需将 TCXO 的输出连接到晶体输入或 RTC 的时钟输入即可驱动计时逻辑。该解决方案不需要微控制器来校正时间,但它仍然存在电路板空间、高成本和更高功耗的问题。
带有集成 TCXO 的 RTC
可以通过集成温度传感器、晶体、负载电容器和温度补偿电路来形成高精度 RTC。工业级 RTC 的工作温度范围为 -40 至 85°C,汽车级 RTC 的工作温度范围为 -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是 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 的工作温度范围内具有可靠的精度规格,适合各种应用,尤其是那些空间受限且需要高精度和坚固性以承受机械振动和冲击的应用。