UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン ユーザー ガ イ ド UG570 (v1.6) 2015 年 12 月 16 日 本資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資 料によっては英語版の更新に対応していないものがあります。日本語版は参考用としてご使用の上、最新情 報につきましては、必ず最新英語版をご参照ください。 改訂履歴 次の表に、 こ の文書の改訂履歴を示 し ます。 日付 バージ ョ ン 内容 2015 年 12 月 16 日 1.6 表 1-4 お よ び表 1-5 を更新。 第 7 章の 「MASTER_JTAG」 の 1 段落目の最後に分を 1 つ追 加。 XCN15038 に記載 さ れてい る 制限を示すため、 「RSA 認証」 に第 2 段落 と 表 8-1 を追 加。 第 8 章の 「OTP eFUSE レ ジ ス タ 」 の 1 段落目の最後に分を 1 つ追加。 表 8-3 の後の 段落に 2 つ目の文を追加。 2015 年 11 月 24 日 1.5 UltraScale+ デ バ イ ス の 情報 を 追加。 表 1-5 に デー タ を 追加。 表 1-9 の PROGRAM_B PUDC_B の説明を更新。図 9-4 に続 く 段落をわか り やす く 記載。第 9 章の 「コ ン フ ィ ギ ュ レーシ ョ ンの遅延」 の最初の文章をわか り やす く 記載。 表 9-6 に PROGRAM_B を追加。 「フ ォールバ ッ ク マルチブー ト 」 の 2 段落目 と 第 11 章の 「IPROG」 の最初の段落の説明 をわか り やす く 記載。 2015 年 9 月 15 日 1.4 KU025 デバ イ ス の コ ン フ ィ ギ ュ レーシ ョ ン情報を追加。 「SPI フ ラ ッ シ ュ 」 を 「シ リ アル NOR フ ラ ッ シ ュ 」 に変更。 ビ ッ ト ス ト リ ームのプ ロ パテ ィ 名を追加。 第 1 章に 「KU025 での違い」 を 追加。 デバ イ ス リ ソ ー ス お よ び ビ ッ ト ス ト リ ーム の長 さ を 更新 (表 1-3、 表 1-4、 お よ び表 1-5)。 第 1 章に 「デザ イ ン ツール」 を追加。 第7 章に 「STARTUPE3 と 専用 ピ ン の接続」 お よ び 「フ ラ ッ シ ュ 接続の タ イ ミ ン グ に関す る 注意事項」 を 追加。 表 9-21 に BSPI_READ お よ び FALL_Edge コ マ ン ド を追加。表 9-27 お よ び表 9-29 にビ ッ ト ス ト リ ームのプ ロ パテ ィ を追加。 第10 章に 「 リ ー ド バ ッ ク キ ャ プチ ャ 」 を追加。 第12 章に 「ギ ャ ン グ非同期 BPI コ ン フ ィ ギ ュ レーシ ョ ン」 を追加。 資料全体を マ イ ナー変更。 2015 年 3 月 31 日 1.3 Kintex UltraScale デバ イ ス XCKU085 お よ び XCKU095 の コ ン フ ィ ギ ュ レーシ ョ ン情報を 追加。 表1-4 を 変更、 表1-5 を 追加。 表1-8 の M[2:0]、 PROGRAM_B、 INIT_B、 DONE、 PUDC_B、 BPI (FCS_B)、 お よ び BPI (ADV_B) ピ ンの外部プルア ッ プ/ダ ウ ン推奨抵抗値 を変更。 表1-9 の CFGBVS の説明を変更。 図2-2、 図2-4、 図3-2、 図4-2、 図4-4、 図5-2 お よ び図12-1 ~図12-5 か ら 注記 3 を削除。 図2-2、 図2-4、 図2-5、 図3-2、 図4-2、 図4-4、 図 5-2、 図6-7、 図12-3、 図12-4、 お よ び図12-5 の VCCO_0 抵抗値を 330Ω か ら 4.7kΩ に変 更。「USR_ACCESSE2 の高度な利用法」 を変更、図7-9 を追加。「シ リ アル デ イ ジー チ ェ ー ン用の フ ァ イ ル」 に注記を追加。 表9-15 の ワ ー ド カ ウ ン ト を更新。 表9-36 の ビ ッ ト 23 を 「Reserved」 か ら 「CAPTURE」 に変更。 表9-37 お よ び表9-39 を追加。 表10-2 の ワ ー ド カ ウ ン ト を更新。 2015 年 2 月 20 日 1.2 「旧世代 と の違い」 に PG156 の参照を追加。 表1-4 に 「Production IDCODE リ ビ ジ ョ ン」 の列を追加。 表1-6 の注記 2 の説明を変更。 「コ ン フ ィ ギ ュ レーシ ョ ン ピ ン」 に Persist オ プシ ョ ンお よ び参照 リ ン ク を追加。表1-9 の説明を マ イ ナー変更。「コ ン フ ィ ギ ュ レーシ ョ ン バン ク 電圧の選択」 の 4 段落目の最後に文を 1 つ追加。 表1-11 で、 注記2 を変更 し 、 注記3 を追加。「外部マ ス タ ー コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク (EMCCLK) オプシ ョ ン」 か ら ク ロ ッ ク ソ ース の仕様を削除 し 、仕様の説明を追加。図2-2 お よ び図2-4 の VCCO_65 デス テ ィ ネーシ ョ ン を VCCO_0 か ら VCCO_65 に変更。 図4-3 の後に 2 つ目の文を追加 し 、 「同期読み出 し シーケ ン ス」 の最後に文を追加。 図4-4 を更新。 図4-2、 図4-3、 図6-7、 図12-1、 お よ び図12-5 に関す る 説明 を マ イ ナー修正。 「Shift-DR、 Exit1-DR、 Pause-DR、 Exit2-DR、 お よ び Update-DR」 の 2 つ目の段落の説明 を 変更。 表6-3 を マ イ ナー変更。 「UltraScale FPGA でのバ ウ ン ダ リ ス キ ャ ン コ ン フ ィ ギ ュ レーシ ョ ンの使用」 の最初の段 落の説明を変更。 「ICAPE3 の リ ソ ース」 を変更。 第 8 章に 「 ロ ー リ ン グ キー」 を追加。 「暗号化ビ ッ ト ス ト リ ームの読み込み」 に注記 (重要) を追加。 「RSA 認証」 の最後に文を 追加。 表8-2 の説明を修正。 表8-5 に 「RAM への影響」 を追加。 図8-2 を変更。 「JTAG に よ る デバ イ ス ID へのア ク セ ス」 を変更。 「 コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ の ク リ ア (手 順 2、 初期化)」 を変更。 第 9 章に 「EOS (End of Startup) 時の I/O 遷移」 を追加。 表9-30 の RS_TS_B の説明を変更。 「BPI - ハー ド ウ ェ ア RS ピ ンの設計上の注意点」 を変更。 図 12-2 の PROGRAM_B を INIT_B に変更。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 2 日付 バージ ョ ン 内容 2014 年 11 月 10 日 1.1 表1-4 を更新、 表1-6 を追加。 「 コ ン フ ィ ギ ュ レーシ ョ ン時間を短縮す る 方法」 で、 最後 の段落を追加。 表1-9 の ピ ン の説明を更新。 第1 章の 「外部マ ス タ ー コ ン フ ィ ギ ュ レー シ ョ ン ク ロ ッ ク (EMCCLK) オプシ ョ ン」 を変更。 表6-5 を更新。 表7-10 の ピ ンの説明を 更新。 第8 章の 「eFUSE」 を更新、 表8-4 と 表8-5 を追加。 第9 章~第13 章を追加。 2013 年 12 月 10 日 1.0 初版 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 3 目次 改訂履歴 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 第 1 章 : は じ めに UltraScale アーキ テ ク チ ャ の概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 UltraScale FPGA フ ァ ミ リ 間の機能の違い . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 旧世代 と の違い . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 設計に関す る 考察事項 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 推奨 さ れ る デザ イ ン フ ロ ーお よ び コ ン フ ィ ギ ュ レーシ ョ ン方法を決定する 要素 . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 デザ イ ン ツール . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 ピ ン配置の計画 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 コ ン フ ィ ギ ュ レーシ ョ ン ピ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 コ ン フ ィ ギ ュ レーシ ョ ン バン ク 電圧の選択 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 パ ワーオン リ セ ッ ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 外部マ ス タ ー コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク (EMCCLK) オプシ ョ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 VBATT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 第 2 章 : マス タ ー SPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド は じ めに . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . マ ス タ ー SPI イ ン タ ーフ ェ イ ス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . マ ス タ ー SPI ク ワ ッ ド (x4) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . マ ス タ ー SPI デ ュ アル ク ワ ッ ド (x8) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128Mb を越え る シ リ アル NOR フ ラ ッ シ ュ のサポー ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . マルチダ イ シ リ アル NOR フ ラ ッ シ ュ デバ イ ス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SPI コ ン フ ィ ギ ュ レーシ ョ ンの タ イ ミ ン グ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 最大 コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク 周波数の決定 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 電源投入シーケ ン ス に関す る 注意事項 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 38 43 44 47 47 47 48 48 第 3 章 : シ リ アル コ ン フ ィ ギ ュ レーシ ョ ン モー ド は じ めに ス レーブ マス ター シ リ アル ......................................................................................... シ リ アル コ ン フ ィ ギ ュ レーシ ョ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . シ リ アル コ ン フ ィ ギ ュ レーシ ョ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . コ ン フ ィ ギ ュ レーシ ョ ン デー タ の ク ロ ッ キ ン グ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 49 51 52 第 4 章 : マス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド は じ めに . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . マ ス タ ー BPI イ ン タ ーフ ェ イ ス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . マ ス タ ー BPI 同期読み出 し . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . マ ス タ ー BPI 非同期読み出 し . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . コ ン フ ィ ギ ュ レーシ ョ ン時間 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 53 53 55 58 61 4 電源投入シーケ ン ス に関す る 注意事項 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 フ ァ イ ル生成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 パ ラ レル NOR フ ラ ッ シ ュ のプ ロ グ ラ ミ ン グ オプシ ョ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 第 5 章 : SelectMAP コ ン フ ィ ギ ュ レーシ ョ ン モー ド は じ めに . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SelectMAP コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 単一デバ イ ス の SelectMAP コ ン フ ィ ギ ュ レーシ ョ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SelectMAP デー タ 読み込み . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 66 67 69 第 6 章 : バウン ダ リ スキ ャ ンおよび JTAG コ ン フ ィ ギ ュ レーシ ョ ン は じ めに . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IEEE 1149.1 を使用 し たバ ウ ン ダ リ ス キ ャ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ザ イ リ ン ク ス デバ イ ス でのバ ウ ン ダ リ ス キ ャ ンの使用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . バ ウ ン ダ リ ス キ ャ ン デザ イ ンの考察事項 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TAP コ ン ト ロ ー ラ ーお よ びアーキ テ ク チ ャ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 74 76 77 78 第 7 章 : デザイ ン入力 は じ めに . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . BSCANE2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DNA_PORTE2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . EFUSE_USR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90 91 93 94 属性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 FRAME_ECCE3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 ICAPE3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 MASTER_JTAG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 STARTUPE3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 USR_ACCESSE2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 第 8 章 : ビ ッ ト ス ト リ ームのセキ ュ リ テ ィ 、 eFUSE、 Device DNA は じ めに . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . リ ー ド バ ッ ク セキ ュ リ テ ィ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ビ ッ ト ス ト リ ームの暗号化 と 認証 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . eFUSE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 106 107 111 デバ イ ス ID (Device DNA). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 第 9 章 : コ ン フ ィ ギ ュ レーシ ョ ンの詳細 は じ めに . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . コ ン フ ィ ギ ュ レーシ ョ ン デー タ フ ァ イ ルの形式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . コ ン フ ィ ギ ュ レーシ ョ ン シーケ ン ス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ーム . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . コ ン フ ィ ギ ュ レーシ ョ ン レ ジ ス タ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 117 120 131 136 第 10 章 : リ ー ド バ ッ ク 検証および CRC 概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Persist オプシ ョ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . リ ー ド バ ッ ク コ マ ン ド シーケ ン ス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . リ ー ド バ ッ ク デー タ の検証 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . リ ー ド バ ッ ク CRC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SEU の検出お よ び訂正 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . リ ー ド バ ッ ク キ ャ プチ ャ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 150 150 151 159 161 162 162 5 第 11 章 : マルチ ブー ト および リ コ ン フ ィ ギ ュ レーシ ョ ン は じ めに . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . フ ォールバ ッ ク マルチブー ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IPROG リ コ ン フ ィ ギ ュ レーシ ョ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . フ ォールバ ッ ク お よ び IPROG リ コ ン フ ィ ギ ュ レーシ ョ ンに関連す る ス テー タ ス レ ジ ス タ . . . . . . . . . . . . . . . . . フ ァ ン ク シ ョ ン ブ ロ ッ ク のダ イ ナ ミ ッ ク リ コ ン フ ィ ギ ュ レーシ ョ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163 163 169 171 172 第 12 章 : 複数 FPGA の コ ン フ ィ ギ ュ レーシ ョ ン は じ めに . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173 シ リ アル コ ン フ ィ ギ ュ レーシ ョ ン モー ド . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173 パ ラ レル コ ン フ ィ ギ ュ レーシ ョ ン モー ド . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 第 13 章 : コ ン フ ィ ギ ュ レーシ ョ ンのデバ ッ グ は じ めに . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . フ ァ イ ル生成の確認 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ス テー タ ス ピ ンの処理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ス テー タ ス レ ジ ス タ の使用 と JTAG ア ク セ ス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 検証お よ び リ ー ド バ ッ ク . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . コ ン フ ィ ギ ュ レーシ ョ ン シーケ ン ス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 最初のデバ ッ グ手順 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181 181 182 182 183 183 184 付録 A : その他の リ ソ ースおよび法的通知 ザ イ リ ン ク ス リ ソ ース . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ソ リ ュ ーシ ョ ン セ ン タ ー . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 参考資料 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 法的通知 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 185 185 185 186 6 第 1章 は じ めに UltraScale アーキテ ク チ ャの概要 ザ イ リ ン ク ス UltraScale™ アーキ テ ク チ ャ は、 チ ッ プ上での効率的な配線 と デー タ 処理だけでな く 、 ス マー ト プ ロ セ ッ シ ン グに よ っ て数百ギ ガ ビ ッ ト /秒 レ ベルのシ ス テ ム性能を可能にす る 業界初の ASIC ク ラ ス All Programmable アーキ テ ク チ ャ です。 UltraScale アーキ テ ク チ ャ デバ イ ス は、 次世代配線、 ASIC 方式の ク ロ ッ キ ン グ、 3D-on-3D IC、 マルチプ ロ セ ッ サ SoC (MPSoC) テ ク ノ ロ ジ、 新 し い消費電力削減機能な ど、 業界最先端を い く 革新的な技術に よ っ て高帯域幅、 高使用率の幅広いシ ス テ ム要件に対応 し ます。 こ れ ら のデバ イ スは多数の構築ブ ロ ッ ク が共通 と な っ て い る ため、 異な る プ ロ セ ス ノ ー ド 間や製品フ ァ ミ リ 間での拡張性に優れ、 複数のプ ラ ッ ト フ ォ ーム に渡 る シ ス テ ム レベルでの投資を可能に し ます。 Virtex® UltraScale+™ デバ イ ス は、 最 も 高いシ リ アル I/O 帯域幅 と 信号処理帯域幅、 最大のオンチ ッ プ メ モ リ 集積度 な ど、 FinFET ノ ー ド で最高の性能 と 統合性を提供 し ます。 業界で最高性能を誇 る FPGA フ ァ ミ リ の Virtex UltraScale+ デバ イ ス は、 1Tb/s を越え る ネ ッ ト ワ ー ク やデー タ セ ン タ ーか ら 、 完全統合型レーダー /早期警告シ ス テ ム にいた る ま で、 広範なアプ リ ケーシ ョ ンに最適です。 Virtex UltraScale デバ イ ス は、 シ リ アル I/O 帯域幅お よ び ロ ジ ッ ク 容量な ど において、 20nm で最高の性能 と 統合性を 提供 し ま す。 20nm プ ロ セ ス ノ ー ド で業界唯一のハ イ エ ン ド FPGA と な る こ のデバ イ ス は、 400G ネ ッ ト ワ ー ク か ら 大規模 ASIC のプ ロ ト タ イ ピ ン グやエ ミ ュ レーシ ョ ン な ど のアプ リ ケーシ ョ ンに最適です。 Kintex® UltraScale+ デバ イ ス は、 ト ラ ン シーバー、 メ モ リ イ ン タ ーフ ェ イ ス ラ イ ン レー ト 、 100G コ ネ ク テ ィ ビ テ ィ コ ア な ど のハ イ エ ン ド 機能を備え る こ と で最 も コ ス ト 効率の高い ソ リ ュ ーシ ョ ン を可能に し 、 FinFET ノ ー ド で最 も 優れた価格/性能/ワ ッ ト のバ ラ ン ス を提供 し ます。 こ の最新の ミ ッ ド レ ン ジ フ ァ ミ リ は、 パケ ッ ト 処理 と DSP を多用 す る 機能に最適であ る と 同時に、 ワ イ ヤ レ ス MIMO 技術、 Nx100G ネ ッ ト ワー ク 、 デー タ セ ン タ ーな ど広範なアプ リ ケーシ ョ ンに も 対応 し ます。 Kintex UltraScale は、 20nm で最高の価格/性能/ ワ ッ ト のバ ラ ン ス を提供す る デバ イ ス で、 ミ ッ ド レ ン ジ デバ イ ス と し て最高の信号処理帯域幅、 次世代 ト ラ ン シーバー、 最適な対 コ ス ト 性能を も た ら す低 コ ス ト パ ッ ケージ を提供 し ま す。 こ のフ ァ ミ リ は、 100G ネ ッ ト ワ ー ク やデー タ セ ン タ ー アプ リ ケーシ ョ ンでのパケ ッ ト 処理だけでな く 、 次世代 の医療用画像処理、 8k4k ビデオ、 ヘテ ロ ジニア ス な ワ イ ヤ レ ス イ ン フ ラ な ど で必要 と さ れ る DSP 性能を重視す る ア プ リ ケーシ ョ ンに も 最適です。 Zynq® UltraScale+ MPSoC デバ イ ス は、 64 ビ ッ ト のプ ロ セ ッ サ ス ケー ラ ビ リ テ ィ を備え、 グ ラ フ ィ ッ ク ス、 ビデオ、 波形、 パケ ッ ト 処理に ソ フ ト お よ びハー ド エン ジ ンの連携に よ る リ アル タ イ ム制御を提供 し ます。 高度な解析が可能 な ARM® ベー ス のシ ス テ ム と タ ス ク のア ク セ ラ レ ーシ ョ ン が可能なオ ン チ ッ プ プ ロ グ ラ マブル ロ ジ ッ ク が統合 さ れてい る ため、 5G ワ イ ヤ レ ス、 次世代 ADAS、 イ ン ダ ス ト リ アル IoT な ど広範な アプ リ ケーシ ョ ン において無限の 可能性を引 き 出す こ と がで き ます。 こ の ユ ー ザ ー ガ イ ド で は、 UltraScale ア ー キ テ ク チ ャ FPGA の コ ン フ ィ ギ ュ レ ー シ ョ ン に つ い て 説明 し ま す。 UltraScale アーキ テ ク チ ャ に関す る その他の資料は、 ザ イ リ ン ク ス の ウ ェ ブサ イ ト (japan.xilinx.com/ultrascale) か ら 入 手可能です。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 7 第 1 章 : は じ めに 概要 こ の章では、 UltraScale アーキ テ ク チ ャ FPGA の コ ン フ ィ ギ ュ レーシ ョ ン方法お よ び機能について簡単な概要を説明 し ます。 詳細については、 次章以降で説明 し ます。 ザ イ リ ン ク ス の FPGA は非常に高い柔軟性を備えた再プ ロ グ ラ ム可能な ロ ジ ッ ク デバ イ ス です。 プ ロ セ ッ サ同様、ザ イ リ ン ク ス FPGA も 完全にユーザー プ ロ グ ラ ム可能です。 FPGA では、 アプ リ ケーシ ョ ン固有の FPGA 機能を定義 し たプ ロ グ ラ ムの こ と を ビ ッ ト ス ト リ ーム と 呼びます。 ビ ッ ト ス ト リ ームは、 シ ス テ ムの電源投入時ま たはシ ス テ ムの 必要に応 じ て FPGA の内部 メ モ リ に読み込まれます。 プ ロ セ ッ サやプ ロ セ ッ サ ペ リ フ ェ ラ ルの よ う に、 ザ イ リ ン ク ス FPGA は、 イ ン シ ス テ ム で必要に応 じ て何度で も 再 プ ロ グ ラ ム で き ま す。 プ ロ グ ラ ム完了後、 FPGA ビ ッ ト ス ト リ ームは堅牢性の高い CMOS コ ン フ ィ ギ ュ レ ーシ ョ ン ラ ッ チ (CCL) に格納 さ れます。 CCL も SRAM メ モ リ の よ う に再プ ロ グ ラ ム可能ですが、 CCL は主にデー タ 整合性を 重視 し て設計 さ れてい ます。 ザ イ リ ン ク ス FPGA の ビ ッ ト ス ト リ ームは CCL に格納 さ れ る ため、 い っ たん電源を切 断す る と 次の電源投入時にデバ イ ス を コ ン フ ィ ギ ュ レーシ ョ ン し 直す必要があ り ます。 FPGA の機能を定義 し たデー タ を FPGA に読み込む (プ ロ グ ラ ムす る ) こ と を コ ン フ ィ ギ ュ レーシ ョ ン と 呼びます。 コ ン フ ィ ギ ュ レーシ ョ ンは さ ま ざ ま な アプ リ ケーシ ョ ン ニーズに対応で き る よ う に柔軟性を重視 し た設計にな っ てお り 、 可能な限 り 既存のシ ス テ ム リ ソ ース を有効利用する こ と でシ ス テ ム コ ス ト の最小化を図 る こ と がで き ます。 プ ロ セ ッ サ と 同 じ よ う に、 ザ イ リ ン ク ス FPGA も 外部非揮発性 メ モ リ デバ イ ス か ら 自動的に ビ ッ ト ス ト リ ーム を読 み込んで起動 さ せ る こ と がで き ます。 あ る いは、 プ ロ セ ッ サ ペ リ フ ェ ラ ル と 同 じ よ う にマ イ ク ロ プ ロ セ ッ サ、 DSP プ ロ セ ッ サ、 マ イ ク ロ コ ン ト ロ ー ラ ー、PC、 ボー ド テ ス タ ーな ど の外部デバ イ ス を利用 し てザ イ リ ン ク ス FPGA にビ ッ ト ス ト リ ーム を ダ ウ ン ロ ー ド ま たはプ ロ グ ラ ムす る こ と も 可能です。コ ン フ ィ ギ ュ レーシ ョ ンにシ リ アル デー タ パ ス を利用す る と 、 コ ン フ ィ ギ ュ レーシ ョ ン に必要な ピ ン数を最小限に抑え る こ と がで き ます。 業界標準の IEEE 1149.1 JTAG バ ウ ン ダ リ ス キ ャ ン イ ン タ ーフ ェ イ ス に よ る コ ン フ ィ ギ ュ レ ーシ ョ ン も シ リ アル コ ン フ ィ ギ ュ レ ーシ ョ ン に 含まれます。 コ ン フ ィ ギ ュ レーシ ョ ンにパ ラ レル デー タ パ ス を利用す る と 、 業界標準 イ ン タ ーフ ェ イ ス を使用 し て コ ン フ ィ ギ ュ レーシ ョ ン速度を最大限に向上で き ます。 こ のモー ド は、 プ ロ セ ッ サや x8/x16 パ ラ レル フ ラ ッ シ ュ メ モ リ な ど の外部デー タ ソ ース に最適です。 コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ームは、 特別な コ ン フ ィ ギ ュ レ ーシ ョ ン ピ ン か ら FPGA に読み込ま れ ま す。 こ れ ら の コ ン フ ィ ギ ュ レーシ ョ ン ピ ンは、 次の よ う な コ ン フ ィ ギ ュ レーシ ョ ン モー ド で イ ン タ ーフ ェ イ ス と し て機 能 し ます。 • ス レーブ シ リ アル • ス レーブ SelectMAP (パ ラ レル) (x8、 x16、 x32) • JTAG バ ウ ン ダ リ ス キ ャ ン • マ ス タ ー SPI (シ リ アル ペ リ フ ェ ラ ル イ ン タ ーフ ェ イ ス) (シ リ アル NOR フ ラ ッ シ ュ x1、 x2、 x4、 お よ びデ ュ ア ル x4 = x8) • マ ス タ ー BPI (バ イ ト ペ リ フ ェ ラ ル イ ン タ ーフ ェ イ ス) (パ ラ レル NOR フ ラ ッ シ ュ x8、 x16) • マ ス タ ー シ リ アル • マ ス タ ー SelectMAP (パ ラ レル) (x8、 x16) 「マ ス タ ー」 お よ び 「ス レーブ」 と い う 表現は、 コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク (CCLK) の方向を示 し ます。 • マ ス タ ー コ ン フ ィ ギ ュ レーシ ョ ン モー ド では、FPGA が内部オシ レー タ ーか ら の CCLK を駆動 し ます。CCLK の 周波数は、 コ ン フ ィ ギ ュ レーシ ョ ン オプシ ョ ン で設定 し ます。 デフ ォ ル ト では CCLK は コ ン フ ィ ギ ュ レーシ ョ ン後にオ フ にな り 、 CCLK ピ ンは弱いプルア ッ プに よ り ト ラ イ ス テー ト にな り ます。 • ス レーブ コ ン フ ィ ギ ュ レーシ ョ ン モー ド では、 CCLK は入力です。 コ ン フ ィ ギ ュ レ ーシ ョ ン モー ド は、 モー ド 入力ピ ン M[2:0] で レ ベルを設定 し て選択 し ま す。 M2、 M1、 お よ び M0 モー ド ピ ンは、一定 し た DC 電圧レベルで設定す る 必要があ り ます。 こ れは、プルア ッ プ ま たはプルダ ウ ン抵抗 (1kΩ 未満) を使用す る か、 GND ま たは VCCO_0 に直接接続 し て設定 し ます。 JTAG (バ ウ ン ダ リ ス キ ャ ン) コ ン フ ィ ギ ュ レー シ ョ ン イ ン タ ーフ ェ イ ス は、 モー ド ピ ンの設定にかかわ ら ず常に使用で き ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 8 第 1 章 : は じ めに コ ン フ ィ ギ ュ レーシ ョ ン モー ド の詳細は、 第 2 章~第 5 章で説明 し ます。 ま た、 FPGA ロ ジ ッ ク か ら コ ン フ ィ ギ ュ レ ーシ ョ ン ロ ジ ッ ク への内部接続を利用 し て、 FPGA 自身が コ ン フ ィ ギ ュ レーシ ョ ン を制御す る こ と も 可能です。 こ の場合、 FPGA が選択 し た別のデザ イ ン でデバ イ ス全体を再プ ロ グ ラ ム で き る ほか、 デバ イ ス の一部でアプ リ ケーシ ョ ン を実行 し なが ら 別の領域に新 し い機能を再プ ロ グ ラ ムす る パーシ ャ ル リ コ ン フ ィ ギ ュ レーシ ョ ン も 実行で き ます。 UltraScale FPGA フ ァ ミ リ 間の機能の違い こ の資料の説明お よ び例は、 Kintex UltraScale お よ び Virtex UltraScale フ ァ ミ リ を ベー ス に し て い ま す。 こ こ では、 Kintex UltraScale+ お よ び Virtex UltraScale+ フ ァ ミ リ におけ る い く つかの違い を示 し ます。 • マ ス タ ー シ リ アルお よ びマ ス タ ー SelectMAP コ ン フ ィ ギ ュ レーシ ョ ン モー ド はサポー ト さ れてい ません。 こ れ ら のモー ド は、 ほかの UltraScale フ ァ ミ リ で も 推奨 さ れてい ません。 • UltraScale+ FPGA では、 コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス は 1.8V ま たは 1.5V でのみ動作で き ます。 • コ ン フ ィ ギ ュ レーシ ョ ン フ レームのサ イ ズは、 UltraScale+ FPGA の場合は 93 個の 32 ビ ッ ト ワー ド 、 UltraScale FPGA の場合は 123 個の 32 ビ ッ ト ワー ド です。 旧世代 と の違い UltraScale アーキ テ ク チ ャ FPGA は 7 シ リ ーズ FPGA と 同様の コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス をサポー ト し てい ますが、 コ ン フ ィ ギ ュ レーシ ョ ン性能向上のための改良が数多 く 加え ら れてい ます。 表 1-1 に、 サポー ト さ れ る コ ン フ ィ ギ ュ レーシ ョ ン モー ド の主な違い を ま と め ます。 表 1-1 : UltraScale アーキテ ク チ ャ FPGA と 7 シ リ ーズ FPGA のコ ン フ ィ ギ ュ レーシ ョ ン モー ド の比較 コ ン フ ィ ギ ュ レーシ ョ ン モー ド UltraScale アーキテ ク チ ャ 7 シ リ ーズ ス レーブ シ リ アル モー ド あり あり ス レーブ SelectMAP モー ド あり あり JTAG モー ド あり あり マ ス タ ー SPI モー ド (x1、 x2、 x4) あり あり マ ス タ ー SPI モー ド (デ ュ アル x4 = x8) あり なし マ ス タ ー BPI モー ド あり あり マ ス タ ー シ リ アル モー ド マ ス タ ー SelectMAP モー ド あ り (1) あり あ り (1) あり 注記 : 1. マ ス タ ー シ リ アルお よ びマ ス タ ー SelectMAP モー ド も 引 き 続 き サポー ト し てい ますが、よ り 高集積度で低 コ ス ト な フ ラ ッ シ ュ デバ イ ス を 利用で き る マ ス タ ー SPI お よ びマ ス タ ー BPI コ ン フ ィ ギ ュ レ ーシ ョ ン モー ド の使用 を 推奨 し ま す。 9 ページ の 「UltraScale FPGA フ ァ ミ リ 間の機能の違い」 を参照 し て く だ さ い。 マ ス タ ー コ ン フ ィ ギ ュ レーシ ョ ン モー ド は、 標準のサー ド パーテ ィ 製 メ モ リ と 組み合わせて利用で き る よ う に最適 化 さ れてい ます。 SPI モー ド では標準の x1、 x2、 x4 シ リ アル NOR フ ラ ッ シ ュ メ モ リ と 接続 し 、 BPI モー ド では x8 ま たは x16 パ ラ レル NOR フ ラ ッ シ ュ メ モ リ と 接続 し ます。 ヒ ン ト : マ ス タ ー シ リ アルお よ びマ ス タ ー SelectMAP コ ン フ ィ ギ ュ レーシ ョ ン モー ド はサポー ト さ れてい ますが、こ れ ら が必要 と な る アプ リ ケーシ ョ ンはほ と ん ど あ り ません。 7 シ リ ーズ FPGA では、 従来のシ リ アル PROM か ら コ ン フ ィ ギ ュ レーシ ョ ンす る 場合や、CPLD ベース のカ ス タ ム コ ン フ ィ ギ ュ レーシ ョ ン ス テー ト マシ ン を FPGA の CCLK UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 9 第 1 章 : は じ めに で駆動す る ためにマ ス タ ー シ リ アル モー ド を サポー ト し てい ま し た。 パ ラ レ ル フ ラ ッ シ ュ か ら 直接 コ ン フ ィ ギ ュ レ ーシ ョ ン す る 場合は、 マ ス タ ー SelectMAP モー ド の代替に BPI コ ン フ ィ ギ ュ レ ーシ ョ ン モー ド を 推奨 し ま す。 9 ページの 「UltraScale FPGA フ ァ ミ リ 間の機能の違い」 を参照 し て く だ さ い。 UltraScale アーキ テ ク チ ャ FPGA には、2 つの ク ワ ッ ド SPI フ ラ ッ シ ュ メ モ リ を並列に接続 し て コ ン フ ィ ギ ュ レーシ ョ ン を実行す る 新 し い コ ン フ ィ ギ ュ レ ーシ ョ ン モー ド が追加 さ れてい ま す。 こ の x8 マ ス タ ー SPI コ ン フ ィ ギ ュ レ ー シ ョ ン モー ド では、 標準の低 コ ス ト で高速なシ リ アル NOR コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ を使用 し 、 コ ン フ ィ ギ ュ レーシ ョ ン時間を短縮で き ます。 こ のセ ク シ ョ ンでは、 その他の性能の改良点について説明 し ます。 • 内部 コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク (CCLK) の速度が向上 し 、 最大周波数が 2 倍、 周波数変動が少な く な っ て い ます。 • 電源投入時の コ ン フ ィ ギ ュ レーシ ョ ン時間の大部分をパ ワーオン リ セ ッ ト (POR) 遅延が占め る こ と があ る た め、 UltraScale アーキ テ ク チ ャ FPGA には電源が十分に短時間で立ち上が る こ と がわか っ てい る 場合に POR 遅延 を短縮で き る 専用の ピ ン (POR_OVERRIDE) が用意 さ れてい ます。 • シ ン グル イ ベン ト ア ッ プセ ッ ト (SEU) に よ る コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト エ ラ ーの内部ス キ ャ ン も 高速に な り 、 エ ラ ーの軽減に必要な時間が短縮 さ れてい ます。 • 暗号化ビ ッ ト ス ト リ ームの復号化に新 し い AES-GCM アルゴ リ ズ ム を採用 し た こ と で、 セキ ュ ア な コ ン フ ィ ギ ュ レーシ ョ ンの速度が暗号化を用いない コ ン フ ィ ギ ュ レーシ ョ ン と 同等に ま で向上 し ま し た。 暗号化キーを格納す る RAM のバ ッ ク ア ッ プ電源の ピ ン名が VCCBATT か ら VBATT に変更 さ れま し た。 • デバ イ ス を識別す る 一意の値であ る Device DNA が 57 ビ ッ ト か ら 96 ビ ッ ト に拡張 さ れま し た。 UltraScale アーキ テ ク チ ャ FPGA では RDWR_B と FCS_B が 1 つの ピ ンに集約 さ れ、 コ ン フ ィ ギ ュ レーシ ョ ン専用バ ン ク 0 に移動 さ れま し た。 CSI_B と ADV_B も 1 つの ピ ンに集約 さ れてい ます。 コ ン フ ィ ギ ュ レーシ ョ ンに必要な ピ ンの数を少な く す る こ と で、 I/O の柔軟性が最大限に向上 し てい ます。 こ のほか、 最初の 4 つのデー タ ピ ン D[03:00]、 お よ び コ ン フ ィ ギ ュ レーシ ョ ン中のプルア ッ プ制御ピ ン PUDC_B も 7 シ リ ーズ FPGA では多目的 I/O で し たが、UltraScale アーキ テ ク チ ャ FPGA ではバン ク 0 の コ ン フ ィ ギ ュ レーシ ョ ン 専用ピ ンに変更 さ れてい ます。 UltraScale アーキ テ ク チ ャ FPGA では、 一部の コ ン フ ィ ギ ュ レーシ ョ ン モー ド で使用す る 多目的ピ ンが 1 つの I/O バ ン ク (バン ク 65) のみに集約 さ れてい ます。 各ピ ン が ど のバン ク に属す る かは、 ピ ン配置に記載 さ れてい ます。 コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス には、 1.5V、 1.8V、 2.5V、 3.3V の電源を供給で き ます。 各デバ イ ス でサポー ト さ れ る モー ド 別の電圧範囲は、 33 ページの 「コ ン フ ィ ギ ュ レーシ ョ ン バン ク 電圧の選択」 を参照 し て く だ さ い。 UltraScale アーキ テ ク チ ャ FPGA も 内部コ ン フ ィ ギ ュ レーシ ョ ン ア ク セ ス ポー ト (ICAP) をサポー ト し てお り 、 FPGA ロ ジ ッ ク と コ ン フ ィ ギ ュ レーシ ョ ン機能の間で直接ア ク セ ス が可能です。 ICAP イ ン タ ーフ ェ イ ス は SelectMAP イ ン タ ーフ ェ イ ス に似てお り 、 ユーザー ロ ジ ッ ク か ら ア ク テ ィ ブな リ コ ン フ ィ ギ ュ レーシ ョ ン を開始で き ます。Integrated Block for PCI Express に対 し て も 、新 し い MCAP (Media Configuration Access Port) に よ っ て同様の接続が提供 さ れます。 電源投入時にはサ イ ズの小 さ い初期ビ ッ ト ス ト リ ームのみを読み込んで PCIe イ ン タ ーフ ェ イ ス を有効に し 、 残 り の コ ン フ ィ ギ ュ レーシ ョ ンは PCIe イ ン タ ーフ ェ イ ス で読み込む こ と に よ り 、 読み込み時間を短縮 し ます。 こ の手法を タ ンデム PCIe と いい ま す。 別の手法 と し て、 2 段階目の コ ン フ ィ ギ ュ レーシ ョ ン を標準の コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス を介 し て読み込む こ と がで き ます。 こ れを タ ンデム PROM と いい ます。 PCIe イ ン タ ーフ ェ イ ス を 使用す る コ ン フ ィ ギ ュ レーシ ョ ンの詳細は、 『UltraScale Architecture Gen3 Integrated Block for PCI Express LogiCORE IP 製品ガ イ ド 』 (PG156) [参照 1] を参照 し て く だ さ い。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 10 第 1 章 : は じ めに 第 7 章 「デザ イ ン入力」 では、 コ ン フ ィ ギ ュ レーシ ョ ンお よ びバ ウ ン ダ リ ス キ ャ ン コ ン ポーネ ン ト の詳細を説明 し て い ます。 7 シ リ ーズ と は次のプ リ ミ テ ィ ブが異な り ます。 • DNA_PORTE2 ° • FRAME_ECCE3 ° • • 利用で き る コ ン フ ィ ギ ュ レーシ ョ ン ピ ンの数が増加 (FCS_B お よ び D[03:00]) MASTER_JTAG ° • Soft Error Mitigation (SEM) IP で使用 STARTUPE3 ° • 96 ビ ッ ト に拡張 JTAG ロ ジ ッ ク に内部か ら 安全にア ク セ スする ための新機能を提供 CAPTUREE2 ° サポー ト を終了 ° Vivado® ILA (Integrated Logic Analyzer) を使用 し てデザ イ ンの内部信号を モニ タ ー ICAPE3 ° ス テー タ ス信号が増加 ° x32 のみサポー ト KU025 での違い 最小規模の Kintex UltraScale デバ イ ス、 KU025 の コ ン フ ィ ギ ュ レ ーシ ョ ン機能には制限が あ り ま す。 KU025 では、 RSA 認証、 SEU Mitigation (SEM) IP、 ま たは コ ン フ ィ ギ ュ レーシ ョ ン後の CRC はサポー ト さ れません。 表 1-2 に、 7 シ リ ーズ と UltraScale フ ァ ミ リ 間の機能の違いを ま と めてい ます。 Kintex UltraScale KU025 デバ イ ス では 制限 さ れてい る 機能 も あ り ます。 表 1-2 : フ ァ ミ リ 間の機能の違い 機能 Kintex UltraScale および Virtex UltraScale 7 シ リ ーズ Kintex UltraScale+ お よび Virtex UltraScale+ 内部 CCLK < 100MHz > 100MHz > 100MHz POR_OVERRIDE なし あり あり SEM IP あ り、 FRAME_ECCE2 を 使用 あ り (KU025 を除 く )、 よ り 高速、 改善 さ れた FRAME_ECCE3 を使用 あ り 、 よ り 高速、 改善 さ れたFRAME_ECCE3 を使用 リ ードバッ ク CRC あり な し 、 SEM IP を使用 (SEM IP は KU025 ではサポー ト さ れない) あ り 、 ただ し SEM IP は推奨 さ れない 暗号化 AES AES-GCM : 標準 の コ ン フ ィ ギ ュ レ ー シ ョ ン と 同等の性能 AES-GCM : 標準 の コ ン フ ィ ギ ュ レ ー シ ョ ン と 同等の性能 認証 HMAC AES-GCM お よ び RSA (KU025 を除 く ) AES-GCM お よ び RSA Device DNA DNA_PORT、 57 ビ ッ ト DNA_PORTE2、 96 ビ ッ ト DNA_PORTE2、 96 ビ ッ ト バン ク 0 の電圧 1.5V ~ 3.3V 1.5V ~ 3.3V 1.5V ~ 1.8V 多目的バン ク の 電圧 1.5V ~ 3.3V Kintex (KU095 を除 く ) : 1.5V ~ 3.3V Virtex お よ び KU095 : 1.5V ~ 1.8V 1.5V ~ 1.8V 多目的バン ク 14、 15 65 65 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 11 第 1 章 : は じ めに 表 1-2 : フ ァ ミ リ 間の機能の違い (続き) 機能 Kintex UltraScale および Virtex UltraScale 7 シ リ ーズ RDWR_B お よ び FCS_B ピ ン Kintex UltraScale+ お よび Virtex UltraScale+ RDWR_B お よ び RDWR_FCS_B と し て統合 さ れて い る 、 FDWR_FCS_B と し て統合 さ れてい る 、 FCS_B はそれぞれ 専用 専用 独立、 多目的 D[03:00]、PUDC_B 多目的、 STARTUPE2 に 含まれない 専用、 STARTUPE3 に含まれ る 専用、 STARTUPE3 に含まれ る MCAP N/A あり あり MASTER_JTAG N/A あり あり CAPTUREE2 あり なし No ICAP ICAPE2 : 16 ビ ッ ト 、 32 ビ ッ ト ICAPE3 : 32 ビ ッ ト 、 追加の ス テー タ ス 信号 ICAPE3 : 32 ビ ッ ト 、 追加の ス テー タ ス 信号 3D IC 内の違い SSI (Stacked Silicon Interconnect) テ ク ノ ロ ジ を採用 し た 3D IC は、モ ノ リ シ ッ ク デバ イ ス と 同 じ コ ン フ ィ ギ ュ レーシ ョ ン モー ド をサポー ト し ます。 SSI テ ク ノ ロ ジ を採用 し たデバ イ ス の詳細は、 『UltraScale アーキ テ ク チ ャ お よ び製品概 要』 (DS890) [参照 2] お よ び All Programmable 3D IC の ウ ェ ブサ イ ト [参照 3] を参照 し て く だ さ い。 3D IC には複数の SLR (Super Logic Region) があ り 、 それぞれが固有の コ ン ト ロ ー ラ ーを備え てい ます。 1 つの SLR が マ ス タ ー と し て定義 さ れ、 その他は ス レーブ と な り ます (表 1-3 参照)。 コ ン フ ィ ギ ュ レーシ ョ ン バン ク 、 お よ び タ ン デム コ ン フ ィ ギ ュ レーシ ョ ン をサポー ト す る PCIe ブ ロ ッ ク は常にマ ス タ ー SLR に配置 さ れます。デバ イ ス の フ ロ ア プ ラ ンの一番下にあ る SLR は SLR 0 と な り 、 垂直方向に番号が大 き く な り ます。 表 1-3 : SSI テ ク ノ ロ ジ を採用 し た UltraScale デバイ ス デバイ ス マス タ ー SLR ス レーブ SLR KU085 SLR0 SLR1 KU115 SLR0 SLR1 VU125 SLR0 SLR1 VU160 SLR1 SLR0 お よ び SLR2 VU190 SLR1 SLR0 お よ び SLR2 VU440 SLR1 SLR0 お よ び SLR2 設計に関する考察事項 効率の良いシ ス テ ム を構築す る には、 シ ス テ ム要件に最 も 合っ た FPGA コ ン フ ィ ギ ュ レーシ ョ ン モー ド を選択す る こ と が重要です。 いずれの コ ン フ ィ ギ ュ レーシ ョ ン モー ド で も 、 コ ン フ ィ ギ ュ レーシ ョ ン専用の FPGA ピ ン だけで な く その他の多目的ピ ン も 一時的に コ ン フ ィ ギ ュ レ ーシ ョ ン に使用可能です。 コ ン フ ィ ギ ュ レ ーシ ョ ン が完了す る と 、 こ れ ら の多目的ピ ンは汎用ピ ン と な り ます。 同様に、 使用す る コ ン フ ィ ギ ュ レーシ ョ ン モー ド に よ り 、 FPGA I/O バン ク の電圧が制限 さ れ る こ と も あ り ます。 コ ン フ ィ ギ ュ レーシ ョ ン オプシ ョ ンはい く つかあ り 、 柔軟性があ り ます が、 各シ ス テ ムに最適な ソ リ ュ ーシ ョ ンがあ る のが一般的です。 最適な コ ン フ ィ ギ ュ レーシ ョ ン オプシ ョ ン を選択す る には、 全体的な設定、 速度、 コ ス ト 、 複雑 さ と いっ た要因を考慮す る 必要があ り ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 12 第 1 章 : は じ めに FPGA コ ン フ ィ ギ ュ レーシ ョ ン デー タ ソ ース UltraScale アーキ テ ク チ ャ FPGA は柔軟性を最大限に考慮 し て設計 さ れてい ます。コ ン フ ィ ギ ュ レーシ ョ ン デー タ は、 FPGA 自身が非揮発性フ ラ ッ シ ュ メ モ リ か ら 読み込む こ と も 、プ ロ セ ッ サやマ イ ク ロ コ ン ト ロ ー ラ ーな ど の外部デバ イ ス を使用 し てダ ウ ン ロ ー ド す る こ と も で き ます。 ま た、 ホ ス ト コ ン ピ ュ ー タ ーか ら FPGA の JTAG ポー ト にケーブ ルを接続 し てダ ウ ン ロ ー ド す る こ と も で き ます。 マ ス タ ー モー ド FPGA 自身が ビ ッ ト ス ト リ ーム を読み込むコ ン フ ィ ギ ュ レーシ ョ ン モー ド を 「マ ス タ ー」 モー ド と 総称 し 、 デー タ パ ス はシ リ アルま たはパ ラ レ ルの ど ち ら も 使用で き ます。 マ ス タ ー モー ド では、 通常、 コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ームは FPGA と 同 じ ボー ド 上の非揮発性 メ モ リ にあ り ます。FPGA が内部で コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク 信号 CCLK を生成 し 、 フ ラ ッ シ ュ メ モ リ に ク ロ ッ ク ま たはア ド レ ス を送信 し て コ ン フ ィ ギ ュ レーシ ョ ン プ ロ セ ス を制御 し ます。 図 1-1 を参照 し て く だ さ い。 X-Ref Target - Figure 1-1 Serial Parallel FPGA FPGA Parallel Flash Serial Flash 8, 16 MOSI/DO D D MISO/DIN Q [07:00], [15:00] [07:00], [15:00] FCS_B S C A[n:00] FCS_B FWE_B ADDR[n:00] CCLK DATA CE WE OE FOE_B SPI Mode BPI Mode UG570_c1_01_080315 図 1-1 : マス タ ー コ ン フ ィ ギ ュ レーシ ョ ン モー ド ス レーブ モー ド FPGA の コ ン フ ィ ギ ュ レーシ ョ ン を外部か ら 制御する モー ド を 「ス レーブ」 モー ド と 総称 し ます。 こ の場合 も 、 デー タ パ ス はシ リ アルま たはパ ラ レルの ど ち ら も 使用で き ます。 ス レーブ モー ド では、 外部のプ ロ セ ッ サ、 マ イ ク ロ コ ン ト ロ ー ラ ー、 DSP プ ロ セ ッ サ、 テ ス タ ーな ど を使用 し 、 FPGA に コ ン フ ィ ギ ュ レーシ ョ ン イ メ ージ を ダ ウ ン ロ ー ド し ます (図 1-2 参照)。 こ の コ ン フ ィ ギ ュ レーシ ョ ンの利点は、 FPGA ビ ッ ト ス ト リ ーム を シ ス テ ムのほぼど こ にで も 格 納で き る こ と です。 た と えば、 ホ ス ト プ ロ セ ッ サの コ ー ド と 一緒にフ ラ ッ シ ュ に格納で き る ほか、 ハー ド デ ィ ス ク に 保存 し た り 、 ネ ッ ト ワー ク 上に格納す る こ と も で き ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 13 第 1 章 : は じ めに X-Ref Target - Figure 1-2 Serial Parallel Processor, Microcontroller SERIAL_DATA CLOCK FPGA DIN CCLK Processor, Microcontroller [07:00] DATA [15:00] [31:00] 8, 16, 32 SELECT Slave Serial Mode READ/WRITE CLOCK FPGA [07:00] D [15:00] [31:00] CSI_B RDWR_B CCLK Slave SelectMAP Mode UG570_c1_02_112613 図 1-2 : ス レーブ コ ン フ ィ ギ ュ レーシ ョ ン モー ド ス レーブ シ リ アル モー ド は、 ク ロ ッ ク と シ リ アル デー タ 入力で構成 さ れ る 単純な イ ン タ ーフ ェ イ ス です。 ス レーブ SelectMAP モー ド は、 x8、 x16、 ま たは x32 ビ ッ ト 幅のプ ロ セ ッ サ ペ リ フ ェ ラ ル イ ン タ ーフ ェ イ ス で、 チ ッ プ セ レ ク ト 入力 と 読み出 し /書 き 込み制御入力を含みます。 JTAG 接続 JTAG モー ド も シ リ アル コ ン フ ィ ギ ュ レーシ ョ ン モー ド の 1 つで、 プ ロ ト タ イ プの作成やボー ド 検証に使用 さ れ ま す。 4 ピ ンの JTAG バ ウ ン ダ リ ス キ ャ ン イ ン タ ーフ ェ イ ス は、 オン ボー ド テ ス タ ー と デバ ッ グ用ハー ド ウ ェ アに よ く 使用 さ れます。 UltraScale アーキ テ ク チ ャ FPGA に対応 し たザ イ リ ン ク ス プ ロ グ ラ ミ ン グ ケーブル も 、 プ ロ ト タ イ プ ダ ウ ン ロ ー ド お よ びデバ ッ グ用に JTAG イ ン タ ーフ ェ イ ス を使用 し ます。 最終的にアプ リ ケーシ ョ ン で使用す る コ ン フ ィ ギ ュ レーシ ョ ン モー ド にかかわ ら ず、JTAG コ ン フ ィ ギ ュ レーシ ョ ン パ ス も 含めてお く と デザ イ ン開発が容易に な り ます。 図 1-3 を参照 し て く だ さ い。 X-Ref Target - Figure 1-3 JTAG Tester, Processor, Microcontroller DATA_OUT FPGA TDI MODE_SELECT TMS CLOCK TCK DATA_IN TDO UG570_c1_03_053113 図 1-3 : JTAG コ ン フ ィ ギ ュ レーシ ョ ン モー ド 基本的な コ ン フ ィ ギ ュ レーシ ョ ン ソ リ ュ ーシ ョ ン 基本的な コ ン フ ィ ギ ュ レーシ ョ ン ソ リ ュ ーシ ョ ン では、 FPGA 自身が電源投入時に フ ラ ッ シ ュ メ モ リ デバ イ ス か ら ビ ッ ト ス ト リ ーム を自動的に読み込みます。 FPGA には SPI (シ リ アル ペ リ フ ェ ラ ル イ ン タ ーフ ェ イ ス) があ り 、 こ れ を利用 し て標準のシ リ アル NOR フ ラ ッ シ ュ デバ イ ス か ら ビ ッ ト ス ト リ ーム を読み込みます。一部のフ ラ ッ シ ュ メ モ リ は、 ザ イ リ ン ク ス の ツールでプ ロ グ ラ ム可能です。 こ の場合、 ツールが標準の JTAG イ ン タ ーフ ェ イ ス を介 し て FPGA と 通信 し 、 FPGA 経由で間接的に フ ラ ッ シ ュ をプ ロ グ ラ ム し ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 14 第 1 章 : は じ めに コ ス ト 重視の コ ン フ ィ ギ ュ レーシ ョ ン ソ リ ュ ーシ ョ ン ど の コ ン フ ィ ギ ュ レーシ ョ ン方法が最 も 低 コ ス ト にな る かは、 アプ リ ケーシ ョ ンに よ っ て異な り ます。 • シ ス テ ムに使用可能な非揮発性 メ モ リ が既にあ る 場合、 ビ ッ ト ス ト リ ーム を シ ス テ ム メ モ リ に格納で き ます。 ま た、 ハー ド ド ラ イ ブに保存 し た り 、 ネ ッ ト ワ ー ク 接続を介 し て ダ ウ ン ロ ー ド で き ま す。 こ の よ う な場合は、 ス レーブ シ リ アル、 ス レーブ パ ラ レル、 ま たは JTAG モー ド な ど の ス レーブ モー ド が適 し てい ます。 • 非揮発性 メ モ リ をすでにアプ リ ケーシ ョ ンで使用 し てい る 場合は、 それを活用 し て FPGA の コ ン フ ィ ギ ュ レー シ ョ ン ビ ッ ト ス ト リ ーム を格納で き 、 その際の追加 コ ス ト は ま っ た く かか ら ない、 あ る いはわずかにかか る 程度 です。 た と えば、 FPGA コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ームはボー ド のプ ロ セ ッ サ コ ー ド と 共に格納で き ます。 使用す る プ ロ セ ッ サが FPGA にエンベデ ッ ド さ れてい る MicroBlaze™ の場合、 FPGA コ ン フ ィ ギ ュ レー シ ョ ン デー タ と MicroBlaze プ ロ セ ッ サの コ ー ド を同 じ 非揮発性 メ モ リ デバ イ ス に格納で き ます。 コ ン フ ィ ギ ュ レーシ ョ ン時間を短縮する方法 アプ リ ケーシ ョ ンに よ っ ては、 ロ ジ ッ ク を短時間で動作可能にする 必要があ り ます。 FPGA の コ ン フ ィ ギ ュ レーシ ョ ン時間は、 各モー ド や方法に よ っ て異な り ます。 コ ン フ ィ ギ ュ レーシ ョ ン時間 と は、 コ ン フ ィ ギ ュ レーシ ョ ン自体に かか る 時間 と 初期化に必要な時間を合計 し た も ので、デバ イ ス のサ イ ズお よ びコ ン フ ィ ギ ュ レーシ ョ ン ロ ジ ッ ク の速 度に依存 し ます。 • 同一 ク ロ ッ ク 周波数で比較す る と 、 パ ラ レル コ ン フ ィ ギ ュ レーシ ョ ン モー ド は一度に 8 ビ ッ ト 、 16 ビ ッ ト 、 ま たは 32 ビ ッ ト をプ ロ グ ラ ムす る ため、 シ リ アル モー ド よ り も 高速です。 • デ イ ジー チ ェ ーン接続 し た複数の FPGA を コ ン フ ィ ギ ュ レーシ ョ ンする よ り 、1 つの FPGA を コ ン フ ィ ギ ュ レー シ ョ ンす る 方が短時間ですみます。複数の FPGA を使用 し たデザ イ ン で コ ン フ ィ ギ ュ レーシ ョ ン時間を短縮す る には、 各 FPGA を個別に コ ン フ ィ ギ ュ レーシ ョ ンす る 必要があ り ます。 • マ ス タ ー モー ド では、 CCLK コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク 信号が FPGA 内部で生成 さ れます。 サポー ト さ れ る 最大 CCLK 周波数は、 接続 さ れてい る 非揮発性 メ モ リ の読み出 し 速度の仕様に依存 し ます。 高速な メ モ リ を 使用す る と 、 よ り 高速な コ ン フ ィ ギ ュ レーシ ョ ンが可能です。 CCLK の ソ ース に内部オシ レー タ ーを使用 し てい る 場合、 出力周波数はプ ロ セ ス、 電圧、 温度に よ っ て変動 し ます。 • ク ロ ッ ク ソ ース に外部 EMCCLK を使用する と 、 高精度な外部 ク ロ ッ ク ソ ース に よ り 、 コ ン フ ィ ギ ュ レーシ ョ ン 性能が最大限に向上 し ます。 コ ン フ ィ ギ ュ レーシ ョ ンの概算時間は、 式 1-1 か ら 求め ら れます。 BitstreamSize ConfigurationTime = ----------------------------------------------------------------------------------ConfigurationRate × DatabusWidth 式 1-1 UltraScale FPGA のビ ッ ト ス ト リ ーム サ イ ズは、 16 ページの表 1-4 に示 し てい ます。 コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク の最大周波数は、コ ン フ ィ ギ ュ レーシ ョ ン モー ド お よ びアプ リ ケーシ ョ ンの イ ンプ リ メ ン テーシ ョ ンに よ っ て異な り ま す。 コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク 周波数の計算に関す る ガ イ ド ラ イ ンは、 第 2 章 「マ ス タ ー SPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド 」 お よ び第 4 章 「マ ス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド 」 で説明 し ます。 電源投入時 点か ら の コ ン フ ィ ギ ュ レーシ ョ ン時間を求め る には、 上記の コ ン フ ィ ギ ュ レーシ ョ ン時間に TPOR を加算 し ます。 Vivado ツールは、 コ ン フ ィ ギ ュ レーシ ョ ン時間の概算に使用可能な Tcl コ マ ン ド 、 calc_config_time を提供 し ま す。 使用法を確認す る には、 help calc_config_time を利用 し て く だ さ い。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 15 第 1 章 : は じ めに ビ ッ ト ス ト リ ームの保護 プ ロ セ ッ サ コ ー ド と 同様に、 デバ イ ス の機能を定義す る ビ ッ ト ス ト リ ームは電源投入時にデバ イ ス に読み込ま れ ま す。 こ の コ ン フ ィ ギ ュ レーシ ョ ン デー タ はチ ッ プ外部に格納 さ れ る ため、 不正な複製や改変が行われ る 可能性があ り ます。 プ ロ セ ッ サの よ う に、 ビ ッ ト ス ト リ ーム と その中に埋め込まれてい る IP コ ア を保護す る 方法はい く つかあ り ます。IP の機密性を保護す る 最 も 確実な方法は、 AES-256 を使用 し て コ ン フ ィ ギ ュ レーシ ョ ン デー タ を暗号化す る こ と です。 オンチ ッ プの復号化 ロ ジ ッ ク のキーは、バ ッ ク ア ッ プ バ ッ テ リ を使用 し た RAM ま たは ワ ン タ イ ム プ ロ グ ラ マブルな eFUSE に格納で き ます。 こ の方法を使用する と 、 IP をチ ッ プ外部に格納 し て も 高度な暗号化で保護 さ れます。 複数の FPGA へのビ ッ ト ス ト リ ーム読み込み 通常、 1 つのシ ス テ ムに含まれ る 各 FPGA には、 それぞれのビ ッ ト ス ト リ ームがあ り ます。 コ ン フ ィ ギ ュ レーシ ョ ン デ イ ジー チ ェ ーン を利用す る と 、 1 つの コ ン フ ィ ギ ュ レーシ ョ ン フ ラ ッ シ ュ メ モ リ に複数の異な る FPGA ビ ッ ト ス ト リ ーム を格納で き ます。 し か し 、 アプ リ ケーシ ョ ンにあ る すべての FPGA のパーツ番号 と ビ ッ ト ス ト リ ームが同 じ 場合、 ビ ッ ト ス ト リ ーム イ メ ージは 1 つだけで よ く 、 連結 コ ン フ ィ ギ ュ レーシ ョ ンが可能です。 こ の よ う な連結 コ ン フ ィ ギ ュ レーシ ョ ンは、 ス レーブ シ リ アルお よ びス レーブ SelectMAP モー ド 、 お よ び BPI 非同期読み出 し モー ド で サポー ト さ れてい ます。 デバイ スの リ ソ ース と コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ーム の長 さ ビ ッ ト ス ト リ ーム全体の長 さ はデバ イ ス ご と に決ま っ てお り 、コ ン フ ィ ギ ュ レーシ ョ ン オプシ ョ ンが同 じ であれば使 用 す る ロ ジ ッ ク に か か わ ら ず 同 じ 長 さ と な り ま す。 た だ し 、 圧縮 な ど の ビ ッ ト ス ト リ ー ム オプシ ョ ン (BITSTREAM.GENERAL.COMPRESS) に よ っ ては必要な ビ ッ ト ス ト リ ームの長 さ は変わ り ます。 圧縮ビ ッ ト ス ト リ ー ムのサ イ ズは設計を反復す る ご と に変わ る 可能性があ る ため、 フルの非圧縮ビ ッ ト ス ト リ ーム用に メ モ リ 空間を残 し てお く 必要があ り ます。 表 1-4 に各デバ イ ス のデフ ォ ル ト のビ ッ ト ス ト リ ーム長を、 表 1-5 にその他の情報を示 し ま す。 表 1-4 : UltraScale アーキテ ク チ ャ FPGA のビ ッ ト ス ト リ ーム長 デバイ ス コ ン フ ィ ギュ レー ション ビ ッ ト ス ト リーム の長さ (ビ ッ ト ) 最小 コ ン フ ィ ギ ュ レーシ ョ ン時の フ ラ ッ シュ メ モリ のサイ ズ (Mb) コ ン フ ィ ギュ レーシ ョ ン フ レーム フ レーム長 (ワー ド )(1) コ ン フ ィ ギュ レーシ ョ ン ア レ イ サイ ズ (ワー ド )(2) コ ン フ ィ ギ ュ レー シ ョ ン オーバー ヘ ッ ド (ワー ド ) Kintex UltraScale FPGA KU025 128,055,264 128 32,530 123 4,001,190 537 KU035 128,055,264 128 32,530 123 4,001,190 537 KU040 128,055,264 128 32,530 123 4,001,190 537 KU060 192,999,264 256 49,030 123 6,030,690 537 KU085 386,012,288 512 98,060 123 12,061,380 1,504 KU095 286,746,912 512 72,848 123 8,960,304 537 KU115 386,012,288 512 98,060 123 12,061,380 1,504 Virtex UltraScale FPGA VU065 200,713,824 256 50,990 123 6,271,770 537 VU080 286,746,912 512 72,848 123 8,960,304 537 VU095 286,746,912 512 72,848 123 8,960,304 537 VU125 401,441,408 512 101,980 123 12,543,540 1,504 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 16 第 1 章 : は じ めに 表 1-4 : UltraScale アーキテ ク チ ャ FPGA のビ ッ ト ス ト リ ーム長 (続き) デバイ ス コ ン フ ィ ギュ レー ション ビ ッ ト ス ト リーム の長さ (ビ ッ ト ) 最小 コ ン フ ィ ギ ュ レーシ ョ ン時の フ ラ ッ シュ メ モリ のサイ ズ (Mb) コ ン フ ィ ギュ レーシ ョ ン フ レーム フ レーム長 (ワー ド )(1) コ ン フ ィ ギュ レーシ ョ ン ア レ イ サイ ズ (ワー ド )(2) コ ン フ ィ ギ ュ レー シ ョ ン オーバー ヘ ッ ド (ワー ド ) VU160 602,156,064 1,024 152,970 123 18,815,310 2,067 VU190 602,156,064 1,024 152,970 123 18,815,310 2,067 VU440 1,031,731,104 1,024 262,110 123 32,239,530 2,067 Kintex UltraScale+ FPGA XCKU3P 123,432,576 128 93 XCKU5P 123,432,576 128 93 XCKU9P 144,895,488 256 93 XCKU11P 188,647,264 256 93 XCKU13P 229,605,952 256 93 XCKU15P 290,744,896 512 93 Virtex UltraScale+ FPGA XCVU3P 213,752,800 256 93 XCVU5P 427,519,232 512 93 XCVU7P 427,519,232 512 93 XCVU9P 641,272,864 1,024 93 XCVU11P 1,024 93 XCVU13P 1,024 93 注記 : 1. すべての UltraScale FPGA コ ン フ ィ ギ ュ レーシ ョ ン フ レームは、 123 個の 32 ビ ッ ト ワー ド か ら な り ます。 すべての UltraScale+ FPGA コ ン フ ィ ギ ュ レーシ ョ ン フ レームは、 93 個の 32 ビ ッ ト ワー ド か ら な り ます。 2. コ ン フ ィ ギ ュ レーシ ョ ン ア レ イ サ イ ズは、 コ ン フ ィ ギ ュ レーシ ョ ン フ レームの数に フ レーム あ た り の ワー ド 数を掛けた も のです。 表 1-5 : UltraScale アーキテ ク チ ャ FPGA の JTAG および IDCODE デバイ ス JTAG/デバイ ス IDCODE[31:0] (16 進数)(1) Production IDCODE リ ビジ ョ ン JTAG 命令の長 さ (ビ ッ ト ) Kintex UltraScale FPGA KU025 X3824093 1 ま たはそれ以降 6 KU035 X3823093 1 ま たはそれ以降 6 KU040 X3822093 1 ま たはそれ以降 6 KU060 X3919093 1 ま たはそれ以降 6 KU085 X380F093 1 ま たはそれ以降 12 KU095 X3844093 2 ま たはそれ以降 6 KU115 X390D093 1 ま たはそれ以降 12 VU065 X3939093 0 ま たはそれ以降 6 VU080 X3843093 2 ま たはそれ以降 6 Virtex UltraScale FPGA UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 17 第 1 章 : は じ めに 表 1-5 : UltraScale アーキテ ク チ ャ FPGA の JTAG および IDCODE (続き) デバイ ス JTAG/デバイ ス IDCODE[31:0] (16 進数)(1) Production IDCODE リ ビジ ョ ン JTAG 命令の長 さ (ビ ッ ト ) VU095 X3842093 2 ま たはそれ以降 6 VU125 X392D093 1 ま たはそれ以降 12 VU160 X3933093 1 ま たはそれ以降 18 VU190 X3931093 1 ま たはそれ以降 18 VU440 X396D093 1 ま たはそれ以降 18 Kintex UltraScale+ FPGA XCKU3P X4A63093 6 XCKU5P X4A62093 6 XCKU9P X484A093 6 XCKU11P X4A4E093 6 XCKU13P X4A52093 6 XCKU15P X4A56093 6 XCVU3P X4B39093 6 XCVU5P X4B2B093 12 XCVU7P X4B29093 12 XCVU9P X4B31093 18 XCVU11P X4B49093 18 XCVU13P X4B51093 24 Virtex UltraScale+ FPGA 注記 : 1. JTAG IDCODE 値の 「X」 は リ ビ ジ ョ ン フ ィ ール ド (IDCODE[31:28]) を示 し 、 リ ビ ジ ョ ンに よ っ て異な り ます。 推奨 さ れるデザイ ン フ ローおよび コ ン フ ィ ギ ュ レー シ ョ ン方法を決定する要素 通常、 コ ン フ ィ ギ ュ レーシ ョ ンは FPGA の動作か ら は独立 し た一度限 り の イ ベン ト ですが、 コ ン フ ィ ギ ュ レーシ ョ ン の選択がデザ イ ンのオプシ ョ ンに影響す る こ と があ り ます。 デザ イ ン サ イ ク ル後期に問題を発生 さ せないためには、 デザ イ ン サ イ ク ルの早期に コ ン フ ィ ギ ュ レーシ ョ ン方法を決定 し てお く 必要があ り ます。 • シ ス テ ムの特徴に基づ き 、 最適な コ ン フ ィ ギ ュ レーシ ョ ン モー ド を決定する 。 • デバ ッ グ用に JTAG コ ン フ ィ ギ ュ レーシ ョ ン も 可能にす る 。 • デバ ッ グ用に コ ン フ ィ ギ ュ レーシ ョ ンの制御お よ びス テー タ ス ピ ンに容易にア ク セ ス で き る よ う にする 。 • コ ン フ ィ ギ ュ レーシ ョ ンで使用す る 多目的ピ ン を確認 し 、 同 じ ピ ンのほかの用途 と 競合 し ない よ う にする 。 • コ ン フ ィ ギ ュ レーシ ョ ン を低周波数で実行す る 場合を含め、 PCB レ イ ア ウ ト の際には コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク な ど の重要な信号に十分なシ グナル イ ン テ グ リ テ ィ を確保する 。 • 電源の立ち上げ時間を含め、 コ ン フ ィ ギ ュ レーシ ョ ン シーケ ン ス のすべての要素を考慮 し て コ ン フ ィ ギ ュ レー シ ョ ン時間を短縮す る 。 • コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ームの生成時には各種オプシ ョ ンの使用を検討 し 、デバ イ ス の動作に干渉 し ない こ と を確認す る 。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 18 第 1 章 : は じ めに • ユーザー デザ イ ンの制約フ ァ イ ルの CONFIG_VOLTAGE、 CFGBVS、 CONFIG_MODE プ ロ パテ ィ を使用 し てザ イ リ ン ク ス の ツールに通知す る 。 • コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ームは最新バージ ョ ンのザ イ リ ン ク ス ツールで生成す る 。 • コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ームの生成時に、 DRC エ ラ ーを訂正 し 、 警告の内容を確認す る 。 • リ モー ト ア ッ プグ レー ド が必要か ど う か を判断 し 、 必要な ら 適切な方法を検討する 。 デザイ ン ツール デザ イ ンの イ ンプ リ メ ン ト お よ びビ ッ ト ス ト リ ーム デー タ フ ァ イ ルの生成前に、 コ ン フ ィ ギ ュ レーシ ョ ン設定がデ ザ イ ンに適 し てい る こ と を確認 し てお く こ と が重要です。 ビ ッ ト ス ト リ ームの設定が正 し ければ、write_bistream Tcl コ マ ン ド ま たは Vivado の Flow Navigator の [Generate Bitstream] を使用 し て ビ ッ ト ス ト リ ーム デー タ フ ァ イ ルを生 成で き ます。 Vivado IDE での コ ン フ ィ ギ ュ レーシ ョ ン設定には、 次の 3 つの種類があ り ます。 1. コ ン フ ィ ギ ュ レーシ ョ ンのデザ イ ン プ ロ パテ ィ 2. コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ームの設定 3. ビ ッ ト ス ト リ ーム フ ァ イ ル形式の設定 コ ン フ ィ ギ ュ レーシ ョ ンのデザイ ン プ ロパテ ィ デザ イ ン プ ロ パ テ ィ は イ ン プ リ メ ン ト 中 に 使 用 さ れ る た め、 コ ン フ ィ ギ ュ レ ー シ ョ ン 関 連 の オ プ シ ョ ン (CONFIG_MODE、 CONFIG_VOLTAGE、 お よ び CFGBVS) は、 ビ ッ ト ス ト リ ームが生成 さ れ る 前に設定す る こ と が重 要 で す。 CONFIG_MODE は、 モ ー ド ピ ン で 定義す る コ ン フ ィ ギ ュ レ ー シ ョ ン モ ー ド を 指定 し ま す。 CONFIG_VOLTAGE は、コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス の電圧レベル VCCO_0 (お よ び使用 さ れてい る 場合 は VCCO_65) を指定 し ます。 CFGBVS は、 CFGBVS ピ ンの接続先 と し て VCCO ま たは GND を指定 し ます。 こ れ ら 機能 の詳細は、 33 ページの 「 コ ン フ ィ ギ ュ レーシ ョ ン バン ク 電圧の選択」 を参照 し て く だ さ い。 デザ イ ン プ ロ パテ ィ の 設定方法の詳細は、 『Vivado Design Suite プ ロ パテ ィ リ フ ァ レ ン ス ガ イ ド 』 (UG912) [参照 4] を参照 し て く だ さ い。 コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ームの設定 最 も 一般的な コ ン フ ィ ギ ュ レーシ ョ ン設定は、 デバ イ ス コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ーム設定のカ テ ゴ リ に分類 さ れ ま す。 こ れ ら の設定は、 デバ イ ス モデルについてのプ ロ パテ ィ (接頭辞 「BITSTREAM.」 で始ま る ) であ り 、 ビ ッ ト ス ト リ ームの生成時に使用 さ れます。 コ ン フ ィ ギ ュ レーシ ョ ン設定には、 コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク 、 暗号化、 圧縮、 ス タ ー ト ア ッ プ、 お よ びモー ド 固有の各オプシ ョ ンが含まれます。 コ ン フ ィ ギ ュ レーシ ョ ンお よ び コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ーム設定の両デザ イ ン プ ロ パテ ィ は、 合成後 ま たは イ ン プ リ メ ン ト 後のデザ イ ンのネ ッ ト リ ス ト に応 じ て [Edit Device Properties] ダ イ ア ロ グ ボ ッ ク ス で指定で き ます。 次の手順は、 こ の方法を用いて さ ま ざ ま なプ ロ パテ ィ を設定す る 方法を示 し てい ます。 1. 合成後、 ま たは イ ンプ リ メ ン ト 後のデザ イ ン を開 き ます。 2. [Tools] → [Edit Device Properties] を ク リ ッ ク し ます。 3. [Edit Device Properties] ダ イ ア ロ グ ボ ッ ク ス で、 左側の列にあ る カ テ ゴ リ の う ち 1 つを選択 し ます。 4. プ ロ パテ ィ を適切な値に設定 し 、 [OK] を ク リ ッ ク し ます。 5. [File] → [Save Constraints] を ク リ ッ ク し 、 更新 さ れたプ ロ パテ ィ を タ ーゲ ッ ト の XDC フ ァ イ ルに保存 し ます。 XDC フ ァ イ ルま たは Tcl コ マ ン ド ウ ィ ン ド ウ で set_property コ マ ン ド を使用 し て こ れ ら のプ ロ パテ ィ を設定す る こ と も で き ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 19 第 1 章 : は じ めに ビ ッ ト ス ト リ ーム フ ァ イル形式の設定 ビ ッ ト ス ト リ ーム フ ァ イ ル形式の設定には、ASCII バージ ョ ンのビ ッ ト ス ト リ ーム ま たは リ ー ド バ ッ ク 用の フ ァ イ ル を生成す る ためのオプシ ョ ンが含ま れ ます。 Vivado の Flow Navigator で [Bitstream Settings] を ク リ ッ ク す る か、 ま た は [Flow] → [Bitstream Settings] か ら [Project Settings] ポ ッ プ ア ッ プ ウ ィ ン ド ウ の [Bitstream] セ ク シ ョ ン を開 き ま す。 Vivado デザ イ ン ツールの コ ン フ ィ ギ ュ レーシ ョ ン オプシ ョ ンの詳細は、 『Vivado Design Suite ユーザー ガ イ ド : プ ロ グ ラ ムお よ びデバ ッ グ』 (UG908) [参照 5] を参照 し て く だ さ い。 ピ ン配置の計画 アプ リ ケーシ ョ ンで使用す る コ ン フ ィ ギ ュ レーシ ョ ン モー ド は、デザ イ ンの ピ ン配置の計画に影響 し ます。 フ ロ アプ ラ ン ま たはピ ン選択の前に、 コ ン フ ィ ギ ュ レーシ ョ ン モー ド を計画 し 、 決定 し てお く こ と が重要です。 コ ン フ ィ ギ ュ レーシ ョ ン モー ド に よ っ て選択 し た ピ ンの接続が決ま る だけでな く 、 多目的ピ ン を含む I/O バン ク に必要な VCCO 電 圧 も 決ま り ます。 ピ ンの設定を正 し く 決定す る には、 次の手順に従っ て く だ さ い。 1. FPGA の コ ン フ ィ ギ ュ レーシ ョ ン モー ド を決定す る 。 主に使用する コ ン フ ィ ギ ュ レーシ ョ ン モー ド だけでな く 、 デバ ッ グやア ッ プデー ト に使用す る 副次的な コ ン フ ィ ギ ュ レーシ ョ ン モー ド について も 検討 し てお く 必要があ り ます。 2. 主要な コ ン フ ィ ギ ュ レーシ ョ ン モー ド と 副次的な コ ン フ ィ ギ ュ レーシ ョ ン モー ド のそれぞれについて、 コ ン フ ィ ギ ュ レーシ ョ ンに使用す る ピ ン と バン ク を確認す る 。 3. こ れ ら ピ ン を それぞれど の よ う に使用す る か、 そ し てデザ イ ンで標準 I/O と し て使用す る 場合に制約が生 じ る か ど う か を確認す る 。 内部お よ び外部のプルア ッ プお よ びプルダ ウ ン、 外部デバ イ スへの接続な ど を考察 し ます。 4. コ ン フ ィ ギ ュ レーシ ョ ンで使用す る すべての ピ ンについて必要な I/O 電圧を確認 し 、 その条件を満たす よ う に各 バン ク の I/O 電圧を決定す る 。 同 じ バン ク の別の場所では、 互換性のあ る I/O 規格 し か使用で き ません。 コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ー フ ェ イ ス ザ イ リ ン ク ス UltraScale FPGA には、 7 種類の コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス があ り ます。 表 1-6 に示す よ う に、 各 イ ン タ ーフ ェ イ ス は 1 つ ま たは複数の コ ン フ ィ ギ ュ レーシ ョ ン モー ド お よ びバ ス幅に対応 し ま す。 イ ン タ ーフ ェ イ ス の タ イ ミ ン グ情報の詳細は、 各デー タ シー ト [参照 6] ま たは [参照 7] を参照 し て く だ さ い。 表 1-6 : コ ン フ ィ ギ ュ レーシ ョ ン モー ド M[2:0] バス幅 CCLK の方向 000 X1 出力 マ ス タ ー SPI 001 x1、 x2、 x4、 x8 出力 マ ス タ ー BPI 010 x8、 x16 出力 マ ス タ ー SelectMAP(1) 100 x8、 x16 出力 101 X1 N/A 110 x8、 x16、 x32 入力 コ ン フ ィ ギ ュ レーシ ョ ン モー ド マス ター シ リ JTAG アル(1) のみ(2) ス レーブ SelectMAP UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 20 第 1 章 : は じ めに 表 1-6 : コ ン フ ィ ギ ュ レーシ ョ ン モー ド (続き) コ ン フ ィ ギ ュ レーシ ョ ン モー ド ス レーブ シ リ M[2:0] バス幅 CCLK の方向 111 X1 入力 アル(3) 注記 : 1. 推奨 さ れてい ません。 9 ページの 「UltraScale FPGA フ ァ ミ リ 間の機能の違い」 を参照 し て く だ さ い。 2. JTAG モー ド は、 モー ド ピ ンの設定にかかわ ら ず利用で き ます。 SSI テ ク ノ ロ ジ を採用 し たデバ イ ス では ICAP ア ク セ ス に制限があ る ため、 モー ド ピ ン を JTAG 専用に設定す る こ と は推奨 さ れてい ません。 3. モー ド ピ ンには内部プルア ッ プ抵抗があ る ため、 ス レーブ シ リ アルがデフ ォ ル ト の設定 と な り ます。 コ ン フ ィ ギ ュ レーシ ョ ン ピ ン 各 コ ン フ ィ ギ ュ レーシ ョ ン モー ド では 1 つま たは 2 つのバン ク にあ る 複数の イ ン タ ーフ ェ イ ス ピ ン を使用 し ます。こ れ ら の ピ ンは FPGA のバン ク 0 にあ り ま すが、 一部の コ ン フ ィ ギ ュ レ ーシ ョ ン ではバン ク 65 の ピ ン も 使用 し ま す。 バン ク 0 には専用の コ ン フ ィ ギ ュ レーシ ョ ン ピ ンが含ま れ、 こ れ ら はすべて コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス で使用 さ れ ま す。 一部の コ ン フ ィ ギ ュ レーシ ョ ン モー ド では、 バン ク 65 に含ま れ る 多目的ピ ン も 使用 し ます。 Persist オプシ ョ ン (150 ページの 「Persist オプシ ョ ン」 参照) を使用す る 場合、 選択 し た コ ン フ ィ ギ ュ レーシ ョ ン モー ド で使用す る 多目的 I/O は コ ン フ ィ ギ ュ レーシ ョ ン後 も 有効な ま ま です。表 1-7 と 表 1-8 に、各 コ ン フ ィ ギ ュ レーシ ョ ン ピ ン と そのピ ンが属す る I/O バン ク の一覧を示 し ます。 9 ページの 「UltraScale FPGA フ ァ ミ リ 間の機能の違い」 を 参照 し て く だ さ い。 表 1-7 : コ ン フ ィ ギ ュ レーシ ョ ン ピ ン - シ リ アル モー ド ピ ン名 バン ク マス タ ー SPI JTAG (専用 の場合) x1 x2 x4 x8 (デュアル x4) ス レーブ シ リ アル マス タ ー シ リ アル POR_OVERRIDE N/A POR_ OVERRIDE POR_ OVERRIDE POR_ OVERRIDE POR_ OVERRIDE POR_ OVERRIDE POR_ OVERRIDE POR_ OVERRIDE VBATT N/A VBATT VBATT VBATT VBATT VBATT VBATT VBATT CFGBVS 0 CFGBVS CFGBVS CFGBVS CFGBVS CFGBVS CFGBVS CFGBVS M[2:0] 0 M[2:0]=101 M[2:0]=001 M[2:0]=001 M[2:0]=001 M[2:0]=001 M[2:0]=111 M[2:0]=000 TCK 0 TCK TCK TCK TCK TCK TCK TCK TMS 0 TMS TMS TMS TMS TMS TMS TMS TDI 0 TDI TDI TDI TDI TDI TDI TDI TDO 0 TDO TDO TDO TDO TDO TDO TDO PROGRAM_B 0 PROGRAM_ B PROGRAM_B PROGRAM_B PROGRAM_B PROGRAM_B PROGRAM_B PROGRAM_B INIT_B 0 INIT_B INIT_B INIT_B INIT_B INIT_B INIT_B INIT_B DONE 0 DONE DONE DONE DONE DONE DONE DONE CCLK 0 CCLK CCLK CCLK CCLK CCLK CCLK CCLK PUDC_B(1) 0 PUDC_B(1) PUDC_B(1) PUDC_B(1) PUDC_B(1) PUDC_B(1) PUDC_B(1) PUDC_B(1) RDWR_FCS_B 0 - FCS_B FCS_B FCS_B FCS_B - - D00_MOSI 0 - MOSI D00_MOSI D00_MOSI D00_MOSI - - D01_DIN 0 - DIN D01_DIN D01_DIN D01_DIN DIN DIN D02 0 - - - D02 D02 - - D03 0 - - - D03 D03 - - D[07:04] 65 - - - - D[07:04] - - D[15:08] 65 - - - - - - - UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 21 第 1 章 : は じ めに 表 1-7 : コ ン フ ィ ギ ュ レーシ ョ ン ピ ン - シ リ アル モー ド (続き) マス タ ー SPI ス レーブ シ リ アル マス タ ー シ リ アル - - - - - - - EMCCLK(2) EMCCLK(2) - EMCCLK(2) バン ク JTAG (専用 の場合) x1 x2 x4 x8 (デュアル x4) A[15:00]_D[31:16] 65 - - - - A[28:16] 65 - - - EMCCLK(2) EMCCLK(2) ピ ン名 EMCCLK(2) 65 - CSI_ADV_B 65 - - - - - - - DOUT_CSO_B(3)(4) 65 - DOUT(3) - - - DOUT(3) DOUT(3) FOE_B 65 - - - - - - - FWE_FCS2_B 65 - - - - FCS2_B - - 65 - - - - - - - RS1(5) RS0、 注記 : 1. PUDC_B は コ ン フ ィ ギ ュ レーシ ョ ン中に特別な機能を実行 し ますが、 すべての コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス か ら 独立 し て い る ため、 PUDC_B の電圧は同 じ コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス のほかの ピ ン と 互換であ る 必要はあ り ません。 2. EMCCLK は、 ExtMasterCclk_en オプシ ョ ンで EMCCLK を マ ス タ ー コ ン フ ィ ギ ュ レーシ ョ ン モー ド の外部 ク ロ ッ ク 入力に設定 し た場合 のみ使用 し ます。 3. DOUT は、 デ イ ジー チ ェーンのシ リ アル コ ン フ ィ ギ ュ レーシ ョ ンで下位の FPGA にデー タ を出力す る 場合 (ま たは Debug Bitstream オプ シ ョ ン を指定 し た場合) にのみ使用 し ます。 それ以外の場合はハ イ イ ン ピーダ ン ス です。 4. CSO_B は、 デ イ ジー チ ェーンのパ ラ レル コ ン フ ィ ギ ュ レーシ ョ ン で下位のデバ イ ス にチ ッ プ イ ネーブル信号を出力す る 場合のみ使用 し ます。 それ以外の場合はハ イ イ ン ピーダ ン ス です。 5. RS0 と RS1 は BPI モー ド でマルチブー ト イ ベン ト が開始 さ れた場合、ま たは Configuration Fallback オプシ ョ ン を有効に し て フ ォ ールバ ッ ク イ ベン ト が発生 し た場合のみ駆動 さ れます。 それ以外の場合は、 両者 と も ハ イ イ ン ピーダ ン ス です。 6. 「-」 のセルは、 該当す る コ ン フ ィ ギ ュ レーシ ョ ン モー ド でその ピ ンが使用 さ れない こ と を示 し てい ます。 こ れ ら は コ ン フ ィ ギ ュ レーシ ョ ン中にハ イ イ ン ピーダ ン ス と な り 、 無視 さ れます。 表 1-8 : コ ン フ ィ ギ ュ レーシ ョ ン ピ ン - パラ レル モー ド ピ ン名 バン ク マス タ ー BPI マス タ ー SelectMAP ス レーブ SelectMAP x8 x16 x8 x16 x8 x16 x32 POR_OVERRIDE N/A POR_ OVERRIDE POR_ OVERRIDE POR_ OVERRIDE POR_ OVERRIDE POR_ OVERRIDE POR_ OVERRIDE POR_ OVERRIDE VBATT N/A VBATT VBATT VBATT VBATT VBATT VBATT VBATT CFGBVS 0 CFGBVS CFGBVS CFGBVS CFGBVS CFGBVS CFGBVS CFGBVS M[2:0] 0 M[2:0]=010 M[2:0]=010 M[2:0]=100 M[2:0]=100 M[2:0]=110 M[2:0]=110 M[2:0]=110 TCK 0 TCK TCK TCK TCK TCK TCK TCK TMS 0 TMS TMS TMS TMS TMS TMS TMS TDI 0 TDI TDI TDI TDI TDI TDI TDI TDO 0 TDO TDO TDO TDO TDO TDO TDO PROGRAM_B 0 PROGRAM_B PROGRAM_B PROGRAM_B PROGRAM_B PROGRAM_B PROGRAM_B PROGRAM_B INIT_B 0 INIT_B INIT_B INIT_B INIT_B INIT_B INIT_B INIT_B DONE 0 DONE DONE DONE DONE DONE DONE DONE CCLK 0 CCLK CCLK CCLK CCLK CCLK CCLK CCLK PUDC_B(1) 0 PUDC_B(1) PUDC_B(1) PUDC_B(1) PUDC_B(1) PUDC_B(1) PUDC_B(1) PUDC_B(1) RDWR_FCS_B 0 FCS_B FCS_B RDWR_B RDWR_B RDWR_B RDWR_B RDWR_B D00_MOSI 0 D00 D00 D00 D00 D00 D00 D00 D01_DIN 0 D01 D01 D01 D01 D01 D01 D01 D02 0 D02 D02 D02 D02 D02 D02 D02 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 22 第 1 章 : は じ めに 表 1-8 : コ ン フ ィ ギ ュ レーシ ョ ン ピ ン - パラ レル モー ド (続き) ピ ン名 バン ク マス タ ー BPI マス タ ー SelectMAP ス レーブ SelectMAP x8 x16 x8 x16 x8 x16 x32 D03 0 D03 D03 D03 D03 D03 D03 D03 D[07:04] 65 D[07:04] D[07:04] D[07:04] D[07:04] D[07:04] D[07:04] D[07:04] D[15:08] 65 - D[15:08] - D[15:08] - D[15:08] D[15:08] A[15:00]_D[31:16] 65 A[15:00] A[15:00] - - - - D[31:16] EMCCLK(2) 65 EMCCLK(2) EMCCLK(2) EMCCLK(2) EMCCLK(2) - - - CSI_ADV_B 65 ADV_B ADV_B CSI_B CSI_B CSI_B CSI_B CSI_B 65 CSO_B(4) CSO_B(4) CSO_B(4) CSO_B(4) CSO_B(4) CSO_B(4) CSO_B(4) A[28:16] 65 A[28:16] A[28:16] - - - - - FOE_B 65 FOE_B FOE_B - - - - - FWE_FCS2_B 65 FWE_B FWE_B - - - - - - - - - - DOUT_CSO_B(3)(4) RS0, RS1(5) 65 RS0, RS1(5) RS0, RS1(5) 注記 : 1. PUDC_B は コ ン フ ィ ギ ュ レーシ ョ ン中に特別な機能を実行 し ますが、 すべての コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス か ら 独立 し てい る ため、 PUDC_B の電圧は同 じ コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス のほかの ピ ン と 互換であ る 必要はあ り ません。 2. EMCCLK は、 ExtMasterCclk_en オプシ ョ ン で EMCCLK を マ ス タ ー コ ン フ ィ ギ ュ レーシ ョ ン モー ド の外部 ク ロ ッ ク 入力に設定 し た場合の み使用 し ます。 3. DOUT は、 デ イ ジー チ ェーンのシ リ アル コ ン フ ィ ギ ュ レーシ ョ ン で下位の FPGA にデー タ を出力す る 場合 (ま たは Debug Bitstream オプ シ ョ ン を指定 し た場合) にのみ使用 し ます。 それ以外の場合はハ イ イ ン ピーダ ン ス です。 4. CSO_B は、 デ イ ジー チ ェーンのパ ラ レ ル コ ン フ ィ ギ ュ レーシ ョ ンで下位のデバ イ ス にチ ッ プ イ ネーブル信号を出力す る 場合のみ使用 し ます。 それ以外の場合はハ イ イ ン ピーダ ン ス です。 5. RS0 と RS1 は BPI モー ド でマルチブー ト イ ベン ト が開始 さ れた場合、 ま たは Configuration Fallback オプシ ョ ン を有効に し て フ ォールバ ッ ク イ ベン ト が発生 し た場合のみ駆動 さ れます。 それ以外の場合は、 両者 と も ハ イ イ ン ピーダ ン ス です。 6. 「-」 のセルは、 該当す る コ ン フ ィ ギ ュ レーシ ョ ン モー ド でその ピ ンが使用 さ れない こ と を示 し てい ます。 こ れ ら は コ ン フ ィ ギ ュ レーシ ョ ン中にハ イ イ ン ピーダ ン ス と な り 、 無視 さ れます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 23 第 1 章 : は じ めに 各 コ ン フ ィ ギ ュ レーシ ョ ン ピ ンの定義を、 表 1-9 に ま と め ます。 表 1-9 : コ ン フ ィ ギ ュ レーシ ョ ン ピ ンの定義 ピ ン名 POR_ OVERRIDE バン ク タ イプ 方向 機能 モー ド 推奨 さ れる外 部プルア ッ プ/ プルダウ ン N/A 専用 入力 パ ワ ーオ ン リ セ ッ ト 遅延 オーバー ラ イ ド すべて N/A 説明 TPOR 時間 (電源投入か ら INIT_B の立ち 上が り ま で) をデー タ シー ト に記載 さ れ た値 ま で短縮 し ま す。 TPOR 遅延を短縮 す る 必 要 が あ る 場 合 は、 こ の ピ ン を VCCINT に直接接続 し ま す (た だ し コ ン フ ィ ギ ュ レーシ ョ ン デー タ ソ ース の電 源投入 タ イ ミ ン グ が短縮 し た遅延時間 を サポー ト し てい る 必要が あ る )。 標準 の長い POR 遅延 と す る 場合は、GND に 接続 し て く だ さ い。 注意 : コ ン フ ィ ギ ュ レーシ ョ ン前お よ び コ ン フ ィ ギ ュ レーシ ョ ン中は、こ の ピ ン を フ ロ ー ト に し な い で く だ さ い。 VCCINT ま た は GND に 接 続 し ま す。 VCCO_0 には接続 し ないで く だ さ い。 VBATT N/A 電源電圧 N/A バッ クアップ バッテ リ の 電源電圧 シ リ アル、 SPI、 SelectMAP、 BPI、 JTAG (BBRAM に暗 号化キーを格納す る 場合) N/A AES 復号化 キ ー を 保存 し て あ る FPGA の内部揮発性 メ モ リ の バ ッ ク ア ッ プ バ ッ テ リ の電源電圧です。 ビ ッ ト ス ト リ ーム を暗号化 し た場合、 FPGA の電源 がオ フ の間、復号化キーを格納 し た揮発 性 メ モ リ の内容 を 保持す る た めに こ の ピ ン を バ ッ ク ア ッ プ バ ッ テ リ に接続す る 必要があ り ます。 未使用 N/A 復号化キーを使用せず、揮発性 メ モ リ へ のバ ッ ク ア ッ プ電源が不要な場合は、こ の ピ ン を GND ま たは VCCAUX に接続 し て く だ さ い。 M[2:0] 0 専用 入力 コンフ ィ ギュ レーシ ョ ン モー ド すべて ≤ 1kΩ コ ン フ ィ ギ ュ レ ーシ ョ ン モー ド を選択 し ます。モー ド の設定については、表 1-6 を 参照 し て く だ さ い。 各モー ド ピ ン を 直接、 ま たは 1kΩ 以下の抵抗 を 介 し て VCCO_0 ま た は GND に接続 し て く だ さ い。 TCK 0 専用 入力 IEEE Std 1149.1 (JTAG) テ ス ト クロック JTAG 10kΩ JTAG チ ェ ーン上のすべてのデバ イ ス に 対す る ク ロ ッ ク です。ザ イ リ ン ク ス ケー ブル ヘ ッ ダ ーの TCK ピ ン に接続 し ま す。 ク リ テ ィ カルな ク ロ ッ ク 信号であ る ため、 複数のデバ イ ス を JTAG チ ェ ーン で接続す る場合は、 必要に応 じ て ケーブ ル ヘ ッ ダーの こ の信号 を バ ッ フ ァ リ ン グ し て く だ さ い。 バ ッ フ ァ リ ン グす る場 合は、 バ ッ フ ァ ー入力を外部の弱いプル ア ッ プ抵抗 (10kΩ な ど) に接続 し 、 ケー ブルが接続 さ れ て い な い場合 も 有効な High を維持す る よ う に し て く だ さ い。 未使用 N/A 無視 さ れ る ため、未接続の ま ま でか ま い ません。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 24 第 1 章 : は じ めに 表 1-9 : コ ン フ ィ ギ ュ レーシ ョ ン ピ ンの定義 (続き) ピ ン名 TMS TDI TDO PROGRAM_B バン ク タ イプ 方向 機能 モー ド 推奨 さ れる外 部プルア ッ プ/ プルダウ ン 0 専用 入力 JTAG テ ス ト モー ド セレ ク ト JTAG 10kΩ JTAG チ ェ ーン上のすべてのデバ イ ス に 対す る モー ド セ レ ク ト 信号です。 ザ イ リ ン ク ス ケーブル ヘ ッ ダーの TMS ピ ン に 接 続 し ま す。 複 数 の デ バ イ ス を JTAG チ ェ ーン で接続す る 場合は、 必要 に応 じ て ケーブル ヘ ッ ダーの こ の信号 を バ ッ フ ァ リ ン グ し て く だ さ い。 バ ッ フ ァ リ ン グす る 場合は、バ ッ フ ァ ー入力 を 外部の弱いプル ア ッ プ抵抗 (10kΩ な ど) に接続 し 、 ケーブルが接続 さ れてい ない場合 も 有効な High を維持す る よ う に し て く だ さ い。 未使用 N/A 無視 さ れ る ため、未接続の ま ま でか ま い ません。 JTAG N/A JTAG チ ェ ー ン の シ リ ア ラ イ ズ デー タ 入力です。 デバ イ ス が 1 つ し か な い場 合、 ま たは JTAG チ ェ ーン の最初のデバ イ ス の場合は、 ザ イ リ ン ク ス ケーブル ヘ ッ ダーの TDI ピ ン に接続 し ま す。 そ れ以外の場合 (FPGA が JTAG チ ェ ーン の最初のデバ イ ス でない場合) は、JTAG ス キ ャ ン チ ェ ーン の上位 JTAG デバ イ ス の TDO ピ ン に接続 し て く だ さ い。 未使用 N/A 無視 さ れ る ため、未接続の ま ま でか ま い ません。 JTAG N/A JTAG チ ェ ー ン の シ リ ア ラ イ ズ デー タ 出力です。 デバ イ ス が 1 つ し か な い場 合、 ま たは JTAG チ ェ ーン の最後のデバ イ ス の場合は、 ザ イ リ ン ク ス ケーブル ヘ ッ ダーの TDO ピ ンに接続 し ます。 そ れ以外の場合 (JTAG チ ェ ーン の最後の FPGA デバ イ ス でない場合) は、JTAG ス キ ャ ン チ ェ ー ン の下位 JTAG デバ イ ス の TDI ピ ン に接続 し て く だ さ い。 未使用 N/A 無視 さ れ る ため、未接続の ま ま でか ま い ません。 すべて ≤ 4.7kΩ コ ン フ ィ ギ ュ レ ーシ ョ ン ロ ジ ッ ク に対 す る 、 ア ク テ ィ ブ Low の リ セ ッ ト 信号 です。 こ の信号 を Low にす る と FPGA コ ン フ ィ ギ ュ レーシ ョ ン が ク リ ア さ れ、 新 し い コ ン フ ィ ギ ュ レ ーシ ョ ン シーケ ン ス が開始 し ま す。 コ ン フ ィ ギ ュ レ ー シ ョ ン の リ セ ッ ト は立ち下が り エ ッ ジ で開始 さ れ、 コ ン フ ィ ギ ュ レーシ ョ ン ( すなわちプ ロ グ ラ ミ ン グ) シーケ ン ス が 次の立ち上が り エ ッ ジで開始 し ます。電 源 投 入 時 に PROGRAM_B を 外 部 か ら Low に保持す る と 、初期化プ ロ セ ス が完 了 し た後 も コ ン フ ィ ギ ュ レーシ ョ ン シー ケ ン ス の開始 を 遅 ら せ る こ と がで き ます。 安定 し た High 入力 と す る ため、4.7kΩ 以 下の外部プル ア ッ プ抵抗 を 介 し て VCCO_0 に接続 し て く だ さ い。 GND 接続 に切 り 替え る プ ッ シ ュ ボ タ ン を用意 し 、 手動 で コ ン フ ィ ギ ュ レ ー シ ョ ン を リ セ ッ ト で き る よ う に し てお く こ と を 推 奨 し ます。 0 0 0 専用 専用 専用 入力 出力 JTAG テ ス ト デー タ 入力 JTAG テ ス ト デー タ 出力 入力 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 プログラ ム (負論理) japan.xilinx.com 説明 25 第 1 章 : は じ めに 表 1-9 : コ ン フ ィ ギ ュ レーシ ョ ン ピ ンの定義 (続き) バン ク タ イプ 方向 機能 モー ド 推奨 さ れる外 部プルア ッ プ/ プルダウ ン INIT_B 0 専用 双方向 (オープ ン ド レ イ ン) 初期化 (負論理) すべて 4.7kΩ ア ク テ ィ ブ Low の FPGA 初期化ピ ン ま たは コ ン フ ィ ギ ュ レ ーシ ョ ン エ ラ ー信 号です。 FPGA が コ ン フ ィ ギ ュ レーシ ョ ン リ セ ッ ト 状 態 に あ る 場 合 や、 コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ を初期化 ( ク リ ア) 中の場合、 ま たは コ ン フ ィ ギ ュ レ ー シ ョ ン エ ラ ー を 検出 し た 場合に、 こ の ピ ン を Low に駆動 し ます。 VCCINT に 電 源 が 供 給 さ れ て い な い 場 合、 INIT_B は Low に駆動 し ま せん。 FPGA の 初 期 化 プ ロ セ ス が 完 了 す る と、 INIT_B はハ イ イ ン ピーダ ン ス と な り ま す。 こ の時点で INIT_B が High に な る よ う に外部プル ア ッ プ抵抗 を 接続 し て く だ さ い。 電源投入時に INIT_B を外部 か ら Low に保持す る と 、 初期化プ ロ セ ス が完了 し た後 も コ ン フ ィ ギ ュ レ ー シ ョ ン シーケ ン ス の開始 を遅 ら せ る こ と がで き ます。 初期化プ ロ セ ス 完了後、 INIT_B 入 力 で High が 検 出 さ れ る と FPGA は M[2:0] ピ ン の設定に従 っ て残 り の コ ン フ ィ ギ ュ レ ーシ ョ ン シーケ ン ス を実行 し ます。コ ン フ ィ ギ ュ レーシ ョ ン後、 FPGA が コ ン フ ィ ギ ュ レーシ ョ ン エ ラ ー を 検出 し た か ど う か を 示す目的 で INIT_B を オ プ シ ョ ン で 使用 で き ま す。 4.7kΩ のプルア ッ プ抵抗を介 し て VCCO_0 に接続 し 、Low か ら High へ確実 に遷移す る よ う に し て く だ さ い。 DONE 0 専用 双方向 完了 すべて 4.7kΩ DONE ピ ン が High にな る と 、 コ ン フ ィ ギ ュ レ ーシ ョ ン シーケ ン ス が完了 し た こ と を 表 し ま す。 デ フ ォ ル ト で は、 DONE 出力はオープン ド レ イ ン です。 注記 : DONE にはデフ ォ ル ト で約 10kΩ の内部プルア ッ プ抵抗があ り ます。必須 ではあ り ませんが、 4.7kΩ の抵抗回路を 外付けす る こ と を推奨 し ます。 CCLK 0 専用 入力ま たは 出力 コンフ ィ ギュ レーシ ョ ン クロック マ ス タ ー シ リ アル、 マス ター SelectMAP、 SPI、 BPI (同期) N/A デ フ ォ ル ト で は FPGA コ ン フ ィ ギ ュ レ ーシ ョ ン シーケ ン ス が同期で実行 さ れ ます。 FPGA が コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク ソ ース と な り 、 CCLK を出 力 と し て駆動 し ます。 注記 :CCLK は ク リ テ ィ カルな ク ロ ッ ク 信号のため、シ グ ナル イ ン テ グ リ テ ィ が重要です。 BPI (非同期) N/A ハ イ イ ン ピ ーダ ン ス の た め、 未接続の ま ま でか ま い ません。 ス レーブ シ リ アル、 ス レーブ SelectMAP N/A 入力 と し て使用 し ま す。 外部 ク ロ ッ ク ソ ース に接続す る 必要があ り ます。 JTAG N/A ハ イ イ ン ピ ーダ ン ス の た め、 未接続の ま ま でか ま い ません。 すべて ≤ 1kΩ 電源投入後お よ び コ ン フ ィ ギ ュ レ ー シ ョ ン 中 に SelectIO ピ ン の 内 部 プ ル ア ッ プ 抵抗 を 有効にす る ア ク テ ィ ブ Low の入力信号です (選択 し た コ ン フ ィ ギ ュ レ ー シ ョ ン モ ー ド で 多目的 コ ン フ ィ ギ ュ レ ーシ ョ ン ピ ン が使用 さ れて い ない場合は、 こ れ を含む)。 Low にす る と 、各 SelectIO ピ ンの内部プルア ッ プ 抵抗が有効にな り ます。 High にす る と 、 各 SelectIO ピ ン の内部プル ア ッ プ抵抗 が無効にな り ます。直接、 ま たは 1kΩ 以 下の抵抗 を 介 し て VCCO_0 ま た は GND に接続 し て く だ さ い。 ピ ン名 PUDC_B 0 専用 入力 コンフ ィ ギュ レーシ ョ ン中の プルア ッ プ (負論理) UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 説明 26 第 1 章 : は じ めに 表 1-9 : コ ン フ ィ ギ ュ レーシ ョ ン ピ ンの定義 (続き) 推奨 さ れる外 部プルア ッ プ/ プルダウ ン ピ ン名 バン ク タ イプ 方向 機能 モー ド RDWR_FCS_B 0 専用 入力ま たは 出力 読み出 し /書 き 込み (負論理) ま たは フ ラ ッ シ ュ チ ッ プ セレ ク ト (負論理) SelectMAP (RDWR_B) N/A 外部デバ イ ス で RDWR_B 信号を制御 し て SelectMAP イ ン タ ー フ ェ イ ス におけ る SelectMAP デー タ バ ス の方向 (読み 出 し /書 き 込み) を制御 し ます。High の場 合、 FPGA か ら SelectMAP デー タ バ ス に読み出 し デー タ が出力 さ れ ます。 Low の 場 合 は、 外 部 コ ン ト ロ ー ラ ー が SelectMAP デ ー タ バ ス を 経 由 し て FPGA にデー タ を 書 き 込む こ と が で き ます。 SelectMAP、 未使用 N/A GND に接続 し ます。 SPI (FCS_B) 2.4kΩ ア ク テ ィ ブ Low のチ ッ プ セ レ ク ト 出力 で、コ ン フ ィ ギ ュ レーシ ョ ン で使用す る フ ラ ッ シ ュ デバ イ ス を 有効に し ま す。 フ ラ ッ シ ュ デバ イ ス のチ ッ プ セ レ ク ト 入力に接続す る と 共に、 4.7kΩ 以下の外 部プルア ッ プ抵抗を介 し て VCCO_0 に も 接続 し て く だ さ い (2.4kΩ を推奨)。 BPI (FCS_B) ≤ 4.7kΩ ア ク テ ィ ブ Low のチ ッ プ セ レ ク ト 出力 で、コ ン フ ィ ギ ュ レーシ ョ ン で使用す る フ ラ ッ シ ュ デバ イ ス を 有効に し ま す。 フ ラ ッ シ ュ デバ イ ス のチ ッ プ セ レ ク ト 入力に接続す る と 共に、 4.7kΩ 以下の外 部プルア ッ プ抵抗を介 し て VCCO_0 に も 接続 し て く だ さ い。 シ リ アル、 JTAG N/A ハ イ イ ン ピ ー ダ ン ス で 無視 さ れ る た め、 未接続の ま ま でか ま い ません。 SPI x1 (MOSI) N/A シ リ アル (ス レーブ) フ ラ ッ シ ュ デバ イ ス に コ マ ン ド を 送信す る た めの出力で す。 フ ラ ッ シ ュ の シ リ アル デー タ 入力 (DQ0/D/SI/IO0) ピ ン に接続 し ます。 SPI x2/x4/x8 (D00_MOSI) N/A 多目的デー タ 入力/出力 ピ ン です。 シ リ アル (ス レーブ) フ ラ ッ シ ュ デバ イ ス に コ マ ン ド を 送信す る た め の 出力 で す。 デ ュ アル ま たは ク ワ ッ ド フ ラ ッ シ ュ デ バ イ ス か ら の LSB デー タ 入力です。 フ ラ ッ シ ュ の シ リ ア ル デー タ 入出力 (DQ0/D/SI/IO0) ピ ン に接続 し ます。 SelectMAP、 BPI (D00) N/A D00 デー タ 入力 ピ ン と し て機能す る 多 目的 ピ ン です。 こ の表の D[31:00] の欄 を参照 し て く だ さ い。 シ リ アル、 JTAG N/A ハ イ イ ン ピ ー ダ ン ス で 無視 さ れ る た め、 未接続の ま ま でか ま い ません。 BPI、 SelectMAP (D01) N/A D01 デー タ 入力 ピ ン と し て機能す る 多 目的 ピ ン です。 こ の表の D[31:00] の欄 を参照 し て く だ さ い。 シ リ アル、 SPI x1 (DIN) N/A デー タ ソ ース か ら シ リ アル デー タ を受 信す る デー タ 入力です。 シ リ アル デー タ ソ ー ス の シ リ ア ル デー タ 出力 ピ ン (DQ1/Q/SO/IO1 ピ ン) に接続 し て く だ さ い。 デフ ォ ル ト では、 DIN か ら のデー タ が CCLK の立ち上が り エ ッ ジ で キ ャ プ チ ャ さ れ ます。 SPI x2/x4/x8 (D01) N/A デ ュ アル ま たは ク ワ ッ ド フ ラ ッ シ ュ デ バ イ ス か ら のデー タ 入力です。 フ ラ ッ シ ュ の デー タ 出力 ピ ン (DQ1/Q/SO/IO1 ピ ン) に接続 し て く だ さ い。 JTAG N/A 無視 さ れ る ため、未接続の ま ま でか ま い ません。 D00_MOSI D01_DIN 0 0 専用 専用 双方向 入力ま たは 双方向 デー タ ビ ッ ト 0 ま たは MOSI (Master-Output、 Slave-Input) デー タ ビ ッ ト 1 ま たは デー タ 入力 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 説明 27 第 1 章 : は じ めに 表 1-9 : コ ン フ ィ ギ ュ レーシ ョ ン ピ ンの定義 (続き) ピ ン名 D02 D03 CFGBVS バン ク タ イプ 方向 機能 モー ド 推奨 さ れる外 部プルア ッ プ/ プルダウ ン 0 専用 入力ま たは 双方向 デー タ ビ ッ ト 2 SPI x4/x8 4.7kΩ フ ラ ッ シ ュ ク ワ ッ ド デー タ ビ ッ ト 2 出 力 (DQ2/W#/WP#/IO2) ピ ン に 接続す る と 共に、 4.7kΩ の外部プルア ッ プ抵抗を 介 し て VCCO_0 に も 接続 し て く だ さ い。 BPI、 SelectMAP N/A D02 デー タ 入力 ピ ン と し て機能す る 多 目的 ピ ン です。 こ の表の D[31:00] の欄 を参照 し て く だ さ い。 シ リ アル、 SPI x1/x2、 JTAG N/A 無視 さ れ る ため、未接続の ま ま でか ま い ません。 SPI x4/x8 4.7kΩ フ ラ ッ シ ュ ク ワ ッ ド デー タ ビ ッ ト 3 出 力 (DQ3/HOLD#/IO3) ピ ン に接続す る と 共に、 4.7kΩ の外部プルア ッ プ抵抗を介 し て VCCO_0 に も 接続 し て く だ さ い。 BPI、 SelectMAP N/A D03 デー タ 入力 ピ ン と し て機能す る 多 目的 ピ ン です。 こ の表の D[31:00] の欄 を参照 し て く だ さ い。 シ リ アル、 SPI x1/x2、 JTAG N/A 無視 さ れ る ため、未接続の ま ま でか ま い ません。 すべて N/A コ ン フ ィ ギ ュ レ ー シ ョ ン 専用バ ン ク 0 の I/O 電圧動作範囲 と 電圧耐性 を 決定 し 、コ ン フ ィ ギ ュ レーシ ョ ン時にはバン ク 65 (HR I/O バン ク の場合) の コ ン フ ィ ギ ュ レ ーシ ョ ン ピ ン の I/O 電圧動作範 囲 と 電圧耐性を決定 し ます。CFGBVS は バン ク 電圧の要件に従っ て High ま たは Low に接続 し て く だ さ い。 バ ン ク 0 の VCCO_0 電源に 2.5V ま たは 3.3V が供給 さ れてい る 場合は、 こ の ピ ン を High (つ ま り VCCO_0) に接続す る 必要が あ り ま す。 バ ン ク 0 の VCCO_0 が 1.5V ま たは 1.8V の場合のみ、CFGBVS を Low (つま り GND) に接続 し て く だ さ い。バン ク 65 を コ ン フ ィ ギ ュ レ ーシ ョ ン で使用す る 場合、電圧はバン ク 0 と 同 じ にす る 必要 があ り ます。33 ページの 「 コ ン フ ィ ギ ュ レ ーシ ョ ン バ ン ク 電圧の選択」 を 参照 し て く だ さ い。 0 0 専用 専用 入力ま たは 双方向 入力ま たは 双方向 デー タ ビ ッ ト 3 コンフ ィ ギュ レーシ ョ ン バン ク 電圧の 選択 説明 注意 : デバ イ ス の損傷を防 ぐ ため、 こ の ピ ン は必ず VCCO_0 ま たは GND のい ずれかに正 し く 接続 し て く だ さ い。 EMCCLK 65 多目的 入力 外部マ ス タ ー コンフ ィ ギュ レーシ ョ ン クロック UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 SPI、 BPI、 マ ス タ ー シ リ アル、 マ ス タ ー SelectMAP N/A マ ス タ ー モ ー ド で 内部 コ ン フ ィ ギ ュ レ ーシ ョ ン オ シ レ ー タ ーの代わ り に コ ン フ ィ ギ ュ レーシ ョ ン ロ ジ ッ ク の ク ロ ッ ク ソ ー ス と な る オプシ ョ ン の外部 ク ロ ッ ク 入力で す。 FPGA は内部 コ ン フ ィ ギ ュ レ ーシ ョ ン エ ン ジ ン の ク ロ ッ ク ソ ー ス を 内部 オ シ レ ー タ ー か ら EMCCLK に 切 り 替 え る こ と が で き ま す。 EMCCLK の 周 波 数 は ビ ッ ト ス ト リ ー ム 設定で分周 し て か ら 、 マ ス タ ー CCLK 信号 と し て出力で き ます。 ス レーブ シ リ アル、 ス レーブ SelectMAP、 JTAG、 ま たは未使用 N/A 無視 さ れ る ため、未接続の ま ま でか ま い ません。 ま たは、 コ ン フ ィ ギ ュ レーシ ョ ン後に I/O ピ ン と し て接続 し ます。 japan.xilinx.com 28 第 1 章 : は じ めに 表 1-9 : コ ン フ ィ ギ ュ レーシ ョ ン ピ ンの定義 (続き) ピ ン名 CSI_ADV_B DOUT_CSO_B バン ク タ イプ 方向 機能 モー ド 推奨 さ れる外 部プルア ッ プ/ プルダウ ン 65 多目的 入力ま たは 出力 チ ッ プ セレ ク ト 入力 (負論理) ま たは ア ド レ ス有効 (負論理) SelectMAP (CSI_B) N/A FPGA の SelectMAP コ ン フ ィ ギ ュ レ ー シ ョ ン イ ン タ ー フ ェ イ ス を有効にす る ア ク テ ィ ブ Low の入力です。 外部 コ ン フ ィ ギ ュ レ ーシ ョ ン コ ン ト ロ ー ラ ーで CSI_B を制御 し 、 SelectMAP バ ス 上でア ク テ ィ ブにす る FPGA を選択 し ます。ま たは、 デ イ ジー チ ェ ーンのパ ラ レル コ ン フ ィ ギ ュ レ ー シ ョ ン で は上位 FPGA の CSO_B ピ ンに接続 し ます。 SelectMAP、 未使用 N/A GND に接続 し ます。 BPI (ADV_B) (ア ド レ ス有効の入力に対 応し たフ ラ ッ シ ュ を 使用す る 場合) ≤ 4.7kΩ ア ド レ ス 有効の入力 を サ ポー ト す る パ ラ レル NOR フ ラ ッ シ ュ のア ド レ ス有効 を 出力す る ア ク テ ィ ブ Low の 信号 で す。 パ ラ レル NOR フ ラ ッ シ ュ のア ド レ ス 有 効 入 力 ピ ン に 接 続 す る と 共 に、 4.7kΩ 以下の外部プ ル ア ッ プ抵抗 を 介 し て VCCO_65 に も 接続 し て く だ さ い。同 期モー ド (推奨) で使用 し ま す。 非同期 モー ド では、 ADV_B は未接続の ま ま で か ま い ま せ ん。 フ ラ ッ シ ュ の ADV は GND に接続で き ます。 BPI、 未使用 N/A 未接続の ま ま でか ま い ません。 ま たは、 コ ン フ ィ ギ ュ レ ー シ ョ ン 後に I/O ピ ン と し て接続 し ます。 シ リ アル、 SPI、 JTAG N/A ハ イ イ ン ピ ー ダ ン ス で 無視 さ れ る た め、 未接続の ま ま でか ま い ません。 ま た は、 コ ン フ ィ ギ ュ レーシ ョ ン後に I/O ピ ン と し て接続 し ます。 シ リ アル、 SPI x1 (DOUT) N/A デ イ ジー チ ェ ーンのシ リ アル コ ン フ ィ ギ ュ レ ーシ ョ ン でデー タ 出力 と し て使 用 し ま す。 デバ イ ス を デ イ ジー チ ェ ー ン接続 し て シ リ アル コ ン フ ィ ギ ュ レ ー シ ョ ン を実行す る 際は、下位の ス レーブ シ リ アル FPGA の DIN に接続 し ます。 BPI、 SelectMAP (CSO_B) 330Ω ア ク テ ィ ブ Low のオープ ン ド レ イ ン出 力で、 Low 駆動す る と デ イ ジー チ ェ ー ン のパ ラ レ ル コ ン フ ィ ギ ュ レ ーシ ョ ン で下位 FPGA の ス レ ーブ SelectMAP コ ン フ ィ ギ ュ レ ーシ ョ ン イ ン タ ー フ ェ イ ス が有効に な り ま す。 BPI (非同期読み 出 し 専用) お よ び SelectMAP モー ド の場 合 :デ イ ジー チ ェ ー ン のパ ラ レ ル コ ン フ ィ ギ ュ レーシ ョ ン で、チ ェ ーン の下位 にデバ イ ス が接続 さ れ て い る 場合は 330Ω の 外部 プ ル ア ッ プ 抵抗 を 介 し て VCCO_65 に接続す る と 共に、 下位デバ イ ス の CSI_B 入力に も 接続 し て く だ さ い。 SPI x2/x4/x8、 JTAG、 ま たは 未使用 N/A ハ イ イ ン ピ ーダ ン ス の た め、 未接続の ま ま でか ま い ません。 ま たは、 コ ン フ ィ ギ ュ レ ー シ ョ ン 後に I/O と し て接続 し ます。 すべて N/A 注記 : Debug Bitstream オプシ ョ ン を有効 にす る と 、DOUT か ら デー タ を出力で き ます。 65 多目的 出力 デー タ 出力 ま たは チ ッ プ セレ ク ト 出力 (負論理) UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 説明 29 第 1 章 : は じ めに 表 1-9 : コ ン フ ィ ギ ュ レーシ ョ ン ピ ンの定義 (続き) ピ ン名 D[31:00] 推奨 さ れる外 部プルア ッ プ/ プルダウ ン バン ク タ イプ 方向 機能 モー ド 65 (D[03:00] はバン ク 0) 多目的 入力ま たは 双方向 デー タ バ ス シ リ アル、 SPI、 SelectMAP、 BPI N/A シ リ アル、SPI、SelectMAP、BPI の各モー ド では、 D[31:00] ピ ンの一部ま たは全部 がデー タ バ ス イ ン タ ーフ ェ イ ス と な り ます。 デフ ォル ト では、 デー タ バ ス か ら のデー タ が CCLK の立ち上が り エ ッ ジ で キ ャ プチ ャ さ れ ま す。 コ ン フ ィ ギ ュ レーシ ョ ン中、残 り のデー タ ピ ンはハ イ イ ン ピーダ ン ス で無視 さ れ、 使用 さ れま せ ん。 D[31:04] は、 コ ン フ ィ ギ ュ レ ー シ ョ ン後に I/O と し て使用で き ます。 フ ラ ッ シ ュ か ら コ ン フ ィ ギ ュ レ ーシ ョ ン デー タ を読み出す場合、 デー タ バ ス の信号は入力 と な り ま す。 パ ラ レ ル フ ラ ッ シ ュ 読み出 し コ ン フ ィ ギ ュ レ ー シ ョ ン レ ジ ス タ へ の 書 き 込み ま た は SelectMAP リ ー ド バ ッ ク の実行時、 デー タ バ ス の信号は出力 と な り ます。シ リ ア ルお よ び SPI モー ド については、 こ の表 の D00-D03 の欄 も 確認 し て く だ さ い。 SPI 4.7kΩ コ ン フ ィ ギ ュ レ ー シ ョ ン は、 標準 SPI (x1) シ リ アル デー タ 出力お よ びデー タ 入力 で 使用 さ れ る デー タ バスの D00_MOSI お よ び D01 ピ ン で開始 し ま す。 ビ ッ ト を オ プ シ ョ ン を 用い て、 フ ラ ッ シ ュ 読み出 し モー ド を デ ュ ア ル出 力 (x2)、 ク ワ ッ ド 出力 (x4)、 デ ュ アル ク ワ ッ ド (x8) モー ド に変更で き ます。 • SPI x1/x2/x4/x8 の場合 : フ ラ ッ シ ュ の シ リ ア ル デー タ 入力 (DQ0/D/SI/IO0) ピ ン に接続す る • SPI x1/x2/x4/x8 の場合 : D01_DIN を フ ラ ッ シ ュ シ リ ア ル デー タ 出力 (DQ1/Q/SO/IO1) ピ ン に 接続す る • SPI x4/x8 の場合 : D02 を フ ラ ッ シ ュ ク ワ ッ ド デー タ ビ ッ ト 2 出力 (DQ2/W#/WP#/IO2) ピ ン に接続す る と 共に、 4.7kΩ の外部 プルア ッ プ抵抗を介 し て VCCO_65 に も 接続す る • SPI x4/x8 の場合 : D03 を フ ラ ッ シ ュ ク ワ ッ ド デー タ ビ ッ ト 3 出力 (DQ3/HOLD#/IO3) ピ ン に接続す る と 共に、 4.7kΩ の外部 プルア ッ プ抵抗を介 し て VCCO_65 に も 接続す る • SPI x8 の場合 : D[03:00] を プ ラ イ マ リ フ ラ ッ シ ュ に 接続す る の と 同 じ 方法で D[07:04] を セ カ ン ダ リ フ ラ ッ シ ュ に接続す る SelectMAP N/A FPGA は D[07:00] に現れ る バ ス 幅自動 検出パ タ ー ン を 監視 し て、 D[07:00] (x8 バ ス 幅) のみを使用す る か、 x16 ま たは x32 デー タ バ ス 幅 を 使用す る か を 決定 し ま す。 デー タ バ ス と し て使用す る ピ ン をデー タ ソ ース の該当す る デー タ ピ ンに接続 し て く だ さ い。 デー タ バ ス の信号は、 フ ラ ッ シ ュ か ら コ ン フ ィ ギ ュ レ ーシ ョ ン デー タ を読み 出す場合は入力 と な り 、 リ ー ド バ ッ ク 時 は出力 と な り ます。 BPI N/A FPGA は D[07:00] に現れ る バ ス 幅自動 検出パ タ ー ン を 監視 し て、 D[07:00] (x8 バ ス 幅) のみを使用す る か、 x16 デー タ バ ス幅を使用す る か を決定 し ます。デー タ バ ス と し て 使用す る ピ ン を フ ラ ッ シ ュ の該当す る デー タ ピ ン に接続 し て く だ さ い。 多目的 ピ ン の D[31:16] ピ ン は、BPI ア ド レ ス A[15:00] ピ ン と し て機 能 し ま す。 こ の表の A[28:00] の欄 を 参 照 し て く だ さ い。 JTAG N/A コ ン フ ィ ギ ュ レ ーシ ョ ン 中、 すべ て の デー タ ピ ンはハ イ イ ン ピーダ ン ス で無 視 さ れ、 使用 さ れ ません。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 説明 30 第 1 章 : は じ めに 表 1-9 : コ ン フ ィ ギ ュ レーシ ョ ン ピ ンの定義 (続き) ピ ン名 A[15:00] D[31:16] A[28:00] FOE_B バン ク タ イプ 方向 機能 モー ド 推奨 さ れる外 部プルア ッ プ/ プルダウ ン 65 多目的 入力ま たは 出力 ア ド レ ス バス の下位ビ ッ ト ま たは デー タ バ ス の 上位ビ ッ ト BPI (A[15:00]) N/A ア ド レ ス バ ス ビ ッ ト 15-0 です。 こ の表 の A[28:00] の欄を参照 し て く だ さ い。 SelectMAP x32 N/A デー タ バ ス ビ ッ ト 31-16 です。 こ の表 の D[31:00] の欄を参照 し て く だ さ い。 シ リ アル、 SPI、 BPI、 SelectMAPx8/x16、 JTAG N/A 無視 さ れ る ため、未接続の ま ま でか ま い ません。 ま たは、 コ ン フ ィ ギ ュ レーシ ョ ン後に I/O と し て接続 し ます。 BPI N/A パ ラ レル NOR フ ラ ッ シ ュ に対す る ア ド レ ス出力です。A00 がア ド レ ス の最下位 ビ ッ ト です。FPGA の A[28:00] ピ ン をパ ラ レ ル NOR フ ラ ッ シ ュ の ア ド レ ス ピ ンに接続 し ます。 FPGA の A00 ピ ンは、 使用す る デー タ バ ス 幅に応 じ て フ ラ ッ シ ュ の最下位ア ド レ ス 入力 ピ ン に正 し く 接続 し て く だ さ い。フ ラ ッ シ ュ の種類 と 使用す る デー タ バ ス 幅に よ り 、 フ ラ ッ シ ュ の 最下位 ア ド レ ス ビ ッ ト は A1、 A0、 A-1 のいずれか と な り ます。 パ ラ レ ル NOR フ ラ ッ シ ュ の ア ド レ ス バ ス 幅 よ り 上位 の ア ド レ ス ピ ン は コ ン フ ィ ギ ュ レ ーシ ョ ン 実行中は駆動 さ れ ま すが、 コ ン フ ィ ギ ュ レ ーシ ョ ン 後は I/O と し て使用可能です。 SelectMAP N/A 多目的ピ ンの A[15:00] ピ ンは、 D[31:16] デー タ バ ス ピ ン と し て機能 し ます。 こ の表の D[31:00] の欄 を 参照 し て く だ さ い。 シ リ アル、 SPI、 JTAG N/A コ ン フ ィ ギ ュ レ ーシ ョ ン中はハ イ イ ン ピーダ ン ス で無視 さ れ る ため、未接続の ま ま でか ま い ません。 ま たは、 コ ン フ ィ ギ ュ レ ー シ ョ ン 後に I/O と し て接続 し ます。 BPI ≤ 4.7kΩ パ ラ レル NOR フ ラ ッ シ ュ の出力 イ ネー ブルを制御す る ア ク テ ィ ブ Low の信号 です。フ ラ ッ シ ュ の出力 イ ネーブル入力 に接続す る と 共に、 4.7kΩ 以下の外部プ ル ア ッ プ抵抗 を 介 し て VCCO_65 に も 接 続 し て く だ さ い。 シ リ アル、 SPI、 SelectMAP、 JTAG N/A ハ イ イ ン ピ ーダ ン ス の た め、 未接続の ま ま でか ま い ません。 ま たは、 コ ン フ ィ ギ ュ レ ー シ ョ ン 後に I/O と し て接続 し ます。 65 65 多目的 多目的 出力 出力 ア ド レ ス バス フ ラ ッ シ ュ 出力 イ ネーブル (負論理) UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 説明 31 第 1 章 : は じ めに 表 1-9 : コ ン フ ィ ギ ュ レーシ ョ ン ピ ンの定義 (続き) ピ ン名 バン ク タ イプ 方向 機能 モー ド 推奨 さ れる外 部プルア ッ プ/ プルダウ ン FWE_FCS2_B 65 多目的 出力 フ ラ ッ シ ュ書き 込み イ ネーブル (負論理) ま たは フ ラ ッシュ チ ッ プ セレ ク ト 2 (負論理) BPI (FWE_B) ≤ 4.7kΩ パ ラ レル NOR フ ラ ッ シ ュ の書 き 込み イ ネーブルを制御す る ア ク テ ィ ブ Low の 信号です。フ ラ ッ シ ュ の書 き 込み イ ネー ブル入力に接続す る と 共に、 4.7kΩ 以下 の外部プルア ッ プ抵抗を介 し て VCCO_65 に も 接続 し て く だ さ い。 SPI x8 (FCS2_B) 2.4kΩ ア ク テ ィ ブ Low のチ ッ プ セ レ ク ト 出力 で、 x8 コ ン フ ィ ギ ュ レーシ ョ ン モー ド で使用す る セ カ ン ダ リ SPI ク ワ ッ ド フ ラ ッ シ ュ デバ イ ス を有効に し ます。 シ リ アル、 SPI x1/x2/x4、 SelectMAP、 JTAG N/A ハ イ イ ン ピ ーダ ン ス の た め、 未接続の ま ま でか ま い ません。 ま たは、 コ ン フ ィ ギ ュ レ ー シ ョ ン 後に I/O と し て接続 し ます。 フ ォ ールバ ッ ク ま た はマルチブー ト を使 用 し た BPI のみ N/A リ ビ ジ ョ ン選択出力ピ ン です。 通常、 コ ン フ ィ ギ ュ レ ーシ ョ ン 中はハ イ イ ン ピ ーダ ン ス です。 ビ ッ ト ス ト リ ー ム の Configuration Fallback オプシ ョ ン を有効 に し て コ ン フ ィ ギ ュ レ ーシ ョ ン エ ラ ー が検出 さ れた場合、 フ ォ ールバ ッ ク コ ン フ ィ ギ ュ レ ー シ ョ ン プ ロ セ ス の間、 FPGA は こ れを共に Low に駆動 し ます。 も う 1 つはユーザーがマルチブー ト コ ン フ ィ ギ ュ レ ーシ ョ ン を 開始 し た場合 で、 マ ル チ ブ ー ト コ ン フ ィ ギ ュ レ ー シ ョ ン プ ロ セ ス の間、FPGA は こ れ ら の ピ ン を ユーザー定義の状態に駆動 し ま す。 RS[1:0] 65 多目的 出力 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 リ ビジ ョ ン セレ ク ト japan.xilinx.com 説明 32 第 1 章 : は じ めに コ ン フ ィ ギ ュ レーシ ョ ン バン ク電圧の選択 コ ン フ ィ ギ ュ レーシ ョ ン バン ク 電圧セ レ ク ト (CFGBVS) ピ ン を High ま たは Low に接続す る こ と で、バン ク 0 の ピ ン お よ び コ ン フ ィ ギ ュ レ ーシ ョ ン で使用す る 場合はバ ン ク 65 の多目的 ピ ン でサ ポー ト す る I/O 電圧 を 決定 し ま す。 CFGBVS は、 VCCO_0 と GND を基準電圧 と する ロ ジ ッ ク 入力ピ ンです。 CFGBVS ピ ン を 3.3V ま たは 2.5V の VCCO_0 電源に接続 し た場合、 コ ン フ ィ ギ ュ レーシ ョ ン I/O は 3.3V ま たは 2.5V 動作をサポー ト し ます。CFGBVS ピ ン を GND に接続 し た場合、 コ ン フ ィ ギ ュ レーシ ョ ン I/O は 1.8V ま たは 1.5V 動作をサポー ト し ます。 1.2V 以下の電圧での コ ン フ ィ ギ ュ レーシ ョ ンはサポー ト さ れてい ません。 コ ン フ ィ ギ ュ レーシ ョ ン前、 コ ン フ ィ ギ ュ レーシ ョ ン中、 コ ン フ ィ ギ ュ レーシ ョ ン後のすべての時点においてバン ク 0 でサポー ト さ れ る I/O 電圧は、 CFGBVS ピ ンの設定に よ っ て決ま り ます。 バン ク 65 に関 し ては、 コ ン フ ィ ギ ュ レーシ ョ ン中の電圧耐性のみ CFGBVS に よ っ て決ま り ます。 UltraScale FPGA の I/O には、 HR (High Range) バン ク と HP (High Performance) バン ク の 2 種類があ り ます。 HR バン ク は 3.3V 以下の I/O 規格を サポー ト し 、 HP バン ク は 1.8V 以下の I/O 規格を サポー ト し ます。 バン ク 0 には コ ン フ ィ ギ ュ レーシ ョ ンお よ び JTAG 専用の I/O があ り 、 こ のバン ク はど のデバ イ ス で も HR バン ク です。 コ ン フ ィ ギ ュ レー シ ョ ン モー ド に よ っ ては、バン ク 65 の ピ ン を使用す る こ と があ り ます。バン ク 65 は Kintex UltraScale FPGA では HR バン ク で、 KU095 お よ び Virtex UltraScale FPGA では HP バン ク です。 表 1-10 に、 CFGBVS ピ ンの接続 と 有効な VCCO_0 電源電圧お よ び I/O 電圧の対応を示 し ます。 表 1-10 : CFGBVS ピ ンの接続 と VCCO 電源電圧お よび I/O 信号電圧の対応 サポー ト さ れる VCCO 電源電圧 と I/O 信号電圧 CFGBVS ピ ンの 接続 Kintex UltraScale (KU095 を除 く ) バン ク 0、 65 Virtex UltraScale および KU095 バン ク 0 VCCO_0 3.3V ま たは 2.5V 3.3V ま たは 2.5V 1.8V ま たは 1.5V 1.8V ま たは 1.5V (3.3V ま たは 2.5V) GND 注意 : CFGBVS を GND に接続 し て 1.8V ま たは 1.5V I/O 動作 と す る 場合は、 バン ク 0 に対す る VCCO_0 お よ び I/O 信 号の電圧を 1.8V 以下 と す る 必要があ り ます。 1.8V の最大動作電圧を超え る 電圧をバン ク 0 の ピ ンに供給す る と 、 デ バ イ ス が損傷す る 可能性があ り ます。 主に 8 ビ ッ ト 以上の幅のデー タ イ ン タ ーフ ェ イ ス を使用す る 場合、 コ ン フ ィ ギ ュ レーシ ョ ン モー ド に関連す る イ ン タ ーフ ェ イ ス ピ ンがバン ク 0 と バン ク 65 に ま たが る こ と があ り ます。 コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス で こ れ ら のバン ク を共に使用す る 場合、 すべての コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス ピ ン の間で I/O 電圧 イ ン タ ーフ ェ イ ス と タ イ ミ ン グの一貫性を維持す る ため両バン ク の VCCO ピ ン に同 じ 電圧を供給す る 必要があ り ます。 8 ビ ッ ト ま たはそれ以上の コ ン フ ィ ギ ュ レーシ ョ ン モー ド を使用する オプシ ョ ンの可能性があ る こ と か ら 、バン ク 0 と バン ク 65 には同 じ 電圧を使用す る こ と を推奨 し ます。 こ れに よ り 、 130 ページの 「EOS (End of Startup) 時の I/O 遷移」 で説明す る I/O の遷移を回避 し ます。 CFGBVS ピ ン を正 し く 設定す る には、 次の手順に従い ます。 1. FPGA の コ ン フ ィ ギ ュ レーシ ョ ン モー ド を決定す る 。 コ ン フ ィ ギ ュ レーシ ョ ン モー ド にかかわ ら ず、 JTAG イ ン タ ーフ ェ イ ス はバン ク 0 の VCCO_0 電圧レベルで常にサポー ト さ れ る こ と に注意 し て く だ さ い。 2. FPGA で使用す る 各 コ ン フ ィ ギ ュ レーシ ョ ン モー ド について、 コ ン フ ィ ギ ュ レーシ ョ ンに使用す る ピ ン と その ピ ンが属す る バン ク を確認す る (表 1-7 お よ び表 1-8 参照)。 3. コ ン フ ィ ギ ュ レーシ ョ ンで使用す る すべての ピ ンについて必要な I/O 電圧を確認 し 、 その条件を満たす よ う に各 バン ク の I/O 電圧を決定す る 。 4. タ ーゲ ッ ト FPGA フ ァ ミ リ を選択す る 。 Virtex UltraScale お よ び Kintex KU095 FPGA はバン ク 65 で 1.8V/1.5V の コ ン フ ィ ギ ュ レーシ ョ ンのみサポー ト し てい ます。 5. 必要な コ ン フ ィ ギ ュ レーシ ョ ン I/O 電圧をサポー ト で き る よ う に CFGBVS ピ ン を設定す る 。 CFGBVS ピ ンの正 し い設定方法は、 表 1-11 お よ び表 1-12 を参照 し て く だ さ い。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 33 第 1 章 : は じ めに 表 1-11 : Kintex UltraScale (KU095 を除 く ) と 互換性のある電圧、 CFGBVS ピ ンの接続 コ ン フ ィ ギ ュ レーシ ョ ン モー ド JTAG (専用の場合)(1) シ リ アル、 ま たは SPI x1/x2/x4 (DOUT ま たは EMCCLK の使用な し ) SPI x8、 SelectMAP、 ま たは BPI、 あ る いは DOUT を使用す る シ リ アルま たは EMCCLK を 使用す る その他の SPI 互換性のあるバン ク電圧 使用するバン ク コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ー フ ェ イ スの I/O 電圧 バン ク 0 の電圧 VCCO_0 0 3.3V 3.3V 任意(3)(4) VCCO_0 2.5V 2.5V 任意(3)(4) VCCO_0 1.8V 1.8V 任意(4) GND 1.5V 1.5V 任意(4) GND 3.3V 3.3V 任意(3)(4) VCCO_0 2.5V 2.5V 任意(3)(4) VCCO_0 1.8V 1.8V 任意(4) GND 1.5V 1.5V 任意(4) GND 3.3V 3.3V 3.3V VCCO_0 2.5V 2.5V 2.5V VCCO_0 1.8V 1.8V 1.8V GND 1.5V 1.5V 1.5V GND 0 0、 65 必要な バン ク 65 の電圧 CFGBVS ピ ンの 接続 VCCO_65(2) 注記 : 1. コ ン フ ィ ギ ュ レーシ ョ ン モー ド にかかわ ら ず、 JTAG イ ン タ ーフ ェ イ ス はバン ク 0 の VCCO_0 電圧レベルで常にサポー ト さ れます。 2. ほ と ん ど の Kintex UltraScale FPGA では、 バン ク 65 は HR I/O バン ク と な り 、 最大 3.3V ま での電圧をサポー ト し ます。 Virtex UltraScale お よ び KU095 FPGA のバン ク 65 は HP I/O バン ク であ る ため、 1.8V 以下の I/O 規格にのみ対応 し てい ます。 3. バン ク 0 が 2.5V ま たは 3.3V の場合、バン ク 65 には 2.5V ま たは 3.3V を使用す る こ と を推奨 し てい ます。130 ページの「EOS (End of Startup) 時の I/O 遷移」 を参照 し て く だ さ い。 4. こ のモー ド の コ ン フ ィ ギ ュ レーシ ョ ン では、 バン ク 65 は使用 さ れません。 VCCO_65 は、 コ ン フ ィ ギ ュ レーシ ョ ン後 I/O イ ン タ ーフ ェ イ ス の要件に応 じ て設定で き ます。 表 1-12 : Virtex UltraScale および Kintex UltraScale KU095 と 互換性のある電圧、 CFGBVS ピ ンの接続 コ ン フ ィ ギ ュ レーシ ョ ン モー ド 使用するバン ク JTAG (専用の場合)(1) 0 シ リ アル、 ま たは SPI x1/x2/x4 (DOUT ま たは EMCCLK の使用な し ) 互換性のあるバン ク 電圧 コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ー フ ェ イ スの バン ク 0 の電圧 バン ク 65 の電圧 I/O 電圧 VCCO_0 VCCO_65 0 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 必要な CFGBVS ピ ンの 接続 3.3V ≤1.8V(3) VCCO_0 2.5V 2.5V ≤1.8V(3) VCCO_0 1.8V 1.8V ≤1.8V(3) GND 1.5V 1.5V ≤1.8V(3) GND 3.3V ≤1.8V(3) VCCO_0 2.5V 2.5V ≤1.8V(3) VCCO_0 1.8V 1.8V ≤1.8V(3) GND 1.5V 1.5V ≤1.8V(3) GND 3.3V 3.3V japan.xilinx.com 34 第 1 章 : は じ めに 表 1-12 : Virtex UltraScale および Kintex UltraScale KU095 と 互換性のある電圧、 CFGBVS ピ ンの接続 (続き) コ ン フ ィ ギ ュ レーシ ョ ン モー ド SPI x8、 SelectMAP、 ま たは BPI、 あ る いは DOUT を使用す る シ リ アルま たは EMCCLK を 使用す る その他の SPI 使用するバン ク 互換性のあるバン ク 電圧 コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ー フ ェ イ スの バン ク 0 の電圧 バン ク 65 の電圧 I/O 電圧 VCCO_65 VCCO_0 0、 65(2) 必要な CFGBVS ピ ンの 接続 1.8V 1.8V 1.8V GND 1.5V 1.5V 1.5V GND 注記 : 1. コ ン フ ィ ギ ュ レーシ ョ ン モー ド にかかわ ら ず、 JTAG イ ン タ ーフ ェ イ ス はバン ク 0 の VCCO_0 電圧レベルで常にサポー ト さ れます。 2. Virtex UltraScale FPGA お よ び Kintex UltraScale KU095 FPGA のバン ク 65 は HP (High-Performance) バン ク であ る ため、1.8V 以下の I/O 規格 にのみ対応 し てい ます。 CFGBVS はバン ク 65 には影響を与え ません。 3. こ のモー ド の コ ン フ ィ ギ ュ レーシ ョ ン では、 バン ク 65 は使用 さ れません。 VCCO_65 は、 コ ン フ ィ ギ ュ レーシ ョ ン後 I/O イ ン タ ーフ ェ イ ス の要件に応 じ て設定で き ます。 Vivado ツールで コ ン フ ィ ギュ レーシ ョ ン電圧のオプシ ョ ン を設定する 選択 し た コ ン フ ィ ギ ュ レーシ ョ ン電圧は、 CONFIG_VOLTAGE お よ び CFGBVS プ ロ パテ ィ のいずれか ま たは両方を 設定 し て Vivado ツールに通知す る 必要があ り ます。 ま た、 ど の コ ン フ ィ ギ ュ レーシ ョ ン ピ ン を使用す る か を Vivado ツールに認識 さ せ る ために CONFIG_MODE プ ロ パテ ィ も 設定す る 必要があ り ます。 多目的 コ ン フ ィ ギ ュ レーシ ョ ン ピ ンの IOSTANDARD が コ ン フ ィ ギ ュ レーシ ョ ン電圧 と 競合する な ど、コ ン フ ィ ギ ュ レーシ ョ ン ピ ンの設定に競合が 生 じ る と 、 Vivado ツールでエ ラ ー メ ッ セージが表示 さ れ ま す。 こ れ ら のプ ロ パテ ィ は、 Vivado Configuration Dialog ([Edit Device Properties]) で、 ま たは Tcl コ マ ン ド を用いて設定で き ます。 Tcl 構文の詳細は、 『Vivado Design Suite プ ロ パテ ィ リ フ ァ レ ン ス ガ イ ド 』 (UG912) [参照 4] を参照 し て く だ さ い。 Vivado ツールに よ る こ れ ら オプシ ョ ンの使用例 については、 『Vivado Design Suite ユーザー ガ イ ド : I/O お よ び ク ロ ッ ク 配置』 (UG899) [参照 8] を参照 し て く だ さ い。 パワーオ ン リ セ ッ ト 各デー タ シー ト ([参照 6] ま たは [参照 7]) に記載のガ イ ド ラ イ ンに従い、 適切に電源を投入 し て く だ さ い。 UltraScale アーキ テ ク チ ャ FPGA の コ ン フ ィ ギ ュ レーシ ョ ンには、 VCCO_0、 VCCAUX、 VCCBRAM、 VCCINT ピ ンへの電源投入が必 要です。 電源投入シーケ ン ス の要件については、 デー タ シー ト を参照 し て く だ さ い。 電源は、 デー タ シー ト で指定 さ れた立ち上が り 時間内に単調増加で立ち上が る 必要があ り ます。 電源電圧はすべて推奨動作範囲内 と す る 必要があ り ます。VCCINT ま たは VCCAUX がデー タ シー ト に記載 さ れたデー タ 保持電圧を下回る と 、コ ン フ ィ ギ ュ レーシ ョ ン デー タ が失われ る 可能性があ り ます。 電源が投入 さ れてか ら コ ン フ ィ ギ ュ レーシ ョ ンが開始す る ま での間には、 パ ワ ーオ ン リ セ ッ ト (POR) 遅延 と 呼ばれ る 遅延時間が FPGA に よ っ て自動的に確保 さ れ ます。 TPOR 遅延は、 FPGA に必要な電源レールの う ち、 最後の電源 レールの供給電圧が公称値の 95% に達 し てか ら 、 FPGA が INIT_B ピ ン を アサー ト し 、 モー ド ピ ン をサンプ リ ン グす る ま で (マ ス タ ー モー ド を選択 し た場合は CCLK の ト グルを開始する ま で) と 定義 さ れます。 POR_OVERRIDE コ ン フ ィ ギ ュ レーシ ョ ンが開始す る ま でのパ ワーオン遅延の長 さ は、 パ ワーオン リ セ ッ ト オーバー ラ イ ド セ レ ク ト (POR_OVERRIDE) ピ ン を High ま たは Low に し て決定 し ます。 POR_OVERRIDE は、 VCCINT と GND を基準電圧 と す る ロ ジ ッ ク 入力ピ ン です。 電源投入時に POR_OVERRIDE ピ ンが High の場合 (VCCINT 電源レールに接続 し た場合な ど)、 POR 遅延はデー タ シー ト に記載 さ れた値ま で短縮 さ れます。 POR_OVERRIDE ピ ンが Low の場合 (GND に接続 し た場合な ど)、 長い POR 遅延が確保 さ れます。 FPGA の電源投入時点で確実に フ ラ ッ シ ュ の準備が完了 し てい る こ と が明 ら かな場合を除 き 、 POR_OVERRIDE は GND に接続 し て く だ さ い ( 「フ ラ ッ シ ュ の電源投入シーケ ン ス に関す る 注意事項」 参照)。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 35 第 1 章 : は じ めに 重要 : POR_OVERRIDE は、 バン ク 0 の ピ ン と 同 じ VCCO_0 には接続せず、 必ず VCCINT ま たは GND に接続 し て く だ さ い。 POR_OVERRIDE を フ ロ ーテ ィ ン グの ま ま に し ないで く だ さ い。 デバ イ ス は必ず、 VCCINT が電源投入の し き い値に達 し てか ら POR_OVERRIDE の値を判定 し ます。 し たがっ て、 誤っ て High と 判定 さ れ る こ と はあ り ません。 VCCINT を最初に立ち上げ る こ と を推奨 し てい ます。 フ ラ ッ シ ュの電源投入シーケ ン スに関する注意事項 電源を投入す る と 、 FPGA で コ ン フ ィ ギ ュ レ ーシ ョ ン が自動的に開始 し ま す。 FPGA がマ ス タ ー コ ン フ ィ ギ ュ レ ー シ ョ ン モー ド の場合、 FPGA が コ マ ン ド / ク ロ ッ ク を送信開始する 前に コ ン フ ィ ギ ュ レーシ ョ ン フ ラ ッ シ ュ が起動 し て受信準備が完了 し てい る 必要があ り ます。 FPGA と フ ラ ッ シ ュ には異な る 電源レールか ら 電源を供給で き 、 同 じ 電 源を使用 し た場合で も 異な る 立ち上が り 地点で応答す る こ と があ る ため、 FPGA と フ ラ ッ シ ュ の電源投入シーケ ン ス と 電源の立ち上が り には注意が必要です。 電源投入シーケ ン スや電源の立ち上が り に よ っ ては、 FPGA が フ ラ ッ シ ュ の前に、 あ る いは フ ラ ッ シ ュ が FPGA の前に立ち上が る こ と があ り ます。 ま た、 一部の フ ラ ッ シ ュ デバ イ ス では電 源投入か ら デバ イ ス が選択可能にな る ま での最小時間 (通常は数 ミ リ 秒) が指定 さ れてい る こ と があ り 、こ の間はデバ イ ス を選択 し ない よ う にす る 必要があ り ます。 電源の立ち上が り がほぼ同時の多 く のシ ス テ ムでは、 FPGA のデフ ォ ル ト のパ ワ ーオン リ セ ッ ト 時間 (TPOR) を使用する こ と に よ り 、 フ ラ ッ シ ュ の準備が完了す る ま で FPGA の コ ン フ ィ ギ ュ レーシ ョ ンの開始を十分に遅 ら せ る こ と がで き ます。 重要 : バ ス 幅 8、 16、 32 の コ ン フ ィ ギ ュ レ ーシ ョ ン モー ド では、 FPGA の電源投入シーケ ン ス に組み込 ま れてい る VCCO_0 以外に VCCO_65 も 使用 し ます。 正 し く コ ン フ ィ ギ ュ レーシ ョ ンす る には、 VCCO_0 と 同 じ か、 それ よ り も 前に VCCO_65 が供給 さ れ る 必要があ り ます。 一般にシ ス テ ム を設計す る 際は、 電源投入シーケ ン ス、 電源の立ち上が り 、 FPGA パ ワ ーオ ン リ セ ッ ト の タ イ ミ ン グ、 お よ びフ ラ ッ シ ュ の電源投入の タ イ ミ ン グが、 FPGA コ ン フ ィ ギ ュ レーシ ョ ンの開始 と フ ラ ッ シ ュ の準備完了の タ イ ミ ン グの関係に ど の よ う に影響す る か を考慮す る 必要があ り ます。 FPGA の電源に関す る 要件 と タ イ ミ ン グにつ いては、 ザ イ リ ン ク ス のデー タ シー ト で確認 し て く だ さ い。 フ ラ ッ シ ュ の電源投入 タ イ ミ ン グの要件については各フ ラ ッ シ ュ のデー タ シー ト を参照 し て く だ さ い。 FPGA が コ ン フ ィ ギ ュ レーシ ョ ン を開始する 前にフ ラ ッ シ ュ を確実に コ マ ン ド 受信可能な状態にする には、 次のいず れかの手法でシ ス テ ム を設計す る よ う に し ます。 • FPGA コ ン フ ィ ギ ュ レーシ ョ ンが開始する 前にフ ラ ッ シ ュ に電源が投入 さ れて動作可能な状態にな る よ う 、 電源 投入シーケ ン ス を制御す る • POR_OVERRIDE を GND に接続 し て TPOR 遅延を長 く す る • 電源投入時か ら FPGA の INIT_B ピ ン を Low に保持 し て FPGA コ ン フ ィ ギ ュ レーシ ョ ンの開始を遅 ら せ、フ ラ ッ シ ュ が動作可能な状態にな っ た後に INIT_B ピ ン を High にす る 外部マ ス タ ー コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク (EMCCLK) オプ シ ョ ン マ ス タ ー コ ン フ ィ ギ ュ レーシ ョ ン モー ド では、 デフ ォ ル ト で内部生成 さ れた コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク ソ ー ス CCLK を使用 し ます。 こ の ク ロ ッ ク オプシ ョ ン を使用す る と 、 外部 ク ロ ッ ク ジ ェ ネ レー タ ー ソ ース が不要 と な る ため便利です。 ただ し 、 コ ン フ ィ ギ ュ レーシ ョ ン時間の短縮が要求 さ れ る アプ リ ケーシ ョ ン では外部マ ス タ ー コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク (EMCCLK) を使用 し て く だ さ い。 FPGA の内部 ク ロ ッ ク にはマ ス タ ー CCLK 周波数偏 差 (FMCCKTOL) があ る ため、 EMCCLK ク ロ ッ ク の方が よ り 高精度な外部 ク ロ ッ ク ソ ース を利用で き ます。 た と えば、 マ ス タ ー CCLK の最大周波数が 150MHz の場合、 35% の偏差は ConfigRate で 111MHz を超え る 値に設定で き ない こ と を 意味 し ま す。 し か し な が ら 、 外部 ク ロ ッ ク ソ ー ス は仕様の範囲内で あ る 限 り 最大の周波数 を 適用で き ま す。 UltraScale FPGA には、 マ ス タ ー モー ド 時に外部 ク ロ ッ ク ソ ース (EMCCLK) に動的に切 り 替え る 機能があ り ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 36 第 1 章 : は じ めに 外部 ク ロ ッ ク ソ ース を有効にす る 方法は、 次の と お り です。 1. ビ ッ ト ス ト リ ーム生成オプシ ョ ンで ExtMasterCclk_en を有効にする 。 2. CONFIG_VOLTAGE プ ロ パテ ィ で EMCCLK の目標電圧を指定する 。 3. EMCCLK をオン ボー ド のオシ レー タ ーま たはその他の ク ロ ッ ク ソ ース に接続する 。 EMCCLK 入力は、 専用の リ ソ ース を使用 し て コ ン フ ィ ギ ュ レーシ ョ ン ロ ジ ッ ク よ り も 前で 2、 4、 8 分周す る こ と も 、 その ま ま の レー ト で使用す る (1 分周) こ と も で き ます。 ExMasterCclk_en オプシ ョ ンは、 次に示す よ う に Vivado ツー ルで BITSTREAM.CONFIG.EXTMASTERCCLK_EN プ ロ パテ ィ を使用 し て設定 し ます ( 『Vivado Design Suite ユーザー ガ イ ド : プ ロ グ ラ ムお よ びデバ ッ グ』 (UG908) [参照 5] 参照)。 set_property BITSTREAM.CONFIG.EXTMASTERCCLK_EN Disable|div-8|div-4| div-2|div-1 デフ ォ ル ト は無効で、 内部 CCLK を使用 し ます。 EMCCLK 入力を オン ボー ド のオシ レー タ ーま たはその他の ク ロ ッ ク ソ ース に接続 し ます。 コ ン フ ィ ギ ュ レーシ ョ ン エ ラ ーの原因 と な る シ グナル イ ン テ グ リ テ ィ 問題を回避す る ため、 ク ロ ッ ク が非常に高速な場合は特にシ グナル イ ン テ グ リ テ ィ に配慮 し て設計 し て く だ さ い。 EMCCLK はシ ン グルエン ド の ク ロ ッ ク 入力です。 コ ン フ ィ ギ ュ レーシ ョ ンは、 ビ ッ ト ス ト リ ーム ヘ ッ ダーが読み出 さ れ る ま で FPGA の内部オシ レー タ ーで生成 さ れ た CCLK で開始 し ま す。 EMCCLK オプシ ョ ン が有効で あれば、 FPGA は内部オシ レ ー タ ーか ら EMCCLK ピ ン の ク ロ ッ ク に切 り 替え ます。 VBATT VBATT は、 7 シ リ ーズ FPGA の VCCBATT 同様、 AES 復号化キーを格納す る メ モ リ にバ ッ ク ア ッ プ電源を供給す る 専用 ピ ンです。 ビ ッ ト ス ト リ ーム暗号化を使用 し 、 キーをバ ッ ク ア ッ プ バ ッ テ リ 付 き の RAM に格納 し てお り 、 キーの格 納先に VCCAUX に よ る バ ッ ク ア ッ プ電源が必要な場合のみ VBATT が必要です。 暗号化を使用 し ない場合や、 暗号化 キーを eFUSE に格納す る 場合は、 VBATT を VCCAUX ま たは GND に接続 し て く だ さ い。 暗号化を用い る ア プ リ ケー シ ョ ン で VBATT を使用す る 方法の詳細は、 第 8 章 「ビ ッ ト ス ト リ ーム のセ キ ュ リ テ ィ 、 eFUSE、 Device DNA」 を参 照 し て く だ さ い。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 37 第 2章 マス タ ー SPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド は じ めに UltraScale™ アーキテ ク チ ャ FPGA のマ ス タ ー SPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド では、 ビ ッ ト ス ト リ ームの格納先 に少ピ ン数の業界標準シ リ アル NOR フ ラ ッ シ ュ デバ イ ス を使用で き ま す。 こ れ ら FPGA は、 事実上の業界標準 と な っ てい る 4 ピ ン SPI イ ン タ ーフ ェ イ ス のシ リ アル NOR フ ラ ッ シ ュ デバ イ ス に直接接続 し て、 格納 さ れてい る ビ ッ ト ス ト リ ーム を読み出す こ と がで き ます。 マス タ ー SPI イ ン タ ー フ ェ イ ス マ ス タ ー SPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド では、 1 ビ ッ ト シ リ アル NOR フ ラ ッ シ ュ か ら 読み出 し を実行 し ます。 ま た、 オプシ ョ ン と し て x2 お よ び x4 の Fast Output Read をサポー ト し た フ ラ ッ シ ュ デバ イ ス か ら の読み出 し も 可能 です。 さ ら に、 ザ イ リ ン ク ス UltraScale FPGA では同 じ 型番の フ ラ ッ シ ュ メ モ リ を 2 つ接続 し 、 両デバ イ ス にビ ッ ト ス ト リ ーム を分割 し て格納す る x8 マ ス タ ー SPI コ ン フ ィ ギ ュ レ ーシ ョ ン モー ド も サポー ト し てい ま す。 こ れ ら の モー ド は、 標準の 1 ビ ッ ト SPI イ ン タ ーフ ェ イ ス よ り も それぞれ 2、 4、 8 倍高速で、 ビ ッ ト ス ト リ ーム オプシ ョ ン BITSTREAM.CONFIG.SPI_BUSWIDTH を使用 し て選択 し ま す。 さ ら に、 ク ロ ッ ク 周期全体の利用効率を高めて コ ン フ ィ ギ ュ レーシ ョ ン時間を短縮で き る 立ち下が り エ ッ ジ を使用す る ク ロ ッ キ ン グ オプシ ョ ン(BITSTREAM.CONFIG. SPI_FALL_EDGE) も 用意 さ れてい ます。図 2-1 に、マ ス ター SPI コ ン フ ィ ギ ュ レーシ ョ ン イ ン ターフ ェ イ ス を示 し ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 38 第 2 章 : マス タ ー SPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド X-Ref Target - Figure 2-1 M[2:0] D00_MOSI D01_DIN D02 DOUT FCS_B FCS2_B D03 D04 D05 D06 D07 INIT_B DONE PROGRAM_B PUDC_B EMCCLK CCLK ug570_c2_01_073014 図 2-1 : SPI コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ー フ ェ イ ス 図 2-2 に、 デー タ 幅 x1 お よ び x2 の場合の SPI コ ン フ ィ ギ ュ レーシ ョ ンの接続を示 し ます。 x2 モー ド では多目的ピ ン の D[00] をデー タ I/O ピ ン と し て使用す る ため、 x1 モー ド の場合 と 接続は同様です。 デ イ ジー チ ェ ーン接続の コ ン フ ィ ギ ュ レーシ ョ ンは、 SPI x1 モー ド でのみ利用で き ます。 マ ス タ ー SPI モー ド でシ リ アル NOR フ ラ ッ シ ュ と の接 続に使用す る FPGA ピ ン を 21 ページの表 1-7 に示 し ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 39 第 2 章 : マス タ ー SPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド X-Ref Target - Figure 2-2 VCCINT Tie to VCCINT or GND; see Power On Reset section Optional Oscillator VCCINT VBATT VCCAUX POR_OVERRIDE Bank 0 Tie to VCCO_0 or GND PUDC_B VCCO_0 VCC D D01_DIN Q M2 FCS_B S M1 CCLK C UltraScale FPGA VCCO_0 VCCO_0 VCCO_0 4.7 kΩ 4.7 kΩ 4.7 kΩ VCC D00_MOSI SPI Flash W HOLD GND PROGRAM_B INIT_B VCCO_0 DONE VREF TMS Xilinx Cable Header (JTAG Interface) VCCO_0 M0 PROGRAM_B 1 VCCO_0 VCCO_65 DOUT EMCCLK CFGBVS VCCO_0 VCCO_65 Bank 65 Tie to VCCO_0 or GND; see Configuration Banks Voltage Select section VCCO_0 VCCAUX 2.4 kΩ Tie to battery supply when needed, otherwise tie to VCCAUX or GND; see VBATT section TMS TCK TCK TDO TDI TDO TDI N.C. GND N.C. 14 Refer to the Notes following this figure for related information. ug570_c2_02_031915 図 2-2 : SPI x1/x2 コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ー フ ェ イ スの例 図 2-2 について説明 し ます。 1. DONE ピ ンは、 デフ ォ ル ト ではオープン ド レ イ ン出力です。 DONE 信号の詳細は、 24 ページの表 1-9 を参照 し て く だ さ い。 2. INIT_B ピ ンは双方向オープン ド レ イ ン ピ ンで、外部プルア ッ プ抵抗が必要です。INIT_B 信号の詳細は、24 ペー ジの表 1-9 を参照 し て く だ さ い。 3. CCLK のシ グナル イ ン テ グ リ テ ィ が重要です。 4. デ イ ジー チ ェ ーン接続の SPI x1 コ ン フ ィ ギ ュ レーシ ョ ン モー ド では、DOUT を下位 FPGA の DIN に接続 し て く だ さ い。 x2、 x4、 x8 マ ス タ ー SPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド ではデ イ ジー チ ェーン接続はサポー ト さ れて い ません。 5. フ ラ ッ シ ュ か ら FPGA へのデー タ パ ス には、オーバーシ ュ ー ト を最小限に抑え る ために直列抵抗の使用を検討 し て く だ さ い。 適切な抵抗値はシ ミ ュ レーシ ョ ンで求め る こ と がで き ます。 6. FPGA の VCCO_0 電源電圧はフ ラ ッ シ ュ デバ イ ス の I/O の VCC と 合わせ る 必要があ り ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 40 第 2 章 : マス タ ー SPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド 7. フ ラ ッ シ ュ のデー タ は CCLK の立ち下が り エ ッ ジで出力 さ れ、 立ち上が り エ ッ ジで FPGA に入力 さ れます (Vivado ツールの [Edit Device Properties] ダ イ ア ロ グ ボ ッ ク ス で立ち下が り エ ッ ジでの ク ロ ッ キ ン グ を有効に し た 場合を除 く )。 8. ク ロ ッ ク ソ ース が内部オシ レー タ ーの場合、 CCLK の周波数は Vivado の [Configuration Rate] ビ ッ ト ス ト リ ーム 設定 (BITSTREAM.CONFIG.CONFIGRATE) を使用 し て調整で き ます。ま たは、[Enable External Configuration Clock] オ プ シ ョ ン (BITSTREAM.CONFIG.EXTMASTERCCLK_EN) で CCLK か ら EMCCLK ピ ン に よ る 外部 ク ロ ッ ク ソ ースへ切 り 替え る こ と がで き ます。 詳細は、 57 ページの 「EMCCLK オプシ ョ ン」 お よ び 64 ページの 「フ ァ イ ル生成」 を参照 し て く だ さ い。 9. FPGA の PUDC_B ピ ン を GND に接続す る と 電源投入後 と コ ン フ ィ ギ ュ レーシ ョ ン中に SelectIO ピ ンの内部プル ア ッ プが有効にな り 、 VCCO_0 に接続す る と SelectIO ピ ンが ト ラ イ ス テー ト 状態にな り ます。 PUDC_B 信号の詳 細は、 24 ページの表 1-9 を参照 し て く だ さ い。 Vivado ツールでは、 Tcl コ マ ン ド ラ イ ン プ ロ パテ ィ で コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ーム のオプシ ョ ン を制 御で き る ほか、 ダ イ ア ロ グ ボ ッ ク ス で も 設定で き ま す。 デザ イ ン を読み込んだ ら 、 [Tools] → [Edit Device Properties] を ク リ ッ ク し て、[Edit Device Properties] ダ イ ア ロ グ ボ ッ ク ス でプ ロ グ ラ ミ ン グお よ び コ ン フ ィ ギ ュ レーシ ョ ンのプ ロ パテ ィ を編集 し ます。詳細は、『Vivado Design Suite ユーザー ガ イ ド : プ ロ グ ラ ムお よ びデバ ッ グ』 (UG908) [参照 5] を 参照 し て く だ さ い。 Vivado ツールには、 間接プ ロ グ ラ ム を使用 し てシ リ アル フ ラ ッ シ ュ をプ ロ グ ラ ムす る 機能があ り ます。 こ れに よ り 、 Vivado ツール と フ ラ ッ シ ュ を FPGA 経由で接続する 新 し い FPGA デザ イ ンがダ ウ ン ロ ー ド さ れます。こ の操作を実行 す る と 、 それ以前の FPGA メ モ リ の内容は失われ ます。 各種プ ロ グ ラ ム ツールでサポー ト さ れてい る 集積度につい ては、 間接プ ロ グ ラ ム ツールのヘルプ を参照 し て く だ さ い。 SPI x1、 x2、 お よ び x4 動作に関す る その他の詳細 (プ ロ グ ラ ム手順な ど) は、 『UltraScale FPGA での SPI コ ン フ ィ ギ ュ レ ーシ ョ ンお よ びフ ラ ッ シ ュ プ ロ グ ラ ミ ン グ』 (XAPP1233) [参照 9] を参照 し て く だ さ い。 図 2-3 に、 SPI x1 モー ド シーケ ン ス を示 し ます。 X-Ref Target - Figure 2-3 FCS_B 0 1 2 7 12 30 29 31 39 47 CCLK OPCODE 03H Address Bits A23-A0 MOSI DIN Data Byte 1 Data Byte 2 Data Byte 3 UG570_c2_03_103113 図 2-3 : UltraScale FPGA SPI x1 モー ド シーケ ン ス 図 2-3 について説明 し ます。 1. 波形は相対的な イ ベン ト シーケ ン ス を示 し 、 正確な縮尺ではあ り ません。 SPI コ マ ン ド お よ びデー タ タ イ ミ ン グ の詳細は、 フ ラ ッ シ ュ メ モ リ のデー タ シー ト を参照 し て く だ さ い。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 41 第 2 章 : マス タ ー SPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド マ ス タ ー SPI 読み出 し コ マ ン ド マ ス タ ー SPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド では、 表 2-1 に示 し た読み出 し コ マ ン ド がサポー ト さ れます。 マ ス タ ー SPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド を開始する には、 まず FPGA が Fast Read オペ コ ー ド (0Bh) と 24 ビ ッ ト のア ド レ ス 0 を フ ラ ッ シ ュ に送信 し ます。プ ラ イ マ リ フ ラ ッ シ ュ のア ド レ ス 0 にはビ ッ ト ス ト リ ームの先頭部分が格納 さ れて お り 、 こ の中に含まれ る FPGA コ マ ン ド に よ っ て、 コ ン フ ィ ギ ュ レーシ ョ ン ロ ジ ッ ク は表 2-1 に示 し た SPI コ マ ン ド のいずれか を発行 し ます。 SPI コ マ ン ド が x1、 x2、 x4 コ ン フ ィ ギ ュ レーシ ョ ンの場合、 FPGA は新 し い読み出 し コ マ ン ド と し て Fast Read (0Bh)、 Dual Output Fast Read (3Bh)、 Quad Output Fast Read (6Bh)、 ま たはそれぞれの 32 ビ ッ ト ア ド レ ス用 コ マ ン ド (0Ch、3Ch、6Ch) をプ ラ イ マ リ フ ラ ッ シ ュ に発行 し ます。 マ ス タ ー SPI x コ ン フ ィ ギ ュ レーシ ョ ン シーケ ン ス を開始す る 場合は、 Quad Output Fast Read (6Bh) ま たは 32 ビ ッ ト ア ド レ ス 用の Quad Output Fast Read (6Ch) コ マ ン ド がプ ラ イ マ リ フ ラ ッ シ ュ と セカ ン ダ リ フ ラ ッ シ ュ の両方に同時に発行 さ れます。ビ ッ ト ス ト リ ーム で 新 し い幅お よ び 32 ビ ッ ト ア ド レ ス用 コ マ ン ド を有効にす る には、 Vivado Configuration Dialog プ ロ グ ラ ム ツールを使 用 し ます。 表 2-1 : SPI 命令 と 必要なオペ コ ー ド SPI 命令 オペ コ ー ド Fast Read x1 0B Dual Output Fast Read 3B Quad Output Fast Read 6B Fast Read (32 ビ ッ ト ア ド レ ス) 0C Dual Output Fast Read (32 ビ ッ ト ア ド レ ス) 3C Quad Output Fast Read (32 ビ ッ ト ア ド レ ス) 6C UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 42 第 2 章 : マス タ ー SPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド マス タ ー SPI ク ワ ッ ド (x4) ザ イ リ ン ク ス UltraScale FPGA は、 x4 幅の ク ワ ッ ド SPI マ ス タ ー コ ン フ ィ ギ ュ レーシ ョ ン をサポー ト し てい ます (図 2-4 参照)。 X-Ref Target - Figure 2-4 VCCINT POR_OVERRIDE Bank 65 VCCO_65 VCCO_0 VCCO_0 VCCO_65 Tie to VCCO_0 or GND; see Configuration Banks Voltage Select section CFGBVS Tie to VCCO_0 or GND PUDC_B Bank 0 VCCO_0 4.7 kΩ PROGRAM_B D01_DIN DQ1 M1 FCS_B M0 D02 D03 PROGRAM_B S# DQ3 C 4.7 kΩ VREF Xilinx Cable Header (JTAG Interface) TMS TCK SPI Flash DQ2 CCLK UltraScale FPGA VREF VCC DQ0 VCCO_0 1 VCC D00_MOSI M2 VCCO_0 VCCO_0 VCCO_0 VCCO_0 4.7 kΩ EMCCLK 4.7 kΩ Optional VCCAUX VCCO_0 GND 4.7 kΩ Tie to VCCINT or GND; see Power On Reset section VCCINT VCCAUX VBATT 2.4 kΩ Tie to battery supply when needed, otherwise tie to VCCAUX or GND; see VBATT section INIT_B TMS TCK DONE TDO TDI N.C. TDO TDI GND N.C. 14 Refer to the Notes following this figure for related information. UG570_c2_04_061515 図 2-4 : マス タ ー SPI ク ワ ッ ド (x4) コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ー フ ェ イ スの例 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 43 第 2 章 : マス タ ー SPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド 図 2-4 について説明 し ます。 1. DONE ピ ンは、 デフ ォ ル ト ではオープン ド レ イ ン出力です。 DONE 信号の詳細は、 24 ページの表 1-9 を参照 し て く だ さ い。 2. INIT_B ピ ンは双方向オープン ド レ イ ン ピ ンで、 外部プルア ッ プ抵抗が必要です。 3. CCLK のシ グナル イ ン テ グ リ テ ィ が重要です。 4. x2、 x4、 x8 マ ス タ ー SPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド ではデ イ ジー チ ェーン接続はサポー ト さ れてい ません。 5. フ ラ ッ シ ュ か ら FPGA へのデー タ パ ス には、オーバーシ ュ ー ト を最小限に抑え る ために直列抵抗の使用を検討 し て く だ さ い。 適切な抵抗値はシ ミ ュ レーシ ョ ンで求め る こ と がで き ます。 6. FPGA の VCCO_0 電源電圧はフ ラ ッ シ ュ デバ イ ス の I/O の VCC と 合わせ る 必要があ り ます。 7. フ ラ ッ シ ュ のデー タ は CCLK の立ち下が り エ ッ ジで出力 さ れ、 立ち上が り エ ッ ジで FPGA に入力 さ れます (Vivado の [Configuration] ダ イ ア ロ グ ボ ッ ク ス で立ち下が り エ ッ ジでの ク ロ ッ キ ン グ を有効に し た場合を除 く )。 8. ク ロ ッ ク ソ ース が内部オシ レー タ ーの場合、 CCLK の周波数は Vivado の [Configuration Rate] ビ ッ ト ス ト リ ーム 設定 (BITSTREAM.CONFIG.CONFIGRATE) を使用 し て調整で き ます。ま たは、[Enable External Configuration Clock] オ プ シ ョ ン (BITSTREAM.CONFIG.EXTMASTERCCLK_EN) で CCLK か ら EMCCLK ピ ン に よ る 外部 ク ロ ッ ク ソ ースへ切 り 替え る こ と がで き ます。 詳細は、 57 ページの 「EMCCLK オプシ ョ ン」 お よ び 64 ページの 「フ ァ イ ル生成」 を参照 し て く だ さ い。 9. FPGA の PUDC_B ピ ン を GND に接続す る と 電源投入後 と コ ン フ ィ ギ ュ レーシ ョ ン中に SelectIO ピ ンの内部プル ア ッ プが有効にな り 、 VCCO_0 に接続す る と SelectIO ピ ンが ト ラ イ ス テー ト 状態にな り ます。 PUDC_B 信号の詳 細は、 24 ページの表 1-9 を参照 し て く だ さ い。 マス タ ー SPI デ ュ アル ク ワ ッ ド (x8) ザ イ リ ン ク ス UltraScale FPGA は、同 じ 型番の x4 SPI フ ラ ッ シ ュ デバ イ ス を 2 つ並列に接続する x8 幅の マ ス タ ー SPI コ ン フ ィ ギ ュ レーシ ョ ン も 新たにサポー ト し てい ます (図 2-5 参照)。 x8 モー ド を使用す る 場合は、 ク ロ ッ ク (CCLK) は両方の フ ラ ッ シ ュ デバ イ ス に共通で、 セ レ ク ト お よ びデー タ ピ ンは別々ですが、 こ れ ら の ピ ン を同 じ よ う に駆動 し ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 44 第 2 章 : マス タ ー SPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド X-Ref Target - Figure 2-5 VCCINT VCCO_0 VCCO_0 VCCO_0 EMCCLK VCCO_65 DQ0 D05 DQ1 S# D06 D07 DQ2 C Bank 0 GND CFGBVS VCCO_0 VCCO_0 4.7 kΩ VCCO_0 DQ0 D01_DIN DQ1 TDI C VCCO_0 4.7 kΩ Xilinx Cable Header (JTAG Interface) TDO DQ3 CCLK VREF TCK DQ2 TMS SPI Flash (Primary) VCCO_0 GND 4.7 kΩ PROGRAM_B TMS S# FCS_B M0 VREF 1 VCC D00_MOSI D02 D03 PROGRAM_B VCC 4.7 kΩ M2 VCCO_0 VCCO_0 VCCO_0 PUDC_B M1 VCCO_0 2.4 kΩ Tie to VCCO_0 or GND SPI Flash (Secondary) DQ3 4.7 kΩ Tie to VCCO_0 or GND; see Configuration Banks Voltage Select section VCC D04 FCS2_B UltraScale FPGA VCC 4.7 kΩ Bank 65 Optional VCCO_0 POR_OVERRIDE 4.7 kΩ Tie to VCCINT or GND; see Power On Reset section VCCAUX VCCINT VCCAUX VBATT 2.4 kΩ Tie to battery supply when needed, otherwise tie to VCCAUX or GND; see VBATT section INIT_B TCK TDO DONE TDI N.C. N.C. GND 14 Refer to the Notes following this figure for related information. UG570_c2_05_061515 図 2-5 : マス タ ー SPI ク ワ ッ ド (x8) コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ー フ ェ イ スの例 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 45 第 2 章 : マス タ ー SPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド 図 2-5 について説明 し ます。 1. DONE ピ ンは、 デフ ォ ル ト ではオープン ド レ イ ン出力です。 DONE 信号の詳細は、 24 ページの表 1-9 を参照 し て く だ さ い。 2. INIT_B ピ ンは双方向オープン ド レ イ ン ピ ンで、 外部プルア ッ プ抵抗が必要です。 3. CCLK のシ グナル イ ン テ グ リ テ ィ が重要です。 4. x2、 x4、 x8 マ ス タ ー SPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド ではデ イ ジー チ ェーン接続はサポー ト さ れてい ません。 5. フ ラ ッ シ ュ か ら FPGA へのデー タ パ ス には、オーバーシ ュ ー ト を最小限に抑え る ために直列抵抗の使用を検討 し て く だ さ い。 適切な抵抗値はシ ミ ュ レーシ ョ ンで求め る こ と がで き ます。 6. FPGA の VCCO_0 電源電圧はフ ラ ッ シ ュ デバ イ ス の I/O の VCC と 合わせ る 必要があ り ます。 7. フ ラ ッ シ ュ のデー タ は CCLK の立ち下が り エ ッ ジで出力 さ れ、 立ち上が り エ ッ ジで FPGA に入力 さ れます (Vivado の [Configuration] ダ イ ア ロ グ ボ ッ ク ス で立ち下が り エ ッ ジでの ク ロ ッ キ ン グ を有効に し た場合を除 く )。 8. ク ロ ッ ク ソ ース が内部オシ レー タ ーの場合、 CCLK の周波数は [Configuration Rate] オプシ ョ ン を使用 し て調整で き ます。 ま たは、 [Enable External Configuration Clock] オプシ ョ ンで CCLK か ら EMCCLK ピ ンに よ る 外部 ク ロ ッ ク ソ ースへ切 り 替え る こ と がで き ます。 9. FPGA の PUDC_B ピ ン を GND に接続す る と 電源投入後 と コ ン フ ィ ギ ュ レーシ ョ ン中に SelectIO ピ ンの内部プル ア ッ プが有効にな り 、 VCCO_0 に接続す る と SelectIO ピ ンが ト ラ イ ス テー ト 状態にな り ます。 PUDC_B 信号の詳 細は、 24 ページの表 1-9 を参照 し て く だ さ い。 x8 SPI モー ド 用のビ ッ ト ス ト リ ーム を生成する には、CONFIG_MODE プ ロ パテ ィ を SPIx8 に指定 し て ビ ッ ト ス ト リ ー ム を生成す る 必要があ り ます。 x8 SPI コ ン フ ィ ギ ュ レーシ ョ ンの場合、 プ ラ イ マ リ フ ラ ッ シ ュ には先頭部分 (ビ ッ ト ス ト リ ーム ヘ ッ ダー ) を格納 し 、 コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ームの中に x8 SPI コ ン フ ィ ギ ュ レーシ ョ ン コ マ ン ド を含めてお く 必要があ り ます。 こ の コ マ ン ド を読み出す と 、 FPGA は Quad Output Fast Read (6Bh) ま たは 32 ビ ッ ト ア ド レ ス の Quad Output Fast Read (6Ch) のいずれか を プ ラ イ マ リ フ ラ ッ シ ュ と セ カ ン ダ リ フ ラ ッ シ ュ の両方 に同時に発行 し ます。セカ ン ダ リ フ ラ ッ シ ュ には、プ ラ イ マ リ フ ラ ッ シ ュ に格納 し て あ る ビ ッ ト ス ト リ ーム ヘ ッ ダー と 同 じ サ イ ズのダ ミ ー デー タ を格納 し てお き ます。 プ ラ イ マ リ フ ラ ッ シ ュ 内のビ ッ ト ス ト リ ーム ヘ ッ ダー、 お よ び セカ ン ダ リ フ ラ ッ シ ュ 内のダ ミ ー デー タ が終了す る と 、 直後のア ド レ ス に コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ー ムの最初の 4 ビ ッ ト を プ ラ イ マ リ フ ラ ッ シ ュ に格納 し 、 次の 4 ビ ッ ト を セカ ン ダ リ フ ラ ッ シ ュ に格納 し ます。 こ の よ う に、各バ イ ト の下位ニブルをプ ラ イ マ リ フ ラ ッ シ ュ 、上位ニブルを セカ ン ダ リ フ ラ ッ シ ュ に格納す る こ と で、 コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ーム全体を二分割 し ます。 x8 SPI マ ス タ ー コ ン フ ィ ギ ュ レーシ ョ ン モー ド では、 同 じ 型番の フ ラ ッ シ ュ デバ イ ス を同 じ 構成で使用す る 必要が あ り ます。 た と えば、 一部の フ ラ ッ シ ュ デバ イ ス では、 非揮発性 コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト で レ イ テ ン シ あ る いはダ ミ ー サ イ ク ルがプ ロ グ ラ ム可能で、 読み出 し コ マ ン ド で高い ク ロ ッ ク レー ト が必要な場合には こ の設定が必 要 と な る こ と があ り ます。 ビ ッ ト ア ラ イ メ ン ト を維持す る には、 プ ラ イ マ リ フ ラ ッ シ ュ と セカ ン ダ リ フ ラ ッ シ ュ で レ イ テ ン シ サ イ ク ルが同 じ 必要があ り ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 46 第 2 章 : マス タ ー SPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド 128Mb を越える シ リ アル NOR フ ラ ッ シ ュのサポー ト 128Mb 以上のシ リ アル NOR フ ラ ッ シ ュ は、 256Mb ま での フ ラ ッ シ ュ で標準 と さ れていた 24 ビ ッ ト ア ド レ ス ではア ド レ ス指定で き ません。 フ ラ ッ シ ュ ベン ダー各社は、 24 ビ ッ ト 読み出 し コ マ ン ド を 32 ビ ッ ト 読み出 し コ マ ン ド と し て動作 さ せ る こ と で 32 ビ ッ ト ア ド レ ス指定をサポー ト する さ ま ざ ま な方法を使用 し てい ます。た と えば、フ ラ ッ シ ュ の特定の非揮発性ビ ッ ト を セ ッ ト し た場合、 0Bh コ マ ン ド 直後の 4 バ イ ト を ア ド レ ス バ イ ト と 解釈す る と い っ た方 法があ り ます。 UltraScale FPGA の コ ン フ ィ ギ ュ レーシ ョ ンに使用す る フ ラ ッ シ ュ デバ イ ス では、 こ れ ら の方法を有 効に し ないで く だ さ い。 UltraScale FPGA の コ ン フ ィ ギ ュ レーシ ョ ンで使用す る フ ラ ッ シ ュ は、 コ マ ン ド 0Bh、 3Bh、 6Bh では 24 ビ ッ ト ア ド レ ス モー ド で起動 し 、 コ マ ン ド 0Ch、 3Ch、 6Ch では 32 ビ ッ ト ア ド レ ス モー ド で起動する 必要があ り ます。 32 ビ ッ ト ア ド レ ス モー ド は、 Vivado ツールの [Edit Device Properties] ダ イ ア ロ グ ボ ッ ク ス で有効に し ます。 128Mb を超え る 集積度の フ ラ ッ シ ュ 用に ビ ッ ト ス ト リ ーム を 生成す る には、 BITSTREAM.CONFIG.SPI_32BIT_ADDR プ ロ パテ ィ を Yes に設定す る 必要があ り ます。 詳細は、 『Vivado Design Suite ユーザー ガ イ ド : プ ロ グ ラ ムお よ びデバ ッ グ』 (UG908) [参照 5] を参照 し て く だ さ い。 UltraScale FPGA と イ ン タ ーフ ェ イ スする には、 フ ラ ッ シ ュ デバ イ ス は表 2-1 (SPI 命令 と 必要なオペ コ ー ド ) に示 し た命令をサポー ト し ていなければな り ません。 マルチダ イ シ リ アル NOR フ ラ ッ シ ュ デバイ ス 一部のシ リ アル NOR フ ラ ッ シ ュ デバ イ ス は、 同 じ パ ッ ケージ内でダ イ を ス タ ッ ク す る こ と に よ っ て集積度を向上 し てい ます。 こ れ ら のデバ イ ス を UltraScale アーキ テ ク チ ャ FPGA で使用す る 場合、 通常の イ ン タ ーフ ェ イ ス で FPGA か ら 透過的に読み出 し を実行で き る 必要があ り ます。 UltraScale アーキ テ ク チ ャ FPGA は、 セ レ ク ト ピ ンが複数あ る フ ラ ッ シ ュ デバ イ ス をサポー ト し てい ません。 ま た、 UltraScale FPGA は 1 回の SPI 読み出 し コ マ ン ド で ビ ッ ト ス ト リ ーム全体を読み出 し ま す。 ダ イ 境界を越え る 読み出 し を 1 回の読み出 し コ マ ン ド でシーム レ ス に実行で き ない フ ラ ッ シ ュ デバ イ ス の場合、 コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ーム を ダ イ 境界を越え て格納す る こ と はで き ませ ん。 SPI コ ン フ ィ ギ ュ レーシ ョ ンの タ イ ミ ング シ リ アル NOR フ ラ ッ シ ュ デバ イ ス はデフ ォ ル ト で ク ロ ッ ク の立ち下が り エ ッ ジでデー タ を出力 し 、 立ち上が り エ ッ ジで UltraScale FPGA にデー タ が入力 さ れます。 こ の場合、 ク ロ ッ ク サ イ ク ルの半分が無駄にな り 、 コ ン フ ィ ギ ュ レー シ ョ ン ソ リ ュ ーシ ョ ンの最大 ク ロ ッ ク 速度が制約を受け る こ と にな り ます (図 2-6 参照)。 ク ロ ッ ク 周期を最大限に有 効利用す る ため、 ク ロ ッ ク の立ち下が り エ ッ ジでデー タ を入力す る よ う に FPGA を コ ン フ ィ ギ ュ レーシ ョ ンす る こ と も で き ます。 X-Ref Target - Figure 2-6 CCLK MISO[3:0] (from flash) FPGA flash CLK-to-data data-to-CLK setup time valid time FPGA data hold time UG570_c2_06_081715 図 2-6 : 基本的な SPI コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ー フ ェ イ ス UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 47 第 2 章 : マス タ ー SPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド コ ン フ ィ ギ ュ レ ーシ ョ ン開始時点では、 立ち上が り エ ッ ジで FPGA にデー タ が入力 さ れ ま す。 こ れは、 ビ ッ ト ス ト リ ームの冒頭で立ち下が り エ ッ ジでの入力に切 り 替え る 命令を FPGA が読み込むま で続 き ます。 こ の後、 外部 ク ロ ッ キ ン グに切 り 替え る コ マ ン ド 、 ま たはマ ス タ ー ク ロ ッ ク 周波数を変更す る コ マ ン ド が実行 さ れます。 立ち下が り エ ッ ジ を使用す る ク ロ ッ キ ン グ オプシ ョ ンは、 Vivado ツールの [Edit Device Properties] ダ イ ア ロ グ ボ ッ ク ス で有効に し ま す (BITSTREAM.CONFIG.SPI_FALL_EDGE を Yes に設定)。 最大 コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク周波数の決定 マ ス タ ー SPI モー ド の場合、 FPGA が コ ン フ ィ ギ ュ レ ーシ ョ ン ク ロ ッ ク を供給 し ま す。 FPGA のマ ス タ ー コ ン フ ィ ギ ュ レ ー シ ョ ン ク ロ ッ ク 周波数は、 Vivado ツ ールの [Edit Device Properties] ダ イ ア ロ グ ボ ッ ク ス で設定 し ま す。 [Configuration Rate] オプシ ョ ンは、 標準の コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク 周波数を設定 し ます。 こ のセ ク シ ョ ン で説明す る タ イ ミ ン グ要件 を満た し て いれば、 [Configuration Rate] の値を 大 き く し て コ ン フ ィ ギ ュ レーシ ョ ン時間を短縮で き ます。 [Configuration Rate] の値が有効か ど う か を判断する には、 次の タ イ ミ ン グ パ ラ メ ー タ ーを考慮す る 必要があ り ます。 • FPGA 標準マ ス タ ー CCLK 周波数 ([Configuration Rate] の設定) • FPGA マ ス タ ー CCLK 周波数偏差 (FMCCKTOL) • SPI ク ロ ッ ク Low か ら 出力有効ま での時間 (TSPITCO) • FPGA デー タ セ ッ ト ア ッ プ タ イ ム (TSPIDCC) 最大限の性能を達成す る には、 FPGA で立ち下が り エ ッ ジ を使用 し て ク ロ ッ ク 周期全体を有効に利用す る 必要があ り ます ( 「SPI コ ン フ ィ ギ ュ レーシ ョ ンの タ イ ミ ン グ」 参照)。 こ こ か ら の説明は、 Vivado ツールの [Edit Device Properties] ダ イ ア ロ グ ボ ッ ク ス で こ のオプシ ョ ン を有効に し てい る こ と を前提 と し てい ます。 FPGA のマ ス タ ー コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク には周波数偏差 FMCCKTOL があ り ます。 こ の偏差 (FMCCKTOL) を 考慮 し て、 ワ ース ト ケース (最速) のマ ス タ ー CCLK 周波数の周期が、 FPGA のア ド レ ス出力が有効にな る ま での時 間、 SPI ク ロ ッ ク Low か ら 出力有効ま での時間、 お よ び FPGA セ ッ ト ア ッ プ タ イ ムの合計 よ り も 大 き く な る (式 2-1 参照) よ う に Vivado ツールの [Edit Device Properties] ダ イ ア ロ グ ボ ッ ク ス の [Configuration Rate] オプシ ョ ン を設定す る 必要があ り ます。 1 ------------------------------------------------------------------------------ ≥ T SPITCO + T SPIDCC ConfigRate × ( 1 + FMCCKTOL MAX ) 式 2-1 こ の計算式では、 CCLK の ク ロ ッ ク レー ト が高 く な る ほ ど FPGA マ ス タ ー コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク の周波 数偏差の影響が大 き く な り ます。 コ ン フ ィ ギ ュ レーシ ョ ンに最速レー ト が必要な場合は、 こ の変数の影響を最小限に 抑え る ために外部 ク ロ ッ ク を使用す る こ と を推奨 し ます。 その場合、 EMCCLK ピ ンに接続 し て Vivado ツールの [Edit Device Properties] ダ イ ア ロ グ ボ ッ ク ス で こ のオプシ ョ ン を有効にす る 必要があ り ます。 電源投入シーケ ン スに関する注意事項 電源を投入す る と 、 FPGA で コ ン フ ィ ギ ュ レーシ ョ ンが自動的に開始 し ます。 FPGA が SPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド の場合、 FCS_B を Low にアサー ト し て フ ラ ッ シ ュ を選択 し 、 こ の フ ラ ッ シ ュ への読み出 し コ マ ン ド を駆動 し ます。 フ ラ ッ シ ュ は、 FCS_B が Low にアサー ト さ れて読み出 し コ マ ン ド が送信 さ れ る 前に、 コ マ ン ド を受信可能な 状態にな っ てい る 必要があ り ます。 FPGA と フ ラ ッ シ ュ には異な る 電源レールか ら 電源を供給で き 、 同 じ 電源を使用 し た場合で も 異な る 立ち上が り 地点で応答す る こ と があ る ため、 FPGA と フ ラ ッ シ ュ の電源投入シーケ ン ス と 電源の 立ち上が り には注意が必要です。 詳細は、 第 1 章の 「フ ラ ッ シ ュ の電源投入シーケ ン ス に関する 注意事項」 を参照 し て く だ さ い。 シ リ アル NOR フ ラ ッ シ ュ を用いた SPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド の具体的な使用方法は、 『UltraScale FPGA で の SPI コ ン フ ィ ギ ュ レーシ ョ ンお よ びフ ラ ッ シ ュ プ ロ グ ラ ミ ン グ』 (XAPP1233) [参照 9] を参照 し て く だ さ い。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 48 第 3章 シ リ アル コ ン フ ィ ギ ュ レーシ ョ ン モー ド は じ めに シ リ アル コ ン フ ィ ギ ュ レーシ ョ ン モー ド では、CCLK の 1 サ イ ク ルで 1 コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト を読み込み、 FPGA を コ ン フ ィ ギ ュ レーシ ョ ン し ます。 CCLK は、 マ ス タ ー シ リ アル モー ド では出力 と な り 、 ス レーブ シ リ アル モー ド では入力 と な り ます。 図 3-1 に、 基本的なシ リ アル コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス を示 し ます。 X-Ref Target - Figure 3-1 M[2:0] DOUT DIN INIT_B PUDC_B PROGRAM_B DONE CCLK ug570_c3_01_110413 図 3-1 : シ リ アル コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ー フ ェ イ ス 図 3-1 に示すシ リ アル コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス の ピ ンは、24 ページの表 1-9 で説明 さ れてい ます。 ス レーブ シ リ アル コ ン フ ィ ギ ュ レーシ ョ ン ス レーブ シ リ アル コ ン フ ィ ギ ュ レーシ ョ ンは、 通常、 シ リ アル デ イ ジー チ ェーン接続 し た複数デバ イ ス を コ ン フ ィ ギ ュ レーシ ョ ンす る と き 、 ま たは外部マ イ ク ロ プ ロ セ ッ サ/CPLD か ら 単独デバ イ ス を コ ン フ ィ ギ ュ レーシ ョ ンす る と き に使用 し ます (図 3-2 参照)。 ス レーブ シ リ アル コ ン フ ィ ギ ュ レーシ ョ ン で考慮すべ き 点は、 CCLK の方向を除い て、 マ ス タ ー シ リ アル コ ン フ ィ ギ ュ レーシ ョ ン と 同様です。 CCLK は、 デー タ を提供す る 外部 ク ロ ッ ク ソ ース か ら 駆動す る 必要があ り ます ( 「シ リ アル コ ン フ ィ ギ ュ レーシ ョ ン デー タ の ク ロ ッ キ ン グ」 参照)。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 49 第 3 章 : シ リ アル コ ン フ ィ ギ ュ レーシ ョ ン モー ド X-Ref Target - Figure 3-2 VCCINT Tie to battery supply when needed, otherwise tie to VCCAUX or GND; see VBATT section VCCINT VBATT VCCAUX VCCAUX Tie to VCCINT or GND; see Power On Reset section POR_OVERRIDE Bank 65 VCCO_0 VCCO_65 DOUT VCC Tie to VCCO_0 or GND; see Configuration Banks Voltage Select section CFGBVS Tie to VCCO_0 or GND PUDC_B Bank 0 VCCO_0 VCCO_0 VCC VCCO_0 VCCO_0 M0 PROGRAM_B Configuration Memory Source CLOCK CCLK SERIAL_OUT 4.7 k M2 M1 UltraScale FPGA 4.7 k Microprocessor or CPLD 4.7 k VCCO_0 VCCO_0 DONE DIN PROGRAM_B INIT_B DONE INIT_B TDI GND TDO TMS TCK GND PROGRAM_B VCCO_0 1 VREF Xilinx Cable Header (JTAG Interface) TMS TCK TDO TDI N.C. N.C. 14 Refer to the Notes following this figure for related information. ug570_c3_02_031915 図 3-2 : ス レーブ シ リ アル モー ド の コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ー フ ェ イ スの例 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 50 第 3 章 : シ リ アル コ ン フ ィ ギ ュ レーシ ョ ン モー ド 図 3-2 について説明 し ます。 1. DONE ピ ンは、 デフ ォ ル ト ではオープン ド レ イ ン出力です。 DONE 信号の詳細は、 24 ページの表 1-9 を参照 し て く だ さ い。 2. INIT_B ピ ンは双方向オープン ド レ イ ン ピ ンで、外部プルア ッ プ抵抗が必要です。INIT_B 信号の詳細は、24 ペー ジの表 1-9 を参照 し て く だ さ い。 3. CCLK のシ グナル イ ン テ グ リ テ ィ が重要です。 4. VCCINT、VCCAUX、VCCO_0 の電源電圧については、各デー タ シー ト ([参照 6] ま たは [参照 7]) を参照 し て く だ さ い。 5. FPGA の PUDC_B ピ ン を GND に接続す る と 電源投入後 と コ ン フ ィ ギ ュ レーシ ョ ン中に SelectIO ピ ンの内部プル ア ッ プが有効にな り 、 VCCO_0 に接続す る と SelectIO ピ ンが ト ラ イ ス テー ト 状態にな り ます。 PUDC_B 信号の詳 細は、 24 ページの表 1-9 を参照 し て く だ さ い。 マス タ ー シ リ アル コ ン フ ィ ギ ュ レーシ ョ ン マ ス タ ー シ リ アル コ ン フ ィ ギ ュ レーシ ョ ン モー ド は、 FPGA が CCLK を生成する こ と を除けば、 ス レーブ シ リ アル コ ン フ ィ ギ ュ レーシ ョ ン モー ド と 同様です。 つま り 、 マ ス タ ー シ リ アル モー ド では CCLK は出力 と な り ます。 UltraScale™ アーキ テ ク チ ャ FPGA は、従来のシ リ アル PROM か ら コ ン フ ィ ギ ュ レーシ ョ ン を実行す る 場合や、CPLD ベース のカ ス タ ム コ ン フ ィ ギ ュ レーシ ョ ン ス テー ト マシ ン を FPGA の CCLK で駆動す る ためのマ ス タ ー シ リ アル モー ド をサポー ト し てい ます。ザ イ リ ン ク ス プ ラ ッ ト フ ォーム フ ラ ッ シ ュ PROM は UltraScale アーキ テ ク チ ャ FPGA をサポー ト し てい ません。 推奨 : フ ラ ッ シ ュ デバ イ ス か ら 少ピ ン数の コ ン フ ィ ギ ュ レーシ ョ ン を実行す る 手段 と し ては、 主にマ ス タ ー SPI モー ド を使用 し ま す。 新規デザ イ ン でのマ ス タ ー シ リ アル モー ド は推奨 さ れてい ません。 9 ページの 「UltraScale FPGA フ ァ ミ リ 間の機能の違い」 を参照 し て く だ さ い。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 51 第 3 章 : シ リ アル コ ン フ ィ ギ ュ レーシ ョ ン モー ド シ リ アル コ ン フ ィ ギ ュ レーシ ョ ン デー タ の ク ロ ッ キン グ 図 3-3 に、 ス レーブ シ リ アルお よ びマ ス タ ー シ リ アル モー ド で コ ン フ ィ ギ ュ レーシ ョ ン デー タ が FPGA に読み込ま れ る ク ロ ッ ク シーケ ン ス を示 し ます。 X-Ref Target - Figure 3-3 PROGRAM_B INIT_B Master CLK Begins Here(2) CCLK BIT 0(1) Master DIN BIT 1 Master DOUT / Slave DIN BIT n BIT n+1 BIT n-64 BIT n-63 DIN Data Bits clocked on Rising Edge of CCLK DONE UG470_c2_03_110413 図 3-3 : シ リ アル コ ン フ ィ ギ ュ レーシ ョ ンのク ロ ッ ク シーケ ン ス 図 3-3 について説明 し ます。 1. ビ ッ ト 0 は、 最初のバ イ ト の MSB を示 し ます。 た と えば、 最初のバ イ ト が 0xAA (1010_1010) の場合、 ビ ッ ト 0 = 1、 ビ ッ ト 1 = 0、 ビ ッ ト 2 = 1 と な り ます。 2. マ ス タ ー シ リ アル コ ン フ ィ ギ ュ レーシ ョ ン モー ド の場合、 CCLK は INIT_B が High に遷移 し てか ら DONE が High へ遷移す る ま で駆動 さ れます。 それ以外では、 CCLK はハ イ イ ン ピーダ ン ス状態です。 3. ス レーブ シ リ アル モー ド の場合、 CCLK はフ リ ー ラ ン ニ ン グにな り ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 52 第 4章 マス タ ー BPI コ ン フ ィ ギュ レーシ ョ ン モー ド は じ めに UltraScale™ アーキ テ ク チ ャ FPGA のマ ス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド では、 ビ ッ ト ス ト リ ームの格納先 に業界標準の高速パ ラ レル NOR フ ラ ッ シ ュ デバ イ ス を使用で き ます。 パ ラ レル NOR フ ラ ッ シ ュ のア ド レ ス、 デー タ 、 制御信号に FPGA を直接接続 し て、 格納 さ れてい る デザ イ ン イ メ ージの ビ ッ ト ス ト リ ーム を読み出す こ と がで き ます。 マス タ ー BPI イ ン タ ー フ ェ イ ス マ ス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド では、パ ラ レル NOR フ ラ ッ シ ュ か ら の x16 同期読み出 し と x8/x16 非同 期読み出 し がサポー ト さ れます。 デフ ォ ル ト では、 パ ラ レル NOR フ ラ ッ シ ュ か ら x8 非同期モー ド で読み出 し を実行 し ます。 コ ン フ ィ ギ ュ レーシ ョ ン時間を短 く し たいアプ リ ケーシ ョ ンでは、 x16 デー タ バ ス幅で同期読み出 し を有効 に し て く だ さ い (64 ページの 「フ ァ イ ル生成」 参照)。 図 4-1 に、 マ ス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス を示 し ます。 マ ス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド におけ る FPGA と パ ラ レル NOR フ ラ ッ シ ュ の接続の詳細は、図 4-2 と 図 4-4 を参照 し て く だ さ い。FPGA の 信号の定義は、 24 ページの表 1-9 で説明 し てい ます。 X-Ref Target - Figure 4-1 A[28:00] M[2:0] D[15:00] CSO_B INIT_B RS[1:0] PUDC_B CCLK PROGRAM_B FCS_B EMCCLK FOE_B FWE_B DONE ADV_B ug570_c4_01_073014 図 4-1 : マス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド のイ ン タ ー フ ェ イ ス UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 53 第 4 章 : マス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド パ ラ レル NOR フ ラ ッ シ ュ は、 幅の広い 16 ビ ッ ト デー タ バ ス に よ っ てほかのフ ラ ッ シ ュ よ り も 高速な コ ン フ ィ ギ ュ レーシ ョ ンが可能であ る ため、 ビ ッ ト ス ト リ ームの格納や送信に最適です。 コ ン フ ィ ギ ュ レーシ ョ ン時間が短縮 さ れ る 以外に、 ラ ン ダ ム ア ク セ ス の非揮発性アプ リ ケーシ ョ ン デー タ の格納にパ ラ レ ル NOR フ ラ ッ シ ュ メ モ リ を使用 す る シ ス テ ムでは、 コ ン フ ィ ギ ュ レーシ ョ ン デー タ を 1 つの メ モ リ デバ イ ス に集約で き る と い う 利点 も あ り ます。 コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ーム格納用にパ ラ レル NOR フ ラ ッ シ ュ を選択す る 際は、 い く つかの点を考慮 す る 必要があ り ます。 • アプ リ ケーシ ョ ンで必要 と な る ス ト レージ容量 (現在お よ び移行のオプシ ョ ン) • コ ン フ ィ ギ ュ レーシ ョ ン時間の短縮に必要なデー タ バス幅 • フ ラ ッ シ ュ の I/O 電圧範囲 コ ン フ ィ ギ ュ レーシ ョ ン に必要な フ ラ ッ シ ュ の最小容量は、 16 ページの表 1-4 に記載 さ れた ビ ッ ト ス ト リ ーム サ イ ズ を参照 し て判断 し て く だ さ い。 マ ス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド の イ ン タ ーフ ェ イ ス ではバン ク 0 の コ ン フ ィ ギ ュ レーシ ョ ン ピ ン と バン ク 65 の多目的ピ ン を使用 し ます。 こ れ ら の ピ ンには、パ ラ レル NOR フ ラ ッ シ ュ の I/O 仕様に適合 し た同 じ VCCO 電圧を供給す る 必要があ り ます。 フ ラ ッ シ ュ が機能 と 電圧の要件をサポー ト し てい る か ど う かは、 フ ラ ッ シ ュ のデー タ シー ト で十分に確認 し て く だ さ い。 こ の章では、 同期お よ び非同期読み出 し の説明にパ ラ レル NOR フ ラ ッ シ ュ の例を示 し ます。 サポー ト さ れ る フ ラ ッ シ ュ フ ァ ミ リ 、 お よ び Vivado® デバ イ ス プ ロ グ ラ マ を使用 し て間接プ ロ グ ラ ムが可能な フ ラ ッ シ ュ フ ァ ミ リ の詳細 は、 『Vivado Design Suite ユーザー ガ イ ド : プ ロ グ ラ ムお よ びデバ ッ グ』 (UG908) [参照 5] を参照 し て く だ さ い。 表 4-1 に、 UltraScale アーキ テ ク チ ャ FPGA の各フ ラ ッ シ ュ 読み出 し モー ド でサポー ト さ れ る 機能の概要を示 し ます。 詳細は、 55 ページの 「マ ス タ ー BPI 同期読み出 し 」 お よ び 58 ページの 「マ ス タ ー BPI 非同期読み出 し 」 を参照 し て く だ さ い。 表 4-1 : 非同期/同期読み出 し モー ド の比較 UltraScale FPGA のサポー ト さ れる機能 同期読み出 し 非同期読み出 し 非同期ページ 読み出 し x16 のみ x8 ま たは x16 x8 ま たは x16 複数 FPGA のデ イ ジー チ ェ ーン あり あり なし 連結 FPGA モー ド なし あり なし ラ ッ プア ラ ウ ン ド エ ラ ー なし あり あり ウ ォ ッチ ド ッ グ タ イ ムアウ ト あり あり あり フ ォールバ ッ ク あり あり あり マルチブー ト あり あり あり 暗号化 あり あり あり 圧縮 あり あり あり デー タ バ ス幅 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 54 第 4 章 : マス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド マス タ ー BPI 同期読み出 し UltraScale™ アーキ テ ク チ ャ FPGA のマ ス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド では、 同期バース ト 読み出 し をサ ポー ト し たパ ラ レル NOR フ ラ ッ シ ュ か ら ビ ッ ト ス ト リ ーム を読み出す こ と がで き ます。 マ ス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド の同期読み出 し は、 フ ラ ッ シ ュ か ら 直接 UltraScale アーキ テ ク チ ャ FPGA を コ ン フ ィ ギ ュ レーシ ョ ンす る 方法 と し ては最 も 高速で、 カ ス タ マ イ ズ し た外部制御 ロ ジ ッ ク も 必要あ り ません。 図 4-2 に、 マ ス タ ー BPI コ ン フ ィ ギ ュ レ ーシ ョ ン モー ド の同期読み出 し で EMCCLK (External Master Configuration Clock) を使用す る 場合の FPGA と パ ラ レル NOR フ ラ ッ シ ュ の接続図を示 し ます。 コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク オプシ ョ ンの詳細は、 第 1 章の 「外部マ ス タ ー コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク (EMCCLK) オプシ ョ ン」 を参照 し て く だ さ い。 図 4-2 の接続は、 同期読み出 し と 非同期読み出 し の両方のモー ド を サポー ト し ま す。 非同期読み出 し モー ド し か使用 し ないアプ リ ケーシ ョ ンでは、 図 4-4 の接続 も 可能です。 X-Ref Target - Figure 4-2 VCCAUX VCCINT Tie to battery supply when needed, otherwise tie to VCCAUX or GND; see VBATT section Tie to VCCINT or GND; see Power On Reset section Xilinx 14-pin JTAG Ribbon Cable Header VCCAUX VBATT POR_OVERRIDE Bank 0 See Configuration Banks Voltage Select section for appropriate connection CFGBVS Tie to VCCO_0 or GND PUDC_B VCCO_0 1 VCCINT VCCO_0 VCCO_0 TMS TCK TDO TDI N/C N/C UltraScale FPGA 4.7 kΩ 4.7 kΩ 4.7 kΩ 4.7 kΩ VCCQ 4.7 kΩ 4.7 kΩ Micron P30 M2 M1 M0 4.7 kΩ Mode = Master BPI VCCO_0 VCC VCCO_0 VCCO_0 14 VCC IEEE 1149.1 JTAG Port VREF TMS TCK TDO TDI DONE PROGRAM_B VCCQ INIT_B RST VCCO_0 4.7 kΩ D[03:00] CLK CCLK CE FCS_B WE OE FWE_B FOE_B ADV_B WP ADV GND DQ[15:0] D[15:04] A[n:1] A[28:00] WAIT N/C Optional Oscillator Bank 65 VCCO_65 RS0 RS1 CSO_B EMCCLK GND PROGRAM_B UG570_c4_02_031915 図 4-2 : マス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ー フ ェ イ ス (x16 同期読み出 し ) の例 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 55 第 4 章 : マス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド 図 4-2 について説明 し ます。 重要 : フ ラ ッ シ ュ ベン ダーのデー タ シー ト を十分に確認 し 、 フ ラ ッ シ ュ の LSB ア ド レ ス信号を FPGA の LSB ア ド レ ス信号 A[00] に接続 し て く だ さ い。 1. DONE ピ ンは、 デフ ォ ル ト ではオープン ド レ イ ン出力です。 DONE 信号の詳細は、 24 ページの表 1-9 を参照 し て く だ さ い。 2. INIT_B ピ ンは双方向オープン ド レ イ ン ピ ンで、 外部プルア ッ プ抵抗が必要です。 INIT 信号の詳細は、 24 ペー ジの表 1-9 を参照 し て く だ さ い。 3. CCLK のシ グナル イ ン テ グ リ テ ィ が重要です。 4. 同期読み出 し の例では、 x16 デー タ バ ス イ ン タ ーフ ェ イ ス がサポー ト さ れます。 x8 デー タ バ ス イ ン タ ーフ ェ イ ス は非同期読み出 し モー ド でのみサポー ト さ れます。 5. パ ラ レル デ イ ジー チ ェーン では、 CSO_B を下位 FPGA の CSI_B に接続 し て く だ さ い。 6. FPGA の VCCO_0 電源電圧は、 選択 し たパ ラ レル NOR デバ イ ス の I/O の電源電圧 と 合わせる 必要があ り ます。 7. ク ロ ッ ク ソ ース が内部オシ レー タ ーの場合、 CCLK の周波数は Vivado の [Configuration Rate] ビ ッ ト ス ト リ ーム 設定 (BITSTREAM.CONFIG.CONFIGRATE) を使用 し て調整で き ます。ま たは、[Enable External Configuration Clock] オ プ シ ョ ン (BITSTREAM.CONFIG.EXTMASTERCCLK_EN) で CCLK か ら EMCCLK ピ ン に よ る 外部 ク ロ ッ ク ソ ースへ切 り 替え る こ と がで き ます。 詳細は、 57 ページの 「EMCCLK オプシ ョ ン」 お よ び 64 ページの 「フ ァ イ ル生成」 を参照 し て く だ さ い。 8. FPGA の PUDC_B ピ ン を GND に接続す る と 電源投入後 と コ ン フ ィ ギ ュ レーシ ョ ン中に SelectIO ピ ンの内部プル ア ッ プが有効にな り 、 VCCO_0 に接続す る と SelectIO ピ ンが ト ラ イ ス テー ト 状態にな り ます。 PUDC_B 信号の詳 細は、 24 ページの表 1-9 を参照 し て く だ さ い。 9. VCCINT、VCCAUX、VCCO_0 の電源電圧については、各デー タ シー ト ([参照 6] ま たは [参照 7]) を参照 し て く だ さ い。 10. ADV_B と CCLK は、 同期読み出 し モー ド ではフ ラ ッ シ ュ に接続す る 必要があ り ますが、 非同期読み出 し モー ド ではオプシ ョ ンです。 非同期読み出 し モー ド では CCLK 出力はフ ラ ッ シ ュ には接続 さ れませんが、 コ ン フ ィ ギ ュ レ ーシ ョ ン中に フ ラ ッ シ ュ の読み出 し デー タ を サ ン プ リ ン グす る 目的で使用 さ れ ま す。 すべての タ イ ミ ン グは CCLK を基準 と し てい ます。 非同期読み出 し し か使用 し ないアプ リ ケーシ ョ ンでは、 フ ラ ッ シ ュ の ADV_B お よ び CLK ラ イ ン を GND に接続で き ます。 11. 図 4-2 では、RS[1:0] ピ ンは未接続です。 こ の図に示 し た接続例は、単一ビ ッ ト ス ト リ ーム コ ン フ ィ ギ ュ レーシ ョ ン をサポー ト し てい ます。 こ れ ら の出力ピ ンはオプシ ョ ンで、 マルチブー ト コ ン フ ィ ギ ュ レーシ ョ ンに使用で き ます。 12. 単純なシ ン グル デバ イ ス の JTAG ス キ ャ ン チ ェーンの JTAG 接続を示 し てい ます。JTAG ス キ ャ ン チ ェーンに複 数のデバ イ ス があ る 場合は、 適切な IEEE Std 1149.1 デ イ ジー チ ェ ーン手法を使用 し て JTAG 信号を接続 し て く だ さ い。 JTAG 動作では、 TCK のシ グナル イ ン テ グ リ テ ィ が重要です。 JTAG ス キ ャ ン チ ェーンのデバ イ ス間の シ グナル イ ン テ グ リ テ ィ を確実にす る には、 TCK 信号を適切に配線お よ び終端 し 、 必要に応 じ てバ ッ フ ァ ーを 介 し ます。 同期読み出 し シーケ ン ス 図 4-3 に、 BPI コ ン フ ィ ギ ュ レーシ ョ ンの同期読み出 し を開始す る ためのシーケ ン ス を示 し ます。 ビ ッ ト ス ト リ ーム 生成時のオプシ ョ ン で同期読み出 し モー ド を選択 し 、 モー ド ピ ン を M[2:0] = 010 に設定 し た場合、 電源投入後にマ ス タ ー BPI モー ド のシーケ ン ス が自動的に開始 し ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 56 第 4 章 : マス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド X-Ref Target - Figure 4-3 $V\QF5HDG %LWVWUHDP+HDGHU5HDG 6\QF5HDG %LWVWUHDP/RDG $V\QF:ULWH )ODVK5&5:ULWH ,1,7B% &&/. )&6B% )2(B% ):(B% $'9B% $>@ '>@ ;; )ODVK5&5:ULWH*) 7\SH%LWVWUHDP6HWWOLQJ )))) ' ;;;; ' ' ' ' ' ' 'Q ' 8*BFBB 図 4-3 : マス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド 、 同期読み出 し の波形 最初に、 FPGA はビ ッ ト ス ト リ ーム を非同期に読み出 し 、 コ ン フ ィ ギ ュ レーシ ョ ンに使用す る 読み出 し モー ド を決定 し ます。 読み出 し は、 常にデフ ォ ル ト の内部 CCLK の レー ト で開始 し ます。 INIT_B 信号が リ リ ース さ れて制御信号 FCS_B、 FOE、 ADV_B が有効ア ド レ ス A[28:00] でアサー ト さ れ る と 、 パ ラ レル NOR フ ラ ッ シ ュ か ら のデー タ をデー タ バ ス D[15:0] でキ ャ プチ ャ し ます。 次に、 FPGA はビ ッ ト ス ト リ ーム ヘ ッ ダーを読み出 し 、 コ ン フ ィ ギ ュ レーシ ョ ン デー タ を読み出す際の フ ラ ッ シ ュ 読み出 し モー ド を判断 し ます。 ビ ッ ト ス ト リ ーム ヘ ッ ダーに同期 コ マ ン ド が含 まれてい る 場合、 FPGA コ ン フ ィ ギ ュ レーシ ョ ン コ ン ト ロ ー ラ ーは接続 さ れてい る パ ラ レル NOR フ ラ ッ シ ュ の RCR (読み出 し コ ン フ ィ ギ ュ レーシ ョ ン レ ジ ス タ ) に対 し て非同期書 き 込みを開始 し ます。 次に、 FPGA はフ ラ ッ シ ュ の RCR の同期お よ びレ イ テ ン シ ビ ッ ト に書 き 込んで フ ラ ッ シ ュ の同期読み出 し を有効に し ます。 非同期書 き 込みを実行す る 場合、 FPGA は INIT_B 信号 と FOE_B 信号がデ ィ アサー ト さ れてい る 間に FCS_B 信号 と FWE_B 信号を アサー ト し ます。 FPGA は、 フ ラ ッ シ ュ の コ ン フ ィ ギ ュ レーシ ョ ン レ ジ ス タ へ書 き 込みシーケ ン ス を 2 サ イ ク ル間発行 し ます。 最初のサ イ ク ルでは、 A[16:01] に RCR (読み出 し コ ン フ ィ ギ ュ レーシ ョ ン レ ジ ス タ ) デー タ が現れ、 デー タ バ ス に コ マ ン ド 0x60 が現れます。 次のサ イ ク ルでは、 A[16:01] に RCR デー タ が現れ、 デー タ バ ス に コ マ ン ド 0x03 が現れます。 RCR の値は、 Micron MT28GU (Non-Mux) と P30 フ ァ ミ リ で異な り 、 ビ ッ ト ス ト リ ーム オプシ ョ ンで決定 し ます (64 ページの 「フ ァ イ ル生成」 参照)。 最後に、 FPGA が非同期読み出 し か ら 同期読み出 し プ ロ ト コ ルへ切 り 替わ り 、 ビ ッ ト ス ト リ ームの読み出 し を再開 し ます。 こ のシーケ ン ス は、 FPGA が FCS_B 信号お よ び FOE_B 信号を アサー ト し 、 有効ア ド レ ス で ADV_B を 1 サ イ ク ルだけアサー ト す る と 実行 さ れます。 そ し て、 コ ン フ ィ ギ ュ レーシ ョ ン デー タ が フ ラ ッ シ ュ か ら バース ト 転送 さ れ て、 FPGA に よ っ て リ ー ド バ ッ ク さ れます。 ヘ ッ ダー情報が読み出 さ れた後、 コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク ソ ー ス はユーザー指定に変更で き ます。 重要 : こ こ で重要なのは、 フ ラ ッ シ ュ は コ ン フ ィ ギ ュ レーシ ョ ン で使用 さ れた読み出 し モー ド を維持す る こ と です。 た と えば、 同期読み出 し モー ド で FPGA が コ ン フ ィ ギ ュ レーシ ョ ン さ れ る と 、 フ ラ ッ シ ュ は同期読み出 し モー ド を維 持 し ます。 EMCCLK オプ シ ョ ン マ ス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド では、 デフ ォ ル ト で内部で生成 さ れた コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク ソ ース CCLK を使用 し ます。 こ の ク ロ ッ ク オプシ ョ ン を使用する と 、 外部 ク ロ ッ ク ジ ェ ネ レー タ ー ソ ース が不要 と な る ため便利です。 ただ し 、 コ ン フ ィ ギ ュ レーシ ョ ン時間の短縮が要求 さ れ る アプ リ ケーシ ョ ン では外部マ ス タ ー コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク (EMCCLK) を使用 し て く だ さ い。 FPGA の内部 ク ロ ッ ク にはマ ス タ ー CCLK 周波 数誤差 (FMCCKTOL) が あ る た め、 EMCCLK ク ロ ッ ク の方が よ り 高精度な 外部 ク ロ ッ ク ソ ー ス を 利用で き ま す。 UltraScale FPGA には、マ ス タ ー BPI モー ド 時に外部 ク ロ ッ ク ソ ース (EMCCLK) に動的に切 り 替え る 機能があ り ます。 詳細は、 第 1 章の 「外部マ ス タ ー コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク (EMCCLK) オプシ ョ ン」 を参照 し て く だ さ い。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 57 第 4 章 : マス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド マス タ ー BPI 非同期読み出 し UltraScale FPGA のマ ス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド では、デフ ォ ル ト でパ ラ レル NOR フ ラ ッ シ ュ 非同期 読み出 し を使用 し ます。 FPGA が特定の開始ア ド レ ス か ら ア ド レ ス バ ス を駆動する と 、 フ ラ ッ シ ュ がビ ッ ト ス ト リ ー ム デー タ を返 し ます。 開始ア ド レ ス はデフ ォ ル ト でア ド レ ス 0 ですが、 マルチブー ト リ コ ン フ ィ ギ ュ レーシ ョ ンの 手順で明示的に設定で き ます。 非同期読み出 し モー ド では、 サポー ト さ れてい る バ ス幅 (x8 ま たは x16) が自動で検出 さ れます。 図 4-4 に、 マ ス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド の x16 非同期読み出 し におけ る FPGA と パ ラ レル NOR フ ラ ッ シ ュ の接続図を示 し ます。 X-Ref Target - Figure 4-4 VCCAUX VCCINT VCCINT Tie to battery supply when needed, otherwise tie to VCCAUX or GND; see VBATT section Tie to VCCINT or GND; see Power On Reset section See Configuration Banks Voltage Select section for appropriate connection CFGBVS Tie to VCCO_0 or GND PUDC_B TMS TCK TDO TDI Bank 0 VCCO_0 VCCO_0 TMS TCK TDO TDI N/C N/C VCCO_0 VCCO_0 M2 M1 M0 Mode = Master BPI 14 4.7 kΩ 4.7 kΩ VCCQ 4.7 kΩ 4.7 kΩ Micron M29EW VCC 4.7 kΩ VCCO_0 VCC POR_OVERRIDE 4.7 kΩ Xilinx 14-pin JTAG Ribbon Cable Header VREF VBATT IEEE 1149.1 JTAG Port VCCO_0 1 VCCAUX UltraScale FPGA DONE PROGRAM_B VCCQ INIT_B RST VCCO_0 4.7 kΩ D[03:00] N/C WP CCLK CE FCS_B WE OE FWE_B FOE_B 10 kΩ VCCO_0 Bank 65 VCCO_65 RY/BY 4.7 kΩ VCCO_0 BYTE DQ[14:0] D[14:04] A[n:0] DQ15/A-1 A[28:00] D[15] Optional Oscillator VSS RS0 RS1 CSO_B EMCCLK GND PROGRAM_B ug570_c2_04_080515 図 4-4 : マス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ー フ ェ イ ス (x16 非同期読み出 し ) の例 図 4-4 について説明 し ます。 1. BYTE# 信号のあ る パ ラ レル NOR フ ラ ッ シ ュ の場合、 BYTE# 信号を正 し く 設定する 必要があ り ます。 x16 デー タ バ ス幅の場合、 BYTE# 信号を High に設定 し ます。 x8 デー タ バ ス幅の場合、 BYTE# 信号を Low に設定 し ます。 詳細は、 フ ラ ッ シ ュ のデー タ シー ト を参照 し て く だ さ い。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 58 第 4 章 : マス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド 2. フ ラ ッ シ ュ ベン ダーのデー タ シー ト を十分に確認 し 、 使用する ベン ダーお よ びデー タ バ ス幅に応 じ て フ ラ ッ シ ュ の LSB ア ド レ ス信号を正 し く 接続 し て く だ さ い。 パ ラ レル NOR フ ラ ッ シ ュ に多目的の DQ15/A-1 信号があ る 場合、 正 し く 接続す る 必要が あ り ま す。 DQ15/A-1 は x16 モー ド ではデー タ ピ ン です。 x8 モー ド の場合、 フ ラ ッ シ ュ の DQ15/A-1 は LSB ア ド レ ス ラ イ ンで、 FPGA の A00 に接続す る 必要があ り ます。 3. DONE ピ ンは、 デフ ォ ル ト ではオープン ド レ イ ン出力です。 DONE 信号の詳細は、 24 ページの表 1-9 を参照 し て く だ さ い。 4. INIT_B ピ ンは双方向オープン ド レ イ ン ピ ンで、 外部プルア ッ プ抵抗が必要です。 INIT 信号の詳細は、 24 ペー ジの表 1-9 を参照 し て く だ さ い。 5. 図 4-4 は、x16 BPI イ ン タ ーフ ェ イ ス を示 し てい ます。x8 BPI イ ン タ ーフ ェ イ ス では、D[07:00] のみを使用 し ます。 6. フ ラ ッ シ ュ の信号接続の詳細は、 フ ラ ッ シ ュ のベン ダーか ら 公開 さ れてい る デー タ シー ト を参照 し て く だ さ い。 選択 し た フ ラ ッ シ ュ フ ァ ミ リ お よ びデー タ 幅に応 じ て、 FPGA の LSB A00 を フ ラ ッ シ ュ の LSB ア ド レ ス に正 し く 接続す る 必要があ り ます。 7. パ ラ レル デ イ ジー チ ェーン では、 CSO_B を下位 FPGA の CSI_B に接続 し て く だ さ い。 8. FPGA の VCCO_0 電源電圧は、 選択 し たパ ラ レル NOR デバ イ ス の I/O の VCC と 合わせ る 必要があ り ます。 9. ク ロ ッ ク ソ ース が内部オシ レー タ ーの場合、 CCLK の周波数は Vivado の [Configuration Rate] ビ ッ ト ス ト リ ーム 設定 (BITSTREAM.CONFIG.CONFIGRATE) を使用 し て調整で き ます。ま たは、[Enable External Configuration Clock] オ プ シ ョ ン (BITSTREAM.CONFIG.EXTMASTERCCLK_EN) で CCLK か ら EMCCLK ピ ン に よ る 外部 ク ロ ッ ク ソ ースへ切 り 替え る こ と がで き ます。 詳細は、 57 ページの 「EMCCLK オプシ ョ ン」 お よ び 64 ページの 「フ ァ イ ル生成」 を参照 し て く だ さ い。 10. FPGA の PUDC_B ピ ン を GND に接続す る と 電源投入後 と コ ン フ ィ ギ ュ レーシ ョ ン中に SelectIO ピ ンの内部プル ア ッ プが有効にな り 、 VCCO_0 に接続す る と SelectIO ピ ンが ト ラ イ ス テー ト 状態にな り ます。 PUDC_B 信号の詳 細は、 24 ページの表 1-9 を参照 し て く だ さ い。 11. VCCINT、VCCAUX、VCCO_0 の電源電圧については、各デー タ シー ト ([参照 6] ま たは [参照 7]) を参照 し て く だ さ い。 12. ADV_B お よ び CCLK の接続は一部のサポー ト さ れ る フ ラ ッ シ ュ フ ァ ミ リ で利用で き ますが、 同期読み出 し 動作 では接続す る 必要はあ り ません非同期読み出 し モー ド では CCLK 出力はフ ラ ッ シ ュ には接続 さ れませんが、コ ン フ ィ ギ ュ レーシ ョ ン中に フ ラ ッ シ ュ の読み出 し デー タ をサンプ リ ン グす る 目的で使用 さ れます。 すべての タ イ ミ ン グは CCLK を基準 と し てい ます。 非同期読み出 し のセ ッ ト ア ッ プで、 フ ラ ッ シ ュ に ADV_B お よ び CLK ラ イ ンがあ る 場合は GND に接続で き ます。 13. 図 4-4 に示す よ う に、RS[1:0] ピ ンは未接続です。 こ の図に示 し た接続例は、単一ビ ッ ト ス ト リ ーム コ ン フ ィ ギ ュ レーシ ョ ン をサポー ト し てい ます。 こ れ ら の出力ピ ンはオプシ ョ ンで、 マルチブー ト コ ン フ ィ ギ ュ レーシ ョ ンに 使用で き ます。 14. 単純なシ ン グル デバ イ ス の JTAG ス キ ャ ン チ ェーンの JTAG 接続を示 し てい ます。JTAG ス キ ャ ン チ ェーンに複 数のデバ イ ス があ る 場合は、 適切な IEEE Std 1149.1 デ イ ジー チ ェ ーン手法を使用 し て JTAG 信号を接続 し て く だ さ い。 JTAG 動作では、 TCK のシ グナル イ ン テ グ リ テ ィ が重要です。 JTAG ス キ ャ ン チ ェーンのデバ イ ス間の シ グナル イ ン テ グ リ テ ィ を確実にす る には、 TCK 信号を適切に配線お よ び終端 し 、 必要に応 じ てバ ッ フ ァ ーを 介 し ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 59 第 4 章 : マス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド 非同期読み出 し シーケ ン ス マ ス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ンで非同期読み出 し を正 し く 実行す る ためのシーケ ン ス を図 4-5 に示 し ます。 電 源投入後、 FPGA の INIT_B 出力が High に遷移す る と モー ド ピ ンの M[2:0] がサ ンプ リ ン グ さ れ ます。 マ ス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド (M[2:0] = 010) と 判断 さ れ る と 、 FPGA が フ ラ ッ シ ュ 制御信号を駆動 し ます (FWE_B が High、 FOE_B が Low、 FCS_B が Low)。 非同期読み出 し では CCLK 出力をパ ラ レル NOR フ ラ ッ シ ュ デバ イ ス に接 続す る 必要はあ り ませんが、 FPGA は CCLK の立ち上が り エ ッ ジの後でア ド レ ス を出力 し 、 CCLK の次の立ち上が り エ ッ ジ でデー タ がサ ン プ リ ン グ さ れ ま す。 マ ス タ ー BPI モー ド の非同期読み出 し では、 ア ド レ ス は 0 か ら 開始 し 、 DONE ピ ンがアサー ト さ れ る ま で 1 ずつ イ ン ク リ メ ン ト し ます。 ア ド レ ス が最大値 (29'h1FFFFFFF) に達 し て も コ ン フ ィ ギ ュ レーシ ョ ンが完了 し ない (DONE がアサー ト さ れない) 場合、 ス テー タ ス レ ジ ス タ の ラ ッ プア ラ ウ ン ド エ ラ ー フ ラ グがアサー ト さ れ、 フ ォールバ ッ ク リ コ ン フ ィ ギ ュ レーシ ョ ンが開始 し ます。 X-Ref Target - Figure 4-5 010 (Binary) = Master BPI M[2:0] PROGRAM_B INIT_B FWE_B 1 FOE_B 0 FCS_B 0 A0 A[n:00] A1 An CCLK D0 D[n:00] RS[1:0] Z CSO_B Z D1 Dn DONE UG570_c4_05_110613 図 4-5 : マス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド 、 非同期読み出 し の波形 非同期ページ読み出 し のサポー ト 基本的な非同期読み出 し 以外に、 UltraScale FPGA はパ ラ レル NOR フ ラ ッ シ ュ の非同期ページ読み出 し をサポー ト し ます。 非同期ページ読み出 し では、 基本的な非同期読み出 し モー ド よ り も 高い コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク 周波 数が可能です。 UltraScale FPGA の同期読み出 し モー ド でサポー ト さ れていないパ ラ レル NOR フ ラ ッ シ ュ では、 非同 期ページ読み出 し を使用す る のが一般的です。 非同期ページ読み出 し のシーケ ン ス では、マルチ ワ ー ド ページか ら の最初の ワー ド 読み出 し には標準の非同期読み出 し モー ド と 同 じ 時間がかか り ますが、 同 じ ページか ら の 2 番目以降の ワ ー ド 読み出 し の時間は大幅に短縮 さ れ ます。 ページ読み出 し のシーケ ン ス は、 FPGA ビ ッ ト ス ト リ ーム に よ っ て制御 さ れ ま す。 ページ読み出 し を サポー ト し た ビ ッ ト ス ト リ ー ム を 生成す る には、 複数の ビ ッ ト ス ト リ ー ム プ ロ パ テ ィ を 設定 し てページ読み出 し を 有効に し 、 CCLK 周波数を最大化す る 必要があ り ます。 ビ ッ ト ス ト リ ームの BPI_PAGE_SIZE プ ロ パテ ィ は、 各ページに含まれ る ワー ド 数を設定 し ます。 各ページの最初の ワ ー ド 以外の ワ ー ド は、 いずれ も マ ス タ ー CCLK の 1 サ イ ク ルで読み出 さ れます。 ビ ッ ト ス ト リ ームの BPI_1ST_READ_CYCLE プ ロ パテ ィ は、 各ページの最初の ワー ド の読み出 し に割 り 当 て ら れ る CCLK サ イ ク ル数を設定 し ます。 ページ サ イ ズお よ び初回読み出 し サ イ ク ルの設定方法の詳細は、 64 ペー ジの 「フ ァ イ ル生成」 を参照 し て く だ さ い。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 60 第 4 章 : マス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド FPGA が リ セ ッ ト さ れ る と 、 デフ ォ ル ト でページ サ イ ズが 1、 初回ア ク セ ス の CCLK サ イ ク ルが 1 と な り 、 マ ス タ ー CCLK は最 も 低いデフ ォ ル ト 周波数で動作 し ます。 コ ン フ ィ ギ ュ レーシ ョ ン レ ジ ス タ (COR1) には、 パ ラ レ ル NOR フ ラ ッ シ ュ ページ読み出 し 制御ビ ッ ト が格納 さ れます。 COR1 レ ジ ス タ がプ ロ グ ラ ム さ れ る と 、 BPI ア ド レ ス タ イ ミ ン グがページの境界で切 り 替わ り ます (図 4-6 参照)。 コ マ ン ド を受信する と 、 マ ス タ ー CCLK はユーザーが指定 し た 周波数に切 り 替わ り 、 その周波数で残 り の コ ン フ ィ ギ ュ レーシ ョ ンが読み込まれます。 X-Ref Target - Figure 4-6 CCLK FCS_B FOE_B FWE_B A[2:0] 7 D[n:0] 0 1 D0 2 D1 3 D2 4 D3 CCLK = 2 5 D4 6 D5 7 D6 D7 CCLK = 2 PAGE_SIZE = 4 PAGE_SIZE = 4 UG570_c4_06_110613 図 4-6 : マス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド 、 ページ読み出 し の波形 (ページ サイ ズ = 4、 初回ア ク セス CCLK = 2) コ ン フ ィ ギ ュ レーシ ョ ン時間 同期読み出 し パ ラ レル NOR フ ラ ッ シ ュ を使用 し た コ ン フ ィ ギ ュ レーシ ョ ンの時間を最短にす る には、 マ ス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド で EMCCLK を使用 し て x16 同期読み出 し を実行 し ます。 実際のアプ リ ケーシ ョ ンで、 同期読み出 し の コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク の最大周波数を求め る には、い く つかのシ ス テ ム要因を考慮す る 必要があ り ま す。 具体的には、 次のパ ラ メ ー タ ーを検討 し ます。 • フ ラ ッ シ ュ の Clock-to-Out (TCHQV) • FPGA デー タ セ ッ ト ア ッ プ タ イ ム (TBPIDCC) • 外部マ ス タ ー コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク 周波数 (EMCCLK レー ト ) ま たは FPGA の標準マ ス タ ー CCLK 周波数 (Configuration Rate) • 外部マ ス タ ー コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク 周波数誤差 (EMCCLK 誤差) ま たは FPGA のマ ス タ ー CCLK 周 波数誤差 (FMCCKTOL) 次に示す例は、 EMCCLK を使用 し ます。 デー タ シー ト に記載 さ れたパ ラ レル NOR フ ラ ッ シ ュ の Clock-to-Out お よ び FPGA のセ ッ ト ア ッ プ タ イ ムの仕様値を用いて、 EMCCLK の最大周波数を求め ます。 ま た、 ボー ド ト レース遅延 も 考慮す る 必要があ り ま す。 BPI 高速 コ ン フ ィ ギ ュ レーシ ョ ンの EMCCLK の最大値は、 式 4-1 で概算で き ます。 こ の 値は、 FPGA のデー タ シー ト に記載 さ れてい る EMCCLK 周波数 (FEMCCK) の仕様上限 よ り 小 さ く す る 必要があ り ま す。 1 MaxFreq = ------------------------------------------------------------------------------------------------------------------------------------------------------------FlashClockToOut ( T CHQV ) + FPGADataSetup ( T BPIDCC ) + BoardDelay UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 式 4-1 61 第 4 章 : マス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド ア プ リ ケーシ ョ ン で使用す る パ ラ レ ル NOR フ ラ ッ シ ュ の Clock-to-Out の仕様値が TCHQV = 5.5ns で、 FPGA デー タ セ ッ ト ア ッ プ タ イ ム が TBPIDCC = 3.5ns の場合、 EMCCLK の ク ロ ッ ク 耐性 と ボー ド 遅延が無視で き る 程度のベ ス ト ケース では EMCCLK の最大値が約 111MHz と な り 、 EMCCLK 周波数 (FEMCCK) の仕様上限 よ り 小 さ く な り ます。 非同期ページ読み出 し マ ス タ ー BPI モー ド の非同期ページ読み出 し では、同期読み出 し よ り も コ ン フ ィ ギ ュ レーシ ョ ンに時間がかか り ます が、 基本的な非同期読み出 し よ り は高速です。 ページ読み出 し では、 マルチ ワ ー ド ページか ら の最初の ワー ド 読み出 し に標準の非同期読み出 し モー ド と 同 じ 時間がかか り ますが、 同 じ ページか ら の 2 番目以降の ワー ド 読み出 し の時間 は大幅に短縮 さ れます。ページ読み出 し モー ド で使用する コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク の最大周波数を求め る 際 は、 次の タ イ ミ ン グ パ ラ メ ー タ ーを考慮する 必要があ り ます。 • 外部マ ス タ ー コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク 周波数 (EMCCLK レー ト ) ま たは FPGA の標準マ ス タ ー CCLK 周波数 (Configuration Rate) • 外部マ ス タ ー コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク 周波数誤差 (EMCCLK 誤差) ま たは FPGA のマ ス タ ー CCLK 周 波数誤差 (FMCCKTOL) • FPGA CCLK の立ち上が り エ ッ ジか ら ア ド レ ス が有効にな る ま での時間 (TBPICCO) • パ ラ レル NOR フ ラ ッ シ ュ のア ド レ ス指定か ら 出力が有効にな る ま での (ア ク セ ス) 時間 (TACC) • パ ラ レル NOR フ ラ ッ シ ュ のページ ア ド レ ス指定か ら 出力が有効にな る ま での (ア ク セ ス) 時間 (TAPA) • FPGA デー タ セ ッ ト ア ッ プ タ イ ム (TBPIDCC) • パ ラ レル NOR フ ラ ッ シ ュ の 1 ページ あ た り の ワー ド 数 (BPI ページ サ イ ズ) • 最初の ワー ド の読み出 し にかか る FPGA CCLK のサ イ ク ル数 (BPI 初回読み出 し サ イ ク ル) BPI ページ サ イ ズには、 パ ラ レル NOR フ ラ ッ シ ュ のデー タ シー ト に記載 さ れてい る 1 ページ あ た り の ワー ド 数を設 定 し ます。 ページの最初の ワ ー ド の読み出 し と 、 同 じ ページの 2 番目以降の ワー ド の読み出 し ではパ ラ レル NOR フ ラ ッ シ ュ の タ イ ミ ン グが異な る ため、 Configuration Rate お よ び First Read Cycle の属性値が適切か を確認す る には、 2 種類の タ イ ミ ン グ を確認す る 必要があ り ます。 1 つは Configuration Rate 設定です。 ワ ー ス ト ケース (最速) のマ ス タ ー CCLK 周波数の周期が、 FPGA のア ド レ ス出 力が有効にな る ま での時間、 フ ラ ッ シ ュ のページ ア ク セ ス時間、 お よ び FPGA セ ッ ト ア ッ プ タ イ ムの合計 よ り も 大 き く な る よ う に し ます (式 4-2 参照) 。 1 ------------------------------------------------------------------------------ ≥ T BPICCO + T APA + T BPIDCC ConfigRate × ( 1 + FMCCKTOL MAX ) 式 4-2 も う 1 つは First Read Cycle 設定です。 BPI 初回読み出 し サ イ ク ルには、 各ページの最初の ワー ド の読み出 し に割 り 当 て ら れ る FPGA の CCLK サ イ ク ル数を設定 し ます。 初回読み出 し サ イ ク ルに要する 時間は、 CCLK の 1 サ イ ク ルの長 さ に初回読み出 し サ イ ク ルの値を掛けた値 と 等 し く な り ます。初回読み出 し サ イ ク ルに要する ワ ース ト ケース の時間 が、 FPGA の ア ド レ ス 出力が有効に な る ま での時間、 パ ラ レ ル NOR フ ラ ッ シ ュ の読み出 し ア ク セ ス 時間、 お よ び FPGA セ ッ ト ア ッ プ タ イ ムの合計 よ り 大 き く な る よ う に し ます (式 4-3 参照)。 BPIFirstReadCycle ------------------------------------------------------------------------------ ≥ T BPICCO + T ACC + T BPIDCC ConfigRate × ( 1 + FMCCKTOL MAX ) UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 式 4-3 62 第 4 章 : マス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド 非同期読み出 し マ ス タ ー BPI モー ド の非同期読み出 し は、 パ ラ レル NOR フ ラ ッ シ ュ を用いた コ ン フ ィ ギ ュ レーシ ョ ンの中で最 も シ ンプルで、 ほかの読み出 し モー ド よ り も コ ン フ ィ ギ ュ レーシ ョ ン速度は非常に遅 く な り ます。 非同期読み出 し におけ る コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク 周波数を求め る 際は、 次のパ ラ メ ー タ ーを考慮する 必要があ り ます。 • 外部マ ス タ ー コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク 周波数 (EMCCLK レー ト ) ま たは FPGA の標準マ ス タ ー CCLK 周波数 (Configuration Rate) • 外部マ ス タ ー コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク 周波数誤差 (EMCCLK 誤差) ま たは FPGA のマ ス タ ー CCLK 周 波数誤差 (FMCCKTOL) • FPGA CCLK の立ち上が り エ ッ ジか ら ア ド レ ス が有効にな る ま での時間 (TBPICCO) • パ ラ レル NOR フ ラ ッ シ ュ のア ド レ ス指定か ら 出力が有効にな る ま での (ア ク セ ス) 時間 (TACC) • FPGA デー タ セ ッ ト ア ッ プ タ イ ム (TBPIDCC) コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク レー ト (EMCCLK レー ト ) は、 基本的に式 4-4 か ら 求め ら れます。 1 ------------------------------------------------------------------------------ ≥ T BPICCO + T ACC + T BPIDCC ConfigRate × ( 1 + FMCCKTOL MAX ) 式 4-4 電源投入シーケ ン スに関する注意事項 FPGA と パ ラ レル NOR、 フ ラ ッ シ ュ には異な る 電源レールか ら 電源が供給で き 、 同 じ 電源を使用 し た場合で も 異な る 立ち上が り 地点で応答す る こ と があ る ため、 電源投入時に FPGA と パ ラ レル NOR フ ラ ッ シ ュ の間で競合状態が発生 す る こ と があ り ます。 し たが っ て、 FPGA と パ ラ レ ル NOR フ ラ ッ シ ュ の電源投入シーケ ン スお よ び電源の立ち上が り には特に注意す る 必要があ り ま す。 パ ラ レ ル NOR フ ラ ッ シ ュ の イ ン タ ーフ ェ イ ス 信号は、 FPGA の専用バン ク 0 お よ び I/O バン ク 65 にあ り ます。 FPGA のパ ワーオン リ セ ッ ト シーケ ン ス が完了 し た後、FPGA はパ ラ レル NOR フ ラ ッ シ ュ にア ド レ ス を送信 し て ビ ッ ト ス ト リ ーム を取得 し ます。 パ ラ レル NOR フ ラ ッ シ ュ は、 パ ラ レル NOR フ ラ ッ シ ュ のパ ワーオン リ セ ッ ト シーケ ン ス が完了す る ま でア ド レ ス は受信可能な状態にな り ません。 パ ラ レル NOR フ ラ ッ シ ュ に対す る VCC 電源が立ち上 が る 前に FPGA の VCCINT お よ び VCCAUX 電源が立ち上がっ た場合、 フ ラ ッ シ ュ が応答可能にな る ま でに FPGA のア ド レ ス カ ウ ン タ ーがビ ッ ト ス ト リ ームの開始ア ド レ ス を越えて し ま う こ と があ り ます。FPGA がア ド レ ス を送信す る 前にパ ラ レ ル NOR フ ラ ッ シ ュ がア ド レ ス を受信可能な状態にな る よ う に、 シ ス テ ム を設計す る 必要があ り ます。 詳 細は、 第 1 章の 「フ ラ ッ シ ュ の電源投入シーケ ン ス に関す る 注意事項」 を参照 し て く だ さ い。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 63 第 4 章 : マス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド フ ァ イル生成 マ ス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド の ソ リ ュ ーシ ョ ン を イ ン プ リ メ ン ト す る には、 デザ イ ンの ビ ッ ト ス ト リ ーム を作成後、 ビ ッ ト ス ト リ ーム を フ ラ ッ シ ュ プ ロ グ ラ ム フ ァ イ ルに変換 し てか ら パ ラ レ ル NOR フ ラ ッ シ ュ デ バ イ ス にプ ロ グ ラ ムす る 必要があ り ま す。 マ ス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド で ビ ッ ト ス ト リ ーム を生成 す る 際は、 次に示す主要な プ ロ パテ ィ を 確認す る 必要が あ り ま す。 こ れ ら のプ ロ パテ ィ は、 Vivado ツ ールの [Edit Device Properties] ダ イ ア ロ グ ボ ッ ク ス で も 設定で き ます。 詳細は、 『Vivado Design Suite ユーザー ガ イ ド : プ ロ グ ラ ム お よ びデバ ッ グ』 (UG908) [参照 5] を参照 し て く だ さ い。 マ ス タ ー モー ド では、 EMCCLK (External Master Configuration Clock) プ ロ パテ ィ (BITSTREAM.CONFIG. EXTMASTERCCLK_EN) を使用 し て、 よ り 高精度な コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク を利用可能です。 ビ ッ ト ス ト リ ームのプ ロ パテ ィ で EMCCLK を有効に し 、 適切な分周比を指定す る 必要があ り ます。 詳細は、 第 1 章の 「外部マ ス タ ー コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク (EMCCLK) オプシ ョ ン」 を参照 し て く だ さ い。 set_property BITSTREAM.CONFIG.EXTMASTERCCLK_EN Disable|div-8|div-4|div-2|div-1 一部のパ ラ レ ル NOR フ ラ ッ シ ュ では、 同期読み出 し を 有効に し て コ ン フ ィ ギ ュ レ ーシ ョ ン 時間 を 短縮で き ま す。 BITSTREAM.CONFIG.BPI_SYNC_MODE プ ロ パテ ィ を、 Micron MT28GU の場合は Type1、 Micron P30/P33 の場合は Type2 と 指定 し て く だ さ い。 set_property BITSTREAM.CONFIG.BPI_SYNC_MODE Disable|Type1|Type2 マ ス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ンで非同期読み出 し モー ド を使用 し 、 なおかつ コ ン フ ィ ギ ュ レーシ ョ ン時間を短 縮 し たい場合はページ モー ド お よ び読み出 し サ イ ク ル オプシ ョ ン を使用で き ます。 こ れ ら の機能を有効にす る には、 BITSTREAM.CONFIG.BPI_PAGE_SIZE お よ び BITSTREAM.CONFIG.BPI_1ST_READ_CYCLE プ ロ パ テ ィ を 使用 し ま す。 set_property BITSTREAM.CONFIG.BPI_PAGE_SIZE 1|4|8 • ページ サ イ ズは、 1 (デフ ォ ル ト )、 4、 8 のいずれかです。 フ ラ ッ シ ュ の実際のページ サ イ ズが 8 よ り 大 き い場合 は、 8 を指定す る と 最 も 効率が よ く な り ます。 set_property BITSTREAM.CONFIG.BPI_1ST_READ_CYCLE 1|2|3|4 • 初回ア ク セ ス の CCLK サ イ ク ルは、 1 (デフ ォ ル ト )、 2、 3、 4 のいずれかです。 ページ サ イ ズが 1 の場合は CCLK サ イ ク ルを 1 に指定 し て く だ さ い。 ビ ッ ト ス ト リ ーム を生成 し た ら 、 フ ラ ッ シ ュ プ ロ グ ラ ム フ ァ イ ル生成時のデー タ 順が正 し く な る よ う に注意が必要 です。 ザ イ リ ン ク ス FPGA では、 デー タ ビ ッ ト D00 が最上位ビ ッ ト (MSB) で、 ビ ッ ト D15 が最下位ビ ッ ト (LSB) で す。 し たがっ て、 コ ン フ ィ ギ ュ レーシ ョ ン デー タ フ ァ イ ル内のデー タ 順 と FPGA で予測 さ れ る デー タ 順の対応関係 を理解 し てお く 必要があ り ます。 UltraScale FPGA のビ ッ ト ス ト リ ーム フ ァ イ ル (.bit、 .rbt) はバ イ ト ス ワ ッ プ さ れま せん。 MCS フ ォーマ ッ ト は、 デフ ォ ル ト でバ イ ト ス ワ ッ プ さ れ ます。 こ の規則は、 ザ イ リ ン ク ス のすべての FPGA で共通です。 マ ス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド のデー タ 順は、 SelectMAP のデー タ 順 と 同 じ です。 フ ラ ッ シ ュ プ ロ グ ラ ム フ ァ イ ルを生成す る 際は、 使用す る パ ラ レ ル NOR フ ラ ッ シ ュ に応 じ てデー タ バ ス幅のオプシ ョ ン を x8 ま たは x16 に正 し く 設定す る 必要があ り ます。 詳細は、 『Vivado Design Suite ユーザー ガ イ ド : プ ロ グ ラ ムお よ びデバ ッ グ』 (UG908) [参照 5] を参照 し て く だ さ い。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 64 第 4 章 : マス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド パラ レル NOR フ ラ ッ シュのプログラ ミ ング オプシ ョ ン パ ラ レル NOR フ ラ ッ シ ュ メ モ リ デバ イ ス か ら UltraScale FPGA を コ ン フ ィ ギ ュ レーシ ョ ンす る 前に、 コ ン フ ィ ギ ュ レーシ ョ ン デー タ を フ ラ ッ シ ュ にプ ロ グ ラ ム し てお く 必要があ り ます。 パ ラ レル NOR フ ラ ッ シ ュ デバ イ ス には、 プ ロ グ ラ ミ ン グ用の イ ン タ ーフ ェ イ ス が 1 つあ り ます。 こ の イ ン タ ーフ ェ イ ス にデー タ を供給す る 方法は、 主に次の 3 つがあ り ます。 • BPM Microsystems や Data I/O な ど のサー ド パーテ ィ が提供する プ ロ グ ラ マに よ る 、 量産向けのオ フ ボー ド プ ロ グ ラ ム。 量産プ ロ グ ラ ミ ン グのサポー ト の詳細は、 選択 し た フ ラ ッ シ ュ ベン ダーの ウ ェ ブサ イ ト を参照 し て く だ さ い。 ° • サー ド パーテ ィ ベン ダーの JTAG ツール プ ロ グ ラ ミ ン グ ソ リ ュ ーシ ョ ン を使用 し た量産 イ ン シ ス テ ム プ ロ グ ラ ム。 ° • 量産アプ リ ケーシ ョ ンで、 フ ラ ッ シ ュ のプ ロ グ ラ ム時間を短縮する こ と が最優先 さ れ る 場合は、 こ の方法を 使用 し ます。 オ フ ボー ド では、 フ ラ ッ シ ュ へ直接接続す る こ と でオーバーヘ ッ ド を制限で き る ため、 多 く の 場合にプ ロ グ ラ ム時間を短縮で き ます。 さ ら に こ の ソ リ ュ ーシ ョ ンでは、 プ ロ グ ラ ムに高い電圧オプシ ョ ン を利用す る こ と も 可能です。 量産環境でオン ボー ド プ ロ グ ラ ムが必要な場合に一般的な方法ですが、 オ フ ボー ド プ ロ グ ラ ムに比べ る と 低速です。 少量のプ ロ ト タ イ ピ ン グ環境におけ る Vivado デバ イ ス プ ロ グ ラ マ を使用 し た間接 イ ン シ ス テ ム プ ロ グ ラ ム。 ° オン ボー ド でプ ロ グ ラ ムす る 必要があ る 場合は、 こ の方法が一般的です。 こ の方法は反復設計に も 対応で き 、 ラ ボ環境でのデバ ッ グに も 非常に便利です。 Vivado プ ロ グ ラ ム ツールには、 パ ラ レル NOR フ ラ ッ シ ュ を間 接的にプ ロ グ ラ ムす る 機能があ り ます。 まず、 FPGA デザ イ ン ビ ッ ト ス ト リ ーム を ダ ウ ン ロ ー ド し 、 Vivado ツールか ら FPGA を経由 し てパ ラ レ ル NOR フ ラ ッ シ ュ への接続を確立 し ま す。 こ の方法を使用す る 場合、 フ ラ ッ シ ュ 動作時にそれ以前の FPGA メ モ リ デザ イ ン の内容が失われ る 点に注意 し て く だ さ い。 マ ス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド の イ ン タ ーフ ェ イ ス で使用 し ない I/O 信号は無効にな り ます。 こ のプ ロ セ ス におけ る FPGA の動作、お よ びシ ス テ ム内のほかのデバ イ ス に対す る 影響を把握 し てお く 必要があ り ま す。 Vivado プ ロ グ ラ ム ツールでサポー ト さ れ る フ ラ ッ シ ュ フ ァ ミ リ 製品については、 『Vivado Design Suite ユーザー ガ イ ド : プ ロ グ ラ ムお よ びデバ ッ グ』 (UG908) [参照 5] を参照 し て く だ さ い。 パ ラ レ ル NOR フ ラ ッ シ ュ を使用す る BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド の具体的な使用方法は、 『UltraScale FPGA の BPI コ ン フ ィ ギ ュ レーシ ョ ンお よ びフ ラ ッ シ ュ プ ロ グ ラ ム』 (XAPP1220) [参照 10] を参照 し て く だ さ い。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 65 第 5章 SelectMAP コ ン フ ィ ギ ュ レーシ ョ ン モー ド は じ めに SelectMAP コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス には、FPGA デバ イ ス の コ ン フ ィ ギ ュ レーシ ョ ン ロ ジ ッ ク と 接 続す る ための 8 ビ ッ ト 、 16 ビ ッ ト 、 ま たは 32 ビ ッ ト の双方向デー タ バ ス があ り 、 コ ン フ ィ ギ ュ レ ーシ ョ ンお よ び リ ー ド バ ッ ク の両方に使用 さ れます。マ ス タ ー SelectMAP イ ン タ ーフ ェ イ ス と ス レーブ SelectMAP イ ン タ ーフ ェ イ ス の両方がサポー ト さ れます。 9 ページの 「UltraScale FPGA フ ァ ミ リ 間の機能の違い」 を参照 し て く だ さ い。 SelectMAP コ ン フ ィ ギュ レーシ ョ ン イ ン タ ーフ ェ イ ス CCLK は、 マ ス タ ー SelectMAP モー ド では出力 と な り 、 ス レ ーブ SelectMAP モー ド では入力 と な り ま す。 ス レ ーブ SelectMAP モー ド が推奨 さ れます。 従来アプ リ ケーシ ョ ン用にマ ス タ ー SelectMAP がサポー ト さ れてい ます。 ザ イ リ ン ク ス プ ラ ッ ト フ ォーム フ ラ ッ シ ュ PROM は UltraScale™ アーキ テ ク チ ャ FPGA をサポー ト し てい ません。 パ ラ レ ル モー ド の場合は、 BPI コ ン フ ィ ギ ュ レーシ ョ ン を推奨 し ます。 推奨 : パ ラ レ ル タ イ プの フ ラ ッ シ ュ デバ イ ス か ら コ ン フ ィ ギ ュ レーシ ョ ン を実行す る 手段 と し ては、 主にマ ス タ ー BPI モー ド を使用 し ます。新規デザ イ ン でのマ ス タ ー SelectMAP モー ド は推奨 さ れてい ません。9 ページの 「UltraScale FPGA フ ァ ミ リ 間の機能の違い」 を参照 し て く だ さ い。 リ ー ド バ ッ ク お よ び読み出 し 方向でのデー タ バス の使用は、 ス レーブ SelectMAP モー ド でのみ可能です。 SelectMAP のバ ス幅は自動的に検出 さ れます。 SelectMAP バ ス を使用 し 、 1 つま たは複数のデバ イ ス を コ ン フ ィ ギ ュ レーシ ョ ン で き ます。 SelectMAP モー ド で FPGA を コ ン フ ィ ギ ュ レーシ ョ ンす る には、 次の方法があ り ます。 • 単一デバ イ ス ス レーブ SelectMAP 一般的な構成では、 デー タ お よ び ク ロ ッ ク を供給す る プ ロ セ ッ サを使用 し ます。 こ のほか、 CPLD な ど のプ ロ グ ラ マブル ロ ジ ッ ク デバ イ ス を コ ン フ ィ ギ ュ レーシ ョ ン マネージ ャ ー と し て使用 し 、FPGA の ス レーブ SelectMAP イ ン タ ーフ ェ イ ス を利用 し て FPGA を コ ン フ ィ ギ ュ レーシ ョ ンす る 方法 も あ り ます。 • 複数デバ イ ス デ イ ジー チ ェーン SelectMAP バス フ ラ ッ シ ュ メ モ リ ま たはプ ロ セ ッ サか ら 、 複数の FPGA を順番に異な る イ メ ージで コ ン フ ィ ギ ュ レーシ ョ ン し ます。 • 複数デバ イ ス連結の SelectMAP フ ラ ッ シ ュ メ モ リ ま たはプ ロ セ ッ サか ら 、 複数の FPGA を並列に同 じ イ メ ージで コ ン フ ィ ギ ュ レーシ ョ ン し ま す。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 66 第 5 章 : SelectMAP コ ン フ ィ ギ ュ レーシ ョ ン モー ド こ の章では、マ ス タ ー SelectMAP お よ びス レーブ SelectMAP の基本的な コ ン フ ィ ギ ュ レーシ ョ ン方法について説明 し ます。 図 5-1 に示す SelectMAP コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス の ピ ンは、 24 ページの表 1-9 で説明 さ れてい ま す。 X-Ref Target - Figure 5-1 M[2:0] D[31:00] INIT_B PUDC_B CSO_B PROGRAM_B RDWR_B CSI_B DONE CCLK UG570_c5_01_120913 図 5-1 : SelectMAP コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ー フ ェ イ ス 単一デバイ スの SelectMAP コ ン フ ィ ギ ュ レーシ ョ ン マ イ ク ロ プ ロ セ ッ サ ま たは CPLD を使用 し て単一の FPGA を コ ン フ ィ ギ ュ レーシ ョ ンす る カ ス タ ム アプ リ ケーシ ョ ン では、 マ ス タ ー SelectMAP モー ド (FPGA か ら の CCLK を使用) ま たは ス レーブ SelectMAP モー ド を利用で き ます が (図 5-2 参照)、 ス レーブ SelectMAP モー ド が推奨 さ れます。 マ イ ク ロ プ ロ セ ッ サを使用す る ザ イ リ ン ク ス FPGA の コ ン フ ィ ギ ュ レーシ ョ ンの詳細は、 『ス レーブ シ リ アルま たは SelectMAP モー ド でマ イ ク ロ プ ロ セ ッ サ を使用 し た 7 シ リ ーズ FPGA の コ ン フ ィ ギ ュ レーシ ョ ン』 (XAPP583) [参照 11] を参照 し て く だ さ い。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 67 第 5 章 : SelectMAP コ ン フ ィ ギ ュ レーシ ョ ン モー ド X-Ref Target - Figure 5-2 VCCINT Tie to battery supply when needed, otherwise tie to VCCAUX or GND; see VBATT section Tie to VCCINT or GND; see Power On Reset section VCC VCCAUX VCCINT VCCAUX VBATT POR_OVERRIDE VCCO_0 Bank 65 VCC SELECT VCCO_65 CSI_B CSO_B D[31:04] D[31:0] Tie to VCCO_0 or GND PUDC_B VCCO_0 VCCO_0 READ/WRITE CLOCK RDWR_B PROGRAM_B PROGRAM_B CCLK INIT_B VCCO_0 4.7 kΩ VCCO_0 M2 M1 M0 DONE INIT_B GND VCCO_0 UltraScale FPGA 4.7 kΩ Configuration Memory Source CFGBVS 4.7 kΩ Microprocessor or CPLD D[03:00] Bank 0 Tie to VCCO_0 or GND; VCCO_0 see Configuration Banks Voltage Select section DONE TMS TCK TDI TDO GND PROGRAM_B VCCO_0 1 X i l in x Ca b l e He ad e r (J TA G In te rfac e) VREF TMS TCK TDO TDI N.C . N.C . 14 ug570_c2_05_031915 図 5-2 : ス レーブ SelectMAP モー ド の コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ー フ ェ イ スの例 図 5-2 について説明 し ます。 1. 可能な イ ンプ リ メ ン テーシ ョ ンの詳細は、 『ス レーブ シ リ アルま たは SelectMAP モー ド でマ イ ク ロ プ ロ セ ッ サを 使用 し た 7 シ リ ーズ FPGA の コ ン フ ィ ギ ュ レーシ ョ ン』 (XAPP583) [参照 11] を参照 し て く だ さ い。 2. プ ロ セ ッ サ ま たは CPLD の I/O は、 接続 さ れてい る FPGA ピ ン と 互換性のあ る 電圧をサポー ト し てい る 必要があ り ます。 3. DONE ピ ンはオープン ド レ イ ン出力です。 DONE 信号の詳細は、 24 ページの表 1-9 を参照 し て く だ さ い。 4. INIT_B ピ ンは双方向オープン ド レ イ ン ピ ンで、外部プルア ッ プ抵抗が必要です。INIT_B 信号の詳細は、24 ペー ジの表 1-9 を参照 し て く だ さ い。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 68 第 5 章 : SelectMAP コ ン フ ィ ギ ュ レーシ ョ ン モー ド 5. 1 つの FPGA のみを コ ン フ ィ ギ ュ レーシ ョ ンする 場合、 かつ リ ー ド バ ッ ク が不要な場合は、 CSI_B お よ び RDWR_B 信号を GND に接続で き ます。 6. CCLK のシ グナル イ ン テ グ リ テ ィ が重要です。 7. ス レーブ SelectMAP コ ン フ ィ ギ ュ レーシ ョ ンの場合、 デー タ バ ス幅は x8、 x16、 ま たは x32 が可能です。 8. FPGA の PUDC_B ピ ン を GND に接続す る と 電源投入後 と コ ン フ ィ ギ ュ レーシ ョ ン中に SelectIO ピ ンの内部プル ア ッ プが有効にな り 、 VCCO_0 に接続す る と SelectIO ピ ンが ト ラ イ ス テー ト 状態にな り ます。 PUDC_B 信号の詳 細は、 24 ページの表 1-9 を参照 し て く だ さ い。 SelectMAP デー タ 読み込み SelectMAP イ ン タ ーフ ェ イ ス では、 デー タ を連続的ま たは非連続的に読み込む こ と が可能です。 デー タ 読み込みは、 CSI_B、 RDWR_B、 お よ び CCLK 信号で制御 し ます。 CSI_B チ ッ プ セ レ ク ト 入力 (CSI_B) は、 SelectMAP バ ス を有効に し ます。 CSI_B が High の と き 、 FPGA は SelectMAP イ ン タ ーフ ェ イ ス を無視 し 、 入力デー タ を取 り 込んだ り 、 出力を駆動す る こ と はあ り ま せん。 D[31:00] ピ ンはハ イ イ ン ピーダ ン ス にな り 、 RDWR_B は無視 さ れます。 • CSI_B = 0 の場合、 デバ イ ス の SelectMAP イ ン タ ーフ ェ イ ス は有効 • CSI_B = 1 の場合、 デバ イ ス の SelectMAP イ ン タ ーフ ェ イ ス は無効 SelectMAP イ ン タ ーフ ェ イ ス で コ ン フ ィ ギ ュ レーシ ョ ン さ れ る デバ イ ス が 1 つのみ、かつ リ ー ド バ ッ ク が不要な場合、 CSI_B 信号を GND に接続で き ます。 RDWR_B RDWR_B は FPGA への入力で、 デー タ ピ ンが入力ま たは出力か を選択 し ます。 • RDWR_B = 0 の場合、 デー タ ピ ンは入力 (FPGA に書 き 込む) • RDWR_B = 1 の場合、 デー タ ピ ンは出力 (FPGA か ら 読み出す) コ ン フ ィ ギ ュ レーシ ョ ン の際は、 RDWR_B は書 き 込みに設定 (RDWR_B = 0) す る 必要があ り ます。 リ ー ド バ ッ ク を 実行す る には、 CSI_B がアサー ト さ れてい る 間に RDWR_B を読み出 し 制御に設定 (RDWR_B = 1) し て く だ さ い。 CSI_B が Low の間に RDWR_B の値が Low か ら High へ遷移する と ABORT が生 じ 、 コ ン フ ィ ギ ュ レーシ ョ ン I/O が 非同期的に入力か ら 出力へ変更 し ます。 ABORT ス テー タ ス は ク ロ ッ ク に同期 し てデー タ ピ ンに現れます。 CSI_B が Low の間に RDWR_B の値が High か ら Low へ遷移す る 場合 も ABORT が生 じ て コ ン フ ィ ギ ュ レーシ ョ ン I/O が非同期 的に出力か ら 入力へ変更 し ま すが、 ABORT ス テー タ ス の リ ー ド バ ッ ク はあ り ま せん。 リ ー ド バ ッ ク が不要な場合、 RDWR_B はグ ラ ン ド に接続す る か、 SelectMAP ABORT 時のデバ ッ グに使用で き ます。 CSI_B がデ ィ アサー ト さ れてい る 場合、 RDWR_B 信号は無視 さ れます。 デー タ ピ ンの ト ラ イ ス テー ト の読み出 し /書 き 込み制御は非同期です。 CSI_B がアサー ト さ れてい る 間、 RDWR_B を読み出 し に設定 (RDWR_B = 1、 リ ー ド バ ッ ク ) す る と 、 FPGA は CCLK に関係な く SelectMAP デー タ を ア ク テ ィ ブに駆動 し ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 69 第 5 章 : SelectMAP コ ン フ ィ ギ ュ レーシ ョ ン モー ド CCLK SelectMAP デー タ バ ス のすべての動作は、 CCLK に同期 し てい ます。 RDWR_B が書 き 込み制御に設定 さ れてい る 場 合 (RDWR_B = 0、 コ ン フ ィ ギ ュ レーシ ョ ン)、 FPGA は SelectMAP デー タ ピ ン を CCLK の立ち上が り エ ッ ジでサンプ リ ン グ し ます。 RDWR_B が読み出 し 制御に設定 さ れてい る 場合 (RDWR_B = 1、 リ ー ド バ ッ ク )、 FPGA は SelectMAP デー タ ピ ン を CCLK の立ち上が り エ ッ ジで更新 し ます。 ス レーブ SelectMAP モー ド では、 CCLK を停止す る こ と に よ っ て コ ン フ ィ ギ ュ レーシ ョ ン を中断で き ます (71 ページ の 「SelectMAP デー タ の不連続読み込み」 参照)。 SelectMAP デー タ の連続読み込み デー タ の連続読み出 し は、 コ ン フ ィ ギ ュ レーシ ョ ン コ ン ト ロ ー ラ ーか ら コ ン フ ィ ギ ュ レーシ ョ ン デー タ ス ト リ ーム を 中断な く 供給可能な ア プ リ ケーシ ョ ン で使用 し ま す。 電源投入後、 コ ン フ ィ ギ ュ レ ーシ ョ ン コ ン ト ロ ー ラ ーは RDWR_B 信号を書 き 込み制御に設定 (RDWR_B = 0) し 、 CSI_B 信号を アサー ト (CSI_B = 0) し ます。 CSI_B がアサー ト さ れ る 前に RDWR_B は Low 駆動す る 必要があ り 、 そ う し ない と 次の CCLK で ABORT が発生 し ます。 デバ イ ス は、 CCLK の次の立ち上が り エ ッ ジでデー タ ピ ンのサンプ リ ン グ を開始 し ます。 コ ン フ ィ ギ ュ レーシ ョ ン で は、 バ ス幅が決定す る ま で D[07:00] のみがサンプ リ ン グ さ れます。 バ ス幅が決定す る と 、 同期幅を検出す る ために適 切な幅のデー タ バ ス がサンプ リ ン グ さ れます。同期ワー ド がデバ イ ス に伝搬 さ れた後、 コ ン フ ィ ギ ュ レーシ ョ ンが開 始 し ます。 コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ームの読み込み後に、デバ イ ス は ス タ ー ト ア ッ プ シーケ ン ス を開始 し ます。デ バ イ ス は、 ビ ッ ト ス ト リ ームで指定 さ れた ス タ ー ト ア ッ プ シーケ ン ス で、 DONE 信号を High にアサー ト し ます。 コ ン フ ィ ギ ュ レーシ ョ ン コ ン ト ロ ー ラ ーは、 ス タ ー ト ア ッ プ シーケ ン ス の完了ま で CCLK パルス を継続 し て送信す る 必要があ り ます。 DONE が High にな っ た後で も 、 CCLK パルス が数サ イ ク ル必要な場合があ り ます。 CSI_B お よ び RDWR_B 信号は、 コ ン フ ィ ギ ュ レーシ ョ ン後にデ ィ アサー ト で き ますが、 アサー ト し た ま ま で も か ま い ません。 SelectMAP ポー ト はア ク テ ィ ブでな く な っ てい る ため、 こ こ で RDWR_B を ト グル し て も ABORT は生 じ ません。 図 5-3 に、 SelectMAP コ ン フ ィ ギ ュ レーシ ョ ンにおけ る 連続的なデー タ 読み出 し の タ イ ミ ン グ を示 し ます。 X-Ref Target - Figure 5-3 PROGRAM_B (3) INIT_B CCLK (11) (5) (1) CSI_B (2) (12) (4) RDWR_B (6) D[07:00] Byte 0 (7) Byte 1 (8) (9) Byte n (10) DONE 7UG570_c5_03_100614 図 5-3 : x8 SelectMAP デー タ の連続的な読み込み 図 5-3 について説明 し ます。 1. SelectMAP バス にデバ イ ス が 1 つ し かない場合、 CSI_B 信号を Low に接続で き ます。 CSI_B が Low に接続 さ れ ていない と き は、 随時アサー ト 可能です。 2. リ ー ド バ ッ ク が不要な場合は RDWR_B を Low に接続で き ます。 CSI_B を アサー ト し た後は、 RDWR_B を ト グ ル し ないで く だ さ い。 ト グルす る と 次の CCLK で ABORT が生 じ ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 70 第 5 章 : SelectMAP コ ン フ ィ ギ ュ レーシ ョ ン モー ド 3. モー ド ピ ンは、 INIT_B が High にな っ た と き にサンプ リ ン グ さ れます。 4. 次の CCLK で ABORT の発生を回避す る ため、 CSI_B よ り 前に RDWR_B を アサー ト する 必要があ り ます。 5. CSI_B を アサー ト し て SelectMAP イ ン タ ーフ ェ イ ス を有効に し ます。 6. CSI_B のアサー ト 後の最初の CCLK の立ち上が り エ ッ ジで、 最初のバ イ ト が読み込まれます。 7. 各 CCLK の立ち上が り エ ッ ジで 1 バ イ ト の コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ームが読み込まれます。 8. ス タ ー ト ア ッ プ コ マ ン ド の読み込み後に、 デバ イ ス は ス タ ー ト ア ッ プ シーケ ン ス を開始 し ます。 9. ス タ ー ト ア ッ プ シーケ ン ス は、 最短で CCLK の 8 サ イ ク ル間継続 さ れます。 10. ス タ ー ト ア ッ プ シーケ ン ス で DONE ピ ンは High にな り ます。ス タ ー ト ア ッ プ シーケ ン ス を完了す る ために追加 の CCLK が必要な場合があ り ます。 11. コ ン フ ィ ギ ュ レーシ ョ ンが完了 し た ら 、 CSI_B 信号をデ ィ アサー ト で き ます。 12. CSI_B 信号がデ ィ アサー ト さ れた ら 、 RDWR_B をデ ィ アサー ト で き ます。 13. ス レーブ SelectMAP の場合、 デー タ バ ス は x8、 x16、 ま たは x32 が可能です。 SelectMAP デー タ の不連続読み込み デー タ の不連続読み込みは、 コ ン フ ィ ギ ュ レーシ ョ ン コ ン ト ロ ー ラ ーか ら コ ン フ ィ ギ ュ レーシ ョ ン デー タ を連続的 に供給で き ないアプ リ ケーシ ョ ンで使用 し ます。 た と えば、 新 し いデー タ を フ ェ ッ チす る 間 コ ン フ ィ ギ ュ レーシ ョ ン が中断す る よ う な コ ン ト ロ ー ラ ーが こ れに該当 し ます。 コ ン フ ィ ギ ュ レーシ ョ ン を一時停止 さ せ る 方法は 2 つあ り ます。1 つは CSI_B 信号をデ ィ アサー ト する 方法 (図 5-4 に 示すフ リ ー ラ ン ニ ン グ CCLK 手法) で、 も う 1 つは、 CCLK を停止する 方法 (図 5-5 に示す制御 CCLK 手法) です。 X-Ref Target - Figure 5-4 PROGRAM_B (2) INIT_B (3) (4) (5) (6) (7) (8) (9) (10) (11) (12) CCLK CSI_B D[n:00] (1) RDWR_B UG570_c5_04_100614 図 5-4 : フ リ ー ラ ン ニ ング CCLK 手法を使用 し た SelectMAP デー タ の不連続読み込み 図 5-4 について説明 し ます。 1. RDWR_B を Low に駆動 し 、 D[n:00] ピ ン を コ ン フ ィ ギ ュ レーシ ョ ンの入力 と し て設定 し ます。 リ ー ド バ ッ ク が不 要な場合は RDWR_B を Low に接続で き ます。 CSI_B を アサー ト し た後は、 RDWR_B を ト グル し ないで く だ さ い。 ト グルす る と 次の CCLK で ABORT が生 じ ます。 2. INIT_B が High にな る と 、 デバ イ ス は コ ン フ ィ ギ ュ レーシ ョ ン可能な状態 と な り ます。 3. CCLK の立ち上が り エ ッ ジで 1 バ イ ト が読み込まれます。 ス レーブ SelectMAP の場合、 デー タ バ ス は x8、 x16、 ま たは x32 が可能です。 4. CCLK の立ち上が り エ ッ ジで 1 バ イ ト が読み込まれます。 5. ユーザーが CSI_B をデ ィ アサー ト し 、 こ のバ イ ト は無視 さ れます。 6. ユーザーが CSI_B をデ ィ アサー ト し 、 こ のバ イ ト は無視 さ れます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 71 第 5 章 : SelectMAP コ ン フ ィ ギ ュ レーシ ョ ン モー ド 7. CCLK の立ち上が り エ ッ ジで 1 バ イ ト が読み込まれます。 8. CCLK の立ち上が り エ ッ ジで 1 バ イ ト が読み込まれます。 9. ユーザーが CSI_B をデ ィ アサー ト し 、 こ のバ イ ト は無視 さ れます。 10. CCLK の立ち上が り エ ッ ジで 1 バ イ ト が読み込まれます。 11. CCLK の立ち上が り エ ッ ジで 1 バ イ ト が読み込まれます。 12. CCLK の立ち上が り エ ッ ジで 1 バ イ ト が読み込まれます。 X-Ref Target - Figure 5-5 (4) (5) (6) CCLK (3) CSI_B (2) RDWR_B (1) D[n:00] Byte 0 Byte 1 Byte n UG570_c5_05_101414 図 5-5 : CCLK 制御法を使用 し た SelectMAP デー タ の不連続読み込み 図 5-5 について説明 し ます。 1. CSI_B がデ ィ アサー ト さ れてい る 間、 デー タ ピ ンはハ イ イ ン ピーダ ン ス状態です。 ス レーブ SelectMAP の場合、 デー タ バ ス は x8、 x16、 ま たは x32 が可能です。 2. CSI_B がデ ィ アサー ト さ れてい る 間、 RDWR_B はデバ イ ス に影響を与え ません。 3. ユーザーが CSI_B を アサー ト し ます。 デバ イ ス は、 CCLK の立ち上が り エ ッ ジで コ ン フ ィ ギ ュ レーシ ョ ン デー タ の読み込みを開始 し ます。 4. CCLK の立ち上が り エ ッ ジで 1 バ イ ト が読み込まれます。 5. CCLK の立ち上が り エ ッ ジで 1 バ イ ト が読み込まれます。 6. CCLK の立ち上が り エ ッ ジで 1 バ イ ト が読み込まれます。 SelectMAP のデー タ 順 通常、 SelectMAP コ ン フ ィ ギ ュ レーシ ョ ンは、 マ イ ク ロ プ ロ セ ッ サ ま たは CPLD にあ る ユーザー アプ リ ケーシ ョ ン を 使用 し て駆動す る か、 場合に よ っ ては、 その他の FPGA デバ イ ス を使用 し て駆動 し ます。 こ れ ら のアプ リ ケーシ ョ ン では、 コ ン フ ィ ギ ュ レーシ ョ ン デー タ フ ァ イ ル内のデー タ 順 と FPGA で予測 さ れ る デー タ 順の対応関係を理解 し て お く 必要があ り ます。 SelectMAP x8 モー ド では、CCLK の 1 サ イ ク ルで 1 バ イ ト の コ ン フ ィ ギ ュ レーシ ョ ン デー タ が読み込まれ、各バ イ ト の MSB は D00 ピ ンに現れます。 D00 = MSB、 D07 = LSB と い う 規則は、 その他のデバ イ ス が採用 し てい る 一般的な も の と は異な り ます。 こ の規則の違いが、 カ ス タ ム コ ン フ ィ ギ ュ レーシ ョ ン ソ リ ュ ーシ ョ ン を設計す る 際に混乱の 元 と な る こ と があ り ます。 表 5-1 に、 16 進数の 0xABCD を SelectMAP デー タ バ ス に読み込む方法を示 し ます。 表 5-1 : SelectMAP 8 ビ ッ ト モー ド のビ ッ ト 順 CCLK サイ クル 16 進数 D00 D01 D02 D03 D04 D05 D06 D07 1 0xAB 1 0 1 0 1 0 1 1 2 0xCD 1 1 0 0 1 1 0 1 注記 : 1. D[07:00] は SelectMAP モー ド のデー タ ピ ンです。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 72 第 5 章 : SelectMAP コ ン フ ィ ギ ュ レーシ ョ ン モー ド こ の よ う な一般的な規則 と 異な る デー タ 順で も 問題な く 扱え る アプ リ ケーシ ョ ン も あ り ますが、 そ う でない場合は、 ソ ース コ ン フ ィ ギ ュ レーシ ョ ン デー タ フ ァ イ ルを ビ ッ ト ス ワ ッ プ し て、デー タ ス ト リ ームの各バ イ ト 内のビ ッ ト 順 を逆に し た方が扱いやす く な る こ と があ り ます。 こ れ ら のアプ リ ケーシ ョ ンでは、 ザ イ リ ン ク ス の ツールを使用 し て ビ ッ ト 順を逆に し た フ ァ イ ルを生成で き ます。 表 5-2 に、 SelectMAP x8、 x16、 x32 デー タ バ ス幅でのビ ッ ト 順を示 し ます。 表 5-2 : ビ ッ ト 順 SelectMAP デー タ ピ ン デー タ バス幅 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00 x32 24 25 26 27 28 29 30 31 16 17 18 19 20 21 22 23 x16 8 9 10 11 12 13 14 25 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 25 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 x8 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 73 第 6章 バウン ダ リ スキ ャ ンおよび JTAG コ ン フ ィ ギ ュ レーシ ョ ン は じ めに Kintex UltraScale お よ び Virtex® UltraScale FPGA は、テ ス ト ア ク セ ス ポー ト (TAP) お よ びバ ウ ン ダ リ ス キ ャ ン アーキ テ ク チ ャ を定義 し た IEEE 規格 1149.1 お よ び 1149.6 (ACJTAG) を サポー ト し てい ます。 一般に、 TAP ( タ ッ プ ア ク セ ス ポー ト ) と バ ウ ン ダ リ ス キ ャ ン アーキ テ ク チ ャ を 総称 し て JTAG と 呼んでい ま す。 JTAG と は 「Joint Test Action Group」 の略で、 こ の規格を制定 し た委員会のグループ名です。 バ ウ ン ダ リ ス キ ャ ン アーキ テ ク チ ャ は、 個々の コ ン ポーネ ン ト と それ ら の接続のテ ス ト を ボー ド レベルで実行す る ための も のです。 PC ボー ド 層数の増加やボー ド 表面 へのマ ウ ン ト 技術が一層高密度で高度にな る につれ、バ ウ ン ダ リ ス キ ャ ン テ ス ト は重要なデバ ッ グ用の規格 と し て広 く 使用 さ れ る よ う にな っ てい ます。 バ ウ ン ダ リ ス キ ャ ン回路が組み込まれてい る デバ イ ス では、 I/O ピ ンにデー タ を送信 し 、 ボー ド レベルでデバ イ ス間 の接続がテ ス ト で き ます。 こ の回路は、 デバ イ ス内部に信号を送っ てその動作を テ ス ト す る こ と も 可能です。 こ れ ら のテ ス ト は、 通常、 ボー ド お よ びデバ イ ス レベルで断線やシ ョ ー ト を検知する ために実施 さ れます。 バ ウ ン ダ リ ス キ ャ ン アーキ テ ク チ ャ は接続テ ス ト だけでな く コ ン フ ィ ギ ュ レーシ ョ ンや検証な どベン ダー固有の命 令 も 柔軟にサポー ト す る ため、 コ ン フ ィ ギ ュ レーシ ョ ン デー タ を直接 FPGA に読み込む機能を追加で き ます。 BSDL 準拠の場合、 PUDC_B を 0 に設定す る 必要があ り ます。 PUDC_B を 1 に設定す る と 、 コ ン フ ィ ギ ュ レーシ ョ ン 前の弱いプルア ッ プ抵抗が無効にな り ます。 IEEE 1149.1 を使用 し たバウン ダ リ スキ ャ ン UltraScale アーキ テ ク チ ャ は IEEE Standard 1149.1 (Test Access Port and Boundary-Scan Architecture) に完全に準拠 し てお り 、 UltraScale FPGA は IEEE 1149.1 規格で定め ら れてい る 必須エ レ メ ン ト をすべて備え てい ます。 こ れ ら のエ レ メ ン ト と は、 TAP (テ ス ト ア ク セ ス ポー ト )、 TAP コ ン ト ロ ー ラ ー、 命令レ ジ ス タ 、 命令デ コ ーダー、 バ ウ ン ダ リ レ ジ ス タ 、 バ イ パ ス レ ジ ス タ です。 ま た、 UltraScale FPGA は 32 ビ ッ ト のデバ イ ス識別レ ジ ス タ と コ ン フ ィ ギ ュ レーシ ョ ン レ ジ ス タ も サポー ト し てい ます。 こ こ か ら は、 JTAG アーキ テ ク チ ャ について詳 し く 説明 し ます。 テ ス ト ア ク セス ポー ト (TAP) FPGA の TAP には、 プ ロ ト コ ルで必須 と 指定 さ れ、 一般的な JTAG アーキ テ ク チ ャ で使用 さ れ る 4 本の専用ピ ンがあ り ます (表 6-1 参照)。こ れ ら 3 つの入力ピ ン と 1 つの出力ピ ン を使用 し て、IEEE Std 1149.1 バ ウ ン ダ リ ス キ ャ ンの TAP コ ン ト ロ ー ラ ーを制御 し ます。TRST (テ ス ト リ セ ッ ト ) や イ ネーブル ピ ン な ど のオプシ ョ ン制御ピ ンが他社製デバ イ ス で使用 さ れてい る 場合があ り ます。 こ のため、 ザ イ リ ン ク ス製デバ イ ス を他社製デバ イ ス と 組み合わせて使用す る 際は、 こ れ ら のオプシ ョ ン ピ ンの駆動が必要 と な る 場合があ る ため、 注意 し て く だ さ い。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 74 第 6 章 : バウン ダ リ スキ ャ ンおよび JTAG コ ン フ ィ ギ ュ レーシ ョ ン 表 6-1 : TAP コ ン ト ロー ラ ー ピ ン ピン 方向 コ ン フ ィ ギ ュ レーシ ョ ン前の 内部プル抵抗 説明 TDI 入力 プルア ッ プ Test Data In (テ ス ト デー タ 入力)。すべての JTAG 命令お よ びデー タ レ ジ ス タ へのシ リ アル入力です。 あ る 命令で TDI ピ ンのデー タ を ど の レ ジ ス タ に送 る かは、 TAP コ ン ト ロ ー ラ ー ス テー ト お よ び現在の命令に よ っ て決ま り ます。 ピ ンが駆動 さ れてい ない と き に ロ ジ ッ ク High にす る ため、 TDI には内部プルア ッ プ抵抗があ り ます。 TDI は、 TCK の立ち上が り エ ッ ジで JTAG レ ジ ス タ に適用 さ れます。 TDO 出力 プルア ッ プ Test Data Out (テ ス ト デー タ 出力)。 すべての JTAG 命令お よ びデー タ レ ジ ス タ のシ リ アル出力です。 あ る 命令で ど の レ ジ ス タ (命令ま たはデー タ ) か ら TDO ピ ン にデー タ を送 る かは、 TAP コ ン ト ロ ー ラ ー ス テー ト お よ び現在の命令に よ っ て決ま り ま す。TDO の ス テー ト は TCK の立ち下が り エ ッ ジで変化 し 、命令ま たはデー タ をデバ イ ス で送信 し てい る 場合のみア ク テ ィ ブにな り ます。 TDO はア ク テ ィ ブ ド ラ イ バー出力です。 ピ ンがア ク テ ィ ブでない と き に ロ ジ ッ ク High にする ため、 TDO には内部プルア ッ プ抵抗があ り ます。 TMS 入力 プルア ッ プ Test Mode Select (テ ス ト モー ド 選択)。TCK の立ち上が り エ ッ ジで変化す る TAP コ ン ト ロ ー ラ ーの ス テー ト のシーケ ン ス を決定 し ます。 ピ ン が駆動 さ れていない と き に ロ ジ ッ ク High にす る ため、 TMS には内部 プルア ッ プ抵抗があ り ます。 TCK 入力 プルア ッ プ Test Clock (テ ス ト ク ロ ッ ク )。 JTAG のテ ス ト ク ロ ッ ク ピ ンです。 TAP コ ン ト ロ ー ラ ーお よ び JTAG レ ジ ス タ は、 TCK を基準に動作 し ま す。 ピ ンが駆動 さ れていない と き に ロ ジ ッ ク High にす る ため、TCK には内部プ ルア ッ プ抵抗があ り ます。 注記 : 1. TDO お よ び TCK 同様、 TMS と TDI にはデフ ォ ル ト で IEEE Std 1149.1 で規定 さ れた弱い内部プルア ッ プ抵抗があ り ます。 こ れ ら の内部プ ルア ッ プ抵抗は、 選択 さ れてい る モー ド に関係な く ア ク テ ィ ブです。 内部プルア ッ プの値については、 デー タ シー ト を参照 し て く だ さ い。 バウン ダ リ スキ ャ ンの タ イ ミ ン グ パラ メ ー タ ー 一般的に必要 と さ れ る タ イ ミ ン グ パ ラ メ ー タ ー (図 6-1 参照) の特性評価デー タ については、各デー タ シー ト ([参照 6] ま たは [参照 7]) に記載の 「 コ ン フ ィ ギ ュ レーシ ョ ンの ス イ ッ チ特性」 の表を参照 し て く だ さ い。 X-Ref Target - Figure 6-1 TMS TDI TTAPTCK TTCKTAP TCK TTCKTDO TDO Data Valid UG570_c6_01_110813 図 6-1 : バウン ダ リ スキ ャ ン ポー ト の タ イ ミ ング波形 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 75 第 6 章 : バウン ダ リ スキ ャ ンおよび JTAG コ ン フ ィ ギ ュ レーシ ョ ン ザイ リ ン ク ス デバイ スでのバウン ダ リ スキ ャ ンの 使用 ザ イ リ ン ク ス の コ ン フ ィ ギ ュ レーシ ョ ン ツールで単一デバ イ ス を コ ン フ ィ ギ ュ レーシ ョ ンする 場合、TAP コ ン ト ロ ー ラ ーの コ マ ン ド は自動的に発行 さ れます。 コ ン ピ ュ ー タ ーのポー ト か ら FPGA にビ ッ ト ス ト リ ーム を自動的に転送す る には、 ダ ウ ン ロ ー ド ケーブルを 4 つの JTAG ピ ン (TMS、 TCK、 TDI、 お よ び TDO) に正 し く 接続す る 必要があ り ます。 コ ン フ ィ ギ ュ レーシ ョ ン ツールは接続が正 し いか ど う か を自動的に確認 し 、 コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト の送信 コ マ ン ド や コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト が適切に管理 さ れてい る こ と を確認する コ マ ン ド を送信 し ます。 図 6-2 は、 1 つのデバ イ ス と JTAG 信号ヘ ッ ダーを シ ンプルな形で接続 し た、 一般的な JTAG 構成を示 し た も のです。 こ のヘ ッ ダーは、 プ ロ セ ッ サで駆動す る か、 ま たはザ イ リ ン ク ス のプ ロ グ ラ ミ ン グ ケーブルを使用 し て コ ン フ ィ ギ ュ レーシ ョ ン ツールで駆動で き ます。 TCK はバ ウ ン ダ リ ス キ ャ ン の動作で使用す る ク ロ ッ ク です。 TDO - TDI 間の接 続に よ り 、 JTAG チ ェーン を介 し たデー タ シ フ ト 用のシ リ アル デー タ パ ス が作成 さ れます。 TMS は、 TAP コ ン ト ロ ー ラ ーの ス テー ト の遷移を制御 し ます。 JTAG が正 し く 機能す る には、 こ れ ら の信号をすべて物理的に正 し く 接続す る 必要があ り ます。 X-Ref Target - Figure 6-2 JTAG Header FPGA TDO TDI TDI TMS TMS TCK TCK TDO UG570_c6_02_111113 図 6-2 : 単一デバイ スの JTAG プ ログ ラ ミ ング接続 複数のデバ イ ス を図 6-3 の よ う に 1 つのチ ェーンで接続 し て コ ン フ ィ ギ ュ レーシ ョ ンす る こ と も で き ます。 X-Ref Target - Figure 6-3 JTAG Header TDO FPGA FPGA FPGA TDI TDI TMS TMS TMS TMS TCK TCK TCK TCK TDO VCCO_0 TDI TDO VCCO_0 TDI VCCO_0 DONE DONE Device 1 TDO Device 2 DONE Device 3 UG570_c6_03_111113 図 6-3 : 複数デバイ スのバウン ダ リ スキ ャ ン チ ェ ーン UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 76 第 6 章 : バウン ダ リ スキ ャ ンおよび JTAG コ ン フ ィ ギ ュ レーシ ョ ン バウ ン ダ リ スキ ャ ン デザイ ンの考察事項 JTAG 信号の配線 TCK お よ び TMS 信号はチ ェーン内のすべてのデバ イ ス に伝送 さ れ る ため、 シ グナル イ ン テ グ リ テ ィ が重要です。 た と えば、JTAG 機能が正 し く 動作す る には、TCK がすべての レ シーバーで均一に遷移す る 必要があ り ます。 ま た、TCK を正 し く 終端処理す る 必要 も あ り ます。TCK のシ グナル イ ン テ グ リ テ ィ に よ っ ては、確実に JTAG コ ン フ ィ ギ ュ レー シ ョ ン を行え る 最大周波数が低 く な る こ と があ り ます。 さ ら に、 チ ェ ーン が長い場合 (3 つ以上のデバ イ ス)、 すべての レ シーバーで駆動強度が十分で あ る よ う にす る ため、 TMS お よ び TCK にバ ッ フ ァ ーを付け る 必要があ り ます。 ま た、 ロ ジ ッ ク High での電圧はチ ェ ーン内のすべてのデ バ イ ス と 互換性があ る 必要があ り ます。 TRST (テ ス ト リ セ ッ ト ) や イ ネーブル ピ ン な ど のオプシ ョ ン制御ピ ン が他社製デバ イ ス で使用 さ れてい る 場合があ り ます。 こ のため、 ザ イ リ ン ク ス製デバ イ ス を他社製デバ イ ス と 組み合わせて使用す る 際は、 こ れ ら のオプシ ョ ン ピ ンの駆動が必要 と な る 場合があ る ため、 注意 し て く だ さ い。 電源供給 デー タ シー ト に記載のガ イ ド ラ イ ンに従い、 適切に電源を投入 し て く だ さ い。 電源は、 デー タ シー ト で指定 さ れた立 ち上が り 時間内に単調増加で立ち上が る 必要があ り ます。 電源電圧はすべて推奨動作範囲内 と し ます。 デー タ シー ト に記載 さ れたデー タ 保持電圧を下回 る と 、 コ ン フ ィ ギ ュ レーシ ョ ン デー タ が失われ る 可能性があ り ます。 バ ウ ン ダ リ ス キ ャ ン の機能を確実に動作 さ せ る には、 未使用のシ リ アル ト ラ ン シーバー タ イ ルの電源投入に関す る ガ イ ド ラ イ ンに従っ て く だ さ い。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 77 第 6 章 : バウン ダ リ スキ ャ ンおよび JTAG コ ン フ ィ ギ ュ レーシ ョ ン TAP コ ン ト ロー ラ ーおよびアーキテ ク チ ャ FPGA の TAP には、IEEE で必須 と 指定 さ れてい る 4 本の専用ピ ンがあ り ます (表 6-1 参照)。図 6-4 に、標準的な JTAG アーキ テ ク チ ャ を示 し ます。 X-Ref Target - Figure 6-4 IEEE Std 1149.1 Compliant Device TAP State Machine 1 Test-Logic-Reset 0 TMS Select Next State 0 1 Run-Test/Idle Select-DR 1 Select-IR 0 1 0 1 Capture-DR Capture-IR 0 0 0 Shift-DR 0 1 1 Exit1-DR 1 Exit1-IR 0 0 Pause-IR 0 1 1 Exit2-IR 0 1 TCK 1 TDI Update-DR 0 1 0 Pause-DR Exit2-DR Shift-IR/Shift-DR Shift-IR 0 1 1 Update-IR 0 Instruction Register Select Data Register Instruction Decoder TDO Bypass[1] Register IDCODE[32] Register Boundary[N] Register I/O I/O I/O I/O UG570_c6_04_111113 図 6-4 : 標準的な JTAG アーキテ ク チ ャ 図 6-5 に、 16 ス テー ト の有限ス テー ト マシ ン を示 し ます。 4 本の TAP ピ ンが、 デー タ が ど の よ う に各レ ジ ス タ に ス キ ャ ン さ れ る か を制御 し ます。 ま た、 TCK の立ち上が り エ ッ ジにおけ る TMS ピ ンの状態に よ っ て、 ス テー ト 移行の シーケ ン ス が決定 し ます。 主要な シーケ ン ス は 2 つあ り 、 1 つはデー タ をデー タ レ ジ ス タ にシ フ ト す る シーケ ン ス、 も う 1 つは命令を命令レ ジ ス タ にシ フ ト す る シーケ ン ス です。 ス テー ト 間の遷移は、 TCK の立ち上が り エ ッ ジでのみ発生 し 、 すべての ス テー ト が別々の ス テー ト 名を持ち ます。 7 つの ス テー ト で成 り 立つ 2 つの列は、 それぞれ命令パス と デー タ パス を示 し てい ます。 デー タ レ ジ ス タ の ス テー ト に は 「DR」、 命令レ ジ ス タ の ス テー ト には 「IR」 が名前の後に付 き ますが、 こ れ以外の点ではど ち ら の ス テー ト も 同 じ です。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 78 第 6 章 : バウン ダ リ スキ ャ ンおよび JTAG コ ン フ ィ ギ ュ レーシ ョ ン X-Ref Target - Figure 6-5 1 TEST-LOGIC-RESET 0 0 RUN-TEST/IDLE 1 SELECT-DR-SCAN 1 1 0 SELECT-IR-SCAN 1 CAPTURE-DR 0 CAPTURE-IR 0 0 0 SHIFT-DR 1 EXIT1-DR 1 1 EXIT1-IR 0 0 PAUSE-DR PAUSE-IR 0 0 1 1 EXIT2-DR 0 EXIT2-IR 1 1 UPDATE-DR 1 0 SHIFT-IR 1 0 1 0 UPDATE-IR 1 0 NOTE: The value shown adjacent to each state transition in this figure represents the signal present at TMS at the time of a rising edge at TCK. UG570_c6_05_111313 図 6-5 : バウン ダ リ スキ ャ ン TAP コ ン ト ロー ラ ーのス テー ト マ シ ン 各ス テー ト の動作は、 次の よ う にな り ます。 Test-Logic-Reset こ の ス テー ト ではすべてのテ ス ト ロ ジ ッ ク が無効にな り 、 こ れに よ り 通常の IC の動作が有効にな り ます。 TAP コ ン ト ロ ー ラ ーの ス テー ト マシ ンは、 コ ン ト ロ ー ラ ーの初期ス テー ト に関係な く 、 TMS が High に保持 さ れ る 間に TCK が 5 回パルスす る と 、 Test-Logic-Reset ス テー ト にな る よ う に設計 さ れてい ます。 こ のため、 Test Reset (TRST) ピ ンは オプシ ョ ンです。 Run-Test-Idle こ の ス テー ト では、 IC のテ ス ト ロ ジ ッ ク が一部の命令のあ る 場合にのみア ク テ ィ ブにな り ます。 た と えば、 命令に よ り セルフ テ ス ト がア ク テ ィ ブにな っ た場合、 コ ン ト ロ ー ラ ーが こ の ス テー ト にな る と IC のテ ス ト ロ ジ ッ ク が実行 さ れます。 それ以外の場合、 IC のテ ス ト ロ ジ ッ ク はア イ ド ル状態にな り ます。 Select-DR-Scan こ の ス テー ト では、 デー タ パ ス にな る か、 Select-IR-Scan ス テー ト にな る かが制御 さ れます。 Select-IR-Scan こ の ス テー ト では、 命令パ ス に ス テー ト を移動す る か ど う かが制御 さ れ ま す。 命令パ ス にな ら ない場合は、 コ ン ト ロ ー ラ ーは Test-Logic-Reset ス テー ト に戻 り ます。 Capture-IR こ の ス テー ト では、 命令レ ジ ス タ のシ フ ト レ ジ ス タ バン ク が TCK の立ち上が り エ ッ ジで決定 し たパ タ ーンの値をパ ラ レルに読み込みます。 最後 2 つの有効ビ ッ ト は常に 01 にな り ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 79 第 6 章 : バウン ダ リ スキ ャ ンおよび JTAG コ ン フ ィ ギ ュ レーシ ョ ン Shift-IR こ の ス テー ト では、 命令レ ジ ス タ が TDI お よ び TDO 間で接続 さ れ、 読み込まれたパ タ ーンが TCK の立ち上が り エ ッ ジ ご と にシ フ ト さ れます。 TDI ピ ンの命令 も 命令レ ジ ス タ にシ フ ト さ れます。 Exit1-IR こ の ス テー ト では、 Pause-IR ス テー ト にな る か、 Update-IR ス テー ト にな る かが制御 さ れます。 Pause-IR こ の ス テー ト では、 命令レ ジ ス タ のシ フ ト が一時停止で き る よ う にな り ます。 Exit2-DR こ の ス テー ト では、 Shift-DR ス テー ト にな る か、 Update-DR ス テー ト にな る かが制御 さ れます。 Update-IR こ の ス テー ト では、 命令レ ジ ス タ の命令が TCK の立ち下が り エ ッ ジ ご と に命令レ ジ ス タ の ラ ッ チ バン ク に保存 さ れ ます。 保存後、 こ の命令が現在の命令にな り ます。 Capture-DR こ の ス テー ト では、 デー タ が TCK の立ち上が り エ ッ ジで現在の命令に よ っ て選択 さ れたデー タ レ ジ ス タ にパ ラ レル で読み込まれます。 Shift-DR、 Exit1-DR、 Pause-DR、 Exit2-DR、 および Update-DR こ れ ら の ス テー ト は、命令パス の Shift-IR、Exit1-IR、Pause-IR、Exit2-IR、お よ び Update-IR ス テー ト と 類似 し てい ます。 UltraScale FPGA は、 ザ イ リ ン ク ス ベン ダー固有の コ マ ン ド お よ び必須 と な る IEEE Std 1149.1 コ マ ン ド をサポー ト し てい ます。 こ れには、 EXTEST、 SAMPLE/PRELOAD、 BYPASS、 IDCODE、 お よ び USERCODE 命令すべてが含まれ ま す。 TAP は内部のユーザー定義の レ ジ ス タ (USER1、 USER2、 USER3、 USER4) 、 そ し てデバ イ ス の コ ン フ ィ ギ ュ レーシ ョ ン/ リ ー ド バ ッ ク を サポー ト し ま す。 INTEST はサポー ト さ れ ません。 HIGHZ_IO コ マ ン ド は、 標準 HIGHZ コ マ ン ド と 同 じ ですが、 異な る 唯一の点はユーザー I/O ピ ン を無効にす る こ と です。 標準バ ウ ン ダ リ ス キ ャ ン命令の EXTEST お よ び BYPASS の詳細は、 IEEE Std 1149.1 を参照 し て く だ さ い。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 80 第 6 章 : バウン ダ リ スキ ャ ンおよび JTAG コ ン フ ィ ギ ュ レーシ ョ ン バウン ダ リ スキ ャ ン アーキテ ク チ ャのレ ジ ス タ UltraScale アーキ テ ク チ ャ FPGA の レ ジ ス タ には、 IEEE Std 1149.1 で定め ら れた必要な レ ジ ス タ すべてが含ま れてい ます。 さ ら に、 標準的な レ ジ ス タ だけでな く 、 簡易テ ス ト や検証用の レ ジ ス タ も 備え てい ます (表 6-2 参照)。 表 6-2 : JTAG レ ジ ス タ レジス タ名 バウ ンダ リ レジス タ 命令レ ジ ス タ レジス タ長 説明 1 つの I/O につ き 3 ビッ ト 入力、 出力、 出力 イ ネーブルの制御お よ びモニ タ リ ン グ を 実行 し ます。 6 ビ ッ ト (1) 現在の OPCODE 命令を ホール ド し 、内部デバ イ ス の ス テー タ ス を キ ャ プチ ャ し ます。 詳細は、 83 ページの表 6-3 を参 照 し て く だ さ い。 BYPASS レ ジ ス タ 1 ビッ ト デバ イ ス をバ イ パ ス し ます。 デバ イ ス ID レジス タ 32 ビ ッ ト デバ イ ス ID を取得 し ます。 JTAG コ ン フ ィ ギ ュ レ ーシ ョ ン レジス タ USERCODE レ ジ ス タ 不定 32 ビ ッ ト ユーザー定義の レ ジ ス タ デザ イ ンに よ っ て (USER1、 USER2、 USER3、 異な る USER4) CFG_IN ま たは CFG_OUT 命令を使用中、コ ン フ ィ ギ ュ レー シ ョ ン バスへのア ク セ ス を可能に し ます。 ユーザーがプ ロ グ ラ ム可能な コ ー ド を取得 し ます。 デザ イ ンに よ っ て異な り ます。 注記 : 1. SSI テ ク ノ ロ ジ デバ イ ス では、 命令レ ジ ス タ のサ イ ズが大 き く な り ます。 詳細は、 各デバ イ ス の BSDL フ ァ イ ルを参照 し て く だ さ い。 バウ ン ダ リ レ ジ ス タ テ ス ト で使用 さ れ る 主な レ ジ ス タ は、 バ ウ ン ダ リ レ ジ ス タ です。 バ ウ ン ダ リ ス キ ャ ンの動作は、 個々の IOB コ ン フ ィ ギ ュ レーシ ョ ンか ら 独立 し てい ます。 各 IOB は、 ボ ンデ ィ ン グの接続にかかわ ら ず、 ト ラ イ ス テー ト 制御の双方向性 IOB です。 その後、 IOB は コ ン フ ィ ギ ュ レーシ ョ ン さ れて、 入力、 出力、 ト ラ イ ス テー ト のいずれか と な る ため、 各 IOB には 3 つのデー タ レ ジ ス タ ビ ッ ト が あ り ま す。 図 6-6 に、 UltraScale FPGA のバ ウ ン ダ リ ス キ ャ ン アーキ テ ク チ ャ を示 し ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 81 第 6 章 : バウン ダ リ スキ ャ ンおよび JTAG コ ン フ ィ ギ ュ レーシ ョ ン X-Ref Target - Figure 6-6 TDI 1 D Q D sd Q 0 LE 1 IOB.I 0 1x 00 01 sd D Q D Q LE 1 0 IOB.O IOB.T 0 1x 00 01 sd D D Q Q 1 LE EXTEST SHIFT CLOCK DATA REGISTER TDO UPDATE EXTEST UG570_c6_06_101414 図 6-6 : UltraScale FPGA のバウン ダ リ スキ ャ ン ロ ジ ッ ク デー タ レ ジ ス タ (DR) の操作時、 DR は Capture-DR ス テー ト 中にパ ラ レルでデー タ を取得 し ます。 Shift-DR ス テー ト 中にデー タ がシ フ ト ア ウ ト さ れ、 新 し いデー タ が取得 さ れます。 DR の各ビ ッ ト に対 し て ア ッ プデー ト ラ ッ チを使用 し 、 次の Shift-DR ス テー ト 中に入力デー タ を ホール ド し ます。 その後、 Update-DR ス テー ト 中に TCK が Low 駆動す る と 、 デー タ が ラ ッ チ さ れます。 TAP コ ン ト ロ ー ラ ーが Update-DR ス テー ト に移行す る と 、 ア ッ プデー ト ラ ッ チはオープ ン にな り ます。 EXTEST を 実行す る 際には、 こ れ ら の コ マ ン ド の実行前に適切なデー タ が ラ ッ チに記憶 さ れてい る こ と を確認 し て く だ さ い。 通 常は、 SAMPLE/PRELOAD 命令を使用 し て確認で き ます。 断線お よ びシ ョ ー ト を検知す る テ ス ト ベ ク タ ーの作成時には、内部プルア ッ プお よ びプルダ ウ ン抵抗を考慮 し て く だ さ い。 PUDC_B ピ ンに よ っ て、 IOB のプルア ッ プ抵抗の有無が決定 さ れます バウン ダ リ スキ ャ ン レ ジ ス タ のビ ッ ト シーケ ン ス こ のセ ク シ ョ ンでは、 TAP を除いた IOB の順序について説明 し ます。 順序は最初に入力、 次に出力、 最後に ト ラ イ ス テー ト IOB 制御です。 ト ラ イ ス テー ト IOB 制御は、 最 も TDO に近い位置に配置 さ れてい ます。 入力専用ピ ンは、 入 力ビ ッ ト のみをバ ウ ン ダ リ ス キ ャ ンの I/O デー タ レ ジ ス タ に送 り ます。 デバ イ ス の ビ ッ ト シーケ ン ス は、 UltraScale FPGA 用の BSDL (Boundary-Scan Description Language) フ ァ イ ルか ら 取得で き ます。 BSDL フ ァ イ ルは、 ザ イ リ ン ク ス のダ ウ ン ロ ー ド ページか ら 入手可能であ り 、 コ ン フ ィ ギ ュ レーシ ョ ン さ れていない FPGA を表 し てい ます。 ビ ッ ト シーケ ン ス はデザ イ ンに影響 さ れ る こ と はな く 、 常に同一ビ ッ ト 数で同一順序 と な っ てい ます。 FPGA コ ン フ ィ ギ ュ レーシ ョ ン後のバ ウ ン ダ リ ス キ ャ ン テ ス ト 用にザ イ リ ン ク ス の write_bsdl ユーテ ィ リ テ ィ を使用 す る と 、 BSDL フ ァ イ ルが自動的に変更 さ れて、 コ ン フ ィ ギ ュ レーシ ョ ン後の イ ン タ ーコ ネ ク ト テ ス ト を実行で き ま す。write_bsdl ユーテ ィ リ テ ィ では、 イ ンプ リ メ ン ト 後のデザ イ ンか ら 必要な FPGA デザ イ ンの情報が読み込まれ、 コ ン フ ィ ギ ュ レーシ ョ ン後のデバ イ ス のバ ウ ン ダ リ ス キ ャ ン アーキ テ ク チ ャ に合わせた BSDL フ ァ イ ルが作成 さ れ ま す。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 82 第 6 章 : バウン ダ リ スキ ャ ンおよび JTAG コ ン フ ィ ギ ュ レーシ ョ ン 命令レ ジ ス タ 命令レ ジ ス タ (IR) は、 命令ス キ ャ ン シーケ ン ス中は TDI と TDO 間に接続 さ れ ます。 命令 ス キ ャ ン シーケ ン ス の準 備のため、 命令レ ジ ス タ に固定の命令キ ャ プチ ャ パ タ ーン がパ ラ レ ルで読み込ま れ ます。 こ のパ タ ーンは、 命令が TDI か ら 命令レ ジ ス タ へシ フ ト す る と き に、 LSB か ら TDO にシ フ ト し ます。 UltraScale FPGA のバ ウ ン ダ リ ス キ ャ ン命令セ ッ ト に不可欠な OPCODE を命令レ ジ ス タ に読み込ませ る こ と で、 実行 す る 処理を決定 し ます。モ ノ リ シ ッ ク FPGA では、IR は 6 ビ ッ ト 幅です。その他のデバ イ ス の IR 幅については、17 ペー ジ の 表 1-5 を 参照 し て く だ さ い。 表 6-3 で、 UltraScale FPGA の バ ウ ン ダ リ ス キ ャ ン 命 令 に つ い て 説明 し ま す。 UltraScale+ FPGA の コ マ ン ド お よ び コ ー ド は、 BSDL フ ァ イ ルを参照 し て く だ さ い。 eFUSE 関連の命令については、 112 ページの表 8-3 を参照 し て く だ さ い。 表 6-3 : UltraScale FPGA のバウン ダ リ スキ ャ ン命令 バウン ダ リ スキ ャ ン コマン ド バイ ナ リ コ ー ド [5:0](1) 説明 EXTEST 100110 1149.1 バ ウ ン ダ リ ス キ ャ ンの EXTEST を有効に し ます。 EXTEST_PULSE 111100 ト ラ ン シーバーの 1149.6 EXTEST_PULSE を有効に し ます。 EXTEST_TRAIN 111101 ト ラ ン シーバーの 1149.6 EXTEST_TRAIN を有効に し ます。 SAMPLE/PRELOAD 000001 バ ウ ン ダ リ ス キ ャ ンの SAMPLE/PRELOAD を有効に し ます。 USER1 000010 ユーザー定義の レ ジ ス タ 1 にア ク セ ス し ます。 USER2 000011 ユーザー定義の レ ジ ス タ 2 にア ク セ ス し ます。 USER3 100010 ユーザー定義の レ ジ ス タ 3 にア ク セ ス し ます。 USER4 100011 ユーザー定義の レ ジ ス タ 4 にア ク セ ス し ます。 USERCODE 001000 ユーザー コ ー ド のシ フ ト ア ウ ト を有効に し ます。 IDCODE 001001 IDCODE のシ フ ト ア ウ ト を有効に し ます。 HIGHZ_IO 001010 BYPASS レ ジ ス タ を有効にす る 場合のみユーザー I/O ピ ン を無効に し ます。 BYPASS 111111 BYPASS を有効に し ます。 CFG_IN 000101 コ ン フ ィ ギ ュ レーシ ョ ン を実行す る ため、 コ ン フ ィ ギ ュ レーシ ョ ン バ ス にア ク セ ス し ます。 CFG_OUT 000100 リ ー ド バ ッ ク を実行する ため、 コ ン フ ィ ギ ュ レーシ ョ ン バ ス にア ク セ ス し ます。 JPROGRAM 001011 PROGRAM_B ピ ン と 同等です。 JSTART 001100 ス タ ー ト ア ッ プ シーケ ン ス に ク ロ ッ ク を供給 し ます。 JSHUTDOWN 001101 シ ャ ッ ト ダ ウ ン シーケ ン ス に ク ロ ッ ク を供給 し ます。 SYSMON_DRP 110111 System Monitor DRP が JTAG を介 し て ア ク セ ス し ます。 詳細は、 『UltraScale アー キ テ ク チ ャ シ ス テ ム モニ タ ー ユーザー ガ イ ド 』 (UG580) [参照 12] の「DRP JTAG イ ン タ ーフ ェ イ ス」 を参照 し て く だ さ い。 ISC_NOOP 010100 動作な し (NOP) RESERVED その他すべての コー ド ザ イ リ ン ク ス の予約命令です。 注記 : 1. SSI テ ク ノ ロ ジ デバ イ ス では、 命令レ ジ ス タ のサ イ ズが大 き く な り ます (17 ページの表 1-5 参照)。 詳細は、 各デバ イ ス の BSDL フ ァ イ ル を参照 し て く だ さ い。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 83 第 6 章 : バウン ダ リ スキ ャ ンおよび JTAG コ ン フ ィ ギ ュ レーシ ョ ン 表 6-4 に、 命令ス キ ャ ン シーケ ン ス の一部 と し て IR に読み込まれ る 命令キ ャ プチ ャ 値を示 し ます。 表 6-4 : UltraScale FPGA の命令スキ ャ ン シーケ ン スの一部 と し て IR に読み込まれる命令キ ャ プ チ ャの値 TDI IR[5] IR[4] IR[3] IR[2] IR[1:0] DONE INIT(1) ISC_ENABLED ISC_DONE 01 → TDO 注記 : 1. INIT は INIT_B_INTERNAL_SIGNAL_STATUS ビ ッ ト です。 2. SSI テ ク ノ ロ ジ デバ イ ス では、 命令レ ジ ス タ のサ イ ズが大 き く な り ます (17 ページの表 1-5 参照)。 詳細は、 各デバ イ ス の BSDL フ ァ イ ルを参照 し て く だ さ い。 BYPASS レ ジ ス タ も う 1 つの標準デー タ レ ジ ス タ は、 単一フ リ ッ プ フ ロ ッ プの BYPASS レ ジ ス タ です。 こ の レ ジ ス タ は BYPASS 命令 中に、 TDI ピ ンか ら TDO ピ ンにデー タ を シ リ アル転送 し ます。 ま た、 TAP コ ン ト ロ ー ラ ーが Capture-DR ス テー ト に な っ た と き 、 0 に初期化 さ れます。 デバイ ス ID (IDCODE) レ ジ ス タ UltraScale FPGA は、 IDCODE レ ジ ス タ と 呼ばれ る 32 ビ ッ ト の識別レ ジ ス タ を備え てい ます。 IDCODE は、 IEEE Std 1149.1 に基づいたベン ダー特有の固定値であ り 、 デバ イ ス の製造者お よ び タ イ プ を電子的に識別する も のです。 こ の レ ジ ス タ に よ り 、 バ ウ ン ダ リ ス キ ャ ン を使用 し て テ ス ト ま たはプ ロ グ ラ ム さ れたデバ イ ス の識別が容易にな り ます。 IDCODE 命令を使用す る と 、 こ の識別 コ ー ド の出力が可能です。 IDCODE レ ジ ス タ の LSB ビ ッ ト は、 常に 1 です (JTAG IEEE 1149.1 に基づ く )。 16 進数の最後の 3 文字は 0x093 と な り ます (17 ページの表 1-5 参照)。 JTAG コ ン フ ィ ギ ュ レーシ ョ ン レ ジ ス タ JTAG コ ン フ ィ ギ ュ レーシ ョ ン レ ジ ス タ は 32 ビ ッ ト レ ジ ス タ です。 こ の レ ジ ス タ に よ り 、 コ ン フ ィ ギ ュ レーシ ョ ン バ スお よ び リ ー ド バ ッ ク 操作にア ク セ ス で き ます。 USERCODE レ ジ ス タ UltraScale FPGA は、 USERCODE 命令を サポー ト し てい ま す。 こ の レ ジ ス タ に よ り 、 特定のデザ イ ン に固有な識別 コ ー ド のユーザー指定が可能 と な り ます。 USERCODE はデバ イ ス の中にプ ロ グ ラ ム で き 、 後で検証のために リ ー ド バ ッ ク で き ます。こ の USERCODE はビ ッ ト ス ト リ ームの生成時に ビ ッ ト ス ト リ ーム内に組み込まれ (USERID プ ロ パ テ ィ )、 コ ン フ ィ ギ ュ レーシ ョ ン後に有効にな り ます。 デバ イ ス が空、 ま たは USERCODE がプ ロ グ ラ ム さ れていな い場合の USERCODE レ ジ ス タ 値は、 0xFFFFFFFF です。 USER1、 USER2、 USER3、 および USER4 レ ジ ス タ USER1、 USER2、 USER3、 お よ び USER4 レ ジ ス タ は、 コ ン フ ィ ギ ュ レーシ ョ ン後にのみ有効にな り ます。 こ れ ら 4 つの レ ジ ス タ は、 ユーザーがデザ イ ンで定義す る 必要があ り ます。 こ れ ら の レ ジ ス タ へのア ク セ ス は、 TAP ピ ン での 定義後に可能 と な り ます。 こ れ ら の レ ジ ス タ の作成には、 BSCANE2 プ リ ミ テ ィ ブが必要です (第 7 章の 「BSCANE2」 参照)。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 84 第 6 章 : バウン ダ リ スキ ャ ンおよび JTAG コ ン フ ィ ギ ュ レーシ ョ ン UltraScale FPGA でのバウン ダ リ スキ ャ ン コ ン フ ィ ギ ュ レーシ ョ ン の使用実行する バ ウ ン ダ リ ス キ ャ ン を利用 し たベン ダー固有の命令 と し て最 も よ く 使用 さ れ る も のの 1 つに、 コ ン フ ィ ギ ュ レーシ ョ ン命令があ り ま す。 UltraScale アーキ テ ク チ ャ FPGA は、 標準のバ ウ ン ダ リ ス キ ャ ン (JTAG) ポー ト か ら の コ ン フ ィ ギ ュ レーシ ョ ン を サポー ト し てい ます。 JTAG か ら デバ イ ス の コ ン フ ィ ギ ュ レーシ ョ ン を実行す る 場合、 こ の命令は モー ド ピ ンの設定に関係な く 実行 さ れます。 ただ し 、 JTAG ポー ト か ら の コ ン フ ィ ギ ュ レーシ ョ ン と ほかの コ ン フ ィ ギ ュ レーシ ョ ン モー ド が競合す る のを防ぐ ために、JTAG コ ン フ ィ ギ ュ レーシ ョ ン モー ド を明示的に設定す る こ と も で き ます。 JTAG モー ド ピ ンの設定は、 ス レーブ SLR へのマ ス タ ー ICAP ア ク セ ス を制限する ため、 SSI テ ク ノ ロ ジ を採用 し たデバ イ ス には推奨 し てい ません。 JTAG コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス の ピ ン接続は、 図 6-7 を参照 し て く だ さ い。 X-Ref Target - Figure 6-7 VCCINT Tie to battery supply when needed, otherwise tie to VCCAUX or GND; see VBATT section Tie to VCCINT or GND; see Power On Reset section VCCINT VBATT VCCAUX VCCAUX POR_OVERRIDE VCCO_0 Bank 0 Tie to VCCO_0 or GND; see Configuration Banks Voltage Select section CFGBVS Tie to VCCO_0 or GND PUDC_B VCCO_0 VCCO_0 M2 PROGRAM_B M0 VCCO_0 4.7 kΩ 4.7 kΩ VCCO_0 VCCO_0 UltraScale FPGA 4.7 kΩ M1 INIT_B PROGRAM_B DONE VCCO_0 1 VREF Xilinx Cable Header (JTAG Interface) TMS TCK TMS TCK TDO TDI TDO TDI N.C. GND N.C. 14 Refer to the Notes following this figure for related information. UG570_c6_07_031915 図 6-7 : JTAG コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ー フ ェ イ スの例 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 85 第 6 章 : バウン ダ リ スキ ャ ンおよび JTAG コ ン フ ィ ギ ュ レーシ ョ ン 図 6-7 について説明 し ます。 1. DONE ピ ンは、 デフ ォ ル ト ではオープン ド レ イ ン出力です。 DONE 信号の詳細は、 24 ページの表 1-9 を参照 し て く だ さ い。 2. INIT_B ピ ンは双方向オープン ド レ イ ン ピ ンで、 外部プルア ッ プ抵抗が必要です。 3. FPGA の PUDC_B ピ ン を GND に接続す る と 電源投入後 と コ ン フ ィ ギ ュ レーシ ョ ン中に SelectIO ピ ンの内部プル ア ッ プが有効にな り 、 VCCO_0 に接続する と SelectIO ピ ンが ト ラ イ ス テー ト 状態にな り ます。 BSDL 準拠の場合、 PUDC_B を GND に接続す る 必要があ り ます。 PUDC_B 信号の詳細は、 24 ページの表 1-9 を参照 し て く だ さ い。 ザ イ リ ン ク ス は、プ ロ ト タ イ プ用に独自の USB プ ロ グ ラ ミ ン グ ケーブル と バ ウ ン ダ リ ス キ ャ ン プ ロ グ ラ ム ツールを 提供 し てい ます。 こ れ ら は、 量産環境での利用を想定 し た も のではあ り ませんが、 FPGA イ ンプ リ メ ン テーシ ョ ンお よ び JTAG チ ェーンの完全性の検証に非常に役立ち ます。 JTAG チ ェ ーン内のほかのデバ イ ス にア ク セ スす る 際は、 正 し いデバ イ ス が適切な信号を受信で き る よ う 、 命令レ ジ ス タ の長 さ を把握 し てお く こ と が重要です。 こ の情報は、 各デバ イ ス の BSDL フ ァ イ ルに記述 さ れてい ます。 FPGA のバ ウ ン ダ リ ス キ ャ ンは、 選択 し たモー ド と は関係な く 動作 し ます。 ほかのモー ド を選択 し て も 、 バ ウ ン ダ リ ス キ ャ ン モ ー ド が 優 先 さ れ ま す。 し た が っ て、 バ ウ ン ダ リ レ ジ ス タ を 使用す る バ ウ ン ダ リ ス キ ャ ン 命令 (SAMPLE/PRELOAD お よ び EXTEST) は、 コ ン フ ィ ギ ュ レーシ ョ ン中に実行 し ないで く だ さ い。 デバ イ ス の コ ン フ ィ ギ ュ レーシ ョ ン前は、 ユーザー定義の命令以外の命令が使用で き ます。 コ ン フ ィ ギ ュ レーシ ョ ン後は、 すべての命令 が使用可能です。 JSTART お よ び JSHUTDOWN は、 FPGA デバ イ ス のアーキ テ ク チ ャ お よ び コ ン フ ィ ギ ュ レーシ ョ ン フ ロ ーでのみ使 用 さ れ る 命令です。 TAP コ ン ト ロ ー ラ ーは PROGRAM_B ピ ン では リ セ ッ ト さ れず、 コ ン ト ロ ー ラ ーを TLR ス テー ト にす る こ と に よ っ てのみ リ セ ッ ト で き ます。 ま た、 TAP コ ン ト ロ ー ラ ーは、 電源投入時に リ セ ッ ト さ れます。 図 6-8 に、 JTAG を使用 し た FPGA コ ン フ ィ ギ ュ レーシ ョ ンの フ ロ ーを示 し ます。 コ ン フ ィ ギ ュ レーシ ョ ン さ れたデ バ イ ス を リ コ ン フ ィ ギ ュ レーシ ョ ンす る には、 TAP を切 り 替え、 PROGRAM_B ピ ン をパル ス し た後に CFG_IN 命令 を入力す る か、 シ ャ ッ ト ダ ウ ン シーケ ン ス を開始 し て く だ さ い。 CFG_IN 命令を用いた コ ン フ ィ ギ ュ レーシ ョ ン中は JTAG ス テー ト マシ ン を Shift-DR ス テー ト にする 必要があ り ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 86 第 6 章 : バウン ダ リ スキ ャ ンおよび JTAG コ ン フ ィ ギ ュ レーシ ョ ン X-Ref Target - Figure 6-8 Power-Up Clear Configuration Memory INIT_B = High? Yes PROGRAM_B Low? No Yes Sample Mode Pins JTAG Available Load JSHUTDOWN Instruction Shutdown Sequence Load CFG_IN Instruction Go to Shift-DR; Load Bitstream CRC Correct? No CRC Error Yes Load JSTART Instruction Startup Sequence Yes Operational Reconfigure? No UG570_c6_08_080514 図 6-8 : デバイ ス コ ン フ ィ ギ ュ レーシ ョ ンの フ ロー図 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 87 第 6 章 : バウン ダ リ スキ ャ ンおよび JTAG コ ン フ ィ ギ ュ レーシ ョ ン 単一デバイ スの コ ン フ ィ ギ ュ レーシ ョ ン 表 6-5 で、 UltraScale FPGA の コ ン フ ィ ギ ュ レーシ ョ ンに必要な TAP コ ン ト ロ ー ラ ーの コ マ ン ド について説明 し ます。 TAP コ ン ト ロ ー ラ ーの ス テー ト は、 図 6-5 を参照 し て く だ さ い。 Vivado® デバ イ ス プ ロ グ ラ マ を使用 し て コ ン フ ィ ギ ュ レーシ ョ ンす る 場合、 TAP コ ン ト ロ ー ラ ーの コ マ ン ド は自動的に実行 さ れます。 表 6-5 : 単一デバイ スの コ ン フ ィ ギ ュ レーシ ョ ン シーケ ン ス セ ッ ト /ホール ド TAP コ ン ト ロー ラ ーの状態 ク ロ ッ ク数 TDI TMS TCK 1 電源投入時に TMS を ロ ジ ッ ク 1 に し 、 TCK ク ロ ッ ク を 5 回入力す る 。 こ れに よ り 、 TLR (Test-Logic-Reset) ス テー ト か ら 開始 さ れます。 X 1 5 2 RTI (Run-Test/Idle) ス テー ト に移行す る X 0 1 3 Select-IR ス テー ト に移行す る X 1 2 4 Shift-IR ス テー ト に移行す る X 0 2 01011(1) 0 5 0 1 1 5 6 LSB か ら 順に JPROGRAM 命令を読み込む IEEE 規格に従っ て、 Shift-IR の終了時に JPROGRAM の最後のビ ッ ト MSB を読み込む 7 Update-IR ス テー ト に移行す る X 1 1 8 Select-IR ス テー ト に移行す る X 1 2 9 Shift-IR ス テー ト に移行す る X 0 2 10 LSB か ら 順に CFG_IN 命令を読み込む 00101 0 5 0 1 1 11 Shift-IR ス テー ト か ら 出 る と き に、 CFG_IN 命令の MSB を読み込む 12 Update-IR ス テー ト に移行す る X 1 1 13 RTI ス テー ト に移行 し 、 tPOR 遅延だけ待機する X 0 20,000(2) 14 Select-DR ス テー ト に移行す る X 1 1 15 Shift-DR ス テー ト に移行す る X 0 2 16 FPGA のビ ッ ト ス ト リ ーム を シ フ ト イ ンす る。Bit n (MSB) はビ ッ ト ス ト リ ームの最初のビ ッ ト (3)(4) bit 1 ... bit n 0 (ビ ッ ト ス ト リ ーム 中の ビ ッ ト ) -1 bit 0 1 1 17 ビ ッ ト ス ト リ ームの最後の ビ ッ ト を シ フ ト イ ンす る 。 Bit 0 (LSB) は、 Exit1-DR ス テー ト への移行時にシ フ ト す る 18 Update-DR ス テー ト に移行す る X 1 1 19 RTI ス テー ト に移行す る X 0 1 20 Select-IR ス テー ト に移行す る X 1 2 21 Shift-IR ス テー ト に移行す る X 0 2 22 JSTART 命令の読み込みを開始す る (オプシ ョ ン)。 JSTART 命令に よ っ て ス タ ー ト ア ッ プ シーケ ン ス が初期化 さ れ る 01100 0 5 23 Shift-IR ス テー ト か ら 出 る と き に、 JSTART 命令の MSB を読み込む 0 1 1 24 Update-IR ス テー ト に移行す る X 1 1 25 RTI ス テー ト に移行 し 、 TCK ク ロ ッ ク を最低 2,000 回入力 し て ス タ ー ト ア ッ プ シーケ ン ス を開始 さ せ る X 0 2,000 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 88 第 6 章 : バウン ダ リ スキ ャ ンおよび JTAG コ ン フ ィ ギ ュ レーシ ョ ン 表 6-5 : 単一デバイ スの コ ン フ ィ ギ ュ レーシ ョ ン シーケ ン ス (続き) セ ッ ト /ホール ド TAP コ ン ト ロー ラ ーの状態 26 TLR ス テー ト に移行す る 。 デバ イ ス が動作を開始す る ク ロ ッ ク数 TDI TMS TCK X 1 3 注記 : 1. SSI テ ク ノ ロ ジ デバ イ ス では、 命令レ ジ ス タ のサ イ ズが大 き く な り ます (17 ページの表 1-5 参照)。 詳細は、 各デバ イ ス の BSDL フ ァ イ ル を参照 し て く だ さ い。 2. INIT_B が High にな り 、 CFG_IN を送信で き る よ う にな る ま でに 20ms の tPOR が必要です。 こ の例では、 TCK サ イ ク ルの値は TCK の周波 数 1MHz に基づいてい ます。 3. コ ン フ ィ ギ ュ レーシ ョ ン レ ジ ス タ の場合、 右 (TDI) か ら 左 (TDO) に MSB か ら デー タ がシ フ ト し ます。 コ ン フ ィ ギ ュ レーシ ョ ン レ ジ ス タ へのシ フ ト は、 その他の レ ジ ス タ へのシ フ ト と は異な り 、 MSB 順 と な り ます。 4. ス タ ッ ク ド シ リ コ ン イ ン タ ー コ ネ ク ト (SSI) テ ク ノ ロ ジ を採用 し た 3D IC では、 ビ ッ ト ス ト リ ーム全体がデバ イ ス にシ フ ト さ れ る ま で ( ス テ ッ プ 16) JTAG TAP を Shift-DR ス テー ト に し てお く 必要があ り ます。 ただ し 、 例外 と し て ビ ッ ト 0 のみは ス テ ッ プ 17 でシ フ ト さ れま す。 複数デバイ スの コ ン フ ィ ギ ュ レーシ ョ ン 複数の UltraScale FPGA を 1 つのチ ェーンで接続 し て コ ン フ ィ ギ ュ レーシ ョ ンする こ と も で き ます (図 6-3 参照)。JTAG チ ェーン内の複数のデバ イ ス は 1 つずつ コ ン フ ィ ギ ュ レーシ ョ ン さ れます。 複数デバ イ ス の コ ン フ ィ ギ ュ レーシ ョ ン は、 シ グナル イ ン テ グ リ テ ィ が良好に保たれてい る 限 り 、 チ ェ ーンの長 さ にかかわ ら ず実行で き ます。 コ ン フ ィ ギ ュ レーシ ョ ン ツールは、JTAG ヘ ッ ダーか ら の TDI 信号に最 も 近いデバ イ ス か ら 順にチ ェーン内のデバ イ ス を自動的に 検出 し ます。 コ ン フ ィ ギ ュ レーシ ョ ン モー ド が JTAG のみの場合は、 PROGRAM_B、 INIT_B、 お よ び DONE を それ ぞれ別々のプルア ッ プ抵抗へ接続で き ます。 TAP コ ン ト ロ ー ラ ーの手順は、 図 6-5 の ス テー ト 図を参照 し て く だ さ い。 1. 電源投入時に TMS を ロ ジ ッ ク 1 に し 、 TCK ク ロ ッ ク を 5 回入力 し ます。 こ れに よ り 、 TLR (Test-Logic-Reset) ス テー ト か ら 開始 さ れます。 2. CFG_IN 命令を タ ーゲ ッ ト デバ イ ス に読み込みます (その他すべてのデバ イ ス は BYPASS 命令)。 3. RTI ス テー ト に移行 し ます (RUN-TEST/IDLE)。 4. 表 6-5 の 13 ~ 17 の手順を実行 し 、 コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ーム を読み込みます。 5. 各デバ イ ス に対 し て、 手順 2 お よ び手順 3 を繰 り 返 し ます。 6. JSTART コ マ ン ド をすべてのデバ イ ス に読み込みます。 7. RTI ス テー ト に移行 し 、 TCK を 2,000 回 ク ロ ッ ク 入力 し ます。 こ の段階ですべてのデバ イ ス はア ク テ ィ ブです。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 89 第 7章 デザイ ン入力 は じ めに コ ン フ ィ ギ ュ レーシ ョ ン プ ロ セ ス のほ と ん ど は、 デザ イ ン エ レ メ ン ト に よ る 影響を受け る 前に完了 し ますが、 最初 の コ ン フ ィ ギ ュ レーシ ョ ンが完了 し 、 デバ イ ス が動作 し てい る 最中に コ ン フ ィ ギ ュ レーシ ョ ン関連機能へのア ク セ ス を提供す る デザ イ ン エ レ メ ン ト がい く つかあ り ます。こ れ ら のデザ イ ン エ レ メ ン ト は、デザ イ ンに イ ン ス タ ン シエー ト し てお く 必要があ り ます。 そのほ と ん どは、 実際に必要な場合のみ使用 し て く だ さ い。 コ ン フ ィ ギ ュ レーシ ョ ンに 影響す る ユーザー オプシ ョ ンは、 プ ロ パテ ィ で指定 し ます (19 ページの 「デザ イ ン ツール」 参照)。 こ の章では、 コ ン フ ィ ギ ュ レーシ ョ ン機能に関連す る 次のデザ イ ン プ リ ミ テ ィ ブについて説明 し ます。 こ れ以外のプ リ ミ テ ィ ブ も 含めた詳 し い情報は、『UltraScale アーキ テ ク チ ャ ラ イ ブ ラ リ ガ イ ド 』 (UG974) [参照 13] に記載 さ れてい ます。 こ れ ら のプ リ ミ テ ィ ブは、 いずれ も デザ イ ンに イ ン ス タ ン シエー ト す る 必要があ り ます。 各プ リ ミ テ ィ ブの イ ン ス タ ン シエーシ ョ ン テ ンプ レー ト は、 こ の ラ イ ブ ラ リ ガ イ ド お よ び Vivado 言語テ ンプ レー ト にあ り ます。 推奨 : FRAME_ECCE3 は、 必ず Soft Error Mitigation (SEM) IP を使用 し て イ ン ス タ ン シエー ト し て く だ さ い。 • 「BSCANE2」 • 「DNA_PORTE2」 • 「EFUSE_USR」 • 「FRAME_ECCE3」 • 「ICAPE3」 • 「MASTER_JTAG」 • 「STARTUPE3」 • 「USR_ACCESSE2」 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 90 第 7 章 : デザイ ン入力 BSCANE2 BSCANE2 プ リ ミ テ ィ ブは、内部 FPGA ロ ジ ッ ク と JTAG バ ウ ン ダ リ ス キ ャ ン ロ ジ ッ ク コ ン ト ロ ー ラ ー間のア ク セ ス を可能に し ます。 こ れに よ り 、 FPGA 内部で動作する デザ イ ンは FPGA の JTAG テ ス ト ア ク セ ス ポー ト (TAP) 専用ピ ン と 通信で き る よ う にな り ま す。 JTAG ピ ン に内部か ら ア ク セ スす る には、 BSCANE2 プ リ ミ テ ィ ブ を イ ン ス タ ン シ エ ー ト す る 必要 が あ り ま す。 JTAG ピ ン か ら TAP コ ン ト ロ ー ラ ーへ直接 ア ク セ ス す る 通常 の JTAG 動作 に は、 BSCANE2 プ リ ミ テ ィ ブは必要あ り ません。 Vivado ロ ジ ッ ク 解析を使用する か、 Vivado デバ イ ス プ ロ グ ラ マで間接フ ラ ッ シ ュ プ ロ グ ラ ム を使用す る 場合、 BSCANE2 は自動的にデザ イ ンに追加 さ れます。 BSCANE2 プ リ ミ テ ィ ブは 7 シ リ ーズ FPGA と 同 じ です。 バ ウ ン ダ リ ス キ ャ ンお よ び BSCANE2 プ リ ミ テ ィ ブの使用に関す る 詳細は、第 6 章「バ ウ ン ダ リ ス キ ャ ンお よ び JTAG コ ン フ ィ ギ ュ レーシ ョ ン」 を参照 し て く だ さ い。 プリ ミティブ 図 7-1 に BSCANE2 プ リ ミ テ ィ ブ を示 し ます。 X-Ref Target - Figure 7-1 BSCANE2 TDO CAPTURE DRCK RESET RUNTEST SEL SHIFT TCK TDI TMS UPDATE ug570_c7_01_111413 図 7-1 : BSCANE2 プ リ ミ テ ィ ブ UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 91 第 7 章 : デザイ ン入力 ピ ンの説明 表 7-1 に BSCANE2 プ リ ミ テ ィ ブの ピ ンの接続を定義 し ます。 表 7-1 : BSCANE2 のピ ンの説明 ピン 方向 幅 説明 CAPTURE 出力 1 TAP コ ン ト ロ ー ラ ーが Capture-DR ス テー ト の と き にアサー ト さ れます。 DRCK 出力 1 ゲー ト 付 き TCK 出力。SEL がアサー ト さ れてい る 場合、CAPTURE ま たは SHIFT がアサー ト さ れ る と ト グル し ます。 RESET 出力 1 TAP コ ン ト ロ ー ラ ーが Test-Logic-Reset ス テー ト の と き にアサー ト さ れます。 RUNTEST 出力 1 TAP コ ン ト ロ ー ラ ーが Run-Test/Idle ス テー ト の と き にアサー ト さ れます。 SEL 出力 1 BSCANE2 イ ン ス タ ン ス の JTAG_CHAIN 属性 (1 ~ 4) に対応す る USER 命令 (USER1 ~ USER4) がア ク テ ィ ブな命令 と し て JTAG 命令レ ジ ス タ に読み込まれ る と アサー ト さ れます。 SHIFT 出力 1 TAP コ ン ト ロ ー ラ ーが Shift-DR ス テー ト の と き にアサー ト さ れます。 TCK 出力 1 Test Clock (テ ス ト ク ロ ッ ク )。 外部 TAP ピ ンか ら FPGA 内部 ロ ジ ッ ク へのプ リ ミ テ ィ ブ出力です。 TDI 出力 1 Test Data Input (テ ス ト デー タ 入力)。 外部 TAP ピ ンか ら FPGA 内部 ロ ジ ッ ク へ のプ リ ミ テ ィ ブ出力です。 TDO 入力 1 Test Data Output (テ ス ト デー タ 出力)。 ユーザー内部ス キ ャ ン レ ジ ス タ か ら のプ リ ミ テ ィ ブ入力です。 TCK の立ち下が り エ ッ ジでプ リ ミ テ ィ ブ入力が フ リ ッ プ フ ロ ッ プに取 り 込まれます。 フ リ ッ プ フ ロ ッ プの出力は外部 TAP の TDO ピ ン か ら 出力 さ れます。 TMS 出力 1 Test Mode Select (テ ス ト モー ド 選択)。外部 TAP ピ ンか ら FPGA 内部 ロ ジ ッ ク へ のプ リ ミ テ ィ ブ出力です。 UPDATE 出力 1 TAP コ ン ト ロ ー ラ ーが Update ス テー ト の と き にアサー ト さ れます。内部 ロ ジ ッ ク は、 UPDATE 信号の立ち上が り エ ッ ジで内部ス キ ャ ン レ ジ ス タ の値に更新 さ れます。 属性 表 7-2 に BSCANE2 プ リ ミ テ ィ ブの属性を示 し ます。 表 7-2 : BSCANE2 の属性 属性 タ イプ 許容値 デ フ ォル ト DISABLE_JTAG ブール型 False、 True False 1、 2、 3、 4 1 JTAG_CHAIN 10 進数 説明 JTAG バ ウ ン ダ リ ス キ ャ ン を無効に し ます。 USER コ マ ン ド のチ ェ ーン指示番号です。 ア プ リ ケーシ ョ ン 通常、 BSCANE2 の イ ン ス タ ン シエーシ ョ ンが必要 と な る のは、 FPGA ロ ジ ッ ク 内部にプ ラ イ ベー ト な ス キ ャ ン レ ジ ス タ を作成す る アプ リ ケーシ ョ ンの場合です。 こ れ ら の ス キ ャ ン レ ジ ス タ は、 通常の JTAG バ ウ ン ダ リ ス キ ャ ンの よ う にバ ウ ン ダ リ I/O ではな く 、 FPGA ロ ジ ッ ク を介 し て伝搬 し ま す。 こ のプ リ ミ テ ィ ブの各 イ ン ス タ ン ス は、 JTAG USER 命令を 1 つサポー ト し ます。複数の イ ン ス タ ン シエーシ ョ ンは、JTAG_CHAIN 属性で区別 し ます。4 つの USER 命令 (USER1 ~ USER4) をすべて処理す る には、 BSCANE2 プ リ ミ テ ィ ブ を 4 つ イ ン ス タ ン シエー ト し て、 それぞれ に異な る JTAG_CHAIN 属性を設定 し ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 92 第 7 章 : デザイ ン入力 SSI テ ク ノ ロ ジ を採用 し た 3D IC の場合、 BSCANE2 を イ ン ス タ ン シエー ト で き る のはマ ス タ ー SLR のみです。 こ の エ レ メ ン ト は、 ツールに よ っ て自動的に正 し い SLR に配置 さ れます。 BSCANE2 プ リ ミ テ ィ ブに よ っ てア ク セ ス で き る のは、 マ ス タ ー SLR の JTAG ポー ト のみです。 SSI テ ク ノ ロ ジの詳細は、 『UltraScale アーキ テ ク チ ャ お よ び製品概 要』 (DS890) [参照 2] を参照 し て く だ さ い。 BSCANE2 プ リ ミ テ ィ ブ を使用 し て、 JTAG TAP ポー ト のア ク テ ィ ビ テ ィ を制御ま たは監視す る こ と も で き ます。 こ のプ リ ミ テ ィ ブの TDO 入力信号は出力 タ イ ミ ン グ レ ジ ス タ を通過 し 、 TCK の立ち下が り エ ッ ジでプ リ ミ テ ィ ブの TDO 入力信号 を レ ジ ス タ に読み込み、 USER 命令が ア ク テ ィ ブに な る と 外部 TDO 出力 ピ ン に こ れ を 出力 し ま す。 USER1 ~ USER4 の ど の命令がア ク テ ィ ブかは、対応す る プ リ ミ テ ィ ブの SEL 出力が High にな る こ と で示 さ れます。 TAP コ ン ト ロ ー ラ ーに よ っ て生成 さ れたデー タ レ ジ ス タ ク ロ ッ ク には、 DRCK 出力か ら ア ク セ ス で き ます。 RESET、 UPDATE、 SHIFT、 CAPTURE ピ ンはそれぞれ、 バ ウ ン ダ リ ス キ ャ ン内部ス テー ト マシ ンの対応する 状態を デ コ ー ド し て表 し ます。 TDI ポー ト には、 JTAG TAP の外部 TDI ピ ンか ら ア ク セ ス し てデー タ を内部ス キ ャ ン チ ェー ンにシ フ ト 入力で き ます。 TCK お よ び TMS ピ ン も 、 同様に BSCANE2 プ リ ミ テ ィ ブ を使用 し て監視で き ます。 BSCANE2 プ リ ミ テ ィ ブを イ ン ス タ ン シエー ト し て DISABLE_JTAG=TRUE と 設定す る と 、外部 JTAG ポー ト を無効に で き ます。 こ れに よ っ て JTAG チ ェーンが切断 さ れ、 Vivado デバ イ ス プ ロ グ ラ マな ど を使用 し た JTAG か ら の リ コ ン フ ィ ギ ュ レ ー シ ョ ン が 不 可 能 に な り ま す。 デ ザ イ ン プ ロ パ テ ィ の set_property disable_jtag yes [current_design] も 使用で き ます。 write_bitstream のオプシ ョ ンで Bitstream.general.disable_ jtag:Yes (デフ ォ ル ト は No) と 指定す る こ と も で き ますが、 上記のいずれかの方法を推奨 し ます。 BSCANE2 プ リ ミ テ ィ ブの方が優先度が高 く 、 BSCANE2 の属性で JTAG を無効に し た場合、 write_bitstream で JTAG を有効には で き ません。 DNA_PORTE2 各デバ イ ス には、 96 ビ ッ ト の一意の値 (Device DNA) がデバ イ ス ID と し て埋め込まれてい ます。 こ の非揮発性の ID はザ イ リ ン ク ス に よ っ て FPGA の eFUSE ビ ッ ト に恒久的にプ ロ グ ラ ム さ れてお り 、 変更で き ないため、 不正操作 さ れ る こ と はあ り ません。 Device DNA は、 主にデバ イ ス の個体識別の目的で使用 し ます。 外部ア プ リ ケーシ ョ ン は、 JTAG ポー ト を介 し て Device DNA の値に ア ク セ ス で き ま す。 FPGA 内部のデザ イ ン も 、 Device DNA ア ク セ ス ポー ト を介 し て Device DNA にア ク セ ス で き ますが、それには DNA_PORTE2 プ リ ミ テ ィ ブ を イ ン ス タ ン シエー ト す る 必要があ り ます。 DNA_PORTE2 プ リ ミ テ ィ ブは、 Device DNA の値を キ ャ プチ ャ お よ びシ フ ト す る ための専用の 96 ビ ッ ト シ フ ト レ ジ ス タ を制御 し ます。 DNA_PORTE2 を使用 し て、 ユーザー デー タ の補足ビ ッ ト を含めた り 、 初期デー タ のシ フ ト ア ウ ト 後に DNA デー タ を繰 り 返す こ と (DNA デー タ の ロ ールオーバー ) も で き ます。 プリ ミティブ 図 7-2 に DNA_PORTE2 プ リ ミ テ ィ ブ を示 し ます。 DNA_PORTE2 プ リ ミ テ ィ ブは、 以前の フ ァ ミ リ の DNA_PORT プ リ ミ テ ィ ブ と ビ ッ ト 数が 57 か ら 96 に拡張 さ れて い る 以外は同 じ です。 こ の た め、 DNA_PORT プ リ ミ テ ィ ブか ら DNA_PORTE2 プ リ ミ テ ィ ブへ直接は移行で き ません。 X-Ref Target - Figure 7-2 DNA_PORTE2 DIN DOUT READ SHIFT CLK ug570_c7_02_111413 図 7-2 : DNA_PORTE2 プ リ ミ テ ィ ブ UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 93 第 7 章 : デザイ ン入力 ピ ンの説明 表 7-3 に DNA_PORTE2 プ リ ミ テ ィ ブの ピ ン を示 し ます。 正 し く 動作す る よ う に、 入力お よ び出力をすべてデザ イ ン に接続 し て く だ さ い。 機能はすべて CLK 入力に同期 し て動作 し ます。 表 7-3 : DNA_PORTE2 ピ ンの説明 ピン 方向 幅 説明 CLK 入力 1 ユーザー ク ロ ッ ク 入力。 DIN 入力 1 ユーザー デー タ 拡張入力ピ ン。 DOUT 出力 1 DNA 出力ピ ン。CLK の立ち上が り エ ッ ジで遷移 し 、LSB か ら 順に出力 し ます。 READ 入力 1 High にパルスする と 、96 ビ ッ ト の eFUSE ビ ッ ト がシ フ ト レ ジ ス タ に並列 し て 読み込まれ、 Device DNA が読み出 さ れます (表 8-6 参照)。 SHIFT 入力 1 ア ク テ ィ ブ High の SHIFT イ ネーブル。 SHIFT を実行する には、 READ = 0 と す る 必要があ り ます。 属性 属性 SIM_DNA_VALUE はオプ シ ョ ン で DNA デー タ シーケ ン ス を シ ミ ュ レ ーシ ョ ンす る よ う に設定で き ま す。 デ フ ォ ル ト では、 シ ミ ュ レーシ ョ ン モデルの Device DNA デー タ ビ ッ ト はすべて 0 です。 表 7-4 に DNA_PORTE2 プ リ ミ テ ィ ブの属性を示 し ます。 表 7-4 : DNA_PORTE2 の属性 属性 SIM_DNA_VALUE タ イプ 許容値 デ フ ォル ト 説明 16 進数 任意の 96 ビ ッ ト 16 進数 すべて 0 シ ミ ュ レ ー シ ョ ン 用の DNA 値 を 設 定 し ます。 Device DNA お よ び DNA_PORTE2 プ リ ミ テ ィ ブの使用に関す る 詳細は、 第 8 章 「ビ ッ ト ス ト リ ームのセキ ュ リ テ ィ 、 eFUSE、 Device DNA」 を参照 し て く だ さ い。 EFUSE_USR Kintex® UltraScale™ お よ び Virtex® UltraScale デバ イ ス には、 ユーザー定義の値を 1 回だけ書 き 込む こ と がで き る 32 ビ ッ ト の非揮発性 eFUSE があ り ます。 通常、 こ れ ら のビ ッ ト にはカ ス タ ム ユーザー デザ イ ンの ID を書 き 込みます。 こ の書 き 込みは JTAG ポー ト か ら 行い ます。 書 き 込みには、 ザ イ リ ン ク ス の コ ン フ ィ ギ ュ レーシ ョ ン ツール と ケーブ ル、 ま たはサー ド パーテ ィ のプ ロ グ ラ マ を使用 し ます。 こ れ ら の 32 ビ ッ ト に よ っ て、 FUSE_USER コ ン フ ィ ギ ュ レーシ ョ ン レ ジ ス タ の値が定義 さ れ ます。 CNTL レ ジ ス タ の読み出 し /書 き 込みア ク セ ス ビ ッ ト の設定に基づ き 、 こ れ ら の 32 ビ ッ ト を JTAG ポー ト を介 し て ビ ッ ト 0 か ら 順に 読み出 し ま たは書 き 込む こ と がで き ます。 内部か ら ア ク セ ス す る 場合は、 EFUSE_USR プ リ ミ テ ィ ブ を イ ン ス タ ン シエー ト す る 必要があ り ま す。 EFUSE_USR を使用す る と 、 32 ビ ッ ト に対 し て非同期に並列ア ク セ ス で き ます。 EFUSE_USR プ リ ミ テ ィ ブは 7 シ リ ーズ と ま っ た く 同 じ で、 直接移行で き ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 94 第 7 章 : デザイ ン入力 プリ ミティブ 図 7-3 に EFUSE_USR プ リ ミ テ ィ ブ を示 し ます。 X-Ref Target - Figure 7-3 EFUSE_USR EFUSEUSR[31:0] ug570_c7_03_081414 図 7-3 : EFUSE_USR プ リ ミ テ ィ ブ ピ ンの説明 表 7-6 に EFUSE_USR プ リ ミ テ ィ ブの ピ ン を示 し ます。 表 7-5 : EFUSE_USR のピ ンの説明 属性 EFUSEUSR[31:0] 方向 幅 説明 出力 32 FUSE_USER レ ジ ス タ 値の出力。 出力値は、 ユーザーがプ ロ グ ラ ム し た eFUSE ビ ッ ト に よ っ て定義 さ れ ま す。 プ ロ グ ラ ム さ れていないデバ イ ス の場合、 すべての ビ ッ ト が 0 と な り ます。 属性 表 7-6 に EFUSE_USR プ リ ミ テ ィ ブの属性を示 し ます。 表 7-6 : EFUSE_USR の属性 属性 タ イプ 許容値 デ フ ォル ト 説明 SIM_EFUSE_VALUE 16 進数 任意の 32 ビ ッ ト 16 進数 すべて 0 シ ミ ュ レーシ ョ ン用の EFUSE 値を設 定 し ます。 FRAME_ECCE3 FRAME_ECCE3 プ リ ミ テ ィ ブは予約 さ れてい ます。 こ のプ リ ミ テ ィ ブは、 Soft Error Mitigation (SEM) IP を イ ンプ リ メ ン ト す る 際に使用 し ます。 Kintex UltraScale お よ び Virtex UltraScale FPGA の FRAME_ECCE3 は、 7 シ リ ーズ デバ イ ス の FRAME_ECCE2 と は大 き く 異な っ てい ます。 FRAME_ECCE2 は FRAME_ECCE3 に直接は移行で き ませんが、 SEM IP は自動的に新 し いアー キ テ ク チ ャ に適応 し ます。 KU025 デバ イ ス は SEM IP をサポー ト し ていない こ と に留意 し て く だ さ い。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 95 第 7 章 : デザイ ン入力 ICAPE3 ICAPE3 を使用す る と 、 コ ン フ ィ ギ ュ レーシ ョ ン後に FPGA ロ ジ ッ ク か ら FPGA の コ ン フ ィ ギ ュ レーシ ョ ン機能にア ク セ ス で き ます。 こ の コ ン ポーネ ン ト に よ り 、 コ ン フ ィ ギ ュ レーシ ョ ン ロ ジ ッ ク と の間で コ マ ン ド と デー タ の書 き 込 み と 読み出 し が可能にな り ます。 ICAPE3 イ ン タ ーフ ェ イ ス は、 ビ ッ ト ス ワ ッ プ (120 ページの 「パ ラ レル バ ス のビ ッ ト 順」 参照) を含め外部ス レーブ SelectMAP のパ ラ レル 32 ビ ッ ト イ ン タ ーフ ェ イ ス と ほぼ同 じ です。ただ し 、ICAPE3 には独立 し た入力バ ス と 出力バ ス があ り 、 CSIB 入力で入力バ ス が無視 さ れ る 一方で、 出力バ スは ト グル し 続け ます。 ICAPE3 イ ン タ ーフ ェ イ ス を介 し て暗号化 し ていないパーシ ャ ル ビ ッ ト ス ト リ ーム の送信や リ ー ド バ ッ ク が可能で あ る ため、 セキ ュ リ テ ィ を重視す る 場合は ICAPE3 プ リ ミ テ ィ ブ を外部デバ イ ス ピ ンに接続 し ないで く だ さ い。 こ の 機能は適切に使用 し なければ FPGA の機能お よ び信頼性に悪影響を与え る こ と にな る ため、 こ の機能に精通 し ていな い場合の使用は避けて く だ さ い。 ICAPE3 は、マルチブー ト お よ びア ク テ ィ ブなパーシ ャ ル リ コ ン フ ィ ギ ュ レーシ ョ ン アプ リ ケーシ ョ ン での使用に適 し てい ます。 WBSTAR (Warm Boot Starting Address) レ ジ ス タ で指定 し た ア ド レ ス か ら デバ イ ス自身の再読み込みを開 始す る IPROG コ マ ン ド を発行す る には、 ICAPE3 を イ ン ス タ ン シエー ト す る 必要があ り ます。 WBSTAR レ ジ ス タ に は、 IPROG コ マ ン ド が送信 さ れた後に コ ン フ ィ ギ ュ レーシ ョ ン コ ン ト ロ ー ラ ーが使用す る ア ド レ ス が格納 さ れます。 同様の機能は、 MCAP に も あ り ます。 ICAP 同様、 MCAP も 最初の コ ン フ ィ ギ ュ レーシ ョ ン後に し か使用で き ません が、 MCAP は リ ー ド バ ッ ク をサポー ト し ません。 Persist を有効に し た場合、 ICAPE3 は無効にな り ます。 ま た、 JTAG お よ び MCAP が ICAPE3 よ り も 優先 さ れます。 UltraScale アーキ テ ク チ ャ FPGA の ICAPE3 は、 7 シ リ ーズ FPGA の ICAPE2 よ り も 高い周波数をサポー ト し 、 出力信 号 の 数 も 増 え て い ま す。 ICAPE3 は 32 ビ ッ ト イ ン タ ー フ ェ イ ス の み を サ ポ ー ト し て お り 、 ICAPE2 に あ っ た ICAP_WIDTH 属性はあ り ません。7 シ リ ーズ デザ イ ンに イ ン ス タ ン シエー ト さ れてい る ICAPE2 は、 UltraScale FPGA の ICAPE3 に自動的に移行 さ れます。 Soft Error Mitigation (SEM) IP な ど、 い く つかのザ イ リ ン ク ス IP は ICAPE3 を自 動的に使用 し ます。 プリ ミティブ 図 7-4 に ICAPE3 プ リ ミ テ ィ ブ を示 し ます。 X-Ref Target - Figure 7-4 ICAPE3 I[31:0] CLK O[31:0] AVAIL CSIB PRDONE RDWRB PRERROR ug570_c7_05_112513 図 7-4 : ICAPE3 プ リ ミ テ ィ ブ UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 96 第 7 章 : デザイ ン入力 ピ ンの説明 表 7-7 に ICAPE3 プ リ ミ テ ィ ブの ピ ン を示 し ます。 表 7-7 : ICAPE3 のピ ンの説明 ピン 方向 幅 説明 AVAIL 出力 1 ICAP が JTAG ま たは MCAP 割 り 込みに使用で き る こ と を示 し ます。 こ れに よ り 、FPGA ロ ジ ッ ク が正 し く 応答で き る よ う にな り ます。 CLK 入力 1 ク ロ ッ ク 入力。ICAPE3 プ リ ミ テ ィ ブ を イ ン ス タ ン シエー ト し た 場合、ICAPE3 の CLK 入力は常に リ ー ド バ ッ ク CRC ク ロ ッ ク と し て使用 さ れます。 CSIB 入力 1 ア ク テ ィ ブ Low の ICAP 入力 イ ネーブル。 I[31:0] 入力 32 コ ン フ ィ ギ ュ レーシ ョ ン デー タ 入力バス。 O[31:0] 出力 32 コ ン フ ィ ギ ュ レーシ ョ ン デー タ 出力バ ス。 デー タ の読み出 し 中 以外は、 現在の ス テー タ ス が格納 さ れます。 PRDONE 出力 1 パーシ ャ ル リ コ ン フ ィ ギ ュ レーシ ョ ン完了。 デフ ォ ル ト は High です。 FDRI パケ ッ ト を検出す る と Low にな り 、 DESYNC を検 出 し て EOS が High な ら High に戻 り ます。 PRERROR 出力 1 パーシ ャ ル リ コ ン フ ィ ギ ュ レ ーシ ョ ン エ ラ ー。 デ フ ォ ル ト は Low です。パーシ ャ ル コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ー ム エ ラ ーが検出 さ れ る と High にな り ます。RCRC コ マ ン ド を読 み込む と リ セ ッ ト さ れます。 RDWRB 入力 1 読み出 し (ア ク テ ィ ブ High) ま たは書き 込み (ア ク テ ィ ブ Low) 選 択入力。 属性 表 7-8 に ICAPE3 プ リ ミ テ ィ ブの属性を示 し ます。 表 7-8 : ICAPE3 の属性 タ イプ 許容値 デ フ ォル ト 説明 DEVICE_ID 属性 16 進数 すべての UltraScale FPGA の IDCODE 値 32'h03628093 シ ミ ュ レ ーシ ョ ン で使用す る デバ イ ス IDCODE の固定値を指定 し ます。 ICAP_AUTO_SWITCH 文字列 Disable、 Enable Disable Enable にす る と 、ICAP が Top と Bottom の間 で切 り 替わ り ます (推奨 し ない)。 SIM_CFG_FILE_NAME 文字列 <フ ァ イ ル名> None シ ミ ュ レーシ ョ ン モデルで解析 さ れ る RBT (Raw Bitsream) フ ァ イ ルを指定 し ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 97 第 7 章 : デザイ ン入力 ICAPE3 の リ ソ ース 推奨 : 1 つの UltraScale FPGA で イ ン ス タ ン シエー ト す る ICAPE3 リ ソ ースは 1 つだけに し て く だ さ い。 配置はツール に よ っ て自動的に行われます。 1 つのダ イ には 2 つの ICAPE3 リ ソ ース があ り ますが、 SEU の保護を強化する ため各 FPGA に 1 つ し かない も の と 見 な し て 使用 し て く だ さ い。 ツ ー ル は、 デ フ ォ ル ト で ト ッ プ の ICAPE3 を 自動的 に 使用 し ま す。 上級設計者 は、 write_bitstream の BITSTREAM.Readback.ICAP_Select オプシ ョ ン を使用 し てボ ト ム の リ ソ ー ス を選択す る こ と も で き ます。 制御レ ジ ス タ 0 のビ ッ ト 30 (ICAP_SELECT) を 0 (デフ ォ ル ト ) に設定する と ト ッ プの ICAPE3 サ イ ト が有効に な り 、 1 に設定す る と ボ ト ムの ICAPE3 サ イ ト が有効にな り ます。 現在ア ク テ ィ ブな ICAPE3 を使用 し て CTL0<30> を ト グルす る と 、 ユーザーに よ る 切 り 替えが可能です。 ICAP_AUTO_SWITCH 属性を Enable に設定す る と 、 LSB か ら の下位 8 ビ ッ ト で同期 ワー ド を使用 し てデバ イ ス が 2 つの ICAPE3 サ イ ト を自動的に切 り 替え ます。 ス タ ッ ク ド シ リ コ ン イ ン タ ー コ ネ ク ト (SSI) テ ク ノ ロ ジ を採用 し た 3D IC では、 1 つの SLR (Super Logic Region) の ICAPE3 がマ ス タ ー と 定義 さ れ、その他すべての SLR に対 し て書き 込み と 読み出 し が可能です。ツールを使用す る と 、 イ ン ス タ ン シエー ト し た ICAPE3 が正 し いマ ス タ ー SLR に自動的に配置 さ れ ます。 モー ド ピ ン が JTAG に設定 さ れ てい る 場合、 マ ス タ ー SLR ICAP は ス レーブ SLR へア ク セ ス で き ない こ と に留意 し て く だ さ い。 JTAG モー ド は常に 利用可能なため、 コ ン フ ィ ギ ュ レーシ ョ ン用にモー ド ピ ン を JTAG モー ド に設定する 必要はあ り ません。 MASTER_JTAG MASTER_JTAG を使用す る と 、 外部ピ ン よ り も 優先的に FPGA ロ ジ ッ ク か ら JTAG ポー ト を制御で き ます。 こ れは、 UltraScale アーキ テ ク チ ャ FPGA で導入 さ れた新 し い機能です。 MASTER_JTAG を イ ン ス タ ン シエー ト す る と 、 コ ン フ ィ ギ ュ レーシ ョ ン ス タ ー ト ア ッ プの最後 (EOS) で外部 JTAG ポー ト が無効にな り ます。 し たがっ て、 一時的なデザ イ ンで JTAG ポー ト に内部か ら ア ク セ スす る 必要のあ る 場合を除 き 、MASTER_JTAG は イ ン ス タ ン シエー ト し ないで く だ さ い。 MASTER_JTAG を イ ン ス タ ン シエー ト す る と 外部 JTAG ポー ト が無効にな る ため、 Vivado® デバ イ ス プ ロ グ ラ マや Vivado ロ ジ ッ ク 解析が使用で き な く な り ます。3D IC では、MASTER_JTAG は自身が イ ン ス タ ン シエー ト さ れてい る SLR に し かア ク セ ス で き ません。 プリ ミティブ 図 7-5 に MASTER_JTAG プ リ ミ テ ィ ブを示 し ます。 X-Ref Target - Figure 7-5 MASTER_JTAG TCK TMS TDI TDO ug570_c7_06_112513 図 7-5 : MASTER_JTAG プ リ ミ テ ィ ブ UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 98 第 7 章 : デザイ ン入力 ピ ンの説明 表 7-9 に MASTER_JTAG プ リ ミ テ ィ ブの ピ ン を示 し ます。 表 7-9 : MASTER_JTAG のピ ンの説明 ピン 方向 幅 説明 TCK 入力 1 JTAG TCK ク ロ ッ ク ピ ン TDI 入力 1 JTAG TDI 入力ピ ン TDO 出力 1 JTAG TDO 出力ピ ン TMS 入力 1 JTAG TMS 入力ピ ン STARTUPE3 STARTUPE3 は、バン ク 0 にあ る 一部の コ ン フ ィ ギ ュ レーシ ョ ン専用ピ ンへ接続す る 目的で使用 し ます。専用 コ ン フ ィ ギ ュ レーシ ョ ン ピ ン を制御す る こ と で、 コ ン フ ィ ギ ュ レーシ ョ ン後に フ ラ ッ シ ュ にア ク セ ス で き る よ う にな り ます。 コ ン フ ィ ギ ュ レーシ ョ ン目的にのみフ ラ ッ シ ュ を使用す る 場合、 FPGA デザ イ ンに STARTUPE3 は必要あ り ません。 バン ク 65 にあ る 多目的 コ ン フ ィ ギ ュ レーシ ョ ン ピ ンについては、 適切な ロ ケーシ ョ ン制約を使用 し 、 標準ユーザー ロ ジ ッ ク を イ ンプ リ メ ン ト し て フ ラ ッ シ ュ へのア ク セ ス に必要な ピ ンへ接続で き ます。 た と えば、 x8 以上の コ ン フ ィ ギ ュ レーシ ョ ン モー ド を使用す る 場合、STARTUPE3 は、バン ク 0 内にあ る コ ン フ ィ ギ ュ レーシ ョ ン バ ス D[03:00] の 下位 4 ビ ッ ト に し か使用 さ れません。 高位ピ ン D[xx:04] は、 ユーザー デザ イ ンの一部 と し て直接接続で き ます。 UltraScale アーキ テ ク チ ャ FPGA の STARTUPE2 に ス タ ー ト ア ッ プ ク ロ ッ ク を入力す る 機能があ り ま し たが、 Kintex UltraScale お よ び Virtex UltraScale FPGA の STARTUPE3 プ リ ミ テ ィ ブにはその機能はあ り ません。それ以外の点では、 STARTUPE3 は STARTUPE2 の上位セ ッ ト であ り 、 デザ イ ンは自動的に リ タ ーゲ ッ ト さ れます。 UltraScale FPGA では D00-D03 ピ ンお よ び FCS_B ピ ンが コ ン フ ィ ギ ュ レーシ ョ ン専用バン ク に含まれ る ため、STARTUPE3 には こ れ ら の ピ ン を制御す る 機能が追加 さ れてい ます。 双方向の D00-D03 ピ ンには、 STARTUPE3 に対す る 独立 し た入力お よ び出力 接続があ り ます。こ れ以外に も 、コ ン フ ィ ギ ュ レーシ ョ ン後に標準 I/O (双方向 I/O を含む) と し て制御で き る コ ン フ ィ ギ ュ レーシ ョ ン ピ ンがあ り ます。 ス タ ッ ク ド シ リ コ ン イ ン タ ー コ ネ ク ト (SSI) テ ク ノ ロ ジ を採用 し たデバ イ ス では、 デザ イ ン内で 1 つの STARTUPE3 がマ ス タ ー SLR に イ ンプ リ メ ン ト さ れ、 ほかの SLR に自動的に複製 さ れ る こ と に よ っ てデバ イ ス のグ ロ ーバル制御 を可能に し てい ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 99 第 7 章 : デザイ ン入力 プリ ミティブ 図 7-6 に STARTUPE3 プ リ ミ テ ィ ブ を示 し ます。 X-Ref Target - Figure 7-6 STARTUPE3 GSR GTS KEYCLEARB PACK USRCCLKO CFGCLK CFGMCLK EOS PREQ USRCCLKTS USRDONEO USRDONETS FCSBO FCSBTS DO[3:0] DI[3:0] DTS[3:0] ug570_c7_07_073114 図 7-6 : STARTUPE3 プ リ ミ テ ィ ブ ピ ンの説明 表 7-10 に STARTUPE3 プ リ ミ テ ィ ブの ピ ン を示 し ます。 ト ラ イ ス テー ト の制御信号はデフ ォ ル ト で 1 にな り 、 出力 が無効にな り ます。 KEYCLEARB のデフ ォ ル ト 値は 1 で、 それ以外の入力のデフ ォ ル ト 値は 0 です。 表 7-10 : STARTUPE3 のピ ンの説明 ピン 方向 幅 説明 CFGCLK 出力 1 FPGA ロ ジ ッ ク への コ ン フ ィ ギ ュ レーシ ョ ン メ イ ン ク ロ ッ ク 出力。CFGCLK は、CCLK ピ ン の信号を その ま ま出力 し ます。 出力 さ れ る ク ロ ッ ク 信号の周波数は、 ビ ッ ト ス ト リ ーム オプシ ョ ンの Configuration Rate で設定 し ます。 こ の出力は、 コ ン フ ィ ギ ュ レー シ ョ ン中お よ びマ ス タ ー モー ド (Persist を有効に し た場合) のみア ク テ ィ ブです。 CFGMCLK 出力 1 FPGA ロ ジ ッ ク への コ ン フ ィ ギ ュ レ ーシ ョ ン内部オシ レー タ ー ク ロ ッ ク 出力。 FPGA 内部オシ レー タ ーか ら 供給 さ れ る ク ロ ッ ク 信号を出力 し ます。標準値は、各デー タ シー ト ([参照 6] ま たは [参照 7]) を参照 し て く だ さ い。 DI(3:0) 出力 4 STARTUPE3 か ら FPGA ロ ジ ッ ク へ配線可能な外部 D[03:00] コ ン フ ィ ギ ュ レーシ ョ ン ピ ン入力。 DO(3:0) 入力 4 STARTUPE3 に配線 し て 外部 D[03:00] コ ン フ ィ ギ ュ レ ー シ ョ ン ピ ン に接続可能 な FPGA ロ ジ ッ ク 信号。 DTS(3:0) 入力 4 外部 D[03:00] 出力ピ ンの ト ラ イ ス テー ト 制御。 EOS 出力 1 ス タ ー ト ア ッ プ終了 (EOS) を示すア ク テ ィ ブ High の信号。 EOS は FPGA ロ ジ ッ ク へ の出力です。 こ の出力に よ り 、 コ ン フ ィ ギ ュ レ ーシ ョ ン ロ ジ ッ ク の EOS フ ラ グ が FPGA ロ ジ ッ ク へ伝搬 し ます。 EOS は リ セ ッ ト 信号 と し て使用で き ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 100 第 7 章 : デザイ ン入力 表 7-10 : STARTUPE3 のピ ンの説明 (続き) 方向 幅 説明 FCSBO ピン 入力 1 外部 FCS_B コ ン フ ィ ギ ュ レーシ ョ ン ピ ンへの FPGA ロ ジ ッ ク 信号。 FCSBO に よ り 、 ユーザーが FCS_B ピ ン を制御 し て フ ラ ッ シ ュ にア ク セ ス で き る よ う にな り ます。 FCSBTS 入力 1 外部 FCS_B 出力ピ ンの ト ラ イ ス テー ト 制御。 GSR 入力 1 推奨 さ れてい ません。 Low に接続 し て無効に し ます。 GSR (グ ロ ーバル セ ッ ト / リ セ ッ ト ) ピ ンは FPGA か ら のア ク テ ィ ブ High 入力で、 CLB フ リ ッ プ フ ロ ッ プの再初期化に 使用可能な非同期セ ッ ト / リ セ ッ ト を ア サー ト し ま す。 GSR 信号はデバ イ ス 全体に及 び、 ユーザー ク ロ ッ ク に非同期で リ リ ース さ れます。 非同期 リ リ ースやデバ イ ス全体 の ス キ ュ ーが原因で、 フ リ ッ プ フ ロ ッ プは同 じ ク ロ ッ ク サ イ ク ルで リ リ ース さ れず、 メ タ ス テーブルが発生す る 可能性があ り ます。GSR を使用する アプ リ ケーシ ョ ンでは、 GSR 前にすべての ク ロ ッ ク が停止する か、ま たは GSR 後にデバ イ ス が リ コ ン フ ィ ギ ュ レーシ ョ ン さ れ る こ と が必要です。 同 じ フ リ ッ プ フ ロ ッ プの初期化 (セ ッ ト / リ セ ッ ト ) は、 ス タ ー ト ア ッ プ前のデバ イ ス コ ン フ ィ ギ ュ レーシ ョ ンで問題な く 実行 さ れます。 注記 : GSR は信号名 と し て使用で き ません。 GTS 入力 1 グ ロ ーバル ト ラ イ ス テー ト 制御。 FPGA ロ ジ ッ ク か ら のア ク テ ィ ブ High 入力です。 こ の入力が High にアサー ト さ れ る と 、 コ ン フ ィ ギ ュ レーシ ョ ン バン ク 以外のすべての ユーザー I/O がハ イ イ ン ピーダ ン ス ス テー ト と な り ま す。 GTS は コ ン フ ィ ギ ュ レ ー シ ョ ン中に自動的にアサー ト さ れ、 ユーザーがアサー ト す る 必要はあ り ません。 ほ と ん ど のアプ リ ケーシ ョ ンでは、 こ のポー ト を Low に接続 し ます。 注記 : GTS は信号名 と し て使用で き ません。 KEYCLEARB 入力 1 バ ッ ク ア ッ プ バ ッ テ リ 付き の RAM (BBRAM) か ら AES 復号化キーを消去する ための 入力。 FPGA ロ ジ ッ ク か ら の入力です。 こ の ピ ン を Low に保持する と 、 バ ッ ク ア ッ プ バ ッ テ リ 付 き の RAM に格納 さ れてい る 復号化キーの内容が消去 さ れ ま す。 シ ス テ ム への攻撃を示す可能性のあ る オ ンチ ッ プの不審な ア ク テ ィ ビ テ ィ を検出す る モニ タ ー に よ り 、 KEYCLEARB を ト リ ガーで き ます。 PACK 入力 1 PROGRAM_B ピ ン ま たは PROGRAM 命令の肯定応答 (ACK)。FPGA ロ ジ ッ ク か ら の入 力です。 こ の ピ ンは、 外部 PROGRAM_B 信号ま たは内部命令のアサー ト に対 し て肯定 応答 (ACK) を返 し ます。 こ れに よ り 、 中断 し ていた PROGRAM_B ス テー ト マシ ンが 再開 し 、 FPGA が リ セ ッ ト さ れます。 こ の ピ ンは、 PROG_USR 属性を True に設定 し た 場合のみ有効にな り ます。 PACK を Low に接続 し てお く と 、 安全な動作が可能です。 PREQ 出力 1 FPGA ロ ジ ッ ク に 対 す る PROGRAM_B パ ル ス、 JPROGRAM、 IPROG、 ま た は FALLBACK 要求。 FPGA ロ ジ ッ ク への出力です。 こ の ピ ンは、 PROGRAM_B ス テー ト マシ ンか ら のデバ イ ス リ セ ッ ト 要求です。 こ れに よ り 、 PROGRAM_B 要求のアサー ト を中断 し 、 デザ イ ンが リ セ ッ ト を完了で き る 状態にな る ま で保留 し てお く こ と がで き ます。 た と えば、 リ セ ッ ト 不可能なデー タ エ レ メ ン ト を ク リ アする ま でデバ イ ス の リ コ ン フ ィ ギ ュ レーシ ョ ン を保留 し たい場合な ど に使用 し ます。こ の ピ ンは、PROG_USR 属性を True に設定 し た場合のみ有効にな り ます。PREQ をオープン/フ ロ ーテ ィ ン グの ま ま に し てお く と 、 安全な動作が可能です。 USRCCLKO 入力 1 ユーザー CCLK 入力。 FPGA ロ ジ ッ ク か ら の入力。 USERCCLKO は FPGA で生成 し た カ ス タ ム ク ロ ッ ク 周波数を FPGA の外部 CCLK ピ ンに駆動 し ます。 コ ン フ ィ ギ ュ レー シ ョ ン後に外部フ ラ ッ シ ュ デバ イ ス にア ク セ スする 際に使用 し ます。 USRCCLKTS 入力 1 CCLK ピ ンに対す る ユーザー CCLK ト ラ イ ス テー ト イ ネーブル入力。 FPGA ロ ジ ッ ク か ら の入力です。 USRCCLKTS が High にな る と 、 FPGA の外部 CCLK ピ ンがハ イ イ ン ピーダ ン ス ス テー ト にな り ます。 通常は、CCLK ピ ンがハ イ イ ン ピーダ ン ス ス テー ト にな ら ない よ う に USERCLKTS を Low に接続 し ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 101 第 7 章 : デザイ ン入力 表 7-10 : STARTUPE3 のピ ンの説明 (続き) 方向 幅 説明 USRDONEO ピン 入力 1 DONE ピ ン出力信号。FPGA ロ ジ ッ ク か ら の入力です。こ の ピ ンは、FPGA の外部 DONE ピ ン を直接駆動 し ます。 USRDONETS 入力 1 DONE ピ ンに対す る DONE ト ラ イ ス テー ト イ ネーブル入力。 FPGA ロ ジ ッ ク か ら の入 力です。 こ の入力が High にな る と 、 DONE ピ ンがハ イ イ ン ピーダ ン ス ス テー ト と な り ます。 通常は、 こ のピ ン を Low に接続 し ます。 USRDONETS を High に接続する と 、 DONE のアサー ト が禁止 さ れます。 属性 表 7-11 に STARTUPE3 プ リ ミ テ ィ ブの属性を示 し ます。 表 7-11 : STARTUPE3 の属性 属性 PROG_USR SIM_CCLK_FREQ タ イプ 許容値 デ フ ォル ト 説明 文字列 FALSE、 TRUE FALSE セキ ュ リ テ ィ 機能の PREQ/PACK を有効に し ます。 浮動 小数点 (ns) 0.0 ~ 10.0 0 シ ミ ュ レ ーシ ョ ン用の コ ン フ ィ ギ ュ レ ーシ ョ ン ク ロ ッ ク 周波数を単位 ns で設定 し ます。 PROG_USR 属性の説明 PROG_USR 属性を使用す る と 、 再プ ロ グ ラ ムの要求をデザ イ ンが遮断で き ます。 こ の機能は、 FPGA が現在の動作を 完了す る ま で、 ま たは ト ラ ン シーバーな ど の専用 リ ソ ース内の レ ジ ス タ ス テー ト を ク リ アす る ま で待っ てか ら PACK を アサー ト し 、 リ コ ン フ ィ ギ ュ レーシ ョ ン を再開 し たい場合な ど に使用 し ます。 STARTUPE3 と 専用ピ ンの接続 STARTUPE3 コ ン ポーネ ン ト の主な機能は、 ユーザー デザ イ ン と 一部の コ ン フ ィ ギ ュ レーシ ョ ン専用ピ ン を接続す る こ と です。 こ れ ら の ピ ンは、 ユーザー デザ イ ンの一部 と し て コ ン フ ィ ギ ュ レーシ ョ ン フ ラ ッ シ ュ へア ク セ スす る 際 に役立ち ま す。 STARTUPE3 は外部ピ ンへの接続を提供す る ため、 STARTUPE3 への入力は出力ピ ン ま たは双方向ピ ンへの接続 と な り 、 STARTUPE3 か ら の出力はユーザー デザ イ ンに戻る 双方向ピ ン入力 と な り ます (図 7-7 参照)。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 102 第 7 章 : デザイ ン入力 X-Ref Target - Figure 7-7 STARTUPE3 USRCCLKTS CCLK Pin USRCCLKO USRDONETS DONE Pin USRDONEO FCSBTS FCS_B Pin FCSBO DTS[3:0] 4 DO[3:0] 4 4 D03 Pin D02 Pin D01_DIN Pin D00_MOSI Pin 4 DI[3:0] ug570_c7_10_080615 図 7-7 : STARTUPE3 と 専用ピ ンの接続 フ ラ ッ シ ュ接続の タ イ ミ ングに関する注意事項 STARTUPE3 は組み合わせ接続 と な り 、 レ ジ ス タ を持ち ません。 レ ジ ス タ は STARTUPE3 の外部に配置す る 必要があ り ます。 STARTUPE3 への USRCCLKO 入力はブ ロ ッ ク 内の ロ ジ ッ ク と 同期 し ません。 こ れは、 コ ン フ ィ ギ ュ レーシ ョ ン後 CCLK ピ ンへの直接的な組み合わせ接続 と な り ます。USRCCLKO 入力は、コ ン フ ィ ギ ュ レーシ ョ ン後の イ ン タ ー フ ェ イ ス を フ ラ ッ シ ュ と 同期 さ せ る ため、 通常は FPGA のグ ロ ーバル ク ロ ッ ク リ ソ ース か ら 供給 さ れます。 パ ラ レ ル NOR フ ラ ッ シ ュ (BPI コ ン フ ィ ギ ュ レーシ ョ ン) の使用時、フ ラ ッ シ ュ が同期転送をサポー ト す る 場合にのみ CCLK 制御が必要 と な り ます。 STARTUPE3 は入力ま たは出力遅延の制約をサポー ト し ません。 こ のため、 性能要件を満たすかの判断には注意が必 要です。性能の計算は コ ン フ ィ ギ ュ レーシ ョ ン周波数を求め る 計算 と 同様ですが (SPI モー ド の場合は式 2-1、BPI モー ド の場合は式 4-1 ~式 4-4)、 STARTUPE3 ブ ロ ッ ク ま で/の遅延が追加 さ れます。 STARTUPE3 ポー ト と デバ イ ス ピ ン 間の遅延は、 デー タ シー ト ([参照 6] お よ び [参照 7]) に記載 さ れてい ます。 タ イ ミ ン グ制約は STARTUPE3 でサポー ト さ れないため、 STARTUPE3 ポー ト への配線接続に制約を与え る 必要があ り ます。 フ ラ ッ シ ュ ク ロ ッ ク の Low か ら 出力が有効に な る ま での時間 (SPI モー ド の場合は TSPITCO) には STARTUPE3 の CCLK 遅延、 TUSRCCLKO を考慮に入れ る 必要があ り ます。 同期転送が実行 さ れ る パ ラ レル NOR フ ラ ッ シ ュ について は、 TUSRCCLKO を追加す る ために TCHQV が必要です。 同様に、 D[03:00] の FPGA デー タ セ ッ ト ア ッ プ タ イ ム (SPI モー ド の場合は TSPIDCC) には、 ピ ンか ら STARTUPE3 DI ポー ト ま でのセ ッ ト ア ッ プ タ イ ム (TDI) 分 と 、 さ ら に STARTUPE3 DI ポー ト 出力か ら 使用 し てい る ス ラ イ ス フ リ ッ プ フ ロ ッ プ ま での配線遅延が追加 さ れ ます。 BPI コ ン フ ィ ギ ュ レーシ ョ ン で使用 さ れ る パ ラ レ ル NOR フ ラ ッ シ ュ の 3 つの タ イ プの非同期転送については、 ア ド レ ス の出力遅延 (TBPICCO) を入力遅延制約 と フ ラ ッ シ ュ 遅延 (TAPA、 TACC な ど) に追加す る 必要があ り ます。 ア ド レ ス の出力遅延は、 タ イ ミ ン グ解析に よ っ て確認で き ます。 高位デー タ ピ ン D[xx:04] は汎用 I/O ピ ンへ直接配線 さ れ る ため、通常の入力お よ び出力 タ イ ミ ン グ制約を使用 し て遅 延を制約で き ます。 SPI モー ド で使用 さ れてい る シ リ アル NOR フ ラ ッ シ ュ の入力遅延を設定す る 場合、 FPGA デザ イ ンの ク ロ ッ ク の極性を考慮す る 必要があ り ます。 シ リ アル NOR フ ラ ッ シ ュ デバ イ ス か ら のデー タ は、 ク ロ ッ ク の立 ち下が り エ ッ ジで出力 さ れます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 103 第 7 章 : デザイ ン入力 USR_ACCESSE2 USR_ACCESSE2 を使用す る と 、 コ ン フ ィ ギ ュ レーシ ョ ン ロ ジ ッ ク 内の 32 ビ ッ ト AXSS レ ジ ス タ にア ク セ ス で き ま す。 こ れに よ り 、 ビ ッ ト ス ト リ ーム で設定可能な ス タ テ ィ ッ ク デー タ に FPGA ロ ジ ッ ク か ら ア ク セ ス で き る よ う に な り ます。 UltraScale アーキ テ ク チ ャ FPGA の こ のプ リ ミ テ ィ ブの機能は、 7 シ リ ーズの も の と 同 じ です。 AXSS レ ジ ス タ を使用す る と 、 1 つの 32 ビ ッ ト 定数値を FPGA ロ ジ ッ ク に与え る こ と がで き ます。 こ の レ ジ ス タ の内 容はビ ッ ト ス ト リ ーム生成時に定義で き ます。 こ のため、 分散 RAM に定数を格納 し た場合の よ う にデザ イ ン を コ ン パ イ ル し 直す必要があ り ません。 こ の定数は、 デザ イ ンのバージ ョ ン追跡な ど、 必要に応 じ て自由に使用で き ます。 USR_ACCESSE2 は、 write_bitstream の BITSTREAM.Config.UserID オプシ ョ ンで定義 さ れた 32 ビ ッ ト の値を読み出す JTAG USERCODE 命令の代わ り に使用で き ます。 USR_ACCESSE2 には FPGA ロ ジ ッ ク か ら 直接ア ク セ ス で き 、 自動 生成 さ れた タ イ ム ス タ ンプ も 格納で き る と い う 利点があ り ます。 AXSS レ ジ ス タ の内容は、write_bitstream の BITSTREAM.Config.USR_ACCESS オプシ ョ ンで定義で き 、NONE (デフ ォ ル ト 。 すべて 0)、 8 桁の任意の 16 進数、 ま たは TIMESTAMP のいずれか を指定 し ます。 TIMESTAMP を指定す る と 、 その時点の タ イ ム ス タ ンプが次の フ ォーマ ッ ト で AXSS レ ジ ス タ に挿入 さ れます。 ddddd_MMMM_yyyyyy_hhhhh_mmmmmm_ssssss (bit 31) ……………………………………………………… (bit 0) 説明 : ddddd MMMM yyyyyy hhhhh mmmmmm ssssss = = = = = = 1 1 0 0 0 0 ~ ~ ~ ~ ~ ~ 31 12 63 23 59 59 で で で で で で 「日」 を示す 5 「月」 を示す 4 「西暦」 を示す 「時」 を示す 5 「分」 を示す 6 「秒」 を示す 6 ビッ ト ビッ ト 6 ビ ッ ト (2000 年 ~ 2063 年) ビッ ト ビッ ト ビッ ト USR_ACCESSE2 の詳細は、 『USR_ACCESS を使用す る ビ ッ ト ス ト リ ーム認識』 (XAPP497) [参照 14] を参照 し て く だ さ い。 プリ ミティブ 図 7-8 に USR_ACCESSE2 プ リ ミ テ ィ ブ を示 し ます。 X-Ref Target - Figure 7-8 USR_ACCESSE2 DATA[31:0] CFGCLK DATAVALID ug570_c7_08_112513 図 7-8 : USR_ACCESSE2 プ リ ミ テ ィ ブ UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 104 第 7 章 : デザイ ン入力 ピ ンの説明 表 7-12 に USR_ACCESSE2 プ リ ミ テ ィ ブの ピ ン を示 し ます。 表 7-12 : USR_ACCESSE2 のピ ンの説明 ピン 方向 幅 CFGCLK 出力 1 コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク DATA[31:0] 出力 32 AXSS レ ジ ス タ の内容を反映 し た コ ン フ ィ ギ ュ レーシ ョ ン デー タ 出力 1 デー タ が有効であ る こ と を示すア ク テ ィ ブ High の出力 DATAVALID 説明 USR_ACCESSE2 の高度な利用法 USR_ACCESSE2 のデー タ は AXSS コ ン フ ィ ギ ュ レ ー シ ョ ン レ ジ ス タ に格納 さ れ る た め、 JTAG コ マ ン ド ま た は ICAPE3 を使用 し てデー タ を動的に更新で き ます。 AXSS レ ジ ス タ へのパケ ッ ト の書き 込み方式は、 135 ページの 「コ ン フ ィ ギ ュ レーシ ョ ン パケ ッ ト 」 を参照 し て く だ さ い。 AXSS レ ジ ス タ を動的に更新 し た場合、 USR_ACCESSE2 プ リ ミ テ ィ ブか ら の波形は、 その更新を反映 し て図 7-9 の よ う にな り ます。 X-Ref Target - Figure 7-9 8*BBB 図 7-9 : USR_ACCESSE2 の更新 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 105 第 8章 ビ ッ ト ス ト リ ームのセキ ュ リ テ ィ 、 eFUSE、 Device DNA は じ めに こ の章では、 FPGA ビ ッ ト ス ト リ ームのセキ ュ リ テ ィ に関する 次の機能について説明 し ます。 • 「 リ ー ド バ ッ ク セキ ュ リ テ ィ 」 • 「ビ ッ ト ス ト リ ームの暗号化 と 認証」 • 「eFUSE」 ° ビ ッ ト ス ト リ ーム キーの格納 ° ユーザー ID の格納 ° 工場での Device DNA の書 き 込み リ ー ド バ ッ ク セキ ュ リ テ ィ デフ ォ ル ト では、 JTAG ポー ト 、 SelectMAP ポー ト (Persist を選択 し た場合)、 ICAPE3 プ リ ミ テ ィ ブ (デザ イ ンに イ ン ス タ ン シエー ト し た場合) を利用 し て ア ク テ ィ ブな FPGA コ ン フ ィ ギ ュ レーシ ョ ン を リ ー ド バ ッ ク ま たは リ コ ン フ ィ ギ ュ レーシ ョ ンで き ます。 コ ン フ ィ ギ ュ レーシ ョ ン ポー ト の Persist を禁止 し た り 、 外部ピ ンへの ICAP の接続を無効 にす る こ と で コ ン フ ィ ギ ュ レーシ ョ ン ロ ジ ッ ク へのア ク セ ス を防止す る こ と が基本的なセキ ュ リ テ ィ 手段 と な り ま す。 ま た、 ビ ッ ト ス ト リ ーム の リ ー ド バ ッ ク セキ ュ リ テ ィ (BITSTREAM.READBACK.SECURITY) は Level1 ( リ ー ド バ ッ ク 無効) ま たは Level2 ( リ ー ド バ ッ ク と リ コ ン フ ィ ギ ュ レ ーシ ョ ン の両方 と も 無効) に設定で き ま す。 コ ン フ ィ ギ ュ レーシ ョ ン済み FPGA の リ ー ド バ ッ ク セ キ ュ リ テ ィ 設定を解除す る 方法は、 PROGRAM_B を アサー ト す る か、 パ ワ ー サ イ ク ルを実行 し て FPGA プ ロ グ ラ ム を ク リ アす る し かあ り ません。 ユーザー デザ イ ンの機密性を保護す る 必要が あ る 場合は、 ビ ッ ト ス ト リ ーム の暗号化を検討す る 必要が あ り ま す。 暗号化を使用す る と 、 単に ビ ッ ト ス ト リ ーム設定で禁止す る だけでな く 、 ハー ド ウ ェ ア ゲー ト 経由での リ ー ド バ ッ ク が自動的に防止 さ れます。 リ ー ド バ ッ ク を防いで IP を保護す る には、こ の方法を用い る のが最 も 強力です。ビ ッ ト ス ト リ ームの リ ー ド バ ッ ク セキ ュ リ テ ィ 設定は、 SEU 検出の た めの リ ー ド バ ッ ク には影響 し ま せん。 リ ー ド バ ッ ク セ キ ュ リ テ ィ のオプ シ ョ ン の詳細は、 『Vivado Design Suite ユーザー ガ イ ド : プ ロ グ ラ ムお よ びデバ ッ グ』 (UG908) [参照 5] を参照 し て く だ さ い。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 106 第 8 章 : ビ ッ ト ス ト リ ームのセキ ュ リ テ ィ 、 eFUSE、 Device DNA ビ ッ ト ス ト リ ームの暗号化 と 認証 UltraScale アーキ テ ク チ ャ FPGA にはオ ンチ ッ プ AES (Advanced Encryption Standard) 復号化お よ び認証 ロ ジ ッ ク があ り 、 デザ イ ンの高い安全性を実現 し てい ます。 攻撃者がビ ッ ト ス ト リ ーム を不正入手 し た と し て も 、 暗号化キーを知 ら なければ、 デザ イ ンが改変 さ れ る こ と も 複製 さ れ る こ と も あ り ません。 し たがっ て、 暗号化 し た FPGA デザ イ ンの コ ピーや リ バース エン ジニア リ ン グは不可能です。 FPGA の AES シ ス テ ムは、 ソ フ ト ウ ェ ア ベース の ビ ッ ト ス ト リ ーム暗号化機能 と 、 オ ンチ ッ プの ビ ッ ト ス ト リ ーム 復号化機能、 お よ び暗号化キーを格納す る 専用 メ モ リ で構成 さ れます。 ザ イ リ ン ク ス Vivado® ツールを使用 し て、 暗 号化キー と 暗号化 し た ビ ッ ト ス ト リ ーム を生成 し ます。 こ の暗号化キーは、 UltraScale アーキ テ ク チ ャ FPGA 内部の 専用 RAM (外部の小型バ ッ ク ア ッ プ バ ッ テ リ に接続) ま たは ワ ン タ イ ム プ ロ グ ラ マブルな非揮発性 eFUSE のいずれ かに格納で き ます。 こ のオプシ ョ ンは、BITSTREAM.ENCRYPTION.ENCRYPTKEYSELECT を BBRAM ま たは EFUSE に設定 し て指定 し ます。暗号化キーは、JTAG ポー ト か ら し かデバ イ ス にプ ロ グ ラ ムで き ず、リ ー ド バ ッ ク で き ません。 コ ン フ ィ ギ ュ レーシ ョ ン実行中、 FPGA デバ イ ス では反対の処理、 つま り 取 り 込んでい る ビ ッ ト ス ト リ ームの復号化 が行われます。 FPGA の AES 暗号化 ロ ジ ッ ク は、 256 ビ ッ ト の暗号化キーを使用 し ます。 オンチ ッ プの AES 復号化 ロ ジ ッ ク は、 ビ ッ ト ス ト リ ーム復号化以外の用途には使用で き ません。 AES 復号化 ロ ジ ッ ク はユーザー デザ イ ン では使用で き ず、 コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ーム以外のデー タ の復号化には使用 で き ません。 AES-GCM は対称キーを用いた自己認証アルゴ リ ズ ムで、 暗号化 と 復号化に同 じ キーを使用 し ます。 し たがっ て、 こ のキーを非公開キー と し て保護す る 必要があ り 、 キーを格納す る ための領域が内部に必要にな り ます。 ただ し 、 認証 のみを必要 と す る 場合のために、UltraScale アーキ テ ク チ ャ は も う 1 つの認証手段 と し て RSA-2048 も サポー ト し てい ます。 RSA は非対称アルゴ リ ズ ムで、 署名に使用する キー と 検証に使用する キーが異な り ます。 検証には公開キーを 用い ます。 こ の公開キーは保護の必要がないため、 セキ ュ ア な格納領域は不要です。 必要に応 じ て こ の認証方式 と 暗 号化を組み合わせ る こ と に よ り 、 真性性 と 機密性の両方を確保で き ます。 110 ページの 「RSA 認証」 を参照 し て く だ さ い。 AES について FPGA の暗号化シ ス テ ムは、 AES-GCM (Advanced Encryption Standard - Galois/Counter Mode) 認証付 き 暗号化アルゴ リ ズ ム を使用 し ます。 AES は、 NIST (National Institute of Standards and Technology) お よ び米国商務省が認証す る 公式規 格です (http://csrc.nist.gov/publications/fips/fips197/fips-197.pdf)。 AES-GCM は、 ビル ト イ ン認証を サポー ト し てい る 点 に特長があ り ます。 FPGA の AES 暗号化シ ス テ ムは、 256 ビ ッ ト の暗号化キーを使用 し て 128 ビ ッ ト のデー タ ブ ロ ッ ク 単位で暗号化/復 号化を実行 し ます。 NIST に よ る と 、 256 ビ ッ ト キーの場合、 キーの組み合わせは 1.1x1077 通 り 考え ら れます。 AES の よ う な対称暗号化アルゴ リ ズ ムでは、 暗号化 と 復号化に同 じ キーが使用 さ れます。 し たがっ て、 デー タ の安全 性はキーの安全性に依存 し てい ます。 ロー リ ング キー UltraScale FPGA では、 ビ ッ ト ス ト リ ーム を複数の AES 暗号モジ ュ ールに分割 し 、 それぞれ固有のキーで暗号化で き ます。 最初のキーはオンチ ッ プに格納 さ れ、 その他の各モジ ュ ールのキーは前のモジ ュ ール内で暗号化 ( ラ ッ プ) さ れ ま す。 こ の機能は ロ ー リ ン グ キー と し て知 ら れてお り 、 差分電力解析 (DPA) な ど のサ イ ド チ ャ ネル攻撃に対 し て高 いセ キ ュ リ テ ィ を提供 し ま す。 ビ ッ ト ス ト リ ーム オプシ ョ ン BITSTREAM.ENCRYPTION.KEYLIFE で、 各キーの暗 号化ブ ロ ッ ク 数が定義 さ れ ます。 暗号化ブ ロ ッ ク は 128 ビ ッ ト (4 つの 32 ビ ッ ト ワ ー ド ) です。 1 つのキーに対 し て 暗号化ブ ロ ッ ク 数が少ないほ ど セキ ュ リ テ ィ レベルが向上 し ますが、 こ れに よ り ビ ッ ト ス ト リ ーム サ イ ズが急増 し 、 コ ン フ ィ ギ ュ レーシ ョ ン時間が長 く な り ます。 1,024 ま たはそれ以上の値を選択 し た場合、 コ ン フ ィ ギ ュ レーシ ョ ン サ イ ズは約 10% 増加 し 、 64 の値を選択 し た場合ビ ッ ト ス ト リ ーム サ イ ズが 50% 増加、 32 の値を選択 し た場合は 2 倍にな り ます。 RSA 認証を使用す る 場合は、暫定的な ロ ー リ ン グ キーを保持する ために特定のブ ロ ッ ク RAM を使用す る 可能性があ り 、 こ れ ら のブ ロ ッ ク を初期化す る 際に影響を及ぼ し ます。 特定のブ ロ ッ ク RAM カ ラ ム では、 ク ロ ッ ク 領域の最下 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 107 第 8 章 : ビ ッ ト ス ト リ ームのセキ ュ リ テ ィ 、 eFUSE、 Device DNA 部に位置す る 各 36K ブ ロ ッ ク がその影響を受け ます。つま り 基本的には、デバ イ ス下部で開始す る 最初の 36K ブ ロ ッ ク 、 それ以降はカ ラ ム内の 12 番目ご と の 36K ブ ロ ッ ク RAM (BRAM36_X*Y0、 BRAM36_X*Y12、 BRAM36_X*Y24 な ど) と な り ま す。 こ れ ら のブ ロ ッ ク RAM は、 RSA 認証を使用 し た場合にユーザーが指定す る 値に初期化 さ れず、 コ ン フ ィ ギ ュ レーシ ョ ン後は常に 0 へ初期化 さ れます。 暗号化 し た ビ ッ ト ス ト リ ームの作成 Vivado ツールで提供 さ れてい る ビ ッ ト ス ト リ ーム ジ ェ ネ レー タ ーの write_bitstream は、暗号化 し た ビ ッ ト ス ト リ ーム と 暗号化 し ていない ビ ッ ト ス ト リ ーム の ど ち ら も 作成で き ます。 ビ ッ ト ス ト リ ーム を AES で暗号化す る には、 ビ ッ ト ス ト リ ーム ジ ェ ネ レー タ ーで ビ ッ ト ス ト リ ーム暗号化を有効にする オプシ ョ ン を選択 し 、 256 ビ ッ ト の暗号化キー を入力 し ます。 こ れに よ り 、 ビ ッ ト ス ト リ ーム ジ ェ ネ レー タ ーで暗号化ビ ッ ト ス ト リ ーム フ ァ イ ル (BIT) お よ び暗号 化キーフ ァ イ ル (NKY) が生成 さ れます。 暗号化 し た ビ ッ ト ス ト リ ーム を作成す る には、Tcl コ マ ン ド で「set_property BITSTREAM.ENCRYPTION.ENCRYPT Yes」 を実行 し ます。 ビ ッ ト ス ト リ ーム ジ ェ ネ レー タ ーの コ マ ン ド と 構文の詳細は、 『Vivado Design Suite ユーザー ガ イ ド : プ ロ グ ラ ムお よ びデバ ッ グ』 (UG908) [参照 5] を参照 し て く だ さ い。 暗号化キーの読み込み 暗号化キーは、 JTAG イ ン タ ーフ ェ イ ス を介 し てのみデバ イ ス に読み込む こ と がで き ます。 Vivado デバ イ ス プ ロ グ ラ マに NKY フ ァ イ ルを入力 し 、 サポー ト さ れてい る ザ イ リ ン ク ス のプ ロ グ ラ ミ ン グ ケーブルを使用 し て JTAG 経由で デバ イ ス に暗号化キーをプ ロ グ ラ ムで き ます。 暗号化キーを プ ロ グ ラ ムす る 際、 デバ イ ス は特別な キー ア ク セ ス モー ド にな り ます。 こ のモー ド では、 暗号化キー 専用 RAM と コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ を含むすべての FPGA メ モ リ が ク リ ア さ れます。暗号化キーがプ ロ グ ラ ム さ れ、 キー ア ク セ ス モー ド が終了す る と 、 いかな る 方法で も デバ イ ス か ら キー を読み出す こ と はで き ず、 RAM キーを再プ ロ グ ラ ムす る にはデバ イ ス全体を初期化す る 必要があ り ます。通常、 こ のキー ア ク セ ス モー ド を ユーザー が意識す る こ と はあ り ません。 暗号化キーは、 VCCAUX ま たは VBATT か ら 電源が供給 さ れ る バ ッ テ リ バ ッ ク ア ッ プ付 き の RAM (BBRAM) ま たは ワ ン タ イ ム プ ロ グ ラ マブルな非揮発性 eFUSE ビ ッ ト のいずれかにプ ロ グ ラ ムで き ます。 暗号化キーのプ ロ グ ラ ム完了 後、 CRC を使用 し て キーが正 し く プ ロ グ ラ ム さ れたか ど う か を検証で き ますが、 暗号化キー自体を読み出す こ と はで き ません。 暗号化ビ ッ ト ス ト リ ームの読み込み デバ イ ス に適切な暗号化キーを プ ロ グ ラ ムす る と 、 暗号化ビ ッ ト ス ト リ ーム を使用 し たデバ イ ス コ ン フ ィ ギ ュ レー シ ョ ンが可能にな り ます。 暗号化ビ ッ ト ス ト リ ームで コ ン フ ィ ギ ュ レーシ ョ ン を行っ た後は、 ビ ッ ト ス ト リ ームのセ キ ュ リ テ ィ 設定にかかわ ら ず、 JTAG ま たは SelectMAP リ ー ド バ ッ ク に よ っ て コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ を読み 出す こ と はで き ません。 デバ イ ス に暗号化キーが読み込まれた状態の と き に、 暗号化 し ていないビ ッ ト ス ト リ ーム でデバ イ ス を コ ン フ ィ ギ ュ レ ーシ ョ ンす る には、 PROGRAM_B ま たはパ ワ ー サ イ ク ル後にパ ワ ーオ ン リ セ ッ ト を アサー ト し て コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ を ク リ アす る 必要があ り ま す。 こ の場合、 暗号化キーは無視 さ れ ま す。 ま た、 暗号化 し ていない ビ ッ ト ス ト リ ーム で コ ン フ ィ ギ ュ レーシ ョ ン を行っ た後は、 リ ー ド バ ッ ク が可能です ( リ ー ド バ ッ ク のセキ ュ リ テ ィ 設定で許可 さ れてい る 場合のみ)。 こ の場合で も 、 デバ イ ス か ら 暗号化キーを読み出す こ と はで き ないため、 「 ト ロ イ の木馬」 ビ ッ ト ス ト リ ーム を使用 し て FPGA の暗号化シ ス テ ム を無効にす る こ と はで き ません。 暗号化ビ ッ ト ス ト リ ームは、 JTAG、 シ リ アル、 SPI、 BPI、 SelectMAP、 ICAP の ど の コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ー フ ェ イ ス で も 使用で き ます。 コ ン フ ィ ギ ュ レーシ ョ ン後に リ コ ン フ ィ ギ ュ レーシ ョ ンす る には、 PROGRAM_B ピ ン を ト グルす る 、 電源を再投入す る 、 あ る いは JPROGRAM 命令を与え る 必要があ り ます。 暗号化がオ ン の場合で も 、 フ ォ ールバ ッ ク リ コ ン フ ィ ギ ュ レ ー シ ョ ン お よ び IPROG リ コ ン フ ィ ギ ュ レ ー シ ョ ン は有効 と な り ま す。 ま た、 ICAPE3 プ リ ミ テ ィ ブ を使用 し た リ ー ド バ ッ ク が可能です。 VBATT ま たは VCCAUX が維持 さ れてい る 限 り 、 こ れ ら の イ ベン ト に よ っ て BBRAM 内のキーが リ セ ッ ト さ れ る こ と はあ り ません。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 108 第 8 章 : ビ ッ ト ス ト リ ームのセキ ュ リ テ ィ 、 eFUSE、 Device DNA 暗号化ビ ッ ト ス ト リ ーム内のキー と デバ イ ス に格納 さ れた キーが一致 し ない と コ ン フ ィ ギ ュ レーシ ョ ン がエ ラ ー と な り 、 INIT_B ピ ンが Low にな っ て (フ ォールバ ッ ク が有効の場合は High に戻 る )、 DONE ピ ンは Low の ま ま にな り ます。 重要 : BBRAM を ク リ ア し て既知の ス テー ト にプ ロ グ ラ ム し てか ら 、 キー ソ ース と し て BBRAM を使用す る 暗号化 さ れた ビ ッ ト ス ト リ ーム を用いて コ ン フ ィ ギ ュ レーシ ョ ン し て く だ さ い。 BBRAM キーがプ ロ グ ラ ム さ れ る 前に、 電源 投入時に暗号化 さ れた ビ ッ ト ス ト リ ーム を ダ ウ ン ロ ー ド し よ う と す る と 、 FPGA デバ イ スは ロ ッ ク ア ッ プす る 可能性 があ り ます。 その際には、 デバ イ ス の電源を入れ直 し 、 BBRAM キーを読み込んだ後に暗号化 さ れた ビ ッ ト ス ト リ ー ムで コ ン フ ィ ギ ュ レーシ ョ ンす る必要があ り ます。 ビ ッ ト ス ト リ ームの暗号化および内部 コ ン フ ィ ギ ュ レーシ ョ ン ア ク セス ポー ト (ICAP) ICAPE3 プ リ ミ テ ィ ブに よ っ て定義 さ れ る 内部 コ ン フ ィ ギ ュ レーシ ョ ン ア ク セ ス ポー ト (ICAP) を使用す る と 、 ユー ザー ロ ジ ッ ク か ら FPGA の コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス にア ク セ ス で き ます。ICAP イ ン タ ーフ ェ イ ス は SelectMAP イ ン タ ーフ ェ イ ス と ほ と ん ど同 じ ですが、 コ ン フ ィ ギ ュ レーシ ョ ン後の リ ー ド バ ッ ク の制限が ICAP イ ン タ ーフ ェ イ ス にはあ り ません。 ビ ッ ト ス ト リ ームの暗号化を使用 し た場合で も 、 ICAP イ ン タ ーフ ェ イ ス経由であ れば、 暗号化 し た、 ま たは暗号化 し ていないパーシ ャ ル ビ ッ ト ス ト リ ーム を送信する こ と も 、 リ ー ド バ ッ ク を実行す る こ と も 可能です。 ICAPE3 イ ン タ ーフ ェ イ ス を ユーザー I/O に配線 し ない限 り 、 ICAPE3 を使用 し て外部か ら FPGA の AES 暗号化シ ス テ ムが侵害 さ れ る こ と はあ り ません。 デザ イ ン の セ キ ュ リ テ ィ に万全 を 期すには、 ICAPE3 イ ン タ ー フ ェ イ ス を ユーザー I/O に接続 し な いで く だ さ い。 ICAPE3 ク ロ ッ ク の接続はセキ ュ リ テ ィ に影響を及ぼす も のではあ り ません。 ほかの コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス と 同様、ICAP イ ン タ ーフ ェ イ ス か ら キー レ ジ ス タ へはア ク セ ス で き ません。 VBATT 暗号化キーを FPGA のバ ッ ク ア ッ プ バ ッ テ リ 付き の RAM (BBRAM) に格納 し た場合、 暗号化キーの メ モ リ セルは揮 発性であ る ため、 内容を保持す る には継続的に電力を供給する 必要があ り ます。 通常の動作中、 こ れ ら の メ モ リ セル には補助電圧入力 (VCCAUX) か ら 電源が供給 さ れますが、 VCCAUX が切断 さ れ る と 、 キーを維持する ために VBATT 電 源入力か ら 電源が供給 さ れ ます。 VBATT にはほ と ん ど電流が流れないため (nA 程度)、 こ の電源には小 さ なボ タ ン電 池が適 し てい ます。 バ ッ テ リ 寿命の推定には、 各デー タ シー ト ([参照 6] ま たは [参照 7]) に記載の VBATT の DC 特性 お よ びバ ッ テ リ の仕様を参照 し て く だ さ い。 VCCAUX か ら 電源を供給中は VBATT には電流が流れないため、 こ れを切断で き ます。 VBATT は、 VCCAUX 切断時に暗 号化キーを保持す る 以外の目的には使用で き ません。 ビ ッ ト ス ト リ ーム認証 AES-GCM 暗号化規格はビル ト イ ン認証 も サポー ト し てお り 、7 シ リ ーズ FPGA の よ う に認証用の HMAC キーを指定 す る 必要がな く 、 セキ ュ リ テ ィ が さ ら に強化 さ れてい ます。 AES-GCM キーが入手 さ れない限 り 、 ビ ッ ト ス ト リ ーム の読み込み、 改変、 不正入手、 複製が行われ る こ と はあ り ません。 暗号化は、 デザ イ ン を複製や リ バース エン ジニア リ ン グか ら 保護す る ための基本的なセキ ュ リ テ ィ を提供 し ます。 認証は、 FPGA の コ ン フ ィ ギ ュ レーシ ョ ン用に提供 さ れた ビ ッ ト ス ト リ ームが改変 さ れてお ら ず、 その ま ま読み込んで問題ない こ と を保証 し ます。 認証は、 ビ ッ ト ス ト リ ームのデー タ が本物で改ざん さ れていない こ と を検証 し ます。 こ の認証機能は、 あ ら ゆ る 種類の制御ビ ッ ト と デー タ ビ ッ ト を含む、 ビ ッ ト ス ト リ ーム全体に適用 さ れ ます。 シ ン グル ビ ッ ト の反転を含め、 ビ ッ ト ス ト リ ームに対す る あ ら ゆ る 改ざん を検出で き ます。 認証に合格す る と 、 コ ン フ ィ ギ ュ レーシ ョ ンは ス タ ー ト ア ッ プ サ イ ク ル ま で終え て完了 し ま す。 認証に失敗 し た場 合、 フ ォールバ ッ ク が有効であれば、 デバ イ ス全体の コ ン フ ィ ギ ュ レーシ ョ ン を ク リ ア し た後で フ ォールバ ッ ク ビ ッ ト ス ト リ ームが読み込ま れます。 フ ォールバ ッ ク が無効の場合は、 コ ン フ ィ ギ ュ レーシ ョ ン ロ ジ ッ ク が コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス を無効に し 、 FPGA へのア ク セ ス を完全に遮断 し ます。 こ の場合、 PROGRAM_B 信号 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 109 第 8 章 : ビ ッ ト ス ト リ ームのセキ ュ リ テ ィ 、 eFUSE、 Device DNA ま たは POR (パ ワーオン リ セ ッ ト ) 信号をパルス し て、 コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス を リ セ ッ ト す る 必 要があ り ます。 RSA 認証 AES-GCM は認証 と 復号化を同時に実行 し ます。 ただ し 、 も う 1 つのセキ ュ リ テ ィ 手段 と し て、 先に認証を実行 し て か ら ビ ッ ト ス ト リ ーム デー タ を復号化エン ジ ンへ送信する と い う 方法 も あ り ます。 こ の方法では、 デー タ の真正性を 確認 し てか ら 復号化を実行す る こ と にな る ため、復号化エン ジ ンへの攻撃を防ぐ こ と がで き ます。 こ の目的のために、 UltraScale アーキ テ ク チ ャ FPGA は RSA-2048 認証をサポー ト し てい ます。 RSA 認証は、 Kintex UltraScale KU025 デバ イ ス で、 あ る いはシ リ アル モー ド ま たはほかの コ ン フ ィ ギ ュ レ ーシ ョ ン モー ド を選択 し て Kintex UltraScale お よ び Virtex UltraScale FPGA で使用 し てい る 場合、サポー ト さ れません (表 8-1 参 照)。 表 8-1 : UltraScale FPGA お よび コ ン フ ィ ギ ュ レーシ ョ ン モー ド 別の RSA 認証のサポー ト の有無 Kintex UltraScale FPGA Virtex UltraScale FPGA KU095 VU080 VU095 VU065 VU125 VU160 VU190 VU440 あ り (1) あ り (1) あ り (1) あ り (1) あ り (1) あ り (1) あ り (1) あ り (1) あ り (1) あ り (1) あ り (1) N/A なし なし あ り (1) あ り (1) なし あ り (1) 16 N/A あり あ り (2) あり あり あり あり 8 N/A なし なし あ り (2) あ り (2) なし あり 8 N/A なし なし あり あり なし あり 4 N/A なし なし なし なし なし あり 2 N/A なし なし なし なし なし なし 1 N/A なし なし なし なし なし なし JTAG 1 N/A なし なし なし なし なし なし シ リ アル 1 N/A なし なし なし なし なし なし イ ン ターフ ェ イス SelectMAP BPI SPI KU025 KU035 KU040 KU060 KU085 KU115 32 N/A あ り (1) 16 N/A 8 幅 注記 : 1. SelectMAP デー タ の不連続読み込みが CSI_B 信号のデ ィ アサー ト に よ っ て実行 さ れ る 場合、 サポー ト さ れません。 2. 非同期ページ読み出 し が使用 さ れ る 場合、 サポー ト さ れません。 RSA 認証は、 ビ ッ ト ス ト リ ーム プ ロ パテ ィ BITSTREAM.AUTHENTICATION.AUTHENTICATE お よ び BITSTREAM. AUTHENTICATION.RSAPRIVATEKEYFILE で有効に し ます。 RSA 認証はビ ッ ト ス ト リ ーム暗号化か ら 切 り 離 し て利 用で き る ため、 暗号化の有無にかかわ ら ずビ ッ ト ス ト リ ームの認証が行え ます。 RSA コ ン フ ィ ギ ュ レーシ ョ ン制御 ロ ジ ッ ク は、 公開キー と ビ ッ ト ス ト リ ーム シ グ ネチ ャ を含む暗号化ビ ッ ト ス ト リ ーム を読み出 し てデバ イ ス メ モ リ に 格納 し ます。 次に、 RSA コ ン フ ィ ギ ュ レーシ ョ ン制御 ロ ジ ッ ク か ら の指示に よ り 、 RSA エ ン ジ ンは こ の公開キー と シ グネチ ャ か ら 予想 さ れ る ダ イ ジ ェ ス ト を計算 し ます。 ビ ッ ト ス ト リ ームがバ ッ フ ァ ーに格納 さ れ、 予想 さ れ る ダ イ ジ ェ ス ト 値が RSA エ ン ジ ン に よ っ て計算 さ れた ら 、 実際のダ イ ジ ェ ス ト と 予想値を比較 し ます。 コ ン フ ィ ギ ュ レー シ ョ ン デー タ が暗号化 さ れていない場合、RSA 認証に合格する と FPGA の動作が開始 し ます。コ ン フ ィ ギ ュ レーシ ョ ン デー タ が暗号化 さ れてい る 場合は、 RSA 認証に合格 し た後、 ビ ッ ト ス ト リ ームの復号化が実行 さ れます。 RSA 認 証に失敗 し た場合、AES-GCM 認証エ ラ ー と 同 じ エ ラ ーが生成 さ れます。 こ の場合、 デバ イ ス は ロ ッ ク ダ ウ ンす る か、 有効な場合はフ ォールバ ッ ク が実行 さ れます。 同 じ デバ イ ス であれば、 RSA 認証を利用 し た ビ ッ ト ス ト リ ームは標準の非圧縮ビ ッ ト ス ト リ ーム の最大 3 倍の コ ン フ ィ ギ ュ レーシ ョ ン時間がかか り ます。 実際に必要な時間は、 コ ン フ ィ ギ ュ レーシ ョ ン モー ド に よ っ て異な り ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 110 第 8 章 : ビ ッ ト ス ト リ ームのセキ ュ リ テ ィ 、 eFUSE、 Device DNA RSA 認証は、 ビ ッ ト ス ト リ ーム の圧縮、 パーシ ャ ル リ コ ン フ ィ ギ ュ レ ーシ ョ ン、 PCI Express 経由の タ ンデム コ ン フ ィ ギ ュ レーシ ョ ン と 併用で き ません。 eFUSE eFUSE は非揮発性の ワ ン タ イ ム プ ロ グ ラ マブル (OTP) なセルで、 一部のデバ イ ス設定に使用 し た り 、 工場で Device DNA を書 き 込んだ り す る ほか、 次のユーザーがプ ロ グ ラ ム可能な値を書 き 込んで使用 し ます。 • AES-GCM 暗号化キー • RSA 認証キー • ユーザー定義の EFUSE_USR 値 • 制御/セキ ュ リ テ ィ 設定 ヒ ュ ーズ リ ン ク は、 一定期間に大量の電流を流す こ と でプ ロ グ ラ ム (バーン、 ブ ロ ー と も 呼ぶ) し ます。 通常、 プ ロ グ ラ ム し た ヒ ュ ーズ リ ン ク はプ ロ グ ラ ム し ていない状態 よ り も 抵抗値が数桁大き く な り ます。プ ロ グ ラ ム し た ヒ ュ ー ズの論理値は 1 で、 プ ロ グ ラ ム し ていない ヒ ュ ーズの論理値は 0 です。 ユーザー プ ロ グ ラ マブルな eFUSE は、 ザ イ リ ン ク ス の コ ン フ ィ ギ ュ レーシ ョ ン ツールでプ ロ グ ラ ム で き ます。 eFUSE は、 デバ イ ス の コ ン フ ィ ギ ュ レーシ ョ ン 動作中 ( コ ン フ ィ ギ ュ レーシ ョ ン中、 コ ン フ ィ ギ ュ レーシ ョ ン リ ー ド バ ッ ク 中、 ま たは リ ー ド バ ッ ク CRC がア ク テ ィ ブな場合な ど) にはプ ロ グ ラ ム し ないで く だ さ い。 Device DNA は 96 ビ ッ ト の eFUSE 値で、 工場で各デバ イ ス に一意の値がプ ロ グ ラ ム さ れます。 こ の値には、 JTAG ま たは DNA_PORTE2 プ リ ミ テ ィ ブ を使用 し て ア ク セ ス し ます。 詳細は、 114 ページの 「デバ イ ス ID (Device DNA)」 を 参照 し て く だ さ い。 32 ビ ッ ト 値の FUSE_USER は、JTAG イ ン タ ーフ ェ イ ス を使用 し てプ ロ グ ラ ム で き ます。プ ロ グ ラ ム し たデー タ には、 JTAG ま たは EFUSE_USR プ リ ミ テ ィ ブ を使用 し て ア ク セ ス し ます。詳細は、第 7 章 「デザ イ ン入力」 の 「EFUSE_USR」 を参照 し て く だ さ い。 FPGA ロ ジ ッ ク か ら ア ク セ ス で き る のは FUSE_USER レ ジ ス タ と Device DNA のみで、 それ以外の eFUSE ビ ッ ト には FPGA ロ ジ ッ ク か ら はア ク セ ス で き ません。 OTP eFUSE レ ジ ス タ FPGA がセキ ュ リ テ ィ 設定お よ び一部のオプシ ョ ン設定に利用する eFUSE レ ジ ス タ 以外に、 JTAG 命令に よ っ て制御 さ れ る ユーザー ア ク セ ス可能な eFUSE レ ジ ス タ が 3 つあ り ます。 表 8-2 に、 eFUSE レ ジ ス タ と それぞれのサ イ ズお よ び用途を示 し ます。 こ れ ら の レ ジ ス タ は eFUSE ビ ッ ト を使用 し て値を格納す る ため、 一度 し かプ ロ グ ラ ム で き な い点に注意が必要です。 表 8-2 : OTP eFUSE レ ジス タ レ ジス タ 名 FUSE_RSA サイ ズ (ビ ッ ト ) 384 内容 説明 ビ ッ ト ス ト リ ーム認証キー [0:383] RSA ビ ッ ト ス ト リ ーム認証に使用す る 公開キーのハ ッ シ ュ 値 を 格納 し ます。 (ビ ッ ト 383 が最初にシ フ ト ) FUSE_KEY 256 ビ ッ ト ス ト リ ーム暗号化キー [0:255] (ビ ッ ト 255 が最初にシ フ ト ) UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 AES-GCM ビ ッ ト ス ト リ ームの復号化 と 認証で使用す る キーを格 納 し ます。 バ ッ ク ア ッ プ バ ッ テ リ 付 き の RAM にキーを格納する 代わ り に、 eFUSE にキーを格納 し て使用で き ます。 japan.xilinx.com 111 第 8 章 : ビ ッ ト ス ト リ ームのセキ ュ リ テ ィ 、 eFUSE、 Device DNA 表 8-2 : OTP eFUSE レ ジス タ レ ジス タ 名 サイ ズ (ビ ッ ト ) FUSE_DNA 96 内容 説明 ザ イ リ ン ク ス がプ ロ グ ラ ム す る デバ イ ス ID [95:0] デバ イ ス ID ビ ッ ト [95:0] です。Device DNA と し て知 ら れる 96 ビ ッ ト の読み出 し 専用 DNA_PORTE2 プ リ ミ テ ィ ブ値に対応 し ま す。 114 ページの 「デバ イ ス ID (Device DNA)」 を参照し て く だ さ い。 (ビ ッ ト 0 が最初にシ フ ト ) FUSE_USER 32 ユーザー定義 [31:0] (ビ ッ ト 0 が最初にシ フ ト ) FUSE_CNTL 21 制御ビ ッ ト [20:0] (ビ ッ ト 0 が最初にシ フ ト ) FUSE_SEC 32 セキ ュ リ テ ィ 制御ビ ッ ト [31:0] (ビ ッ ト 0 が最初にシ フ ト ) 32 ビ ッ ト のユーザー定義 コ ー ド を格納 し ます。 こ の レ ジ ス タ は、 EFUSE_USR プ リ ミ テ ィ ブ を使用 し て FPGA ロ ジ ッ ク か ら 読み出 し 可能です (第 7 章 「デザ イ ン入力」 参照)。 こ の コ ー ド は、 FUSE_CNTL レ ジ ス タ の読み出 し /書き 込みア ク セ ス ビ ッ ト の設定に基づ き 、 JTAG ポー ト を介 し て読み出 し ま たは プ ロ グ ラ ムが可能です。 キーの使用や eFUSE レ ジ ス タ への読み出 し /書 き 込みア ク セ ス を 制御 し ます。 こ の レ ジ ス タ は、 JTAG ポー ト を介 し て読み出 し ま たはプ ロ グ ラ ムが可能です。 暗号化お よ び認証に関す る オプシ ョ ン を設定 し ます。 こ の レ ジ ス タ は、FUSE_CNTL レ ジ ス タ の読み出 し /書 き 込みア ク セ ス ビ ッ ト の設定に基づ き 、 JTAG ポー ト を介 し て読み出 し ま たはプ ロ グ ラ ムが可能です。 JTAG 命令 eFUSE レ ジ ス タ は JTAG ポー ト か ら 読み出す こ と がで き ます。 eFUSE のプ ロ グ ラ ムは、 JTAG を介 し てのみ可能です。 表 8-3 に、 eFUSE に関連す る JTAG 命令を示 し ます。 表 8-3 : eFUSE 関連の JTAG 命令 JTAG 命令 コー ド 動作 FUSE_RSA 011000 FUSE_RSA レ ジ ス タ を選択 し ます。 FUSE_KEY 110001 FUSE_KEY レ ジ ス タ を選択 し ます。 FUSE_DNA 110010 FUSE_DNA レ ジ ス タ を選択 し ます。 FUSE_USER 110011 FUSE_USER レ ジ ス タ を選択 し ます。 FUSE_CNTL 110100 FUSE_CNTL レ ジ ス タ を選択 し ます。 FUSE_SEC 111011 FUSE_SEC レ ジ ス タ を選択 し ます。 表 8-4 に FUSE_CNTL 制御レ ジ ス タ 、表 8-5 に FUSE_SEC 制御レ ジ ス タ を示 し ます。すべての レ ジ ス タ ビ ッ ト は 1 つ の eFUSE に よ っ て定義 さ れ る ため、 各ビ ッ ト の選択は恒久的に適用 さ れます。 表 8-4 : OTP eFUSE 制御レ ジ ス タ (FUSE_CNTL) ビ ッ ト 位置 名称 説明 0 R_DIS_KEY FUSE_KEY 暗号化キーの読み出 し と プ ロ グ ラ ム を無効に し ます。 1 R_DIS_USER FUSE_USER ユーザー コ ー ド の読み出 し と プ ロ グ ラ ム を無効に し ます。JTAG ポー ト を 介 し た ユーザー コ ー ド の読み出 し は無効に な り ま すが、 EFUSE_USR コ ン ポーネ ン ト を使用する ユーザー コ ー ド の読み出 し は無効にな り ません。 2 R_DIS_SEC FUSE_SEC セキ ュ リ テ ィ 設定の読み出 し と プ ロ グ ラ ム を無効に し ます。 Reserved 予約 3~4 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 112 第 8 章 : ビ ッ ト ス ト リ ームのセキ ュ リ テ ィ 、 eFUSE、 Device DNA 表 8-4 : OTP eFUSE 制御レ ジ ス タ (FUSE_CNTL) ビ ッ ト 位置 名称 5 W_DIS_CNTL FUSE_CNTL 制御設定のプ ロ グ ラ ム を無効に し ます。 6 R_DIS_RSA FUSE_RSA 認証キーの読み出 し と プ ロ グ ラ ム を無効に し ます。 7 W_DIS_KEY FUSE_KEY 暗号化キーのプ ロ グ ラ ム を無効に し ます。 8 W_DIS_USER FUSE_USER ユーザー コ ー ド のプ ロ グ ラ ム を無効に し ます。 9 W_DIS_SEC FUSE_SEC セキ ュ リ テ ィ 設定のプ ロ グ ラ ム を無効に し ます。 Reserved 予約 W_DIS_RSA FUSE_RSA 認証キーのプ ロ グ ラ ム を無効に し ます。 Reserved 予約 10 ~ 14 15 16 ~ 20 説明 表 8-5 : OTP eFUSE セキ ュ リ テ ィ レ ジ ス タ (FUSE_SEC) ビ ッ ト 位置 名称 説明 0 FUSE_SHAD_SEC[0] 暗号化 し た ビ ッ ト ス ト リ ーム のみを許可 し ま す。 1 FUSE_SHAD_SEC[1] 暗号化 さ れ た ビ ッ ト ス ト リ ー ム につい て は、 eFUSE に格納 さ れた AES キーの使用を強制 し ます。 こ のビ ッ ト がプ ロ グ ラ ム さ れていない場 合、 ビ ッ ト ス ト リ ーム を暗号化す る か ど う か、 お よ びキーをバ ッ ク ア ッ プ バ ッ テ リ 付 き の RAM と eFUSE のど ち ら に格納する かを ビ ッ ト ス ト リ ーム オプシ ョ ンで選択で き ます。 2 RSA_AUTH RSA 認証を強制 し ます。 RMA は許可 さ れません。 (1) 3 FUSE_SHAD_SEC[3] 外部 JTAG ピ ン を無効に し ます。 RMA 解析は制限 さ れます。 (2) 4 SCAN_DISABLE ザ イ リ ン ク ス テ ス ト ア ク セ ス を 無効に し ま す。 RMA 解析は制限 さ れます。 (2) 5 CRYPT_DISABLE 復号化エン ジ ン を無効に し ます。 - Reserved 予約 - 6 ~ 31 RAM への影響 RMA は許可 さ れません。 (1) - 注記 : 1. 重要 : FUSE_SHAD_SEC[0] ま たは RSA_AUTH をプ ロ グ ラ ム し た場合、 それぞれについて外部 コ ン フ ィ ギ ュ レーシ ョ ン ポー ト 経由で FPGA を コ ン フ ィ ギ ュ レーシ ョ ンで き る のは、AES 暗号化 さ れた ビ ッ ト ス ト リ ーム ま たは RSA 認証を使用 し た ビ ッ ト ス ト リ ームのみ と な り ます。 こ れに よ り 、 ザ イ リ ン ク ス のテ ス ト ビ ッ ト ス ト リ ームや構築済みビ ッ ト ス ト リ ーム を使用 し たデバ イ ス コ ン フ ィ ギ ュ レーシ ョ ンはで き な く な り ます。 こ のため、 ザ イ リ ン ク ス は FUSE_SHAD_SEC[0] ビ ッ ト ま たは RSA_AUTH ビ ッ ト がプ ロ グ ラ ム さ れてい る デバ イ ス に対す る RMA (Return Material Authorization) 要求は受け付けてお ら ず、 フ ラ ッ シ ュ の 間接プ ロ グ ラ ム も サポー ト し てい ません。 2. 重要 : こ のビ ッ ト がプ ロ グ ラ ム さ れ る と 、 RMA (Return Material Authorization) に よ る 返却は、 デバ イ ス解析お よ びデバ ッ グの面 で制限があ り ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 113 第 8 章 : ビ ッ ト ス ト リ ームのセキ ュ リ テ ィ 、 eFUSE、 Device DNA デバイ ス ID (Device DNA) FPGA には、 デバ イ ス ID (Device DNA) が組み込まれてい ます。 こ の非揮発性の ID はザ イ リ ン ク ス に よ っ て FPGA に 恒久的にプ ロ グ ラ ム さ れてお り 、 変更で き ないため、 不正操作 さ れ る こ と はあ り ま せん。 各デバ イ ス には、 一意の DNA 値がプ ロ グ ラ ム さ れてい ます。 外部アプ リ ケーシ ョ ンは JTAG ポー ト を介 し て DNA 値にア ク セ ス で き 、FPGA デザ イ ンは Device DNA ア ク セ ス ポー ト (DNA_PORTE2) を介 し て DNA 値にア ク セ ス で き ます。 FPGA アプ リ ケーシ ョ ンは、 デザ イ ン プ リ ミ テ ィ ブの DNA_PORTE2 (Device DNA Access Port) を使用 し て こ の ID に ア ク セ ス し ます (図 8-1 参照)。 X-Ref Target - Figure 8-1 DNA_PORTE2 DIN DOUT READ SHIFT CLK ug570_c8_01_111413 図 8-1 : FPGA の DNA_PORTE2 デザイ ン プ リ ミ テ ィ ブ ID 値 と 動作 図 8-2 に、 DNA_PORTE2 デザ イ ン プ リ ミ テ ィ ブの一般的な機能 を 示 し ま す。 FPGA ア プ リ ケーシ ョ ン は、 最初に DNA_PORTE2 プ リ ミ テ ィ ブをデザ イ ン内で イ ン ス タ ン シエー ト し てお く 必要があ り ます (図 8-1 参照)。図 8-2 に示す よ う に、 Device DNA は 96 ビ ッ ト の値です。 2 つの LSB お よ び 2 つの MSB には固定値が含 ま れてお り 、 96 ビ ッ ト DNA の LSB お よ び MSB の検出に使用 さ れます。 X-Ref Target - Figure 8-2 SHIFT=1 Read = 0 95 DIN CLK 0 DOUT 96-Bit Loadable Shift Register READ = 1 95 94 0 1 1 0 96-Bit Unique Device Identifier (Device DNA) Factory Programmed, Unchangeable 0 1 ug570_c8_02_020415 図 8-2 : DNA_PORTE2 の動作 Device DNA を読み出すには、まず FPGA アプ リ ケーシ ョ ンが DNA_PORTE2 出力シ フ ト レ ジ ス タ に ID の値を送信 し ます。 READ 入力は、 CLK の立ち上が り エ ッ ジの と き にアサー ト さ れてい る 必要があ り ます (表 8-6 参照)。 こ れに よ り 、 出力シ フ ト レ ジ ス タ に ID の 96 ビ ッ ト すべてが並列 し て読み込 ま れ ま す。 読み込みの直後に、 DNA 値の LSB (DNA[0] = 1) が DOUT に現れます。 READ 動作は SHIFT 動作 よ り 優先 さ れ る ため、 READ を 1 ク ロ ッ ク サ イ ク ル以 上アサー ト し てデ ィ アサー ト し て く だ さ い。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 114 第 8 章 : ビ ッ ト ス ト リ ームのセキ ュ リ テ ィ 、 eFUSE、 Device DNA 表 8-6 : DNA_PORTE2 の動作 動作 DIN READ SHIFT CLK HOLD X 0 0 X 前の値を保持 前の値を保持 READ X 1 X ↑ 96 ビ ッ ト の ID をすべて読み込み ID のビ ッ ト 0 SHIFT DIN 0 1 ↑ DIN を ビ ッ ト 95 にシ フ ト し 、 シ フ ト レ ジ ス タ の値を DOUT にシ フ ト シフ ト レジス タの ビッ ト 0 シ フ ト レ ジス タ DOUT 注記 : 1. X = Don’t Care 2. ↑ = 立ち上が り ク ロ ッ ク エ ッ ジ ID 値の読み出 し を継続す る には、 表 8-6 に示す よ う に、 CLK の立ち上が り エ ッ ジの後で SHIFT を アサー ト す る 必要 があ り ます。 こ れで、 出力シ フ ト レ ジ ス タ の値が DOUT 出力にシ フ ト さ れます。 DIN 入力の値は、 シ フ ト レ ジ ス タ にシ フ ト さ れます。 シ フ ト レ ジ ス タ の機能はすべて CLK に同期 し ます。 ID の拡張 図 8-3 に示す と お り 、 DNA_PORTE2 プ リ ミ テ ィ ブ を使用す る アプ リ ケーシ ョ ンのほ と ん どは、 DIN デー タ 入力を定 数に接続 し てい ます。 X-Ref Target - Figure 8-3 DNA_PORTE2 0 or 1 DIN DOUT READ SHIFT CLK ug570_c8_03_101414 図 8-3 : 定数を シ フ ト イ ン 図 8-4 の よ う に、 DOUT シ リ アル出力ポー ト を DIN シ リ アル入力ポー ト に接続す る と ID の長 さ を延長で き ます。 こ の よ う にす る と 、 ID を任意の長 さ に拡張で き ます。 X-Ref Target - Figure 8-4 DNA_PORTE2 DIN DOUT READ SHIFT CLK ug570_c8_04_112513 図 8-4 : 巡回シ フ ト ま た、 FPGA の ロ ジ ッ ク リ ソ ース を使用 し て ID にビ ッ ト を追加す る こ と も 可能です。 図 8-5 に示す よ う に、 FPGA ア プ リ ケーシ ョ ンは DNA_PORTE2 の DIN シ リ アル入力を介 し て追加の ビ ッ ト を挿入で き ま す。 ロ ジ ッ ク リ ソ ー ス を 利用す る 場合は、 固定値の ビ ッ ト を追加す る こ と も 、 Device DNA か ら 計算 し た変数の ビ ッ ト を追加す る こ と も で き ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 115 第 8 章 : ビ ッ ト ス ト リ ームのセキ ュ リ テ ィ 、 eFUSE、 Device DNA X-Ref Target - Figure 8-5 Application Code INPUT OUTPUT READ SHIFT CLK DNA_PORTE2 DIN DOUT READ SHIFT CLK READ SHIFT CLK UG570_c8_05_112513 図 8-5 : ビ ッ ト ス ト リ ーム固有の コ ー ド JTAG によ るデバイ ス ID へのア ク セス FPGA の内部デバ イ ス ID は、 ベン ダー固有の FUSE_DNA コ マ ン ド を使用 し て JTAG ポー ト か ら 読み出す こ と がで き ます。 114 ページの図 8-2 に示す よ う に、 デバ イ ス が Shift-DR ス テー ト に入 る と 、 FUSE_DNA コ マ ン ド に続いて ID のビ ッ ト 0 が TDO JTAG 出力に出力 さ れます。Device DNA の残 り のビ ッ ト お よ びレ ジ ス タ への入力のデー タ は、JTAG コ ン ト ロ ー ラ ーが Shift-DR ス テー ト の と き に順次シ フ ト ア ウ ト さ れます。 ま た Vivado デバ イ ス プ ロ グ ラ マでは、 [Hardware Device Properties] ビ ュ ーで eFUSE レ ジ ス タ を表示 さ せ る か、 次の Tcl コ マ ン ド を使用 し て、 Device DNA の読み出 し をサポー ト し てい ます。 report_property [lindex [get_hw_device] 0] REGISTER.EFUSE.FUSE_DNA ユーザー定義 の eFUSE レ ジ ス タ FUSE_USER は FUSE_DNA と 同様に読み出す こ と が で き 、 そ の た め に は JTAG FUSE_USER コ マ ン ド ま たは [Hardware Device Properties] ビ ュ ーを使用す る か、 あ る いは report_property コ マ ン ド で REGISTER.EFUSE.FUSE_USER プ ロ パテ ィ を表示 さ せます。 詳細は、 『Vivado Design Suite ユーザー ガ イ ド : プ ロ グ ラ ムお よ びデバ ッ グ』 (UG908) [参照 5] を参照 し て く だ さ い。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 116 第 9章 コ ン フ ィ ギ ュ レーシ ョ ンの詳細 は じ めに 通常は、 コ ン フ ィ ギ ュ レーシ ョ ンの フ ォーマ ッ ト お よ びコ マ ン ド について詳細を把握 し てお く 必要はあ り ません。 た だ し 、 こ れ ら の詳細はデバ ッ グに役立ち ます。最初の コ ン フ ィ ギ ュ レーシ ョ ン後、JTAG イ ン タ ーフ ェ イ ス、SelectMAP ポー ト (Persist を選択 し た場合)、 ICAP (ICAPE3 プ リ ミ テ ィ ブ をデザ イ ンに含めた場合) のいずれか を利用 し てデバ イ ス に コ ン フ ィ ギ ュ レーシ ョ ン コ マ ン ド を送信で き ます。 こ の章には、 次のセ ク シ ョ ンがあ り ます。 • 「 コ ン フ ィ ギ ュ レーシ ョ ン デー タ フ ァ イ ルの形式」 • 「 コ ン フ ィ ギ ュ レーシ ョ ン シーケ ン ス」 • 「End of Start-up への ク ロ ッ キ ン グ」 • 「 コ ン フ ィ ギ ュ レーシ ョ ン レ ジ ス タ 」 コ ン フ ィ ギ ュ レーシ ョ ン デー タ フ ァ イルの形式 ザ イ リ ン ク ス のデザ イ ン ツールでは、 コ ン フ ィ ギ ュ レーシ ョ ン デー タ フ ァ イ ルを い く つかの形式で生成で き ます ( 表 9-1 参照)。 ビ ッ ト ス ト リ ーム ジ ェ ネ レー タ ーの write_bitstream は、 イ ン プ リ メ ン テーシ ョ ン後の フ ァ イ ルを コ ン フ ィ ギ ュ レ ーシ ョ ン フ ァ イ ル ま たは ビ ッ ト ス ト リ ーム に変換 し ま す。 write_cfgmem コ マ ン ド は、 1 つ ま たは複数の ビ ッ ト ス ト リ ーム フ ァ イ ルを 1 つの MCS ま たはほかの フ ァ イ ルに変換 し ます。 MCS お よ びその他の write_cfgmem フ ァ イ ルは PROM フ ァ イ ル と 呼ばれ ま すが、 write_cfgmem フ ァ イ ルは多数の フ ァ イ ル形式で生成で き 、 必ず し も PROM で使用す る 必要はあ り ません。 こ れ ら は任意の場所に保存 し 、 任意の手段で取 り 込む こ と がで き ます。 表 9-1 : ザイ リ ン ク スの コ ン フ ィ ギ ュ レーシ ョ ン フ ァ イルの形式 フ ァ イル 拡張子 ビッ ト スワ ッ プ (1) ザイ リ ン ク ス ツール(2) 説明 BIT ビッ ト スワ ップ なし write_bitstream (デフ ォ ル ト で生成) FPGA への ダ ウ ン ロ ー ド が不要なヘ ッ ダー情報 を 含むバ イ ナ リ コ ン フ ィ ギ ュ レ ー シ ョ ン デー タ フ ァ イ ルです。 Vivado® デバ イ ス プ ロ グ ラ マか ら プ ロ グ ラ ミ ン グ ケーブ ルを使用 し てデバ イ ス を プ ロ グ ラ ムす る 際に使用 し ます。 Vivado デザ イ ン ツール独自仕様の フ ォーマ ッ ト です。 RBT ビッ ト スワ ップ なし write_bitstream - raw_bitfile BIT フ ァ イ ルを ASCII 形式 と し た も ので、 テ キ ス ト ヘ ッ ダー と ASCII 形式の 1 お よ び 0 が含 ま れてい ま す ( コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ご と に 8 ビ ッ ト )。 Vivado デザ イ ン ツール独自仕様の フ ォーマ ッ ト です。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 117 第 9 章 : コ ン フ ィ ギ ュ レーシ ョ ンの詳細 表 9-1 : ザイ リ ン ク スの コ ン フ ィ ギ ュ レーシ ョ ン フ ァ イルの形式 フ ァ イル 拡張子 BIN ビッ ト スワ ッ プ (1) ザイ リ ン ク ス ツール(2) 説明 ビッ ト スワ ップ なし write_bitstream - bin_file ビッ ト スワ ップ あり write_cfgmem - format BIN MCS ビッ ト スワ ップ あ り (3) write_cfgmem -format MCS ま たは Vivado デバ イ ス プ ロ グ ラ マ コ ン フ ィ ギ ュ レ ー シ ョ ン デー タ 以外に ア ド レ ス お よ び チ ェ ッ ク サ ム情報を含む ASCII 形式の フ ァ イ ルです。 主 に、デバ イ ス プ ロ グ ラ マや Vivado デバ イ ス プ ロ グ ラ マで 使用 し ます。 HEX ユーザー指定 write_cfgmem -format HEX ま たは Vivado デバ イ ス プ ロ グ ラ マ コ ン フ ィ ギ ュ レーシ ョ ン デー タ のみを含む ASCII 形式の フ ァ イ ルです。 主に、 カ ス タ ム コ ン フ ィ ギ ュ レ ーシ ョ ン ソ リ ュ ーシ ョ ンで使用 し ます。 ヘ ッ ダ ー情報の な いバ イ ナ リ コ ン フ ィ ギ ュ レ ー シ ョ ン デー タ フ ァ イ ルで、 カ ス タ ム コ ン フ ィ ギ ュ レーシ ョ ン ソ リ ュ ー シ ョ ン ( マ イ ク ロ プ ロ セ ッ サ な ど) ま た はサー ド パーテ ィ の メ モ リ をプ ロ グ ラ ムする 場合に使用 し ます。 注記 : 1. ビ ッ ト ス ワ ッ プの詳細は、 「ビ ッ ト ス ワ ッ プ」 を参照 し て く だ さ い。 2. Tcl コ マ ン ド write_bitstream お よ び write_cfgmem の構文の詳細は、『Vivado Design Suite Tcl コ マ ン ド リ フ ァ レ ン ス ガ イ ド 』 (UG835) [参照 15] を参照 し て く だ さ い。 3. 通常、 MCS フ ァ イ ルは SPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド を除 き ビ ッ ト ス ワ ッ プ さ れます。 シ リ アル NOR フ ラ ッ シ ュ の場合は、 write_cfgmem -interface SPIx1/2/4/8 オプシ ョ ン を使用 し て ビ ッ ト ス ワ ッ プのない フ ァ イ ルを生成 し ます。 コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ フ ァ イルの生成 コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ フ ァ イ ルは、 write_cfgmem ユーテ ィ リ テ ィ を使用 し て ビ ッ ト ス ト リ ーム フ ァ イ ルか ら 生成 し ます。 write_cfgmem は コ マ ン ド ラ イ ンか ら 直接実行する こ と も 、 Vivado デバ イ ス プ ロ グ ラ マか ら 間接的に 実行す る こ と も で き ます。 write_cfgmem の構文は、 『Vivado Design Suite Tcl コ マ ン ド リ フ ァ レ ン ス ガ イ ド 』 (UG835) [ 参照 15] を参照 し て く だ さ い。 write_cfgmem コ マ ン ド はビ ッ ト ス ト リ ーム フ ァ イ ルの形式を フ ラ ッ シ ュ メ モ リ にプ ロ グ ラ ミ ン グ可能な形式に変換す る ほか、 シ リ アル デ イ ジー チ ェーン用に複数のビ ッ ト ス ト リ ーム フ ァ イ ルを結合 す る 機能 も あ り ます。 通常、 write_cfgmem か ら の出力はサー ド パーテ ィ 製フ ラ ッ シ ュ メ モ リ デバ イ ス のプ ロ グ ラ ミ ン グに使用 し ます。 出 力には、 使用 し てい る サー ド パーテ ィ プ ロ グ ラ マでサポー ト さ れてい る 形式を選択 し て く だ さ い。 write_cfgmem コ マ ン ド の -interface 引数で、 使用す る コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス を指定 し ます。 有効な値は、 SMAPx8 (デフ ォ ル ト )、 SMAPx16、 SMAPx32、 SERIALx1、 SPIx1、 SPIx2、 SPIx4、 SPIx8、 BPIx8、 BPIx16 です。 ビ ッ ト ス ワ ッ プ を有効にす る か ど う か も 、 こ の引数で決定 し ま す。 BPI コ ン フ ィ ギ ュ レ ーシ ョ ン の場合、 一部のパ ラ レ ル フ ラ ッ シ ュ デバ イ ス ではフ ァ イ ル生成時にエンデ ィ ア ン ス ワ ッ プ を有効にす る 必要があ り ます。 詳細は、 フ ラ ッ シ ュ デバ イ ス ベン ダーの資料を参照 し て く だ さ い。 シ リ アル デ イ ジー チ ェ ーン用の フ ァ イル シ リ アル デ イ ジー チ ェ ーンは、 個別の BIT フ ァ イ ルを結合 し ただけではプ ロ グ ラ ム で き ないため、 シ リ アル デ イ ジー チ ェ ーン専用の形式で コ ン フ ィ ギ ュ レーシ ョ ン デー タ を用意す る 必要があ り ます。write_cfgmem (ま たは Vivado デバ イ ス プ ロ グ ラ マ) を使用す る と 、 複数の ビ ッ ト ス ト リ ーム か ら シ リ アル デ イ ジー チ ェ ーン専用形式の フ ァ イ ル を生成で き ます。 デ イ ジー チ ェ ーン フ ァ イ ルを生成す る には、 write_cfgmem の -loadbit 引数の後に複数のビ ッ ト ス ト リ ー ム を 指 定 し ま す。 た と え ば、 -loadbit "up|down <address1> <bitfile1.bit> <address2> <bitfile2.bit>" の よ う に し ます。 詳細は、 ツールのマニ ュ アルを参照 し て く だ さ い。 write_cfgmem コ マ ン ド は、 下位デバ イ ス の コ ン フ ィ ギ ュ レーシ ョ ン デー タ を上位デバ イ ス の コ ン フ ィ ギ ュ レーシ ョ ン パケ ッ ト の中にネ ス ト し て ビ ッ ト ス ト リ ームの形式を変換 し ます。 デ イ ジー チ ェ ーンの コ ン フ ィ ギ ュ レーシ ョ ン を実行す る 際、 最上位デバ イ ス に複数のビ ッ ト ス ト リ ーム を送信す る と 最初のデバ イ ス のみが コ ン フ ィ ギ ュ レーシ ョ ン さ れ、 以降のデー タ は無視 さ れます。 注記 : UltraScale デバ イ ス を含むデ イ ジー チ ェーンは、 Vivado ツールがサポー ト す る 7 シ リ ーズ以降のデバ イ ス での み構成す る 必要があ り ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 118 第 9 章 : コ ン フ ィ ギ ュ レーシ ョ ンの詳細 SelectMAP コ ン フ ィ ギ ュ レーシ ョ ン用の フ ァ イル カ ス タ ム コ ン フ ィ ギ ュ レ ーシ ョ ン ソ リ ュ ーシ ョ ン で最 も 手軽に利用で き る フ ァ イ ル形式は、 何 も 加工 し てい ない BIN お よ び HEX 形式の フ ァ イ ルです。 従来アプ リ ケーシ ョ ン用に MCS フ ォーマ ッ ト も サポー ト さ れてい ます。 こ れ 以外の形式が必要にな る 場合 も あ り ます。 詳細は、 『ス レーブ シ リ アル/SelectMAP モー ド でマ イ ク ロ プ ロ セ ッ サを使 用 し た 7 シ リ ーズ FPGA の コ ン フ ィ ギ ュ レーシ ョ ン』 (XAPP583) [参照 11] を参照 し て く だ さ い。 SelectMAP コ ン フ ィ ギ ュ レーシ ョ ン用の複数の コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ームが 1 つの メ モ リ デバ イ ス にあ る 場合、 それ ら のビ ッ ト ス ト リ ーム を 1 つのシ リ アル デ イ ジー チ ェ ーン フ ァ イ ルに結合す る のではな く 、 複数 の BIN ま たは HEX フ ァ イ ルで タ ーゲ ッ ト の メ モ リ デバ イ ス を プ ロ グ ラ ムす る 必要があ り ます。複数の個別デー タ ス ト リ ーム を持つフ ァ イ ルが 1 つ必要な場合は、 Vivado デバ イ ス プ ロ グ ラ マでパ ラ レル メ モ リ を タ ーゲ ッ ト に し 、 目 的のデー タ ス ト リ ーム数を選択 し て生成 し ます。 あ る いは、 write_cfgmem の コ マ ン ド ラ イ ンか ら 生成す る こ と も で き ます。 詳細は、 『Vivado Design Suite Tcl コ マ ン ド リ フ ァ レ ン ス ガ イ ド 』 (UG835) [参照 15] を参照 し て く だ さ い。 ビ ッ ト スワ ッ プ ビ ッ ト ス ワ ッ プ と は、 バ イ ト 内 で ビ ッ ト 位置 を 入れ替 え る こ と で す。 SPI コ ン フ ィ ギ ュ レ ー シ ョ ン モ ー ド で write_cfgmem -interface SPIx1|SPIx2|SPIx4|SPIx8 と 指定 し た場合を除 き 、 MCS フ ォ ーマ ッ ト は常に ビ ッ ト ス ワ ッ プが 行われます。 フ ァ イ ル形式が HEX の場合、 ビ ッ ト ス ワ ッ プを使用する か ど う かはユーザー オプシ ョ ン で指定で き ま す。 ビ ッ ト ス ト リ ーム フ ァ イ ル (BIT、 RBT、 BIN) がビ ッ ト ス ワ ッ プする こ と はあ り ません。 HEX フ ァ イ ル形式には、 コ ン フ ィ ギ ュ レ ーシ ョ ン デー タ のみ含 ま れ ま すが、 その他の形式の メ モ リ フ ァ イ ルには、 FPGA にはダ ウ ン ロ ー ド さ れ る べ き ではないア ド レ ス お よ びチ ェ ッ ク サ ム情報が含 ま れ ま す。 こ の ア ド レ ス お よ び チ ェ ッ ク サム情報は、 サー ド パーテ ィ のデバ イ ス プ ロ グ ラ マが使用す る も ので、 メ モ リ デバ イ スへはプ ロ グ ラ ム さ れません。 図 9-1 に、 2 バ イ ト のデー タ (0xABCD) のビ ッ ト ス ワ ッ プ を示 し ます。 X-Ref Target - Figure 9-1 Hex: A B C D SelectMAP Data Pin: D0 D1 D2 D3 D4 D5 D6 D7 D0 D1 D2 D3 D4 D5 D6 D7 Binary: 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 BitSwapped Binary: 1 1 0 1 0 1 0 1 1 0 1 1 0 0 1 1 SelectMAP Data Pin: D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D0 BitSwapped Hex: D 5 B 3 UG570_c9_01_120213 図 9-1 : ビ ッ ト スワ ッ プの例 各バ イ ト の MSB は、 デー タ の方向に関係な く D0 ピ ンに割 り 当て ら れます。 • ビ ッ ト ス ワ ッ プ し たデー タ では、 右端のビ ッ ト が D0 • ビ ッ ト ス ワ ッ プ し ていないデー タ では、 左端のビ ッ ト が D0 ビ ッ ト ス ワ ッ プが必要か ど う かは、 完全にアプ リ ケーシ ョ ン に よ っ て決定 し ま す。 ビ ッ ト ス ワ ッ プは、 シ リ アル、 SelectMAP、 ま たは BPI フ ァ イ ルお よ び ICAPE3 イ ン タ ーフ ェ イ ス で可能です。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 119 第 9 章 : コ ン フ ィ ギ ュ レーシ ョ ンの詳細 パラ レル バスのビ ッ ト 順 従来の SelectMAP x8 モー ド の場合、 CCLK の 1 サ イ ク ルで 1 バ イ ト の コ ン フ ィ ギ ュ レーシ ョ ン デー タ が読み込まれ、 各バ イ ト の MSB (最上位ビ ッ ト ) は D0 ピ ンに出力 さ れます。 こ の D0 = MSB、D7 = LSB と い う 規則はほかのデバ イ ス には該当 し ま せんが、 ザ イ リ ン ク ス の FPGA はすべて こ の規則に従っ てい ま す。 ビ ッ ト ス ワ ッ プの規則は、 BPI x8 モー ド お よ び ICAPE3 イ ン タ ーフ ェ イ ス に も 該当 し ます ( 「ビ ッ ト ス ワ ッ プ」 参照)。 ビ ッ ト ス ワ ッ プ規則は x16 お よ び x32 バス幅に も 適用 さ れ、 デー タ は各バ イ ト 内で ビ ッ ト ス ワ ッ プ さ れます。 表 9-2 お よ び表 9-3 に、 ビ ッ ト ス ト リ ーム内の同期ワー ド 0xAA995566 の例を示 し ます ( 「同期ワー ド 」 参照)。 こ の 例では、 ス レーブ SelectMAP、 マ ス タ ー SelectMAP、 BPI モー ド な ど のパ ラ レル コ ン フ ィ ギ ュ レーシ ョ ン モー ド を使 用 し た場合、 そ し て ICAPE3 イ ン タ ーフ ェ イ ス を使用 し た場合に FPGA デー タ ピ ンに現れ る デー タ を示 し てい ます。 表 9-2 : 同期ワー ド のビ ッ ト スワ ッ プ例 同期ワー ド [31:24](1) [23:16] [15:8] [7:0] ビ ッ ト ス ト リ ーム形式 0xAA 0x99 0x55 0x66 ビ ッ ト ス ワ ッ プ後 0x55 0x99 0xAA 0x66 注記 : 1. ビ ッ ト ス ワ ッ プす る と 、 [31:24] は 0xAA か ら 0x55 に変化 し ます。 表 9-3 : x8、 x16、 x32 モー ド での同期ワー ド のデー タ シーケ ン ス例 1 2 3 4 0x55 0x99 0xAA 0x66 x16 モー ド の D[15:0] ピ ン 0x5599 0xAA66 ... ... x32 モー ド の D[31:0] ピ ン 0x5599AA66 ... ... ... CCLK サイ クル x8 モー ド の D[7:0] ピ ン コ ン フ ィ ギ ュ レーシ ョ ン シーケ ン ス コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス にはい く つかの種類があ り ますが、デバ イ ス を コ ン フ ィ ギ ュ レーシ ョ ンす る 基本的な手順はすべてのモー ド で共通です。 図 9-2 に、 FPGA の コ ン フ ィ ギ ュ レーシ ョ ン プ ロ セ ス を示 し ます。 こ こ か ら は、 各手順 (図中では灰色で表示) について詳 し く 説明 し ます。 X-Ref Target - Figure 9-2 Steps 1 2 Device Power-Up Clear Configuration Memory 3 Sample Mode Pins 4 Synchronization 5 6 7 8 Device ID Check Load Configuration Data CRC Check Startup Sequence Bitstream Loading Setup Start Finish UG570_c9_02_120213 図 9-2 : FPGA のコ ン フ ィ ギ ュ レーシ ョ ン プ ロ セス 最初の 3 つのセ ッ ト ア ッ プ段階では、 デバ イ ス を初期化 し 、 モー ド ピ ン をサンプ リ ン グ し て コ ン フ ィ ギ ュ レーシ ョ ン モー ド を判断 し ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 120 第 9 章 : コ ン フ ィ ギ ュ レーシ ョ ンの詳細 セ ッ ト ア ッ プ (手順 1 - 3) セ ッ ト ア ッ プのプ ロ セ ス は、 すべての コ ン フ ィ ギ ュ レーシ ョ ン モー ド で同 じ です (図 9-3 参照)。 セ ッ ト ア ッ プの各手順は、 デバ イ ス を正 し く コ ン フ ィ ギ ュ レーシ ョ ンす る ために非常に重要です。 こ こ では、 次の手 順を実行 し ます。 • 「デバ イ ス の電源投入 (手順 1)」 • 「 コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ の ク リ ア (手順 2、 初期化)」 • 「モー ド ピ ンのサンプ リ ン グ (手順 3)」 デバイ スの電源投入 (手順 1) X-Ref Target - Figure 9-3 Steps 1 2 3 Device Power-Up Clear Configuration Memory Sample Mode Pins 4 5 6 Synchronization Device ID Check Load Configuration Data 7 8 CRC Check Startup Sequence Bitstream Loading Setup Start Finish UG570_c9_03_120213 図 9-3 : デバイ スの電源投入 (手順 1) コ ン フ ィ ギ ュ レーシ ョ ンには、 デバ イ スの VCCO_0、 VCCAUX、 VCCAUX_IO、 VCCBRAM、 VCCINT、 VCCINT_IO ピ ンに電源が 必要です。 電源投入シーケ ン スの要件については、 各データ シー ト ([参照 6] ま たは [参照 7]) を参照し て く だ さ い。 JTAG お よ びシ リ アル コ ン フ ィ ギ ュ レーシ ョ ンの ピ ンはすべて 1 つの専用バン ク にあ り 、専用の電源電圧 (VCCO_0) が 供給 さ れます。 JTAG ま たはシ リ アル モー ド (最大 SPI x4) の FPGA コ ン フ ィ ギ ュ レーシ ョ ンで RS[1:0] を使用 し ない 場合は、 VCCO_0 以外の I/O 電圧に電源を供給する 必要はあ り ません。 専用入力ピ ンはすべて、 VCCO_0 LVCMOS レベ ルで動作 し ます。 ア ク テ ィ ブな専用出力ピ ンはすべて、 LVCMOS、 12mA 駆動能力、 Fast スルー レー ト に設定 さ れて VCCO_0 電圧レベルで動作 し ます。 多目的ピ ンはバン ク 65 にあ り ます。 多目的 I/O を使用す る モー ド (マ ス タ ー BPI、 SPI x8、 SelectMAP な ど) では、 関 連す る VCCO_65 をデバ イ ス コ ン フ ィ ギ ュ レーシ ョ ンの I/O 規格に一致す る 電圧に接続す る 必要があ り ます。 ま た、 コ ン フ ィ ギ ュ レーシ ョ ン実行中の ピ ンは、 LVCMOS、 12mA 駆動能力、 Fast スルー レー ト です。 Persist モー ド を使用す る と (150 ページの 「Persist オプシ ョ ン」 参照)、 コ ン フ ィ ギ ュ レーシ ョ ン後 も 選択 し た コ ン フ ィ ギ ュ レーシ ョ ン モー ド の多目的 I/O はア ク テ ィ ブな状態を維持 し ます。 こ の際、 汎用 I/O はデフ ォ ル ト の I/O 規格であ る LVCMOS、 12mA 駆動能力、 スルー レー ト と な り ます。 表 9-4 に、 コ ン フ ィ ギ ュ レーシ ョ ンに必要な電源を示 し ます。 表 9-5 に、 電源投入に関する タ イ ミ ン グ パ ラ メ ー タ ー を示 し ます。 電圧の定格値については、 デー タ シー ト を参照 し て く だ さ い。 コ ン フ ィ ギ ュ レーシ ョ ン でサポー ト さ れ る 標準的な I/O 電圧レベルは、 1.5V、 1.8V、 2.5V、 お よ び 3.3V です。 JTAG モー ド の コ ン フ ィ ギ ュ レーシ ョ ンの場合 は、VCCO_0 以外の I/O 電圧に電源を供給す る 必要はあ り ません。多目的ピ ン を使用する コ ン フ ィ ギ ュ レーシ ョ ン モー ド (シ リ ア ル、 マ ス タ ー BPI、 SPI、 SelectMAP な ど) を 選択 し た場合、 VCCO_65 も 供給す る 必要が あ り ま す。 Virtex UltraScale デバ イ スお よ び Kintex UltraScale KU095 のバン ク 65 は HP I/O バン ク です。 こ のため、 バン ク 65 を使用す る コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス は 1.5V ま たは 1.8V で動作す る 必要があ り ます。 表 9-4 : コ ン フ ィ ギ ュ レーシ ョ ンに必要な電源 ピ ン名 説明 VCCINT 内部電源電圧 VCCINT_IO I/O バン ク 用の内部電源電圧 VBATT(1) AES 復号化キーを格納 し た メ モ リ のバ ッ ク ア ッ プ電源 (キー格納用 メ モ リ を 使用 し ない場合は、 VCCAUX ま たは GND に接続) VCCAUX 補助電源電圧 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 121 第 9 章 : コ ン フ ィ ギ ュ レーシ ョ ンの詳細 表 9-4 : コ ン フ ィ ギ ュ レーシ ョ ンに必要な電源 (続き) ピ ン名 説明 VCCAUX_IO_# I/O バン ク 用の補助電源電圧 VCCBRAM ブ ロ ッ ク RAM 用の電源電圧 VCCO_0 コ ン フ ィ ギ ュ レーシ ョ ン バン ク 電源電圧 VCCO_65 多目的 コ ン フ ィ ギ ュ レーシ ョ ン バン ク 用の電源電圧 注記 : 1. VBATT は、AES 暗号化 し た ビ ッ ト ス ト リ ームの復号化キーを FPGA のバ ッ ク ア ッ プ バ ッ テ リ 付 き の RAM に格納 し た場合のみ使用 し ます。 表 9-5 : 電源投入に関する タ イ ミ ング パラ メ ー タ ー シ ンボル 説明 TPL プロ グ ラ ム レ イ テンシ TPOR POR (パ ワーオン リ セ ッ ト ) TICCK CCLK 出力遅延 TPROGRAM プ ロ グ ラ ム パルス幅 注記 : 1. 電源投入時の タ イ ミ ン グ特性については、 デー タ シー ト を参照 し て く だ さ い。 図 9-4 に、 電源投入時の波形を示 し ます。 X-Ref Target - Figure 9-4 Last to ramp of VCCINT/VCCAUX/ VCCBRAM/VCCO_0 TPOR to 95% of nominal INIT_B TICCK CCLK Output or Input M0, M1, M2* (Required) VALID *Can be either 0 or 1, but must not toggle during and after configuration. UG570_c9_04_081414 図 9-4 : デバイ スの電源投入 タ イ ミ ング 各 UltraScale フ ァ ミ リ のデー タ シー ト に記載のガ イ ド ラ イ ンに従い、 適切に電源を投入 し て く だ さ い。 電源は、 仕様 で定義 さ れた電源立ち上が り 時間内に単調増加で立ち上が る 必要があ り ます。 こ れが不可能な場合は、 シ ス テ ム電源 が最小推奨動作電圧に達す る ま で INIT_B ま たは PROGRAM_B を Low に維持 し て コ ン フ ィ ギ ュ レーシ ョ ンの開始を 遅 ら せて く だ さ い ( 「 コ ン フ ィ ギ ュ レーシ ョ ンの遅延」 参照)。 TPOR の電圧の仕様は、 監視対象の電源電圧 (VCCINT、 VCCAUX、 VCCBRAM、 VCCO_0) がすべて推奨動作電圧の 95% に達 し た時点か ら 開始 し ます。 実際の tPOR 遅延は監視対 象電圧の最小指定値か ら 開始す る ため、 電源の立ち上が り が遅い場合、 結果は仕様の最小値にな り ます。 電流引 き 込 みを最小限に抑え、 電源投入時に I/O が ト ラ イ ス テー ト と な る よ う 、 デー タ シー ト では VCCO に最後に電源を供給す る 電源投入シーケ ン ス を推奨 し てい ます。 TPOR 遅延には、 コ ン フ ィ ギ ュ レーシ ョ ン前に電圧を安定 さ せ る ための ビ ル ト イ ン遅延が含まれます。 電源投入か ら 起動ま での時間が重視 さ れ る アプ リ ケーシ ョ ンでは、 POR_OVERRIDE ピ ン を VCCINT に接続 し て、 こ の ビ ル ト イ ン 遅延 を 短 く で き ま す。 電源が短時間で立ち上が り 、 POR_OVERRIDE を VCCINT に接続す る 場合の TPOR 遅延は、 デー タ シー ト を参照 し て く だ さ い。 なお、 VCCINT が最初に立ち上が る よ う にす る こ と を推奨 し てい ます。 標準の TPOR 遅延 と す る には、 POR_OVERRIDE を グ ラ ン ド に接続 し ます。 35 ページ の 「パ ワーオン リ セ ッ ト 」 を参照 し て く だ さ い。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 122 第 9 章 : コ ン フ ィ ギ ュ レーシ ョ ンの詳細 コ ン フ ィ ギ ュ レーシ ョ ンの遅延 コ ン フ ィ ギ ュ レーシ ョ ンの開始を遅 ら せ る には、 初期化中に INIT_B ま たは PROGRAM_B ピ ン を Low に保持 し ます (図 9-4 参照)。 いっ たん INIT_B が High にな る と 、 その後に INIT_B を Low に し て も コ ン フ ィ ギ ュ レーシ ョ ン を遅延 さ せ る こ と はで き ません。 表 9-6 に、 初期化お よ び コ ン フ ィ ギ ュ レーシ ョ ンの遅延に関連す る 信号を示 し ます。 表 9-6 : 初期化お よび コ ン フ ィ ギ ュ レーシ ョ ンの遅延に関連する信号 タ イプ ア ク セス (1) 説明 入力、 出力 ま たは オープ ン ドレイン INIT_B ピ ン を介 し て 外部か ら ア ク セ ス可能 パ ワ ー オ ン リ セ ッ ト ま た は PROGRAM_B リ セ ッ ト 後、 INIT_B が Low 駆動 し 、FPGA が コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ を初期化 ( ク リ ア) 中であ る こ と を示 し ます。 モー ド ピ ンのサン プ リ ン グ前は入力 と な り 、 Low に保持す る こ と で コ ン フ ィ ギ ュ レ ーシ ョ ン の開始を遅 ら せ る こ と が で き ます。 モー ド ピ ン のサ ン プ リ ン グ後はオープ ン ド レ イ ン の ア ク テ ィ ブ Low 出力 と な り 、 コ ン フ ィ ギ ュ レーシ ョ ン中の CRC エ ラ ー ま た は コ ン フ ィ ギ ュ レ ー シ ョ ン 後の リ ー ド バ ッ ク CRC エ ラ ー ( リ ー ド バ ッ ク CRC が有効の場合) の有無を示 し ます。 • 0 : CRC ま たは IDCODE エ ラ ー (DONE が Low)、 ま たは リ ー ド バ ッ ク CRC エ ラ ー (DONE が High、 リ ー ド バ ッ ク CRC が有効の場合) • 1 : CRC エ ラーな し、コ ン フ ィ ギ ュ レーシ ョ ンの初期化完了 INIT_B_INTERNAL_ SIGNAL_STATUS ス テー タ ス (2) FPGA の ス テー タ ス レ ジ ス タ を介 し て ア ク セ ス可能な内部信号 INIT_B 信号が内部で リ リ ース さ れてい る か を示 し ます。 MODE_STATUS[2:0] ス テー タ ス FPGA の ス テー タ ス レ ジ ス タ を介 し て ア ク セ ス可能な内部信号 ス テー タ ス が読み込ま れた と き のモー ド ピ ン の値を示 し ま す。 入力 PROGRAM_B ピ ン を 介 し て外部か ら ア ク セ ス可能 モー ド ピ ンのサン プ リ ン グ前は入力 と な り 、 Low に保持す る こ と で コ ン フ ィ ギ ュ レ ーシ ョ ン の開始を遅 ら せ る こ と が で き ます。 信号名 INIT_B PROGRAM_B 注記 : 1. FPGA の ス テー タ ス レ ジ ス タ の詳細は、 表 9-24 を参照 し て く だ さ い。 SelectMAP を介 し たデバ イ ス の ス テー タ ス レ ジ ス タ へのア ク セ ス に ついては、 第 10 章 「 リ ー ド バ ッ ク 検証お よ び CRC」 を参照 し て く だ さ い。 2. タ イ プが ス テー タ ス の場合は、 対応す る ピ ンのない内部ス テー タ ス信号です。 電源投入後、 PROGRAM_B ピ ン を Low に ト グル し てデバ イ ス を リ コ ン フ ィ ギ ュ レーシ ョ ンで き ます (図 9-5 参照)。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 123 第 9 章 : コ ン フ ィ ギ ュ レーシ ョ ンの詳細 X-Ref Target - Figure 9-5 UG570_c5_06_072414 図 9-5 : PROGRAM_B ピ ン を Low に切 り 替えてデバイ ス を リ コ ン フ ィ ギ ュ レーシ ョ ンする コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ のク リ ア (手順 2、 初期化) コ ン フ ィ ギ ュ レ ーシ ョ ン メ モ リ (図 9-6 参照) は、 デバ イ ス への電源投入後、 PPROGRAM_B ピ ン の Low パル ス 後、 JTAG JPROGRAM 命令ま たは IPROG コ マ ン ド の使用後、あ る いはフ ォールバ ッ ク リ コ ン フ ィ ギ ュ レーシ ョ ン シーケ ン ス中に逐次初期化 さ れます。 ブ ロ ッ ク RAM お よ びフ リ ッ プ フ ロ ッ プは コ ン フ ィ ギ ュ レーシ ョ ン中に初期化で き ま す。 初期化の間、 グ ロ ーバル ト ラ イ ス テー ト (GTS) を使用す る こ と で コ ン フ ィ ギ ュ レーシ ョ ン ピ ンお よ び JTAG ピ ン を 除 き I/O ド ラ イ バーが無効にな り ます。 ユーザー I/O ピ ンは、 PUDC_B が High の場合はハ イ イ ン ピーダ ン ス と な り 、 Low の場合はプルア ッ プ さ れます。 コ ン フ ィ ギ ュ レーシ ョ ン専用のバン ク 0 と 多目的バン ク 65 は、 モー ド ピ ンの設 定にかかわ ら ず コ ン フ ィ ギ ュ レーシ ョ ン中は有効 と な り ます。 SSI テ ク ノ ロ ジ を採用 し てい る デバ イ ス の場合は、 コ ン フ ィ ギ ュ レーシ ョ ン機能を備え ていないバン ク 60 と バン ク 70 も コ ン フ ィ ギ ュ レーシ ョ ン中に有効 と な り ます。 初期化中、 INIT_B は内部で Low に維持 さ れ、 電源投入時は TPOR 経過後に (図 9-4 参照)、 その他の場合は TPL 経過後 に リ リ ース さ れます。 INIT_B を外部か ら Low に保持す る と 、 デバ イ スはピ ンが リ リ ース さ れ る ま で初期化プ ロ セ ス の ま ま待機 し 、 TPOR ま たは TPL 遅延が実現 し ます。 PROGRAM_B の最短 Low パルス時間は、 TPROGRAM タ イ ミ ン グ パ ラ メ ー タ ーに よ っ て決定 し ます。 X-Ref Target - Figure 9-6 Steps 1 2 3 Device Power-Up Clear Configuration Memory Sample Mode Pins 4 5 6 Synchronization Device ID Check Load Configuration Data Bitstream Loading Setup Start 7 8 CRC Check Startup Sequence Finish UG570_c9_05_120213 図 9-6 : 初期化 (手順 2) UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 124 第 9 章 : コ ン フ ィ ギ ュ レーシ ョ ンの詳細 モー ド ピ ンのサン プ リ ング (手順 3) INIT_B ピ ンが High に遷移す る と 、 デバ イ ス はモー ド ピ ン M[2:0] をサンプ リ ン グ し (図 9-7 参照)、 マ ス タ ー モー ド の場合は コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク (CCLK) の駆動を開始 し ます。 次に、 デバ イ ス は CCLK の立ち上が り エ ッ ジで コ ン フ ィ ギ ュ レーシ ョ ン デー タ 入力ピ ンのサンプ リ ン グ を開始 し ます。 X-Ref Target - Figure 9-7 Steps 1 2 Device Power-Up Clear Configuration Memory 3 Sample Mode Pins 4 Synchronization 5 6 7 Device ID Check Load Configuration Data CRC Check Startup Sequence Bitstream Loading Setup Start 8 Finish UG570_c9_06_110213 図 9-7 : モー ド ピ ンのサン プ リ ン グ (手順 3) ビ ッ ト ス ト リ ームの読み込み (手順 4 - 7) ビ ッ ト ス ト リ ームの読み込みプ ロ セ ス は、 すべての コ ン フ ィ ギ ュ レーシ ョ ン モー ド でほぼ共通です。 主な違いは、 コ ン フ ィ ギ ュ レーシ ョ ン ロ ジ ッ ク への イ ン タ ーフ ェ イ ス です。各 コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス の違は、 こ れま での章で説明 し てい ます。 • 「同期 (手順 4)」 • 「デバ イ ス ID の確認 (手順 5)」 • 「 コ ン フ ィ ギ ュ レーシ ョ ン デー タ の読み込み (手順 6)」 • 「CRC (Cyclic Redundancy Check) (手順 7)」 同期 (手順 4) X-Ref Target - Figure 9-8 Steps 1 Device Power-Up 2 Clear Configuration Memory 3 Sample Mode Pins 4 5 Synchronization Device ID Check 6 Load Configuration Data Bitstream Loading Start 7 8 CRC Check Startup Sequence Finish UG570_c9_07_012714 図 9-8 : 同期 (手順 4) BPI、 ス レーブ SelectMAP、 お よ びマ ス タ ー SelectMAP モー ド では、 最初にバ ス幅を検出する 必要があ り ます ( 「バ ス 幅の自動検出」 参照)。 ス レーブ シ リ アル、 マ ス タ ー シ リ アル、 SPI、 お よ び JTAG モー ド では、 バ ス幅検出パ タ ーン は無視 さ れ ます。 バ ス幅検出シーケ ン ス の次に、 32 ビ ッ ト の特別な同期 ワ ー ド (0xAA995566) を コ ン フ ィ ギ ュ レー シ ョ ン ロ ジ ッ ク に送信す る 必要があ り ます。 同期ワ ー ド は、 こ れか ら コ ン フ ィ ギ ュ レーシ ョ ン デー タ の送信が開始 さ れ る こ と をデバ イ ス に通知す る と 共に、 内部の コ ン フ ィ ギ ュ レーシ ョ ン ロ ジ ッ ク が コ ン フ ィ ギ ュ レーシ ョ ン デー タ に揃 う よ う に し ます。 「バ ス幅の自動検出」 シーケ ン ス を除 き 、 同期 ワ ー ド よ り も 前の コ ン フ ィ ギ ュ レーシ ョ ン入 力ピ ン上のデー タ はすべて無視 さ れます。 ツ ールで生成 し た コ ン フ ィ ギ ュ レ ーシ ョ ン ビ ッ ト ス ト リ ー ム (BIT フ ァ イ ル) には必ずバ ス 幅検出パ タ ー ン と 同期 ワー ド の両方が含ま れ る ため、 同期 (図 9-8 参照) をユーザーが意識す る こ と はほ と ん ど あ り ません。 表 9-7 に、 同期 に関連す る 信号を示 し ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 125 第 9 章 : コ ン フ ィ ギ ュ レーシ ョ ンの詳細 表 9-7 : 同期化に関連する信号 信号名 タ イプ ア ク セス 説明 DALIGN ス テー タ ス SelectMAP イ ン タ ー フ ェ イ ス で ABORT シー ケ ン ス中にのみ使用可能です。 デバ イ ス が同期 し て い る か ど う か を示 し ます。 IWIDTH ス テー タ ス 内部信号です。 FPGA ス テー タ ス レ ジ ス タ を 検出 さ れたバス幅を示 し ます。 00 = x1 介 し て のみア ク セ ス 可能です。 (1) ス テー タ ス レ ジ ス タ の CFG_BUS_WIDTH_DETECTION 01 = x8 ビ ッ ト が検出 し たバス幅を示 し ます。 10 = x16 11 = x32 ICAPE3 が有効な場合、 こ の信号は コ ン フ ィ ギ ュ レ ー シ ョ ン 完了後の ICAPE3 幅を示 し ます。 注記 : 1. FPGA の ス テー タ ス レ ジ ス タ の詳細は、 表 9-24 を参照 し て く だ さ い。 JTAG ま たは SelectMAP を介 し たデバ イ ス の ス テー タ ス レ ジ ス タ へのア ク セ ス については、 第 10 章 「 リ ー ド バ ッ ク 検証お よ び CRC」 を参照 し て く だ さ い。 デバイ ス ID の確認 (手順 5) X-Ref Target - Figure 9-9 Steps 1 2 3 Device Power-Up Clear Configuration Memory Sample Mode Pins 4 5 6 Synchronization Device ID Check Load Configuration Data 7 8 CRC Check Startup Sequence Bitstream Loading Start Finish UG570_c9_08_012714 図 9-9 : デバイ ス ID の確認 (手順 5) デバ イ ス の同期後、 コ ン フ ィ ギ ュ レーシ ョ ン デー タ フ レーム を読み込む前にデバ イ ス ID を確認す る 必要があ り ます (図 9-9 参照)。 こ れは、 別のデバ イ ス用に フ ォ ーマ ッ ト さ れた ビ ッ ト ス ト リ ームで コ ン フ ィ ギ ュ レーシ ョ ン さ れ る こ と を防ぐ ためです。 コ ン フ ィ ギ ュ レーシ ョ ン中に ID エ ラ ーが発生す る と 、 デバ イ ス はフ ォールバ ッ ク リ コ ン フ ィ ギ ュ レーシ ョ ンの実行 を試みます。 デバ イ ス ID チ ェ ッ ク はビ ッ ト ス ト リ ームに組み込まれてい る ため、 こ の処理を設計者が意識す る こ と はほ と ん ど あ り ません。 こ の場合のデバ イ ス ID チ ェ ッ ク は、 JTAG IDCODE レ ジ ス タ を介 し てではな く 、 コ ン フ ィ ギ ュ レーシ ョ ン ロ ジ ッ ク に対す る ビ ッ ト ス ト リ ーム内の コ マ ン ド に よ っ て実行 さ れます。 FPGA の JTAG IDCODE レ ジ ス タ の フ ォーマ ッ ト は次の と お り です。 vvvv:fffffff:aaaaaaaaa:ccccccccccc1 説明 : v = リ ビジ ョ ン f = 7 ビ ッ ト のフ ァ ミ リ コー ド a = 9 ビ ッ ト のア レ イ コ ー ド (4 ビ ッ ト のサブ フ ァ ミ リ コ ー ド と 5 ビ ッ ト のデバ イ ス コ ー ド ) c = 企業 コ ー ド Kintex® UltraScale™ お よ び Virtex® UltraScale FPGA の IDCODE 値は、 17 ページの表 1-5 を参照 し て く だ さ い。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 126 第 9 章 : コ ン フ ィ ギ ュ レーシ ョ ンの詳細 コ ン フ ィ ギ ュ レーシ ョ ン デー タ の読み込み (手順 6) X-Ref Target - Figure 9-10 Steps 1 2 3 Device Power-Up Clear Configuration Memory Sample Mode Pins 4 5 6 Synchronization Device ID Check Load Configuration Data 7 8 CRC Check Startup Sequence Bitstream Loading Start Finish UG570_c9_09_012714 図 9-10 : コ ン フ ィ ギ ュ レーシ ョ ン デー タ フ レームの読み込み (手順 6) 同期 ワー ド の読み込み と デバ イ ス ID の確認が完了す る と 、 コ ン フ ィ ギ ュ レーシ ョ ン デー タ フ レームが読み込まれま す (図 9-10 参照)。 こ のプ ロ セ ス を ユーザーが意識す る こ と はほ と ん ど あ り ません。 CRC (Cyclic Redundancy Check) (手順 7) X-Ref Target - Figure 9-11 Steps 1 2 Device Power-Up Clear Configuration Memory 3 Sample Mode Pins 4 Synchronization 5 6 7 8 Device ID Check Load Configuration Data CRC Check Startup Sequence Bitstream Loading Start Finish UG570_c9_10_012714 図 9-11 : CRC (Cyclic Redundancy Check) (手順 7) コ ン フ ィ ギ ュ レーシ ョ ン デー タ フ レームの読み込み時に、 デバ イ ス は コ ン フ ィ ギ ュ レーシ ョ ン デー タ パケ ッ ト か ら CRC 値を算出 し ます。 コ ン フ ィ ギ ュ レーシ ョ ン デー タ フ レームの読み込み後、 コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ームに よ り デバ イ ス に対 し て CRC を確認す る 命令が発行 さ れ、 その後に正 し い CRC 値が送信 さ れます。 デバ イ ス が算出 し た CRC 値がビ ッ ト ス ト リ ーム内の正 し い CRC 値 と 一致 し ない場合、 デバ イ スは INIT_B を Low 駆動 し 、 コ ン フ ィ ギ ュ レーシ ョ ン を中断 し ます。 デフ ォ ル ト では CRC チ ェ ッ ク が コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ームに 含 ま れ ま す が、 BITSTREAM.GENERAL.CRC DISABLE を 使用 し て 無効 に す る こ と も で き ま す。 ま た、 BITSTREAM.CONFIG.INITSIGNALSERROR DISABLE を使用 し て INIT_B エ ラ ー信号を無効にで き ます。 CRC チ ェ ッ ク お よ び INIT_B エ ラ ー信号の使用を推奨 し ま す。 CRC チ ェ ッ ク を無効にす る と 、 誤っ た コ ン フ ィ ギ ュ レ ーシ ョ ン デー タ フ レームが読み込まれ、 デザ イ ンの動作不良やデバ イ ス の損傷を引き 起 こ す可能性があ り ます。 FPGA がマ ス タ ー と な っ てい る モー ド での コ ン フ ィ ギ ュ レーシ ョ ンで CRC エ ラ ーが発生す る と 、 フ ォールバ ッ ク リ コ ン フ ィ ギ ュ レーシ ョ ンが実行 さ れます。 BPI お よ び SPI モー ド で フ ォールバ ッ ク リ コ ン フ ィ ギ ュ レーシ ョ ンが再び エ ラ ーにな っ た場合、 BPI/SPI イ ン タ ー フ ェ イ ス を再同期す る には、 PROGRAM_B ピ ン を パル ス し 、 コ ン フ ィ ギ ュ レーシ ョ ン プ ロ セ ス を最初か ら 再実行する 必要があ り ます。 その場合 も JTAG イ ン タ ーフ ェ イ スは応答可能で、 デバ イ ス も ア ク テ ィ ブですが、 BPI/SPI イ ン タ ーフ ェ イ ス のみ動作で き ない状態にあ り ます。 SelectMAP モー ド の場合は、 PROGRAM_B ピ ン を Low にパル ス す る か、 ABORT シー ケ ン ス を 開始す る こ と に よ っ て 再同期で き ま す (第 5 章 「SelectMAP コ ン フ ィ ギ ュ レーシ ョ ン モー ド 」 参照)。 ザ イ リ ン ク ス のデバ イ ス では 32 ビ ッ ト の CRC チ ェ ッ ク が使用 さ れます。 CRC チ ェ ッ ク は、 コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ーム の送信エ ラ ーを検出す る ための も のですが、 あ る 特定の状況下では検出で き ない可能性 も あ り ま す。 こ れは、 ダブル ク ロ ッ キ ン グ な ど の ク ロ ッ キ ン グ エ ラ ーに よ っ て 32 ビ ッ ト のビ ッ ト ス ト リ ーム パケ ッ ト と コ ン フ ィ ギ ュ レーシ ョ ン ロ ジ ッ ク の同期が失われた場合な ど です。 同期が失われ る と 、 以降の コ マ ン ド は CRC チ ェ ッ ク の コ マ ン ド を含め一切認識 さ れな く な り 、 デバ イ ス の コ ン フ ィ ギ ュ レーシ ョ ンは完了 し ません。 こ の よ う な状況では CRC が無視 さ れ る ため、 DONE が Low、 INIT_B が High にな っ て コ ン フ ィ ギ ュ レーシ ョ ンが完了 し ません。 BPI モー ド の非同期読み出 し では、ア ド レ ス カ ウ ン タ ーが最終的にオーバーフ ロ ーま たはア ン ダーフ ロ ー し て ラ ッ プア ラ ウ ン ド が起 こ り 、 こ れに よ っ て フ ォールバ ッ ク リ コ ン フ ィ ギ ュ レーシ ョ ンが開始 し ます。 BPI 同期読み出 し モー ド では、 エ ラ ー条件の ラ ッ プア ラ ウ ン ド はサポー ト さ れません。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 127 第 9 章 : コ ン フ ィ ギ ュ レーシ ョ ンの詳細 ス タ ー ト ア ッ プ シーケ ン ス (手順 8) X-Ref Target - Figure 9-12 Steps 1 2 Device Power-Up Clear Configuration Memory 3 Sample Mode Pins 4 Synchronization 5 6 7 8 Device ID Check Load Configuration Data CRC Check Startup Sequence Bitstream Loading Start Finish UG570_c9_11_012714 図 9-12 : ス タ ー ト ア ッ プ シーケ ン ス (手順 8) コ ン フ ィ ギ ュ レ ーシ ョ ン フ レ ーム の読み込みが完了す る と 、 ス タ ー ト ア ッ プ シーケ ン ス の開始命令が ビ ッ ト ス ト リ ーム か ら デバ イ ス に与え ら れ ます (図 9-12 参照)。 ス タ ー ト ア ッ プ シーケ ン ス は、 8 フ ェ ーズ (フ ェ ーズ 0 ~ 7) の シーケ ン シ ャ ル ス テー ト マシ ンで制御 さ れます。 ス タ ー ト ア ッ プ シーケ ンサーは、 表 9-8 に示す タ ス ク を実行 し ま す。 表 9-8 : ス タ ー ト ア ッ プ イ ベン ト のユーザー選択可能なサイ ク ル フ ェ ーズ イ ベン ト 1-6 MMCM が ロ ッ ク す る ま で待機す る (オプシ ョ ン) 1-6 DCI が一致す る ま で待機する (オプシ ョ ン) 1-6 GWE (グ ロ ーバル ラ イ ト イ ネーブル) を アサー ト し 、 RAM お よ びフ リ ッ プ フ ロ ッ プの状態を変更可能にす る 1-6 GTS (グ ロ ーバル ト ラ イ ス テー ト ) をデ ィ アサー ト し 、 I/O を有効にする 1-6 DONE ピ ン を リ リ ースす る 7 EOS (End Of Start-up) を アサー ト す る EOS のアサー ト を除 く ス タ ー ト ア ッ プ イ ベン ト の順序は、 BITSTREAM.STARTUP プ ロ パテ ィ で制御 さ れ る ビ ッ ト ス ト リ ーム オプシ ョ ン を用いてユーザーがプ ロ グ ラ ム で き ます ( 『Vivado Design Suite ユーザー ガ イ ド : プ ロ グ ラ ムお よ びデバ ッ グ』 (UG908) [参照 5] 参照)。 表 9-9 に、 一般的な イ ベン ト の順序を示 し ます。 実際の ス タ ー ト ア ッ プ イ ベ ン ト の各フ ェ ーズはユーザーでプ ロ グ ラ ム可能ですが、 EOS は常に最後の フ ェ ーズでアサー ト さ れます。 表 9-9 に、 デフ ォ ル ト 設定での ス タ ー ト ア ッ プ イ ベン ト の順序を示 し ます。 表 9-9 : デ フ ォル ト のス タ ー ト ア ッ プ イ ベン ト のシーケ ン ス フ ェ ーズ イ ベン ト 4 DONE ピ ン を リ リ ースする 5 GTS (グ ロ ーバル ト ラ イ ス テー ト ) をデ ィ アサー ト し 、 I/O を有効にす る 6 GWE を アサー ト し 、 RAM と フ リ ッ プ フ ロ ッ プの状態を変更可能にす る 7 EOS (End Of Start-up) を アサー ト す る 適切な ビ ッ ト ス ト リ ーム オプシ ョ ン を使用す る と 、 ス タ ー ト ア ッ プ シーケ ン ス で MMCM が ロ ッ ク す る か DCI が一 致す る ま で待機 さ せ る こ と がで き ます。 通常、 こ れ ら のオプシ ョ ンは、 MMCM の ロ ッ ク ま たは DCI の一致の前に、 DONE、 GTS、 お よ び GWE がアサー ト さ れない よ う にす る ために設定 し ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 128 第 9 章 : コ ン フ ィ ギ ュ レーシ ョ ンの詳細 注記 : 多目的 コ ン フ ィ ギ ュ レーシ ョ ン ピ ン で DCI を使用す る 場合。 I/O バン ク 65 の多目的 コ ン フ ィ ギ ュ レーシ ョ ン ピ ンのいずれかがユーザー デザ イ ンで DCI I/O 規格に割 り 当て ら れてい る 場合、 ス タ ー ト ア ッ プが終了 し て こ れ ら の ピ ンが コ ン フ ィ ギ ュ レーシ ョ ン機能か ら リ リ ース さ れ る ま で DCI 調整は行われません。DCIUpdateMode を AsRequired に設定 し た場合、 ス タ ー ト ア ッ プ終了か ら こ れ ら ピ ン が調整 さ れ る ま での遅延時間は不定です。 DCIUpdateMode を Quiet に設定 し た場合、こ れ ら の ピ ンに DCI 値が設定 さ れ る こ と はあ り ません。こ う いっ た問題を防ぐ には DCIRESET プ リ ミ テ ィ ブ をデザ イ ンに含め、 DCIRESET の RST 入力をパルス し た後、 LOCKED 信号がアサー ト さ れ る ま で待機 し てか ら 、DCI 規格を使用す る 多目的ピ ンのユーザー入力ま たは出力を使用す る よ う に し て く だ さ い。DCI の詳細は、 『UltraScale アーキ テ ク チ ャ SelectIO リ ソ ース ユーザー ガ イ ド 』 (UG571) [参照 16] を参照 し て く だ さ い。 DONE 信号は、 ユーザー オプシ ョ ン で指定 し たサ イ ク ルで ス タ ー ト ア ッ プ シーケ ンサーに よ っ て リ リ ース さ れ ます が、 実際に DONE ピ ンが ロ ジ ッ ク High にな る ま で、 ス タ ー ト ア ッ プは進みません。 DONE ピ ンはオープン ド レ イ ン の双方向信号です。 DONE ピ ンが リ リ ース さ れ る と 、 Low 駆動が停止 し て ピ ンがデフ ォ ル ト の内部プルア ッ プ抵抗に よ っ てプルア ッ プ さ れます。DONE レ ジ ス タ にはセ ッ ト ア ッ プ ま たはホール ド の条件はあ り ません。表 9-10 に ス タ ー ト ア ッ プ シーケ ン ス に関連 し た信号を示 し 、 図 9-13 にその波形を示 し ます。 表 9-10 : ス タ ー ト ア ッ プ シーケ ンサーに関連する信号 信号名 DONE Release_DONE タ イプ ア ク セス (1) 説明 双方向(2) DONE ピ ン ま たは FPGA の ス テー タ ス レジス タ コ ン フ ィ ギ ュ レーシ ョ ンが完了 し た こ と を示 し ます。 外 部で Low を維持 し 、 ス タ ー ト ア ッ プ を ほかの FPGA と 同期 さ せる こ と がで き ます。 ス テー タ ス FPGA ス テー タ ス レジス タ デバ イ ス が DONE ピ ンの Low 駆動を停止 し たか を示 し ます。 ピ ン を外部か ら Low に維持 し た場合、 Release_ DONE と 実際の DONE ピ ン の値が異な る こ と が あ り ま す。 GWE(3) グ ロ ーバル ラ イ ト イ ネーブル (GWE)。 High にアサー ト さ れ る と 、 FPGA の RAM、 CLB フ リ ッ プ フ ロ ッ プ、 お よ びその他の同期エ レ メ ン ト が有効にな り ます。 GTS グ ロ ーバル ト ラ イ ス テー ト (GTS)。 High にアサー ト さ れ る と 、コ ン フ ィ ギ ュ レーシ ョ ン ピ ン用を除 く すべての I/O ド ラ イ バーが無効にな り ます。 EOS EOS (End of Start-up) コ ン フ ィ ギ ュ レ ーシ ョ ン お よ び ス タ ー ト ア ッ プ プ ロ セ ス が完全に終了 し た こ と 示 し ます。 DCI_MATCH すべ て の DCI (デ ジ タ ル制御 イ ン ピ ー ダ ン ス) コ ン ト ロ ー ラ ーの内部抵抗が、 外部の参照抵抗 と 一致 し てい る こ と を示 し ます。 MMCM_PLL_ LOCKED デ フ ォ ル ト で ア サ ー ト さ れ て い ま す。 ま た は STARTUP_WAIT オ プ シ ョ ン が 使用 さ れ て い る 場 合、 MMCM お よ び PLL が ロ ッ ク す る と アサー ト さ れます。 注記 : 1. FPGA の ス テー タ ス レ ジ ス タ の詳細は、 表 9-24 を参照 し て く だ さ い。 JTAG ま たは SelectMAP を介 し たデバ イ ス の ス テー タ ス レ ジ ス タ へのア ク セ ス については、 第 10 章 「 リ ー ド バ ッ ク 検証お よ び CRC」 を参照 し て く だ さ い。 2. オープン ド レ イ ン出力です。 3. GWE は コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク (CCLK) に同期 し て アサー ト さ れ る ため、 デバ イ ス全体の ス キ ュ ーが大 き く な り ま す。 こ のため、 順次エ レ メ ン ト はユーザー シ ス テ ム ク ロ ッ ク に同期 し て リ リ ース さ れず、 ス タ ー ト ア ッ プ中に タ イ ミ ン グ違反 が発生す る 可能性があ り ます。 ス タ ー ト ア ッ プ後にデザ イ ン を リ セ ッ ト し 、 その他の同期化テ ク ニ ッ ク を適用す る こ と を推奨 し ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 129 第 9 章 : コ ン フ ィ ギ ュ レーシ ョ ンの詳細 X-Ref Target - Figure 9-13 POR INIT_B DONE GWE GTS EOS CCLK Initialization Configuration End of Bitstream Startup UG570_c9_12_012714 図 9-13 : コ ン フ ィ ギ ュ レーシ ョ ン信号のシーケ ン ス (デ フ ォル ト 設定でのス タ ー ト ア ッ プの場合) End of Start-up へのク ロ ッ キン グ デフ ォ ル ト では、 DONE は ス タ ー ト ア ッ プのフ ェ ーズ 4 で リ リ ース さ れます。 DONE は コ ン フ ィ ギ ュ レーシ ョ ンが完 了 し 、 すべてのデー タ が読み込まれた こ と を示す も のですが、 ス タ ー ト ア ッ プ シーケ ン ス が End of Start-up の フ ェー ズ 7 ま で正 し く かつ確実に完了す る には追加 ク ロ ッ ク サ イ ク ルを適用する 必要があ り ます。DONE 後は控えめに見積 も っ て も 24 の ク ロ ッ ク サ イ ク ルが必要で、 こ れが最 も 一般的 な 使用例です。 ビ ッ ト ス ト リ ー ム オ プ シ ョ ン の LCK_cycle ま たは Match_cycle に よ っ て未定義の ク ロ ッ ク サ イ ク ル数が追加 さ れます。 EOS (End of Startup) 時の I/O 遷移 HR I/O バン ク に多目的 コ ン フ ィ ギ ュ レーシ ョ ン ピ ンがあ る 、 KU095 を除 く すべての Kintex UltraScale FPGA の場合、 そのバン ク の VCCO が 1.8V ま たはそれ以下で、 そのバン ク にあ る ピ ン が Low ま たは フ ロ ーテ ィ ン グ状態にな る と 、 コ ン フ ィ ギ ュ レ ーシ ョ ン ス タ ー ト ア ッ プ シーケ ン ス 中に イ ン タ ー コ ネ ク ト ロ ジ ッ ク への入力が 0-1-0 と 遷移 し ま す。 こ の遷移は、 GWE が内部 ロ ジ ッ ク を有効に し た後に開始 さ れ る ため、 コ ン フ ィ ギ ュ レーシ ョ ン後のデバ イ ス の 内部 ス テー ト に影響を及ぼす可能性があ り ます。 こ れは、 多目的 コ ン フ ィ ギ ュ レーシ ョ ン バン ク 65 だけではな く 、 KU085 お よ び KU115 のバ ン ク 70 に も 適用 さ れ る こ と に留意 し て く だ さ い。 遷移は、 EOS (End Of Startup) 後の 1 CFGCLK 間で生 じ ます。 こ の遷移を回避する には、 VCCO_65 (お よ び VCCO_70) を 2.5V ま たは 3.3V に設定す る か、 こ の ピ ン を外部か ら High 駆動 し て く だ さ い (表 9-11 参照)。 その他の方法 と し ては、 EOS の立ち上が り エ ッ ジ後の 1 CFGCLK か ら 少な く と も 200ns 経過す る ま では、 こ れ ら の影響を受けた入力信号を無視す る よ う に ロ ジ ッ ク を設計す る 必要があ り ます。 CFGCLK お よ び EOS は、 STARTUPE3 プ リ ミ テ ィ ブ を使用 し てモニ タ ー可能です。 表 9-11 : Kintex UltraScale フ ァ ミ リ (KU095 を除 く ) での EOS 時の I/O 遷移 VCCO_0 VCCO_65 または VCCO_70 ピ ンのス テー ト 入力遷移 2.5V ま たは 3.3V 1.8V ま たはそれ以下 0 ま たはフ ロ ーテ ィ ン グ 0-1-0 1.8V ま たはそれ以下 任意 任意 なし 任意 2.5V ま たは 3.3V 任意 なし 任意 任意 1 なし UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 130 第 9 章 : コ ン フ ィ ギ ュ レーシ ョ ンの詳細 コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ーム FPGA の ビ ッ ト ス ト リ ーム には、 コ ン フ ィ ギ ュ レーシ ョ ン デー タ 以外に FPGA コ ン フ ィ ギ ュ レーシ ョ ン ロ ジ ッ ク へ の コ マ ン ド も 含ま れます。 ビ ッ ト ス ト リ ームは、 次の 3 つの部分で構成 さ れます。 • バ ス幅の自動検出 • 同期 ワー ド • FPGA コ ン フ ィ ギ ュ レーシ ョ ン デー タ バス幅の自動検出 パ ラ レル コ ン フ ィ ギ ュ レーシ ョ ン モー ド では、 バ ス幅は コ ン フ ィ ギ ュ レーシ ョ ン ロ ジ ッ ク に よ っ て自動的に検出 さ れ ま す。 バ ス幅検出パ タ ーンは、 すべての ビ ッ ト ス ト リ ーム (BIT ま たは RBT) の先頭に置かれ ます。 バ ス幅検出パ タ ーンは同期 ワ ー ド よ り 前に現れ る ため、 シ リ アル コ ン フ ィ ギ ュ レーシ ョ ン モー ド (マ ス タ ー シ リ アル、 ス レーブ シ リ アル、 JTAG、 SPI モー ド ) では無視 さ れます。 コ ン フ ィ ギ ュ レーシ ョ ン ロ ジ ッ ク ではパ ラ レル バ ス の下位 8 ビ ッ ト のみがチ ェ ッ ク さ れ、受信 し たバ イ ト シーケ ン ス に基づいて自動的に適切な外部バ ス幅に切 り 替え る こ と がで き ま す。 表 9-12 に、 バ ス幅検出パ タ ーン を挿入 し た ビ ッ ト ス ト リ ームの例を示 し ます。 詳 し く は 「パ ラ レ ル バ ス の ビ ッ ト 順」 で説明 し ますが、 FPGA デー タ ピ ンに現れ る ビ ッ ト パ タ ーンは ス ワ ッ プ し てい ます。 表 9-12 に示 し た ビ ッ ト ス ト リ ーム デー タ は、 ス ワ ッ プ し ていない ビ ッ ト ス ト リ ームの 32 ビ ッ ト コ ン フ ィ ギ ュ レー シ ョ ン ワ ー ド です。 ス ワ ッ プ し た形式、 お よ びス ワ ッ プ し ていない形式の詳細は、 「コ ン フ ィ ギ ュ レーシ ョ ン デー タ フ ァ イ ルの形式」 を参照 し て く だ さ い。 表 9-12 : バス幅検出パ タ ーン D[24:31] D[16:23] D[8:15] D[0:7] 0xFF 0xFF 0xFF 0xFF 無視 さ れ る 0x00 0x00 0x00 0xBB バ ス幅検出パ タ ーン 0x11 0x22 0x00 0x44 バ ス幅検出パ タ ーン 0xFF 0xFF 0xFF 0xFF 無視 さ れ る 0xFF 0xFF 0xFF 0xFF 無視 さ れ る 0xAA 0x99 0x55 0x66 同期ワ ー ド ... ... ... ... 注釈 ... x8 バ ス の場合、 コ ン フ ィ ギ ュ レーシ ョ ン バ ス幅検出 ロ ジ ッ ク が D[0:7] ピ ン で最初に 0xBB、 次に 0x11 を検出 し ま す。 x16 バス の場合は、 D[0:7] ピ ンで最初に 0xBB、 次に 0x22 を検出 し ます。 x32 バス の場合は、 D[0:7] ピ ン で最初 に 0xBB、 次に 0x44 を検出 し ます。 表 9-13 を参照 し て く だ さ い。 表 9-13 : バス幅検出 バス幅 第 1 ワー ド 第 2 ワー ド 無視 さ れる ビ ッ ト D[0:7] 無視 さ れる ビ ッ ト D[0:7] x8 N/A 0xBB N/A 0x11 x16 0x00 0xBB 0x11 0x22 x32 0x000000 0xBB 0x110022 0x44 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 131 第 9 章 : コ ン フ ィ ギ ュ レーシ ョ ンの詳細 0xBB 直後のバ イ ト が 0x11、 0x22、 0x44 のいずれで も ない場合、 バ ス幅の ス テー ト マシ ンが リ セ ッ ト さ れ、 有効 なシーケ ン ス が検出 さ れ る ま で 0xBB を検索 し ます。 その後、 適切な外部バ ス幅に切 り 替わ り 、 同期ワー ド の検出を 開始 し ます。 バ ス幅が検出 さ れ る と 、 電源の入れ直 し 、 PROGRAM_B パルス、 JPROGRAM リ セ ッ ト 、 ま たは IPROG リ セ ッ ト が発行 さ れ る ま で、 SelectMAP イ ン タ ーフ ェ イ ス はそのバ ス幅に固定 さ れます。 同期ワー ド 特別な同期 ワ ー ド を使用 し 、 コ ン フ ィ ギ ュ レ ーシ ョ ン ロ ジ ッ ク を 32 ビ ッ ト ワ ー ド に揃え る こ と がで き ま す。 同期 ワー ド が検出 さ れ る ま で、 FPGA はパケ ッ ト 処理を開始 し ません。 パ ラ レル コ ン フ ィ ギ ュ レーシ ョ ン モー ド では、 同 期ワ ー ド の前にバ ス幅が正 し く 検出 さ れ る 必要があ り ます。 表 9-14 に、 ビ ッ ト ス ワ ッ プな し の ビ ッ ト ス ト リ ーム形 式におけ る 同期 ワー ド を示 し ます。 表 9-14 : 同期ワー ド 31:24 23:16 15:8 7:0 0xAA 0x99 0x55 0x66 コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ フ レーム FPGA の コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ は、 フ レームに分割 さ れ、 デバ イ ス に並べ ら れてい ます。 FPGA の コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ 空間では、 フ レームがア ド レ ス指定可能な最小単位であ り 、 すべての操作は コ ン フ ィ ギ ュ レー シ ョ ン フ レーム全体に対 し て実行す る こ と にな り ます。 フ レームはすべて 3,936 ビ ッ ト (123 個の 32 ビ ッ ト ワ ー ド ) の固定長です。ビ ッ ト ス ト リ ーム オプシ ョ ンに よ っ ては、コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ームにオーバーヘ ッ ド が追加 さ れ る こ と があ り ます。 ビ ッ ト ス ト リ ームの正確な長 さ は、 RBT (rawbits) フ ァ イ ルに記述 さ れてい ます。 こ の フ ァ イ ルは、 ビ ッ ト ス ト リ ー ム ジ ェ ネ レ ー タ ーで raw_bitfile オプ シ ョ ン を指定す る か、 ま たは Vivado ツ ールの [Generate Programming File] → [Create ASCII Configuration File] を ク リ ッ ク する と 生成 さ れます。 ビ ッ ト ス ト リ ーム長 ( ワー ド ) は、 コ ン フ ィ ギ ュ レーシ ョ ン ア レ イ サ イ ズ (ワ ー ド ) に コ ン フ ィ ギ ュ レーシ ョ ン オーバーヘ ッ ド ( ワ ー ド ) を 足 し た も のにほぼ等 し く な り ます。 ビ ッ ト ス ト リ ーム長 (ビ ッ ト ) は、 ビ ッ ト ス ト リ ーム長 ( ワー ド ) に 32 を掛けた も のにほぼ等 し く な り ます。 16 ページの表 1-4 を参照 し て く だ さ い。 ビ ッ ト ス ト リ ームの構成 同期化後、 コ ン フ ィ ギ ュ レーシ ョ ン ロ ジ ッ ク に よ っ て各 32 ビ ッ ト デー タ ワ ー ド が コ ン フ ィ ギ ュ レーシ ョ ン パケ ッ ト ま たは複数 ワー ド コ ン フ ィ ギ ュ レーシ ョ ン パケ ッ ト の コ ン ポーネ ン ト と し て処理 さ れます。 表 9-15 に、 デフ ォ ル ト 設定を用いて生成 さ れた、 XCKU040 のサンプル ビ ッ ト ス ト リ ームの構成を示 し ます。 表 9-15 : XCKU040 のサン プル ビ ッ ト ス ト リ ーム コ ン フ ィ ギ ュ レー シ ョ ン デー タ ワー ド (16 進数) 説明 FFFFFFFF ダ ミ ー パ ッ ド ワー ド 、 ワー ド 1 FFFFFFFF ダ ミ ー パ ッ ド ワー ド 、 ワー ド 2 … ダ ミ ー パ ッ ド ワ ー ド 3 ~ 15 FFFFFFFF ダ ミ ー パ ッ ド ワ ー ド 、 ワ ー ド 16 000000BB バス幅自動検出、 ワ ー ド 1 11220044 バス幅自動検出、 ワ ー ド 2 FFFFFFFF ダ ミ ー パ ッ ド ワー ド FFFFFFFF ダ ミ ー パ ッ ド ワー ド AA995566 同期ワ ー ド UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 132 第 9 章 : コ ン フ ィ ギ ュ レーシ ョ ンの詳細 表 9-15 : XCKU040 のサン プル ビ ッ ト ス ト リ ーム (続き) コ ン フ ィ ギ ュ レー シ ョ ン デー タ ワー ド (16 進数) 説明 20000000 NOOP 20000000 NOOP 30022001 パケ ッ ト タ イ プ 1 : TIMER レ ジ ス タ の書き 込み、 WORD_COUNT = 1 00000000 TIMER[31:0] = 00000000 (16 進数) (オプシ ョ ンの ウ ォ ッ チ ド ッ グ タ イ マー用のプ レース ホルダー ) 30020001 00000000 30008001 00000000 パケ ッ ト タ イ プ 1 : WBSTAR レ ジ ス タ の書き 込み、 WORD_COUNT = 1 WBSTAR[31:0] = 00000000 (16 進数) (オプシ ョ ン のマルチブー ト ネ ク ス ト コ ン フ ィ ギ ュ レーシ ョ ン ア ド レ ス用のプ レース ホ ルダー ) パケ ッ ト タ イ プ 1 : CMD レ ジ ス タ の書き 込み、 WORD_COUNT = 1 CMD[4:0] = 00000 (バ イ ナ リ ) = NULL (オプシ ョ ンのマルチブー ト ネ ク ス ト コ ン フ ィ ギ ュ レーシ ョ ン リ ブー ト IPROG コ マ ン ド 用のプ レース ホルダー ) 20000000 NOOP 30008001 パケ ッ ト タ イ プ 1 : CMD レ ジ ス タ の書き 込み、 WORD_COUNT = 1 00000007 CMD[4:0] = 00111 (バ イ ナ リ ) = RCRC (CRC レ ジ ス タ の リ セ ッ ト ) (ビ ッ ト ス ト リ ーム CRC のカバレ ッ ジが こ こ で開始) 20000000 NOOP 20000000 NOOP 30002001 パケ ッ ト タ イ プ 1 : FAR レ ジ ス タ の書き 込み、 WORD_COUNT = 1 00000000 30026001 00000000 30012001 02003FE5 3001C001 00000000 30018001 03651093 30008001 00000009 FAR (フ レーム ア ド レ ス) = 00000000 (16 進数) パケ ッ ト タ イ プ 1 : CRC レ ジ ス タ の書 き 込み、 WORD_COUNT = 1 CRC に よ る 算出値 = 00000000 (16 進数) (プ レース ホルダー ) パケ ッ ト タ イ プ 1 : COR0 レ ジ ス タ の書き 込み、 WORD_COUNT = 1 COR0[31:0] = 02003FE5 (16 進数) (EMCCLK、 CCLK 周波数、 ス タ ー ト ア ッ プ シーケ ン ス な ど、 コ ン フ ィ ギ ュ レーシ ョ ン オプシ ョ ン を設定) パケ ッ ト タ イ プ 1 : COR1 レ ジ ス タ の書き 込み、 WORD_COUNT = 1 COR1[31:0] = 00000000 (16 進数) (BPI ページ モー ド な ど の コ ン フ ィ ギ ュ レーシ ョ ン オプシ ョ ン を設定) パケ ッ ト タ イ プ 1 : IDCODE レ ジ ス タ の書 き 込み、 WORD_COUNT = 1 IDCODE[31:0] = 03651093 (16 進数) (書 き 込まれた IDCODE がデバ イ ス IDCODE と 一致 し ない場合はエ ラ ー ) パケ ッ ト タ イ プ 1 : CMD レ ジ ス タ の書き 込み、 WORD_COUNT = 1 CMD[4:0] = 01001 (バ イ ナ リ ) = SWITCH (CCLK 周波数の変更) 20000000 NOOP 3000C001 パケ ッ ト タ イ プ 1 : MASK レ ジ ス タ の書 き 込み、 WORD_COUNT = 1 00000000 CTL0/CTL1 レ ジ ス タ への書 き 込み用のビ ッ ト マ ス ク 。MASK[31:0] = 00000000 (16 進数) UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 133 第 9 章 : コ ン フ ィ ギ ュ レーシ ョ ンの詳細 表 9-15 : XCKU040 のサン プル ビ ッ ト ス ト リ ーム (続き) コ ン フ ィ ギ ュ レー シ ョ ン デー タ ワー ド (16 進数) 3000A001 00000501 3000C001 00000000 30030001 00000000 説明 パケ ッ ト タ イ プ 1 : CTL0 レ ジ ス タ の書き 込み、 WORD_COUNT = 1 CTL0[31:0] = 00000501 (16 進数) (注記 :以前の MASK も 確認) (フ ォールバ ッ ク 、 リ ー ド バ ッ ク な ど、 コ ン フ ィ ギ ュ レーシ ョ ン制御オプシ ョ ン を設定) パケ ッ ト タ イ プ 1 : MASK レ ジ ス タ の書 き 込み、 WORD_COUNT = 1 CTL0/CTL1 レ ジ ス タ への書 き 込み用のビ ッ ト マ ス ク 。MASK[31:0] = 00000000 (16 進数) パケ ッ ト タ イ プ 1 : CTL1 レ ジ ス タ の書き 込み、 WORD_COUNT = 1 CTL1[31:0] = 00000000 (16 進数) (注記 : 以前の MASK も 確認) ( コ ン フ ィ ギ ュ レーシ ョ ン制御オプシ ョ ン を設定、 RFU (将来使用す る 目的で予約)) 20000000 NOOP 20000000 NOOP 20000000 NOOP 20000000 NOOP 20000000 NOOP 20000000 NOOP 20000000 NOOP 20000000 NOOP 30002001 パケ ッ ト タ イ プ 1 : FAR レ ジ ス タ の書き 込み、 WORD_COUNT = 1 00000000 30008001 00000001 FAR (フ レーム ア ド レ ス) = 00000000 (16 進数) パケ ッ ト タ イ プ 1 : CMD レ ジ ス タ の書き 込み、 WORD_COUNT = 1 CMD[4:0] = 00001 (バ イ ナ リ ) = WCFG (書 き 込み コ ン フ ィ ギ ュ レーシ ョ ン デー タ ) 20000000 NOOP 30004000 パケ ッ ト タ イ プ 1 : FDRI レ ジ ス タ の書き 込み、 WORD_COUNT = 0 503D0DA6 パケ ッ ト タ イ プ 2 : FDRI レ ジ ス タ の書き 込み、 WORD_COUNT = 4,001,190 00000000 FDRI デー タ ワ ー ド 1 (最初のビ ッ ト ス ト リ ーム コ ン フ ィ ギ ュ レーシ ョ ン デー タ ワ ー ド ) 00000000 FDRI デー タ ワ ー ド 2 … 00000000 30000001 C81874CB FDRI デー タ ワ ー ド 3 ~ 4,001,189 FDRI デー タ ワ ー ド 4,001,190 (最後の ビ ッ ト ス ト リ ーム コ ン フ ィ ギ ュ レーシ ョ ン デー タ ワー ド ) パケ ッ ト タ イ プ 1 : CRC レ ジ ス タ の書 き 込み、 WORD_COUNT = 1 CRC[31:0] = C81874CB (16 進数) (書 き 込まれた CRC が算出 さ れた CRC 値 と 一致 し ない場合はエ ラ ー ) 20000000 NOOP 20000000 NOOP 30008001 パケ ッ ト タ イ プ 1 : CMD レ ジ ス タ の書き 込み、 WORD_COUNT = 1 0000000A 20000000 CMD[4:0] = 01010 (バ イ ナ リ ) = GRESTORE (GRESTORE 信号のパルス) NOOP UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 134 第 9 章 : コ ン フ ィ ギ ュ レーシ ョ ンの詳細 表 9-15 : XCKU040 のサン プル ビ ッ ト ス ト リ ーム (続き) コ ン フ ィ ギ ュ レー シ ョ ン デー タ ワー ド (16 進数) 30008001 説明 パケ ッ ト タ イ プ 1 : CMD レ ジ ス タ の書き 込み、 WORD_COUNT = 1 CMD = 00011 (バ イ ナ リ ) = DGHIGH/LFRM (GHIGH_B のデ ィ アサー ト ) 00000003 20000000 … NOOP … 20000000 NOOP 30008001 パケ ッ ト タ イ プ 1 : CMD レ ジ ス タ の書き 込み、 WORD_COUNT = 1 CMD[4:0] = 00101 (バ イ ナ リ ) = START (STARTUP シーケ ン ス の開始) 00000005 20000000 NOOP 30002001 パケ ッ ト タ イ プ 1 : FAR レ ジ ス タ の書き 込み、 WORD_COUNT = 1 FAR (フ レーム ア ド レ ス) = 03BE0000 (16 進数) 03BE0000 3000C001 パケ ッ ト タ イ プ 1 : MASK レ ジ ス タ の書 き 込み、 WORD_COUNT = 1 CTL0/CTL1 レ ジ ス タ への書 き 込み用のビ ッ ト マ ス ク 。MASK[31:0] = 00000100 (16 進数) 00000100 3000A001 パケ ッ ト タ イ プ 1 : CTL0 レ ジ ス タ の書き 込み、 WORD_COUNT = 1 CTL0[31:0] = 00000501 (16 進数) (注記 : 以前の MASK も 確認) (フ ォールバ ッ ク 、 リ ー ド バ ッ ク な ど、 コ ン フ ィ ギ ュ レーシ ョ ン制御オプシ ョ ン を設定) 00000501 30000001 パケ ッ ト タ イ プ 1 : CRC レ ジ ス タ の書 き 込み、 WORD_COUNT = 1 CRC[31:0] = E3AD7EA5 (16 進数) (書 き 込まれた CRC が算出 さ れた CRC 値 と 一致 し ない場合はエ ラ ー ) E3AD7EA5 20000000 NOOP 20000000 NOOP 30008001 パケ ッ ト タ イ プ 1 : CMD レ ジ ス タ の書き 込み、 WORD_COUNT = 1 CMD[4:0] = 01101 (バ イ ナ リ ) = DESYNCH (DALIGN の リ セ ッ ト ) (新 し い同期ワー ド が必 要) 0000000D 20000000 … 20000000 NOOP (NOOP を用い る ビ ッ ト ス ト リ ームのパ ッ ド 剰余) … NOOP (ビ ッ ト ス ト リ ーム終了) コ ン フ ィ ギ ュ レーシ ョ ン パケ ッ ト コ ン フ ィ ギ ュ レーシ ョ ン ロ ジ ッ ク は、 パケ ッ ト プ ロ セ ッ サ、 複数の レ ジ ス タ 、 そ し て コ ン フ ィ ギ ュ レーシ ョ ン レ ジ ス タ に よ っ て制御 さ れ る グ ロ ーバル信号で構成 さ れます。パケ ッ ト プ ロ セ ッ サは、コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ー フ ェ イ ス か ら レ ジ ス タ へのデー タ フ ロ ーを制御 し ます。コ ン フ ィ ギ ュ レーシ ョ ンに関す る その他の要素はすべて レ ジ ス タ で制御 し ます。 FPGA の ビ ッ ト ス ト リ ーム コ マ ン ド はすべて、 コ ン フ ィ ギ ュ レーシ ョ ン レ ジ ス タ に対す る 読み 出 し ま たは書 き 込み と い う 形で実行 さ れます。 パケ ッ ト の タ イ プ FPGA の ビ ッ ト ス ト リ ームは、 タ イ プ 1 と タ イ プ 2 の 2 つのパケ ッ ト タ イ プで構成 さ れます。 こ こ では、 各パケ ッ ト タ イ プ と その使用法について説明 し ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 135 第 9 章 : コ ン フ ィ ギ ュ レーシ ョ ンの詳細 タ イ プ 1 パケ ッ ト タ イ プ 1 のパケ ッ ト は、 レ ジ ス タ の読み出 し お よ び書 き 込みに使用 さ れます。 14 ビ ッ ト の レ ジ ス タ ア ド レ ス の う ち 5 ビ ッ ト のみを使用 し ます。 ヘ ッ ダー セ ク シ ョ ンは、 常に 32 ビ ッ ト ワー ド です。 タ イ プ 1 パケ ッ ト のヘ ッ ダー セ ク シ ョ ンの後には、 タ イ プ 1 デー タ セ ク シ ョ ンが続 き ます。 こ のセ ク シ ョ ンに含ま れ る 32 ビ ッ ト ワー ド の数をヘ ッ ダーの ワ ー ド カ ウ ン ト 部で宣言 し ます。表 9-16 お よ び表 9-17 を参照 し て く だ さ い。 表 9-16 : タ イ プ 1 パケ ッ ト ヘ ッ ダーのフ ォ ーマ ッ ト ヘ ッ ダー タ イ プ オペ コ ー ド レ ジス タ ア ド レ ス 予約 ワー ド カ ウン ト [31:29] [28:27] [26:13] [12:11] [10:0] 001 xx RRRRRRRRRxxxxx RR xxxxxxxxxxx 注記 : 1. 「R」 は今後の使用のための予約ビ ッ ト で、 現時点では未使用です。 予約ビ ッ ト には 0 を書 き 込む必要があ り ます。 表 9-17 : オペ コ ー ド の フ ォ ーマ ッ ト オペ コ ー ド 機能 00 NOOP 01 読み出 し 10 書 き 込み 11 予約 タ イ プ 2 パケ ッ ト タ イ プ 1 に後続す る タ イ プ 2 のパケ ッ ト は、 長いブ ロ ッ ク の書き 込みに使用 さ れます。 こ のパケ ッ ト には タ イ プ 1 パ ケ ッ ト のア ド レ ス が使用 さ れ る ため、 ア ド レ ス部はあ り ません。ヘ ッ ダー セ ク シ ョ ンは、常に 32 ビ ッ ト ワー ド です。 タ イ プ 2 パケ ッ ト のヘ ッ ダー セ ク シ ョ ンの後には、 タ イ プ 2 デー タ セ ク シ ョ ンが続 き ます。 こ のセ ク シ ョ ンに含ま れ る 32 ビ ッ ト ワー ド の数をヘ ッ ダーの ワ ー ド カ ウ ン ト 部で宣言 し ます。 表 9-18 を参照 し て く だ さ い。 表 9-18 : タ イ プ 2 パケ ッ ト ヘ ッ ダーのフ ォ ーマ ッ ト ヘ ッ ダー タ イ プ オペ コ ー ド ワー ド カ ウン ト [31:29] [28:27] [26:0] 010 xx xxxxxxxxxxxxxxxxxxxxxxxxxx コ ン フ ィ ギ ュ レーシ ョ ン レ ジス タ 表 9-19 に、 タ イ プ 1 パケ ッ ト レ ジ ス タ の一覧を示 し ます。 それに続いて、 各レ ジ ス タ の詳細について説明 し ます。 表 9-19 : タ イ プ 1 パケ ッ ト レ ジ ス タ 名称 読み出 し /書き込み ア ド レス CRC 読み出 し /書 き 込み 00000 CRC レ ジ ス タ FAR 読み出 し /書 き 込み 00001 フ レーム ア ド レ ス レ ジ ス タ FDRI 書 き 込み 00010 フ レ ーム デー タ レ ジ ス タ 、 入力 レ ジ ス タ ( コ ン フ ィ ギ ュ レーシ ョ ン デー タ の書 き 込み) UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 説明 japan.xilinx.com 136 第 9 章 : コ ン フ ィ ギ ュ レーシ ョ ンの詳細 表 9-19 : タ イ プ 1 パケ ッ ト レ ジ ス タ (続き) 読み出 し /書き込み ア ド レス 説明 FDRO 名称 読み出 し 00011 フ レ ーム デー タ レ ジ ス タ 、 出力 レ ジ ス タ ( コ ン フ ィ ギ ュ レーシ ョ ン デー タ の読み出 し ) CMD 読み出 し /書 き 込み 00100 コ マン ド レ ジ ス タ CTL0 読み出 し /書 き 込み 00101 制御レ ジ ス タ 0 MASK 読み出 し /書 き 込み 00110 CTL0 お よ び CTL1 のマ ス ク レ ジ ス タ STAT 読み出 し 00111 ス テー タ ス レ ジ ス タ LOUT 書 き 込み 01000 デ イ ジー チ ェーン用レ ガシ出力レ ジ ス タ COR0 読み出 し /書 き 込み 01001 コ ン フ ィ ギ ュ レーシ ョ ン オプシ ョ ン レ ジ ス タ 0 MFWR 書 き 込み 01010 マルチ フ レーム書 き 込みレ ジ ス タ CBC 書 き 込み 01011 初期 CBC 値レ ジ ス タ IDCODE 読み出 し /書 き 込み 01100 デバ イ ス ID レ ジ ス タ AXSS 読み出 し /書 き 込み 01101 ユーザー ア ク セ ス レ ジ ス タ COR1 読み出 し /書 き 込み 01110 コ ン フ ィ ギ ュ レーシ ョ ン オプシ ョ ン レ ジ ス タ 1 WBSTAR 読み出 し /書 き 込み 10000 ウ ォーム ブー ト 開始ア ド レ ス レ ジ ス タ TIMER 読み出 し /書 き 込み 10001 ウ ォ ッ チ ド ッ グ タ イ マー レ ジ ス タ 読み出 し 10110 ブー ト 履歴ス テー タ ス レ ジ ス タ CTL1 読み出 し /書 き 込み 11000 制御レ ジ ス タ 1 BSPI 読み出 し /書 き 込み 11111 BPI/SPI コ ン フ ィ ギ ュ レーシ ョ ン オプシ ョ ン レ ジ ス タ BOOTSTS CRC レ ジ ス タ (00000) こ の レ ジ ス タ への書 き 込みに よ っ て、 ビ ッ ト ス ト リ ーム デー タ に対す る CRC チ ェ ッ ク が実行 さ れます。 書 き 込まれ た値が現時点で計算 さ れた CRC 値 と 一致す る と 、 CRC_ERROR フ ラ グが ク リ ア さ れて ス タ ー ト ア ッ プが可能 と な り ます。 フ レーム ア ド レ ス レ ジ ス タ (00001) フ レームはすべて 3,936 ビ ッ ト (123 個の 32 ビ ッ ト ワ ー ド ) の固定長です。 9 ページの 「UltraScale FPGA フ ァ ミ リ 間 の機能の違い」 を参照 し て く だ さ い。 フ レーム ア ド レ ス レ ジ ス タ (FAR) は、ブ ロ ッ ク タ イ プ、行ア ド レ ス、列ア ド レ ス、マ イ ナー ア ド レ ス の 4 つの フ ィ ー ル ド で構成 さ れます (表 9-20 参照)。 ア ド レ スは直接書 き 込む以外に、各フ レームの最後で自動的に増分す る こ と も で き ます。 通常、 ビ ッ ト ス ト リ ームはア ド レ ス 0 か ら 開始 し 、 最終値ま で自動的に増分 し ます。 表 9-20 : フ レーム ア ド レ ス レ ジ ス タ の説明 ア ド レス タ イプ ビッ ト イ ンデ ッ ク ス 説明 ブロ ッ ク タ イプ [25:23] 有効な ブ ロ ッ ク タ イ プは CLB、 I/O、 CLK (000)、 ブ ロ ッ ク RAM の内容 (001) です。 通常のビ ッ ト ス ト リ ームには タ イ プ 010 と 011 は含まれません。 行ア ド レ ス [22:17] 現在の行を選択 し ます。 行ア ド レ ス は昇順に イ ン ク リ メ ン ト し ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 137 第 9 章 : コ ン フ ィ ギ ュ レーシ ョ ンの詳細 表 9-20 : フ レーム ア ド レ ス レ ジ ス タ の説明 (続き) ア ド レス タ イプ ビッ ト イ ンデ ッ ク ス 説明 列ア ド レ ス [16:7] CLB の列な ど、 大ま かな列を選択 し ます。 列ア ド レ ス は左端の 0 か ら 開始 し 、 右方向に増加 し ます。 マ イ ナー ア ド レ ス [6:0] 選択 し た列内の フ レーム を選択 し ます。 FDRI レ ジ ス タ (00010) こ の レ ジ ス タ への書 き 込みに よ っ て、 FAR レ ジ ス タ で指定 し た フ レーム ア ド レ ス の フ レーム デー タ が コ ン フ ィ ギ ュ レーシ ョ ン さ れます。 FDRO レ ジ ス タ (00011) こ の レ ジ ス タ は読み出 し 専用で、 FAR レ ジ ス タ で指定 さ れた ア ド レ ス か ら コ ン フ ィ ギ ュ レーシ ョ ン デー タ の フ レー ム を リ ー ド バ ッ ク す る ために使用 さ れます。 コ マ ン ド レ ジ ス タ (00100) コ マ ン ド (CMD) レ ジ ス タ は、 コ ン フ ィ ギ ュ レーシ ョ ン制御 ロ ジ ッ ク に対 し 、 グ ロ ーバル信号を ス ト ロ ーブ し てその 他の コ ン フ ィ ギ ュ レーシ ョ ン フ ァ ン ク シ ョ ン を実行す る よ う 命令す る ために使用 さ れます。 CMD レ ジ ス タ に格納 さ れた コ マ ン ド は、 FAR に新 し い値が読み込まれ る たびに実行 さ れます。 表 9-21 に、 コ マ ン ド レ ジ ス タ の コ マ ン ド と その コ ー ド を示 し ます。 表 9-21 : コ マ ン ド レ ジ ス タ の コ ー ド コマン ド コー ド 説明 NULL 00000 Null コ マ ン ド 、 動作な し 。 WCFG 00001 コ ン フ ィ ギ ュ レ ーシ ョ ン デー タ の書 き 込み – FDRI に コ ン フ ィ ギ ュ レ ーシ ョ ン デー タ を書き 込む前に使用 し ます。 MFW 00010 マルチ フ レーム書き 込み – 1 つのフ レーム デー タ を複数の フ レーム ア ド レ ス に 書 き 込む場合に使用 し ます。 DGHIGH/LFRM 00011 最終フ レーム – GHIGH_B 信号をデ ィ アサー ト し 、 すべての イ ン タ ー コ ネ ク ト を 有効に し ます。 こ の信号は、 AGHIGH コ マ ン ド でアサー ト さ れます。 RCFG 00100 コ ン フ ィ ギ ュ レーシ ョ ン デー タ の読み出 し – FDRO か ら コ ン フ ィ ギ ュ レーシ ョ ン デー タ を読み出す前に使用 し ます。 START 00101 ス タ ー ト ア ッ プ シ ー ケ ン ス の 開始 – CRC チ ェ ッ ク で エ ラ ー が 検出 さ れず、 DESYNC コ マ ン ド が実行 さ れた後、 ス タ ー ト ア ッ プ シーケ ン ス を開始 し ます。 RCRC 00111 CRC の リ セ ッ ト - CRC レ ジ ス タ を リ セ ッ ト し ます。 AGHIGH 01000 GHIGH_B 信号のアサー ト – すべての イ ン タ ー コ ネ ク ト をハ イ イ ン ピーダ ン ス状 態に し 、 新 し い コ ン フ ィ ギ ュ レーシ ョ ン デー タ を書 き 込む場合の競合を回避 し ま す。 シ ャ ッ ト ダ ウ ン リ コ ン フ ィ ギ ュ レ ーシ ョ ン でのみ使用 し ます。 イ ン タ ー コ ネ ク ト は、 LFRM コ マ ン ド に よ っ て再びア ク テ ィ ブにな り ます。 SWITCH 01001 CCLK 周波数 の 切 り 替 え - マ ス タ ー CCLK の 周波数 を COR0 レ ジ ス タ の ECLK_EN お よ び OSCFSEL ビ ッ ト に基づいて変更 し ます。 GRESTORE 01010 GRESTORE 信号のパルス – CLB フ リ ッ プ フ ロ ッ プを ユーザー設定に従っ てセ ッ ト ま たは リ セ ッ ト し ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 138 第 9 章 : コ ン フ ィ ギ ュ レーシ ョ ンの詳細 表 9-21 : コ マ ン ド レ ジ ス タ の コ ー ド (続き) コマン ド コー ド 説明 SHUTDOWN 01011 シ ャ ッ ト ダ ウ ン シーケ ン ス の開始 -シ ャ ッ ト ダ ウ ン シーケ ン ス を開始 し 、 完了 時にはデバ イ ス が使用不可 と な り ます。 シ ャ ッ ト ダ ウ ンは、 次に CRC チ ェ ッ ク に成功 し た と き 、 ま たは RCRC 命令に よ っ て開始 さ れます (通常は RCRC 命令を 使用)。 DESYNC 01101 DALIGN 信号の リ セ ッ ト - コ ン フ ィ ギ ュ レーシ ョ ンの最後でデバ イ ス の同期を 解除する ために使用 し ます。同期が解除 さ れ る と 、 コ ン フ ィ ギ ュ レーシ ョ ン デー タ ピ ンのすべての値は無視 さ れます。 IPROG 01111 ウ ォーム ブー ト を開始す る 内部 PROG です。 CRCC 10000 リ ー ド バ ッ ク CRC が選択 さ れ る と 、 コ ン フ ィ ギ ュ レ ーシ ョ ン ロ ジ ッ ク が コ ン フ ィ ギ ュ レーシ ョ ン後の最初の リ ー ド バ ッ ク CRC 値を算出 し ます。GHIGH を ト グルする の と 同 じ 動作です。 リ コ ン フ ィ ギ ュ レーシ ョ ン中に GHIGH が ト グル し ない場合に こ の コ マ ン ド を使用 し ます。 LTIMER 10001 ウ ォ ッ チ ド ッ グ タ イ マーを再び読み込みます。 BSPI_READ 10010 BPI/SPI でのビ ッ ト ス ト リ ームの読み出 し を再開 し ます。 FALL_EDGE 10011 立ち下が り エ ッ ジ ク ロ ッ キ ン グ に切 り 替え ま す (立ち下が り エ ッ ジで コ ン フ ィ ギ ュ レーシ ョ ン デー タ を キ ャ プチ ャ )。 制御レ ジ ス タ 0 (00101) 制御 レ ジ ス タ 0 (CTL0) は、 デバ イ ス の コ ン フ ィ ギ ュ レ ーシ ョ ン に使用 さ れ ま す。 CTL0 レ ジ ス タ への書 き 込みは、 MASK レ ジ ス タ の 値 で マ ス ク さ れ ま す。 こ れ に よ り 、 SBITS お よ び PERSIST ビ ッ ト を 再指定す る こ と な く 、 GTS_USR_B 信号を ト グルで き ます。 表 9-22 に CTL0 レ ジ ス タ の各ビ ッ ト 位置の名称を示 し 、 表 9-23 で各ビ ッ ト に ついて説明 し ます。 表 9-22 : 制御レ ジ ス タ 0 (CTL0) Reserved ConfigFallback Reserved GLUTMASK_B Reserved DEC 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 値 0 0 x x x x x x x x x x x x x x x x x 0 x 0 x 0 0 0 0 0 0 x x 1 Reserved PERSIST GTS_USR_B OverTempShutDown 29 SBITS[1:0] ICAP_SELECT 30 Reserved EFUSE_KEY 31 説明 ビッ ト イ ンデッ ク ス 表 9-23 : 制御レ ジ ス タ 0 の詳細 名称 ビッ ト イ ンデ ッ ク ス 説明 EFUSE_KEY 31 AES キーの格納場所を選択 し ます。 0 : バ ッ ク ア ッ プ バ ッ テ リ 付 き の RAM (デフ ォ ル ト ) 1 : eFUSE こ のビ ッ ト は、 DEC を セ ッ ト す る と 内部で再び ラ ッ チ さ れます。 その後 も こ のビ ッ ト は読み出 し /書き 込みが可能ですが、 キーの格納場所が切 り 替わ る のを防ぐ ため、 変更はで き ません。 ICAP_SELECT 30 ICAPE3 ポー ト を選択 し ます。 0 : 上部 ICAPE3 ポー ト が有効 (デフ ォ ル ト ) 1 : 下部 ICAPE3 ポー ト が有効 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 139 第 9 章 : コ ン フ ィ ギ ュ レーシ ョ ンの詳細 表 9-23 : 制御レ ジ ス タ 0 の詳細 (続き) 名称 ビッ ト イ ンデ ッ ク ス 説明 OverTempShutDown 12 シ ス テ ム モニ タ ーに よ る 過温度シ ャ ッ ト ダ ウ ンの イ ネーブル ビ ッ ト です。 0 : 過温度シ ャ ッ ト ダ ウ ンが無効 (デフ ォ ル ト ) 1 : 過温度シ ャ ッ ト ダ ウ ンが有効 ConfigFallback 10 コ ン フ ィ ギ ュ レーシ ョ ンがエ ラ ーにな る と 停止 し 、 デフ ォ ル ト ビ ッ ト ス ト リ ームへの フ ォールバ ッ ク を無効に し ます。 ビ ッ ト ス ト リ ーム ジ ェ ネ レー タ ーのオプシ ョ ンは ConfigFallback:Enable/Disable です。 0 : フ ォールバ ッ ク が有効 (デフ ォ ル ト ) 1 : フ ォールバ ッ ク が無効 GLUTMASK_B 8 グ ロ ーバルの LUT マ ス ク 信号です。 メ モ リ セルの変更可能な リ ー ド バ ッ ク 値をすべてマ ス ク し ます。 0 : 分散 RAM ま たは SRL な ど、 変更可能な メ モ リ セル リ ー ド バ ッ ク 値 をマス クする 1 : 変更可能な メ モ リ セル リ ー ド バ ッ ク 値を マ ス ク し ない (デフ ォ ル ト ) DEC 6 AES 復号化機能の イ ネーブル ビ ッ ト です。 0 : 復号化機能が無効 (デフ ォ ル ト ) 1 : 復号化機能が有効 SBITS[1:0] [5:4] セキ ュ リ テ ィ レベルを設定 し ます。 FPGA のセキ ュ リ テ ィ レベルは、 暗号 化ビ ッ ト ス ト リ ーム に も 適用 さ れ ま す。 こ の設定は、 ICAPE3 ではな く コ ン フ ィ ギ ュ レーシ ョ ン ポー ト に適用 さ れます。 セキ ュ リ テ ィ レベルは、 暗 号化 さ れた ビ ッ ト ス ト リ ームの最後、 ま たは暗号化 さ れていない ビ ッ ト ス ト リ ームでは EOS の後に有効にな り ます。 00 : 読み出 し /書 き 込み可 (デフ ォ ル ト ) 01 : リ ー ド バ ッ ク が無効 1x : 書き 込み/読み出 し 共に無効 セキ ュ リ テ ィ レベルが 00 お よ び 01 の場合、 FAR と FDRI のみ暗号化 書き 込みア ク セ ス が可能です。 PERSIST 3 M2:M0 で指定 し た コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス が コ ン フ ィ ギ ュ レーシ ョ ン後 も 維持 さ れ ます。 通常、 SelectMAP イ ン タ ーフ ェ イ ス で のみ使用 し 、 リ コ ン フ ィ ギ ュ レーシ ョ ンお よ び リ ー ド バ ッ ク を可能に し ま す。 第 5 章 「SelectMAP コ ン フ ィ ギ ュ レーシ ョ ン モー ド 」 を参照 し て く だ さ い。 0 : な し (デフ ォ ル ト ) 1: あり GTS_USR_B 0 ア ク テ ィ ブ Low の ト ラ イ ス テー ト I/O です。 GTS_CFG_B も アサー ト さ れ てい る 場合、 プルア ッ プ をオ フ に し ます。 0 : I/O は ト ラ イ ス テー ト 1 : I/O はア ク テ ィ ブ (デフ ォ ル ト ) MASK レ ジ ス タ (00110) CTL0 お よ び CTL1 レ ジ ス タ への書 き 込みを、 MASK レ ジ ス タ で ビ ッ ト マ ス ク し ます。 MASK レ ジ ス タ に 1 を書 き 込 む と 、 CTL0 ま たは CTL1 レ ジ ス タ の該当する ビ ッ ト への書き 込みが可能にな り ます。 デフ ォ ル ト 値はすべて 0 です。 MASK レ ジ ス タ への書 き 込み後に CTL0 ま たは CTL1 への書 き 込みを実行す る 必要があ り ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 140 第 9 章 : コ ン フ ィ ギ ュ レーシ ョ ンの詳細 ス テー タ ス レ ジ ス タ (00111) ス テー タ ス (STAT) レ ジ ス タ には、 さ ま ざ ま な グ ロ ーバル信号の値が格納 さ れ ます。 こ の レ ジ ス タ は、 SelectMAP ま た は JTAG イ ン タ ー フ ェ イ ス か ら 読み出 し が可能です。 表 9-24 に STAT レ ジ ス タ の各 ビ ッ ト 位置の名称 を 示 し 、 表 9-25 で各ビ ッ ト について説明 し ます。 表 9-24 : ス テー タ ス レ ジ ス タ IDCODE_ERROR DONE_PIN DONE_INTERNAL_SIGNAL_STATUS INIT_B_PIN INIT_B_INTERNAL_SIGNAL_STATUS GTS_CFG_B_STATUS END_OF_STARTUP_(EOS)_STATUS DCI_MATCH_STATUS MMCM_PLL_LOCKED DECRYPTOR_ENABLED CRC_ERROR 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 値 x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x GHIGH_B_STATUS Reserved Reserved 説明 GWE_STATUS SECURITY_ERROR 30 MODE_PIN_M[2:0] SYSTEM_MONITOR_OVER_TEMP CFG_STARTUP_STATE_MACHINE_PHASE 31 CFG_BUS_WIDTH_DETECTION ビッ ト イ ンデ ッ ク ス 表 9-25 : ス テー タ ス レ ジ ス タ の説明 名称 ビッ ト イ ンデ ッ ク ス 説明 CFG_BUS_WIDTH_ DETECTION [26:25] バ ス幅の自動検出結果を示 し ます。 こ れは内部 コ ン フ ィ ギ ュ レーシ ョ ン バ ス の幅であ り 、 必ず し も 外部 コ ン フ ィ ギ ュ レーシ ョ ン デー タ 幅 と は一致 し ません。 BPI お よ び SelectMAP モー ド の場合、 モー ド ピ ンのサン プ リ ン グ 後かつバス幅の検出前に値が 01 (x8) に設定 さ れます。 ICAPE3 が有効な場 合、こ の フ ィ ール ド には コ ン フ ィ ギ ュ レーシ ョ ン完了後の ICAPE3 バス幅の 情報が格納 さ れます。 RSA 認証を使用す る 場合は、 バ ス幅が x32 に設定 さ れます。 00 = x1 01 = x8 10 = x16 11 = x32 CFG_STARTUP_STATE_ MACHINE_PHASE [20:18] ス タ ー ト ア ッ プの ス テー ト マシ ン を示 し ます (0 ~ 7)。 フ ェ ーズ 0 = 000 フ ェ ーズ 1 = 001 フ ェ ーズ 2 = 011 フ ェ ーズ 3 = 010 フ ェ ーズ 4 = 110 フ ェ ーズ 5 = 111 フ ェ ーズ 6 = 101 フ ェ ーズ 7 = 100 SYSTEM_MONITOR_OVER_ TEMP 17 シ ス テ ム モニ タ ーが過温度を検出 し たか ど う かを示 し ます。 SECURITY_ERROR 16 セキ ュ リ テ ィ 違反があ っ たか ど う か を示 し ます。 0 : SECURITY_ERROR な し 1 : SECURITY_ERROR IDCODE_ERROR 15 FDRI への書き 込みで DEVICE_ID チ ェ ッ ク エ ラ ーがあ っ たか ど う か を示 し ます。 0 : IDCODE_ERROR な し 1 : IDCODE_ERROR UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 141 第 9 章 : コ ン フ ィ ギ ュ レーシ ョ ンの詳細 表 9-25 : ス テー タ ス レ ジ ス タ の説明 (続き) 名称 ビッ ト イ ンデ ッ ク ス 説明 DONE_PIN 14 DONE_PIN ピ ンの値を示 し ます。 DONE_INTERNAL_SIGNAL_ STATUS 13 内部 DONE_INTERNAL_SIGNAL_STATUS 信号の値を示 し ます。 0 : 信号が リ リ ース さ れていない (ピ ンはア ク テ ィ ブに Low に維持) 1 : 信号が リ リ ース さ れてい る (外部で Low に維持する こ と が可能) INIT_B_PIN 12 INIT_B_PIN ピ ンの値を示 し ます。 INIT_B_INTERNAL_SIGNAL _STATUS 11 初期化の完了を示す内部信号です。 0 : 初期化が未完了 1 : 初期化完了 MODE_PIN_M[2:0] [10:8] GHIGH_B_STATUS 7 GWE の状態を示 し ます。 0 : GHIGH_B_STATUS がアサー ト さ れてい る 1 : GHIGH_B_STATUS がデ ィ アサー ト さ れてい る GWE_STATUS 6 GWE の状態を示 し ます。 0 : フ リ ッ プ フ ロ ッ プお よ びブ ロ ッ ク RAM へ書 き 込み不可 1 : フ リ ッ プ フ ロ ッ プお よ びブ ロ ッ ク RAM へ書 き 込み可 GTS_CFG_B_STATUS 5 GTS_CFG_B の状態を示 し ます。 0 : すべての I/O がハ イ イ ン ピーダ ン ス状態 1 : すべての I/O が設定どお り に動作 END_OF_STARTUP_(EOS)_S TATUS 4 ス タ ー ト ア ッ プの終了を示す、 ス タ ー ト ア ッ プ ブ ロ ッ ク か ら の信号です。 0 : ス タ ー ト ア ッ プ シーケ ン ス が未完了 1 : ス タ ー ト ア ッ プ シーケ ン ス が完了 DCI_MATCH_STATUS 3 すべての MATCH 信号 (各バン ク に 1 つ) の論理積 と な り ます。DCI I/O がバ ン ク にない場合、 そのバン ク の MATCH 信号は 1 と な り ます。 0 : DCI が不一致 1 : DCI が一致 MMCM_PLL_LOCKED 2 すべ て の MMCM/PLL LOCKED 信号 の 論理積 と な り ま す。 未使用 の MMCM/PLL LOCKED 信号は 1 と な り ます。 0 : MMCM/PLL が ロ ッ ク さ れていない 1 : MMCM/PLL が ロ ッ ク さ れてい る DECRYPTOR_ENABLED 1 0 : 復号化機能 のセキ ュ リ テ ィ を設定 し ていない 1 : 復号化機能 のセキ ュ リ テ ィ を設定 し てい る CRC_ERROR 0 0 : CRC エ ラ ーな し 1 : CRC エ ラ ー モー ド ピ ン (M[2:0]) の状態を示 し ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 142 第 9 章 : コ ン フ ィ ギ ュ レーシ ョ ンの詳細 LOUT レ ジ ス タ (01000) シ リ アル デ イ ジー チ ェーン での コ ン フ ィ ギ ュ レーシ ョ ン中、 こ の レ ジ ス タ は DOUT ピ ンへデー タ を駆動 し ます。 コ ン フ ィ ギ ュ レーシ ョ ン オプ シ ョ ン レ ジ ス タ 0 (01001) コ ン フ ィ ギ ュ レーシ ョ ン オプシ ョ ン レ ジ ス タ 0 (COR0) は、デバ イ ス の コ ン フ ィ ギ ュ レーシ ョ ン オプシ ョ ンの設定に 使用 さ れます。 表 9-26 に COR0 レ ジ ス タ の各ビ ッ ト 位置の名称を示 し 、 表 9-27 で各ビ ッ ト について説明 し ます。 表 9-26 : コ ン フ ィ ギ ュ レーシ ョ ン オプ シ ョ ン レ ジ ス タ 0 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 値 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 0 1 1 0 0 GTS_CYCLE Reserved OSCFSEL 説明 GWE_CYCLE Reserved 29 LOCK_CYCLE DRIVE_DONE MATCH_CYCLE Reserved 30 DONE_CYCLE ECLK_EN 31 Reserved ビッ ト イ ンデ ッ ク ス 表 9-27 : コ ン フ ィ ギ ュ レーシ ョ ン オプ シ ョ ン レ ジス タ 0 の説明 名称 ビッ ト イ ンデ ッ ク ス ECLK_EN 26 DRIVE_DONE 24 説明 外部マ ス タ ー コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク (EMCCLK) が有効であ る こ と を示 し ます。 ビ ッ ト ス ト リ ーム プ ロ パテ ィ : BITSTREAM.CONFIG.EXTMASTERCCLK_EN 0 : DONE ピ ンはオープン ド レ イ ン 1 : DONE はア ク テ ィ ブに High に駆動 (推奨 さ れていない) OSCFSEL [22:17] マ ス タ ー モー ド の CCLK 周波数を選択 し ます (3MHz ~ 148MHz)。 ビ ッ ト ス ト リ ーム プ ロ パテ ィ : BITSTREAM.CONFIG.CONFIGRATE DONE_CYCLE [14:12] DONE ピ ン を リ リ ースす る ス タ ー ト ア ッ プ サ イ ク ルを指定 し ます。 000 : ス タ ー ト ア ッ プ フ ェ ーズ 1 001 : ス タ ー ト ア ッ プ フ ェ ーズ 2 010 : ス タ ー ト ア ッ プ フ ェ ーズ 3 011 : ス タ ー ト ア ッ プ フ ェ ーズ 4 100 : ス タ ー ト ア ッ プ フ ェ ーズ 5 101 : ス タ ー ト ア ッ プ フ ェ ーズ 6 ビ ッ ト ス ト リ ーム プ ロ パテ ィ : BITSTREAM.STARTUP.DONE_CYCLE MATCH_CYCLE [11:9] DCI が一致する ま で待機する ス タ ー ト ア ッ プ サ イ ク ルを指定 し ます。 000 : ス タ ー ト ア ッ プ フ ェ ーズ 0 001 : ス タ ー ト ア ッ プ フ ェ ーズ 1 010 : ス タ ー ト ア ッ プ フ ェ ーズ 2 011 : ス タ ー ト ア ッ プ フ ェ ーズ 3 100 : ス タ ー ト ア ッ プ フ ェ ーズ 4 101 : ス タ ー ト ア ッ プ フ ェ ーズ 5 110 : ス タ ー ト ア ッ プ フ ェ ーズ 6 111 : ウ ェ イ ト な し ビ ッ ト ス ト リ ーム プ ロ パテ ィ : BITSTREAM.STARTUP.MATCH_CYCLE UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 143 第 9 章 : コ ン フ ィ ギ ュ レーシ ョ ンの詳細 表 9-27 : コ ン フ ィ ギ ュ レーシ ョ ン オプ シ ョ ン レ ジス タ 0 の説明 (続き) 名称 ビッ ト イ ンデ ッ ク ス 説明 LOCK_CYCLE [8:6] MMCM が ロ ッ ク す る ま で待機す る ス タ ー ト ア ッ プ サ イ ク ルを指定 し ます。 000 : ス タ ー ト ア ッ プ フ ェ ーズ 0 001 : ス タ ー ト ア ッ プ フ ェ ーズ 1 010 : ス タ ー ト ア ッ プ フ ェ ーズ 2 011 : ス タ ー ト ア ッ プ フ ェ ーズ 3 100 : ス タ ー ト ア ッ プ フ ェ ーズ 4 101 : ス タ ー ト ア ッ プ フ ェ ーズ 5 110 : ス タ ー ト ア ッ プ フ ェ ーズ 6 111 : ウ ェ イ ト な し ビ ッ ト ス ト リ ーム プ ロ パテ ィ : BITSTREAM.STARTUP.LCK_CYCLE GTS_CYCLE [5:3] グ ロ ーバル ト ラ イ ス テー ト (GTS) 信号をデ ィ アサー ト す る ス タ ー ト ア ッ プ サ イ ク ルを指定 し ます。 000 : ス タ ー ト ア ッ プ フ ェ ーズ 1 001 : ス タ ー ト ア ッ プ フ ェ ーズ 2 010 : ス タ ー ト ア ッ プ フ ェ ーズ 3 011 : ス タ ー ト ア ッ プ フ ェ ーズ 4 100 : ス タ ー ト ア ッ プ フ ェ ーズ 5 101 : ス タ ー ト ア ッ プ フ ェ ーズ 6 110 : DONE ピ ンに追随。 ビ ッ ト ス ト リ ーム プ ロ パテ ィ : GTS_CYCLE:DONE GWE_CYCLE [2:0] グ ロ ーバル ラ イ ト イ ネーブル (GWE) 信号をデ ィ アサー ト する ス タ ー ト ア ッ プ フ ェ ーズ を指定 し ます。 000 : ス タ ー ト ア ッ プ フ ェ ーズ 1 001 : ス タ ー ト ア ッ プ フ ェ ーズ 2 010 : ス タ ー ト ア ッ プ フ ェ ーズ 3 011 : ス タ ー ト ア ッ プ フ ェ ーズ 4 100 : ス タ ー ト ア ッ プ フ ェ ーズ 5 101 : ス タ ー ト ア ッ プ フ ェ ーズ 6 110 : DONE ピ ンに追随。 ビ ッ ト ス ト リ ーム プ ロ パテ ィ : GWE_CYCLE:DONE MFWR レ ジ ス タ (01010) ビ ッ ト ス ト リ ームの圧縮オプシ ョ ンで使用 さ れます。 AES_IV レ ジ ス タ (01011) AES 復号化の初期ベ ク タ ー (IV) を格納す る レ ジ ス タ で、 ビ ッ ト ス ト リ ーム暗号化オプシ ョ ンで使用 さ れます。 IDCODE レ ジ ス タ (01100) FDRI への書 き 込み を 実行す る 前に、 必ず こ の レ ジ ス タ への書 き 込みが必要です。 こ の レ ジ ス タ に書 き 込 ま れ た IDCODE は、 デバ イ ス の IDCODE と 一致す る 必要があ り ます。 こ の レ ジ ス タ を読み出す と 、 デバ イ ス の IDCODE が 返 さ れます。 AXSS レ ジ ス タ (01101) こ の レ ジ ス タ は、 USR_ACCESSE2 プ リ ミ テ ィ ブをサポー ト し ます (104 ページの 「USR_ACCESSE2」 参照)。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 144 第 9 章 : コ ン フ ィ ギ ュ レーシ ョ ンの詳細 コ ン フ ィ ギ ュ レーシ ョ ン オプ シ ョ ン レ ジ ス タ 1 (01110) コ ン フ ィ ギ ュ レーシ ョ ン オプシ ョ ン レ ジ ス タ 1 (COR1) は、デバ イ ス の コ ン フ ィ ギ ュ レーシ ョ ン オプシ ョ ンの設定に 使用 さ れます。 表 9-28 に COR1 レ ジ ス タ の各ビ ッ ト 位置の名称を示 し 、 表 9-29 で各ビ ッ ト について説明 し ます。 表 9-28 : コ ン フ ィ ギ ュ レーシ ョ ン オプ シ ョ ン レ ジス タ 1 BPI_1ST_READ_CYCLE 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 値 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Reserved Reserved 説明 BPI_PAGE_SIZE RBCRC_EN 30 Reserved RBCRC_NO_PIN 31 RBCRC_ACTION ビッ ト イ ンデ ッ ク ス 表 9-29 : コ ン フ ィ ギ ュ レーシ ョ ン オプ シ ョ ン レ ジ ス タ 1 の説明 名称 ビッ ト イ ンデ ッ ク ス 説明 予約 [17:15] 予約 予約 [9:8] 予約 BPI_1ST_READ_CYCLE [3:2] 最初のバ イ ト 読み出 し タ イ ミ ン グ を設定 し ます。 00 : 1 CCLK (デフ ォ ル ト ) 01 : 2 CCLK 10 : 3 CCLK 11 : 4 CCLK ビ ッ ト ス ト リ ーム プ ロ パテ ィ : BITSTREAM.CONFIG.BPI_1ST_READ_CYCLE BPI_PAGE_SIZE [1:0] フ ラ ッ シ ュ メ モ リ のページ サ イ ズ を設定 し ます。 00 : 1 バ イ ト / ワー ド (デフ ォ ル ト ) 01 : 4 バ イ ト / ワー ド 10 : 8 バ イ ト / ワー ド 11 : 予約 ビ ッ ト ス ト リ ーム プ ロ パテ ィ : BITSTREAM.CONFIG.BPI_PAGE_SIZE UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 145 第 9 章 : コ ン フ ィ ギ ュ レーシ ョ ンの詳細 ウ ォ ーム ブー ト 開始ア ド レ ス レ ジ ス タ (10000) ウ ォーム ブー ト 開始ア ド レ ス レ ジ ス タ (WBSTAR) は、 IPROG コ マ ン ド が適用 さ れてい る と き に使用す る マルチブー ト ア ド レ ス位置を指定 し ます。 表 9-30 に ウ ォ ーム ブー ト 開始ア ド レ ス レ ジ ス タ (WBSTAR) の各ビ ッ ト 位置の名称 を示 し 、 表 9-31 で各ビ ッ ト について説明 し ます。 表 9-30 : WBSTAR レ ジス タ START_ADDR RS_TS_B RS[1:0] 説明 ビッ ト イ ンデ ッ ク ス 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 値 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 表 9-31 : WBSTAR レ ジ ス タ の説明 ビッ ト イ ンデ ッ ク ス 名称 RS[1:0] 説明 [31:30] RS_TS_B BPI モー ド におけ る 次の ウ ォ ーム ブー ト での RS[1:0] ピ ン の 値を設定 し ます。 デフ ォ ル ト 値は 00 です。 29 START_ADDR RS[1:0] ピ ンの ト ラ イ ス テー ト イ ネーブル ビ ッ ト です。 0 : ト ラ イ ス テー ト は有効 (RS[1:0] は無効) (デフ ォ ル ト ) 1 : ト ラ イ ス テー ト は無効 (RS[1:0] は有効) [28:0] 次の ビ ッ ト ス ト リ ームの開始ア ド レ ス を設定 し ます。 デフ ォ ル ト の開始ア ド レ ス は 0 です。 ウ ォ ッ チ ド ッ グ タ イ マー レ ジ ス タ (10001) ウ ォ ッ チ ド ッ グ タ イ マーは、フ ォールバ ッ ク ビ ッ ト ス ト リ ームに対 し ては自動的に無効にな り ます。表 9-32 に ウ ォ ッ チ ド ッ グ タ イ マー レ ジ ス タ (TIMER) の各ビ ッ ト 位置の名称を示 し 、 表 9-33 で各ビ ッ ト について説明 し ます。 表 9-32 : TIMER レ ジ ス タ TIMER_USR_MON TIMER_CFG_MON 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 値 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 TIMER_VALUE 説明 ビッ ト イ ンデ ッ ク ス UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 146 第 9 章 : コ ン フ ィ ギ ュ レーシ ョ ンの詳細 表 9-33 : TIMER レ ジ ス タ の説明 ビッ ト イ ンデ ッ ク ス 名称 説明 TIMER_USR_MON 31 ユーザー モー ド 中に ウ ォ ッ チ ド ッ グ タ イ マーを有効に し ます。 0 : 無効 (デフ ォ ル ト ) 1 : 有効 ユーザー モー ド の ウ ォ ッ チ ド ッ グ ク ロ ッ ク は、 CFGMCLK の 256 分周 値 で す。 CFGMCLK の 公称周波数 が 50MH で、 偏差 が 15% の 場合、 ウ ォ ッ チ ド ッ グ ク ロ ッ ク は 166 ~ 225kHz と な り ます。 TIMER_CFG_MON 30 コ ン フ ィ ギ ュ レーシ ョ ン中に ウ ォ ッ チ ド ッ グ タ イ マーを有効に し ます。 0 : 無効 (デフ ォ ル ト ) 1 : 有効 コ ン フ ィ ギ ュ レ ーシ ョ ン ウ ォ ッ チ ド ッ グ ク ロ ッ ク は、 コ ン フ ィ ギ ュ レーシ ョ ン用に定義 さ れてい る と お り の CCLK です。 TIMER_VALUE [29:0] ウ ォ ッ チ ド ッ グの タ イ ム ア ウ ト 値です。 デフ ォ ル ト 値は 0 です。 ブー ト 履歴ス テー タ ス レ ジ ス タ (10110) ブー ト 履歴ス テー タ ス (BOOTSTS) レ ジ ス タ は、 POR、 PROGRAM_B のアサー ト 、 ま たは JPROGRAM 命令に よ っ て のみ リ セ ッ ト で き ます。 EOS ま たはエ ラ ーが発生す る と 、 ス テー タ ス (_0) が ス テー タ ス (_1) にシ フ ト し 、 ス テー タ ス (_0) は現在の ス テー タ ス で更新 さ れます。 表 9-34 に BOOTSTS レ ジ ス タ の各ビ ッ ト 位置の名称を示 し 、 表 9-35 で 各ビ ッ ト について説明 し ます。 表 9-34 : BOOTSTS レ ジ ス タ WRAP_ERROR_1 CRC_ERROR_1 ID_ERROR_1 WATCHDOG_TIMEOUT_ERROR_1 INTERNAL_PROG_1 FALLBACK_1 STATUS_VALID_1 Reserved WRAP_ERROR_0 CRC_ERROR_0 ID_ERROR_0 WATCHDOG_TIMEOUT_ERROR_0 INTERNAL_PROG_0 FALLBACK_0 STATUS_VALID_0 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 値 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 説明 Reserved ビッ ト イ ンデ ッ ク ス 表 9-35 : BOOTSTS レ ジ ス タ の説明 名称 ビッ ト イ ンデ ッ ク ス 説明 WRAP_ERROR_1 14 BPI ア ド レ ス カ ウ ン タ ーの ラ ッ プア ラ ウ ン ド エ ラ ー。非同期読み出 し モー ド で サポー ト CRC_ERROR_1 13 CRC エ ラ ー ID_ERROR_1 12 IDCODE エ ラ ー WATCHDOG_TIMEOUT_ ERROR_1 11 ウ ォ ッ チ ド ッ グの タ イ ム ア ウ ト エ ラ ー INTERNAL_PROG_1 10 内部 PROG で開始 し た コ ン フ ィ ギ ュ レーシ ョ ン FALLBACK_1 9 STATUS_VALID_1 8 1 : デフ ォ ル ト リ コ ン フ ィ ギ ュ レーシ ョ ンへの フ ォールバ ッ ク 、 RS[1:0] はア ク テ ィ ブに 2'b00 を駆動 0 : 通常の コ ン フ ィ ギ ュ レーシ ョ ン ス テー タ ス 1 は有効 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 147 第 9 章 : コ ン フ ィ ギ ュ レーシ ョ ンの詳細 表 9-35 : BOOTSTS レ ジ ス タ の説明 (続き) ビッ ト イ ンデ ッ ク ス 名称 説明 WRAP_ERROR_0 6 BPI ア ド レ ス カ ウ ン タ ーの ラ ッ プア ラ ウ ン ド エ ラ ー。非同期読み出 し モー ド で サポー ト CRC_ERROR_0 5 CRC エ ラ ー ID_ERROR_0 4 IDCODE エ ラ ー WATCHDOG_TIMEOUT_ ERROR_0 3 ウ ォ ッ チ ド ッ グの タ イ ム ア ウ ト エ ラ ー INTERNAL_PROG_0 2 内部 PROG で開始 し た コ ン フ ィ ギ ュ レーシ ョ ン FALLBACK_0 1 STATUS_VALID_0 0 1 : デフ ォ ル ト リ コ ン フ ィ ギ ュ レーシ ョ ンへの フ ォールバ ッ ク 、 RS[1:0] はア ク テ ィ ブに 2'b00 を駆動 0 : 通常の コ ン フ ィ ギ ュ レーシ ョ ン ス テー タ ス 0 は有効 注記 : 1. 電源投入時には、 BOOTSTS レ ジ ス タ のデフ ォ ル ト 値はど の フ ィ ール ド も 0 と な り 、 エ ラ ー、 フ ォールバ ッ ク 、 ま たは有効な コ ン フ ィ ギ ュ レーシ ョ ンが検出 さ れていない こ と を示 し ま す。 コ ン フ ィ ギ ュ レーシ ョ ン後、 こ れ ら の ビ ッ ト のいずれかが 1 の場合は、 エ ラ ー、 フ ォ ールバ ッ ク 、 ま たは コ ン フ ィ ギ ュ レーシ ョ ンの完了が検出 さ れた こ と を示 し ます。 制御レ ジ ス タ 1 (11000) 制御レ ジ ス タ 1 (CTL1) は、 デバ イ ス の コ ン フ ィ ギ ュ レーシ ョ ン に使用 し ます。 こ の レ ジ ス タ の CAPTURE ビ ッ ト を 除 く 各ビ ッ ト は予約 さ れてい ます。 CTL1 レ ジ ス タ への書 き 込みは、 MASK レ ジ ス タ の値でマ ス ク さ れます。 表 9-36 に CTL1 レ ジ ス タ の各ビ ッ ト 位置の名称を示 し 、 表 9-37 で各ビ ッ ト について説明 し ます。 表 9-36 : 制御レ ジ ス タ 1 (CTL1) Reserved CAPTURE Reserved 説明 ビッ ト イ ンデ ッ ク ス 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 値 x x x x x x x x 0 x x x x x x x x x x x x x x x x x x x x x x x 表 9-37 : 制御レ ジ ス タ 1 の詳細 名称 ビッ ト イ ンデ ッ ク ス CAPTURE 23 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 説明 リ ー ド バ ッ ク キ ャ プチ ャ の有効/無効を設定 し ます。 0 : リ ー ド バ ッ ク キ ャ プチ ャ を無効にする (デフ ォ ル ト ) 1 : リ ー ド バ ッ ク キ ャ プチ ャ を有効にする japan.xilinx.com 148 第 9 章 : コ ン フ ィ ギ ュ レーシ ョ ンの詳細 BPI/SPI コ ン フ ィ ギ ュ レーシ ョ ン オプ シ ョ ン レ ジ ス タ (11111) BPI/SPI コ ン フ ィ ギ ュ レーシ ョ ン オプシ ョ ン レ ジ ス タ (BSPI) は、 ツールで設定 さ れ る デバ イ ス の特定 コ ン フ ィ ギ ュ レ ー シ ョ ン オ プ シ ョ ン を 格納す る た め に使用 さ れ ま す。 表 9-38 に BSPI レ ジ ス タ の各 ビ ッ ト 位置の名称 を 示 し 、 表 9-39 で各ビ ッ ト について説明 し ます。 表 9-38 : BPI/SPI コ ン フ ィ ギ ュ レーシ ョ ン オプ シ ョ ン レ ジ ス タ (BSPI) SPI_READ_OPCODE SPI_BUSWIDTH SPI_32BIT_ADDR Reserved 値 BPI_SYNC_RCR BPI_SYNC_MODE Reserved 説明 ビ ッ ト イ ンデ ッ ク ス 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 0 0 0 0 0 0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 表 9-39 : BPI/SPI コ ン フ ィ ギ ュ レーシ ョ ン オプ シ ョ ン レ ジ ス タ の説明 名称 BPI_SYNC_MODE BPI_SYNC_RCR SPI_32BIT_ADDR ビッ ト イ ンデ ッ ク ス 27 説明 BPI コ ン フ ィ ギ ュ レーシ ョ ン フ ラ ッ シ ュ 読み出 し モー ド を設定 し ます。 0 : 非同期読み出 し (デフ ォ ル ト ) (58 ページの 「マ ス タ ー BPI 非同期読み出 し 」 参照) 1 : 同期読み出 し (55 ページの 「マ ス タ ー BPI 同期読み出 し 」 参照) [26:12] BPI コ ン フ ィ ギ ュ レ ーシ ョ ン フ ラ ッ シ ュ 読み出 し コ ン フ ィ ギ ュ レ ーシ ョ ン レ ジ ス タ です。 BITSTREAM.CONFIG.BPI_SYNC_MODE プ ロ パテ ィ のオプ シ ョ ン Type1 ま たは Type2 に よ っ て決定 し ます。 詳細は、 XAPP1220 [参照 10] を参照 し て く だ さ い。 10 SPI ア ド レ ス幅を設定 し ます。 0 : 24 ビ ッ ト ア ド レ ス (デフ ォ ル ト ) 1 : 32 ビ ッ ト ア ド レ ス (47 ページの 「128Mb を越え る シ リ アル NOR フ ラ ッ シ ュ のサポー ト 」 参照) SPI_BUSWIDTH [9:8] SPI バ ス幅を設定 し ます。 00 : x1 (デフ ォ ル ト ) 01 : x2 10 : x4 11 : x8 (デュ アル ク ワ ッ ド ) SPI_READ_OPCODE [7:0] SPI フ ラ ッ シ ュ 読み出 し 命令です。 42 ページの表 2-1 を参照 し て く だ さ い。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 149 第 10 章 リ ー ド バ ッ ク検証および CRC 概要 UltraScale™ アーキ テ ク チ ャ FPGA では、 SelectMAP、 ICAP、 お よ び JTAG イ ン タ ーフ ェ イ ス を介 し て コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ を読み出す こ と がで き ま す。 リ ー ド バ ッ ク 中は、 ユーザー メ モ リ エ レ メ ン ト (LUT RAM、 SRL、 お よ びブ ロ ッ ク RAM) のその時点での値を含め、 すべての コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ セルが読み出 さ れます。 コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ を読み出すには、 リ ー ド バ ッ ク を開始す る コ マ ン ド シーケ ン ス をデバ イ ス に送信す る 必要があ り ます。 マ イ ク ロ プ ロ セ ッ サ、 CPLD、 FPGA ベース シ ス テ ムか ら リ ー ド バ ッ ク コ マ ン ド シーケ ン ス を送 信で き る ほか、 コ ン フ ィ ギ ュ レーシ ョ ン ツールを使用 し て JTAG ベース の リ ー ド バ ッ ク 検証を実行す る こ と も で き ま す。 デバ イ ス か ら コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ の内容が読み出 さ れ る と 、 次に リ ー ド バ ッ ク ビ ッ ト ス ト リ ーム と コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ームが比較 さ れ、 エ ラ ーの有無が判定 さ れます。 こ の処理の詳細は、 「 リ ー ド バ ッ ク デー タ の検証」 で説明 し ます。 ザ イ リ ン ク ス のデバ イ ス プ ロ グ ラ ム ツールには、 自動的に リ ー ド バ ッ ク と 比 較を実行 し て コ ン フ ィ ギ ュ レーシ ョ ン エ ラ ーの有無を報告する 機能があ り ます。 SelectMAP ま たは JTAG イ ン タ ーフ ェ イ ス を利用 し て リ ー ド バ ッ ク を実行す る には、 ビ ッ ト ス ト リ ームに 2 つの設定 を行っ てお く 必要が あ り ま す。 1 つは ビ ッ ト ス ト リ ーム セ キ ュ リ テ ィ 設定で リ ー ド バ ッ ク の禁止を解除 し てお く こ と 、 も う 1 つはビ ッ ト ス ト リ ーム暗号化を使用 し ない こ と です。 ま た、 SelectMAP イ ン タ ーフ ェ イ ス を利用 し て リ ー ド バ ッ ク を実行す る 場合は、 ビ ッ ト ス ト リ ーム ジ ェ ネ レー タ ーで persist オプシ ョ ン を設定 し てお く 必要があ り ます。 こ の設定を行っ ておかない と SelectMAP デー タ ピ ンは コ ン フ ィ ギ ュ レーシ ョ ン後にユーザー I/O と な り 、その後の コ ン フ ィ ギ ュ レーシ ョ ンが行え な く な り ます。 リ ー ド バ ッ ク を有効にする 場合、 上に挙げたセキ ュ リ テ ィ お よ び暗号化 のオプシ ョ ン以外に特別な設定は必要あ り ません。 リ ー ド バ ッ ク キ ャ プチ ャ に よ っ て、 内部 CLB レ ジ ス タ 、 ブ ロ ッ ク RAM、 分散 RAM、 SRL 内容の現在のユーザー ス テー ト を読み出す こ と で、 デザ イ ンの機能が適切か ど う か をチ ェ ッ ク 可能にな り ます。 こ の機能を使用す る と 、 最小 限の準備でデザ イ ン ロ ジ ッ ク リ ソ ース を追加す る こ と な く 、デザ イ ン ス テー ト を簡単に確認で き る よ う にな り ます。 リ ー ド バ ッ ク キ ャ プ チ ャ フ ロ ーは、 『UltraScale FPGA で の コ ン フ ィ ギ ュ レ ー シ ョ ン リ ー ド バ ッ ク キ ャ プ チ ャ 』 (XAPP1230) [参照 17] で説明 さ れてい ます。 Persist オプ シ ョ ン Persist ビ ッ ト ス ト リ ーム オプシ ョ ン (BITSTREAM.CONFIG.PERSIST YES) は、 コ ン フ ィ ギ ュ レーシ ョ ン後、 多目的 コ ン フ ィ ギ ュ レーシ ョ ン ピ ンへの コ ン フ ィ ギ ュ レーシ ョ ン ロ ジ ッ ク のア ク セ ス を維持 し ます。 こ のオプシ ョ ンは、 主 に コ ン フ ィ ギ ュ レーシ ョ ン後の リ ー ド バ ッ ク ア ク セ ス用に SelectMAP ポー ト を保持す る 目的で使用 さ れ ますが、 ほ かの コ ン フ ィ ギ ュ レーシ ョ ン モー ド で も 利用で き ます。 JTAG コ ン フ ィ ギ ュ レーシ ョ ンでは、 専用の JTAG ポー ト が 常に利用可能なため、 Persist は必要あ り ません。 Persist オプシ ョ ンは、 PROGRAM_B ピ ン をパルス し た り JTAG ポー ト を使用す る こ と な く 、 外部 コ ン ト ロ ー ラ ーか ら デバ イ ス を リ コ ン フ ィ ギ ュ レーシ ョ ンす る ために利用す る こ と も で き ます。 Persist に使用す る 多目的ピ ンは、 コ ン フ ィ ギ ュ レーシ ョ ン モー ド ピ ン の設定に依存 し 、 21 ページの表 1-7 お よ び 22 ページの表 1-8 に記載の各 コ ン フ ィ ギ ュ レーシ ョ ン モー ド ピ ン と 同様です。 ただ し 、 PUDC_B は Persist に 使用で き ません。 Persist に使用す る I/O ピ ンはユーザー デザ イ ンで I/O と し ては利用で き ません。 デザ イ ンの イ ンプ リ メ ン テーシ ョ ン時に CONFIG_MODE 制約を用いて適切な ピ ン を予約 し ます。 Persist モー ド の I/O は、 デフ ォ ル ト の汎用 I/O 規格 (LVCMOS、 12mA 駆動能力、 Slow スルー レー ト ) を使用 し ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 150 第 10 章 : リ ー ド バ ッ ク 検証および CRC リ ー ド バ ッ ク コ マ ン ド シーケ ン ス 以降のセ ク シ ョ ンでは、 SelectMAP イ ン タ ーフ ェ イ ス ま たは JTAG イ ン タ ーフ ェ イ ス を介 し た リ ー ド バ ッ ク 手順につ いて説明 し ます。 ICAP を介 し た リ ー ド バ ッ ク は SelectMAP イ ン タ ーフ ェ イ ス を介 し た リ ー ド バ ッ ク と 同様です。 コ ン フ ィ ギ ュ レーシ ョ ン レ ジ ス タ の読み出 し 手順 (SelectMAP) 読み出 し 操作の中で最 も 簡単なのは、 COR0 や STAT レ ジ ス タ な ど の コ ン フ ィ ギ ュ レーシ ョ ン レ ジ ス タ に対す る 読み 出 し です。 レ ジ ス タ に よ っ ては読み出 し ア ク セ ス が行え ない も の も あ り ますが、 読み出 し ア ク セ ス可能な レ ジ ス タ は すべて SelectMAP イ ン タ ーフ ェ イ ス か ら 読み出す こ と がで き ます。 SelectMAP イ ン タ ーフ ェ イ ス か ら STAT レ ジ ス タ を読み出すには、 次の手順に従い ます。 1. デバ イ ス にバ ス幅検出シーケ ン ス と 同期ワー ド を書 き 込んだ後、 少な く と も NOOP を 1 つ書き 込む。 2. デバ イ ス に 「STAT レ ジ ス タ 読み出 し 」 パケ ッ ト ヘ ッ ダーを書 き 込む。 3. デバ イ ス に NOOP コ マ ン ド を 2 つ書き 込み、 パケ ッ ト バ ッ フ ァ ーを フ ラ ッ シ ュ す る 。 4. SelectMAP イ ン タ ーフ ェ イ ス か ら 1 ワー ド を読み出す (ス テー タ ス レ ジ ス タ の値)。 5. デバ イ ス に DESYNC コ マ ン ド を書 き 込む。 6. デバ イ ス にダ ミ ー ワ ー ド を 2 つ書 き 込み、 パケ ッ ト バ ッ フ ァ ーを フ ラ ッ シ ュ す る 。 表 10-1 に、 コ マ ン ド シーケ ン ス を示 し ます。 表 10-1 : ス テー タ ス レ ジ ス タ の リ ー ド バ ッ ク コ マ ン ド シーケ ン ス (SelectMAP) 手順 SelectMAP ポー ト の 方向 コ ン フ ィ ギ ュ レー シ ョ ン デー タ 1 書 き 込み FFFFFFFF ダ ミ ー ワー ド 2 書 き 込み 000000BB バ ス幅同期ワー ド 3 書 き 込み 11220044 バ ス幅検出 4 書 き 込み FFFFFFFF ダ ミ ー ワー ド 5 書 き 込み AA995566 同期ワー ド 6 書 き 込み 20000000 NOOP 7 書 き 込み 2800E001 STAT レ ジ ス タ を読み出す タ イ プ 1 パケ ッ ト ヘ ッ ダーを 書 き 込む 8 書 き 込み 20000000 NOOP 9 書 き 込み 20000000 NOOP 10 読み出 し SSSSSSSS デバ イ ス が STAT レ ジ ス タ か ら 1 ワ ー ド を コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス に書 き 込む 11 書 き 込み 30008001 タ イ プ 1、 CMD に 1 ワー ド 書 き 込み 12 書 き 込み 0000000D DESYNC コ マ ン ド 13 書 き 込み 20000000 NOOP 14 書 き 込み 20000000 NOOP 説明 手順 9 と 手順 10 の間で SelectMAP イ ン タ ーフ ェ イ ス の方向を書 き 込みか ら 読み出 し 制御に変更 し 、手順 10 の後に再 び書 き 込み制御に戻す必要があ り ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 151 第 10 章 : リ ー ド バ ッ ク 検証および CRC STAT 以外の レ ジ ス タ を読み出す場合は、 タ イ プ 1 パケ ッ ト ヘ ッ ダーで指定す る ア ド レ ス (表 10-1 の手順 7) を変更 し 、 必要に応 じ て ワ ー ド カ ウ ン ト を修正 し て く だ さ い。 FDRO レ ジ ス タ か ら の読み出 し は、 「 コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ の読み出 し 手順 (SelectMAP)」 で説明する よ う に特別な手順が必要 と な り ます。 コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ の読み出 し 手順 (SelectMAP) FDRO レ ジ ス タ か ら コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ を読み出す手順は、その他の レ ジ ス タ か ら 読み出す場合 と 基本的 には同 じ です。 ただ し 、 コ ン フ ィ ギ ュ レーシ ョ ン ロ ジ ッ ク に対応す る ための追加手順が必要にな り ます。 FDRO レ ジ ス タ か ら の コ ン フ ィ ギ ュ レーシ ョ ン デー タ はフ レーム バ ッ フ ァ ーを通 る ため、 リ ー ド バ ッ ク デー タ の最初の フ レー ムは破棄す る 必要があ り ます。 1. デバ イ ス にバ ス幅検出シーケ ン ス と 同期ワー ド を書 き 込む。 2. NOOP コ マ ン ド を少な く と も 1 つ書 き 込む。 3. SHUTDOWN コ マ ン ド を書 き 込み、 NOOP コ マ ン ド を 1 つ書き 込む。 4. RCRC コ マ ン ド を CMD レ ジ ス タ に書き 込み、 NOOP コ マ ン ド を 1 つ書き 込む。 5. NOOP コ マ ン ド を 5 つ書 き 込み、 シ ャ ッ ト ダ ウ ン シーケ ン ス を確実に完了 さ せ る 。 シ ャ ッ ト ダ ウ ン シーケ ン ス 中、 DONE が Low にな る 。 6. RCFG コ マ ン ド を CMD レ ジ ス タ に書 き 込み、 NOOP コ マ ン ド を 1 つ書 き 込む。 7. 開始フ レーム ア ド レ ス を FAR に書 き 込む (通常は 0x00000000)。 8. デバ イ ス に 「FDRO レ ジ ス タ 読み出 し 」 パケ ッ ト ヘ ッ ダーを書き 込む。 FDRO 読み出 し 長は、 次の式で求め ます。 Kintex UltraScale お よ び Virtex UltraScale : FDRO 読み出 し 長 = (各フ レームの ワ ー ド 数) x (読み出すフ レーム数 +1) + 10 Kintex UltraScale+ お よ び Virtex UltraScale+ : FDRO 読み出 し 長 = (各フ レームの ワ ー ド 数) x (読み出すフ レーム数 + 1) + 25 フ レーム バ ッ フ ァ ー分の追加フ レームが 1 つ読み出 さ れます。 フ レーム バ ッ フ ァ ーでは、 読み出 し の始めのダ ミ ー デー タ と な る 1 フ レームが必要です。 パ イ プ ラ イ ン用の 10 ワー ド が追加で読み出 さ れます。 9. デバ イ ス に 64 ダ ミ ー ワー ド を書 き 込み、 パケ ッ ト バ ッ フ ァ ーを フ ラ ッ シ ュ す る 。 10. SelectMAP イ ン タ ーフ ェ イ ス か ら FDRO レ ジ ス タ を読み出す。 FDRO 読み出 し 長は手順 8 と 同 じ 式で求め ます。 11. NOOP コ マ ン ド を 1 つ書 き 込む。 12. START コ マ ン ド を書 き 込み、 NOOP コ マ ン ド を 1 つ書 き 込む。 13. RCRC コ マ ン ド を書 き 込み、 NOOP コ マ ン ド を 1 つ書 き 込む。 14. DESYNC コ マ ン ド を書 き 込む。 15. 最低 64 ビ ッ ト の NOOP コ マ ン ド を書き 込み、 パケ ッ ト バ ッ フ ァ ーを フ ラ ッ シ ュ す る 。 DONE が High にな る ま で CCLK パルス の送出を続け る 。 表 10-2 に、 リ ー ド バ ッ ク コ マ ン ド シーケ ン ス を示 し ます。 表 10-2 : SHUTDOWN 命令の リ ー ド バ ッ ク コ マ ン ド シーケ ン ス (SelectMAP) 手順 1 SelectMAP ポー ト の 方向 コ ン フ ィ ギ ュ レー シ ョ ン デー タ 書 き 込み UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 説明 FFFFFFFF ダ ミ ー ワー ド 000000BB バ ス幅同期ワー ド 11220044 バ ス幅検出 FFFFFFFF ダ ミ ー ワー ド AA995566 同期ワー ド japan.xilinx.com 152 第 10 章 : リ ー ド バ ッ ク 検証および CRC 表 10-2 : SHUTDOWN 命令の リ ー ド バ ッ ク コ マ ン ド シーケ ン ス (SelectMAP) (続き) 手順 SelectMAP ポー ト の 方向 コ ン フ ィ ギ ュ レー シ ョ ン デー タ 2 書 き 込み 02000000 タ イ プ 1、 NOOP ワー ド 0 30008001 タ イ プ 1、 CMD に 1 ワー ド 書 き 込み 0000000B SHUTDOWN コ マ ン ド 02000000 タ イ プ 1、 NOOP ワー ド 0 30008001 タ イ プ 1、 CMD に 1 ワー ド 書 き 込み 00000007 RCRC コ マ ン ド 20000000 タ イ プ 1、 NOOP ワー ド 0 20000000 タ イ プ 1、 NOOP ワー ド 0 20000000 タ イ プ 1、 NOOP ワー ド 0 20000000 タ イ プ 1、 NOOP ワー ド 0 20000000 タ イ プ 1、 NOOP ワー ド 0 20000000 タ イ プ 1、 NOOP ワー ド 0 30008001 タ イ プ 1、 CMD に 1 ワー ド 書 き 込み 00000004 RCFG コ マ ン ド 20000000 タ イ プ 1、 NOOP ワー ド 0 30002001 タ イ プ 1、 FAR に 1 ワー ド 書 き 込み 00000000 FAR ア ド レ ス = 00000000 28006000 タ イ プ 1、 FDRO か ら 0 ワ ー ド 読み出 し 483D0DB0 タ イ プ 2、 FDRO か ら 4,001,201 ワ ー ド 読み出 し (KU040) 20000000 タ イ プ 1、 NOOP ワー ド 0 3 4 5 6 7 8 9 書 き 込み 書 き 込み 書 き 込み 書 き 込み 書 き 込み 書 き 込み 書 き 込み ... 00000000 10 11 12 13 14 15 読み出 し 書 き 込み 書 き 込み 書 き 込み タ イ プ 1、 NOOP ワー ド 0 を さ ら に 63 回 パケ ッ ト デー タ 、 FDRO か ら 0 ワ ー ド 読み出 し ... 00000000 パケ ッ ト デー タ 、 FDRO か ら 4,001,200 ワー ド 読み出 し 20000000 タ イ プ 1、 NOOP ワー ド 0 30008001 タ イ プ 1、 CMD に 1 ワー ド 書 き 込み 00000005 START コ マ ン ド 20000000 タ イ プ 1、 NOOP ワー ド 0 30008001 タ イ プ 1、 CMD に 1 ワー ド 書 き 込み 00000007 RCRC コ マ ン ド 20000000 タ イ プ 1、 NOOP ワー ド 0 30008001 タ イ プ 1、 CMD に 1 ワー ド 書 き 込み 0000000D DESYNC コ マ ン ド 20000000 タ イ プ 1、 NOOP ワー ド 0 20000000 タ イ プ 1、 NOOP ワー ド 0 書 き 込み 書 き 込み UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 説明 japan.xilinx.com 153 第 10 章 : リ ー ド バ ッ ク 検証および CRC JTAG イ ン タ ー フ ェ イ スから コ ン フ ィ ギ ュ レーシ ョ ン レ ジ ス タ へ のア ク セス JTAG か ら FPGA の コ ン フ ィ ギ ュ レーシ ョ ン ロ ジ ッ ク にア ク セ スす る には、JTAG CFG_IN お よ び CFG_OUT レ ジ ス タ を 使用 し ま す。 CFG_IN お よ び CFG_OUT レ ジ ス タ は コ ン フ ィ ギ ュ レ ー シ ョ ン レ ジ ス タ で は な く 、 BYPASS や BOUDARY_SCAN と 同様の JTAG レ ジ ス タ です。 CFG_IN にシ フ ト し たデー タ は、 コ ン フ ィ ギ ュ レーシ ョ ン パケ ッ ト プ ロ セ ッ サに入 り 、 SelectMAP イ ン タ ーフ ェ イ ス か ら の コ マ ン ド と 同様に処理 さ れます。 リ ー ド バ ッ ク コ マ ン ド は、 CFG_IN レ ジ ス タ を介 し て コ ン フ ィ ギ ュ レーシ ョ ン ロ ジ ッ ク に書 き 込まれ、 コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ は CFG_OUT レ ジ ス タ か ら 読み出 さ れ ます。 表 10-3 に、 CFG_IN お よ び CFG_OUT レ ジ ス タ にア ク セ スす る 際の JTAG ス テー ト の遷移を示 し ます。 表 10-3 : JTAG CFG_IN および CFG_OUT 命令のシ フ ト イ ン 手順 セ ッ ト /ホール ド 説明 TDI TMS ク ロ ッ ク数 (TCK) 1 5 ク ロ ッ ク の間、 TMS に 1 を入力 し てデバ イ ス を TLR ス テー ト にす る X 1 5 2 RTI ス テー ト に移行す る X 0 1 3 Select-IR ス テー ト に移行す る X 1 2 4 Shift-IR ス テー ト に移行す る X 0 2 0 5 5 CFG_IN ま たは CFG_OUT 命令の最初の 5 ビ ッ ト を LSB か ら 順にシ フ ト す る 00101 (CFG_IN) 00100 (CFG_OUT) 6 Shift-IR ス テー ト か ら 出 る 間に、 CFG_IN ま たは CFG_OUT 命令の MSB を シ フ ト する 0 1 1 7 Select-DR ス テー ト に移行す る X 1 2 8 Shift-DR ス テー ト に移行す る X 0 2 9 Shift-DR ス テー ト の間に、 デー タ を MSB か ら 順に CFG_IN レ ジ ス タ にシ フ ト す る 、 ま たは CFG_OUT か ら シ フ ト す る X 0 X 10 Shift-DR ス テー ト か ら 出 る 間に LSB を シ フ ト す る X 1 1 11 5 ク ロ ッ ク の間、 TMS に 1 を入力 し て TAP を リ セ ッ ト する X 1 5 コ ン フ ィ ギ ュ レーシ ョ ン レ ジ ス タ の読み出 し 手順 (JTAG) 読み出 し 操作の中で最 も 簡単なのは、 COR0 や STAT レ ジ ス タ な ど の コ ン フ ィ ギ ュ レーシ ョ ン レ ジ ス タ に対す る 読み 出 し です。レ ジ ス タ に よ っ ては読み出 し ア ク セ ス が行え ない も の も あ り ますが、読み出 し ア ク セ ス可能な レ ジ ス タ は、 すべて JTAG イ ン タ ーフ ェ イ ス か ら 読み出す こ と がで き ます。JTAG イ ン タ ーフ ェ イ ス か ら STAT レ ジ ス タ を読み出す には、 次の手順に従い ます。 1. TAP コ ン ト ロ ー ラ ーを リ セ ッ ト す る 。 2. Shift-IR ス テー ト 中に、 CFG_IN 命令を JTAG 命令レ ジ ス タ にシ フ ト する 。 CFG_IN 命令の LSB か ら 順にシ フ ト し 、 TAP コ ン ト ロ ー ラ ーが Shift-IR ス テー ト か ら 出る 間に MSB を シ フ ト し ます。 3. Shift-DR ス テー ト 中に、 パケ ッ ト 書 き 込み コ マ ン ド を CFG_IN レ ジ ス タ にシ フ ト す る 。 a. デバ イ ス に同期 ワー ド を書 き 込む。 b. デバ イ ス に NOOP コ マ ン ド を少な く と も 1 つ書き 込む。 c. デバ イ ス に 「STAT レ ジ ス タ 読み出 し 」 パケ ッ ト ヘ ッ ダーを書 き 込む。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 154 第 10 章 : リ ー ド バ ッ ク 検証および CRC d. デバ イ ス にダ ミ ー ワ ー ド を 2 つ書き 込み、 パケ ッ ト バ ッ フ ァ ーを フ ラ ッ シ ュ す る 。 CFG_IN レ ジ ス タ 経由で送信 さ れた コ ン フ ィ ギ ュ レーシ ョ ン パケ ッ ト は、 常に MSB か ら 順に送信す る 必要があ り ます。 LSB は、 TAP コ ン ト ロ ー ラ ーが Shift-DR ス テー ト か ら 出 る 間にシ フ ト し ます。 4. Shift-IR ス テー ト 中に、 CFG_OUT 命令を JTAG 命令レ ジ ス タ にシ フ ト する 。 CFG_OUT 命令の LSB か ら 順にシ フ ト し 、 TAP コ ン ト ロ ー ラ ーが Shift-IR ス テー ト か ら 出る 間に MSB を シ フ ト し ます。 5. Shift-DR ス テー ト 中に、 ス テー タ ス レ ジ ス タ か ら 32 ビ ッ ト を シ フ ト す る 。 6. TAP コ ン ト ロ ー ラ ーを リ セ ッ ト す る 。 表 10-4 に、 リ ー ド バ ッ ク コ マ ン ド シーケ ン ス を示 し ます。 表 10-4 : ス テー タ ス レ ジ ス タ の リ ー ド バ ッ ク コ マ ン ド シーケ ン ス (JTAG) 1 2 セ ッ ト /ホール ド TDI TMS ク ロ ッ ク数 (TCK) 5 ク ロ ッ ク の間、 TMS に 1 を入力 し てデバ イ ス を TLR ス テー ト にす る X 1 5 RTI ス テー ト に移行す る X 0 1 Select-IR ス テー ト に移行す る X 1 2 Shift-IR ス テー ト に移行す る X 0 2 CFG_IN 命令の最初の 5 ビ ッ ト を LSB か ら 順にシ フ ト する 00101 (CFG_IN) 0 5 Shift-IR ス テー ト か ら 出 る 間に、 CFG_IN 命令の MSB を シフ ト する 0 1 1 Select-DR ス テー ト に移行す る X 1 2 Shift-DR ス テー ト に移行す る X 0 2 0 159 手順 説明 コ ン フ ィ ギ ュ レ ー シ ョ ン パ ケ ッ ト を MSB か ら 順 に CFG_IN デー タ レ ジ ス タ にシ フ ト する 3 4 a b c d e : : : : : 0xAA995566 0x20000000 0x2800E001 0x20000000 0x20000000 Shift-DR ス テー ト か ら 出 る 間に、 最後の コ ン フ ィ ギ ュ レーシ ョ ン パケ ッ ト の LSB を シ フ ト す る 0 1 1 Select-IR ス テー ト に移行す る X 1 3 Shift-IR ス テー ト に移行す る X 0 2 CFG_OUT 命令の最初の 5 ビ ッ ト を LSB か ら 順にシ フ ト する 00100 (CFG_OUT) 0 5 Shift-IR ス テー ト か ら 出 る 間に、 CFG_OUT 命令の MSB をシフ ト する 0 1 1 Select-DR ス テー ト に移行す る X 1 2 Shift-DR ス テー ト に移行す る X 0 2 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 155 第 10 章 : リ ー ド バ ッ ク 検証および CRC 表 10-4 : ス テー タ ス レ ジ ス タ の リ ー ド バ ッ ク コ マ ン ド シーケ ン ス (JTAG) (続き) 手順 5 6 セ ッ ト /ホール ド TDI TMS ク ロ ッ ク数 (TCK) STAT レ ジ ス タ の内容を CFG_OUT デー タ レ ジ ス タ か ら シフ ト する 0xSSSSSSSS 0 31 Shift-DR ス テー ト か ら 出 る 間に、 STAT レ ジ ス タ の最後 のビ ッ ト を CFG_OUT デー タ レ ジ ス タ か ら シ フ ト する S 1 1 Select-IR ス テー ト に移行す る X 1 3 Shift-IR ス テー ト に移行す る X 0 2 TAP コ ン ト ロ ー ラ ーを リ セ ッ ト す る X 1 5 説明 JTAG CFG_IN レ ジ ス タ にシ フ ト し たパケ ッ ト は、 SelectMAP か ら STAT レ ジ ス タ を読み出す場合に SelectMAP イ ン タ ーフ ェ イ ス を介 し てシ フ ト し たパケ ッ ト と 同一です。 コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ の読み出 し 手順 (JTAG) JTAG イ ン タ ーフ ェ イ ス を利用 し て FDRO レ ジ ス タ か ら コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ を読み出す手順は、 その他の レ ジ ス タ か ら 読み出す場合 と 基本的には同 じ です。 ただ し 、 フ レーム ロ ジ ッ ク に対応す る ための追加手順が必要にな り ます。FDRO レ ジ ス タ か ら の コ ン フ ィ ギ ュ レーシ ョ ン デー タ はフ レーム バ ッ フ ァ ーを通 る ため、リ ー ド バ ッ ク デー タ の最初の フ レームは 「ダ ミ ー デー タ 」 であ り 、 破棄す る 必要があ り ます (FDRI お よ び FDRO レ ジ ス タ の説明参照 )。 通常は、 JTAG リ ー ド バ ッ ク フ ロ ーを推奨 し ます。 1. TAP コ ン ト ロ ー ラ ーを リ セ ッ ト す る 。 2. CFG_IN 命令を JTAG 命令レ ジ ス タ にシ フ ト する 。 CFG_IN 命令の LSB か ら 順にシ フ ト し 、 TAP コ ン ト ロ ー ラ ー が Shift-IR ス テー ト か ら 出 る 間に MSB を シ フ ト し ます。 3. Shift-DR ス テー ト 中に、 パケ ッ ト 書 き 込み コ マ ン ド を CFG_IN レ ジ ス タ にシ フ ト す る 。 a. デバ イ ス にダ ミ ー ワ ー ド を書 き 込む。 b. デバ イ ス に同期 ワー ド を書 き 込む。 c. デバ イ ス に NOOP コ マ ン ド を少な く と も 1 つ書き 込む。 d. デバ イ ス に RCRC コ マ ン ド を書き 込む。 e. ダ ミ ー ワ ー ド を 2 つ書 き 込み、 パケ ッ ト バ ッ フ ァ ーを フ ラ ッ シ ュ す る 。 4. JSHUTDOWN 命令を JTAG 命令レ ジ ス タ にシ フ ト す る 。 5. RTI ス テー ト に移行 し 、 シ ャ ッ ト ダ ウ ン シーケ ン ス を完了す る ま で TCK の 12 サ イ ク ル間、 こ の状態を維持す る 。 シ ャ ッ ト ダ ウ ン シーケ ン ス中、 DONE ピ ンは Low にな り ます。 6. CFG_IN 命令を JTAG 命令レ ジ ス タ にシ フ ト す る 。 7. Shift-DR ス テー ト に移行 し 、 パケ ッ ト 書 き 込み コ マ ン ド を CFG_IN レ ジ ス タ にシ フ ト す る 。 a. デバ イ ス にダ ミ ー ワ ー ド を書 き 込む。 b. デバ イ ス に同期 ワー ド を書 き 込む。 c. デバ イ ス に NOOP コ マ ン ド を少な く と も 1 つ書き 込む。 d. 「CMD レ ジ ス タ への書 き 込み」 ヘ ッ ダーを書 き 込む。 e. デバ イ ス に RCFG コ マ ン ド を書 き 込む。 f. 「FAR レ ジ ス タ への書 き 込み」 ヘ ッ ダーを書 き 込む。 g. 開始フ レーム ア ド レ ス を FAR レ ジ ス タ に書 き 込む (通常は 0x0000000)。 h. デバ イ ス に タ イ プ 1 の 「FDRO レ ジ ス タ 読み出 し 」 パケ ッ ト ヘ ッ ダーを書き 込む。 i. タ イ プ 2 のパケ ッ ト ヘ ッ ダーを書き 込み、 デバ イ ス か ら 読み出すワ ー ド 数を宣言する 。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 156 第 10 章 : リ ー ド バ ッ ク 検証および CRC j. デバ イ ス にダ ミ ー ワ ー ド を 2 つ書き 込み、 パケ ッ ト バ ッ フ ァ ーを フ ラ ッ シ ュ す る 。 CFG_IN レ ジ ス タ 経由で送信 さ れた コ ン フ ィ ギ ュ レーシ ョ ン パケ ッ ト は、 常に MSB か ら 順に送信す る 必要があ り ます。 LSB は、 TAP コ ン ト ロ ー ラ ーが Shift-DR ス テー ト か ら 出 る 間にシ フ ト し ます。 8. Shift-DR ス テー ト 中に、 CFG_OUT 命令を JTAG 命令レ ジ ス タ にシ フ ト する 。 CFG_OUT 命令の LSB か ら 順にシ フ ト し 、 TAP コ ン ト ロ ー ラ ーが Shift-IR ス テー ト か ら 出る 間に MSB を シ フ ト し ます。 9. Shift-DR ス テー ト 中に、 FDRO レ ジ ス タ か ら の フ レーム デー タ を シ フ ト する 。 10. TAP コ ン ト ロ ー ラ ーを リ セ ッ ト す る 。 表 10-5 に、 SHUTDOWN 命令の リ ー ド バ ッ ク コ マ ン ド シーケ ン ス を示 し ます。 表 10-5 : SHUTDOWN 命令の リ ー ド バ ッ ク コ マ ン ド シーケ ン ス (JTAG) 1 2 セ ッ ト /ホール ド TDI TMS ク ロ ッ ク数 (TCK) 5 ク ロ ッ ク の間、TMS に 1 を入力 し てデバ イ ス を TLR ス テー ト にする X 1 5 RTI ス テー ト に移行す る X 0 1 Select-IR ス テー ト に移行す る X 1 2 Shift-IR ス テー ト に移行す る X 0 2 CFG_IN 命令の最初の 5 ビ ッ ト を LSB か ら 順にシ フ ト する 00101 0 5 Shift-IR ス テー ト か ら 出 る 間に、 CFG_IN 命令の MSB を シ フ ト する 0 1 1 Select-DR ス テー ト に移行す る X 1 2 Shift-DR ス テー ト に移行す る X 0 2 0 223 手順 説明 コ ン フ ィ ギ ュ レ ーシ ョ ン パケ ッ ト を MSB か ら 順に CFG_IN デー タ レ ジ ス タ にシ フ ト する 3 4 5 a b c d e f g : 0xFFFFFFFF : 0xAA995566 : 0x20000000 : 0x30008001 : 0x00000007 : 0x20000000 : 0x20000000 Shift-DR ス テー ト か ら 出 る 間に、最後の コ ン フ ィ ギ ュ レーシ ョ ン パケ ッ ト の LSB を シ フ ト す る 0 1 1 Select-IR ス テー ト に移行す る X 1 3 Shift-IR ス テー ト に移行す る X 0 2 JSHUTDOWN 命令の最初の 5 ビ ッ ト を LSB か ら 順に シ フ ト する 01101 0 5 Shift-IR ス テー ト か ら 出 る 間に、JSHUTDOWN 命令の MSB を シ フ ト す る 0 1 1 RTI ス テー ト に移行 し 、 TCK の 12 サ イ ク ル間、 その 状態を維持す る X 0 12 Select-IR ス テー ト に移行す る X 1 2 Shift-IR ス テー ト に移行す る X 0 2 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 157 第 10 章 : リ ー ド バ ッ ク 検証および CRC 表 10-5 : SHUTDOWN 命令の リ ー ド バ ッ ク コ マ ン ド シーケ ン ス (JTAG) (続き) 手順 6 セ ッ ト /ホール ド TDI TMS ク ロ ッ ク数 (TCK) CFG_IN 命令の最初の 5 ビ ッ ト を LSB か ら 順にシ フ ト する 00101 0 5 Shift-IR ス テー ト か ら 出 る 間に、 CFG_IN 命令の MSB を シ フ ト する 0 1 1 Select-DR ス テー ト に移行す る X 1 2 Shift-DR ス テー ト に移行す る X 0 2 0 351 説明 コ ン フ ィ ギ ュ レ ーシ ョ ン パケ ッ ト を MSB か ら 順に CFG_IN デー タ レ ジ ス タ にシ フ ト する 7 8 10 : 0xFFFFFFFF : 0xAA995566 : 0x20000000 : 0x30008001 : 0x00000004 : 0x30002001 : 0x00000000 : 0x28006000 : 0x48024090 : 0x20000000 : 0x20000000 Shift-DR ス テー ト か ら 出 る 間に、最後の コ ン フ ィ ギ ュ レーシ ョ ン パケ ッ ト の LSB を シ フ ト す る 0 1 1 Select-IR ス テー ト に移行す る X 1 3 Shift-IR ス テー ト に移行す る X 0 2 CFG_OUT 命令の最初の 5 ビ ッ ト を LSB か ら 順にシ フ ト する 00100 (CFG_OUT) 0 5 Shift-IR ス テ ー ト か ら 出 る 間 に、 CFG_OUT 命令 の MSB を シ フ ト す る 0 1 1 Select-DR ス テー ト に移行す る X 1 2 Shift-DR ス テー ト に移行す る X 0 2 ... 0 リ ード バッ ク のビ ッ ト 数-1 Shift-DR ス テー ト か ら 出 る 間に、FDRO レ ジ ス タ の最 後の ビ ッ ト を CFG_OUT デー タ レ ジ ス タ か ら シ フ ト する X 1 1 Select-IR ス テー ト に移行す る X 1 3 Shift-IR ス テー ト に移行す る X 0 2 TAP コ ン ト ロ ー ラ ーを TLR ス テー ト に し て完了す る X 1 3 FDRO レ ジ ス タ の内容を CFG_OUT デー タ レ ジ ス タ か ら シフ ト する 9 a b c d e f g h i j k UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 158 第 10 章 : リ ー ド バ ッ ク 検証および CRC リ ー ド バ ッ ク デー タ の検証 「 コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ の読み出 し 手順 (SelectMAP)」 で説明 し た よ う に、 リ ー ド バ ッ ク デー タ ス ト リ ーム は、 先頭に 10 ワ ー ド のパ イ プ ラ イ ン デー タ と 1 フ レームのパ ッ ド デー タ があ り 、 その後に コ ン フ ィ ギ ュ レーシ ョ ン フ レーム デー タ が続 く 形で構成 さ れてい ます。 リ ー ド バ ッ ク ス ト リ ームには、 コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ームにあ る コ マ ン ド やパケ ッ ト 情報は含まれてお ら ず、 リ ー ド バ ッ ク 中に CRC の計算は行われません。図 10-1 に、 リ ー ド バ ッ ク デー タ ス ト リ ーム を示 し ます。 X-Ref Target - Figure 10-1 Readback Data Pipeline 10 Words 1 Frame Pad Frame Total Number of Device Frames Frame Data UG570_c10_01_112014 図 10-1 : リ ー ド バ ッ ク デー タ ス ト リ ーム リ ー ド バ ッ ク デー タ ス ト リ ームは、 デバ イ ス にプ ロ グ ラ ム さ れた元の コ ン フ ィ ギ ュ レーシ ョ ン フ レーム デー タ と 比 較す る こ と で検証 さ れます。 ただ し 、 リ ー ド バ ッ ク デー タ ス ト リ ーム内のビ ッ ト に よ っ ては、 ユーザー メ モ リ ま た は NULL メ モ リ 位置に対応 し てい る ため、比較で き ない も のがあ り ます。 リ ー ド バ ッ ク デー タ ス ト リ ーム内の 「Don’t Care」 ビ ッ ト の位置は、 MSK お よ び MSD マ ス ク フ ァ イ ルに示 さ れてい ます。 こ れ ら の フ ァ イ ルは形式が異な り ます が、 基本的に同一の情報が含まれます。 デバ イ ス か ら リ ー ド バ ッ ク デー タ を取得 し た ら 、 次のいずれかの方法で比較 を実行 し ます。 ゴールデン リ ー ド バ ッ ク フ ァ イル と の比較 最 も 簡単な リ ー ド バ ッ ク デー タ ス ト リ ームの検証方法は、 MSD フ ァ イ ルを マ ス ク に使用 し 、 基準 と な る RBD リ ー ド バ ッ ク フ ァ イ ル と 比較す る 方法です。 こ の方法は、 リ ー ド バ ッ ク デー タ ス ト リ ーム の開始 と RBD お よ び MSD フ ァ イ ルの開始が 1:1 で対応 し てお り 、 リ ー ド バ ッ ク 、 マ ス ク 、 お よ び予測 さ れ る デー タ の位置が合わせやすいため 簡単です。 RBD お よ び MSD フ ァ イ ルには、 リ ー ド バ ッ ク デー タ 、 マ ス ク デー タ 、 お よ びフ ァ イ ル名の一覧な ど を含むフ ァ イ ル ヘ ッ ダーが ASCII 形式で含まれます。 こ のヘ ッ ダー情報は、 無視ま たは削除 し て く だ さ い。 RBD お よ び MSD フ ァ イ ル内の ASCII の 1 お よ び 0 は、 デバ イ ス か ら 取得 し た リ ー ド バ ッ ク デー タ のバ イ ナ リ 値に対応 し ます。 こ れ ら の フ ァ イ ルは、 バ イ ナ リ ソ ース と し てではな く 、 テ キ ス ト フ ァ イ ル と し て処理 し て く だ さ い。 ス ク リ プ ト ま たはテ キ ス ト エデ ィ タ ーを使用 し て RBD お よ び MSD フ ァ イ ルをバ イ ナ リ 形式に変換す る と 、 シ ス テ ム に よ っ ては検証過程 が簡略化 さ れ、 1/8 ま で フ ァ イ ル サ イ ズ を縮小で き ます。 図 10-2 を参照 し て く だ さ い。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 159 第 10 章 : リ ー ド バ ッ ク 検証および CRC X-Ref Target - Figure 10-2 MSD File RBD File Pipeline File Header File Header 1 Frame Pad Frame Pad Frame Pad Frame Total Number of Device Frames Frame Data Frame Data Mask Frame Data Readback Data Stream 10 Words UG570_c10_02_112014 図 10-2 : MSD および RBD フ ァ イルを使用 し た リ ー ド バ ッ ク デー タ の比較 こ の方法のデ メ リ ッ ト は、 最初の コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ームお よ び MSD フ ァ イ ル以外に、 RBD フ ァ イ ルの格納場所が必要 と な る ため、 全体的な ス ト レージ容量が増え る 点です。 ビ ッ ト ス ト リ ーム内の フ レーム デー タ と の比較 も う 1 つの検証方法は、 MSK フ ァ イ ルを マ ス ク に使用 し 、 リ ー ド バ ッ ク デー タ ス ト リ ーム と 元の コ ン フ ィ ギ ュ レー シ ョ ン ビ ッ ト ス ト リ ームにあ る FDRI 書 き 込み内の フ レーム デー タ を比較す る と い う も のです (図 10-3 参照)。 デバ イ ス に リ ー ド バ ッ ク コ マ ン ド を送信後、 リ ー ド バ ッ ク フ レーム デー タ の先頭位置 と BIT お よ び MSK フ ァ イ ル 内の FDRI 書 き 込みの先頭位置が合わせ ら れ、 比較が開始 さ れます。 FDRI 書 き 込みの最後ま で比較を実行す る と 、 処 理が完了 し ます。 こ の方法では、 BIT フ ァ イ ル と MSK フ ァ イ ル、 お よ び リ ー ド バ ッ ク コ マ ン ド のみを格納すれば よ いため、 シ ス テ ム で必要な ス ト レージ容量を抑え る こ と がで き ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 160 第 10 章 : リ ー ド バ ッ ク 検証および CRC X-Ref Target - Figure 10-3 Readback Data Stream Total Number of Device Frames BIT File File Header File Header Commands Commands Frame Data Mask Frame Data Pad Frame Pad Frame Commands Commands Pipeline 10 Words 1 Frame MSK File Pad Frame Frame Data UG470_c6_03_112110 図 10-3 : MSK および BIT フ ァ イルを使用 し た リ ー ド バ ッ ク デー タ の比較 リ ー ド バ ッ ク CRC UltraScale アーキ テ ク チ ャ FPGA は、 ユーザー デザ イ ンのバ ッ ク グ ラ ン ド で継続的に コ ン フ ィ ギ ュ レーシ ョ ン デー タ を リ ー ド バ ッ ク で き ます。 リ ー ド バ ッ ク デー タ か ら 求めた CRC の値 と ゴールデン値を比較す る と 、 ビ ッ ト ス ト リ ー ムの完全性を検証で き ます。 こ の機能はシ ン グル イ ベン ト ア ッ プセ ッ ト (SEU) に よ る コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ ビ ッ ト の反転を簡単に検出す る こ と を目的 と し た も ので、 Soft Error Mitigation (SEM) IP で使用 し ます。 推奨 : SEU の検出 と 訂正を自動で実行す る ザ イ リ ン ク ス の Soft Error Mitigation (SEM) IP を使用 し て く だ さ い。 KU025 は、 リ ー ド バ ッ ク CRC お よ び SEM IP をサポー ト し ていない こ と に留意 し て く だ さ い。 リ ー ド バ ッ ク CRC を有効にす る と 、 コ ン フ ィ ギ ュ レーシ ョ ン専用 ロ ジ ッ ク はバ ッ ク グ ラ ン ド で継続的に リ ー ド バ ッ ク を実行 し 、 コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ の内容の CRC チ ェ ッ ク が実行 さ れ ます。 分散 RAM な ど、 一部の コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト は動作中に変化す る ため、 可変のビ ッ ト 位置が無視 さ れ る よ う に リ ー ド バ ッ ク CRC 機能 は こ れ ら のビ ッ ト を マ ス ク し ます。 バ ッ ク グ ラ ン ド で実行 さ れ る リ ー ド バ ッ ク では、 動作中に変更 さ れ る 次の メ モ リ 位置はマ ス ク さ れます。 • SLICEM LUT (RAM ま たは SRL) • ブ ロ ッ ク RAM の内容は、 ユーザー フ ァ ン ク シ ョ ン と の競合を回避する ため、 リ ー ド バ ッ ク 中は ス キ ッ プ さ れま す。 ブ ロ ッ ク RAM は、 その動作中に自身の ECC 回路でチ ェ ッ ク がオプシ ョ ンで行われます。 • DRP (ダ イ ナ ミ ッ ク リ コ ン フ ィ ギ ュ レーシ ョ ン ポー ト ) メ モ リ はマ ス ク さ れます。 リ ー ド バ ッ ク CRC ロ ジ ッ ク を有効に し た場合、 コ ン フ ィ ギ ュ レーシ ョ ンの完了後に次の条件が揃っ てい る と バ ッ ク グ ラ ン ド で自動的に リ ー ド バ ッ ク CRC が実行 さ れます。 • FPGA の ス タ ー ト ア ッ プが正 し く 完了 し 、 DONE ピ ンが High にな っ てい る UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 161 第 10 章 : リ ー ド バ ッ ク 検証および CRC • コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス の動作が適切な状態で停止 し てい る 。通常のビ ッ ト ス ト リ ームは最後 に DESYNC コ マ ン ド があ り 、 コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス に対 し て イ ン タ ーフ ェ イ ス がそれ以上 使用 さ れない こ と を通知す る 。 DESYNC コ マ ン ド は CRC_ERROR フ ラ グ を ク リ ア し ます。 • JTAG イ ン タ ーフ ェ イ ス は、 内部 コ ン フ ィ ギ ュ レーシ ョ ン バス の制御に JTAG CFG_IN 命令、 CFG_OUT 命令、 ま たは ISC_ENABLE フ ァ ン ク シ ョ ン を用いてい ません。 SEM IP は ICAPE3 を使用 し 、 ICAPE3 CLK ソ ース で リ ー ド バ ッ ク CRC を実行 し ます。 パーシ ャ ル リ コ ン フ ィ ギ ュ レーシ ョ ン アプ リ ケーシ ョ ン では、 コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ の内容が変更す る た め、 基準 と な る CRC を再計算す る 必要があ り ます。 FDRI へ書 き 込みを実行す る と 、 ハー ド ウ ェ アの基準 CRC が自 動的に再生成 さ れます。 リ ー ド バ ッ ク CRC は リ コ ン フ ィ ギ ュ レーシ ョ ン コ マ ン ド で中断 さ れ ます。 JTAG 経由での リ コ ン フ ィ ギ ュ レーシ ョ ンの場合を除 き 、 リ ー ド バ ッ ク CRC ロ ジ ッ ク の動作が完了 し て新 し い コ ン フ ィ ギ ュ レーシ ョ ン パケ ッ ト を受け取れ る よ う にな る ま でには最大 130 ク ロ ッ ク サ イ ク ルが必要です。 し たがっ て、 リ ー ド バ ッ ク CRC を実行す る デバ イ ス の リ コ ン フ ィ ギ ュ レーシ ョ ンに使用す る ビ ッ ト ス ト リ ームは、 同期 ワー ド の後に 130 個の NOOP が必要です。 SEU の検出および訂正 SEU に よ る ソ フ ト エ ラ ーは、 リ ー ド バ ッ ク CRC を利用 し て検出で き ます。 SEU の検出 と 訂正を自動で実行す る ザ イ リ ン ク ス の Soft Error Mitigation (SEM) IP を使用す る こ と を推奨 し ます。 詳細は、 次の資料を参照 し て く だ さ い。 japan.xilinx.com/products/intellectual-property/sem.html リ ー ド バッ ク キャ プチ ャ リ ー ド バ ッ ク キ ャ プチ ャ は同 じ リ ー ド バ ッ ク プ ロ セ ス を使用 し ますが、 追加 コ マ ン ド を リ ー ド バ ッ ク シーケ ン ス中 に発行 し て、 内部 CLB レ ジ ス タ のユーザー ス テー ト を読み出す必要があ り ます。 UltraScale FPGA には専用のキ ャ プ チ ャ メ モ リ セルがないため、7 シ リ ーズ FPGA で利用可能な CAPTUREE2 プ リ ミ テ ィ ブお よ び GCAPTURE コ マ ン ド は必要な く な り 、 UltraScale FPGA でサポー ト さ れな く な り ま し た。 UltraScale FPGA では、 マ ス ク (MSK) レ ジ ス タ お よ び制御 1 (CTL1) レ ジ ス タ (CAPTURE bit[23]) へ値を書 き 込み、 CLB レ ジ ス タ の リ ー ド バ ッ ク キ ャ プチ ャ を有効に す る 必要があ り ます。UltraScale FPGA では、リ ー ド バ ッ ク キ ャ プチ ャ シーケ ン ス全体で タ ーゲ ッ ト と な っ てい る ユー ザー ス テー ト エ レ メ ン ト に関連す る ク ロ ッ ク を停止 ま たは無効にす る 必要が あ り ま す。 write_bitstream オプシ ョ ン -logic_location を使用 し 、 リ ー ド バ ッ ク デー タ 内でブ ロ ッ ク RAM、 分散 RAM、 SRL、 お よ び CLB レ ジ ス タ の 位置を ビ ッ ト マ ッ プす る ための、 ASCII フ ォーマ ッ ト の .ll フ ァ イ ルを生成 し ます。 リ ー ド バ ッ ク キ ャ プ チ ャ の詳細は、 『UltraScale FPGA で の コ ン フ ィ ギ ュ レ ー シ ョ ン リ ー ド バ ッ ク キ ャ プ チ ャ 』 (XAPP1230) [参照 17] を参照 し て く だ さ い。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 162 第 11 章 マルチブー ト および リ コ ン フ ィ ギュ レーシ ョ ン は じ めに こ の章では、 UltraScale™ アーキ テ ク チ ャ FPGA で利用可能な ビ ッ ト ス ト リ ーム全体の リ コ ン フ ィ ギ ュ レーシ ョ ン方 法について説明 し ます。 フ ォ ールバ ッ ク マルチ ブー ト FPGA のマルチブー ト お よ びフ ォールバ ッ ク 機能は、 フ ィ ール ド での ビ ッ ト ス ト リ ーム イ メ ージの動的なア ッ プデー ト をサポー ト し ます。 FPGA マルチブー ト は、 デバ イ ス の実行中に イ メ ージ を切 り 替え る 機能です。 マルチブー ト コ ン フ ィ ギ ュ レーシ ョ ンの実行時にエ ラ ーが検出 さ れ る と FPGA はフ ォールバ ッ ク 機能を開始 し 、正常動作が確認済み のデザ イ ン (ゴールデン イ メ ージ) をデバ イ ス に読み込む こ と がで き ます。 マルチブー ト お よ びフ ォ ールバ ッ ク 機能 はすべてのマ ス タ ー コ ン フ ィ ギ ュ レーシ ョ ン モー ド で使用で き ます。 フ ォールバ ッ ク が実行 さ れ る と 、 内部生成 さ れたパルス に よ っ て、 専用のマルチブー ト ロ ジ ッ ク 、 WBSTAR ( ウ ォー ム ブー ト 開始ア ド レ ス)、 ブー ト ス テー タ ス (BOOTSTS) レ ジ ス タ を除 く 、 コ ン フ ィ ギ ュ レーシ ョ ン ロ ジ ッ ク 全体が リ セ ッ ト さ れ ます。 こ の リ セ ッ ト で INIT_B お よ び DONE が Low にな り 、 コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ が ク リ ア さ れ、 00 (BPI モー ド ) に駆動 さ れ る リ ビ ジ ョ ン セ レ ク ト (RS) ピ ンでア ド レ ス 0 か ら コ ン フ ィ ギ ュ レーシ ョ ン プ ロ セ ス が再開 し ます。 リ セ ッ ト 後、 ビ ッ ト ス ト リ ームは WBSTAR 開始ア ド レ ス を上書き し ます。 コ ン フ ィ ギ ュ レーシ ョ ン中、 次のエ ラ ーに よ っ て フ ォールバ ッ ク が ト リ ガー さ れ る こ と があ り ます。 • IDCODE エ ラ ー • CRC エ ラ ー • ウ ォ ッ チ ド ッ グ タ イ マーの タ イ ム ア ウ ト エ ラ ー • BPI ア ド レ ス ラ ッ プア ラ ウ ン ド エ ラ ー フ ォ ー ル バ ッ ク は、 ビ ッ ト ス ト リ ー ム オ プ シ ョ ン の ConfigFallback (BITSTREAM.CONFIG.CONFIGFALLBACK ENABLE) で も 有効にで き ます。 フ ォ ールバ ッ ク リ コ ン フ ィ ギ ュ レーシ ョ ン中は、 エ ンベデ ッ ド IPROG を無視 し ま す。 フ ォールバ ッ ク リ コ ン フ ィ ギ ュ レーシ ョ ン中は、 ウ ォ ッ チ ド ッ グ タ イ マーは無効です。 フ ォールバ ッ ク リ コ ン フ ィ ギ ュ レーシ ョ ンでエ ラ ーが発生す る と 、 コ ン フ ィ ギ ュ レーシ ョ ンが停止 し 、 INIT_B お よ び DONE の両方が Low に維持 さ れます。 信頼性の高い イ ン シ ス テ ム ア ッ プデー ト ソ リ ュ ーシ ョ ン を イ ン プ リ メ ン ト す る には、 い く つかの点を事前に考え て お く 必要があ り ま す。 まず、 シ ス テ ム セ ッ ト ア ッ プの方法を決定 し ます。 次に、 使用す る コ ン フ ィ ギ ュ レーシ ョ ン モー ド に応 じ た設計上の注意点を考慮 し てお く 必要があ り ます。 最後に、 HDL デザ イ ンに関す る 注意点 も 考慮 し て、 フ ァ イ ルを正 し く 生成す る 必要があ り ます。 こ の章では、 こ れ ら の各手順について説明 し ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 163 第 11 章 : マルチ ブー ト および リ コ ン フ ィ ギ ュ レーシ ョ ン ゴールデン イ メ ージ を最初に読み込むシ ス テムのセ ッ ト ア ッ プ FPGA の電源投入時にア ド レ ス 0 か ら ゴールデン イ メ ージ を読み込みます。 次に、 こ のデザ イ ン がマルチブー ト イ メ ージの読み込みを開始 し ます。 こ の よ う な方式は、 シ ス テ ム チ ェ ッ ク を実行 し てか ら ラ ン タ イ ム イ メ ージ を読み 込む場合に適 し てい ます。 つま り 、 シ ス テ ムのチ ェ ッ ク /診断機能を ゴールデン イ メ ージに含めてお き 、 実際のシ ス テ ム と し ての動作はマルチブー ト イ メ ージに含めておき ます。電源投入時に読み込まれ る ゴールデン イ メ ージが、上 位ア ド レ ス空間か ら のブー ト を ト リ ガー し ます。 マルチブー ト イ メ ージは複数用意 し てお く こ と が可能で、 任意のデ ザ イ ンか ら ほかの イ メ ージの読み込みを開始で き ます。上位ア ド レ ス空間のマルチブー ト イ メ ージ を読み込み中にエ ラ ーが発生 し た場合は、 フ ォールバ ッ ク 回路がア ド レ ス 0 か ら ゴールデン イ メ ージの読み込みを開始 し ます。 図 11-1 に、 最初にゴールデン イ メ ージ を使用する シ ス テ ムのセ ッ ト ア ッ プ フ ロ ーを示 し ます。 X-Ref Target - Figure 11-1 Memory Map of Flash Power Up MultiBoot Image Boot Golden Image BIT File Stored in Upper Address Trigger MultiBoot Upper Address Golden Image No Configuration Passes? BIT File Stored at Address 0 Yes Run MultiBoot Image Base Address UG570_c11_01_012714 図 11-1 : 最初にゴールデン イ メ ージ を使用する シ ス テムのフ ロー図 ゴールデン イ メ ージ と マルチ ブー ト イ メ ージの設計要件 ゴールデン イ メ ージお よ びマルチブー ト イ メ ージには、 次の よ う な設計要件があ り ます。 • BPI モー ド でア ド レ ス制御に RS[1:0] ピ ン を使用す る 場合を除いて、ハー ド ウ ェ アに関する 特別な要件はな し (詳 細は、 「BPI - ハー ド ウ ェ ア RS ピ ンの設計上の注意点」 セ ク シ ョ ン参照) • IPROG コ マ ン ド は、 ビ ッ ト ス ト リ ーム設定で次の コ ン フ ィ ギ ュ レーシ ョ ン ア ド レ ス (BITSTREAM.CONFIG.NEXT_CONFIG_ADDR) 用に ゴールデン イ メ ージに含め る か、 ま たはゴールデン イ メ ー ジ デ ザ イ ン 内 に イ ン ス タ ン シ エ ー ト さ れ た ICAP プ リ ミ テ ィ ブ ICAPE3 経 由 の コ ー ド で 発 行 す る 。 BITSTREAM.CONFIG.NEXT_CONFIG_REBOOT DISABLE を用いて IPROG コ マ ン ド を ビ ッ ト ス ト リ ーム で無効 にす る こ と で、 電源投入時にゴールデン イ メ ージ を読み込む こ と がで き る 。 • ビ ッ ト ス ト リ ーム設定ま たは ICAP で、WBSTAR ( ウ ォーム ブー ト 開始ア ド レ ス) レ ジ ス タ にジ ャ ンプ先ア ド レ ス を指定す る • マルチブー ト イ メ ージは、 フ ラ ッ シ ュ 内の WBSTAR レ ジ ス タ で指定 し た ア ド レ ス に格納す る • フ ラ ッ シ ュ ビ ッ ト ス ト リ ームが完全にプ ロ グ ラ ム さ れていない場合に回復で き る よ う にする ため、ウ ォ ッ チ ド ッ グ タ イ マーを有効にす る UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 164 第 11 章 : マルチ ブー ト および リ コ ン フ ィ ギ ュ レーシ ョ ン マルチブー ト イ メ ージ を最初に読み込むシステムのセ ッ ト ア ッ プ 電源投入時に上位ア ド レ ス空間か ら マルチブー ト イ メ ージ を読み込みます。こ の イ メ ージの コ ン フ ィ ギ ュ レーシ ョ ン が正常終了 し なか っ た場合、 デバ イ ス は自動的に フ ォールバ ッ ク を開始 し 、 ア ド レ ス 0 に格納 さ れてい る ゴールデン イ メ ージ を読み込みます。 こ れに よ り 、 シ ス テ ムは問題のあ っ た BIT フ ァ イ ルを ア ッ プグ レー ド し て、 次回の電源投 入時には最新の イ メ ージか ら ブー ト で き ます。 ア ッ プグ レー ド プ ロ セ ス を実行 し た ら 、 デザ イ ンは最新バージ ョ ンの イ メ ージの再読み込みを開始で き ま す。 マルチブー ト イ メ ージの読み込みが正常終了 し なか っ た場合は、 フ ォ ール バ ッ ク ロ ジ ッ ク がシ ス テ ム を完全に回復 し 、 ゴールデン イ メ ージ を読み込む よ う に し ます。 そ し て、 ゴールデン イ メ ージが フ ラ ッ シ ュ 内のエ ラ ーを修正 し 、マルチブー ト イ メ ージか ら の コ ン フ ィ ギ ュ レーシ ョ ンが再開で き る よ う に な り ます。 図 11-2 に、 最初にマルチブー ト イ メ ージ を使用する シ ス テ ムのセ ッ ト ア ッ プ フ ロ ーを示 し ます。 X-Ref Target - Figure 11-2 Memory Map of Flash Power Up MultiBoot Image Load MultiBoot BIT File Stored in Upper Address No Configuration Passes? Upper Address Golden Image Yes BIT File Stored at Address 0 Run MultiBoot Image Load Golden Image Base Address UG570_c11_02_012714 図 11-2 : 最初にマルチ ブー ト イ メ ージ を使用する シ ス テムのフ ロー図 最初にマルチ ブー ト イ メ ージ を使用する場合の設計上の注意点 ゴールデン イ メ ージには、 次の よ う な設計上の注意点があ り ます。 • ビ ッ ト ス ト リ ーム オプシ ョ ンで WBSTAR にマルチブー ト イ メ ージの位置を指定す る • 電源投入時にマルチブー ト イ メ ージの読み込みを開始する よ う 、 ビ ッ ト ス ト リ ーム オプシ ョ ンで IPROG コ マ ン ド を挿入す る • ビ ッ ト ス ト リ ーム オプシ ョ ンで ウ ォ ッ チ ド ッ グ タ イ マーを有効にす る • ゴールデン イ メ ージが フ ラ ッ シ ュ を修復 し てマルチブー ト イ メ ージの読み込みを再開で き る 場合は、 IPROG コ マ ン ド を発行す る コ ー ド で イ ン ス タ ン シエー ト し た ICAPE3 も 含め る こ と がで き る マルチブー ト イ メ ージには、 次の よ う な設計上の注意点があ り ます。 • ビ ッ ト ス ト リ ーム オプシ ョ ンで WBSTAR にマルチブー ト イ メ ージの位置を指定す る • ビ ッ ト ス ト リ ーム オプシ ョ ンで ウ ォ ッ チ ド ッ グ タ イ マーを有効にす る • マルチブー ト イ メ ージが フ ラ ッ シ ュ を ア ッ プグ レー ド し て、 ア ッ プグ レー ド 済みマルチブー ト イ メ ージの読み 込みを再開で き る 場合は、IPROG コ マ ン ド を発行する コ ー ド で イ ン ス タ ン シエー ト し た ICAPE3 も 含め る こ と が でき る UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 165 第 11 章 : マルチ ブー ト および リ コ ン フ ィ ギ ュ レーシ ョ ン BPI - ハー ド ウ ェ ア RS ピ ンの設計上の注意点 BPI モー ド の RS ピ ンは、 上位ア ド レ ス ラ イ ンに接続 さ れた RS ピ ンの う ち少な く と も 一方の 1 つのプルア ッ プ抵抗 で上位ア ド レ ス ビ ッ ト に接続す る 必要があ り ます。 も う 1 つの RS ピ ンは、 ビ ッ ト ス ト リ ーム サ イ ズ、 フ ラ ッ シ ュ サ イ ズ、 お よ び電源投入ビ ッ ト ス ト リ ーム を配置する フ ラ ッ シ ュ 内の場所に よ っ て、 プルア ッ プ ま たはプルダ ウ ン可 能です。 こ の よ う なハー ド ウ ェ ア イ ンプ リ メ ン テーシ ョ ン と し た場合、 シ ス テ ムは WBSTAR のア ド レ ス を使用せず、 ビ ッ ト ス ト リ ーム オプシ ョ ンはど の イ メ ージで も 同一 と な り ます。 詳細は、 「RS ピ ン」 を参照 し て く だ さ い。 マルチ ブー ト ビ ッ ト ス ト リ ームの間隔 ビ ッ ト ス ト リ ームの読み込みは、 EOS (End of Start-up) ま で継続 し ます。 MMCM の ロ ッ ク ま たは DCI の一致を待っ て か ら DONE ピ ン を リ リ ース し て ス タ ー ト ア ッ プ サ イ ク ルを開始す る よ う に設定 し てい る 場合、 全体の待ち時間を補 う ためにビ ッ ト ス ト リ ーム と ビ ッ ト ス ト リ ームの間にパデ ィ ン グ (すべて 0 ま たはすべて 1) が必要です。パデ ィ ン グ がない と 、 後続の ビ ッ ト ス ト リ ームが先行する ビ ッ ト ス ト リ ーム を上書き する 可能性があ り ます。 パデ ィ ン グのサ イ ズは、 式 cfg_bus_width x total_wait_time / CCLK_period で求め ます。 マルチ ブー ト および フ ォ ールバ ッ ク の手順の詳細 FPGA マルチブー ト お よ びフ ォールバ ッ ク イ ベン ト では、FPGA のい く つかの コ ン フ ィ ギ ュ レーシ ョ ン コ ン ポーネ ン ト を使用 し ます。 こ こ では、 FPGA のマルチブー ト ま たはフ ォールバ ッ ク イ ベン ト で使用す る コ ン フ ィ ギ ュ レーシ ョ ン コ マ ン ド 、 レ ジ ス タ 、 ビ ッ ト ス ト リ ーム設定、 お よ びピ ンについて説明 し ます。 IPROG IPROG (内部 PROGRAM) コ マ ン ド の機能は、 PROGRAM_B ピ ン をパルス し た場合 と ほぼ同 じ です。 基本的な違いは、 IPROG コ マ ン ド ではマルチブー ト と フ ォ ールバ ッ ク を 開始す る た めに使用す る WBSTAR、 TIMER、 BSPI、 お よ び BOOTSTS レ ジ ス タ が消去 さ れない と い う 点です。 IPROG コ マ ン ド を実行する と 初期化が開始 し 、 こ の コ マ ン ド の後 に コ ン フ ィ ギ ュ レーシ ョ ン を開始す る と INIT と DONE の両方が Low にな り ます。 IPROG コ マ ン ド の実行方法は 2 通 り あ り ます。 1 つは、 ユーザー ロ ジ ッ ク で ICAP を制御 し て実行す る 方法です。 こ れに よ り 、 ユーザー ロ ジ ッ ク はデバ イ ス リ コ ン フ ィ ギ ュ レーシ ョ ン を開始で き ます。 も う 1 つは、 IPROG コ マ ン ド を ビ ッ ト ス ト リ ーム生成時に埋め込む と い う 方法です。 こ の場合、 WBSTAR と IPROG コ マ ン ド はゴールデン イ メ ー ジの BIT フ ァ イ ルの先頭で設定 し ます。 電源投入時、 デバ イ ス はフ ラ ッ シ ュ か ら BIT フ ァ イ ルの読み出 し を開始 し 、 WBSTAR レ ジ ス タ と IPROG コ マ ン ド を読み込みます。 IPROG コ マ ン ド に よ り 、 デバ イ スは指定 さ れた ア ド レ ス か ら 新 し い イ メ ージの読み込みを開始 し ます。 上位ア ド レ ス空間の イ メ ージに問題があ る 場合は、 ベー ス ア ド レ ス の イ メ ージが再び読み込ま れます。 こ の場合、 デバ イ ス でエ ラ ーが発生 し てい る ため コ ン フ ィ ギ ュ レーシ ョ ン コ ン ト ロ ー ラ ーは IPROG コ マ ン ド を ス キ ッ プ し ます。 フ ォールバ ッ ク 時には IPROG コ マ ン ド は処理 さ れず、 デバ イ ス はゴール デン イ メ ージの読み込みを継続 し ます。 コ ン フ ィ ギ ュ レーシ ョ ン に成功す る と 、 IPROG コ マ ン ド をデバ イ ス に送信 で き 、 こ れに よ っ て ゴールデン イ メ ージがマルチブー ト イ メ ージか ら の コ ン フ ィ ギ ュ レーシ ョ ン を開始 し ます。 WBSTAR レ ジ ス タ WBSTAR (ウ ォーム ブー ト 開始ア ド レ ス) レ ジ ス タ には、 IPROG コ マ ン ド が送信 さ れた後に コ ン フ ィ ギ ュ レーシ ョ ン コ ン ト ロ ー ラ ーが使用す る ア ド レ ス が格納 さ れます。 こ れは、 ア ド レ ス ま たは BPI モー ド での RS ピ ンの値のいずれ かの形で指定で き ます。 こ の レ ジ ス タ は、 ビ ッ ト ス ト リ ーム オプシ ョ ン ま たは ICAP か ら 値を格納で き ます。 ビ ッ ト ス ト リ ーム オプシ ョ ン で レ ジ ス タ に値を設定 し ない場合、 デフ ォ ル ト 値の 0 が入 り ます。 し たが っ て、 ゴールデン イ メ ージに よ っ て WBSTAR の値が設定 さ れ、 マルチブー ト コ ン フ ィ ギ ュ レーシ ョ ンが開始 さ れた後、 マルチブー ト パ タ ーンに よ っ て WBSTAR がデフ ォ ル ト で 0 に リ セ ッ ト さ れます。 電源投入時、 デバ イ ス はフ ラ ッ シ ュ に読み出 し コ マ ン ド を送信 し 、 その直後に開始ア ド レ ス 0 を送 り ます。 WBSTAR コ マ ン ド が読み込ま れ、 IPROG コ マ ン ド が送信 さ れ る と 、 コ ン フ ィ ギ ュ レーシ ョ ン コ ン ト ロ ー ラ ーは WBSTAR レ ジ ス タ で指定 さ れた ア ド レ ス か ら の読み出 し コ マ ン ド を送信 し ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 166 第 11 章 : マルチ ブー ト および リ コ ン フ ィ ギ ュ レーシ ョ ン ウ ォ ッ チ ド ッ グ タ イ マー ウ ォ ッ チ ド ッ グ タ イ マーには 2 つのモー ド ( コ ン フ ィ ギ ュ レーシ ョ ン モニ タ ー と ユーザー ロ ジ ッ ク モニ タ ー ) があ り 、 ど ち ら か一方を排他的に し か使用で き ません。 よ く 使用 さ れ る のは コ ン フ ィ ギ ュ レーシ ョ ン モニ タ ー モー ド で、 ウ ォ ッ チ ド ッ グ タ イ マーが タ イ ム ア ウ ト にな る と コ ン フ ィ ギ ュ レ ーシ ョ ン ロ ジ ッ ク が フ ォ ールバ ッ ク ビ ッ ト ス ト リ ーム を読み込みます。 コ ン フ ィ ギ ュ レーシ ョ ン ソ ース が無効、 ま たは一部破損 し てい る な ど の理由で コ ン フ ィ ギ ュ レ ーシ ョ ン が開始 さ れない、 ま たは正 し く 開始 さ れて も 完了 し ない場合、 十分な遅延を経た後デバ イ ス は ウ ォ ッ チ ド ッ グ タ イ マーに よ っ て コ ン フ ィ ギ ュ レーシ ョ ンが自動的に再試行 さ れます。 詳細は、 「フ ォールバ ッ ク マルチブー ト 」 を参照 し て く だ さ い。 コ ン フ ィ ギ ュ レーシ ョ ン モニ タ ー モー ド では、 TIMER レ ジ ス タ はビ ッ ト ス ト リ ーム ジ ェ ネ レー タ ーを使用 し て BIT フ ァ イ ルで設定 し ま す。 こ の タ イ マーの値は、 ビ ッ ト ス ト リ ーム ( こ こ で タ イ マーの値を設定) の コ ン フ ィ ギ ュ レー シ ョ ン、 お よ び IPROG コ マ ン ド で開始 さ れ る その後のすべての読み込みで使用 さ れます。 TIMER レ ジ ス タ はすべて の BIT フ ァ イ ルで設定す る 必要があ り ます。 TIMER レ ジ ス タ はビ ッ ト ス ト リ ームの先頭か ら カ ウ ン ト ダ ウ ン を開始 し 、 ス タ ー ト ア ッ プ シーケ ン ス が完了す る と 無効にな り ます。 カ ウ ン ト 値が 0 にな る と 、 フ ォールバ ッ ク が開始 し ます。 ス タ ー ト ア ッ プ シーケ ン ス は MMCM の ロ ッ ク ま た は DCI の一致 ま で開始 を 遅 ら せ る よ う に設定で き る た め、 こ れ ら の遅延 を 想定す る 必要が あ り ま す。 TIMER レ ジ ス タ の動作周波数は CCLK です。 ウ ォ ッ チ ド ッ グ タ イ マーは、 ビ ッ ト ス ト リ ーム で有効にす る 方法 と 、 任意の コ ン フ ィ ギ ュ レ ーシ ョ ン ポー ト か ら TIMER レ ジ ス タ に書 き 込みを実行 し て有効にす る 方法があ り ます。 フ ォールバ ッ ク リ コ ン フ ィ ギ ュ レーシ ョ ン中 と その完了後は、 ウ ォ ッ チ ド ッ グ タ イ マーは無効です。 フ ォールバ ッ ク リ コ ン フ ィ ギ ュ レーシ ョ ン が成功 し た後に開 始 さ れ る IPROG リ コ ン フ ィ ギ ュ レーシ ョ ンが正 し く 完了する と 、 ウ ォ ッ チ ド ッ グ タ イ マーは再び有効にな り ます。 ユーザー ロ ジ ッ ク モニ タ ー モー ド の場合、 ウ ォ ッ チ ド ッ グ タ イ マーは専用の内部 ク ロ ッ ク CFGMCLK を使用 し ま す。 こ の ク ロ ッ ク の公称周波数は 50MHz です。 ク ロ ッ ク は、 256 分周 し て供給 さ れ る ため、 ウ ォ ッ チ ド ッ グ タ イ マー の ク ロ ッ ク 周期は約 5,120ns と な り ます。ウ ォ ッ チ ド ッ グ カ ウ ン タ ーは 30 ビ ッ ト 幅のため、タ イ マーを最大で約 5,500 秒ま でカ ウ ン ト で き ます。 こ の時間値はビ ッ ト ス ト リ ーム オプシ ョ ンで設定で き ます。 FPGA の EOS (End of Start-Up) ウ ォ ッ チ ド ッ グ タ イ マーを使用 し て ビ ッ ト ス ト リ ーム コ ン フ ィ ギ ュ レーシ ョ ン を監視す る には、 ビ ッ ト ス ト リ ーム プ ロ パテ ィ BITSTREAM.CONFIG.TIMER_CFG を設定す る か、 も し く はビ ッ ト ス ト リ ーム で TIMER レ ジ ス タ に書 き 込 み を 実行 す る 際 に TIMER_CFG_MON を 1 に 設定 し 、 TIMER_VALUE に 目的 の 値 を 設定 し て く だ さ い。 TIMER_VALUE には、ス タ ー ト ア ッ プが完了す る ま での FPGA コ ン フ ィ ギ ュ レーシ ョ ン全体の時間を十分にカバーで き る 値を指定す る 必要があ り ます。 ス タ ー ト ア ッ プでの待機時間 (DCI の一致、 MMCM の ロ ッ ク 、 DONE) も 含め る よ う 注意 し て く だ さ い。 ウ ォ ッ チ ド ッ グ タ イ マーが有効にな る と 、 カ ウ ン ト ダ ウ ン が開始 し ます。 タ イ マーが 0 にな っ て も FPGA が ス タ ー ト ア ッ プの最終状態に達 し ていない場合、 ウ ォ ッ チ ド ッ グ タ イ ム ア ウ ト エ ラ ーが発生 し て フ ォールバ ッ ク コ ン フ ィ ギ ュ レーシ ョ ンが開始 し ます。 ユーザー モニ タ ー モー ド ウ ォ ッ チ ド ッ グ タ イ マ ー を 使用 し て ユ ー ザ ー ロ ジ ッ ク を 監視す る に は、 ビ ッ ト ス ト リ ー ム プ ロ パ テ ィ BITSTREAM.CONFIG.TIMER_USR を設定す る か、も し く はビ ッ ト ス ト リ ーム で TIMER レ ジ ス タ に書 き 込みを実行す る 際に TIMER_USR_MON を 1 に設定 し 、 TIMER_VALUE に目的の値を設定 し て く だ さ い。 タ イ ム ア ウ ト が発生 し な い よ う にす る ため、LTIMER コ マ ン ド を実行する か、ま たは TIMER レ ジ ス タ に直接ア ク セ ス し て定期的にカ ウ ン タ ー を リ セ ッ ト す る 必要があ り ます。 ウ ォ ッ チ ド ッ グは、 デバ イ ス のシ ャ ッ ト ダ ウ ン、 ま たは電源の切断 (シ ャ ッ ト ダ ウ ン を含む) 時に自動的に無効 と な り ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 167 第 11 章 : マルチ ブー ト および リ コ ン フ ィ ギ ュ レーシ ョ ン 表 11-1 に、LTIMER コ マ ン ド を使用 し て ウ ォ ッ チ ド ッ グ タ イ マーのカ ウ ン タ ーを リ セ ッ ト す る 場合の ビ ッ ト ス ト リ ー ム例を示 し ます。 表 11-1 : LTIMER を使用 し てウ ォ ッ チ ド ッ グ タ イ マーのカ ウン タ ーを リ セ ッ ト する場合のビ ッ ト ス ト リ ーム例 コ ン フ ィ ギ ュ レーシ ョ ン デー タ (16 進数) 説明 FFFFFFFF ダ ミ ー ワー ド AA995566 同期 ワー ド 20000000 タ イ プ 1 NOOP 30008001 タ イ プ 1、 CMD に 1 ワ ー ド 書き 込み 00000000 NULL 20000000 タ イ プ 1 NOOP 30008001 タ イ プ 1、 CMD に 1 ワ ー ド 書き 込み 00000011 LTIMER コ マ ン ド 20000000 タ イ プ 1 NOOP 30008001 タ イ プ 1、 CMD に 1 ワ ー ド 書き 込み 0000000D DESYNC 20000000 タ イ プ 1 NOOP 表 11-2 に、 TIMER レ ジ ス タ に直接ア ク セ スする 場合のビ ッ ト ス ト リ ーム例を示 し ます。 表 11-2 : TIMER レ ジ ス タ に直接ア ク セスする場合のビ ッ ト ス ト リ ーム例 コ ン フ ィ ギ ュ レーシ ョ ン デー タ (16 進数) 説明 FFFFFFFF ダ ミ ー ワー ド AA995566 同期 ワ ー ド 20000000 タ イ プ 1 NOOP 30022001 タ イ プ 1、 TIMER に 1 ワー ド 書 き 込み xxxxxxxx TIMER 値 20000000 タ イ プ 1 NOOP 30008001 タ イ プ 1、 CMD に 1 ワー ド 書 き 込み 0000000D DESYNC 20000000 タ イ プ 1 NOOP RS ピ ン 多目的 RS ピ ンはデフ ォ ル ト では無効です。 マ ス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド では、 フ ォールバ ッ ク 中に Low に駆動 し ま す。 マルチブー ト イ メ ージ を最初に読み込むシ ス テ ム では、 RS ピ ン を フ ラ ッ シ ュ の上位ア ド レ ス ビ ッ ト に接続 し 、 プルア ッ プ抵抗ま たはプルダ ウ ン抵抗で High ま たは Low に固定 し ます。 電源投入時、 シ ス テ ムは RS のプルア ッ プ抵抗お よ びア ド レ ス ラ イ ンの接続に よ っ て定義 さ れた上位ア ド レ ス空間か ら ブー ト し ます。 フ ォー ルバ ッ ク 時には、RS ピ ンが Low 駆動 し て ア ド レ ス 0 か ら ブー ト し ます。RS ピ ンはシ ス テ ム で定義 し た上位ア ド レ ス に接続 し 、 完全な BIT フ ァ イ ルを各 メ モ リ セグ メ ン ト に格納で き る よ う に し て く だ さ い。 RS ピ ン を フ ラ ッ シ ュ の上位ア ド レ ス ピ ンに接続す る と 、 最大 4 つの イ メ ージ を容易に選択で き ます。 RS ピ ン を一定 の値に固定 し て フ ラ ッ シ ュ を 4 つに分割 し た う ちの 1 つを選択で き る よ う に し てい る ため、 こ の機能を基本的な BPI 非同期読み出 し で使用す る 場合は、 ビ ッ ト ス ト リ ーム サ イ ズ を フ ラ ッ シ ュ の容量の 1/4 以下 と す る 必要があ り ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 168 第 11 章 : マルチ ブー ト および リ コ ン フ ィ ギ ュ レーシ ョ ン IPROG リ コ ン フ ィ ギ ュ レーシ ョ ン 内部 PROGRAM_B (INTERNAL_PROG ま たは IPROG) コ マ ン ド は、専用 リ コ ン フ ィ ギ ュ レーシ ョ ン ロ ジ ッ ク を リ セ ッ ト し ない点を除 き 、 PROGRAM_B ピ ンのパルス と 同様の機能があ り ます。 SPI ま たは BPI リ コ ン フ ィ ギ ュ レーシ ョ ン 中は、 デフ ォ ル ト のア ド レ ス ではな く 、 WBSTAR (第 9 章の 「ウ ォーム ブー ト 開始ア ド レ ス レ ジ ス タ (10000)」 参照) で設定 し た開始ア ド レ ス が使用 さ れます。 デフ ォ ル ト は 0 です。 IPROG コ マ ン ド は、 ICAP ま たはビ ッ ト ス ト リ ーム を 使用 し て送信で き ま す。 こ れ ら 2 つの手順につい て は、 「ICAP を 使用 し た IPROG」 と 「ビ ッ ト ス ト リ ー ム への IPROG の埋め込み」 でそれぞれ説明 し ます。 ICAP イ ン タ ーフ ェ イ ス は SelectMAP イ ン タ ーフ ェ イ ス と 類似 し てい る ため、 入力 コ ン フ ィ ギ ュ レーシ ョ ン バ ス にビ ッ ト ス ワ ッ プが必要です (120 ページの 「パ ラ レル バ ス のビ ッ ト 順」 参 照)。 ICAPE3 についての詳細は、 『UltraScale Architecture ラ イ ブ ラ リ ガ イ ド 』 (UG974) [参照 13] を参照 し て く だ さ い。 ICAP を使用 し た IPROG IPROG コ マ ン ド は、 ICAPE3 プ リ ミ テ ィ ブ を使用 し て ICAP 経由で送信で き ます。 コ ン フ ィ ギ ュ レーシ ョ ンが正 し く 完了 し た ら 、 ユーザー デザ イ ン で次のビ ッ ト ス ト リ ームの開始ア ド レ ス が判断 さ れ、 WBSTAR レ ジ ス タ の設定後に ICAP を使用 し て IPROG コ マ ン ド を送信 し ます。 コ マ ン ド シーケ ン ス は次の と お り です。 1. 同期ワー ド を送信す る 2. WBSTAR レ ジ ス タ に、 次のビ ッ ト ス ト リ ーム開始ア ド レ ス をプ ロ グ ラ ムす る (第 9 章の 「 ウ ォーム ブー ト 開始ア ド レ ス レ ジ ス タ (10000)」 参照) 3. IPROG コ マ ン ド を送信す る 表 11-3 に、 ICAP を使用 し た IPROG コ マ ン ド の ビ ッ ト ス ト リ ーム例を示 し ます。 表 11-3 : ICAP を使用 し た IPROG のビ ッ ト ス ト リ ーム例 コ ン フ ィ ギ ュ レーシ ョ ン デー タ (16 進数)(1) 説明 FFFFFFFF ダ ミ ー ワー ド AA995566 同期 ワー ド 20000000 タ イ プ 1 NOOP 30020001 タ イ プ 1、 WBSTAR に 1 ワー ド 書 き 込み 00000000 ウ ォーム ブー ト 開始ア ド レ ス (目的のア ド レ ス を読み込む) 30008001 タ イ プ 1、 CMD に 1 ワー ド 書 き 込み 0000000F IPROG コ マ ン ド 20000000 タ イ プ 1 NOOP 注記 : 1. 120 ページの 「パ ラ レル バ ス の ビ ッ ト 順」 を参照 し て く だ さ い。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 169 第 11 章 : マルチ ブー ト および リ コ ン フ ィ ギ ュ レーシ ョ ン コ ン フ ィ ギ ュ レーシ ョ ン ロ ジ ッ ク が IPROG コ マ ン ド を受信す る と 、 FPGA で専用 リ コ ン フ ィ ギ ュ レーシ ョ ン ロ ジ ッ ク を除 く すべてが リ セ ッ ト さ れ、 INIT_B お よ び DONE ピ ンが Low にな り ます。 FPGA ですべての コ ン フ ィ ギ ュ レー シ ョ ン メ モ リ が ク リ ア さ れ る と 、 INIT_B は再び High にな り ます。 次に、 WBSTAR の値が ビ ッ ト ス ト リ ーム の開始 ア ド レ ス と し て使用 さ れます。 WBSTAR で制御 さ れ る ピ ンは、 コ ン フ ィ ギ ュ レーシ ョ ン モー ド に よ っ て決定 し ます。 表 11-4 を参照 し て く だ さ い。 表 11-4 : 各 コ ン フ ィ ギ ュ レーシ ョ ン モー ド で WBSTAR によ っ て制御 さ れる ピ ン コ ン フ ィ ギ ュ レーシ ョ ン モー ド WBSTAR で制御 さ れる ピ ン マ ス タ ー SPI START_ADDR が フ ラ ッ シ ュ デバ イ ス にシ リ アルに送信 さ れ る マ ス タ ー BPI RS[1:0]、 A[28:00] RS[1:0] は、 BPI モー ド で WBSTAR に よ っ てのみ制御可能です。 START_ADDR フ ィ ール ド は、 BPI お よ び SPI モー ド でのみ コ ン フ ィ ギ ュ レーシ ョ ンに影響を与え ます。 X-Ref Target - Figure 11-3 VCCO 2.4 kΩ FPGA RS[1:0] FWE_B FOE_B FCS_B A[26:00] D[15:00] RS[1:0] ADDR[28:27] WE_B OE_B CS_B ADDR[26:0] DATA[15:0] RS[1:0] RS[1] 1’ b1 RS[0] 1’ b1 FPGA Actively Drives 2’b11 2.4 kΩ Parallel Flash UG570_c11_03_080615 図 11-3 : BPI モー ド での IPROG 図 11-3 について説明 し ます。 1. CCLK、 FCS_B、 D[03:00] ピ ン以外の BPI ピ ンはすべて多目的 I/O です。 コ ン フ ィ ギ ュ レーシ ョ ンが完了す る と (DONE ピ ン が High にな る )、 こ れ ら の ピ ンはユーザー I/O と な り 、 ユーザー ロ ジ ッ ク で制御す る こ と で フ ラ ッ シ ュ にア ク セ ス し 、 ユーザー デー タ の格納やプ ロ グ ラ ムが可能にな り ます。 2. こ の例では、 RS[1:0] は 2'b11 に設定 さ れてい ます。 IPROG リ コ ン フ ィ ギ ュ レーシ ョ ン中、 RS[1:0] ピ ンは外部 プルア ッ プお よ びプルダ ウ ン抵抗 よ り も 優先 さ れます。RS[1:0] の値は、BITSTREAM.CONFIG.REVISIONSELECT を使用 し て WBSTAR レ ジ ス タ で任意の値を指定で き ます。 ビ ッ ト ス ト リ ームへの IPROG の埋め込み WBSTAR お よ び IPROG コ マ ン ド は、 ビ ッ ト ス ト リ ーム内に埋め込む こ と がで き ます。 ゴールデン ビ ッ ト ス ト リ ーム はア ド レ ス 0 に格納 さ れます (BPI ま たは SPI モー ド の場合)。 その後、 こ の最初のビ ッ ト ス ト リ ーム内の WBSTAR お よ び IPROG コ マ ン ド を修正す る こ と に よ り 、 新 し いアプ リ ケーシ ョ ンの ビ ッ ト ス ト リ ーム を フ ラ ッ シ ュ に追加で き ます。 FPGA は、 こ の新 し いビ ッ ト ス ト リ ーム を直接読み込みます。 新 し いビ ッ ト ス ト リ ーム での コ ン フ ィ ギ ュ レー シ ョ ンが正常終了 し なか っ た場合は、 フ ォールバ ッ ク 機能に よ り 最初のビ ッ ト ス ト リ ーム で コ ン フ ィ ギ ュ レーシ ョ ン が行われます ( 「フ ォールバ ッ ク マルチブー ト 」 参照)。 FPGA のすべてのビ ッ ト ス ト リ ームにおいて、 ザ イ リ ン ク ス ツールは WBSTAR に対 し た空の書 き 込みお よ び IPROG コ マ ン ド 用のプ レ ー ス ホルダー を挿入 し ま す。 た と えば、 WBSTAR を ユーザー定義の開始ア ド レ ス に変更す る こ と も で き ます (第 9 章の 「ウ ォ ーム ブー ト 開始ア ド レ ス レ ジ ス タ (10000)」 参照)。 WBSTAR 後の NULL コ マ ン ド は、 下位 4 ビ ッ ト を 1111 と す る こ と に よ り 、 IPROG に変更で き ます (第 9 章の 「 コ マ ン ド レ ジ ス タ (00100)」 参照)。 図 11-4 に、 こ の よ う な使用モデルを示 し ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 170 第 11 章 : マルチ ブー ト および リ コ ン フ ィ ギ ュ レーシ ョ ン X-Ref Target - Figure 11-4 Dummy Sync Word WBSTAR = A1 First Bitstream IPROG Command ... ... FPGA Address = A1 Dummy Sync Word WBSTAR = 0 Final Bitstream NULL Command ... ... UG570_c11_04_012714 図 11-4 : ビ ッ ト ス ト リ ームへの PROG の埋め込み フ ォ ールバ ッ ク および IPROG リ コ ン フ ィ ギ ュ レー シ ョ ンに関連する ス テー タ ス レ ジ ス タ UltraScale アーキ テ ク チ ャ FPGA には、 コ ン フ ィ ギ ュ レーシ ョ ン履歴を格納す る BOOTSTS レ ジ ス タ があ り ます。 こ の レ ジ ス タ は、 2 段 FIFO の よ う に動作 し ます。 最新の コ ン フ ィ ギ ュ レーシ ョ ン ス テー タ ス を Status_0 に格納す る と 、 Status_0 の現在の値が Status_1 にシ フ ト し ます。 Valid_0 ビ ッ ト は、 Status_0 のほかのビ ッ ト が有効であ る か ど う か を 示 し ます。 第 9 章の 「ブー ト 履歴ス テー タ ス レ ジ ス タ (10110)」 を参照 し て く だ さ い。 表 11-5、 表 11-6、 表 11-7 に、 一般的な状況での BOOTSTS レ ジ ス タ の値を示 し ます。 表 11-5 : 最初のビ ッ ト ス ト リ ームの コ ン フ ィ ギ ュ レーシ ョ ン後のス テー タ ス (エ ラ ーな し ) Reserved WRAP_ERROR CRC_ERROR ID_ERROR WTO_ERROR IPROG FALLBACK VALID Status_1 0 0 0 0 0 0 0 0 Status_0 0 0 0 0 0 0 0 1 表 11-6 : 最初の コ ン フ ィ ギ ュ レーシ ョ ンの後に IPROG が発生 Reserved WRAP_ERROR CRC_ERROR ID_ERROR WTO_ERROR IPROG FALLBACK VALID Status_1 0 0 0 0 0 0 0 1 Status_0 0 0 0 0 0 1 0 1 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 171 第 11 章 : マルチ ブー ト および リ コ ン フ ィ ギ ュ レーシ ョ ン 表 11-7 : 最初のビ ッ ト ス ト リ ームに IPROG を埋め込み、 2 番目のビ ッ ト ス ト リ ームで CRC エ ラ ーが発生、 フ ォ ールバ ッ ク に成 功 し た場合 Reserved WRAP_ERROR CRC_ERROR ID_ERROR WTO_ERROR IPROG FALLBACK VALID Status_1 0 0 1 0 0 1 0 1 Status_0 0 0 0 0 0 1 1 1 表 11-7 について説明 し ます。 1. Status_1 は、 IPROG が実行 さ れ、 そのビ ッ ト ス ト リ ームで CRC_ERROR が検出 さ れた こ と を示 し てい ます。 2. Status_0 は、 フ ォールバ ッ ク ビ ッ ト ス ト リ ームが問題な く 読み込まれた こ と を示 し てい ます。 こ の場合、 フ ォー ルバ ッ ク ビ ッ ト ス ト リ ー ム に IPROG コ マ ン ド が含 ま れ て い る た め、 IPROG ビ ッ ト も セ ッ ト さ れ て い ま す。 フ ォ ールバ ッ ク 実行時は IPROG コ マ ン ド は無視 さ れ ますが、 ビ ッ ト ス ト リ ームに コ マ ン ド が含ま れていた こ と が履歴に記録 さ れます。 フ ァ ン ク シ ョ ン ブ ロ ッ クのダ イ ナ ミ ッ ク リ コ ン フ ィ ギ ュ レーシ ョ ン コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ の主な用途は、 ユーザー ロ ジ ッ ク 、 コ ネ ク テ ィ ビ テ ィ 、 お よ び I/O の イ ン プ リ メ ン ト ですが、 それ以外の用途に使用 さ れ る 場合 も あ り ます。 た と えば、 コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ を使用 し 、 CMT ( ク ロ ッ ク マネージ メ ン ト タ イ ル) な ど の フ ァ ン ク シ ョ ン ブ ロ ッ ク に対す る さ ま ざ ま な固定条件を指定 し ます。 アプ リ ケーシ ョ ンに よ っ ては、 フ ァ ン ク シ ョ ン ブ ロ ッ ク の動作中に、 こ れ ら の条件の変更が必要 と な り ます。 こ の よ う な変更は、 JTAG、 ICAP、 SelectMAP ポー ト を使用す る パーシ ャ ル リ コ ン フ ィ ギ ュ レーシ ョ ン に よ っ て可能です。 し か し 、 数多 く の フ ァ ン ク シ ョ ン ブ ロ ッ ク には こ の変更プ ロ セ ス を簡単にす る ダ イ ナ ミ ッ ク リ コ ン フ ィ ギ ュ レ ー シ ョ ン ポー ト (DRP) が用意 さ れてい ま す。 DRP は、 CMT、 シ ス テ ム モニ タ ー、 シ リ アル ト ラ ン シーバー、 お よ び Integrated Block for PCI Express に備わ っ てい ます。 こ れ ら ダ イ ナ ミ ッ ク リ コ ン フ ィ ギ ュ レーシ ョ ン ポー ト の詳細は、 各ブ ロ ッ ク のユーザー ガ イ ド を参照 し て く だ さ い。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 172 第 12 章 複数 FPGA の コ ン フ ィ ギ ュ レーシ ョ ン は じ めに 複数の FPGA が必要な アプ リ ケーシ ョ ン では、 1 つの コ ン フ ィ ギ ュ レーシ ョ ン ソ ー ス か ら すべてのデバ イ ス を コ ン フ ィ ギ ュ レーシ ョ ン で き ます。 同 じ コ ン フ ィ ギ ュ レーシ ョ ン フ ァ イ ルを使用す る FPGA は、 ま と めて同時に読み込 む こ と がで き ます。 個別の コ ン フ ィ ギ ュ レーシ ョ ン フ ァ イ ルを使用す る FPGA は、 デ イ ジー チ ェ ーンの FPGA 内蔵 ロ ジ ッ ク ま たは外部 ロ ジ ッ ク を使用 し て順次読み込む こ と がで き ます。 こ の章では、 次について説明 し ます。 • • 「シ リ アル コ ン フ ィ ギ ュ レーシ ョ ン モー ド 」 ° 「シ リ アル デ イ ジー チ ェーン コ ン フ ィ ギ ュ レーシ ョ ン」 ° 「ギ ャ ン グ シ リ アル コ ン フ ィ ギ ュ レーシ ョ ン」 「パ ラ レル コ ン フ ィ ギ ュ レーシ ョ ン モー ド 」 ° 「複数デバ イ ス の SelectMAP コ ン フ ィ ギ ュ レーシ ョ ン」 ° 「パ ラ レル デ イ ジー チ ェーン コ ン フ ィ ギ ュ レーシ ョ ン」 ° 「ギ ャ ン グ SelectMAP コ ン フ ィ ギ ュ レーシ ョ ン」 注記 : UltraScale デバ イ ス を含むデ イ ジー チ ェーンは、 Vivado ツールがサポー ト す る 7 シ リ ーズ以降のデバ イ ス での み構成す る 必要があ り ます。 シ リ アル コ ン フ ィ ギ ュ レーシ ョ ン モー ド シ リ アル コ ン フ ィ ギ ュ レーシ ョ ン モー ド には、 シ リ アル デ イ ジー チ ェーン、混在シ リ アル デ イ ジー チ ェーン、 ギ ャ ン グ シ リ アルの各モー ド があ り ます。 シ リ アル デ イ ジー チ ェ ーン コ ン フ ィ ギ ュ レーシ ョ ン 複数の FPGA を シ リ アル デ イ ジー チ ェ ーン接続する と 、1 つの コ ン フ ィ ギ ュ レーシ ョ ン ソ ース か ら コ ン フ ィ ギ ュ レー シ ョ ンす る こ と が可能にな り ます。 シ リ アル デ イ ジー チ ェ ーンでは、 デバ イ ス は DIN ピ ン で コ ン フ ィ ギ ュ レーシ ョ ン デー タ を取得 し 、DOUT ピ ンか ら 取得 し た コ ン フ ィ ギ ュ レーシ ョ ン デー タ を下位デバ イ スへ伝搬 し ます。コ ン フ ィ ギ ュ レーシ ョ ン デー タ ソ ース に最 も 近いデバ イ ス を最上位デバ イ ス、 ソ ース か ら 最 も 遠いデバ イ ス を最下位デバ イ ス と 呼びます。 通常、 シ リ アル デ イ ジー チ ェーンでは SPI モー ド の最上位デバ イ ス か ら コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク が供給 さ れます。 その他のデバ イ ス はすべて ス レーブ シ リ アル モー ド に設定 し ます。 図 12-1 に、 こ の コ ン フ ィ ギ ュ レーシ ョ ン を示 し ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 173 第 12 章 : 複数 FPGA のコ ン フ ィ ギ ュ レーシ ョ ン X-Ref Target - Figure 12-1 M0 Flash M0 M1 M1 M2 M2 D D00_MOSI DOUT DIN C CCLK CCLK Master SPI DOUT Slave Serial (1) PROGRAM_B DONE 4.7 kΩ INIT_B (2) 4.7 kΩ PROGRAM_B DONE PROGRAM_B INIT_B UG570_c12_01_081815 図 12-1 : マス タ ー /ス レーブ シ リ アル モー ド のデ イ ジー チ ェ ーン コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ー フ ェ イ スの例 図 12-1 について説明 し ます。 1. DONE ピ ンは、 デフ ォ ル ト ではオープン ド レ イ ン出力です。 DONE 信号の詳細は、 24 ページの表 1-9 を参照 し て く だ さ い。 2. INIT_B ピ ンは双方向オープン ド レ イ ン ピ ンで、 外部プルア ッ プ抵抗が必要です。 3. マ ス タ ー SPI 接続の詳細図は、 40 ページの図 2-2 を参照 し て く だ さ い。 4. こ の コ ン フ ィ ギ ュ レーシ ョ ンでは、 フ ォールバ ッ ク マルチブー ト はサポー ト さ れません。 シ リ アル デ イ ジー チ ェーンの先頭のデバ イ ス が最後に コ ン フ ィ ギ ュ レーシ ョ ン さ れます。 CRC チ ェ ッ ク では、 現在 作業中のデバ イ ス のデー タ のみがチ ェ ッ ク さ れ、 チ ェ ーンのほかのデバ イ ス はチ ェ ッ ク さ れ ません (第 9 章の 「CRC (Cyclic Redundancy Check) (手順 7)」 参照)。 チ ェーンの最後のデバ イ ス が コ ン フ ィ ギ ュ レーシ ョ ン を完了 し 、CRC チ ェ ッ ク を ク リ アする と 、ス タ ー ト ア ッ プ シー ケ ン ス が開始 さ れます。 ス タ ー ト ア ッ プ シーケ ン ス の DONE ピ ンの リ リ ース段階で、 チ ェ ーンの最後か ら 1 つ前の デバ イ ス の コ ン フ ィ ギ ュ レーシ ョ ン中に、 デバ イ ス が DONE ピ ン をハ イ イ ン ピーダ ン ス に し ます。 すべてのデバ イ ス がそれぞれの DONE ピ ン を リ リ ー ス す る と 、 共通の DONE 信号が外部で High にな り ま す。 すべてのデバ イ ス は CCLK の次の立ち上が り エ ッ ジで DONE ピ ンの リ リ ース を停止 し 、 ス タ ー ト ア ッ プ シーケ ン ス を完了 し ます。 こ の と き 、 ス レーブ シ リ アル デ イ ジー チ ェ ーンのすべての DONE ピ ンが接続 さ れてい る 必要があ り ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 174 第 12 章 : 複数 FPGA のコ ン フ ィ ギ ュ レーシ ョ ン 混在シ リ アル デ イ ジー チ ェ ーン 1 つのデ イ ジー チ ェ ーンに、 UltraScale™ FPGA と 以前の 7 シ リ ーズ フ ァ ミ リ を混在 さ せ る こ と がで き ます。 デバ イ ス が混在 し た シ リ アル デ イ ジー チ ェーン接続では、 次の 4 つの点に注意す る 必要があ り ます。 • デ イ ジー チ ェ ーン接続 し てい る すべてのデバ イ ス で使用で き る CCLK 周波数を選択 し て く だ さ い。 • UltraScale アーキ テ ク チ ャ FPGA は常に、 シ リ アル デ イ ジー チ ェ ーンの最初に配置 し 、 7 シ リ ーズ デバ イ ス は チ ェーンの最後に配置 し て く だ さ い。 • すべての UltraScale アーキ テ ク チ ャ FPGA には、 同 じ ビ ッ ト ス ト リ ーム オプシ ョ ンがあ り ます。 UltraScale アー キ テ ク チ ャ FPGA のビ ッ ト ス ト リ ーム オプシ ョ ンのガ イ ド ラ イ ンは、 可能であれば、 シ リ アル デ イ ジー チ ェー ン接続 さ れたすべてのデバ イ ス に適用す る 必要があ り ます。 • デバ イ ス が、DOUT ピ ン を通過 さ せ る こ と がで き る コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト 数には制限があ り 、UltraScale アーキ テ ク チ ャ FPGA お よ び 7 シ リ ーズ FPGA の制限は、 4,294,967,264 ビ ッ ト です。 下位デバ イ スすべてのビ ッ ト ス ト リ ーム長の合計は、 こ の制限値を超え ない よ う に し て く だ さ い。 シ リ アル デ イ ジー チ ェ ーンのガ イ ド ラ イ ンおよびデザイ ンの考慮事項 シ リ アル デ イ ジー チ ェーンには、 い く つ も の考慮事項があ り ます。 • ス タ ー ト ア ッ プ シーケ ン ス (GTS) GTS の リ リ ー ス は、 DONE のサ イ ク ル よ り 前ま たは同 じ サ イ ク ルで行い、 すべての DONE ピ ンが リ リ ース さ れ た と き にデバ イ ス が確実に動作を開始で き る よ う に し ます。 • すべての DONE ピ ン を接続す る すべてのデバ イ ス の DONE ピ ン を シ リ アル デ イ ジー チ ェーン接続す る 必要があ り ます。 DONE ピ ン を正 し く 接 続 し なければ、 コ ン フ ィ ギ ュ レーシ ョ ンが正常に完了 し ない可能性があ り ます。 デバ ッ グ を目的 と し て、 共有 し てい る DONE 信号か ら DONE ピ ン を個別に未接続にす る と 非常に便利です。 デバ ッ グ後には、 切 り 離 さ れたデ バ イ ス は、 シ リ アルま たは JTAG イ ン タ ーフ ェ イ ス を使用 し て個別に コ ン フ ィ ギ ュ レーシ ョ ン可能です。 • DONE ピ ンの立ち上が り 時間 1. すべての DONE ピ ンの リ リ ース後、 DONE ピ ンは CCLK の 1 サ イ ク ルで ロ ジ ッ ク 0 か ら ロ ジ ッ ク 1 に立ち上が る 必要があ り ます。 DONE 信号の詳細は、 24 ページの表 1-9 を参照 し て く だ さ い。 DONE 信号が立ち上が る ため に追加時間を要す る 場合は、 シ リ アル デ イ ジー チ ェーンのすべてのデバ イ ス に donepipe オプシ ョ ン を設定 し て く だ さ い。 ギ ャ ング シ リ アル コ ン フ ィ ギ ュ レーシ ョ ン ギ ャ ン グ シ リ アル コ ン フ ィ ギ ュ レーシ ョ ン を使用す る と 、 同 じ ビ ッ ト ス ト リ ームか ら 複数のデバ イ ス を同時に コ ン フ ィ ギ ュ レーシ ョ ン で き ます (図 12-2)。 こ の構成では、 シ リ アル コ ン フ ィ ギ ュ レーシ ョ ン ピ ン を図の よ う に結束す る ため、 各デバ イ ス におけ る 信号遷移が同一にな り ま す。 通常、 1 つのデバ イ ス を マ ス タ ー SPI モー ド に設定 し て CCLK を駆動 し 、 その他のデバ イ ス を ス レーブ シ リ アル モー ド に設定 し ます。 ギ ャ ン グ シ リ アル コ ン フ ィ ギ ュ レー シ ョ ンの場合、 すべてのデバ イ ス が同一でなければな り ません。 図 12-2 に示す よ う に、 コ ン フ ィ ギ ュ レーシ ョ ン を外部の コ ン フ ィ ギ ュ レーシ ョ ン コ ン ト ロ ー ラ ーで駆動 し 、 フ ラ ッ シ ュ やほかの メ モ リ か ら ビ ッ ト ス ト リ ーム を読み出す こ と も で き ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 175 第 12 章 : 複数 FPGA のコ ン フ ィ ギ ュ レーシ ョ ン X-Ref Target - Figure 12-2 M0 M1 Processor M2 DIN DATA CLK DOUT CCLK DONE FPGA Slave Serial INIT_B PROGRAM_B DONE PROGRAM_B INIT_B M0 M1 M2 DIN DOUT CCLK FPGA Slave Serial PROGRAM_B DONE INIT_B UG570_c12_02_020515 図 12-2 : ギ ャ ング シ リ アル コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ー フ ェ イ スの例 図 12-2 について説明 し ます。 1. DONE ピ ンは、 デフ ォ ル ト ではオープン ド レ イ ン出力です。 DONE 信号の詳細は、 24 ページの表 1-9 を参照 し て く だ さ い。 2. INIT_B ピ ンは双方向オープン ド レ イ ン ピ ンで、 外部プルア ッ プ抵抗が必要です。 3. すべてのデバ イ ス が同一 (IDCODE が同 じ ) であ り 、 1 つのビ ッ ト ス ト リ ーム を使用 し て コ ン フ ィ ギ ュ レーシ ョ ン す る 必要があ り ます。 4. ス レーブ シ リ アル接続の詳細図は、 50 ページの図 3-2 を参照 し て く だ さ い。 ギ ャ ン グ シ リ アル コ ン フ ィ ギ ュ レーシ ョ ンには、 い く つかの考慮事項があ り ます。 • ス タ ー ト ア ッ プ シーケ ン ス (GTS) GTS の リ リ ー ス は、 DONE ピ ンのサ イ ク ル よ り 前ま たは同一サ イ ク ルで行い、 すべての DONE ピ ンが リ リ ース さ れた と き にすべてのデバ イ ス が確実に動作開始で き る よ う に し ます。 • マ ス タ ー デバ イ ス を使用す る 場合、 すべての DONE ピ ン を接続する FPGA の 1 つを マ ス タ ー デバ イ ス と し て使用す る 場合は、 ギ ャ ン グ シ リ アル コ ン フ ィ ギ ュ レーシ ョ ンのすべて のデバ イ ス の DONE ピ ン を接続す る 必要があ り ます。DONE ピ ン を接続 し なければ、個々のデバ イ ス の コ ン フ ィ ギ ュ レーシ ョ ンが正常に完了 し ない可能性があ り ます。 すべてのデバ イ ス を ス レーブ シ リ アル モー ド に設定 し た場合、 すべての DONE ピ ンが High にな る ま で外部の CCLK ソ ース が ト グルを継続 し ていれば、 DONE ピ ン を 未接続にで き ます。 デバ ッ グ目的の場合、 共通の DONE 信号か ら DONE ピ ン を個別に未接続にす る と 非常に便利です。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 176 第 12 章 : 複数 FPGA のコ ン フ ィ ギ ュ レーシ ョ ン • DONE ピ ンの立ち上が り 時間 すべての DONE ピ ンの リ リ ース後、 DONE ピ ンは CCLK の 1 サ イ ク ルで ロ ジ ッ ク 0 か ら ロ ジ ッ ク 1 に立ち上が る 必要があ り ます。 DONE 信号が立ち上が る ために追加時間を要す る 場合は、 シ リ アル デ イ ジー チ ェ ーンのす べてのデバ イ ス に donepipe オプシ ョ ン を設定 し て く だ さ い。 • ボー ド レ イ ア ウ ト での ク ロ ッ ク 信号 と し ての コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク (CCLK) CCLK 信号は比較的低速ですが、UltraScale FPGA の入力バ ッ フ ァ ーのエ ッ ジ レー ト は非常に高速です。CCLK 信 号でわずかなシ グナル イ ン テ グ リ テ ィ の問題が発生 し ただけで、コ ン フ ィ ギ ュ レーシ ョ ンが正常に完了 し ない可 能性があ り ます(代表的なエ ラ ー モー ド と し ては、 DONE が Low で INIT_B が High)。 し たが っ て、 シ グナル イ ン テ グ リ テ ィ が重要 と な る デザ イ ン では、 IBIS を使用 し た シ グナル イ ン テ グ リ テ ィ のシ ミ ュ レーシ ョ ン な ど の 実行を推奨 し ます。 • 信号フ ァ ン ア ウ ト ギ ャ ン グ シ リ アル コ ン フ ィ ギ ュ レーシ ョ ン を使用す る 場合は、 特に良好なシ グナル イ ン テ グ リ テ ィ が要求 さ れ ます。 こ のため、 シ グナル イ ン テ グ リ テ ィ のシ ミ ュ レーシ ョ ンの実行を推奨 し ます。 • ギ ャ ン グ シ リ アル コ ン フ ィ ギ ュ レーシ ョ ン用の フ ァ イ ル ギ ャ ン グ シ リ アル コ ン フ ィ ギ ュ レーシ ョ ン用の フ ァ イ ルは、 単一デバ イ ス の コ ン フ ィ ギ ュ レーシ ョ ン に使用す る フ ァ イ ル と 同一です。 フ ァ イ ルに関す る ガ イ ド ラ イ ンは特にあ り ません。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 177 第 12 章 : 複数 FPGA のコ ン フ ィ ギ ュ レーシ ョ ン パラ レル コ ン フ ィ ギ ュ レーシ ョ ン モー ド パ ラ レル コ ン フ ィ ギ ュ レーシ ョ ン モー ド には、 複数デバ イ ス の SelectMAP コ ン フ ィ ギ ュ レーシ ョ ン、 パ ラ レル デ イ ジー チ ェ ーン コ ン フ ィ ギ ュ レーシ ョ ン、ギ ャ ン グ SelectMAP コ ン フ ィ ギ ュ レーシ ョ ン、ギ ャ ン グ非同期 BPI コ ン フ ィ ギ ュ レーシ ョ ンの各モー ド があ り ます。 複数デバイ スの SelectMAP コ ン フ ィ ギ ュ レーシ ョ ン ス レーブ SelectMAP モー ド の複数の UltraScale FPGA は、共通の SelectMAP バ ス に接続可能です (図 12-3)。SelectMAP バ ス では、 DATA、 CCLK、 RDWR_B、 PROGRAM_B、 DONE、 お よ び INIT_B ピ ンがすべてのデバ イ ス で共有 さ れま す。 各デバ イ ス に個別にア ク セ ス で き る よ う にする には、 CSI_B (チ ッ プ セ レ ク ト ) 入力を共有接続に し ないで く だ さ い。 CSI_B 信号の外部制御が必要 と な り 、 通常、 こ れはマ イ ク ロ プ ロ セ ッ サ ま たは CPLD に よ っ て提供 さ れます。 コ ン フ ィ ギ ュ レ ー シ ョ ン 後に リ ー ド バ ッ ク を 実行す る 場合、 RDWR_B 信号 を 適切に使用 し て く だ さ い (詳細は、 第 10 章 「 リ ー ド バ ッ ク 検証お よ び CRC」 参照)。 実行 し ない場合は、 RDWR_B を Low に接続で き ます。 詳細は、 第 9 章の 「ビ ッ ト ス ト リ ームの読み込み (手順 4 - 7)」 を参照 し て く だ さ い。 X-Ref Target - Figure 12-3 DATA[7:0] CCLK WRITE M1 M2 M1 M0 Slave SelectMAP CS(0) Slave SelectMAP D[7:0] D[7:0] CCLK CCLK RDWR_B RDWR_B CS(1) CSI_B PROGRAM_B 4.7 kΩ (Note 1) 4.7 kΩ (Note 2) M2 M0 DONE INIT_B CSI_B PROGRAM_B DONE INIT_B DONE INIT_B PROGRAM_B UG570_c12_03_031915 図 12-3 : 8 ビ ッ ト の SelectMAP バス を使用 し た複数のス レーブ デバイ スのコ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ー フ ェ イ ス例 図 12-3 について説明 し ます。 1. DONE ピ ンは、 デフ ォ ル ト ではオープン ド レ イ ン出力です。 DONE 信号の詳細は、 24 ページの表 1-9 を参照 し て く だ さ い。 2. INIT_B ピ ンは双方向オープン ド レ イ ン ピ ンで、 外部プルア ッ プ抵抗が必要です。 3. コ ン フ ィ ギ ュ レーシ ョ ン を制御す る ため、 マ イ ク ロ プ ロ セ ッ サ ま たは CPLD の よ う な外部 コ ン ト ロ ー ラ ーが必要 です。 4. ス レーブ SelectMAP の場合、 デー タ バ ス は x8、 x16、 ま たは x32 が可能です。 5. ス レーブ SelectMAP 接続の詳細図は、 68 ページの図 5-2 を参照 し て く だ さ い。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 178 第 12 章 : 複数 FPGA のコ ン フ ィ ギ ュ レーシ ョ ン パラ レル デ イ ジー チ ェ ーン コ ン フ ィ ギ ュ レーシ ョ ン UltraScale FPGA の コ ン フ ィ ギ ュ レーシ ョ ンでは、 パ ラ レル デ イ ジー チ ェ ーンがサポー ト さ れます。 図 12-4 は、 最初 のデバ イ ス が BPI コ ン フ ィ ギ ュ レーシ ョ ン モー ド であ る 場合の例を示 し てい ます。 最初のデバ イ ス は、 マ ス タ ーあ る いは ス レーブ SelectMAP モー ド にで き ます。すべてのデバ イ ス間では、D[15:00]、CCLK、RDWR_B、PROGRAM_B、 DONE、 INIT_B ピ ンが共有接続で、 CSI_B ピ ンはデ イ ジー チ ェ ーン接続 さ れてい ます。 INIT_B DONE A[28:00] D[15:00] Flash CS_B OE_B WE_B CSO_B FPGA A[28:00] D[15:00] FCS_B FOE_B FWE_B CCLK M2 M1 M0 0 1 0 M[2:0] = BPI 330Ω 330Ω 4.7 kΩ 4.7 kΩ X-Ref Target - Figure 12-4 INIT_B DONE CSO_B INIT_B DONE CSO_B FPGA FPGA D[15:00] CSI_B RDWR_B CCLK M2 M1 M0 D[15:00] CSI_B RDWR_B CCLK M2 M1 M0 1 1 0 M[2:0] = Slave SelectMAP 1 1 No Connect 0 M[2:0] = Slave SelectMAP UG570_c12_04_031915 図 12-4 : パラ レル デ イ ジー チ ェ ーン コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ー フ ェ イ スの例 図 12-4 について説明 し ます。 1. DONE ピ ンは、 デフ ォ ル ト ではオープン ド レ イ ン出力です。 DONE 信号の詳細は、 24 ページの表 1-9 を参照 し て く だ さ い。 2. INIT_B ピ ンは双方向オープン ド レ イ ン ピ ンで、 外部プルア ッ プが必要です。 3. FCS_B、 FWE_B、 FOE_B、 CSO_B の弱いプルア ッ プ抵抗は有効に し て く だ さ い。 無効の場合は、 各ピ ンに対 し て外部にプルア ッ プ抵抗が必要 と な り ます。 デフ ォ ル ト では、 コ ン フ ィ ギ ュ レーシ ョ ン後、 すべての多目的 I/O に弱いプルダ ウ ン抵抗が付 き ます。 4. チ ェーンの最初のデバ イ ス は、 マ ス タ ー SelectMAP、 ス レーブ SelectMAP、 ま たは BPI にで き ます。 BPI 接続の 詳細図は、 55 ページの図 4-2 を参照 し て く だ さ い。 5. リ ー ド バ ッ ク は、 パ ラ レル デ イ ジー チ ェーンではサポー ト さ れてい ません。 6. こ の コ ン フ ィ ギ ュ レーシ ョ ンでは、 フ ォールバ ッ ク マルチブー ト はサポー ト さ れません。 ギ ャ ング SelectMAP コ ン フ ィ ギ ュ レーシ ョ ン ギ ャ ン グ SelectMAP コ ン フ ィ ギ ュ レーシ ョ ン を使用 し て、 同 じ コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ーム で複数の デバ イ ス を同時に コ ン フ ィ ギ ュ レーシ ョ ンす る こ と も で き ます。ギ ャ ン グ SelectMAP コ ン フ ィ ギ ュ レーシ ョ ンの接続 では、 すべてのデバ イ ス が D ピ ンに出力 さ れ る デー タ を認識で き る よ う にす る ため、 複数デバ イ ス の CSI_B ピ ンが 共有接続 (ま たはグ ラ ン ド 接続) さ れます。 図 12-5 に示す よ う に外部オシ レー タ ーを利用で き る 場合は、 すべてのデバ イ ス を ス レーブ SelectMAP モー ド に設定 で き ます。 ま たは、 1 つのデバ イ ス を マ ス タ ー デバ イ ス に指定で き ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 179 第 12 章 : 複数 FPGA のコ ン フ ィ ギ ュ レーシ ョ ン X-Ref Target - Figure 12-5 M1 M0 M2 DATA[0:7] D[0:7] CCLK CCLK FPGA SelectMAP Slave PROGRAM_B PROGRAM_B DONE INIT_B INIT_B RDWR_B Processor 4.7 kΩ CSI_B DONE M1 M0 M2 D[0:7] FPGA SelectMAP Slave CCLK PROGRAM_B 4.7 kΩ INIT_B RDWR_B CSI_B DONE UG570_c12_05_031915 図 12-5 : ギ ャ ン グ x8 SelectMAP コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ー フ ェ イ スの例 図 12-5 について説明 し ます。 1. DONE ピ ンは、 デフ ォ ル ト ではオープン ド レ イ ン出力です。 DONE 信号の詳細は、 24 ページの表 1-9 を参照 し て く だ さ い。 2. INIT_B ピ ンは双方向オープン ド レ イ ン ピ ンで、 外部プルア ッ プ抵抗が必要です。 3. ス レーブ SelectMAP 接続の詳細図は、 68 ページの図 5-2 を参照 し て く だ さ い。 1 つのデバ イ ス を マ ス タ ー と し て指定す る 場合、 すべて のデバ イ ス の DONE ピ ン を共有接続す る 必要が あ り ま す。 DONE ピ ンは、 デフ ォ ル ト ではオープ ン ド レ イ ン出力です。 DONE 信号の詳細は、 24 ページの表 1-9 を参照 し て く だ さ い。 フ ァ ン ア ウ ト が大 き く な る ため、 シ グナル イ ン テ グ リ テ ィ に十分注意 し た設計が必要です。 こ のため、 シ グ ナル イ ン テ グ リ テ ィ のシ ミ ュ レーシ ョ ンの実行を推奨 し ます。 CSI_B 信号が共有接続 さ れてい る と き 、 すべてのデバ イ ス が同時にデー タ 信号を駆動す る ため リ ー ド バ ッ ク は実行で き ません。 ギ ャ ング非同期 BPI コ ン フ ィ ギ ュ レーシ ョ ン 非同期読み出 し モー ド で、 ギ ャ ン グ マ ス タ ー BPI コ ン フ ィ ギ ュ レーシ ョ ン を使用 し て同 じ コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ーム で複数のデバ イ ス を同時に コ ン フ ィ ギ ュ レ ーシ ョ ンす る こ と も で き ま す。 ギ ャ ン グ BPI コ ン フ ィ ギ ュ レーシ ョ ンは図 4-4 に示す接続図 と 同様ですが、 デー タ バス が複数の FPGA へ接続 さ れてい ます。 すべてのデバ イ ス の DONE お よ び INIT_B ピ ンは、 相互に接続 さ れてい ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 180 第 13 章 コ ン フ ィ ギ ュ レーシ ョ ンのデバ ッ グ は じ めに こ の章では、コ ン フ ィ ギ ュ レーシ ョ ン ソ リ ュ ーシ ョ ン を イ ンプ リ メ ン ト す る 際に発生 し がち な問題の解決に役立つベ ス ト プ ラ ク テ ィ ス をい く つか紹介 し ます。 こ の章の内容は、 次の と お り です。 • 「フ ァ イ ル生成の確認」 • 「ス テー タ ス ピ ンの処理」 • 「ス テー タ ス レ ジ ス タ の使用 と JTAG ア ク セ ス」 • 「検証お よ び リ ー ド バ ッ ク 」 • 「 コ ン フ ィ ギ ュ レーシ ョ ン シーケ ン ス」 • ° 「 コ ン フ ィ ギ ュ レーシ ョ ンの ス タ ー ト ア ッ プに関す る 注意事項」 ° 「 リ モー ト ア ッ プデー ト に関す る 注意事項」 「最初のデバ ッ グ手順」 フ ァ イル生成の確認 使用す る コ ン フ ィ ギ ュ レ ーシ ョ ン モー ド に応 じ て、 ビ ッ ト ス ト リ ーム のプ ロ パテ ィ お よ びフ ラ ッ シ ュ プ ロ グ ラ ム フ ァ イ ルのオプシ ョ ンが正 し く 設定 さ れてい る こ と を確認 し ます。 イ メ ージで使用 さ れ る ビ ッ ト ス ト リ ーム生成オプ シ ョ ン を確認す る には、 次の Tcl コ マ ン ド を実行 し ます。 report_property -all [current_design] こ の コ マ ン ド を実行す る と 、 そのデザ イ ンに適用 さ れ る すべてのプ ロ パテ ィ が表示 さ れます。 何 も 値が表示 さ れない 場合は、 デフ ォ ル ト のプ ロ パテ ィ が適用 さ れてい ます。 次に、 フ ラ ッ シ ュ プ ロ グ ラ ム フ ァ イ ル生成オプシ ョ ン を確 認 し ます。 フ ラ ッ シ ュ プ ロ グ ラ ム フ ァ イ ルの生成時にデー タ 幅お よ びデー タ 順のオプシ ョ ン が正 し く 設定 さ れてい る こ と を確認 し ま す。 コ ン フ ィ ギ ュ レ ーシ ョ ン フ ァ イ ル生成時に DRC 警告が発生 し た場合は、 必ず こ れ ら のオプ シ ョ ン を確認 し て訂正す る 必要があ り ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 181 第 13 章 : コ ン フ ィ ギ ュ レーシ ョ ンのデバ ッ グ ス テー タ ス ピ ンの処理 デバ ッ グ用に、 い く つかの物理ス テー タ ス ピ ン を ボー ド 上でア ク セ ス可能に し てお く こ と を推奨 し ます。 特に重要な 信号は、 INIT_B と DONE の 2 つです。 電源投入後の初期化が完了す る と 、 INIT_B が Low か ら High へ遷移 し ます。 その後、 INIT_B 信号が Low にな る と CRC エ ラ ーが発生 し た こ と を示 し ま す。 FPGA コ ン フ ィ ギ ュ レ ーシ ョ ン のデ バ ッ グには、 INIT_B お よ び DONE 信号へのア ク セ ス が欠かせません。 こ れ ら の ス テー タ ス信号以外に も デバ ッ グに役立つ情報を示すコ ン フ ィ ギ ュ レーシ ョ ン ピ ンがい く つかあ り ますが、 コ ン フ ィ ギ ュ レーシ ョ ン中に問題が発生す る のを防ぐ ため、 こ れ ら ピ ンの扱いには注意が必要です。 こ れ ら の ピ ン を 次に示 し ます。 • モー ド ピ ン M[2:0] • PROGRAM_B ピ ン • CFGBVS ピ ン • PUDC_B ピ ン モー ド ピ ン M[2:0] モー ド ピ ンは、 コ ン フ ィ ギ ュ レーシ ョ ン中に値が変化 し ない よ う に固定 し てお く 必要があ り ます。 FPGA は、 電源投 入時にモー ド ピ ン を読み出 し て使用す る コ ン フ ィ ギ ュ レーシ ョ ン モー ド を決定 し ます。 デバ ッ グに使用す る モー ド と し て最 も 一般的なのは、 JTAG モー ド です。 JTAG イ ン タ ーフ ェ イ ス は常に利用可能ですが、 モー ド ピ ン で JTAG モー ド を選択 し てお く と 、 ほかの コ ン フ ィ ギ ュ レーシ ョ ン モー ド か ら の干渉を防ぐ こ と がで き ます。 PROGRAM_B ピ ン PROGRAM_B ピ ンは FPGA の リ コ ン フ ィ ギ ュ レーシ ョ ン に使用 し ます。 通常は、 ア ク セ ス し やすい よ う にプ ッ シ ュ ボ タ ンに接続 し ます。 こ の ピ ンは、 コ ン フ ィ ギ ュ レーシ ョ ン実行中は High に維持する 必要があ り ます。 CFGBVS ピ ン CFGBVS ( コ ン フ ィ ギ ュ レーシ ョ ン バン ク 電圧セ レ ク ト ) ピ ンは、デザ イ ンでサポー ト する 最大電圧が 1.8V か 3.3V か に よ っ て、 GND ま たは VCCO に正 し く 接続する 必要があ り ます。 PUDC_B PUDC_B ピ ンは、 コ ン フ ィ ギ ュ レーシ ョ ン中に I/O プルア ッ プ を有効にする か ど う か を決定 し ます。 コ ン フ ィ ギ ュ レーシ ョ ン ピ ンの詳細は、 第 1 章 「は じ めに」 を参照 し て く だ さ い。 ス テー タ ス レ ジス タ の使用 と JTAG ア ク セス 内部デバ ッ グは、 まずス テー タ ス レ ジ ス タ の確認か ら 始め ます。 そのためには、 JTAG ポー ト へのア ク セ ス が必要で す。 FPGA の ス テー タ ス レ ジ ス タ のデー タ は、 Vivado® デバ イ ス プ ロ グ ラ マか ら JTAG 経由で読み出す こ と がで き ま す。 た と えば、 DONE お よ び INIT_B 信号が Low の場合、 こ の レ ジ ス タ に格納 さ れてい る エ ラ ー条件を読み出す こ と で、 エ ラ ーの タ イ プ を特定で き ます。 ま た、 モー ド ピ ン M[2:0] の設定 と バ ス幅の検出状態 も ス テー タ ス レ ジ ス タ で 確認で き ます。 ス テー タ ス レ ジ ス タ の使用に関する 詳細は、 第 9 章の 「ス テー タ ス レ ジ ス タ (00111)」 を参照 し て く だ さ い。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 182 第 13 章 : コ ン フ ィ ギ ュ レーシ ョ ンのデバ ッ グ 検証および リ ー ド バ ッ ク FPGA の コ ン フ ィ ギ ュ レーシ ョ ンに失敗 し た場合、 JTAG を利用 し て FPGA の内容を検証お よ び リ ー ド バ ッ ク す る と 、 プ ロ グ ラ ム中の問題を取 り 除 き 、 ご く まれに発生す る SEU イ ベン ト の有無 も 確認で き ます。 Vivado デバ イ ス プ ロ グ ラ マで JTAG 検証を実行す る には、ビ ッ ト ス ト リ ームの生成段階で作成 さ れ る マ ス ク (.msk) フ ァ イ ルが必要です。詳 細は、 第 10 章 「 リ ー ド バ ッ ク 検証お よ び CRC」 を参照 し て く だ さ い。 コ ン フ ィ ギ ュ レーシ ョ ン シーケ ン ス コ ン フ ィ ギ ュ レーシ ョ ン実行中、問題の特定に役立つ基本的なチ ェ ッ ク 項目がい く つかあ り ます。ザ イ リ ン ク ス FPGA のビ ッ ト ス ト リ ームには、 一意のヘ ッ ダーがあ り ます。 こ のヘ ッ ダーには同期ワ ー ド が含まれ、 自動検出、 コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク タ イ プ、 レー ト 設定を含め る こ と がで き ます。 UltraScale™ アーキ テ ク チ ャ FPGA の場合、 同期 ワー ド は次の と お り です。 AA995566 こ の同期ワー ド は、 デバ ッ グ用のパ ラ メ ー タ ー と し て役立ち ます。 デー タ ピ ン をオシ ロ ス コ ープで観測 し 、 同期ワー ド が検出 さ れれば、 ビ ッ ト ス ト リ ーム ヘ ッ ダーが現れた こ と がわか り ます。 ま た、 [Configuration Rate] オプシ ョ ン ま たは [Enable External Configuration Clock] (EMCCLK) オプシ ョ ンの設定に よ っ ては、 こ の直後に コ ン フ ィ ギ ュ レーシ ョ ン ク ロ ッ ク レー ト が高速にな る のが観測 さ れます。 コ ン フ ィ ギ ュ レーシ ョ ンのス タ ー ト ア ッ プに関する注意事項 FPGA の電源投入時には、 共通のシーケ ン ス に従 う 必要があ り ます (第 9 章 「コ ン フ ィ ギ ュ レーシ ョ ン の詳細」 参照 )。 ただ し 特別なオプシ ョ ン を使用す る 場合は、 デフ ォ ル ト のシーケ ン ス に変更が必要 と な る こ と があ り ま す。 た と えば MMCM を使用す る 場合、 「MMCM lock」 オプシ ョ ン を指定 し 、 MMCM が ロ ッ ク す る ま で待機 し てか ら コ ン フ ィ ギ ュ レーシ ョ ン を開始す る 必要があ り ます。 こ れ以外に 「Wait for PLL」 や 「DCI match」 オプシ ョ ン も あ り ます。 こ れ ら オプシ ョ ンのいずれか を使用す る 場合、 コ ン フ ィ ギ ュ レーシ ョ ン ソ ース内の イ メ ージがマルチブー ト イ メ ージ のパデ ィ ン グ の要件 を 満 た し て い る こ と を 確認 し て く だ さ い。 ま た、 ス レ ーブ モー ド ま た はマ ス タ ー モー ド で EMCCLK オプシ ョ ン を使用す る 場合は、 ス タ ー ト ア ッ プ シーケ ン ス が完了する ま で十分な ク ロ ッ ク サ イ ク ルが供給 さ れ る よ う に し て く だ さ い。 ス タ ー ト ア ッ プ シーケ ン ス の最後ま で ク ロ ッ ク を供給 し ない と 、 次に示す状況がい く つか確認 さ れ る こ と があ り ま す。 • I/O が有効にな ら ない。 コ ン フ ィ ギ ュ レーシ ョ ンお よ び I/O に使用する 多目的ピ ンが仕様上の I/O 規格ではな く LVCMOS で動作する 。 • コ ン フ ィ ギ ュ レーシ ョ ン ロ ジ ッ ク が ロ ッ ク さ れてお り 、 FPGA ロ ジ ッ ク か ら ICAP イ ン タ ーフ ェ イ ス にア ク セ ス で き ない。 上記の状況は、 デバ イ ス が EOS (End of Start-up) ス テー ト に達 し ていない場合に発生 し ます。 デバ イ ス は、 EOS ス テー ト に到達す る 前で も 完全に動作 し ます。 こ のため、 ICAP の読み出 し /書 き 込みに失敗 し た り 、 多目的ピ ン が正 し い I/O 規格で動作 し ない こ と があ り ます。 EOS ス テー ト に達 し たか ど う かは、 EOS 信号が High に駆動 さ れたか ど う かでわか り ます。 こ れは、 STATUS レ ジ ス タ で調べる か、 STARTUPE3 プ リ ミ テ ィ ブ を使用 し て FPGA で検出で き ます。 ICAP へのア ク セ ス が必要なデザ イ ンでは、STARTUPE3 プ リ ミ テ ィ ブ を イ ン ス タ ン シエー ト す る こ と を推奨 し ま す。 こ のプ リ ミ テ ィ ブには、 コ ン フ ィ ギ ュ レーシ ョ ン プ ロ セ ス が完了 し て ICAP への読み出 し /書 き 込みア ク セ ス が可能にな っ た こ と を示す EOS ピ ンがあ り ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 183 第 13 章 : コ ン フ ィ ギ ュ レーシ ョ ンのデバ ッ グ リ モー ト ア ッ プデー ト に関する注意事項 ザ イ リ ン ク ス の FPGA はマルチブー ト お よ びフ ォールバ ッ ク をサポー ト し てお り 、 フ ィ ール ド での よ り 堅牢なシ ス テ ム ア ッ プデー ト が可能です。 ビ ッ ト ス ト リ ーム イ メ ージは、 フ ィ ール ド で動的に更新で き ます。 マルチブー ト お よ びフ ォールバ ッ ク 機能はすべてのマ ス タ ー コ ン フ ィ ギ ュ レーシ ョ ン モー ド で使用で き ます。 こ れ ら オプシ ョ ンの詳 細は、 第 11 章の 「フ ォールバ ッ ク マルチブー ト 」 を参照 し て く だ さ い。 最初のデバ ッ グ手順 • 別のモー ド で コ ン フ ィ ギ ュ レーシ ョ ン を実行す る 。た と えば、ケーブル経由でダ ウ ン ロ ー ド し てい る 場合は、ビ ッ ト ス ト リ ーム を フ ラ ッ シ ュ デバ イ ス にプ ロ グ ラ ム し て コ ン フ ィ ギ ュ レーシ ョ ン し ます。 • 別のビ ッ ト ス ト リ ームで コ ン フ ィ ギ ュ レーシ ョ ン を実行す る 。 可能であれば、 正常であ る こ と が確認 さ れてい る コ ン フ ィ ギ ュ レーシ ョ ン フ ァ イ ルを使用 し てテ ス ト し ます。 • 周波数の高い CCLK ま たは外部 ク ロ ッ ク を使用 し てい る 場合は、 ク ロ ッ ク 周波数を下げ る 。 • い く つかの コ ン フ ィ ギ ュ レーシ ョ ン オプシ ョ ン をデフ ォ ル ト に戻す。 • コ ン フ ィ ギ ュ レーシ ョ ン終了時に別の ク ロ ッ ク を供給す る 。 • デス テ ィ ネーシ ョ ン デバ イ ス側でデー タ が正 し く 受信で き てい る こ と を確認する 。 • 使用 し てい る ツールのバージ ョ ンが最新であ る こ と を確認す る 。旧バージ ョ ンの イ ンプ リ メ ン テーシ ョ ン ツール を使用す る 必要があ る 場合で も 、 ダ ウ ン ロ ー ド セ ン タ ーで [Lab Tools] を ク リ ッ ク し て最新の コ ン フ ィ ギ ュ レー シ ョ ン ツールを無料でダ ウ ン ロ ー ド し 、 単独で使用で き ます。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 184 付録 A その他の リ ソ ースおよび法的通知 ザイ リ ン ク ス リ ソ ース ア ンサー、 資料、 ダ ウ ン ロ ー ド 、 フ ォー ラ ム な ど のサポー ト リ ソ ース は、 ザ イ リ ン ク ス サポー ト サ イ ト を参照 し て く だ さ い。 ソ リ ュ ーシ ョ ン セ ン タ ー デバ イ ス、 ツール、 IP のサポー ト については、 ザ イ リ ン ク ス ソ リ ュ ーシ ョ ン セ ン タ ーを参照 し て く だ さ い。 デザ イ ン ア シ ス タ ン ト 、 デザ イ ン ア ド バ イ ザ リ 、 ト ラ ブルシ ュ ー ト の ヒ ン ト な ど が含まれます。 参考資料 1. 『UltraScale アーキ テ ク チ ャ の Gen3 Integrated Block for PCI Express LogiCORE IP 製品ガ イ ド 』 (PG156) 2. 『UltraScale アーキ テ ク チ ャ お よ び製品概要』 (DS890 : 英語版、 日本語版) 3. All Programmable 3D IC ウ ェ ブサ イ ト 4. 『Vivado Design Suite プ ロ パテ ィ リ フ ァ レ ン ス ガ イ ド 』 (UG912 : 英語版、 日本語版) 5. 『Vivado Design Suite ユーザー ガ イ ド : プ ロ グ ラ ムお よ びデバ ッ グ』 (UG908 : 英語版、 日本語版) 6. 『Kintex UltraScale FPGA デー タ シー ト : DC 特性お よ び AC ス イ ッ チ特性』 (DS892 : 英語版、 日本語版) 7. 『Virtex UltraScale FPGA デー タ シー ト : DC 特性お よ び AC ス イ ッ チ特性』 (DS893 : 英語版、 日本語版) 8. 『Vivado Design Suite ユーザー ガ イ ド : I/O お よ び ク ロ ッ ク プ ラ ン ニ ン グ』 (UG899 : 英語版、 日本語版) 9. 『UltraScale FPGA での SPI コ ン フ ィ ギ ュ レーシ ョ ンお よ びフ ラ ッ シ ュ プ ロ グ ラ ミ ン グ』 (XAPP1233) 10. 『UltraScale FPGA の BPI コ ン フ ィ ギ ュ レーシ ョ ンお よ びフ ラ ッ シ ュ プ ロ グ ラ ム』 (XAPP1220 : 英語版、 日本語版) 11. 『ス レーブ シ リ アル/SelectMAP モー ド でマ イ ク ロ プ ロ セ ッ サ を使用 し た 7 シ リ ーズ FPGA の コ ン フ ィ ギ ュ レー シ ョ ン』 (XAPP583 : 英語版、 日本語版) 12. 『UltraScale アーキ テ ク チ ャ シ ス テ ム モニ タ ー ユーザー ガ イ ド 』 (UG580 : 英語版、 日本語版) 13. 『UltraScale アーキ テ ク チ ャ ラ イ ブ ラ リ ガ イ ド 』 (UG974 : 英語版、 日本語版) 14. 『USR_ACCESS を使用す る ビ ッ ト ス ト リ ーム認識』 (XAPP497 : 英語版、 日本語版) 15. 『Vivado Design Suite Tcl コ マ ン ド リ フ ァ レ ン ス ガ イ ド 』 (UG835 : 英語版、 日本語版) 16. 『UltraScale アーキ テ ク チ ャ SelectIO リ ソ ース ユーザー ガ イ ド 』 (UG571 : 英語版、 日本語版) 17. 『UltraScale FPGA での コ ン フ ィ ギ ュ レーシ ョ ン リ ー ド バ ッ ク キ ャ プチ ャ 』 (XAPP1230 : 英語版、 日本語版) UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 185 付録 A : その他の リ ソ ースおよび法的通知 18. 『Kintex UltraScale お よ び Virtex UltraScale FPGA パ ッ ケージお よ びピ ン配置ユーザー ガ イ ド 』 (UG575 : 英語版、日 本語版) 19. 『Vivado Design Suite ユーザー ガ イ ド : パーシ ャ ル リ コ ン フ ィ ギ ュ レーシ ョ ン』 (UG909 : 英語版、 日本語版) 20. コ ン フ ィ ギ ュ レーシ ョ ン ソ リ ュ ーシ ョ ン セ ン タ ー 21. コ ン フ ィ ギ ュ レーシ ョ ン フ ォー ラ ム 22. Vivado ビデオ チ ュ ー ト リ アル - プ ロ グ ラ ミ ン グお よ びデバ ッ グ 法的通知 本通知に基づいて貴殿ま たは貴社 (本通知の被通知者が個人の場合には 「貴殿」 、 法人その他の団体の場合には 「貴社」 。 以下同 じ ) に開示 さ れ る 情報 (以下 「本情報」 と いい ます) は、 ザ イ リ ン ク ス の製品を選択お よ び使用す る こ と のためにのみ提供 さ れ ます。 適 用 さ れ る 法律が許容す る 最大限の範囲で、 (1) 本情報は 「現状有姿」、 お よ び全て受領者の責任で (with all faults) と い う 状態で提供 さ れ、 ザ イ リ ン ク ス は、 本通知を も っ て、 明示、 黙示、 法定を問わず (商品性、 非侵害、 特定目的適合性の保証を含みますが こ れ ら に 限 ら れません)、 全ての保証お よ び条件を負わない (否認す る ) も の と し ます。 ま た、 (2) ザ イ リ ン ク ス は、 本情報 (貴殿ま たは貴社に よ る 本情報の使用を含む) に関係 し 、 起因 し 、 関連す る 、 いかな る 種類 ・ 性質の損失ま たは損害について も 、 責任を負わない (契約 上、 不法行為上 (過失の場合を含む)、 その他のいかな る 責任の法理に よ る か を問わない) も の と し 、 当該損失ま たは損害には、 直接、 間接、 特別、 付随的、 結果的な損失ま たは損害 (第三者が起 こ し た行為の結果被っ た、 デー タ 、 利益、 業務上の信用の損失、 その他 あ ら ゆ る 種類の損失や損害を含みます) が含まれ る も の と し 、 それは、 た と え当該損害や損失が合理的に予見可能であ っ た り 、 ザ イ リ ン ク ス がそれ ら の可能性について助言を受けていた場合であ っ た と し て も 同様です。 ザ イ リ ン ク ス は、本情報に含まれ る いかな る 誤 り も 訂正す る 義務を負わず、本情報ま たは製品仕様のア ッ プデー ト を貴殿ま たは貴社に知 ら せ る 義務 も 負い ません。事前の書面に よ る 同意のない限 り 、 貴殿ま たは貴社は本情報を再生産、 変更、 頒布、 ま たは公に展示 し てはな り ません。 一定の製品は、 ザ イ リ ン ク ス の限定的保証の諸条件に従 う こ と と な る ので、 http://japan.xilinx.com/legal.htm#tos で見 ら れ る ザ イ リ ン ク ス の販売条件を参照 し て下 さ い。 IP コ アは、 ザ イ リ ン ク ス が貴殿ま たは貴社に付与 し た ラ イ セ ン ス に含ま れ る 保証 と 補助的条件に従 う こ と にな り ます。 ザ イ リ ン ク ス の製品は、 フ ェ イ ルセーフ と し て、 ま たは、 フ ェ イ ルセーフ の動作を要求す る アプ リ ケーシ ョ ンに使用す る ために、 設計 さ れた り 意図 さ れた り し てい ません。 その よ う な重大な アプ リ ケーシ ョ ンにザ イ リ ン ク ス の製品を使用す る 場合の リ ス ク と 責任は、 貴殿ま たは貴社が単独で負 う も のです。 http://japan.xilinx.com/legal.htm#tos で見 ら れ る ザ イ リ ン ク ス の販売条件を参照 し て下 さ い。 自動車用のアプ リ ケーシ ョ ンの免責条項 ザ イ リ ン ク ス の製品は、 フ ェ イ ルセーフ と し て設計 さ れた り 意図 さ れてはお ら ず、 ま た、 フ ェ イ ルセーフ の動作を要求す る アプ リ ケーシ ョ ン (具体的には、 (I) エアバ ッ グの展開、 (II) 車の コ ン ト ロ ール (フ ェ イ ルセーフ ま たは余剰性の機能 (余剰性を実行す る ため のザ イ リ ン ク ス の装置に ソ フ ト ウ ェ ア を使用す る こ と は含 ま れ ま せん) お よ び操作者が ミ ス を し た際の警告信号が あ る 場合を除 き ます)、 (III) 死亡や身体傷害を導 く 使用、 に関す る アプ リ ケーシ ョ ン) を使用す る ために設計 さ れた り 意図 さ れた り も し てい ません。 顧客は、 その よ う な アプ リ ケーシ ョ ンにザ イ リ ン ク ス の製品を使用す る 場合の リ ス ク と 責任を単独で負い ます。 © Copyright 2014–2015 Xilinx, Inc. Xilinx、 Xilinx ロ ゴ、 Artix、 ISE、 Kintex、 Spartan、 Virtex、 Vivado、 Zynq、 お よ び こ の文書に含 ま れ る その他の指定 さ れたブ ラ ン ド は、 米国お よ びその他各国のザ イ リ ン ク ス社の商標です。 すべてのその他の商標は、 それぞれの保 有者に帰属 し ます。 こ の資料に関す る フ ィ ー ド バ ッ ク お よ び リ ン ク な ど の問題につ き ま し ては、 [email protected] ま で、 ま たは各ページの 右下にあ る [フ ィ ー ド バ ッ ク 送信] ボ タ ン を ク リ ッ ク す る と 表示 さ れ る フ ォ ーム か ら お知 ら せ く だ さ い。 フ ィ ー ド バ ッ ク は日本語で 入力可能です。 いただ き ま し た ご意見を参考に早急に対応 さ せていただ き ます。 なお、 こ の メ ール ア ド レ スへのお問い合わせは受 け付けてお り ません。 あ ら か じ めご了承 く だ さ い。 UltraScale アーキテ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン UG570 (v1.6) 2015 年 12 月 16 日 japan.xilinx.com 186
© Copyright 2024 ExpyDoc