哇,我很荣幸 Matt L. 做我经常做的事情:向人们推荐 GNU Radio。
该项目实际上有一个推荐文献列表,但我不知道它是否适合你。它可能仍然值得研究。
然后,关于 QPSK:嗯,它是基本星座之一,你可能最好阅读一本关于数字通信的教科书介绍——我个人喜欢Proakis 的数字通信和第三版(遗憾地减少了公式数量) 可从图书馆廉价使用。
关于 DAB+:如果我没记错的话,它使用差分 QPSK,但不是直接在空中,而是驱动 OFDM 信号的子载波;所以你应该了解两者,以及(至少表面上)使用的通道编码。这又需要一些教科书知识!
已经有一个免费和开源的 DAB+ 发射器实现——opendigitalradio就是它的家。
曾经有一个 GNU Radio DAB (+) 收发器,由 Andreas Müller 维护(与我无关,AFAIK),但我认为它是用于 GNU Radio 的一个早已消失/不受支持的版本,所以在现代系统上编译它会已经是一个挑战了。但是,查看源代码和流程图可能已经很有启发性了!Michael Höhn 先生将他的接收器作为他的硕士论文,他提出了这个结构(第 67 页):
在我的脑海中,这张图非常巧妙地转换为 GNU Radio 流程图——即由 GNU Radio 信号处理块构建的图。GR 是一个在这些信号处理模块之间交换数据并自己实现的系统。因此,它非常适合接收器的实现,这些接收器将其操作理解为通过多个处理阶段的信号和数据流。事实上,有一个非常流行的图形流图设计工具(GNU Radio 伴侣),它将信号流图的这种抽象概念表示为连接矩形块的实际图像。我认为,为了了解 SDR 实现可能是什么样子,GNU Radio Guided Tutorials可能是一个好的开始。
此外,如果您对音频广播感兴趣,您可能也会对 DRM(数字无线电世界)感兴趣 - 并且gr-drm
有一个有效的 GNU Radio 发射器实现。
我真的不想挡在您的热情和一头扎进软件定义无线电和数字信号处理之间——但您需要意识到,在所有工程学科中,这些学科都受到数学和代数的影响。所以你最初的“我想了解 DSP 的整个机制”可能有点过于雄心勃勃——我认为这里没有人声称他们会这样做——这是一个巨大的专业领域,每个人都可以知道基础知识并成为自己专业的专家。这里有音频处理、图像处理、软件定义无线电、生物信号、雷达、声纳……这里的专家,还有一些我认为在 DSP 方面受过广泛教育的人,但这些都不是所有方面的专家。这是一个很好的给您的信息——您不必成为所有方面的专家才能做好自己的工作!
所以,就我个人而言,我可能会建议慢慢开始,使用一本关于信号理论的书,现在它也总是介绍 DSP 的基础知识。在此基础上,进行数字通信。您不必完全理解例如信道编码器和源编码器(源编码器==压缩算法)中使用的信息论的每一点,但您有必要了解它们的作用,因此具有信号理论背景并不是真的如果您想了解如何从非常嘈杂的观察中恢复数据,则可选。
玩得很开心!