2012年6月18日月曜日

SACDプレーヤー DSDデータ伝送6

昨日まででSCD-XE600単独での再生が確認できましたが、いくつか微調整を行いました。


 ・モード設定レジスタの初期値をデザイン毎に個別指定

   SACDP DSD ADAT転送ボード、MatrixSW、モバイルDDC、各々のモードでの通常設定値は異なるので、通常設定値が初期値にできるように変更。
   今回は、SystemVerilogのInterfaceで初期値を外部モジュール(使用形態毎の別ファイル)で設定するようにしてみました。


 ・SDカードプレイヤー用設定/ステータスレジスタ別モジュール化

    SACDP DSD ADAT転送ボードには、必要ない機能であり、またレジスタモジュールが結構大きくなってきたので、分離しました。


 ・クロック自動切替え機能

    MatrixSWから 11.289600MHz クロックを供給して動作しますが、MatrixSWからのクロック供給が無いとき、SCD-XE600が動作できなくなるだけでなく、その後クロック供給が復旧しても正常に動作しないようです。
   MatrixSWからのクロック供給が無い場合、SACDP DSD ADAT転送ボード内のCXOを元に11.289600MHz をSCD-XE600基板に供給できるようにしないと、立ち上げ手順が必要になるなどいろいろ使い勝手が悪くなります。

  今回はCycloneIVのPLLのクロック スイッチオーバー機能を使いました。2つのクロックソースを切り替えられる機能です。この機能は、自動とマニュアルがありますが、どちらも選択中のクロックソースが正常ならば、選択中のクロックを選択し続け、MatrixSWからのクロックが断状態から復旧してもスイッチオーバは発生しません。
  clkbad0およびclkbad1という各入力クロックの状態を示す信号と、Activeclockという選択中のリファレンスクロックを示す信号により、ボード内のCXO選択中にclkbad0が"0"(正常)になったら、clkswitchというクロックマニュアル切り替え信号をアサートするロジックを追加しました。

 これにより、MatrixSWからのクロック供給が無いときは、ボード内のCXO、MatrixSWからのクロック供給があるときはMatrixSWからのクロックを選択して、PLLが同動作し、11.289600MHz、 22.579200MHz  、 90.3168MHzを生成します。

 実際にMatrixSWからのクロック供給が無い状態で、SCD-XE600の電源スイッチをOFF⇒ONさせても正常に起動し、その後にMatrixSWからのクロック供給を行うとリファレンスがMatrixSWからのクロックに切り替わるようになりました。



クロックスイッチオーバー回路


下図が現状の構成です。未だL/Rチャネルだけで5.1ch転送はサポートできていません。

SACDP DSD ADAT転送ブロック図


 このあと、MatrixSWと接続し、MatrixSWに接続したBuffaloIIでの再生もできることまで確認しました。

 もうひとつ、DE0-nanoのUSBコネクタを引き出せるようにしたいので、 SCD-XE600 の右側面カバーに丸い穴を開けました、位置をかなり雑に決めたため結構ずれてしまい、シャーシパンチで穴を広げてなんとか挿せるように..orz


DE0-nano USBコネクタ用ホール

 とりあえず一段落、そのうち5.1ch転送も作り込みます。

2012年6月16日土曜日

SACDプレーヤー DSDデータ伝送5

 SCD-XE600のクロックソースをSCD-XE600のCXOからFPGA側からの供給する変更を行いました。


 まずは、FPGAのコードを変更。
 以前はSACDプレイヤーSCD-XE600のCXO動作のままDSDデータを抽出していたため、SDRAMへ一旦バッファして、 Matrix SW側のクロックで読みだすモードで動作させていたため、Matrix SW側のクロックで動作するESモードと呼んでいるモードにソースコードを変更し、さらに5.1チャネル分の受信回路に変更しました。最初はPCMの受信回路(ADAT/AES/I2S)と同様にStereo2ch単位の受信回路を考えていましたが、6chを1つもモジュールで処理することにしました。


 ここまでできたところで、一旦SCD-XE600のCXOで動作を確認。
 構成としてFPGAの50MHzCXOから11.289600MHz、  22.579200Mz 、90.3168MHzの近似値を生成し、BuffaloIIを接続してちゃんと音が出ることを確認しました。


 ここでいよいよSCD-XE600の11.289600MHzCXOからFPGA供給クロックに切り替える変更を実施。
 先ずは、下の写真の用にCXOからLV04Aへのラインをカット。
 



CXO=>LV04Aのライン パターンカット


続いて、LV04Aへクロック供給用のジャンパーをハンダ付け。
 また、SL,SR,C,SWのマルチチャネル(L.Rは既にジャンパー接続済み)もジャンパーで取り出し。




FPGA=>LV04A 11MHzクロック供給およびDSD data SL,LR,C,SW抽出ジャンパー

火入れして、ちょこちょこと設定を合わせ込むと意外とすんなりときれいに再生することが出来ました。

BuffaloIIを仮接続して11MHzクロック供給ジャンパー後の再生動作確認

まだ、色々微調整、追加変更が必要です。電源投入後、クロックの供給が従来より遅れるため、少し心配でしたがとりあえず動作するようです。

2012年6月14日木曜日

ZedBoard Zynq-7000 EPP 開発キット

Dual ARM® Cortex™-A9 MPCore™を内蔵する Zynq XC7Z020 FPGAの開発ボード ZedBoard が¥39,000-で発売されるようです。他のZynqボードに比較するとかなりリーズナブルで、ついつい買ってしまいたくなります。

