SPRUJ28E November 2021 – September 2024 AM68 , AM68A , TDA4AL-Q1 , TDA4VE-Q1 , TDA4VL-Q1
The Unified Transfer Controller is intended to perform similar functions to the EDMA Transfer Controller engine used on previous devices. The UTC engine is generally classified as a third-party DMA. This designation comes from the fact that the engine is not actually the source or sink of the data which is being moved but is instead an intermediary 3rd-party that performs the data move on behalf of the source and sink.
The UTC engine accepts Transfer Response messages from the UDMA-P via a PSI-L interface which provide instructions to copy data between a source read interface and a destination write interface. The sequence of operations that can be instructed includes up to 4-dimensional nested loops. Multiple types of Transfer Request messages are specified and each UTC instance in the system may support all types or any specified subset. The TR formats are specified in detail in a later section. When a Transfer Request has been completed, the UTC returns a Transfer Response message back to the originating UDMA-P. The UTC has the ability to generate events at specified completion points when processing a Transfer Request. These events are sent back to the Interrupt Aggregator block.
An UTC instance may be configured to only support VBUSM to VBUSM block copies or they may also optionally support ‘split’ operations where a read engine is instructed by a TR to read data from a VBUSM interface and send the data to the Packet Streaming fabric via a PSI-L master interface. A similar split operation is supported for writes where data is received into a PSI-L slave interface and is then routed to a write engine which has been instructed by a TR to move the data into a set of memory locations.