ラベル Clock の投稿を表示しています。 すべての投稿を表示
ラベル Clock の投稿を表示しています。 すべての投稿を表示

2013年10月15日火曜日

ES9018S DAC基板 基板到チャコ

 ES9018 DACの各基板(合計6種類)がようやく届きました。

 Main基板のVia間が近すぎでNGだったため修正して再提出したので余計に時間がかかりました。FusionPCBでは、以前とは異なりメール添付では受け付けてくれず、Web上から再Uploadせよとのことでしたが、どうやってUploadするのか分からず、何度か問い合わせしてようやくUploadできようになったこともありさらに余計に時間がかかりました。


ES9018S DAC Main基板 A面

ES9018S DAC Main基板 B面

再提出の際、裏面はリフローではなく手半田になるので、チップコンデンサのPadを大きめに修正しました。


ES9018S DAC  FPGA IO基板(左) Digital Power基板(右) A面



ES9018S DAC FPGA IO基板(左) Digital Power基板(右) B面

 FPGA IO基板を下側、Digital Power基板を上側にして重ねて実質4層基板となります。DE0-nanoの上に乗せ、さらにその上にES9018S DAC Main基板を乗せます。
 FIFO-Clock Isolation Boardを真似てFPGA電源動作部との間のアイソレータにはスリットを入れてみました。図面どおりちゃんとスリットを入れてくれています。
 


 
ES9018S DAC Analog Power A基板(左) Analog Power B基板(右) A面



ES9018S DAC Analog Power A基板(左) Analog Power B基板(右) B面

こちらもAnalog Power A基板を上側 Analog Power B基板を下側にして重ねて実質4層基板となります。
 ES9018S DAC Main基板の上側に乗せます。ES918Sが隠れるのはしのびないので、ES9018Sが見えるように切りかけを入れてあります。

ES9018S DAC Clock Power基板 A面

ES9018S DAC Clock Power基板 B面


 こちらはSi5328とCXO用の電源基板でES9018S DAC Main基板のSi5328の下あたりに重ねます。


 とりあえずDAC基板としてではなく、ES9018S DAC Main基板の左半分のクロックセクションとFPGA IO基板とClock Power基板の3枚のみでSi5328とI2Sの供給だけ動作させて、失敗したT46/ES9018用CLKおよびI2S基板の代用としてHTPC T46/ES9018v3 -SVに組み込めるようにしようと思います。

2013年8月16日金曜日

ES9018S DAC基板(Main)

 T46/ES9018用CLKおよびI2S基板は、Si5326のGND PADのスルーホールを抜き忘れるという大失態をしており、直ぐに修正版をFusionPCBにメールしましたが、受け付けられずスルーホールなしの基板が出来上がってしまいました。
 対策版を作りなおしても夏期休暇に間に合わないので、ここはひとまず夏期休暇期間を利用しての自前のES9018S DAC基板製作に移ることにしました。

 今回回路図等をアップしたのはES9018S DAC Main基板で、ES9018SとSi5328とその周辺のみを搭載し、この基板の下にFPGAとのインタフェースのアイソレータとリタイミングFF、デジタル電源用のTPS7A47などのレギュレーターの基板、この基板の上にアナログ電源基板を別途作り接続します。

 概要
 ・デジタル電源には、X2Y、フェライトビーズと高周波特性に優れた貫通コンデンサを組み合わせたNFE31P222などで構成。
 ・アナログ電源は原則フィルムで構成、パナ ECHU(ECH-U1C104JX5)、WIMA SMD-PPS(MDIC04100TB00)、ルビコンPMLCAP(25ST106MD15750)、X2Y(これはセラミック)
 ・ ES9018Sのデータ入力は8本個別にFPGAに接続
 ・ジッタアッテネータはSi5328を選定
 ・4層基板
 ・サイズ 77mm×50mm BuffaloIIに近いサイズ

 ES9018S DAC Main基板回路図1(Si5328周辺)

  ES9018S DAC Main基板回路図2(ES9018S周辺)


 ES9018S DAC Main基板回路図3(ES9018Sパスコン)


 ES9018S DAC Main基板実装図Topレイヤ


  ES9018S DAC Main基板実装図2ndレイヤ(GND)


   ES9018S DAC Main基板実装図3rdレイヤ(Pow)


   ES9018S DAC Main基板実装図Bottomレイヤ

   ES9018S DAC Main基板実装図Bottomレイヤシルク

    ES9018S DAC Main基板実装図3D Top

    ES9018S DAC Main基板実装図3D Bottom


