RM0390 Rev 4 205/1328
RM0390 Direct memory access controller (DMA)
237
9.3 DMA functional description
9.3.1 DMA block diagram
Figure 24 shows the block diagram of a DMA.
Figure 24. DMA block diagram
9.3.2 DMA overview
The DMA controller performs direct memory transfer: as an AHB master, it can take the
control of the AHB bus matrix to initiate AHB transactions.
It carries out the following transactions:
• peripheral-to-memory
• memory-to-peripheral
• memory-to-memory
The DMA controller provides two AHB master ports: the AHB memory port, intended to be
connected to memories and the AHB peripheral port, intended to be connected to
peripherals. However, to allow memory-to-memory transfers, the AHB peripheral port must
also have access to the memories.
The AHB slave port is used to program the DMA controller (it supports only 32-bit
accesses).
!("MASTER
-EMORYPORT
&)&/
!("MASTER
0ERIPHERALPORT
342%!-
&)&/
342%!-
342%!-
342%!-
&)&/
342%!-342%!-
&)&/
342%!-
342%!-
2%1?342%!-
2%1?342?#(
2%1?342?#(
$-!CONTROLLER
&)&/
342%!-342%!-
&)&/
342%!-342%!-
&)&/
342%!-342%!-
&)&/
342%!-342%!-
!RBITER
2%1?342%!-
2%1?342%!-
2%1?342%!-
2%1?342%!-
2%1?342%!-
2%1?342%!-
2%1?342%!-
2%1?342?#(
2%1?342?#(
2%1?342?#(
2%1?342?#(
2%1?342?#(
2%1?342?#(
2%1?342?#(
!("SLAVE
PROGRAMMING
INTERFACE
0ROGRAMMINGPORT
#HANNEL
SELECTION
AIB