双方向レベル変換IC ADG3308が発振する
なひたふは最近レベル変換ICとしてAnalog DevicesのADG3304やADG3308というの使ったのですが、このたびADG3308が発振するという現象に遭遇してハマったので、悪い事例(Bad knowhow)として紹介します。
ADG3304/3308は双方向のレベル変換ICで、FPGAの3.3Vを周辺ICの1.8Vなどと変換してくれたり、ADC用のコントロール信号のための信号分離に活用することができるとても便利なICです。対応している電圧は1.15V~5.5Vとワイドです。
最大の特徴はなんといっても双方向バッファでありながら自動切換えであること。DIRピンがないのです。そのため1ピンごとに双方向に切り替え可能なバッファをしてくれます。
動作原理を簡単に言えば、信号のエッジを見て動作しているようです。
ADG3308を使った回路としてこのような回路を作りました。
ところが、この回路は発振しました。
データシートによるとVCCA<VCCYでなければならないそうで、つまりAの側の電圧はYよりも常に低くないといけないのです。(またENはY側の電圧基準で動きますので、上の回路はその意味でもよくない)
そのことを知らずにFPGAのI/O 3.3VをADCの5Vに変換しようとしたら見事に発振しました。しかも300mAくらいの電流を消費して基板が熱くなります。大変間違った設計でした。
発振の波形をご覧ください。
最初はADC用のクロックが出ているな・・と思ったのですが、これはCS信号でした。
Hを出力しているだけなら発振しないようですが、3.3VのFPGA側がLレベルになると発振します。
今回は試作としてパターンカットでVCCYにも3.3V電源を供給することで動作できましたが、基板を作り直すときにはVCCY=1.8Vにしないといけないですね。データシートによればVCCY=VCCAでもぎりぎりOKなようですが、Y側の信号入力に3.3V以上(4.0Vとか)がくるとやっぱり発振します。
ADG3308は便利なICなのですが、VCCY≦VCCAの条件には気を付けてください。
| 固定リンク
コメント