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

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

1.8.2. フラッシュレジスターを読み取るためのフラッシュ操作

フラッシュレジスターの読み取りには、次のフラッシュ操作が使用されます。

  • リードデバイスID
  • リード・ステータスレジスター
  • リード・ステータスレジスター
  • リモート・コンフィギュレーション・レジスター
  • リード・ステータス・レジスター
  • 拡張揮発性コンフィグレーションレジスターの読み取り

次のレジスターは、レジスターのステータスを読み取るために使用されます。

  • フラッシュコマンド設定レジスター
  • フラッシュコマンド制御lレジスター
  • フラッシュコマンド読み出しデータ0レジスター

リードデバイスIDの操作を実行する

proc read_device_id {} {
global mp flash_cmd_setting flash_cmd_ctrl flash_cmd_read_data_0
master_write_32 $mp $flash_cmd_setting 0x0000489F
master_write_32 $mp $flash_cmd_ctrl 0x1
set device_id [master_read_32 $mp $flash_cmd_read_data_0 1]
puts $device_id
}

リードデバイスID動作を行うには、以下のステップを実行します。

  1. グローバル変数を定義します。
  2. フラッシュコマンド設定レジスターに書き込んで、デバイスIDの読み出し動作をカスタマイズします。
    1. セットビット [7:0] このレジスターの 9F 9FhはデバイスIDの読み取り操作の操作コードです。
    2. セットビット [10:8]0 この操作はアドレスバイトを伝送しないためです。
    3. セットビット 111 ビットで宣言されたバイト数として [15:12] フラッシュデバイスから読み取ったデータです。
    4. セットビット [15:12]4 フラッシュから4バイトのデバイスIDデータを読み取るためです。
  3. 書く 1 噛む 0 フラッシュコマンド制御レジスターのを使用して、デバイスIDの読み取り操作を開始します。
  4. flashコマンドreaddata0レジスターからデバイスIDを読み取ります。