ES9038PROを入手しました。AK4497も!(PART-2) 2016.12.4
(前ページはこちら)
DAC4497-2から作り始めましょう。
というか、表面実装部品を中心に取り付けです。
最初にADM7154-1.8をとりつけました。初めてつかうレギュレータなので電圧がうまくでてくれるかの確認からです。
反対を向いていますが、ADM7154-1.8です。パッケージにはLQTと記載があります。
まずはレギュレータのみをとりつけて、電圧をかけてみて1.8Vがでるかを確認しました。
さて、残りをとりつけていきましょう。
まずはここまでできました。
そろそろ眠くなってきたのでお休みです。
気分を変えて! 2016.12.4
DAC4497-2はすこし置いておいてDAC9038Dにとりかかりましょう。こちらは超低ノイズのレギュレータが10個
搭載されますので、まずは電源回路が正常化かどうかを確認することが先決です。
ADM7154-1.2(左)と3.3(右)です。1.2VはLQS、3.3VはLQ7のパッケージです。
すべてのADM7154が搭載できました。これだけをつけると、結構疲れます。
一応電圧を確認してみたところ、2個から電圧が高めにでてきます。半田不良があることを確認して、再半田したら正常になりました。
ルーペでかなり確認したつもりでしたが、小さいブリッジを見逃していたようです。
ちなみに、測定した電圧値はこんな感じです。入力電圧は5V時です。
No | 用途 | 実測 値 |
IC23 | 左アナログ3.3V | 3.305V |
IC24 | 左アナログ1.2V | 1.197V |
IC25 | 左ディジタル1.2V | 1.202V |
IC26 | 左ディジタル3.3V | 3.299V |
IC27 | クロック回路3.3V | 3.291V |
IC28 | ディジタル回路3.3V | 3.292V |
IC29 | 右ディジタル3.3V | 3.296V |
IC30 | 右ディジタル1.2V | 1.198V |
IC31 | 右アナログ1.2V | 1.201V |
IC32 | 右アナログ3.3V | 3.295V |
電圧精度は0.3%くらいですね。
さて、残りの部品もとりつけていきましょう。
ここまでできました。
DAC9038D/すべての部品が取り付きました。
こんな感じで部品を搭載しました。中央にOSコン(100uF/16V)がずらりと並んでいますが、もっと容量のあるものがよかった
かもしれません。
裏面側です。結構な数のチップ部品が載ることになります。
要修正箇所もみつかりました。
半田付けをしながら、違和感を感じるときがあります。というのも、どこにも接続されていない箇所を半田づけすると「ん?」
という感じになるんですよね。たいていはGNDへの接続忘れです。今回はジッタクリーナの部分で2箇所みつかりました。
多分、配線しなくても動くかもしれませんが修正すべき箇所になります。まだまだ見つかるだろうな〜。
黄色の部分は本来はGNDに接続されるべき箇所です。
近くのレジストをすこしだけカッター等で剥ぎます。
半田でブリッジしてGNDへ接続します。
DAC4497-2の部品もすべてとりつきました。
3.3Vの3端子レギュレータは搭載していません。
半田面の様子です。
集中して半田付けしたら結構疲れますね。
動作確認とソフトを組み上げていきましょう。
どちらからとりかかるかな?
ちょっと脇道!電源評価その2 2016.12.8
先に電圧レギュレータのノイズを調査しましたが、電子負荷を使ってロードレギュレーションを測ってみたくなりました。
まだDACには通電していませんが、なぜかこちらに興味が移っちゃいました(笑)。
さて、結局以前に使った電子負荷の基板がみつからないこともあって再製作です。
といっても、そんなに難しい回路ではありません。
小さい基板上に簡単に組めます。必要な部品は負荷用の抵抗、FETそしてオペアンプと発振器です。
オペアンプが必要な理由は定電流駆動とするためです。
こんな回路です。
実験用の基板は
実験用に使う基板は小さいものでいいので、プリント基板を製作するときに面付け時にあいたスペースに
入れ込んだユニバーサル基板をつかいました。製作が簡単なように部品面にはレジストのないメッシュパターン、
裏面にはレジストをかけたメッシュパターンを配置しています。
部品面のメッシュパターンはGND用につかいます。半田ブリッジをさせることで容易にGND接続できる点が便利です。
半田面のメッシュは電源用につかいます。使うときはレジストを剥いで半田ブリッジさせることで接続します。
ユニバーサルをつかうときに電源配線って意外と面倒ですが、こjのメッシュがあると作業が簡単ですし、
それにGNDや電源のインピーダンスが下がる利点があります。
実験用の基板です。部品面はレジストのないメッシュを配置。金メッキです。
半田面はレジストありのメッシュです。使うときはレジストを剥いでつかいます。
電子負荷完成です
部品点数も少ないので、あっという間に完成です。発振器はPIC16F87を使い、1kHzの方形波を
出力させます。方形波の発振にはPICはきわめて簡単です。10行ちょっとのCのプログラムで実現できます。
電子負荷の回路はこんな感じです。
#include "16F87.H" #fuses INTRC_IO,NOWDT,PROTECT, NOMCLR,BROWNOUT,NOLVP,PUT #use delay(internal=8Mhz) #use fast_io(A) void main() { output_drive(PIN_A1); while(1){ output_high(PIN_A1); delay_us(500); output_low(PIN_A1); delay_us(500); } } |
負荷電流は
電子負荷の負荷電流は100mAとしました。100mAを1kHzでスイッチングさせたときの、
電源基板の出力電圧の変動状況を測定することにしました。
負荷の電流波形です。
結果はいかに!
さて、一気に手元にあるレギュレータを評価してみましょう!
結果はこんな感じです。
デバイス | 測定状況 | 電源出力波形 |
3端子レギュレータ 78M05 (5V) |
表示レンジ 10mV かなりのスパイクノイズが発生します。 |
|
LM317 (5V) |
表示レンジ 5mV ノイズは78M05より小さいですが、 リンギングが長いです。 |
|
ディスクリ電源 TYPE-D (5V) |
表示レンジ 2mV スパイクはあまり出ません。 出力コンデンサが大容量だからかな? |
|
TYPE-H TPS7A47 (5V) |
表示レンジ 2mV ロードレギュレーションはディスクリ電源と同じくらいかな? |
|
TYPE-O LT3042 (3.3V) |
表示レンジ 2mV ロードレギュレーションは一番よさそうです。 |
ロードレギュレーションはLT3042が一番優秀な結果ですね。低ノイズだけなく出力インピーダンスも低そうです。
それとディスクリ電源基板もスパイクもあまりなく素直な特性です。これは出力コンデンサが大きいからかな?(1000uFが乗っています)。
さて、そろそろDACに通電していきましょう・・・。といっても、これから出先になっちゃいますが・・・。
ようやく作業再開です! 2016.12.13
このあたりはほとんど備忘録です。ハードウエアにおけるピンのアサインとI2Cアドレスの定義です。
まずはDAC4497-2からかかりましょう! 2016.12.14
DAC4497-2を動かすには3.3Vと5Vの2電源が必要ですが、基板上に3.3Vのレギュレータを載せれば
5V単一でも動作させることが可能です。動作チェックのときは、何度も電源をつけたりはずしたりするので、
2電源が必要となると、いつか誤接続して壊してしまいそうです。ということで、3.3Vレギュレータを搭載して
5Vのみで動かすようにします。
3.3Vレギュレータを搭載すれば5V単一電源で動作させることができます。
動作のソースにはSRC4137をつかいます。これはDSDもPCMもどちらも出力できるので、便利に使っています。
こんな形で動作確認をしています。
ドキドキの電源投入!
いつでも、あたらしい基板に電源を投入するのはドキドキです。
素子が加熱しないか、煙がでないか(笑)。
まずはPICに最低限で動作するプログラムを書き込んで動作チェックです。
最初はPCMモードで動作させます。
ほ!
まずは波形がでました。基本的な接続は問題なさそうです。
PCMで動作しました。
つぎはDSD入力です。11.242MHzのDCKで動作させてみましたが、こちらも大丈夫のようです。
DSDでの動作も大丈夫そうです。
上がアナログ出力、下がDCKです。
まずはPCM,DSDで動作することが確認できたので、あとはのんびりソフトを組み立ててきましょう。
つぎはDAC9038Dも!
こちらも、まずは基本的な動作ハード部分の動作確認を行っていきましょう。そうすれば、ソフト開発にも弾みがつきます
でも、色々とこちらは難航しました(笑)。
0.電圧が出ない
ビクビクの初電源投入です。菊水の電源に接続して電圧が急に落ちないかを確認しながらの電源投入です。
そしてON!
なんと電圧が5Vから一気に3V低下まで落ちてしまいました。コリャ、どっか致命的なミスが・・・・
焦りまくりです。
どこに問題あるのかを調べるために、部分的に電源を投入して確認します。
DAC以外のディジタル電源・・・・これは問題なし。出力電圧は5Vまま。
DACのディジタル電源・・・これは問題なし。出力電圧は5Vまま。
DACのアナログ部電源・・・これも問題なし。出力電圧は5Vまま。
あれ?
すべての回路でとくに異常に電圧が低下することはなさそうです。
あ!電流容量が足りない!
使用した電源の最大電流は1Aなので、それを超えていたようです。DAC9018Dのときの消費電流は全体で700mA程度だったので
今回も大丈夫だと思っていたのですが、実際には1.1〜1.3A程度の電流が流れるようです。こりゃ電源食いだな〜。
で、電源を容量に余裕のあるスイッチング電源に変更すれば、電圧も低下することがなくなりました。
1.LCDが動かない
まずはLCDの表示から確認するのですが、いつもは簡単に動くのですが、これが動きません。
よく確認すると、LCD周りの配線に一部ミスがありました。3箇所ほど修正して、ようやく動きました。
実はPICにPIC16F1938をつかったのですが、PLLをOFFにするのを忘れていて、40MHz相当で動いていて、
本来は10MHzで動くことを前提にソフトの時定数を組んだので、LCDのコントローラが追いつかないミスも
あったのですが、こちらも気づくのに遅れました。
2.DIX9211との通信エラーが発生する。
まずは各種のICとの通信チェックです。今回I2C通信を行う素子は5つあつのですが、DIX9211との通信がうまくいきません。
これは、単純にソフト上の問題・・すなわちI2Cアドレスの勘違いでした。0x20ではなく0x80が正解でした。
3.BCK信号が出ない・・・・
つぎは必要最小限のソフトを組んでES9038PROを動かします。ES9038PROは初期状態でも入力信号を判断してくれるので、
ES9038RPO自体にはコマンドを送出していません。まずはDIX9211だけ動かしてPCM信号をES9038PROに供給するだけの
簡単なソフトでテストです。
動かない・・・・
信号を確認すると、ES9038PROにBCK信号が供給されていません。パターンを見直して間違いはなさそうです・・・。
こうなったら、パターンを部分的にカットしてどの部分に問題があるかを切り分けていきます。
で、発見したのがここです。
なんと、SOICのブリッジを一箇所見逃していました。
ルーペでよく確認したつもりでしたが・・・、接続されていることは確認するのですが、接続過多はみのがしちゃうのですね。
ブリッジ発見しました。すこし奥まった位置だったので見逃しました。
まずは動き出しました!
まだまだ、確認するところは数多くありますが、まずはES9038PROから信号がでることが確認できました。
ジッタクリーナやシフトDSDなどの動作はこれからじっくり確認していきましょう。
こんな感じで動作テストを行っています。
まずはPCMモードでの動作確認しています。
気になるな〜 2016.12.15
しかし、DAC9038PROがそこまで電力を消費するとは思っていなかったのですが、
今一度データシートを確認してみまししょう。いや、データシート見ずに設計したわけではないのですが、
電源についてはさほど変化ないだろうとの思い込みかな〜(汗汗汗汗汗
ES9018S | ES9038PRO | |
VDD 1.2V digital |
37mA | 128mA |
VCC 3.3V Analog |
25mA | 90mA |
Condition;MCK=40MHz |
ありゃ、全然違うじゃないですか(笑)。はるかにES9038Dの方がオオくらいです。
とくにロジックなどはCMOSなので周波数に比例して消費電流が増えるので100MHzなら128×2.5=320mAですよね。
アナログ部は消費電流はクロックににあまり依存しないので、ざっと計算すると
ディジタル(320mA)×2+アナログ(90mA)×2+その他ディジタル300mA=1.1Aですね。
ほぼ実測どおりです。
しかし、電圧レギュレータにADP151(0.2A)を使わなくてよかったです。完全にパンクですね。
こりゃ怪我の功名ですが、BBSでの書き込みに助けられました。
ありがとうございます。
しかし、ここまで電流が流れるとなるとES9038PROに放熱板を取り付けたほうがよさそうです。
備忘録で
LCD周辺の修正について記録しておきましょう。
修正箇所:左の黄丸のランドをベタGNDへ接続。右の青線のパターンを切断。
修正箇所:黄色線をジャンパー。
修正例です。切断した部分についてはジャンパー線の下に隠れています。
放熱対策!
ES9038PROを触ってみると結構発熱するようなので、すこし発熱対策をしました。
まずは裏面のICのサーマルパッドからの放熱が進むように、半田付けを強化しました。
もともと、GNDに接続できる程度でOKと考えていましたが、半田を強化して放熱しやすくします。
BEFORE AFTER(半田モリモリです)。
表面は銅テープを張って簡易放熱板かわりにしました。
これでも放熱効果はすこしあがるでしょう。
動作確認継続
さて、ひきつづきDSDモードと、SHIFTED DSDモードでも動作確認です。
プログラムをすこし修正して電源ON!
こちらも、問題なく動作しました(動作確認の画面省略です・・・手抜きモード(笑))。
気分を変えてDAC4497-2を仕上げましょう 2016.12.19
DAC4497-2のソフトを一気に組み上げました。といっても、AK4497はAK4490とピンレイアウトは異なりますが、
ソフトはほぼ上位コンパチなのでソフト自体の変更は少なくて済みます。ピンレイアウトは同じだけど、ソフトが
全然ちがうES9018SとES9038PROとはソフト作成の勝手がかなり異なります。
まずはフィルタ特性を確認です。
フィルタの特性をみるためにはインパルス応答を見るのが一番です。インパルスのデータを得るためには、単純なDAI
が必要なので、USB接続でPCM信号が得られるDAC2707を使います。SRC4137を通すと、AK4137内部のフィルタを
必ず通りますから、インパルスデータが化けてしまいます。
DAC2707をつかってインパルスデータをDAC4497-2に入れます。
AK4497-2のフィルターの特性は3つのパラメータ、SLOW、SD、SSLOWを使って設定します。
基板上のP9,10,11がそれぞれに対応してます。GND接続が1、OPEN時が0となります。
データシートでのフィルタの特性は下記のようになります。
実際にフィルタの特性をみてみましょう。
SSLOW PIN11 |
SD PIN10 |
SLOW PIN9 |
Mode | WAVEFORM(DAC4497-2) |
OPEN(0) | OPEN(0) | OPEN(0) | Sharp roll-off | |
OPEN(0) | OPEN(0) | GND(1) | Slow roll-off | |
OPEN(0) | GND(1) | OPEN(0) | Short delay sharp roll-off | |
OPEN(0) | GND(1) | GND(1) | Short delay slow roll-off | |
GND(1) | OPEN(0) | OPEN(0) | Super Slow roll Off | |
GND(1) | OPEN(0) | GND(1) | Super Slow roll Off | |
GND(1) | GND(1) | OPEN(0) | Low dispersion Short delay |
おっと!ミス発見 2016.12.20
DACアナログに独立給電しようと思ってパターンをみたら、GND配線が抜けているのを発見!
DAC4497-2はミスなしで済むかな〜と思っていたら、やっぱり見つかってしまいました。
ただ、このGND端子はあまり使うことはないところです(と負け惜しみ(笑))。
修正前(黄色の部分のパッドをベタアースに接続します) 修正例(近くのレジストを剥いでショートさせます。
DAC4497-2/DSDでも確認
DSD64(2.82MHz)〜DSD1024(45.1MHz)でも確認してみましょう。DSD1024はスペック範囲外ですね。
ふたたび、ソースとしてSRC4137に接続し直しです。ついでにDAC4497-2の入力切替部の外部スイッチをDIPスイッチから
タクトスイッチにバージョンアップしました(笑)。DIPスイッチは実装は便利ですが、いろいろとチェックするには扱うのが不便です。
ふたたびSRC4137をソースに戻して動作確認です。
DSD64 2.822MHz |
||
DSD128 5.64MHz |
||
DSD256 11.29MHz |
||
DSD512 22.58MHz |
||
DSD1024 45.16MHz |
これは完全にスペック範囲外です。 でも、再生はできるようです。 |
DAC4497-2/PCMでも768kHz再生確認
こんどはすこし雰囲気を変えて、LCDを変更です。やっぱりこっちの方が綺麗かな〜。
で、768Hzまで再生可能か調べてみました。768kHzも問題ありません。ちなみに768kHzはAK4497の仕様範囲です。
96kHz | 撮り忘れました・・・。 | |
192kHz | ||
384kHz | ||
768kHz | 768kHzは仕様範囲です。 |
そろそろ音だしにかかりましょう!
(PART3につづく)
(つづく)