Open xiongyihui opened 6 years ago
正在研究麦克风阵列,用的是模拟麦克风+ADC的方案,想要获得信噪比尽可能高且不失真的声音信号。这里面的关键点是配置ADC的模拟增益和数字增益,有时候需要动态控制,即自动增益控制(AGC,Automatic Gain Control)。要搞清楚怎么配置ADC的模拟增益和数字增益,这就需要搞清楚声音转换为PCM数字信号的过程,了解麦克风和ADC噪声的影响,弄明白ADC前置放大的配置,其中涉及诸多的概念和单位(诸如dB SPL、dBV、dBFS等),花了不少时间弄明白,还是写成文档记录下来。
声音是振动引起介质(空气、水等)发生疏密变化而形成的一种纵波。
声音的性质包括波长、频率和声压(sound pressure)等,其中,声压用来衡量声音的强度。声波在介质中传播时,介质疏密程发生变化,区域性产生压强变化,此即为声压。
Sound pressure diagram: silence; audible sound; atmospheric pressure; sound pressure
Sound pressure diagram:
声音的强度也可以用介质中分子或原子的振幅(particle amplitude)来衡量,但通常用声压衡量声音的强度(因为声压容易测量得多?)。
人耳可感知到声压范围很广,包括20uPa到X,通常以对数尺度分贝(dB)表示声压级SPL。
L = 20 * log10 (p / p0) dB
在空气中,p0 = 20 uPa,这是人耳能感知到最小声压(1kHz)
麦克风把声音信号转换为电信号,其中模拟麦克风是将声压映射到电压,一个典型模拟麦克风的参数像这样:
灵敏度和信噪比都是在94 dB SPL (即1Pa) 声压正弦波下测量的,因此麦克风的输出底噪(Noise Floor)为 -22 - 59 = -81 dBV,等效输入噪声声压为 35 dB SPL(这里假设噪声全为麦克风固有噪声,94 dB SPL正弦波的谐波失真忽略不计)。 麦克风的信噪比越大越好。麦克风的灵敏度需要和ADC的配合好,相对来说,麦克风的灵敏度越高越好,因为相当于系统的前置放大越靠前,受到后面干扰的影响就更小。
模拟麦克风的输出电压通过ADC转换为PCM信号,为了让信号失真小,ADC的有效分辨率(dBV)应小于麦克风的底噪(dBV)。
正在研究麦克风阵列,用的是模拟麦克风+ADC的方案,想要获得信噪比尽可能高且不失真的声音信号。这里面的关键点是配置ADC的模拟增益和数字增益,有时候需要动态控制,即自动增益控制(AGC,Automatic Gain Control)。要搞清楚怎么配置ADC的模拟增益和数字增益,这就需要搞清楚声音转换为PCM数字信号的过程,了解麦克风和ADC噪声的影响,弄明白ADC前置放大的配置,其中涉及诸多的概念和单位(诸如dB SPL、dBV、dBFS等),花了不少时间弄明白,还是写成文档记录下来。
声音和声压
声音是振动引起介质(空气、水等)发生疏密变化而形成的一种纵波。
声音的性质包括波长、频率和声压(sound pressure)等,其中,声压用来衡量声音的强度。声波在介质中传播时,介质疏密程发生变化,区域性产生压强变化,此即为声压。
声音的强度也可以用介质中分子或原子的振幅(particle amplitude)来衡量,但通常用声压衡量声音的强度(因为声压容易测量得多?)。
人耳可感知到声压范围很广,包括20uPa到X,通常以对数尺度分贝(dB)表示声压级SPL。
L = 20 * log10 (p / p0) dB
在空气中,p0 = 20 uPa,这是人耳能感知到最小声压(1kHz)
模拟麦克风
麦克风把声音信号转换为电信号,其中模拟麦克风是将声压映射到电压,一个典型模拟麦克风的参数像这样:
灵敏度和信噪比都是在94 dB SPL (即1Pa) 声压正弦波下测量的,因此麦克风的输出底噪(Noise Floor)为 -22 - 59 = -81 dBV,等效输入噪声声压为 35 dB SPL(这里假设噪声全为麦克风固有噪声,94 dB SPL正弦波的谐波失真忽略不计)。 麦克风的信噪比越大越好。麦克风的灵敏度需要和ADC的配合好,相对来说,麦克风的灵敏度越高越好,因为相当于系统的前置放大越靠前,受到后面干扰的影响就更小。
ADC
模拟麦克风的输出电压通过ADC转换为PCM信号,为了让信号失真小,ADC的有效分辨率(dBV)应小于麦克风的底噪(dBV)。