Virtex-6 FPGA と 3.3V I/O 規格のインターフェイス, アプリケーション

ア プ リ ケーシ ョ ン ノ ー ト : Virtex-6 FPGA
Virtex-6 FPGA と 3.3V I/O 規格の接続
著者 : Austin Tavares
XAPP899 (v1.0) 2010 年 1 月 5 日
は じ めに
Virtex®-6 フ ァ ミ リ のすべてのデバ イ ス は 3.3V I/O 規格 と の互換性を持ち、 こ の規格をサポー ト し てい
ます。 こ のアプ リ ケーシ ョ ン ノ ー ト では、 Virtex-6 デバ イ ス を 3.3V シ ス テ ムに接続す る 方法について
説明 し ます。 こ こ では、 入力、 出力、 お よ び双方向バ ス を取 り 上げ、 シ グナル イ ン テ グ リ テ ィ の問題や
設計ガ イ ド ラ イ ンについて も 解説 し ます。
Virtex-6 FPGA の I/O は高い性能 と 柔軟性を備え る よ う 設計 さ れてい ます。 こ れ ら の I/O は均質、 つま
り すべての I/O が同 じ 機能お よ び特長を持ち ます。 こ の高性能 I/O に よ っ て、 幅広いアプ リ ケーシ ョ ン
に最大限柔軟に対応で き ます。 Virtex-6 FPGA の I/O を 3.3V デバ イ ス に接続す る 場合、 い く つかのオ
プシ ョ ンがあ り ます。
イン ターフ ェ イス
接続オプ シ ョ ン
イ ン タ ーフ ェ イ ス の接続オプシ ョ ンは、 性能、 機能、 お よ び信号の種類 (入力、 出力、 双方向) に よ っ て
異な り ます。 こ のアプ リ ケーシ ョ ン ノ ー ト では、 外部 コ ン ポーネ ン ト を使用 し ない場合 と 、 追加抵抗、
FET ス イ ッ チ、 レベル変換器を使用す る場合それぞれについて説明 し ます。
外部 コ ンポーネ ン
ト な し の場合
3.3V レ シーバーの負荷容量お よ び VIH レ ベルに も よ り ま すが、 Virtex-6 FPGA はほ と ん ど の 3.3V ロ
ジ ッ ク を外部 コ ン ポーネ ン ト を追加せずに駆動で き ます (図 1)。 オーバーシ ュ ー ト / ア ン ダーシ ュ ー ト を
最小限に抑え る 方法の 1 つ と し て、 FPGA の出力駆動 イ ン ピーダ ン ス と 伝送 ラ イ ンの特性 イ ン ピーダ ン
ス を整合 さ せます。 Virtex-6 FPGA では、 LVCMOS25 6mA/8mA ド ラ イ バー、 ま たは VRN と VRP に
50Ω 抵抗を接続 し た LVDCI25 ド ラ イ バーを 50Ω の特性 イ ン ピーダ ン ス に整合 さ せます。 ド ラ イ バー
を 伝送 ラ イ ン に整合 さ せ る と 、 FPGA は 5KΩ 負荷で VOH を VCCO (2.5V) に駆動 し ま す。 標準的な
LVCMOS 3.3V タ イ プの レ シーバーの VIH し き い値は 2.0V です。 VOH = 2.5V で VIH = 2.0V の場合、
同時 ス イ ッ チ ン グ ノ イ ズ (SSN)、 イ ン ピーダ ン ス 不連続に よ る 反射、 ク ロ ス ト ー ク 、 シ ン ボル間干渉
(ISI) に対 し て 500mV のマージ ンが確保 さ れます。 VCCO を大 き く す る と さ ら にマージ ン を増やす こ と
がで き ますが、 電源レ ギ ュ レー タ の出力許容差に対す る 要件 も 厳 し く な り ま す。 最大許容差 ±2% の レ
ギ ュ レー タ を選択すれば、 VCCO を 2.575V に設定で き ます。 こ の許容差 と VCCO の場合、 レ ギ ュ レー
タ の動作電圧範囲を推奨値の 2.625V 未満に抑え る こ と がで き ます。VCCO の値が大 き く な る こ と で、シ
ス テ ムのマージ ンは 75mV 増加 し ます。
X-Ref Target - Figure 1
3.3V
Receiver
FPGA
Driver
x899_01_112509
図 1 : 外部コ ンポーネ ン ト を使用 し ない場合の例
伝送 ラ イ ン の充電時間は レ シーバーの負荷容量 と ド ラ イ バーの出力 イ ン ピ ーダ ン ス に よ っ て決 ま り ま
す。 こ のアプ リ ケーシ ョ ン ノ ー ト では、 出力 イ ン ピーダ ン ス と 伝送 ラ イ ンの特性 イ ン ピーダ ン ス が整合
し てい る こ と を前提 と し てい ます。 ド ラ イ バーが整合 し ていない場合は、 HSPICE ま たは IBIS モデル
を使用 し て充電時間お よ びオーバーシ ュー ト / ア ン ダーシ ュ ー ト を計算 し て く だ さ い。
© Copyright 2010 Xilinx, Inc. XILINX, the Xilinx logo, Virtex, Spartan, ISE, and other designated brands included herein are trademarks of Xilinx in the United States and other
countries. All other trademarks are the property of their respective owners.
XAPP899 (v1.0) 2010 年 1 月 5 日
japan.xilinx.com
1
プルダウン抵抗を使用する抵抗分割回路
充電時間は、 式 1 で定義 し ます。
τ = Z DRIVER × C RECEIVER
式1
5τ が経過す る と 、 レ シーバーの電圧は VCCO (2.5V) の 99% に達 し ます。 式 1 で ド ラ イ バーの出力 イ
ン ピーダ ン ス を 50Ω、 レ シーバーの容量を 9pF と す る と 、 レ シーバーのエ ッ ジ レ ー ト は 2.25ns と な
り ます。 こ の方法で十分なマージ ン を確保で き ない場合、 ま たは レ シーバーの入力容量が大 き すぎ て タ
イ ミ ン グ要件を満たす こ と がで き ない場合は、 別の方法を検討す る 必要があ り ます。
プルダウ ン抵抗を
使用する抵抗分割
回路
シ ンプルな抵抗負荷を使用す る こ と に よ っ て、過度の信号振幅を FPGA が耐え ら れ る レベルま で抑え る
こ と がで き ます。 図 2 の よ う に、 伝送 ラ イ ンか ら GND へ抵抗を配置する と 、 High 電圧のみ減衰 さ れま
す。 こ の ソ リ ュ ーシ ョ ンの場合、 プルダ ウ ン抵抗が伝送 ラ イ ンの イ ン ピーダ ン ス と 整合 し ていない こ と
が原因で、 理想的なシ グナル イ ン テ グ リ テ ィ を達成で き ない こ と があ り ます。 こ の よ う なプルダ ウ ン抵
抗は、 レ シーバーの近 く に配置す る こ と で不要な反射を削減で き ます。
3.3V
Driver
FPGA
Receiver
X-Ref Target - Figure 2
RPULLDOWN
x899__02_112509
図 2 : プルダウン抵抗の例
プルダ ウ ン抵抗の正 し い値を算出す る には、 ド ラ イ バーの出力 イ ン ピーダ ン ス値が必要です。 こ の値を
求め る には、 値が既知の抵抗を ド ラ イ バーの出力に接続 し ます。 図 3 に示す よ う に抵抗 ノ ー ド で ド ラ イ
バー出力をプ ロ ーブ し 、 ロ ジ ッ ク 1 を駆動 し てい る 間の DC 電圧レベルを計測 し ます。
X-Ref Target - Figure 3
Probe
3.3V
Driver
RLOAD
x899_03_112509
図 3 : プ ローブ接続 し た回路の例
ド ラ イ バー と 負荷は図 4 に示す よ う な分圧器 と し て表す こ と がで き、出力 イ ン ピーダ ン ス は式 2 か ら 求
め る こ と がで き ます。
( V CC – V PROBE )
Z DRIVER = R LOAD ×  ----------------------------------------

