
iiBusModuLes:high-sPeeddMa(hsdMa)
s1C33L17teChniCaLManuaL
ePson
ii-1-21
II
HSDMA
singletransfermode(single-addressmode)
The channel for which DxMOD[1:0] (D[15:14]/0x30112A + 0x10x) in control information is set to 00 oper-
ates in single transfer mode. In this mode, a transfer operation invoked by one trigger is completed after trans-
ferring one data unit of the size set by DATSIZEx (D14/0x301126 + 0x10x) or WORDSIZEx (D0/0x301162
+ 0x10x). 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.
dxMod[1:0]: Ch.xTransferModeSelectBitsintheHSDMACh.xHigh-OrderDestinationAddressSetup
Register(D[15:14]/0x30112A+0x10x)
datsiZex: Ch.xTransferDataSizeSelectBitintheHSDMACh.xHigh-OrderSourceAddressSetup
Register(D14/0x301126+0x10x)
WoRdsiZex:Ch.xTransferDataSizeSelectBitintheHSDMACh.xControlRegisterforADVmode
(D0/0x301162+0x10x)
The operation of HSDMA in single transfer mode is shown by the flow chart in Figure II.1.6.2.1.
START
END
CleartriggerflagHSx_TF
toacceptnexttrigger
ClearHSDMAenablebit
HSx_EN
Transfercounter-1
Setcause-of-interruptflag
FHDMx
Transfer
counter=0
N
Y
Increment/decrement
address
: accordingtoSxINor
SxIDsettings
Datareadfromsourceand
datawritetodestination
(1byte,1halfwordor1word)
FigureII.1.6.2.1OperationFlowinSingleTransferMode
(1) When a trigger is accepted, the trigger flag HSx_TF (D0/0x30112E + 0x10x) is cleared. Data of the size
set in the control information is read from the external memory or I/O device according to the specified di-
rection and is written to the I/O device or external memory.
1
hsx_tF:Ch.xTriggerFlagStatus/ClearBitintheHSDMACh.xTriggerFlagRegister(D0/0x30112E+0x10x)
(2) The addresses are incremented or decremented according to the SxIN[1:0] (D[13:12]/0x301126 + 0x10x)
or SxID (D4/0x301162 + 0x10x) settings.
2
sxin[1:0]:Ch.xSourceAddressControlBitsintheHSDMACh.xHigh-OrderSourceAddressSetup
Register(D[13:12]/0x301126+0x10x)
sxid:Ch.xSourceAddressControlBitintheHSDMACh.xControlRegisterforADVmode
(D4/0x301162+0x10x)
(3) The transfer counter is decremented.
(4) The HSDMA enable bit HSx_EN (D0/0x30112C + 0x10x) is cleared and HSDMA cause-of-interrupt flag
in ITC is set when the transfer counter reaches 0.
hsx_en:Ch.xEnableBitintheHSDMACh.xEnableRegister(D0/0x30112C+0x10x)