8ビットD/Aでは、50dB以上の差は、出せないのか?

1.61タップのfirフィルタを作っても、実測では、50dB以上の差はでない

前節のfirフィルタ係数を増やして、61タップにしましたが、思った性能が出ないので、

もやもや、しておりました...

MATH

MATH

MATH

 

これは、firの計算時に、積和が飽和するからでは、ありません。

試しに、キャリーが出るかどうか、デバッグしてみました。(addx.b #0,r0hの部分)

 

MATH

 

積和の飽和は、ありませんでした....

ソースファイルはここです。

2.考えてみれば...

 

8ビットは、256段階です。

そんで、H8のVccは5Vですから

D/A出力は、最高で5V、最低は、0V(実際は、系のフロアレベル)ですから

 

最高出力の5Vと、5Vを256分割したもので、一番小さい 5/256 Vを出力比較すると

 

20log₁₀(5/(5/256)= 48. 165dB    (スペアナはTR4171なので、1M$\Omega $入力がある=電圧測定)

それと、簡単なプログラムで、

 

ある周波数で、出力の値を、H'FFと H'01を DACに送ってやると

MATH

 

結果は

 

MATH

 

どうも、駄目みたい...

フロアレベルが低ければ、もっと、いけるのですが...

これも、駄目みたい...

 

MATH

 

どうも、あかん...

今は、50dBで行きますわ。

 


dsp25__18.gif

 

それと、タップ数を29にして、Q10でも、結構、いけます。

MATH

写りこみが、きつくて、すんません。

 

 

問題は、DSB化して、LSBをfirで切り取る時

 

帯域が、どうしても、3KHzは必要なのですが、

fs/4=3KHzと言うことは( fs/4をUSBとLSBの境にもってくるつもり

 

サンプリング周波数fs=12KHzが、必要になるのですが、

これは、無理みたいで、頭痛い...

 

fs=10KHz近くは、いけそうなので、

fs/4=2.5KHz付近になるのですが

この帯域では、音が冴えないですね...おもんない(おもしろくない)

 

なんか、ええ方法がないかな...

H.15.10.30

This document created by Scientific Notebook 4.1. この文書は次の製品で作成しました Scientific Notebook 4.1.