V
式2
PROBE
XAPP899 (v1.0) 2010 年 1 月 5 日
japan.xilinx.com
2
プルダウン抵抗を使用する抵抗分割回路
X-Ref Target - Figure 4
VCC
ZDRIVER
VPROBE
RLOAD
x899_04_112509
図 4 : プ ローブ負荷を使用 し て ロ ジ ッ ク 1 を駆動する ド ラ イバー
ド ラ イ バーの出力 イ ン ピーダ ン ス を算出後、式 3 を用いてプルダ ウ ン抵抗の適正値を求め ます。図 5 に、
こ の回路を示 し ます。
V RECEIVER × Z DRIVER
R PULLDOWN =  ------------------------------------------------------- V –V

CC
RECEIVER
式3
X-Ref Target - Figure 5
VCC
ZDRIVER
FPGA
Receiver
RPULLDOWN
x899_05_112509
図 5 : プルダウン抵抗を使用 し て ロ ジ ッ ク 1 を駆動する ド ラ イバー
た と えば、 FPGA の VRECIEVER が 2.625V で ZDRIVE が 50Ω の 場 合 、 RPULLDOWN は 194Ω と な
り ま す 。 こ の方法で、 ラ イ ン電圧を VRECIEVER 以下に制限す る のに必要なプルダ ウ ン抵抗の適正な近
似値を求め る こ と がで き ます。 ド ラ イ バーは一定の法則で動作 し ない可能性があ る ため、 算出値 と 実際
の値が一致 し ない こ と があ り ます。 し たがっ て、 HSPICE モデルを使用 し てシ ミ ュ レーシ ョ ン を実行す
る こ と を推奨 し てい ます。IBIS モデルでは、シ ミ ュ レーシ ョ ン での終端値の精度が前提 と な っ てい ます。
XAPP899 (v1.0) 2010 年 1 月 5 日
japan.xilinx.com
3
ト ーテムポール型の抵抗分割回路
ト ーテムポール型
の抵抗分割回路
図 6 に示す よ う に 2 つの抵抗を用い る ト ーテ ム ポール型 ソ リ ューシ ョ ン では、 終端を伝送 ラ イ ンに整合
さ せ る こ と がで き ます。 こ れに よ っ て、 反射が最小限に抑え ら れます。 プルア ッ プ抵抗お よ びプルダ ウ
ン抵抗は伝送 ラ イ ン上の任意の位置に接続で き ますが、 こ れ ら は常に対に し て同 じ 位置に配置す る 必要
があ り ます。 プルア ッ プ抵抗 と プルダ ウ ン抵抗を レ シーバー近 く に配置す る と 、 反射が最小限にな り ま
す。
X-Ref Target - Figure 6
VCC
RPULLUP
FPGA
Receiver
VBIAS
RPULLDOWN
x899_06_112409
図 6 : 例 : ト ーテムポール型抵抗の ト ポグ ラ フ ィ
使用す る プルダ ウ ン抵抗が 1 つだけの場合 と 異な り 、 ト ーテ ム ポール型の ソ リ ュ ーシ ョ ン では各 I/O に
DC バ イ ア ス電流が必要です。 立ち上が り エ ッ ジ と 立ち下が り エ ッ ジ間で ド ラ イ バーの出力 イ ン ピーダ
ン ス のバ ラ ン ス が と れてい る 場合、 電圧バ イ ア ス は、 レ シーバーの VIH お よ び VIL に対 し て VOH と
VOL のマージ ン が同 じ 大 き さ の と き に最適にな り ます。 図 7 に示す回路の場合、 こ のバ イ ア ス ポ イ ン
ト は式 4 か ら 求め る こ と がで き ます。
X-Ref Target - Figure 7
VCC
VCC
RPULLUP
ZDRIVER
FPGA
Receiver
VBIAS
RPULLDOWN
ZDRIVER
x899_07_120709
図 7 : テ ブナン並列終端を配置 し た ド ラ イバーの回路図
V CCDRIVER × ( V IL – margin )
V BIAS = ----------------------------------------------------------------------------------------------------------------------V CCDRIVER + ( V IL – margin ) – ( V IH + margin )
式4
こ の例で、 3.3V ド ラ イ バー と VIH = 1.7V お よ び VIL = 0.7V の LVCMOS25 レ シーバーを使用す る と
し ます。 300mV のマージ ンが必要 と 仮定する と 、 最適な電圧バ イ ア ス は 0.776V です。 式 5 に示す よ う
に、バ イ ア ス ポ イ ン ト を こ の値にす る と 最小の出力 イ ン ピーダ ン ス で ロ ジ ッ ク 1 と ロ ジ ッ ク 0 の両方に
対称的なマージ ン を確保で き ます。
3.3 × ( 0.7 – 0.3 )
----------------------------------------------------------------------- = 0.776
3.3 + ( 0.7 – 0.3 ) – ( 1.7 + 0.3 )
式5
電圧バ イ ア ス の算出後、 式 6 か ら プルア ッ プ抵抗お よ びプルダ ウ ン抵抗の値を求め ます。
V CC × Z 0
R PULLUP = ---------------------V BIAS
Z 0 × R PULLUP
R PULLDOWN = ----------------------------------R PULLUP – Z 0
式6
こ こ で、 Z0 は伝送 ラ イ ンの特性 イ ン ピーダ ン ス です。
XAPP899 (v1.0) 2010 年 1 月 5 日
japan.xilinx.com
4
ト ーテムポール型の抵抗分割回路
こ の例で VCC = 2.5V で伝送 ラ イ ンが 50Ω と す る と 、プルア ッ プ抵抗お よ びプルダ ウ ン抵抗の値はそれ
ぞれ 158Ω と 73Ω にな り ます (式 7)。
2.5 × 50
158 = ------------------0.776
50 × 158
73 = --------------------158 – 50
式7
前述の回路を使用す る 場合は、 レ シーバーの VIH お よ び VIL し き い値に達す る よ う に、 出力 イ ン ピーダ
ン ス を小 さ く す る 必要があ り ます。 ま た、出力 イ ン ピーダ ン スは、 レ シーバーの推奨動作電圧 (VIHMAX)
を超えない大 き さ にす る 必要があ り ます。 Virtex-6 FPGA では、 VIHMAX = 2.625V です。
( V CCDRIVER – V BIAS ) × Z 0
- – Z0
Z DRIVER ( MAX ) ≤  ----------------------------------------------------------------- ( V + margin ) – V

