• ベストアンサー

FPGAの入力インピーダンスについて

FPGA(spatan3のxc3s200)の入力インピーダンスがどの程度の値なのかご存知の方いらっしゃいましたら、 教えていただけないでしょうか? FPGAの入力インピーダンスはものすごく大きいものだと思っていたのですが、 Vp-p=3.3Vの信号を50Ω(同軸ケーブル)の抵抗を介してFPGAに入力し、 FPGAの入力部の電圧をオシロスコープで測定した結果、1.8Vほどまで電圧降下していました。 オシロスコープの内部抵抗は1MΩですので、FPGAの入力インピーダンスが 極端に小さく、 その結果分圧が起きて、電圧降下が起きたと考えています。 なので、データシートで確認をしようと思ったのですが、入力インピーダンスの項目がありませんでした。 どなたかご存知の方いらっしゃいましたら、教えていただけると幸いです。

noname#137276
noname#137276

質問者が選んだベストアンサー

  • ベストアンサー
  • tance
  • ベストアンサー率57% (402/704)
回答No.5

No.2 tanceです。 このような場合はいくつかの方法がありますが、信号が周期的な 信号であって、途中で止まったり"H"と"L"の密度が変化しない のであれば、コンデンサ結合が簡単です。(クロックのような信号) FPGAの入力には例えば、100kΩの抵抗を3.3Vへ1本と、同じく 100kΩをGNDへ1本つないでおきます。(これで1.65Vを作る) そこへコンデンサ(セラミックコンデンサの10uFくらいが 適当か)で信号源をつなぐと、信号が来ているときはちゃんと 動きます。 そうでなくて、ビットストリームのように"H"と"L"の密度が 変わる信号だったり、信号が止まったりすると、ちゃんとした レベルシフト回路が必要になります。 レベルシフト回路にはたくさんの方式があります。ただ、信号源の 性質にも拠るので、どれが良いかは単純には決まりません。 信号のタイミングが重要なのか、周波数だけが問題なのか、 立ち上がりと下がりではどちらが重要か、信号源のインピーダンスは どうか・・・など具体的にならないと最適な設計はできません。 急場しのぎであれば、(信号の性質にもよりますが)大容量コンデンサ で結合して、FPGA側にはショットキダイオードを使ったオーバー 電圧保護回路を設けると、よほど低周波でないかぎりたいてい 動きます。 それでひとまず時間稼ぎができるなら、その間にちゃんとした レベルシフト回路を作るのが良いと思います。

noname#137276
質問者

お礼

丁寧な説明で画像まで作っていただきありがとうございます。 おかげで、しっかりと電位をあげることが出来ました。 ありがとうございました。

その他の回答 (4)

回答No.4

>FPGAの入力インピーダンスが極端に小さく、 >その結果分圧が起きて、電圧降下が起きたと考えています。 もしも,本当にそんなにインピーダンスが低かったら他の会社,他の人はどうやって使っているでしょう?消費電流もものすごいことになってしまって,ちょっと想像しただけでも使い物になりませんよね? 他の信号と短絡している,あるいは入力のつもりが出力に設定して'L'レベル出力が出ている・・I/O用のVCCが3.3V未満になっている/供給されていないところにつないでいる・・など,使い方が間違っているという方向から疑ってかかったほうがよろしいかと.

noname#137276
質問者

お礼

回答ありがとうございます。 調べてみて分かったのですが、Vp-p=3.3Vの信号は基準電圧が0Vなのですが、 FPGAへの入力は0~3.3Vとなっております。 Highが2.5V~3.3V、Lowが0V~0.7Vです。 そのため、何か不具合が発生していたと思われます。 ですから、1.65Vの直流バイアスをFPGAの入力部に付加してあげなければいけないと思うのですが、 何かよい方法はあるでしょうか?

回答No.3

FPGAのピンがLow出力して、出力同士が衝突しているとは考えられませんか? 「Vp-p=3.3Vの信号」を出力するデバイスも、FPGAも出力電流を制限する回路が内蔵されていると思いますので High出力とLow出力が衝突すると大体中間くらいの電圧になると思います。 一度、FPGAのピンアサインやFPGA内部回路で出力に設定していないか などを確認されてはいかがでしょうか。

noname#137276
質問者

お礼

