This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] 使用 Goertzel 算法解码脉冲代码调制 BFSK 信号

Guru**** 2553450 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/903210/decoding-pulse-code-modulated-bfsk-signals-with-the-goertzel-algorithm

您好!

我没有指定的芯片之一、而是另一个与第三方芯片相结合的 TI 芯片。 我在这里是因为我希望这里的人能帮助我更好地理解这些概念。

第三方芯片接收 Bell 103 BFSK 信号(110/300bps)、并通过 I2S/PCM 总线转发样本。 采样率为8kHz。
通过此 PCM 信号确定1和0的最佳方法是什么?  

我已经了解了 Goertzel 算法。 这似乎很有希望,但我现在开始怀疑这一点。
对于8kHz 采样、因此每0.125ms 采样1次、这将降至每3.33ms 大约26个样本(300bps FSK 信号中的每位时间)。

如果我理解正确、Goertzel 算法只能实现8000/26 =~300Hz 的频率槽宽/分辨率。
这是不够的、因为该系统中使用的 BFSK 标记和空间频率为1070和1270 Hz。

我希望在座的人能给我一些技巧来解决这个问题。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    用户、  

    我承认不熟悉 Goertzel 算法、但我认为需要记住的一个重要事项 是、对于8kHz 采样、每个采样每通道具有16-32位。  因此、如果您要在 BFSK 线路上传输该数据、 则每个采样需要传输16位。  

    300bps 瓶颈将是这里的一个问题。 它是否需要持续运行?  还是仅传输短时数据脉冲?  因为如果有缓冲区、您显然可以在相当长的延迟下传输所有数据。

    -Steve Wilson

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Steve、

    感谢您的回复!

    我们的第三方芯片将 BFSK 信号采样为8位或16位。 它不会连续运行、我想我们讨论的是最大值约为500ms 的突发。
    我们只需要从接收到的信号解码1和0、然后从中获取实际数据。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    用户、

    如果它不连续运行、而不是实时运行、 那么问题是什么?

    此致、

    -Steve Wilson

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    大家好、Stevie、

    我认为、在8kHz 采样时、在3.33ms 内采集的26个样本不足以为频率检测算法实现足够的频率箱宽度。

    幸运的是 、StackExchange 有人给了我一个很好的答案! 我将把问题标记为已解决。 感谢您的反馈!