X-fest(東京: 2012年 7月 04日 (水)、大阪: 2012年 7月 20日 (金))では、Zynq関連のセッションがいくつかあり、その中にZedBoardについてのセッションも予定されています。また、参加するとZedboardの割引特典があるようです。


 今考えているオーディオ関連に何か適用できるかというとイマイチこれというものが思いつきませんが、ARM+FPGAを使いこなせるようにしておくのは何かと役に立ちそうなので、とりあえずX-festには参加してみようと考えています。

2012年6月9日土曜日

Net Audio Vol.5モニター SSC-X 当選

やりました。Net Audio Vol.5賞品(モニター)の横浜ベイサイドネット SSC-X (サウンドステージ コンダクター)に当選しました。
SSC-Xは以前より注目しており、いずれ購入予定でしたが、Net Audio Vol.5の賞品で5名分となっており結構確率高そうで、どうせ急いで購入してもしばらくは使わないので当選結果待ってからにしようと応募してみていたのでした。


SSC-X


 残念ながらSSC-Xには、「フルレンジ版」とチャネルデバイダー機能を装備する「2Way版」(3Way以上のバージョンは、2Wayの価格に1Wayごとに、10,500円(税込)追加)と、各々フォノイコ機能のオプション付きのバージョンがありますが、モニター対象は「フルレンジ版」でした。
 誌面からはどのバージョンかわからなかったので、密かに「2Way版」を期待していましたが....orz

 「フルレンジ版」と「2Way版」の差額で、「2Way版」に、さらには1Wayごと追加料金で3Way化できれば良いのですが、もしダメだと結局「2Way版」から買い直しになってしまいます。このへんどうなのか今のところ分かりません。
 
 さて、スピーカー補正とルーム補正は使えますが、マルチチャネル化できないと結局あまり意味が無いので、どうしたものかと...

2012年6月6日水曜日

ピュアカーボンインシュレーター

横浜ベイサイドネットのSuper Sale ! 50% Off ! & 楽天スーパーSale で半額&ポイント多分10倍ぐらい?につられて買ってみました。
横浜ベイサイドネットのオーディオショップのつくったピュアカーボンインシュレーター 3個セット YBACIS-001 寸法:直径35mmx3mm厚 材質:ピュアーカーボン 付属品:シリコンシート(直径35mmx0.3mm厚)x3枚








ピュアカーボンインシュレーター 3個セット YBACIS-001 


 三菱鉛筆の『ピュア・カーボン』を使用しています。
 現在スピーカー休止中ですが、再開したら試してみます。




EF50mm F1.8 II

 こちらも 購入しました。持っているのですが、犬に引っ張られた拍子に落として真っ二つになっていたので、買い替えです。安いですが、単焦点は明るくて使い良いです。


 

2012年6月3日日曜日

SACDプレーヤー DSDデータ伝送4

 SACDプレイヤーSCD-XE600へDSD ADAT転送ボードの取り付けを行いました。
 まずは、 TOSLink のコネクタ穴の確保ですが、SACDPのメイン基板の上にDSD ADAT転送ボードを取り付けるよいに位置決めをして、穴を開けました。 TOSLink の四角い穴を開けるのはとても無理そうなので丸穴で済ましています。


 TOSLink用の穴 4つ


 穴あけ用に、コードレスドライバドリル FDS 12DVCと、ステップドリル等を購入しました。

購入したステップドリルの最大径12mmでは、少し足りず、リーマーでもう少し広げています。

コードレスドライバドリル FDS 12DVC、ステップドリル、ドリル刃セット


TOSLinkコネクタを取り付け

 DSD ADAT転送ボードは、TOSLinkボードとDE0-nanoで構成されていますが、TOSLinkの固定ネジ穴で筐体に固定しています。
 配線が長くならないよう、SACDPのメインボードの上にしました。クリアランスはギリギリ状態です。
 まだClockの改造はしておらず、DSDデータも2ch分のみの配線状態。まずはこの状態で動作が確認出来てからClockの改造に進む予定。


 DSD ADAT転送ボード



 DSD ADAT転送ボード

2012年6月2日土曜日

SACDプレーヤー DSDデータ伝送3

 SACDプレイヤーSCD-XE600からDSD信号を抜き出す改造について検討してみました。
 データの抽出ポイントについては、エレアトさんの記事を参考にしつつ、エレアトさんの取り出し方とは変えて、3つあるDSD DACチップDSD1751のDSD信号入力ピンにジャンパーして取り出そうと思います。


5.1chすべてを取り出すつもりですが、LchとRch以外のチャネルアサインが現状不明です。下の写真の赤がRch、紫がLch、橙、青、緑、薄橙はSR,SL,C,SWのどれかで、これは実際作ってスペアナ波形などから推測するつもりです。
 取り出しポイントとしては、ダンピング抵抗の出力側かラインの受信端がベターなはずで、ダンピング抵抗はモジュールチップ抵抗でジャンパー困難なので、受信端側を選択してみました。
 BCKについては、使用しませんが、一応モニタできるようにFPGAへ引き込む予定。

DSD信号ラインのルート


11.2896Mbit/sクロックについては、11.2896Mbit/sのクリスタルの代わりにFPGAから供給させる必要があります。
 調べてみると、クリスタルの出力は、下図のように横にあるLV04A(6素子入りインバータロジックIC)に接続され、DACチップとCXD2754Qともう一箇所にダンピング抵抗を介して接続されています。
 クリスタルを外すのは、失敗する可能性もあるので、ここは黄色のラインのパターンをカットして、代わりにFPGAから11.2896Mbit/sクロックをLV04Aの9pinにジャンパーしようと思います。

11.2896Mbit/sクロックの分配構成