【发布时间】:2026-02-04 11:45:01
【问题描述】:
假设我们从两个源 S1 和 S2 以相同的频率获取数据,并且我们想要将它们相乘。然而,S1 是嘈杂的,我们决定在将其与 S2 相乘之前取 A 的三个值的滚动平均值。那么我们就到了下面的情况:
- 我们有两个缓冲区 B1 和 B2,其中存储了 S1 和 S2 的输入。
- 某些程序 P1 从缓冲区 B1 计算滚动平均值,其结果存储在缓冲区 B3 中。
- 最后程序 P2 将缓冲区 B2 和 B3 中的结果相乘并输出结果。
有两种不同的东西可以称为“滞后”。假设数据在时间 t、t+1s 和 t+2s 到达。
- 然后我们希望在时间 t+1s 存储 P1 输出(以便 P2 将其乘以来自 B2 的适当值)。因此,B1/B2 和 B3 之间存在 1 秒的滞后(即:与 B1/B2 中存储的最后一个值相比,B3 中的最后一个值总是晚 1)。
- 但 P1 的第一个输出仅在时间 t+2s 产生。这很重要,因为它会告知我们何时可以首次启动 P2。所以从这个意义上说,B3 与 B1/B2 相比必须有 2 秒的延迟。
我的问题是:这些不同类型的滞后是否有名称?或许什么是处理它们的正确方法?
【问题讨论】:
标签: algorithm buffer lag rolling-computation