周辺DMAコントローラ(しゅうへんディーエムエイ、、PDC)は、マイクロコントローラに搭載される機能で、CPUを介さず、バスを使いメモリとI周辺機器との間で直接的にデータ転送を行う機能で、1チップの集積回路として提供されたり、マイクロコントローラの機能の一部として集積、あるいは、周辺機器のコントローラに組み込まれたりする。

通常、UARTなどのマイクロコントローラに暗黙的に含まれるモジュールを駆動するための自動制御機能を備えたFIFOである。

機能 マイクロコントローラと周辺回路・機器とのあいだのデータ転送は、通常、CPUによっておこなわれるが、DMAを搭載しているマイクロコントローラでは、CPUに代わってDMAがデータを転送する。

利点 そのためCPUは算術/論理演算などのCPUでしかできない仕事だけすればよので、マイコンの性能が総合的に上がることになる。

DMAの最大の利点は、ハードウェアを使って直接データ転送するので、高速・大容量のデータ転送が可能になることである。転送元と転送先は、メモリと周辺機能で自由に選択できる。

これにより、オペレーティングシステムの負担が軽減され、これらの機能のためのサービスと制御に必要な割り込みの数が削減される。

バスの調整 しかし、1本しかないバスをCPUと分け合って使うため、通常、バスの使用権の調整が必要になる。

 この「バスの調整」は「バスアービトレーション(Bus Arbitration)」と呼ばれ、日本語では「バス権の調停」と呼ばれている。

関連項目

Direct memory access(DMA)

脚注・参考文献

脚注

参考文献