オーディオ用 R-2R型DAC (その24)

実験の過程で思わぬ結果に……というか、この分野の人には当たり前の事なのでしょうが…チョッとショックが大きいです。


MOS-FETには入力容量(Ciss)があって、そこに貯まった電荷を取り除く or 満たす事でドレイン-ソース間の電流量をコントロールしています。つまり、このCissをいかに早く充放電するかが重要になってきます。

テスト基板の回路構成でネックとなっているのが、MOS-FETのP-ch,N-chのゲートを直結して74VHC574へ繋いでいます。両Cissの総和は 1000pF くらいになるので 74VHC574 では駆動しきれていない可能性が高いと思い、74VHC574を亀の子状態でパラってみました。

RIMG0203

パラにする前後のゲート電圧をHighにした時の測定結果です。


20101030_01
20101030_11

僅かですが、パラにした方がスイッチング速度が早いです。やはり、74VHC574での許容量を超えた電荷が移動してる(待機している)みたいです。パラにする前後でのグリッチ部分も比較してみます。

r2r_test_board_gate_pulse
20101030_24

ゲート電圧はかなり違いがありますが、グリッチ自体は前半のピークまでの時間が短くなってその効果で波高が僅かですが低くなっているように感じます。ただ、その後の減衰部分は指数関数的に同じ角度で減衰しているように見えます。つまり、ゲート電圧のスイッチング速度を速めたとしても、ピークまでの時間とピーク値を減らせるのみで、一番時間がかかる減衰部分には初期値しか関係してこないと言うことです。波形を撮るのを忘れましたが、ゲート電圧変化時の簡易C-MOS-FET出力電圧の変化はゲート電圧並に早く切り替わっていました。

これらの事から、ラダー型に繋いでいる抵抗とその近辺の僅かなキャパシタ成分が減衰部分を構成していると考えられます。キャパシタ成分が何処の部分なのかは回路しだいになりかねないですが、抵抗部分は分かりやすいです。

試しに、74VHC574は亀の子状態(付けたは良いが容易に取り外せない)で使っている抵抗を 10kΩ(パラで使用しているので R-2R の R部分は 5kΩ) から 1kΩに変更してみました。

20101031_01
20101031_02

結果を見て唖然です。グリッチの幅があからさまに短いです。
分かり辛いですが、10kΩの時と同様に本当の値になるまでは 600ns くらいかかってますが、このグリッチ幅の変化は驚愕でした、暫く放心状態……。


今後、やっていくことが明確になりました。

 ・スイッチング速度を上げる(ドライブ回路を加える)。
 ・ラダー抵抗を1kΩ(実質 500Ω)くらいにすることによる懸念点を模索する。

スポンサーサイト

オーディオ用 R-2R型DAC (その23)

FETのON/OFFに時間がかかる理由として今まで、ドレイン-ソース間の電荷がはけるのが遅いからと思っていた。しかし、FETの事を調べているうちに、ゲートに貯まった電荷がはけるのが遅いのではないかと今更ながら思い始めた。

仮にドレイン-ソース間の電荷がはける先が高抵抗になっていて時間がかかるのであれば、はけ先を追加してやれば良いと思い、P-chのソース側とN-chのソース側を56Ωの抵抗で繋いでみた。8個全部にするとものすごい電力になるので、とりあえず1つだけ入れてみて波形を調べてみることにした。

r2r_test_board_gate_pulse


この波形から分かるように、何の変化もない。つまり、ドレイン-ソース間の電荷がはけるのが遅いのではなく、ゲートの電荷がはけるのが遅い可能性が高くなった。ちなみに2chはゲート電圧である。

ググってみると、出るわ出るわ。ゲートドライブ回路と言うのがモロにヒットする。やはり、74VHC574では引き(押し)が弱かったのかもしれない。今度はこっちの路線でスイッチングスピードを上げる検討をしてみようと思う。

オーディオ用 R-2R型DAC (その22)

その21で失敗したFET並列接続ですが、2個目のFETが発振しちゃったんじゃないかと思い、発振防止用に150Ωの抵抗をゲートに付けてみました。パターンを削って、チップ抵抗を半田付け…結構大変でした。

RIMG0202

この状態で波形を計測してみると、ま~まともなのが出てきました。最も波高が高い部分(真ん中)の波形をみると、並列接続する前と少し(10mV)だけ減少しています。が、全体の波形を見ると分かるのですが、ビットの切り替わり毎にヒゲが出るようになってしまい、かえって逆効果でした。それも、下側にヒゲが出ています。

r2r_20101016_01

r2r_20101016_02

r2r_20101016_03

r2r_20101016_04

これでは本末転倒。悪化させているだけです。やはり並列化は止めてそのままで24bit版を作成した方が良さそうです。

