インテルのみ表示可能 — GUID: qfh1539854476395
Ixiasoft
1.1. デバイスファミリー・サポート
1.2. 信号
1.3. パラメーター
1.4. レジスター・マップ
1.5. 汎用シリアル・フラッシュ・インターフェイス IPの使用
1.6. 汎用シリアル・フラッシュ・インターフェイス インテル® FPGA IPコアおよびリファレンス・デザイン
1.7. 汎用シリアル・フラッシュ・インターフェイス インテル® FPGA IPコアを使用したフラッシュアクセス
1.8. 汎用シリアル・フラッシュ・インターフェイス インテル® FPGA IPコアのユーザーガイドのアーカイブ
1.9. 汎用シリアル・フラッシュ・インターフェイス インテル® FPGA IPコアのユーザーガイドの改訂履歴
インテルのみ表示可能 — GUID: qfh1539854476395
Ixiasoft
1.7.6. プログラムフラッシュ
次のレジスターは、プログラムフラッシュの実行に使用されます。
- Operating protocols setting
- Control register
- Write instruction
ページプログラムの実行(拡張モード)
proc page_program { } {
global mp operating_protocols_setting control_register write_instr
master_write_32 $mp $operating_protocols_setting 0x00000000
master_write_32 $mp $control_register 0x00000001
master_write_32 $mp $write_instr 0x00007002
master_write_32 $mp 0x00001000 0x1234abcd
}
拡張モードのページプログラムを実行するには、次の手順を実行します。
- グローバル変数を定義します。
- 動作プロトコル設定レジスターに書き込み、プログラム動作の転送モードを設定します。この例では、読み取りの転送モードは(1-1-1)です。
- 命令転送モード[1:0]を1に 、アドレス転送モード[5:4]を1に 、転送モード[9:8]でデータを1に設定します。
- 制御レジスターに書き込み、ライト動作のバイトアドレッシング・モードを選択します。
- この例では、3バイトのアドレス指定モードを使用しています。ビット8を0に設定します。
- 書き込み命令レジスターに書き込み、プログラムの動作をカスタマイズします。
- 02hはページプログラムのオペレーションコードであるため、ライト・オペレーション・コード[7:0]を02に設定します。
- 70hはリード・フラグ・ステータス・レジスターの動作コードであるため、ポーリング動作コード[15:8]を70に設定します。 ライト動作が完了すると、 インテル® FPGA IPコアは Avalon® –MMインターフェイスの待機要求を解放します。 フラッシュにフラグステータスレジスターを読み込むには、リード・ステータス・レジスター(05h)を使用できます。
- レジスターを設定した後、メモリーをアドレスにプログラムし始めることができます。
- この例では、1234abcdhがメモリーアドレス0x00001000に書き込まれます。
4バイトのクワッド入力高速プログラムを実行(クワッドSPIモード)
proc fourbyte_quad_input_fast_program { } {
global mp operating_protocols_setting control_register write_instr
master_write_32 $mp $operating_protocols_setting 0x00000222
master_write_32 $mp $control_register 0x00000101
master_write_32 $mp $write_instr 0x00007034
master_write_32 $mp 0x00002000 0xabcd1234
}
4バイトのクワッド入力高速プログラムを実行するには、次の手順を実行します。
- グローバル変数を定義します。
- 動作プロトコル設定レジスターに書き込み、プログラム動作の転送モードを設定します。この例では、4バイトのクワッド入力高速プログラムの転送モードは(4-4-4)です。
- 命令転送モード[1:0]を2に 、書き込みアドレス転送モード[5:4]を2に 、転送モード[9:8]でデータを2に設定します。
- 制御レジスターに書き込み、ライト動作のバイトアドレッシング・モードを選択します。
- この例では、4バイトのアドレス指定モードを使用しています。ビット8を1に設定します。
- 書き込み命令レジスターに書き込み、プログラムの動作をカスタマイズします。
- 34hは4バイトのクワッド入力高速プログラムのオペレーションコードであるため、ライト・オペレーション・コード[7:0]を34に設定します。
- 70hはリード・フラグ・ステータス・レジスターの動作コードであるため、ポーリング動作コード[15:8]を70に設定します。 ライト動作が完了すると、 インテル® FPGA IPコアは Avalon® -MMインターフェイスの待機要求を解放します。 フラッシュにフラグステータスレジスターを読み込むには、リード・ステータス・レジスター(05h)を使用できます。
- レジスターを設定した後、メモリーをアドレスにプログラムし始めることができます。
- この例では、1234abcdhがメモリーアドレス0x00002000に書き込まれます。