元々は、下図のような構成で、I2Sとは別にES9018SのMCLK用のクロックをHDMIの4つ目のLVDSラインで伝送し、Si5326で逓倍してES9018SのXi端子に供給するとともに、FlipFlopでI2S信号をリタイミングしてI2S(特にbclkの)ジッタを軽減することを考えていました。
従来案のHDMI-I2S Rxブロック構成
新しい方式では、どうせSi5326で逓倍するので、bclkとmclkを別々に伝送せずにSi5326でbclkも生成するようにし、blckをFlipflopで打ち直すことでジッタ軽減するのではなくSi5326でジッタリダクションするようにしました。
これにより、部品点数も減らせて消費電力やノイズ源の削減にもなります。
ただし、この変更によりSi5326の生成クロックの周波数をサンプリング周波数により替えてあげる必要があります。図では、bclk 11.2895MHz/12.288MHzとしてありますが、これはサンプリング周波数176.4kHz/192kHz時の場合で、実際にはサンプリング周波数に合わせて変更する必要があります。
変更案のHDMI-I2S Rxブロック構成
ひとつよくわからず悩んでいるのは、HDMIからのbclkをデカップリングCのみで直接Si5326に入力してもよいかどうかがわからず、デフォルトではDS90LV048でLVDS=>LVCMOS変換後後ISO722で電源/GNDアイソレーション後Si5326に接続する構成をとっています。
もしGNDがアイソレーションしてある送信LVDSをデカップリングCのみで直接Si5326で受信してもよいなら上図青の点線ラインで接続でき、ジッタ的にはあまりよくないとされるアイソレータを介在させなくてすみます。
一応青点線ラインもとれるような回路構成にしてあります。
HDMIケーブル経由以外に同じ筐体上のArduino等でも制御できるようにI2C制御ポートコネクタを追加しました。(上図左下)
このHDMI-I2S Rx + BuffaloIIで確認がとれたら、デジタル段はほぼ同じ構成でES9018S DAC基板を起こそうと考えています。
ES9018S DAC基板ブロック構成
HDMI-I2S Rx回路図1/2
HDMI-I2S Rx回路図2/2
HDMI-I2S Rx基板A面
BufflaiIIのI2Sコネクタ側のスペーサー穴でスタックし、左側のコネクタからI2S、右側のコネクタからmclkとI2Cを接続、下側のコネクタ(CVCC)にTPS7A47基板を接続します。
今回アイソレータ以降の電源は1種類にしましたが、コネクタから一点アース的になるようスリットを入れたベタアース、ベタVとして共通インピーダンスを少なくするようにしてあります。
HDMI-I2S Rx基板B面
HDMI-I2S Rx基板B面シルク
HDMI-I2S Rx基板A面3D
HDMI-I2S Rx基板B面3D
kou さま
返信削除Si5327-EVBで周波数変更するのに多少時間がかかるのですがテーブル化したデータをI2Cでバースト転送するとどのくらいかかるかデバイス単体でまだ見ていません。
最近Si5369が気になっています。
LRCKも含めてI2Sをパーフェクトタイミングで作ってスレーブモードでDAIを使うとリクロックの必要もないのではと考えています。
Si5326はACカップルですね。
この使い方だとクロックのジッターや精度はBCLK依存なのでDDC次第という事でしょうか?
OCXO+Si5326で作った低ジッターのBCKをDDCに戻すのとどちらが効果的でしょうか。
rtm_iino さん
返信削除周波数変更の時間を気にされているのは、曲の切替時に間に合わせることを検討されてるからでしょうか?
Si5326はACカップルですね。
=>たしかACカップリングの方が特性が良いとあったと思います。
Si5369は、Si5324、Si5327と同じようなSpecで、入力4つ、出力4つとれるので購入出来ればマスタークロックに使いたいですが、
やはり残念ながら少量販売はしていないようですね。
この使い方だとクロックのジッターや精度はBCLK依存なのでDDC次第という事でしょうか?
=>BCLKはMatrixSWのSi5326=>Si53302のルートで供給します。FPGA等は経由させないのでジッタは最小限に抑えられるはずです。
図がないとわかりにくいとおもいますので、近々アップします。