インテル® Agilex™ハード・プロセッサー・システムのテクニカル・リファレンス・マニュアル

ID 683567
日付 1/25/2020
Public

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

ドキュメント目次

15.4.9.2. バーストDMAコマンド

DMA転送は、4つの16ビット・アクセスのバースト・トランザクションとしてNANDフラッシュ・コントローラーにコマンドを送信することで開始することができます。このDMAコマンドの形式は、FPGAファブリックのカスタムIPからDMA転送を開始するのに役立ちます。ほとんどのプロセッサーのコアではバースト幅を制御することができないため、このDMAコマンドの形式を使用することができません。

DMAが有効になっている場合、NANDフラッシュ・コントローラーは、MAP10のパイプラインDMAコマンドを次の表に示す形式のINCR4コマンドとして認識します。MAP10のパイプラインDMAコマンドのアドレス・デコーディングは、「MAP10コマンドの形式」に示されているものと同じです。

マルチトランザクション形式のMAP10コマンド (「マルチトランザクションDMAコマンド」で説明されています) と同様に、INCR4形式のMAP10コマンドは、nanddataのオフセット0x10にあるDataレジスターに書き込まれます。

表 107.  MAP10のバーストDMA (INCR4) コマンドの構造次の表に、MAP10のバーストDMAコマンドの構造を示します。バーストDMAコマンドは、マルチトランザクションDMAのコマンドとデータのペアと同じ情報を伝送しますが、形式が大きく異なります。
データビート 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
ビート0 0x2 0X0: 読み出し、0x1: 書き込み <PP>=ページ数
ビート127 メモリーアドレス上位
ビート227 メモリーアドレス下位
ビート3 0x0 INT バースト長
注: INTは、完全なDMA転送の終わりに生成されるホスト割り込みを指定し、DMA転送の終わりに、statusグループのintr_status0レジスターのdma_cmd_compビットの値を制御します。INTは、次の値のいずれかをとることができます。
  • 0—ホストに割り込みません。dma_cmd_compビットは0に設定されます。
  • 1—ホストに割り込みます。dma_cmd_compビットは1に設定されます。

オプションで、上の表の16ビット・フィールドを、長さが1の4つの個別バーストとしてシーケンス順にNANDフラッシュ・コントローラーに送信することができます。インテルではこの方法を推奨しています。

NANDフラッシュ・コントローラーのDMAでキャッシュ可能なアクセスを実行する場合は、システム・マネージャーのnandgrpグループのl3masterレジスターを書き込み、キャッシュビットをコンフィグレーションする必要があります。システム・マネージャーを使用してキャッシュ機能を変更する前に、NANDフラッシュ・コントローラーのDMAをアイドル状態にする必要があります。

27 メモリー内のバッファーアドレスです。4バイト境界にアライメントする必要があります。