式8
( V CCDRIVER – V BIAS ) × Z 0
- – Z0
Z DRIVER ( MIN ) ≤  -----------------------------------------------------------------

V IHMAX – V BIAS
式9
IH
BIAS
こ の例では、最大 ド ラ イ バー イ ン ピーダ ン ス は 53Ω で、最小 ド ラ イ バー イ ン ピーダ ン ス は 18Ω で す 。
( 3.3 – 0.776 ) × 50
Z DRIVER ( MAX ) ≤  --------------------------------------------- – 50 = 53Ω
 ( 1.7 + 0.3 ) – 0.776
式 10
( 3.3 – 0.776 ) × 50- – 50 = 18Ω
Z DRIVER ( MIN ) ≤  ------------------------------------------ 2.625 – 0.776 
式 11
53Ω では、 ロ ジ ッ ク 1 と ロ ジ ッ ク 0 にち ょ う ど 300mV のマージ ンがあ り ます。 出力 イ ン ピーダ ン ス
が低下す る と 、 ロ ジ ッ ク 1 のマージ ンが ロ ジ ッ ク 0 のマージ ン よ り も 速いペース で増加 し ます。 ロ ジ ッ
ク 1 と ロ ジ ッ ク 0 の正確なマージ ンは、 式 12 お よ び式 13 か ら 求め る こ と がで き ます。
( V CCDRIVER – V BIAS ) × Z 0
- + V BIAS – V IH
Logic 1 Margin = -----------------------------------------------------------------Z 0 + Z DRIVER
式 12
V BIAS × Z 0
- – V BIAS
Logic 0 Margin = V IL + --------------------------------Z +Z
式 13
0
DRIVER
こ こ で、 ZDRIVER は ド ラ イ バーの出力 イ ン ピーダ ン ス です。
こ の例で ド ラ イ バーの出力 イ ン ピーダ ン ス を 53Ω と する と 、各 ロ ジ ッ ク のマージ ンは式 14 お よ び式 15
か ら 求め る こ と がで き ます。
( 3.3 – 0.776 ) × 50- + 0.776 – 1.7 = 0.301 mV
Logic 1 Margin = ------------------------------------------50 + 53
式 14
× 50 – 0.776 = 300 mV
Logic 0 Margin = 0.7 + 0.776
------------------------50 + 53
式 15
ト ーテ ム ポール終端の各 I/O で消費 さ れ る バ イ ア ス電力は、 式 16 か ら 算出 し ます。
2
V CC
Power = ------------------------------------------------------------R PULLDOWN + R PULLUP
式 16
各 I/O のバ イ ア ス電力は 27mW と な り ます。
2
2.5
Power = --------------------- = 27mW
73 + 158
式 17
VBIAS への並列終端を使用す る 場合、 電源レールを追加す る こ と で、 DC バ イ ア ス な し で同 じ 性能を達
成で き ます (図 8)。 し たが っ て、 入力数が多いアプ リ ケーシ ョ ンほ ど、 こ の ソ リ ューシ ョ ンに よ っ て高
い電力効率を期待で き ます。
XAPP899 (v1.0) 2010 年 1 月 5 日
japan.xilinx.com
5
直列 FET ス イ ッ チ
X-Ref Target - Figure 8
VBIAS
3.3V
Driver
FPGA
Receiver
Z0
x899_08_112409
図 8 : VBIAS へ接続する並列終端の例
直列 FET ス イ ッ チ
FET (電界効果 ト ラ ン ジ ス タ ) バ ス ス イ ッ チ (図 9) は、 簡単に適用で き る 単一方向の ソ リ ュ ーシ ョ ン で
す。 ま た、 シ ミ ュ レーシ ョ ン と 若干の調整を行 う だけで双方向に も 利用で き ま す。 FET バ ス ス イ ッ チ
を使用す る こ と で、 3.3V ロ ジ ッ ク を 2.5V FPGA と 隔て る こ と が可能です。 こ のデバ イ ス は、 伝送 ラ イ
ンに置かれた NMOS ト ラ ン ジ ス タ の よ う に機能 し ます。 図 10 に示す よ う に、 ソ ース は FPGA に、 ド
レ イ ンは 3.3V ロ ジ ッ ク に、 ゲー ト は電源電圧にそれぞれ接続 し ます。
X-Ref Target - Figure 9
2.5V
3.3V
VCCA
FPGA
Data
VCCB
OE
A1
B1
A2
B2
A3
B3
A4
B4
A5
B5
A6
B6
A7
B7
A8
B8
SN74CB3T16210
A9
B9
A10
B10
A11
B11
A12
A13
A14
A15
A16
A17
A18
A19
A20
B12
B13
B14
B15
B16
B17
B18
B19
B20
3.3V
System
Data
x899_09_112409
図 9 : FET ス イ ッ チ
XAPP899 (v1.0) 2010 年 1 月 5 日
japan.xilinx.com
6
直列 FET ス イ ッ チ
X-Ref Target - Figure 10
3.3V
FPGA
VG
Control
Circuit
2.5V
x899_10_120809
図 10 : FET ス イ ッ チの簡略図
ト ラ ン ジ ス タ が線形領域にあ る 場合、 すなわち VGS > VTH かつ VDS < (VGS – VTH) の場合、 信号はデ
バ イ ス を通過 し て伝搬 し ます。 VTH は ト ラ ン ジ ス タ の し き い値電圧です。 VGS < VTH にな る と ト ラ ン
ジ ス タ は遮断状態 と な り 、FPGA の I/O ピ ンが過電圧か ら 保護 さ れます。SN74CB3T16210 では、チ ャ ー
ジ ポ ンプに よ っ てゲー ト 電圧が VCC + VTH に設定 さ れます。 こ れに よ り 、 デバ イ ス を通過す る 信号は
VCC ま でに制限 さ れます (図 11)。 VCC よ り 小 さ い信号は、 その ま まデバ イ ス を通過 し ます。
X-Ref Target - Figure 11
VCC
5.5 V
VCC
IN
VCC
OUT
VCC –1 V
VCC –1 V
0V
0V
Input Voltages
Output Voltages
X899_11_120809
図 11 : SN74CB3T16210 の回路図 と 動作
FET ス イ ッ チ を使用 し た双方向イ ン タ ー フ ェ イ ス
双方向 イ ン タ ーフ ェ イ ス を構築す る場合は、 各レ シーバー側で タ イ ミ ン グお よ び電圧の 2 つのマージ ン
についてシ ミ ュ レーシ ョ ン と 計測を行 う 必要があ り ます。 こ の場合 も 、 まず ド ラ イ バーの出力 イ ン ピー
ダ ン ス と 伝送 ラ イ ン の特性 イ ン ピーダ ン ス を整合 さ せ ま す。 こ れに よ り 、 オーバーシ ュ ー ト / ア ン ダー
シ ュ ー ト の量を最小限に抑え る こ と がで き ま す。 ド ラ イ バーを伝送 ラ イ ン に整合 さ せ る と 、 FPGA は
5KΩ 負荷で VOH を VCCO (2.5V) に駆動 し ます。LVCMOS 3.3V レ シーバーの VIH し き い値は 2.0V で
あ る ため、 VOH – VIH の式に よ り 、 同時ス イ ッ チ ノ イ ズ (SSN)、 イ ン ピーダ ン ス の不連続に よ る反射、
ク ロ ス ト ー ク 、 シ ン ボル間干渉 (ISI) に対 し て 500mV のマージ ン が確保 さ れ ま す。 Virtex-6 FPGA で
は、 LVCMOS25 6mA ま た は 8mA ド ラ イ バ ー、 あ る い は VRN と VRP に 50Ω 抵 抗 を 接続 し た
LVDCI25 ド ラ イ バーを 50Ω の特性 イ ン ピーダ ン ス に整合 さ せます。 VCCO を大 き く す る と さ ら にマー
ジ ン を増やす こ と がで き ますが、 電源レ ギ ュ レー タ の出力許容差に対す る要件 も 厳 し く な り ます。 最大
許容差 ±2% の レ ギ ュ レー タ を選択すれば、 VCCO を 2.575V に設定で き ます。 こ の許容差 と VCCO の場
合、 レ ギ ュ レー タ の動作電圧範囲を推奨値の 2.625V 未満に抑え る こ と がで き ます。 VCCO が大 き く な
る こ と で、 シ ス テ ムのマージ ンが 75mV 増加 し ます。 こ れ ら 2 つの方法を使用 し て も 十分なマージ ンが
得 ら れない場合は、3.3V レ シーバー側にプルア ッ プ抵抗を使用す る と マージ ン を増やす こ と がで き ます
(図 12)。
XAPP899 (v1.0) 2010 年 1 月 5 日
japan.xilinx.com
7
直列 FET ス イ ッ チ
X-Ref Target - Figure 12
3.3V
RPULLUP
3.3V
Receiver
FPGA
Driver
FET Switch
x899_12_112509
図 12 : プルア ッ プ抵抗を使用 し た FET ス イ ッ チの ト ポグ ラ フ ィ
プルア ッ プ抵抗が弱いほ ど、 伝送 ラ イ ンの 3.3V 側の充電にかか る 時間が長 く な り ます。 プルア ッ プ抵
抗に よ っ て ロ ジ ッ ク 1 のマージ ンは大 き く な り ますが、 ロ ジ ッ ク 0 のマージ ンが小 さ く な り ます。 プル
ア ッ プ抵抗は ロ ジ ッ ク 0 の要件を満たすだけの大 き さ が必要ですが、 大 き すぎ る と ロ ジ ッ ク 1 の電圧お
よ び タ イ ミ ン グ マージ ンの要件を満たす こ と がで き ません。図 13 に示す回路図の充電にかか る時間は、
式 18 か ら 求め ら れます。 τ は FPGA (2.5V) の VCC – VOH の 63% です。
τ = R PULLUP × ( C FET + C LOAD )
式 18
X-Ref Target - Figure 13
VCC
RPULLUP
CFET
CLOAD
X899_13_112509
図 13 : FET の 3.3V 側
こ の例では、 360Ω のプルア ッ プ抵抗、 3.3V の VCC、 4.47pF の CFET、 4pF の負荷を使用 し てい ます。
電圧マージ ン を 500 mV 増やすのに必要な時間は 3.05ns です。 プルア ッ プ抵抗の定義後、 I/O 規格の
VIL 要件を満たす よ う に ド ラ イ バー イ ン ピーダ ン ス を算出する 必要があ り ます。 図 14 に示す回路図の
ド ラ イ バーの出力 イ ン ピーダ ン スは、 式 19 か ら 求め ら れます。
( V IL – margin ) × R PULLUP
Z DRIVER = ------------------------------------------------------------------V CC – ( V IL – margin )
式 19
X-Ref Target - Figure 14
VCC
RPULLUP
Data Line
ZDRIVER
x899_14_112509
図 14 : プルア ッ プ抵抗を使用 し て ロ ジ ッ ク 0 を駆動する ド ラ イバー
XAPP899 (v1.0) 2010 年 1 月 5 日
japan.xilinx.com
8
自動レ ベル変換器
先の例で、 VIL (800mV) の要件 を 満たす と 同時に 400mV のマージ ン を 確保す る には、 両方の ド ラ イ
バーの出力 イ ン ピーダ ン ス が 50Ω 以下であ る 必要があ り ます。式 18 お よ び式 19 を使用 し てシ ミ ュ レー
シ ョ ン を行い ます。 プルア ッ プ抵抗は、 伝送 ラ イ ンへの配置に よ っ てはマージ ンに悪影響を与え る こ と
があ り ます。 一般に、 終端 と FET ス イ ッ チを近 く に配置する ほ ど反射は少な く な り ます。
自動レ ベル変換器
図 15 に示す TXB0108 ブ ロ ッ ク は、 自動方向検知機能が付いた レベル変換器です。 こ れは ト ラ フ ィ ッ
ク の方向を自動検知で き る ため、双方向シ ス テ ムに容易に適用で き ます。各ビ ッ ト に個別の方向セ ンサー
が備わ っ てい る ため、 制御信号を追加する 必要はあ り ません。 3.3V ロ ジ ッ ク に接続す る複数の独立 し た
非同期信号を 1 つのデバ イ ス で レベル変換で き ます。 こ のデバ イ スは、 回路に最大で 5.6ns の伝搬遅延
を も た ら し ます。 DC 状態では TXB0108 が弱いプルア ッ プ/プルダ ウ ン を駆動 し て、 ロ ジ ッ ク 状態を維
持 し ます。バ ス の方向が変化 し た場合は、外部 ロ ジ ッ ク に よ っ てデバ イ ス を オーバー ド ラ イ ブで き ます。
デバ イ ス が遷移を検出す る と 適切な PMOS/NMOS がオ ン にな り 、 エ ッ ジ レ ー ト が増加 し ま す。 その
後、 ド ラ イ バーがオ フ にな り 、 弱いプルア ッ プ/プルダ ウ ンに よ っ て ロ ジ ッ ク レベルが維持 さ れます。 終
端な ど の負荷のの大 き な要素が ラ イ ンに存在す る 場合には、弱いプルア ッ プ /プルダ ウ ンに よ っ て ロ ジ ッ
ク エ ラ ーが生 じ る こ と があ り ます。 ロ ジ ッ ク レベルを エ ラ ー回避す る ために、 終端抵抗お よ びバ ス の
負荷は 50kΩ 以上にす る 必要があ り ます。 バ ス の負荷が 50kΩ よ り も 小 さ い場合、 ロ ジ ッ ク ス テー ト は
弱いプルア ッ プ/ プルダ ウ ン で維持で き ま せん。 こ の理由か ら 、 こ の タ イ プの レ ベル変換器は、 I2C や
1Wire な ど のオープン ド レ イ ン バス には適 し てい ません。
X-Ref Target - Figure 15
2.5V
3.3V
VCCA
VCCB
OE
2.5V
FPGA
Data
3.3V
System
TXB0108
A1
A2
A3
A4
A5
A6
A7
A8
B1
B2
B3
B4
B5
B6
B7
B8
Data
x899_15_112509
図 15 : 自動レ ベル変換器
XAPP899 (v1.0) 2010 年 1 月 5 日
japan.xilinx.com
9
CPLD と Spartan FPGA
CPLD と Spartan
FPGA
ザ イ リ ン ク ス は、 3.3V 耐性の さ ま ざ ま なデバ イ ス を提供 し てお り 、 こ れ ら は双方向レ ベル変換アプ リ
ケーシ ョ ンに適 し てい ます。 CPLD は最大 117 個の I/O を備え、 最大 58 ビ ッ ト のバ ス幅をサポー ト し
ます。 Spartan デバ イ ス は最大 530 個の I/O を備え ます。 ど ち ら のデバ イ ス も 、 従来の レベル変換器に
比べてい く つかの利点があ り ま す。 プ ロ グ ラ マブル ロ ジ ッ ク に よ っ て、 こ れ ま で Virtex-6 FPGA のみ
で処理 し ていた タ ス ク の負荷を軽減で き ます。方向を特定する 制御信号は依然 と し て必要ですが、CPLD
や Spartan デバ イ ス は、 汎用の方向レベル変換器 と は異な り 、 任意の ト ラ フ ィ ッ ク 数対制御信号の比を
使用す る よ う プ ロ グ ラ ムで き ます。 CPLD デバ イ ス の Pin-to-Pin 伝搬遅延は 5ns で、 Spartan デバ イ ス
ではデバ イ ス内部の配線に よ っ て異な り ます。
CPLD ま たは Spartan デバ イ ス内部では、Virtex-6 FPGA 側に IOBUF が 1 つ イ ン ス タ ン シエー ト さ れ、
バス上の各ポー ト に も 3.3V ロ ジ ッ ク が イ ン ス タ ン シエー ト さ れます (図 16)。 ト ラ フ ィ ッ ク の (DIR) 方
向は、 FPGA ま たは 3.3V ロ ジ ッ ク のいずれかか ら 信号が送 ら れ る かに よ っ て認識 さ れます。
X-Ref Target - Figure 16
Direction (DIR)
A1
B1
A2
B2
A3
B3
A4
B4
x899_16_112509
図 16 : CPLD または FPGA デザイ ン例
双方向レ ベル
変換器
SN74AVC20T245 は 20 ビ ッ ト の双方向レベル変換器で、 DIR の ロ ジ ッ ク に基づいて A か ら B ま たは
B か ら A へ流れ る デー タ を レベル シ フ ト し ます (図 17)。バス の方向を制御す る DIR 信号を生成す る に
は、 ロ ジ ッ ク が必要です。 こ の信号は、 FPGA ま たは外部 3.3V ロ ジ ッ ク か ら 生成で き ます。
SN74AVC20T245 は 2 つの 10 ビ ッ ト バ ス に分割 さ れ、 それぞれに独立 し た制御信号があ り ます。 10
ビ ッ ト ブ ロ ッ ク に入 る 信号はすべて DIR 信号 と 同 じ 方向であ る 必要があ り ます (図 18)。 ま た、 こ れ ら
のブ ロ ッ ク はそれぞれに出力 イ ネーブル信号が 1 つあ り 、 ポー ト A と ポー ト B を区別 し てい ます。 こ
の変換器を通過す る 際の Pin-to-Pin 伝播遅延は 3.4ns です。
XAPP899 (v1.0) 2010 年 1 月 5 日
japan.xilinx.com
10
設計ガ イ ド ラ イ ン
X-Ref Target - Figure 17
2.5V
3.3V
VCCA
VCCB
DIR1, DIR2
A1
B1
A2
B2
A3 SN74AVC20T245 B3
A4
B4
A5
B5
A6
B6
A7
B7
A8
B8
A9
B9
A10
B10
A11
B11
A12
B12
A13
B13
A14
B14
A15
B15
A16
B16
A17
B17
A18
B18
A19
B19
A20
B20
2.5V
FPGA
Data
3.3V
System
Data
x899_17_112509
図 17 : 20 ビ ッ ト 双方向レ ベル変換器の ト ポグ ラ フ ィ
X-Ref Target - Figure 18
1DIR
1
2DIR
56
1A1
29
1OE
55
2A1
2
To Nine Other Channels
28
2OE
42
15
1B1
2B1
To Nine Other Channels
X899_18_111809
図 18 : レ ベル変換器の回路図
設計ガ イ ド ラ イ ン
表 1 に、 3.3V シ ス テ ム と Virtex-6 FPGA を接続す る 各種 イ ン タ ーフ ェ イ ス オプシ ョ ン を ま と め ます。
目的の条件を考慮 し て最適な ソ リ ューシ ョ ン を選択 し て く だ さ い。
XAPP899 (v1.0) 2010 年 1 月 5 日
japan.xilinx.com
11
ま とめ
表 1 : 設計ガ イ ド ラ イ ンの比較
タ イプ
外付けの
デバイ ス番号
ビッ ト
幅
双方向
入力
出力
バスが
方向信号
(DIR) に
基づいて
制御 さ れる
「外部コ ン
ポーネ ン ト
な し の場合」
N/A
N/A
No
No
Yes(5)
No
N/A
No(1)
0
N/A
「プルダ ウ ン
抵抗を使用
する 抵抗分
割回路」
N/A
N/A
No
Yes
No
No
Yes
Yes
1
N/A
「 ト ーテム
ポール型の抵
抗分割回路」
N/A
N/A
No
Yes
No
No
Yes
Yes
2
N/A
「直列 FET ス SN74CB3T16210
イ ッ チ」
20
Yes(2)
Yes
Yes(2)
No
Yes
Yes
1(4)
0.25ns
「自動レベル
変換器」
TXB0108
8
Yes
Yes
Yes
No
No
No
1
5ns
XC9536XL
16(3)
Yes
Yes
Yes
Yes(3)
Yes
Yes
1
5ns
SN74AVC20T245
20
Yes
Yes
Yes
Yes
Yes
Yes
1
3.4ns
「CPLD と
Spartan
FPGA」
「双方向レベ
ル 変換器」
オープ ン
ド レイン
ド ラ イバー
のサポー ト
終端
サポー ト
コ ンポー
ネン ト 数
伝搬遅延
注記 :
1.
2.
3.
4.
5.
終端を使用で き ますが、 マージ ンが減少 し ます。
双方向をサポー ト 可能です。 負荷が 5KΩ の場合、 500mV のマージ ンがあ り ます。
ビ ッ ト 幅はデバ イ ス サ イ ズに よ っ て異な り ます。
マージ ン を増やすためにプルア ッ プ抵抗を使用す る 場合は、 2 つの コ ン ポーネ ン ト が必要です。
負荷が 5KΩ の場合、 500mV のマージ ンがあ り ます。
ま とめ
Virtex-6 デバ イ ス は 3.3V I/O 規格 と の互換性を持ち、 こ の規格をサポー ト し てい ます。 こ のアプ リ ケー
シ ョ ン ノ ー ト で紹介 し たガ イ ド ラ イ ンに沿っ た設計を行 う こ と で、デバ イ ス の信頼性 と 適切な イ ン タ ー
フ ェ イ ス動作が得 ら れ ます。 Virtex-6 デバ イ ス を使用 し て イ ン タ ーフ ェ イ ス を設計す る 際は、 DC お よ
び AC 入力電圧仕様に従 う 必要があ り ます。
改訂履歴
次の表に、 こ の文書の改訂履歴を示 し ます。
日付
バージ ョ ン
2010 年 1 月 5 日
1.0
XAPP899 (v1.0) 2010 年 1 月 5 日
改訂の説明
初版 リ リ ース
japan.xilinx.com
12
Notice of Disclaimer
Notice of
Disclaimer
Xilinx is disclosing this Application Note to you “AS-IS” with no warranty of any kind. This Application
Note is one possible implementation of this feature, application, or standard, and is subject to change
without further notice from Xilinx. You are responsible for obtaining any rights you may require in
connection with your use or implementation of this Application Note. XILINX MAKES NO
REPRESENTATIONS OR WARRANTIES, WHETHER EXPRESS OR IMPLIED, STATUTORY OR
OTHERWISE, INCLUDING, WITHOUT LIMITATION, IMPLIED WARRANTIES OF
MERCHANTABILITY, NONINFRINGEMENT, OR FITNESS FOR A PARTICULAR PURPOSE. IN
NO EVENT WILL XILINX BE LIABLE FOR ANY LOSS OF DATA, LOST PROFITS, OR FOR ANY
SPECIAL, INCIDENTAL, CONSEQUENTIAL, OR INDIRECT DAMAGES ARISING FROM YOUR
USE OF THIS APPLICATION NOTE.
本資料は英語版 (v1.0) を翻訳 し た も ので、 内容に相違が生 じ る 場合には原文を優先 し ます。
資料に よ っ ては英語版の更新に対応 し ていない も のがあ り ます。
日本語版は参考用 と し て ご使用の上、 最新情報につ き ま し ては、 必ず最新英語版を ご参照 く だ さ い。
こ の資料に関す る フ ィ ー ド バ ッ ク お よ び リ ン ク な ど の問題につ き ま し ては、
[email protected] ま でお知 ら せ く だ さ い。 いただ き ま し た ご意見を参考に早急に対応 さ
せていただ き ます。 なお、 こ の メ ール ア ド レ スへのお問い合わせは受け付けてお り ません。 あ ら か じ め
ご了承 く だ さ い。
XAPP899 (v1.0) 2010 年 1 月 5 日
japan.xilinx.com
13