4

我有 NTP 客户端实现(在 Linux 上)向(Stratum 1 或 2)NTP 服务器发送/接收数据包并获取板上的服务器时间。另外,我在 Linux 上运行了另一个应用程序,它给了我 GPS 时间。在我从 NTP 和 GPS 源获取时间信息之前,我将在板上手动设置时间(使用日期)接近当前 GPS 时间(此信息取自http://leapsecond.com/java/gpsclock.htm)。

保持板上的系统时间作为参考,我将使用这个参考时间与 NTP(比如 X)和 GPS(Y)的差异。X 和 Y 之间的差异将达到 500+ 毫秒。我很想知道 NTP 和 GPS 之间的时间精度。500 毫秒是预期值吗?

我尝试在 NTP 客户端上启用硬件时间戳,但没有任何区别。

4

2 回答 2

3

使用 GPS 作为参考时钟归结为一件事:PPS(每秒脉冲)。其他一切都非常紧张(不稳定/不可预测)。

PPS 输出非常准确(纳秒级)。

PPS 不包含任何信息,除非第二个开始。这意味着我们必须从另一个来源为我们的时钟提供日期和时间。NMEA(来自 GPS 的实际数据)很好,只要它足以确定时间到一秒的精度。

我的猜测是您的“GPS 时间”是来自 GPS“数据出口”的时间(和日期)。这个时间可能会减少 500 毫秒(甚至更糟),这是正常的。这就是为什么我们不将该时间用作准确的参考时钟。

于 2015-04-24T12:09:54.623 回答
-1

您可能想阅读有关时间参考的信息。我认为 GPS 时间系统与那些时间服务器返回的 UTC 时间并不完全相同。原子钟测量的时间会定期添加闰秒,以使 UTC 时间在不稳定的天文时间 +/1 秒内。

您的 NTP 实施是否能够纠正网络延迟?尝试使用对您来说具有低延迟的 NTP 服务器...

这些因素可以解释您看到的差异。

于 2012-09-30T10:13:30.150 回答