2013年8月9日金曜日

Si5328

 Silicon Labsの新しいJitter Attenuating Clock Multipier  Si5328が発売されているようです。
 


Si5328 Jitter Attenuating Clock Multipier


 Si53xxシリーズはあまり1個単位で売られていませんが、Si5328はMouserで扱っており、Si5326よりも安く¥1,800台で売っています。

Integrated loop filter with selectable loop bandwidth 0.1 Hz; 1 to 10 Hz とSi5326の60 Hz to 8.4kHzよりかなり低く、Si5324/.27の4 to 525 Hzよりもさらに低くなっています。
また、X1/X2入力は、37M~41MHzのTCXO/OCXOを接続することになっています。

TCXO/OCXOを接続するのは、ジッタ特性のためというより、ワンダ特性のためで、用途的には、SyncE向けでのデバイスのため、ジッタのみならず、ワンダ、ホールド特性が求められることへの対応のようです。

 オーディオ的には、ジッタ周波数が低いジッタの影響が大きいのではないかと想定しているので、ループ帯域が低い方が良いのではと考えていたので、Si5326からSi5328に変更しようと思います。
 
 

2013年8月3日土曜日

T46/ES9018用CLKおよびI2S基板

 T46/ES9018用のMCLKクロックおよびI2Sの供給基板を作りました。
 今回はじめて4層基板にしてみました。

 またデータはHDMI-I2Sで伝送するのを改め、ADATで伝送することにしました。
 ADATをDE0nanoで受信終端してI2Sに変換し、アイソレータでFPGAと電源系のアイソレーションを確保しFFでリタイミングしてES9018Sへ入力します。

 クロックはSi5326を踏襲。電源にX2Yと村田のエミフィル貫通タイプNFE31Pを使ってみました。


ES9018 CLK&I2S回路図1



ES9018 CLK&I2S回路図2


ES9018 CLK&I2S Top

 左側のCN3でDE0nanoと接続します。当面はX2にCCHD-957を載せて、これをクロックマスターにしようと思います。
 電源は裏にTPS7A47を3個搭載した基板でCXO用、Si5326用、その他IC用の3つに分けて個別に供給。


ES9018 CLK&I2S L2

ES9018 CLK&I2S L3

ES9018 CLK&I2S Bottom

ES9018 CLK&I2S Bottom Silk

ES9018 CLK&I2S Top 3D


ES9018 CLK&I2S Bottom 3D


2013年7月7日日曜日

TI クロックジッタクリーナーLMK04826B/LMK04828B

 TIよりLMK04826B/LMK04828Bという新しいクロックジッタクリーナーが出ています。LMK04828Bに関してはMouserで1個から購入することができます。

 TIといってもTIに買収された元National Semiconductor社の製品のLMK04000シリーズとしていくつかの品種があり、その新製品にあたるもののようです。
 LMK04816では123 fs RMS jitter (100 Hz to 20 MHz)がLMK04828Bでは、91 fs RMS jitter (100 Hz to 20 MHz)に改善されています。


 使いこなすには、かなり調べあげル必要がありそうですが、Si5326の有力な対抗馬になりそうです。

LMK0482xBブロック図


 使用するとして、Si5326に対して良いと思う点は、
