はじめに

こんにちは。 最近、電気って面白いと感じるようになったトットです。

 

前回の異なる電圧レベルのディジタル IC をつなぐには・・・・という、質問に対し、

 

私 : 『 FPGA 出力バッファの  Open Drain を使用し出力をハイインピーダンス状態にし、プルアップすることによって、出力電圧とは関係なく入力側の閾値を満たすことができます。 』と伝えたところ、

先輩 : 『 ハイインピーダンスの出力の意味に関しては、正解だけど、50点 ! 』

 

先輩 : 『 これだと、 Cyclone ® IV  の Absolute Maximum を超えてしまうよ ? の Absolute Maximum を超えるとデバイスはどうなるんだっけ ? 』

 

私 : 『 デバイスを破損させることになります。 』

 

異なる電圧レベルのディジタル IC をつなぐには・・・と考えていると・・・

 

先輩 : 『  Open Drain を使ってみ ? 』

 

私 : 『 Open Drain・・・そうか!基板にトランジスタを付け加えて Open Drain にすればいいのか!! 』

基板にトランジスタを付けて Open Drain

ちなみに電流の流れは・・・

基板にトランジスタを付けて Open Drain にすることによりデバイスを破損せず、異なる電圧レベルのディジタル  IC でも接続できます。

 

なるほど、だからハイインピーダンの状態が必要なのかと感心しつつ、VIHが低いインターフェースの時はどうしたらいいのだろう?と疑問に思ったので調べてみました。

VIH が低いインターフェースの時は・・・・

 

 I/O  バンクで  VOH  のレベルを選択し、電圧レベルを下げ閾値を満たします。

これで異なる電圧レベルのディジタル  IC  をつなぐ時も安全に  FPGA  を取り扱うことができるとホッとしたトットでした。

今回のまとめ

 FPGA の出力電圧値が受信側の汎用  IC  の入力電圧値よりも低い場合

基板にトランジスタを付け Open Drain (出力はハイインピーダンス) + pull up により電圧レベルを上げる。もしくは、レベルシフタを使用。

 

 FPGA の出力電圧値が受信側の入力電圧値よりも高い場合

 I/O バンクから規格を選択により電圧レベルを下げる。