
NUC126
Aug. 08, 2018
Page
376
of 943
Rev 1.03
NUC12
6 S
E
RI
E
S
T
E
CH
NI
CA
L R
E
F
E
RE
NCE
MA
NUA
L
6.12 PDMA Controller (PDMA)
6.12.1
Overview
The peripheral direct memory access (PDMA) controller is used to provide high-speed data transfer.
The PDMA controller can transfer data from one address to another without CPU intervention. This
has the benefit of reducing the workload of CPU and keeps CPU resources free for other applications.
The PDMA controller has a total of 5 channels and each channel can perform transfer between
memory and peripherals or between memory and memory. The PDMA supports time-out function for
channel 0 and channel 1.
6.12.2
Features
Supports 5 independently configurable channels
Supports selectable 2 level of priority (fixed priority or round-robin priority)
Supports transfer data width of 8, 16, and 32 bits
Supports source and destination address increment size can be byte, half-word, word or
no increment
Supports software and SPI, UART, I
2
S, I
2
C, USB, ADC, PWM
and TIMER request
Supports Scatter-Gather mode to perform sophisticated transfer through the use of the
descriptor link list table
Supports single and burst transfer type
Supports time-out function for channel0 and channel 1
6.12.3
Block Diagram
AHB
PDMA Controller
Embedded SRAM
Ch0 DSCT
Ch4 DSCT
Peripheral
Descriptor Table
(DSCT)
ack
finish
Peripheral
n
CH4
Control
CH0
Control
Master / Slave Wrapper
I/O, Decoder
Registers
Bus Master
Control
req
ack
finish
Peripheral
0
req
ack
finish
Peripheral
1
req
P
er
ip
he
ra
l I
nt
er
fa
ce
C
on
tro
l
Figure 6.12-1 PDMA Controller Block Diagram
6.12.4
Basic Configuration
Clock Source Configuration
–
Enable PDMA controller clock in PDMACKEN(CLK_AHBCLK[1]).
Reset Configuration
–
Reset PDMA controller in PDMARST (SYS_IPRST0[2]).