暗号化キー メ モ リ セルは揮発性であ り 、 その内容を維持す る には、電源が継続 し て投入 さ れてい る 必要があ り ます。 平常動作中、 こ れ ら の メ モ リ セルの電源は補助電圧入力 (VCCAUX) ですが、
VCCAUXを切断す る と 、VBATTがキーを保持す る ために使用 さ れます。VBATTではほ と ん ど電流が 流れないため (nA 程度)、 こ の電源には小 さ なボ タ ン電池が適 し てい ます (バ ッ テ リ の使用可能期間 については、Spartan-6 FPGA デー タ シー ト の VBATT DC 特性お よ びバ ッ テ リ の仕様を参照 し て く だ さ い)。150nA 未満の負荷では、 バ ッ テ リ の使用可能期間はバ ッ テ リ の寿命期間にな る はずです。
VBATTでは電流は流れないため、VCCAUXの電源供給中に切断で き ます。VCCAUXを切断 し た場合、
VBATTは暗号化キーの保持以外には使用で き ません。
コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ フ レーム
Spartan-6 FPGA の コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ は、 デバ イ ス周辺に タ イ ルにな っ てい る フ レー ムで形成 さ れてい ます。こ の フ レームは、Spartan-6 FPGA の コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ 空間の 最小のア ド レ ス可能な単位であ り 、すべての操作は コ ン フ ィ ギ ュ レーシ ョ ン フ レーム全体に実行す る 必要があ り ます。Spartan-6 FPGA フ レーム数お よ び コ ン フ ィ ギ ュ レーシ ョ ンサ イ ズは、表 5-16 に記載 さ れてい ます。BitGen オプシ ョ ンに よ っ ては、コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ームに 余分が追加 さ れます。 正確な ビ ッ ト ス ト リ ームの長 さ は、 ロ ウ ビ ッ ト フ ァ イ ル (.rbt) に記述 さ れて い ます。 こ の フ ァ イ ルは、BitGen の -b オプシ ョ ン を指定す る か、 ま たは ISE ソ フ ト ウ ェ アの
[Generate Programming File] → [Create ASCII Configuration File] ポ ッ プア ッ プメ ニ ュ ーを ク リ ッ ク す る と 生成 さ れます。 ビ ッ ト ス ト リ ーム長 (ワ ー ド) は、 コ ン フ ィ ギ ュ レーシ ョ ン ア レ イサ イ ズ ( ワー ド) に コ ン フ ィ ギ ュ レーシ ョ ン オーバーヘ ッ ド (ワ ー ド) を足 し た も のにほぼ等 し く な り ます。
ビ ッ ト ス ト リ ーム長 (ビ ッ ト) は、 ビ ッ ト ス ト リ ーム長 (ワ ー ド) に 32 を掛けた も のにほぼ等 し く な り ます。
コ ン フ ィ ギ ュ レーシ ョ ン パケ ッ ト
すべての Spartan-6 FPGA ビ ッ ト ス ト リ ーム コ マ ン ド は、コ ン フ ィ ギ ュ レーシ ョ ン レ ジ ス タ の読み 出 し ま たは書 き 込みに よ り 実行 さ れます。 コ ン フ ィ ギ ュ レーシ ョ ンデー タ は 16 ビ ッ ト ワー ド に ま と め ら れてい ます。複数の ワー ド で構成 さ れ る デー タ が存在す る 場合 も あ り ます。コ ン フ ィ ギ ュ レー シ ョ ンデー タ には、NOP、READ、WRITE の 3 つの主な コ マ ン ド があ り ます (表 5-17 参照)。
コ ン フ ィ ギ ュ レーシ ョ ン コ マ ン ド は、該当 コ マ ン ド レ ジ ス タ か ら 読み出 さ れ る か、 ま たは書 き 込ま れ る と き に実行 さ れます。
表 5-16 : デバイ ス リ ソ ース デバイ ス ブ ロ ッ ク RAM
列
コ アの フ レーム 数
ブ ロ ッ ク RAM
の フ レーム数 I/O 数 I/O のフ レーム
長 ビ ッ ト 総数
XC6SLX4 1 794 9360 120 577 2,724,704
XC6SLX9 2 2028 37440 200 897 2,724,704
XC6SLX16 2 2976 37440 244 1,073 3,713,440
XC6SLX25 3 5065 70200 264 1,153 6,411,440
XC6SLX25T 3 5065 70200 264 1,153 6,411,440
XC6SLX45 4 9088 149760 370 1,577 11,875,104
XC6SLX45T 4 9088 149760 370 1,577 11,875,104
XC6SLX75 4 15384 224640 426 1,801 19,624,608
XC6SLX75T 4 15384 224640 426 1,801 19,624,608
XC6SLX100 6 20304 336960 498 2,089 26,543,136
XC6SLX100T 6 20304 336960 498 2,089 26,543,136
XC6SLX150 6 27240 336960 576 2,401 33,761,568
XC6SLX150T 6 27240 336960 576 2,401 33,761,568
表 5-17 : OPCODE フ ォ ーマ ッ ト
OP CODE
NOP 00
READ 01
WRITE 10
パケ ッ ト タ イ プ
すべてのデー タ (レ ジ ス タ 書 き 込みお よ びフ レーム デー タ) は、2 種類のパケ ッ ト に ま と め ら れま す。
• タ イ プ 1 パケ ッ ト : ヘ ッ ダお よ びデー タ の 2 つのセ ク シ ョ ンに分かれてい ます。
• タ イ プ 2 パケ ッ ト : ヘ ッ ダ、 ワー ド カ ウ ン ト 、 お よ びデー タ の 3 つのセ ク シ ョ ンに分かれてい ます。
タ イ プ 1 パケ ッ ト
タ イ プ 1 パケ ッ ト は、短いブ ロ ッ ク の 6 ア ド レ ス ビ ッ ト の レ ジ ス タ 書 き 込みに使用 さ れます。ヘ ッ ダセ ク シ ョ ンは常に 16 ビ ッ ト ワ ー ド です。 詳細は、表 5-18 を参照 し て く だ さ い。
タ イ プ 1 のデー タ セ ク シ ョ ンは、 タ イ プ 1 パケ ッ ト ヘ ッ ダに続 き 、 ヘ ッ ダの ワー ド カ ウ ン ト 部で 指定 さ れてい る 数の 16 ビ ッ ト ワー ド が含まれます。 詳細は、表 5-19 を参照 し て く だ さ い。
タ イ プ 2 パケ ッ ト
タ イ プ 2 パケ ッ ト は長いブ ロ ッ ク の書 き 込みに使用 さ れ、 常に タ イ プ 1 パケ ッ ト に続 き ます。 ア ド レ ス は先行す る タ イ プ 1 パケ ッ ト の も のを使用す る ため、 こ こ にはア ド レ ス はあ り ません。 ヘ ッ ダ セ ク シ ョ ンは常に 16 ビ ッ ト ワー ド です。
タ イ プ 2 パケ ッ ト ヘ ッ ダの後 タ イ プ 2 デー タ セ ク シ ョ ンが続 き ます。こ のセ ク シ ョ ンには、ヘ ッ ダ の ワー ド カ ウ ン ト 部で指定 さ れてい る 数の 16 ビ ッ ト ワ ー ド が含まれます。
タ イ プ 2 ワー ド カ ウ ン ト は タ イ プ 2 パケ ッ ト ヘ ッ ダに続 き ますが、こ こ には 2 つの 16 ビ ッ ト ワー ド が含まれていて、 最初の ワー ド に MSB が含まれてい ます。
表 5-18 : タ イ プ 1 パケ ッ ト ヘ ッ ダ
ヘ ッ ダ タ イ プ 動作 レ ジ ス タ ア ド レ ス ワー ド カ ウン ト
ビ ッ ト [15:13] [12:11] [10:5] [4:0]
タ イ プ 1 001 xx xxxxxx xxxxx
表 5-19 : タ イ プ 1 デー タ セ ク シ ョ ン
デー タ [15:0]
ワー ド xxxxxxxxxxxxxxxx
表 5-20 : タ イ プ 2 パケ ッ ト ヘ ッ ダ
ヘ ッ ダ タ イ プ 動作 レ ジ ス タ ア ド レ ス (未使用)
ビ ッ ト [15:13] [12:11] [10:5] [4:0]
タ イ プ 2 010 xx xxxxxx 00000
タ イ プ 2 ワ ー ド カ ウ ン ト の後 タ イ プ 2 デー タ セ ク シ ョ ンが続 き ます。こ のセ ク シ ョ ンには、ヘ ッ ダ の ワー ド カ ウ ン ト 部で指定 さ れてい る 数の 16 ビ ッ ト ワ ー ド が含まれます。
ワー ド カ ウ ン ト = (フ レーム総数 + 1 ダ ミ ーフ レーム) x 実際の フ レーム長 表 5-21 : タ イ プ 2 パケ ッ ト ワー ド カ ウン ト デー タ 2
WC1 [31:16]
デー タ 0000xxxxxxxxxxxx
表 5-22 : タ イ プ 2 パケ ッ ト ワー ド カ ウン ト デー タ 1
WC2 [15:0]
デー タ xxxxxxxxxxxxxxxx
表 5-23 : タ イ プ 2 パケ ッ ト デー タ セ ク シ ョ ン
デー タ [15:0]
ワー ド [1] xxxxxxxxxxxxxxxx
Ö xxxxxxxxxxxxxxxx
ワー ド [wc] xxxxxxxxxxxxxxxx
コ ン フ ィ ギ ュ レーシ ョ ン レ ジ ス タ
表 5-24 に、 コ ン フ ィ ギ ュ レーシ ョ ンレ ジ ス タ を示 し ます。 レ ジ ス タ の詳細な説明が後に続 き ます。
表 5-24 : コ ン フ ィ ギ ュ レーシ ョ ン レ ジス タ
レ ジス タ 名 R/W ア ド レ ス 説明
CRC W 6'h00 Cyclic Redundancy Check (巡回冗長検査) FAR_MAJ
W 6'h01 フ レーム ア ド レ ス レ ジ ス タ ブ ロ ッ ク お よ び メ ジ ャ ー
FAR_MIN W 6'h02 フ レーム ア ド レ ス レ ジ ス タ マ イ ナー
FDRI W 6'h03 フ レームデー タ 入力
FDRO R 6'h04 フ レームデー タ 出力
CMD R/W 6'h05 コ マ ン ド
CTL R/W 6'h06 制御
MASK R/W 6'h07 制御マ ス ク
STAT R 6'h08 ス テー タ ス
LOUT W 6'h09 シ リ アルデ イ ジーチ ェーンの レ ガシ出力
COR1 R/W 6'h0a コ ン フ ィ ギ ュ レーシ ョ ンオプシ ョ ン 1 COR2 R/W 6'h0b コ ン フ ィ ギ ュ レーシ ョ ンオプシ ョ ン 2
PWRDN_REG R/W 6'h0c パ ワ ーダ ウ ンオプシ ョ ン レ ジ ス タ
FLR W 6'h0d フ レーム長レ ジ ス タ
IDCODE R/W 6'h0e 製品 IDCODE
CWDT R/W 6'h0f コ ン フ ィ ギ ュ レーシ ョ ン ウ ォ ッ チ ド ッ グ タ イ マ
HC_OPT_REG R/W 6'h10 ハ ウ ス ク リ ーンオプシ ョ ン レ ジ ス タ
CSBO W 6'h12 パ ラ レルデ イ ジーチ ェーンの CSB 出力
GENERAL1
R/W 6'h13 パ ワ ーア ッ プ セルフ テ ス ト ま たは読み込み 可能なプ ロ グ ラ ム ア ド レ ス。
GENERAL2 R/W 6'h14 パ ワ ーア ッ プ セルフ テ ス ト ま たは読み込み
可能なプ ロ グ ラ ム ア ド レ ス。 新 し い SPI OPCODE
GENERAL3 R/W 6'h15 ゴールデンビ ッ ト ス ト リ ーム ア ド レ ス
GENERAL4 R/W 6'h16 ゴールデンビ ッ ト ス ト リ ーム ア ド レ ス
GENERAL5 R/W 6'h17 安全装置用ユーザー定義レ ジ ス タ
MODE_REG R/W 6'h18 リ ブー ト モー ド
PU_GWE W 6'h19 一時停止か ら の ウ ェ ー ク ア ッ プ中の GWE サ
イ ク ル
CRC レ ジ ス タ
CRC (巡回冗長検査) レ ジ ス タ は、 標準の 32 ビ ッ ト CRC チ ェ ッ ク サムアルゴ リ ズ ム を使用 し 、 コ ン フ ィ ギ ュ レーシ ョ ン中のビ ッ ト ス ト リ ーム を検証 し ます。 書 き 込まれた値が、 現在の計算 さ れた CRC と 一致す る 場合、CRC_ERROR フ ラ グは ク リ ア さ れス タ ー ト ア ッ プが許可 さ れます。
FAR_MAJ レ ジ ス タ
フ レーム ア ド レ ス レ ジ ス タ は、 次の コ ン フ ィ ギ ュ レーシ ョ ン デー タ 入力の開始ブ ロ ッ ク お よ び列 ア ド レ ス を設定 し ます。Spartan-6 FPGA のパーシ ャ ル リ コ ン フ ィ ギ ュ レーシ ョ ン場合、開始列の最 初の フ レーム ア ド レ ス がそれにな り ます。 詳細は表 5-25 を参照 し て く だ さ い。
FAR_MIN レ ジ ス タ
.
FAR への書 き 込みには 3 つの種類があ り ます。
• FAR_MAJ へ 1 ワー ド 書 き 込み : FAR_MAJ のみを ア ッ プデー ト し ます。
• FAR_MIN へ 1 ワー ド 書 き 込み : FAR_MIN のみを ア ッ プデー ト し ます。
PU_GTS W 6'h1a 一時停止か ら の ウ ェ ー ク ア ッ プ中の GTS サ
イ ク ル
MFWR W 6'h1b マルチフ レーム書 き 込みレ ジ ス タ
CCLK_FREQ W 6'h1c マ ス タモー ド の CCLK 周波数セ レ ク ト
SEU_OPT R/W 6'h1d SEU 周波数、 イ ネーブル、 お よ びス テー タ ス
EXP_SIGN
R/W 6'h1e SEU 検出に予想 さ れ る リ ー ド バ ッ ク シ グネ チ ャ
RDBK_SIGN
R/W 6'h1f リ ー ド バ ッ ク コ マ ン ド お よ び SEU の リ ー ド バ ッ ク シ グネチ ャ
BOOTSTS R 6'h20 ブー ト 履歴レ ジ ス タ
EYE_MASK R/W 6'h21 マルチピ ン ウ ェー ク ア ッ プのマ ス ク ピ ン
CBC_REG W 6'h22 初期 CBC 値の レ ジ ス タ
表 5-24 : コ ン フ ィ ギ ュ レーシ ョ ン レ ジス タ (続き)
レ ジス タ 名 R/W ア ド レ ス 説明
表 5-25 : フ レーム ア ド レ スレ ジ ス タ (メ ジ ャ ー)
BLK 行 メ ジ ャ ー
ビ ッ ト [15:12] [11:8] [7:0]
0xxx xxxx xxxxxxxx
表 5-26 : フ レーム ア ド レ スレ ジ ス タ (マ イ ナー)
ブ ロ ッ ク RAM (予約済み) マ イ ナー
ビ ッ ト [15:14] [13:10] [9:0]
xx 0000 xxxxxxxxxx
• FAR_MAJ へ 2 ワ ー ド 書 き 込み : FAR_MAJ お よ び FAR_MIN の両方を ア ッ プデー ト 。 FAR_MAJ のデー タ が先です。
FDRI レ ジ ス タ
WCFG コ マ ン ド で コ マ ン ド レ ジ ス タ を ロ ー ド し 、 次にフ レームデー タ 入力レ ジ ス タ を ロ ー ド す る こ と で、 コ ン フ ィ ギ ュ レーシ ョ ンデー タ はデバ イ ス に書 き 込まれます。
FDRO レ ジ ス タ
FDRO はデバ イ ス か ら の コ ン フ ィ ギ ュ レーシ ョ ン デー タ ま たは取 り 込まれたデー タ の読み出 し 用 です。RCFG コ マ ン ド で コ マ ン ド レ ジ ス タ を ロ ー ド し 、 次に読み出 し コ マ ン ド で FDRO を ア ド レ ス化 し て リ ー ド バ ッ ク を実行 し ます。
MASK レ ジ ス タ
MASK レ ジ ス タ は CTL レ ジ ス タ への書 き 込みを実行 し ます。 マ ス ク のビ ッ ト N の 1 は、CTL レ ジ ス タ でのビ ッ ト 位置の書 き 込みを許可 し ます。 マ ス ク のデフ ォ ル ト 値は 0 です。
EYE_MASK レ ジ ス タ
EYE_MASK レ ジ ス タ は、 マルチピ ン ウ ェー ク ア ッ プ機能の SCP ピ ンのマ ス ク を格納 し ます。16 ビ ッ ト で、 下位 8 ビ ッ ト はマ ス ク を表 し ます。 上位 8 ビ ッ ト は予約 さ れてい ます。 下位 8 ビ ッ ト は BitGen の-g wakeup_maskオプシ ョ ンで設定 し ます。
LOUT レ ジ ス タ
レ ガシ出力レ ジ ス タ (LOUT) は コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ーム をほかのザ イ リ ン ク ス デバ イ ス にデ イ ジーチ ェーン接続す る ために使用 し ます。LOUT に書 き込まれ るデー タ はシ リ アル 化 さ れ DOUT ピ ンに出力 さ れます。
CBC_REG レ ジ ス タ
こ の レ ジ ス タ は、AES 復号化の初期ベ ク タ (IV) を保持す る ためのビ ッ ト ス ト リ ーム圧縮で使用 さ れます。
IDCODE レ ジ ス タ
こ の レ ジ ス タ への書 き 込みは、FDRI レ ジ ス タ へのすべての書 き 込みに先行す る 必要があ り ます。こ の IDCODE はデバ イ ス の IDCODE と 一致す る 必要があ り ます。詳細は、78 ページの「 コ ン フ ィ ギ ュ レーシ ョ ン シーケ ン ス」を参照 し て く だ さ い。
こ の レ ジ ス タ の読み出 し でデバ イ ス IDCODE が返 さ れます。
CSBO レ ジ ス タ
CSBO レ ジ ス タ は CSB_O 信号を アサー ト し 、指定 さ れてい る ワー ド カ ウ ン ト の入力デー タ を無視 す る よ う に設計 さ れてい ます。LOUT レ ジ ス タ と ほぼ同様に機能 し ますが、CSB_O が Low の と き にのみ出力 し 、 デー タ は渡 さ れないのが違いです。LOUT レ ジ ス タ の よ う に、 デ イ ジーチ ェーン接 続がサポー ト で き る よ う 異な る デバ イ ス に対 し 複数の コ ールを ネ ス ト す る こ と がで き ます。
コ マ ン ド レ ジ ス タ (CMD)
コ マ ン ド レ ジ ス タ は、 コ ン フ ィ ギ ュ レーシ ョ ン制御 ロ ジ ッ ク を グ ロ ーバル信号を ス ト ロ ーブす る よ う 命令 し 、 ほかの コ ン フ ィ ギ ュ レーシ ョ ン フ ァ ン ク シ ョ ン を実行す る ために使用 し ます。CMD レ