Introduction
5-4
Transfers are made through a physical channel that can be thought of as a pipe
that connects a source and a destination for the duration of a transfer. Data
flows through this pipe from the source to the destination. After the transfer is
completed, the pipe (channel) can be used to perform other data transfers that
involve the same or other sources and destinations.
The DMA channels are said to be physical because each of them is hardware-
implemented. Each channel is controlled by a set of configuration registers,
where the software sets up the transfer parameters such as length, source,
and destination addresses. This set of registers is called the transfer descrip-
tor or the transfer contexts. The transfer contexts are set up by the processor
through the MPU’s private TI peripheral bus (TIPB). Physical channel configu-
ration registers are in the MPU’s memory space.
All of the physical channels operate concurrently, which allows several data
transfers to run in parallel, one in each channel. If several channels use the
same DMA port, they are time-multiplexed by this port and can be priority
scheduled through software parameters available to the user. Thus, the user
is able to control the sharing of a port between channels by the assignment of
priority levels.
The system DMA controller has nine independently programmable generic
channels plus one channel that is specifically dedicated only to transfers from
either the IMIF or the EMIFF ports to the LCD port. By dynamically assigning
one of the nine physical channels to a pair of ports, data can be transferred
to/from the designated ports.
The DMA interface with the source and destination of transfers is called a port.
Each port can have its own protocol to communicate to the resource (memory
or TIPB bridge) to which it is connected. All of the existing DMA ports used by
the system DMA are described in detail later in this document.
The DMA has six general-purpose ports:
-
External memory interface fast (EMIFF) port
-
External memory interface slow (EMIFS) port
-
Internal memory interface (IMIF) port
-
Local bus interface (Local) port
-
MPU interface (MPUI) port
-
TIPB interface (TIPB) port
A seventh, special port is provided to interface with an LCD controller. This
port, the LCD port, has a dedicated channel that connects either the IMIF or
EMIFF port to the LCD controller. Unlike the other DMA ports, the LCD port can
only receive data from the IMIF or EMIFF ports.