回答ありがとうございます。 調べてみて分かったのですが、Vp-p=3.3Vの信号は基準電圧が0Vなのですが、 FPGAへの入力は0~3.3Vとなっております。 Highが2.5V~3.3Vで、Lowが0~0.7Vです。 そのため、何か不具合が発生していたと思われます。 ですから、1.65Vの直流バイアスを付加してあげなければいけないと思うのですが、 何かよい方法はあるでしょうか?

  • tance
  • ベストアンサー率57% (402/704)
回答No.2

間違いなく入力にアサインされていれば、一般的に言うインピーダンス は高いですが、周波数が高いといわゆる抵抗よりも容量の方が 効いてきます。Spartan3の入力容量は仕様では3pF~10pFとなって います。(グローバルクロックはもっと低容量かも) 同軸ケーブルの50Ωの抵抗をつなぐ、という意味がよくわかりません。 抵抗を接続しているのでしょうか。それとも同軸ケーブルだけを 接続しているのでしょうか。 周波数が高いと同軸ケーブル~FPGAの接続のしかたによっても 信号のレベルが落ちます。この石は600MHzくらいでもトグルする ようですが、もし信号周波数が500MHzくらいあったとすると、 入力容量の影響は大きいです。 そんなに高周波ではなくても、同軸ケーブルの端部を長く剥いている と信号レベルが落ちます。プリント基板のパターンにも影響されます。 試しに100kHzくらいのデューティ比50%の信号を入れてみてください。 これでも減衰するようだと、何かが根本的におかしいです。 (本当に入力?) 100MHzを越えるとオシロのプローブの当たり方でも観測される 信号レベルや波形は相当変わります。長いGND線や、プローブの 先を普通の線で延長したりするとテキメンです。 周波数と、50Ωの抵抗を入れているのかどうかを教えてください。

noname#137276
質問者

お礼

回答ありがとうございます。 信号周波数は250kHzですので容量の心配はないですね。 調べてみて分かったのですが、Vp-p=3.3Vの信号は基準電圧が0Vなのですが、 FPGAへの入力は0~3.3Vとなっております。 そのため、何か不具合が発生していたと思われます。 ですから、1.65Vの直流バイアスを付加してあげなければいけないと思うのですが、 何かよい方法はあるでしょうか?

回答No.1

spatan3のxc3s200について知っているわけではありませんが、通常FPGAの入力インピーダンスは非常に高いはずです。(書かれているような現象は起こらないレベルです) ですので、今回の問題が発生している原因は、I/Oポートの設定が間違っているのではないかと考えられます。 または、このFPGAのI/Oポートの電圧を1.5Vとしていることはありませんか? 電源電圧より高い電圧が入力されると、内部の保護素子(ダイオード)により電源電圧+0.3V程度に電圧がクランプされます。 もしこの場合、50Ωの抵抗が電流制限の役割を果たしてくれますが、FPGAがダメージを受けている可能性もあります。

noname#137276
質問者

お礼

回答ありがとうございます。 >通常FPGAの入力インピーダンスは非常に高いはずです。 やはりそうなのですか…。 FPGAのI/Oポートは3.3V用に設定しております。 直流電圧源から、3.3Vの電圧を直接かけてみましたが、 しっかりと3.3Vでており、動作も正常です(特にFPGAがダメージを受けているような感じはありません)。