・入力ポート:最大3port (Si5326は2port)
・出力ポート:最大14port(Si5326は2port)
・安い    :¥1,726(Si5326は¥3,362~)(Mouser実勢価格)
・ジッタ特性が良い?

 64-pin QFN (9.0 x 9.0 mm)でSi5326の32-pin QFN (6.0 x 6.0  mm)より大きいですが、別にクロックドライバを必要としないのでかえって良いですが、外部フィルタが必要となります。
 どちらもLVDS,LVCMOS対応しており、この点は問題なしです。

 PLL2に外部VCOを使うこともでき、この仕組を使うとCXOを外部VCOとして接続するとジッタクリーナとしてではなくCXOのクロックドライバとしても使えそうなので、切り替えて比較することもできそうです。


 話は変わりますが、今日は、Windows Home ServerのHDDが1台壊れて、各共有フォルダのステータスが黄色に変わり、ファイルにも正しくアクセスできなくなってしまったため、HDDを差替えました。
 壊れたHDD(1TB)を抜き、代わりに新しいHDD(2TB)を入れてDickManegment画面で追加し、壊れたHDDをサーバーの記憶域画面で削除したら、削除処理が始まり数時間コンソールが使えない状態になり、その後はWHSコンソールウインドも切れて、再ログインも出来ない状態に。手順が正しいのかも不安でヒヤヒヤもんでしたが、そのうちコンソール画面も開けるようになり、各共有フォルダも正常に戻りました。
 Windows Home Serverは、共有フォルダ毎に複製するオプションが選択でき、複製を設定しておけばHDDが故障しても、交換後自動的にデータを復旧できるので、RAIDよりは便利で安心です。
 Windows Home Serverは2011を最後になくなってしまいましたが、割りと良いと思うので残念です。

 

2013年6月16日日曜日

Wolfson WM8804 / WM8805 ジッタリダクション性能の高いSPDIFトランシーバ

 
 WM8804  /  WM8805 というWolfson のS/PDIFトランシーバ (Digital Interface Transceiver with PLL)というのがあるのを、rtm_iinoさんのコメントで知りました。

 ジッタリダクション能力が高く、DDC/DACと同期させることのできないS/PDIFインタフェースのデバイス(CDプレイヤー、PS3、TV等)をソースとする場合のDIRとして使用すると良さそうです。

 サイトにある資料を見ると、私も同期を取ることの出来ないプレイヤーの収容方法としてFPGAで実現しようとしていた方式と同じような方法を採っていることがわかりました。
 多分、自分で作るよりも良好な結果が得られると思われるので、WM8804を使おうと思います。

 WM8804 のサイトにあるA high performance S/PDIF receiverという資料に解説があります。

 
 資料に書かれているジッタリダクションの概要は、
S/PDIFレシーバーのアーキテクチャ


5つの主な要素で構成:
1. Digital PLLDPLL):入力データにロックし、内部中間クロックを生成し、内部データをリタイミングするために使用。

2. Elastic BufferEB): EBは、ローカル(DDC側)およびリモート(Player側)のクロックドメイン間の短期または中期のタイミング変動を吸収するために使用。
また、現在の累積ジッタやスリップを示すポインタ誤差信号を生成。

