DMAバッファ数 - KBA218339 - Community Translated (JA)
- RSS フィードを購読する
- 新着としてマーク
- 既読としてマーク
- ブックマーク
- 購読
- 印刷用ページ
- 不適切なコンテンツを報告
Community Translated by keni_4440091 Version: **
Translation - English: DMA Buffer Count - KBA218339
質問:
いくつのDMAバッファを割り当てることができますか?割り当てできるDMAバッファの合計サイズはいくつですか?
回答:
DMAチャネルは2つのリソースを要求します:
- DMAバッファ
- DMA記述子
DMAバッファの数は固定されず、割り当てられるバッファのサイズに依存します; DMA記述子の数は最大510に固定されています。
CyU3PDebugInit()関数は、2 KBのバッファリングおよび9つのDMA記述子を使用する内部DMAチャネルを生成します。
CyU3PUSbStart()関数は、合計1 KBのバッファリングおよび6つのDMA記述子を使用する2つの内部DMAチャネルを生成します。
各々S バイトのN バッファの自動チャネルが生成される場合、N x S バイトのバッファリングおよびN + 1 DMA記述子が要求されます。これは、N > 494の場合、自動チャネル生成が失敗するためです。
各々S バイトのN バッファの手動チャネルが生成される場合、N x S バイトのバッファリングおよび4N + 1 DMA記述子が要求されます。これは、N > 123の場合、手動チャネル生成が失敗するためです。
512 KB SRAM (CYUSB3013 およびCYUSB3014)を持つFX3で有効なDMAバッファスペースは224 KBです。セカンドステージブートローダー用に予約された追加の32 KBは、cyfxtx.cファイルの0x40080000にCY_U3P_SYS_MEM_TOPマクロを設定することで使用可能です。
256 KB SRAM(CYUSB3011 およびCYUSB3012)を持つFX3では、有効なDMAバッファスペース32 KBです。セカンドステージブートローダー用に予約された追加の32 KBは、cyfxtx.cファイルの0x40040000にCY_U3P_SYS_MEM_TOPマクロを設定することで使用可能です。
FX3アプリケーションで使用される初期設定メモリーマップは下記のパスで利用可能なfx3_512k.ld (512 KB SRAM用)およびfx3_256k.ld (256 KB SRAM用)ファイルで提供されます:C:\Program Files (x86)\Cypress\EZ-USB FX3 SDK\1.3\fw_build\fx3_fw
ファームウェアに割り当てられるDMAバッファの合計サイズが限度を超えている場合、CY_U3P_ERROR_MEMORY_ERROR (error code: 0x10)が生成されます。