Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

DMAバッファ数 - KBA218339 - Community Translated (JA)

DMAバッファ数 - KBA218339 - Community Translated (JA)

GeethaP_31
Employee
Employee

DMAバッファ数 - KBA218339 - Community Translated (JA)

Community Translated by keni_4440091 Expert          Version: **

Translation - English: DMA Buffer Count - KBA218339

質問:

いくつのDMAバッファを割り当てることができますか?割り当てできるDMAバッファの合計サイズはいくつですか?

回答:

DMAチャネルは2つのリソースを要求します:

  1. DMAバッファ
  2. 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ファイルの0x40080000CY_U3P_SYS_MEM_TOPマクロを設定することで使用可能です。

256 KB SRAM(CYUSB3011 およびCYUSB3012)を持つFX3では、有効なDMAバッファスペース32 KBです。セカンドステージブートローダー用に予約された追加の32 KBは、cyfxtx.cファイルの0x40040000CY_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)が生成されます。

0 Likes
122 Views
Contributors