TOSHIBA
TMPR3904F Rev. 2.0
148
26
10.4.6 Channel operation
The channels are turned on when the Str bit of the CCRn of each channel is set to 1. When a
channel is turned on, a starting check-up is conducted; and if there is no error, the channel shall
be in the wait status.
If a transfer request occurs when the channel is in the wait status, the DMAC is granted the bus
ownership to start the transfer operation.
In the completion of the channel operation, there are a normal completion and a abnormal
completion due to causes such as a forceful termination and a error occurrence. The status of
the completion is indicated in the CSRn.
Start of channel operation
A channel is turned on when the Str bit of the CCRn is set to 1.
When the channel is turned on, configuration errors are checked for; and if there is no error, the
channel becomes the wait status. If an error is detected, the channel completes abnormally.
When a channel becomes the wait status, the Act bit of the CSRn of this channel becomes 1.
When the channel is set up for the internal transfer request, transfer request(s) immediately
occur; and the DMAC is granted the bus ownership to start the data transfer.
If the channel is set up for an external transfer request, data transfer starts when the DREQn is
asserted.
Completion of channel operation
In the channel operation completion, there are a normal completion and an abnormal
completion. If a completion is a normal completion or an abnormal completion is indicated in
the CSRn.
If it is attempted to set 1 to the Str bit when the NC bit or the AbC bit is 1, the channel operation
does not start and completes abnormally.
Normal completion
The channels complete normally in the following three cases. However, in the continue mode,
the completion by the Str bit is the only completion of the channel operation; and in the other
two cases, the current transfer operation is completed to start the next transfer operation. In the
normal completion, the completion invariably occurs after the completion of the transfer of the
data transfer unit (the value that was set up in the TrSiz field of the CCRn).
When the contents of the BCRn has become 0 to complete the data transfer
When 1 is set to the Stop bit of the CCRn while in the wait status
When a low is input to the DONE* signal during the data transfer (Read the BCRn in order to
check whether the data transfer is terminated by DONE* signal or not.)