基于RTC的低功耗精准时钟同步
发表时间:2024-04-02 11:09:17 浏览:135
1. 时钟同步的概念及精度影响因素
时钟同步的精确性主要受三个方面影响——主设备(时钟源)时钟精度、传输途径和从设备(终端)时钟调整分辨率。时钟源一般选择时钟服务器或者GNSS,对于要求不高的局域组网,主设备甚至可以通过系统时钟自己生成参考时钟。传输途径的影响可大可小,在传输途径相对一致的情况下,它的影响较小甚至可以忽略。本文仅探讨传输途径一致的情况,因此,从设备(终端)时钟调整分辨率是整个同步网络的关键,决定了整个系统同步精度,是设计环节的着力点。
2. 时钟同步的设计原理
MCU从时钟服务器获得TOD信息和1PPS信号,再根据系统同步指令,通过IIC接口对RTC进行设置,最终达到RTC的时间和服务器时间同步的目的。
市场上RTC的时间寄存器分辨率一般精确到秒,但本文将探讨基于RTC,如何进行毫秒甚至微秒级别的时钟同步设置。其主要原理是利用大普的RTC秒上升沿即时生效原理——即秒上升沿会移动到秒设置生效的位置,当MCU捕捉到时钟服务器输出1PPS上升沿时,对RTC进行秒的写操作,即能实现精准时钟同步。工作原理框图见图1。
3. 时钟同步的具体实现
3.1误差确认
减少误差需要先分析和确认误差。如图2所示,图中T1是MCU软件操作时延和IIC指令时延,主要和单片机以及IIC速率有关系。硬件和软件系统确定后,T1即为固定值。T2是IIC操作生效到秒上升沿变化时间差,是RTC同步误差,主要由RTC内部逻辑电路确定,也是固定值。T3为T1和T2之和,即总误差。