Architecture
615
SPRUH82C – April 2013 – Revised September 2016
Copyright © 2013–2016, Texas Instruments Incorporated
Enhanced Direct Memory Access (EDMA3) Controller
17.2.11 EDMA3 Transfer Controller (EDMA3TC)
The EDMA3 channel controller is the user-interface of the EDMA3 and the EDMA3 transfer controller
(EDMA3TC) is the data movement engine of the EDMA3. The EDMA3CC submits transfer requests (TR)
to the EDMA3TC and the EDMA3TC performs the data transfers dictated by the TR.
17.2.11.1 Architecture Details
17.2.11.1.1 EDMA3TC Configuration
Each transfer controller on a device is designed differently based on considerations like performance
requirements, system topology (main SCR bus width, external memory bus width), gate count, etc. The
parameters that determine the TC configurations are:
•
FIFOSIZE: Determines the size in bytes for the Data FIFO that is the temporary buffer for the in-flight
data. The data FIFO is where the read return data read by the TC read controller from the source
endpoint is stored and subsequently written out to the destination endpoint by the TC write controller.
•
Default Burst Size (DBS): The DBS is the maximum number of bytes per read/write command issued
by a transfer controller.
•
BUSWIDTH: The width of the read and write data buses in bytes, for the TC read and write controller,
respectively. This is typically equal to the bus width of the main SCR interface.
•
DSTREGDEPTH: This determines the number of Destination FIFO register set. The number of
Destination FIFO register set for a transfer controller, determines the maximum number of outstanding
transfer requests (TR pipelining).
Of the four parameters, the FIFOSIZE, BUSWIDTH, and DSTREGDEPTH values are fixed in design for a
given device. The default burst size (DBS) for EDMA3_0_TC0 and EDMA3_0_TC1 is configurable by the
chip configuration 0 register (CFGCHIP0) in the System Configuration Module and for EDMA3_1_TC0 is
configurable by the chip configuration 1 register (CFGCHIP1) in the System Configuration Module.
provides the configuration of the individual EDMA3 transfer controllers on the device.
The burst size for each transfer controlled can be programmed to be 16-, 32-, or 64-bytes. The default
values for DBS are typically chosen for optimal performance in most intended-use conditions; therefore, if
you decide to use a value other then the default, you should evaluate the impact on performance.
Depending on the FIFOSIZE and source/destination locations the performance for the transfer can vary
significantly for different burst size values.
NOTE:
It is expected that the DBS value for a transfer controller is static and should be based on
the application requirement. It is not recommended that the DBS value be changed on-the-
fly.
Table 17-12. EDMA3 Transfer Controller Configurations
Parameter
EDMA3_0_TC0
EDMA3_0_TC1
EDMA3_1_TC0
FIFOSIZE
128 bytes
128 bytes
256 bytes
BUSWIDTH
8 bytes (64 bits)
8 bytes (64 bits)
8 bytes (64 bits)
DSTREGDEPTH
4 entries
4 entries
4 entries
DBS (default)
16 bytes
16 bytes
16 bytes
Error interrupt
EDMA3_0_TC0_ERRINT
EDMA3_0_TC1_ERRINT
EDMA3_1_TC0_ERRINT
EDMA3 channel controller
used
EDMA3_0_CC0
EDMA3_0_CC0
EDMA3_1_CC0