DMA controller (DMA) RM0090
219/1422 Doc ID 018909 Rev 4
9.3.4 Arbiter
An arbiter manages the 8 DMA stream requests based on their priority for each of the two
AHB master ports (memory and peripheral ports) and launches the peripheral/memory
access sequences.
Priorities are managed in two stages:
● Software: each stream priority can be configured in the DMA_SxCR register. There are
four levels:
– Very high priority
– High priority
– Medium priority
–Low priority
● Hardware: If two requests have the same software priority level, the stream with the
lower number takes priority over the stream with the higher number. For example,
Stream 2 takes priority over Stream 4.
Channel 6
TIM5_CH3
TIM5_UP
TIM5_CH4
TIM5_TRIG
TIM5_CH1
TIM5_CH4
TIM5_TRIG
TIM5_CH2 TIM5_UP
Channel 7 TIM6_UP I2C2_RX
I2C2_RX
USART3_TX DAC1 DAC2
I2C2_TX
1. These requests are available on STM32F42xxx and STM32F43xxx only.
Table 35. DMA1 request mapping (continued)
Peripheral
requests
Stream 0 Stream 1 Stream 2 Stream 3 Stream 4 Stream 5 Stream 6 Stream 7
Table 36. DMA2 request mapping
Peripheral
requests
Stream 0 Stream 1 Stream 2 Stream 3 Stream 4 Stream 5 Stream 6 Stream 7
Channel 0
ADC1
TIM8_CH1
TIM8_CH2
TIM8_CH3
ADC1
TIM1_CH1
TIM1_CH2
TIM1_CH3
Channel 1 DCMI ADC2 ADC2 SPI6_TX
(1)
SPI6_RX
(1)
DCMI
Channel 2 ADC3 ADC3 SPI5_RX
(1)
SPI5_TX
(1)
CRYP_OUT CRYP_IN HASH_IN
Channel 3
SPI1_RX SPI1_RX SPI1_TX SPI1_TX
Channel 4 SPI4_RX
(1)
SPI4_TX
(1)
USART1_RX SDIO USART1_RX SDIO USART1_TX
Channel 5
USART6_RX USART6_RX
SPI4_RX
(1)
SPI4_TX
(1)
USART6_TX USART6_TX
Channel 6
TIM1_TRIG TIM1_CH1 TIM1_CH2 TIM1_CH1
TIM1_CH4
TIM1_TRIG
TIM1_COM
TIM1_UP TIM1_CH3
Channel 7 TIM8_UP TIM8_CH1 TIM8_CH2 TIM8_CH3 SPI5_RX
(1)
SPI5_TX
(1)
TIM8_CH4
TIM8_TRIG
TIM8_COM
1. These requests are available on STM32F42xxx and STM32F43xxx.