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

ID 683419
日付 11/27/2019
Public

このドキュメントの新しいバージョンが利用できます。お客様は次のことを行ってください。 こちらをクリック 最新バージョンに移行する。

ドキュメント目次

1.4. レジスター・マップ

表 3.  レジスター・マップ
  • 次の表の各アドレスオフセットは、メモリー・アドレス・スペースの1ワードを表します。
  • IP_CLKは、IPを駆動するクロックです。
  • SCLKは、フラッシュデバイスを駆動するクロックです。
オフセット(16進数)  レジスター名 R/W フィールド名 ビット デフォルト値(16進数)  変更内容
0 Control Register 予約済み RCLK[31..8] 予約
R/W Addressing mode 8 0x0

リードおよびライト動作のアドレッシング・モード:

  • 0x0:3バイトのアドレッシング
  • 0x1:4バイトのアドレッシング

4バイトのアドレッシング・モードの場合、フラッシュにコマンドを送信して4バイトアドレスをイネーブルする必要があります。

このビットはリードおよびライト動作の両方で、Avalon-MMインターフェイスを介したメモリーへの直接アクセスに影響します。
R/W Chip select 7:4 0x0 フラッシュデバイスを選択します。
  • 0x0: 最初のデバイスを選択する
  • 0x1: 2番目のデバイスを選択する
  • 0x2: 3番目のデバイスを選択する
予約済み 3:1 予約
R/W Enable 0 0x1 このビットを0に設定すると、IPの出力が無効になり、すべての出力信号が高インピーダンス状態になります。これは、他のデバイスとバスを共有するために使用できます。 
1 SPI Clock Baud-rate Register 予約済み 31:5 予約
R/W Baud rate divisor 4:0 0x10

IPには、フラッシュデバイスに接続するクロックを生成するための内部クロック分周器があります。可能な除数の値は2〜32で、増分は2です。 

したがって、フラッシュが実行される最大クロックはIPのクロックの半分です。 IPが100Mhzクロックで実行されている場合、フラッシュのクロックは50Mhzです。 

デフォルトでは、クロックは最も低いクロック(/ 32)に設定され、ほとんどの場合にIPが機能するようになっています。 

除数値: 

  • 0x1: 2
  • 0x2: 4
  • 0x3: 6
  • ... 
  • 0xF: 30
  • 0x10: 32
2 CS Delay Setting Register 予約済み 31:8 予約
R/W CS de-assert 7:4 0x0 チップ選択のアサート停止遅延を設定します。
  • 0: チップセレクトは、SCLKの最後の立ち下がりエッジでデアサートされます。
  • n:チップセレクトは、SCLKの最後の立ち下がりエッジのnクロック後にアサート解除されます。
R/W CS assert 3:0 0x0 チップ・セレクト・アサーション遅延を設定します。
  • 0: チップセレクトは、SCLKの最初の立ち上がりエッジの半フラッシュクロック周期前にアサートされます。
  • n: チップセレクトは、フラッシュクロック周期の半分にnのIP_CLKを加えたものとしてアサートされます。 3
3 Read Capturing Register 予約済み 31.4 予約
R/W リード遅延 3:0 0x0 クロックの出力タイミングとボードトレース、I/Oピンのタイミングは、IPロジックに到達するデータの遅延の大きな値に寄与する可能性があります。遅延キャプチャは、IPが読み取りロジックを遅延させてそれらの遅延を補正する方法を提供します。

IP_CLKサイクルの値だけリードデータロジックを遅延させます。

