インテル® FPGA IPの汎用シリアル・フラッシュ・インターフェイスのユーザーガイド

ID 683419
日付 4/10/2023
Public
ドキュメント目次

1.8.4. アドレスを必要とするフラッシュ操作

次のフラッシュ操作にはアドレスが必要です。

  • セクターの消去
  • 一括消去
  • 死ぬ消去
注: これらの操作を開始する前に、書き込みイネーブル操作を実行する必要があります。

次のレジスターは、アドレスを必要とする操作に使用されます。

  • フラッシュコマンド設定レジスター
  • フラッシュコマンド制御lレジスター
  • フラッシュ・コマンド・アドレス・レジスター

フラッシュセクター消去操作を実行します

proc Erase_sector {} {
グローバルmpflash_cmd_settingflash_cmd_ctrl flash_cmd_addr_register
master_write_32 $mp $flash_cmd_setting 0x000004D8
master_write_32 $ mp $ flash_cmd_addr_register 0x00001000
master_write_32 $mp $flash_cmd_ctrl 0x1
}

バースト・リード動作を実行するには、以下の手順に従います。

  1. グローバル変数を定義します。
  2. フラッシュコマンド設定レジスターに書き込んで、セクター消去動作をカスタマイズします。
    1. セットビット [7:0] このレジスターの D8 D8hはセクター消去操作のオペコードです。
    2. セットビット [10:8]4 4バイトのアドレスがフラッシュデバイスに送信されるため。
    3. セットビット 110 ビットで宣言されたバイト数として [15:12] フラッシュデバイスへの書き込みデータです。
  3. 消去したいセクター内のアドレスを指定して、フラッシュ・コマンド・アドレス・レジスターに書き込みます。
    1. この例では、アドレスのセクター消去操作を実行しています 00001000
  4. 書く 1 噛む 0 フラッシュコマンド制御レジスターのを押して、セクター消去動作を開始します。

このIPコアは、拡張、デュアル、およびクアッドI/Oプロトコルでフラッシュをサポートします。現在、このIPコアでサポートされているプロトコルは、シングル転送レート(STR)のみです。このIPコアは、3バイトと4バイトの両方のアドレッシング・モードをサポートします。次のセクションでは、メモリーとプログラムの動作を読み取るためのさまざまなプロトコルとアドレッシング・モードについて説明します。