FN1242Aを使ってRaspberry Pi直結DACを作る【その2】

【まずはI2Sの動作確認とマスタークロックの問題解決】

さて、DACを自作する前に自分のラズパイのI2S周りがちゃんと動作してるのかを確認するためにキットのDACを組み立ててそれで確認することにしました。

使うキットは「お気楽オーディオキット資料館」(http://easyaudiokit.hobby-web.net/)で頒布されているDACキットです。

自作オーディオ界隈では「藤原さんのとこ」でお馴染みのサイトですね。

こちらでテキサス・インストゥルメンツ社のDACチップPCM5102を使った「DAC51X2 MINI for Raspberry Pi TYPE B 基板」のキットを購入してまずは組み立て&音出しです。


基板と主要部品がセットになったキットです。周辺部品は好みのモノを自分で揃えるようになっています。組み立て説明書はサイトからダウンロードします。


隣の綿棒と比較してもらうとPCM5102の大きさがわかりますが、年々加齢と共に老眼が出てきて(笑)このようなフラットパッケージICの足の細かいハンダ付けが難しくなってきました。隣の足とショートしてないか念入りにテスターで調べます。


特に難しい所も無いのでさくっと組み上がり。電解コンデンサーはちょっと贅沢にニチコンのMUZE KZをおごりましたが、フィルムコンデンサは秋月で普通に売ってたモノを使いましたのでオーディオ的な評判は判らず。この辺のチグハグさが私の性格というか…。


ラズパイに取り付けるとこうなります。電源はラズパイから供給されます。

SDカードにvolumioをインストールし、出力をI2Sに設定します。(解説しているサイトはたくさんあるので省略します。)


アンプを繋ぐ前にオシロスコープで出力をチェック。音楽データ(FLAC)を再生してみるときちんと音声出力らしきものが出ていることを確認。しかし、そろそろアナログ20MHzの古いオシロではキツい場面も出てきました。古いも何も「ケンウッド」になる前の「トリオ」の時代のオシロなんで(笑)


アンプを繋いでみるとかなりいい音で鳴っています。とりあえずはラズパイのI2S周りが正常な事が確認できました。しばし音楽鑑賞。最終目的を忘れてこれだけでもう十分じゃんとか思ってしまいます。


次に、FN1242Aでは必須となるマスタークロック(MCK)の問題を解決しなくてはなりません。

一般的にI2Sはマスタークロック(MCK)を持つマスターモードで使用されることが殆どで、DACの多くは動作時にこのマスタークロック(MCK)を必要とします。FN1242Aも例外ではありません。

そこで使用される信号線は4本。

①マスタークロック(MCK)

②ビットクロック(BCK)

③ワードクロック(LRCK)

④データ(DATA)

これに対してラズパイのI2S出力はマスタークロック(MCK)を持たないスレーブモードと呼ばれるモノで

①ビットクロック(BCK)

②ワードクロック(LRCK)

③データ(DATA)

の3つです。

この方式に対応したDACは少ないのですが、上で製作したPCM5102はチップ内部でこのマスタークロック(MCK)を生成する機能を持っていますので、細工すること無くラズパイと直結することが出来ます。

マスタークロック(MCK)はサンプリング周波数を整数倍することで生成することが出来ます。ビットクロック(BCK)はサンプリング周波数を整数倍(64倍)したものです。つまりビットクロック(BCK)があればそれを逓倍することによってマスタークロック(MCK)の生成が可能です。

FN1242AでラズパイのI2S直結DACを作ろうとするとこのマスタークロック(MCK)生成基板が必要となります。

「水晶発振子とICS570B(クロック逓倍器)を使ってそこから作るか」と思っていたらすでに前述の「お気楽オーディオキット資料館」さんでもう便利の良い基板が作られていたのでそれを利用することにしました。


「お気楽オーディオキット資料館」さんで頒布されている「MCK GEN-B」基板です。写真は組み立て後です。サンプリング周波数に応じて逓倍率をジャンパーピンで設定しますが、オプションのPICマイコンを積めばサンプリング周波数ごとに逓倍率を自動で切り替えることが出来る優れものです。

FN1242Aの場合、データシートを見てみるととりあえずサンプリング周波数が32KHzから192KHzまでとにかく192fs(サンプリング周波数の192倍という意味)をマスタークロック(MCK)に入力しておけば大丈夫なのですが、将来作るかどうかはさておいて他のDACを繋ぐ場合でもこれがあると便利なのでマイコン付きで組み立てました。

動作確認ですが、ここで問題発生。


私の古いオシロではスイープ時間の最小が5μsなのでビットクロック(BCK)はなんとか表示できても…。


マスタークロック(MCK)はとりあえずなんか正確そうな波形が出ているかなぁレベルでしか表示が出来ません。これで良しとしてもよいのですが今ひとつ納得が…。


ちょっと予算オーバーなのですが、良い機会なのでデジタルオシロスコープを買いました。OWON(中国メーカー)の30MHzの2現象。秋月で3万円ちょっとだったのと、ホビーレベルでは全く過不足無しという評判だったので。テクトロとかだと廉価品でも6万近いので躊躇してましたが、なんとかこの値段なら手が届きます。本当はオーディオに使うのなら100MHz位のを買った方が良いのですが、今まで20MHzで困ったこと無かった位の使い方なのでこれで良いかと。


サンプリング周波数96.0KHz(ハイレゾ音源)に対して…


ビットクロック(BCK)がその64倍の6.144MHz。

マスタークロック(MCK)は96KHz時にビットクロック(BCK)×2の設定にしてあるので12.288MHz。



ワードクロックとデータクロックも出力されていることを確認。

CD音源(サンプリング周波数44.1KHz)の時は写真撮り忘れてしまいました(^^;。

とりあえず正常に動いているようなのでマスタークロック(MCK)の問題はこれで解決です。

キット代金以外の周辺部品は以下の通りです。(秋月電子で購入)

この他にピンヘッダは手持ちのモノを使いました。

次回は電源部の製作です。

コメントの投稿

非公開コメント

プロフィール

缶コーラ

Author:缶コーラ
山口県在住。ローカルなネタを含めて
何でもアリで書いていきたいと思います。

リンク
マイマイ新子と千年の魔法公式サイト
最近の記事
最近のコメント
カテゴリー
検索フォーム
メールフォーム
管理者宛メールはこちらのフォームからどうぞ。

名前:
メール:
件名:
本文:

月別アーカイブ
ようこそ
Twitter update
RSSフィード
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QRコード
ブログ内検索