首页 > 技术知识 > 正文

优秀的 Verilog/FPGA开源项目介绍(三十四)- PDM音频接口设计及信号处理

绪论

今天介绍几个与PDM接口相关的开源项目。

FPGA使用Delta-sigma ADC实现PDM音频输出

https://github.com/Elrori/Delta-sigma-ADC-verilog

https://www.jianshu.com/p/f5e17ee2fd25

与PDM接口相关的开源项目-pdm系统操作

介绍

整个方案实现的原理主要是将PDM输出到FPGA管脚然后经过低通滤波接到比较器负端,Digital Filter换成累加器,就变成了真正的1-Bit ADC。可以量化模拟比较器正端电平。参考见下图:

与PDM接口相关的开源项目-pdm系统操作1

License

No license

PDM-MIC信号处理

https://github.com/Hoi-Jeon/Verilog-for-Mic-in-Matrix-Creator

这个项目的目的是研究其接收来自 8 个PDM 麦克风的信号处理的 FPGA 代码。这个代码的结构如下:

与PDM接口相关的开源项目-pdm系统操作2

测试结构:

与PDM接口相关的开源项目-pdm系统操作3

仿真结果:

与PDM接口相关的开源项目-pdm系统操作4与PDM接口相关的开源项目-pdm系统操作5

pcm2pdm-example

https://github.com/kazkojima/pcm2pdm-example

https://github.com/kazkojima/pdmmic-example

与PDM接口相关的开源项目-pdm系统操作6

这两个项目都是kazkojima大神带来的项目,都是PDM-MIC的信号处理,同时有详细的设计过程:

https://tomverbeure.github.io/2020/12/20/Design-of-a-Multi-Stage-PDM-to-PCM-Decimation-Pipeline.html

包括仿真设计等。

与PDM接口相关的开源项目-pdm系统操作7与PDM接口相关的开源项目-pdm系统操作8

icebreaker-verilog-examples

https://github.com/icebreaker-fpga/icebreaker-verilog-examples

与PDM接口相关的开源项目-pdm系统操作9

这是一个基于Lattice iCE40UP5k FPGA的开发板(极其经典)。

介绍

初识Lattice iCE40UP5k FPGA就是通过这个板卡,小巧及强大的开源板卡,其自带的开源工程极其丰富,链接就是这个板卡及类似板卡的参考项目。

与PDM接口相关的开源项目-pdm系统操作10

其中PDM相关文件夹就是我们需要的项目,其他项目也很基础,也适合学习。

axi_pdm

https://github.com/Pieter-Berteloot/PYNQ_Video_overlay/tree/1010a7a2a32e0a1c246423989b5acbfcf45a4eab/boards/ip/d_axi_pdm_1.2

介绍

基于BD设计目前在国内流行还是比较广的,所以这个项目就是我们需要的-一个基于AXI总线的IP值得学习。

catena-riscv32-fpga

https://github.com/mcci-catena/catena-riscv32-fpga

与PDM接口相关的开源项目-pdm系统操作11

RISC-V这么火,怎么能没有音频,这个项目就是用在RISC-V系统里的音频IP,详细的地址如下:

https://github.com/mcci-catena/catena-riscv32-fpga/tree/master/hw/src/lib/pdm_audio

其他

https://github.com/JAMBD/ice_pdm

总结

今天介绍的基于PDM项目,分为实现和处理两部分。

审核编辑:彭静

猜你喜欢