max 10 fpgaコンフィギュレーション・ユーザー・ガイド...max 10 fpga...

48
MAX 10 FPGA コンフィギュレーション・ ユーザー・ガイド 署名 フィードバック UG-M10CONFIG 2014.09.22 101 Innovation Drive San Jose, CA 95134 www.altera.com

Upload: others

Post on 26-Jan-2021

4 views

Category:

Documents


0 download

TRANSCRIPT

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

    署名フィードバック

    UG-M10CONFIG2014.09.22

    101 Innovation DriveSan Jose, CA 95134www.altera.com

    https://www.altera.com/servlets/subscriptions/alert?id=UG-M10CONFIGmailto:[email protected]?subject=MAX%2010%20FPGA%E3%82%B3%E3%83%B3%E3%83%95%E3%82%A3%E3%82%AE%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%83%BB%E3%83%A6%E3%83%BC%E3%82%B6%E3%83%BC%E3%83%BB%E3%82%AC%E3%82%A4%E3%83%89%20(UG-M10CONFIG%202014.09.22)%20%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%83%BB%E3%82%AA%E3%83%B3&body=%E5%BC%8A%E7%A4%BE%E3%81%AF%E5%BE%A1%E7%A4%BE%E3%81%AE%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%81%AB%E6%84%9F%E8%AC%9D%E3%81%84%E3%81%9F%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%E3%82%B3%E3%83%A1%E3%83%B3%E3%83%88%E3%81%AE%E4%B8%AD%E3%81%A7%E3%80%81%E3%83%9A%E3%83%BC%E3%82%B8%E7%95%AA%E5%8F%B7%E3%81%BE%E3%81%9F%E3%81%AF%E6%AE%B5%E8%90%BD%E3%82%92%E6%8C%87%E5%AE%9A%E3%81%97%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%E3%80%82%E3%81%82%E3%82%8A%E3%81%8C%E3%81%A8%E3%81%86%E3%81%94%E3%81%96%E3%81%84%E3%81%BE%E3%81%99%E3%80%82

  • 目次

    MAX 10 FPGAコンフィギュレーションの概要.............................................1-1

    MAX 10 FPGAのコンフィギュレーション手法と機能................................. 2-1コンフィギュレーション手法............................................................................................................... 2-1

    JTAGコンフィギュレーション.................................................................................................2-1内部コンフィギュレーション................................................................................................... 2-2

    コンフィギュレーション機能............................................................................................................... 2-7デュアル圧縮イメージでのリモート・システム・アップグレード............................. 2-7コンフィギュレーション・デザイン・セキュリティ..................................................... 2-14SEUの緩和とコンフィギュレーション・エラーの検出.................................................2-18コンフィギュレーション・データの圧縮........................................................................... 2-21

    コンフィギュレーションの詳細.........................................................................................................2-22コンフィギュレーション・シーケンス................................................................................2-23MAX 10のコンフィギュレーション・ピン........................................................................ 2-25初期化コンフィギュレーション・ビット........................................................................... 2-27

    MAX 10 FPGAコンフィギュレーション・デザインのガイドライン......... 3-1兼用コンフィギュレーション・ピン.................................................................................................. 3-1

    兼用コンフィギュレーション・ピンのガイドライン........................................................3-1兼用ピンのイネーブル.................................................................................................................3-2

    JTAGコンフィギュレーションによるMAX 10 デバイスのコンフィギュレーション........ 3-2JTAGコンフィギュレーションのセットアップ.................................................................. 3-3JTAGコンフィギュレーションの ICB設定.......................................................................... 3-4

    内部コンフィギュレーションによるMAX 10 デバイスのコンフィギュレーション...........3-5内部コンフィギュレーション・モードの選択.....................................................................3-5ICB設定を含む.pofを生成する.................................................................................................3-5内部フラッシュへの.pofのプログラミング..........................................................................3-6

    ユーザー・インタフェースを介したリモート・アップデート・ブロックへのアクセス..3-7エラー検出.................................................................................................................................................. 3-7

    エラー検出機能の検証.................................................................................................................3-7エラー検出の有効化.....................................................................................................................3-8ユーザー・インタフェースを介したエラー検出ブロックへのアクセス.................... 3-8

    データ圧縮の有効化.................................................................................................................................3-9デザインのコンパイルの前に圧縮を有効にする.............................................................. 3-10デザインのコンパイル後に圧縮を有効にする...................................................................3-10

    MAX 10 FPGAコンフィギュレーション IPコア実装ガイド....................... 4-1アルテラ・ユニーク・チップ ID IPコア...........................................................................................4-1

    アルテラ・ユニーク・チップ ID IPコアのインスタンス化............................................4-1

    目次-2

    Altera Corporation

  • アルテラ・ユニーク・チップ ID IPコアのリセット.........................................................4-1アルテラ・デュアル・ブート IPコア................................................................................................ 4-2

    アルテラ・デュアル・ブート IPコアのインスタンス化................................................. 4-2

    アルテラ・デュアル・ブート IPコアの参考資料......................................... 5-1アルテラ・デュアル・ブート IPコアの Avalon-MMアドレス・マップ.................................5-1アルテラ・デュアル・ブート IPコアのパラメータ...................................................................... 5-3

    アルテラ・ユニーク・チップ ID IPコアの参考資料.................................... 6-1アルテラ・ユニーク・チップ ID IPコアのポート......................................................................... 6-1

    MAX 10 FPGAコンフィギュレーション・ユーザー・ガイドの追加情報.A-1MAX 10 FPGAコンフィギュレーション・ユーザー・ガイドの改訂履歴..............................A-1

    目次-3

    Altera Corporation

  • MAX 10 FPGAコンフィギュレーションの概要 12014.09.22

    UG-M10CONFIG 署名 フィードバック

    このユーザー・ガイドでは、 MAX® 10デバイスのコンフィギュレーション手法および機能について説明します。以下のコンフィギュレーション手法を使用して MAX 10デバイスをコンフィギュレーションすることができます。• JTAGコンフィギュレーション—JTAGインタフェースを使用するコンフィギュレーション• 内部コンフィギュレーション—内部フラッシュを使用するコンフィギュレーション

    サポートされているコンフィギュレーション機能

    表 1-1: MAX 10デバイスがサポートするコンフィギュレーション手法と機能

    コンフィギュレーション手法

    リモート・システム・アップグレード 圧縮

    デザイン・セキュリティ SEUの緩和

    (1)

    JTAGコンフィギュレーション — — — あり

    内部コンフィギュレーション あり あり あり あり

    関連する IPコア• アルテラ・デュアル・ブート IPコア—リモート・システム・アップグレード機能で使用• アルテラ・ユニーク・チップ ID IPコア— MAX 10デバイスのチップ IDを取得関連情報• 2-1ページの MAX 10 FPGAのコンフィギュレーション手法と機能コンフィギュレーション手法と機能についての情報を提供します。

    • 3-1ページの MAX 10 FPGAコンフィギュレーション・デザインのガイドラインコンフィギュレーション手法と機能の使用についての情報を提供します。

    • 2-15ページの アルテラ・ユニーク・チップ ID IPコア• 2-13ページの アルテラ・デュアル・ブート IPコア

    (1) シングル電源デバイスに対する SEU緩和の機能は、 Quartus® IIのデフォルトで無効になります。サポートについては販売代理店にお問い合わせください。

    © 2015 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, ENPIRION, MAX, MEGACORE, NIOS, QUARTUS and STRATIX words and logos aretrademarks of Altera Corporation and registered in the U.S. Patent and Trademark Office and in other countries. All other words and logos identified astrademarks or service marks are the property of their respective holders as described at www.altera.com/common/legal.html. Altera warrants performanceof its semiconductor products to current specifications in accordance with Altera's standard warranty, but reserves the right to make changes to anyproducts and services at any time without notice. Altera 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 Altera. Altera customers are advised to obtain the latest version of devicespecifications before relying on any published information and before placing orders for products or services.

    ISO9001:2008 ���

    www.altera.com101 Innovation Drive, San Jose, CA 95134

    https://www.altera.com/servlets/subscriptions/alert?id=UG-M10CONFIGmailto:[email protected]?subject=(UG-M10CONFIG%202014.09.22)%20MAX%2010%20FPGA%E3%82%B3%E3%83%B3%E3%83%95%E3%82%A3%E3%82%AE%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%AE%E6%A6%82%E8%A6%81%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%83%BB%E3%82%AA%E3%83%B3&body=%E5%BC%8A%E7%A4%BE%E3%81%AF%E5%BE%A1%E7%A4%BE%E3%81%AE%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%81%AB%E6%84%9F%E8%AC%9D%E3%81%84%E3%81%9F%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%E3%82%B3%E3%83%A1%E3%83%B3%E3%83%88%E3%81%AE%E4%B8%AD%E3%81%A7%E3%80%81%E3%83%9A%E3%83%BC%E3%82%B8%E7%95%AA%E5%8F%B7%E3%81%BE%E3%81%9F%E3%81%AF%E6%AE%B5%E8%90%BD%E3%82%92%E6%8C%87%E5%AE%9A%E3%81%97%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%E3%80%82%E3%81%82%E3%82%8A%E3%81%8C%E3%81%A8%E3%81%86%E3%81%94%E3%81%96%E3%81%84%E3%81%BE%E3%81%99%E3%80%82http://www.altera.com/support/devices/reliability/certifications/rel-certifications.htmlhttp://www.altera.com/support/devices/reliability/certifications/rel-certifications.html

  • MAX 10 FPGAのコンフィギュレーション手法と機能 2

    2014.09.22

    UG-M10CONFIG 署名 フィードバック

    この章では、MAX 10デバイスでサポートされるコンフィギュレーション手法、機能ならびにコンフィギュレーションの詳細について説明します。

    コンフィギュレーション手法この項では、 MAX 10デバイスの JTAGコンフィギュレーションと内部コンフィギュレーションについて説明します。

    JTAGコンフィギュレーションMAX 10デバイスでは、JTAG命令は内部コンフィギュレーション手法よりも優先されます。JTAGコンフィギュレーション手法を使用して、JTAGインタフェースの TDI、TDO、TMSおよびTCKピンを介してデバイスのコアを直接的にコンフィギュレーションすることができます。Quartus IIソフトウェアは、ダウンロード・ケーブルと Quartus IIソフトウェア・プログラマを使用する JTAGコンフィギュレーションに用いる SRAMオブジェクト・ファイル(.sof)を自動的に生成します。関連情報3-2ページの JTAGコンフィギュレーションによるMAX 10 デバイスのコンフィギュレーションQuartus IIソフトウェア・プログラマとダウンロード・ケーブルを使用する JTAGコンフィギュレーションについて詳しい情報を提供します。

    JTAGピン

    表 2-1: JTAGピンの概要

    ピン 機能 概要

    TDI 以下に用いるシリアル入力ピン• 命令• テスト・データ• プログラミング・データ

    • TDIは TCKの立ち上がりエッジでサンプリングされる

    • TDIピンは内部ウィーク・プルアップ抵抗を備えている

    © 2015 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, ENPIRION, MAX, MEGACORE, NIOS, QUARTUS and STRATIX words and logos aretrademarks of Altera Corporation and registered in the U.S. Patent and Trademark Office and in other countries. All other words and logos identified astrademarks or service marks are the property of their respective holders as described at www.altera.com/common/legal.html. Altera warrants performanceof its semiconductor products to current specifications in accordance with Altera's standard warranty, but reserves the right to make changes to anyproducts and services at any time without notice. Altera 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 Altera. Altera customers are advised to obtain the latest version of devicespecifications before relying on any published information and before placing orders for products or services.

    ISO9001:2008 ���

    www.altera.com101 Innovation Drive, San Jose, CA 95134

    https://www.altera.com/servlets/subscriptions/alert?id=UG-M10CONFIGmailto:[email protected]?subject=(UG-M10CONFIG%202014.09.22)%20MAX%2010%20FPGA%E3%81%AE%E3%82%B3%E3%83%B3%E3%83%95%E3%82%A3%E3%82%AE%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E6%89%8B%E6%B3%95%E3%81%A8%E6%A9%9F%E8%83%BD%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%83%BB%E3%82%AA%E3%83%B3&body=%E5%BC%8A%E7%A4%BE%E3%81%AF%E5%BE%A1%E7%A4%BE%E3%81%AE%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%81%AB%E6%84%9F%E8%AC%9D%E3%81%84%E3%81%9F%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%E3%82%B3%E3%83%A1%E3%83%B3%E3%83%88%E3%81%AE%E4%B8%AD%E3%81%A7%E3%80%81%E3%83%9A%E3%83%BC%E3%82%B8%E7%95%AA%E5%8F%B7%E3%81%BE%E3%81%9F%E3%81%AF%E6%AE%B5%E8%90%BD%E3%82%92%E6%8C%87%E5%AE%9A%E3%81%97%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%E3%80%82%E3%81%82%E3%82%8A%E3%81%8C%E3%81%A8%E3%81%86%E3%81%94%E3%81%96%E3%81%84%E3%81%BE%E3%81%99%E3%80%82http://www.altera.com/support/devices/reliability/certifications/rel-certifications.htmlhttp://www.altera.com/support/devices/reliability/certifications/rel-certifications.html

  • ピン 機能 概要

    TDO 以下に用いるシリアル出力ピン• 命令• データのテスト• データのプログラミング

    • TDOは TCKの立ち下がりエッジでサンプリングされる

    • このピンは、データがデバイスからシフト・アウトされなければトライ・ステートになる

    TMS TAPコントローラ・ステート・マシンの遷移を決定するコントロール信号を提供する入力ピン

    • TMSは TCKの立ち上がりエッジでサンプリングされる

    • TMSピンは内部ウィーク・プルアップ抵抗を備えている

    TCK BST回路へのクロック入力 —

    すべての JTAGピンは、VCCIO 1Bによって駆動されます。JTAGモードでは、I/Oピンは LVTTLあるいは LVCMOSの 3.3V~1.5Vの規格をサポートします。関連情報• MAX 10 Device Datasheet

    MAX 10デバイスでサポートされる I/O規格について詳しい情報を提供します。• 3-1ページの 兼用コンフィギュレーション・ピンのガイドライン• 3-2ページの 兼用ピンのイネーブル

    内部コンフィギュレーション図 2-1: MAX 10デバイスの内部コンフィギュレーションの概要

    CRAM

    MAX 10 Device

    JTAGIn-System Programming

    CFM

    Configuration Data

    InternalConfiguration

    内部コンフィギュレーションの前に、コンフィギュレーション・データをコンフィギュレーション・フラッシュ・メモリ(CFM)にプログラミングしておく必要があります。CFMに書き込まれるコンフィギュレーション・データは、プログラム・オブジェクト・ファイル(.pof)の一部になります。JTAGインシステム・プログラミング(ISP)を使用して内部フラッシュに.pofをプログラミングします。内部コンフィギュレーション時に、 MAX 10デバイスは、CFMからのコンフィギュレーション・データで CRAM(Configuration RAM)をロードします。

    2-2 内部コンフィギュレーションUG-M10CONFIG

    2014.09.22

    Altera Corporation MAX 10 FPGAのコンフィギュレーション手法と機能

    フィードバック

    http://www.altera.com/literature/hb/max-10/m10_datasheet.pdfmailto:[email protected]?subject=%20MAX%2010%20FPGA%E3%81%AE%E3%82%B3%E3%83%B3%E3%83%95%E3%82%A3%E3%82%AE%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E6%89%8B%E6%B3%95%E3%81%A8%E6%A9%9F%E8%83%BD%20(UG-M10CONFIG%202014.09.22)%20%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%83%BB%E3%82%AA%E3%83%B3&body=%E5%BC%8A%E7%A4%BE%E3%81%AF%E5%BE%A1%E7%A4%BE%E3%81%AE%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%81%AB%E6%84%9F%E8%AC%9D%E3%81%84%E3%81%9F%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%E3%82%B3%E3%83%A1%E3%83%B3%E3%83%88%E3%81%AE%E4%B8%AD%E3%81%A7%E3%80%81%E3%83%9A%E3%83%BC%E3%82%B8%E7%95%AA%E5%8F%B7%E3%81%BE%E3%81%9F%E3%81%AF%E6%AE%B5%E8%90%BD%E3%82%92%E6%8C%87%E5%AE%9A%E3%81%97%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%E3%80%82%E3%81%82%E3%82%8A%E3%81%8C%E3%81%A8%E3%81%86%E3%81%94%E3%81%96%E3%81%84%E3%81%BE%E3%81%99%E3%80%82

  • 内部コンフィギュレーション・モード10M02デバイスを除くすべての MAX 10デバイスの内部コンフィギュレーション手法は、以下のモードで構成されています。• デュアル圧縮イメージ—コンフィギュレーション・イメージは、イメージ 0とイメージ 1として CFMに保存される

    • シングル圧縮イメージ• メモリ初期化を伴うシングル圧縮イメージ• シングル非圧縮イメージ• メモリ初期化を伴うシングル非圧縮イメージデュアル圧縮イメージのモードでは、BOOT_SELピンを使用してコンフィギュレーション・イメージを選択します。10M02デバイスの内部コンフィギュレーション手法は、以下のモードをサポートしています。• シングル圧縮イメージ• シングル非圧縮イメージ関連情報2-7ページの デュアル圧縮イメージでのリモート・システム・アップグレード

    コンフィギュレーション・フラッシュ・メモリCFMは、コンフィギュレーショ・イメージを格納するために使用される不揮発性の内部フラッシュです。圧縮率と MAX 10のデバイスに応じて、CFMは圧縮されたコンフィギュレーション・イメージを最大で 2つまで格納することができます。デバイスが 2つのコンフィギュレーション・イメージを格納するためには、圧縮率を 30%以上にする必要があります。

    表 2-2: MAX 10デバイスの圧縮されたコンフィギュレーション・イメージの最大数

    デバイス 圧縮されたコンフィギュレーション・イメージの最大数

    10M02 1

    10M04、10M08、10M16、10M25、10M40、10M50 2

    関連情報2-17ページの コンフィギュレーション・フラッシュ・メモリへのアクセス許可

    コンフィギュレーション・フラッシュ・メモリのセクタ10M02を除くMAX 10デバイスの CFMはすべて、CFM0、CFM1、CFM2の 3つのセクタで構成されています。セクタは、選択した内部コンフィギュレーション・モードに応じて異なる方法でプログラミングされます。10M02デバイスは CFM0のみで構成されています。10M02デバイスの CFM0セクタは、1つの圧縮イメージを選択した際または 1つの非圧縮イメージを選択した際に類似した方法でプログラミングされます。

    UG-M10CONFIG2014.09.22 内部コンフィギュレーション・モード 2-3

    MAX 10 FPGAのコンフィギュレーション手法と機能 Altera Corporation

    フィードバック

    mailto:[email protected]?subject=%20MAX%2010%20FPGA%E3%81%AE%E3%82%B3%E3%83%B3%E3%83%95%E3%82%A3%E3%82%AE%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E6%89%8B%E6%B3%95%E3%81%A8%E6%A9%9F%E8%83%BD%20(UG-M10CONFIG%202014.09.22)%20%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%83%BB%E3%82%AA%E3%83%B3&body=%E5%BC%8A%E7%A4%BE%E3%81%AF%E5%BE%A1%E7%A4%BE%E3%81%AE%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%81%AB%E6%84%9F%E8%AC%9D%E3%81%84%E3%81%9F%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%E3%82%B3%E3%83%A1%E3%83%B3%E3%83%88%E3%81%AE%E4%B8%AD%E3%81%A7%E3%80%81%E3%83%9A%E3%83%BC%E3%82%B8%E7%95%AA%E5%8F%B7%E3%81%BE%E3%81%9F%E3%81%AF%E6%AE%B5%E8%90%BD%E3%82%92%E6%8C%87%E5%AE%9A%E3%81%97%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%E3%80%82%E3%81%82%E3%82%8A%E3%81%8C%E3%81%A8%E3%81%86%E3%81%94%E3%81%96%E3%81%84%E3%81%BE%E3%81%99%E3%80%82

  • 図 2-2: 10M02デバイスを除くすべての MAX 10デバイスのコンフィギュレーション・フラッシュ・メモリ・セクタの使用方法

    未使用の CFM1セクタと CFM2セクタは、ユーザ・フラッシュ・メモリ(UFM)として使用することができます。

    Configuration Flash Memory Sectors

    CFM0CFM1CFM2

    Dual Compressed Image

    Single Uncompressed Image

    Single Uncompressed Imagewith Memory Initialization

    Single Compressed Imagewith Memory Initialization

    Single Compressed Image

    Compressed Image 0

    Uncompressed Image 0 with Memory Initialization

    Compressed Image 0 with Memory Initialization

    Compressed Image 0

    Uncompressed Image 0

    Compressed Image 1

    User Flash Memory

    User Flash Memory

    Internal ConfigurationMode

    関連情報MAX 10 User Flash Memory User Guideユーザー・フラッシュ・メモリについての詳しい情報を提供します。

    コンフィギュレーション・フラッシュ・メモリの合計プログラミング時間

    表 2-3: MAX 10デバイスでのコンフィギュレーション・フラッシュ・メモリのセクタに対する合計プログラミング時間

    デバイスプログラミング時間(ms)

    CFM2 CFM1 CFM0

    10M02 — — 5342.863

    10M04 6442.865 4557.148 11000.01

    10M08 11942.87 8800.01 20742.88

    10M16と 10M25 16342.88 12571.44 28914.3210M40と 10M50 30171.46 22628.6 52800.06

    イン・システム・プログラミングMAX 10デバイスの CFMを含む内部フラッシュを、業界標準の JTAGインタフェースを介するISPによって、プログラミングすることができます。ISPは、CFMをプログラミング、消去、および検証する機能を提供します。 MAX 10デバイスの JTAG回路と ISP命令は、IEEE-1532-2002のプログラミング仕様に準拠しています。

    2-4 コンフィギュレーション・フラッシュ・メモリの合計プログラミング時間UG-M10CONFIG

    2014.09.22

    Altera Corporation MAX 10 FPGAのコンフィギュレーション手法と機能

    フィードバック

    http://www.altera.com/literature/hb/max-10/ug_m10_ufm.pdfmailto:[email protected]?subject=%20MAX%2010%20FPGA%E3%81%AE%E3%82%B3%E3%83%B3%E3%83%95%E3%82%A3%E3%82%AE%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E6%89%8B%E6%B3%95%E3%81%A8%E6%A9%9F%E8%83%BD%20(UG-M10CONFIG%202014.09.22)%20%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%83%BB%E3%82%AA%E3%83%B3&body=%E5%BC%8A%E7%A4%BE%E3%81%AF%E5%BE%A1%E7%A4%BE%E3%81%AE%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%81%AB%E6%84%9F%E8%AC%9D%E3%81%84%E3%81%9F%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%E3%82%B3%E3%83%A1%E3%83%B3%E3%83%88%E3%81%AE%E4%B8%AD%E3%81%A7%E3%80%81%E3%83%9A%E3%83%BC%E3%82%B8%E7%95%AA%E5%8F%B7%E3%81%BE%E3%81%9F%E3%81%AF%E6%AE%B5%E8%90%BD%E3%82%92%E6%8C%87%E5%AE%9A%E3%81%97%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%E3%80%82%E3%81%82%E3%82%8A%E3%81%8C%E3%81%A8%E3%81%86%E3%81%94%E3%81%96%E3%81%84%E3%81%BE%E3%81%99%E3%80%82

  • ISP時には、IEEE Std. 1532命令、アドレス、およびデータが TDI入力ピンを介して MAX 10デバイスにシフト・インされます。データは TDO出力ピンを介してシフト・アウトされ、期待されるデータと比較されます。以下は、ISP動作の基本的な流れです。1. IDの確認。あらゆるプログラミングまたは検証処理の前に JTAG IDが確認されます。JTAG

    ID読み出しの所要時間は、全体的なプログラミング時間との比較においてごくわずかです。2. ISPの開始。I/Oピンがユーザー・モードから ISPモードにスムーズに遷移するようにします。3. セクタ消去。デバイス消去のためにアドレスと命令をシフト・インし、消去パルスを印加します。

    4. プログラミング。アドレス、データ、プログラミング命令をシフト・インし、フラッシュ・セルをプログラミングするためのプログラミング・パルスを生成します。この処理を内部フラッシュ・セクタの各アドレスごとに繰り返します。

    5. 検証。アドレスをシフト・インし、検証命令により読み出しパルスを生成し、比較用のデータをシフト・アウトします。この処理を内部フラッシュのアドレスごとに繰り返します。

    6. ISPの終了。I/Oピンが ISPモードからユーザー・モードにスムーズに遷移するようにします。QuartusII Programmerを使用して CFMをプログラミングすることもできます。関連情報3-6ページの 内部フラッシュへの.pofのプログラミングQuartus II Programmerを使用して.pofをプログラミングするためのステップを提供します。

    リアルタイム ISP

    新しいデザイン・イメージで内部フラッシュを更新するための通常の ISP動作では、デバイスはユーザー・モードを終了し、すべての I/Oピンはトライ・ステートを維持します。新しいデザイン・イメージのプログラミング処理が完了すると、デバイスはリセットされ、ユーザ・モード動作に入ります。リアルタイム ISP機能を使用すると、ユーザー・モードで動作しながら、新しいデザイン・イメージで内部フラッシュを更新することができます。内部フラッシュの更新中はデバイスは既存のデザインで動作を続けます。新しいデザイン・イメージのプログラミング処理が完了しても、デバイスはリセットされません。新しいデザイン・イメージによる更新は、次のコンフィギュレーション・サイクルで有効になります。

    ISP命令とリアルタイム ISP命令

    表 2-4: MAX 10の ISP命令とリアルタイム ISP命令

    命令 命令コード 概要

    CONFIG_IO 00 0000 1101 • JTAGポートを介して IOCSRを使用することにより、JTAGテスト向けに I/Oのリコンフィギュレーションを可能にする。コンフィギュレーション中、もしくは終了後に実行される

    • CONFIG_IO命令を発行する前に、nSTATUSピンがHighになる必要がある

    UG-M10CONFIG2014.09.22 リアルタイム ISP 2-5

    MAX 10 FPGAのコンフィギュレーション手法と機能 Altera Corporation

    フィードバック

    mailto:[email protected]?subject=%20MAX%2010%20FPGA%E3%81%AE%E3%82%B3%E3%83%B3%E3%83%95%E3%82%A3%E3%82%AE%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E6%89%8B%E6%B3%95%E3%81%A8%E6%A9%9F%E8%83%BD%20(UG-M10CONFIG%202014.09.22)%20%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%83%BB%E3%82%AA%E3%83%B3&body=%E5%BC%8A%E7%A4%BE%E3%81%AF%E5%BE%A1%E7%A4%BE%E3%81%AE%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%81%AB%E6%84%9F%E8%AC%9D%E3%81%84%E3%81%9F%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%E3%82%B3%E3%83%A1%E3%83%B3%E3%83%88%E3%81%AE%E4%B8%AD%E3%81%A7%E3%80%81%E3%83%9A%E3%83%BC%E3%82%B8%E7%95%AA%E5%8F%B7%E3%81%BE%E3%81%9F%E3%81%AF%E6%AE%B5%E8%90%BD%E3%82%92%E6%8C%87%E5%AE%9A%E3%81%97%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%E3%80%82%E3%81%82%E3%82%8A%E3%81%8C%E3%81%A8%E3%81%86%E3%81%94%E3%81%96%E3%81%84%E3%81%BE%E3%81%99%E3%80%82

  • 命令 命令コード 概要

    PULSE_NCONFIG 00 0000 0001 nCONFIGピンの Lowのパルスをエミュレーションすることにより、物理的なピンに作用を与えずにリコンフィギュレーションをトリガする

    ISC_ENABLE_HIZ (2) 10 1100 1100 • デバイスを ISPモードにし、すべての I/Oピンをトライ・ステートにし、すべてのコア・ドライバ、ロジック、およびレジスタを駆動する

    • ISC_DISABLE命令がロードされ、更新されるまで、デバイスは ISPモードを維持する

    • ISC_ENABLE命令は必須の命令。この要件は ISC_ENABLE_CLAMP命令または ISC_ENABLE_HIZ命令によって満たされる

    ISC_ENABLE_CLAMP (2) 10 0011 0011 • デバイスを ISPモードにし、すべての I/Oピンを強制的に JTAGバウンダリ・スキャン・レジスタの内容に従わせる

    • この命令がアクティブにされると、コアのドライバ、ロジック、およびレジスタのすべてが凍結される。I/Oピンは、ISPモードが正常に終了するまでクランプされたままになる

    ISC_DISABLE 10 0000 0001 • デバイスの ISPモードを終了させる• ISC_DISABLE命令は、この命令の更新に続いてテスト動作状態またはアイドル状態で 200 µs待機した後ただちに正常に終了する

    ISC_PROGRAM (3) 10 1111 0100 デバイスをイン・システム・プログラミングにセットする。プログラミングは、テスト動作状態またはアイドル状態で生じる

    ISC_NOOP (3) 10 0001 0000 • ISPモードを終了することなくデバイスを非動作モードにセットし、これは ISC_Defaultレジスタをターゲットにする

    • 2つ以上の ISP準拠デバイスが ISPモードでアクセスされており、デバイスのサブセットが何らかの命令を処理する間に、他のより複雑なデバイスが与えられた処理の付加的なステップを仕上げているといった場合に使用する

    ISC_ADDRESS_SHIFT (3) 10 0000 0011 デバイスをフラッシュ・アドレスのロード向けにセットする。フラッシュ・アドレス・レジスタであるISC_Addressをターゲットにする

    ISC_ERASE (3) 10 1111 0010 • 内部フラッシュの消去向けにデバイスをセットする

    • ISC_ADDRESS_SHIFT命令の後に発行する

    (2) ISC_ENABLE_HIZ命令と ISC_ENABLE_CLAMP命令は、コア・ロジックから発行しないでください。(3) デバイスが ISPモードまたはリアルタイム ISPモードでなければ、ENABLE命令と DISABLE命令を除くすべての ISP命令とリアルタイム ISP命令は無効にされます。

    2-6 ISP命令とリアルタイム ISP命令UG-M10CONFIG

    2014.09.22

    Altera Corporation MAX 10 FPGAのコンフィギュレーション手法と機能

    フィードバック

    mailto:[email protected]?subject=%20MAX%2010%20FPGA%E3%81%AE%E3%82%B3%E3%83%B3%E3%83%95%E3%82%A3%E3%82%AE%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E6%89%8B%E6%B3%95%E3%81%A8%E6%A9%9F%E8%83%BD%20(UG-M10CONFIG%202014.09.22)%20%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%83%BB%E3%82%AA%E3%83%B3&body=%E5%BC%8A%E7%A4%BE%E3%81%AF%E5%BE%A1%E7%A4%BE%E3%81%AE%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%81%AB%E6%84%9F%E8%AC%9D%E3%81%84%E3%81%9F%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%E3%82%B3%E3%83%A1%E3%83%B3%E3%83%88%E3%81%AE%E4%B8%AD%E3%81%A7%E3%80%81%E3%83%9A%E3%83%BC%E3%82%B8%E7%95%AA%E5%8F%B7%E3%81%BE%E3%81%9F%E3%81%AF%E6%AE%B5%E8%90%BD%E3%82%92%E6%8C%87%E5%AE%9A%E3%81%97%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%E3%80%82%E3%81%82%E3%82%8A%E3%81%8C%E3%81%A8%E3%81%86%E3%81%94%E3%81%96%E3%81%84%E3%81%BE%E3%81%99%E3%80%82

  • 命令 命令コード 概要

    ISC_READ (3) 10 0000 0101 • 通常のユーザー・バイアス状態で内部フラッシュを検証するためにデバイスをセットする

    • ISC_READ命令は、バースト・モードとして知られている、明確なアドレス指定と自動的なインクリメントをサポートする

    BGP_ENABLE 01 1001 1001 • デバイスをリアルタイム ISPモードにセットする

    • デバイスのユーザ・モードを維持しながら内部フラッシュ・コンフィギュレーション・セクタへアクセスすることを可能にする

    BGP_DISABLE 01 0110 0110 • デバイスのリアルタイム ISPモードを終了させる

    • リコンフィギュレーションによりさえぎられると、デバイスは BGP_DISABLE命令によりリアルタイム ISPモードを終了しなければならない

    注意: サポートされていない JTAG命令を使用しないでください。デバイスを未知の状態にし、操作を回復するために電源の再投入が必要になる恐れがあります。

    コンフィギュレーション機能この項では MAX 10デバイスの、デュアル圧縮イメージのコンフィギュレーションにおけるリモート・システム・アップグレード、SEUの緩和とエラー検出、コンフィギュレーション・デザイン・セキュリティ、ならびにコンフィギュレーション・データの圧縮について説明します。

    デュアル圧縮イメージでのリモート・システム・アップグレードMAX 10デバイスは、リモート・システム・アップグレード機能をサポートしています。デュアル圧縮イメージの内部コンフィギュレーション・モードが選択されると、すべての MAX 10デバイスで、リモート・システム・アップグレード機能はデフォルトで有効にされます。MAX 10デバイスのリモート・システム・アップグレード機能は、以下の機能を提供します。• リモート・コンフィギュレーションの制御• エラー検出、エラー・リカバリと、エラー情報の提供• ダイレクト・アプリケーション・コンフィギュレーション・イメージ• 圧縮され、暗号化されたプログラマ.pofをサポートアルテラのデュアル・ブート IPコアまたはリモート・システム・アップグレード回路の使用により、 MAX 10デバイスのリモート・システム・アップグレード・ブロックにアクセスできます。関連情報• 3-7ページの ユーザー・インタフェースを介したリモート・アップデート・ブロックへのアクセス

    • 4-2ページの アルテラ・デュアル・ブート IPコアのインスタンス化

    UG-M10CONFIG2014.09.22 コンフィギュレーション機能 2-7

    MAX 10 FPGAのコンフィギュレーション手法と機能 Altera Corporation

    フィードバック

    mailto:[email protected]?subject=%20MAX%2010%20FPGA%E3%81%AE%E3%82%B3%E3%83%B3%E3%83%95%E3%82%A3%E3%82%AE%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E6%89%8B%E6%B3%95%E3%81%A8%E6%A9%9F%E8%83%BD%20(UG-M10CONFIG%202014.09.22)%20%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%83%BB%E3%82%AA%E3%83%B3&body=%E5%BC%8A%E7%A4%BE%E3%81%AF%E5%BE%A1%E7%A4%BE%E3%81%AE%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%81%AB%E6%84%9F%E8%AC%9D%E3%81%84%E3%81%9F%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%E3%82%B3%E3%83%A1%E3%83%B3%E3%83%88%E3%81%AE%E4%B8%AD%E3%81%A7%E3%80%81%E3%83%9A%E3%83%BC%E3%82%B8%E7%95%AA%E5%8F%B7%E3%81%BE%E3%81%9F%E3%81%AF%E6%AE%B5%E8%90%BD%E3%82%92%E6%8C%87%E5%AE%9A%E3%81%97%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%E3%80%82%E3%81%82%E3%82%8A%E3%81%8C%E3%81%A8%E3%81%86%E3%81%94%E3%81%96%E3%81%84%E3%81%BE%E3%81%99%E3%80%82

  • • 5-1ページの アルテラ・デュアル・ブート IPコアの Avalon-MMアドレス・マップ• Avalon Interface Specificationsアルテラ・デュアル・ブート IPコアに用いる Avalon-MMインタフェースの仕様について詳しい情報を提供します。

    リモート・システム・アップグレードのフローアプリケーション・コンフィギュレーション・イメージであるイメージ 0とイメージ 1は、どちらも CFMに格納されます。 MAX 10デバイスは、CFMからどちらか 1つのアプリケーション・コンフィギュレーション・イメージをロードします。エラーが生じると、デバイスは自動的にもう 1つのアプリケーション・コンフィギュレーション・イメージをロードします。

    図 2-3: MAX 10デバイスのリモート・システム・アップグレードのフロー

    Sample BOOT_SEL pin

    Image 0 Image 1

    BOOT_SEL=0 BOOT_SEL=1

    Wait for Reconfiguration

    Power-up

    ReconfigurationReconfiguration

    Reconfiguration

    最初のエラーが発生

    最初のエラーが発生

    2番目のエラーが発生

    2番目のエラーが発生

    リモート・システム・アップグレード機能がエラー検出をする動作は以下のとおりです。1. 電源投入後、デバイスは BOOT_SELピンをサンプリングして、どちらのアプリケーション・コンフィギュレーション・イメージをブートするかを判断します。後に続くリコンフィギュレーションのためにリモート・システム・アップグレード回路の入力レジスタによって BOOT_SELピンの設定を上書きすることができます。

    2. リモート・システム・アップグレード機能は、エラーが生じるともう一方のアプリケーション・コンフィギュレーション・イメージをロードすることにより回復します。以下に、リモート・システム・アップグレードにもう一方のアプリケーション・コンフィギュレーション・イメージをロードさせるエラーを示します。

    2-8 リモート・システム・アップグレードのフローUG-M10CONFIG

    2014.09.22

    Altera Corporation MAX 10 FPGAのコンフィギュレーション手法と機能

    フィードバック

    http://www.altera.com/literature/manual/mnl_avalon_spec.pdf?GSA_pos=6&WT.oss_r=1&WT.oss=avalon-mmmailto:[email protected]?subject=%20MAX%2010%20FPGA%E3%81%AE%E3%82%B3%E3%83%B3%E3%83%95%E3%82%A3%E3%82%AE%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E6%89%8B%E6%B3%95%E3%81%A8%E6%A9%9F%E8%83%BD%20(UG-M10CONFIG%202014.09.22)%20%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%83%BB%E3%82%AA%E3%83%B3&body=%E5%BC%8A%E7%A4%BE%E3%81%AF%E5%BE%A1%E7%A4%BE%E3%81%AE%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%81%AB%E6%84%9F%E8%AC%9D%E3%81%84%E3%81%9F%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%E3%82%B3%E3%83%A1%E3%83%B3%E3%83%88%E3%81%AE%E4%B8%AD%E3%81%A7%E3%80%81%E3%83%9A%E3%83%BC%E3%82%B8%E7%95%AA%E5%8F%B7%E3%81%BE%E3%81%9F%E3%81%AF%E6%AE%B5%E8%90%BD%E3%82%92%E6%8C%87%E5%AE%9A%E3%81%97%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%E3%80%82%E3%81%82%E3%82%8A%E3%81%8C%E3%81%A8%E3%81%86%E3%81%94%E3%81%96%E3%81%84%E3%81%BE%E3%81%99%E3%80%82

  • • 内部 CRCエラー• ユーザー・ウォッチドッグ・タイマのタイムアウト

    3. 回復のコンフィギュレーションが完了してデバイスがユーザー・モードになると、リモート・システム・アップグレード回路を使用して、エラーの原因およびどちらのアプリケーション・イメージで障害が発生したかを確認することができます。

    4. 2番目のエラーが発生した場合、デバイスはリコンフィギュレーション・ソースのために待機します。オート・リコンフィギュレーションが有効になっていれば、デバイスはリコンフィギュレーション・ソースを待たずにリコンフィギュレーションします。

    5. リコンフィギュレーションは、以下の操作によってトリガされます。• 外部から nSTATUSを Lowに駆動する• 内部または外部 nCONFIGを Lowにアサートする• RU_nCONFIGを Lowにアサートする

    リモート・システム・アップグレード回路図 2-4: リモート・システム・アップグレード回路

    Status Register (SR)

    PreviousStateRegister 2Bit[31..0]

    StateRegister 1Bit[31..0]

    CurrentStateLogicBit[33..0]

    Internal Oscillator

    Control RegisterBit [38..0]

    Logic

    Input RegisterBit [38..0] update

    Logic

    Bit [40..39]doutdin

    Bit [38..0]doutdin

    capture

    Shift Register

    clkout capture updateLogic

    clkin

    RU_DIN RU_SHIFTnLD RU_CAPTnUPDT RU_CLK RU_nRSTIMER

    Logic Array

    RUReconfigurationStateMachine

    User WatchdogTimer

    RUMasterStateMachine

    timeout

    RU_nCONFIGRU_DOUT

    Previous

    以下に、リモート・システム・アップグレード回路の機能を示します。

    UG-M10CONFIG2014.09.22 リモート・システム・アップグレード回路 2-9

    MAX 10 FPGAのコンフィギュレーション手法と機能 Altera Corporation

    フィードバック

    mailto:[email protected]?subject=%20MAX%2010%20FPGA%E3%81%AE%E3%82%B3%E3%83%B3%E3%83%95%E3%82%A3%E3%82%AE%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E6%89%8B%E6%B3%95%E3%81%A8%E6%A9%9F%E8%83%BD%20(UG-M10CONFIG%202014.09.22)%20%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%83%BB%E3%82%AA%E3%83%B3&body=%E5%BC%8A%E7%A4%BE%E3%81%AF%E5%BE%A1%E7%A4%BE%E3%81%AE%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%81%AB%E6%84%9F%E8%AC%9D%E3%81%84%E3%81%9F%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%E3%82%B3%E3%83%A1%E3%83%B3%E3%83%88%E3%81%AE%E4%B8%AD%E3%81%A7%E3%80%81%E3%83%9A%E3%83%BC%E3%82%B8%E7%95%AA%E5%8F%B7%E3%81%BE%E3%81%9F%E3%81%AF%E6%AE%B5%E8%90%BD%E3%82%92%E6%8C%87%E5%AE%9A%E3%81%97%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%E3%80%82%E3%81%82%E3%82%8A%E3%81%8C%E3%81%A8%E3%81%86%E3%81%94%E3%81%96%E3%81%84%E3%81%BE%E3%81%99%E3%80%82

  • • コンフィギュレーションの現在の状態をトラッキングする• すべてのリコンフィギュレーション・ソースをモニタリングする• アプリケーション・コンフィギュレーション・イメージをセットアップできるようにする• エラーが発生した場合に、デバイスをフォールバック・コンフィギュレーションに戻す• 失敗したアプリケーション・コンフィギュレーション・イメージの情報へのアクセスを提供する

    リモート・システム・アップグレード回路の信号

    表 2-5: MAX 10デバイスのリモート・システム・アップグレード回路の信号

    ポート 入力/出力 概要

    RU_DIN 入力シフト・レジスタへのデータの書き込みのために、RU_CLKの立ち上がりエッジでこの信号を使用する。シフト・レジスタへデータをロードするには、RU_SHIFTnLDを Highにアサートする

    RU_DOUT 出力シフト・レジスタから出力データを取得するために、この信号を使用する。RU_SHIFTnLDが Highにアサートされている場合に RU_CLKの各立ち上がりエッジでデータが出力される

    RU_nRSTIMER 入力ユーザー・ウォッチドッグ・タイマをリセットするためにこの信号を使用する。この信号の立ち下がりエッジでユーザー・ウォッチドッグ・タイマのリセットがトリガされる

    RU_nCONFIG 入力デバイスのリコンフィギュレーションのために、この信号を使用する。リモートシステム・アップグレード機能を有効にしている場合にこの信号を Lowに駆動すると、デバイスのリコンフィギュレーションがトリガされる

    RU_CLK 入力

    リモート・システム・アップグレード回路のクロック。リモートシステム・アップグレード機能を有効にしている場合のユーザー・モードで、このクロック・ドメイン内のすべてのレジスタが有効にされる。シフト・レジスタと入力レジスタはポジティブ・エッジ・フリップフロップである。

    RU_SHIFTnLD 入力 リモート・システム・アップグレード回路のモードを決定する信号を制御する。• RU_SHIFTnLDが Lowに駆動され、RU_CAPTnUPDTが Lowに駆動されると、入力レジスタに RU_CLKの立ち上がりエッジでシフト・レジスタの内容がロードされる

    • RU_SHIFTnLDが Lowに駆動され、RU_CAPTnUPDTが Hingに駆動されると、シフト・レジスタは RU_CLKの立ち上がりエッジで input_cs_psから値をキャプチャする

    • RU_SHIFTnLDが Hoghに駆動されると RU_CAPTnUPDTは無視され、シフト・レジスタは RU_CLKの立ち上がりエッジでデータをシフトする

    RU_CAPTnUPDT 入力

    2-10 リモート・システム・アップグレード回路の信号UG-M10CONFIG

    2014.09.22

    Altera Corporation MAX 10 FPGAのコンフィギュレーション手法と機能

    フィードバック

    mailto:[email protected]?subject=%20MAX%2010%20FPGA%E3%81%AE%E3%82%B3%E3%83%B3%E3%83%95%E3%82%A3%E3%82%AE%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E6%89%8B%E6%B3%95%E3%81%A8%E6%A9%9F%E8%83%BD%20(UG-M10CONFIG%202014.09.22)%20%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%83%BB%E3%82%AA%E3%83%B3&body=%E5%BC%8A%E7%A4%BE%E3%81%AF%E5%BE%A1%E7%A4%BE%E3%81%AE%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%81%AB%E6%84%9F%E8%AC%9D%E3%81%84%E3%81%9F%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%E3%82%B3%E3%83%A1%E3%83%B3%E3%83%88%E3%81%AE%E4%B8%AD%E3%81%A7%E3%80%81%E3%83%9A%E3%83%BC%E3%82%B8%E7%95%AA%E5%8F%B7%E3%81%BE%E3%81%9F%E3%81%AF%E6%AE%B5%E8%90%BD%E3%82%92%E6%8C%87%E5%AE%9A%E3%81%97%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%E3%80%82%E3%81%82%E3%82%8A%E3%81%8C%E3%81%A8%E3%81%86%E3%81%94%E3%81%96%E3%81%84%E3%81%BE%E3%81%99%E3%80%82

  • 関連情報MAX 10 Device Datasheetリモート・システム・アップグレードのタイミング仕様について詳しい情報を提供します。

    リモート・システム・アップグレード回路の入力コントロール

    リモート・システム・アップグレード回路には 3つの動作モードがあります。• アップデート—入力レジスタにシフト・レジスタの値をロードする• キャプチャ—シフト・レジスタに、シフト・アウトされるデータをロードする• シフト—ユーザー・ロジックにデータをシフト・アウトする

    表 2-6: リモート・システム・アップグレード回路へのコントロール入力

    リモート・システム・アップグレード回路のコントロール入力動作モード

    レジスタの入力設定

    RU_SHIFTnLD RU_CAPTnUPDT シフト・レジスタ[40]

    シフト・レジスタ[39]

    シフト・レジスタ[38:0]

    入力レジスタ[38:0]

    0 0 ドント・ケア ドント・ケア アップデートシフト・レジスタ[38:0]

    シフト・レジスタ[38:0]

    0 1 0 0 キャプチャ 現在のステート入力レジスタ

    [38:0]

    0 1 0 1 キャプチャ{8'b0、前回のステート・アプリケーション 1}

    入力レジスタ[38:0]

    0 1 1 0 キャプチャ{8'b0、前回のステート・アプリケーション 2}

    入力レジスタ[38:0]

    0 1 1 1 キャプチャ 入力レジスタ[38:0]入力レジスタ

    [38:0]

    1 ドント・ケア ドント・ケア ドント・ケア シフト{ru_din、シフト・レジスタ

    [38:1]}

    入力レジスタ[38:0]

    以下に、リモート・システム・アップグレード回路のコントロール入力の駆動例を示します。• 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の立ち上がりエッジで値をキャプチャする

    UG-M10CONFIG2014.09.22 リモート・システム・アップグレード回路の入力コントロール 2-11

    MAX 10 FPGAのコンフィギュレーション手法と機能 Altera Corporation

    フィードバック

    http://www.altera.com/literature/hb/max-10/m10_datasheet.pdfmailto:[email protected]?subject=%20MAX%2010%20FPGA%E3%81%AE%E3%82%B3%E3%83%B3%E3%83%95%E3%82%A3%E3%82%AE%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E6%89%8B%E6%B3%95%E3%81%A8%E6%A9%9F%E8%83%BD%20(UG-M10CONFIG%202014.09.22)%20%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%83%BB%E3%82%AA%E3%83%B3&body=%E5%BC%8A%E7%A4%BE%E3%81%AF%E5%BE%A1%E7%A4%BE%E3%81%AE%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%81%AB%E6%84%9F%E8%AC%9D%E3%81%84%E3%81%9F%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%E3%82%B3%E3%83%A1%E3%83%B3%E3%83%88%E3%81%AE%E4%B8%AD%E3%81%A7%E3%80%81%E3%83%9A%E3%83%BC%E3%82%B8%E7%95%AA%E5%8F%B7%E3%81%BE%E3%81%9F%E3%81%AF%E6%AE%B5%E8%90%BD%E3%82%92%E6%8C%87%E5%AE%9A%E3%81%97%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%E3%80%82%E3%81%82%E3%82%8A%E3%81%8C%E3%81%A8%E3%81%86%E3%81%94%E3%81%96%E3%81%84%E3%81%BE%E3%81%99%E3%80%82

  • リモート・システム・アップグレードの入力レジスタ

    表 2-7: MAX 10デバイスのリモート・システム・アップグレードの入力レジスタ

    ビット 名前 概要

    38:14 予約 予約、0にセット

    13 ru_boot_sel

    • 0はイメージ 0からブート• 1はイメージ 1からブートこのビットは ru_boot_sel_overwriteビットがセットされている場合にのみ機能する

    12 ru_boot_sel_overwrite• 0は boot_selピンの上書きをディセーブルする• 1は boot_selピンの上書きをイネーブルする

    11:0 予約 予約、0にセット

    リモート・システム・アップグレード・ステータス・レジスタ

    表 2-8: リモート・システム・アップグレード・ステータス・レジスタ— MAX 10デバイスの現在のステート・ロジック・ビット

    ビット 名前 概要

    33:30 msm_cs マスタ・ステート・マシン(MSM)の現在の状態

    29 ru_wd_en イネーブルされたアクティブ Highのユーザー・ウォッチ・ドッグ・タイマの現在の状態28:0 wd_timeout_value 全 29ビットのウォッチドッグ・タイム・アウトの現在の値

    表 2-9: リモート・システム・アップグレード・ステータス・レジスタ— MAX 10デバイスの前回のステート・ビット

    ビット 名前 概要

    31 nCONFIG MAX 10デバイスに以前のアプリケーション・コンフィギュレーションを終了させたリコンフィギュレーション・ソースを示す、アクティブ Highのフィールド。同時に生じた場合には、より大きな数のビットが優先される。たとえば、nconfigと ru_nconfigが同時にトリガされると、nconfigは ru_nconfigよりも優先される

    30 crcerror

    29 nstatus

    28 wdtimer

    27:26 予約 予約、0にセット

    25:22 msm_csデバイスに以前のアプリケーション・コンフィギュレーションを終了させるリコンフィギュレーション・イベントが発生した際のMSMの状態

    21:0 予約 予約、0にセット

    2-12 リモート・システム・アップグレードの入力レジスタUG-M10CONFIG

    2014.09.22

    Altera Corporation MAX 10 FPGAのコンフィギュレーション手法と機能

    フィードバック

    mailto:[email protected]?subject=%20MAX%2010%20FPGA%E3%81%AE%E3%82%B3%E3%83%B3%E3%83%95%E3%82%A3%E3%82%AE%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E6%89%8B%E6%B3%95%E3%81%A8%E6%A9%9F%E8%83%BD%20(UG-M10CONFIG%202014.09.22)%20%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%83%BB%E3%82%AA%E3%83%B3&body=%E5%BC%8A%E7%A4%BE%E3%81%AF%E5%BE%A1%E7%A4%BE%E3%81%AE%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%81%AB%E6%84%9F%E8%AC%9D%E3%81%84%E3%81%9F%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%E3%82%B3%E3%83%A1%E3%83%B3%E3%83%88%E3%81%AE%E4%B8%AD%E3%81%A7%E3%80%81%E3%83%9A%E3%83%BC%E3%82%B8%E7%95%AA%E5%8F%B7%E3%81%BE%E3%81%9F%E3%81%AF%E6%AE%B5%E8%90%BD%E3%82%92%E6%8C%87%E5%AE%9A%E3%81%97%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%E3%80%82%E3%81%82%E3%82%8A%E3%81%8C%E3%81%A8%E3%81%86%E3%81%94%E3%81%96%E3%81%84%E3%81%BE%E3%81%99%E3%80%82

  • マスタ・ステート・マシン

    マスタ・ステート・マシン(MSM)は現在のコンフィギュレーション・モードをトラッキングし、また、ユーザー・ウォッチドッグ・タイマを有効にします。

    表 2-10: MAX 10デバイスでのリモート・システム・アップグレードのマスタ・ステート・マシンの現在の状態の説明

    msm_cs値 状態の説明

    0010 イメージ 0がロードされている0011 アプリケーション・イメージへの差し戻しが生じた後でイメージ

    1がロードされている0100 イメージ 1がロードされている0101 アプリケーション・イメージへの差し戻しが生じた後でイメージ

    0がロードされている

    ユーザー・ウォッチドッグ・タイマユーザー・ウォッチドッグ・タイマは、停止状態に陥ったデバイスによるアプリケーション・コンフィギュレーションの失敗を防ぎます。デバイスへのアプリケーション・コンフィギュレーションのロードが成功すると、動作エラーを検出するためにタイマを使用できます。カウンタは 29ビット幅で、2 29の最大カウント値を有します。ユーザー・ウォッチドッグ・タイマの値を指定する際には、最上位 12ビットのみを指定します。タイマ設定の精度は 217サイクルです。サイクル時間は、ユーザー・ウォッチドッグ・タイマの内部オシレータの周波数に基づきます。カウンタおよびデバイスの内部オシレータに基づいて、サイクル時間を 17ms~243sにセットできます。タイマは、アプリケーション・コンフィギュレーションがユーザー・モードに入るとすぐにカウントを開始します。リモート・システム・アップグレード回路は、タイマが設定時間に達するとタイムアウト信号を生成し、ステータス・レジスタを更新し、回復コンフィギュレーション・イメージのロードをトリガします。タイマをリセットするには、RU_NRSTIMERを 250ns以上パルスします。ウォッチドッグ・タイマを有効にすると、この設定はすべてのイメージに適用され、すべてのイメージがタイマをリセットするためのソフト・ロジック・コンフィギュレーションを含むことが必要になります。アプリケーション・コンフィギュレーションは、コントロール・ブロックのレジスタをリセットします。

    アルテラ・デュアル・ブート IPコアアルテラ・デュアル・ブート IPコアは、Avalon-MMインタフェースを介して以下の機能を提供します。• RU_nCONFIGをアサートしてリコンフィギュレーションをトリガする• ウォッチ・ドッグ・タイマが有効になっている場合に、RU_nRSTIMERをアサートしてウォッチドッグ・タイマをリセットする

    • リモート・システム・アップグレード回路の入力レジスタにコンフィギュレーション設定を書き込む

    • リモート・システム・アップグレード回路から情報を読み出す

    UG-M10CONFIG2014.09.22 マスタ・ステート・マシン 2-13

    MAX 10 FPGAのコンフィギュレーション手法と機能 Altera Corporation

    フィードバック

    mailto:[email protected]?subject=%20MAX%2010%20FPGA%E3%81%AE%E3%82%B3%E3%83%B3%E3%83%95%E3%82%A3%E3%82%AE%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E6%89%8B%E6%B3%95%E3%81%A8%E6%A9%9F%E8%83%BD%20(UG-M10CONFIG%202014.09.22)%20%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%83%BB%E3%82%AA%E3%83%B3&body=%E5%BC%8A%E7%A4%BE%E3%81%AF%E5%BE%A1%E7%A4%BE%E3%81%AE%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%81%AB%E6%84%9F%E8%AC%9D%E3%81%84%E3%81%9F%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%E3%82%B3%E3%83%A1%E3%83%B3%E3%83%88%E3%81%AE%E4%B8%AD%E3%81%A7%E3%80%81%E3%83%9A%E3%83%BC%E3%82%B8%E7%95%AA%E5%8F%B7%E3%81%BE%E3%81%9F%E3%81%AF%E6%AE%B5%E8%90%BD%E3%82%92%E6%8C%87%E5%AE%9A%E3%81%97%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%E3%80%82%E3%81%82%E3%82%8A%E3%81%8C%E3%81%A8%E3%81%86%E3%81%94%E3%81%96%E3%81%84%E3%81%BE%E3%81%99%E3%80%82

  • 図 2-5: アルテラ・デュアル・ブート IPコアのブロック図

    AlteraDual Boot

    clk

    nreset

    avmm_rcv_address[2..0]

    avmm_rcv_read

    avmm_rcv_writedata[12..0]

    avmm_rcv_write

    avmm_rcv_readdata[12..0]

    関連情報• 3-7ページの ユーザー・インタフェースを介したリモート・アップデート・ブロックへのアクセス

    • 4-2ページの アルテラ・デュアル・ブート IPコアのインスタンス化• 5-1ページの アルテラ・デュアル・ブート IPコアの Avalon-MMアドレス・マップ• Avalon Interface Specificationsアルテラ・デュアル・ブート IPコアに用いる Avalon-MMインタフェースの仕様について詳しい情報を提供します。

    コンフィギュレーション・デザイン・セキュリティMAX 10のデザイン・セキュリティ機能は、以下の機能をサポートしています。• 暗号化ー高度暗号化規格(AES)を内蔵して 128ビット・キーの業界標準のデザイン・セキュリティ・アルゴリズムをサポート

    • チップ IDーデバイス固有の識別子• JTAGセキュア・モード—JTAG命令へのアクセスを制限する• 検証プロテクト—オプショナルで CFMの内容のリードバックを無効にできる

    AES暗号化保護MAX 10のデザイン・セキュリティ機能は、デザインに以下のセキュリティ保護を提供します。• 複製に対するセキュリティ—不揮発性キーは MAX 10デバイス内に安全に保存され、いかなるインタフェースを介しても読み出しされません。このキーなしで攻撃者が暗号化されたコンフィギュレーション・イメージを復号することはできません。

    • リバース・エンジニアリングに対するセキュリティ—暗号化されたコンフィギュレーション・ファイルからのリバース・エンジニアリングは、ファイルを復号しなければならないために非常に困難かつ時間がかかります。

    • 改ざんに対するセキュリティ—改ざん防止ビットをセットした後は、 MAX 10デバイスは同じキーで暗号化されたコンフィギュレーション・ファイルしか受け入れることができません。さらに、JTAGインタフェースを介するコンフィギュレーションはブロックされます。

    2-14 コンフィギュレーション・デザイン・セキュリティUG-M10CONFIG

    2014.09.22

    Altera Corporation MAX 10 FPGAのコンフィギュレーション手法と機能

    フィードバック

    http://www.altera.com/literature/manual/mnl_avalon_spec.pdf?GSA_pos=6&WT.oss_r=1&WT.oss=avalon-mmmailto:[email protected]?subject=%20MAX%2010%20FPGA%E3%81%AE%E3%82%B3%E3%83%B3%E3%83%95%E3%82%A3%E3%82%AE%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E6%89%8B%E6%B3%95%E3%81%A8%E6%A9%9F%E8%83%BD%20(UG-M10CONFIG%202014.09.22)%20%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%83%BB%E3%82%AA%E3%83%B3&body=%E5%BC%8A%E7%A4%BE%E3%81%AF%E5%BE%A1%E7%A4%BE%E3%81%AE%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%81%AB%E6%84%9F%E8%AC%9D%E3%81%84%E3%81%9F%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%E3%82%B3%E3%83%A1%E3%83%B3%E3%83%88%E3%81%AE%E4%B8%AD%E3%81%A7%E3%80%81%E3%83%9A%E3%83%BC%E3%82%B8%E7%95%AA%E5%8F%B7%E3%81%BE%E3%81%9F%E3%81%AF%E6%AE%B5%E8%90%BD%E3%82%92%E6%8C%87%E5%AE%9A%E3%81%97%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%E3%80%82%E3%81%82%E3%82%8A%E3%81%8C%E3%81%A8%E3%81%86%E3%81%94%E3%81%96%E3%81%84%E3%81%BE%E3%81%99%E3%80%82

  • 暗号化と復号.pofの Encryption Option Bitを設定することで、暗号化機能を有効にすることができます。デフォルトでは暗号化はオフになっています。セキュリティ・キーは JTAGを介して入力され、内部フラッシュに保存されます。圧縮とともに暗号化をする場合には、 Quartus IIソフトウェアを使用して、まずコンフィギュレーション・ファイルが圧縮され、次に暗号化されます。コンフィギュレーション時には、デバイスはまずコンフィギュレーション・ファイルを復号し、次に解凍します。ヘッダならびに I/Oコンフィギュレーション・シフト・レジスタ(IOCSR)データは暗号化されません。IOCSRチェインがプログラミングされた後に復号ブロックがアクティブになります。復号ブロックは、コア・データとポストアンブルのみを復号します。関連情報2-17ページの 使用できる JTAG命令

    ユニーク・チップ IDユニーク・チップ IDは、以下の機能を提供します。• 権限のないデバイスからデザインを保護するためのセキュリティ機能として、デザインでデバイスの識別を可能に

    • 各 MAX 10デバイスに固有の、書込み保護を備えた不揮発性 64ビットの IDアルテラ・ユニーク・チップ ID IPコアを使用して、 MAX 10デバイスのチップ IDを取得できます。関連情報• 4-1ページの アルテラ・ユニーク・チップ ID IPコア• 6-1ページの アルテラ・ユニーク・チップ ID IPコアのポート

    アルテラ・ユニーク・チップ ID IPコア図 2-6: アルテラ・ユニーク・チップ ID IPコアのブロック図

    Altera UniqueChip ID

    clkin data_valid

    chip_id[63..0]reset

    最初の状態では、ユニーク・チップ IDブロックから読み出されるデータがないので data_valid信号は Lowです。clkin入力ポートにクロック信号を供給すると、アルテラ・ユニーク・チップID IPコアがユニーク・チップ IDブロックを介してデバイスのチップ IDの取得を開始します。デバイスのチップ IDを取得すると、アルテラ・ユニーク・チップ ID IPコアは data_valid信号をアサートして、出力ポートのチップ ID値の読み出しが準備が整ったことを示します。

    UG-M10CONFIG2014.09.22 暗号化と復号 2-15

    MAX 10 FPGAのコンフィギュレーション手法と機能 Altera Corporation

    フィードバック

    mailto:[email protected]?subject=%20MAX%2010%20FPGA%E3%81%AE%E3%82%B3%E3%83%B3%E3%83%95%E3%82%A3%E3%82%AE%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E6%89%8B%E6%B3%95%E3%81%A8%E6%A9%9F%E8%83%BD%20(UG-M10CONFIG%202014.09.22)%20%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%83%BB%E3%82%AA%E3%83%B3&body=%E5%BC%8A%E7%A4%BE%E3%81%AF%E5%BE%A1%E7%A4%BE%E3%81%AE%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%81%AB%E6%84%9F%E8%AC%9D%E3%81%84%E3%81%9F%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%E3%82%B3%E3%83%A1%E3%83%B3%E3%83%88%E3%81%AE%E4%B8%AD%E3%81%A7%E3%80%81%E3%83%9A%E3%83%BC%E3%82%B8%E7%95%AA%E5%8F%B7%E3%81%BE%E3%81%9F%E3%81%AF%E6%AE%B5%E8%90%BD%E3%82%92%E6%8C%87%E5%AE%9A%E3%81%97%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%E3%80%82%E3%81%82%E3%82%8A%E3%81%8C%E3%81%A8%E3%81%86%E3%81%94%E3%81%96%E3%81%84%E3%81%BE%E3%81%99%E3%80%82

  • この動作は、data_valid信号が Lowの間に別のクロック信号を供給した場合にのみ繰り返されます。別のクロック信号を供給した際に data_valid信号が Hoghであれば、chip_id[63..0]出力がデバイスのチップ IDを保持しているために、動作が停止します。data_valid信号が Highになるためには少なくとも 67クロック・サイクルが必要です。デバイスをリコンフィギュレーションする、または、アルテラ・ユニーク・チップ ID IPコアをリセットするまで、chip_id[63:0]出力ポートはデバイスのチップ IDの値を保持します。

    JTAGセキュア・モードJTAGセキュア・モードでは、必須の JTAG 1149.1命令のみ をデバイスで使用できます。JTAGセキュアは、Convert Programming Filesで.pofを生成する際に有効にできます。JTAGセキュア・モードを終了するには、UNLOCK JTAG命令を発行します。LOCK JTAG命令がデバイスを再びJTAGセキュア・モードにします。LOCKと UNLOCKの JTAG命令は、JTAGコア・アクセスによってのみ発行できます。関連情報• 2-17ページの 使用できる JTAG命令• 2-17ページの コンフィギュレーション・フラッシュ・メモリへのアクセス許可• 3-5ページの ICB設定を含む.pofを生成する

    JTAGセキュア・モードの命令

    表 2-11: MAX 10デバイスの JTAGセキュア・モードの命令

    JTAG命令 命令コード 概要

    LOCK 10 0000 0010 • JTAGセキュア・モードを有効にする• 外部ピンとコアとの両方からの、JTAGへのアクセスをブロックする

    UNLOCK 10 0000 1000 JTAGセキュア・モードを無効にする

    検証プロテクト検証プロテクトは、CFMセキュリティを強化するためのセキュリティ機能です。検証プロテクトが有効にされると、CFMではプログラミングと消去の動作のみが可能になります。この機能は、CFMの内容がコピーされることを防ぎます。検証プロテクト機能は、 Quartus II Programmerで検証プロテクトを有効にすることによりオンにできます。関連情報2-17ページの コンフィギュレーション・フラッシュ・メモリへのアクセス許可

    2-16 JTAGセキュア・モードUG-M10CONFIG

    2014.09.22

    Altera Corporation MAX 10 FPGAのコンフィギュレーション手法と機能

    フィードバック

    mailto:[email protected]?subject=%20MAX%2010%20FPGA%E3%81%AE%E3%82%B3%E3%83%B3%E3%83%95%E3%82%A3%E3%82%AE%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E6%89%8B%E6%B3%95%E3%81%A8%E6%A9%9F%E8%83%BD%20(UG-M10CONFIG%202014.09.22)%20%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%83%BB%E3%82%AA%E3%83%B3&body=%E5%BC%8A%E7%A4%BE%E3%81%AF%E5%BE%A1%E7%A4%BE%E3%81%AE%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%81%AB%E6%84%9F%E8%AC%9D%E3%81%84%E3%81%9F%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%E3%82%B3%E3%83%A1%E3%83%B3%E3%83%88%E3%81%AE%E4%B8%AD%E3%81%A7%E3%80%81%E3%83%9A%E3%83%BC%E3%82%B8%E7%95%AA%E5%8F%B7%E3%81%BE%E3%81%9F%E3%81%AF%E6%AE%B5%E8%90%BD%E3%82%92%E6%8C%87%E5%AE%9A%E3%81%97%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%E3%80%82%E3%81%82%E3%82%8A%E3%81%8C%E3%81%A8%E3%81%86%E3%81%94%E3%81%96%E3%81%84%E3%81%BE%E3%81%99%E3%80%82

  • 使用できる JTAG命令

    表 2-12: JTAGセキュア・モードと暗号化の設定に応じて使用できる JTAG命令

    JTAGセキュア・モード 暗号化 概要

    無効無効 すべての JTAG命令が有効

    有効下記以外のすべての JTAG命令が有効• CONFIGURE

    有効

    無効 下記以外のすべての JTAG命令が有効• SAMPLE/PRELOAD• BYPASS• EXTEST• IDCODE• UNLOCK• LOCK

    有効

    関連情報• 2-16ページの JTAGセキュア・モード• 2-15ページの 暗号化と復号

    コンフィギュレーション・フラッシュ・メモリへのアクセス許可CFM操作の許可は、JTAGセキュア・モードと検証プロテクト機能によって決まります。以下に、セキュリティ設定に基づいて許可される操作をリストします。

    表 2-13: MAX 10デバイスの CFM許可

    操作JTAGセキュア・モードが有効 JTAGセキュア・モードが無効

    検証プロテクトが無効

    検証プロテクトが有効

    検証プロテクトが無効

    検証プロテクトが有効

    コアを介したISP 不正な操作 不正な操作 不正な操作 不正な操作

    JTAGピンを介した ISP 完全なアクセス

    プログラミングと消去のみ アクセスなし アクセスなし

    コアを介したリアル・タイム ISP

    完全なアクセス プログラミングと消去のみ アクセスなし アクセスなし

    JTAGピンを介したリアル・タイム ISP

    完全なアクセス プログラミングと消去のみ アクセスなし アクセスなし

    UG-M10CONFIG2014.09.22 使用できる JTAG命令 2-17

    MAX 10 FPGAのコンフィギュレーション手法と機能 Altera Corporation

    フィードバック

    mailto:[email protected]?subject=%20MAX%2010%20FPGA%E3%81%AE%E3%82%B3%E3%83%B3%E3%83%95%E3%82%A3%E3%82%AE%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E6%89%8B%E6%B3%95%E3%81%A8%E6%A9%9F%E8%83%BD%20(UG-M10CONFIG%202014.09.22)%20%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%83%BB%E3%82%AA%E3%83%B3&body=%E5%BC%8A%E7%A4%BE%E3%81%AF%E5%BE%A1%E7%A4%BE%E3%81%AE%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%81%AB%E6%84%9F%E8%AC%9D%E3%81%84%E3%81%9F%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%E3%82%B3%E3%83%A1%E3%83%B3%E3%83%88%E3%81%AE%E4%B8%AD%E3%81%A7%E3%80%81%E3%83%9A%E3%83%BC%E3%82%B8%E7%95%AA%E5%8F%B7%E3%81%BE%E3%81%9F%E3%81%AF%E6%AE%B5%E8%90%BD%E3%82%92%E6%8C%87%E5%AE%9A%E3%81%97%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%E3%80%82%E3%81%82%E3%82%8A%E3%81%8C%E3%81%A8%E3%81%86%E3%81%94%E3%81%96%E3%81%84%E3%81%BE%E3%81%99%E3%80%82

  • 操作JTAGセキュア・モードが有効 JTAGセキュア・モードが無効

    検証プロテクトが無効

    検証プロテクトが有効

    検証プロテクトが無効

    検証プロテクトが有効

    コアを介したUFMインタフェース (4)

    完全なアクセス 完全なアクセス 完全なアクセス 完全なアクセス

    関連情報• 2-16ページの JTAGセキュア・モード• 2-16ページの 検証プロテクト

    SEUの緩和とコンフィギュレーション・エラーの検出MAX 10デバイス内蔵の専用回路がエラー検出巡回冗長検査(EDCRC)機能を構成します。この機能を、SEU(Single Event Upset)やソフト・エラーの緩和のために使用します。ハード化されたオンチップ EDCRC回路により、デバイスのフィッティングに影響を与えることなく以下の動作を行うことができます。• コンフィギュレーション中に巡回冗長検査(CRC)エラーを自動検出する• ユーザー・モードでオプションの CRCエラー検出により SEUを特定する• JTAGインタフェースを介したエラー検出検証によりエラー検出をテストする関連情報• 3-7ページの エラー検出機能の検証• 3-8ページの エラー検出の有効化• 3-8ページの ユーザー・インタフェースを介したエラー検出ブロックへのアクセス

    コンフィギュレーション・エラー検出コンフィギュレーション・モードでは、コンフィギュレーション・データにフレーム・ベースのCRCが格納されており、各データ・フレームの CRC値を含んでいます。MAX 10デバイスは、コンフィギュレーション中に受信したデータのフレームに基づいて CRC値を計算し、それをデータ・ストリームのフレームの CRC値と比較します。コンフィギュレーションは、デバイスがエラーを検出するか、すべての値が計算されるまで継続します。MAX 10デバイスでは、CRCは Quartus IIソフトウェアで計算され、コンフィギュレーション・ビット・ストリームの一部としてデバイスにダウンロードされます。デバイスは、コンフィギュレーション・モードの終了時に CRCを 32ビットのストレージ・レジスタに格納します。

    ユーザー・モード・エラー検出SEUは、イオン化した粒子に起因する CRAMビット状態の変化です。 MAX 10デバイスは内蔵のエラー検出回路を有しており、CRAMセル内のデータ破損を検出します。このエラー検出機能は、デバイスの内容に基づいて、コンフィギュレーション後の CRAMビットの CRCを持続的に計算し、それをコンフィギュレーション終了時に取得した計算済み CRC値

    (4) デュアル圧縮イメージのモードを選択した場合に、コアを介した UFMのインタフェースが有効になります。

    2-18 SEUの緩和とコンフィギュレーション・エラーの検出UG-M10CONFIG

    2014.09.22

    Altera Corporation MAX 10 FPGAのコンフィギュレーション手法と機能

    フィードバック

    mailto:[email protected]?subject=%20MAX%2010%20FPGA%E3%81%AE%E3%82%B3%E3%83%B3%E3%83%95%E3%82%A3%E3%82%AE%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E6%89%8B%E6%B3%95%E3%81%A8%E6%A9%9F%E8%83%BD%20(UG-M10CONFIG%202014.09.22)%20%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%83%BB%E3%82%AA%E3%83%B3&body=%E5%BC%8A%E7%A4%BE%E3%81%AF%E5%BE%A1%E7%A4%BE%E3%81%AE%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%81%AB%E6%84%9F%E8%AC%9D%E3%81%84%E3%81%9F%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%E3%82%B3%E3%83%A1%E3%83%B3%E3%83%88%E3%81%AE%E4%B8%AD%E3%81%A7%E3%80%81%E3%83%9A%E3%83%BC%E3%82%B8%E7%95%AA%E5%8F%B7%E3%81%BE%E3%81%9F%E3%81%AF%E6%AE%B5%E8%90%BD%E3%82%92%E6%8C%87%E5%AE%9A%E3%81%97%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%E3%80%82%E3%81%82%E3%82%8A%E3%81%8C%E3%81%A8%E3%81%86%E3%81%94%E3%81%96%E3%81%84%E3%81%BE%E3%81%99%E3%80%82

  • と比較します。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をリコンフィギュレーションするか、または、エラーを無視するかを決定する必要があります。

    エラー検出ブロック図 2-7: エラー検出ブロック図

    関係する 2つの 32ビット・レジスタであるシグネチャ・レジスタとストレージ・レジスタを含む、エラー検出ブロックのブロック図を示します。

    Control SignalsError DetectionState Machine

    32-bit StorageRegister

    Compute & CompareCRC

    32-bit SignatureRegister

    32 32

    32

    CRC_ERROR

    エラー検出回路には、計算された CRCシグネチャとあらかじめ計算された CRC値を格納する 2つの 32ビット・レジスタのセットがあります。シグネチャ・レジスタがゼロ以外の値になると、CRC_ERRORピンが Highになります。

    表 2-14: MAX 10デバイスのエラー検出レジスタ

    レジスタ 概要

    32ビット・シグネチャ・レジスタ

    このレジスタは CRCシグネチャを格納します。シグネチャ・レジスタが格納するのは、あらかじめ計算された CRC値とユーザー・モードで計算された CRC値とを比較した結果です。エラーが検出されなければ、シグネチャ・レジスタはすべてゼロになります。シグネチャ・レジスタがゼロ以外であれば、コンフィギュレーション CRAMの内容のエラーを示しています。CRC_ERROR信号はこのレジスタの内容に基づきます。

    UG-M10CONFIG2014.09.22 エラー検出ブロック 2-19

    MAX 10 FPGAのコンフィギュレーション手法と機能 Altera Corporation

    フィードバック

    mailto:[email protected]?subject=%20MAX%2010%20FPGA%E3%81%AE%E3%82%B3%E3%83%B3%E3%83%95%E3%82%A3%E3%82%AE%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E6%89%8B%E6%B3%95%E3%81%A8%E6%A9%9F%E8%83%BD%20(UG-M10CONFIG%202014.09.22)%20%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%83%BB%E3%82%AA%E3%83%B3&body=%E5%BC%8A%E7%A4%BE%E3%81%AF%E5%BE%A1%E7%A4%BE%E3%81%AE%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%81%AB%E6%84%9F%E8%AC%9D%E3%81%84%E3%81%9F%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%E3%82%B3%E3%83%A1%E3%83%B3%E3%83%88%E3%81%AE%E4%B8%AD%E3%81%A7%E3%80%81%E3%83%9A%E3%83%BC%E3%82%B8%E7%95%AA%E5%8F%B7%E3%81%BE%E3%81%9F%E3%81%AF%E6%AE%B5%E8%90%BD%E3%82%92%E6%8C%87%E5%AE%9A%E3%81%97%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%E3%80%82%E3%81%82%E3%82%8A%E3%81%8C%E3%81%A8%E3%81%86%E3%81%94%E3%81%96%E3%81%84%E3%81%BE%E3%81%99%E3%80%82

  • レジスタ 概要

    32ビット・ストレージ・レジスタ

    このレジスタには、事前に計算された 32ビットの CRCシグネチャがコンフィギュレーション・ステージの終了時にロードされます。このシグネチャは、ユーザー・モード時に CRCエラーを計算するために 32ビットの Compute andCompare CRCブロックにロードされます。このレジスタは、CHANGE_EDREGJTAG命令の実行時に 32ビットのスキャン・チェインを形成します。CHANGE_EDREG JTAG命令で、ストレージ・レジスタの内容を変更することができます。したがって、命令の実行によりエラーを注入することで、動作中にエラー検出CRC回路の機能をイン・システムでチェックすることができます。CHANGE_EDREG JTAG命令を発行しても、デバイスの動作は停止されません。

    CHANGE_EDREG JTAG命令

    表 2-15: CHANGE_EDREG JTAG命令の概要

    JTAG命令 命令コード 概要

    CHANGE_EDREG 00 0001 0101 この命令は、32ビットの CRCストレージ・レジスタを TDIから TDOまで連結します。任意の計算済みCRCを CRCストレージ・レジスタにロードして、エラー検出 CRC回路の動作を CRC_ERRORピンでテストします。

    エラー検出のタイミングQuartus IIソフトウェアを介してエラー検出 CRC機能が有効にされていれば、コンフィギュレーションと初期化が完了してユーザー・モードに入った時点でデバイスが自動的に CRCプロセスをアクティブにします。CRC_ERRORピンは、エラー検出回路が破損したビットを CRC計算で検出するまで Lowに駆動されています。ピンが Highになると、次の CRC計算の間はピンは Highを維持します。このピンは前の CRC計算を記録しません。新しい CRC計算に破損されたビットが含まれていなければ、CRC_ERRORピンは Lowに駆動されます。エラー検出はデバイスがリセットされるまで動作します。エラー検出回路は、周波数を最大にセットする除数を含む内部コンフィギュレーション・オシレータによって駆動されます。CRC計算時間はデバイスとエラー検出クロック周波数に応じて異なります。

    エラー検出周波数Quartus IIソフトウェアで分周係数を指定することで、より低いクロック周波数をセットできます。

    2-20 CHANGE_EDREG JTAG命令UG-M10CONFIG

    2014.09.22

    Altera Corporation MAX 10 FPGAのコンフィギュレーション手法と機能

    フィードバック

    mailto:[email protected]?subject=%20MAX%2010%20FPGA%E3%81%AE%E3%82%B3%E3%83%B3%E3%83%95%E3%82%A3%E3%82%AE%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E6%89%8B%E6%B3%95%E3%81%A8%E6%A9%9F%E8%83%BD%20(UG-M10CONFIG%202014.09.22)%20%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%83%BB%E3%82%AA%E3%83%B3&body=%E5%BC%8A%E7%A4%BE%E3%81%AF%E5%BE%A1%E7%A4%BE%E3%81%AE%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%81%AB%E6%84%9F%E8%AC%9D%E3%81%84%E3%81%9F%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%E3%82%B3%E3%83%A1%E3%83%B3%E3%83%88%E3%81%AE%E4%B8%AD%E3%81%A7%E3%80%81%E3%83%9A%E3%83%BC%E3%82%B8%E7%95%AA%E5%8F%B7%E3%81%BE%E3%81%9F%E3%81%AF%E6%AE%B5%E8%90%BD%E3%82%92%E6%8C%87%E5%AE%9A%E3%81%97%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%E3%80%82%E3%81%82%E3%82%8A%E3%81%8C%E3%81%A8%E3%81%86%E3%81%94%E3%81%96%E3%81%84%E3%81%BE%E3%81%99%E3%80%82

  • 表 2-16: MAX 10デバイスの最小および最大エラー検出周波数(暫定版)

    デバイス エラー検出周波数 最大エラー検出周波数(MHz)

    最小エラー検出周波数(MHz)

    nとして有効な値

    10M02

    55 MHz/2n~116 MHz/2n 58 214.82、3、4、5、6、7、8

    10M04

    10M08

    10M16

    10M25

    10M4035 MHz/2n~77 MHz/2n 38.5 136.7

    10M50

    巡回冗長検査の計算のタイミング

    表 2-17: MAX 10デバイスでの巡回冗長検査の計算のタイミング(暫定版)

    デバイス 最小時間(ms) 最大時間(s)

    10M02 2 0.9

    10M04 6 2.1

    10M08 6 2.1

    10M16 10 3.3

    10M25 14 4.5

    10M40 43 13.7

    10M50 43 13.7

    CRCエラーからの回復MAX 10デバイスを含むシステムが、デバイス・リコンフィギュレーションを制御する必要があります。CRC_ERRORピンでエラーを検出した後で、システムが MAX 10デバイスをリコンフィギュレーションしても支障のないタイミングで nCONFIGを Lowにストローブすることによりシステムがリコンフィギュレーションを行うことができます。デバイスをリコンフィギュレーションすることによりデータ・ビットが正しい値に書き換えられると、デバイスは正しく機能します。通常はアルテラ・デバイスで SEUは発生しませんが、高信頼性アプリケーションではこれらのエラーに対応したデザインが要求される場合があります。

    コンフィギュレーション・データの圧縮MAX 10デバイスは、圧縮されたコンフィギュレーション・ビットストリームを受信し、コンフィギュレーション中にリアルタイムでデータを復元することができます。この機能により CFMに格納されるコンフィギュレーション・イメージのサイズを削減することができます。めやすと

    UG-M10CONFIG2014.09.22 巡回冗長検査の計算のタイミング 2-21

    MAX 10 FPGAのコンフィギュレーション手法と機能 Altera Corporation

    フィードバック

    mailto:[email protected]?subject=%20MAX%2010%20FPGA%E3%81%AE%E3%82%B3%E3%83%B3%E3%83%95%E3%82%A3%E3%82%AE%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E6%89%8B%E6%B3%95%E3%81%A8%E6%A9%9F%E8%83%BD%20(UG-M10CONFIG%202014.09.22)%20%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%83%BB%E3%82%AA%E3%83%B3&body=%E5%BC%8A%E7%A4%BE%E3%81%AF%E5%BE%A1%E7%A4%BE%E3%81%AE%E3%83%95%E3%82%A3%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%82%AF%E3%81%AB%E6%84%9F%E8%AC%9D%E3%81%84%E3%81%9F%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%E3%82%B3%E3%83%A1%E3%83%B3%E3%83%88%E3%81%AE%E4%B8%AD%E3%81%A7%E3%80%81%E3%83%9A%E3%83%BC%E3%82%B8%E7%95%AA%E5%8F%B7%E3%81%BE%E3%81%9F%E3%81%AF%E6%AE%B5%E8%90%BD%E3%82%92%E6%8C%87%E5%AE%9A%E3%81%97%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%E3%80%82%E3%81%82%E3%82%8A%E3%81%8C%E3%81%A8%E3%81%86%E3%81%94%E3%81%96%E3%81%84%E3%81%BE%E3%81%99%E3%80%82

  • しての資料では、通常、圧縮によってデザインに応じてコンフィギュレーション・ファイル・サイズは少なくとも 30%削減されることが示されています。関連情報• 3-10ページの デザインのコンパイルの前に圧縮を有効にする• 3-10ページの デザインのコンパイル後に圧縮を有効にする

    コンフィギュレーションの詳細この項では、 MAX 10デバイスのコンフィギュレーション・シーケンスとコンフィギュレーション・ピンについての情報を提供します。

    2-22 コンフィギュレーションの詳細UG-M10CONFIG