声音强度的定义dB是从电学中而来的。在实际的电路应用中,会存在很多的放大器,尤其是对模拟信号而言,而且放大器的放大倍数可能很大。
例如,一个收音机从天线收到的信号至送入喇叭放音输出,一共要放大2万倍左右,如果直接用2万这样的概念来形容放大倍数的话,数值过于大。另外,直接用放大倍数声音来表示用户的直观感受的话,也不够直观,例如当电功率从0.1瓦增长到1.1瓦时,听到的声音就响了很多;而从1瓦增强到2瓦时,响度就差不太多;再从10瓦增强到11瓦时,没有人能听出响度的差别来(这里同样是增大1W)。
因此,引入了dB来形容声音的强度,也可以说是增益。
回顾一下电学中计算电压/电流/功率强度的方法:
电流增益:XdB = 20log(Io/Ii)
电压增益:XdB = 20log(Vo/Vi)
功率增益:XdB=10log(Po/Pi)
其实,功率增益的公式可以从上面电流增益上推导出来,方法如下:
à首先,Po/Pi = POW(Io, 2)*R/(POW(Ii, 2)*R) = POW(Io, 2)/ POW(Ii, 2) = POW(Io/Ii, 2),
à然后,由电流增益XdB = 20log(Io/Ii)得到Io/Ii = POW(10, XdB/20),
两边同时平方得到:POW(Io/Ii, 2) = POW(POW(10, XdB/20), 2) = POW(10, XdB*2/20) = POW(10, XdB/10)
也即:POW(Io/Ii, 2) = POW(10, XdB/10)
也就是:XdB/10 = log(POW(Io/Ii, 2))
à用第一步的计算结果替换第二部的计算结果中左边
XdB/10 = log(POW(Io/Ii, 2))à XdB/10 = log(Po/Pi)à XdB = 10 log(Po/Pi)
à最终XdB = 10 log(Po/Pi)
在实际的Wave Driver和Audio Codec中,无论DA采样还是AD转换都是基于电压的,也即电压增益,实际上使用的公式就是XdB = 20log(Vo/Vi)。
假设Vo/Vi增大一倍,也即变为20log(2*Vo/Vi)=20*(log2+log(Vo/Vi))=6+20log(Vo/Vi),所以我们可以得到一个常用的结论,当放大倍数增大一倍的时候,增益值增加6dB,相应的当放大倍数减少50%的时候,增益值减少6dB(增加-6dB)。