...

MAX 10 FPGAコンフィギュレーション・ユーザー・ガイド

by user

on
Category: Documents
1310

views

Report

Comments

Transcript

MAX 10 FPGAコンフィギュレーション・ユーザー・ガイド
MAX 10 FPGA コンフィグレーション・ユ
ーザーガイド
更新情報
フィードバック
UG-M10CONFIG
2016.10.31
101 Innovation Drive
San Jose, CA 95134
www.altera.com
目次-2
目次
MAX 10 FPGA コンフィグレーションの概要............................................... 1-1
®
MAX 10 FPGA のコンフィグレーション手法と機能..................................... 2-1
コンフィグレーション手法....................................................................................................................2-1
JTAG コンフィグレーション......................................................................................................2-1
内部コンフィグレーション........................................................................................................2-2
コンフィグレーション機能..................................................................................................................2-11
リモート・システム ・アップグレード................................................................................2-11
コンフィグレーション・デザイン・セキュリティー..................................................... 2-19
SEU の緩和とコンフィグレーション・エラーの検出..................................................... 2-24
コンフィグレーション・データの圧縮................................................................................2-28
コンフィグレーションの詳細............................................................................................................. 2-29
コンフィグレーション・シーケンス.................................................................................... 2-29
MAX 10 のコンフィグレーション・ピン.............................................................................2-32
MAX 10 FPGA コンフィグレーション・デザインのガイドライン..............3-1
兼用コンフィグレーション・ピン.......................................................................................................3-1
ガイドライン:兼用コンフィグレーション・ピン............................................................3-1
兼用ピンのイネーブル.................................................................................................................3-3
JTAG コンフィグレーションによる MAX 10 デバイスのコンフィグレーション..................3-3
JTAG コンフィグレーションのセットアップ....................................................................... 3-4
JTAG コンフィグレーションの ICB 設定............................................................................... 3-6
内部コンフィグレーションを使用する MAX 10 デバイスのコンフィグレーション........... 3-7
内部コンフィグレーション・モードの選択......................................................................... 3-7
.pof と ICB 設定.............................................................................................................................. 3-7
内部フラッシュへの.pof のプログラミング........................................................................3-10
Quartus Prime ソフトウェアで ISP クランプを実装する.............................................................3-10
IPS ファイルの作成.....................................................................................................................3-11
IPS ファイルの実行.....................................................................................................................3-11
ユーザーロジックを介したリモート・システム ・アップグレードへのアクセス.............3-11
エラー検出................................................................................................................................................ 3-13
エラー検出機能の検証.............................................................................................................. 3-13
エラー検出の有効化...................................................................................................................3-14
ユーザーロジックを通じたエラー検出ブロックへのアクセス....................................3-15
データ圧縮の有効化...............................................................................................................................3-17
デザインのコンパイルの前に圧縮を有効にする.............................................................. 3-17
Altera Corporation
目次-3
デザインのコンパイル後に圧縮を有効にする...................................................................3-18
AES 暗号化.................................................................................................................................................3-18
.ekp ファイルからの.jam/.jbc/.svf ファイルの生成.............................................................3-18
.ekp ファイルと暗号化された POF ファイルのプログラミング................................... 3-19
内部コンフィグレーションでの暗号化................................................................................3-20
MAX 10 JTAG のセキュアデザインの例........................................................................................... 3-23
内部 JTAG インターフェイス.................................................................................................. 3-23
内部 JTAG ブロックアクセスの WYSIWYG アトム.......................................................... 3-24
LOCK および UNLOCK JTAG 命令の実行............................................................................3-26
JTAG セキュアモードの検証....................................................................................................3-28
MAX 10 FPGA コンフィグレーション IP コア実装ガイド............................4-1
アルテラ・ユニークチップ ID IP コア............................................................................................... 4-1
アルテラ・ユニークチップ ID IP コアのインスタンス化................................................ 4-1
アルテラ・ユニークチップ ID IP コアのリセット............................................................. 4-2
アルテラ・デュアル・コンフィグレーション IP コア..................................................................4-2
アルテラ・デュアル・コンフィグレーション IP コアのインスタンス化...................4-2
アルテラ・デュアル・コンフィグレーション IP コアの参考資料..............5-1
アルテラ・デュアル・コンフィグレーション IP コアの Avalon-MM アドレスマップ.......5-1
アルテラ・デュアル・コンフィグレーション IP コアのパラメーター................................... 5-4
アルテラ・ユニークチップ ID IP コアの参考資料........................................ 6-1
アルテラ・ユニークチップ ID IP コアのポート..............................................................................6-1
MAX 10 FPGA コンフィグレーション・ユーザーガイドの追加情報......... A-1
MAX 10 FPGA コンフィグレーション・ユーザーガイドの改訂履歴.......................................A-1
Altera Corporation
MAX® 10 FPGA コンフィグレーションの概要
1
2016.10.31
UG-M10CONFIG
フィードバック
更新情報
MAX® 10 の CRAM(Configuration RAM)は、以下のコンフィグレーション手法を使用してコン
フィグレーションが可能です。
• JTAG インターフェイスを使用する JTAG コンフィグレーション
• 内部フラッシュを使用する内部コンフィグレーション
サポートされているコンフィグレーション機能
表 1-1: MAX 10 デバイスがサポートするコンフィグレーション 手法と機能
リモート・システ
コンフィグレーション手法 ム・アップグレー
ド
圧縮
デザイン・セキュ
リティー
SEU の緩和
JTAG コンフィグレー
ション
—
—
—
あり
内部コンフィグレーシ
ョン
あり
あり
あり
あり
関連する IP コア
• アルテラ・デュアル・コンフィグレーション IP コア—リモート・システム ・アップグレード
機能で使用する
• アルテラ・ユニーク・チップ ID IP コア— MAX 10 デバイスのチップ ID を取得する
関連情報
• 2-1 ページの MAX 10 FPGA のコンフィグレーション手法と機能
コンフィグレーション手法と機能について情報を提供します。
• 3-1 ページの MAX 10 FPGA コンフィグレーション・デザインのガイドライン
コンフィグレーション手法と機能の使用について情報を提供します。
• 2-21 ページの アルテラ・ユニークチップ ID IP コア
• 2-18 ページの アルテラ・デュアル・コンフィグレーション IP コア
Intel Corporation. All rights reserved. Intel, the Intel logo, Altera, Arria, Cyclone, Enpirion, MAX, Nios, Quartus and Stratix words and logos are trademarks of
Intel Corporation or its subsidiaries in the U.S. and/or other countries. Intel warrants performance of its FPGA and semiconductor products to current
specifications in accordance with Intel's standard warranty, but reserves the right to make changes to any products and services at any time without notice.
Intel assumes no responsibility or liability arising out of the application or use of any information, product, or service described herein except as expressly
agreed to in writing by Intel. Intel customers are advised to obtain the latest version of device specifications before relying on any published information
and before placing orders for products or services.
*Other names and brands may be claimed as the property of others.
www.altera.com
101 Innovation Drive, San Jose, CA 95134
ISO
9001:2008
登録済
2
MAX 10 FPGA のコンフィグレーション手法と
機能
2016.10.31
UG-M10CONFIG
フィードバック
更新情報
コンフィグレーション手法
図 2-1: MAX 10 デバイスの JTAG コンフィグレーションおよび内部コンフィグレーションの上位レベル
の概要
JTAG Configuration
Configuration Data
.sof
MAX 10 Device
CRAM
Internal
Configuration
.pof
CFM
JTAG In-System Programming
JTAG コンフィグレーション
MAX 10 デバイスでは、JTAG 命令は内部コンフィグレーション手法よりも優先されます。
JTAG コンフィグレーション手法を使用して、JTAG インターフェイスの TDI、TDO、TMS および
TCK ピンを介して直接的にデバイスの CRAM をコンフィグレーションすることができます。
Quartus® Prime ソフトウェアは SRAM オブジェクト・ファイル(.sof)を自動的に生成します。.sof
は、ダウンロード・ケーブルと Quartus Prime ソフトウェア・プログラマーを使用してプログラ
ミングが可能です。
関連情報
3-3 ページの JTAG コンフィグレーションによる MAX 10 デバイスのコンフィグレーション
Quartus Prime ソフトウェア・プログラマーとダウンロード・ケーブルを使用する JTAG コンフィ
グレーションについて詳しい情報を提供します。
Intel Corporation. All rights reserved. Intel, the Intel logo, Altera, Arria, Cyclone, Enpirion, MAX, Nios, Quartus and Stratix words and logos are trademarks of
Intel Corporation or its subsidiaries in the U.S. and/or other countries. Intel warrants performance of its FPGA and semiconductor products to current
specifications in accordance with Intel's standard warranty, but reserves the right to make changes to any products and services at any time without notice.
Intel assumes no responsibility or liability arising out of the application or use of any information, product, or service described herein except as expressly
agreed to in writing by Intel. Intel customers are advised to obtain the latest version of device specifications before relying on any published information
and before placing orders for products or services.
*Other names and brands may be claimed as the property of others.
www.altera.com
101 Innovation Drive, San Jose, CA 95134
ISO
9001:2008
登録済
2-2
UG-M10CONFIG
2016.10.31
JTAG ピン
JTAG ピン
表 2-1: JTAG ピン
ピン
機能
TDI
以下に用いるシリアル入力ピン
TDO
以下に用いるシリアル出力ピン
TMS
TCK
概要
• TDI は TCK の立ち上がりエッジでサンプリン
• 命令
グされる
•
• バウンダリー・スキャン・テスト・
TDI ピンは内部ウィークプルアップ抵抗を
データ
備えている
• プログラミング・データ
• TDO は TCK の立ち下がりエッジでサンプリン
• 命令
グされる
•
• バウンダリー・スキャン・テスト・
このピンは、データがデバイスからシフトア
ウトされない場合にはトライステートにな
データ
る
• プログラミング・データ
TAP コントローラー・ステート・マシ • TMS は TCK の立ち上がりエッジでサンプリン
ンの遷移を決定するコントロール信
グされる
号を提供する入力ピン
• TMS ピンは内部ウィークプルアップ抵抗を
備えている
BST 回路へのクロック入力
—
すべての JTAG ピンは、VCCIO 1B によって駆動されます。JTAG モードでは、I/O ピンは LVTTL
あるいは LVCMOS の 3.3 V~1.5 V の規格をサポートします。
関連情報
• MAX 10 Device Datasheet
MAX 10 デバイスでサポートされる I/O 規格について詳しい情報を提供します。
• 3-1 ページの ガイドライン:兼用コンフィグレーション・ピン
• 3-3 ページの 兼用ピンのイネーブル
内部コンフィグレーション
内部コンフィグレーションを行う前に、コンフィグレーション・データをコンフィグレーショ
ン・フラッシュメモリー(CFM)にプログラミングしておく必要があります。CFM に書き込ま
れるコンフィグレーション・データは、プログラム・オブジェクト・ファイル(.pof)の一部
になります。JTAG インシステム ・プログラミング(ISP)を使用して、.pof を内部フラッシュ
にプログラミングします。
内部コンフィグレーション時には、 MAX 10 デバイスは CFM からのコンフィグレーション・デ
ータを CRAM にロードします。
Altera Corporation
MAX 10 FPGA のコンフィグレーション手法と機能
フィードバック
UG-M10CONFIG
2016.10.31
内部コンフィグレーション・モード
2-3
内部コンフィグレーション・モード
表 2-2: MAX 10 の機能オプションごとの内部コンフィグレーション・モード・サポート
MAX 10 機能オプション
サポートされる内部コンフィグレーション・モード
コンパクト
• Single Compressed Image
• Single Uncompressed Image
フラッシュおよびアナログ
•
•
•
•
•
Dual Compressed Images
Single Compressed Image
Single Compressed Image with Memory Initialization
Single Uncompressed Image
Single Uncompressed Image with Memory Initialization
注意: Dual Compressed Images モードでは、CONFIG_SEL ピンを使用してコンフィグレーション・
イメージを選択します。
関連情報
• 3-7 ページの 内部コンフィグレーションを使用する MAX 10 デバイスのコンフィグレーシ
ョン
• 2-11 ページの リモート・システム ・アップグレード
コンフィグレーション・フラッシュメモリー
CFM は、コンフィギュレーショ・イメージを格納するために使用する不揮発性の内部フラッシ
ュです。CFM は、圧縮されたコンフィグレーション・イメージを、圧縮率と MAX 10 のデバイ
スに応じて最大で 2 つまで格納することができます。デバイスで 2 つのコンフィグレーショ
ン・イメージを格納するには、圧縮率を 30% 以上にする必要があります。
関連情報
2-23 ページの コンフィグレーション・フラッシュメモリーへのアクセス 許可
コンフィグレーション・フラッシュメモリーのセクター
10M02 を除く MAX 10 デバイスの CFM はすべて、CFM0、CFM1、CFM2 の 3 つのセクターで構
成されています。セクターは、選択した内部コンフィグレーション・モードに応じて異なる方法
でプログラミングされます。
10M02 デバイスは CFM0 のみで構成されています。シングル圧縮イメージまたはシングル非圧
縮イメージを選択すると、10M02 デバイスの CFM0 セクターは同じような方法でプログラミン
グされます。
MAX 10 FPGA のコンフィグレーション手法と機能
フィードバック
Altera Corporation
2-4
UG-M10CONFIG
2016.10.31
コンフィグレーション・フラッシュメモリーのプログラミング時間
図 2-2: アナログ機能オプションおよびフラッシュ機能オプションでのすべての MAX 10 デバイスのコン
フィグレーション・フラッシュメモリー・セクターの使用方法
未使用の CFM1 セクターと CFM2 セクターは、ユーザ・フラッシュメモリー(UFM)として使
用することができます。
Internal Configuration
Mode
User Flash Memory Sectors
UFM1
UFM0
Configuration Flash Memory Sectors
CFM2
CFM1
CFM0
Compressed
Image 0
Dual Compressed Image
UFM
Compressed Image 1
Single Uncompressed Image
UFM
Single Uncompressed Image
with Memory Initialization
UFM
Uncompressed Image 0 with Memory Initialization
Single Compressed Image
with Memory Initialization
UFM
Compressed Image 0 with Memory Initialization
Single Compressed Image
UFM
Additional UFM
Uncompressed Image 0
Additional UFM
Compressed
Image 0
関連情報
CFM と UFM のアレイサイズ
UFM と CFM のセクターサイズについて詳しい情報を提供します。
コンフィグレーション・フラッシュメモリーのプログラミング時間
表 2-3: MAX 10 デバイスでのコンフィグレーション・フラッシュメモリーのセクターに対するプログラ
ミング時間
注意: プログラミング時間は、システム・オーバーヘッドのみを除外した JTAG インターフェイ
スのプログラミング時間を示します。これはユーザーが経験する実際のプログラミング
時間を示したものではありません。システム ・オーバーヘッドを補償するために、
MAX 10 10M04/08/16/25/40/50 デバイスでは、デバイス・プログラミング時にフラッシュ・
パラレル・モードを活用するために Quartus Prime Programmer は強化されます。10M02 デ
バイスはフラッシュ・パラレル・モードをサポートしておらず、他のデバイスとの比較に
おいてプログラミング時間が長くなります。
デバイス
インシステム ・プログラミング時間(秒)
CFM2
CFM1
CFM0
10M02
—
—
5.4
10M04 と 10M08
6.5
4.6
11.1
10M16
12.0
8.9
20.8
Altera Corporation
MAX 10 FPGA のコンフィグレーション手法と機能
フィードバック
UG-M10CONFIG
2016.10.31
インシステム ・プログラミング
デバイス
2-5
インシステム ・プログラミング時間(秒)
CFM2
CFM1
CFM0
10M25
16.4
12.6
29.0
10M40 と 10M50
30.2
22.7
52.9
インシステム ・プログラミング
MAX 10 デバイスの CFM を含む内部フラッシュを、業界標準の IEEE 1149.1 JTAG インターフェ
イスを介する ISP によってプログラミングすることができます。ISP は、CFM をプログラミン
グ、消去、および検証する機能を提供します。 MAX 10 デバイスの JTAG 回路と ISP 命令は、
IEEE-1532-2002 のプログラミング仕様に準拠しています。
MAX 10 デバイスは、ISP 時に TDI 入力ピンを介して IEEE Std. 1532 命令、アドレス、およびデー
タを受信します。データは TDO 出力ピンを介してシフトアウトされ、期待されるデータと比較さ
れます。
以下は、ISP 動作の基本的な流れです。
1. ID の確認—あらゆるプログラミングまたは検証処理の前に JTAG ID が確認されます。JTAG
ID 読み出しの所要時間は、全体的なプログラミング時間との比較においてごく僅かです。
2. ISP の開始—I/O ピンがユーザーモードから ISP モードにスムーズに遷移するようにします。
3. セクター消去—デバイス消去のためにアドレスと命令をシフトインし、消去パルスを印加し
ます。
4. プログラミング—アドレス、データ、プログラミング命令をシフトインし、フラッシュセル
をプログラミングするためのプログラミング・パルスを生成します。この処理を内部フラッ
シュセクターの各アドレスごとに繰り返します。
5. 検証—アドレスをシフトインし、検証命令により読み出しパルスを生成し、比較用のデータ
をシフトアウトします。この処理を内部フラッシュのアドレスごとに繰り返します。
6. ISP の終了—I/O ピンが ISP モードからユーザーモードにスムーズに遷移するようにします。
Quartus Prime Programmer を使用して CFM をプログラミングすることもできます。
関連情報
3-10 ページの 内部フラッシュへの.pof のプログラミング
Quartus Prime Programmer を使用して.pof をプログラミングするためのステップを提供します。
ISP クランプ
通常の ISP 動作が開始する際には、すべての I/O ピンはトライステートになります。デバイスの
ISP 動作時にデバイスの I/O ピンがトライステートになることが望ましくない状況では、ISP ク
ランプ機能が使用できます。
ISP クランプ機能が使用される時、I/O ピンをトライステート、High、Low、またはサンプリング
および保持ステートにセットすることができます。 Quartus Prime ソフトウェアは、設定に基づ
いて各 I/O ピンのバウンダリー・スキャン・レジスターにスキャンされる値を決定します。これ
により、デバイス・プログラミングが進行中におけるピンがクランプされるステートが決定され
ます。
MAX 10 FPGA のコンフィグレーション手法と機能
フィードバック
Altera Corporation
2-6
UG-M10CONFIG
2016.10.31
リアルタイム ISP
I/O ピンをクランプする前に、適切な値をバウンダリー・スキャン・レジスターにロードするた
めに SAMPLE/PRELOAD JTAG 命令が最初に実行されます。適切な値をバウンダリー・スキャン・レ
ジスターにロードした後、EXTEST 命令が実行され、I/O ピンを SAMPLE/PRELOAD 実行時にバウンダ
リー・スキャン・レジスターにロードされた特定の値にクランプします。
デバイスが ISP クランプモードに入った時にピンの既存のステートをサンプリングし、ピンをそ
のステートに保持するように選択した場合は、信号が安定したステートになることを確認しなけ
ればなりません。サンプル・セットアップ・タイムは、ダウンロード・ケーブルやソフトウェア
だけでなく、TCK 周波数にも依存し、制御することはできないので、安定したステート信号が必
要です。トグルする信号、または長期間にわたってスタティックでない信号をサンプリングした
場合、キャプチャした値は正しくないことがあります。
関連情報
3-10 ページの Quartus Prime ソフトウェアで ISP クランプを実装する
リアルタイム ISP
新しいデザインイメージで内部フラッシュを更新するための通常の ISP 動作では、デバイスはユ
ーザーモードを終了し、すべての I/O ピンはトライステートになります。デバイスが新しいデザ
インイメージのプログラミングを完了すると、リセットし、ユーザーモードに入ります。
リアルタイム ISP 機能は、ユーザーモードで動作しながら、新しいデザインイメージで内部フラ
ッシュを更新します。内部フラッシュの更新中は、デバイスは既存のデザインで動作を続けま
す。新しいデザインイメージのプログラミング処理が完了しても、デバイスはリセットされませ
ん。新しいデザインイメージによる更新は次のコンフィグレーション・サイクルから有効になり
ます。
ISP 命令とリアルタイム ISP 命令
表 2-4: MAX 10 の ISP 命令とリアルタイム ISP 命令
命令
命令コード
CONFIG_IO
00 0000 1101
PULSE_NCONFIG
00 0000 0001
Altera Corporation
概要
• JTAG ポートを介して IOCSR を使用することに
より、JTAG テスト向けに I/O のリコンフィグレ
ーションを可能にする。これはコンフィグレー
ション中、もしくは終了後に実行される
• CONFIG_IO 命令を発行する前に、nSTATUS ピンが
High になる必要がある
nCONFIG ピンの
Low のパルスをエミュレーションす
ることにより、物理的なピンに作用を与えずにリコ
ンフィグレーションをトリガーする
MAX 10 FPGA のコンフィグレーション手法と機能
フィードバック
UG-M10CONFIG
2016.10.31
ISP 命令とリアルタイム ISP 命令
命令
命令コード
2-7
概要
ISC_ENABLE_HIZ (1)
10 1100 1100
• デバイスを ISP モードにし、すべての I/O ピンを
トライステートにし、すべてのコアドライバー、
ロジック、およびレジスターを駆動する
• ISC_DISABLE 命令がロードされ、更新されるまで、
デバイスは ISP モードを維持する
• ISC_ENABLE 命令は必須の命令。この要件は ISC_
ENABLE_CLAMP 命令または ISC_ENABLE_HIZ 命令に
よって満たされる
ISC_ENABLE_CLAMP (1)
10 0011 0011
• デバイスを ISP モードにし、すべての I/O ピンを
強制的に JTAG バウンダリー・スキャン・レジス
ターの内容に従わせる
• この命令がアクティブにされると、コアのドライ
バー、ロジック、およびレジスターのすべてが凍
結される。I/O ピンは、デバイスが正常に ISP モ
ードを終了するまでクランプされたままになる
ISC_DISABLE
10 0000 0001
• デバイスの ISP モードを終了させる
• ISC_DISABLE 命令は、テスト動作状態またはアイ
ドル状態で 200 µs 待機した後ただちに正常に終
了する
ISC_PROGRAM (2)
10 1111 0100
ISC_NOOP (2)
10 0001 0000
デバイスをインシステム ・プログラミングにセット
する。プログラミングは、テスト動作状態またはア
イドル状態で生じる
• ISP モードを終了することなくデバイスを非動作
モードにセットし、これは ISC_Default レジスタ
ーをターゲットにする
• 以下の場合に使用する
• 2 つ以上の ISP 準拠デバイスが ISP モードでア
クセスされている
• かつ、デバイスのサブセットが何らかの命令
を処理する間に、他のより複雑なデバイスが
与えられた処理の付加的なステップを仕上げ
ている
ISC_ADDRESS_SHIFT (2)
(1)
(2)
10 0000 0011
デバイスをフラッシュ・アドレスのロード向けにセ
ットする。フラッシュ・アドレス・レジスターであ
る ISC_Address をターゲットにする
ISC_ENABLE_HIZ 命令と ISC_ENABLE_CLAMP 命令はコアロジックから発行しないでください。
デバイスが ISP モードまたはリアルタイム ISP モードでなければ、ENABLE 命令と DISABLE 命令を
除くすべての ISP 命令とリアルタイム ISP 命令は無効にされます。
MAX 10 FPGA のコンフィグレーション手法と機能
フィードバック
Altera Corporation
2-8
UG-M10CONFIG
2016.10.31
初期化コンフィグレーション・ビット
命令
命令コード
概要
ISC_ERASE (2)
10 1111 0010
• 内部フラッシュの消去向けにデバイスをセット
する
• ISC_ADDRESS_SHIFT 命令の後に発行する
ISC_READ (2)
10 0000 0101
• 通常のユーザー・バイアス状態で内部フラッシュ
を検証するためにデバイスをセットする
• ISC_READ 命令は、バースト・モードとして知られ
ている、明確なアドレス指定と自動的なインクリ
メントをサポート
BGP_ENABLE
01 1001 1001
• デバイスをリアルタイム ISP モードにセットす
る
• デバイスのユーザーモードを維持しながら内部
フラッシュ・コンフィグレーション・セクターへ
アクセスすることを可能にする
BGP_DISABLE
01 0110 0110
• デバイスのリアルタイム ISP モードを終了させ
る
• リコンフィグレーションによりさえぎられると、
デバイスは BGP_DISABLE 命令を使用してリアル
タイム ISP モードを終了しなければならない
注意: サポートされていない JTAG 命令を使用しないでください。デバイスを未知の状態にし、
操作を回復するために電源の再投入が必要になる恐れがあります。
初期化コンフィグレーション・ビット
初期化コンフィグレーション・ビット(ICB)は MAX 10 デバイスのコンフィグレーション機能
の設定を格納しています。ICB 設定は Convert Programming File ツールにセットできます。
表 2-5: MAX 10 デバイス向け ICB 値およびその概要
コンフィグレーション設定
Set I/O to weak pull-up prior
usermode
Altera Corporation
概要
デフォルト状態と値
• 有効:デバイス・コンフィグレーション時
に I/O をウィークプルアップにセットする
• 無効:I/O をトライステートにする
有効
MAX 10 FPGA のコンフィグレーション手法と機能
フィードバック
UG-M10CONFIG
2016.10.31
初期化コンフィグレーション・ビット
コンフィグレーション設定
概要
Configure device from CFM0 有効:
only.
• CONFIG_SEL ピン設定がディスエーブルにさ
2-9
デフォルト状態と値
無効
れる
• デバイスは自動的にイメージ 0 をロードす
る
• イメージ 0 で不具合が生じた場合にデバイ
スはイメージ 1 をロードしない
無効:
• 最初のイメージで不具合が生じた場合にデ
バイスが自動的に Secondary イメージをロ
ードする
Use secondary image ISP data POF に含めるための ISP データを、Initial イメ
as default setting when
ージまたは Secondary イメージから選択しま
available.
す。
無効
• 無効:Initial イメージからの ISP データを使
用する
• 有効:Secondary イメージからの ISP データ
を使用する
ISP データは、ISP 時のピンの状態の情報を含
んでいます。これはウィークプルアップを使
用するトライステートにもでき、I/O の状態を
クランプすることもできます。ISP クランプ
は、Device and Pin Option または Pin
Assignment ツールから設定できます。
(3)
Verify Protect
検証プロテクト機能を有効または無効にする
無効
Allow encrypted POF only
有効にすると、暗号化されていない.pof を使
用した場合にコンフィグレーション・エラーが
生じる
無効
JTAG Secure(3)
JTAG セキュア機能を有効または無効にする
無効
Enable Watchdog
リモート・システム・アップグレード向けにウ
ォッチドッグ・タイマーを有効または無効にす
る
有効
JTAG セキュア機能は、 Quartus Prime ではデフォルトで無効にされています。JTAG セキュア機能
を使用するためのサポートについては、アルテラにお問い合わせください。
MAX 10 FPGA のコンフィグレーション手法と機能
フィードバック
Altera Corporation
2-10
UG-M10CONFIG
2016.10.31
内部コンフィグレーション時間
コンフィグレーション設定
Watchdog value
概要
デフォルト状態と値
リモート・システム・アップグレード向けにウ
ォッチドッグ・タイマーの値を設定する
0x1FFF (4)
関連情報
•
•
•
•
•
•
3-7 ページの .pof と ICB 設定
2-22 ページの Verify Protect
2-21 ページの JTAG セキュアモード
2-6 ページの ISP 命令とリアルタイム ISP 命令
2-18 ページの ユーザー・ウォッチドッグ・タイマー
3-8 ページの Convert Programming Files を使用して.pof を生成する
Convert Programming File を使用して.pof を生成する際の ICB 設定について、詳しい情報を提
供します。
内部コンフィグレーション時間
内部コンフィグレーション時間の測定は、nSTATUS 信号の立ち上がりエッジから CONF_DONE 信号
の立ち上がりエッジまでになります。
表 2-6: MAX 10 デバイスの内部コンフィグレーション時間(非圧縮.rbf)
内部コンフィグレーション時間(ms)
デバイス
暗号化なし
メモリー初期化なし
暗号化あり
メモリー初期化あり
メモリー初期化なし
メモリー初期化あり
最小値
最大値
最小値
最大値
最小値
最大値
最小値
最大値
10M02
0.3
1.7
—
—
1.7
5.4
—
—
10M04
0.6
2.7
1.0
3.4
5.0
15.0
6.8
19.6
10M08
0.6
2.7
1.0
3.4
5.0
15.0
6.8
19.6
10M16
1.1
3.7
1.4
4.5
9.3
25.3
11.7
31.5
10M25
1.0
3.7
1.3
4.4
14.0
38.1
16.9
45.7
10M40
2.6
6.9
3.2
9.8
41.5
112.1
51.7
139.6
10M50
2.6
6.9
3.2
9.8
41.5
112.1
51.7
139.6
表 2-7: MAX 10 デバイスの内部コンフィグレーション時間(圧縮.rbf)
圧縮率はデザインの複雑さによって変化します。最小値はベストケース (オリジナルの.rbf サ
イズの 25%)に基づいており、最大値は標準ケース(オリジナルの.rbf サイズの 70%)に基づいて
います。
(4)
ウォッチドッグ・タイマーの値は使用する MAX 10 デバイスによって異なります。詳しくはユーザ
ー・ウォッチドッグ・タイマーの項を参照してください。
Altera Corporation
MAX 10 FPGA のコンフィグレーション手法と機能
フィードバック
UG-M10CONFIG
2016.10.31
コンフィグレーション機能
2-11
内部コンフィグレーション時間(ms)
デバイス
暗号化なし/暗号化あり
メモリー初期化なし
メモリー初期化あり
最小値
最大値
最小値
最大値
10M02
0.3
5.2
—
—
10M04
0.6
10.7
1.0
13.9
10M08
0.6
10.7
1.0
13.9
10M16
1.1
17.9
1.4
22.3
10M25
1.1
26.9
1.4
32.2
10M40
2.6
66.1
3.2
82.2
10M50
2.6
66.1
3.2
82.2
コンフィグレーション機能
リモート・システム ・アップグレード
MAX 10 デバイスは、リモート・システム・アップグレード機能をサポートしています。デュア
ル圧縮イメージでの内部コンフィグレーション・モードを選択した際には、リモート・システ
ム・アップグレード機能はデフォルトで有効になります。
MAX 10 デバイスのリモート・システム ・アップグレード機能は、以下の機能を提供します。
•
•
•
•
リモート・コンフィグレーションの制御
エラー検出、エラーリカバリーと、エラー情報の提供
ダイレクト・アプリケーション・コンフィグレーション・イメージをサポート
圧縮され、暗号化された.pof をサポート
MAX 10 デバイスでリモート・システム ・アップグレードにアクセスするには、以下の 2 通りの
方法があります。
• アルテラ・デュアル・コンフィグレーション IP コア
• ユーザー・インターフェイス
関連情報
• 2-18 ページの アルテラ・デュアル・コンフィグレーション IP コア
• 3-11 ページの ユーザーロジックを介したリモート・システム ・アップグレードへのアクセス
• AN 741: Remote System Upgrade for MAX 10 FPGA Devices over UART with the Nios II Processor
MAX 10 FPGA デバイスのリモート・システム・アップグレード向けリファレンス・デザイン
を提供します。
• I2C Remote System Update Example
この例では、I2C プロトコルの使用によるリモート・システム ・アップグレードを示します。
MAX 10 FPGA のコンフィグレーション手法と機能
フィードバック
Altera Corporation
2-12
UG-M10CONFIG
2016.10.31
リモート・システム ・アップグレードのフロー
リモート・システム ・アップグレードのフロー
アプリケーション・コンフィグレーション・イメージであるイメージ 0 とイメージ 1 は、どちら
も CFM に格納されます。 MAX 10 デバイスは、CFM からどちらか 1 つのアプリケーション・コ
ンフィグレーション・イメージをロードします。
図 2-3: MAX 10 デバイスのリモート・システム ・アップグレードのフロー
リコ
ー
シ
ョ
ン
パワーアップ
レ
グ
フィ
ィグ
ンフ
CONFIG_SEL ピンを
サンプリング
ン
コ
リ
CONFIG_SEL=0
CONFIG_SEL=1
パワーアップ
ン
ショ
レー
Configure device
from CFM0 only が
有効にされた際のフロー
最初のエラーが発生
Image 0
Image 1
2番目の
エラーが発生
ン
ョ
シ
ー
生
発
ー
ラ
レ
グ
ィ
フ
ン
エ
コ
リ
2番目の
エラーが発生
リコンフィグレーション
まで待機
リコ
ンフ
ィグ
レー
ショ
ン
最初のエラーが発生
リモート・システム ・アップグレード機能は、以下のシーケンスでエラーを検出します。
1. 電源投入後、デバイスは CONFIG_SEL ピンをサンプリングして、どちらのアプリケーション・
コンフィグレーション・イメージをロードするかを判断します。後に続くリコンフィグレー
ションのために、リモート・システム ・アップグレード回路の入力レジスターによって
CONFIG_SEL ピンの設定を上書きすることができます。
2. エラーが生じると、リモート・システム ・アップグレード機能はもう一方のアプリケーショ
ン・コンフィグレーション・イメージをロードすることにより回復します。以下に示すエラ
ーにより、リモート・システム ・アップグレード機能はもう一方のアプリケーション・コン
フィグレーション・イメージをロードします。
Altera Corporation
MAX 10 FPGA のコンフィグレーション手法と機能
フィードバック
UG-M10CONFIG
2016.10.31
リモート・システム ・アップグレード回路
2-13
• 内部 CRC エラー
• ユーザー・ウォッチドッグ・タイマーのタイムアウト
3. 回復のコンフィグレーションが完了してデバイスがユーザーモードになると、リモート・シ
ステム・アップグレード回路を使用して、エラーの原因およびどちらのアプリケーション・
イメージで障害が発生したかを確認することができます。
4. 2 番目のエラーが発生した場合、デバイスはリコンフィグレーション・ソースを待ちます。
Auto-restart configuration after error が有効になっていれば、デバイスはリコンフィグレーシ
ョン・ソースを待つことなくリコンフィグレーションします。
5. リコンフィグレーションは、以下の操作によってトリガーされます。
• 外部から nSTATUS を Low に駆動する
• 外部から nCONFIG を Low に駆動する
• RU_nCONFIG を Low に駆動する
リモート・システム ・アップグレード回路
図 2-4: リモート・システム ・アップグレード回路
Internal Oscillator
Status Register (SR)
Previous
State
Register 2
Bit[31..0]
Current
State
Logic
Bit[33..0]
Previous
State
Register 1
Bit[31..0]
Control Register
Bit [38..0]
Logic
Input Register
Bit [38..0]
update
RU
Master
State
Machine
Logic
RU
Reconfiguration
State
Machine
Shift Register
din
Bit [40..39]
dout
din
dout
Bit [38..0]
capture
clkout capture
Logic
RU_DIN
RU_SHIFTnLD
update
clkin
RU_CLK
RU_CAPTnUPDT
timeout User
Watchdog
Timer
RU_DOUT
RU_nCONFIG
RU_nRSTIMER
Logic Array
リモート・システム ・アップグレード回路は、以下のように機能します。
MAX 10 FPGA のコンフィグレーション手法と機能
フィードバック
Altera Corporation
2-14
UG-M10CONFIG
2016.10.31
リモート・システム ・アップグレード回路の信号
•
•
•
•
•
コンフィグレーションの現在の状態をトラッキングする
すべてのリコンフィグレーション・ソースをモニタリングする
アプリケーション・コンフィグレーション・イメージを設定できるようにする
エラーが発生した場合に、デバイスをフォールバック・コンフィグレーションに戻す
失敗したアプリケーション・コンフィグレーション・イメージの情報へのアクセスを提供す
る
リモート・システム ・アップグレード回路の信号
表 2-8: MAX 10 デバイスのリモート・システム ・アップグレード回路の信号
コア信号名
RU_DIN
RU_DOUT
RU_nRSTIMER
RU_nCONFIG
RU_CLK
Altera Corporation
ロジック信号名
regin
regout
rsttimer
rconfig
clk
入力/出力
概要
入力
シフトレジスターへのデータの書き込みのために、
RU_CLK の立ち上がりエッジでこの信号を使用する。
シフトレジスターへデータをロードするには、RU_
SHIFTnLD をアサートする
出力
シフトレジスターから出力データを取得するため
に、この信号を使用する。RU_SHIFTnLD がアサート
されている場合に RU_CLK の各立ち上がりエッジで
データが出力される
入力
• ユーザー・ウォッチドッグ・タイマーをリセット
するためにこの信号を使用する。この信号の立
ち下がりエッジでユーザー・ウォッチドッグ・タ
イマーのリセットがトリガーされる
• タイマーをリセットするには、RU_nRSTIMER 信号
を少なくとも 250 ns パルスする
入力
デバイスのリコンフィグレーションのために、この
信号を使用する。リモート・システム・アップグレ
ード機能を有効にしている場合にこの信号を Low
に駆動すると、デバイスのリコンフィグレーション
がトリガーされる
入力
リモート・システム・アップグレード回路のクロッ
ク。リモート・システム・アップグレード機能を有
効にしている場合のユーザーモードで、このクロッ
クドメイン内のすべてのレジスターが有効にされ
る。シフトレジスターと入力レジスターはポジテ
ィブ・エッジ・フリップフロップ
MAX 10 FPGA のコンフィグレーション手法と機能
フィードバック
UG-M10CONFIG
2016.10.31
リモート・システム ・アップグレード回路の入力コントロール
コア信号名
ロジック信号名
RU_SHIFTnLD
入力/出力
入力
shiftnld
RU_CAPTnUPDT
入力
captnupdt
2-15
概要
リモート・システム・アップグレード回路のモード
を決定する信号を制御する
• RU_SHIFTnLD が Low に駆動され、RU_CAPTnUPDT が
Low に駆動されると、入力レジスターに RU_CLK
の立ち上がりエッジでシフトレジスターの内容
がロードされる
• RU_SHIFTnLD が Low に駆動され、RU_CAPTnUPDT が
High に駆動されると、シフトレジスターは RU_
CLK の立ち上がりエッジで input_cs_ps モジュー
ルから値をキャプチャする
• RU_SHIFTnLD が High に駆動されると RU_
CAPTnUPDT は無視され、シフトレジスターは RU_
CLK の立ち上がりエッジごとにデータをシフト
する
関連情報
MAX 10 Device Datasheet
リモート・システム ・アップグレードのタイミング仕様について詳しい情報を提供します。
リモート・システム ・アップグレード回路の入力コントロール
リモート・システム ・アップグレード回路には 3 つの動作モードがあります。
• アップデート — 入力レジスターにシフトレジスターの値をロードする
• キャプチャ — シフトアウトされるデータをシフトレジスターにロードする
• シフト — ユーザーロジックにデータをシフトアウトする
表 2-9: リモート・システム ・アップグレード回路へのコントロール入力
リモート・システム ・アップグレード回路のコントロール入力
RU_SHIFTnLD
RU_CAPTnUPDT
0
0
0
1
0
1
シフトレジス
ター[40]
ドント・ケア ドント・ケア
0
0
MAX 10 FPGA のコンフィグレーション手法と機能
フィードバック
シフトレジス
ター[39]
0
1
レジスターの入力設定
動作モード
シフトレジス
ター[38:0]
入力レジスタ
ー[38:0]
アップデー
ト
シフトレジ
スター[38:0]
シフトレジス
ター[38:0]
キャプチャ
現在のステ
ート
入力レジスタ
ー[38:0]
キャプチャ
{8'b0、前回の
ステート・ア 入力レジスタ
ー[38:0]
プリケーシ
ョン 1}
Altera Corporation
2-16
UG-M10CONFIG
2016.10.31
リモート・システム ・アップグレードの入力レジスター
リモート・システム ・アップグレード回路のコントロール入力
RU_SHIFTnLD
RU_CAPTnUPDT
シフトレジス
ター[40]
シフトレジス
ター[39]
レジスターの入力設定
動作モード
0
1
1
0
キャプチャ
0
1
1
1
キャプチャ
1
ドント・ケア ドント・ケア ドント・ケア
シフト
シフトレジス
ター[38:0]
入力レジスタ
ー[38:0]
{8'b0、前回の
ステート・ア 入力レジスタ
ー[38:0]
プリケーシ
ョン 2}
入力レジス
ター[38:0]
入力レジスタ
ー[38:0]
{ru_din、シフ
入力レジスタ
トレジスタ
ー[38:0]
ー[38:1]}
以下に、リモート・システム ・アップグレード回路のコントロール入力の駆動例を示します。
• RU_SHIFTnLD を High に駆動し 1'b1 にすると、シフトレジスターは RU_CLK の各立ち上がりエッ
ジでデータをシフトし、RU_CAPTnUPDT は機能しない
• RU_SHIFTnLD と RU_CAPTnUPDT の両方を Low に駆動し 1'b0 にすると、入力レジスターに RU_CLK
の立ち上がりエッジでシフトレジスターの内容がロードされる
• RU_SHIFTnLD を Low に駆動し 1'b0 にし、RU_CAPTnUPDT を High に駆動して 1'b1 にすると、
シフトレジスターは RU_DCLK の立ち上がりエッジで値をキャプチャする
リモート・システム ・アップグレードの入力レジスター
表 2-10: MAX 10 デバイスのリモート・システム ・アップグレードの入力レジスター
ビット
名称
38:14
予約
13
ru_config_sel
12
ru_config_sel_
overwrite
11:0
予約
Altera Corporation
概要
予約—0 にセット
• 0:コンフィグレーション・イメージ 0 をロードする
• 1:コンフィグレーション・イメージ 1 をロードする
このビットは ru_config_sel_overwrite が 1 にセットされて
いる場合にのみ有効
• 0:CONFIG_SEL ピンの上書きをディスエーブルする
• 1:CONFIG_SEL ピンの上書きをイネーブルする
予約—0 にセット
MAX 10 FPGA のコンフィグレーション手法と機能
フィードバック
UG-M10CONFIG
2016.10.31
リモート・システム ・アップグレード・ステータス・レジスター
2-17
リモート・システム ・アップグレード・ステータス・レジスター
表 2-11: リモート・システム ・アップグレード・ステータス・レジスター— MAX 10 デバイスの現在の
ステート・ロジック・ビット
ビット
名称
33:30
msm_cs
29
ru_wd_en
28:0
wd_timeout_value
概要
マスター・ステート・マシン(MSM)の現在の状態
イネーブルされたユーザー・ウォッチドッグ・タイマーの現在の
状態。デフォルトステートはアクティブ High
全 29 ビットのウォッチドッグ・タイムアウトの現在の値
表 2-12: リモート・システム ・アップグレード・ステータス・レジスター— MAX 10 デバイスの前回の
ステートビット
ビット
名称
31
nCONFIG
30
crcerror
29
nstatus
28
wdtimer
27:26
予約
25:22
msm_cs
21:0
予約
概要
MAX 10 デバイスに以前のアプリケーション・コンフィグレーシ
ョンを終了させたリコンフィグレーション・ソースを示す、アク
ティブ High のフィールド。同時に生じた場合には、より大きな
数のビットが優先される。たとえば、nconfig と ru_nconfig が同
時にトリガーされると、nconfig は ru_nconfig よりも優先される
予約—0 にセット
リコンフィグレーション・イベントが発生した際の MSM の状
態。リコンフィグレーションは、デバイスにこれまでのアプリケ
ーション・コンフィグレーションを中断させる。
予約—0 にセット
関連情報
5-1 ページの アルテラ・デュアル・コンフィグレーション IP コアの Avalon-MM アドレスマッ
プ
マスター・ステート・マシン
マスター・ステート・マシン(MSM)は現在のコンフィグレーション・モードをトラッキング
し、また、ユーザー・ウォッチドッグ・タイマーを有効にします。
表 2-13: MAX 10 デバイスでのリモート・システム・アップグレードのマスター・ステート・マシンの現
在の状態の説明
msm_cs 値
0010
0011
状態の説明
イメージ 0 がロードされている
アプリケーション・イメージへの差し戻しが生じた後でイメージ
1 がロードされている
MAX 10 FPGA のコンフィグレーション手法と機能
フィードバック
Altera Corporation
2-18
UG-M10CONFIG
2016.10.31
ユーザー・ウォッチドッグ・タイマー
msm_cs 値
0100
0101
状態の説明
イメージ 1 がロードされている
アプリケーション・イメージへの差し戻しが生じた後でイメージ
0 がロードされている
ユーザー・ウォッチドッグ・タイマー
ユーザー・ウォッチドッグ・タイマーは、停止状態に陥ったデバイスによるアプリケーション・
コンフィグレーションの失敗を防ぎます。デバイスへのアプリケーション・コンフィグレーショ
ンのロードが成功すると、動作エラーを検出するためにタイマーを使用できます。
カウンタは 29 ビット幅で、2 29 の最大カウント値を有します。ユーザー・ウォッチドッグ・タ
イマーの値を指定する際には、上位側 12 ビットのみを指定します。タイマー設定の精度は 217
サイクルです。サイクル時間は、ユーザー・ウォッチドッグ・タイマーの内部オシレーターの周
波数に基づきます。カウンタおよびデバイスの内部オシレーターに基づいて、サイクル時間を 9
ms~244 s にセットできます。
図 2-5: MAX 10 デバイスのウォッチドッグ・タイマーの計算式
タイマーは、アプリケーション・コンフィグレーションがユーザーモードに入るとすぐにカウン
トを開始します。リモート・システム・アップグレード回路は、タイマーが設定時間に達すると
タイムアウト信号を生成し、ステータスレジスターを更新し、回復コンフィグレーション・イメ
ージのロードをトリガーします。タイマーをリセットするには、RU_NRSTIMER を 250 ns 以上パル
スします。
ウォッチドッグ・タイマーを有効にすると、この設定はすべてのイメージに適用され、すべての
イメージがタイマーをリセットするためのソフトロジック・コンフィグレーションを含むことが
必要になります。アプリケーション・コンフィグレーションは、コントロール・ブロックのレジ
スターをリセットします。
関連情報
• ユーザ・ウォッチドッグ内部回路のタイミング仕様
ユーザー・ウォッチドッグの周波数について詳しい情報を提供します。
• 2-8 ページの 初期化コンフィグレーション・ビット
アルテラ・デュアル・コンフィグレーション IP コア
アルテラ・デュアル・コンフィグレーション IP コアは、Avalon-MM インターフェイスを介して
以下の機能を提供します。
Altera Corporation
MAX 10 FPGA のコンフィグレーション手法と機能
フィードバック
UG-M10CONFIG
2016.10.31
コンフィグレーション・デザイン・セキュリティー
2-19
• RU_nCONFIG をアサートしてリコンフィグレーションをトリガーする
• ウォッチドッグ・タイマーが有効になっている場合に、RU_nRSTIMER をアサートしてウォッチ
ドッグ・タイマーをリセットする
• リモート・システム ・アップグレード回路の入力レジスターにコンフィグレーション設定を
書き込む
• リモート・システム ・アップグレード回路から情報を読み出す
図 2-6: アルテラ・デュアル・コンフィグレーション IP コアのブロック図
clk
nreset
Altera
Dual Configuration
avmm_rcv_address[2..0]
avmm_rcv_read
avmm_rcv_writedata[31..0]
avmm_rcv_write
avmm_rcv_readdata[31..0]
関連情報
• 5-1 ページの アルテラ・デュアル・コンフィグレーション IP コアの Avalon-MM アドレスマ
ップ
• Avalon Interface Specifications
アルテラ・デュアル・コンフィグレーション IP コアに用いる Avalon-MM インターフェイス
の仕様について詳しい情報を提供します。
• 4-2 ページの アルテラ・デュアル・コンフィグレーション IP コアのインスタンス化
• 5-1 ページの アルテラ・デュアル・コンフィグレーション IP コアの参考資料
• 2-11 ページの リモート・システム ・アップグレード
• AN 741: Remote System Upgrade for MAX 10 FPGA Devices over UART with the Nios II Processor
MAX 10 FPGA デバイスのリモート・システム・アップグレード向けリファレンス・デザイン
を提供します。
• I2C Remote System Update Example
この例では、I2C プロトコルの使用によるリモート・システム ・アップグレードを示します。
コンフィグレーション・デザイン・セキュリティー
MAX 10 のデザイン・セキュリティー機能は、以下の機能をサポートしています。
• 暗号化 — 高度暗号化規格(AES)を内蔵して 128 ビットキーの業界標準のデザイン・セキュ
リティー・アルゴリズムをサポート
• チップ ID — デバイス固有の識別子
• JTAG セキュアモード — JTAG 命令のアクセスを制限する
• 検証プロテクト — オプションで CFM 内容のリードバックをディスエーブルできる
AES 暗号化保護
MAX 10 のデザイン・セキュリティー機能は、デザインに以下のセキュリティー保護を提供しま
す。
MAX 10 FPGA のコンフィグレーション手法と機能
フィードバック
Altera Corporation
2-20
UG-M10CONFIG
2016.10.31
暗号化と復号
• 複製に対するセキュリティー—不揮発性キーは MAX 10 デバイス内に安全に保存され、いか
なるインターフェイスを介しても読み出しされません。このキーなしで攻撃者が暗号化され
たコンフィグレーション・イメージを復号することはできません。
• リバース・エンジニアリングに対するセキュリティー—暗号化されたコンフィグレーション・
ファイルからのリバース・エンジニアリングは、ファイルを復号しなければならないために
非常に困難かつ時間がかかります。
• 改ざんに対するセキュリティー—JTAG ソースと暗号化された.pof(EPOF)のみを有効にする
と、 MAX 10 デバイスは同じキーで暗号化されたコンフィグレーション・ファイルのみを受
け入れます。さらに、JTAG インターフェイスを介するコンフィグレーションはブロックされ
ます。
関連情報
3-8 ページの Convert Programming Files を使用して.pof を生成する
暗号化と復号
MAX 10 は AES での暗号化をサポートしています。プログラミング・ビットストリームはユーザ
ーが指定した暗号化キーに基づいて暗号化されます。 MAX 10 では、このキーは内部フラッシュ
に格納される ICB 設定に含められます。したがって、キーは揮発しませんが、ユーザーはデバ
イスのチップ全体の消去を行うことにより、キーをクリアまたは削除できます。
圧縮とともに暗号化をする場合には、 Quartus Prime ソフトウェアの使用により、まずコンフィ
グレーション・ファイルが圧縮され、次に暗号化されます。コンフィグレーション時には、デバ
イスはまずコンフィグレーション・ファイルを復号し、次に解凍します。
ヘッダーならびに I/O コンフィグレーション・シフトレジスター(IOCSR)データは暗号化され
ません。IOCSR チェーンがプログラミングされた後に復号ブロックがアクティブになります。
復号ブロックは、コアデータとポストアンブルのみを復号します。
関連情報
2-22 ページの 使用できる JTAG 命令
ユニークチップ ID
ユニークチップ ID は、以下の機能を提供します。
• 権限のないデバイスからデザインを保護するためのセキュリティー機能として、デザイン上
でデバイスの識別をする
• 各 MAX 10 デバイスに、書込み保護を備えた不揮発性 64 ビットのユニーク ID を提供する
アルテラ・ユニークチップ ID IP コアを使用して、 MAX 10 デバイスのチップ ID を取得できま
す。
関連情報
• 4-1 ページの アルテラ・ユニークチップ ID IP コア
• 6-1 ページの アルテラ・ユニークチップ ID IP コアのポート
Altera Corporation
MAX 10 FPGA のコンフィグレーション手法と機能
フィードバック
UG-M10CONFIG
2016.10.31
アルテラ・ユニークチップ ID IP コア
2-21
アルテラ・ユニークチップ ID IP コア
図 2-7: アルテラ・ユニークチップ ID IP コアのブロック図
clkin
data_valid
Altera Unique
Chip ID
reset
chip_id[63..0]
最初の状態では、ユニークチップ ID ブロックから読み出されるデータがないので data_valid 信
号は Low です。clkin 入力ポートにクロック信号を供給すると、アルテラ・ユニークチップ ID
IP コアがユニークチップ ID ブロックを介してデバイスのチップ ID の取得を開始します。デバ
イスのチップ ID を取得すると、アルテラ・ユニークチップ ID IP コアは data_valid 信号をアサ
ートして、出力ポートのチップ ID 値の読み出しが準備が整ったことを示します。
この動作は、data_valid 信号が Low の際に別のクロック信号を供給した場合にのみ繰り返され
ます。別のクロック信号を供給した際に data_valid 信号が High であれば、chip_id[63..0] 出力
がデバイスのチップ ID を保持しているために、動作が停止します。
data_valid 信号が
High になるためには少なくとも 67 クロックサイクルが必要です。
デバイスをリコンフィグレーションする、または、アルテラ・ユニークチップ ID IP コアをリセ
ットするまで、chip_id[63:0] 出力ポートはデバイスのチップ ID の値を保持します。
JTAG セキュアモード
JTAG セキュアモードでは、必須の IEEE 1149.1 JTAG 命令のみをデバイスで使用できます。
JTAG セキュアは、Convert Programming Files で.pof を生成する際に有効にできます。JTAG
セキュアモードを終了するには、UNLOCK JTAG 命令を発行します。LOCK JTAG 命令がデバイスを
再び JTAG セキュアモードにします。LOCK と UNLOCK の JTAG 命令は、JTAG コアアクセスによっ
てのみ発行できます。使用可能な命令のリストについて、表 2-15 を参照してください。
関連情報
•
•
•
•
2-22 ページの 使用できる JTAG 命令
2-23 ページの コンフィグレーション・フラッシュメモリーへのアクセス 許可
JTAG Secure Design Example
3-8 ページの Convert Programming Files を使用して.pof を生成する
MAX 10 FPGA のコンフィグレーション手法と機能
フィードバック
Altera Corporation
2-22
UG-M10CONFIG
2016.10.31
JTAG セキュアモードの命令
JTAG セキュアモードの命令
表 2-14: MAX 10 デバイスの JTAG セキュアモードの命令
JTAG 命令
命令コード
LOCK
10 0000 0010
UNLOCK
10 0000 1000
概要
• JTAG セキュアモードを有効にする
• 外部ピンとコアとの両方からの、JTAG へのアク
セスをブロックする
JTAG セキュアモードを無効にする
Verify Protect
検証プロテクトは、CFM セキュリティーを強化するためのセキュリティー機能です。Verify
Protect を有効にすると、CFM ではプログラミングと消去の動作のみが可能になります。この機
能は、CFM の内容がコピーされることを防ぎます。
Quartus Prime Convert Programming File ツールで .sof ファイルを .pof ファイルに変換する際
に、Verify Protect 機能をオンにすることができます。
関連情報
• 2-23 ページの コンフィグレーション・フラッシュメモリーへのアクセス 許可
• 3-8 ページの Convert Programming Files を使用して.pof を生成する
使用できる JTAG 命令
表 2-15: JTAG セキュアモードと暗号化の設定に応じて使用できる JTAG 命令
JTAG セキュアモード
暗号化
無効
無効
有効
無効
有効
Altera Corporation
有効
概要
すべての JTAG 命令が有効
下記以外のすべての JTAG 命令が有効
• CONFIGURE
下記以外のすべての必須ではない IEEE 1149.1 JTAG 命令
が無効
•
•
•
•
•
•
SAMPLE/PRELOAD
BYPASS
EXTEST
IDCODE
UNLOCK
LOCK
MAX 10 FPGA のコンフィグレーション手法と機能
フィードバック
UG-M10CONFIG
2016.10.31
コンフィグレーション・フラッシュメモリーへのアクセス許可
2-23
関連情報
•
•
•
•
2-21 ページの JTAG セキュアモード
3-23 ページの MAX 10 JTAG のセキュアデザインの例
JTAG Secure Design Example
2-20 ページの 暗号化と復号
コンフィグレーション・フラッシュメモリーへのアクセス許可
JTAG セキュアモードと検証プロテクト機能により、CFM 操作の許可範囲が決定されます。以下
の表に、セキュリティー設定に基づいて許可される操作をリストします。
表 2-16: MAX 10 デバイスの CFM 許可
JTAG セキュアモードが無効
動作
JTAG セキュアモードが有効
検証プロテクトが無
効
検証プロテクトが有
効
検証プロテクトが無
効
検証プロテクトが有
効
コアを介した
ISP
不正な操作
不正な操作
不正な操作
不正な操作
JTAG ピンを介
した ISP
完全なアクセス
プログラミングと
消去のみ
アクセスなし
アクセスなし
コアを介したリ
完全なアクセス
アルタイム ISP
プログラミングと
消去のみ
アクセスなし
アクセスなし
JTAG ピンを介
したリアルタイ 完全なアクセス
ム ISP
プログラミングと
消去のみ
アクセスなし
アクセスなし
コアを介した
UFM インター
フェイス (5)
完全なアクセス
完全なアクセス
完全なアクセス
完全なアクセス
関連情報
•
•
•
•
•
(5)
2-21 ページの JTAG セキュアモード
3-23 ページの MAX 10 JTAG のセキュアデザインの例
JTAG Secure Design Example
2-22 ページの Verify Protect
3-8 ページの Convert Programming Files を使用して.pof を生成する
デュアル圧縮イメージモードを選択した場合に、コアを介して UFM のインターフェイスが有効に
なります。
MAX 10 FPGA のコンフィグレーション手法と機能
フィードバック
Altera Corporation
2-24
UG-M10CONFIG
2016.10.31
SEU の緩和とコンフィグレーション・エラーの検出
SEU の緩和とコンフィグレーション・エラーの検出
MAX 10 デバイス内蔵の専用回路がエラー検出巡回冗長検査(EDCRC)機能を構成します。この
機能を、SEU(Single Event Upset)やソフトエラーの緩和のために使用します。
ハード化されたオンチップ EDCRC 回路により、デバイスのフィッティングに 影響を与えること
なく以下の動作を行うことができます。
• コンフィグレーション中に巡回冗長検査(CRC)エラーを自動検出する
• ユーザーモードでオプションの CRC エラー検出により SEU を特定する
• JTAG インターフェイスを介したエラー検出検証によりエラー検出をテストする
関連情報
• 3-13 ページの エラー検出機能の検証
• 3-14 ページの エラー検出の有効化
• 3-15 ページの ユーザーロジックを通じたエラー検出ブロックへのアクセス
コンフィグレーション・エラー検出
コンフィグレーション・モードでは、コンフィグレーション・データにフレームベースの CRC
が格納されており、各データフレームの CRC 値を含んでいます。
MAX 10 デバイスは、コンフィグレーション中に受信したデータのフレームに基づいて CRC 値
を計算し、それをデータストリームのフレームの CRC 値と比較します。コンフィグレーション
は、デバイスがエラーを検出するか、すべての値が計算されるまで継続します。
MAX 10 デバイスでは、CRC は Quartus Prime ソフトウェアで計算され、コンフィグレーション・
ビット・ストリームの一部としてデバイスにダウンロードされます。デバイスは、コンフィグレ
ーション・モードの終了時に CRC を 32 ビットのストレージレジスターに格納します。
ユーザーモード・エラー検出
SEU は、イオン化した粒子に起因する CRAM ビット状態の変化です。 MAX 10 デバイスは内蔵
のエラー検出回路を有しており、CRAM セル内のデータ破損を検出します。
このエラー検出機能は、コンフィグレーション後の CRAM ビットの CRC を持続的に計算しま
す。デバイスコンテンツの CRC は、コンフィグレーション終了時に取得した計算済み CRC 値と
比較されます。CRC 値が一致すれば、現在のコンフィグレーション CRAM ビットにエラーはあ
りません。このエラー検出プロセスは、nCONFIG を Low に設定することによりデバイスがリセッ
トされるまで継続されます。
MAX 10 デバイスのエラー検出回路では、32 ビットの CRC IEEE Std. 802 と 32 ビットの多項式を
CRC ジェネレーターとして使用しています。したがって、デバイスは 32 ビットの CRC 演算を処
理します。SEU が生じていなければ、得られる 32 ビットのシグネチャー値は 0x000000 になり、
結果として生じる CRC_ERROR の出力信号は 0 になります。デバイスに SEU が生じていれば、得
られるシグネチャー値がゼロ以外になり、CRC_ERROR 出力信号は 1 になります。nCONFIG ピンを
Low にストローブして FPGA をリコンフィグレーションするか、または、エラーを無視するかを
決定する必要があります。
Altera Corporation
MAX 10 FPGA のコンフィグレーション手法と機能
フィードバック
UG-M10CONFIG
2016.10.31
エラー検出ブロック
2-25
エラー検出ブロック
図 2-8: エラー検出ブロック図
関係する 2 つの 32 ビット・レジスターであるシグネチャー・レジスターとストレージレジスタ
ーを含む、エラー検出ブロックのブロック図を示します。
Error Detection
State Machine
Control Signals
Compute & Compare
CRC
32
32
32-bit Storage
Register
32-bit Signature
Register
32
CRC_ERROR
エラー検出回路には、計算された CRC シグネチャーとあらかじめ計算された CRC 値を格納する
2 つの 32 ビット・レジスターのセットがあります。シグネチャー・レジスターがゼロ以外の値
になると、CRC_ERROR ピンが High になります。
表 2-17: MAX 10 デバイスのエラー検出レジスター
レジスター
概要
このレジスターは CRC シグネチャーを格納します。シグネチャー・レジスタ
ーが格納するのは、あらかじめ計算された CRC 値とユーザーモードで計算さ
32 ビット・シグ
れた CRC 値とを比較した結果です。エラーが検出されなければ、シグネチャ
ネチャー・レジ
ー・レジスターはすべてゼロになります。シグネチャー・レジスターがゼロ以
スター
外であれば、コンフィグレーション CRAM の内容のエラーを示します。CRC_
ERROR 信号はこのレジスターの内容に基づきます。
このレジスターには、あらかじめ計算された 32 ビットの CRC シグネチャーが
コンフィグレーション・ステージの終了時にロードされます。このシグネチャ
ーは、ユーザーモード時に CRC エラーを計算するために 32 ビットの Compute
32 ビット・スト and Compare CRC ブロックにロードされます。このレジスターは、CHANGE_
レージ・レジス EDREG JTAG 命令の実行時に 32 ビットのスキャンチェーンを形成します。
ター
CHANGE_EDREG JTAG 命令で、ストレージレジスターの内容を変更することがで
きます。したがって、命令の実行によりエラーを注入することで、動作中にエ
ラー検出 CRC 回路の機能をインシステムでチェックすることができます 。
CHANGE_EDREG JTAG 命令を発行しても、デバイスの動作は停止されません。
MAX 10 FPGA のコンフィグレーション手法と機能
フィードバック
Altera Corporation
2-26
UG-M10CONFIG
2016.10.31
CHANGE_EDREG JTAG 命令
CHANGE_EDREG JTAG 命令
表 2-18: CHANGE_EDREG JTAG 命令の概要
JTAG 命令
CHANGE_EDREG
命令コード
00 0001 0101
概要
この命令は、32 ビットの CRC ストレージレジスタ
ーを TDI から TDO まで連結します。任意の計算済み
CRC を CRC ストレージレジスターにロードして、
エラー検出 CRC 回路の動作を CRC_ERROR ピンでテ
ストします。
エラー検出のタイミング
Quartus Prime ソフトウェアを介してエラー検出 CRC 機能が有効にされていれば、コンフィグレ
ーションと初期化が完了してユーザーモードに入った時点でデバイスが自動的に CRC プロセス
をアクティブにします。
CRC_ERROR ピンは、エラー検出回路が破損したビットを
CRC 演算で検出するまで Low を維持し
ます。ピンが High になると、次の CRC 演算の間ではピンは High を維持します。このピンは前
の CRC 演算を記録しません。新しい CRC 演算に破損されたビットが含まれていなければ、
CRC_ERROR ピンは Low に駆動されます。エラー検出はデバイスがリセットされるまで動作しま
す。
エラー検出回路は、周波数を最大にセットする除数を用いた内部コンフィグレーション・オシレ
ーターによって駆動されます。CRC 演算時間はデバイスとエラー検出クロック周波数に依存し
ます。
関連情報
3-14 ページの エラー検出の有効化
エラー検出周波数
Quartus Prime ソフトウェアで分周係数を指定することで、より低いクロック周波数をセットで
きます。
Altera Corporation
MAX 10 FPGA のコンフィグレーション手法と機能
フィードバック
UG-M10CONFIG
2016.10.31
巡回冗長検査の計算のタイミング
2-27
表 2-19: MAX 10 デバイスの最小および最大エラー検出周波数
デバイス
エラー検出周波数
最大エラー検出周
波数(MHz)
最小エラー検出周
波数(MHz)
55 MHz/2n~116 MHz/2n
58
214.8
35 MHz/2n~77 MHz/2n
38.5
136.7
n として有効な値
10M02
10M04
10M08
2、3、4、5、6、7、
8
10M16
10M25
10M40
10M50
巡回冗長検査の計算のタイミング
表 2-20: MAX 10 デバイスでの巡回冗長検査の計算のタイミング
デバイス
除数値(n = 2)
最小時間(ms)
最大時間(ms)
10M02
2
6.6
10M04
6
15.7
10M08
6
15.7
10M16
10
25.5
10M25
14
34.7
10M40
43
106.7
10M50
43
106.7
図 2-9: CRC 演算式
以下の式を使用して、除数が「2」以外の CRC 演算時間を計算します。
例 2-1: CRC 演算の例
除数値が 256 の 10M16 デバイスでは、
除数 256 での最小 CRC 演算時間 = 10 x(256/2)= 1280 ms
MAX 10 FPGA のコンフィグレーション手法と機能
フィードバック
Altera Corporation
2-28
UG-M10CONFIG
2016.10.31
CRC エラーからの回復
CRC エラーからの回復
MAX 10 デバイスを含むシステムが 、デバイス・リコンフィグレーションを制御する必要があり
ます。CRC_ERROR ピンでエラーを検出した後で、システムが MAX 10 デバイスをリコンフィグレ
ーションしても支障のないタイミングで nCONFIG を Low にストローブすることにより、システ
ムがリコンフィグレーションを行うことができます。
デバイスをリコンフィグレーションすることによりデータビットが正しい値に書き換えられる
と、デバイスは正しく機能します。
通常はアルテラデバイスで SEU は発生しませんが、高信頼性アプリケーションではこれらのエ
ラーに対応したデザインが要求される場合があります。
コンフィグレーション・データの圧縮
MAX 10 デバイスは、圧縮されたコンフィグレーション・ビットストリームを受信し、コンフィ
グレーション中にリアルタイムでデータを 復元することができます。この機能により CFM に
格納されるコンフィグレーション・イメージのサイズを削減することができます。データでは、
通常、圧縮によってデザインに応じてコンフィグレーション・ファイル・サイズは少なくとも
30% 削減されることが示されています。
関連情報
• 3-17 ページの デザインのコンパイルの前に圧縮を有効にする
• 3-18 ページの デザインのコンパイル後に圧縮を有効にする
Altera Corporation
MAX 10 FPGA のコンフィグレーション手法と機能
フィードバック
UG-M10CONFIG
2016.10.31
コンフィグレーションの詳細
2-29
コンフィグレーションの詳細
コンフィグレーション・シーケンス
図 2-10: MAX 10 デバイスのコンフィグレーション・シーケンス
Power Up
• nSTATUSとCONF_DONEが
Lowに駆動される
• すべての I/Oピンがトライ
ステートにされる
VCCIO、VCCAとVCCを含む電源が
推奨動作電圧に達する
Reset
• nSTATUS とCONF_DONEはLowを 維持
• すべての I/Oピンがトライステートにされる
• CONFIG_SELピンのサンプリング
• コンフィグレーションRAMビットをクリア
nSTATUS とnCONFIGがHighにリリースされる
CONF_DONEがLowに引き下げられる
Configuration Error Handling
• nSTATUSがLowに引き下げられる
• CONF_DONEはLowを維持する
• オプションが有効であれば
コンフィグレーションを再開する
Configuration
コンフィグレーション・データをFPGA
に書き込む
CONF_DONEがHighにリリースされる
Initialization
• 内部ロジックとレジスターを
初期化する
• I/Oバッファーをイネーブルする
User Mode
デザインを実行する
nCONFIG ピンを少なくとも最小
t RU_nCONFIG Low パルス幅以上 Low に引き下げることにより、リコ
ンフィグレーションを開始することができます。このピンが Low に引き下げられると、nSTATUS
MAX 10 FPGA のコンフィグレーション手法と機能
フィードバック
Altera Corporation
2-30
UG-M10CONFIG
2016.10.31
パワーアップ
ピンと CONF_DONE ピンは Low に引き下げられ、すべての I/O ピンは ICB 設定に基づいて内部ウ
ィークプルアップに接続されるか、トライステートにされます。
関連情報
3-8 ページの Convert Programming Files を使用して.pof を生成する
コンフィグレーション時にウィークプルアップをセットする方法について、詳しい情報を提供し
ます。
パワーアップ
デバイスをパワーダウン状態からパワーアップする場合、バンク 1B (10M02 デバイスではバンク
1)、バンク 8 およびコアの VCCIO に適切なレベルまで電力を加えれば、POR を終了できます。パ
ワーアップ・ステージから抜けたら、 MAX 10 デバイスは僅かな POR 遅延でコンフィグレーシ
ョン・ステージに入ります。
関連情報
• MAX 10 パワー・マネジメント・ユーザーガイド
MAX 10 デバイスの電源モードについて詳しい情報を提供します。
• MAX 10 Device Datasheet
ランプアップ時間の仕様についての詳しい情報を提供します。
• MAX 10 FPGA Device Family Pin Connection Guideline
コンフィグレーション・ピンの接続について詳しい情報を提供します。
シングル電源およびデュアル電源の MAX 10 デバイスにおける POR でモニタリングされる電圧レー
ル
コンフィグレーションを開始するには、以下の表に示すように必要な電圧を適切な電圧レベルに
パワーアップする必要があります。バンク 1B(10M02 デバイスではバンク 1)とバンク 8 の
VCCIO は、コンフィグレーション中に 1.5 V ~ 3.3 V の電圧にパワーアップする必要があります。
表 2-21: シングル電源およびデュアル電源の MAX 10 デバイスにおける POR でモニタリングされる電圧
レール
電圧をパワーアップする際に従うべきパワーアップ・シーケンスはありません。
デバイスの電源オプション
POR にモニタリングされる電源
安定化された VCC_ONE
シングル電源
VCCA
VCCIO バンク 1B (6)とバンク 8
VCC
デュアル電源
VCCA
VCCIO バンク 1B(6) とバンク 8
(6)
10M02 デバイスではバンク 1 です。
Altera Corporation
MAX 10 FPGA のコンフィグレーション手法と機能
フィードバック
UG-M10CONFIG
2016.10.31
MAX 10 デバイスのモニタリングされる電源ランプ時間要件
2-31
MAX 10 デバイスのモニタリングされる電源ランプ時間要件
図 2-11: MAX 10 デバイスのモニタリングされる電源ランプ時間要件図
Volts
nSTATUS
goes high
CONF_DONE
goes high
POR trip level
first power
supply
last
power
supply
Time
Configuration
time
POR Delay
tRAMP
Device
Initialization
User Mode
表 2-22: MAX 10 デバイスのモニタリングされる電源ランプ時間要件
シンボル
パラメーター
tRAMP 電源ランプ時間(7)
最小値
最大値
単位
—(8)
10
ms
コンフィグレーション
コンフィグレーション時に、コンフィグレーション・データは、内部フラッシュから読み出され
て、CRAM に書き込まれます。
コンフィグレーション・エラーの処理
自動的にコンフィグレーションを再開するには、 Quartus Prime ソフトウェアの Device and Pin
Options ダイアログボックスの General ページで Auto-restart configuration after error オプショ
ンをオンにします。
(7)
(8)
コンフィグレーションが完了する前に、すべての VCCIO 電源が規定電圧に達するように確認して
ください。内部コンフィグレーション時間 を参照してください。
ランプレート要件には絶対最小値がありません。アルテラ は最小 tRAMP を 200 µs と特性評価しま
した。
MAX 10 FPGA のコンフィグレーション手法と機能
フィードバック
Altera Corporation
2-32
UG-M10CONFIG
2016.10.31
初期化
このオプションをオンにしない場合には、nSTATUS ピンをモニタリングすることでエラーを検出
することができます。コンフィグレーションを再開するには、nCONFIG ピンを少なくとも
tRU_nCONFIG 期間以上 Low に引き下げます。
初期化
CONF_DONE ピンが
High になった後に、初期化シーケンスが開始します。初期化クロックソース
は内部オシレータ―であり、 MAX 10 デバイスは、適切に初期化するのに十分なクロックサイク
ルを受け取ることになります。
ユーザーモード
初期化が完了するとデザインが動作を開始します。ユーザー I/O ピンはデザインで指定された
ように機能します。
MAX 10 のコンフィグレーション・ピン
MAX 10 デバイスのすべてのコンフィグレーション・ピンと JTAG ピンは兼用ピンです。コンフ
ィグレーション・ピンは、ユーザーモードの前ではコンフィグレーション・ピンとして機能しま
す。ユーザーモードになると、ピンはユーザー I/O ピンとして機能するか、またはコンフィグレ
ーション・ピンのままにもできます。
表 2-23: MAX 10 デバイスのコンフィグレーション・ピンのまとめ
すべてのピンは、VCCIO バンク 1B(10M02 デバイスではバンク 1)および 8 によって駆動されま
す。
コンフィグレーショ
ン・ピン
入力/出力
コンフィグレーション手法
CRC_ERROR
出力のみ、オープンドレイン
CONFIG_SEL
入力のみ
内部コンフィグレーション
DEV_CLRn
入力のみ
オプショナル、JTAG および内部コンフィ
グレーション
DEV_OE
入力のみ
オプショナル、JTAG および内部コンフィ
グレーション
CONF_DONE
双方向、オープンドレイン
JTAG および内部コンフィグレーション
nCONFIG
入力のみ
JTAG および内部コンフィグレーション
nSTATUS
双方向、オープンドレイン
JTAG および内部コンフィグレーション
JTAGEN
入力のみ
オプショナル、JTAG コンフィグレーショ
ン
TCK
入力のみ
JTAG コンフィグレーション
TDO
出力のみ
JTAG コンフィグレーション
Altera Corporation
オプショナル、JTAG および内部コンフィ
グレーション
MAX 10 FPGA のコンフィグレーション手法と機能
フィードバック
UG-M10CONFIG
2016.10.31
MAX 10 のコンフィグレーション・ピン
コンフィグレーショ
ン・ピン
入力/出力
2-33
コンフィグレーション手法
TMS
入力のみ
JTAG コンフィグレーション
TDI
入力のみ
JTAG コンフィグレーション
関連情報
• 3-1 ページの ガイドライン:兼用コンフィグレーション・ピン
• 3-3 ページの 兼用ピンのイネーブル
MAX 10 FPGA のコンフィグレーション手法と機能
フィードバック
Altera Corporation
MAX 10 FPGA コンフィグレーション・デザイ
ンのガイドライン
3
2016.10.31
UG-M10CONFIG
更新情報
フィードバック
兼用コンフィグレーション・ピン
ガイドライン:兼用コンフィグレーション・ピン
ユーザーモードでコンフィグレーション・ピンをユーザー I/O ピンとして使用するには、以下の
ガイドラインに従う必要があります。
表 3-1: MAX 10 デバイスの兼用コンフィグレーション・ピンのガイドライン
ガイドライン
ピン
コンフィグレーション・ピンは初期化時では、
• 外部 I/O ドライバーをトライステートにし、外部ウィークプルアップ抵 • nCONFIG
• nSTATUS
抗を駆動する(9)
• または、外部 I/O ドライバーを使用して、ピンを外部ウィークプルアッ • CONF_DONE
プ抵抗と同じ状態に駆動する
(9)
外部ウィークプルアップ抵抗を削除する場合には、アルテラは、デバイスがユーザーモードに入
った後で削除することを推奨します。
Intel Corporation. All rights reserved. Intel, the Intel logo, Altera, Arria, Cyclone, Enpirion, MAX, Nios, Quartus and Stratix words and logos are trademarks of
Intel Corporation or its subsidiaries in the U.S. and/or other countries. Intel warrants performance of its FPGA and semiconductor products to current
specifications in accordance with Intel's standard warranty, but reserves the right to make changes to any products and services at any time without notice.
Intel assumes no responsibility or liability arising out of the application or use of any information, product, or service described herein except as expressly
agreed to in writing by Intel. Intel customers are advised to obtain the latest version of device specifications before relying on any published information
and before placing orders for products or services.
*Other names and brands may be claimed as the property of others.
www.altera.com
101 Innovation Drive, San Jose, CA 95134
ISO
9001:2008
登録済
3-2
UG-M10CONFIG
2016.10.31
JTAG ピンの共有
ガイドライン
ピン
JTAG ピン
• JTAGEN ピンを使用してユーザー I/O ピンと JTAG ピンの機能を交互に切
り替えるのであれば、すべての JTAG ピンがシングルエンドの I/O ピン
または電圧リファレンス形式の I/O ピンとして割り当てられている必要
がある。推奨の入力バッファーはシュミットトリガー入力
• JTAG ピンのいずれかを差動 I/O ピンとして割り当てた場合、ユーザーモ
ードで JTAG ピンが JTAG ピンとして動作できない
• JTAG プログラミング中は JTAG ピンを専用ピンとして使用する必要が
あり、ユーザー I/O ピンとして使用することはできない
• 初期化の段階で JTAG ピンをトグルすることはできない
• 初期化の前に最低 5 クロックサイクル間、テスト・アクセス・ポート
(TAP)コントローラ―をリセット状態にし、TDI ピンと TMS ピンを High
に、TCK ピンを Low に駆動する
•
•
•
•
TDO
TMS
TCK
TDI
注意: JTAG ピン共有機能をイネーブルする場合は、すべての JTAG ピンをシングルエンドの I/O
ピンまたは電圧リファレンス形式の I/O ピンとして割り当てます。
関連情報
• MAX 10 FPGA Device Family Pin Connection Guidelines
レジスターの推奨値について詳しい情報を提供します。
• 2-32 ページの MAX 10 のコンフィグレーション・ピン
• 2-2 ページの JTAG ピン
JTAG ピンの共有
表 3-2: MAX 10 デバイスでの JTAG ピンの共有
コンフィグレーショ
ン・ステージ
JTAG ピンの共有
無効
ユーザーモード
有効
コンフィグレーシ
ドントケア
ョン
JTAGEN ピン
JTAG ピン(TDO、TDI、TCK、TMS)
ユーザー I/O ピン
専用 JTAG ピン
Low へ駆動
ユーザー I/O ピン
High へ駆動
専用 JTAG ピン
使用しない
専用 JTAG ピン
注意: JTAG ピンを正常に動作させるためには、表 3-1 に従ってピンを設定した上に、ピンの方
向(入力、出力、または双方向)も正しくする必要があります。
Altera Corporation
MAX 10 FPGA コンフィグレーション・デザインのガイドライン
フィードバック
UG-M10CONFIG
2016.10.31
兼用ピンのイネーブル
3-3
兼用ピンのイネーブル
ユーザーモードで、コンフィグレーション・ピンと JTAG ピンをユーザー I/O ピンとして使用す
るには、 Quartus Prime ソフトウェアで以下の操作を行う必要があります。
1.
2.
3.
4.
Assignments メニューで、Device をクリックします。
Device and Pin Options をクリックします。
Device and Pin Options の General タブを選択します。
General の Options リストで以下を行います。
• Enable JTAG pin sharing にチェックを入れる
• Enable nCONFIG, nSTATUS, and CONF_DONE pins のチェックを外す
関連情報
• 2-32 ページの MAX 10 のコンフィグレーション・ピン
• 2-2 ページの JTAG ピン
JTAG コンフィグレーションによる MAX 10 デバイスのコンフィグレー
ション
Quartus Prime ソフトウェアは、JTAG コンフィグレーションに使用できる.sof を生成します。
Quartus Prime ソフトウェア・プログラマーとダウンロード・ケーブルを使用して、 MAX 10 デ
バイスを直接コンフィグレーションすることができます。
あるいは、他のサードパーティーのプログラマー・ツールによって、Jam STAPL(Standard Test
and Programming Language)形式ファイル(.jam)、または JAM Byte Code File(.jbc) を使用する
こともできます。
関連情報
AN 425: Using the Command-Line Jam STAPL Solution for Device Programming
MAX 10 FPGA コンフィグレーション・デザインのガイドライン
フィードバック
Altera Corporation
3-4
UG-M10CONFIG
2016.10.31
JTAG コンフィグレーションのセットアップ
JTAG コンフィグレーションのセットアップ
図 3-1: ダウンロード・ケーブルを使用した JTAG シングル・デバイス・コンフィグレーションの接続セ
ットアップ
10M02 デバイスでは、VCCIO バンク 1 に接続し、その他のすべての MAX 10 デバイスでは、VCCIO
バンク 1B に接続します。
JTAGENピンを使用するためには、JTAGピンの共用を有効にする必要があります。
ユーザーモードで、JTAGピンを使用する場合:
- 通常のI/Oピンの場合: JTAGENピンをウィークプルダウン1 kΩ に接続する
- JTAGピンが専用ピンの場合: 10-kΩ のプルアップを通じて、JTAGENピンをVCCIO Bank 1B または 1B に接続する
V CCIO Bank 8
10 kΩ 10 kΩ
V CCIO Bank 1 or 1B
10 kΩ
MAX 10
10 kΩ
10 kΩ
Download Cable
(JTAG Mode)
10-Pin Male Header V CCIO Bank 1 or 1B
nSTATUS JTAGEN
CONF_DONE
nCONFIG
TCK
TDO
TMS
TDI
1 kΩ
10pF 10pF 10pF 10pF
1 2
3 4
5 6
7 8
910
ダイオードとコンデンサーは、MAX 10デバイスのできるだけ近くに配置する必要があります。
効率的な電圧クランプのために、スイッチングおよびツェナーダイオードと比較して、低い
ダイオード順方向電圧(VF)を持つショットキー・ダイオードの使用をアルテラは推奨します。
電圧オーバーシュートの防止を参照してください。
Altera Corporation
MAX 10 FPGA コンフィグレーション・デザインのガイドライン
フィードバック
UG-M10CONFIG
2016.10.31
3-5
JTAG コンフィグレーションのセットアップ
図 3-2: ダウンロード・ケーブルを使用した JTAG マルチデバイス・コンフィグレーションの接続セット
アップ
10M02 デバイスでは、VCCIO バンク 1 に接続し、その他のすべての MAX 10 デバイスでは、VCCIO
バンク 1B に接続します。
V CCIO Bank 8
抵抗値は1kΩ ~ 10kΩ とばらつきます。
セットアップの抵抗値を決定するのに、
シグナル・インテグリティ解析を実行します。
10 kΩ 10 kΩ
V CCIO Bank 1 or 1B
10 kΩ
10 kΩ 10 kΩ
10 kΩ 10 kΩ
10 kΩ
MAX 10
10 kΩ
MAX 10
MAX 10
nSTATUS
CONF_DONE
nCONFIG
Download Cable
(JTAG Mode) V CCIO Bank 1 or 1B
10-Pin Mal Header
TDI
1 2
TMS
3 4
5 6
7 8
910
1kΩ 10pF 10pF 10pF 10pF
V CCIO Bank 8
V CCIO Bank 8
nSTATUS
CONF_DONE
nCONFIG
nSTATUS
CONF_DONE
nCONFIG
TDO
TDI
TDO
TDI
TDO
TCK
TMS
TCK
TMS
TCK
ダイオードとコンデンサーは、MAX 10デバイスのできるだけ近くに配置する必要があります。
効率的な電圧クランプのために、スイッチングおよびツェナーダイオードと比較して、低い
ダイオード順方向電圧(VF)を持つショットキー・ダイオードの使用をアルテラは推奨します。
電圧オーバーシュートの防止を参照してください。
デバイスを JTAG チェーンでコンフィグレーションするために、プログラミング・ソフトウェア
は他のデバイスをバイパスモードにセットします。バイパスモードのデバイスは、バイパスレジ
スター 1 つを介して TDI ピンから TDO ピンへプログラミング・データを伝送します。コンフィグ
レーション・データは 1 クロックサイクル後に TDO ピンで有効になります。
Quartus Prime ソフトウェアは、JTAG ポートを介してコンフィグレーション・プロセスの完了を
確認するために CONF_DONE ピンを使用します。
• CONF_DONE ピンが Low であれば、コンフィグレーションの失敗を示す
• CONF_DONE ピンが High であれば、コンフィグレーションの成功を示す
コンフィグレーション・データが JTAG TDI ポートを使用してシリアルに伝送された後に、デバ
イスの初期化を行うために TCK ポートが駆動されます。
電圧オーバーシュートの防止
電圧オーバーシュートを防止するために、外部ダイオードとコンデンサーを使用する必要があり
ます。例えば、
VCCIO および JTAG ヘッダー両方向けの最大 AC 電圧が 3.9 V を超える場合です。ただし、アル
テラ は電源が 2.5 V 以上の場合に外部ダイオードとコンデンサーを使用することを推奨します。
JTAGEN
JTAGEN ピンを使用する場合には、アルテラは以下の設定を推奨します。
MAX 10 FPGA コンフィグレーション・デザインのガイドライン
フィードバック
Altera Corporation
3-6
JTAG コンフィグレーションの ICB 設定
UG-M10CONFIG
2016.10.31
• JTAG ピンが通常の I/O ピンである場合には、ユーザーモードに入ると JTAGEN ピンをウィー
クプルダウン(1 kΩ) に接続する
• JTAG ピンが専用ピンである場合には、ユーザーモードに入ると JTAGEN ピンをウィークプル
アップ(10 kΩ) に接続する
注意: JTAG ピンの動作を変更するには、アルテラは、ジャンパー付きの 3 ピンヘッダーまたは
他の切り替えメカニズムを使用することを推奨します。
JTAG コンフィグレーションの ICB 設定
ICB 設定は、内部コンフィグレーション手法の.pof をプログラミングする際にデバイスにロー
ドされます。JTAG コンフィグレーション時に使用される.sof は、CRAM のみをプログラミング
しており、ICB 設定を含んでいません。 Quartus Prime Programmer は、以下に基づいて必要な設
定を行います。
• ICB 設定を含まないデバイス—ICB 設定が内部フラッシュまたは新しいデバイスから消去さ
れている
• ICB 設定を含むデバイス—ICB 設定が.pof によって事前にプログラミングされている
ICB 設定を含まないデバイス
ICB 設定を含まないデバイスでは、デフォルト値が使用されます。ただし、 Quartus Prime
Programmer は、ウォッチドッグ・タイマー・イネーブルビットを 0 にセットすることによって
ユーザー・ウォッチドッグ・タイマーを無効にします。このステップは、ユーザー・ウォッチド
ッグ・タイムアウトにより不要なリコンフィグレーションが発生することを回避するためのもの
です。
デフォルトの ICB 設定が望ましくない場合には、JTAG コンフィグレーションを行う前に、.pof
プログラミングによって望ましい ICB 設定をプログラミングします。
ICB 設定を含むデバイス
ICB 設定を含むデバイスでは、設定は内部フラッシュが消去されるまで維持されます。.map フ
ァイルを参考すれば、保存されている ICB 設定を見ることができます。JTAG コンフィグレーシ
ョンは、保存されている ICB 設定に従って動作します。
事前にプログラミングされた ICB 設定が望ましくない場合には、JTAG コンフィグレーションを
行う前に、.pof プログラミングによって望ましい ICB 設定をプログラミングします。
関連情報
•
•
•
•
•
•
Altera Corporation
3-7 ページの .pof と ICB 設定
2-22 ページの Verify Protect
2-21 ページの JTAG セキュアモード
2-6 ページの ISP 命令とリアルタイム ISP 命令
2-18 ページの ユーザー・ウォッチドッグ・タイマー
3-8 ページの Convert Programming Files を使用して.pof を生成する
Convert Programming File を使用して.pof を生成する際の ICB 設定について、詳しい情報を提
供します。
MAX 10 FPGA コンフィグレーション・デザインのガイドライン
フィードバック
UG-M10CONFIG
2016.10.31
内部コンフィグレーションを使用する MAX 10 デバイスのコンフィグレーション
3-7
内部コンフィグレーションを使用する MAX 10 デバイスのコンフィグ
レーション
MAX 10 デバイスで内部コンフィグレーション手法を使用するには、3 つの主要なステップがあ
ります。
1. 内部コンフィグレーション手法を選択する
2. ICB 設定を含む.pof を生成する
3. 内部フラッシュに .pof をプログラミングする
関連情報
• 2-3 ページの 内部コンフィグレーション・モード
• 2-11 ページの リモート・システム ・アップグレード
内部コンフィグレーション・モードの選択
コンフィグレーション・モードを選択するには、以下のステップを実行します。
1. Quartus Prime ソフトウェアを開き、 MAX 10 デバイスを使用するプロジェクトをロードしま
す。
2. Assignments メニューで Settings をクリックします。Settings ダイアログボックスが表示され
ます。
3. Category リストから、Device を選択します。Device ページが表示されます。
4. Device and Pin Options をクリックします。
5. Device and Pin Options ダイアログボックスで Configuration タブをクリックします。
6. Configuration Scheme リストから Internal Configuration を選択します。
7. Configuration Mode リストから、有効な 5 つのコンフィグレーション・モードのうちから 1 を
選択します。10M02 デバイスでは 2 つのモードのみが有効です。
8. 必要に応じて Generate compressed bitstreams をオンにします。
9. OK をクリックします。
.pof と ICB 設定
.pof を生成し、ICB を設定する 2 つの方法があります。選択した内部コンフィグレーション・
モードに対応して方法が決まります。
表 3-3: 内部コンフィグレーション・モードでの.pof 生成と ICB 設定の方法
内部コンフィグレーション・モード
Single Compressed Image
Single Uncompressed Image
ICB 設定
ICB を Device
and Pin Options
でセットできる
MAX 10 FPGA コンフィグレーション・デザインのガイドライン
フィードバック
概要
使用する.pof の生成方
法
プロジェクトのコンパイ
ル時に Quartus Prime ソフ 自動的に生成さ
トウェアが自動的に.pof れる.pof (10)
を生成する
Altera Corporation
3-8
UG-M10CONFIG
2016.10.31
自動的に生成される.pof
内部コンフィグレーション・モード
Single Compressed Image with
Memory Initialization.
Single Uncompressed Image with
Memory Initialization
Dual Compressed Images
ICB 設定
概要
ICB を Convert
Convert Programming
Programming
Files を使用して.pof を
Files タスクの際
生成する必要がある
にセットできる
使用する.pof の生成方
法
Convert
Programming
Files を使用し
て.pof を生成す
る
自動的に生成される.pof
自動的に生成される.pof に ICB をセットするには、以下のステップを実行します。
1. Assignments メニューで Settings をクリックします。Settings ダイアログボックスが表示され
ます。
2. Category リストから、Device を選択します。Device ページが表示されます。
3. Device and Pin Options をクリックします。
4. Device and Pin Options ダイアログボックスのカテゴリーペインで Configuration を選択しま
す。
5. Device Options … ボタンをクリックします。
6. Max 10 Device Options ダイアログボックスで以下をセットできます。
a. コンフィグレーション時のユーザー I/O ウィークプルアップ
b. 検証プロテクト
7. 設定が完了したら OK をクリックします。
Convert Programming Files を使用して.pof を生成する
.sof ファイルを .pof ファイルに変換する並びに ICB をセットする場合、次の手順に従います。
1. File メニューの Convert Programming Files をクリックします。
2. Output programming file の Programming file type リストから、Programmer Object File
(.pof) を選択します。
3. Mode リストから Internal Configuration を選択します。
4. Option/Boot Info をクリックすると、ICB 設定をセットするための ICB setting ダイアログボッ
クスが表示されます。ICB setting ダイアログボックスでは以下の設定をセットすることがで
きます。
a. コンフィグレーション時のユーザー I/O ウィークプルアップ
b. 最初のイメージで障害が発生した際に二番目のイメージから自動的にリコンフィグレー
ションする(デフォルトで有効)
注意: この機能を無効にすると、デバイスは物理的な CONFIG_SEL ピンをサンプリングす
ることなく、常にコンフィグレーション・イメージ 0 をロードします。コンフィグ
(10)
自動的に生成される.pof は暗号化できません。シングル圧縮モードとシングル非圧縮モードで
暗号化機能を有効にするには、Convert Programming Files の手法を使用します。
Altera Corporation
MAX 10 FPGA コンフィグレーション・デザインのガイドライン
フィードバック
UG-M10CONFIG
2016.10.31
Convert Programming Files を使用して.pof を生成する
3-9
レーション・イメージ 0 を正常にロードした後で、入力レジスターの
config_sel_overwrite ビットを使用してコンフィグレーション・イメージを切り替
えることができます。Altera Dual Configuration IP コアの入力レジスターについて、
詳しくは関連情報を参照してください。
c. 使用可能な際に二番目のイメージの ISP データをデフォルト設定にする
d. JTAG セキュア
注意: JTAG セキュア機能は、 Quartus Prime ではデフォルトで無効にされています。JTAG
セキュア機能を使用する必要がある場合には、サポートについてアルテラにお問い
合わせください。
注意: POF ファイルで JTAG セキュアモードが有効にされている状態で、POF が誤ったキ
ーで暗号化される場合、MAX 10 FPGA デバイスが永久にロックされてしまいます。
デバイスが JTAG セキュアモードにある場合、外部 JTAG のロックを解除するために
は、内部 JTAG のインターフェイスをインスタンス 化する必要があります。
e. 検証プロテクト
f. 暗号化された POF のみを許可
g. デュアル・コンフィグレーション向けウォッチドッグ・タイマーとウォッチドッグ・タイ
マー値。(デュアル圧縮内部イメージでコンパイルされた 2 つのデザインのための 2 ペー
ジの.sof を追加すると有効にされる)
h. ユーザー・フラッシュメモリー設定
i. RPD ファイルのエンディアン
5. File name ボックスで、作成するプログラミング・ファイルのファイル名を指定します。
6. メモリー・マップ・ファイル(.map)を生成するには、Create Memory Map File(output_file.map
の自動生成)をオンにします。.map には Option/Boot Info オプションでセットした、ICB 設
定と CFM や UFM のアドレスが含まれます。
7. ロー・プログラミング・データ(.rpd)を生成するには、Create config data RPD
(output_file_auto.rpd を生成する)をオンにします。
リモート・システム ・アップグレード向けには、各コンフィグレーション・フラッシュメモ
リーおよびユーザー・フラッシュメモリー(CFM0、CFM1、UFM)セクションの個別のロ
ー・プログラミング・データ(.rpd)がまとめて生成されます。
8. .sof は Input files to convert リストから追加することができ、最大 2 つまでの.sof ファイル
を追加することができます。
リモート・システム ・アップグレード用に、元のページ 0 データを.pof に保持し、ページ 1
データを新しい.sof ファイルに置き換えることもできます。これを行うには、.pof ファイ
ルをページ 0 に追加し、次に.sof ページを追加し、新しい.sof ファイルをページ 1 に追加し
ます。
9. すべての設定をセットした後で、Generate をクリックして関連するプログラミング・ファイ
ルを生成します。
関連情報
• MAX 10 ユーザー・フラッシュメモリー・ユーザーガイド
アルテラのオンチップ・フラッシュ IP コアについて詳しい情報を提供します。
MAX 10 FPGA コンフィグレーション・デザインのガイドライン
フィードバック
Altera Corporation
3-10
UG-M10CONFIG
2016.10.31
内部フラッシュへの.pof のプログラミング
• 3-20 ページの 内部コンフィグレーションでの暗号化
さまざまな設定に基づいてロードされた内部コンフィグレーション・イメージについて、詳
しい情報を提供します。
内部フラッシュへの.pof のプログラミング
Quartus Prime Programmer を使用して、JTAG インターフェイスを介して .pof を CFM へプログラ
ミングすることができます。また、内部フラッシュの UFM 部分も Quartus Prime Programmer に
よってプログラミングすることができます。
.pof をフラッシュにプログラミングするには 、以下の手順を実行します。
1.
2.
3.
4.
5.
6.
Programmer ウィンドウで、Hardware Setup をクリックし、USB Blaster を選択します。
Mode リストから JTAG を選択します。
左側のペインの Auto Detect ボタンをクリックします。
プログラミングするデバイスを選択し、Add File をクリックします。
選択したデバイスにプログラミングする .pof を選択します。
内部フラッシュのプログラミングにはいくつかのオプションがあります。
• CFM0/CFM1/CFM2 のいずれかのみをプログラミングするには、Program/Configure カラム
で該当する CFM を選択する
• UFM のみをプログラミングするには、Program/Configure カラムで UFM を選択する
• CFM と UFM のみをプログラミングするには、Program/Configure カラムで CFM と UFM の
みを選択する
注意: このオプションでは ICB 設定はそのままに保たれます。しかし、プログラミングを
開始する前に、 Quartus Prime Programmer がデバイスの ICB 設定と選択された.pof
の ICB 設定が同じであるかを確認します。ICB 設定が異なっていれば、 Quartus
Prime Programmer が ICB 設定を上書きします。
• ICB 設定を含む内部フラッシュ全体をプログラミングするには、Program/Configure カラム
で<yourpoffile.pof> を選択する
7. リアルタイム ISP モードを有効にするには、Enable real-time ISP to allow background
programming をオンにします。
8. すべての設定をセットした後で、Start をクリックしてプログラミングを開始します。
Quartus Prime ソフトウェアで ISP クランプを実装する
ISP クランプを実装するには、以下を実行します。
1. ピンステートの情報(.ips)ファイルを作成します。.ips ファイルは、デバイスが ISP クラ
ンプ動作時におけるデバイスのすべてのピンのステートを定義します。既存の.ips ファイ
ルを使用できます。
2. .ips ファイルを実行します。
Altera Corporation
MAX 10 FPGA コンフィグレーション・デザインのガイドライン
フィードバック
UG-M10CONFIG
2016.10.31
IPS ファイルの作成
3-11
注意: ターゲットするデバイスとパッケージが同じであれば、作成された.ips ファイルはいず
れのデザインでのデバイスをプログラムすることができます。.ips ファイルは、POF フ
ァイルとともに使用する必要があります。
関連情報
2-5 ページの ISP クランプ
IPS ファイルの作成
.ips ファイルを作成するには、以下の手順を実行します。
1. ツールバーで Programmer をクリックするか、Tools メニューの Programmer をクリックし
て、Programmer を開きます。
2. プログラマーで Add File をクリックして、プログラミング・ファイル(POF、Jam、または
JBC)を追加します。
3. プログラミング・ファイルをクリックし(ロー全体が強調表示される)、Edit メニューの ISP
Clamp State Editor をクリックします。
4. ISP Clamp State Editor でデザインにおけるピンのステートを指定します。すべてのピンはデ
フォルトで tri-state にセットされています。
5. 変更後に IPS ファイルを保存するために、Save をクリックします。
IPS ファイルの実行
ISP クランプを実行するには、以下の手順を実行します。
1. Quartus Prime Programmer でデバイスにプログラムする .pof を選択します。
2. .pof を選択して右クリックして、Add IPS File を選択し、ISP CLAMP をオンにします。
注意: コンフィグレーション後には、I/O クランプのスタートアップ遅延を変更することがで
きます。これは、Tools > Options を選択して、Overwrite MAX10 configuration start up
delay when using IO Clamp in Programmer オプションをオンにすると、遅延値を変更で
きます。
3. Program/Configure カラムで .pof を選択します。
注意: サードパーティー・プログラミングでは、.ips ファイルで .pof ファイルから .jam ま
たは.jbc ファイルを生成することができます。
4. すべての設定をセットした後で、Start をクリックしてプログラミングを開始します。
ユーザーロジックを介したリモート・システム・アップグレードへのア
クセス
以下の例は、MAX 10 デバイスで WYSIWYG アトムの入力および出力ポートがどのように定義さ
れているかを示します。
fiftyfivenm_rublock <rublock_name>
(
.clk(<clock source>),
MAX 10 FPGA コンフィグレーション・デザインのガイドライン
フィードバック
Altera Corporation
3-12
UG-M10CONFIG
2016.10.31
ユーザーロジックを介したリモート・システム ・アップグレードへのアクセス
.shiftnld(<shiftnld source>),
.captnupdt(<captnupdt source>),
.regin(<regin input source from the core>),
.rsttimer(<input signal to reset the watchdog timer>),
.rconfig(<input signal to initiate configuration>),
.regout(<data output destination to core>)
);
defparam <rublock_name>.sim_init_config = <initial configuration for simulation
only>;
defparam <rublock_name>.sim_init_watchdog_value = <initial watchdog value for
simulation only>;
defparam <rublock_name>.sim_init_config = <initial status register value for
simulation only>;
表 3-4: ポートの定義
ポート
入力/出
力
定義
-
RSU ブロック固有の識別子です。記述言語の選択
(例えば Verilog、VHDL、AHDL 等)に応じて適正な
識別子名が表記されます。このフィールドは必須で
す。
.clk(<clock source>)
入力
この信号はこのセルのクロック入力を示します。こ
のセルの全ての動作はこのクロックの立ち上がりエ
ッジに対して生じます。セルへのデータのロードで
あっても、セルからのデータ出力であっても、常に
立ち上がりエッジで生じます。このフィールドは必
須です。
.shiftnld(<shiftnld source>)
入力
この信号はリモート・システム ・アップグレード・
ブロックへの入力です。shiftnld = 1 の場合、データ
は clk の立ち上がりエッジごとに内部シフトレジス
ターから regout へシフトされ、また regin から内部
シフトレジスターへシフトされます。このフィール
ドは必須です。
.captnupdt(<captnupdt source>)
入力
この信号はリモート・システム ・アップグレード・
ブロックへの入力です。これによって、コンフィグ
レーション・モードを読みだすタイミング、または
コンフィグレーションを制御するレジスターに書き
込むタイミングのプロトコルが制御されます。この
フィールドは必須です。
入力
この信号は、すべてのデータがコアにロードされる
ために、リモート・システム ・アップグレード・ブ
ロックへの入力です。データは clk の立ち上がりエ
ッジに内部レジスターにシフトされます。このフィ
ールドは必須です。
入力
この信号は、リモート・アップデート・ブロックの
ウォッチドッグ・タイマーへの入力です。これが
High の場合、ウォッチドッグ・タイマーがリセット
されます。このフィールドは必須です。
<rublock_name>
.regin(<regin input source
from the core>)
.rsttimer(<input signal to
reset the watchdog timer>)
Altera Corporation
MAX 10 FPGA コンフィグレーション・デザインのガイドライン
フィードバック
UG-M10CONFIG
2016.10.31
エラー検出
ポート
.rconfig(<input signal to
initiate configuration>)
.regout(<data output
destination to core>)
入力/出
力
3-13
定義
入力
この信号は、リモート・アップデート・ブロックの
コンフィグレーション・セクションへの入力です。
これが High の場合、リコンフィグレーションが開始
します。このフィールドは必須です。
出力
これは1 ビットの出力で、clk の立ち上がりエッジ
ごとに更新される内部シフトレジスターの出力で
す。データは制御信号に応じて出力されます。この
フィールドは必須です。
関連情報
• 5-1 ページの アルテラ・デュアル・コンフィグレーション IP コアの参考資料
• 2-11 ページの リモート・システム ・アップグレード
• AN 741: Remote System Upgrade for MAX 10 FPGA Devices over UART with the Nios II Processor
MAX 10 FPGA デバイスのリモート・システム・アップグレード向けリファレンス・デザイン
を提供します。
• I2C Remote System Update Example
この例では、I2C プロトコルの使用によるリモート・システム ・アップグレードを示します。
エラー検出
エラー検出機能の検証
CRC 回路で 32 ビットの CRC ストレージレジスターを変更することによって、ソフトエラーを注
入することができます。引き起こされた障害を検証した後は、同じ命令を使用して正しい値を挿
入することにより、32 ビットの CRC 値を正しい CRC 値に復元することができます。既知の不正
な値で更新する前に、必ず正しい値を読み出ししてください。
MAX 10 デバイスは、ユーザーモードで CHANGE_EDREG JTAG 命令をサポートしており、これによ
り 32 ビットのストレージレジスターに書き込みをすることができます。.jam を使用して、テス
トと検証のプロセスを自動化することができます。この命令は、デバイスがユーザーモードにあ
るときにのみ実行することができます。この命令により、デバイスのリコンフィグレーションな
しでインシステムで CRC 機能を動的に検証できます。その後で、CRC 回路に切り換えて、SEU
に起因する実際のエラーをチェックできます。
テストが完了した後に CRC エラーをクリアして元の CRC 値を復元するには、電源を再投入する
か、または以下のステップを実行します。
1. コンフィグレーションが完了したら、CHANGE_EDREG JTAG 命令を使用して正しい計算済み
CRC 値をシフトアウトし、CRC ストレージレジスターへ不正な CRC 値をロードします。エ
ラーが検出されると、CRC_ERROR ピンがアサートされます。
2. CHANGE_EDREG JTAG 命令を使用して正しい計算済み CRC 値をシフトインします。CRC_ERROR
ピンがディアサートされ、エラー検出 CRC 回路が動作していることを示します。
MAX 10 FPGA コンフィグレーション・デザインのガイドライン
フィードバック
Altera Corporation
3-14
UG-M10CONFIG
2016.10.31
エラー検出の有効化
例 3-1: JAM File
'EDCRC_ERROR_INJECT
ACTION ERROR_INJECT = EXECUTE;
DATA DEVICE_DATA;
BOOLEAN out[32];
BOOLEAN in[32] = $02040608;
'shift in any wrong CRC value
ENDDATA;
PROCEDURE EXECUTE USES DEVICE_DATA;
BOOLEAN X = 0;
DRSTOP IDLE;
IRSTOP IDLE;
STATE IDLE;
IRSCAN 10, $015;
'shift in CHANGE_EDREG instruction
WAIT IDLE, 10 CYCLES, 1 USEC, IDLE;
DRSCAN 32, in[31..0], CAPTURE out[31..0];
WAIT IDLE, 10 CYCLES, 50 USEC, IDLE;
PRINT " ";
PRINT "Data read out from the Storage Register: "out[31], out[30], out[29],
out[28], out[27],
out[26], out[25], out[24], out[23], out[22], out[21], out[20], out[19],
out[18], out[17], out[16], out[15], out[14], out[13], out[12], out[11],
out[10], out[9], out[8], out[7], out[6], out[5], out[4], out[3],
out[2], out[1], out[0];
'Read out correct precomputed CRC value
PRINT " ";
STATE IDLE;
EXIT 0;
ENDPROC;
下記のコマンドラインを使用した quartus_jli 実行ファイルで、.jam ファイルを動作させるこ
とができます。
quartus_jli -c<cable index> -a<action name> <filename>.jam
関連情報
• 2-24 ページの SEU の緩和とコンフィグレーション・エラーの検出
• AN 425: Using the Command-Line Jam STAPL Solution for Device Programming
実行可能な quartus_jli コマンドラインについて詳しい情報を提供します。
エラー検出の有効化
Quartus Prime ソフトウェアの CRC エラー検出機能は CRC_ERROR 出力をオプションの兼用
CRC_ERROR ピンに生成します。
CRC を使用したエラー検出機能を有効にするには、以下のステップを実行します。
1. Quartus Prime ソフトウェアを開き、 MAX 10 デバイスファミリーを使用するプロジェクトを
ロードします。
2. Assignments メニューで Settings をクリックします。Settings ダイアログボックスが表示され
ます。
3. Category リストで Device を選択します。
4. Device and Pin Options をクリックします。
5. Device and Pin Options ダイアログボックスの Error Detection CRC タブをクリックします。
Altera Corporation
MAX 10 FPGA コンフィグレーション・デザインのガイドライン
フィードバック
UG-M10CONFIG
2016.10.31
ユーザーロジックを通じたエラー検出ブロックへのアクセス
3-15
6. Enable error detection CRC をオンにします。
7. Divide error check frequency by フィールドに、有効な除数を入力します。
除数値は、コンフィグレーション・オシレーター出力クロックの周波数を分周します。この
出力クロックは、エラー検出処理用のクロックソースとして使用されます。
8. OK をクリックします。
関連情報
2-24 ページの SEU の緩和とコンフィグレーション・エラーの検出
ユーザーロジックを通じたエラー検出ブロックへのアクセス
エラー検出回路は、計算された 32 ビットの CRC シグネチャーを 32 ビットのレジスターに格納
します。コアからのユーザーロジックがこのシグネチャーを読み出します。
fiftyfivenm_crcblock プリミティブは、
ユーザーロジックからエラー検出回路へのインターフェ
イスを規定するために使用される WYSIWYGl コンポーネントです。fiftyfivenm_crcblock プリ
ミティブ・アトムは、アトムに含まれている必要がある入力ポートと出力ポートを含みます。ロ
ジックアレイにアクセスするには、fiftyfivenm_crcblock WYSIWYG アトムをデザインに挿入す
る必要があります。.clk ポートのクロック周波数は、EDCRC ブロックのクロック周波数に従う
ことが推奨されます。
図 3-3: MAX 10 デバイスのインターフェイスを 含むエラー検出ブロック図
Internal Chip Oscillator
Clock Divider
(1 to 256 Factor)
VCC
CRC_ERROR
(BIDIRモードで表示される)
Pre-Computed CRC
(オプション・レジスタに保存されている )
LDSRC
SHIFTNLD
CRC_ERROR
CRC
Computation
CLK
SRAM
Bits
REGOUT
Error Detection
Logic
Logic Array
以下の例は、MAX 10 デバイスで WYSIWYG アトムの入力および出力ポートがどのように定義さ
れているかを示します。
fiftyfivenm_crcblock <name>
(
MAX 10 FPGA コンフィグレーション・デザインのガイドライン
フィードバック
Altera Corporation
3-16
UG-M10CONFIG
2016.10.31
ユーザーロジックを通じたエラー検出ブロックへのアクセス
.clk(<ED_CLK clock source>),
.shiftnld(<ED_SHIFTNLD source>),
.ldsrc (<LDSRC source>),
.crcerror(<CRCERROR_CORE out destination>),
.regout(<output destination>)
);
defparam <crcblock_name>.oscillator_divider = <internal oscillator division (1 to
256)>;
表 3-5: ポートの定義
ポート
<crcblock_name>
.clk(<clock source>
)
.shiftnld
(<shiftnld source>)
.ldsrc (<ldsrc
source>)
.crcerror
(<crcerror out
destination>)
Altera Corporation
入力/出
力
定義
—
CRC ブロック固有の識別子であり、ここには、Verilog HDL、
VHDL、AHDL といった記述言語の選択に応じて適正な識別子名
が表記されます。このフィールドは必須です。
入力
この信号はこのセルのクロック入力を示します。このセルの全
ての動作はこのクロックの立ち上がりエッジに対して生じます。
セルへのデータのロードであっても、セルからのデータ出力であ
っても、常に立ち上がりエッジで生じます。このポートは必須で
す。
入力
この信号はエラー検出ブロックへの入力です。shiftnld=1 であ
れば、データはシフトレジスターから REGOUT へ clk の立ち上
がりエッジごとにシフトされます。shiftnld=0 であれば、シフ
トレジスターはあらかじめ計算された CRC 値、またはアップデ
ート・レジスターの内容のどちらかを ldsrc ポート入力に応じて
パラレルにロードします。このポートは必須です。
入力
この信号はエラー検出ブロックへの入力です。ldsrc=0 であれ
ば、shiftnld=0 の際に clk の立ち上がりエッジで 32 ビットのシ
フトレジスターへロードするために、あらかじめ計算された
CRC のレジスターが選択されます。Ifldsrc=1 であれば、
shiftnld=0 の際に clk の立ち上がりエッジでシフトレジスター
へロードするために、シグネチャー・レジスター(CRC 計算結
果)が選択されます。shiftnld=1 であればこのポートは無視さ
れます。このポートは必須です。
出力
この信号はセルの出力であり、これは clk ポートではなく、デバ
イスの内部オシレーター(100 MHz または 80 MHz 内部オシレー
ター)に同期します。この信号は、SRAM ビットが反転している
こと、内部 CRC 計算があらかじめ計算された値と異なることが
エラーブロックで検出された場合に、自動的に High にアサート
します。この信号は、出力ピンか双方向ピンのどちらかに接続す
る必要があります。出力ピンに接続する場合には、モニタリング
できるのは CRC_ERROR ピンのみです(コアはこの出力にアクセス
できません)。CRC_ERROR 信号がコアロジックによってエラー検
出ロジックの読み出しに使用される場合には、この信号を BIDIR
ピンに接続する必要があります。VCC に接続された oe ポートを
有する BIDIR ピンに供給することにより、信号は間接的にコアに
供給されます。
MAX 10 FPGA コンフィグレーション・デザインのガイドライン
フィードバック
UG-M10CONFIG
2016.10.31
データ圧縮の有効化
ポート
.regout (<output
destination>)
入力/出
力
出力
3-17
定義
この信号はエラー検出シフトレジスターの出力であり、clk ポー
トと同期しており、コアロジックにより読み出されます。各サイ
クルごとに 1 ビットシフトします。32 ビットのシフトレジスタ
ーを読み出すには、clk 信号を 31 サイクルで駆動する必要があ
ります。.regout ポートでの値は、実際の値の逆数です。
関連情報
• 2-24 ページの SEU の緩和とコンフィグレーション・エラーの検出
• 2-26 ページの エラー検出のタイミング
データ圧縮の有効化
圧縮を有効にすると、 Quartus Prime ソフトウェアが圧縮されたコンフィグレーション・データ
でコンフィグレーション・ファイルを生成します。
圧縮されたコンフィグレーション・ファイルは、内部コンフィグレーション手法でデュアル・コ
ンフィグレーション・モードを使用するために必要です。このファイルの圧縮は、内部フラッシ
ュメモリーで必要になる容量を削減し、MAX 10 デバイスファミリーへとビットストリームを送
信するための時間を短縮します。 Quartus Prime ソフトウェアでは、 MAX 10 デバイスファミリ
ーのビットストリームの圧縮を有効にする 2 つの方法があります。
• デザインのコンパイル前に Compiler Settings メニューを使用する
• デザインのコンパイル後に Convert Programming Files オプションを使用する
デザインのコンパイルの前に圧縮を有効にする
デザインのコンパイルの前に圧縮を有効にするには、以下のステップを実行します。
1. Assignments メニューで Device をクリックします。Settings ダイアログボックスが表示され
ます。
2. Device and Pin Options をクリックします。Device and Pin Options ダイアログボックスが表
示されます。
3. Configuration タブをクリックします。
4. Generate compressed bitstreams をオンにします。
5. OK をクリックします。
6. Settings ダイアログボックスで OK をクリックします。
関連情報
2-28 ページの コンフィグレーション・データの圧縮
MAX 10 FPGA コンフィグレーション・デザインのガイドライン
フィードバック
Altera Corporation
3-18
UG-M10CONFIG
2016.10.31
デザインのコンパイル後に圧縮を有効にする
デザインのコンパイル後に圧縮を有効にする
デザインのコンパイルの後に圧縮を有効にするには、以下のステップを実行します。
1. File メニューの Convert Programming Files をクリックします。
2. Output programming file でプルダウンメニューから、目的のファイルタイプを選択します。
3. Programmer Object File(.pof)を選択した場合は、ファイルタイプの下の、Configuration Device
を指定する必要があります。
4. Input files to convert ボックスで、SOF Data を選択します。
5. Add File をクリックし、 MAX 10 デバイスファミリーの.sof を選択します。
6. Convert Programming Files ダイアログボックスで、SOF Data に追加した.pof を選択し、
Properties をクリックします。
7. SOF Properties ダイアログボックスで、Compression オプションをオンにします。
関連情報
2-28 ページの コンフィグレーション・データの圧縮
AES 暗号化
この項では、デザイン・セキュリティー向けの AES 暗号化の適用に関するガイドラインについ
て詳しく説明します。 MAX 10 デバイスにデザイン・セキュリティーを適用するために、大きく
分けて 2 段階の手順があります。1 つめは.ekp(Encryption Key Programming)ファイルの生成で
あり、2 つ目はデバイスへの.ekp ファイルのプログラミングです。
.ekp ファイルは、プログラミングに使用するハードウェアもしくはシステムに 応じて異なる形
式を有します。 Quartus Prime ソフトウェアがサポートする 3 つのファイル形式を以下に示しま
す。
• .jbc(JAM Byte Code)ファイル
• .jam(JAM™ Standard Test and Programming Language (STAPL) Format)ファイル
• .svf(Serial Vector Format)ファイル
.ekp ファイルタイプのみ Quartus Prime ソフトウェアから自動的に生成されます。.jbc、.jam、
および.svf ファイルがキーのプログラミングに必要であれば、Quartus Prime ソフトウェアを使
用してこれらのファイルを生成する必要があります。
注意: アルテラは、..ekp ファイルの機密性を保持することを推奨します。
.ekp ファイルからの.jam/.jbc/.svf ファイルの生成
.ekp ファイルから .jam/.jbc/.svf を生成するには以下のステップを実行します。
1.
2.
3.
4.
Tools メニューで Programmer をクリックし、Programmer ダイアログボックスを開きます。
Mode リストで、プログラミング・モードとして JTAG を選択します。
Hardware Setup をクリックし、Hardware Setup ダイアログボックスを開きます。
currently selected hardware list リストでプログラミング・ハードウェアとして USBBlaster を選
択し、Done をクリックします。
Altera Corporation
MAX 10 FPGA コンフィグレーション・デザインのガイドライン
フィードバック
UG-M10CONFIG
2016.10.31
.ekp ファイルと暗号化された POF ファイルのプログラミング
3-19
Add File をクリックし、Select Programmer File ダイアログボックスを開きます。
File name フィールドに<filename>.ekp と入力し Open をクリックします。
追加した.ekp ファイルを選択し Program/Configure をクリックします。
File メニューで Create/Update にカーソルを合わせ、Create JAM, SVF, or ISC File をクリックし
ます。Create JAM, SVF, or ISC File ダイアログボックスが表示されます。
9. File format フィールドで .ekp ファイルに必要なファイル形式を選択します。
5.
6.
7.
8.
• .jam(JEDEC STAPL Format)
• .jbc(Jam STAPL Byte Code)
• .svf(Serial Vector Format)
10. File name フィールドにファイル名を入力し、あるいは browse をクリックしてファイルを探
し、選択します。
11. OK をクリックし、.jam、.jbc、または.svf ファイルを生成します。
.ekp ファイルと暗号化された POF ファイルのプログラミング
暗号化された.pof ファイルおよび .ekp ファイルをプログラミングする 2 つの手法があります。
• .ekp および.pof ファイルを個別にプログラミングする
注意: Allow encrypted POF only のオプションが無効にされた際のみ、.ekp と.pof ファイ
ルを個別にプログラミングすることができます。
• .ekp を.pof に統合し、両方をまとめてプログラミングする
.ekp ファイルと暗号化された.pof ファイルを個別にプログラミングする
Quartus Prime ソフトウェアを使用して.ekp と暗号化された.pof を個別にプログラミングする
には、以下のステップを実行します。
1. Quartus Prime プログラマーの Mode リストで、プログラミング・モードとして JTAG を選択
します。
2. Hardware Setup をクリックし、Hardware Setup ダイアログボックスを開きます。
3. Currently selected hardware リストでプログラミング・ハードウェアとして USBBlaster を選択
し、Done をクリックします。
4. Add File をクリックし、Select Programmer File ダイアログボックスを開きます。
5. File name フィールドに<filename>.ekp と入力し Open をクリックします。
6. 追加した.ekp ファイルを選択し Program/Configure をクリックします。
7. Start をクリックしてキーをプログラムします。
注意: Quartus Prime ソフトウェアはメッセージウィンドウでキー・プログラミング動作の成
功または失敗についての情報を提供します。.ekp がプログラミングされると、これと
は別に.pof をプログラミングできます。.ekp によってプログラミングされた内部フ
ラッシュにセキュリティー・キーを保持するには、続けて以下のステップを実行しま
す。
MAX 10 FPGA コンフィグレーション・デザインのガイドライン
フィードバック
Altera Corporation
3-20
UG-M10CONFIG
2016.10.31
.ekp を.POF に統合しプログラミングする
8. 選択したデバイスにプログラミングする .pof を選択します。
9. CFM および UFM のために更新する必要がある機能ブロックのみを子レベルでチェックしま
す。プログラマー GUI を使用する際には、動作を親レベルでチェックしないでください。
10. すべての設定をセットした後で、Start をクリックしてプログラミングを開始します。
.ekp を.POF に統合しプログラミングする
Quartus Prime ソフトウェアを使用して.ekp を.pof に統合し、両方をまとめてプログラミングす
るには、以下のステップを実行します。
1. Quartus Prime プログラマーの Mode リストで、プログラミング・モードとして JTAG を選択
します。
2. Hardware Setup をクリックし、Hardware Setup ダイアログボックスを開きます。
3. Currently selected hardware リストでプログラミング・ハードウェアとして USBBlaster を選択
し、Done をクリックします。
4. 左側のペインの Auto Detect ボタンをクリックします。
5. デバイスにプログラミングする .pof を選択します。
6. <yourpoffile.pof> を選択して右クリック し、Add EKP File を選択して、.ekp ファイル
を.pof ファイルに統合します。
.ekp が.pof に統合されたら、統合された.pof を新しい.pof として保存できます。新しく保
存されたファイルは .ekp の情報と統合されたオリジナル.pof を有します。
7. Program/Configure カラムで <yourpoffile.pof> を選択します。
8. すべての設定をセットした後で、Start をクリックしてプログラミングを開始します。
内部コンフィグレーションでの暗号化
内部コンフィグレーション時に、FPGA は格納しているキーで .pof を復号化し、復号データを
コンフィグレーションに使用します。コンフィグレーション中にロードされるコンフィグレー
ション・イメージも暗号化設定と Configure device from CFM0 only 設定に影響されます。
表 3-6: 暗号化設定、暗号化キーと CONFIG_SEL ピン設定に基づくコンフィグレーション・イメージ
以下の表に Configure device from CFM0 only が無効にされている際のシナリオを示します。キ
ー X とキー Y はデバイスおよびコンフィグレーション・イメージに含まれているセキュリティ
ー・キーです。
コンフィグ CFM0(イメージ CFM1(イメージ
レーション・ 0)暗号化キー 1)暗号化キー
イメージモ
ード
デバイスに
格納された
キー
Allow
encrypted
POF only
CONFIG_SEL パワーアップ後に
ピン
ロードされるデザ
イン
シングル
非暗号化
使用不可
キーなし
無効
0
イメージ 0
シングル
非暗号化
使用不可
キーなし
無効
1
イメージ 0
シングル
非暗号化
使用不可
キー X
無効
0
イメージ 0
シングル
非暗号化
使用不可
キー X
無効
1
イメージ 0
Altera Corporation
MAX 10 FPGA コンフィグレーション・デザインのガイドライン
フィードバック
UG-M10CONFIG
2016.10.31
内部コンフィグレーションでの暗号化
コンフィグ CFM0(イメージ CFM1(イメージ
レーション・ 0)暗号化キー 1)暗号化キー
イメージモ
ード
デバイスに
格納された
キー
Allow
encrypted
POF only
3-21
CONFIG_SEL パワーアップ後に
ピン
ロードされるデザ
イン
シングル
非暗号化
使用不可
キー X
有効
0
コンフィグレー
ション不成功
シングル
非暗号化
使用不可
キー X
有効
1
コンフィグレー
ション不成功
シングル
キー X
使用不可
キーなし
有効
0
コンフィグレー
ション不成功
シングル
キー X
使用不可
キーなし
有効
1
コンフィグレー
ション不成功
シングル
キー X
使用不可
キー X
有効
0
イメージ 0
シングル
キー X
使用不可
キー X
有効
1
イメージ 0
シングル
キー X
使用不可
キー Y
有効
0
コンフィグレー
ション不成功
シングル
キー X
使用不可
キー Y
有効
1
コンフィグレー
ション不成功
デュアル
非暗号化
非暗号化
キーなし
無効
0
イメージ 0
デュアル
非暗号化
非暗号化
キーなし
無効
1
イメージ 1
デュアル
キー X
非暗号化
キーなし
無効
0
イメージ 1 (11)
デュアル
キー X
非暗号化
キーなし
無効
1
イメージ 1
デュアル
キー X
非暗号化
キー X
無効
0
イメージ 0
デュアル
キー X
非暗号化
キー X
無効
1
イメージ 1
デュアル
キー X
非暗号化
キー X
有効
0
イメージ 0
デュアル
キー X
非暗号化
キー X
有効
1
イメージ 0
デュアル
キー X
非暗号化
キー Y
有効
0
コンフィグレー
ション不成功
デュアル
キー X
非暗号化
キー Y
有効
1
コンフィグレー
ション不成功
デュアル
キー X
キー X
キーなし
有効
0
コンフィグレー
ション不成功
デュアル
キー X
キー X
キーなし
有効
1
コンフィグレー
ション不成功
デュアル
キー X
キー X
キー X
有効
0
イメージ 0
デュアル
キー X
キー X
キー X
有効
1
イメージ 1
(11)
イメージ 0 でのコンフィグレーションが失敗すると、デバイスは自動的にイメージ 1 をロードしま
す。
MAX 10 FPGA コンフィグレーション・デザインのガイドライン
フィードバック
Altera Corporation
3-22
UG-M10CONFIG
2016.10.31
内部コンフィグレーションでの暗号化
コンフィグ CFM0(イメージ CFM1(イメージ
レーション・ 0)暗号化キー 1)暗号化キー
イメージモ
ード
デバイスに
格納された
キー
Allow
encrypted
POF only
CONFIG_SEL パワーアップ後に
ピン
ロードされるデザ
イン
デュアル
キー X
キー Y
キー X
有効
0
イメージ 0
デュアル
キー X
キー Y
キー X
有効
1
イメージ 0 (12)
デュアル
キー Y
キー Y
キー Y
有効
0
イメージ 0
デュアル
キー Y
キー Y
キー Y
有効
1
イメージ 1
デュアル
キー X
キー Y
キー Y
有効
0
イメージ 1(11)
デュアル
キー X
キー Y
キー Y
有効
1
イメージ 1
表 3-7: 暗号化設定と暗号化キーに基づくコンフィグレーション・イメージ
以下の表に Configure device from CFM0 only が有効にされている際のシナリオを示します。
CFM0(イメージ 0)暗号
化キー
(12)
デバイスに格納さ
れたキー
Allow encrypted POF
only
パワーアップ後にロードされるデザイ
ン
非暗号化
キーなし
無効
イメージ 0
非暗号化
キー X
無効
イメージ 0
非暗号化
キー Y
無効
イメージ 0
非暗号化
キーなし
有効
コンフィグレーション不成功
非暗号化
キー X
有効
コンフィグレーション不成功
非暗号化
キー Y
有効
コンフィグレーション不成功
キー X
キーなし
無効
コンフィグレーション不成功
キー X
キー X
無効
イメージ 0
キー X
キー Y
無効
コンフィグレーション不成功
キー X
キーなし
有効
コンフィグレーション不成功
キー X
キー X
有効
イメージ 0
キー X
キー Y
有効
コンフィグレーション不成功
キー Y
キーなし
無効
コンフィグレーション不成功
キー Y
キー X
無効
コンフィグレーション不成功
キー Y
キー Y
無効
イメージ 0
キー Y
キーなし
有効
コンフィグレーション不成功
キー Y
キー X
有効
コンフィグレーション不成功
イメージ 1 でのコンフィグレーションが失敗すると、デバイスは自動的にイメージ 0 をロードしま
す。
Altera Corporation
MAX 10 FPGA コンフィグレーション・デザインのガイドライン
フィードバック
UG-M10CONFIG
2016.10.31
MAX 10 JTAG のセキュアデザインの例
CFM0(イメージ 0)暗号
化キー
キー Y
デバイスに格納さ
れたキー
キー Y
Allow encrypted POF
only
有効
3-23
パワーアップ後にロードされるデザイ
ン
イメージ 0
関連情報
3-8 ページの Convert Programming Files を使用して.pof を生成する
MAX 10 JTAG のセキュアデザインの例
このデザイン例では、JTAG の LOCK と UNLOCK 命令を実行するための、内部 JTAG WYSIWYG アト
ムのインスタンス化および Quartus Prime ソフトウェアで実現されるユーザーロジックの例につ
いて説明します。このデザイン例は、JTAG セキュアモードが有効にされている MAX 10 デバイ
スを対象としています。
関連情報
• 2-22 ページの 使用できる JTAG 命令
• 2-23 ページの コンフィグレーション・フラッシュメモリーへのアクセス 許可
• JTAG Secure Design Example
内部 JTAG インターフェイス
MAX 10 デバイスでは、JTAG コントロール・ブロックにアクセスするインターフェイスは 2 つ
あります。
• 外部 JTAG インターフェイス—物理的な JTAG ピン、TCK、TDI、TDO および TMS から JTAG コン
トロール・ブロックに接続する
• 内部 JTAG インターフェイス—内部 FPGA コアファブリックから JTAG コントロール・ブロッ
クに接続する
JTAG コントロール・ブロックにアクセスするために、外部または内部 JTAG インターフェイス
のどちらか一度に 1 つのみ使用できます。外部 JTAG インターフェイスは通常、プログラミン
グ・ケーブルを使用した JTAG コンフィグレーションに使用されます。内部 JTAG インターフェ
イスにアクセスするためには、 Quartus Prime ソフトウェアのデザインに WYSIWYG アトムを含
める必要があります。
MAX 10 FPGA コンフィグレーション・デザインのガイドライン
フィードバック
Altera Corporation
3-24
UG-M10CONFIG
2016.10.31
内部 JTAG ブロックアクセスの WYSIWYG アトム
図 3-4: 内部および外部 JTAG インターフェイスの接続
Core Interface
Internal JTAG
JTAG
Control Block
TDI
TMS
TCK
TDO
CORECTL
TDICORE
TDI
TMSCORE
TMS
TCKCORE
TCK
TDOCORE
TDO
I/O Interface
External JTAG
TDI
TMS
TCK
TDO
TDI
TMS
TCK
TDO
注意: MAX 10 デバイスの内部 JTAG が正しく機能するために、JTAG WYSIWYG アトム内での
JTAG 信号が 4 つ (TCK、TDI、TMS および TDO) とも外部に配線される必要があります。
Quartus Prime ソフトウェアは、専用 JTAG ピンの対応するポートを自動的に割り当てま
す。
内部 JTAG ブロックアクセスの WYSIWYG アトム
以下の例は、MAX 10 デバイスで WYSIWYG アトムの入力および出力ポートがどのように定義さ
れているかを示します。
fiftyfivenm_jtag <name>
(
.tms(),
.tck(),
.tdi(),
.tdoutap(),
.tdouser(),
.tdicore(),
.tmscore(),
.tckcore(),
.corectl(),
.tdo(),
.tmsutap(),
.tckutap(),
.tdiutap(),
.shiftuser(),
.clkdruser(),
.updateuser(),
.runidleuser(),
.usr1user(),
Altera Corporation
MAX 10 FPGA コンフィグレーション・デザインのガイドライン
フィードバック
UG-M10CONFIG
2016.10.31
内部 JTAG ブロックアクセスの WYSIWYG アトム
3-25
.tdocore(),
.ntdopinena()
);
表 3-8: ポートの説明
ポート
<name>
入力/出力
—
機能
MAX 10 JTAG WYSIWYG アトムの識別子で、Verilog HDL、
VHDL、および AHDL など特定の記述言語に応じて適正な
識別名を表します。
.corectl()
入力
JTAG コントロール・ブロックへのアクティブ High 入力
は、コアインターフェイスから 内部 JTAG アクセスを有効
にします。コンフィグレーション後に FPGA がユーザー
モードに入る時、このポートはデフォルトで Low になっ
ています。このポートをロジック High にすると、内部
JTAG インターフェイスが有効になり(同時に外部 JTAG
インターフェイスが無効になる)、ポートをロジック Low
にすると、内部 JTAG インターフェイスが無効になります
(同時に外部 JTAG インターフェイスが有効になる)
。
.tckcore()
入力
tck コア信号
.tdicore()
入力
tdi コア信号
.tmscore()
入力
tms コア信号
.tdocore()
出力
tdo コア信号
.tck()
入力
tck ピン信号
.tdi()
入力
tdi ピン信号
.tms()
入力
tms ピン信号
.tdo()
出力
tdo ピン信号
MAX 10 FPGA コンフィグレーション・デザインのガイドライン
フィードバック
Altera Corporation
3-26
UG-M10CONFIG
2016.10.31
LOCK および UNLOCK JTAG 命令の実行
ポート
入力/出力
機能
.clkdruser()
.runidleuser()
.shiftuser()
.tckutap()
.tdiutap()
.tdouser()
.tdoutap()
入力/出力
これらのポートは、内部 JTAG インターフェイスを介して
JTAG セキュアモードを有効にするために使用されていな
いため、未接続のままにできます。
.tmsutap()
.updateuser()
.usr1user()
.ntdopinena()
LOCK および UNLOCK JTAG 命令の実行
JTAG セキュアモードが有効にされている状態で、 MAX 10 デバイスにこのリファレンス・デザ
インをコンフィグレーションすると、デバイスがパワーアップおよびコンフィグレーション後に
は JTAG セキュアモードになります。
JTAG セキュアモードを無効にするために、ユーザーロジックの start_unlock ポートをトリガー
して、UNLOCK JTAG 命令を発行させます。UNLOCK JTAG 命令が発行されたら、デバイスは JTAG セ
キュアモードを終了します。JTAG セキュアモードが無効になっている時に、 MAX 10 デバイス
の内部フラッシュをフルチップ消去を行うことにより、JTAG セキュアモードを永久に無効にす
ることができます。
ユーサーロジックの start_lock ポートは、LOCK JTAG 命令の実行をトリガーします。この命令
の実行により、 MAX 10 デバイスで JTAG セキュアモードが有効になります。
Altera Corporation
MAX 10 FPGA コンフィグレーション・デザインのガイドライン
フィードバック
UG-M10CONFIG
2016.10.31
LOCK および UNLOCK JTAG 命令の実行
3-27
図 3-5: LOCK または UNLOCK JTAG 命令の実行
スタート
JTAG 命令を TDI
Core にシフトする
no
start_unlock or
start_lock
= 1?
yes
命令長の
終わり?
no
yes
Enable the Internal JTAG
Interface, corectl = 1
TMS Core の制御を通して
TAP Controller State
Machine をRESET State
からSHIFT_IR State
に移動する
TAP Controller State
Machine を SHIFT_IR
State から IDLE State
に移動する
完了
表 3-9: ユーザーロジックの入力および出力ポート
ポート
入力/出力
機能
clk_in
入力
ユーザーロジックのクロックソース。ユーザーロジックの
fMAX は、タイミングクロージャー解析に依存します。fMAX
を決定するには、タイミング制約を適用し、パスにタイミン
グ解析を実行する必要があります。
start_lock
入力
内部 JTAG インターフェイスに LOCK JTAG 命令の実行をトリ
ガーします。トリガーするには、パルス信号が1 クロック
サイクル以上 High の状態が必要です。
start_unlock
入力
内部 JTAG インターフェイスに UNLOCK JTAG 命令の実行をト
リガーします。トリガーするには、パルス信号が1 クロッ
クサイクル以上 High の状態が必要です。
jtag_core_en_out
出力
JTAG WYSIWYG アトムへの出力。このポートは、内部 JTAG
インターフェイスを有効にするために、JTAG WYSIWYG ア
トムの corectl ポートに接続されています。
tck_out
出力
JTAG WYSIWYG アトムへの出力。このポートは JTAG
WYSIWYG アトムの tck_core ポートに接続されています。
tdi_out
出力
JTAG WYSIWYG アトムへの出力。このポートは JTAG
WYSIWYG アトムの tdi_core ポートに接続されています。
MAX 10 FPGA コンフィグレーション・デザインのガイドライン
フィードバック
Altera Corporation
3-28
UG-M10CONFIG
2016.10.31
JTAG セキュアモードの検証
ポート
入力/出力
機能
tms_out
出力
JTAG WYSIWYG アトムへの出力。このポートは JTAG
WYSIWYG アトムの tms_core ポートに接続されています。
indicator
出力
この出力ピンのロジック High は、LOCK または UNLOCK JTAG
命令の実行が完了したことを示しています。
JTAG セキュアモードの検証
必須ではない JTAG 命令を実行することにより、デバイスが正しく JTAG セキュアモードに入っ
たか、または JTAG セキュアモードを終了したかを検証することができます。
注意: デバイスが JTAG セキュアモードにある際、外部 JTAG のロックを解除するためには、内
部 JTAG インターフェイスをインスタンス 化する必要があります。
JTAG セキュアオプションを有効にすると、 MAX 10 デバイスはパワーアップ後に JTAG セキュ
アモードに入ります。デザイン例で JTAG セキュア機能を検証するために、以下の手順を実行し
ます。
1. JTAG セキュアモードが有効にされている状態で、リファレンス・デザインの.pof ファイル
をデバイスに設定します。電源の再投入後に、デバイスは JTAG セキュアモードにあるべきで
す。
2. デバイスが正しくユーザーモードに入ったかを確認するために、以下のいずれかを観察しま
す。
• CONFDONE ピンが High になる
• counter_output ピンがトグルを開始する
3. デバイスをリコンフィグレーションするために、外部 JTAG ピンを使用して、PULSE_NCONFIG
JTAG 命令を発行します。デザイン例に添付された pulse_ncfg.jam ファイルを使用するこ
とができます。この pulse_ncfg.jam ファイルを、quartus_jli または JAM player を通じて実行
できます。以下のいずれかを観察することによって、デバイスはリコンフィグレーションし
ていないことを確認できます。
• CONFDONE ピンが High にとどまる
• counter_output ピンがトグルを継続する
リコンフィグレーションが成功しないということは、デバイスが現在 JTAG セキュアモードで
あることを意味します。
4. ユーザーロジックの start_unlock ポートをロジック High にして、UNLOCK JTAG 命令を実行し
ます。
UNLOCK JTAG 命令の完了後に、インジケーター・ポートが High になります。
5. デバイスをリコンフィグレーションするために、外部 JTAG ピンを使用して、PULSE_NCONFIG
JTAG 命令を発行します。以下のいずれかを観察することによって、デバイスが正しくリコン
フィグレーションしたことを確認できます。
• CONFDONE ピンが Low になる
• counter_output ピンがトグルを停止する
Altera Corporation
MAX 10 FPGA コンフィグレーション・デザインのガイドライン
フィードバック
UG-M10CONFIG
2016.10.31
JTAG セキュアモードの検証
3-29
コンフィグレーションが成功したということは、デバイスが現在 JTAG セキュアモードではな
いことを意味します。
MAX 10 FPGA コンフィグレーション・デザインのガイドライン
フィードバック
Altera Corporation
4
MAX 10 FPGA コンフィグレーション IP コア実
装ガイド
2016.10.31
UG-M10CONFIG
更新情報
フィードバック
関連情報
• Introduction to Altera IP Cores
パラメータ化、アップグレード、IP コアのシミュレーションを含むすべてのアルテラ FPGA
IP コアに関する基本的な情報を提供します。
• Creating Version-Independent IP and Qsys Simulation Scripts
ソフトウェアあるいは IP のバージョンのアップグレードのためのマニュアルでの更新を必
要としないシミュレーション・スクリプトの作成について詳しい情報を提供します。
• Project Management Best Practices
プロジェクトおよび IP ファイルの効果的な管理および移植性のためのガイドラインを提供
します。
アルテラ・ユニークチップ ID IP コア
この項では、アルテラ・ユニークチップ ID IP コアを実装するためのガイドラインを提供しま
す。
関連情報
• 2-20 ページの ユニークチップ ID
• 6-1 ページの アルテラ・ユニークチップ ID IP コアのポート
アルテラ・ユニークチップ ID IP コアのインスタンス化
アルテラ・ユニークチップ ID IP コアをインスタンス化するには、以下のステップを実行しま
す。
1.
2.
3.
4.
Quartus Prime ソフトウェアの Tools メニューで、IP Catalog をクリックします。
Library カテゴリーで、Basic Functions と Configuration and Programming を展開します。
Altera Unique Chip ID を選択し、Add をクリックして、出力ファイル名を入力します。
Save IP Variation ダイアログボックスで、
Intel Corporation. All rights reserved. Intel, the Intel logo, Altera, Arria, Cyclone, Enpirion, MAX, Nios, Quartus and Stratix words and logos are trademarks of
Intel Corporation or its subsidiaries in the U.S. and/or other countries. Intel warrants performance of its FPGA and semiconductor products to current
specifications in accordance with Intel's standard warranty, but reserves the right to make changes to any products and services at any time without notice.
Intel assumes no responsibility or liability arising out of the application or use of any information, product, or service described herein except as expressly
agreed to in writing by Intel. Intel customers are advised to obtain the latest version of device specifications before relying on any published information
and before placing orders for products or services.
*Other names and brands may be claimed as the property of others.
www.altera.com
101 Innovation Drive, San Jose, CA 95134
ISO
9001:2008
登録済
4-2
UG-M10CONFIG
2016.10.31
アルテラ・ユニークチップ ID IP コアのリセット
• IP バリエーション・ファイル名とディレクトリーを設定します。
• IP バリエーション・ファイルタイプを選択します。
5. Finish をクリックします。
アルテラ・ユニークチップ ID IP コアのリセット
アルテラ・ユニークチップ ID IP コアをリセットするには、reset 信号を 1 クロックサイクル以
上 High にアサートする必要があります。reset 信号をディアサートした後、アルテラ・ユニー
クチップ ID IP コアはヒューズ ID ブロックからデバイスのユニークチップ ID を再読み出しま
す。アルテラ・ユニークチップ ID IP コアは、動作が完了すると data_valid 信号をアサートし
ます。
アルテラ・デュアル・コンフィグレーション IP コア
この項では、アルテラ・デュアル・コンフィグレーション IP コアを実装するためのガイドライ
ンを提供します。
アルテラ・デュアル・コンフィグレーション IP コアのインスタンス化
アルテラ・デュアル・コンフィグレーション IP コアをインスタンス化するには、以下のステッ
プを実行します。
1. Quartus Prime ソフトウェアの Tools メニューで、IP Catalog をクリックします。
2. Library カテゴリーで、Basic Functions と Configuration and Programming を展開します。
3. Altera Dual Configuration を選択し、Add をクリックすると、IP パラメーター・エディターが
表示されます。
4. New IP Instance ダイアログボックスで、
• IP のトップレベル名を設定します。
• デバイスファミリーを選択します。
• デバイスを選択します。
5. OK をクリックします。
Altera Corporation
MAX 10 FPGA コンフィグレーション IP コア実装ガイド
フィードバック
5
アルテラ・デュアル・コンフィグレーション
IP コアの参考資料
2016.10.31
UG-M10CONFIG
更新情報
フィードバック
関連情報
• 2-18 ページの アルテラ・デュアル・コンフィグレーション IP コア
• 3-11 ページの ユーザーロジックを介したリモート・システム ・アップグレードへのアクセス
• AN 741: Remote System Upgrade for MAX 10 FPGA Devices over UART with the Nios II Processor
MAX 10 FPGA デバイスのリモート・システム・アップグレード向けリファレンス・デザイン
を提供します。
• I2C Remote System Update Example
この例では、I2C プロトコルの使用によるリモート・システム ・アップグレードを示します。
アルテラ・デュアル・コンフィグレーション IP コアの Avalon-MM アド
レスマップ
表 5-1: MAX 10 デバイスでのアルテラ・デュアル・コンフィグレーション IP コアの Avalon-MM アドレス
マップ
• アルテラは、書き込み動作向けの予約ビットを 0 にセットすることを推奨します。読み出し
動作では、IP コアは常に出力として 0 を生成します。
• 1 を書き込んで、概要に記載した任意の動作をトリガーします。
• オフセット 4、5、6、7 の任意の読み出し動作の前に、必要な動作をオフセット 2 からトリガ
ーする必要があります。
オフセット
R/W
幅(ビッ
ト)
0
W
32
概要
• ビット 0—リコンフィグレーションをトリガーする
• ビット 1—ウォッチドッグ・タイマーをリセットする
• ビット 31:2—予約
信号は Avalon で書き込みサイクルと同時にトリガーされる
Intel Corporation. All rights reserved. Intel, the Intel logo, Altera, Arria, Cyclone, Enpirion, MAX, Nios, Quartus and Stratix words and logos are trademarks of
Intel Corporation or its subsidiaries in the U.S. and/or other countries. Intel warrants performance of its FPGA and semiconductor products to current
specifications in accordance with Intel's standard warranty, but reserves the right to make changes to any products and services at any time without notice.
Intel assumes no responsibility or liability arising out of the application or use of any information, product, or service described herein except as expressly
agreed to in writing by Intel. Intel customers are advised to obtain the latest version of device specifications before relying on any published information
and before placing orders for products or services.
*Other names and brands may be claimed as the property of others.
www.altera.com
101 Innovation Drive, San Jose, CA 95134
ISO
9001:2008
登録済
5-2
UG-M10CONFIG
2016.10.31
アルテラ・デュアル・コンフィグレーション IP コアの Avalon-MM アドレスマップ
オフセット
R/W
幅(ビッ
ト)
1
W
32
概要
• ビット 0—入力レジスターに対して config_sel_
overwrite をトリガーする
• ビット 1—入力レジスターに config_sel を書き込む。コ
ンフィグレーション・イメージ 0 または 1 をロードするた
めに 0 または 1 をセットする
• ビット 31:2—予約
busy 信号が書き込みサイクルの直後、コンフィグレーショ
ン・イメージの情報がレジスターに格納されている間に生成
される。busy 信号が High になると、処理が完了して busy 信
号がディアサートされるまでこのアドレスへの書き込みは無
視される
2
W
32
• ビット 0—ユーザー・ウォッチドッグからの読み出し動作
をトリガーする
• ビット 1—前回のステート・アプリケーション 2 レジスタ
ーからの読み出し動作をトリガーする
• ビット 2—前回のステート・アプリケーション 1 レジスタ
ーからの読み出し動作をトリガーする
• ビット 3—入力レジスターからの読み出し動作をトリガー
する
• ビット 31:4—予約
busy 信号が書き込みサイクルの直後に生成される
3
R
32
• ビット 0—IP busy 信号
• ビット 31:1—予約
busy 信号は、デュアル・コンフィグレーション
IP コアが書
き込みまたは読み出し処理中であることを示す。この状態で
の、リモート・システム ・アップデート・ブロック・レジス
ターの動作要求のためのすべての書き込み動作は、リセット
タイマーへのトリガーを除き無視される。アルテラは、読み
出しまたは書き込みプロセスをトリガーした後、この busy 信
号を引き上げることを推奨する
4
(13)
R
32
•
•
•
•
Bit 11:0—user watchdog value. (13)
ビット 12—ユーザー・ウォッチドッグの現在の状態
ビット 16:13—現在の状態の msm_cs 値
ビット 31:17—予約
デュアル・コンフィグレーション IP コアを使用して、29 ビットのユーザー・ウォッチドッグ値
のうち上位 12 ビットのみを読み出しすることができます。
Altera Corporation
アルテラ・デュアル・コンフィグレーション IP コアの参考資料
フィードバック
UG-M10CONFIG
2016.10.31
アルテラ・デュアル・コンフィグレーション IP コアの Avalon-MM アドレスマップ
5-3
オフセット
R/W
幅(ビッ
ト)
5
R
32
• ビット 3:0—リモート・システム ・アップグレード・ステ
ータス・レジスタ— MAX 10 デバイスの前回のステート・
ロジック・ビット の表からの前回のステート・アプリケ
ーション 1 リコンフィグレーション・ソースの値
• ビット 7:4—前回のステート・アプリケーション 1 の msm_
cs 値
• ビット 31:8—予約
6
R
32
• ビット 3:0—リモート・システム ・アップグレード・ステ
ータス・レジスタ— MAX 10 デバイスの前回のステート・
ロジック・ビット の表からの前回のステート・アプリケ
ーション 2 リコンフィグレーション・ソースの値
• ビット 7:4—前回のステート・アプリケーション 2 の msm_
cs 値
• ビット 31:8—予約
7
R
32
• ビット 0—入力レジスターからの config_sel_overwrite
値
• ビット 1—入力レジスターの config_sel 値(14)
• ビット 31:2—予約
概要
関連情報
• 2-18 ページの アルテラ・デュアル・コンフィグレーション IP コア
• Avalon Interface Specifications
アルテラ・デュアル・コンフィグレーション IP コアに用いる Avalon-MM インターフェイス
の仕様について詳しい情報を提供します。
• 4-2 ページの アルテラ・デュアル・コンフィグレーション IP コアのインスタンス化
• 2-17 ページの リモート・システム ・アップグレード・ステータス・レジスター
リモート・システム・アップグレード・ステータスレジスター— MAX10 デバイスの前回のス
テート・ロジック・ビットの表で前回のステート・アプリケーション・リコンフィグレーシ
ョン・ソースについて詳しい情報を提供します。
(14)
入力レジスターの config_sel 読み出しのみを行います。物理的な CONFIG_SEL ピン設定には
影響しません。
アルテラ・デュアル・コンフィグレーション IP コアの参考資料
フィードバック
Altera Corporation
5-4
UG-M10CONFIG
2016.10.31
アルテラ・デュアル・コンフィグレーション IP コアのパラメーター
アルテラ・デュアル・コンフィグレーション IP コアのパラメーター
表 5-2: MAX 10 のアルテラ・デュアル・コンフィグレーション IP コアのパラメーター
パラメーター
値
Clock frequency
最大 80 MHz
Altera Corporation
概要
RU_nRSTIMER 信号と RU_nCONFIG 信号をアサートするサイクル数
を指定する。最大 RU_CLK が 40 MHz であり、アルテラのデュア
ル・コンフィグレーション IP コアの動作は最大 80 MHz の制限を
持ち、これはハードウェアの制限より 2 倍高速であることに注意
が必要。これはアルテラ・デュアル・コンフィグレーション IP
コアが入力周波数の半分の速度で RU_CLK を生成するため
アルテラ・デュアル・コンフィグレーション IP コアの参考資料
フィードバック
アルテラ・ユニークチップ ID IP コアの参考資
料
6
2016.10.31
UG-M10CONFIG
更新情報
フィードバック
アルテラ・ユニークチップ ID IP コアのポート
表 6-1: アルテラ・ユニークチップ ID IP コアのポート
ポート
入力/出力
幅(ビット)
概要
clkin
入力
1
• ユニークチップ ID ブロックにクロック信号を
供給する。サポートされる最大周波数は 100
MHz
• クロック信号を供給すると、IP コアがユニーク
チップ ID の値を読み出して値を chip_id 出力
ポートに送る
reset
入力
1
• reset 信号を 1 クロックサイクル以上 High に
アサートすると、IP コアをリセットする
• chip_id[63:0] 出力ポートは、デバイスをリコ
ンフィグレーションするか、IP コアをリセット
するまでユニークチップ ID の値を保持する
data_valid
出力
1
• ユニークチップ ID 読み出しのための準備がで
きていることを示す。信号が Low の場合は、IP
コアが初期状態または、データをヒューズ ID
からロード中
• IP コアが信号をアサートすると、データを
chip_id[63..0] 出力ポートで読み出すための
準備ができている
Intel Corporation. All rights reserved. Intel, the Intel logo, Altera, Arria, Cyclone, Enpirion, MAX, Nios, Quartus and Stratix words and logos are trademarks of
Intel Corporation or its subsidiaries in the U.S. and/or other countries. Intel warrants performance of its FPGA and semiconductor products to current
specifications in accordance with Intel's standard warranty, but reserves the right to make changes to any products and services at any time without notice.
Intel assumes no responsibility or liability arising out of the application or use of any information, product, or service described herein except as expressly
agreed to in writing by Intel. Intel customers are advised to obtain the latest version of device specifications before relying on any published information
and before placing orders for products or services.
*Other names and brands may be claimed as the property of others.
www.altera.com
101 Innovation Drive, San Jose, CA 95134
ISO
9001:2008
登録済
6-2
UG-M10CONFIG
2016.10.31
アルテラ・ユニークチップ ID IP コアのポート
ポート
入力/出力
幅(ビット)
chip_id
出力
64
Altera Corporation
概要
• 対応するヒューズ ID それぞれの位置に基づい
たユニークチップ ID を示す。データは IP コ
アが data_valid 信号をアサートした後にのみ
有効
• パワーアップ時には値は 0 にリセットされる
アルテラ・ユニークチップ ID IP コアの参考資料
フィードバック
MAX 10 FPGA コンフィグレーション・ユーザ
ーガイドの追加情報
A
2016.10.31
UG-M10CONFIG
更新情報
フィードバック
MAX 10 FPGA コンフィグレーション・ユーザーガイドの改訂履歴
日付
バージョン
2016 年 10 月
2016.10.31
変更内容
• 電圧オーバーシュートの防止 の概要を更新
• 図ダウンロード・ケーブルを使用した JTAG シングル・デバ
イス・コンフィグレーションの接続セットアップ と図ダウン
ロード・ケーブルを使用した JTAG マルチデバイス・コンフ
ィグレーションの接続セットアップ の注を更新
• ISP クランプ機能を実装するための手順を追加
• UFM セクターを追加するために図アナログ機能オプション
およびフラッシュ機能オプションでのすべての MAX 10 デバ
イスのコンフィグレーション・フラッシュメモリー・セクタ
ーの使用方法 を更新
2016 年 5 月
2016.05.13
• Quartus Prime GUI を反映するために標準 POR のインスタン
スを遅い POR に変更
• tCFG を tRU_nCONFIG に更新
• .ekp ファイルと暗号化された.pof ファイルを個別にプログラ
ミングする の項におけるステップ8 に表れるファイルのタ
イプを.ekp から.pof に修正
• MAX 10 デバイス向け ICB 値およびその概要 の表にある Use
secondary image ISP data as default setting when available の概要
を修正
• CFM のプログラミング時間を修正
• JTAG ピンの共有を使用する時における JTAG ピンの要件に
関する注を追加
• JTAG ピンの共有 をガイドライン:兼用コンフィグレーショ
ン・ピン の下に移動
Intel Corporation. All rights reserved. Intel, the Intel logo, Altera, Arria, Cyclone, Enpirion, MAX, Nios, Quartus and Stratix words and logos are trademarks of
Intel Corporation or its subsidiaries in the U.S. and/or other countries. Intel warrants performance of its FPGA and semiconductor products to current
specifications in accordance with Intel's standard warranty, but reserves the right to make changes to any products and services at any time without notice.
Intel assumes no responsibility or liability arising out of the application or use of any information, product, or service described herein except as expressly
agreed to in writing by Intel. Intel customers are advised to obtain the latest version of device specifications before relying on any published information
and before placing orders for products or services.
*Other names and brands may be claimed as the property of others.
www.altera.com
101 Innovation Drive, San Jose, CA 95134
ISO
9001:2008
登録済
A-2
UG-M10CONFIG
2016.10.31
MAX 10 FPGA コンフィグレーション・ユーザーガイドの改訂履歴
日付
バージョン
変更内容
• 「コンフィグレーション RAM ビットをクリア」を Power Up ス
テートから Reset ステートに移動したことにより、コンフィグ
レーション・シーケンスの図を更新
• エラー検出ポートの<crcblock_name> の入力/出力のところ
に、入力からなしに修正
• ユーザーインターフェイスとポートの 定義を介してアクセス
するリモート・システム ・アップグレードの例を追加
• エラー検出周波数 および巡回冗長検査の計算のタイミング
の暫定用語を削除
• 図ダウンロード・ケーブルを使用した JTAG マルチデバイス・
コンフィグレーションの接続セットアップ を追加
• 図ダウンロード・ケーブルを使用した JTAG シングル・デバ
イス・コンフィグレーションの接続セットアップ を更新
• 新しい JTAG セキュアデザイン例を追加
• リモート・システム・アップグレードの項のタイトルから「デ
ュアル圧縮イメージでの」を削除して編集
• MAX 10 デバイスのモニタリングされる電源ランプ時間要件
の表を更新
• 内部コンフィグレーション時間 を追加
• インスタント・オン機能を削除
• 図アナログ機能オプションおよびフラッシュ機能オプション
でのすべての MAX 10 デバイスのコンフィグレーション・フ
ラッシュメモリー・セクターの使用方法で User Flash Memory
を Additional UFM に更新
2015 年 12 月
Altera Corporation
2015.12.14
• ウィークプルアップがコンフィグレーション 時にイネーブル
されることを明言するために、Set I/O to weak pull-up prior
usermode オプションの ICB 設定の概要を更新
• ユーザーインターフェイスを介したリモート・システム ・ア
ップデート・ブロックへのアクセス を削除
• エラー検出の WYSIWYG アトムでの入出力ポートの定義を追
加
• リコンフィグレーションの際に ICB ビット設定に基づく I/O
ピンの状態を更新
MAX 10 FPGA コンフィグレーション・ユーザーガイドの追加情報
フィードバック
UG-M10CONFIG
2016.10.31
MAX 10 FPGA コンフィグレーション・ユーザーガイドの改訂履歴
日付
バージョン
2015 年 11 月
2015.11.02
A-3
変更内容
• JTAG コンフィグレーション向けの JRunner サポートおよび
AN 414 へのリンクを削除
• デバイスの機能オプションごとの内部コンフィグレーショ
ン・モード・サポートの違いを表で更新
• 内容の重複により、圧縮されたコンフィグレーション・イメ
ージの最大数の表を削除
• Quartus Prime 15.1 アップデートを反映し、MAX 10 デバイス
の初期化コンフィグレーション・ビットの設定および説明を
更新
• Quartus Prime 15.1 アップデートを反映し、Enable JTAG pin
sharing および Enable nCONFIG, nSTATUS, and CONF_DONE
pins を更新
• ISP クランプ機能についての情報を追加
• ロー・プログラミング・データ(.rpd)生成手順の情報を更
新
• 項タイトルをコンフィグレーション・フラッシュメモリーの
合計プログラミング時間 からコンフィグレーション・フラッ
シュメモリーのプログラミング時間 に変更
• 表タイトルを MAX 10 デバイスでのコンフィグレーション・
フラッシュメモリーのセクターに対する合計プログラミング
時間 から MAX 10 デバイスでのコンフィグレーション・フラ
ッシュメモリーのセクターに対するプログラミング時間 に
変更
• MAX 10 デバイスでのコンフィグレーション・フラッシュメモ
リーのセクターに対するプログラミング時間 の表に注を追
加
• 内部 JTAG インターフェイスおよびユーザーインターフェイ
スを介して内部 JTAG ブロックへのアクセスに関する情報を
追加
• MAX 10 JTAG セキュアデザイン例を追加
MAX 10 FPGA コンフィグレーション・ユーザーガイドの追加情報
フィードバック
Altera Corporation
A-4
UG-M10CONFIG
2016.10.31
MAX 10 FPGA コンフィグレーション・ユーザーガイドの改訂履歴
日付
2015 年 6 月
Altera Corporation
バージョン
2015.06.15
変更内容
• アルテラ・デュアル・コンフィグレーション IP コアの参考資
料 とデュアル圧縮イメージでのリモート・システム・アップ
グレード で関連情報に AN 741: Remote System Upgrade for
MAX 10 FPGA Devices over UART with the Nios II Processor への
リンクを追加
• MAX 10 デバイスのリモート・システム ・アップグレード回路の信号 の
表で RU_nRSTIMER にパルス保持の要件を追加
• MAX 10 デバイスのアルテラ・デュアル・コンフィグレーショ
ン IP コアの Avalon-MM アドレスマップ の表で関連情報とし
てリモート・システム ・アップグレード・ステータスレジス
ター— MAX 10 デバイスの前回のステートビット の表へのリ
ンクを追加
MAX 10 FPGA コンフィグレーション・ユーザーガイドの追加情報
フィードバック
UG-M10CONFIG
2016.10.31
MAX 10 FPGA コンフィグレーション・ユーザーガイドの改訂履歴
日付
2015 年 5 月
バージョン
2015.05.04
変更内容
• 「MAX 10 デバイスの初期化コンフィグレーション・ビット」
の表を再編し、コンフィグレーションの設定の項目を更新
• 図「MAX 10 デバイスの内部コンフィグレーションの概要」
に JTAG コンフィグレーションを追加し、図を「コンフィグ
レーション手法」の項に移動
• 「MAX 10 デバイスの初期化コンフィグレーション・ビット」
の表に、関連するコンフィグレーション設定を説明するリン
クを追加
• 「MAX 10 デバイスの初期化コンフィグレーション・ビット」
の表でデフォルトのウォッチドッグ・タイマー値を 16 進数か
ら 10 進数の値に更新
• 「MAX 10 デバイスの初期化コンフィグレーション・ビット」
の表で ISP データの説明を更新
• 「ユーザー・ウォッチドッグ・タイマー」の項にウォッチドッ
グ・タイマーの計算式を追加
• MAX 10 FPGA Device Datasheet の「User Watchdog Internal
Circuitry Timing Specifications」 へのリンクを追加
• 「MAX 10 デバイスの初期化コンフィグレーション・ビット」
の表に JTAG セキュアがデフォルトで無効にされており有効
にするにはアルテラのサポートが必要であることを示す注を
追加
• 最小および最大 CRC 演算時間の除数を 2 に更新
• リモート・システム ・アップグレードのフローの図を更新
• 「内部コンフィグレーションでの暗号化」の表に「キー」の用
語を追加し、イメージ 1 とイメージ 2 をそれぞれイメージ 0
とイメージ 1 に変更
• 「内部コンフィグレーションでの暗号化」の表に、片方のコン
フィグレーションが失敗するともう片方が自動的にロードさ
れることを示す注を追加
• 除数が 2 以外の場合の最小および最大 CRC 演算時間の計算
式を追加
• JTAG セキュアがオンになっている場合の注意を追加
• 特定の内部コンフィグレーション・モード向けに自動的に生
成される.pof に関する情報を追加
• Device and Pin Options と Convert Programming Files を用い
る.pof と ICB の設定を追加
• 「概要」にコンフィグレーション RAM(CRAM)を追加
• 編集上の修正
MAX 10 FPGA コンフィグレーション・ユーザーガイドの追加情報
フィードバック
A-5
Altera Corporation
A-6
UG-M10CONFIG
2016.10.31
MAX 10 FPGA コンフィグレーション・ユーザーガイドの改訂履歴
日付
バージョン
2014 年 12 月
2014.12.15
• BOOT_SEL ピンを CONFIG_SEL ピンに名称変更
• アルテラ IP コア名をデュアルブート IP コアからデュアル・
コンフィグレーション IP コアに更新
• ICB の要素としての AES 暗号化キーについての情報を追加
• 暗号化機能のガイドラインを追加
• 14.1 リリースで使用可能になった ICB 設定オプションを追加
• 14.1 リリースで使用可能になった CFM プログラミング機能
でのプログラマーのオプションを追加
2014 年 9 月
2014.09.22
初版
Altera Corporation
変更内容
MAX 10 FPGA コンフィグレーション・ユーザーガイドの追加情報
フィードバック
Fly UP