
iiBusModuLes:inteLLigentdMa(idMa)
s1C33L17teChniCaLManuaL
ePson
ii-2-11
II
IDMA
ii.2.4operationofidMa
IDMA has three transfer modes, in each of which data transfer operates differently. Furthermore, a cause of
interrupt is processed differently depending on the type of trigger. IDMA supports only dual-address transfers. It
does not support single-address transfers. The following describes the operation of IDMA in each transfer mode
and how a cause of interrupt is processed for each type of trigger. The following description assumes that the IDMA
is in None-Link mode. For Link mode, please refer to II.2.5 Linking.
ii.2.4.1singletransferMode
The channels for which DMOD in control information is set to 00 operate in single transfer mode. In this mode, a
transfer operation invoked by one trigger is completed after transferring one data unit of the size set by DATSIZ. If
a data transfer needs to be performed a number of times as set by the transfer counter, an equal number of triggers
are required. The operation of IDMA in single transfer mode is shown by the flow chart in Figure II.2.4.1.1.
START
END
Calculatesaddressof
controlinformation
Loadschannel
controlinformation
Transfersoneunitofdata
Transfercounter-1
Saveschannel
controlinformation
IDMAinterruptprocessing
(ifinterruptisenabled)
Transfer
counter=0
A
Baseaddress+(Channelnumber
×16)
Bn(4words)
:n=1–4
C(Datareadfromsourceoftransfer)
D(Datawritetodestinationoftransfer)
E
Fn(4words)
:n=1–4
N
Trigger
Y
A
B1 B2 B3 B4 C
D
E F1 F2
F4
F3
FigureII.2.4.1.1OperationFlowinSingleTransferMode
(1) When a trigger is accepted, the address for control information is calculated from the base address and channel
number.
(2) Control information is read from the calculated address into the internal temporary register.
(3) Data of the size set in the control information is read from the source address.
(4) The read data is written to the destination address.
(5) The address is incremented or decremented and the transfer counter is decremented.
(6) The modified control information is written to RAM.
(7) In the case of a hardware trigger, the interrupt control bits are processed before completing IDMA.
Condition
Cause-of-interruptflag
IDMArequestbit
IDMAenablebit
________________________________________________________________________________________
Transfercounter
≠0:
Reset(0)
Notchanged(1)
Transfercounter=0,DINTEN=1:
Notchanged(1)
Reset(0)
Notchanged(1)
Transfercounter=0,DINTEN=0:
Reset(0)
Notchanged(1)
Reset(0)