<!-- BBCode Quote Start --><FONT COLOR=GREEN>
<!-- BBCode Quote Start --><FONT COLOR=GREEN>譬如說現在量化的位階只有 0~8 九個數字,每一個位階的間隔大小是一格,對一個 4.9 的訊號作量化,得到的數字是 5,和原來 4.9 相差 0.1,這個誤差叫做量化噪音。假設我們把量化的位階減少到 5 個,分別等於原來 0~8 的 0, 2, 4, 6, 8 這幾個數字,位階的間隔大小擴大變成二格,此時再對 4.9 量化,量化的結果是 4,誤差擴大到 0.9,也就是說量化的位階越少,量化的間隔就越大,量化噪音也就越大。
</FONT><!-- BBCode Quote End -->
請問D/A部分的S/N要如何解釋?
</FONT><!-- BBCode Quote End -->
這篇又浮上來了 -_-||
對量化噪音的 SNR(S-QN-R,Sign to Quantization Noise Ratio)為
SNR = 6.02N + 1.76
N 是量化的 bit 數
每增加一個 bit(兩倍)SNR 上升差不多 6dB
16bit 理論上最大的 SNR = 98.08dB
算式怎麼來的...
SNR = RMS Signal / RMS Noise
SNR = 20*log(RMS Full Scale Output / RMS Quantization Noise)dB
加上 20*log 單位變成 dB
Full Scale Output 和 Noise 的單位是 RMS Voltage
RMS Volt = Peak Volt / 2^0.5(最大 Voltage 除以根號 2)
量化誤差會介於 +/- 0.5 的 LSB 之間(量化間距的一半)
1 LSB = Full Scale Output Range / 2^N
例如量化間距等於 0.25,0.375~0.625 之間的值都會取為和 0.5 一樣,誤差在 +/- 0.125 之間。
量化噪音分散於 fs/2(取樣頻率一半)的頻譜範圍
假設誤差是均勻分佈於 +/- 0.5 LSB 之間的亂數,經過計算可以求出 quantization noise 的 RMS Power(數字忘記了)
而
RMS Full Scale Output = LSB*(Full Scale Output Range/2) / 2^0.5 = (LSB * 2^(N-1)) / (2^0.5)
例如 16bit => 2^16 = 65536 => +32767~-32768 => 32768 = (2^16)/2 = 2^(16-1),所以 LSB * (FSR/2) = LSB * 2^(N-1)
將算出來的 RMS Full Scale Output 和 RMS Quantization Noise 兩者相除得到... 一個數字(忘記了)
取 log 乘上 20 就得到最後的結果 6.02N + 1.76
一個 N-bit 加上 oversampling 的 DAC
SNR = 6.02N + 1.76 + 10*logR
R 為 oversampling 超取樣的倍率,取樣頻率 fs 每提高兩倍(x2),SNR 上升差不多 3dB
加上 noise shaping,把量化噪音移到高頻,SNR 會更高。
10*logR 這個算式怎麼來的?
經過一陣運算得來的..(爆死)
原理是雖然總量化噪音沒變,但是量化噪音分散於 fs/2 的頻譜範圍內,現 fs 提高,fs/2 的頻譜範圍變寬,量化噪音分散到更廣的範圍,各個頻率的量化噪音量便會下降,經過低通濾波以後,就可以濾掉一大部分的量化噪音。
更詳細的資料,可以問 JamesT 大大