4 Operating Protocols Setting Register 予約済み 31:18 予約
R/W Read data out transfer mode 17:16 0x0 リードデータ出力の転送モード。 
予約済み 15:14 予約
R/W Read address transfer mode 13:12 0x0 リードアドレス入力の転送モード。ビット1:0として記述。
予約済み 11:10 予約
R/W Write Data in transfer mode 9:8 0x0 ビット1:0としてのライトデータ入力説明の転送モード。
予約済み 7:6 予約
R/W Write address transfer mode 5:4 0x0 ビット1:0としてのライトアドレス入力説明の転送モード。
予約済み 3:2 予約
R/W Instruction transfer mode 1:0 0x0 オペコードの転送モード:
  • 0x0: Standard SPI mode – コマンド入力はDQ0で送信される
  • 0x1: コマンド入力はDQ[1:0]で送信される
  • 0x2: Quad IO mode – コマンド入力はDQ[3:0]で送信される
この設定は、フラッシュ・コマンド・レジスターに影響します。 たとえば、このフィールドが0x1に設定されている場合、フラッシュ共通動作(たとえば、IDのリード、リードステータス、ライト・ステータス・レジスター)も0x1を使用します。
5 Read Instruction Register 予約済み 31:14 予約
R/W Dummy cycles 12:8 0x0 リード動作に使用されるデフォルトのダミーサイクルの数。それぞれのフラッシュデバイスのデータシートを参照してください。
R/W Read opcode 7:0 0x03 リード動作のオペコード。転送モード設定に従って正しいオペコードを選択するには、それぞれのフラッシュデバイスのデータシートを参照してください。
6 Write Instruction Register 予約済み RCLK[31..16] 予約
R/W Polling opcode RCLK[15..8] 0x05

ライト動作が完了したかどうかを確認するオペコード。ライト動作が完了すると、IPはAvalon-MMインターフェイスの待機要求を解放します。

該当するデバイスでは、ステータスレジスターまたはフラグ・ステータス・レジスターとして設定できます。
R/W Write opcode 7:0 0x02 ライト動作のオペコード。転送モード設定に従って正しいオペコードを選択するには、それぞれのフラッシュデバイスのデータシートを参照してください。
7 Flash Command Setting Register4 予約済み 31:21 予約
R/W Number of dummy cycles 20:16 0x0  ダミーサイクルの数。動作にダミーサイクルが必要ない場合、0に設定します。ダミークロックの要件については、それぞれのフラッシュデバイスのデータシートを参照してください。 
R/W Number of data bytes 15:12 0x08 書き込みまたはリードデータの数。これはビット11と連動します。値が0に設定されている場合、動作に書き込みまたはリードデータがない場合(書き込み可能など)。
R/W Data type 11 0x01

データのタイプを示します(ビット[15:12])。 

  • 0:[15:12]で宣言されたバイト数は、フラッシュデバイスへのライトデータです。 
  • 1:[15:12]で宣言されたバイト数は、フラッシュデバイスから読み取られたデータです。
R/W Number of address bytes 10:8 0x0

フラッシュデバイスに送信するアドレスバイト数(3または4バイト)。

これがゼロに設定されている場合、動作はアドレスバイトを伝送しません。
R/W Opcode 7:0 0x05 動作のオペコード。 
8 Flash Command Control Register 予約済み 31:1 予約
W Start 0 0x0 動作を開始するには、このビットに1を書き込みます。 
9 Flash Command Address Register R/W Stating address 31:0 31:0 フラッシュコマンドのアドレス。 
A Flash Command Write Data 0 Register R/W Lower 4 bytes write data RCLK[31..0] 0x0 フラッシュデバイスへのライトデータの最初の4バイト。 
B Flash Command Write Data 1 Register R/W Upper 4 bytes write data RCLK[31..0] 0x0 フラッシュデバイスへのライトデータの最後の4バイト。
C Flash Command Read Data 0 Register R Lower 4 bytes read data 31:0 0x0 フラッシュデバイスからのリードデータの最初の4バイト。
D Flash Command Read Data 1 Register R Upper 4 bytes read data 31:0 0x0 フラッシュデバイスからのリードデータの最後の4バイト。
3 Intel® では、100 MHzでIPクロックを実行している場合、チップセレクトアサーション遅延を5に設定することを推奨します。
4 デフォルト設定は、リード・ステータス・コマンド用です。