バッファICの効果の続き
20Gspsの高速オシロとアクティブプローブで再びバッファの効果を測ってみました。
まず、クロックですがこのくらい変わります。
バッファなしの場合は山と谷の後半でデータバスが遷移するのでクロストークが生じて波形が乱れます。
データバスのほうは他のデータバスが遷移するためクロストークで立ち上がりや立下りがぼやけます。
なお、等長配線をするべきかどうかというと、それはあまり気にしなくても大丈夫です。電気信号は基板上を1nsに15cm進むのですが、仮に3cmの配線長の差があったとしても200psしか違いません。
電位差の有無によって隣の配線とのインピーダンスも変わってくるし、隣の配線がL→Hに遷移したときのクロストークによって別の配線がL→Hに立ち上がる時間も変わってきます。
こういったシングルエンド信号では、「データはバラバラに遷移するけど全部落ち着いたころにクロック」がやってくるというしくみで動いています。あまり等長配線には気を使わなくてもよく、クロックだけ気を付けば動くのが普通です。
隣の配線がLかHかということでも隣の配線とのインピーダンスが変わるので、信号が伝わる時間も変わってきます。つまり、等長とインピーダンスは悩んでも無駄です。シングルエンドでは仕方がないのです。
ただ、今回のDACはFPGAからの距離が長いため、反射とクロストークによって波形が乱れてしまい、スウィートポイントが見つけにくくなっています。特にたくさんのビットが遷移するときには残されたビットへのクロストークによって閾値を超えてしまってデータが化けるのでしょう。
逆に言えば、シングルエンドのLVCMOSパラレルでデータを伝送できるのはこのくらいの周波数が限界なのではないかなと思います。
そもそも、FPGAと接続するICが普通のディジタルICなら信号のスルーレートや電流を上げれば250MHzくらいは余裕で行くのですが、今回はDACなのです。FPGAからの強い信号を受けるとノイズになってアナログに漏れてきます。
それに、パラレル・シングルエンドのディジタル信号は帰りはGNDを通って帰るわけです。AGNDと単純に分離したってノイズが劇的に減るわけではありません。
まとめると、DACのノイズは次のような理由で生じます。
- DAC ICの端子で受けたディジタル信号がアナログ側に漏れてきてノイズになる
- ディジタル信号のリターンでGNDが乱されてノイズになる
- 反射とクロストークで波形が乱れて、正しいデータが読み取られずに変な値が出る
- ディジタル信号のパワーを弱めると遷移に時間がかかり、正しいデータが読み取られずに変な値が出る
この問題を解決するにはFPGAのすぐ近くにDACを置くことなのですが、それはそれで別のノイズの問題を引き起こします。
FPGAとDACを単純につないだだけではうまくいきません。
簡単なように見えて、綺麗に正しく高速に動かすのは意外と難しいことなのです。
| 固定リンク
コメント