Atmel Xplained Pro Evaluation Kit ATSAM4E-XPRO ATSAM4E-XPRO Data Sheet

Product codes
ATSAM4E-XPRO
Page of 1506
473
SAM4E [DATASHEET]
Atmel-11157D-ATARM-SAM4E16-SAM4E8-Datasheet_12-Jun-14
Figure 26-4.
Multi Buffer Transfer Using Linked List 
26.5.4.2 Programming DMAC for Multiple Buffer Transfers 
Notes:
1.
USR means that the register field is manually programmed by the user.
2.
CONT means that address are contiguous.
3.
Channel stalled is true if the relevant BTC interrupt is not masked.
4.
LLI means that the register field is updated with the content of the linked list item.
Contiguous Address Between Buffers
In this case, the address between successive buffers is selected to be a continuation from the end of the previous
buffer. Enabling the source or destination address to be contiguous between buffers is a function of
DMAC_CTRLAx.SRC_DSCR and DMAC_CTRLAx.DST_DSCR registers.
Suspension of Transfers Between Buffers
At the end of every buffer transfer, an end of buffer interrupt is asserted if:
the channel buffer interrupt is unmasked, DMAC_EBCIMR.BTCx = ‘1’, where x is the channel number.
Note:
The Buffer Transfer Completed Interrupt is generated at the completion of the buffer transfer to the destination.
At the end of a chain of multiple buffers, an end of linked list interrupt is asserted if:
the channel end of the Chained Buffer Transfer Completed Interrupt is unmasked, DMAC_EBCIMR.CBTCx 
= ‘1’, when n is the channel number.
System Memory
SADDRx
= DSCRx(0) + 0x0
DADDRx
= DSCRx(0) + 0x4
CTRLAx
= DSCRx(0) + 0x8
CTRLBx
= DSCRx(0) + 0xC
DSCRx(1)
= DSCRx(0) + 0x10
SADDRx
= DSCRx(1) + 0x0
DADDRx
= DSCRx(1) + 0x4
CTRLBx
= DSCRx(1) + 0x8
CTRLBx
= DSCRx(1) + 0xC
DSCRx(2)
= DSCRx(1) + 0x10
DSCRx(0)
DSCRx(2)
(points to 0 if
LLI(1) is the last
transfer descriptor
DSCRx(1)
LLI(0)
LLI(1)
Table 26-3.
Multiple Buffers Transfer Management
Transfer Type
SRC_DSCR
DST_DSCR
BTSIZE
DSCR
SADDR
DADDR
Other Fields
1) Single Buffer or Last 
buffer of a multiple buffer 
transfer
USR
0
USR
USR
USR
2) Multi Buffer transfer with 
contiguous DADDR
0
1
LLI
USR
LLI
CONT
LLI
3) Multi Buffer transfer with 
contiguous SADDR
1
0
LLI
USR
CONT
LLI
LLI
4) Multi Buffer transfer with 
LLI support
0
0
LLI
USR
LLI
LLI
LLI