Texas Instruments OMAP5912 Reference Manual page 754

Multimedia processor device overview and architecture
Hide thumbs Also See for OMAP5912:
Table of Contents

Advertisement

DSP DMA
130
Direct Memory Access (DMA) Support
The channels and the MPUI have a programmable priority level. Each channel
has a priority bit in DMA_CCR for selecting a high priority or a low priority. The
MPUI is assigned a high priority or a low priority with the MPUI_PRIO bit in
DMA_GCR. The DMA controller services the low-priority items only when all
of the high-priority items are done or stalled. After a DSP reset, all channels
and the MPUI are low priority. In Figure 19, channels 0, 2, and 5 are high
priority (in each of these channels, PRIO = 1). DMA channels 1, 3, and 4 and
the MPUI are low priority (in each of these channels, PRIO = 0 and, for the
MPUI, MPUI PRIO = 0).
The channels and the MPUI have fixed positions in the service chain.
Regardless of the programmed priorities, the port checks the channels and the
MPUI in a repeating circular sequence: 0, 1, 2, 3, 4, 5, MPUI, 0, 1, 2, 3, 4, 5,
MPUI, and so on. At each position in the service chain, the port checks whether
the channel/MPUI is ready and able to be serviced. If so, it is serviced;
otherwise, the port skips to the next position. After a DSP reset, the port
restarts its circular sequence, beginning with channel 0.
The channels can be individually connected or disconnected from the service
chain through software. If a channel is enabled (EN = 1 in DMA_CCR), it is
connected to the service chain; if it is disabled (EN = 0), it is disconnected. After
a DSP reset, all channels are disconnected. In Figure 19, only channel 1 is
disconnected. As a port checks the channels and the MPUI in its repeating
circular sequence, it keeps skipping channel 1 until the channel is
reconnected.
The MPUI cannot access the peripherals port. The peripherals port operates
as though the MPUI were disconnected from the service chain.
By writing a 1 to the MPUI_EXCL bit in DMA_GCR, the MPUI is given exclusive
access to the DARAM and SARAM ports. Then the DARAM and SARAM ports
operate as if only the MPUI is connected to the service chain (as if none of the
channels were connected, regardless of whether the channels are enabled).
For more details, see Section 4.3, MPUI Access Configurations. The MPUI
shares the RAM ports with the channels.
If a channel is tied to a synchronization event, the channel does not generate
a DMA request (and, therefore, cannot be serviced) until the synchronization
event occurs. To avoid long response times to synchronization events, always
assign synchronized channels a high priority.
SPRU755B

Advertisement

Table of Contents
loading

Table of Contents