3. IIR(digital filter)  : ポインタエラー信号の高周波成分を減衰させるため、アナログPLLの周波数制御入力を駆動するフィルタされたポインタ誤差信号を生成するデジタルフィルタ(通常はIIR

4. A high quality clock source 安定した時間基準を提供する水晶発振器などの高品質のクロックソース。

5. Analogue PLL :”A high quality clock source”からスペクトル的にクリーンなクロックを生成し、その出力周波数はフィルタされたポインタエラーによって制御され、良好にPLLのフィードバック分周器に作用する。
このスペクトル的にクリーンな低ジッタのクロックは出力クロックとして、また出力データのリタイミングに使用する。


 エラスティックバッファのポインタの動きをIIRフィルタで高周波成分を除去したものでアナログPLLの位相をリモートクロックに追従させるしくみで、この際100Hz以上の帯域のジッタ成分が除去される制御となっているようです。

 



Period histogram from WM8805  intrinsic jitter

Period histogram from WM8805 with 5UI of jitter at 1Khz


WM8805に5UI 1kHzのジッタを与えた時のヒストグラムは、周期ジッタは50psの実効値で、入力ジッタなしとほぼ同じ形状をしています。


Period histogram from Competitive with 5UI of jitter at 1Khz


比較に用いられた対抗メーカーのデバイスは、1kHzのジッタがかなり残っています。
測定数値的にはかなり効果が見られていることがわかります。


2013年5月27日月曜日

MatrixSW Si5326基板 立ち上げ難航

 忙しくてなかなか進んでいません。今週末よりようやくSi5326基板の立ち上げを開始しましたが、いきなり躓いています。

 最初はSi5326のI2Cアクセスを確立させるところからになりますが、DE0-nanoとBuffaloIIをのI2Cの接続にSi5326基板のADuM1250の1次側も接続に加え、Si5326の電源を入れると"L"にドライブされてES9018のアクセスまでできなくなってしまいます。

 ADuM1250の2次側にはSi5326のI2Cポートとプルアップのみしかありません。こちらの電圧も1V強しかありません。これが原因で1次側が'L'ドライブされているようです。プルアップが2kΩと大きい値にしていたので試しに820Ωにしてみましたが、やはり1.2V程度です。

 Si5326が壊れている可能性もありますが、先ずはADuM1250を外して見ました。Padが剥がれて基板は使いものにならなくなってしまいました(泣)
 これでも状況は変わりません。

 電流は、実験電源の出力で4.4V 120mA程度で、3.3Vで150mA程度になっています。Si5326は、Disable modeで160mA、動作時で190mA~(動作周波数や出力規格による)なので、少し低めだけどそれほどおかしな値でもない?といったところ。

 Si5326のSDAはともかく、SCLは入力なので、何故に"L"レベルに引っ張ろうとするのか途方にくれていましたが、ふと、もしかしてSi5326の電源が浮いている?と思い調べてみると、5pinと32pinは導通がありましたが、10pinが浮いていました。半田を付け直して、SDA,SCLの電圧を見ると3.2Vありました。
 Si5326のVddは3本ありますが、SDA,SCLは10pinのVddに電源供給が無いとダメなようです。データシート上、3pinともVddとして区別はありませんが、内部では供給ブロックがわかれているのかもしれません。
 電流も、実験電源の出力で4.4V 200mA程度になりました。


 さてもう一つ問題がありまして、コネクタにヒロセDF13を多用しているのですが、精密圧着ペンチ エンジニア PA-09で自分で圧着してケーブルを作ってみましたが、今回使っているうちに圧着が外れてしまうのが4本中2本も出てしまいました。作るときも失敗繰り返してようやく4本分できたのに、こんな状況で100本以上作るととんでもないことになりそうです。

 コネクタをもう少しピッチの広いものに替えないとマズそうです....


 

2013年5月9日木曜日

MatrixSW FPGA I2Cコントローラの実装

 FPGAのI2Cコントローラは昨年作りこみまでは行なっていましたが、動作確認を行わずに保留にしていましたが、Si5326のセットアップをする前に立ち上げを行いました。

 まず、I2Cの制御系は下図の様にFPGAにQsysによりJtag Avalon Master BridgeによりPCからSystemConsoleで制御出来るようにしています。
 I2Cコントローラは4つのポートからアクセスするポートを選択し、そのうちの2つはMatrixSwitchのMasterClock部のSi5326に接続、残りの2つは4 チャネル I2C マルチプレクサ PCA9546Aにより4つに分岐させ、その1つずつをHDMI-I2Sケーブル経由で各DACのSi5326およびDACチップに接続します。
 各ラインはI2Cアイソレータ ADuM1250によりFPGAとの絶縁させます。

MultiDAC I2Cコントローラーブロック構成


 デバッグ用にI2C制御用のSystemConsole画面を作成し、動作確認を行いました。
 当面は、SystemConsoleからの制御でしのぐつもりですが、そのうちNiosIIを搭載して、BluetoothかなにかでPCから制御できるようにしたいと考えています。
 

I2Cデバッグ用SystemConsole画面

この他デバッグには、SiglalTapIIとロジック・アナライザ ZELOPLUS LAP-C を使いました。
 今回ZELOPLUSのI2Cプロトコル機能を初めて使いましたが、データをパケットとして表示してくれるため、楽にI2Cデータの解析を行うことができました。
 


 まず、動作確認のリファレンスとするためにBuffaloIIを接続し、I2Cのアクセス波形を採取しました。

BuffaloII 初期設定キャプチャ

 上記は初期設定のアクセスのキャプチャ、下記は1秒周期に周期的に0x0E番地をアクセスしている時のキャプチャです。


BuffaloII 周期ポーリングキャプチャ




 いくつかのバグを修正して、1バイトライトアクセスと1バイトリードアクセスが問題なくできるようになりました。続いてSi5326のデバッグに入る予定です。



MatrixSW I2Cコントローラ 1バイトリードアクセス キャプチャ





MatrixSW I2Cコントローラ 1バイトライトアクセス キャプチャ





2013年5月6日月曜日

MatrixSW Si5326基板およびCXO基板組立て

残りのSi5326基板とCXO基板を組立てました。

A面上型の3つのコネクタ(CON7,CON9,CON11)でHDMI-I2S基板の片方と接続し、B面上側の3つのコネクタ(CON8,CON10,CON12)でHDMI-I2S基板のもう片方と接続します。
同じようにA面下側の2つのコネクタ(CON3、CON5)でCXOボードの1つと接続し、B面下側の2つのコネクタ(CON4、CON6)でCXOボードのもう1つと接続します。

 組み上げて思ったこととして、チップコンデンサと抵抗のPadがチップサイズよりかなり大きめにとってあります。これは手付けの場合は半田付けし易さを考慮するとこの程度が良いのだと思いますが、リフローを適用するならもっと小さくして、特にパスコンの場合もっとICとの距離を近くかつ高密度にしたほうが良いかと思いました。 
 
 MatrixSW Si5326 ボード A面


 MatrixSW Si5326 ボード B面


 TPS7A47L基板Ver2と同様電源コネクタのスルーホール径が小さいですが、なんとか入ります。


  MatrixSW CXO ボード A面



  MatrixSW CXO ボード B面

 


  MatrixSW MasterClockおよびHDMI-I2S部基板結合(約半分のみ)


 各基板を結合した状態です。基板を小刻みに分けたためコネクタだらけなのが閉口です。
 まだ片側(
CXOボードは4つ中1つだけ)のみで、これと同じ構成を上下反転した状態で結合するのが完成形です。
 


2013年5月4日土曜日

MatrixSW HDMI-I2S Tx基板組立て

HDMI-I2S Txボードを1組分組立てました。


I2SのData/LRCKとI2CおよびTPS7A47 LDOレギュレータを1ライン分収容するHDMI-I2S Tx I2S Dataボード 2層基板 B面側はほとんどGNDベタ
表面実装部品はリフローで付けました。

 HDMI-I2S Tx I2S Dataボード A面
  
 HDMI-I2S Tx I2S Dataボード B面
  
I2SのBCLK 4ライン分とFPGA用クロックラインを収容するHDMI-I2S Tx I2S CLKボード 2層基板
真ん中のチップがSi53301。A面側はほとんどGNDベタ
こちらも表面実装部品はリフローで付けました。

 HDMI-I2S Tx I2S Clkボード B面
  

 HDMI-I2S Tx I2S Clkボード A面
  


 3枚並べたところが下の写真、HDMIコネクタのピンと下側のスルーホールで固定して合わせて4層基板となります。下の基板のHDMIコネクタはBCLKの2本のみを接続します。
 まだ仮付けですが、スルーホールにはポリミイドテープで絶縁する予定。



 HDMI-I2S Tx ボード結合(あと1枚)

4枚並べて完成形



 HDMI-I2S Tx ボード結合 A面

  


 HDMI-I2S Tx ボード結合 HDMIコネクタ面から