29.01.2015 Views

STM32F101xx, STM32F102xx, STM32F103xx, STM32F105xx and ...

STM32F101xx, STM32F102xx, STM32F103xx, STM32F105xx and ...

STM32F101xx, STM32F102xx, STM32F103xx, STM32F105xx and ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

RM0008<br />

DMA controller (DMA)<br />

Figure 22.<br />

DMA block diagram in connectivity line devices<br />

Cortex-M3<br />

ICode<br />

DCode<br />

System<br />

FLITF<br />

Flash<br />

SRAM<br />

DMA1<br />

Ch.1<br />

Ch.2<br />

DMA<br />

Bus matrix<br />

Reset & clock<br />

control (RCC)<br />

Ch.7<br />

Arbiter<br />

AHB Slave<br />

DMA2 Ch.1<br />

Ch.2<br />

Ch.5<br />

DMA<br />

DMA request<br />

DMA request<br />

Bridge 2<br />

Bridge 1<br />

ADC1<br />

ADC2<br />

USART1<br />

SPI1<br />

TIM1<br />

GPIOA<br />

GPIOB<br />

APB1<br />

GPIOC DAC<br />

GPIOD<br />

GPIOE<br />

EXTI<br />

AFIO<br />

PWR<br />

BKP<br />

CAN1<br />

CAN2<br />

I2C2<br />

I2C1<br />

UART5<br />

UART4<br />

USART3<br />

USART2<br />

APB2<br />

SPI3/I2S<br />

SPI2/I2S<br />

IWDG<br />

WWDG<br />

RTC<br />

TIM7<br />

TIM6<br />

TIM5<br />

TIM4<br />

TIM3<br />

TIM2<br />

Arbiter<br />

DMA<br />

AHB Slave<br />

Ethernet MAC<br />

USB OTG FS<br />

ai15811<br />

1. The DMA2 controller is available only in high-density <strong>and</strong> connectifity line devices.<br />

2. SPI/I2S3, UART4, TIM5, TIM6, TIM7 <strong>and</strong> DAC DMA requests are available only in high-density <strong>and</strong><br />

connectivity line devices.<br />

3. ADC3, SDIO <strong>and</strong> TIM8 DMA requests are available only in high-density devices.<br />

10.3 DMA functional description<br />

The DMA controller performs direct memory transfer by sharing the system bus with the<br />

Cortex-M3 core. The DMA request may stop the CPU access to the system bus for some<br />

bus cycles, when the CPU <strong>and</strong> DMA are targeting the same destination (memory or<br />

peripheral). The bus matrix implements round-robin scheduling, thus ensuring at least half<br />

of the system bus b<strong>and</strong>width (both to memory <strong>and</strong> peripheral) for the CPU.<br />

10.3.1 DMA transactions<br />

After an event, the peripheral sends a request signal to the DMA Controller. The DMA<br />

controller serves the request depending on the channel priorities. As soon as the DMA<br />

Controller accesses the peripheral, an Acknowledge is sent to the peripheral by the DMA<br />

Controller. The peripheral releases its request as soon as it gets the Acknowledge from the<br />

DMA Controller. Once the request is deasserted by the peripheral, the DMA Controller<br />

Doc ID 13902 Rev 9 183/995

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!