9 idma commands, 1 start_idma command, 2 stop_idma command – Motorola MPC8260 User Manual
Page 550: Idma commands -26, Start_idma command -26, Stop_idma command -26, See section 18.9, òidma commands
18-26
MPC8260 PowerQUICC II UserÕs Manual
MOTOROLA
Part IV. Communications Processor Module
18.9 IDMA Commands
The user has two commands to control each IDMA channel. These commands are executed
through the CP command register (CPCR); see Section 13.4, ÒCommand Set.Ó
18.9.1
START
_
IDMA
Command
The
START
_
IDMA
command is used to start a transfer on an IDMA channel. The user must
initialize all parameters relevant for the correct operation of the channel (IDMAx_BASE
and IDMA channel parameter table) before issuing this command.
To restart the channel operation, the
START
_
IDMA
command can be reissued after every
pause in channel activity. The user must ensure that parameters are correct for the channel
to continue operation correctly.
The parameter ISTATE of the IDMA parameter RAM should be cleared before every issue
of a
START
_
IDMA
command.
An IDMA pause may occur for one of the following reasons:
¥
The channel is out of buffersÑIDSR[OB] event is set and an interrupt is generated
to the core, if enabled.
¥
DONE was asserted externally and DCM[DT] = 0 (see Table 18-5). An IDSR[EDN]
event is set and an interrupt is generated to the core, if enabled.
¥
STOP
_
IDMA
command was issued.
¥
The channel has Þnished a transfer of a BD with the last bit (L) set.
If the
START
_
IDMA
command is reissued and channel has more buffers to transfer, it restarts
transferring data according to the next BD in the buffer table.
In external request mode (ERM=1), the
START
_
IDMA
command initializes the channel, but
the Þrst data transfer is performed after external DREQx assertion.
In internal request mode (ERM=0), the
START
_
IDMA
command starts the data transfer
almost immediately, with a delay which depends on the CP load.
18.9.2
STOP
_
IDMA
Command
The
STOP
_
IDMA
command is issued to stop the transfer of an IDMA channel.
When a
STOP
_
IDMA
command is issued, the CP terminates current IDMA transfers and the
current BD is closed (if it was open). If memory is the destination, all data in the IDMA
internal buffer is transferred to memory before termination.
At the end of the stop process, the stop-completed event (SC) is set and a maskable interrupt
is generated to the core. The user should not modify channel parameters until SC = 1. When
the channel is stopped, it does not respond to external requests. If a
START
_
IDMA
command
is reissued, the next BD in the BD table is processed (if it is valid).