3

PandaboardでDMAがどのように機能するかを正確に知りたいです。Pandaboardで使用されているOMPA4460のTRMを読みました。これは、DMAシステムが一度に合計128の要求、最大32の論理チャネル、および4つの割り込み要求を管理できることを示しています。DMAの進行中に、CPUが一度に別のタスクを実行できる可能性はありますか?

4

1 に答える 1

1

しかし、DMAが機能しているときに、パンダボードのCPUが一度に別のタスクを実行できる可能性があることを知りたいですか?

DMAの目的は、I/Oデバイスとメインメモリ間でデータを具体的に転送することです。設計上、これはCPUがこの転送を実行するのを軽減することを目的としています。これはプログラムドI/Oとして知られています。CPUがこのデータ転送を実行するようにDMAコントローラを設定すると、CPUは他の目的のために命令を自由に実行できるようになります。したがって、答えは「はい、100%の可能性」です。

PandaBoardのSoCには複数のチャネルを備えたDMAコントローラーがあるため、複数のI/O操作を同時に実行できます。パフォーマンスとスループットの制約は、メモリ帯域幅になります。最近のCPUは、命令キャッシュとデータキャッシュのために、使用するメモリ帯域幅が少なくなる(またはメモリをよりバースト的に使用する)傾向があることに注意してください。通常、CPUとDMAコントローラの両方がメモリをめぐって競合する場合、CPUにはメモリへの優先アクセスが与えられます。

これらの特性はいずれもPandaBoard専用ではないことに注意してください。

于 2012-10-26T01:49:22.703 に答える