TC1796
System Units (Vol. 1 of 2)
Direct Memory Access Controller
User’s Manual
12-16
V2.0, 2007-07
DMA, V2.0
12.1.4.5 Channel Reset Operation
A DMA transaction of DMA channel mn can be stopped (channel is reset) by setting bit
CHRSTR.CHmn. When a read or write FPI Bus access of DMA channel mn is executed
at the time when CHRSTR.CHmn is set, this FPI Bus access is finished normally. This
behavior guarantees data consistency.
When CHRST.CHmn is set to 1:
•
Bits TRSR.HTREmn, TRSR.CHmn, ERRSR.TRLmn, INTSR.ICHmn, INTSR.IPMmn,
WRPSR.WRPDmn, WRPSR.WRPSmn, CHSRmn.LXO, and bit field
CHSRmn.TCOUNT are cleared.
•
Source and destination address register will be set to the wrap boundary. SHADRmn
will be cleared.
•
All automatic functions are stopped for channel mn.
A user program must execute the following steps for resetting a DMA channel:
1. If hardware requests are enabled for the DMA channel mn, disable the DMA
channel mn hardware requests by setting HTREQ.ECHmn = 0.
2. Writing a 1 to CHRST.CHmn.
3. Waiting (polling) until CHRST.CHmn = 0.
A user program should execute the following steps for restarting a DMA channel after it
was reset:
1. Optionally (re-)configuring the address and other channel registers.
2. Restarting the DMA channel mn by setting HTREQ.ECHmn = 1 for hardware
requests or STREQ.SCHmn = 1 for software requests.
The value of CHCRmn.TREL is copied to CHSRmn.TCOUNT when a new DMA
transaction is requested and shadow address register contents is not equal 00000000
H
.