関連するQ&A

  • スイッチングレギュレータ(MAX1837)のPSRRと入力インピーダンスについて

     スイッチングレギュレータ(MAX1837)を用いて、15V→3.3Vの電圧に変換したいと考えております。ただし、この15VにはVp-p=1.5Vほどのノイズがのっており、その際どの程度ノイズを除去できるのか知りたいのですが、PSRR(電源電圧除去比)の項目がデータシートにのっておりません。  また、15Vの電圧源の内部インピーダンスが50Ωとなっており、スイッチングレギュレータの入力インピーダンスによっては電圧降下を起こしてしまうと考えられるのですが、入力インピーダンスの項目ものっておりません。  どなたか、ご存知の方いらっしゃいましたら、教えていただけると幸いです。

  • オシロの入力インピーダンスについて

    私の使っているオシロスコープは入力インピーダンスを 50Ωと1MΩに切り替えることができるのですが、切り替えたらどうなるのかよくわかりません。 マニュアルには観測できる垂直軸(電圧)の領域が1MΩのほうが大きいとしか書いてないです。 同じシグナルを入力したときに50Ωと1MΩとでは波形が違うみたいです。 切り替えると何が起こるのでしょうか? よろしくお願いします。

  • TDA7000の入力インピーダンスについて

    30年以上前に登場したTDA7000というワンチップFMラジオ用のICを使って、60MHz帯の受信機を作っています。 アンテナは75Ωの同軸ケーブルを使って、データシートから抜粋した下図の回路でICの13PINに入力したいのですが、13PIN-GND間の60MHz帯におけるインピーダンスはどのくらいなのか疑問に思いました。                            図では直列に75Ωの抵抗が入っていますが、この抵抗は信号発生器内の内部抵抗でしょうか? であるなら、13,14PINに接続されたコンデンサのインピーダンス分も含め、入力インピーダンスは、75Ωくらいなのでしょうか? 一方でIC内部は13PINと14PINの間に700Ωの抵抗が2本直列接続されており、接続点に1.4Vが供給されています。なんとなくですが、13PIN-GND間のインピーダンスは700Ωくらいではないかとも考えました。 実際のところどのくらいなのでしょうか? ご教授よろしくお願いします。

  • インピーダンスの計算について

    インピーダンスについての計算なのですが、 オシロスコープなどを使い電圧などを測定したのですが、計算してみると 測定値と理論値が合いません。 というか理論値での計算があまりわかりません。 回路は交流電源に1KΩの抵抗器とL=1mHのコイルを直列に接続し、1KHzの周波数をかけた回路です。 実験では、1KΩの周波数でVpp10Vの電圧を発振機から流したときに 抵抗にかかる電圧は9.83V、コイルにかかる電圧は81.2mVという測定結果が得られました。 また抵抗器にかかる電圧を抵抗器の抵抗値(Vr/R)で割って、電流が9.8*10^-3Aという値が得られました。直列接続をしているので、コイルに流れる電流も9.8*10^-3Aということがわかりました。 ここからコイルのインピーダンスを求めるために、コイルにかかる電圧をコイルにかかる電流で割りました。(0.0812/0.0098) 計算したらコイルにかかるインピーダンスZm=8.26Ωとなりました。 ここで、理論値による計算もしてみました。 コイルのインピーダンスはZ=jωL=2πfLとかけるので、2*π*1000Hz*0.001*jと計算し、 そしたら、6.3jΩとでてきました。 しかしjという虚数がついていますので、やはり測定値から得られた8.26Ωと合いません。 どうやったらjを取り除いて計算できるのでしょうか? 一応、虚数を取り除くために次のような計算もしてみました。 抵抗の値が1KΩ、コイルのインピーダンスの値が6.3jなので 三平方の定理で、合成インピーダンスの大きさを計算してみました。 合成抵抗=√(1000^2+6.3^2)=1000.0197という値がでました。 合成抵抗から抵抗器の値を引けば、コイルのインピーダンスの値が得られるはずだと思って 計算したら19.7mΩとなりました。 しかしやはり測定値の8.26Ωとはまったく違います。 いったいどのような計算をすればよいのでしょうか。 ちなみに位相差は実験では108度という値が得られました。 位相差は実験値はだいたいあってますでしょうか? ご教授お待ちしております。

  • 入力インピーダンスと出力インピーダンスについて

    電気回路の初心者です。ネットのサイトで次のような説明を読みました。 入力インピーダンス(抵抗)が大きいと、電流があまり流れません。 電流があまり流れないと言う事は、半導体が作動するのにエネルギーが少なくてすむ (= 電圧降下が小さい) ということです。 作動エネルギーが少ないと、他の回路へエネルギー(電圧)を、振り分けることが出来きます。 以上の理由により、 入力インピーダンスは高いほど良い ということになります。 (略) 出力インピーダンスとはなんでしょうか? マイクのように、信号を発信する側が、もともともっている内部抵抗です。 では、出力インピーダンスは、低いほど良い理由はなぜでしょうか? マイクの出力インピーダンス(内部抵抗)が大きいと、自分自身でエネルギー(電圧)を使ってしまい、小さな音しか出せません。 私にはこの説明が理解できません。 入力インピーダンスの説明では、インピーダンスが大きいと、半導体が作動するのにエネルギーが少なくてすむ、と言っています。 ところが出力インピーダンスの説明では、インピーダンスが大きいと自分自身でエネルギーを使ってしまう、つまり多くのエネルギーが必要だと言っています。どう考えればいいのでしょうか。 何か基本的なことが理解できていない気がしてストレスがたまっています。

  • オシロスコープの入力インピーダンス

    オシロスコープの入力インピーダンスは抵抗RとコンデンサCの並列回路で近似できる。 だが、コンデンサCのために、高い周波数の成分を含む波形はゆがんでしまう。 これを改善するため、プローブには抵抗R1とコンデンサC1の並列回路が組み込まれている。 この並列回路を用いた場合、プローズの両端子間の電圧のフェーザ表示をEpとすると、これとオシロスコープの入力部に生じる電圧のフェーザ表示Vとの関係は  V/Ep=R/(R+R1)×[(1+jωC1R1)/{1+jω(C+C1)×(RR1)/(R+R1)}]・・・(1) となる。 上式の値は回路のパラメタに次の関係  CR=C1R1・・・(2) がある場合は、次のように1より小さい正の実数値になる。 V/Ep=R/(R+R1)・・・(3) 大体↑のようなことが書いてあって、 問題は式(3)を導け って事なんですけど、どーしても解りません・・。 他の問題は解けてるのですが、これ一問だけ詰まってます。 どうか回答よろしくお願いします。 (1)式見難くてごめんなさい・・。

  • インピーダンスについて

    R.C並列回路のインピーダンスの意味を教えて下さい。例として6.6kV交流電圧回路(対地電圧6600/√3=3810V)における絶縁抵抗値2000MΩ、静電容量0.0045μFでの実部Ωと虚部-Ωの意味合い。(R.C並列の計算結果実部250.18Ω、虚部-707355.2Ω)又、絶縁抵抗測定MΩ(直流)とのΩとの関連等、わかりません。

  • 出力インピーダンスをはかる方法と抵抗値の決定方法

    出力2kVの直流電源を入手しました。 その電源にはモニタ出力(Vm,Im)が付いているので、これにDPMを付けて電圧を表示させようと考えています。 モニター電圧は出力2kVのとき2Vの仕様で、DPMは入力電圧は200mVでフルスケールです。 そこでモニタ電圧を9:1に分圧しようと思っていますが、 9kΩと1kΩ 450Ωと50Ω 9MΩと1MΩ などいろいろな組み合わせがあって、どれが最適なのか理解できません。 さらに表示の精度をあげたいので、モニタ出力のインピーダンスを知りたいのですが、 DPMの入力インピーダンスはカタログに1000MΩと書かれていたのですが、 電源のカタログには書かれていませんでした。 デジボルしか道具がない状態ですが、なんとか測る方法はあるでしょうか。 ご存知の方、ご教授いただければ幸いと存じます。 よろしくお願いいたします。

  • プリアンプの入力インピーダンス

    アナログ信号をプリアンプに入力させたいのですが、 入力端の処理がわかりません。 検出器から出力されるアナログ信号を、オシロスコープで見るとき、 オシロのインピーダンスを1MΩに設定すると ノイズレベルはパルスハイトに比べ小さく、綺麗な波形に見えるのですが、 50Ωに設定すると、 ノイズレベルがパルスハイトの半分くらいの大きさで、ひどくnoisyです。 このようなアナログ信号を、プリアンプに入力させたいとき、 1MΩでterminateすれば、プリアンプには綺麗な波形の信号が入力されるのでしょうか? それとも、カタログに書かれたプリアンプの入力インピーダンス「90Ω」でterminateした方が よいのでしょうか? いろいろ試してみてはいるのですが、 プリアンプからの出力信号をオシロスコープで見られないので、 どれが一番ふさわしい扱いなのか、自信がありません。 # インピーダンスに関しても、よくは分からないのですが例えば以下を参考にしました。 # http://oshiete1.goo.ne.jp/qa607000.html # 使っているプリアンプは以下です。 # http://www.repic.co.jp/contents/products/repic/seihin/rpa_130.html よろしくお願いします。

  • RC直列回路の入力電圧と出力電圧の誤差

    RC直列回路の入力電圧と出力電圧の誤差 RC直列回路に2Vの方形波を入力したのですが、出力波形は1.2V程度までしかあがりませんでした。 オシロスコープで波形を確認したのですが、どうやらオシロスコープの入力インピーダンスに関係があるようです。 入力インピーダンスを1MΩとして入力波形と出力波形に差が出た事を考察しなければならないのですが、いまいちよくわかりません。 どうやって考えていったらよいのでしょうか?