並列化を諦めてもう一度波形をじっくりと見てみると、R-2Rラダーの出力にデジタル側のノイズ(主に74HCV574)が乗ってます。やはりデジタルとアナログの電源は分離した方がいいみたいです。

r2r_20101016_05

オーディオ用 R-2R型DAC (その21)

FET式R-2Rラダー型DACのグリッジを軽減しようと思い作成した基板ですが、基板が届くまでに時間がかかったのとその間に他の事に手を出していて、基板が届いても放置状態でした。これではいかんと思い、作成してみました。

RIMG0199_2

先ずは、シングルFET式で作成してグリッジの出方を見てみます。
マイコン(ATtiny2313)で三角波、のこぎり波相当のデータを送り、DA変換しています。

triod2

triod

少しグリッジが出ているだけで結構素直な波形の様な気がします。ユニバーサル基板で作成したテストボードではあんなにヒゲが出ていたのに…。テスト用として8bitへビット数を減らしたからでしょうか? しかし、適所をズームするとそれなりに出ています。

harf4

幅:552ns、波高:390mV。
波高は結構ありますが、幅が狭いのでDAC後半のLPFでカットできそうな範囲です。24bitにすると間延びしてしまいますかね…。

次にパラFET版を試してみました……が、波形がまともに出てくれません。あまりにも異常すぎて波形を撮るのを忘れてしまいました。半田付けをまずったのか、はたまたパラにする事事態がタブーなのか…。パラ版は保留としてシングル版で24bit物を作ってみるのがよさそうな気がするので、24bit版の基板のアートワークを作成しましょうかね。基板サイズ的にOLIMEXやBatchPCBでは高くなってしまうので、こんどはPCBCARTにしてみようかな。

オーディオ用 R-2R型DAC (その20)

BatchPCBからテスト用の基板が届いたので波形を生成するマイコンのプログラムを書きました。基板発注からの待ち時間が相当あったのでその間にプログラムを作成すれば良かったのですが、つい他の方に目がいってしまって、気がついたら基板が到着してました。

テスト基板に乗せたマイコン(ATtiny2313)で4パターンの波形を出せるようにしています。テスト基板に何気にマイコンと繋げたSWを配置しておいて良かったです。いきなり全部の部品を半田付けしてテストするにはリスクが大きいので、先ずはこのマイコンのプログラムが正常に動作しているかのテストをしてみました。SWが1つと電源があればいいだけなので、今回作ったテストボード上ではなく、昔作ったATtiny2313用汎用ボードで確認した結果です。

r2r_test_board_02_2

r2r_test_board_02_1

上には載せていませんが、4パターン全て望んでいるパターンが出力されている事を確認しました。
対応する各ビットを設定してラッチ用のエッジ(74VHC574を使用するので立ち上がりエッジ)を発生させています。

あっ、パターンは以下の4つです。

  1. 中間電位を常に出し続ける。(MUTEと同じ状態)
  2. 最小値~最大値→最小値~最大値→… の繰り返し
  3. 最小値~最大値~最小値~… の繰り返し
  4. 符号付き10進数で、-1,0,1,0,-1,… の繰り返し

FETのところで位相が反転する関係で、マイコンからの出力時点で0,1を反転しています。


作成したプログラムと書き込み用のバイナリファイルを以下に置いておきます。

r2r_test_board.zip


※ 自作でマイコン等のPCへ繋ぐ機器が多い人はWindows7 64bit版の購入はまだ見送った方が良いです。ドライバが無かったり、MS非承認のドライバはインストールできなかったり(裏技はあります)するので大変です。今回使った ロジアナ には EZ-USB が使われていて、このドライバはどうしてもインストールできませんでした。なので波形取りは WinXP 32bit マシンで行っています。
黒ねこ時計 くろック D02
プロフィール

jujurou

Author:jujurou
運営HP:チャコの部屋
Twitter:jujurou

カレンダー
01 | 2017/02 | 03
- - - 1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 - - - -
最新記事
最新コメント
カテゴリ
ユーザタグ

RaspberryPi ぺるけ Linux TRminiWatterPart4 トランジスタ式ミニワッター MPD イーサネットコンバータ OpenOCD DAC FON2405E buildroot FM3ペリフェラル BeagleBoneBlack library FM3評価ボード ODROID-U2 mingw OpenGL TL-WR700N Edison bitbake KiCad VMware シングル FM4 ミニワッター 6N6P 計測 

月別アーカイブ
ランキング

FC2 Blog Ranking

カウンター
検索フォーム
リンク
RSSリンクの表示
QRコード
QRコード
ライセンス
クリエイティブ・コモンズ・ライセンス
Twitter