13. Block interconnect
13.1 Peripheral interconnect
13.1.1 Introduction
Several peripherals have direct connections between them.
This enables autonomous communication and synchronization between peripherals, thus saving CPU resources and power consumption.
These hardware connections remove software latency, allow the design of a predictable system and result in a reduction of the number of pins and GPIOs.
13.1.2 Connection overview
There are several types of connections.
- • Asynchronous connections (A)
The source output signal is sampled by the destination clock, leading to introduction of a possible jitter in the latency between the source output event and the destination event detection - • Synchronous connections (S)
Both source and destination are synchronous (they run on the same clock), and the latency from the source to the destination is deterministic. No jitter is introduced. - • Immediate connections (I)
Either the source or the destination is an analog signal. - • Break/fault connection for TIM/HRTIM outputs (B)
The source output signal disables the timer outputs through a pure combinational logic path, without any latency.
| Source | Destination | |||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| D2 domain | D3 domain | |||||||||||||||||||||||||||
| APB1 | APB2 | AHB1 | AHB4 ADC3 | APB4 | ||||||||||||||||||||||||
| TIM2 | TIM3 | TIM4 | TIM5 | TIM12 | LPTIM1 | DAC | CRS | CAN | TIM1 | TIM8 | TIM15 | TIM16 | TIM17 | DFSDM1 | HRTIM | ADC1 | ADC2 | ETHERNET | LPTIM2 | LPTIM3 | LPTIM4 | LPTIM5 | COMP1 | COMP2 | ||||
| D2 domain | APB1 | TIM2 | - | S | S | - | - | - | S | - | A | S | S | S | - | - | - | S | S | S | A | S | - | - | - | - | I | I |
| TIM3 | S | - | S | S | - | - | - | - | A | S | - | S | - | - | S | S | S | S | A | S | - | - | - | - | I | I | ||
| TIM4 | S | S | - | S | S | - | S | - | - | S | S | S | - | - | - | S | - | S | S | - | S | - | - | - | - | - | ||
| TIM5 | - | - | - | - | S | - | S | - | - | - | S | - | - | - | - | - | - | - | - | - | S | - | - | - | - | - | ||
| TIM6 | - | - | - | - | - | - | S | - | - | - | - | - | - | - | - | S | S | S | S | - | S | - | - | - | - | - | ||
| TIM7 | - | - | - | - | - | - | S | - | - | - | - | - | - | - | - | S | S | - | - | - | - | - | - | - | - | - | ||
| TIM13 | - | - | - | - | S | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | ||
| TIM14 | - | - | - | - | S | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | ||
| LPTIM1 | - | - | - | - | - | - | A | - | - | - | - | - | - | - | - | A | A | A | A | - | A | - | - | - | - | - | ||
| SPDIFRX | - | - | - | - | - | - | - | - | - | - | - | - | - | - | S | - | - | - | - | - | - | - | - | - | - | - | ||
| OPAMP | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | A | - | - | - | - | - | - | - | - | - | ||
| CAN | - | - | - | A | - | - | - | - | - | - | - | - | - | - | - | - | A | - | - | A | - | - | - | - | - | - | ||
| APB2 | TIM1 | S | S | S | S | - | - | S | - | - | - | - | S | S | - | - | S | S | S | S | - | S | - | - | - | I | I | |
| TIM8 | S | - | S | S | - | - | S | - | - | - | - | - | - | - | - | S | - | S | S | - | S | - | - | - | I | I | ||
| TIM15 | - | S | - | - | - | - | S | - | - | S | - | - | - | - | - | - | S | S | S | - | S | - | - | - | I | I | ||
| TIM16 | - | - | - | - | - | - | - | - | - | - | - | - | S | - | - | S | S | - | - | - | - | - | - | - | - | - | ||
| TIM17 | - | - | - | - | - | - | - | - | - | - | - | - | S | - | - | - | S | - | - | - | - | - | - | - | - | - | ||
| SAI1 | A | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | A | - | - | - | - | ||
| SAI2 | - | - | - | A | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | A | - | - | - | ||
| DFSDM1 | - | - | - | - | - | - | - | - | - | B | B | B | B | B | - | - | - | - | - | - | - | - | - | - | - | - | ||
| HRTIM | - | - | - | - | - | - | A | - | A | - | - | - | - | - | S | - | A | A | A | A | - | - | - | - | - | - | ||
| AHB1 | ADC1 | - | - | - | - | - | - | - | - | A | - | - | - | - | - | - | - | A | - | - | - | - | - | - | - | - | - | |
| ADC2 | - | - | - | - | - | - | - | - | - | A | - | - | - | - | - | - | A | - | - | - | - | - | - | - | - | - | ||
| ETH | A | A | - | - | - | - | - | - | A | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | ||
| USB1 (OTG_HS1) | A | - | - | A | - | - | - | A | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | ||
| USB2 (OTG_HS2) | A | - | - | A | - | - | - | A | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | ||
- 1. Letters in the table correspond to the type of connection described in Section 13.1.2: Connection overview
- 2. The “-” symbol in a gray cell means no interconnect.
| Source | Destination | ||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| D2 domain | D3 domain | ||||||||||||||||||||||||
| APB1 | APB2 | AHB1 | AHB4 APB4 | ||||||||||||||||||||||
| TIM2 | TIM3 | TIM4 | TIM5 | TIM12 | LPTIM1 | DAC | CRS | CAN | TIM1 | TIM8 | TIM15 | TIM16 | TIM17 | DFSDM1 | HRTIM | ADC1 | ADC2 | ETHERNET | ADC3 | LPTIM2 | LPTIM3 | LPTIM4 | LPTIM5 | ||
| D3 Domain | APB4 | EXTI | - | - | - | - | - | A | - | - | - | - | - | - | - | A | - | A | A | - | - | - | - | - | - |
| LPTIM2 | - | - | - | - | - | A | - | - | - | - | - | - | - | A | A | A | A | - | A | - | A | A | A | ||
| LPTIM3 | - | - | - | - | - | - | - | - | - | - | - | - | - | A | - | A | A | - | A | - | - | A | A | ||
| LPTIM4 | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | A | - | A | ||
| LPTIM5 | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | A | A | - | ||
| COMP1 | A | A | - | - | - | A | - | - | A/B | A/B | B | B | B | - | A/B | - | - | - | - | A | - | - | - | ||
| COMP2 | A | A | - | - | - | A | - | - | A/B | A/B | B | B | B | - | A/B | - | - | - | - | A | - | - | - | ||
| SAI4 | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | A | - | A | ||
| RTC | - | - | - | - | - | A | - | - | - | - | - | A | - | - | - | - | - | - | - | A | - | - | - | ||
| AHB4 | ADC3 | - | - | - | - | - | - | - | - | A | A | - | - | - | - | - | - | - | - | - | - | - | - | - | |
| RCC | A | - | - | - | - | - | A | - | - | - | A | A | A | - | - | - | - | - | - | - | - | - | - | ||
- 1. Letters in the table correspond to the type of connection described in Section 13.1.2: Connection overview .
- 2. The “-” symbol in a gray cell means no interconnect.
| Source | Destination | Type | Comment | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Domain | Bus | Peripheral | Signal | Signal | Peripheral | Bus | Domain | ||
| D2 | APB2 | TIM1 | TRGO | ITR0 | TIM2 | APB1 | D2 | S | - |
| TIM8 | TRGO | ITR1 | S | - | |||||
| APB1 | TIM3 | TRGO | ITR2 | S | - | ||||
| TIM4 | TRGO | ITR3 | S | - | |||||
| AHB1 | ETH | PPS | ITR4 | S | - | ||||
| USB1 | SOF | ITR5 | S | - | |||||
| USB2 | SOF | ITR6 | S | - | |||||
| D3 | APB4 | COMP1 | comp1_out | ETR1 | I | - | |||
| COMP2 | comp2_out | ETR2 | I | - | |||||
| RCC | lse_ck | ETR3 | A | - | |||||
| D2 | APB2 | SAI1 | SAI1_FS_A | ETR4 | A | - | |||
| SAI1 | SAI1_FS_B | ETR5 | A | - | |||||
| D3 | APB4 | COMP1 | comp1_out | TI4_1 | I | - | |||
| COMP2 | comp2_out | TI4_2 | I | - | |||||
| COMP1 or COMP2 (2) | comp1_out or comp2_out | TI4_3 | I | - | |||||
| D2 | APB2 | TIM1 | TRGO | ITR0 | TIM3 | APB1 | D2 | S | - |
| APB1 | TIM2 | TRGO | ITR1 | S | - | ||||
| APB2 | TIM15 | TRGO | ITR2 | S | - | ||||
| APB1 | TIM4 | TRGO | ITR3 | S | - | ||||
| AHB1 | ETH | PPS | ITR4 | S | - | ||||
| D3 | APB4 | COMP1 | comp1_out | ETR1 | I | - | |||
| COMP1 | comp1_out | TI1_1 | I | - | |||||
| COMP2 | comp2_out | TI1_2 | I | - | |||||
| COMP1 or COMP2 (2) | comp1_out or comp2_out | TI1_3 | I | - | |||||
| D2 | APB2 | TIM1 | TRGO | ITR0 | TIM4 | APB1 | D2 | S | - |
| APB1 | TIM2 | TRGO | ITR1 | S | - | ||||
| TIM3 | TRGO | ITR2 | S | - | |||||
| APB2 | TIM8 | TRGO | ITR3 | S | - | ||||
| Source | Destination | Type | Comment | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Domain | Bus | Peripheral | Signal | Signal | Peripheral | Bus | Domain | ||
| D2 | APB2 | TIM1 | TRGO | ITR0 | TIM5 | APB1 | D2 | S | - |
| TIM8 | TRGO | ITR1 | S | - | |||||
| APB1 | TIM3 | TRGO | ITR2 | S | - | ||||
| TIM4 | TRGO | ITR3 | S | - | |||||
| CAN | SOC | ITR6 | S | - | |||||
| AHB1 | USB1 | SOF | ITR7 | S | - | ||||
| USB2 | SOF | ITR8 | S | - | |||||
| APB2 | SAI2 | SAI2_FS_A | ETR1 | A | - | ||||
| SAI2 | SAI2_FS_B | ETR2 | A | - | |||||
| APB1 | CAN | TMP | TI1_1 | A | - | ||||
| CAN | RTP | TI1_2 | A | - | |||||
| D2 | APB1 | TIM4 | TRGO | ITR0 | TIM12 | APB1 | D2 | S | - |
| TIM5 | TRGO | ITR1 | S | - | |||||
| TIM13 | OC1 | ITR2 | S | - | |||||
| TIM14 | OC1 | ITR3 | S | - | |||||
| AHB1 | USB1 | SOF | crs_sync2 | CRS | APB1 | D2 | A | - | |
| USB2 | SOF | crs_sync3 | CRS | APB1 | D2 | A | - | ||
| D3 | AHB4 | RCC | lse_ck | crs_sync1 | CRS | APB1 | D2 | A | - |
| Source | Destination | Type | Comment | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Domain | Bus | Peripheral | Signal | Signal | Peripheral | Bus | Domain | ||
| D2 | APB2 | TIM15 | TRGO | ITR0 | TIM1 | APB2 | D2 | S | - |
| APB1 | TIM2 | TRGO | ITR1 | S | - | ||||
| TIM3 | TRGO | ITR2 | S | - | |||||
| TIM4 | TRGO | ITR3 | S | - | |||||
| D3 | APB4 | COMP1 | comp1_out | ETR1 | I | - | |||
| COMP2 | comp2_out | ETR2 | I | - | |||||
| D2 | AHB1 | ADC1 | adc1_awd1 | ETR3 | A | - | |||
| ADC1 | adc1_awd2 | ETR4 | A | - | |||||
| ADC1 | adc1_awd3 | ETR5 | A | - | |||||
| D3 | AHB4 | ADC3 | adc3_awd1 | ETR6 | A | - | |||
| ADC3 | adc3_awd2 | ETR7 | A | - | |||||
| ADC3 | adc3_awd3 | ETR8 | A | - | |||||
| APB4 | COMP1 | comp1_out | TI1_1 | I | - | ||||
| COMP1 | comp1_out | BRK_1 | B | - | |||||
| COMP2 | comp2_out | BRK_2 | B | - | |||||
| D2 | APB2 | DFSDM1 | dfsdm1_break0 | BRK_3 | B | - | |||
| D3 | APB4 | COMP1 | comp1_out | BRK2_1 | B | - | |||
| COMP2 | comp2_out | BRK2_2 | B | - | |||||
| D2 | APB2 | DFSDM1 | dfsdm1_break1 | BRK2_3 | B | - | |||
| Source | Destination | Type | Comment | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Domain | Bus | Peripheral | Signal | Signal | Peripheral | Bus | Domain | ||
| D2 | APB2 | TIM1 | TRGO | ITR0 | TIM8 | APB2 | D2 | S | - |
| APB1 | TIM2 | TRGO | ITR1 | S | - | ||||
| TIM4 | TRGO | ITR2 | S | - | |||||
| TIM5 | TRGO | ITR3 | S | - | |||||
| D3 | APB4 | COMP1 | comp1_out | ETR1 | I | - | |||
| COMP2 | comp2_out | ETR2 | I | - | |||||
| D2 | AHB1 | ADC2 | adc2_awd1 | ETR3 | A | - | |||
| ADC2 | adc2_awd2 | ETR4 | A | - | |||||
| ADC2 | adc2_awd3 | ETR5 | A | - | |||||
| D3 | AHB4 | ADC3 | adc3_awd1 | ETR6 | A | - | |||
| ADC3 | adc3_awd2 | ETR7 | A | - | |||||
| ADC3 | adc3_awd3 | ETR8 | A | - | |||||
| APB4 | COMP2 | comp2_out | TI1_1 | I | - | ||||
| COMP1 | comp1_out | BRK_1 | B | - | |||||
| COMP2 | comp2_out | BRK_2 | B | - | |||||
| D2 | APB2 | DFSDM1 | dfsdm1_break2 | BRK_3 | B | - | |||
| D3 | APB4 | COMP1 | comp1_out | BRK2_1 | B | - | |||
| COMP2 | comp2_out | BRK2_2 | B | - | |||||
| D2 | APB2 | DFSDM1 | dfsdm1_break3 | BRK2_3 | B | - | |||
| Source | Destination | Type | Comment | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Domain | Bus | Peripheral | Signal | Signal | Peripheral | Bus | Domain | ||
| D2 | APB2 | TIM1 | TRGO | ITR0 | TIM15 | APB2 | D2 | S | - |
| APB1 | TIM3 | TRGO | ITR1 | S | - | ||||
| APB2 | TIM16 | OC1 | ITR2 | S | - | ||||
| TIM17 | OC1 | ITR3 | S | - | |||||
| APB1 | TIM2 | CH1 | TI1_1 | A | - | ||||
| TIM3 | CH1 | TI1_2 | A | - | |||||
| TIM4 | CH1 | TI1_3 | A | - | |||||
| D3 | AHB4 | RCC | lse_ck | TI1_4 | A | - | |||
| RCC | csi_ck | TI1_5 | A | - | |||||
| RCC | MCO2 | TI1_6 | A | - | |||||
| D2 | APB1 | TIM2 | CH2 | TI2_1 | A | - | |||
| TIM3 | CH2 | TI2_2 | A | - | |||||
| TIM4 | CH2 | TI2_3 | A | - | |||||
| D3 | APB4 | COMP1 | comp1_out | BRK_1 | B | - | |||
| COMP2 | comp2_out | BRK_2 | B | - | |||||
| D2 | APB2 | DFSDM1 | dfsdm_break0 | BRK_3 | B | - | |||
| D3 | AHB4 | RCC | lsi_ck | TI1_1 | TIM16 | APB2 | D2 | A | - |
| RCC | lse_ck | TI1_2 | A | - | |||||
| APB4 | RTC | WKUP_IT | TI1_3 | A | - | ||||
| COMP1 | comp1_out | BRK_1 | B | - | |||||
| COMP2 | comp2_out | BRK_2 | B | - | |||||
| D2 | APB2 | DFSDM1 | dfsdm_break1 | BRK_3 | B | - | |||
| D2 | APB1 | SPDIFRX | spdifrx_frame_sync | TI1_1 | TIM17 | APB2 | D2 | A | - |
| D3 | AHB4 | RCC | HSE_1MHZ | TI1_2 | A | - | |||
| RCC | MCO1 | TI1_3 | A | - | |||||
| APB4 | COMP1 | comp1_out | BRK_1 | B | - | ||||
| COMP2 | comp2_out | BRK_2 | B | - | |||||
| D2 | APB2 | DFSDM1 | dfsdm_break2 | BRK_3 | B | - | |||
| Source | Destination | Type | Comment | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Domain | Bus | Peripheral | Signal | Signal | Peripheral | Bus | Domain | ||
| D3 | APB4 | COMP1 | comp1_out | hrtim_evt11 | HRTIM | APB2 | D2 | B | - |
| D2 | APB2 | TIM1 | TRGO | hrtim_evt12 | B | - | |||
| AHB1 | ADC1 | adc1_awa1 | hrtim_evt13 | B | - | ||||
| D3 | APB4 | COMP2 | OUT | hrtim_evt21 | B | - | |||
| D2 | APB2 | TIM2 | TRGO | hrtim_evt22 | B | - | |||
| AHB1 | ADC1 | adc1_awa2 | hrtim_evt23 | B | - | ||||
| NC | NC | NC | hrtim_evt31 | B | - | ||||
| APB2 | TIM3 | TRGO | hrtim_evt32 | B | - | ||||
| AHB1 | ADC1 | adc1_awa3 | hrtim_evt33 | B | - | ||||
| APB1 | OPAMP1 | opamp1_out | hrtim_evt41 | B | - | ||||
| TIM7 | TRGO | hrtim_evt42 | B | - | |||||
| AHB1 | ADC2 | adc2_awa1 | hrtim_evt43 | B | - | ||||
| NC | NC | NC | hrtim_evt51 | B | - | ||||
| APB1 | LPTIM1 | lptim1_out | hrtim_evt52 | B | - | ||||
| AHB1 | ADC2 | adc2_awa2 | hrtim_evt53 | B | - | ||||
| D3 | APB4 | COMP1 | comp1_out | hrtim_evt61 | I | - | |||
| D2 | APB1 | TIM6 | TRGO | hrtim_evt62 | S | - | |||
| AHB1 | ADC2 | adc2_awa3 | hrtim_evt63 | A | - | ||||
| D3 | APB4 | COMP2 | comp2_out | hrtim_evt71 | I | - | |||
| D2 | APB1 | TIM7 | TRGO | hrtim_evt72 | S | - | |||
| NC | NC | NC | hrtim_evt73 | - | - | ||||
| hrtim_evt81 | - | - | |||||||
| APB1 | TIM6 | TRGO | hrtim_evt82 | S | - | ||||
| APB1 | CAN | TTVCAN_TMP | hrtim_evt83 | A | - | ||||
| OPAMP1 | opamp1_out | hrtim_evt91 | I | - | |||||
| APB2 | TIM15 | TRGO | hrtim_evt92 | S | - | ||||
| APB1 | CAN | TTVCAN_RTP | hrtim_evt93 | A | - | ||||
| NC | NC | NC | hrtim_evt101 | - | - | ||||
| D3 | APB4 | LPTIM2 | lptim2_out | hrtim_evt102 | A | - | |||
| D2 | APB1 | CAN | TTVCAN_SOC | hrtim_evt103 | A | - | |||
| Source | Destination | Type | Comment | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Domain | Bus | Peripheral | Signal | Signal | Peripheral | Bus | Domain | ||
| D3 | APB4 | COMP1 | comp1_out | hrtim_in_flt1 | HRTIM | APB2 | D2 | B | - |
| COMP2 | comp2_out | hrtim_in_flt2 | B | - | |||||
| D2 | APB2 | TIM16 | OC | hrtim_upd_en1 | S | - | |||
| TIM17 | OC | hrtim_upd_en2 | S | - | |||||
| APB1 | TIM6 | TRGO | hrtim_upd_en3 | S | - | ||||
| TIM7 | TRGO | hrtim_bm_trg | S | - | |||||
| APB2 | TIM16 | OC | hrtim_bm_ck1 | S | - | ||||
| TIM17 | OC | hrtim_bm_ck2 | S | - | |||||
| APB1 | TIM7 | TRGO | hrtim_bm_ck3 | S | - | ||||
| D3 | APB4 | RTC | rtc_alarm_a_evt | lptim1_ext_trg0 | LPTIM1 | APB1 | D2 | A | - |
| RTC | rtc_alarm_b_evt | lptim1_ext_trg1 | A | - | |||||
| RTC | rtc_tamp1_evt | lptim1_ext_trg2 | A | - | |||||
| RTC | rtc_tamp2_evt | lptim1_ext_trg3 | A | - | |||||
| RTC | rtc_tamp3_evt | lptim1_ext_trg4 | A | - | |||||
| COMP1 | comp1_out | lptim1_ext_trg5 | I | - | |||||
| COMP2 | comp2_out | lptim1_ext_trg6 | I | - | |||||
| COMP1 | comp1_out | lptim1_in1_mu_x1 | I | - | |||||
| COMP2 | comp2_out | lptim1_in2_mu_x2 | I | - | |||||
| Source | Destination | Type | Comment | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Domain | Bus | Peripheral | Signal | Signal | Peripheral | Bus | Domain | ||
| D3 | APB4 | RTC | rtc_alarm_a_evt | lptim2_ext_trg0 | LPTIM2 | APB4 | D3 | A | - |
| RTC | rtc_alarm_b_evt | lptim2_ext_trg1 | A | - | |||||
| RTC | rtc_tamp1_evt | lptim2_ext_trg2 | A | - | |||||
| RTC | rtc_tamp2_evt | lptim2_ext_trg3 | A | - | |||||
| RTC | rtc_tamp3_evt | lptim2_ext_trg4 | A | - | |||||
| COMP1 | comp1_out | lptim2_ext_trg5 | I | - | |||||
| COMP2 | comp2_out | lptim2_ext_trg6 | I | - | |||||
| COMP1 | comp1_out | lptim2_in1_mux1 | I | - | |||||
| COMP2 | comp2_out | lptim2_in1_mux2 | I | - | |||||
| COMP1 or COMP2 (2) | comp1_out or comp2_out | lptim2_in1_mux3 | I | - | |||||
| D3 | APB4 | COMP2 | comp2_out | lptim2_in2_mux1 | LPTIM3 | APB4 | D3 | I | - |
| LPTIM2 | lptim2_out | lptim3_ext_trg0 | S | If same kernel clock source | |||||
| NC | NC | lptim3_ext_trg1 | - | - | |||||
| LPTIM4 | lptim4_out | lptim3_ext_trg2 | S | If same kernel clock source | |||||
| D2 | APB2 | LPTIM5 | lptim5_out | lptim3_ext_trg3 | LPTIM3 | APB4 | D3 | S | If same kernel clock source |
| SAI1 | SAI1_FS_A | lptim3_ext_trg4 | A | - | |||||
| SAI1 | SAI1_FS_B | lptim3_ext_trg5 | A | - | |||||
| SAI4 | SAI4_FS_A | lptim3_in1_mux1 | A | - | |||||
| SAI4 | SAI4_FS_B | lptim3_in1_mux2 | A | - | |||||
| Source | Destination | Type | Comment | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Domain | Bus | Peripheral | Signal | Signal | Peripheral | Bus | Domain | ||
| D3 | APB4 | LPTIM2 | lptim2_out | lptim4_ext_trg 0 | LPTIM4 | APB4 | D3 | S | If same kernel clock source |
| LPTIM3 | lptim3_out | lptim4_ext_trg 1 | S | If same kernel clock source | |||||
| NC | NC | lptim4_ext_trg 2 | - | ||||||
| LPTIM5 | lptim5_out | lptim4_ext_trg 3 | S | If same kernel clock source | |||||
| D2 | APB2 | SAI2 | SAI2_FS_A | lptim4_ext_trg 4 | A | - | |||
| SAI2 | SAI2_FS_B | lptim4_ext_trg 5 | LPTIM5 | APB4 | D3 | A | - | ||
| D3 | APB4 | LPTIM2 | lptim2_out | lptim5_ext_trg 0 | S | If same kernel clock source | |||
| LPTIM3 | lptim3_out | lptim5_ext_trg 1 | S | If same kernel clock source | |||||
| LPTIM4 | lptim4_out | lptim5_ext_trg 2 | S | If same kernel clock source | |||||
| SAI4 | SAI4_FS_A | lptim5_ext_trg 3 | A | - | |||||
| SAI4 | SAI4_FS_B | lptim5_ext_trg 4 | A | - | |||||
| Source | Destination | Type | Comment | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Domain | Bus | Peripheral | Signal | Signal | Peripheral | Bus | Domain | ||
| D2 | APB2 | TIM1 | TRGO | dac_ch1/2_trg 0 | DAC channel 1/channel 2 | APB1 | D2 | S | - |
| TIM2 | TRGO | dac_ch1/2_trg 1 | S | - | |||||
| TIM4 | TRGO | dac_ch1/2_trg 02 | S | - | |||||
| APB1 | TIM5 | TRGO | dac_ch1/2_trg 3 | S | - | ||||
| TIM6 | TRGO | dac_ch1/2_trg 4 | S | - | |||||
| TIM7 | TRGO | dac_ch1/2_trg 5 | S | - | |||||
| TIM8 | TRGO | dac_ch1/2_trg 6 | S | - | |||||
| APB2 | TIM15 | TRGO | dac_ch1/2_trg 7 | S | - | ||||
| HRTIM1 | hrtim_dac_trg1 | dac_ch1/2_trg 8 | S | - | |||||
| hrtim_dac_trg2 | dac_ch1/2_trg 9 | S | - | ||||||
| LPTIM1 | lptim1_out | dac_ch1/2_trg 10 | S | - | |||||
| APB1 | LPTIM2 | lptim2_out | dac_ch1/2_trg 11 | S | - | ||||
| D3 | APB4 | SYSCFG | EXTI9 | dac_ch1/2_trg 12 | S | - | |||
| Source | Destination | Type | Comment | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Domain | Bus | Peripheral | Signal | Signal | Peripheral | Bus | Domain | ||
| D2 | APB2 | TIM1 | TRGO | TRG0 | DFSDM1 | APB2 | D2 | S | - |
| TIM1 | TRGO2 | TRG1 | S | - | |||||
| TIM8 | TRGO | TRG2 | S | - | |||||
| TIM8 | TRGO2 | TRG3 | S | - | |||||
| APB1 | TIM3 | TRGO | TRG4 | S | - | ||||
| TIM4 | TRGO | TRG5 | S | - | |||||
| APB2 | TIM16 | OC1 | TRG6 | S | - | ||||
| APB1 | TIM6 | TRGO | TRG7 | S | - | ||||
| TIM7 | TRGO | TRG8 | S | - | |||||
| APB2 | HRTIM1 | hrtim_adc_trg1 | TRG9 | S | - | ||||
| D3 | APB4 | HRTIM1 | hrtim_adc_trg3 | TRG10 | DFSDM1 | APB2 | D2 | S | - |
| SYSCFG | EXTI11 | TRG24 | A | - | |||||
| D2 | APB1 | SYSCFG | EXTI15 | TRG25 | DFSDM1 | APB2 | D2 | A | - |
| D3 | APB4 | LPTIM1 | lptim1_out | TRG26 | A | - | |||
| LPTIM2 | lptim2_out | TRG27 | DFSDM1 | APB2 | D2 | A | - | ||
| D2 | APB2 | LPTIM3 | lptim3_out | TRG28 | A | - | |||
| TIM1 | CC1 | adc_ext_trg0 | ADC1 / ADC2 | AHB1 | D2 | S | - | ||
| TIM1 | CC2 | adc_ext_trg1 | S | - | |||||
| TIM1 | CC3 | adc_ext_trg2 | S | - | |||||
| APB1 | TIM2 | CC2 | adc_ext_trg3 | S | - | ||||
| TIM3 | TRGO | adc_ext_trg4 | S | - | |||||
| TIM4 | CC4 | adc_ext_trg5 | S | - | |||||
| D3 | APB4 | SYSCFG | EXTI11 | adc_ext_trg6 | ADC1 / ADC2 | AHB1 | D2 | A | - |
| Source | Destination | Type | Comment | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Domain | Bus | Peripheral | Signal | Signal | Peripheral | Bus | Domain | ||
| D2 | APB2 | TIM8 | TRGO | adc_ext_trg7 | ADC1 /ADC2 | AHB1 | D2 | S | - |
| TIM8 | TRGO2 | adc_ext_trg8 | S | - | |||||
| TIM1 | TRGO | adc_ext_trg9 | S | - | |||||
| TIM1 | TRGO2 | adc_ext_trg10 | S | - | |||||
| APB1 | TIM2 | TRGO | adc_ext_trg11 | S | - | ||||
| TIM4 | TRGO | adc_ext_trg12 | S | - | |||||
| TIM6 | TRGO | adc_ext_trg13 | S | - | |||||
| APB2 | TIM15 | TRGO | adc_ext_trg14 | S | - | ||||
| APB1 | TIM3 | CC4 | adc_ext_trg15 | S | - | ||||
| APB2 | HRTIM1 | hrtim_adc_trg1 | adc_ext_trg16 | A | - | ||||
| HRTIM1 | hrtim_adc_trg3 | adc_ext_trg17 | A | - | |||||
| LPTIM1 | lptim1_out | adc_ext_trg18 | A | - | |||||
| D3 | APB4 | LPTIM2 | lptim2_out | adc_ext_trg19 | A | - | |||
| LPTIM3 | lptim3_out | adc_ext_trg20 | A | - | |||||
| D2 | APB2 | TIM1 | TRGO | adc_jext_trg0 | ADC1 /ADC2 | AHB1 | D2 | S | - |
| TIM1 | CC4 | adc_jext_trg1 | S | - | |||||
| APB1 | TIM2 | TRGO | adc_jext_trg2 | S | - | ||||
| TIM2 | CC1 | adc_jext_trg3 | S | - | |||||
| TIM3 | CC4 | adc_jext_trg4 | S | - | |||||
| TIM4 | TRGO | adc_jext_trg5 | S | - | |||||
| Source | Destination | Type | Comment | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Domain | Bus | Peripheral | Signal | Signal | Peripheral | Bus | Domain | ||
| D3 | APB4 | SYSCFG | EXTI15 | adc_jext_trg6 | A | - | |||
| D2 | APB2 | TIM8 | CC4 | adc_jext_trg7 | ADC1 /ADC2 | AHB1 | D2 | S | - |
| TIM1 | TRGO2 | adc_jext_trg8 | S | - | |||||
| TIM8 | TRGO | adc_jext_trg9 | S | - | |||||
| TIM8 | TRGO2 | adc_jext_trg10 | S | - | |||||
| TIM3 | CC3 | adc_jext_trg11 | S | - | |||||
| APB1 | TIM3 | TRGO | adc_jext_trg12 | S | - | ||||
| TIM3 | CC1 | adc_jext_trg13 | S | - | |||||
| TIM6 | TRGO | adc_jext_trg14 | S | - | |||||
| TIM15 | TRGO | adc_jext_trg15 | S | - | |||||
| APB2 | HRTIM1 | hrtim_adc_trg2 | adc_jext_trg16 | A | - | ||||
| HRTIM1 | hrtim_adc_trg4 | adc_jext_trg17 | A | - | |||||
| APB1 | LPTIM1 | lptim1_out | adc_jext_trg18 | A | - | ||||
| D3 | APB4 | LPTIM2 | lptim2_out | adc_jext_trg19 | A | - | |||
| LPTIM3 | lptim2_out | adc_jext_trg20 | A | - | |||||
| Source | Destination | Type | Comment | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Domain | Bus | Peripheral | Signal | Signal | Peripheral | Bus | Domain | ||
| D2 | APB2 | TIM1 | CC1 | adc_ext_trg0 | ADC3 | AHB4 | D3 | S | - |
| TIM1 | CC2 | adc_ext_trg1 | S | - | |||||
| TIM1 | CC3 | adc_ext_trg2 | S | - | |||||
| APB1 | TIM2 | CC2 | adc_ext_trg3 | S | - | ||||
| TIM3 | TRGO | adc_ext_trg4 | S | - | |||||
| TIM4 | CC4 | adc_ext_trg5 | S | - | |||||
| D3 | APB4 | SYSCFG | EXTI11 | adc_ext_trg6 | A | - | |||
| D2 | APB2 | TIM8 | TRGO | adc_ext_trg7 | S | - | |||
| TIM8 | TRGO2 | adc_ext_trg8 | S | - | |||||
| TIM1 | TRGO | adc_ext_trg9 | S | - | |||||
| TIM1 | TRGO2 | adc_ext_trg10 | S | - | |||||
| APB1 | TIM2 | TRGO | adc_ext_trg11 | S | - | ||||
| TIM4 | TRGO | adc_ext_trg12 | S | - | |||||
| TIM6 | TRGO | adc_ext_trg13 | S | - | |||||
| APB2 | TIM15 | TRGO | adc_ext_trg14 | S | - | ||||
| APB1 | TIM3 | CC4 | adc_ext_trg15 | S | - | ||||
| APB2 | HRTIM1 | hrtim_adc_trg1 | adc_ext_trg16 | A | - | ||||
| HRTIM1 | hrtim_adc_trg3 | adc_ext_trg17 | A | - | |||||
| LPTIM1 | lptim1_out | adc_ext_trg18 | A | - | |||||
| APB4 | LPTIM2 | lptim2_out | adc_ext_trg19 | A | - | ||||
| LPTIM3 | lptim3_out | adc_ext_trg20 | A | - | |||||
| Source | Destination | Type | Comment | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Domain | Bus | Peripheral | Signal | Signal | Peripheral | Bus | Domain | ||
| D2 | APB2 | TIM1 | TRGO | adc_jext_trg0 | ADC3 | AHB4 | D3 | SI | - |
| TIM1 | CC4 | adc_jext_trg1 | S | - | |||||
| APB1 | TIM2 | TRGO | adc_jext_trg2 | S | - | ||||
| TIM2 | CC1 | adc_jext_trg3 | S | - | |||||
| TIM3 | CC4 | adc_jext_trg4 | S | - | |||||
| TIM4 | TRGO | adc_jext_trg5 | S | - | |||||
| D3 | APB4 | SYSCFG | EXTI15 | adc_jext_trg6 | A | - | |||
| D2 | APB2 | TIM8 | CC4 | adc_jext_trg7 | S | - | |||
| TIM1 | TRGO2 | adc_jext_trg8 | S | - | |||||
| TIM8 | TRGO | adc_jext_trg9 | S | - | |||||
| TIM8 | TRGO2 | adc_jext_trg10 | S | - | |||||
| APB1 | TIM3 | CC3 | adc_jext_trg11 | S | - | ||||
| TIM3 | TRGO | adc_jext_trg12 | S | - | |||||
| TIM3 | CC1 | adc_jext_trg13 | S | - | |||||
| TIM6 | TRGO | adc_jext_trg14 | S | - | |||||
| APB2 | TIM15 | TRGO | adc_jext_trg15 | S | - | ||||
| HRTIM1 | hrtim_adc_trg2 | adc_jext_trg16 | A | - | |||||
| HRTIM1 | hrtim_adc_trg4 | adc_jext_trg17 | A | - | |||||
| APB1 | LPTIM1 | OUT | adc_jext_trg18 | A | - | ||||
| APB4 | LPTIM2 | OUT | adc_jext_trg19 | A | - | ||||
| LPTIM3 | OUT | adc_jext_trg20 | A | - | |||||
| D2 | APB2 | TIM1 | OC5 | comp_blk1 | COMP1 / COMP2 | APB4 | D3 | I | - |
| TIM1 | OC3 | comp_blk2 | I | - | |||||
| APB1 | TIM3 | OC3 | comp_blk3 | I | - | ||||
| TIM3 | OC4 | comp_blk4 | I | - | |||||
| APB2 | TIM8 | OC5 | comp_blk5 | I | - | ||||
| TIM15 | OC1 | comp_blk6 | I | - | |||||
| Source | Destination | Type | Comment | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Domain | Bus | Peripheral | Signal | Signal | Peripheral | Bus | Domain | ||
| D2 | APB1 | TIM2 | TRGO | SWT0 | FDCAN | APB1 | D2 | A | - |
| TIM3 | TRGO | SWT1 | A | - | |||||
| AHB1 | ETH | PPS | SWT2 | A | - | ||||
| APB2 | HRTIM1 | hrtim_dac_trg1 | SWT3 | A | - | ||||
| APB1 | TIM2 | TRGO | EVT0 | A | - | ||||
| TIM3 | TRGO | EVT1 | A | - | |||||
| AHB1 | ETH | PPS | EVT2 | A | - | ||||
| APB2 | HRTIM1 | hrtim_dac_trg1 | EVT3 | A | - | ||||
| APB1 | TIM2 | TRGO | PTP0 | ETH | AHB1 | D2 | A | - | |
| TIM3 | TRGO | PTP1 | A | - | |||||
| APB2 | HRTIM1 | hrtim_dac_trg2 | PTP2 | A | - | ||||
| APB1 | CAN | TMP | PTP3 | A | - | ||||
- 1. Letters in the table correspond to the type of connection described in Section 13.1.2: Connection overview .
- 2. comp1_out and comp2_out are connected to the inputs of an OR gate. The output of this OR gate is connected to the The lptim2_in1_mux3 input.
13.2 Wakeup from low power modes
The Extended interrupt and event controller module (EXTI) allows to wake up the system from Stop mode and/or a CPU from CStop mode. Wakeup events are coming from peripherals.
These events are handled by the EXTI either as Configurable events ( C ), or as Direct events ( D ). See Type column in Table 99 . Refer to Section 20: Extended interrupt and event controller (EXTI) for further details.
Three types of peripheral output signals are connected to the EXTI input events:
- • The wake up signals. These signals can be generated by the peripheral without any bus interface clock, they are referred to as xxx_wkup in Table 99 . Some peripherals do not have this capability.
- • The interrupt signals. These signals can be generated only if the peripheral bus interface clock is running. These interrupt signals are generally directly connected to the NVIC of CPU. They are referred to as xxx_it.
- • The signals, i.e. the pulses generated by the peripheral. Once a peripheral has generated a signal, no action (flag clearing) is required at peripheral level.
Each EXTI input event has a different wakeup capability or possible target (see Target column in Table 99 ):
- • CPU wakeup ( CPU ): the input event can be enabled to wake up the CPU
- • CPU and D3 domain wakeup for autonomous Run mode ( ANY ): the input event can be enabled to wake up the CPU or the D3 domain only for an autonomous Run mode phase.
| Source | Destination | Type | Target | Comment | ||||
|---|---|---|---|---|---|---|---|---|
| Domain | Bus | Peripheral | Signal | Signal | Peripheral | |||
| D3 | APB4 | SYSCFG | exti0_wkup | WKUP0 | EXTI | C | ANY | - |
| exti1_wkup | WKUP1 | - | ||||||
| exti2_wkup | WKUP2 | - | ||||||
| exti3_wkup | WKUP3 | - | ||||||
| exti4_wkup | WKUP4 | - | ||||||
| exti5_wkup | WKUP5 | - | ||||||
| exti6_wkup | WKUP6 | - | ||||||
| exti7_wkup | WKUP7 | - | ||||||
| exti8_wkup | WKUP8 | - | ||||||
| exti9_wkup | WKUP9 | - | ||||||
| exti10_wkup | WKUP10 | - | ||||||
| exti11_wkup | WKUP11 | - | ||||||
| exti12_wkup | WKUP12 | - | ||||||
| exti13_wkup | WKUP13 | - | ||||||
| exti14_wkup | WKUP14 | - | ||||||
| exti15_wkup | WKUP15 | - | ||||||
| D3 | AHB4 | PWR | pvd_avd_wkup | WKUP16 | C | CPU | - | |
| D3 | APB4 | RTC | ALARMS | WKUP17 | D | CPU | - | |
| D3 | APB4 | RTC | TAMPER TIMESTAMP | WKUP18 | C | CPU | - | |
| D3 | AHB4 | RCC | CSS_LSE | - | ||||
| D3 | APB4 | RTC | WKUP | WKUP19 | C | ANY | - | |
| D3 | APB4 | COMP1 | comp1_out | WKUP20 | C | ANY | - | |
| D3 | APB4 | COMP2 | comp2_out | WKUP21 | C | ANY | - | |
| D2 | APB1 | I2C1 | i2c1_wkup | WKUP22 | C | CPU | - | |
| D2 | APB1 | I2C2 | i2c2_wkup | WKUP23 | D | CPU | - | |
| D2 | APB1 | I2C3 | i2c3_wkup | WKUP24 | D | CPU | - | |
| D2 | APB1 | I2C4 | i2c4_wkup | WKUP25 | D | ANY | - | |
| D2 | APB2 | USART1 | usart1_wkup | WKUP26 | D | CPU | - | |
| D2 | APB1 | USART2 | usart2_wkup | WKUP27 | D | CPU | - | |
| Source | Destination | Type | Target | Comment | ||||
|---|---|---|---|---|---|---|---|---|
| Domain | Bus | Peripheral | Signal | Signal | Peripheral | |||
| D2 | APB1 | USART3 | usart3_wkup | WKUP28 | D | CPU | - | |
| D2 | APB2 | USART6 | usart6_wkup | WKUP29 | D | CPU | - | |
| D2 | APB1 | UART4 | uart4_wkup | WKUP30 | D | CPU | - | |
| D2 | APB1 | UART5 | uart5_wkup | WKUP31 | D | CPU | - | |
| D2 | APB1 | UART7 | uart7_wkup | WKUP32 | D | CPU | - | |
| D2 | APB1 | UART8 | uart8_wkup | WKUP33 | D | CPU | - | |
| D3 | APB4 | LPUART | lpuart_rx_wkup | WKUP34 | D | ANY | - | |
| D3 | APB4 | LPUART | lpuart_tx_wkup | WKUP35 | D | ANY | - | |
| D2 | APB2 | SPI1 | spi1_wkup | WKUP36 | D | CPU | - | |
| D2 | APB1 | SPI2 | spi2_wkup | WKUP37 | D | CPU | - | |
| D2 | APB1 | SPI3 | spi3_wkup | WKUP38 | D | CPU | - | |
| D2 | APB2 | SPI4 | spi4_wkup | WKUP39 | D | CPU | - | |
| D2 | APB2 | SPI5 | spi5_wkup | WKUP40 | D | CPU | - | |
| D3 | APB4 | SPI6 | spi6_wkup | WKUP41 | EXTI | D | ANY | - |
| D2 | APB1 | MDIOS | mdios_wkup | WKUP42 | D | CPU | - | |
| D2 | AHB1 | USB1 | usb1_wkup | WKUP43 | D | CPU | - | |
| D2 | AHB1 | USB2 | usb2_wkup | WKUP44 | D | CPU | - | |
| - | - | NC | NC | WKUP45 | - | - | - | |
| D2 | APB1 | LPTIM1 | lptim1_wkup | WKUP47 | D | CPU | - | |
| D3 | APB4 | LPTIM2 | lptim2_wkup | WKUP48 | D | ANY | - | |
| D3 | APB4 | LPTIM2 | lptim2_out | WKUP49 | C | ANY | (2) | |
| D3 | APB4 | LPTIM3 | lptim3_wkup | WKUP50 | D | ANY | - | |
| D3 | APB4 | LPTIM3 | lptim3_out | WKUP51 | C | ANY | (2) | |
| D3 | APB4 | LPTIM4 | lptim4_wkup | WKUP52 | D | ANY | - | |
| D3 | APB4 | LPTIM5 | lptim5_wkup | WKUP53 | D | ANY | - | |
| D2 | APB1 | SWPMI | swpmi_wkup | WKUP54 | D | CPU | - | |
| Source | Destination | Type | Target | Comment | ||||
|---|---|---|---|---|---|---|---|---|
| Domain | Bus | Peripheral | Signal | Signal | Peripheral | |||
| D3 | AHB4 | PWR | pwr_wkup1_wkup | WKUP55 | D | CPU | - | |
| pwr_wkup2_wkup | WKUP56 | - | ||||||
| pwr_wkup3_wkup | WKUP57 | - | ||||||
| pwr_wkup4_wkup | WKUP58 | - | ||||||
| pwr_wkup5_wkup | WKUP59 | - | ||||||
| pwr_wkup6_wkup | WKUP60 | - | ||||||
| D3 | AHB4 | RCC | rcc_it | WKUP61 | D | CPU | - | |
| D3 | APB4 | I2C4 | i2c4_ev_it | WKUP62 | D | CPU | (1) | |
| I2C4 | i2c4_err_it | WKUP63 | D | CPU | (1) | |||
| D3 | APB4 | LPUART1 | lpuart1_it | WKUP64 | D | CPU | (1) | |
| D3 | APB4 | SPI6 | spi6_it | WKUP64 | D | CPU | (1) | |
| D3 | AHB4 | BDMA | bdma_ch0_it | WKUP66 | EXTI | D | CPU | (1) |
| bdma_ch1_it | WKUP67 | D | CPU | (1) | ||||
| bdma_ch2_it | WKUP68 | D | CPU | (1) | ||||
| bdma_ch3_it | WKUP69 | D | CPU | (1) | ||||
| bdma_ch4_it | WKUP70 | D | CPU | (1) | ||||
| bdma_ch5_it | WKUP71 | D | CPU | (1) | ||||
| bdma_ch6_it | WKUP72 | D | CPU | (1) | ||||
| bdma_ch7_it | WKUP73 | D | CPU | (1) | ||||
| D3 | AHB4 | DMAMUX2 | dmamux2_it | WKUP74 | CPU | (1) | ||
| D3 | AHB4 | ADC3 | adc3_it | WKUP75 | D | CPU | (1) | |
| D3 | APB4 | SAI4 | sai4_gbl_it | WKUP76 | D | CPU | (1) | |
| D3 | AHB4 | HSEM | hsem_int_it | WKUP77 | D | CPU | (1) | |
| - | - | NC | NC | WKUP81 | - | - | - | |
| D1 | APB3 | WWDG1 | wwdg1_out_rst | WKUP82 | C | CPU | (1) | |
| - | - | NC | NC | WKUP83 | - | - | - | |
| D1 | APB1 | CEC | cec_wkup | WKUP85 | C | CPU | - | |
| D2 | AHB1 | ETH | eth | WKUP86 | C | CPU | - | |
| D3 | AHB4 | RCC | hse_css_rcc_wkup | WKUP87 | D | CPU | - | |
1. The source peripheral needs its bus clock in order to generate the event. This is either PCLK4 or HCLK4 in D3 domain, PCLK3 in D1 domain.
2. The source peripheral signal is not connected to the NVIC.
The Extended Interrupt and Event Controller (EXTI) module event inputs able to wake up the D3 domain for autonomous Run mode have a pending request logic that can be cleared by 4 different input sources ( Table 100 ). Refer to Section 20: Extended interrupt and event controller (EXTI) for further details.
Table 100. EXTI pending requests clear inputs
| Source | Destination | Comment | ||||||
|---|---|---|---|---|---|---|---|---|
| Domain | Bus | Peripheral | Signal | Signal | Peripheral | Bus | Domain | |
| D3 | AHB4 | DMAMUX2 | dmamux2_evt6 | d3_pendclear_in[0] | EXTI | APB4 | D3 | - |
| dmamux2_evt7 | d3_pendclear_in[1] | - | ||||||
| APB4 | LPTIM4 | lptim4_out | d3_pendclear_in[2] | - | ||||
| LPTIM5 | lptim5_out | d3_pendclear_in[3] | - | |||||
13.3 DMA
In D1 domain, the MDMA allows the memory to transfer data. It can be triggered by software or by hardware, according to the connections described in Section 13.3.1 .
DMA Multiplexer in D2 domain (DMAMUX1) allows to map any peripheral DMA request to any stream of the DMA1 or the DMA2. In addition to this, The DMAMUX provides two other functionalities:
- • It's possible to synchronize a peripheral DMA request with a timer, with an external pin or with a DMA transfer complete of another stream.
- • DMA requests can be generated on a stream by the DMAMUX1 itself. This event can be triggered by a timer, by an external pin event, or by a DMA transfer complete of another stream. The number of DMA requests generated is configurable.
The connections on DMAMUX1 and DMA1/DMA2 are described in Section 17: DMA request multiplexer (DMAMUX) , Section 15: Direct memory access controller (DMA) and Section 16: Basic direct memory access controller (BDMA) .
DMA Multiplexer in D3 domain (DMAMUX2) has the same functionality of DMAMUX1, it is connected to the basic DMA (BDMA).
The connections on DMAMUX2 and BDMA are described in Section 13.3.3: DMAMUX2, BDMA (D3 domain) . Refer to Section 13.3.3: DMAMUX2, BDMA (D3 domain) and Section 16: Basic direct memory access controller (BDMA) for more details.
13.3.1 MDMA (D1 domain)
Table 101. MDMA
| Source | Destination | Comment | ||||||
|---|---|---|---|---|---|---|---|---|
| Domain | Bus | Peripheral | Signal | Signal | Peripheral | Bus | Domain | |
| D2 | AHB1 | DMA1 | dma1_tcif0 | mdma_str0 | MDMA | AXI | D1 | DMA1 stream 0 transfer complete |
| dma1_tcif1 | mdma_str1 | DMA1 stream 1 transfer complete | ||||||
| dma1_tcif2 | mdma_str2 | DMA1 stream 2 transfer complete | ||||||
| dma1_tcif3 | mdma_str3 | DMA1 stream 3 transfer complete | ||||||
| dma1_tcif4 | mdma_str4 | DMA1 stream 4 transfer complete | ||||||
| dma1_tcif5 | mdma_str5 | DMA1 stream 5 transfer complete flag | ||||||
| dma1_tcif6 | mdma_str6 | DMA1 stream 6 transfer complete | ||||||
| dma1_tcif7 | mdma_str7 | DMA1 stream 7 transfer complete | ||||||
| D2 | AHB1 | DMA2 | dma2_tcif0 | mdma_str8 | MDMA | AXI | D1 | DMA2 stream 0 transfer complete |
| dma2_tcif1 | mdma_str9 | DMA2 stream 1 transfer complete | ||||||
| dma2_tcif2 | mdma_str10 | DMA2 stream 2 transfer complete | ||||||
| dma2_tcif3 | mdma_str11 | DMA2 stream 3 transfer complete | ||||||
| dma2_tcif4 | mdma_str12 | DMA2 stream 4 transfer complete | ||||||
| dma2_tcif5 | mdma_str13 | DMA2 stream 5 transfer complete | ||||||
| dma2_tcif6 | mdma_str14 | DMA2 stream 6 transfer complete | ||||||
| dma2_tcif7 | mdma_str15 | DMA2 stream 7 transfer complete | ||||||
| D1 | APB3 | LTDC | ltdc_li_it | mdma_str16 | LTDC line interrupt | |||
Table 101. MDMA (continued)
| Source | Destination | Comment | ||||||
|---|---|---|---|---|---|---|---|---|
| Domain | Bus | Peripheral | Signal | Signal | Peripheral | Bus | Domain | |
| D1 | AHB3 | JPEG | jpeg_ift_trg | mdma_str17 | MDMA | AXI | D1 | JPEG input FIFO threshold |
| jpeg_ifnt_trg | mdma_str18 | JPEG input FIFO not full | ||||||
| jpeg_oft_trg | mdma_str19 | JPEG output FIFO threshold | ||||||
| jpeg_ofne_trg | mdma_str20 | JPEG output FIFO not empty | ||||||
| jpeg_oec_trg | mdma_str21 | JPEG end of conversion | ||||||
| D1 | AHB3 | QUADSPI | quadspi_ft_trg | mdma_str22 | QUADSPI FIFO threshold | |||
| quadspi_tc_trg | mdma_str23 | QUADSPI transfer complete | ||||||
| D1 | AHB3 | DMA2D | dma2d_clut_trg | mdma_str24 | DMA2D CLUT transfer complete | |||
| dma2d_tc_trg | mdma_str25 | DMA2D transfer complete | ||||||
| dma2d_tw_trg | mdma_str26 | DMA2D transfer watermark | ||||||
| D1 | AHB3 | SDMMC1 | sdmmc1_dataend_trg | mdma_str29 | End of data | |||
13.3.2 DMAMUX1, DMA1 and DMA2 (D2 domain)
Table 102. DMAMUX1, DMA1 and DMA2 connections (1)
| Source | Destination | Comment | ||||||
|---|---|---|---|---|---|---|---|---|
| Domain | Bus | Peripheral | Signal | Signal | Peripheral | Bus | Domain | |
| D3 | AHB4 | dmamux1 internal (Request generator) | dmamux1_req_in1 | |||||
| dmamux1_req_in2 | ||||||||
| dmamux1_req_in3 | ||||||||
| dmamux1_req_in4 | ||||||||
| NC | ||||||||
| NC | ||||||||
| NC | ||||||||
| NC | ||||||||
| D2 | AHB1 | ADC1 | adc1_dma | dmamux1_req_in9 | DMAMUX1 | AHB1 | D2 | Requests |
| D2 | AHB1 | ADC2 | adc2_dma | dmamux1_req_in10 | ||||
| D2 | APB2 | TIM1 | tim1_ch1_dma | dmamux1_req_in11 | ||||
| tim1_ch2_dma | dmamux1_req_in12 | |||||||
| tim1_ch3_dma | dmamux1_req_in13 | |||||||
| tim1_ch4_dma | dmamux1_req_in14 | |||||||
| tim1_up_dma | dmamux1_req_in15 | |||||||
| tim1_trig_dma | dmamux1_req_in16 | |||||||
| tim1_com_dma | dmamux1_req_in17 | |||||||
| D2 | APB1 | TIM2 | tim2_ch1_dma | dmamux1_req_in18 | ||||
| tim2_ch2_dma | dmamux1_req_in19 | |||||||
| tim2_ch3_dma | dmamux1_req_in20 | |||||||
| tim2_ch4_dma | dmamux1_req_in21 | |||||||
| tim2_up_dma | dmamux1_req_in22 | |||||||
| D2 | APB1 | TIM3 | tim3_ch1_dma | dmamux1_req_in23 | ||||
| tim3_ch2_dma | dmamux1_req_in24 | |||||||
| tim3_ch3_dma | dmamux1_req_in25 | |||||||
| tim3_ch4_dma | dmamux1_req_in26 | |||||||
| tim3_up_dma | dmamux1_req_in27 | |||||||
| tim3_trig_dma | dmamux1_req_in28 | |||||||
| D2 | APB1 | TIM4 | tim4_ch1_dma | dmamux1_req_in29 | ||||
| tim4_ch2_dma | dmamux1_req_in30 | |||||||
| tim4_ch3_dma | dmamux1_req_in31 | |||||||
| tim4_up_dma | dmamux1_req_in32 | |||||||
| Source | Destination | Comment | ||||||
|---|---|---|---|---|---|---|---|---|
| Domain | Bus | Peripheral | Signal | Signal | Peripheral | Bus | Domain | |
| D2 | APB1 | I2C1 | i2c1_rx_dma | dmamux1_req_in33 | DMAMUX1 | AHB1 | D2 | Requests |
| i2c1_tx_dma | dmamux1_req_in34 | |||||||
| D2 | APB1 | I2C2 | i2c2_rx_dma | dmamux1_req_in35 | ||||
| i2c2_tx_dma | dmamux1_req_in36 | |||||||
| D2 | APB2 | SPI1 | spi1_rx_dma | dmamux1_req_in37 | ||||
| spi1_tx_dma | dmamux1_req_in38 | |||||||
| D2 | APB1 | SPI2 | spi2_rx_dma | dmamux1_req_in39 | ||||
| spi2_tx_dma | dmamux1_req_in40 | |||||||
| D2 | APB2 | USART1 | usart1_rx_dma | dmamux1_req_in41 | ||||
| usart1_tx_dma | dmamux1_req_in42 | |||||||
| D2 | APB1 | USART2 | usart2_rx_dma | dmamux1_req_in43 | ||||
| usart2_tx_dma | dmamux1_req_in44 | |||||||
| D2 | APB1 | USART3 | usart3_rx_dma | dmamux1_req_in45 | ||||
| usart3_tx_dma | dmamux1_req_in46 | |||||||
| D2 | APB2 | TIM8 | tim8_ch1_dma | dmamux1_req_in47 | ||||
| tim8_ch2_dma | dmamux1_req_in48 | |||||||
| tim8_ch3_dma | dmamux1_req_in49 | |||||||
| tim8_ch4_dma | dmamux1_req_in50 | |||||||
| tim8_up_dma | dmamux1_req_in51 | |||||||
| tim8_trig_dma | dmamux1_req_in52 | |||||||
| tim8_com_dma | dmamux1_req_in53 | |||||||
| - | - | NC | NC | NC | ||||
| D1 | APB1 | TIM3 | tim5_ch1_dma | dmamux1_req_in55 | ||||
| tim5_ch2_dma | dmamux1_req_in56 | |||||||
| tim5_ch3_dma | dmamux1_req_in57 | |||||||
| tim5_ch4_dma | dmamux1_req_in58 | |||||||
| tim5_up_dma | dmamux1_req_in59 | |||||||
| tim5_trig_dma | dmamux1_req_in60 | |||||||
| D2 | APB1 | SPI3 | spi3_rx_dma | dmamux1_req_in61 | ||||
| spi3_tx_dma | dmamux1_req_in62 | |||||||
| D1 | APB1 | UART4 | uart4_rx_dma | dmamux1_req_in63 | ||||
| uart4_tx_dma | dmamux1_req_in64 | |||||||
| Source | Destination | Comment | ||||||
|---|---|---|---|---|---|---|---|---|
| Domain | Bus | Peripheral | Signal | Signal | Peripheral | Bus | Domain | |
| D1 | APB1 | UART5 | uart5_rx_dma | dmamux1_req_in65 | DMAMUX1 | AHB1 | D2 | Requests |
| uart5_tx_dma | dmamux1_req_in66 | |||||||
| D2 | APB1 | DAC1 | dac_ch1_dma | dmamux1_req_in67 | ||||
| D2 | APB1 | DAC2 | dac_ch2_dma | dmamux1_req_in68 | ||||
| D2 | APB1 | TIM6 | tim6_up_dma | dmamux1_req_in69 | ||||
| D2 | APB1 | TIM7 | tim7_up_dma | dmamux1_req_in70 | ||||
| D2 | APB2 | USART6 | usart6_rx_dma | dmamux1_req_in71 | ||||
| usart6_tx_dma | dmamux1_req_in72 | |||||||
| D2 | APB1 | I2C3 | i2c3_rx_dma | dmamux1_req_in73 | ||||
| i2c3_tx_dma | dmamux1_req_in74 | |||||||
| D2 | AHB2 | DCMI | dcmi_dma | dmamux1_req_in75 | ||||
| D2 | AHB2 | CRYP | cryp_in_dma | dmamux1_req_in76 | ||||
| cryp_out_dma | dmamux1_req_in77 | |||||||
| D2 | AHB2 | HASH | hash_in_dma | dmamux1_req_in78 | ||||
| D2 | APB1 | UART7 | uart7_rx_dma | dmamux1_req_in79 | ||||
| uart7_tx_dma | dmamux1_req_in80 | |||||||
| D2 | APB1 | UART8 | uart8_rx_dma | dmamux1_req_in81 | ||||
| uart8_tx_dma | dmamux1_req_in82 | |||||||
| D2 | APB2 | SPI4 | spi4_rx_dma | dmamux1_req_in83 | ||||
| spi4_tx_dma | dmamux1_req_in84 | |||||||
| D2 | APB2 | SPI5 | spi5_rx_dma | dmamux1_req_in85 | ||||
| spi5_tx_dma | dmamux1_req_in86 | |||||||
| D2 | APB2 | SAI1 | sai1_a_dma | dmamux1_req_in87 | ||||
| sai1_b_dma | dmamux1_req_in88 | |||||||
| D2 | APB2 | SAI2 | sai2_a_dma | dmamux1_req_in89 | ||||
| sai2_b_dma | dmamux1_req_in90 | |||||||
| D2 | APB1 | SWPMI | swpmi_rx_dma | dmamux1_req_in91 | ||||
| swpmi_tx_dma | dmamux1_req_in92 | |||||||
| D2 | APB1 | SPDIFRX | spdifrx_dt_dma | dmamux1_req_in93 | ||||
| spdifrx_cs_dma | dmamux1_req_in94 | |||||||
| Source | Destination | Comment | ||||||
|---|---|---|---|---|---|---|---|---|
| Domain | Bus | Peripheral | Signal | Signal | Peripheral | Bus | Domain | |
| D2 | APB2 | HRTIM1 | hrtim_dma1 | dmamux1_req_in95 | DMAMUX1 | AHB1 | D2 | Requests |
| hrtim_dma2 | dmamux1_req_in96 | |||||||
| hrtim_dma3 | dmamux1_req_in97 | |||||||
| hrtim_dma4 | dmamux1_req_in98 | |||||||
| hrtim_dma5 | dmamux1_req_in99 | |||||||
| hrtim_dma6 | dmamux1_req_in100 | |||||||
| D2 | APB2 | DFSDM1 | dfsdm1_dma0 | dmamux1_req_in101 | ||||
| dfsdm1_dma1 | dmamux1_req_in102 | |||||||
| dfsdm1_dma2 | dmamux1_req_in103 | |||||||
| dfsdm1_dma3 | dmamux1_req_in104 | |||||||
| D2 | APB2 | TIM15 | tim15_ch1_dma | dmamux1_req_in105 | ||||
| tim15_up_dma | dmamux1_req_in106 | |||||||
| tim15_trig_dma | dmamux1_req_in107 | |||||||
| tim15_com_dma | dmamux1_req_in108 | |||||||
| D2 | APB2 | TIM16 | tim16_ch1_dma | dmamux1_req_in109 | ||||
| tim16_up_dma | dmamux1_req_in110 | |||||||
| D2 | APB2 | TIM17 | tim17_ch1_mda | dmamux1_req_in111 | ||||
| tim17_up_dma | dmamux1_req_in112 | |||||||
| D2 | APB2 | SAI3 | sai3_a_dma | dmamux1_req_in113 | ||||
| sai3_b_dma | dmamux1_req_in114 | |||||||
| D3 | AHB4 | ADC3 | adc3_dma | dmamux1_req_in115 | ||||
| D2 | AHB1 | DMAMUX1 | dmamux1_evt0 | dmamux1_gen0 | DMAMUX1 | AHB1 | D2 | Request generation |
| dmamux1_evt1 | dmamux1_gen1 | |||||||
| dmamux1_evt2 | dmamux1_gen2 | |||||||
| D2 | APB1 | LPTIM1 | lptim1_out | dmamux1_gen3 | ||||
| D2 | APB1 | LPTIM2 | lptim2_out | dmamux1_gen4 | ||||
| D2 | APB1 | LPTIM3 | lptim3_out | dmamux1_gen5 | ||||
| D3 | APB4 | EXTI | exti_exti0_it | dmamux1_gen6 | ||||
| D2 | APB1 | TIM12 | tim12_trgo | dmamux1_gen7 | ||||
Table 102. DMAMUX1, DMA1 and DMA2 connections (1) (continued)
| Source | Destination | Comment | ||||||
|---|---|---|---|---|---|---|---|---|
| Domain | Bus | Peripheral | Signal | Signal | Peripheral | Bus | Domain | |
| D2 | AHB1 | DMAMUX1 | dmamux1_evt0 | dmamux1_trg0 | DMAMUX1 | AHB1 | D2 | Triggers |
| dmamux1_evt1 | dmamux1_trg1 | |||||||
| dmamux1_evt2 | dmamux1_trg2 | |||||||
| D2 | APB1 | LPTIM1 | lptim1_out | dmamux1_trg3 | ||||
| D2 | APB1 | LPTIM2 | lptim2_out | dmamux1_trg4 | ||||
| D2 | APB1 | LPTIM3 | lptim3_out | dmamux1_trg5 | ||||
| D3 | APB4 | EXTI | exti_exti0_it | dmamux1_trg6 | ||||
| D2 | APB1 | TIM12 | tim12_trgo | dmamux1_trg7 | DMA1 | AHB1 | D2 | Requests out |
| D2 | AHB1 | DMAMUX1 | dmamux1_req_out0 | dma1_str0 | ||||
| dmamux1_req_out1 | dma1_str1 | |||||||
| dmamux1_req_out2 | dma1_str2 | |||||||
| dmamux1_req_out3 | dma1_str3 | |||||||
| dmamux1_req_out4 | dma1_str4 | |||||||
| dmamux1_req_out5 | dma1_str5 | |||||||
| dmamux1_req_out6 | dma1_str6 | |||||||
| dmamux1_req_out7 | dma1_str7 | |||||||
| dmamux1_req_out8 | dma2_str0 | DMA2 | AHB1 | D2 | ||||
| dmamux1_req_out9 | dma2_str1 | |||||||
| dmamux1_req_out10 | dma2_str2 | |||||||
| dmamux1_req_out11 | dma2_str3 | |||||||
| dmamux1_req_out12 | dma2_str4 | |||||||
| dmamux1_req_out13 | dma2_str5 | |||||||
| dmamux1_req_out14 | dma2_str6 | |||||||
| dmamux1_req_out15 | dma2_str7 | |||||||
1. The “-” symbol in grayed cells means no interconnect.
13.3.3 DMAMUX2, BDMA (D3 domain)
Table 103. DMAMUX2 and BDMA connections
| Source | Destination | Comment | ||||||
|---|---|---|---|---|---|---|---|---|
| Domain | Bus | Peripheral | Signal | Signal | Peripheral | Bus | Domain | |
| D3 | AHB4 | dmamux2 internal (Request generator) | dmamux2_req_in1 | DMAMUX2 | AHB4 | D3 | Requests | |
| dmamux2_req_in2 | ||||||||
| dmamux2_req_in3 | ||||||||
| dmamux2_req_in4 | ||||||||
| NC | ||||||||
| NC | ||||||||
| NC | ||||||||
| NC | ||||||||
| D3 | APB4 | LPUART | dma_rx_lpuart | dmamux2_req_in9 | ||||
| dma_tx_lpuart | dmamux2_req_in10 | |||||||
| D3 | APB4 | SPI6 | dma_rx_spi6 | dmamux2_req_in11 | ||||
| dma_tx_spi6 | dmamux2_req_in12 | |||||||
| D2 | APB1 | I2C4 | dma_rx_i2c4 | dmamux2_req_in13 | ||||
| dma_tx_i2c4 | dmamux2_req_in14 | |||||||
| D3 | APB4 | SAI4 | dma_a_sai4 | dmamux2_req_in15 | ||||
| dma_b_sai4 | dmamux2_req_in16 | |||||||
| D3 | APB4 | ADC3 | dma_adc3 | dmamux2_req_in17 | ||||
Table 103. DMAMUX2 and BDMA connections (continued)
| Source | Destination | Comment | ||||||
|---|---|---|---|---|---|---|---|---|
| Domain | Bus | Peripheral | Signal | Signal | Peripheral | Bus | Domain | |
| D3 | AHB4 | DMAMUX2 | dmamux2_evt0 | dmamux2_gen0 | DMAMUX2 | AHB4 | D3 | Request generation |
| dmamux2_evt1 | dmamux2_gen1 | |||||||
| dmamux2_evt2 | dmamux2_gen2 | |||||||
| dmamux2_evt3 | dmamux2_gen3 | |||||||
| dmamux2_evt4 | dmamux2_gen4 | |||||||
| dmamux2_evt5 | dmamux2_gen5 | |||||||
| dmamux2_evt6 | dmamux2_gen6 | |||||||
| D3 | APB4 | EXTI | exti_lpuart_rx_it | dmamux2_gen7 | ||||
| exti_lpuart_tx_it | dmamux2_gen8 | |||||||
| exti_lptim2_wkup | dmamux2_gen9 | |||||||
| exti_lptim2_out | dmamux2_gen10 | |||||||
| exti_lptim3_wkup | dmamux2_gen11 | |||||||
| exti_lptim3_out | dmamux2_gen12 | |||||||
| exti_lptim4_wkup | dmamux2_gen13 | |||||||
| exti_lptim5_wkup | dmamux2_gen14 | |||||||
| exti_i2c4_wkup | dmamux2_gen15 | |||||||
| exti_spi6_wkup | dmamux2_gen16 | |||||||
| exti_comp1_out | dmamux2_gen17 | |||||||
| exti_comp2_out | dmamux2_gen18 | |||||||
| exti_rtc_wkup | dmamux2_gen19 | |||||||
| exti_syscfg_exti0 | dmamux2_gen20 | |||||||
| exti_syscfg_exti2 | dmamux2_gen21 | |||||||
| D3 | APB4 | I2C4 | it_evt_i2c4 | dmamux2_gen22 | ||||
| D3 | APB4 | SPI6 | it_spi6 | dmamux2_gen23 | ||||
| D3 | APB4 | LPUART | it_tx_lpuart1 | dmamux2_gen24 | ||||
| it_rx_lpuart1 | dmamux2_gen25 | |||||||
| D3 | AHB4 | ADC3 | it_adc3 | dmamux2_gen26 | ||||
| out_awd1_adc3 | dmamux2_gen27 | |||||||
| D3 | AHB4 | BDMA | it_ch0_bdma | dmamux2_gen28 | ||||
| it_ch1_bdma | dmamux2_gen29 | |||||||
Table 103. DMAMUX2 and BDMA connections (continued)
| Source | Destination | Comment | ||||||
|---|---|---|---|---|---|---|---|---|
| Domain | Bus | Peripheral | Signal | Signal | Peripheral | Bus | Domain | |
| D3 | AHB4 | DMAMUX2 | dmamux2_evt0 | dmamux2_trg0 | DMAMUX2 | AHB4 | D3 | Triggers |
| dmamux2_evt1 | dmamux2_trg1 | |||||||
| dmamux2_evt2 | dmamux2_trg2 | |||||||
| dmamux2_evt3 | dmamux2_trg3 | |||||||
| dmamux2_evt4 | dmamux2_trg4 | |||||||
| dmamux2_evt5 | dmamux2_trg5 | |||||||
| D3 | APB4 | EXTI | it_exti_tx_lpuart1 | dmamux2_trg6 | ||||
| it_exti_rx_lpuart1 | dmamux2_trg7 | |||||||
| it_exti_out_lptim2 | dmamux2_trg8 | |||||||
| it_exti_out_lptim3 | dmamux2_trg9 | |||||||
| it_exti_wkup_i2c4 | dmamux2_trg10 | |||||||
| it_exti_wkup_spi6 | dmamux2_trg11 | |||||||
| it_exti_out_comp1 | dmamux2_trg12 | |||||||
| it_exti_wkup_rtc | dmamux2_trg13 | |||||||
| it_exti_exti0_syscfg | dmamux2_trg14 | |||||||
| it_exti_exti2_syscfg | dmamux2_trg15 | |||||||
| D3 | AHB4 | DMAMUX2 | dmamux1_req_out0 | bdma_ch0 | BDMA | AHB4 | D3 | Requests out |
| dmamux1_req_out1 | bdma_ch1 | |||||||
| dmamux1_req_out2 | bdma_ch2 | |||||||
| dmamux1_req_out3 | bdma_ch3 | |||||||
| dmamux1_req_out4 | bdma_ch4 | |||||||
| dmamux1_req_out5 | bdma_ch5 | |||||||
| dmamux1_req_out6 | bdma_ch6 | |||||||
| dmamux1_req_out7 | bdma_ch7 | |||||||