EDMA Performance
6-37
EDMA Controller
The priority queue status register (PQSR) shown in Figure 6–17 indicates if
the transfer request queue is empty on the three priority levels ( 0 – urgent,
1 – high, and 2 – low). EDMA transfers can be submitted only with priority level
one or two. The urgent priority level ’0’ is reserved for L2 requests. Status bits
PQ[2:0] in the PQSR provide the status of the three queues. The three LSBs
in this register, PQ[2:0], if set to ’1’ indicate that there are no requests pending
in the respective priority level. If PQSR[0] is ’1’, this means all L2 requests for
data movement have been completed and there are no requests pending.
Figure 6–17. Priority Queue Status Register(PQSR)
31
3
2
1
0
rsvd
PQ2
PQ1
PQ0
R, +0
R, +1
R, +1
R, +1
The three priority queue bits are mainly used for emulation, context switching
for multitasking applications, and submitting requests with a higher priority –
when possible. For the emulation case, the PQ0 bit is used to ensure that all
cache requests via L2 are completed before updating any memory windows
for the emulation halt. Another use is to determine the right time to do a task
switch. For example, allocating L2 SRAM to a new task after ensuring that
there are no EDMA transfer requests in progress which might write to L2
SRAM. Lastly, the PQ bits in PQSR can be used to allocate or submit requests
judiciously on the lower two priority levels (by the EDMA or HPI) depending on
which priority queue is empty. Therefore a low-priority request can be up-
graded to a high priority if required. This helps prevent all requests from being
queued under the same priority level which could lead to EDMA stalls.
6.15 EDMA Performance
The EDMA can perform element transfers with single cycle throughput
provided the source and destination are two different resources that provide
a single-cycle throughput. The performance can be limited by:
-
EDMA stalls: When there are multiple transfer requests on the same prior-
ity level
-
EDMA accesses to L2 SRAM with lower priority than CPU
Resource Arbitration and Priority Processing / EDMA Performance