miniDSPで遊んでみる、の巻き 2016.6.8
出張の途中で帰省先に立ち寄り、例のブツをゲットしました。miniDPS 24 HDです。
こんなパッケージで香港から送られてきました
ほんとに小さな箱ですが、中身は本体とACアダプタとUSBケーブルのみ。マニュアル類は一切なしです。
中身はほぼこれだけ
早速動かしてみましょう。必要なソフトをDLしてパソコンにインストール。miniDSPに発信器とオシロを接続して確認です。
なんで帰省先に発信器とオシロがあるの?と突っ込まれそうですが、遊べる環境は複数個所あります(笑)
早速動作させてみましょう
ソフトの起動画面です。取説が不要なほどシンプルなので、単純な2WAYクロスオーバを構築するなら簡単です。
ソフトの起動画面です。
まずはHPFのカットオフを5000Hzに設定して、あることを調べてみました。
HPFのカットオフを5000Hzに設定です。
なにを調べたいかといえば、このDSPは基本は96kHzのサンプルで動いているといわれていますが、その確認です。
周波数をだんだん高くしていって、どこまで追従できるのかを調べて確認してみました。
まずは10KHzです。この振幅が基本になります。
20KHzです。この周波数でも振幅は大丈夫ですね。
40KHzです。通常のオーディオとしてはまったく問題のない周波数特性です。
48KHzです。やはりこの周波数からかなり減衰しているので、96kHz動作は正しいようです。
52KHzです。やはりこの周波数は限界を超えています。96kHzですね。
ケースの中身である基板を調べてみましょう。ネジを何個か外せば基板をひきづりだせます。
基板の部品面です。
つぎは半田面です。半田面にもいくつかのICがのっていますが、これらはOPアンプです。
ADCあるいはDACのアンプに使われいるようです。石はJRCの2068です。
これらを高性能なものに変更すれば、音質向上がはかれるかもしれません。
基板の半田面です。SOIC8のパッケージがOPアンプです。計3個かな。
ADC/DACをつかさどっているのがAK4626です。
このICはピン間が0.8mmなので、リード線を引きだすのは、まだ簡単かもしれません。
それと、ありがたいことに必要な信号はすべてダンピング抵抗(集合抵抗ですが)を介しているので
そちらからも線を引き出せそうです。
なにがしたいかといえばPCM信号を外だしして、外部DACを使おうという算段です。
AK4626周辺です。下側の集合抵抗にクロックやデータラインが通っています。
周波数を調べてみましたが、LRCK=96kHz、BCK=6.144MHz、MSCK=24.576MHzでした。
いわゆる96kHzでデータは64fsで、マスタークロックは256fsです。
必要なデータはここから取り出せるでしょう。
集合抵抗のあたりからデータ線をとりだせそうです。
信号の遅れはどうかな? 2016.6.10
このminiDSPは通常つかう分には
ADC→DSP→DAC
の経路をだどるので、ひょっとして信号の時間遅れが大きいのでは?とふと心配してしまいました。
音楽を聴くだけならいいのですが、映像とともにつかうなら信号の遅れが大きいと問題ですからね。
ということで、簡単に調べてみました。
HPFのカットオフは10kHz程度に高く設定して、低周波の三角波を入れてチェックです。
フィルタによる位相遅れがでないような領域でチェックします。
で、実測の結果は約3.2msでした。音速340m/sとして、距離にすれば約1.1mですね。
ちょっと大きなリスニングポジションの変動程度なので、まったく問題ないでしょう。
この時間差が気になることはまずないはずです。
よかった〜。
miniDSPの時間遅れは約3.2mSでした。
ちなみにDACでは?
ということでDAC4490-5の時間遅れもついでに測定してみました。
R-2RDACはディジタルフィルターが入っていないので、その出力信号との比較です。
ショートディレイで約100us、一般のフィルタ(Traditional filter)で650us程度のようですね。
Short Delay Fillter : 約100us(下:R-2R DAC、上:DAC4490-5)
Traditional Filter : 約650us(下:R-2R DAC、上:DAC4490-5)
SPDIF変換基板を考えてみましょう。 2016.7.11
PCM信号をSPDIFに変換するために、DIT4192を使用した基板を考えてみることに。
miniDSP用には2個のユニットがあれば十分ですが、拡張性も考えて3個搭載することを考えています。
基板サイズはまだまだ検討の余地ありです。
こんなご意見も! 2016.8.7
なるほど。4ch入力のDITをつかうと、ICの数もへりますね。
ちなみに、データシートをみるとこんな感じです。
おもしろそうな石ですが、ここは使い慣れたDIT4192で3ch分でパターンを描いてみました。
こんなパターンです。
H/Wモードで動作させると、3chもあると設定のためのジャンパーであふれかえるのS/Wモードとして、
クロック周波数比などは自動判定させるようにしました。こうすれば、色々なDAIにあまり深く考えずに接続することができます。
ただ、入力フォーマット(右詰、左詰、I2S)については自動判定の方法が思いつかなかったので、ジャンパー設定は必要です。
基板ができあがりました。 2016.9.5
こんな感じでできあがりました。
組み立ててみましょう! 2016.9.14
部品点数はそれほど多くはないので、晩酌後のほろ酔い状態でも一気に組み立てられます。
そのかわり組み立て精度は危なっかしいですが(笑)。
まずはこんな感じで完成です。
裏面はこんな感じです。
つぎはソフトを組んでいきましょう。
ソフトの内容は入力周波数を判断して、DIT4192の動作モードを設定することになります。
本来は入力フォーマットの自動判定までできればいいのですが、これははなっからあきらめています。
ソフト製作中!2016.9.22
まずPCM出力にはSRC4137を用いて、動作確認を進めています。
ソフトではLR、BC、SCKのそれぞれのクロックを判定して、DIT4192を設定します。
入力フォーマットについては判定できないので、ジャンパー設定する必要がありますが
その他については自動設定です。といっても、fsの設定(128〜512)だけですが・・・。
ソフト製作中です。
まだまだ進めたいけど、また公用で出張で〜す。
ソフト完成!2016.9.24
ようやくソフトができました。
フォーマットの設定はジャンパーで行います。
下記の様に定義しました。
FMT0 | FMT1 | FORMAT |
H(OPEN) | H(OPEN) | I2S |
L(SHORT) | H(OPEN) | Left Justified |
H(OPEN) | L(SHORT) | Right Justified 16Bit |
L(SHORT) | L(SHORT) | Right Justified 24Bit |
基板には3つのLEDがありますが、点灯の仕方で状況を示すようにしています。
たとえばMiniDSPと接続した場合、出力は96kHzでMCK=256fsですから、
LEDはすべて点灯状態になります。すなわち、正常に接続できているかは
すべてのLEDが点灯することでわかります。
表示 | 内容 | LED表示 | 状態 |
POW | 電源 | 点灯 | 通常状態 |
点滅 | BC/LR=64でない場合 (入力異常) |
||
FS | 入力周波数 | ゆっくり点滅(約0.7Hz) | fs=22〜32kHz |
普通に点滅(約2Hz) | fs=44.1 , 48kHz | ||
点灯 | fs=88.2 , 96kHz | ||
早く点滅(約6Hz) | fs=176.4 ,192kHz | ||
FR | MCLK/LRCK 状態 |
ゆっくり点滅(約0.7Hz) | MCK=128fs |
点灯 | MCK=256fs | ||
普通に点滅(約2Hz) | MCK=384fs | ||
早く点滅(約6Hz) | MCK=512fs |
3つのLEDにはそれぞれ役割があります。
さて、SPDIF出力は問題ないかな?
PCMtoSPDIF変換基板の動作確認のためにDACをつないでみましょう。
SRC4137→PCMtoSPDIF変換基板→DAC179X-2.1
と接続して確認しています。さて、問題なく動くかな?
動作確認の様子です。
無事動きましたね!
動作は大丈夫のようです。
問題なくSPDIF出力はでているようです。
さて!本丸にかかりましょう!
もともとこの基板をつくったきっかけはMiniDSPというディジタルチャンネルデバイダの出力がアナログのみだったので、
それをディジタル(SPDIF)に変換してやろう、ということでした。
というわけで、最後の確認でMiniDSPと接続してみましょう。
まず電源はMiniDSPのACアダプターの入力から横取りです。ちょうど12VのACアダプターが使われますので、
ここから取り出します。そのためPCMtoSPDIF基板には電源入口に7805を乗せて5Vに変換しています。
電源はここから横取りです。橙が+で青がGNDです。
MiniDSP基板とPCMtoSPDIF変換基板を接続した様子です。
こんな感じでPCM制御線を取り出しています。もうちょっと細い線なら、もっと綺麗に接続できるでしょう。
いざ動かしてみましょう。
変換基板の出力にDAC179X-2.1を接続しています。
こんな感じで動作確認しています。
出力配分はこんな感じになるようです。すなわちDAC出力はLが低音、Rが高音出力になりますので、
ちょうどLRチャンネル毎にDACを容易する形になりますね。
MiniDSP入力 | PCM制御出力 | MiniDSP出力 | 変換基板出力 | DAC出力 |
IN1 | DATA1 | OUTPUT1 | SPDIF1 | DAC1 L-CH |
OUTPUT2 | DAC1 R-CH | |||
IN2 | DATA2 | OUTPUT3 | SPDIF2 | DAC2 L-CH |
OUTPUT4 | DAC2 R-CH |
動かしてみましょう。まずはクロスオーバー周波数を1kHzに設定して、高音側(HPF)の出力をみてみましょう。
2kHzであればほぼスルーですが、500Hzではほぼ遮断されていることがわかります。
問題ないようですね。
周波数 2kHz | 周波数 500Hz | |
さて、MiniDSPの出力をSPDIFに変換することができました。
あとは、どのようにシステムを組み上げるかですね。
(つづく・・・かな?)