ASIC エミュレーション用にレイテンシをゼロに抑えた多重化 I/O

ア プ リ ケーシ ョ ン ノ ー ト : ザイ リ ン ク ス FPGA
ASIC エ ミ ュ レーシ ョ ン用に レ イ テ ン シ
をゼロ に抑えた多重化 I/O
XAPP1217 (v1.0) 2015 年 3 月 17 日
著者 : Luis Bielich
概要
こ のアプ リ ケーシ ョ ン ノ ー ト では、FPGA エ ミ ュ レーシ ョ ン プ ラ ッ ト フ ォームにおいて複数の信号を 1 つの I/O ま たは I/O
差動ペアで別の FPGA に転送す る 方法について説明 し ます。 こ の多重化方式はデー タ を最大 800Mb/s でシ リ アル化 し 、 こ
れ よ り 低レー ト で動作す る ユーザー ロ ジ ッ ク に対す る レ イ テ ン シの増加を 0 サ イ ク ルに抑え ます。
は じ めに
FPGA の一般的な用途 と し て、 複雑な ASIC のエ ミ ュ レーシ ョ ン シ ス テ ムがあ り ます。 ASIC は FPGA に比べて ロ ジ ッ ク 数
が多いため、エ ミ ュ レーシ ョ ンの際には ASIC の ロ ジ ッ ク を複数の FPGA に分割する 必要があ り ます。ASIC を複数の FPGA
に分割す る と 、 FPGA 間通信が発生 し ます。 こ の信号数は、 場合に よ っ ては数百ま たは数千にお よ ぶ こ と も あ り ます。 最
大規模の FPGA で も 、 こ れだけの数の信号を別の FPGA に転送 し よ う と す る と 汎用 I/O の数が不足す る こ と が考え ら れま
す。 こ のため、 通常はパ ラ レル信号を シ リ アル化 し て 1 つの I/O で別の FPGA に転送す る と い う 方法が と ら れます。 こ の
方法を、 こ のアプ リ ケーシ ョ ン ノ ー ト では 「多重化 I/O」 と 呼びます。 図 1 に、 シ リ アル化の概念図を示 し ます。
X-Ref Target - Figure 1
5HFHLYH)3*$
$>@
$>@
$>@
$>Q@
$>Q@
$>@
$>@ $>@ $>@ $>@ $>@ $>@
'H08;
08;
$>Q@
$>@
$>@
$>@
$>@
$>@
$>@
$>@
$>@
7UDQVPLW)3*$
;BB
図 1 : 多重化 I/O の概念ブ ロ ッ ク図
本資料は表記のバージ ョ ンの英語版を翻訳 し た も ので、内容に相違が生 じ る場合には原文を優先 し ます。 資料に よ っ ては英語版の更新に対応 し ていない も のがあ り ます。 日本
語版は参考用 と し て ご使用の上、 最新情報につ き ま し ては、 必ず最新英語版を ご参照 く だ さ い。
XAPP1217 (v1.0) 2015 年 3 月 17 日
japan.xilinx.com
1
ハー ド ウ ェ アの説明
複数の信号を 1 つの I/O で転送す る 手段 と し てシ リ アル化を利用す る のは当然ですが、 こ のアプ リ ケーシ ョ ン ノ ー ト では
こ れ ら すべての信号を 1 パ ラ レ ル ク ロ ッ ク サ イ ク ル未満 (すなわちゼ ロ レ イ テ ン シ) で転送す る 方法について説明 し ま
す。 すべての信号を 1 ク ロ ッ ク サ イ ク ル未満で転送で き れば、 タ イ ミ ン グのボ ト ルネ ッ ク が発生 し ないため ASIC ロ ジ ッ
ク の変更が不要 と い う 利点があ り ます。し か し 1 ク ロ ッ ク サ イ ク ルですべてのビ ッ ト を転送 し よ う と す る と 、実際の MUX
比 よ り も 実効 MUX 比を小 さ く す る 必要があ り ます。 た と えばシ リ アル ビ ッ ト 時間がパ ラ レ ル周波数の 32 倍の場合、 実
効 MUX 比は 32 未満 と す る 必要があ り ます。 こ れは、図 2 に示す よ う にデザ イ ンで実際に利用で き る のは次のパ ラ レル ク
ロ ッ ク エ ッ ジ ま でに受信 し た ビ ッ ト に限 ら れ る ためです。 パ ラ レル ク ロ ッ ク の後に到着する ビ ッ ト は破棄 さ れます。 こ れ
ら の ビ ッ ト を こ こ では 「 ク リ ッ プ ビ ッ ト 」 と 呼び ま す。 図 2 では、 ビ ッ ト A[20:0] が有効ビ ッ ト で ビ ッ ト A[31:21] が ク
リ ッ プ ビ ッ ト です。 こ のため、 すべての I/O ま たは I/O 差動ペアにおいて実効 MUX 比は 21 と な り ます。
X-Ref Target - Figure 2
&/2&.B',9
&/.B''5
3DUDOOHO'DWD
7UDQVPLW6HULDO'DWD
$>@
$>@
$>@
$>@
$>@
$>@
$>@
$>@
5HFHLYHG6HULDO'DWD
$>@
$>@
$>@
$>@
$>@
$G>@
$G>@
$G>@
$G>@
'LJLWDO/DWHQF\%RDUG'HOD\3DFNDJH,'(/$<
$>@
$G>@
$>@
$>@
$G>@
$G>@
$>@
%>@
$>@
%>@
$G>@ $G>@ $G>@
9DOLG%LWV
;BB
図 2 : 多重化 I/O の概念波形図
図 2 に示 し た よ う に、 デジ タ ル レ イ テ ン シ、 ト レース遅延、 パ ッ ケージ遅延、 IDELAY 遅延の分だけ有効ビ ッ ト 数が減少
し ます。 こ れ ら 遅延の合計が大 き く な る ほ ど有効ビ ッ ト が減少 し 、 ク リ ッ プ ビ ッ ト が増加 し ます。 し たがっ て、 こ れ ら の
遅延はな る べ く 最小にす る 必要があ り ま す。 両方の FPGA のパ ラ レ ル ク ロ ッ ク 間の ス キ ュ ー も 有効ビ ッ ト 数に影響 し ま
す。 可能な限 り 、 パ ラ レル ク ロ ッ ク ド メ イ ンの ス キ ュ ーを抑えて く だ さ い。
ハー ド ウ ェ アの説明
こ のアプ リ ケーシ ョ ン ノ ー ト には 2 つのデザ イ ンが付属 し ます。 こ れ ら はそれぞれ Vivado® Design Suite 用のカ ス タ ム IP
と し てパ ッ ケージ化 さ れてい ます。
•
出力 MUX ト ラ ン ス ミ ッ タ ー
•
入力 DEMUX レ シーバー
ト ラ ンス ミ ッ ター
ト ラ ン ス ミ ッ タ ーはパ ラ レル ク ロ ッ ク の立ち上が り エ ッ ジ を ポー リ ン グ し ます。 立ち上が り エ ッ ジ を検出する と 、 ト ラ ン
ス ミ ッ タ ーは ODDR プ リ ミ テ ィ ブのシ リ アル レー ト でユーザー デー タ の送信を開始 し ます。 図 2 の 「Valid Bits (有効ビ ッ
ト )」 はユーザー デー タ を表 し ます。 ト ラ ン ス ミ ッ タ ーは最初に有効ビ ッ ト を送信 し 、 次に ク リ ッ プ ビ ッ ト を送信 し ます。
ク リ ッ プ ビ ッ ト は 0 と し て送信 さ れます。 送信 さ れ る 有効ビ ッ ト の数は実効 MUX 比、 すなわち DATA_WIDTH パ ラ メ ー
タ ー で 指定 し ま す。 1 パ ラ レ ル ク ロ ッ ク で 送信 さ れ る ビ ッ ト の 総数 は FULL_WIDTH パ ラ メ ー タ ー で 指定 し ま す。
FULL_WIDTH か ら DATA_WIDTH を引いた も のが ク リ ッ プ ビ ッ ト 数です (図 3 参照)。
XAPP1217 (v1.0) 2015 年 3 月 17 日
japan.xilinx.com
2
ハー ド ウ ェ アの説明
X-Ref Target - Figure 3
3DUDOOHO'RPDLQ
&RQWURO/RJLF
9DOLG
%LWV
'DWD:LGWK
&OLSSHG
%LWV
2''5
)XOO:LGWK
6HULDO'RPDLQ
;BB
図 3 : ト ラ ン ス ミ ッ タ ー MUX のブ ロ ッ ク図
レ シーバー
レ シーバー側では、 デー タ が IDELAY プ リ ミ テ ィ ブ を通過 し てか ら IDDR プ リ ミ テ ィ ブで取 り 込ま れます。 IDDR を通過
後、有効ビ ッ ト はデジシ リ ア ラ イ ズ さ れてパ ラ レル ド メ イ ンへ送 ら れます。 ク リ ッ プ ビ ッ ト は破棄 さ れ、 ユーザー ロ ジ ッ
ク か ら は見え ません。有効ビ ッ ト と ク リ ッ プ ビ ッ ト を正 し く 区別す る ため、 リ セ ッ ト 終了時にキ ャ リ ブ レーシ ョ ン ス テー
ジが必要です。 図 4 に レ シーバー デザ イ ンのブ ロ ッ ク 図を示 し ます。
X-Ref Target - Figure 4
6HULDO'RPDLQ
3DUDOOHO'RPDLQ
&RQWURO/RJLF
,'(/$<
&DOLEUDWLRQ
%ORFN
,''5
8VHU'DWD
;BB
図 4 : レ シーバー DEMUX のブ ロ ッ ク 図
キ ャ リ ブ レーシ ョ ン
キ ャ リ ブ レーシ ョ ン エン ジ ンの目的は、 次の 2 つの機能を実行す る こ と にあ り ます。
•
有効な ア イ の中央を キ ャ プチ ャ で き る よ う に IDELAY タ ッ プを中央に揃え る
•
有効ビ ッ ト が位置す る 適切なサ イ ク ルを検出す る
レ シーバーは、 パ ワー サ イ ク ル時ま たは リ セ ッ ト 終了時に毎回キ ャ リ ブ レーシ ョ ン を実行する 必要があ り ます。 キ ャ リ ブ
レーシ ョ ン を実行す る のは レ シーバーですが、 ト ラ ン ス ミ ッ タ ー も レ シーバーに ト レーニ ン グ パ タ ーン を送信す る ために
キ ャ リ ブ レーシ ョ ン モー ド に移行す る 必要があ り ます。 ト ラ ン ス ミ ッ タ ーの リ セ ッ ト が終了す る と 、 stop_training 入力を
デ ィ ア サ ー ト し て ト ラ ン ス ミ ッ タ ー を ト レ ー ニ ン グ モ ー ド に 移行 し ま す。 す る と 、 real_data 入力 か ら で は な く
training_pattern 入力か ら の ト レーニ ン グ デー タ が送信 さ れます。
注記 : training_pattern は固定値に接続す る こ と を推奨 し ますが、 動的 ト レーニ ン グ パ タ ーン に対応で き る よ う にす る ため
入力の ま ま と し てい ます。
XAPP1217 (v1.0) 2015 年 3 月 17 日
japan.xilinx.com
3
デザイ ンの分割
レ シーバーは、 リ セ ッ ト が終了す る と キ ャ リ ブ レーシ ョ ン モー ド に移行 し ます。 レ シーバーが ト レーニ ン グ パ タ ーン を検
出す る と 、 キ ャ リ ブ レーシ ョ ン モー ド が終了 し ます。 レ シーバーのキ ャ リ ブ レーシ ョ ンでは、 キ ャ プチ ャ ア イ の中央を検
出す る ために IDELAY タ ッ プを ス イ ープ し ます。デー タ 有効ウ ィ ン ド ウ の中央を検出 し てデー タ と ト レーニ ン グ パ タ ーン
が一致 し た ら キ ャ プチ ャ ア イ の中央に IDELAY タ ッ プが配置 さ れ、 calib_comp 信号がアサー ト さ れ ま す。 ト ラ ン ス ミ ッ
タ ーは、 レ シーバーか ら の calib_comp 信号を受信す る と キ ャ リ ブ レーシ ョ ン を終了 し ます。 複数の I/O で多重化 I/O を利
用す る 場合、すべての レ シーバーがキ ャ リ ブ レーシ ョ ン を完了する ま ですべての ト ラ ン ス ミ ッ タ ーを ト レーニ ン グ モー ド
の ま ま に し てお く こ と がで き ます。 図 5 に、 ト ラ ン ス ミ ッ タ ー と レ シーバーの制御お よ びス テー タ ス信号のシーケ ン ス を
示 し ます。
X-Ref Target - Figure 5
75$160,77(5
3DUDOOHO&ORFN
$
UHDGBGDWD
%
UHVHW
LQBWUDLQLQJ
VWRSBWUDLQLQJ
5(&(,9(5
FDOLEBFRPSO
GHOD\BORFNHG
UHVHW
;BB
図 5 : 制御およびス テー タ ス信号のシーケ ン ス
デザイ ンの分割
ASIC ロ ジ ッ ク を ど こ で複数の FPGA に分割す る か を決定す る 必要があ り ます。 タ イ ミ ン グ ク ロ ージ ャ を達成す る には、
分割後の境界の ロ ジ ッ ク 階層が低 く な る よ う にす る こ と を推奨 し ます。 図 6 では、 「User Logic (ユーザー ロ ジ ッ ク )」 と 示
し たブ ロ ッ ク が こ れに該当 し ます。 ユーザー ロ ジ ッ ク の コ ー ド は ASIC に存在する こ と にな る ため、 論理的に等価な ま ま
維持 さ れ ま す。 境界の ロ ジ ッ ク 階層を低 く し た方が よ いのは、 ユーザー ロ ジ ッ ク と シ リ ア ラ イ ザーま たはデシ リ ア ラ イ
ザー と の間の境界はパ ラ レル ク ロ ッ ク 周期 よ り タ イ ミ ン グが厳 し いためです。
XAPP1217 (v1.0) 2015 年 3 月 17 日
japan.xilinx.com
4
ハー ド ウ ェ ア要件 と 考慮事項
X-Ref Target - Figure 6
7UDQVPLWWHU
8VHU/RJLF
5HFHLYHU
6HULDOL]HU
2''5
,''5
'HVHULDOL]HU
7UDLQLQJ
3DWWHUQ
*HQHUDWRU
8VHU/RJLF
7UDLQLQJ
&RQWUROV
2XWSXW08;
,QSXW'H08;
/HJHQG
6HULDO
'RPDLQ
3DUDOOHO
'RPDLQ
;BB
図 6 : ユーザー デー タ 幅が x16 のシス テムの例
ハー ド ウ ェ ア要件 と 考慮事項
こ のセ ク シ ョ ンでは、 こ のアプ リ ケーシ ョ ン ノ ー ト を使用する 際のハー ド ウ ェ ア要件 と 考慮事項について説明 し ます。
•
パ ラ レル ク ロ ッ ク はシ ス テ ム同期 と し 、 同 じ 周波数にする
•
シ リ アル ク ロ ッ ク はシ ス テ ム同期 と し 、 同 じ 周波数にする
•
シ リ アル ク ロ ッ ク と パ ラ レル ク ロ ッ ク を相互に同期 さ せる
•
I/O デー タ 有効キ ャ プチ ャ ウ ィ ン ド ウ は 6 IDELAY タ ッ プ と す る
•
暫定的な有効ビ ッ ト を計算す る
•
タ イ ミ ン グ制約に関す る 注意事項
パラ レル ク ロ ッ ク はシ ス テム同期 と し 、 同 じ 周波数にする
パ ラ レ ル ク ロ ッ ク は、 シ リ アル化す る バ ス信号が属す る ク ロ ッ ク ド メ イ ン です。 こ の ク ロ ッ ク は、 両方の FPGA に同 じ
オシ レー タ ーか ら 供給す る 必要があ り ます。 こ のデザ イ ンは、 異な る ク ロ ッ ク ド メ イ ンに よ る PPM の違いには対応 し て
い ません。 つま り 、 両方の FPGA を シ ス テ ム同期 と す る 必要があ り ます。 周波数 も 両方の FPGA で揃え る 必要があ り ます。
シ リ アル ク ロ ッ ク はシ ス テム同期 と し 、 同 じ 周波数にする
両方の FPGA のシ リ アル ク ロ ッ ク の関係について も 、 パ ラ レル ク ロ ッ ク の関係 と 同様の要件があ り ます。 PPM の違いが
生 じ ない よ う に、両方の FPGA に同 じ オシ レー タ ーか ら シ リ アル ク ロ ッ ク を供給 し 、周波数 も 同 じ にす る 必要があ り ます。
シ リ アル ク ロ ッ ク と パラ レル ク ロ ッ ク を相互に同期 さ せる
シ リ アル ク ロ ッ ク と パ ラ レル ク ロ ッ ク は互いに同期 し てい る 必要があ り ます。両方の ク ロ ッ ク を同 じ MMCM で生成 し て
く だ さ い。 こ う す る と シ リ アル ク ロ ッ ク と パ ラ レ ル ク ロ ッ ク 間の不確実性が減少 し 、 タ イ ミ ン グ ク ロ ージ ャ が容易にな
り ます。
XAPP1217 (v1.0) 2015 年 3 月 17 日
japan.xilinx.com
5
ハー ド ウ ェ ア要件 と 考慮事項
I/O デー タ 有効キ ャ プ チ ャ ウ ィ ン ド ウは 6 IDELAY タ ッ プ と する
シ グナル イ ン テ グ リ テ ィ を確認す る には IBIS シ ミ ュ レーシ ョ ン が必要です。 少な く と も 6 IDELAY タ ッ プのデー タ 有効
ウ ィ ン ド ウ が必要です。 IDELAY の タ ッ プご と の遅延は、 使用する デバ イ ス のデー タ シー ト で確認 し て く だ さ い。 7 シ リ ー
ズ デバ イ ス の場合、 IDELAY の タ ッ プご と の遅延は IDELAY コ ン ト ロ ー ラ ーへの基準 ク ロ ッ ク が 200MHz の場合で 78ps、
300MHz の場合で 52ps です。 78ps の タ ッ プ を使用す る 場合、 78ps x 6 = 468ps のデー タ 有効ウ ィ ン ド ウ が必要です。 キ ャ リ
ブ レーシ ョ ン ロ ジ ッ ク に よ る キ ャ リ ブ レーシ ョ ンは ス タ ー ト ア ッ プ時に 1 回 し か実行 さ れません。 こ のため、 制御 さ れた
環境での動作を推奨 し ます。 デー タ 有効 ウ ィ ン ド ウ の中には、 BUFG のデ ュ ーテ ィ サ イ ク ル歪み と し て 200ps を必ず含め
て く だ さ い。 シ リ アル ク ロ ッ ク は高速な ため、 I/O に対す る ス タ テ ィ ッ ク タ イ ミ ン グは必要あ り ま せん。 キ ャ リ ブ レ ー
シ ョ ン ロ ジ ッ ク に よ っ て ア イ の中央が検出 さ れます。
暫定的な有効ビ ッ ト を計算する
実際にハー ド ウ ェ アで実行す る 前に、 暫定的な有効ビ ッ ト (PVB : Potential Valid Bits) を計算 し てお く 必要があ り ます。 こ
れに よ り 、 あ る シ リ アル送信レー ト で 1 パ ラ レル ク ロ ッ ク サ イ ク ルあ た り に送信可能な ビ ッ ト 数がわか り ます。 こ の計算
の詳細は、 「実効 MUX 比を求め る 手順」 で説明 し ます。
タ イ ミ ング制約に関する注意事項
ト ラ ンス ミ ッ ター
先ほ ど の図 2 を見る と 、 パ ラ レル ク ロ ッ ク ド メ イ ンか ら シ リ アル ク ロ ッ ク ド メ イ ン (お よ び反対方向) への タ イ ミ ン グ制
約は 1 シ リ アル ク ロ ッ ク サ イ ク ル と な っ てい ます。 シ リ アル ク ロ ッ ク の動作周波数は高いため、 タ イ ミ ン グ要件を緩和
す る こ と が望ま れ ます。 ト ラ ン ス ミ ッ タ ー側の タ イ ミ ン グ要件を緩和す る には、 IP の設定で SLACK_CYCLE の値を大 き
く し ます。 こ う す る と 、 デー タ パ ス のパ ラ レル ド メ イ ンか ら シ リ アル ド メ イ ンへの制約を SLACK_CYCLE パ ラ メ ー タ ー
で指定 し たサ イ ク ル数 (マルチサ イ ク ル) にで き ます。 ただ し SLACK_CYCLE を大 き く す る と 、 転送 さ れ る 有効ビ ッ ト 数
が減少 し ます。 図 7 は、 SLACK_CYCLE を増やす と 制約が緩和 さ れ る と 同時に有効ビ ッ ト が少な く な る 様子を示 し てい ま
す。
X-Ref Target - Figure 7
3DUDOOHO&ORFN
6HULDO&ORFN
3DUDOOHO'DWD
$>@
7UDQVPLW6HULDO'DWD
$>@
$>@
$>@
$>@
$>@
$>@
$>@
$>@
$>@
$>@
$G>@
$G>@
$G>@
$G>@
$>@
%>@
$>@
$>@
$>@
%>@
$G>@
$G>@
$G>@
$G>@ $G>@
6ODFN&\FOHV
5HFHLYHG6HULDO'DWD
'LJLWDO/DWHQF\%RDUG'HOD\3DFNDJH,'(/$<
$G>@
9DOLG%LWV
;BB
図 7 : ト ラ ン ス ミ ッ タ ーで SLACK_CYCLE を増や し てパ ラ レル ド メ イ ンか ら シ リ アル ド メ イ ンへの制約を マルチサイ クルにする
レ シーバー
ト ラ ン ス ミ ッ タ ー同様に、 レ シーバー も ユーザー境界での タ イ ミ ン グ要件を緩和で き ま す。 そのためには、 パ ラ レ ル ク
ロ ッ ク と シ リ アル ク ロ ッ ク の周波数を維持 し た ま ま、 実効 MUX 比を小 さ く し ます。 こ う す る と デー タ を よ り 高速に取 り
込む こ と がで き 、 パ ラ レル ク ロ ッ ク の立ち上が り エ ッ ジ ま でに複数のシ リ アル ク ロ ッ ク サ イ ク ルを確保 し ます。 図 8 の
ス ラ ッ ク サ イ ク ルは、 マルチサ イ ク ル制約に よ っ て こ の制約を緩和で き る 様子を示 し てい ます。
XAPP1217 (v1.0) 2015 年 3 月 17 日
japan.xilinx.com
6
実効 MUX 比を求める手順
X-Ref Target - Figure 8
3DUDOOHO&ORFN
3DUDOOHO&ORFN
N
6HULDO&ORFN
6HULDO&ORFN
N
3DUDOOHO'DWD
3DUDOOHO'DWD
D
7UDQVPLW6HULDO'DWD
7UDQVPLW6HULDO'DW
$>@ $>@
$>@
$>@
$>@
$>@
$>@
$>@
$
@@
$>@
$>@
$>@
$>@
$>@
$>@
$>@
$>@
$>@
$>@
$>@
$>@
$>@
$>@
$>@
$>@
$>@
$>@
$>@
$>@
$>@
$G>@
>>@
>@@ $GG>@
@
$$G$
>@
G>@
$
$GG>@
>@
$GG>@
>@
$GG>@
>@
$$GG>@
>@
%>
@
%>@
$>@
$>@
%>@
> %>@
$>@
6
6WDFN&\FOHV
F
5HFHLYHG6HULDO'DWD
5HFHLYHG6HULDO'DWD
W
'LJLWDO/DWHQF\%RDUG'HOD\3DFNDJH,'(/$<
'LJLWDO/DWHQF\%RDUG'HOD\3DFNDJH,'(/$<
D
F
D
\
D
'
9DOLG%LWV
$G
$G>@
6ODFN
&\FOH
;BB
図 8 : 有効ビ ッ ト 数を減ら し て受信 タ イ ミ ング マージ ン を増加
実効 MUX 比を求める手順
こ こ ま での説明で、 ト ラ ン ス ミ ッ タ ー と レ シーバーの両方に タ イ ミ ン グ マージ ン を追加す る 方法を紹介 し ま し た。こ れで、
あ る ボー ド コ ン フ ィ ギ ュ レーシ ョ ン において実際に転送可能な有効ビ ッ ト 数を計算で き ます。 MUX/DeMUX あ た り の実
際の有効ビ ッ ト 数がわかれば、 FPGA 間にい く つの I/O が必要かが決ま り ます。 MUX/DeMUX の イ ン ス タ ン ス が複数あ る
場合は、 それぞれの I/O を合計す る と 全体の信号数を求め る こ と がで き ます。 こ の計算には次の情報が必要です。
•
シ リ アル ク ロ ッ ク ド メ イ ン と パ ラ レル ク ロ ッ ク ド メ イ ンの ク ロ ッ ク 比
•
ボー ド ト レース遅延
•
パ ッ ケージ フ ラ イ ト タ イ ム
•
タ ッ プ数 0 の場合の IDELAY 遅延 ( タ イ ミ ン グ アナ ラ イ ザー よ り )。 通常は約 1ns の遅延。
•
デザ イ ンのデジ タ ル遅延 :
°
出力の レ イ テ ン シは 2 シ リ アル ク ロ ッ ク サ イ ク ル
°
入力の レ イ テ ン シは 4 シ リ アル ク ロ ッ ク サ イ ク ル
•
ト ラ ン ス ミ ッ タ ーお よ びレ シーバー側で必要な ス ラ ッ ク
•
両方の FPGA のパ ラ レル ク ロ ッ ク ス キ ュ ー
入力 と 出力に適切な ス ラ ッ ク を設定 し た後、 実効 MUX 比を手順 1 ~ 4 で求め ます。
手順 1 : 暫定的な有効ビ ッ ト 数を計算する
式 1 で、 実際の有効ビ ッ ト 数ではな く 暫定的な有効ビ ッ ト 数 (PVB) を求め ます。
PCP – IODd – Id – BTd – PFT – PCS = PVB
----------------------------------------------------------------------------------------------------SBT
式1
説明 :
PCP = パ ラ レル ク ロ ッ ク 周期
IODd = 入力お よ び出力デジ タ ル遅延
Id = IDELAY 遅延
BTd = ボー ド ト レース遅延
PFT = パ ッ ケージ フ ラ イ ト タ イ ム
PCS = パ ラ レル ク ロ ッ ク ス キ ュ ー
SBT = シ リ アル ビ ッ ト 時間
PVB = 暫定的な有効ビ ッ ト
XAPP1217 (v1.0) 2015 年 3 月 17 日
japan.xilinx.com
7
実効 MUX 比を求める手順
[Re-customize IP] ダ イ ア ロ グ ボ ッ ク ス に も こ の計算結果が表示 さ れます (図 9)。 制限は、 IDELAY が 1ns に固定 さ れ、 パ ッ
ケージ フ ラ イ ト タ イ ムが 200ps に固定 さ れ、 ク ロ ッ ク ス キ ュ ーを 0 と す る こ と だけです。 [Trace Delay] に追加の タ イ ミ ン
グ を割 り 当て る と 、 こ れ ら の制限を回避で き ます (図 9)。
X-Ref Target - Figure 9
;BB
図 9 : [Re-customize IP] ダ イ ア ログ ボ ッ ク スに表示 さ れる暫定的な有効ビ ッ ト 数の計算結果
手順 2 : シ リ アル ク ロ ッ ク 周期が タ イ ミ ン グ ボ ト ルネ ッ ク にな っ て
いるかを確認する
手順 1 で PVB の値を求めた ら 、 次にシ リ アル ク ロ ッ ク 周期がパ ラ レル ク ロ ッ ク と シ リ アル ク ロ ッ ク 間の タ イ ミ ン グ制約
と し て妥当か ど う か を判断 し ます。 シ リ アル ク ロ ッ ク 周期が妥当な場合、 PVB の値を その ま ま ユーザー デー タ 幅 と し て
使用で き ます。 シ リ アル ク ロ ッ ク 周期が タ イ ミ ン グ的に厳 し い場合は、 手順 3 に進んで制約を緩和 し ます。
手順 3 : ト ラ ン ス ミ ッ タ ーの制約を緩和する
ト ラ ン ス ミ ッ タ ー側で タ イ ミ ン グ マージ ンが必要な場合、 有効ビ ッ ト 数 と 引き 換えに タ イ ミ ン グ を緩和で き ます。 た と え
ば制約を 2 シ リ アル ク ロ ッ ク サ イ ク ルだけ緩和 し た場合、 有効ビ ッ ト 数は 4 ビ ッ ト 少な く な り ます。 シ リ アル ク ロ ッ ク
のマージ ン を 1 サ イ ク ル増やす と 、 多重化 さ れ る 有効ビ ッ ト が 2 ビ ッ ト 減少 し ます。 こ の タ イ ミ ン グ制約は IP に追加 さ
れ、 RTL に も パ ラ レル デー タ がシ リ アル ド メ イ ン で安定す る ためのマージ ンが追加 さ れます。 ス ラ ッ ク を増やすには、 IP
の SLACK_CYCLE パ ラ メ ー タ ーの値を大き く する 必要があ り ます。 SLACK_CYCLE = 1 では ス ラ ッ ク は増えず、 シ リ アル
ク ロ ッ ク 要件の ま ま です。 SLACK_CYCLE の値を 1 つ増やす と 1 シ リ アル ク ロ ッ ク サ イ ク ルが追加 さ れ、 その結果有効
ビ ッ ト 数が 2 ビ ッ ト 減少 し ます。 IP ではな く RTL を直接使用する 場合は、 シ リ アル ク ロ ッ ク ド メ イ ン と パ ラ レル ク ロ ッ
ク ド メ イ ン間に適切な タ イ ミ ン グ例外を追加 し ない と IP は機能 し ません。
手順 4 : レ シーバーの タ イ ミ ング を緩和する
ト ラ ン ス ミ ッ タ ー 同 様、 レ シ ー バ ー の タ イ ミ ン グ も 有効 ビ ッ ト 数 と 引 き 換 え に 緩和 で き ま す。 こ の 設定 も IP の
SLACK_CYCLE オプシ ョ ン で行い ます。 SLACK_CYCLE の値を 1 つ大 き く す る ご と に有効ビ ッ ト 数が 2 ビ ッ ト 減少 し ま
す。 SLACK_CYCLE の値を変更 し た場合の影響は、 ト ラ ン ス ミ ッ タ ー デザ イ ン と レ シーバー デザ イ ンで異な り ます。 レ
シーバー デザ イ ンの場合は、 SLACK_CYCLE の値を変更 し て も IP の制約が変更 さ れ る だけで ソ ース コ ー ド は影響を受け
ません。 ト ラ ン ス ミ ッ タ ー デザ イ ンの場合は、 SLACK_CYCLE の値を変更す る と 制約 と ソ ース コ ー ド の両方が変更 さ れ
ます。
XAPP1217 (v1.0) 2015 年 3 月 17 日
japan.xilinx.com
8
ポー ト およびパラ メ ー タ ーの一覧
実効 MUX 比の計算例
こ の例では、 パ ラ レル ク ロ ッ ク の周波数を 25MHz (40ns 周期)、 シ リ アル転送レー ト を 800Mb/s (1.25ns ビ ッ ト 時間) と し ま
す。 IDDR ま たは ODDR プ リ ミ テ ィ ブ を 使用す る た め、 シ リ アル 転送 レ ー ト が 800Mb/s の場合の シ リ ア ル ク ロ ッ ク は
400MHz (2.5ns 周期) です。 IDELAY 遅延は 1ns で、 パ ッ ケージ フ ラ イ ト タ イ ムは ト ラ ン ス ミ ッ タ ー側 と レ シーバー側でそ
れぞれ 125ps です。 ボー ド ト レース は約 6 イ ンチで、 遅延は約 960ps です。 パ ラ レル ク ロ ッ ク ス キ ュ ーは 0 と し ます。 こ
れ ら の値を式 1 に代入す る と 、 PVB の値は 18 と な り ます (式 2)。
40ns – ( 2 + 4 ) × 2.5ns – 1ns – 0.96ns – 0.250ns – 0ns
------------------------------------------------------------------------------------------------------------------------------------------------------- = 18
2.5ns
 ------------- 2 
式2
次に、 ス ラ ッ ク サ イ ク ル数を求め る 必要があ り ます。 現時点で、 パ ラ レル ク ロ ッ ク ド メ イ ン と シ リ アル ク ロ ッ ク ド メ イ
ン の間には 2.5ns の要件があ り ます。 こ の 2.5ns の要件は、 ト ラ ン ス ミ ッ タ ー と レ シーバーのユーザー イ ン タ ーフ ェ イ ス
に対す る も のです。レ シーバー と ト ラ ン ス ミ ッ タ ー間の ス ラ ッ ク を大 き く し てデー タ パ ス の要件を 200MHz (5ns) と す る に
は、 ト ラ ン ス ミ ッ タ ー側のパ ラ メ ー タ ーに 1 シ リ アル ク ロ ッ ク サ イ ク ルを足 し 、 レ シーバー側で 1 ク ロ ッ ク サ イ ク ル分
の有効ビ ッ ト を減 ら し ます。 こ れでシ リ アル ク ロ ッ ク が 2 サ イ ク ル減少 し 、 有効ビ ッ ト 数が 4 ビ ッ ト 少な く な り ます。 こ
の結果、 上の例で境界 タ イ ミ ン グ要件が 200MHz の場合の実効 MUX 比は 14:1 と な り ます。
ポー ト およびパラ メ ー タ ーの一覧
表 1 と 表 2 に、 ト ラ ン ス ミ ッ タ ーのパ ラ メ ー タ ーお よ びポー ト の一覧を それぞれ示 し ます。
表 1 : ト ラ ン ス ミ ッ タ ー デザイ ンのパ ラ メ ー タ ー
パラ メ ー タ ー名
タ イプ
説明
DATA_WIDTH
整数
送信可能な有効ビ ッ ト の数を示 し ます。2 の倍数 と す る 必要があ り ます。
FULL_WIDTH
整数
実際にシ リ アル化 さ れ る 幅を示 し ます。こ れはシ リ アル ビ ッ ト 時間 と パ
ラ レル ク ロ ッ ク 周期の比です。
SLACK_CYCLE
整数
シ リ アル ド メ イ ン と パ ラ レ ル ド メ イ ン間に追加す る ス ラ ッ ク を シ リ ア
ル ク ロ ッ ク サ イ ク ル数で指定 し ます。 パ ッ ケージ化 し た IP を使用す る
場合、こ こ で指定 し た ス ラ ッ ク サ イ ク ル数に基づいてマルチサ イ ク ル制
約が追加 さ れます。
DIFFERENTIAL
ブール型
TRUE の場合、 IBUFDS を挿入 し ます。 FALSE の場合、 シ ン グルエン ド
I/O と し ます。
表 2 : ト ラ ン ス ミ ッ タ ー デザイ ンのポー ト
ポー ト 名
幅
方向
clk_parallel
1
入力
パ ラ レル ク ロ ッ ク (低速 ク ロ ッ ク )。
clk_serial
1
入力
シ リ アル ク ロ ッ ク (高速 ク ロ ッ ク )。
reset
1
入力
非同期 リ セ ッ ト 信号。パ ラ レル ク ロ ッ ク と シ リ アル ク ロ ッ ク
が安定 し てか ら リ セ ッ ト をデ ィ アサー ト し て く だ さ い。
DATA_WIDTH
入力
stop_training をデ ィ アサー ト す る と こ のパ タ ーン が送信 さ れ、
アサー ト す る と real_data が送信 さ れます。 こ の入力は固定値
と す る こ と を推奨 し ます。
1
入力
デ ィ アサー ト する と training_pattern が送信 さ れます。
DATA_WIDTH
入力
ユーザー ロ ジ ッ ク か ら のデー タ 入力。 stop_training を アサー
ト する と 送信 さ れます。
data_out_to_pins
1
出力
出力ポー ト ド ラ イ バー。
in_training
1
出力
ト レーニ ン グの終了を通知する 出力ス テー タ ス信号。
training_pattern
stop_training
real_data
XAPP1217 (v1.0) 2015 年 3 月 17 日
説明
japan.xilinx.com
9
ポー ト およびパラ メ ー タ ーの一覧
表 3 と 表 4 に、 レ シーバーのパ ラ メ ー タ ーお よ びポー ト の一覧を それぞれ示 し ます。
表 3 : レ シーバー デザイ ンのパ ラ メ ー タ ー
パラ メ ー タ ー名
タ イプ
説明
DATA_WIDTH
整数
受信す る 有効ビ ッ ト の数を示 し ます。 2 の倍数 と する 必要があ り ます。
FULL_WIDTH
整数
実際にシ リ アル化 さ れ る 幅を示 し ます。 こ れはシ リ アル ビ ッ ト 時間 と パ ラ レル
ク ロ ッ ク 周期の比です。
SLACK_CYCLE
整数
シ リ ア ル ド メ イ ン と パ ラ レ ル ド メ イ ン 間に追加す る ス ラ ッ ク を シ リ ア ル ク
ロ ッ ク サ イ ク ル数で指定 し ます。 パ ッ ケージ化 し た IP を使用する 場合、 こ こ で
指定 し た ス ラ ッ ク サ イ ク ル数に基づいてマルチサ イ ク ル制約が追加 さ れます。
DIFFERENTIAL
ブール型
TRUE の場合、 IBUFDS を挿入 し ます。 FALSE の場合、 シ ン グルエン ド I/O と し
ます。
IODELAY_GRPNAME
文字列
IDELAY の IODELAY_GRPNAME パ ラ メ ー タ ーの文字列 ラ ベル。
表 4 : レ シーバー デザイ ンのポー ト
幅
方向
clk_parallel
ポー ト 名
1
入力
パ ラ レル ク ロ ッ ク (低速 ク ロ ッ ク )。
clk_serial
1
入力
シ リ アル ク ロ ッ ク (高速 ク ロ ッ ク )。
reset
1
入力
非同期 リ セ ッ ト 信号。パ ラ レル ク ロ ッ ク と シ リ アル ク ロ ッ ク
が安定 し てか ら リ セ ッ ト をデ ィ アサー ト し て く だ さ い。
DATA_WIDTH
入力
キ ャ リ ブ レ ーシ ョ ン 時に こ のパ タ ー ン を 使用 し て有効な パ
タ ーン を検出 し ま す。 こ の入力は固定値 と す る こ と を推奨 し
ます。
1
入力
入力ポー ト レ シーバー。
real_data_in
DATA_WIDTH
出力
キ ャ リ ブ レーシ ョ ン完了後、 こ のデー タ を ト ラ ン ス ミ ッ タ ー
か ら 受信 し ます。
calib_comp
1
出力
キ ャ リ ブ レーシ ョ ンが完了 し た こ と を示 し ます。
delay_locked
1
出力
IDELAY CONTROLLER が ロ ッ ク し てい る こ と を示 し ます。
training_pattern
data_in_from_pins
XAPP1217 (v1.0) 2015 年 3 月 17 日
説明
japan.xilinx.com
10
リ フ ァ レ ン ス デザイ ンの実装
リ フ ァ レ ン ス デザイ ンの実装
こ のサンプル デザ イ ンには、送信 し たデー タ と 受信 し たデー タ が同 じ であ る こ と を確認す る ためのシ ンプルな カ ウ ン タ ー
モジ ュ ール と チ ェ ッ カー モジ ュ ールが含ま れ ます。 こ れ ら が異な る 場合、 チ ェ ッ カーのエ ラ ー フ ラ グがアサー ト さ れ ま
す。こ のフ ラ グは リ セ ッ ト をパルスす る ま でアサー ト さ れた ま ま です。図 10 に、こ のサンプル デザ イ ンの接続を示 し ます。
X-Ref Target - Figure 10
([DPSOH'HVLJQ
0+]
60$&DEOH
0+]
00&0
0+]
2XWSXW
08;
&RXQWHU
(UURU/('
&KHFNHU
,QSXW
'H08;
;BB
図 10 : サン プル デザイ ンのブ ロ ッ ク 図
こ のサ ン プル デザ イ ン を 実装す る た めの Tcl ス ク リ プ ト build_project.tcl が project デ ィ レ ク ト リ に あ り ま す。
Vivado IDE を 起 動 し た ら Tcl コ ン ソ ー ル で 現在 の 作業デ ィ レ ク ト リ を project デ ィ レ ク ト リ に 変更 し 、
build_project.tcl ス ク リ プ ト を source コ マ ン ド で実行 し ます (図 11)。
X-Ref Target - Figure 11
;BB
図 11 : Tcl ス ク リ プ ト を source コ マ ン ド で実行 し て プ ロ ジ ェ ク ト を ビル ド
build_project.tcl フ ァ イ ルを source コ マ ン ド で実行す る と プ ロ ジ ェ ク ト が作成 さ れ、 ビ ッ ト ス ト リ ーム の作成ま た
はビヘ イ ビ アー シ ミ ュ レーシ ョ ンの実行が可能にな り ます。
XAPP1217 (v1.0) 2015 年 3 月 17 日
japan.xilinx.com
11
リ フ ァ レ ン ス デザイ ンの実装
ハー ド ウ ェ ア上でのサン プル デザイ ンの実行
こ のサ ン プル デザ イ ン は Kintex®-7 FPGA KC705 評価ボー ド で動作 し ま す。 こ のボー ド の GPIO SMA コ ネ ク タ を 2 組の
SMA ペア ケーブルで接続 し ます (図 12)。
X-Ref Target - Figure 12
;BB
図 12 : ハー ド ウ ェ アのセ ッ ト ア ッ プ
Vivado IDE の Flow Navigator で [Generate Bitstream] を ク リ ッ ク し ます。 こ れで、 KC705 ボー ド を タ ーゲ ッ ト に し た ビ ッ ト
ス ト リ ームが生成 さ れます。 ビ ッ ト ス ト リ ーム を生成 し た ら 、 Integrated Logic Analyzer (ILA) コ ア を使用で き る よ う にす る
ために Vivado ハー ド ウ ェ ア マネージ ャ ーで FPGA を プ ロ グ ラ ム し ま す。 サ ン プル プ ロ ジ ェ ク ト に含ま れ る ILA コ アは
Vivado ハー ド ウ ェ ア マネージ ャ ーにのみ対応 し 、 iMPACT には対応 し てい ません。
Vivado ハー ド ウ ェ ア マネージ ャ ーで [Trigger Immediate] を ク リ ッ ク す る と 、 送信お よ び受信 し たデー タ が表示 さ れ ます。
こ こ で、 送信 し たデー タ と 受信 し たデー タ が同 じ であ る こ と を確認 し ます。 図 13 に、 ILA のデー タ を示 し ます。
X-Ref Target - Figure 13
;BB
図 13 : ILA のデー タ
SMA ケーブルを抜いて故意にエ ラ ーを発生 さ せ る と 、 エ ラ ー LED (GPIO_LED_2_LS) が点灯 し ます。 ケーブルを再び接続
し 、 リ セ ッ ト (GPIO_SW_S) をパルスす る と エ ラ ー LED が消灯 し ます。
XAPP1217 (v1.0) 2015 年 3 月 17 日
japan.xilinx.com
12
リ フ ァ レ ン ス デザイ ンの実装
サン プル シ ミ ュ レーシ ョ ンの実行
サンプル シ ミ ュ レーシ ョ ン を実行す る には、 Vivado IDE の Flow Navigator で [Run Behavioral Simulation] を ク リ ッ ク し ます
(図 14)。 す る と 、 Vivado シ ミ ュ レー タ で ビヘ イ ビ アー シ ミ ュ レーシ ョ ンが開始 し ます。
X-Ref Target - Figure 14
;BB
図 14 : サン プル ビヘ イ ビ アー シ ミ ュ レーシ ョ ン を実行
サ ン プル シ ミ ュ レーシ ョ ン のテ ス ト ベンチは ト ラ ン ス ミ ッ タ ーを レ シーバーに接続 し 、 data_path_board_jitter 信号への代
入に よ っ てジ ッ タ ーをエ ミ ュ レー ト し ます。 こ う する と 、 キ ャ リ ブ レーシ ョ ン ス テー ト マシ ンに実際の物理ボー ド と 同 じ
条件で ス ト レ ス を与え る こ と がで き ます。 キ ャ リ ブ レーシ ョ ンが完了す る ま で、 少な く と も 400µs はシ ミ ュ レーシ ョ ン を
実行 し て く だ さ い。
波形 コ ン フ ィ ギ ュ レーシ ョ ン フ ァ イ ルは、デー タ チ ェ ッ カー モジ ュ ールの信号を表示す る よ う に設定 し てい ます (図 15)。
X-Ref Target - Figure 15
;BB
図 15 : ビヘ イ ビ アー シ ミ ュ レーシ ョ ン実行後のサン プル波形
XAPP1217 (v1.0) 2015 年 3 月 17 日
japan.xilinx.com
13
IP を カ ス タ ム デザイ ンに追加する方法
IP を カ ス タ ム デザイ ン に追加する方法
こ のアプ リ ケーシ ョ ン ノ ー ト に付属す る IP ブ ロ ッ ク は、 packaged_ip デ ィ レ ク ト リ にあ り ます。 こ の IP を カ ス タ ム デ
ザ イ ンに追加す る には、 パ ッ ケージ化 し た IP を IP リ ポジ ト リ に含め る 必要があ り ます。 [Project Settings] ダ イ ア ロ グ ボ ッ
ク ス で packaged_ip デ ィ レ ク ト リ を選択 し ます (図 16)。 続いて [OK] を ク リ ッ ク し ます。
X-Ref Target - Figure 16
;BB
図 16 : IP を リ ポジ ト リ に追加
packaged_ip デ ィ レ ク ト リ を IP リ ポジ ト リ に追加する と 、 Vivado IP カ タ ロ グに I/O MUX IP が表示 さ れます (図 17)。
X-Ref Target - Figure 17
;BB
図 17 : IP カ タ ログに表示 さ れた IP
XAPP1217 (v1.0) 2015 年 3 月 17 日
japan.xilinx.com
14
リ ソ ース使用量
リ ソ ース使用量
表 5 お よ び表 6 に、 FULL_WIDTH パ ラ メ ー タ ーを 32 に設定 し た場合の ト ラ ン ス ミ ッ タ ー と レ シーバーの標準的なサ イ ズ
を示 し ます。 こ れ ら のデザ イ ンはな る べ く 軽量にな る よ う に し てい ます。
表 5 : ト ラ ン ス ミ ッ タ ーの リ ソ ース使用量
デー タ 幅
LUT
フ リ ップフロップ
16
18
19
20
22
23
24
26
27
有効ビ ッ ト
LUT
フ リ ップフロップ
16
60
80
20
63
92
24
65
104
表 6 : レ シーバーの リ ソ ース使用量
フ ァ イル階層
図 18 に、 リ フ ァ レ ン ス デザ イ ンのデ ィ レ ク ト リ 構造を示 し ます。
X-Ref Target - Figure 18
[DSSLRPX[]LS
,3
FRQVWUDLQWV
3DFNDJHGBLS
WRS[GF
FORFNLQJBEORFN
&ORFNLQJ:L]DUG,3
,QVWDQFH
SURMHFW
VLP
UWOBVRXUFH
EXLOGBSURMHFWWFO
WRSBWEY
GDWDBFKHFNHUY
VWLPXOXVY
V\QFURY
WRSY
LRBPX[BLQB
LRBPX[BRXWB
LRBPX[BLQ
LRBPX[BRXW
5HFHLYHU,3
,QVWDQFH
7UDQVPLWWHU,3
,QVWDQFH
5HFHLYHU
3DFNDJHG,3
7UDQVPLWWHU
3DFNDJHG,3
;BB
図 18 : デザイ ン フ ァ イルの階層
XAPP1217 (v1.0) 2015 年 3 月 17 日
japan.xilinx.com
15
用語の定義
用語の定義
表 7 に、 こ のアプ リ ケーシ ョ ン ノ ー ト で使用する 用語の定義を示 し ます。
表 7 : 用語の定義
用語
説明
有効ビ ッ ト
実際に送受信が可能な ビ ッ ト 。
暫定的な有効ビ ッ ト
ユーザー ロ ジ ッ ク 境界での制約を考慮 し ない有効ビ ッ ト 数。
ク リ ップ ビ ッ ト
有効ビ ッ ト の後に送信 さ れ、 破棄 さ れ る ビ ッ ト 。
パ ラ レル ク ロ ッ ク
ユーザー ク ロ ッ ク ド メ イ ン。一般的に、エ ミ ュ レーシ ョ ン シ ス テ ムでは低 ク ロ ッ ク レー ト 。
シ リ アル ク ロ ッ ク
送信お よ び受信 ク ロ ッ ク 。 パ ラ レル ク ロ ッ ク よ り も 高速。
実効 MUX 比
ユーザーか ら 見た場合の多重化比。 ク リ ッ プ ビ ッ ト は含みません。
実際の MUX 比
パ ラ レル ク ロ ッ ク と シ リ アル ク ロ ッ ク の比。
ま とめ
FPGA の一般的な用途であ る 複雑な ASIC デザ イ ンのエ ミ ュ レーシ ョ ン では、 最大規模の FPGA を使用 し て も デザ イ ン を
複数の FPGA に分割す る 必要があ り ます。 こ の場合、 FPGA 間で転送す る 信号の数が数千にお よ ぶ こ と も あ り ます。 こ の
アプ リ ケーシ ョ ン ノ ー ト では、 ASIC 設計者を対象に レ イ テ ン シ を 0 サ イ ク ルに抑え て I/O を多重化す る 方法について説
明 し ま し た。
リ フ ァ レ ン ス デザイ ン
こ のアプ リ ケーシ ョ ン ノ ー ト の リ フ ァ レ ン ス デザ イ ン フ ァ イ ルは、 ザ イ リ ン ク ス の ウ ェ ブサ イ ト か ら ダ ウ ン ロ ー ド で き
ます。
表 8 に、 リ フ ァ レ ン ス デザ イ ンの詳細を示 し ます。
表 8 : リ フ ァ レ ン ス デザイ ンの詳細
パラ メ ー タ ー
説明
全般
開発者
Luis Bielich
タ ーゲ ッ ト デバ イ ス
Kintex-7 FPGA
ソ ース コ ー ド の提供
あり
ソ ース コ ー ド の形式 (提供 さ れ る 場合)
RTL、 Tcl
シ ミ ュ レーシ ョ ン
論理シ ミ ュ レーシ ョ ンの実施
あり
タ イ ミ ン グ シ ミ ュ レーシ ョ ンの実施
あり
論理シ ミ ュ レーシ ョ ンお よ び タ イ ミ ン グ シ ミ ュ レーシ ョ ン用
テ ス ト ベンチの提供
両方
テ ス ト ベンチの形式
Verilog/SystemVerilog
使用 し たシ ミ ュ レー タ /バージ ョ ン
Vivado シ ミ ュ レー タ
XAPP1217 (v1.0) 2015 年 3 月 17 日
japan.xilinx.com
16
改訂履歴
表 8 : リ フ ァ レ ン ス デザイ ンの詳細 (続き)
パラ メ ー タ ー
説明
SPICE/IBIS シ ミ ュ レーシ ョ ンの実施
N/A
使用 し た イ ンプ リ メ ン テーシ ョ ン ツール/バージ ョ ン
2014.4
ス タ テ ィ ッ ク タ イ ミ ン グ解析の実施
あり
ハー ド ウ ェ ア検証
ハー ド ウ ェ ア検証の実施
あり
使用 し たプ ラ ッ ト フ ォーム
KC705 ボー ド
改訂履歴
次の表に、 こ の文書の改訂履歴を示 し ます。
日付
バージ ョ ン
2015 年 3 月 17 日
1.0
内容
初版
法的通知
The information disclosed to you hereunder (the “Materials”) is provided solely for the selection and use of Xilinx products. To the maximum extent
permitted by applicable law: (1) Materials are made available "AS IS" and with all faults, Xilinx hereby DISCLAIMS ALL WARRANTIES AND
CONDITIONS, EXPRESS, IMPLIED, OR STATUTORY, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY,
NON-INFRINGEMENT, OR FITNESS FOR ANY PARTICULAR PURPOSE; and (2) Xilinx shall not be liable (whether in contract or tort, including
negligence, or under any other theory of liability) for any loss or damage of any kind or nature related to, arising under, or in connection with, the
Materials (including your use of the Materials), including for any direct, indirect, special, incidental, or consequential loss or damage (including loss of
data, profits, goodwill, or any type of loss or damage suffered as a result of any action brought by a third party) even if such damage or loss was reasonably
foreseeable or Xilinx had been advised of the possibility of the same. Xilinx assumes no obligation to correct any errors contained in the Materials or to
notify you of updates to the Materials or to product specifications. You may not reproduce, modify, distribute, or publicly display the Materials without
prior written consent. Certain products are subject to the terms and conditions of Xilinx’s limited warranty, please refer to Xilinx’s Terms of Sale which
can be viewed at http://www.xilinx.com/legal.htm#tos; IP cores may be subject to warranty and support terms contained in a license issued to you by
Xilinx. Xilinx products are not designed or intended to be fail-safe or for use in any application requiring fail-safe performance; you assume sole risk and
liability for use of Xilinx products in such critical applications, please refer to Xilinx’s Terms of Sale which can be viewed at
http://www.xilinx.com/legal.htm#tos.
Automotive Applications Disclaimer
XILINX PRODUCTS ARE NOT DESIGNED OR INTENDED TO BE FAIL-SAFE, OR FOR USE IN ANY APPLICATION REQUIRING FAIL-SAFE
PERFORMANCE, SUCH AS APPLICATIONS RELATED TO: (I) THE DEPLOYMENT OF AIRBAGS, (II) CONTROL OF A VEHICLE, UNLESS
THERE IS A FAIL-SAFE OR REDUNDANCY FEATURE (WHICH DOES NOT INCLUDE USE OF SOFTWARE IN THE XILINX DEVICE TO
IMPLEMENT THE REDUNDANCY) AND A WARNING SIGNAL UPON FAILURE TO THE OPERATOR, OR (III) USES THAT COULD LEAD
TO DEATH OR PERSONAL INJURY. CUSTOMER ASSUMES THE SOLE RISK AND LIABILITY OF ANY USE OF XILINX PRODUCTS IN
SUCH APPLICATIONS.
© Copyright 2015 Xilinx, Inc. Xilinx, the Xilinx logo, Artix, ISE, Kintex, Spartan, Virtex, Vivado, Zynq, 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.
こ の資料に関す る フ ィ ー ド バ ッ ク お よ び リ ン ク な ど の問題につ き ま し ては、 [email protected] ま で、 ま たは各ページの右下
にあ る [フ ィ ー ド バ ッ ク 送信] ボ タ ン を ク リ ッ ク す る と 表示 さ れ る フ ォームか ら お知 ら せ く だ さ い。いただ き ま し た ご意見を参考に早急に
対応 さ せていただ き ます。 なお、 こ の メ ール ア ド レ スへのお問い合わせは受け付けてお り ません。 あ ら か じ めご了承 く だ さ い。
XAPP1217 (v1.0) 2015 年 3 月 17 日
japan.xilinx.com
17