22.8.16 Channel Control A

Name: CHCTRLA
Offset: 0x40 + n*0x10 [n=0..31]
Reset: 0x00000000
Property: PAC Write-Protection, Enable-Protected

Bit 3130292827262524 
   THRESHOLD[1:0]BURSTLEN[3:0] 
Access R/WR/WR/WR/WR/WR/W 
Reset 000000 
Bit 2322212019181716 
   TRIGACT[1:0]     
Access R/WR/W 
Reset 00 
Bit 15141312111098 
  TRIGSRC[6:0] 
Access R/WR/WR/WR/WR/WR/WR/W 
Reset 0000000 
Bit 76543210 
  RUNSTDBY    ENABLESWRST 
Access R/WR/WR/W 
Reset 000 

Bits 29:28 – THRESHOLD[1:0] FIFO Threshold

These bits define the threshold from which the DMA starts to write to the destination. These bits have no effect in the case of single beat transfers.

These bits are not enable-protected.

ValueNameDescription
0x01BEATDestination write starts after each beat source addess read
0x12BEATSDestination write starts after 2-beats source address read
0x24BEATSDestination write starts after 4-beats source address read
0x38BEATSDestination write starts after 8-beats source address read

Bits 27:24 – BURSTLEN[3:0] Burst Length

These bits define the burst mode.

These bits are not enable-protected.

ValueNameDescription
0x0SINGLESingle-beat burst
0x12BEAT2-beats burst length
0x23BEAT3-beats burst length
0x34BEAT4-beats burst length
0x45BEAT5-beats burst length
0x56BEAT6-beats burst length
0x67BEAT7-beats burst length
0x78BEAT8-beats burst length
0x89BEAT9-beats burst length
0x910BEAT10-beats burst length
0xA11BEAT11-beats burst length
0xB12BEAT12-beats burst length
0xC13BEAT13-beats burst length
0xD14BEAT14-beats burst length
0xE15BEAT15-beats burst length
0xF16BEAT16-beats burst length

Bits 21:20 – TRIGACT[1:0] Trigger Action

These bits define the trigger action used for a transfer.

These bits are not enable-protected.

ValueNameDescription
0x0BLOCKOne trigger required for each block transfer
0x1-Reserved
0x2BURSTOne trigger required for each burst transfer
0x3TRANSACTIONOne trigger required for each transaction

Bits 14:8 – TRIGSRC[6:0] Trigger Source

These bits define the peripheral that will be the source of a trigger.
IndexInstanceChannelPresentation
0x00DISABLE-Only software/event triggers
0x01RTCTIMESTAMPDMA RTC timestamp trigger
0x02DSUDCC0DMAC ID for DCC0 register
0x03DSUDCC1DMAC ID for DCC1 register
0x04SERCOM0RXIndex of DMA RX trigger
0x05SERCOM0TXIndex of DMA TX trigger
0x06SERCOM1RXIndex of DMA RX trigger
0x07SERCOM1TXIndex of DMA TX trigger
0x08SERCOM2RXIndex of DMA RX trigger
0x09SERCOM2TXIndex of DMA TX trigger
0x0ASERCOM3RXIndex of DMA RX trigger
0x0BSERCOM3TXIndex of DMA TX trigger
0x0CSERCOM4RXIndex of DMA RX trigger
0x0DSERCOM4TXIndex of DMA TX trigger
0x0ESERCOM5RXIndex of DMA RX trigger
0x0FSERCOM5TXIndex of DMA TX trigger
0x10SERCOM6RXIndex of DMA RX trigger
0x11SERCOM6TXIndex of DMA TX trigger
0x12SERCOM7RXIndex of DMA RX trigger
0x13SERCOM7TXIndex of DMA TX trigger
0x14CAN0DEBUGDMA CAN Debug Req
0x15CAN1DEBUGDMA CAN Debug Req
0x16TCC0OVFDMA overflow/underflow/retrigger trigger
0x1C - 0x17TCC0MCIndexes of DMA Match/Compare triggers
0x1DTCC1OVFDMA overflow/underflow/retrigger trigger
0x21- 0x1ETCC1MCIndexes of DMA Match/Compare triggers
0x22TCC2OVFDMA overflow/underflow/retrigger trigger
0x25 - 0x23TCC2MCIndexes of DMA Match/Compare triggers
0x26TCC3OVFDMA overflow/underflow/retrigger trigger
0x28 - 0x27TCC3MCIndexes of DMA Match/Compare triggers
0x29TCC4OVFDMA overflow/underflow/retrigger trigger
0x2B - 0x2ATCC4MCIndexes of DMA Match/Compare triggers
0x2CTC0OVFIndexes of DMA Overflow trigger
0x2E - 0x2DTC0MCIndexes of DMA Match/Compare triggers
0x2FTC1OVFIndexes of DMA Overflow trigger
0x31 - 0x30TC1MCIndexes of DMA Match/Compare triggers
0x32TC2OVFIndexes of DMA Overflow trigger
0x34 - 0x33TC2MCIndexes of DMA Match/Compare triggers
0x35TC3OVFIndexes of DMA Overflow trigger
0x37 - 0x36TC3MCIndexes of DMA Match/Compare triggers
0x38TC4OVFIndexes of DMA Overflow trigger
0x3A - 0x39TC4MCIndexes of DMA Match/Compare triggers
0x3BTC5OVFIndexes of DMA Overflow trigger
0x3D:0x3CTC5MCIndexes of DMA Match/Compare triggers
0x3ETC6OVFIndexes of DMA Overflow trigger
0x40 - 0x3FTC6MCIndexes of DMA Match/Compare triggers
0x41TC7OVFIndexes of DMA Overflow trigger
0x43 - 0x41TC7MCIndexes of DMA Match/Compare triggers
0x44ADC0RESRDYindex of DMA RESRDY trigger
0x45ADC0SEQIndex of DMA SEQ trigger
0x46ADC1RESRDYIndex of DMA RESRDY trigger
0x47ADC1SEQIndex of DMA SEQ trigger
0x49 - 0x48DACEMPTYDMA DAC Empty Req
0x4B - 0x4ADACRESRDYDMA DAC Result Ready Req
0x4D - 0x4CI2SRXIndexes of DMA RX triggers
0x4F - 0x4EI2STXIndexes of DMA TX triggers
0x50PCCRXIndexes of PCC RX trigger
0x51AESWRDMA DATA Write trigger
0x52AESRDDMA DATA Read trigger
0x53QSPIRXIndexes of QSPI RX trigger
0x54QSPITXIndexes of QSPI TX trigger

Bit 6 – RUNSTDBY Channel run in standby

This bit is used to keep the DMAC channel running in standby mode.

This bit is not enable-protected.

ValueDescription
0The DMAC channel is halted in standby.
1The DMAC channel continues to run in standby.

Bit 1 – ENABLE Channel Enable

Writing a '0' to this bit during an ongoing transfer, the bit will not be cleared until the internal data transfer buffer is empty and the DMA transfer is aborted. The internal data transfer buffer will be empty once the ongoing burst transfer is completed.

Writing a '1' to this bit will enable the DMA channel.

This bit is not enable-protected.

ValueDescription
0DMA channel is disabled.
1DMA channel is enabled.

Bit 0 – SWRST Channel Software Reset

Writing a '0' to this bit has no effect.

Writing a '1' to this bit resets the channel registers to their initial state. The bit can be set when the channel is disabled (ENABLE=0). Writing a '1' to this bit will be ignored as long as ENABLE=1. This bit is automatically cleared when the reset is completed.

ValueDescription
0There is no reset operation ongoing.
1The reset operation is ongoing.