FC2カウンター FPGAの部屋 LVPECLの水晶発振器のクロックをFPGAに入力する
FC2ブログ

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

LVPECLの水晶発振器のクロックをFPGAに入力する

DCMカスケード接続の罠(CLKDV編)で”CLKDVを2番目のDCMに入力する場合にはLOCKED信号を3クロック遅延して2番目のDCMのリセットに入れなければいけない”という罠にはまった。それだけでは終わりではなかった。こっちの完全なる勘違い勘違いもあった。
LVPECLの水晶発振器の出力を受けるからといってUCFファイルで入力ピンのP側だけにIOSTANDARD = LVPECL;だけ書いて済ませていた。N側はUCFに書いていない。それでエラーも出ていないからと思って安心していたのだが、実はMAPでワーニングが出ていてLVCMOSに変更したというメッセージが出ていた。そのため大きい基板の方はクロック出ていなかったようだ。小さい基板は1つは完全に正常に動作して、1つはクロックは出ていたが波形がおかしかった。すべてMAPでワーニングが出ていてLVCMOSに変更されていた。条件のよいものだけLVCMOSレベルでも動いたようだった。
更にV2ProのロケットIOのユーザーズマニュアルを参考に回路を組んでいた。水晶発信器はLVPECL出力だが終端をつけてあるのでFPGAではLVDSで受けると書いてあることに気がついた。
EG2121CA_tarm_060926.png

(Xilinx、RocketIO™トランシーバユーザー ガイドV2.1より転載)
失敗!!!ということでFPGAのHDLソースではIBUFDS_LVDS_25プリミティブで受けることにした。これはIとIB(入力と反転入力ポート)があるので、UCFにもP側とN側の2つともピンロケーションとIOSTANDARD = LVDS_25;を指定した。
そうしたところ、見事というか当たり前というかクロックが受けられるようになった。
今日の教訓はワーニングもちゃんと見ましょうという教訓です。でもワーニングが多すぎていちいちかまっていられないの実情です。

それからPSoC MiniProg今日来ました。なかなか面白そうです。いじってみたい気持ちがわいてきました。
  1. 2006年09月26日 21:19 |
  2. その他のFPGAの話題
  3. | トラックバック:0
  4. | コメント:4

コメント

LVPECLは
1)本当ならVTTに50オームで愁嘆してPECLドライバで受ける
2)LVCMOSで受けるなら220ΩでGND終端
で,LVDS受けするとは思わなかったです.

動作点が変わっちゃうのに,それでいいのかなあ>XILINX
出力トランジスタ,飽和するだろうとおもうのですが.

******************
わたしも映像屋なので良くMC9229-PLLシンセサイザをつかっていますが
その場合は,2)をつかって,LVCMOSで受けていますね.
こんどLVDS受けしてみよう
  1. 2006/09/27(水) 01:01:20 |
  2. URL |
  3. まさちく #-
  4. [ 編集 ]

まさちくさんお教えいただいてありがとうございます。
ECLというのはトランジスタのエミッタフォロア回路のエミッタ抵抗がついていない状態なんですね。
ECLよくわかっていなかったのでロケットIOのユーザーズマニュアルそのまま使いました。ECLは飽和させちゃいけないんでしたっけね。
基本的には(飽和しなければ)エミッタ抵抗をつけて差動で受ければ受けられるような気はしますが。。。
  1. 2006/09/27(水) 06:07:29 |
  2. URL |
  3. marsee #-
  4. [ 編集 ]

>ECLよくわかっていなかったのでロケットIOのユーザーズマニュアル
>そのまま使いました。ECLは飽和させちゃいけないんでしたっけね。
そそ
わたしがKEKで研究していたときはOver400MHzの伝送といえばECLかFibleChannelしかなかったので,徹底的に勉強しましたよ

基本的には差動アンプなので,非飽和領域をつかわないと,サチュレーションをおこしたときにリカバリに時間がかかりますからね(ストレージ時間が長いから).

>基本的には(飽和しなければ)エミッタ抵抗をつけて差動で受ければ
>受けられるような気はしますが。。。
動作点がずれることを気にしているだけなので,RocketIOのAPPSノートがその範囲で動いているならばOKではないかと.
VCC-2.0VがVttですが,Lowレベルがこの電圧近辺であればそれでいいんじゃないでしょうか?
  1. 2006/09/27(水) 14:17:32 |
  2. URL |
  3. まさちく #-
  4. [ 編集 ]

まさちくさん詳しい説明ありがとうございます。
そうですね。ON-OFF動作のトランジスタにスピードアップコンデンサをつけたことがあるのを思い出しました。
http://www.analog.com/UploadedFiles/Data_Sheets/199905554AD9512_a.pdf
を見るとLVPECLはエミッタ接地、LVDSはプッシュプルFETの差動みたいですね。LVPECL伝送は127Ωと83Ωで分圧するようです。コンデンサでカップリングする信号伝送はエミッタ抵抗からコンデンサでカップリングし、P,N間に100Ωの並列終端が入っていました。いろいろな終端があるのがわかりました。
  1. 2006/09/27(水) 20:20:14 |
  2. URL |
  3. marsee #-
  4. [ 編集 ]

コメントの投稿


管理者にだけ表示を許可する

トラックバック URL
https://marsee101.blog.fc2.com/tb.php/318-7a6b959e
この記事にトラックバックする(FC2ブログユーザー)