
iiBusModuLes:high-sPeeddMa(hsdMa)
s1C33L17teChniCaLManuaL
ePson
ii-1-9
II
HSDMA
Blocklength
When using block transfer mode (DxMOD[1:0] (D[15:14]/0x30112A + 0x10x) = 10), the data block length (in
units of the selected transfer data size) should be set using BLKLENx[7:0] (D[7:0]/0x301120 + 0x10x).
BLKLenx[7:0]: Ch.xBlockLengthBitsintheHSDMACh.xTransferCounterRegister
(D[7:0]/0x301120+0x10x)
note: Whenperformingdatatransferinblocktransfermode,theblocksizemustnotbesetto0.
In single transfer and successive transfer modes, BLKLENx[7:0] (D[7:0]/0x301120 + 0x10x) is used as bits 7–
0 of the transfer counter.
transfercounter
Blocktransfermode
In block transfer mode, up to 16 bits of transfer count can be specified using TCx_L[7:0] (D[15:8]/0x301120 +
0x10x) and TCx_H[7:0] (D[7:0]/0x301122 + 0x10x).
tCx_L[7:0]:Ch.xTransferCounter[7:0]BitsintheHSDMACh.xTransferCounterRegister
(D[15:8]/0x301120+0x10x)
tCx_h[7:0]:Ch.xTransferCounter[15:8]BitsintheHSDMACh.xControlRegister
(D[7:0]/0x301122+0x10x)
singletransferandsuccessivetransfermodes
In single transfer and successive transfer modes, up to 24 bits of transfer count can be specified using
BLKLENx[7:0] (D[7:0]/0x301120 + 0x10x), TCx_L[7:0] (D[15:8]/0x301120 + 0x10x) and TCx_H[7:0]
(D[7:0]/0x301122 + 0x10x).
note: Thetransfercountthussetisdecrementedaccordingtothetransfersperformed.Ifthetransfer
countissetto0,itisdecrementedtoallFsbythefirsttransferperformed.Thismeansthatyou
havesetthemaximumvaluethatisdeterminedbythenumberofbitsavailable.
sourceanddestinationaddresses
standardmode(hsdMaadV(d0/0x30119C)=0,default)
In standard mode, a 28-bit source address and a 28-bit destination address for DMA transfer can be speci-
fied using SxADRL[15:0] (D[15:0]/0x301124 + 0x10x), SxADRH[11:0] (D[11:0]/0x301126 + 0x10x),
DxADRL[15:0] (D[15:0]/0x301128 + 0x10x) and DxADRH[11:0] (D[11:0]/0x30112A + 0x10x).
sxadRL[15:0]: Ch.xSourceAddress[15:0]intheHSDMACh.xLow-OrderSourceAddressSetupRegister
(D[15:0]/0x301124+0x10x)
sxadRh[11:0]:Ch.xSourceAddress[27:16]intheHSDMACh.xHigh-OrderSourceAddressSetup
Register(D[11:0]/0x301126+0x10x)
dxadRL[15:0]: Ch.xDestinationAddress[15:0]intheHSDMACh.xLow-OrderDestinationAddressSetup
Register(D[15:0]/0x301128+0x10x)
dxadRh[11:0]:Ch.xDestinationAddress[27:16]intheHSDMACh.xHigh-OrderDestinationAddress
SetupRegister(D[11:0]/0x30112A+0x10x)
advancedmode(hsdMaadV(d0/0x30119C)=1)
In advanced mode, a 32-bit source address and a 32-bit destination address for DMA transfer can be speci-
fied using SxADRL[15:0] (D[15:0]/0x301164 + 0x10x), SxADRH[15:0] (D[15:0]/0x301166 + 0x10x),
DxADRL[15:0] (D[15:0]/0x301168 + 0x10x) and DxADRH[15:0] (D[15:0]/0x30116A + 0x10x).
sxadRL[15:0]: Ch.xSourceAddress[15:0]intheHSDMACh.xLow-OrderSourceAddressSetupRegister
forADVmode(D[15:0]/0x301164+0x10x)
sxadRh[15:0]:Ch.xSourceAddress[31:16]intheHSDMACh.xHigh-OrderSourceAddressSetup
RegisterforADVmode(D[15:0]/0x301166+0x10x)
dxadRL[15:0]: Ch.xDestinationAddress[15:0]intheHSDMACh.xLow-OrderDestinationAddressSetup
RegisterforADVmode(D[15:0]/0x301168+0x10x)
dxadRh[15:0]:Ch.xDestinationAddress[31:16]intheHSDMACh.xHigh-OrderDestinationAddress
SetupRegisterforADVmode(D[15:0]/0x30116A+0x10x)
note: Inadvancedmode,besuretousethecontrolregistersforadvancedmodetosetsource/destina-
tionaddresses.