エンベデッド・ペリフェラルIPユーザーガイド

ID 683130
日付 9/21/2020
Public
ドキュメント目次
1. 概要 2. Avalon® -ST Multi-Channel Shared Memory FIFOコア 3. Avalon® -STシングルクロックFIFOコアおよびデュアルクロックFIFOコア 4. Avalon® -STシリアル・ペリフェラル・インターフェイス・コア 5. SPIコア 6. SPI Slave to Avalon® Master Bridgeコア/JTAG to Avalon® Master Bridgeコア 7. インテル eSPIスレーブコア 8. eSPI to LPCブリッジコア 9. イーサネットMDIOコア 10. インテルFPGA 16550互換UARTコア 11. UARTコア 12. JTAG UARTコア 13. インテル FPGA Avalon® Mailboxコア 14. インテル FPGA Avalon® ミューテックス・コア 15. インテル FPGA Avalon® I2C (Master) コア 16. インテル FPGA I2C Slave to Avalon® -MM Master Bridgeコア 17. インテルFPGA Avalon® コンパクト・フラッシュ・コア 18. EPCS/EPCQAシリアル・フラッシュ・コントローラー・コア 19. インテルFPGAシリアル・フラッシュ・コントローラー・コア 20. インテルFPGAシリアル・フラッシュ・コントローラーIIコア 21. インテルFPGA汎用クアッドSPIコントローラー・コア 22. インテルFPGA汎用クアッドSPIコントローラーIIコア 23. インターバル・タイマー・コア 24. インテルFPGA Avalon FIFOメモリーコア 25. オンチップメモリー (RAMおよびROM) コア 26. Optrex 16207 LCDコントローラー・コア 27. PIOコア 28. PLLコア 29. DMAコントローラー・コア 30. Modular Scatter-Gather DMAコア 31. Scatter-Gather DMAコントローラー・コア 32. SDRAMコントローラー・コア 33. トライステートSDRAMコア 34. Video Sync GeneratorコアとPixel Converterコア 35. インテル FPGA Interrupt Latency Counterコア 36. パフォーマンス・カウンター・ユニット・コア 37. ベクトル割り込みコントローラー・コア 38. Avalon® -STデータ・パターン・ジェネレーター・コアとデータ・パターン・チェッカー・コア 39. Avalon® -STテスト・パターン・ジェネレーター・コアとテスト・パターン・チェッカー・コア 40. システムIDペリフェラル・コア 41. Avalon® Packets to Transactions Converterコア 42. Avalon® -STマルチプレクサー・コアとデマルチプレクサー・コア 43. Avalon® -ST Bytes to Packets ConverterコアとPackets to Bytes Converterコア 44. Avalon® -ST Delayコア 45. Avalon® -STラウンド・ロビン・スケジューラー・コア 46. Avalon® -ST Splitterコア 47. Avalon® -MM DDR Memory Half Rate Bridgeコア 48. インテル FPGA GMII to RGMIIコンバーター・コア 49. インテル FPGA MII to RMIIコンバーター・コア 50. インテルFPGA HPS GMII to TSE 1000BASE-X/SGMII PCSブリッジコア 51. インテル FPGA HPS EMAC to Multi-rate PHY GMIIアダプターコア 52. インテル FPGA MSI to GICジェネレーター・コア

31.6.4. DMAの記述子

構造の定義に関しては、データ構造のセクションを参照してください。
表 337.  DMA記述子の構造
バイトオフセット フィールド名
31   24 23   16 15   8 7   0
ベース source
ベース + 4 予約済み
ベース + 8 destination
ベース + 12 予約済み
ベース + 16 next_desc_ptr
ベース + 20 予約済み
ベース + 24 予約済み bytes_to_transfer
ベース + 28 desc_control desc_status actual_bytes_transferred
表 338.  DMA記述子のフィールドの説明
フィールド名 アクセス 説明
source R/W 読み出されるデータのアドレスを指定します。入力インターフェイスが Avalon® -STインターフェイスの場合、このアドレスは0に設定されます。
destination R/W データを書き込むアドレスを指定します。出力インターフェイスが Avalon® -STインターフェイスの場合、このアドレスは0に設定されます。
next_desc_ptr R/W リンクリストの次の記述子のアドレスを指定します。
bytes_to_transfer R/W 転送するバイト数を指定します。このフィールドが0の場合、SG-DMAコントローラー・コアは、EOPを検出するまでデータの転送を続けます。
actual_bytes_transferred R コアによって正常に転送されたバイト数を指定します。このフィールドは、コアが記述子を処理した後に更新されます。
desc_status R/W このフィールドは、コアが記述子を処理した後に更新されます。 このフィールドのビットのマップに関しては、DESC_STATUSビットのマップを参照してください。
desc_control R/W コアの動作を指定します。このフィールドは、コアが記述子を処理した後に更新されます。各ビットの説明に関しては、DESC_CONTROLビットのマップを参照してください。
表 339.  DESC_CONTROLのビットのマップ
ビット フィールド名 アクセス 説明
0 GENERATE_EOP W このビットが1に設定されている場合、DMA読み出しブロックは最後のワードでEOP信号をアサートします。
1 READ_FIXED_ADDRESS R/W このビットは、 Avalon® -MM読み出しマスターポートにのみ適用されます。このビットが1に設定されている場合、DMA読み出しブロックはメモリーアドレスをインクリメントしません。このビットを0に設定すると、それぞれの読み出し後に読み出しアドレスがインクリメントされます。
2 WRITE_FIXED_ADDRESS R/W このビットは、 Avalon® -MM書き込みマスターポートにのみ適用されます。このビットが1に設定されている場合、DMA書き込みブロックはメモリーアドレスをインクリメントしません。このビットを0に設定すると、それぞれの書き込み後に書き込みアドレスがインクリメントされます。

Memory-to-Streamのコンフィグレーションでは、このビットが1に設定されている場合、DMA読み出しブロックは最初のワードでStart-of-Packet (SOP) を生成します。

[6:3] 予約済み
3 .. 6 AVALON-ST_CHANNEL_NUMBER R/W DMA読み出しブロックは、トランザクション内の各ワードに対してchannel信号をこの値に設定します。DMA書き込みブロックは、この値をシンクポートのチャネル番号に置き換えます。
7 OWNED_BY_HW R/W このビットは、現在のレジスターへの書き込みアクセスがハードウェアにあるかソフトウェアにあるかを決定します。

このビットが1に設定されている場合、コアで記述子を更新することができます。競合状態が発生する可能性があるため、ソフトウェアで記述子にアクセスすることはできません。それ以外の場合は、ソフトウェアで安全に記述子を更新することができます。

DMAトランザクションが完了すると、記述子プロセッサー・ブロックはdesc_statusフィールドを更新し、トランザクションが処理された結果を示します。

表 340.  DESC_STATUSのビットのマップ
ビット ビット名 アクセス 説明
[7:0] ERROR_0 .. ERROR_7 R 各ビットは、 Avalon® -STインターフェイスで発生したエラーを表します。 各エラーの内容は、 Avalon® -STインターフェイスに接続しているコンポーネントによって定義されます。