SPRUI30H November 2015 – May 2024 DRA745 , DRA746 , DRA750 , DRA756
This section describes thread allocation only; it does not describe the entire transfer. Because synchronized transfers are latency critical, you must allocate a thread at least on the synchronized target side.
Even for multiple concurrent channels, thread reservation ensures that when a hardware DMA request arrives, the read/write scheduler finds available thread(s) to initiate a channel schedule and issue a read/write transaction.
Consider six concurrent channels:
To perform thread reservation:
Reserve one thread (Read ThreadID 0) on the read port and one thread (Write ThreadID 0) on the write port: set the DMA4_GCR[13:12] HI_THREAD_RESERVED bit field to 0x1.
Channel 4 is a write high priority channel: set DMA4_CCRi[26] WRITE_PRIORITY = 1.
Channel 5 is a read high priority channel: set DMA4_CCRi[6] READ_PRIORITY = 1.