\n
address_offset : 0x0 Bytes (0x0)
size : 0x1000 byte (0x0)
mem_usage : registers
protection : not protected
DMA control.
address_offset : 0x0 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
ENABLE : DMA controller master enable.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. The DMA controller is disabled. This
clears any triggers that were asserted at the point when
disabled, but does not prevent re-triggering when the DMA
controller is re-enabled.
1 : ENABLED
Enabled. The DMA controller is
enabled.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 32 (32 bit)
Configuration register for DMA channel 0.
address_offset : 0x1030 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
PERIPHREQEN : Peripheral request Enable. If a DMA channel is used to perform a memory-to-memory move, any peripheral DMA request associated with that channel can be disabled to prevent any interaction between the peripheral and the DMA controller.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Peripheral DMA requests are
disabled.
1 : ENABLED
Enabled. Peripheral DMA requests are
enabled.
End of enumeration elements list.
HWTRIGEN : Hardware Triggering Enable for this channel.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Hardware triggering is not
used.
1 : ENABLED
Enabled. Use hardware triggering.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 2 - 5 (4 bit)
TRIGPOL : Trigger Polarity. Selects the polarity of a hardware trigger for this channel.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : ACTIVE_LOW__FALLING
Active low - falling edge. Hardware trigger is
active low or falling edge triggered, based on
TRIGTYPE.
1 : ACTIVE_HIGH__RISING
Active high - rising edge. Hardware trigger is
active high or rising edge triggered, based on
TRIGTYPE.
End of enumeration elements list.
TRIGTYPE : Trigger Type. Selects hardware trigger as edge triggered or level triggered.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : EDGE
Edge. Hardware trigger is edge triggered. Transfers
will be initiated and completed, as specified for a single
trigger.
1 : LEVEL
Level. Hardware trigger is level triggered. Note
that when level triggering without burst (BURSTPOWER = 0) is
selected, only hardware triggers should be used on that
channel. Transfers continue as long as the trigger level is
asserted. Once the trigger is de-asserted, the transfer will
be paused until the trigger is, again, asserted. However,
the transfer will not be paused until any remaining
transfers within the current BURSTPOWER length are
completed.
End of enumeration elements list.
TRIGBURST : Trigger Burst. Selects whether hardware triggers cause a single or burst transfer.
bits : 6 - 12 (7 bit)
Enumeration: ENUM
0 : SINGLE_TRANSFER
Single transfer. Hardware trigger causes a single
transfer.
1 : BURST_TRANSFER
Burst transfer. When the trigger for this channel
is set to edge triggered, a hardware trigger causes a burst
transfer, as defined by BURSTPOWER. When the trigger for
this channel is set to level triggered, a hardware trigger
causes transfers to continue as long as the trigger is
asserted, unless the transfer is complete.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 7 - 14 (8 bit)
BURSTPOWER : Burst Power is used in two ways. It always selects the address wrap size when SRCBURSTWRAP and/or DSTBURSTWRAP modes are selected (see descriptions elsewhere in this register). When the TRIGBURST field elsewhere in this register = 1, Burst Power selects how many transfers are performed for each DMA trigger. This can be used, for example, with peripherals that contain a FIFO that can initiate a DMA operation when the FIFO reaches a certain level. 0000: Burst size = 1 (20). 0001: Burst size = 2 (21). 0010: Burst size = 4 (22). ... 1010: Burst size = 1024 (210). This corresponds to the maximum supported transfer count. others: not supported. The total transfer length as defined in the XFERCOUNT bits in the XFERCFG register must be an even multiple of the burst size.
bits : 8 - 19 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
SRCBURSTWRAP : Source Burst Wrap. When enabled, the source data address for the DMA is wrapped, meaning that the source address range for each burst will be the same. As an example, this could be used to read several sequential registers from a peripheral for each DMA burst, reading the same registers again for each burst.
bits : 14 - 28 (15 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Source burst wrapping is not enabled for
this DMA channel.
1 : ENABLED
Enabled. Source burst wrapping is enabled for this
DMA channel.
End of enumeration elements list.
DSTBURSTWRAP : Destination Burst Wrap. When enabled, the destination data address for the DMA is wrapped, meaning that the destination address range for each burst will be the same. As an example, this could be used to write several sequential registers to a peripheral for each DMA burst, writing the same registers again for each burst.
bits : 15 - 30 (16 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Destination burst wrapping is not enabled
for this DMA channel.
1 : ENABLED
Enabled. Destination burst wrapping is enabled for
this DMA channel.
End of enumeration elements list.
CHPRIORITY : Priority of this channel when multiple DMA requests are pending. Eight priority levels are supported. 0x0 = highest priority. 0x7 = lowest priority.
bits : 16 - 34 (19 bit)
Control and status register for DMA channel 0.
address_offset : 0x1040 Bytes (0x0)
access : read-only
reset_value : 0x0
reset_Mask : 0x0
VALIDPENDING : Valid pending flag for this channel. This bit is set when a 1 is written to the corresponding bit in the related SETVALID register when CFGVALID = 1 for the same channel.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect. No effect on DMA
operation.
1 : VALID_PENDING
Valid pending.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
TRIG : Trigger flag. Indicates that the trigger for this channel is currently set. This bit is cleared at the end of an entire transfer or upon reload when CLRTRIG = 1.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_TRIGGERED
Not triggered. The trigger for this DMA channel is
not set. DMA operations will not be carried
out.
1 : TRIGGERED
Triggered. The trigger for this DMA channel is set.
DMA operations will be carried out.
End of enumeration elements list.
Transfer configuration register for DMA channel 0.
address_offset : 0x1050 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CFGVALID : Configuration Valid flag. This bit indicates whether the current channel descriptor is valid and can potentially be acted upon, if all other activation criteria are fulfilled.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NOT_VALID
Not valid. The channel descriptor is not considered
valid until validated by an associated SETVALID0
setting.
1 : VALID
Valid. The current channel descriptor is considered
valid.
End of enumeration elements list.
RELOAD : Indicates whether the channel's control structure will be reloaded when the current descriptor is exhausted. Reloading allows ping-pong and linked transfers.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Do not reload the channels' control
structure when the current descriptor is
exhausted.
1 : ENABLED
Enabled. Reload the channels' control structure
when the current descriptor is exhausted.
End of enumeration elements list.
SWTRIG : Software Trigger.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_SET
Not set. When written by software, the trigger for
this channel is not set. A new trigger, as defined by the
HWTRIGEN, TRIGPOL, and TRIGTYPE will be needed to start the
channel.
1 : SET
Set, When written by software, the trigger for this
channel is set immediately. This feature should not be used
with level triggering when TRIGBURST = 0.
End of enumeration elements list.
CLRTRIG : Clear Trigger.
bits : 3 - 6 (4 bit)
Enumeration: ENUM
0 : NOT_CLEARED
Not cleared. The trigger is not cleared when this
descriptor is exhausted. If there is a reload, the next
descriptor will be started.
1 : CLEARED
Cleared. The trigger is cleared when this
descriptor is exhausted.
End of enumeration elements list.
SETINTA : Set Interrupt flag A for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTA flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
SETINTB : Set Interrupt flag B for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTB flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 6 - 13 (8 bit)
WIDTH : Transfer width used for this DMA channel.
bits : 8 - 17 (10 bit)
Enumeration: ENUM
0x0 : 8_BIT
8-bit. 8-bit transfers are performed (8-bit source
reads and destination writes).
0x1 : 16_BIT
16-bit. 6-bit transfers are performed (16-bit
source reads and destination writes).
0x2 : 32_BIT
32-bit. 32-bit transfers are performed (32-bit
source reads and destination writes).
0x3 : RESERVED
Reserved. Reserved setting, do not
use.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
SRCINC : Determines whether the source address is incremented for each DMA transfer.
bits : 12 - 25 (14 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The source address is not incremented
for each transfer. This is the usual case when the source is
a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The source address is incremented by the
amount specified by Width for each transfer. This is the
usual case when the source is memory.
0x2 : 2_X_WIDTH
2 x width. The source address is incremented by 2
times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The source address is incremented by 4
times the amount specified by Width for each
transfer.
End of enumeration elements list.
DSTINC : Determines whether the destination address is incremented for each DMA transfer.
bits : 14 - 29 (16 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The destination address is not
incremented for each transfer. This is the usual case when
the destination is a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The destination address is incremented
by the amount specified by Width for each transfer. This is
the usual case when the destination is memory.
0x2 : 2_X_WIDTH
2 x width. The destination address is incremented
by 2 times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The destination address is incremented
by 4 times the amount specified by Width for each
transfer.
End of enumeration elements list.
XFERCOUNT : Total number of transfers to be performed, minus 1 encoded. The number of bytes transferred is: (XFERCOUNT + 1) x data width (as defined by the WIDTH field). The DMA controller uses this bit field during transfer to count down. Hence, it cannot be used by software to read back the size of the transfer, for instance, in an interrupt handler. 0x0 = a total of 1 transfer will be performed. 0x1 = a total of 2 transfers will be performed. ... 0x3FF = a total of 1,024 transfers will be performed.
bits : 16 - 41 (26 bit)
Configuration register for DMA channel 0.
address_offset : 0x1460 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
PERIPHREQEN : Peripheral request Enable. If a DMA channel is used to perform a memory-to-memory move, any peripheral DMA request associated with that channel can be disabled to prevent any interaction between the peripheral and the DMA controller.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Peripheral DMA requests are
disabled.
1 : ENABLED
Enabled. Peripheral DMA requests are
enabled.
End of enumeration elements list.
HWTRIGEN : Hardware Triggering Enable for this channel.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Hardware triggering is not
used.
1 : ENABLED
Enabled. Use hardware triggering.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 2 - 5 (4 bit)
TRIGPOL : Trigger Polarity. Selects the polarity of a hardware trigger for this channel.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : ACTIVE_LOW__FALLING
Active low - falling edge. Hardware trigger is
active low or falling edge triggered, based on
TRIGTYPE.
1 : ACTIVE_HIGH__RISING
Active high - rising edge. Hardware trigger is
active high or rising edge triggered, based on
TRIGTYPE.
End of enumeration elements list.
TRIGTYPE : Trigger Type. Selects hardware trigger as edge triggered or level triggered.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : EDGE
Edge. Hardware trigger is edge triggered. Transfers
will be initiated and completed, as specified for a single
trigger.
1 : LEVEL
Level. Hardware trigger is level triggered. Note
that when level triggering without burst (BURSTPOWER = 0) is
selected, only hardware triggers should be used on that
channel. Transfers continue as long as the trigger level is
asserted. Once the trigger is de-asserted, the transfer will
be paused until the trigger is, again, asserted. However,
the transfer will not be paused until any remaining
transfers within the current BURSTPOWER length are
completed.
End of enumeration elements list.
TRIGBURST : Trigger Burst. Selects whether hardware triggers cause a single or burst transfer.
bits : 6 - 12 (7 bit)
Enumeration: ENUM
0 : SINGLE_TRANSFER
Single transfer. Hardware trigger causes a single
transfer.
1 : BURST_TRANSFER
Burst transfer. When the trigger for this channel
is set to edge triggered, a hardware trigger causes a burst
transfer, as defined by BURSTPOWER. When the trigger for
this channel is set to level triggered, a hardware trigger
causes transfers to continue as long as the trigger is
asserted, unless the transfer is complete.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 7 - 14 (8 bit)
BURSTPOWER : Burst Power is used in two ways. It always selects the address wrap size when SRCBURSTWRAP and/or DSTBURSTWRAP modes are selected (see descriptions elsewhere in this register). When the TRIGBURST field elsewhere in this register = 1, Burst Power selects how many transfers are performed for each DMA trigger. This can be used, for example, with peripherals that contain a FIFO that can initiate a DMA operation when the FIFO reaches a certain level. 0000: Burst size = 1 (20). 0001: Burst size = 2 (21). 0010: Burst size = 4 (22). ... 1010: Burst size = 1024 (210). This corresponds to the maximum supported transfer count. others: not supported. The total transfer length as defined in the XFERCOUNT bits in the XFERCFG register must be an even multiple of the burst size.
bits : 8 - 19 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
SRCBURSTWRAP : Source Burst Wrap. When enabled, the source data address for the DMA is wrapped, meaning that the source address range for each burst will be the same. As an example, this could be used to read several sequential registers from a peripheral for each DMA burst, reading the same registers again for each burst.
bits : 14 - 28 (15 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Source burst wrapping is not enabled for
this DMA channel.
1 : ENABLED
Enabled. Source burst wrapping is enabled for this
DMA channel.
End of enumeration elements list.
DSTBURSTWRAP : Destination Burst Wrap. When enabled, the destination data address for the DMA is wrapped, meaning that the destination address range for each burst will be the same. As an example, this could be used to write several sequential registers to a peripheral for each DMA burst, writing the same registers again for each burst.
bits : 15 - 30 (16 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Destination burst wrapping is not enabled
for this DMA channel.
1 : ENABLED
Enabled. Destination burst wrapping is enabled for
this DMA channel.
End of enumeration elements list.
CHPRIORITY : Priority of this channel when multiple DMA requests are pending. Eight priority levels are supported. 0x0 = highest priority. 0x7 = lowest priority.
bits : 16 - 34 (19 bit)
Control and status register for DMA channel 0.
address_offset : 0x1474 Bytes (0x0)
access : read-only
reset_value : 0x0
reset_Mask : 0x0
VALIDPENDING : Valid pending flag for this channel. This bit is set when a 1 is written to the corresponding bit in the related SETVALID register when CFGVALID = 1 for the same channel.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect. No effect on DMA
operation.
1 : VALID_PENDING
Valid pending.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
TRIG : Trigger flag. Indicates that the trigger for this channel is currently set. This bit is cleared at the end of an entire transfer or upon reload when CLRTRIG = 1.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_TRIGGERED
Not triggered. The trigger for this DMA channel is
not set. DMA operations will not be carried
out.
1 : TRIGGERED
Triggered. The trigger for this DMA channel is set.
DMA operations will be carried out.
End of enumeration elements list.
Transfer configuration register for DMA channel 0.
address_offset : 0x1488 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CFGVALID : Configuration Valid flag. This bit indicates whether the current channel descriptor is valid and can potentially be acted upon, if all other activation criteria are fulfilled.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NOT_VALID
Not valid. The channel descriptor is not considered
valid until validated by an associated SETVALID0
setting.
1 : VALID
Valid. The current channel descriptor is considered
valid.
End of enumeration elements list.
RELOAD : Indicates whether the channel's control structure will be reloaded when the current descriptor is exhausted. Reloading allows ping-pong and linked transfers.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Do not reload the channels' control
structure when the current descriptor is
exhausted.
1 : ENABLED
Enabled. Reload the channels' control structure
when the current descriptor is exhausted.
End of enumeration elements list.
SWTRIG : Software Trigger.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_SET
Not set. When written by software, the trigger for
this channel is not set. A new trigger, as defined by the
HWTRIGEN, TRIGPOL, and TRIGTYPE will be needed to start the
channel.
1 : SET
Set, When written by software, the trigger for this
channel is set immediately. This feature should not be used
with level triggering when TRIGBURST = 0.
End of enumeration elements list.
CLRTRIG : Clear Trigger.
bits : 3 - 6 (4 bit)
Enumeration: ENUM
0 : NOT_CLEARED
Not cleared. The trigger is not cleared when this
descriptor is exhausted. If there is a reload, the next
descriptor will be started.
1 : CLEARED
Cleared. The trigger is cleared when this
descriptor is exhausted.
End of enumeration elements list.
SETINTA : Set Interrupt flag A for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTA flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
SETINTB : Set Interrupt flag B for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTB flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 6 - 13 (8 bit)
WIDTH : Transfer width used for this DMA channel.
bits : 8 - 17 (10 bit)
Enumeration: ENUM
0x0 : 8_BIT
8-bit. 8-bit transfers are performed (8-bit source
reads and destination writes).
0x1 : 16_BIT
16-bit. 6-bit transfers are performed (16-bit
source reads and destination writes).
0x2 : 32_BIT
32-bit. 32-bit transfers are performed (32-bit
source reads and destination writes).
0x3 : RESERVED
Reserved. Reserved setting, do not
use.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
SRCINC : Determines whether the source address is incremented for each DMA transfer.
bits : 12 - 25 (14 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The source address is not incremented
for each transfer. This is the usual case when the source is
a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The source address is incremented by the
amount specified by Width for each transfer. This is the
usual case when the source is memory.
0x2 : 2_X_WIDTH
2 x width. The source address is incremented by 2
times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The source address is incremented by 4
times the amount specified by Width for each
transfer.
End of enumeration elements list.
DSTINC : Determines whether the destination address is incremented for each DMA transfer.
bits : 14 - 29 (16 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The destination address is not
incremented for each transfer. This is the usual case when
the destination is a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The destination address is incremented
by the amount specified by Width for each transfer. This is
the usual case when the destination is memory.
0x2 : 2_X_WIDTH
2 x width. The destination address is incremented
by 2 times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The destination address is incremented
by 4 times the amount specified by Width for each
transfer.
End of enumeration elements list.
XFERCOUNT : Total number of transfers to be performed, minus 1 encoded. The number of bytes transferred is: (XFERCOUNT + 1) x data width (as defined by the WIDTH field). The DMA controller uses this bit field during transfer to count down. Hence, it cannot be used by software to read back the size of the transfer, for instance, in an interrupt handler. 0x0 = a total of 1 transfer will be performed. 0x1 = a total of 2 transfers will be performed. ... 0x3FF = a total of 1,024 transfers will be performed.
bits : 16 - 41 (26 bit)
Configuration register for DMA channel 0.
address_offset : 0x18A0 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
PERIPHREQEN : Peripheral request Enable. If a DMA channel is used to perform a memory-to-memory move, any peripheral DMA request associated with that channel can be disabled to prevent any interaction between the peripheral and the DMA controller.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Peripheral DMA requests are
disabled.
1 : ENABLED
Enabled. Peripheral DMA requests are
enabled.
End of enumeration elements list.
HWTRIGEN : Hardware Triggering Enable for this channel.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Hardware triggering is not
used.
1 : ENABLED
Enabled. Use hardware triggering.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 2 - 5 (4 bit)
TRIGPOL : Trigger Polarity. Selects the polarity of a hardware trigger for this channel.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : ACTIVE_LOW__FALLING
Active low - falling edge. Hardware trigger is
active low or falling edge triggered, based on
TRIGTYPE.
1 : ACTIVE_HIGH__RISING
Active high - rising edge. Hardware trigger is
active high or rising edge triggered, based on
TRIGTYPE.
End of enumeration elements list.
TRIGTYPE : Trigger Type. Selects hardware trigger as edge triggered or level triggered.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : EDGE
Edge. Hardware trigger is edge triggered. Transfers
will be initiated and completed, as specified for a single
trigger.
1 : LEVEL
Level. Hardware trigger is level triggered. Note
that when level triggering without burst (BURSTPOWER = 0) is
selected, only hardware triggers should be used on that
channel. Transfers continue as long as the trigger level is
asserted. Once the trigger is de-asserted, the transfer will
be paused until the trigger is, again, asserted. However,
the transfer will not be paused until any remaining
transfers within the current BURSTPOWER length are
completed.
End of enumeration elements list.
TRIGBURST : Trigger Burst. Selects whether hardware triggers cause a single or burst transfer.
bits : 6 - 12 (7 bit)
Enumeration: ENUM
0 : SINGLE_TRANSFER
Single transfer. Hardware trigger causes a single
transfer.
1 : BURST_TRANSFER
Burst transfer. When the trigger for this channel
is set to edge triggered, a hardware trigger causes a burst
transfer, as defined by BURSTPOWER. When the trigger for
this channel is set to level triggered, a hardware trigger
causes transfers to continue as long as the trigger is
asserted, unless the transfer is complete.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 7 - 14 (8 bit)
BURSTPOWER : Burst Power is used in two ways. It always selects the address wrap size when SRCBURSTWRAP and/or DSTBURSTWRAP modes are selected (see descriptions elsewhere in this register). When the TRIGBURST field elsewhere in this register = 1, Burst Power selects how many transfers are performed for each DMA trigger. This can be used, for example, with peripherals that contain a FIFO that can initiate a DMA operation when the FIFO reaches a certain level. 0000: Burst size = 1 (20). 0001: Burst size = 2 (21). 0010: Burst size = 4 (22). ... 1010: Burst size = 1024 (210). This corresponds to the maximum supported transfer count. others: not supported. The total transfer length as defined in the XFERCOUNT bits in the XFERCFG register must be an even multiple of the burst size.
bits : 8 - 19 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
SRCBURSTWRAP : Source Burst Wrap. When enabled, the source data address for the DMA is wrapped, meaning that the source address range for each burst will be the same. As an example, this could be used to read several sequential registers from a peripheral for each DMA burst, reading the same registers again for each burst.
bits : 14 - 28 (15 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Source burst wrapping is not enabled for
this DMA channel.
1 : ENABLED
Enabled. Source burst wrapping is enabled for this
DMA channel.
End of enumeration elements list.
DSTBURSTWRAP : Destination Burst Wrap. When enabled, the destination data address for the DMA is wrapped, meaning that the destination address range for each burst will be the same. As an example, this could be used to write several sequential registers to a peripheral for each DMA burst, writing the same registers again for each burst.
bits : 15 - 30 (16 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Destination burst wrapping is not enabled
for this DMA channel.
1 : ENABLED
Enabled. Destination burst wrapping is enabled for
this DMA channel.
End of enumeration elements list.
CHPRIORITY : Priority of this channel when multiple DMA requests are pending. Eight priority levels are supported. 0x0 = highest priority. 0x7 = lowest priority.
bits : 16 - 34 (19 bit)
Control and status register for DMA channel 0.
address_offset : 0x18B8 Bytes (0x0)
access : read-only
reset_value : 0x0
reset_Mask : 0x0
VALIDPENDING : Valid pending flag for this channel. This bit is set when a 1 is written to the corresponding bit in the related SETVALID register when CFGVALID = 1 for the same channel.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect. No effect on DMA
operation.
1 : VALID_PENDING
Valid pending.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
TRIG : Trigger flag. Indicates that the trigger for this channel is currently set. This bit is cleared at the end of an entire transfer or upon reload when CLRTRIG = 1.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_TRIGGERED
Not triggered. The trigger for this DMA channel is
not set. DMA operations will not be carried
out.
1 : TRIGGERED
Triggered. The trigger for this DMA channel is set.
DMA operations will be carried out.
End of enumeration elements list.
Transfer configuration register for DMA channel 0.
address_offset : 0x18D0 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CFGVALID : Configuration Valid flag. This bit indicates whether the current channel descriptor is valid and can potentially be acted upon, if all other activation criteria are fulfilled.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NOT_VALID
Not valid. The channel descriptor is not considered
valid until validated by an associated SETVALID0
setting.
1 : VALID
Valid. The current channel descriptor is considered
valid.
End of enumeration elements list.
RELOAD : Indicates whether the channel's control structure will be reloaded when the current descriptor is exhausted. Reloading allows ping-pong and linked transfers.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Do not reload the channels' control
structure when the current descriptor is
exhausted.
1 : ENABLED
Enabled. Reload the channels' control structure
when the current descriptor is exhausted.
End of enumeration elements list.
SWTRIG : Software Trigger.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_SET
Not set. When written by software, the trigger for
this channel is not set. A new trigger, as defined by the
HWTRIGEN, TRIGPOL, and TRIGTYPE will be needed to start the
channel.
1 : SET
Set, When written by software, the trigger for this
channel is set immediately. This feature should not be used
with level triggering when TRIGBURST = 0.
End of enumeration elements list.
CLRTRIG : Clear Trigger.
bits : 3 - 6 (4 bit)
Enumeration: ENUM
0 : NOT_CLEARED
Not cleared. The trigger is not cleared when this
descriptor is exhausted. If there is a reload, the next
descriptor will be started.
1 : CLEARED
Cleared. The trigger is cleared when this
descriptor is exhausted.
End of enumeration elements list.
SETINTA : Set Interrupt flag A for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTA flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
SETINTB : Set Interrupt flag B for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTB flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 6 - 13 (8 bit)
WIDTH : Transfer width used for this DMA channel.
bits : 8 - 17 (10 bit)
Enumeration: ENUM
0x0 : 8_BIT
8-bit. 8-bit transfers are performed (8-bit source
reads and destination writes).
0x1 : 16_BIT
16-bit. 6-bit transfers are performed (16-bit
source reads and destination writes).
0x2 : 32_BIT
32-bit. 32-bit transfers are performed (32-bit
source reads and destination writes).
0x3 : RESERVED
Reserved. Reserved setting, do not
use.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
SRCINC : Determines whether the source address is incremented for each DMA transfer.
bits : 12 - 25 (14 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The source address is not incremented
for each transfer. This is the usual case when the source is
a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The source address is incremented by the
amount specified by Width for each transfer. This is the
usual case when the source is memory.
0x2 : 2_X_WIDTH
2 x width. The source address is incremented by 2
times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The source address is incremented by 4
times the amount specified by Width for each
transfer.
End of enumeration elements list.
DSTINC : Determines whether the destination address is incremented for each DMA transfer.
bits : 14 - 29 (16 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The destination address is not
incremented for each transfer. This is the usual case when
the destination is a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The destination address is incremented
by the amount specified by Width for each transfer. This is
the usual case when the destination is memory.
0x2 : 2_X_WIDTH
2 x width. The destination address is incremented
by 2 times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The destination address is incremented
by 4 times the amount specified by Width for each
transfer.
End of enumeration elements list.
XFERCOUNT : Total number of transfers to be performed, minus 1 encoded. The number of bytes transferred is: (XFERCOUNT + 1) x data width (as defined by the WIDTH field). The DMA controller uses this bit field during transfer to count down. Hence, it cannot be used by software to read back the size of the transfer, for instance, in an interrupt handler. 0x0 = a total of 1 transfer will be performed. 0x1 = a total of 2 transfers will be performed. ... 0x3FF = a total of 1,024 transfers will be performed.
bits : 16 - 41 (26 bit)
Configuration register for DMA channel 0.
address_offset : 0x1CF0 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
PERIPHREQEN : Peripheral request Enable. If a DMA channel is used to perform a memory-to-memory move, any peripheral DMA request associated with that channel can be disabled to prevent any interaction between the peripheral and the DMA controller.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Peripheral DMA requests are
disabled.
1 : ENABLED
Enabled. Peripheral DMA requests are
enabled.
End of enumeration elements list.
HWTRIGEN : Hardware Triggering Enable for this channel.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Hardware triggering is not
used.
1 : ENABLED
Enabled. Use hardware triggering.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 2 - 5 (4 bit)
TRIGPOL : Trigger Polarity. Selects the polarity of a hardware trigger for this channel.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : ACTIVE_LOW__FALLING
Active low - falling edge. Hardware trigger is
active low or falling edge triggered, based on
TRIGTYPE.
1 : ACTIVE_HIGH__RISING
Active high - rising edge. Hardware trigger is
active high or rising edge triggered, based on
TRIGTYPE.
End of enumeration elements list.
TRIGTYPE : Trigger Type. Selects hardware trigger as edge triggered or level triggered.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : EDGE
Edge. Hardware trigger is edge triggered. Transfers
will be initiated and completed, as specified for a single
trigger.
1 : LEVEL
Level. Hardware trigger is level triggered. Note
that when level triggering without burst (BURSTPOWER = 0) is
selected, only hardware triggers should be used on that
channel. Transfers continue as long as the trigger level is
asserted. Once the trigger is de-asserted, the transfer will
be paused until the trigger is, again, asserted. However,
the transfer will not be paused until any remaining
transfers within the current BURSTPOWER length are
completed.
End of enumeration elements list.
TRIGBURST : Trigger Burst. Selects whether hardware triggers cause a single or burst transfer.
bits : 6 - 12 (7 bit)
Enumeration: ENUM
0 : SINGLE_TRANSFER
Single transfer. Hardware trigger causes a single
transfer.
1 : BURST_TRANSFER
Burst transfer. When the trigger for this channel
is set to edge triggered, a hardware trigger causes a burst
transfer, as defined by BURSTPOWER. When the trigger for
this channel is set to level triggered, a hardware trigger
causes transfers to continue as long as the trigger is
asserted, unless the transfer is complete.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 7 - 14 (8 bit)
BURSTPOWER : Burst Power is used in two ways. It always selects the address wrap size when SRCBURSTWRAP and/or DSTBURSTWRAP modes are selected (see descriptions elsewhere in this register). When the TRIGBURST field elsewhere in this register = 1, Burst Power selects how many transfers are performed for each DMA trigger. This can be used, for example, with peripherals that contain a FIFO that can initiate a DMA operation when the FIFO reaches a certain level. 0000: Burst size = 1 (20). 0001: Burst size = 2 (21). 0010: Burst size = 4 (22). ... 1010: Burst size = 1024 (210). This corresponds to the maximum supported transfer count. others: not supported. The total transfer length as defined in the XFERCOUNT bits in the XFERCFG register must be an even multiple of the burst size.
bits : 8 - 19 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
SRCBURSTWRAP : Source Burst Wrap. When enabled, the source data address for the DMA is wrapped, meaning that the source address range for each burst will be the same. As an example, this could be used to read several sequential registers from a peripheral for each DMA burst, reading the same registers again for each burst.
bits : 14 - 28 (15 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Source burst wrapping is not enabled for
this DMA channel.
1 : ENABLED
Enabled. Source burst wrapping is enabled for this
DMA channel.
End of enumeration elements list.
DSTBURSTWRAP : Destination Burst Wrap. When enabled, the destination data address for the DMA is wrapped, meaning that the destination address range for each burst will be the same. As an example, this could be used to write several sequential registers to a peripheral for each DMA burst, writing the same registers again for each burst.
bits : 15 - 30 (16 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Destination burst wrapping is not enabled
for this DMA channel.
1 : ENABLED
Enabled. Destination burst wrapping is enabled for
this DMA channel.
End of enumeration elements list.
CHPRIORITY : Priority of this channel when multiple DMA requests are pending. Eight priority levels are supported. 0x0 = highest priority. 0x7 = lowest priority.
bits : 16 - 34 (19 bit)
Control and status register for DMA channel 0.
address_offset : 0x1D0C Bytes (0x0)
access : read-only
reset_value : 0x0
reset_Mask : 0x0
VALIDPENDING : Valid pending flag for this channel. This bit is set when a 1 is written to the corresponding bit in the related SETVALID register when CFGVALID = 1 for the same channel.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect. No effect on DMA
operation.
1 : VALID_PENDING
Valid pending.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
TRIG : Trigger flag. Indicates that the trigger for this channel is currently set. This bit is cleared at the end of an entire transfer or upon reload when CLRTRIG = 1.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_TRIGGERED
Not triggered. The trigger for this DMA channel is
not set. DMA operations will not be carried
out.
1 : TRIGGERED
Triggered. The trigger for this DMA channel is set.
DMA operations will be carried out.
End of enumeration elements list.
Transfer configuration register for DMA channel 0.
address_offset : 0x1D28 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CFGVALID : Configuration Valid flag. This bit indicates whether the current channel descriptor is valid and can potentially be acted upon, if all other activation criteria are fulfilled.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NOT_VALID
Not valid. The channel descriptor is not considered
valid until validated by an associated SETVALID0
setting.
1 : VALID
Valid. The current channel descriptor is considered
valid.
End of enumeration elements list.
RELOAD : Indicates whether the channel's control structure will be reloaded when the current descriptor is exhausted. Reloading allows ping-pong and linked transfers.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Do not reload the channels' control
structure when the current descriptor is
exhausted.
1 : ENABLED
Enabled. Reload the channels' control structure
when the current descriptor is exhausted.
End of enumeration elements list.
SWTRIG : Software Trigger.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_SET
Not set. When written by software, the trigger for
this channel is not set. A new trigger, as defined by the
HWTRIGEN, TRIGPOL, and TRIGTYPE will be needed to start the
channel.
1 : SET
Set, When written by software, the trigger for this
channel is set immediately. This feature should not be used
with level triggering when TRIGBURST = 0.
End of enumeration elements list.
CLRTRIG : Clear Trigger.
bits : 3 - 6 (4 bit)
Enumeration: ENUM
0 : NOT_CLEARED
Not cleared. The trigger is not cleared when this
descriptor is exhausted. If there is a reload, the next
descriptor will be started.
1 : CLEARED
Cleared. The trigger is cleared when this
descriptor is exhausted.
End of enumeration elements list.
SETINTA : Set Interrupt flag A for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTA flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
SETINTB : Set Interrupt flag B for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTB flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 6 - 13 (8 bit)
WIDTH : Transfer width used for this DMA channel.
bits : 8 - 17 (10 bit)
Enumeration: ENUM
0x0 : 8_BIT
8-bit. 8-bit transfers are performed (8-bit source
reads and destination writes).
0x1 : 16_BIT
16-bit. 6-bit transfers are performed (16-bit
source reads and destination writes).
0x2 : 32_BIT
32-bit. 32-bit transfers are performed (32-bit
source reads and destination writes).
0x3 : RESERVED
Reserved. Reserved setting, do not
use.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
SRCINC : Determines whether the source address is incremented for each DMA transfer.
bits : 12 - 25 (14 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The source address is not incremented
for each transfer. This is the usual case when the source is
a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The source address is incremented by the
amount specified by Width for each transfer. This is the
usual case when the source is memory.
0x2 : 2_X_WIDTH
2 x width. The source address is incremented by 2
times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The source address is incremented by 4
times the amount specified by Width for each
transfer.
End of enumeration elements list.
DSTINC : Determines whether the destination address is incremented for each DMA transfer.
bits : 14 - 29 (16 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The destination address is not
incremented for each transfer. This is the usual case when
the destination is a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The destination address is incremented
by the amount specified by Width for each transfer. This is
the usual case when the destination is memory.
0x2 : 2_X_WIDTH
2 x width. The destination address is incremented
by 2 times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The destination address is incremented
by 4 times the amount specified by Width for each
transfer.
End of enumeration elements list.
XFERCOUNT : Total number of transfers to be performed, minus 1 encoded. The number of bytes transferred is: (XFERCOUNT + 1) x data width (as defined by the WIDTH field). The DMA controller uses this bit field during transfer to count down. Hence, it cannot be used by software to read back the size of the transfer, for instance, in an interrupt handler. 0x0 = a total of 1 transfer will be performed. 0x1 = a total of 2 transfers will be performed. ... 0x3FF = a total of 1,024 transfers will be performed.
bits : 16 - 41 (26 bit)
Channel Enable read and Set for all DMA channels.
address_offset : 0x20 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
ENA : Enable for DMA channels. Bit n enables or disables DMA channel n. 0 = disabled. 1 = enabled.
bits : 0 - 21 (22 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 22 - 53 (32 bit)
Configuration register for DMA channel 0.
address_offset : 0x2150 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
PERIPHREQEN : Peripheral request Enable. If a DMA channel is used to perform a memory-to-memory move, any peripheral DMA request associated with that channel can be disabled to prevent any interaction between the peripheral and the DMA controller.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Peripheral DMA requests are
disabled.
1 : ENABLED
Enabled. Peripheral DMA requests are
enabled.
End of enumeration elements list.
HWTRIGEN : Hardware Triggering Enable for this channel.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Hardware triggering is not
used.
1 : ENABLED
Enabled. Use hardware triggering.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 2 - 5 (4 bit)
TRIGPOL : Trigger Polarity. Selects the polarity of a hardware trigger for this channel.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : ACTIVE_LOW__FALLING
Active low - falling edge. Hardware trigger is
active low or falling edge triggered, based on
TRIGTYPE.
1 : ACTIVE_HIGH__RISING
Active high - rising edge. Hardware trigger is
active high or rising edge triggered, based on
TRIGTYPE.
End of enumeration elements list.
TRIGTYPE : Trigger Type. Selects hardware trigger as edge triggered or level triggered.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : EDGE
Edge. Hardware trigger is edge triggered. Transfers
will be initiated and completed, as specified for a single
trigger.
1 : LEVEL
Level. Hardware trigger is level triggered. Note
that when level triggering without burst (BURSTPOWER = 0) is
selected, only hardware triggers should be used on that
channel. Transfers continue as long as the trigger level is
asserted. Once the trigger is de-asserted, the transfer will
be paused until the trigger is, again, asserted. However,
the transfer will not be paused until any remaining
transfers within the current BURSTPOWER length are
completed.
End of enumeration elements list.
TRIGBURST : Trigger Burst. Selects whether hardware triggers cause a single or burst transfer.
bits : 6 - 12 (7 bit)
Enumeration: ENUM
0 : SINGLE_TRANSFER
Single transfer. Hardware trigger causes a single
transfer.
1 : BURST_TRANSFER
Burst transfer. When the trigger for this channel
is set to edge triggered, a hardware trigger causes a burst
transfer, as defined by BURSTPOWER. When the trigger for
this channel is set to level triggered, a hardware trigger
causes transfers to continue as long as the trigger is
asserted, unless the transfer is complete.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 7 - 14 (8 bit)
BURSTPOWER : Burst Power is used in two ways. It always selects the address wrap size when SRCBURSTWRAP and/or DSTBURSTWRAP modes are selected (see descriptions elsewhere in this register). When the TRIGBURST field elsewhere in this register = 1, Burst Power selects how many transfers are performed for each DMA trigger. This can be used, for example, with peripherals that contain a FIFO that can initiate a DMA operation when the FIFO reaches a certain level. 0000: Burst size = 1 (20). 0001: Burst size = 2 (21). 0010: Burst size = 4 (22). ... 1010: Burst size = 1024 (210). This corresponds to the maximum supported transfer count. others: not supported. The total transfer length as defined in the XFERCOUNT bits in the XFERCFG register must be an even multiple of the burst size.
bits : 8 - 19 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
SRCBURSTWRAP : Source Burst Wrap. When enabled, the source data address for the DMA is wrapped, meaning that the source address range for each burst will be the same. As an example, this could be used to read several sequential registers from a peripheral for each DMA burst, reading the same registers again for each burst.
bits : 14 - 28 (15 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Source burst wrapping is not enabled for
this DMA channel.
1 : ENABLED
Enabled. Source burst wrapping is enabled for this
DMA channel.
End of enumeration elements list.
DSTBURSTWRAP : Destination Burst Wrap. When enabled, the destination data address for the DMA is wrapped, meaning that the destination address range for each burst will be the same. As an example, this could be used to write several sequential registers to a peripheral for each DMA burst, writing the same registers again for each burst.
bits : 15 - 30 (16 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Destination burst wrapping is not enabled
for this DMA channel.
1 : ENABLED
Enabled. Destination burst wrapping is enabled for
this DMA channel.
End of enumeration elements list.
CHPRIORITY : Priority of this channel when multiple DMA requests are pending. Eight priority levels are supported. 0x0 = highest priority. 0x7 = lowest priority.
bits : 16 - 34 (19 bit)
Control and status register for DMA channel 0.
address_offset : 0x2170 Bytes (0x0)
access : read-only
reset_value : 0x0
reset_Mask : 0x0
VALIDPENDING : Valid pending flag for this channel. This bit is set when a 1 is written to the corresponding bit in the related SETVALID register when CFGVALID = 1 for the same channel.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect. No effect on DMA
operation.
1 : VALID_PENDING
Valid pending.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
TRIG : Trigger flag. Indicates that the trigger for this channel is currently set. This bit is cleared at the end of an entire transfer or upon reload when CLRTRIG = 1.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_TRIGGERED
Not triggered. The trigger for this DMA channel is
not set. DMA operations will not be carried
out.
1 : TRIGGERED
Triggered. The trigger for this DMA channel is set.
DMA operations will be carried out.
End of enumeration elements list.
Transfer configuration register for DMA channel 0.
address_offset : 0x2190 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CFGVALID : Configuration Valid flag. This bit indicates whether the current channel descriptor is valid and can potentially be acted upon, if all other activation criteria are fulfilled.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NOT_VALID
Not valid. The channel descriptor is not considered
valid until validated by an associated SETVALID0
setting.
1 : VALID
Valid. The current channel descriptor is considered
valid.
End of enumeration elements list.
RELOAD : Indicates whether the channel's control structure will be reloaded when the current descriptor is exhausted. Reloading allows ping-pong and linked transfers.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Do not reload the channels' control
structure when the current descriptor is
exhausted.
1 : ENABLED
Enabled. Reload the channels' control structure
when the current descriptor is exhausted.
End of enumeration elements list.
SWTRIG : Software Trigger.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_SET
Not set. When written by software, the trigger for
this channel is not set. A new trigger, as defined by the
HWTRIGEN, TRIGPOL, and TRIGTYPE will be needed to start the
channel.
1 : SET
Set, When written by software, the trigger for this
channel is set immediately. This feature should not be used
with level triggering when TRIGBURST = 0.
End of enumeration elements list.
CLRTRIG : Clear Trigger.
bits : 3 - 6 (4 bit)
Enumeration: ENUM
0 : NOT_CLEARED
Not cleared. The trigger is not cleared when this
descriptor is exhausted. If there is a reload, the next
descriptor will be started.
1 : CLEARED
Cleared. The trigger is cleared when this
descriptor is exhausted.
End of enumeration elements list.
SETINTA : Set Interrupt flag A for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTA flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
SETINTB : Set Interrupt flag B for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTB flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 6 - 13 (8 bit)
WIDTH : Transfer width used for this DMA channel.
bits : 8 - 17 (10 bit)
Enumeration: ENUM
0x0 : 8_BIT
8-bit. 8-bit transfers are performed (8-bit source
reads and destination writes).
0x1 : 16_BIT
16-bit. 6-bit transfers are performed (16-bit
source reads and destination writes).
0x2 : 32_BIT
32-bit. 32-bit transfers are performed (32-bit
source reads and destination writes).
0x3 : RESERVED
Reserved. Reserved setting, do not
use.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
SRCINC : Determines whether the source address is incremented for each DMA transfer.
bits : 12 - 25 (14 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The source address is not incremented
for each transfer. This is the usual case when the source is
a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The source address is incremented by the
amount specified by Width for each transfer. This is the
usual case when the source is memory.
0x2 : 2_X_WIDTH
2 x width. The source address is incremented by 2
times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The source address is incremented by 4
times the amount specified by Width for each
transfer.
End of enumeration elements list.
DSTINC : Determines whether the destination address is incremented for each DMA transfer.
bits : 14 - 29 (16 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The destination address is not
incremented for each transfer. This is the usual case when
the destination is a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The destination address is incremented
by the amount specified by Width for each transfer. This is
the usual case when the destination is memory.
0x2 : 2_X_WIDTH
2 x width. The destination address is incremented
by 2 times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The destination address is incremented
by 4 times the amount specified by Width for each
transfer.
End of enumeration elements list.
XFERCOUNT : Total number of transfers to be performed, minus 1 encoded. The number of bytes transferred is: (XFERCOUNT + 1) x data width (as defined by the WIDTH field). The DMA controller uses this bit field during transfer to count down. Hence, it cannot be used by software to read back the size of the transfer, for instance, in an interrupt handler. 0x0 = a total of 1 transfer will be performed. 0x1 = a total of 2 transfers will be performed. ... 0x3FF = a total of 1,024 transfers will be performed.
bits : 16 - 41 (26 bit)
Configuration register for DMA channel 0.
address_offset : 0x25C0 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
PERIPHREQEN : Peripheral request Enable. If a DMA channel is used to perform a memory-to-memory move, any peripheral DMA request associated with that channel can be disabled to prevent any interaction between the peripheral and the DMA controller.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Peripheral DMA requests are
disabled.
1 : ENABLED
Enabled. Peripheral DMA requests are
enabled.
End of enumeration elements list.
HWTRIGEN : Hardware Triggering Enable for this channel.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Hardware triggering is not
used.
1 : ENABLED
Enabled. Use hardware triggering.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 2 - 5 (4 bit)
TRIGPOL : Trigger Polarity. Selects the polarity of a hardware trigger for this channel.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : ACTIVE_LOW__FALLING
Active low - falling edge. Hardware trigger is
active low or falling edge triggered, based on
TRIGTYPE.
1 : ACTIVE_HIGH__RISING
Active high - rising edge. Hardware trigger is
active high or rising edge triggered, based on
TRIGTYPE.
End of enumeration elements list.
TRIGTYPE : Trigger Type. Selects hardware trigger as edge triggered or level triggered.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : EDGE
Edge. Hardware trigger is edge triggered. Transfers
will be initiated and completed, as specified for a single
trigger.
1 : LEVEL
Level. Hardware trigger is level triggered. Note
that when level triggering without burst (BURSTPOWER = 0) is
selected, only hardware triggers should be used on that
channel. Transfers continue as long as the trigger level is
asserted. Once the trigger is de-asserted, the transfer will
be paused until the trigger is, again, asserted. However,
the transfer will not be paused until any remaining
transfers within the current BURSTPOWER length are
completed.
End of enumeration elements list.
TRIGBURST : Trigger Burst. Selects whether hardware triggers cause a single or burst transfer.
bits : 6 - 12 (7 bit)
Enumeration: ENUM
0 : SINGLE_TRANSFER
Single transfer. Hardware trigger causes a single
transfer.
1 : BURST_TRANSFER
Burst transfer. When the trigger for this channel
is set to edge triggered, a hardware trigger causes a burst
transfer, as defined by BURSTPOWER. When the trigger for
this channel is set to level triggered, a hardware trigger
causes transfers to continue as long as the trigger is
asserted, unless the transfer is complete.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 7 - 14 (8 bit)
BURSTPOWER : Burst Power is used in two ways. It always selects the address wrap size when SRCBURSTWRAP and/or DSTBURSTWRAP modes are selected (see descriptions elsewhere in this register). When the TRIGBURST field elsewhere in this register = 1, Burst Power selects how many transfers are performed for each DMA trigger. This can be used, for example, with peripherals that contain a FIFO that can initiate a DMA operation when the FIFO reaches a certain level. 0000: Burst size = 1 (20). 0001: Burst size = 2 (21). 0010: Burst size = 4 (22). ... 1010: Burst size = 1024 (210). This corresponds to the maximum supported transfer count. others: not supported. The total transfer length as defined in the XFERCOUNT bits in the XFERCFG register must be an even multiple of the burst size.
bits : 8 - 19 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
SRCBURSTWRAP : Source Burst Wrap. When enabled, the source data address for the DMA is wrapped, meaning that the source address range for each burst will be the same. As an example, this could be used to read several sequential registers from a peripheral for each DMA burst, reading the same registers again for each burst.
bits : 14 - 28 (15 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Source burst wrapping is not enabled for
this DMA channel.
1 : ENABLED
Enabled. Source burst wrapping is enabled for this
DMA channel.
End of enumeration elements list.
DSTBURSTWRAP : Destination Burst Wrap. When enabled, the destination data address for the DMA is wrapped, meaning that the destination address range for each burst will be the same. As an example, this could be used to write several sequential registers to a peripheral for each DMA burst, writing the same registers again for each burst.
bits : 15 - 30 (16 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Destination burst wrapping is not enabled
for this DMA channel.
1 : ENABLED
Enabled. Destination burst wrapping is enabled for
this DMA channel.
End of enumeration elements list.
CHPRIORITY : Priority of this channel when multiple DMA requests are pending. Eight priority levels are supported. 0x0 = highest priority. 0x7 = lowest priority.
bits : 16 - 34 (19 bit)
Control and status register for DMA channel 0.
address_offset : 0x25E4 Bytes (0x0)
access : read-only
reset_value : 0x0
reset_Mask : 0x0
VALIDPENDING : Valid pending flag for this channel. This bit is set when a 1 is written to the corresponding bit in the related SETVALID register when CFGVALID = 1 for the same channel.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect. No effect on DMA
operation.
1 : VALID_PENDING
Valid pending.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
TRIG : Trigger flag. Indicates that the trigger for this channel is currently set. This bit is cleared at the end of an entire transfer or upon reload when CLRTRIG = 1.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_TRIGGERED
Not triggered. The trigger for this DMA channel is
not set. DMA operations will not be carried
out.
1 : TRIGGERED
Triggered. The trigger for this DMA channel is set.
DMA operations will be carried out.
End of enumeration elements list.
Transfer configuration register for DMA channel 0.
address_offset : 0x2608 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CFGVALID : Configuration Valid flag. This bit indicates whether the current channel descriptor is valid and can potentially be acted upon, if all other activation criteria are fulfilled.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NOT_VALID
Not valid. The channel descriptor is not considered
valid until validated by an associated SETVALID0
setting.
1 : VALID
Valid. The current channel descriptor is considered
valid.
End of enumeration elements list.
RELOAD : Indicates whether the channel's control structure will be reloaded when the current descriptor is exhausted. Reloading allows ping-pong and linked transfers.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Do not reload the channels' control
structure when the current descriptor is
exhausted.
1 : ENABLED
Enabled. Reload the channels' control structure
when the current descriptor is exhausted.
End of enumeration elements list.
SWTRIG : Software Trigger.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_SET
Not set. When written by software, the trigger for
this channel is not set. A new trigger, as defined by the
HWTRIGEN, TRIGPOL, and TRIGTYPE will be needed to start the
channel.
1 : SET
Set, When written by software, the trigger for this
channel is set immediately. This feature should not be used
with level triggering when TRIGBURST = 0.
End of enumeration elements list.
CLRTRIG : Clear Trigger.
bits : 3 - 6 (4 bit)
Enumeration: ENUM
0 : NOT_CLEARED
Not cleared. The trigger is not cleared when this
descriptor is exhausted. If there is a reload, the next
descriptor will be started.
1 : CLEARED
Cleared. The trigger is cleared when this
descriptor is exhausted.
End of enumeration elements list.
SETINTA : Set Interrupt flag A for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTA flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
SETINTB : Set Interrupt flag B for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTB flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 6 - 13 (8 bit)
WIDTH : Transfer width used for this DMA channel.
bits : 8 - 17 (10 bit)
Enumeration: ENUM
0x0 : 8_BIT
8-bit. 8-bit transfers are performed (8-bit source
reads and destination writes).
0x1 : 16_BIT
16-bit. 6-bit transfers are performed (16-bit
source reads and destination writes).
0x2 : 32_BIT
32-bit. 32-bit transfers are performed (32-bit
source reads and destination writes).
0x3 : RESERVED
Reserved. Reserved setting, do not
use.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
SRCINC : Determines whether the source address is incremented for each DMA transfer.
bits : 12 - 25 (14 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The source address is not incremented
for each transfer. This is the usual case when the source is
a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The source address is incremented by the
amount specified by Width for each transfer. This is the
usual case when the source is memory.
0x2 : 2_X_WIDTH
2 x width. The source address is incremented by 2
times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The source address is incremented by 4
times the amount specified by Width for each
transfer.
End of enumeration elements list.
DSTINC : Determines whether the destination address is incremented for each DMA transfer.
bits : 14 - 29 (16 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The destination address is not
incremented for each transfer. This is the usual case when
the destination is a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The destination address is incremented
by the amount specified by Width for each transfer. This is
the usual case when the destination is memory.
0x2 : 2_X_WIDTH
2 x width. The destination address is incremented
by 2 times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The destination address is incremented
by 4 times the amount specified by Width for each
transfer.
End of enumeration elements list.
XFERCOUNT : Total number of transfers to be performed, minus 1 encoded. The number of bytes transferred is: (XFERCOUNT + 1) x data width (as defined by the WIDTH field). The DMA controller uses this bit field during transfer to count down. Hence, it cannot be used by software to read back the size of the transfer, for instance, in an interrupt handler. 0x0 = a total of 1 transfer will be performed. 0x1 = a total of 2 transfers will be performed. ... 0x3FF = a total of 1,024 transfers will be performed.
bits : 16 - 41 (26 bit)
Channel Enable Clear for all DMA channels.
address_offset : 0x28 Bytes (0x0)
access : write-only
reset_value : 0x0
reset_Mask : 0x0
CLR : Writing ones to this register clears the corresponding bits in ENABLESET0. Bit n clears the channel enable bit n.
bits : 0 - 21 (22 bit)
RESERVED : Reserved.
bits : 22 - 53 (32 bit)
Configuration register for DMA channel 0.
address_offset : 0x2A40 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
PERIPHREQEN : Peripheral request Enable. If a DMA channel is used to perform a memory-to-memory move, any peripheral DMA request associated with that channel can be disabled to prevent any interaction between the peripheral and the DMA controller.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Peripheral DMA requests are
disabled.
1 : ENABLED
Enabled. Peripheral DMA requests are
enabled.
End of enumeration elements list.
HWTRIGEN : Hardware Triggering Enable for this channel.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Hardware triggering is not
used.
1 : ENABLED
Enabled. Use hardware triggering.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 2 - 5 (4 bit)
TRIGPOL : Trigger Polarity. Selects the polarity of a hardware trigger for this channel.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : ACTIVE_LOW__FALLING
Active low - falling edge. Hardware trigger is
active low or falling edge triggered, based on
TRIGTYPE.
1 : ACTIVE_HIGH__RISING
Active high - rising edge. Hardware trigger is
active high or rising edge triggered, based on
TRIGTYPE.
End of enumeration elements list.
TRIGTYPE : Trigger Type. Selects hardware trigger as edge triggered or level triggered.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : EDGE
Edge. Hardware trigger is edge triggered. Transfers
will be initiated and completed, as specified for a single
trigger.
1 : LEVEL
Level. Hardware trigger is level triggered. Note
that when level triggering without burst (BURSTPOWER = 0) is
selected, only hardware triggers should be used on that
channel. Transfers continue as long as the trigger level is
asserted. Once the trigger is de-asserted, the transfer will
be paused until the trigger is, again, asserted. However,
the transfer will not be paused until any remaining
transfers within the current BURSTPOWER length are
completed.
End of enumeration elements list.
TRIGBURST : Trigger Burst. Selects whether hardware triggers cause a single or burst transfer.
bits : 6 - 12 (7 bit)
Enumeration: ENUM
0 : SINGLE_TRANSFER
Single transfer. Hardware trigger causes a single
transfer.
1 : BURST_TRANSFER
Burst transfer. When the trigger for this channel
is set to edge triggered, a hardware trigger causes a burst
transfer, as defined by BURSTPOWER. When the trigger for
this channel is set to level triggered, a hardware trigger
causes transfers to continue as long as the trigger is
asserted, unless the transfer is complete.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 7 - 14 (8 bit)
BURSTPOWER : Burst Power is used in two ways. It always selects the address wrap size when SRCBURSTWRAP and/or DSTBURSTWRAP modes are selected (see descriptions elsewhere in this register). When the TRIGBURST field elsewhere in this register = 1, Burst Power selects how many transfers are performed for each DMA trigger. This can be used, for example, with peripherals that contain a FIFO that can initiate a DMA operation when the FIFO reaches a certain level. 0000: Burst size = 1 (20). 0001: Burst size = 2 (21). 0010: Burst size = 4 (22). ... 1010: Burst size = 1024 (210). This corresponds to the maximum supported transfer count. others: not supported. The total transfer length as defined in the XFERCOUNT bits in the XFERCFG register must be an even multiple of the burst size.
bits : 8 - 19 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
SRCBURSTWRAP : Source Burst Wrap. When enabled, the source data address for the DMA is wrapped, meaning that the source address range for each burst will be the same. As an example, this could be used to read several sequential registers from a peripheral for each DMA burst, reading the same registers again for each burst.
bits : 14 - 28 (15 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Source burst wrapping is not enabled for
this DMA channel.
1 : ENABLED
Enabled. Source burst wrapping is enabled for this
DMA channel.
End of enumeration elements list.
DSTBURSTWRAP : Destination Burst Wrap. When enabled, the destination data address for the DMA is wrapped, meaning that the destination address range for each burst will be the same. As an example, this could be used to write several sequential registers to a peripheral for each DMA burst, writing the same registers again for each burst.
bits : 15 - 30 (16 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Destination burst wrapping is not enabled
for this DMA channel.
1 : ENABLED
Enabled. Destination burst wrapping is enabled for
this DMA channel.
End of enumeration elements list.
CHPRIORITY : Priority of this channel when multiple DMA requests are pending. Eight priority levels are supported. 0x0 = highest priority. 0x7 = lowest priority.
bits : 16 - 34 (19 bit)
Control and status register for DMA channel 0.
address_offset : 0x2A68 Bytes (0x0)
access : read-only
reset_value : 0x0
reset_Mask : 0x0
VALIDPENDING : Valid pending flag for this channel. This bit is set when a 1 is written to the corresponding bit in the related SETVALID register when CFGVALID = 1 for the same channel.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect. No effect on DMA
operation.
1 : VALID_PENDING
Valid pending.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
TRIG : Trigger flag. Indicates that the trigger for this channel is currently set. This bit is cleared at the end of an entire transfer or upon reload when CLRTRIG = 1.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_TRIGGERED
Not triggered. The trigger for this DMA channel is
not set. DMA operations will not be carried
out.
1 : TRIGGERED
Triggered. The trigger for this DMA channel is set.
DMA operations will be carried out.
End of enumeration elements list.
Transfer configuration register for DMA channel 0.
address_offset : 0x2A90 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CFGVALID : Configuration Valid flag. This bit indicates whether the current channel descriptor is valid and can potentially be acted upon, if all other activation criteria are fulfilled.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NOT_VALID
Not valid. The channel descriptor is not considered
valid until validated by an associated SETVALID0
setting.
1 : VALID
Valid. The current channel descriptor is considered
valid.
End of enumeration elements list.
RELOAD : Indicates whether the channel's control structure will be reloaded when the current descriptor is exhausted. Reloading allows ping-pong and linked transfers.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Do not reload the channels' control
structure when the current descriptor is
exhausted.
1 : ENABLED
Enabled. Reload the channels' control structure
when the current descriptor is exhausted.
End of enumeration elements list.
SWTRIG : Software Trigger.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_SET
Not set. When written by software, the trigger for
this channel is not set. A new trigger, as defined by the
HWTRIGEN, TRIGPOL, and TRIGTYPE will be needed to start the
channel.
1 : SET
Set, When written by software, the trigger for this
channel is set immediately. This feature should not be used
with level triggering when TRIGBURST = 0.
End of enumeration elements list.
CLRTRIG : Clear Trigger.
bits : 3 - 6 (4 bit)
Enumeration: ENUM
0 : NOT_CLEARED
Not cleared. The trigger is not cleared when this
descriptor is exhausted. If there is a reload, the next
descriptor will be started.
1 : CLEARED
Cleared. The trigger is cleared when this
descriptor is exhausted.
End of enumeration elements list.
SETINTA : Set Interrupt flag A for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTA flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
SETINTB : Set Interrupt flag B for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTB flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 6 - 13 (8 bit)
WIDTH : Transfer width used for this DMA channel.
bits : 8 - 17 (10 bit)
Enumeration: ENUM
0x0 : 8_BIT
8-bit. 8-bit transfers are performed (8-bit source
reads and destination writes).
0x1 : 16_BIT
16-bit. 6-bit transfers are performed (16-bit
source reads and destination writes).
0x2 : 32_BIT
32-bit. 32-bit transfers are performed (32-bit
source reads and destination writes).
0x3 : RESERVED
Reserved. Reserved setting, do not
use.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
SRCINC : Determines whether the source address is incremented for each DMA transfer.
bits : 12 - 25 (14 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The source address is not incremented
for each transfer. This is the usual case when the source is
a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The source address is incremented by the
amount specified by Width for each transfer. This is the
usual case when the source is memory.
0x2 : 2_X_WIDTH
2 x width. The source address is incremented by 2
times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The source address is incremented by 4
times the amount specified by Width for each
transfer.
End of enumeration elements list.
DSTINC : Determines whether the destination address is incremented for each DMA transfer.
bits : 14 - 29 (16 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The destination address is not
incremented for each transfer. This is the usual case when
the destination is a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The destination address is incremented
by the amount specified by Width for each transfer. This is
the usual case when the destination is memory.
0x2 : 2_X_WIDTH
2 x width. The destination address is incremented
by 2 times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The destination address is incremented
by 4 times the amount specified by Width for each
transfer.
End of enumeration elements list.
XFERCOUNT : Total number of transfers to be performed, minus 1 encoded. The number of bytes transferred is: (XFERCOUNT + 1) x data width (as defined by the WIDTH field). The DMA controller uses this bit field during transfer to count down. Hence, it cannot be used by software to read back the size of the transfer, for instance, in an interrupt handler. 0x0 = a total of 1 transfer will be performed. 0x1 = a total of 2 transfers will be performed. ... 0x3FF = a total of 1,024 transfers will be performed.
bits : 16 - 41 (26 bit)
Configuration register for DMA channel 0.
address_offset : 0x2ED0 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
PERIPHREQEN : Peripheral request Enable. If a DMA channel is used to perform a memory-to-memory move, any peripheral DMA request associated with that channel can be disabled to prevent any interaction between the peripheral and the DMA controller.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Peripheral DMA requests are
disabled.
1 : ENABLED
Enabled. Peripheral DMA requests are
enabled.
End of enumeration elements list.
HWTRIGEN : Hardware Triggering Enable for this channel.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Hardware triggering is not
used.
1 : ENABLED
Enabled. Use hardware triggering.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 2 - 5 (4 bit)
TRIGPOL : Trigger Polarity. Selects the polarity of a hardware trigger for this channel.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : ACTIVE_LOW__FALLING
Active low - falling edge. Hardware trigger is
active low or falling edge triggered, based on
TRIGTYPE.
1 : ACTIVE_HIGH__RISING
Active high - rising edge. Hardware trigger is
active high or rising edge triggered, based on
TRIGTYPE.
End of enumeration elements list.
TRIGTYPE : Trigger Type. Selects hardware trigger as edge triggered or level triggered.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : EDGE
Edge. Hardware trigger is edge triggered. Transfers
will be initiated and completed, as specified for a single
trigger.
1 : LEVEL
Level. Hardware trigger is level triggered. Note
that when level triggering without burst (BURSTPOWER = 0) is
selected, only hardware triggers should be used on that
channel. Transfers continue as long as the trigger level is
asserted. Once the trigger is de-asserted, the transfer will
be paused until the trigger is, again, asserted. However,
the transfer will not be paused until any remaining
transfers within the current BURSTPOWER length are
completed.
End of enumeration elements list.
TRIGBURST : Trigger Burst. Selects whether hardware triggers cause a single or burst transfer.
bits : 6 - 12 (7 bit)
Enumeration: ENUM
0 : SINGLE_TRANSFER
Single transfer. Hardware trigger causes a single
transfer.
1 : BURST_TRANSFER
Burst transfer. When the trigger for this channel
is set to edge triggered, a hardware trigger causes a burst
transfer, as defined by BURSTPOWER. When the trigger for
this channel is set to level triggered, a hardware trigger
causes transfers to continue as long as the trigger is
asserted, unless the transfer is complete.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 7 - 14 (8 bit)
BURSTPOWER : Burst Power is used in two ways. It always selects the address wrap size when SRCBURSTWRAP and/or DSTBURSTWRAP modes are selected (see descriptions elsewhere in this register). When the TRIGBURST field elsewhere in this register = 1, Burst Power selects how many transfers are performed for each DMA trigger. This can be used, for example, with peripherals that contain a FIFO that can initiate a DMA operation when the FIFO reaches a certain level. 0000: Burst size = 1 (20). 0001: Burst size = 2 (21). 0010: Burst size = 4 (22). ... 1010: Burst size = 1024 (210). This corresponds to the maximum supported transfer count. others: not supported. The total transfer length as defined in the XFERCOUNT bits in the XFERCFG register must be an even multiple of the burst size.
bits : 8 - 19 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
SRCBURSTWRAP : Source Burst Wrap. When enabled, the source data address for the DMA is wrapped, meaning that the source address range for each burst will be the same. As an example, this could be used to read several sequential registers from a peripheral for each DMA burst, reading the same registers again for each burst.
bits : 14 - 28 (15 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Source burst wrapping is not enabled for
this DMA channel.
1 : ENABLED
Enabled. Source burst wrapping is enabled for this
DMA channel.
End of enumeration elements list.
DSTBURSTWRAP : Destination Burst Wrap. When enabled, the destination data address for the DMA is wrapped, meaning that the destination address range for each burst will be the same. As an example, this could be used to write several sequential registers to a peripheral for each DMA burst, writing the same registers again for each burst.
bits : 15 - 30 (16 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Destination burst wrapping is not enabled
for this DMA channel.
1 : ENABLED
Enabled. Destination burst wrapping is enabled for
this DMA channel.
End of enumeration elements list.
CHPRIORITY : Priority of this channel when multiple DMA requests are pending. Eight priority levels are supported. 0x0 = highest priority. 0x7 = lowest priority.
bits : 16 - 34 (19 bit)
Control and status register for DMA channel 0.
address_offset : 0x2EFC Bytes (0x0)
access : read-only
reset_value : 0x0
reset_Mask : 0x0
VALIDPENDING : Valid pending flag for this channel. This bit is set when a 1 is written to the corresponding bit in the related SETVALID register when CFGVALID = 1 for the same channel.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect. No effect on DMA
operation.
1 : VALID_PENDING
Valid pending.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
TRIG : Trigger flag. Indicates that the trigger for this channel is currently set. This bit is cleared at the end of an entire transfer or upon reload when CLRTRIG = 1.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_TRIGGERED
Not triggered. The trigger for this DMA channel is
not set. DMA operations will not be carried
out.
1 : TRIGGERED
Triggered. The trigger for this DMA channel is set.
DMA operations will be carried out.
End of enumeration elements list.
Transfer configuration register for DMA channel 0.
address_offset : 0x2F28 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CFGVALID : Configuration Valid flag. This bit indicates whether the current channel descriptor is valid and can potentially be acted upon, if all other activation criteria are fulfilled.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NOT_VALID
Not valid. The channel descriptor is not considered
valid until validated by an associated SETVALID0
setting.
1 : VALID
Valid. The current channel descriptor is considered
valid.
End of enumeration elements list.
RELOAD : Indicates whether the channel's control structure will be reloaded when the current descriptor is exhausted. Reloading allows ping-pong and linked transfers.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Do not reload the channels' control
structure when the current descriptor is
exhausted.
1 : ENABLED
Enabled. Reload the channels' control structure
when the current descriptor is exhausted.
End of enumeration elements list.
SWTRIG : Software Trigger.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_SET
Not set. When written by software, the trigger for
this channel is not set. A new trigger, as defined by the
HWTRIGEN, TRIGPOL, and TRIGTYPE will be needed to start the
channel.
1 : SET
Set, When written by software, the trigger for this
channel is set immediately. This feature should not be used
with level triggering when TRIGBURST = 0.
End of enumeration elements list.
CLRTRIG : Clear Trigger.
bits : 3 - 6 (4 bit)
Enumeration: ENUM
0 : NOT_CLEARED
Not cleared. The trigger is not cleared when this
descriptor is exhausted. If there is a reload, the next
descriptor will be started.
1 : CLEARED
Cleared. The trigger is cleared when this
descriptor is exhausted.
End of enumeration elements list.
SETINTA : Set Interrupt flag A for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTA flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
SETINTB : Set Interrupt flag B for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTB flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 6 - 13 (8 bit)
WIDTH : Transfer width used for this DMA channel.
bits : 8 - 17 (10 bit)
Enumeration: ENUM
0x0 : 8_BIT
8-bit. 8-bit transfers are performed (8-bit source
reads and destination writes).
0x1 : 16_BIT
16-bit. 6-bit transfers are performed (16-bit
source reads and destination writes).
0x2 : 32_BIT
32-bit. 32-bit transfers are performed (32-bit
source reads and destination writes).
0x3 : RESERVED
Reserved. Reserved setting, do not
use.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
SRCINC : Determines whether the source address is incremented for each DMA transfer.
bits : 12 - 25 (14 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The source address is not incremented
for each transfer. This is the usual case when the source is
a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The source address is incremented by the
amount specified by Width for each transfer. This is the
usual case when the source is memory.
0x2 : 2_X_WIDTH
2 x width. The source address is incremented by 2
times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The source address is incremented by 4
times the amount specified by Width for each
transfer.
End of enumeration elements list.
DSTINC : Determines whether the destination address is incremented for each DMA transfer.
bits : 14 - 29 (16 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The destination address is not
incremented for each transfer. This is the usual case when
the destination is a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The destination address is incremented
by the amount specified by Width for each transfer. This is
the usual case when the destination is memory.
0x2 : 2_X_WIDTH
2 x width. The destination address is incremented
by 2 times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The destination address is incremented
by 4 times the amount specified by Width for each
transfer.
End of enumeration elements list.
XFERCOUNT : Total number of transfers to be performed, minus 1 encoded. The number of bytes transferred is: (XFERCOUNT + 1) x data width (as defined by the WIDTH field). The DMA controller uses this bit field during transfer to count down. Hence, it cannot be used by software to read back the size of the transfer, for instance, in an interrupt handler. 0x0 = a total of 1 transfer will be performed. 0x1 = a total of 2 transfers will be performed. ... 0x3FF = a total of 1,024 transfers will be performed.
bits : 16 - 41 (26 bit)
Channel Active status for all DMA channels.
address_offset : 0x30 Bytes (0x0)
access : read-only
reset_value : 0x0
reset_Mask : 0x0
ACT : Active flag for DMA channel n. Bit n corresponds to DMA channel n. 0 = not active. 1 = active.
bits : 0 - 21 (22 bit)
RESERVED : Reserved.
bits : 22 - 53 (32 bit)
Configuration register for DMA channel 0.
address_offset : 0x3370 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
PERIPHREQEN : Peripheral request Enable. If a DMA channel is used to perform a memory-to-memory move, any peripheral DMA request associated with that channel can be disabled to prevent any interaction between the peripheral and the DMA controller.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Peripheral DMA requests are
disabled.
1 : ENABLED
Enabled. Peripheral DMA requests are
enabled.
End of enumeration elements list.
HWTRIGEN : Hardware Triggering Enable for this channel.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Hardware triggering is not
used.
1 : ENABLED
Enabled. Use hardware triggering.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 2 - 5 (4 bit)
TRIGPOL : Trigger Polarity. Selects the polarity of a hardware trigger for this channel.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : ACTIVE_LOW__FALLING
Active low - falling edge. Hardware trigger is
active low or falling edge triggered, based on
TRIGTYPE.
1 : ACTIVE_HIGH__RISING
Active high - rising edge. Hardware trigger is
active high or rising edge triggered, based on
TRIGTYPE.
End of enumeration elements list.
TRIGTYPE : Trigger Type. Selects hardware trigger as edge triggered or level triggered.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : EDGE
Edge. Hardware trigger is edge triggered. Transfers
will be initiated and completed, as specified for a single
trigger.
1 : LEVEL
Level. Hardware trigger is level triggered. Note
that when level triggering without burst (BURSTPOWER = 0) is
selected, only hardware triggers should be used on that
channel. Transfers continue as long as the trigger level is
asserted. Once the trigger is de-asserted, the transfer will
be paused until the trigger is, again, asserted. However,
the transfer will not be paused until any remaining
transfers within the current BURSTPOWER length are
completed.
End of enumeration elements list.
TRIGBURST : Trigger Burst. Selects whether hardware triggers cause a single or burst transfer.
bits : 6 - 12 (7 bit)
Enumeration: ENUM
0 : SINGLE_TRANSFER
Single transfer. Hardware trigger causes a single
transfer.
1 : BURST_TRANSFER
Burst transfer. When the trigger for this channel
is set to edge triggered, a hardware trigger causes a burst
transfer, as defined by BURSTPOWER. When the trigger for
this channel is set to level triggered, a hardware trigger
causes transfers to continue as long as the trigger is
asserted, unless the transfer is complete.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 7 - 14 (8 bit)
BURSTPOWER : Burst Power is used in two ways. It always selects the address wrap size when SRCBURSTWRAP and/or DSTBURSTWRAP modes are selected (see descriptions elsewhere in this register). When the TRIGBURST field elsewhere in this register = 1, Burst Power selects how many transfers are performed for each DMA trigger. This can be used, for example, with peripherals that contain a FIFO that can initiate a DMA operation when the FIFO reaches a certain level. 0000: Burst size = 1 (20). 0001: Burst size = 2 (21). 0010: Burst size = 4 (22). ... 1010: Burst size = 1024 (210). This corresponds to the maximum supported transfer count. others: not supported. The total transfer length as defined in the XFERCOUNT bits in the XFERCFG register must be an even multiple of the burst size.
bits : 8 - 19 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
SRCBURSTWRAP : Source Burst Wrap. When enabled, the source data address for the DMA is wrapped, meaning that the source address range for each burst will be the same. As an example, this could be used to read several sequential registers from a peripheral for each DMA burst, reading the same registers again for each burst.
bits : 14 - 28 (15 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Source burst wrapping is not enabled for
this DMA channel.
1 : ENABLED
Enabled. Source burst wrapping is enabled for this
DMA channel.
End of enumeration elements list.
DSTBURSTWRAP : Destination Burst Wrap. When enabled, the destination data address for the DMA is wrapped, meaning that the destination address range for each burst will be the same. As an example, this could be used to write several sequential registers to a peripheral for each DMA burst, writing the same registers again for each burst.
bits : 15 - 30 (16 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Destination burst wrapping is not enabled
for this DMA channel.
1 : ENABLED
Enabled. Destination burst wrapping is enabled for
this DMA channel.
End of enumeration elements list.
CHPRIORITY : Priority of this channel when multiple DMA requests are pending. Eight priority levels are supported. 0x0 = highest priority. 0x7 = lowest priority.
bits : 16 - 34 (19 bit)
Control and status register for DMA channel 0.
address_offset : 0x33A0 Bytes (0x0)
access : read-only
reset_value : 0x0
reset_Mask : 0x0
VALIDPENDING : Valid pending flag for this channel. This bit is set when a 1 is written to the corresponding bit in the related SETVALID register when CFGVALID = 1 for the same channel.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect. No effect on DMA
operation.
1 : VALID_PENDING
Valid pending.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
TRIG : Trigger flag. Indicates that the trigger for this channel is currently set. This bit is cleared at the end of an entire transfer or upon reload when CLRTRIG = 1.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_TRIGGERED
Not triggered. The trigger for this DMA channel is
not set. DMA operations will not be carried
out.
1 : TRIGGERED
Triggered. The trigger for this DMA channel is set.
DMA operations will be carried out.
End of enumeration elements list.
Transfer configuration register for DMA channel 0.
address_offset : 0x33D0 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CFGVALID : Configuration Valid flag. This bit indicates whether the current channel descriptor is valid and can potentially be acted upon, if all other activation criteria are fulfilled.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NOT_VALID
Not valid. The channel descriptor is not considered
valid until validated by an associated SETVALID0
setting.
1 : VALID
Valid. The current channel descriptor is considered
valid.
End of enumeration elements list.
RELOAD : Indicates whether the channel's control structure will be reloaded when the current descriptor is exhausted. Reloading allows ping-pong and linked transfers.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Do not reload the channels' control
structure when the current descriptor is
exhausted.
1 : ENABLED
Enabled. Reload the channels' control structure
when the current descriptor is exhausted.
End of enumeration elements list.
SWTRIG : Software Trigger.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_SET
Not set. When written by software, the trigger for
this channel is not set. A new trigger, as defined by the
HWTRIGEN, TRIGPOL, and TRIGTYPE will be needed to start the
channel.
1 : SET
Set, When written by software, the trigger for this
channel is set immediately. This feature should not be used
with level triggering when TRIGBURST = 0.
End of enumeration elements list.
CLRTRIG : Clear Trigger.
bits : 3 - 6 (4 bit)
Enumeration: ENUM
0 : NOT_CLEARED
Not cleared. The trigger is not cleared when this
descriptor is exhausted. If there is a reload, the next
descriptor will be started.
1 : CLEARED
Cleared. The trigger is cleared when this
descriptor is exhausted.
End of enumeration elements list.
SETINTA : Set Interrupt flag A for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTA flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
SETINTB : Set Interrupt flag B for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTB flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 6 - 13 (8 bit)
WIDTH : Transfer width used for this DMA channel.
bits : 8 - 17 (10 bit)
Enumeration: ENUM
0x0 : 8_BIT
8-bit. 8-bit transfers are performed (8-bit source
reads and destination writes).
0x1 : 16_BIT
16-bit. 6-bit transfers are performed (16-bit
source reads and destination writes).
0x2 : 32_BIT
32-bit. 32-bit transfers are performed (32-bit
source reads and destination writes).
0x3 : RESERVED
Reserved. Reserved setting, do not
use.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
SRCINC : Determines whether the source address is incremented for each DMA transfer.
bits : 12 - 25 (14 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The source address is not incremented
for each transfer. This is the usual case when the source is
a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The source address is incremented by the
amount specified by Width for each transfer. This is the
usual case when the source is memory.
0x2 : 2_X_WIDTH
2 x width. The source address is incremented by 2
times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The source address is incremented by 4
times the amount specified by Width for each
transfer.
End of enumeration elements list.
DSTINC : Determines whether the destination address is incremented for each DMA transfer.
bits : 14 - 29 (16 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The destination address is not
incremented for each transfer. This is the usual case when
the destination is a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The destination address is incremented
by the amount specified by Width for each transfer. This is
the usual case when the destination is memory.
0x2 : 2_X_WIDTH
2 x width. The destination address is incremented
by 2 times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The destination address is incremented
by 4 times the amount specified by Width for each
transfer.
End of enumeration elements list.
XFERCOUNT : Total number of transfers to be performed, minus 1 encoded. The number of bytes transferred is: (XFERCOUNT + 1) x data width (as defined by the WIDTH field). The DMA controller uses this bit field during transfer to count down. Hence, it cannot be used by software to read back the size of the transfer, for instance, in an interrupt handler. 0x0 = a total of 1 transfer will be performed. 0x1 = a total of 2 transfers will be performed. ... 0x3FF = a total of 1,024 transfers will be performed.
bits : 16 - 41 (26 bit)
Channel Busy status for all DMA channels.
address_offset : 0x38 Bytes (0x0)
access : read-only
reset_value : 0x0
reset_Mask : 0x0
BSY : Busy flag for DMA channel n. Bit n corresponds to DMA channel n. 0 = not busy. 1 = busy.
bits : 0 - 21 (22 bit)
RESERVED : Reserved.
bits : 22 - 53 (32 bit)
Configuration register for DMA channel 0.
address_offset : 0x3820 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
PERIPHREQEN : Peripheral request Enable. If a DMA channel is used to perform a memory-to-memory move, any peripheral DMA request associated with that channel can be disabled to prevent any interaction between the peripheral and the DMA controller.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Peripheral DMA requests are
disabled.
1 : ENABLED
Enabled. Peripheral DMA requests are
enabled.
End of enumeration elements list.
HWTRIGEN : Hardware Triggering Enable for this channel.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Hardware triggering is not
used.
1 : ENABLED
Enabled. Use hardware triggering.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 2 - 5 (4 bit)
TRIGPOL : Trigger Polarity. Selects the polarity of a hardware trigger for this channel.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : ACTIVE_LOW__FALLING
Active low - falling edge. Hardware trigger is
active low or falling edge triggered, based on
TRIGTYPE.
1 : ACTIVE_HIGH__RISING
Active high - rising edge. Hardware trigger is
active high or rising edge triggered, based on
TRIGTYPE.
End of enumeration elements list.
TRIGTYPE : Trigger Type. Selects hardware trigger as edge triggered or level triggered.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : EDGE
Edge. Hardware trigger is edge triggered. Transfers
will be initiated and completed, as specified for a single
trigger.
1 : LEVEL
Level. Hardware trigger is level triggered. Note
that when level triggering without burst (BURSTPOWER = 0) is
selected, only hardware triggers should be used on that
channel. Transfers continue as long as the trigger level is
asserted. Once the trigger is de-asserted, the transfer will
be paused until the trigger is, again, asserted. However,
the transfer will not be paused until any remaining
transfers within the current BURSTPOWER length are
completed.
End of enumeration elements list.
TRIGBURST : Trigger Burst. Selects whether hardware triggers cause a single or burst transfer.
bits : 6 - 12 (7 bit)
Enumeration: ENUM
0 : SINGLE_TRANSFER
Single transfer. Hardware trigger causes a single
transfer.
1 : BURST_TRANSFER
Burst transfer. When the trigger for this channel
is set to edge triggered, a hardware trigger causes a burst
transfer, as defined by BURSTPOWER. When the trigger for
this channel is set to level triggered, a hardware trigger
causes transfers to continue as long as the trigger is
asserted, unless the transfer is complete.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 7 - 14 (8 bit)
BURSTPOWER : Burst Power is used in two ways. It always selects the address wrap size when SRCBURSTWRAP and/or DSTBURSTWRAP modes are selected (see descriptions elsewhere in this register). When the TRIGBURST field elsewhere in this register = 1, Burst Power selects how many transfers are performed for each DMA trigger. This can be used, for example, with peripherals that contain a FIFO that can initiate a DMA operation when the FIFO reaches a certain level. 0000: Burst size = 1 (20). 0001: Burst size = 2 (21). 0010: Burst size = 4 (22). ... 1010: Burst size = 1024 (210). This corresponds to the maximum supported transfer count. others: not supported. The total transfer length as defined in the XFERCOUNT bits in the XFERCFG register must be an even multiple of the burst size.
bits : 8 - 19 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
SRCBURSTWRAP : Source Burst Wrap. When enabled, the source data address for the DMA is wrapped, meaning that the source address range for each burst will be the same. As an example, this could be used to read several sequential registers from a peripheral for each DMA burst, reading the same registers again for each burst.
bits : 14 - 28 (15 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Source burst wrapping is not enabled for
this DMA channel.
1 : ENABLED
Enabled. Source burst wrapping is enabled for this
DMA channel.
End of enumeration elements list.
DSTBURSTWRAP : Destination Burst Wrap. When enabled, the destination data address for the DMA is wrapped, meaning that the destination address range for each burst will be the same. As an example, this could be used to write several sequential registers to a peripheral for each DMA burst, writing the same registers again for each burst.
bits : 15 - 30 (16 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Destination burst wrapping is not enabled
for this DMA channel.
1 : ENABLED
Enabled. Destination burst wrapping is enabled for
this DMA channel.
End of enumeration elements list.
CHPRIORITY : Priority of this channel when multiple DMA requests are pending. Eight priority levels are supported. 0x0 = highest priority. 0x7 = lowest priority.
bits : 16 - 34 (19 bit)
Control and status register for DMA channel 0.
address_offset : 0x3854 Bytes (0x0)
access : read-only
reset_value : 0x0
reset_Mask : 0x0
VALIDPENDING : Valid pending flag for this channel. This bit is set when a 1 is written to the corresponding bit in the related SETVALID register when CFGVALID = 1 for the same channel.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect. No effect on DMA
operation.
1 : VALID_PENDING
Valid pending.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
TRIG : Trigger flag. Indicates that the trigger for this channel is currently set. This bit is cleared at the end of an entire transfer or upon reload when CLRTRIG = 1.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_TRIGGERED
Not triggered. The trigger for this DMA channel is
not set. DMA operations will not be carried
out.
1 : TRIGGERED
Triggered. The trigger for this DMA channel is set.
DMA operations will be carried out.
End of enumeration elements list.
Transfer configuration register for DMA channel 0.
address_offset : 0x3888 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CFGVALID : Configuration Valid flag. This bit indicates whether the current channel descriptor is valid and can potentially be acted upon, if all other activation criteria are fulfilled.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NOT_VALID
Not valid. The channel descriptor is not considered
valid until validated by an associated SETVALID0
setting.
1 : VALID
Valid. The current channel descriptor is considered
valid.
End of enumeration elements list.
RELOAD : Indicates whether the channel's control structure will be reloaded when the current descriptor is exhausted. Reloading allows ping-pong and linked transfers.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Do not reload the channels' control
structure when the current descriptor is
exhausted.
1 : ENABLED
Enabled. Reload the channels' control structure
when the current descriptor is exhausted.
End of enumeration elements list.
SWTRIG : Software Trigger.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_SET
Not set. When written by software, the trigger for
this channel is not set. A new trigger, as defined by the
HWTRIGEN, TRIGPOL, and TRIGTYPE will be needed to start the
channel.
1 : SET
Set, When written by software, the trigger for this
channel is set immediately. This feature should not be used
with level triggering when TRIGBURST = 0.
End of enumeration elements list.
CLRTRIG : Clear Trigger.
bits : 3 - 6 (4 bit)
Enumeration: ENUM
0 : NOT_CLEARED
Not cleared. The trigger is not cleared when this
descriptor is exhausted. If there is a reload, the next
descriptor will be started.
1 : CLEARED
Cleared. The trigger is cleared when this
descriptor is exhausted.
End of enumeration elements list.
SETINTA : Set Interrupt flag A for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTA flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
SETINTB : Set Interrupt flag B for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTB flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 6 - 13 (8 bit)
WIDTH : Transfer width used for this DMA channel.
bits : 8 - 17 (10 bit)
Enumeration: ENUM
0x0 : 8_BIT
8-bit. 8-bit transfers are performed (8-bit source
reads and destination writes).
0x1 : 16_BIT
16-bit. 6-bit transfers are performed (16-bit
source reads and destination writes).
0x2 : 32_BIT
32-bit. 32-bit transfers are performed (32-bit
source reads and destination writes).
0x3 : RESERVED
Reserved. Reserved setting, do not
use.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
SRCINC : Determines whether the source address is incremented for each DMA transfer.
bits : 12 - 25 (14 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The source address is not incremented
for each transfer. This is the usual case when the source is
a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The source address is incremented by the
amount specified by Width for each transfer. This is the
usual case when the source is memory.
0x2 : 2_X_WIDTH
2 x width. The source address is incremented by 2
times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The source address is incremented by 4
times the amount specified by Width for each
transfer.
End of enumeration elements list.
DSTINC : Determines whether the destination address is incremented for each DMA transfer.
bits : 14 - 29 (16 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The destination address is not
incremented for each transfer. This is the usual case when
the destination is a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The destination address is incremented
by the amount specified by Width for each transfer. This is
the usual case when the destination is memory.
0x2 : 2_X_WIDTH
2 x width. The destination address is incremented
by 2 times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The destination address is incremented
by 4 times the amount specified by Width for each
transfer.
End of enumeration elements list.
XFERCOUNT : Total number of transfers to be performed, minus 1 encoded. The number of bytes transferred is: (XFERCOUNT + 1) x data width (as defined by the WIDTH field). The DMA controller uses this bit field during transfer to count down. Hence, it cannot be used by software to read back the size of the transfer, for instance, in an interrupt handler. 0x0 = a total of 1 transfer will be performed. 0x1 = a total of 2 transfers will be performed. ... 0x3FF = a total of 1,024 transfers will be performed.
bits : 16 - 41 (26 bit)
Configuration register for DMA channel 0.
address_offset : 0x3CE0 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
PERIPHREQEN : Peripheral request Enable. If a DMA channel is used to perform a memory-to-memory move, any peripheral DMA request associated with that channel can be disabled to prevent any interaction between the peripheral and the DMA controller.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Peripheral DMA requests are
disabled.
1 : ENABLED
Enabled. Peripheral DMA requests are
enabled.
End of enumeration elements list.
HWTRIGEN : Hardware Triggering Enable for this channel.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Hardware triggering is not
used.
1 : ENABLED
Enabled. Use hardware triggering.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 2 - 5 (4 bit)
TRIGPOL : Trigger Polarity. Selects the polarity of a hardware trigger for this channel.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : ACTIVE_LOW__FALLING
Active low - falling edge. Hardware trigger is
active low or falling edge triggered, based on
TRIGTYPE.
1 : ACTIVE_HIGH__RISING
Active high - rising edge. Hardware trigger is
active high or rising edge triggered, based on
TRIGTYPE.
End of enumeration elements list.
TRIGTYPE : Trigger Type. Selects hardware trigger as edge triggered or level triggered.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : EDGE
Edge. Hardware trigger is edge triggered. Transfers
will be initiated and completed, as specified for a single
trigger.
1 : LEVEL
Level. Hardware trigger is level triggered. Note
that when level triggering without burst (BURSTPOWER = 0) is
selected, only hardware triggers should be used on that
channel. Transfers continue as long as the trigger level is
asserted. Once the trigger is de-asserted, the transfer will
be paused until the trigger is, again, asserted. However,
the transfer will not be paused until any remaining
transfers within the current BURSTPOWER length are
completed.
End of enumeration elements list.
TRIGBURST : Trigger Burst. Selects whether hardware triggers cause a single or burst transfer.
bits : 6 - 12 (7 bit)
Enumeration: ENUM
0 : SINGLE_TRANSFER
Single transfer. Hardware trigger causes a single
transfer.
1 : BURST_TRANSFER
Burst transfer. When the trigger for this channel
is set to edge triggered, a hardware trigger causes a burst
transfer, as defined by BURSTPOWER. When the trigger for
this channel is set to level triggered, a hardware trigger
causes transfers to continue as long as the trigger is
asserted, unless the transfer is complete.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 7 - 14 (8 bit)
BURSTPOWER : Burst Power is used in two ways. It always selects the address wrap size when SRCBURSTWRAP and/or DSTBURSTWRAP modes are selected (see descriptions elsewhere in this register). When the TRIGBURST field elsewhere in this register = 1, Burst Power selects how many transfers are performed for each DMA trigger. This can be used, for example, with peripherals that contain a FIFO that can initiate a DMA operation when the FIFO reaches a certain level. 0000: Burst size = 1 (20). 0001: Burst size = 2 (21). 0010: Burst size = 4 (22). ... 1010: Burst size = 1024 (210). This corresponds to the maximum supported transfer count. others: not supported. The total transfer length as defined in the XFERCOUNT bits in the XFERCFG register must be an even multiple of the burst size.
bits : 8 - 19 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
SRCBURSTWRAP : Source Burst Wrap. When enabled, the source data address for the DMA is wrapped, meaning that the source address range for each burst will be the same. As an example, this could be used to read several sequential registers from a peripheral for each DMA burst, reading the same registers again for each burst.
bits : 14 - 28 (15 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Source burst wrapping is not enabled for
this DMA channel.
1 : ENABLED
Enabled. Source burst wrapping is enabled for this
DMA channel.
End of enumeration elements list.
DSTBURSTWRAP : Destination Burst Wrap. When enabled, the destination data address for the DMA is wrapped, meaning that the destination address range for each burst will be the same. As an example, this could be used to write several sequential registers to a peripheral for each DMA burst, writing the same registers again for each burst.
bits : 15 - 30 (16 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Destination burst wrapping is not enabled
for this DMA channel.
1 : ENABLED
Enabled. Destination burst wrapping is enabled for
this DMA channel.
End of enumeration elements list.
CHPRIORITY : Priority of this channel when multiple DMA requests are pending. Eight priority levels are supported. 0x0 = highest priority. 0x7 = lowest priority.
bits : 16 - 34 (19 bit)
Control and status register for DMA channel 0.
address_offset : 0x3D18 Bytes (0x0)
access : read-only
reset_value : 0x0
reset_Mask : 0x0
VALIDPENDING : Valid pending flag for this channel. This bit is set when a 1 is written to the corresponding bit in the related SETVALID register when CFGVALID = 1 for the same channel.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect. No effect on DMA
operation.
1 : VALID_PENDING
Valid pending.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
TRIG : Trigger flag. Indicates that the trigger for this channel is currently set. This bit is cleared at the end of an entire transfer or upon reload when CLRTRIG = 1.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_TRIGGERED
Not triggered. The trigger for this DMA channel is
not set. DMA operations will not be carried
out.
1 : TRIGGERED
Triggered. The trigger for this DMA channel is set.
DMA operations will be carried out.
End of enumeration elements list.
Transfer configuration register for DMA channel 0.
address_offset : 0x3D50 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CFGVALID : Configuration Valid flag. This bit indicates whether the current channel descriptor is valid and can potentially be acted upon, if all other activation criteria are fulfilled.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NOT_VALID
Not valid. The channel descriptor is not considered
valid until validated by an associated SETVALID0
setting.
1 : VALID
Valid. The current channel descriptor is considered
valid.
End of enumeration elements list.
RELOAD : Indicates whether the channel's control structure will be reloaded when the current descriptor is exhausted. Reloading allows ping-pong and linked transfers.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Do not reload the channels' control
structure when the current descriptor is
exhausted.
1 : ENABLED
Enabled. Reload the channels' control structure
when the current descriptor is exhausted.
End of enumeration elements list.
SWTRIG : Software Trigger.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_SET
Not set. When written by software, the trigger for
this channel is not set. A new trigger, as defined by the
HWTRIGEN, TRIGPOL, and TRIGTYPE will be needed to start the
channel.
1 : SET
Set, When written by software, the trigger for this
channel is set immediately. This feature should not be used
with level triggering when TRIGBURST = 0.
End of enumeration elements list.
CLRTRIG : Clear Trigger.
bits : 3 - 6 (4 bit)
Enumeration: ENUM
0 : NOT_CLEARED
Not cleared. The trigger is not cleared when this
descriptor is exhausted. If there is a reload, the next
descriptor will be started.
1 : CLEARED
Cleared. The trigger is cleared when this
descriptor is exhausted.
End of enumeration elements list.
SETINTA : Set Interrupt flag A for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTA flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
SETINTB : Set Interrupt flag B for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTB flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 6 - 13 (8 bit)
WIDTH : Transfer width used for this DMA channel.
bits : 8 - 17 (10 bit)
Enumeration: ENUM
0x0 : 8_BIT
8-bit. 8-bit transfers are performed (8-bit source
reads and destination writes).
0x1 : 16_BIT
16-bit. 6-bit transfers are performed (16-bit
source reads and destination writes).
0x2 : 32_BIT
32-bit. 32-bit transfers are performed (32-bit
source reads and destination writes).
0x3 : RESERVED
Reserved. Reserved setting, do not
use.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
SRCINC : Determines whether the source address is incremented for each DMA transfer.
bits : 12 - 25 (14 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The source address is not incremented
for each transfer. This is the usual case when the source is
a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The source address is incremented by the
amount specified by Width for each transfer. This is the
usual case when the source is memory.
0x2 : 2_X_WIDTH
2 x width. The source address is incremented by 2
times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The source address is incremented by 4
times the amount specified by Width for each
transfer.
End of enumeration elements list.
DSTINC : Determines whether the destination address is incremented for each DMA transfer.
bits : 14 - 29 (16 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The destination address is not
incremented for each transfer. This is the usual case when
the destination is a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The destination address is incremented
by the amount specified by Width for each transfer. This is
the usual case when the destination is memory.
0x2 : 2_X_WIDTH
2 x width. The destination address is incremented
by 2 times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The destination address is incremented
by 4 times the amount specified by Width for each
transfer.
End of enumeration elements list.
XFERCOUNT : Total number of transfers to be performed, minus 1 encoded. The number of bytes transferred is: (XFERCOUNT + 1) x data width (as defined by the WIDTH field). The DMA controller uses this bit field during transfer to count down. Hence, it cannot be used by software to read back the size of the transfer, for instance, in an interrupt handler. 0x0 = a total of 1 transfer will be performed. 0x1 = a total of 2 transfers will be performed. ... 0x3FF = a total of 1,024 transfers will be performed.
bits : 16 - 41 (26 bit)
Interrupt status.
address_offset : 0x4 Bytes (0x0)
access : read-only
reset_value : 0x0
reset_Mask : 0x0
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 0 - 0 (1 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 0 - 0 (1 bit)
ACTIVEINT : Summarizes whether any enabled interrupts (other than error interrupts) are pending.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : NOT_PENDING
Not pending. No enabled interrupts are
pending.
1 : PENDING
Pending. At least one enabled interrupt is
pending.
End of enumeration elements list.
ACTIVEERRINT : Summarizes whether any error interrupts are pending.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_PENDING
Not pending. No error interrupts are
pending.
1 : PENDING
Pending. At least one error interrupt is
pending.
End of enumeration elements list.
Error Interrupt status for all DMA channels.
address_offset : 0x40 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
ERR : Error Interrupt flag for DMA channel n. Bit n corresponds to DMA channel n. 0 = error interrupt is not active. 1 = error interrupt is active.
bits : 0 - 21 (22 bit)
RESERVED : Reserved.
bits : 22 - 53 (32 bit)
Configuration register for DMA channel 0.
address_offset : 0x41B0 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
PERIPHREQEN : Peripheral request Enable. If a DMA channel is used to perform a memory-to-memory move, any peripheral DMA request associated with that channel can be disabled to prevent any interaction between the peripheral and the DMA controller.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Peripheral DMA requests are
disabled.
1 : ENABLED
Enabled. Peripheral DMA requests are
enabled.
End of enumeration elements list.
HWTRIGEN : Hardware Triggering Enable for this channel.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Hardware triggering is not
used.
1 : ENABLED
Enabled. Use hardware triggering.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 2 - 5 (4 bit)
TRIGPOL : Trigger Polarity. Selects the polarity of a hardware trigger for this channel.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : ACTIVE_LOW__FALLING
Active low - falling edge. Hardware trigger is
active low or falling edge triggered, based on
TRIGTYPE.
1 : ACTIVE_HIGH__RISING
Active high - rising edge. Hardware trigger is
active high or rising edge triggered, based on
TRIGTYPE.
End of enumeration elements list.
TRIGTYPE : Trigger Type. Selects hardware trigger as edge triggered or level triggered.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : EDGE
Edge. Hardware trigger is edge triggered. Transfers
will be initiated and completed, as specified for a single
trigger.
1 : LEVEL
Level. Hardware trigger is level triggered. Note
that when level triggering without burst (BURSTPOWER = 0) is
selected, only hardware triggers should be used on that
channel. Transfers continue as long as the trigger level is
asserted. Once the trigger is de-asserted, the transfer will
be paused until the trigger is, again, asserted. However,
the transfer will not be paused until any remaining
transfers within the current BURSTPOWER length are
completed.
End of enumeration elements list.
TRIGBURST : Trigger Burst. Selects whether hardware triggers cause a single or burst transfer.
bits : 6 - 12 (7 bit)
Enumeration: ENUM
0 : SINGLE_TRANSFER
Single transfer. Hardware trigger causes a single
transfer.
1 : BURST_TRANSFER
Burst transfer. When the trigger for this channel
is set to edge triggered, a hardware trigger causes a burst
transfer, as defined by BURSTPOWER. When the trigger for
this channel is set to level triggered, a hardware trigger
causes transfers to continue as long as the trigger is
asserted, unless the transfer is complete.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 7 - 14 (8 bit)
BURSTPOWER : Burst Power is used in two ways. It always selects the address wrap size when SRCBURSTWRAP and/or DSTBURSTWRAP modes are selected (see descriptions elsewhere in this register). When the TRIGBURST field elsewhere in this register = 1, Burst Power selects how many transfers are performed for each DMA trigger. This can be used, for example, with peripherals that contain a FIFO that can initiate a DMA operation when the FIFO reaches a certain level. 0000: Burst size = 1 (20). 0001: Burst size = 2 (21). 0010: Burst size = 4 (22). ... 1010: Burst size = 1024 (210). This corresponds to the maximum supported transfer count. others: not supported. The total transfer length as defined in the XFERCOUNT bits in the XFERCFG register must be an even multiple of the burst size.
bits : 8 - 19 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
SRCBURSTWRAP : Source Burst Wrap. When enabled, the source data address for the DMA is wrapped, meaning that the source address range for each burst will be the same. As an example, this could be used to read several sequential registers from a peripheral for each DMA burst, reading the same registers again for each burst.
bits : 14 - 28 (15 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Source burst wrapping is not enabled for
this DMA channel.
1 : ENABLED
Enabled. Source burst wrapping is enabled for this
DMA channel.
End of enumeration elements list.
DSTBURSTWRAP : Destination Burst Wrap. When enabled, the destination data address for the DMA is wrapped, meaning that the destination address range for each burst will be the same. As an example, this could be used to write several sequential registers to a peripheral for each DMA burst, writing the same registers again for each burst.
bits : 15 - 30 (16 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Destination burst wrapping is not enabled
for this DMA channel.
1 : ENABLED
Enabled. Destination burst wrapping is enabled for
this DMA channel.
End of enumeration elements list.
CHPRIORITY : Priority of this channel when multiple DMA requests are pending. Eight priority levels are supported. 0x0 = highest priority. 0x7 = lowest priority.
bits : 16 - 34 (19 bit)
Control and status register for DMA channel 0.
address_offset : 0x41EC Bytes (0x0)
access : read-only
reset_value : 0x0
reset_Mask : 0x0
VALIDPENDING : Valid pending flag for this channel. This bit is set when a 1 is written to the corresponding bit in the related SETVALID register when CFGVALID = 1 for the same channel.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect. No effect on DMA
operation.
1 : VALID_PENDING
Valid pending.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
TRIG : Trigger flag. Indicates that the trigger for this channel is currently set. This bit is cleared at the end of an entire transfer or upon reload when CLRTRIG = 1.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_TRIGGERED
Not triggered. The trigger for this DMA channel is
not set. DMA operations will not be carried
out.
1 : TRIGGERED
Triggered. The trigger for this DMA channel is set.
DMA operations will be carried out.
End of enumeration elements list.
Transfer configuration register for DMA channel 0.
address_offset : 0x4228 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CFGVALID : Configuration Valid flag. This bit indicates whether the current channel descriptor is valid and can potentially be acted upon, if all other activation criteria are fulfilled.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NOT_VALID
Not valid. The channel descriptor is not considered
valid until validated by an associated SETVALID0
setting.
1 : VALID
Valid. The current channel descriptor is considered
valid.
End of enumeration elements list.
RELOAD : Indicates whether the channel's control structure will be reloaded when the current descriptor is exhausted. Reloading allows ping-pong and linked transfers.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Do not reload the channels' control
structure when the current descriptor is
exhausted.
1 : ENABLED
Enabled. Reload the channels' control structure
when the current descriptor is exhausted.
End of enumeration elements list.
SWTRIG : Software Trigger.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_SET
Not set. When written by software, the trigger for
this channel is not set. A new trigger, as defined by the
HWTRIGEN, TRIGPOL, and TRIGTYPE will be needed to start the
channel.
1 : SET
Set, When written by software, the trigger for this
channel is set immediately. This feature should not be used
with level triggering when TRIGBURST = 0.
End of enumeration elements list.
CLRTRIG : Clear Trigger.
bits : 3 - 6 (4 bit)
Enumeration: ENUM
0 : NOT_CLEARED
Not cleared. The trigger is not cleared when this
descriptor is exhausted. If there is a reload, the next
descriptor will be started.
1 : CLEARED
Cleared. The trigger is cleared when this
descriptor is exhausted.
End of enumeration elements list.
SETINTA : Set Interrupt flag A for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTA flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
SETINTB : Set Interrupt flag B for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTB flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 6 - 13 (8 bit)
WIDTH : Transfer width used for this DMA channel.
bits : 8 - 17 (10 bit)
Enumeration: ENUM
0x0 : 8_BIT
8-bit. 8-bit transfers are performed (8-bit source
reads and destination writes).
0x1 : 16_BIT
16-bit. 6-bit transfers are performed (16-bit
source reads and destination writes).
0x2 : 32_BIT
32-bit. 32-bit transfers are performed (32-bit
source reads and destination writes).
0x3 : RESERVED
Reserved. Reserved setting, do not
use.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
SRCINC : Determines whether the source address is incremented for each DMA transfer.
bits : 12 - 25 (14 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The source address is not incremented
for each transfer. This is the usual case when the source is
a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The source address is incremented by the
amount specified by Width for each transfer. This is the
usual case when the source is memory.
0x2 : 2_X_WIDTH
2 x width. The source address is incremented by 2
times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The source address is incremented by 4
times the amount specified by Width for each
transfer.
End of enumeration elements list.
DSTINC : Determines whether the destination address is incremented for each DMA transfer.
bits : 14 - 29 (16 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The destination address is not
incremented for each transfer. This is the usual case when
the destination is a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The destination address is incremented
by the amount specified by Width for each transfer. This is
the usual case when the destination is memory.
0x2 : 2_X_WIDTH
2 x width. The destination address is incremented
by 2 times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The destination address is incremented
by 4 times the amount specified by Width for each
transfer.
End of enumeration elements list.
XFERCOUNT : Total number of transfers to be performed, minus 1 encoded. The number of bytes transferred is: (XFERCOUNT + 1) x data width (as defined by the WIDTH field). The DMA controller uses this bit field during transfer to count down. Hence, it cannot be used by software to read back the size of the transfer, for instance, in an interrupt handler. 0x0 = a total of 1 transfer will be performed. 0x1 = a total of 2 transfers will be performed. ... 0x3FF = a total of 1,024 transfers will be performed.
bits : 16 - 41 (26 bit)
Configuration register for DMA channel 0.
address_offset : 0x4690 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
PERIPHREQEN : Peripheral request Enable. If a DMA channel is used to perform a memory-to-memory move, any peripheral DMA request associated with that channel can be disabled to prevent any interaction between the peripheral and the DMA controller.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Peripheral DMA requests are
disabled.
1 : ENABLED
Enabled. Peripheral DMA requests are
enabled.
End of enumeration elements list.
HWTRIGEN : Hardware Triggering Enable for this channel.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Hardware triggering is not
used.
1 : ENABLED
Enabled. Use hardware triggering.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 2 - 5 (4 bit)
TRIGPOL : Trigger Polarity. Selects the polarity of a hardware trigger for this channel.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : ACTIVE_LOW__FALLING
Active low - falling edge. Hardware trigger is
active low or falling edge triggered, based on
TRIGTYPE.
1 : ACTIVE_HIGH__RISING
Active high - rising edge. Hardware trigger is
active high or rising edge triggered, based on
TRIGTYPE.
End of enumeration elements list.
TRIGTYPE : Trigger Type. Selects hardware trigger as edge triggered or level triggered.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : EDGE
Edge. Hardware trigger is edge triggered. Transfers
will be initiated and completed, as specified for a single
trigger.
1 : LEVEL
Level. Hardware trigger is level triggered. Note
that when level triggering without burst (BURSTPOWER = 0) is
selected, only hardware triggers should be used on that
channel. Transfers continue as long as the trigger level is
asserted. Once the trigger is de-asserted, the transfer will
be paused until the trigger is, again, asserted. However,
the transfer will not be paused until any remaining
transfers within the current BURSTPOWER length are
completed.
End of enumeration elements list.
TRIGBURST : Trigger Burst. Selects whether hardware triggers cause a single or burst transfer.
bits : 6 - 12 (7 bit)
Enumeration: ENUM
0 : SINGLE_TRANSFER
Single transfer. Hardware trigger causes a single
transfer.
1 : BURST_TRANSFER
Burst transfer. When the trigger for this channel
is set to edge triggered, a hardware trigger causes a burst
transfer, as defined by BURSTPOWER. When the trigger for
this channel is set to level triggered, a hardware trigger
causes transfers to continue as long as the trigger is
asserted, unless the transfer is complete.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 7 - 14 (8 bit)
BURSTPOWER : Burst Power is used in two ways. It always selects the address wrap size when SRCBURSTWRAP and/or DSTBURSTWRAP modes are selected (see descriptions elsewhere in this register). When the TRIGBURST field elsewhere in this register = 1, Burst Power selects how many transfers are performed for each DMA trigger. This can be used, for example, with peripherals that contain a FIFO that can initiate a DMA operation when the FIFO reaches a certain level. 0000: Burst size = 1 (20). 0001: Burst size = 2 (21). 0010: Burst size = 4 (22). ... 1010: Burst size = 1024 (210). This corresponds to the maximum supported transfer count. others: not supported. The total transfer length as defined in the XFERCOUNT bits in the XFERCFG register must be an even multiple of the burst size.
bits : 8 - 19 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
SRCBURSTWRAP : Source Burst Wrap. When enabled, the source data address for the DMA is wrapped, meaning that the source address range for each burst will be the same. As an example, this could be used to read several sequential registers from a peripheral for each DMA burst, reading the same registers again for each burst.
bits : 14 - 28 (15 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Source burst wrapping is not enabled for
this DMA channel.
1 : ENABLED
Enabled. Source burst wrapping is enabled for this
DMA channel.
End of enumeration elements list.
DSTBURSTWRAP : Destination Burst Wrap. When enabled, the destination data address for the DMA is wrapped, meaning that the destination address range for each burst will be the same. As an example, this could be used to write several sequential registers to a peripheral for each DMA burst, writing the same registers again for each burst.
bits : 15 - 30 (16 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Destination burst wrapping is not enabled
for this DMA channel.
1 : ENABLED
Enabled. Destination burst wrapping is enabled for
this DMA channel.
End of enumeration elements list.
CHPRIORITY : Priority of this channel when multiple DMA requests are pending. Eight priority levels are supported. 0x0 = highest priority. 0x7 = lowest priority.
bits : 16 - 34 (19 bit)
Control and status register for DMA channel 0.
address_offset : 0x46D0 Bytes (0x0)
access : read-only
reset_value : 0x0
reset_Mask : 0x0
VALIDPENDING : Valid pending flag for this channel. This bit is set when a 1 is written to the corresponding bit in the related SETVALID register when CFGVALID = 1 for the same channel.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect. No effect on DMA
operation.
1 : VALID_PENDING
Valid pending.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
TRIG : Trigger flag. Indicates that the trigger for this channel is currently set. This bit is cleared at the end of an entire transfer or upon reload when CLRTRIG = 1.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_TRIGGERED
Not triggered. The trigger for this DMA channel is
not set. DMA operations will not be carried
out.
1 : TRIGGERED
Triggered. The trigger for this DMA channel is set.
DMA operations will be carried out.
End of enumeration elements list.
Transfer configuration register for DMA channel 0.
address_offset : 0x4710 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CFGVALID : Configuration Valid flag. This bit indicates whether the current channel descriptor is valid and can potentially be acted upon, if all other activation criteria are fulfilled.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NOT_VALID
Not valid. The channel descriptor is not considered
valid until validated by an associated SETVALID0
setting.
1 : VALID
Valid. The current channel descriptor is considered
valid.
End of enumeration elements list.
RELOAD : Indicates whether the channel's control structure will be reloaded when the current descriptor is exhausted. Reloading allows ping-pong and linked transfers.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Do not reload the channels' control
structure when the current descriptor is
exhausted.
1 : ENABLED
Enabled. Reload the channels' control structure
when the current descriptor is exhausted.
End of enumeration elements list.
SWTRIG : Software Trigger.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_SET
Not set. When written by software, the trigger for
this channel is not set. A new trigger, as defined by the
HWTRIGEN, TRIGPOL, and TRIGTYPE will be needed to start the
channel.
1 : SET
Set, When written by software, the trigger for this
channel is set immediately. This feature should not be used
with level triggering when TRIGBURST = 0.
End of enumeration elements list.
CLRTRIG : Clear Trigger.
bits : 3 - 6 (4 bit)
Enumeration: ENUM
0 : NOT_CLEARED
Not cleared. The trigger is not cleared when this
descriptor is exhausted. If there is a reload, the next
descriptor will be started.
1 : CLEARED
Cleared. The trigger is cleared when this
descriptor is exhausted.
End of enumeration elements list.
SETINTA : Set Interrupt flag A for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTA flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
SETINTB : Set Interrupt flag B for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTB flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 6 - 13 (8 bit)
WIDTH : Transfer width used for this DMA channel.
bits : 8 - 17 (10 bit)
Enumeration: ENUM
0x0 : 8_BIT
8-bit. 8-bit transfers are performed (8-bit source
reads and destination writes).
0x1 : 16_BIT
16-bit. 6-bit transfers are performed (16-bit
source reads and destination writes).
0x2 : 32_BIT
32-bit. 32-bit transfers are performed (32-bit
source reads and destination writes).
0x3 : RESERVED
Reserved. Reserved setting, do not
use.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
SRCINC : Determines whether the source address is incremented for each DMA transfer.
bits : 12 - 25 (14 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The source address is not incremented
for each transfer. This is the usual case when the source is
a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The source address is incremented by the
amount specified by Width for each transfer. This is the
usual case when the source is memory.
0x2 : 2_X_WIDTH
2 x width. The source address is incremented by 2
times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The source address is incremented by 4
times the amount specified by Width for each
transfer.
End of enumeration elements list.
DSTINC : Determines whether the destination address is incremented for each DMA transfer.
bits : 14 - 29 (16 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The destination address is not
incremented for each transfer. This is the usual case when
the destination is a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The destination address is incremented
by the amount specified by Width for each transfer. This is
the usual case when the destination is memory.
0x2 : 2_X_WIDTH
2 x width. The destination address is incremented
by 2 times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The destination address is incremented
by 4 times the amount specified by Width for each
transfer.
End of enumeration elements list.
XFERCOUNT : Total number of transfers to be performed, minus 1 encoded. The number of bytes transferred is: (XFERCOUNT + 1) x data width (as defined by the WIDTH field). The DMA controller uses this bit field during transfer to count down. Hence, it cannot be used by software to read back the size of the transfer, for instance, in an interrupt handler. 0x0 = a total of 1 transfer will be performed. 0x1 = a total of 2 transfers will be performed. ... 0x3FF = a total of 1,024 transfers will be performed.
bits : 16 - 41 (26 bit)
Interrupt Enable read and Set for all DMA channels.
address_offset : 0x48 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
INTEN : Interrupt Enable read and set for DMA channel n. Bit n corresponds to DMA channel n. 0 = interrupt for DMA channel is disabled. 1 = interrupt for DMA channel is enabled.
bits : 0 - 21 (22 bit)
RESERVED : Reserved.
bits : 22 - 53 (32 bit)
Configuration register for DMA channel 0.
address_offset : 0x4B80 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
PERIPHREQEN : Peripheral request Enable. If a DMA channel is used to perform a memory-to-memory move, any peripheral DMA request associated with that channel can be disabled to prevent any interaction between the peripheral and the DMA controller.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Peripheral DMA requests are
disabled.
1 : ENABLED
Enabled. Peripheral DMA requests are
enabled.
End of enumeration elements list.
HWTRIGEN : Hardware Triggering Enable for this channel.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Hardware triggering is not
used.
1 : ENABLED
Enabled. Use hardware triggering.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 2 - 5 (4 bit)
TRIGPOL : Trigger Polarity. Selects the polarity of a hardware trigger for this channel.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : ACTIVE_LOW__FALLING
Active low - falling edge. Hardware trigger is
active low or falling edge triggered, based on
TRIGTYPE.
1 : ACTIVE_HIGH__RISING
Active high - rising edge. Hardware trigger is
active high or rising edge triggered, based on
TRIGTYPE.
End of enumeration elements list.
TRIGTYPE : Trigger Type. Selects hardware trigger as edge triggered or level triggered.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : EDGE
Edge. Hardware trigger is edge triggered. Transfers
will be initiated and completed, as specified for a single
trigger.
1 : LEVEL
Level. Hardware trigger is level triggered. Note
that when level triggering without burst (BURSTPOWER = 0) is
selected, only hardware triggers should be used on that
channel. Transfers continue as long as the trigger level is
asserted. Once the trigger is de-asserted, the transfer will
be paused until the trigger is, again, asserted. However,
the transfer will not be paused until any remaining
transfers within the current BURSTPOWER length are
completed.
End of enumeration elements list.
TRIGBURST : Trigger Burst. Selects whether hardware triggers cause a single or burst transfer.
bits : 6 - 12 (7 bit)
Enumeration: ENUM
0 : SINGLE_TRANSFER
Single transfer. Hardware trigger causes a single
transfer.
1 : BURST_TRANSFER
Burst transfer. When the trigger for this channel
is set to edge triggered, a hardware trigger causes a burst
transfer, as defined by BURSTPOWER. When the trigger for
this channel is set to level triggered, a hardware trigger
causes transfers to continue as long as the trigger is
asserted, unless the transfer is complete.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 7 - 14 (8 bit)
BURSTPOWER : Burst Power is used in two ways. It always selects the address wrap size when SRCBURSTWRAP and/or DSTBURSTWRAP modes are selected (see descriptions elsewhere in this register). When the TRIGBURST field elsewhere in this register = 1, Burst Power selects how many transfers are performed for each DMA trigger. This can be used, for example, with peripherals that contain a FIFO that can initiate a DMA operation when the FIFO reaches a certain level. 0000: Burst size = 1 (20). 0001: Burst size = 2 (21). 0010: Burst size = 4 (22). ... 1010: Burst size = 1024 (210). This corresponds to the maximum supported transfer count. others: not supported. The total transfer length as defined in the XFERCOUNT bits in the XFERCFG register must be an even multiple of the burst size.
bits : 8 - 19 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
SRCBURSTWRAP : Source Burst Wrap. When enabled, the source data address for the DMA is wrapped, meaning that the source address range for each burst will be the same. As an example, this could be used to read several sequential registers from a peripheral for each DMA burst, reading the same registers again for each burst.
bits : 14 - 28 (15 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Source burst wrapping is not enabled for
this DMA channel.
1 : ENABLED
Enabled. Source burst wrapping is enabled for this
DMA channel.
End of enumeration elements list.
DSTBURSTWRAP : Destination Burst Wrap. When enabled, the destination data address for the DMA is wrapped, meaning that the destination address range for each burst will be the same. As an example, this could be used to write several sequential registers to a peripheral for each DMA burst, writing the same registers again for each burst.
bits : 15 - 30 (16 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Destination burst wrapping is not enabled
for this DMA channel.
1 : ENABLED
Enabled. Destination burst wrapping is enabled for
this DMA channel.
End of enumeration elements list.
CHPRIORITY : Priority of this channel when multiple DMA requests are pending. Eight priority levels are supported. 0x0 = highest priority. 0x7 = lowest priority.
bits : 16 - 34 (19 bit)
Control and status register for DMA channel 0.
address_offset : 0x4BC4 Bytes (0x0)
access : read-only
reset_value : 0x0
reset_Mask : 0x0
VALIDPENDING : Valid pending flag for this channel. This bit is set when a 1 is written to the corresponding bit in the related SETVALID register when CFGVALID = 1 for the same channel.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect. No effect on DMA
operation.
1 : VALID_PENDING
Valid pending.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
TRIG : Trigger flag. Indicates that the trigger for this channel is currently set. This bit is cleared at the end of an entire transfer or upon reload when CLRTRIG = 1.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_TRIGGERED
Not triggered. The trigger for this DMA channel is
not set. DMA operations will not be carried
out.
1 : TRIGGERED
Triggered. The trigger for this DMA channel is set.
DMA operations will be carried out.
End of enumeration elements list.
Transfer configuration register for DMA channel 0.
address_offset : 0x4C08 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CFGVALID : Configuration Valid flag. This bit indicates whether the current channel descriptor is valid and can potentially be acted upon, if all other activation criteria are fulfilled.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NOT_VALID
Not valid. The channel descriptor is not considered
valid until validated by an associated SETVALID0
setting.
1 : VALID
Valid. The current channel descriptor is considered
valid.
End of enumeration elements list.
RELOAD : Indicates whether the channel's control structure will be reloaded when the current descriptor is exhausted. Reloading allows ping-pong and linked transfers.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Do not reload the channels' control
structure when the current descriptor is
exhausted.
1 : ENABLED
Enabled. Reload the channels' control structure
when the current descriptor is exhausted.
End of enumeration elements list.
SWTRIG : Software Trigger.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_SET
Not set. When written by software, the trigger for
this channel is not set. A new trigger, as defined by the
HWTRIGEN, TRIGPOL, and TRIGTYPE will be needed to start the
channel.
1 : SET
Set, When written by software, the trigger for this
channel is set immediately. This feature should not be used
with level triggering when TRIGBURST = 0.
End of enumeration elements list.
CLRTRIG : Clear Trigger.
bits : 3 - 6 (4 bit)
Enumeration: ENUM
0 : NOT_CLEARED
Not cleared. The trigger is not cleared when this
descriptor is exhausted. If there is a reload, the next
descriptor will be started.
1 : CLEARED
Cleared. The trigger is cleared when this
descriptor is exhausted.
End of enumeration elements list.
SETINTA : Set Interrupt flag A for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTA flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
SETINTB : Set Interrupt flag B for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTB flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 6 - 13 (8 bit)
WIDTH : Transfer width used for this DMA channel.
bits : 8 - 17 (10 bit)
Enumeration: ENUM
0x0 : 8_BIT
8-bit. 8-bit transfers are performed (8-bit source
reads and destination writes).
0x1 : 16_BIT
16-bit. 6-bit transfers are performed (16-bit
source reads and destination writes).
0x2 : 32_BIT
32-bit. 32-bit transfers are performed (32-bit
source reads and destination writes).
0x3 : RESERVED
Reserved. Reserved setting, do not
use.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
SRCINC : Determines whether the source address is incremented for each DMA transfer.
bits : 12 - 25 (14 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The source address is not incremented
for each transfer. This is the usual case when the source is
a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The source address is incremented by the
amount specified by Width for each transfer. This is the
usual case when the source is memory.
0x2 : 2_X_WIDTH
2 x width. The source address is incremented by 2
times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The source address is incremented by 4
times the amount specified by Width for each
transfer.
End of enumeration elements list.
DSTINC : Determines whether the destination address is incremented for each DMA transfer.
bits : 14 - 29 (16 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The destination address is not
incremented for each transfer. This is the usual case when
the destination is a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The destination address is incremented
by the amount specified by Width for each transfer. This is
the usual case when the destination is memory.
0x2 : 2_X_WIDTH
2 x width. The destination address is incremented
by 2 times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The destination address is incremented
by 4 times the amount specified by Width for each
transfer.
End of enumeration elements list.
XFERCOUNT : Total number of transfers to be performed, minus 1 encoded. The number of bytes transferred is: (XFERCOUNT + 1) x data width (as defined by the WIDTH field). The DMA controller uses this bit field during transfer to count down. Hence, it cannot be used by software to read back the size of the transfer, for instance, in an interrupt handler. 0x0 = a total of 1 transfer will be performed. 0x1 = a total of 2 transfers will be performed. ... 0x3FF = a total of 1,024 transfers will be performed.
bits : 16 - 41 (26 bit)
Interrupt Enable Clear for all DMA channels.
address_offset : 0x50 Bytes (0x0)
access : write-only
reset_value : 0x0
reset_Mask : 0x0
CLR : Writing ones to this register clears corresponding bits in the INTENSET0. Bit n corresponds to DMA channel n.
bits : 0 - 21 (22 bit)
RESERVED : Reserved.
bits : 22 - 53 (32 bit)
Configuration register for DMA channel 0.
address_offset : 0x5080 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
PERIPHREQEN : Peripheral request Enable. If a DMA channel is used to perform a memory-to-memory move, any peripheral DMA request associated with that channel can be disabled to prevent any interaction between the peripheral and the DMA controller.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Peripheral DMA requests are
disabled.
1 : ENABLED
Enabled. Peripheral DMA requests are
enabled.
End of enumeration elements list.
HWTRIGEN : Hardware Triggering Enable for this channel.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Hardware triggering is not
used.
1 : ENABLED
Enabled. Use hardware triggering.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 2 - 5 (4 bit)
TRIGPOL : Trigger Polarity. Selects the polarity of a hardware trigger for this channel.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : ACTIVE_LOW__FALLING
Active low - falling edge. Hardware trigger is
active low or falling edge triggered, based on
TRIGTYPE.
1 : ACTIVE_HIGH__RISING
Active high - rising edge. Hardware trigger is
active high or rising edge triggered, based on
TRIGTYPE.
End of enumeration elements list.
TRIGTYPE : Trigger Type. Selects hardware trigger as edge triggered or level triggered.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : EDGE
Edge. Hardware trigger is edge triggered. Transfers
will be initiated and completed, as specified for a single
trigger.
1 : LEVEL
Level. Hardware trigger is level triggered. Note
that when level triggering without burst (BURSTPOWER = 0) is
selected, only hardware triggers should be used on that
channel. Transfers continue as long as the trigger level is
asserted. Once the trigger is de-asserted, the transfer will
be paused until the trigger is, again, asserted. However,
the transfer will not be paused until any remaining
transfers within the current BURSTPOWER length are
completed.
End of enumeration elements list.
TRIGBURST : Trigger Burst. Selects whether hardware triggers cause a single or burst transfer.
bits : 6 - 12 (7 bit)
Enumeration: ENUM
0 : SINGLE_TRANSFER
Single transfer. Hardware trigger causes a single
transfer.
1 : BURST_TRANSFER
Burst transfer. When the trigger for this channel
is set to edge triggered, a hardware trigger causes a burst
transfer, as defined by BURSTPOWER. When the trigger for
this channel is set to level triggered, a hardware trigger
causes transfers to continue as long as the trigger is
asserted, unless the transfer is complete.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 7 - 14 (8 bit)
BURSTPOWER : Burst Power is used in two ways. It always selects the address wrap size when SRCBURSTWRAP and/or DSTBURSTWRAP modes are selected (see descriptions elsewhere in this register). When the TRIGBURST field elsewhere in this register = 1, Burst Power selects how many transfers are performed for each DMA trigger. This can be used, for example, with peripherals that contain a FIFO that can initiate a DMA operation when the FIFO reaches a certain level. 0000: Burst size = 1 (20). 0001: Burst size = 2 (21). 0010: Burst size = 4 (22). ... 1010: Burst size = 1024 (210). This corresponds to the maximum supported transfer count. others: not supported. The total transfer length as defined in the XFERCOUNT bits in the XFERCFG register must be an even multiple of the burst size.
bits : 8 - 19 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
SRCBURSTWRAP : Source Burst Wrap. When enabled, the source data address for the DMA is wrapped, meaning that the source address range for each burst will be the same. As an example, this could be used to read several sequential registers from a peripheral for each DMA burst, reading the same registers again for each burst.
bits : 14 - 28 (15 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Source burst wrapping is not enabled for
this DMA channel.
1 : ENABLED
Enabled. Source burst wrapping is enabled for this
DMA channel.
End of enumeration elements list.
DSTBURSTWRAP : Destination Burst Wrap. When enabled, the destination data address for the DMA is wrapped, meaning that the destination address range for each burst will be the same. As an example, this could be used to write several sequential registers to a peripheral for each DMA burst, writing the same registers again for each burst.
bits : 15 - 30 (16 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Destination burst wrapping is not enabled
for this DMA channel.
1 : ENABLED
Enabled. Destination burst wrapping is enabled for
this DMA channel.
End of enumeration elements list.
CHPRIORITY : Priority of this channel when multiple DMA requests are pending. Eight priority levels are supported. 0x0 = highest priority. 0x7 = lowest priority.
bits : 16 - 34 (19 bit)
Control and status register for DMA channel 0.
address_offset : 0x50C8 Bytes (0x0)
access : read-only
reset_value : 0x0
reset_Mask : 0x0
VALIDPENDING : Valid pending flag for this channel. This bit is set when a 1 is written to the corresponding bit in the related SETVALID register when CFGVALID = 1 for the same channel.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect. No effect on DMA
operation.
1 : VALID_PENDING
Valid pending.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
TRIG : Trigger flag. Indicates that the trigger for this channel is currently set. This bit is cleared at the end of an entire transfer or upon reload when CLRTRIG = 1.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_TRIGGERED
Not triggered. The trigger for this DMA channel is
not set. DMA operations will not be carried
out.
1 : TRIGGERED
Triggered. The trigger for this DMA channel is set.
DMA operations will be carried out.
End of enumeration elements list.
Transfer configuration register for DMA channel 0.
address_offset : 0x5110 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CFGVALID : Configuration Valid flag. This bit indicates whether the current channel descriptor is valid and can potentially be acted upon, if all other activation criteria are fulfilled.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NOT_VALID
Not valid. The channel descriptor is not considered
valid until validated by an associated SETVALID0
setting.
1 : VALID
Valid. The current channel descriptor is considered
valid.
End of enumeration elements list.
RELOAD : Indicates whether the channel's control structure will be reloaded when the current descriptor is exhausted. Reloading allows ping-pong and linked transfers.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Do not reload the channels' control
structure when the current descriptor is
exhausted.
1 : ENABLED
Enabled. Reload the channels' control structure
when the current descriptor is exhausted.
End of enumeration elements list.
SWTRIG : Software Trigger.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_SET
Not set. When written by software, the trigger for
this channel is not set. A new trigger, as defined by the
HWTRIGEN, TRIGPOL, and TRIGTYPE will be needed to start the
channel.
1 : SET
Set, When written by software, the trigger for this
channel is set immediately. This feature should not be used
with level triggering when TRIGBURST = 0.
End of enumeration elements list.
CLRTRIG : Clear Trigger.
bits : 3 - 6 (4 bit)
Enumeration: ENUM
0 : NOT_CLEARED
Not cleared. The trigger is not cleared when this
descriptor is exhausted. If there is a reload, the next
descriptor will be started.
1 : CLEARED
Cleared. The trigger is cleared when this
descriptor is exhausted.
End of enumeration elements list.
SETINTA : Set Interrupt flag A for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTA flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
SETINTB : Set Interrupt flag B for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTB flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 6 - 13 (8 bit)
WIDTH : Transfer width used for this DMA channel.
bits : 8 - 17 (10 bit)
Enumeration: ENUM
0x0 : 8_BIT
8-bit. 8-bit transfers are performed (8-bit source
reads and destination writes).
0x1 : 16_BIT
16-bit. 6-bit transfers are performed (16-bit
source reads and destination writes).
0x2 : 32_BIT
32-bit. 32-bit transfers are performed (32-bit
source reads and destination writes).
0x3 : RESERVED
Reserved. Reserved setting, do not
use.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
SRCINC : Determines whether the source address is incremented for each DMA transfer.
bits : 12 - 25 (14 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The source address is not incremented
for each transfer. This is the usual case when the source is
a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The source address is incremented by the
amount specified by Width for each transfer. This is the
usual case when the source is memory.
0x2 : 2_X_WIDTH
2 x width. The source address is incremented by 2
times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The source address is incremented by 4
times the amount specified by Width for each
transfer.
End of enumeration elements list.
DSTINC : Determines whether the destination address is incremented for each DMA transfer.
bits : 14 - 29 (16 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The destination address is not
incremented for each transfer. This is the usual case when
the destination is a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The destination address is incremented
by the amount specified by Width for each transfer. This is
the usual case when the destination is memory.
0x2 : 2_X_WIDTH
2 x width. The destination address is incremented
by 2 times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The destination address is incremented
by 4 times the amount specified by Width for each
transfer.
End of enumeration elements list.
XFERCOUNT : Total number of transfers to be performed, minus 1 encoded. The number of bytes transferred is: (XFERCOUNT + 1) x data width (as defined by the WIDTH field). The DMA controller uses this bit field during transfer to count down. Hence, it cannot be used by software to read back the size of the transfer, for instance, in an interrupt handler. 0x0 = a total of 1 transfer will be performed. 0x1 = a total of 2 transfers will be performed. ... 0x3FF = a total of 1,024 transfers will be performed.
bits : 16 - 41 (26 bit)
Configuration register for DMA channel 0.
address_offset : 0x5590 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
PERIPHREQEN : Peripheral request Enable. If a DMA channel is used to perform a memory-to-memory move, any peripheral DMA request associated with that channel can be disabled to prevent any interaction between the peripheral and the DMA controller.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Peripheral DMA requests are
disabled.
1 : ENABLED
Enabled. Peripheral DMA requests are
enabled.
End of enumeration elements list.
HWTRIGEN : Hardware Triggering Enable for this channel.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Hardware triggering is not
used.
1 : ENABLED
Enabled. Use hardware triggering.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 2 - 5 (4 bit)
TRIGPOL : Trigger Polarity. Selects the polarity of a hardware trigger for this channel.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : ACTIVE_LOW__FALLING
Active low - falling edge. Hardware trigger is
active low or falling edge triggered, based on
TRIGTYPE.
1 : ACTIVE_HIGH__RISING
Active high - rising edge. Hardware trigger is
active high or rising edge triggered, based on
TRIGTYPE.
End of enumeration elements list.
TRIGTYPE : Trigger Type. Selects hardware trigger as edge triggered or level triggered.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : EDGE
Edge. Hardware trigger is edge triggered. Transfers
will be initiated and completed, as specified for a single
trigger.
1 : LEVEL
Level. Hardware trigger is level triggered. Note
that when level triggering without burst (BURSTPOWER = 0) is
selected, only hardware triggers should be used on that
channel. Transfers continue as long as the trigger level is
asserted. Once the trigger is de-asserted, the transfer will
be paused until the trigger is, again, asserted. However,
the transfer will not be paused until any remaining
transfers within the current BURSTPOWER length are
completed.
End of enumeration elements list.
TRIGBURST : Trigger Burst. Selects whether hardware triggers cause a single or burst transfer.
bits : 6 - 12 (7 bit)
Enumeration: ENUM
0 : SINGLE_TRANSFER
Single transfer. Hardware trigger causes a single
transfer.
1 : BURST_TRANSFER
Burst transfer. When the trigger for this channel
is set to edge triggered, a hardware trigger causes a burst
transfer, as defined by BURSTPOWER. When the trigger for
this channel is set to level triggered, a hardware trigger
causes transfers to continue as long as the trigger is
asserted, unless the transfer is complete.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 7 - 14 (8 bit)
BURSTPOWER : Burst Power is used in two ways. It always selects the address wrap size when SRCBURSTWRAP and/or DSTBURSTWRAP modes are selected (see descriptions elsewhere in this register). When the TRIGBURST field elsewhere in this register = 1, Burst Power selects how many transfers are performed for each DMA trigger. This can be used, for example, with peripherals that contain a FIFO that can initiate a DMA operation when the FIFO reaches a certain level. 0000: Burst size = 1 (20). 0001: Burst size = 2 (21). 0010: Burst size = 4 (22). ... 1010: Burst size = 1024 (210). This corresponds to the maximum supported transfer count. others: not supported. The total transfer length as defined in the XFERCOUNT bits in the XFERCFG register must be an even multiple of the burst size.
bits : 8 - 19 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
SRCBURSTWRAP : Source Burst Wrap. When enabled, the source data address for the DMA is wrapped, meaning that the source address range for each burst will be the same. As an example, this could be used to read several sequential registers from a peripheral for each DMA burst, reading the same registers again for each burst.
bits : 14 - 28 (15 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Source burst wrapping is not enabled for
this DMA channel.
1 : ENABLED
Enabled. Source burst wrapping is enabled for this
DMA channel.
End of enumeration elements list.
DSTBURSTWRAP : Destination Burst Wrap. When enabled, the destination data address for the DMA is wrapped, meaning that the destination address range for each burst will be the same. As an example, this could be used to write several sequential registers to a peripheral for each DMA burst, writing the same registers again for each burst.
bits : 15 - 30 (16 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Destination burst wrapping is not enabled
for this DMA channel.
1 : ENABLED
Enabled. Destination burst wrapping is enabled for
this DMA channel.
End of enumeration elements list.
CHPRIORITY : Priority of this channel when multiple DMA requests are pending. Eight priority levels are supported. 0x0 = highest priority. 0x7 = lowest priority.
bits : 16 - 34 (19 bit)
Control and status register for DMA channel 0.
address_offset : 0x55DC Bytes (0x0)
access : read-only
reset_value : 0x0
reset_Mask : 0x0
VALIDPENDING : Valid pending flag for this channel. This bit is set when a 1 is written to the corresponding bit in the related SETVALID register when CFGVALID = 1 for the same channel.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect. No effect on DMA
operation.
1 : VALID_PENDING
Valid pending.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
TRIG : Trigger flag. Indicates that the trigger for this channel is currently set. This bit is cleared at the end of an entire transfer or upon reload when CLRTRIG = 1.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_TRIGGERED
Not triggered. The trigger for this DMA channel is
not set. DMA operations will not be carried
out.
1 : TRIGGERED
Triggered. The trigger for this DMA channel is set.
DMA operations will be carried out.
End of enumeration elements list.
Transfer configuration register for DMA channel 0.
address_offset : 0x5628 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CFGVALID : Configuration Valid flag. This bit indicates whether the current channel descriptor is valid and can potentially be acted upon, if all other activation criteria are fulfilled.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NOT_VALID
Not valid. The channel descriptor is not considered
valid until validated by an associated SETVALID0
setting.
1 : VALID
Valid. The current channel descriptor is considered
valid.
End of enumeration elements list.
RELOAD : Indicates whether the channel's control structure will be reloaded when the current descriptor is exhausted. Reloading allows ping-pong and linked transfers.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Do not reload the channels' control
structure when the current descriptor is
exhausted.
1 : ENABLED
Enabled. Reload the channels' control structure
when the current descriptor is exhausted.
End of enumeration elements list.
SWTRIG : Software Trigger.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_SET
Not set. When written by software, the trigger for
this channel is not set. A new trigger, as defined by the
HWTRIGEN, TRIGPOL, and TRIGTYPE will be needed to start the
channel.
1 : SET
Set, When written by software, the trigger for this
channel is set immediately. This feature should not be used
with level triggering when TRIGBURST = 0.
End of enumeration elements list.
CLRTRIG : Clear Trigger.
bits : 3 - 6 (4 bit)
Enumeration: ENUM
0 : NOT_CLEARED
Not cleared. The trigger is not cleared when this
descriptor is exhausted. If there is a reload, the next
descriptor will be started.
1 : CLEARED
Cleared. The trigger is cleared when this
descriptor is exhausted.
End of enumeration elements list.
SETINTA : Set Interrupt flag A for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTA flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
SETINTB : Set Interrupt flag B for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTB flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 6 - 13 (8 bit)
WIDTH : Transfer width used for this DMA channel.
bits : 8 - 17 (10 bit)
Enumeration: ENUM
0x0 : 8_BIT
8-bit. 8-bit transfers are performed (8-bit source
reads and destination writes).
0x1 : 16_BIT
16-bit. 6-bit transfers are performed (16-bit
source reads and destination writes).
0x2 : 32_BIT
32-bit. 32-bit transfers are performed (32-bit
source reads and destination writes).
0x3 : RESERVED
Reserved. Reserved setting, do not
use.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
SRCINC : Determines whether the source address is incremented for each DMA transfer.
bits : 12 - 25 (14 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The source address is not incremented
for each transfer. This is the usual case when the source is
a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The source address is incremented by the
amount specified by Width for each transfer. This is the
usual case when the source is memory.
0x2 : 2_X_WIDTH
2 x width. The source address is incremented by 2
times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The source address is incremented by 4
times the amount specified by Width for each
transfer.
End of enumeration elements list.
DSTINC : Determines whether the destination address is incremented for each DMA transfer.
bits : 14 - 29 (16 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The destination address is not
incremented for each transfer. This is the usual case when
the destination is a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The destination address is incremented
by the amount specified by Width for each transfer. This is
the usual case when the destination is memory.
0x2 : 2_X_WIDTH
2 x width. The destination address is incremented
by 2 times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The destination address is incremented
by 4 times the amount specified by Width for each
transfer.
End of enumeration elements list.
XFERCOUNT : Total number of transfers to be performed, minus 1 encoded. The number of bytes transferred is: (XFERCOUNT + 1) x data width (as defined by the WIDTH field). The DMA controller uses this bit field during transfer to count down. Hence, it cannot be used by software to read back the size of the transfer, for instance, in an interrupt handler. 0x0 = a total of 1 transfer will be performed. 0x1 = a total of 2 transfers will be performed. ... 0x3FF = a total of 1,024 transfers will be performed.
bits : 16 - 41 (26 bit)
Interrupt A status for all DMA channels.
address_offset : 0x58 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
IA : Interrupt A status for DMA channel n. Bit n corresponds to DMA channel n. 0 = the DMA channel interrupt A is not active. 1 = the DMA channel interrupt A is active.
bits : 0 - 21 (22 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 22 - 53 (32 bit)
Configuration register for DMA channel 0.
address_offset : 0x5AB0 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
PERIPHREQEN : Peripheral request Enable. If a DMA channel is used to perform a memory-to-memory move, any peripheral DMA request associated with that channel can be disabled to prevent any interaction between the peripheral and the DMA controller.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Peripheral DMA requests are
disabled.
1 : ENABLED
Enabled. Peripheral DMA requests are
enabled.
End of enumeration elements list.
HWTRIGEN : Hardware Triggering Enable for this channel.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Hardware triggering is not
used.
1 : ENABLED
Enabled. Use hardware triggering.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 2 - 5 (4 bit)
TRIGPOL : Trigger Polarity. Selects the polarity of a hardware trigger for this channel.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : ACTIVE_LOW__FALLING
Active low - falling edge. Hardware trigger is
active low or falling edge triggered, based on
TRIGTYPE.
1 : ACTIVE_HIGH__RISING
Active high - rising edge. Hardware trigger is
active high or rising edge triggered, based on
TRIGTYPE.
End of enumeration elements list.
TRIGTYPE : Trigger Type. Selects hardware trigger as edge triggered or level triggered.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : EDGE
Edge. Hardware trigger is edge triggered. Transfers
will be initiated and completed, as specified for a single
trigger.
1 : LEVEL
Level. Hardware trigger is level triggered. Note
that when level triggering without burst (BURSTPOWER = 0) is
selected, only hardware triggers should be used on that
channel. Transfers continue as long as the trigger level is
asserted. Once the trigger is de-asserted, the transfer will
be paused until the trigger is, again, asserted. However,
the transfer will not be paused until any remaining
transfers within the current BURSTPOWER length are
completed.
End of enumeration elements list.
TRIGBURST : Trigger Burst. Selects whether hardware triggers cause a single or burst transfer.
bits : 6 - 12 (7 bit)
Enumeration: ENUM
0 : SINGLE_TRANSFER
Single transfer. Hardware trigger causes a single
transfer.
1 : BURST_TRANSFER
Burst transfer. When the trigger for this channel
is set to edge triggered, a hardware trigger causes a burst
transfer, as defined by BURSTPOWER. When the trigger for
this channel is set to level triggered, a hardware trigger
causes transfers to continue as long as the trigger is
asserted, unless the transfer is complete.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 7 - 14 (8 bit)
BURSTPOWER : Burst Power is used in two ways. It always selects the address wrap size when SRCBURSTWRAP and/or DSTBURSTWRAP modes are selected (see descriptions elsewhere in this register). When the TRIGBURST field elsewhere in this register = 1, Burst Power selects how many transfers are performed for each DMA trigger. This can be used, for example, with peripherals that contain a FIFO that can initiate a DMA operation when the FIFO reaches a certain level. 0000: Burst size = 1 (20). 0001: Burst size = 2 (21). 0010: Burst size = 4 (22). ... 1010: Burst size = 1024 (210). This corresponds to the maximum supported transfer count. others: not supported. The total transfer length as defined in the XFERCOUNT bits in the XFERCFG register must be an even multiple of the burst size.
bits : 8 - 19 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
SRCBURSTWRAP : Source Burst Wrap. When enabled, the source data address for the DMA is wrapped, meaning that the source address range for each burst will be the same. As an example, this could be used to read several sequential registers from a peripheral for each DMA burst, reading the same registers again for each burst.
bits : 14 - 28 (15 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Source burst wrapping is not enabled for
this DMA channel.
1 : ENABLED
Enabled. Source burst wrapping is enabled for this
DMA channel.
End of enumeration elements list.
DSTBURSTWRAP : Destination Burst Wrap. When enabled, the destination data address for the DMA is wrapped, meaning that the destination address range for each burst will be the same. As an example, this could be used to write several sequential registers to a peripheral for each DMA burst, writing the same registers again for each burst.
bits : 15 - 30 (16 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Destination burst wrapping is not enabled
for this DMA channel.
1 : ENABLED
Enabled. Destination burst wrapping is enabled for
this DMA channel.
End of enumeration elements list.
CHPRIORITY : Priority of this channel when multiple DMA requests are pending. Eight priority levels are supported. 0x0 = highest priority. 0x7 = lowest priority.
bits : 16 - 34 (19 bit)
Control and status register for DMA channel 0.
address_offset : 0x5B00 Bytes (0x0)
access : read-only
reset_value : 0x0
reset_Mask : 0x0
VALIDPENDING : Valid pending flag for this channel. This bit is set when a 1 is written to the corresponding bit in the related SETVALID register when CFGVALID = 1 for the same channel.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect. No effect on DMA
operation.
1 : VALID_PENDING
Valid pending.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
TRIG : Trigger flag. Indicates that the trigger for this channel is currently set. This bit is cleared at the end of an entire transfer or upon reload when CLRTRIG = 1.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_TRIGGERED
Not triggered. The trigger for this DMA channel is
not set. DMA operations will not be carried
out.
1 : TRIGGERED
Triggered. The trigger for this DMA channel is set.
DMA operations will be carried out.
End of enumeration elements list.
Transfer configuration register for DMA channel 0.
address_offset : 0x5B50 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CFGVALID : Configuration Valid flag. This bit indicates whether the current channel descriptor is valid and can potentially be acted upon, if all other activation criteria are fulfilled.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NOT_VALID
Not valid. The channel descriptor is not considered
valid until validated by an associated SETVALID0
setting.
1 : VALID
Valid. The current channel descriptor is considered
valid.
End of enumeration elements list.
RELOAD : Indicates whether the channel's control structure will be reloaded when the current descriptor is exhausted. Reloading allows ping-pong and linked transfers.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Do not reload the channels' control
structure when the current descriptor is
exhausted.
1 : ENABLED
Enabled. Reload the channels' control structure
when the current descriptor is exhausted.
End of enumeration elements list.
SWTRIG : Software Trigger.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_SET
Not set. When written by software, the trigger for
this channel is not set. A new trigger, as defined by the
HWTRIGEN, TRIGPOL, and TRIGTYPE will be needed to start the
channel.
1 : SET
Set, When written by software, the trigger for this
channel is set immediately. This feature should not be used
with level triggering when TRIGBURST = 0.
End of enumeration elements list.
CLRTRIG : Clear Trigger.
bits : 3 - 6 (4 bit)
Enumeration: ENUM
0 : NOT_CLEARED
Not cleared. The trigger is not cleared when this
descriptor is exhausted. If there is a reload, the next
descriptor will be started.
1 : CLEARED
Cleared. The trigger is cleared when this
descriptor is exhausted.
End of enumeration elements list.
SETINTA : Set Interrupt flag A for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTA flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
SETINTB : Set Interrupt flag B for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTB flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 6 - 13 (8 bit)
WIDTH : Transfer width used for this DMA channel.
bits : 8 - 17 (10 bit)
Enumeration: ENUM
0x0 : 8_BIT
8-bit. 8-bit transfers are performed (8-bit source
reads and destination writes).
0x1 : 16_BIT
16-bit. 6-bit transfers are performed (16-bit
source reads and destination writes).
0x2 : 32_BIT
32-bit. 32-bit transfers are performed (32-bit
source reads and destination writes).
0x3 : RESERVED
Reserved. Reserved setting, do not
use.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
SRCINC : Determines whether the source address is incremented for each DMA transfer.
bits : 12 - 25 (14 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The source address is not incremented
for each transfer. This is the usual case when the source is
a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The source address is incremented by the
amount specified by Width for each transfer. This is the
usual case when the source is memory.
0x2 : 2_X_WIDTH
2 x width. The source address is incremented by 2
times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The source address is incremented by 4
times the amount specified by Width for each
transfer.
End of enumeration elements list.
DSTINC : Determines whether the destination address is incremented for each DMA transfer.
bits : 14 - 29 (16 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The destination address is not
incremented for each transfer. This is the usual case when
the destination is a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The destination address is incremented
by the amount specified by Width for each transfer. This is
the usual case when the destination is memory.
0x2 : 2_X_WIDTH
2 x width. The destination address is incremented
by 2 times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The destination address is incremented
by 4 times the amount specified by Width for each
transfer.
End of enumeration elements list.
XFERCOUNT : Total number of transfers to be performed, minus 1 encoded. The number of bytes transferred is: (XFERCOUNT + 1) x data width (as defined by the WIDTH field). The DMA controller uses this bit field during transfer to count down. Hence, it cannot be used by software to read back the size of the transfer, for instance, in an interrupt handler. 0x0 = a total of 1 transfer will be performed. 0x1 = a total of 2 transfers will be performed. ... 0x3FF = a total of 1,024 transfers will be performed.
bits : 16 - 41 (26 bit)
Configuration register for DMA channel 0.
address_offset : 0x5FE0 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
PERIPHREQEN : Peripheral request Enable. If a DMA channel is used to perform a memory-to-memory move, any peripheral DMA request associated with that channel can be disabled to prevent any interaction between the peripheral and the DMA controller.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Peripheral DMA requests are
disabled.
1 : ENABLED
Enabled. Peripheral DMA requests are
enabled.
End of enumeration elements list.
HWTRIGEN : Hardware Triggering Enable for this channel.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Hardware triggering is not
used.
1 : ENABLED
Enabled. Use hardware triggering.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 2 - 5 (4 bit)
TRIGPOL : Trigger Polarity. Selects the polarity of a hardware trigger for this channel.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : ACTIVE_LOW__FALLING
Active low - falling edge. Hardware trigger is
active low or falling edge triggered, based on
TRIGTYPE.
1 : ACTIVE_HIGH__RISING
Active high - rising edge. Hardware trigger is
active high or rising edge triggered, based on
TRIGTYPE.
End of enumeration elements list.
TRIGTYPE : Trigger Type. Selects hardware trigger as edge triggered or level triggered.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : EDGE
Edge. Hardware trigger is edge triggered. Transfers
will be initiated and completed, as specified for a single
trigger.
1 : LEVEL
Level. Hardware trigger is level triggered. Note
that when level triggering without burst (BURSTPOWER = 0) is
selected, only hardware triggers should be used on that
channel. Transfers continue as long as the trigger level is
asserted. Once the trigger is de-asserted, the transfer will
be paused until the trigger is, again, asserted. However,
the transfer will not be paused until any remaining
transfers within the current BURSTPOWER length are
completed.
End of enumeration elements list.
TRIGBURST : Trigger Burst. Selects whether hardware triggers cause a single or burst transfer.
bits : 6 - 12 (7 bit)
Enumeration: ENUM
0 : SINGLE_TRANSFER
Single transfer. Hardware trigger causes a single
transfer.
1 : BURST_TRANSFER
Burst transfer. When the trigger for this channel
is set to edge triggered, a hardware trigger causes a burst
transfer, as defined by BURSTPOWER. When the trigger for
this channel is set to level triggered, a hardware trigger
causes transfers to continue as long as the trigger is
asserted, unless the transfer is complete.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 7 - 14 (8 bit)
BURSTPOWER : Burst Power is used in two ways. It always selects the address wrap size when SRCBURSTWRAP and/or DSTBURSTWRAP modes are selected (see descriptions elsewhere in this register). When the TRIGBURST field elsewhere in this register = 1, Burst Power selects how many transfers are performed for each DMA trigger. This can be used, for example, with peripherals that contain a FIFO that can initiate a DMA operation when the FIFO reaches a certain level. 0000: Burst size = 1 (20). 0001: Burst size = 2 (21). 0010: Burst size = 4 (22). ... 1010: Burst size = 1024 (210). This corresponds to the maximum supported transfer count. others: not supported. The total transfer length as defined in the XFERCOUNT bits in the XFERCFG register must be an even multiple of the burst size.
bits : 8 - 19 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
SRCBURSTWRAP : Source Burst Wrap. When enabled, the source data address for the DMA is wrapped, meaning that the source address range for each burst will be the same. As an example, this could be used to read several sequential registers from a peripheral for each DMA burst, reading the same registers again for each burst.
bits : 14 - 28 (15 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Source burst wrapping is not enabled for
this DMA channel.
1 : ENABLED
Enabled. Source burst wrapping is enabled for this
DMA channel.
End of enumeration elements list.
DSTBURSTWRAP : Destination Burst Wrap. When enabled, the destination data address for the DMA is wrapped, meaning that the destination address range for each burst will be the same. As an example, this could be used to write several sequential registers to a peripheral for each DMA burst, writing the same registers again for each burst.
bits : 15 - 30 (16 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Destination burst wrapping is not enabled
for this DMA channel.
1 : ENABLED
Enabled. Destination burst wrapping is enabled for
this DMA channel.
End of enumeration elements list.
CHPRIORITY : Priority of this channel when multiple DMA requests are pending. Eight priority levels are supported. 0x0 = highest priority. 0x7 = lowest priority.
bits : 16 - 34 (19 bit)
Interrupt B status for all DMA channels.
address_offset : 0x60 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
IB : Interrupt B status for DMA channel n. Bit n corresponds to DMA channel n. 0 = the DMA channel interrupt B is not active. 1 = the DMA channel interrupt B is active.
bits : 0 - 21 (22 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 22 - 53 (32 bit)
Control and status register for DMA channel 0.
address_offset : 0x6034 Bytes (0x0)
access : read-only
reset_value : 0x0
reset_Mask : 0x0
VALIDPENDING : Valid pending flag for this channel. This bit is set when a 1 is written to the corresponding bit in the related SETVALID register when CFGVALID = 1 for the same channel.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect. No effect on DMA
operation.
1 : VALID_PENDING
Valid pending.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
TRIG : Trigger flag. Indicates that the trigger for this channel is currently set. This bit is cleared at the end of an entire transfer or upon reload when CLRTRIG = 1.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_TRIGGERED
Not triggered. The trigger for this DMA channel is
not set. DMA operations will not be carried
out.
1 : TRIGGERED
Triggered. The trigger for this DMA channel is set.
DMA operations will be carried out.
End of enumeration elements list.
Transfer configuration register for DMA channel 0.
address_offset : 0x6088 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CFGVALID : Configuration Valid flag. This bit indicates whether the current channel descriptor is valid and can potentially be acted upon, if all other activation criteria are fulfilled.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NOT_VALID
Not valid. The channel descriptor is not considered
valid until validated by an associated SETVALID0
setting.
1 : VALID
Valid. The current channel descriptor is considered
valid.
End of enumeration elements list.
RELOAD : Indicates whether the channel's control structure will be reloaded when the current descriptor is exhausted. Reloading allows ping-pong and linked transfers.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Do not reload the channels' control
structure when the current descriptor is
exhausted.
1 : ENABLED
Enabled. Reload the channels' control structure
when the current descriptor is exhausted.
End of enumeration elements list.
SWTRIG : Software Trigger.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_SET
Not set. When written by software, the trigger for
this channel is not set. A new trigger, as defined by the
HWTRIGEN, TRIGPOL, and TRIGTYPE will be needed to start the
channel.
1 : SET
Set, When written by software, the trigger for this
channel is set immediately. This feature should not be used
with level triggering when TRIGBURST = 0.
End of enumeration elements list.
CLRTRIG : Clear Trigger.
bits : 3 - 6 (4 bit)
Enumeration: ENUM
0 : NOT_CLEARED
Not cleared. The trigger is not cleared when this
descriptor is exhausted. If there is a reload, the next
descriptor will be started.
1 : CLEARED
Cleared. The trigger is cleared when this
descriptor is exhausted.
End of enumeration elements list.
SETINTA : Set Interrupt flag A for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTA flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
SETINTB : Set Interrupt flag B for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTB flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 6 - 13 (8 bit)
WIDTH : Transfer width used for this DMA channel.
bits : 8 - 17 (10 bit)
Enumeration: ENUM
0x0 : 8_BIT
8-bit. 8-bit transfers are performed (8-bit source
reads and destination writes).
0x1 : 16_BIT
16-bit. 6-bit transfers are performed (16-bit
source reads and destination writes).
0x2 : 32_BIT
32-bit. 32-bit transfers are performed (32-bit
source reads and destination writes).
0x3 : RESERVED
Reserved. Reserved setting, do not
use.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
SRCINC : Determines whether the source address is incremented for each DMA transfer.
bits : 12 - 25 (14 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The source address is not incremented
for each transfer. This is the usual case when the source is
a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The source address is incremented by the
amount specified by Width for each transfer. This is the
usual case when the source is memory.
0x2 : 2_X_WIDTH
2 x width. The source address is incremented by 2
times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The source address is incremented by 4
times the amount specified by Width for each
transfer.
End of enumeration elements list.
DSTINC : Determines whether the destination address is incremented for each DMA transfer.
bits : 14 - 29 (16 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The destination address is not
incremented for each transfer. This is the usual case when
the destination is a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The destination address is incremented
by the amount specified by Width for each transfer. This is
the usual case when the destination is memory.
0x2 : 2_X_WIDTH
2 x width. The destination address is incremented
by 2 times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The destination address is incremented
by 4 times the amount specified by Width for each
transfer.
End of enumeration elements list.
XFERCOUNT : Total number of transfers to be performed, minus 1 encoded. The number of bytes transferred is: (XFERCOUNT + 1) x data width (as defined by the WIDTH field). The DMA controller uses this bit field during transfer to count down. Hence, it cannot be used by software to read back the size of the transfer, for instance, in an interrupt handler. 0x0 = a total of 1 transfer will be performed. 0x1 = a total of 2 transfers will be performed. ... 0x3FF = a total of 1,024 transfers will be performed.
bits : 16 - 41 (26 bit)
Configuration register for DMA channel 0.
address_offset : 0x6520 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
PERIPHREQEN : Peripheral request Enable. If a DMA channel is used to perform a memory-to-memory move, any peripheral DMA request associated with that channel can be disabled to prevent any interaction between the peripheral and the DMA controller.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Peripheral DMA requests are
disabled.
1 : ENABLED
Enabled. Peripheral DMA requests are
enabled.
End of enumeration elements list.
HWTRIGEN : Hardware Triggering Enable for this channel.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Hardware triggering is not
used.
1 : ENABLED
Enabled. Use hardware triggering.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 2 - 5 (4 bit)
TRIGPOL : Trigger Polarity. Selects the polarity of a hardware trigger for this channel.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : ACTIVE_LOW__FALLING
Active low - falling edge. Hardware trigger is
active low or falling edge triggered, based on
TRIGTYPE.
1 : ACTIVE_HIGH__RISING
Active high - rising edge. Hardware trigger is
active high or rising edge triggered, based on
TRIGTYPE.
End of enumeration elements list.
TRIGTYPE : Trigger Type. Selects hardware trigger as edge triggered or level triggered.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : EDGE
Edge. Hardware trigger is edge triggered. Transfers
will be initiated and completed, as specified for a single
trigger.
1 : LEVEL
Level. Hardware trigger is level triggered. Note
that when level triggering without burst (BURSTPOWER = 0) is
selected, only hardware triggers should be used on that
channel. Transfers continue as long as the trigger level is
asserted. Once the trigger is de-asserted, the transfer will
be paused until the trigger is, again, asserted. However,
the transfer will not be paused until any remaining
transfers within the current BURSTPOWER length are
completed.
End of enumeration elements list.
TRIGBURST : Trigger Burst. Selects whether hardware triggers cause a single or burst transfer.
bits : 6 - 12 (7 bit)
Enumeration: ENUM
0 : SINGLE_TRANSFER
Single transfer. Hardware trigger causes a single
transfer.
1 : BURST_TRANSFER
Burst transfer. When the trigger for this channel
is set to edge triggered, a hardware trigger causes a burst
transfer, as defined by BURSTPOWER. When the trigger for
this channel is set to level triggered, a hardware trigger
causes transfers to continue as long as the trigger is
asserted, unless the transfer is complete.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 7 - 14 (8 bit)
BURSTPOWER : Burst Power is used in two ways. It always selects the address wrap size when SRCBURSTWRAP and/or DSTBURSTWRAP modes are selected (see descriptions elsewhere in this register). When the TRIGBURST field elsewhere in this register = 1, Burst Power selects how many transfers are performed for each DMA trigger. This can be used, for example, with peripherals that contain a FIFO that can initiate a DMA operation when the FIFO reaches a certain level. 0000: Burst size = 1 (20). 0001: Burst size = 2 (21). 0010: Burst size = 4 (22). ... 1010: Burst size = 1024 (210). This corresponds to the maximum supported transfer count. others: not supported. The total transfer length as defined in the XFERCOUNT bits in the XFERCFG register must be an even multiple of the burst size.
bits : 8 - 19 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
SRCBURSTWRAP : Source Burst Wrap. When enabled, the source data address for the DMA is wrapped, meaning that the source address range for each burst will be the same. As an example, this could be used to read several sequential registers from a peripheral for each DMA burst, reading the same registers again for each burst.
bits : 14 - 28 (15 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Source burst wrapping is not enabled for
this DMA channel.
1 : ENABLED
Enabled. Source burst wrapping is enabled for this
DMA channel.
End of enumeration elements list.
DSTBURSTWRAP : Destination Burst Wrap. When enabled, the destination data address for the DMA is wrapped, meaning that the destination address range for each burst will be the same. As an example, this could be used to write several sequential registers to a peripheral for each DMA burst, writing the same registers again for each burst.
bits : 15 - 30 (16 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Destination burst wrapping is not enabled
for this DMA channel.
1 : ENABLED
Enabled. Destination burst wrapping is enabled for
this DMA channel.
End of enumeration elements list.
CHPRIORITY : Priority of this channel when multiple DMA requests are pending. Eight priority levels are supported. 0x0 = highest priority. 0x7 = lowest priority.
bits : 16 - 34 (19 bit)
Control and status register for DMA channel 0.
address_offset : 0x6578 Bytes (0x0)
access : read-only
reset_value : 0x0
reset_Mask : 0x0
VALIDPENDING : Valid pending flag for this channel. This bit is set when a 1 is written to the corresponding bit in the related SETVALID register when CFGVALID = 1 for the same channel.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect. No effect on DMA
operation.
1 : VALID_PENDING
Valid pending.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
TRIG : Trigger flag. Indicates that the trigger for this channel is currently set. This bit is cleared at the end of an entire transfer or upon reload when CLRTRIG = 1.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_TRIGGERED
Not triggered. The trigger for this DMA channel is
not set. DMA operations will not be carried
out.
1 : TRIGGERED
Triggered. The trigger for this DMA channel is set.
DMA operations will be carried out.
End of enumeration elements list.
Transfer configuration register for DMA channel 0.
address_offset : 0x65D0 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CFGVALID : Configuration Valid flag. This bit indicates whether the current channel descriptor is valid and can potentially be acted upon, if all other activation criteria are fulfilled.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NOT_VALID
Not valid. The channel descriptor is not considered
valid until validated by an associated SETVALID0
setting.
1 : VALID
Valid. The current channel descriptor is considered
valid.
End of enumeration elements list.
RELOAD : Indicates whether the channel's control structure will be reloaded when the current descriptor is exhausted. Reloading allows ping-pong and linked transfers.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Do not reload the channels' control
structure when the current descriptor is
exhausted.
1 : ENABLED
Enabled. Reload the channels' control structure
when the current descriptor is exhausted.
End of enumeration elements list.
SWTRIG : Software Trigger.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_SET
Not set. When written by software, the trigger for
this channel is not set. A new trigger, as defined by the
HWTRIGEN, TRIGPOL, and TRIGTYPE will be needed to start the
channel.
1 : SET
Set, When written by software, the trigger for this
channel is set immediately. This feature should not be used
with level triggering when TRIGBURST = 0.
End of enumeration elements list.
CLRTRIG : Clear Trigger.
bits : 3 - 6 (4 bit)
Enumeration: ENUM
0 : NOT_CLEARED
Not cleared. The trigger is not cleared when this
descriptor is exhausted. If there is a reload, the next
descriptor will be started.
1 : CLEARED
Cleared. The trigger is cleared when this
descriptor is exhausted.
End of enumeration elements list.
SETINTA : Set Interrupt flag A for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTA flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
SETINTB : Set Interrupt flag B for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTB flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 6 - 13 (8 bit)
WIDTH : Transfer width used for this DMA channel.
bits : 8 - 17 (10 bit)
Enumeration: ENUM
0x0 : 8_BIT
8-bit. 8-bit transfers are performed (8-bit source
reads and destination writes).
0x1 : 16_BIT
16-bit. 6-bit transfers are performed (16-bit
source reads and destination writes).
0x2 : 32_BIT
32-bit. 32-bit transfers are performed (32-bit
source reads and destination writes).
0x3 : RESERVED
Reserved. Reserved setting, do not
use.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
SRCINC : Determines whether the source address is incremented for each DMA transfer.
bits : 12 - 25 (14 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The source address is not incremented
for each transfer. This is the usual case when the source is
a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The source address is incremented by the
amount specified by Width for each transfer. This is the
usual case when the source is memory.
0x2 : 2_X_WIDTH
2 x width. The source address is incremented by 2
times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The source address is incremented by 4
times the amount specified by Width for each
transfer.
End of enumeration elements list.
DSTINC : Determines whether the destination address is incremented for each DMA transfer.
bits : 14 - 29 (16 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The destination address is not
incremented for each transfer. This is the usual case when
the destination is a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The destination address is incremented
by the amount specified by Width for each transfer. This is
the usual case when the destination is memory.
0x2 : 2_X_WIDTH
2 x width. The destination address is incremented
by 2 times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The destination address is incremented
by 4 times the amount specified by Width for each
transfer.
End of enumeration elements list.
XFERCOUNT : Total number of transfers to be performed, minus 1 encoded. The number of bytes transferred is: (XFERCOUNT + 1) x data width (as defined by the WIDTH field). The DMA controller uses this bit field during transfer to count down. Hence, it cannot be used by software to read back the size of the transfer, for instance, in an interrupt handler. 0x0 = a total of 1 transfer will be performed. 0x1 = a total of 2 transfers will be performed. ... 0x3FF = a total of 1,024 transfers will be performed.
bits : 16 - 41 (26 bit)
Set ValidPending control bits for all DMA channels.
address_offset : 0x68 Bytes (0x0)
access : write-only
reset_value : 0x0
reset_Mask : 0x0
SV : SETVALID control for DMA channel n. Bit n corresponds to DMA channel n. 0 = no effect. 1 = sets the VALIDPENDING control bit for DMA channel n.
bits : 0 - 21 (22 bit)
RESERVED : Reserved.
bits : 22 - 53 (32 bit)
Configuration register for DMA channel 0.
address_offset : 0x6A70 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
PERIPHREQEN : Peripheral request Enable. If a DMA channel is used to perform a memory-to-memory move, any peripheral DMA request associated with that channel can be disabled to prevent any interaction between the peripheral and the DMA controller.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Peripheral DMA requests are
disabled.
1 : ENABLED
Enabled. Peripheral DMA requests are
enabled.
End of enumeration elements list.
HWTRIGEN : Hardware Triggering Enable for this channel.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Hardware triggering is not
used.
1 : ENABLED
Enabled. Use hardware triggering.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 2 - 5 (4 bit)
TRIGPOL : Trigger Polarity. Selects the polarity of a hardware trigger for this channel.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : ACTIVE_LOW__FALLING
Active low - falling edge. Hardware trigger is
active low or falling edge triggered, based on
TRIGTYPE.
1 : ACTIVE_HIGH__RISING
Active high - rising edge. Hardware trigger is
active high or rising edge triggered, based on
TRIGTYPE.
End of enumeration elements list.
TRIGTYPE : Trigger Type. Selects hardware trigger as edge triggered or level triggered.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : EDGE
Edge. Hardware trigger is edge triggered. Transfers
will be initiated and completed, as specified for a single
trigger.
1 : LEVEL
Level. Hardware trigger is level triggered. Note
that when level triggering without burst (BURSTPOWER = 0) is
selected, only hardware triggers should be used on that
channel. Transfers continue as long as the trigger level is
asserted. Once the trigger is de-asserted, the transfer will
be paused until the trigger is, again, asserted. However,
the transfer will not be paused until any remaining
transfers within the current BURSTPOWER length are
completed.
End of enumeration elements list.
TRIGBURST : Trigger Burst. Selects whether hardware triggers cause a single or burst transfer.
bits : 6 - 12 (7 bit)
Enumeration: ENUM
0 : SINGLE_TRANSFER
Single transfer. Hardware trigger causes a single
transfer.
1 : BURST_TRANSFER
Burst transfer. When the trigger for this channel
is set to edge triggered, a hardware trigger causes a burst
transfer, as defined by BURSTPOWER. When the trigger for
this channel is set to level triggered, a hardware trigger
causes transfers to continue as long as the trigger is
asserted, unless the transfer is complete.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 7 - 14 (8 bit)
BURSTPOWER : Burst Power is used in two ways. It always selects the address wrap size when SRCBURSTWRAP and/or DSTBURSTWRAP modes are selected (see descriptions elsewhere in this register). When the TRIGBURST field elsewhere in this register = 1, Burst Power selects how many transfers are performed for each DMA trigger. This can be used, for example, with peripherals that contain a FIFO that can initiate a DMA operation when the FIFO reaches a certain level. 0000: Burst size = 1 (20). 0001: Burst size = 2 (21). 0010: Burst size = 4 (22). ... 1010: Burst size = 1024 (210). This corresponds to the maximum supported transfer count. others: not supported. The total transfer length as defined in the XFERCOUNT bits in the XFERCFG register must be an even multiple of the burst size.
bits : 8 - 19 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
SRCBURSTWRAP : Source Burst Wrap. When enabled, the source data address for the DMA is wrapped, meaning that the source address range for each burst will be the same. As an example, this could be used to read several sequential registers from a peripheral for each DMA burst, reading the same registers again for each burst.
bits : 14 - 28 (15 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Source burst wrapping is not enabled for
this DMA channel.
1 : ENABLED
Enabled. Source burst wrapping is enabled for this
DMA channel.
End of enumeration elements list.
DSTBURSTWRAP : Destination Burst Wrap. When enabled, the destination data address for the DMA is wrapped, meaning that the destination address range for each burst will be the same. As an example, this could be used to write several sequential registers to a peripheral for each DMA burst, writing the same registers again for each burst.
bits : 15 - 30 (16 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Destination burst wrapping is not enabled
for this DMA channel.
1 : ENABLED
Enabled. Destination burst wrapping is enabled for
this DMA channel.
End of enumeration elements list.
CHPRIORITY : Priority of this channel when multiple DMA requests are pending. Eight priority levels are supported. 0x0 = highest priority. 0x7 = lowest priority.
bits : 16 - 34 (19 bit)
Control and status register for DMA channel 0.
address_offset : 0x6ACC Bytes (0x0)
access : read-only
reset_value : 0x0
reset_Mask : 0x0
VALIDPENDING : Valid pending flag for this channel. This bit is set when a 1 is written to the corresponding bit in the related SETVALID register when CFGVALID = 1 for the same channel.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect. No effect on DMA
operation.
1 : VALID_PENDING
Valid pending.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
TRIG : Trigger flag. Indicates that the trigger for this channel is currently set. This bit is cleared at the end of an entire transfer or upon reload when CLRTRIG = 1.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_TRIGGERED
Not triggered. The trigger for this DMA channel is
not set. DMA operations will not be carried
out.
1 : TRIGGERED
Triggered. The trigger for this DMA channel is set.
DMA operations will be carried out.
End of enumeration elements list.
Transfer configuration register for DMA channel 0.
address_offset : 0x6B28 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CFGVALID : Configuration Valid flag. This bit indicates whether the current channel descriptor is valid and can potentially be acted upon, if all other activation criteria are fulfilled.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NOT_VALID
Not valid. The channel descriptor is not considered
valid until validated by an associated SETVALID0
setting.
1 : VALID
Valid. The current channel descriptor is considered
valid.
End of enumeration elements list.
RELOAD : Indicates whether the channel's control structure will be reloaded when the current descriptor is exhausted. Reloading allows ping-pong and linked transfers.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Do not reload the channels' control
structure when the current descriptor is
exhausted.
1 : ENABLED
Enabled. Reload the channels' control structure
when the current descriptor is exhausted.
End of enumeration elements list.
SWTRIG : Software Trigger.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_SET
Not set. When written by software, the trigger for
this channel is not set. A new trigger, as defined by the
HWTRIGEN, TRIGPOL, and TRIGTYPE will be needed to start the
channel.
1 : SET
Set, When written by software, the trigger for this
channel is set immediately. This feature should not be used
with level triggering when TRIGBURST = 0.
End of enumeration elements list.
CLRTRIG : Clear Trigger.
bits : 3 - 6 (4 bit)
Enumeration: ENUM
0 : NOT_CLEARED
Not cleared. The trigger is not cleared when this
descriptor is exhausted. If there is a reload, the next
descriptor will be started.
1 : CLEARED
Cleared. The trigger is cleared when this
descriptor is exhausted.
End of enumeration elements list.
SETINTA : Set Interrupt flag A for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTA flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
SETINTB : Set Interrupt flag B for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTB flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 6 - 13 (8 bit)
WIDTH : Transfer width used for this DMA channel.
bits : 8 - 17 (10 bit)
Enumeration: ENUM
0x0 : 8_BIT
8-bit. 8-bit transfers are performed (8-bit source
reads and destination writes).
0x1 : 16_BIT
16-bit. 6-bit transfers are performed (16-bit
source reads and destination writes).
0x2 : 32_BIT
32-bit. 32-bit transfers are performed (32-bit
source reads and destination writes).
0x3 : RESERVED
Reserved. Reserved setting, do not
use.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
SRCINC : Determines whether the source address is incremented for each DMA transfer.
bits : 12 - 25 (14 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The source address is not incremented
for each transfer. This is the usual case when the source is
a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The source address is incremented by the
amount specified by Width for each transfer. This is the
usual case when the source is memory.
0x2 : 2_X_WIDTH
2 x width. The source address is incremented by 2
times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The source address is incremented by 4
times the amount specified by Width for each
transfer.
End of enumeration elements list.
DSTINC : Determines whether the destination address is incremented for each DMA transfer.
bits : 14 - 29 (16 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The destination address is not
incremented for each transfer. This is the usual case when
the destination is a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The destination address is incremented
by the amount specified by Width for each transfer. This is
the usual case when the destination is memory.
0x2 : 2_X_WIDTH
2 x width. The destination address is incremented
by 2 times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The destination address is incremented
by 4 times the amount specified by Width for each
transfer.
End of enumeration elements list.
XFERCOUNT : Total number of transfers to be performed, minus 1 encoded. The number of bytes transferred is: (XFERCOUNT + 1) x data width (as defined by the WIDTH field). The DMA controller uses this bit field during transfer to count down. Hence, it cannot be used by software to read back the size of the transfer, for instance, in an interrupt handler. 0x0 = a total of 1 transfer will be performed. 0x1 = a total of 2 transfers will be performed. ... 0x3FF = a total of 1,024 transfers will be performed.
bits : 16 - 41 (26 bit)
Set Trigger control bits for all DMA channels.
address_offset : 0x70 Bytes (0x0)
access : write-only
reset_value : 0x0
reset_Mask : 0x0
TRIG : Set Trigger control bit for DMA channel 0. Bit n corresponds to DMA channel n. 0 = no effect. 1 = sets the TRIG bit for DMA channel n.
bits : 0 - 21 (22 bit)
RESERVED : Reserved.
bits : 22 - 53 (32 bit)
Channel Abort control for all DMA channels.
address_offset : 0x78 Bytes (0x0)
access : write-only
reset_value : 0x0
reset_Mask : 0x0
ABORTCTRL : Abort control for DMA channel 0. Bit n corresponds to DMA channel n. 0 = no effect. 1 = aborts DMA operations on channel n.
bits : 0 - 21 (22 bit)
RESERVED : Reserved.
bits : 22 - 53 (32 bit)
SRAM address of the channel configuration table.
address_offset : 0x8 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 0 - 8 (9 bit)
OFFSET : Address bits 31:9 of the beginning of the DMA descriptor table. For 18 channels, the table must begin on a 512 byte boundary.
bits : 9 - 40 (32 bit)
Configuration register for DMA channel 0.
address_offset : 0x800 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
PERIPHREQEN : Peripheral request Enable. If a DMA channel is used to perform a memory-to-memory move, any peripheral DMA request associated with that channel can be disabled to prevent any interaction between the peripheral and the DMA controller.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Peripheral DMA requests are
disabled.
1 : ENABLED
Enabled. Peripheral DMA requests are
enabled.
End of enumeration elements list.
HWTRIGEN : Hardware Triggering Enable for this channel.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Hardware triggering is not
used.
1 : ENABLED
Enabled. Use hardware triggering.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 2 - 5 (4 bit)
TRIGPOL : Trigger Polarity. Selects the polarity of a hardware trigger for this channel.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : ACTIVE_LOW__FALLING
Active low - falling edge. Hardware trigger is
active low or falling edge triggered, based on
TRIGTYPE.
1 : ACTIVE_HIGH__RISING
Active high - rising edge. Hardware trigger is
active high or rising edge triggered, based on
TRIGTYPE.
End of enumeration elements list.
TRIGTYPE : Trigger Type. Selects hardware trigger as edge triggered or level triggered.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : EDGE
Edge. Hardware trigger is edge triggered. Transfers
will be initiated and completed, as specified for a single
trigger.
1 : LEVEL
Level. Hardware trigger is level triggered. Note
that when level triggering without burst (BURSTPOWER = 0) is
selected, only hardware triggers should be used on that
channel. Transfers continue as long as the trigger level is
asserted. Once the trigger is de-asserted, the transfer will
be paused until the trigger is, again, asserted. However,
the transfer will not be paused until any remaining
transfers within the current BURSTPOWER length are
completed.
End of enumeration elements list.
TRIGBURST : Trigger Burst. Selects whether hardware triggers cause a single or burst transfer.
bits : 6 - 12 (7 bit)
Enumeration: ENUM
0 : SINGLE_TRANSFER
Single transfer. Hardware trigger causes a single
transfer.
1 : BURST_TRANSFER
Burst transfer. When the trigger for this channel
is set to edge triggered, a hardware trigger causes a burst
transfer, as defined by BURSTPOWER. When the trigger for
this channel is set to level triggered, a hardware trigger
causes transfers to continue as long as the trigger is
asserted, unless the transfer is complete.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 7 - 14 (8 bit)
BURSTPOWER : Burst Power is used in two ways. It always selects the address wrap size when SRCBURSTWRAP and/or DSTBURSTWRAP modes are selected (see descriptions elsewhere in this register). When the TRIGBURST field elsewhere in this register = 1, Burst Power selects how many transfers are performed for each DMA trigger. This can be used, for example, with peripherals that contain a FIFO that can initiate a DMA operation when the FIFO reaches a certain level. 0000: Burst size = 1 (20). 0001: Burst size = 2 (21). 0010: Burst size = 4 (22). ... 1010: Burst size = 1024 (210). This corresponds to the maximum supported transfer count. others: not supported. The total transfer length as defined in the XFERCOUNT bits in the XFERCFG register must be an even multiple of the burst size.
bits : 8 - 19 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
SRCBURSTWRAP : Source Burst Wrap. When enabled, the source data address for the DMA is wrapped, meaning that the source address range for each burst will be the same. As an example, this could be used to read several sequential registers from a peripheral for each DMA burst, reading the same registers again for each burst.
bits : 14 - 28 (15 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Source burst wrapping is not enabled for
this DMA channel.
1 : ENABLED
Enabled. Source burst wrapping is enabled for this
DMA channel.
End of enumeration elements list.
DSTBURSTWRAP : Destination Burst Wrap. When enabled, the destination data address for the DMA is wrapped, meaning that the destination address range for each burst will be the same. As an example, this could be used to write several sequential registers to a peripheral for each DMA burst, writing the same registers again for each burst.
bits : 15 - 30 (16 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Destination burst wrapping is not enabled
for this DMA channel.
1 : ENABLED
Enabled. Destination burst wrapping is enabled for
this DMA channel.
End of enumeration elements list.
CHPRIORITY : Priority of this channel when multiple DMA requests are pending. Eight priority levels are supported. 0x0 = highest priority. 0x7 = lowest priority.
bits : 16 - 34 (19 bit)
Control and status register for DMA channel 0.
address_offset : 0x808 Bytes (0x0)
access : read-only
reset_value : 0x0
reset_Mask : 0x0
VALIDPENDING : Valid pending flag for this channel. This bit is set when a 1 is written to the corresponding bit in the related SETVALID register when CFGVALID = 1 for the same channel.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect. No effect on DMA
operation.
1 : VALID_PENDING
Valid pending.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
TRIG : Trigger flag. Indicates that the trigger for this channel is currently set. This bit is cleared at the end of an entire transfer or upon reload when CLRTRIG = 1.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_TRIGGERED
Not triggered. The trigger for this DMA channel is
not set. DMA operations will not be carried
out.
1 : TRIGGERED
Triggered. The trigger for this DMA channel is set.
DMA operations will be carried out.
End of enumeration elements list.
Transfer configuration register for DMA channel 0.
address_offset : 0x810 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CFGVALID : Configuration Valid flag. This bit indicates whether the current channel descriptor is valid and can potentially be acted upon, if all other activation criteria are fulfilled.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NOT_VALID
Not valid. The channel descriptor is not considered
valid until validated by an associated SETVALID0
setting.
1 : VALID
Valid. The current channel descriptor is considered
valid.
End of enumeration elements list.
RELOAD : Indicates whether the channel's control structure will be reloaded when the current descriptor is exhausted. Reloading allows ping-pong and linked transfers.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Do not reload the channels' control
structure when the current descriptor is
exhausted.
1 : ENABLED
Enabled. Reload the channels' control structure
when the current descriptor is exhausted.
End of enumeration elements list.
SWTRIG : Software Trigger.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_SET
Not set. When written by software, the trigger for
this channel is not set. A new trigger, as defined by the
HWTRIGEN, TRIGPOL, and TRIGTYPE will be needed to start the
channel.
1 : SET
Set, When written by software, the trigger for this
channel is set immediately. This feature should not be used
with level triggering when TRIGBURST = 0.
End of enumeration elements list.
CLRTRIG : Clear Trigger.
bits : 3 - 6 (4 bit)
Enumeration: ENUM
0 : NOT_CLEARED
Not cleared. The trigger is not cleared when this
descriptor is exhausted. If there is a reload, the next
descriptor will be started.
1 : CLEARED
Cleared. The trigger is cleared when this
descriptor is exhausted.
End of enumeration elements list.
SETINTA : Set Interrupt flag A for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTA flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
SETINTB : Set Interrupt flag B for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTB flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 6 - 13 (8 bit)
WIDTH : Transfer width used for this DMA channel.
bits : 8 - 17 (10 bit)
Enumeration: ENUM
0x0 : 8_BIT
8-bit. 8-bit transfers are performed (8-bit source
reads and destination writes).
0x1 : 16_BIT
16-bit. 6-bit transfers are performed (16-bit
source reads and destination writes).
0x2 : 32_BIT
32-bit. 32-bit transfers are performed (32-bit
source reads and destination writes).
0x3 : RESERVED
Reserved. Reserved setting, do not
use.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
SRCINC : Determines whether the source address is incremented for each DMA transfer.
bits : 12 - 25 (14 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The source address is not incremented
for each transfer. This is the usual case when the source is
a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The source address is incremented by the
amount specified by Width for each transfer. This is the
usual case when the source is memory.
0x2 : 2_X_WIDTH
2 x width. The source address is incremented by 2
times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The source address is incremented by 4
times the amount specified by Width for each
transfer.
End of enumeration elements list.
DSTINC : Determines whether the destination address is incremented for each DMA transfer.
bits : 14 - 29 (16 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The destination address is not
incremented for each transfer. This is the usual case when
the destination is a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The destination address is incremented
by the amount specified by Width for each transfer. This is
the usual case when the destination is memory.
0x2 : 2_X_WIDTH
2 x width. The destination address is incremented
by 2 times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The destination address is incremented
by 4 times the amount specified by Width for each
transfer.
End of enumeration elements list.
XFERCOUNT : Total number of transfers to be performed, minus 1 encoded. The number of bytes transferred is: (XFERCOUNT + 1) x data width (as defined by the WIDTH field). The DMA controller uses this bit field during transfer to count down. Hence, it cannot be used by software to read back the size of the transfer, for instance, in an interrupt handler. 0x0 = a total of 1 transfer will be performed. 0x1 = a total of 2 transfers will be performed. ... 0x3FF = a total of 1,024 transfers will be performed.
bits : 16 - 41 (26 bit)
Configuration register for DMA channel 0.
address_offset : 0xC10 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
PERIPHREQEN : Peripheral request Enable. If a DMA channel is used to perform a memory-to-memory move, any peripheral DMA request associated with that channel can be disabled to prevent any interaction between the peripheral and the DMA controller.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Peripheral DMA requests are
disabled.
1 : ENABLED
Enabled. Peripheral DMA requests are
enabled.
End of enumeration elements list.
HWTRIGEN : Hardware Triggering Enable for this channel.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Hardware triggering is not
used.
1 : ENABLED
Enabled. Use hardware triggering.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 2 - 5 (4 bit)
TRIGPOL : Trigger Polarity. Selects the polarity of a hardware trigger for this channel.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : ACTIVE_LOW__FALLING
Active low - falling edge. Hardware trigger is
active low or falling edge triggered, based on
TRIGTYPE.
1 : ACTIVE_HIGH__RISING
Active high - rising edge. Hardware trigger is
active high or rising edge triggered, based on
TRIGTYPE.
End of enumeration elements list.
TRIGTYPE : Trigger Type. Selects hardware trigger as edge triggered or level triggered.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : EDGE
Edge. Hardware trigger is edge triggered. Transfers
will be initiated and completed, as specified for a single
trigger.
1 : LEVEL
Level. Hardware trigger is level triggered. Note
that when level triggering without burst (BURSTPOWER = 0) is
selected, only hardware triggers should be used on that
channel. Transfers continue as long as the trigger level is
asserted. Once the trigger is de-asserted, the transfer will
be paused until the trigger is, again, asserted. However,
the transfer will not be paused until any remaining
transfers within the current BURSTPOWER length are
completed.
End of enumeration elements list.
TRIGBURST : Trigger Burst. Selects whether hardware triggers cause a single or burst transfer.
bits : 6 - 12 (7 bit)
Enumeration: ENUM
0 : SINGLE_TRANSFER
Single transfer. Hardware trigger causes a single
transfer.
1 : BURST_TRANSFER
Burst transfer. When the trigger for this channel
is set to edge triggered, a hardware trigger causes a burst
transfer, as defined by BURSTPOWER. When the trigger for
this channel is set to level triggered, a hardware trigger
causes transfers to continue as long as the trigger is
asserted, unless the transfer is complete.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 7 - 14 (8 bit)
BURSTPOWER : Burst Power is used in two ways. It always selects the address wrap size when SRCBURSTWRAP and/or DSTBURSTWRAP modes are selected (see descriptions elsewhere in this register). When the TRIGBURST field elsewhere in this register = 1, Burst Power selects how many transfers are performed for each DMA trigger. This can be used, for example, with peripherals that contain a FIFO that can initiate a DMA operation when the FIFO reaches a certain level. 0000: Burst size = 1 (20). 0001: Burst size = 2 (21). 0010: Burst size = 4 (22). ... 1010: Burst size = 1024 (210). This corresponds to the maximum supported transfer count. others: not supported. The total transfer length as defined in the XFERCOUNT bits in the XFERCFG register must be an even multiple of the burst size.
bits : 8 - 19 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 12 - 25 (14 bit)
SRCBURSTWRAP : Source Burst Wrap. When enabled, the source data address for the DMA is wrapped, meaning that the source address range for each burst will be the same. As an example, this could be used to read several sequential registers from a peripheral for each DMA burst, reading the same registers again for each burst.
bits : 14 - 28 (15 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Source burst wrapping is not enabled for
this DMA channel.
1 : ENABLED
Enabled. Source burst wrapping is enabled for this
DMA channel.
End of enumeration elements list.
DSTBURSTWRAP : Destination Burst Wrap. When enabled, the destination data address for the DMA is wrapped, meaning that the destination address range for each burst will be the same. As an example, this could be used to write several sequential registers to a peripheral for each DMA burst, writing the same registers again for each burst.
bits : 15 - 30 (16 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Destination burst wrapping is not enabled
for this DMA channel.
1 : ENABLED
Enabled. Destination burst wrapping is enabled for
this DMA channel.
End of enumeration elements list.
CHPRIORITY : Priority of this channel when multiple DMA requests are pending. Eight priority levels are supported. 0x0 = highest priority. 0x7 = lowest priority.
bits : 16 - 34 (19 bit)
Control and status register for DMA channel 0.
address_offset : 0xC1C Bytes (0x0)
access : read-only
reset_value : 0x0
reset_Mask : 0x0
VALIDPENDING : Valid pending flag for this channel. This bit is set when a 1 is written to the corresponding bit in the related SETVALID register when CFGVALID = 1 for the same channel.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect. No effect on DMA
operation.
1 : VALID_PENDING
Valid pending.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 1 - 2 (2 bit)
TRIG : Trigger flag. Indicates that the trigger for this channel is currently set. This bit is cleared at the end of an entire transfer or upon reload when CLRTRIG = 1.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_TRIGGERED
Not triggered. The trigger for this DMA channel is
not set. DMA operations will not be carried
out.
1 : TRIGGERED
Triggered. The trigger for this DMA channel is set.
DMA operations will be carried out.
End of enumeration elements list.
Transfer configuration register for DMA channel 0.
address_offset : 0xC28 Bytes (0x0)
access : read-write
reset_value : 0x0
reset_Mask : 0x0
CFGVALID : Configuration Valid flag. This bit indicates whether the current channel descriptor is valid and can potentially be acted upon, if all other activation criteria are fulfilled.
bits : 0 - 0 (1 bit)
Enumeration: ENUM
0 : NOT_VALID
Not valid. The channel descriptor is not considered
valid until validated by an associated SETVALID0
setting.
1 : VALID
Valid. The current channel descriptor is considered
valid.
End of enumeration elements list.
RELOAD : Indicates whether the channel's control structure will be reloaded when the current descriptor is exhausted. Reloading allows ping-pong and linked transfers.
bits : 1 - 2 (2 bit)
Enumeration: ENUM
0 : DISABLED
Disabled. Do not reload the channels' control
structure when the current descriptor is
exhausted.
1 : ENABLED
Enabled. Reload the channels' control structure
when the current descriptor is exhausted.
End of enumeration elements list.
SWTRIG : Software Trigger.
bits : 2 - 4 (3 bit)
Enumeration: ENUM
0 : NOT_SET
Not set. When written by software, the trigger for
this channel is not set. A new trigger, as defined by the
HWTRIGEN, TRIGPOL, and TRIGTYPE will be needed to start the
channel.
1 : SET
Set, When written by software, the trigger for this
channel is set immediately. This feature should not be used
with level triggering when TRIGBURST = 0.
End of enumeration elements list.
CLRTRIG : Clear Trigger.
bits : 3 - 6 (4 bit)
Enumeration: ENUM
0 : NOT_CLEARED
Not cleared. The trigger is not cleared when this
descriptor is exhausted. If there is a reload, the next
descriptor will be started.
1 : CLEARED
Cleared. The trigger is cleared when this
descriptor is exhausted.
End of enumeration elements list.
SETINTA : Set Interrupt flag A for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 4 - 8 (5 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTA flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
SETINTB : Set Interrupt flag B for this channel. There is no hardware distinction between interrupt A and B. They can be used by software to assist with more complex descriptor usage. By convention, interrupt A may be used when only one interrupt flag is needed.
bits : 5 - 10 (6 bit)
Enumeration: ENUM
0 : NO_EFFECT
No effect.
1 : SET
Set. The INTB flag for this channel will be set
when the current descriptor is exhausted.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 6 - 13 (8 bit)
WIDTH : Transfer width used for this DMA channel.
bits : 8 - 17 (10 bit)
Enumeration: ENUM
0x0 : 8_BIT
8-bit. 8-bit transfers are performed (8-bit source
reads and destination writes).
0x1 : 16_BIT
16-bit. 6-bit transfers are performed (16-bit
source reads and destination writes).
0x2 : 32_BIT
32-bit. 32-bit transfers are performed (32-bit
source reads and destination writes).
0x3 : RESERVED
Reserved. Reserved setting, do not
use.
End of enumeration elements list.
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
RESERVED : Reserved. Read value is undefined, only zero should be written.
bits : 10 - 21 (12 bit)
SRCINC : Determines whether the source address is incremented for each DMA transfer.
bits : 12 - 25 (14 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The source address is not incremented
for each transfer. This is the usual case when the source is
a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The source address is incremented by the
amount specified by Width for each transfer. This is the
usual case when the source is memory.
0x2 : 2_X_WIDTH
2 x width. The source address is incremented by 2
times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The source address is incremented by 4
times the amount specified by Width for each
transfer.
End of enumeration elements list.
DSTINC : Determines whether the destination address is incremented for each DMA transfer.
bits : 14 - 29 (16 bit)
Enumeration: ENUM
0x0 : NO_INCREMENT
No increment. The destination address is not
incremented for each transfer. This is the usual case when
the destination is a peripheral device.
0x1 : 1_X_WIDTH
1 x width. The destination address is incremented
by the amount specified by Width for each transfer. This is
the usual case when the destination is memory.
0x2 : 2_X_WIDTH
2 x width. The destination address is incremented
by 2 times the amount specified by Width for each
transfer.
0x3 : 4_X_WIDTH
4 x width. The destination address is incremented
by 4 times the amount specified by Width for each
transfer.
End of enumeration elements list.
XFERCOUNT : Total number of transfers to be performed, minus 1 encoded. The number of bytes transferred is: (XFERCOUNT + 1) x data width (as defined by the WIDTH field). The DMA controller uses this bit field during transfer to count down. Hence, it cannot be used by software to read back the size of the transfer, for instance, in an interrupt handler. 0x0 = a total of 1 transfer will be performed. 0x1 = a total of 2 transfers will be performed. ... 0x3FF = a total of 1,024 transfers will be performed.
bits : 16 - 41 (26 bit)
Is something missing? Is something wrong? can you help correct it ? Please contact us at info@chipselect.org !
This website is sponsored by Embeetle, an IDE designed from scratch for embedded software developers.