
II BUS MODULES: HIGH-SPEED DMA (HSDMA)
S1C33E07 TECHNICAL MANUAL
EPSON
II-1-15
II
HSDMA
II.1.5 Trigger Source
A HSDMA trigger source for each channel can be selected from among 15 types using HSDxS[3:0] (D[7:0]/
0x300298, D[7:0]/0x300299). This function is supported by the interrupt controller.
HSD0S[3:0]: Ch.0 Trigger Set-Up Bits in the HSDMA Ch.0–1 Trigger Set-Up Register (D[3:0]/0x300298)
HSD1S[3:0]: Ch.1 Trigger Set-Up Bits in the HSDMA Ch.0–1 Trigger Set-Up Register (D[7:4]/0x300298)
HSD2S[3:0]: Ch.2 Trigger Set-Up Bits in the HSDMA Ch.2–3 Trigger Set-Up Register (D[3:0]/0x300299)
HSD3S[3:0]: Ch.3 Trigger Set-Up Bits in the HSDMA Ch.2–3 Trigger Set-Up Register (D[7:4]/0x300299)
Table II.1.5.1 shows the setting value and the corresponding trigger source.
Table II.1.5.1 HSDMA Trigger Source
Value
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
Ch.0 trigger source
Software trigger
#DMAREQ0 input (falling edge)
#DMAREQ0 input (rising edge)
Port 0 input
Port 4 input
(reserved)
16-bit timer 0 compare B
16-bit timer 0 compare A
16-bit timer 4 compare B
I2S left
Serial I/F Ch.0 Rx buffer full
Serial I/F Ch.0 Tx buffer empty
A/D conversion completion
Port 8 input (SPI interrupt)
Port 12 input
Ch.1 trigger source
Software trigger
#DMAREQ1 input (falling edge)
#DMAREQ1 input (rising edge)
Port 1 input
Port 5 input
(reserved)
16-bit timer 1 compare B
16-bit timer 1 compare A
16-bit timer 5 compare B
I2S right
Serial I/F Ch.1 Rx buffer full
Serial I/F Ch.1 Tx buffer empty
A/D conversion completion
Port 9 input (USB PDREQ)
Port 13 input
Ch.2 trigger source
Software trigger
#DMAREQ2 input (falling edge)
#DMAREQ2 input (rising edge)
Port 2 input
Port 6 input
(reserved)
16-bit timer 2 compare B
16-bit timer 2 compare A
(reserved)
SPI transmit DMA request
Serial I/F Ch.2 Rx buffer full
Serial I/F Ch.2 Tx buffer empty
A/D conversion completion
Port 10 input (USB interrupt)
Port 14 input
Ch.3 trigger source
Software trigger
#DMAREQ3 input (falling edge)
#DMAREQ3 input (rising edge)
Port 3 input
Port 7 input
(reserved)
16-bit timer 3 compare B
16-bit timer 3 compare A
(reserved)
SPI receive DMA request
(reserved)
A/D conversion completion
Port 11 input (DCSIO interrupt)
Port 15 input
By selecting a cause of interrupt with the HSDMA trigger set-up register, the HSDMA channel is invoked when
the selected cause of interrupt occurs. The interrupt control bits (cause-of-interrupt flag, interrupt enable register,
IDMA request register, interrupt priority register) do not affect this invocation. The cause of interrupt that invokes
HSDMA sets the cause-of-interrupt flag and HSDMA does not reset the flag. Consequently, when the DMA trans-
fer is completed (even if the transfer counter is not 0), an interrupt request to the CPU will be generated if the inter-
rupt has been enabled. To generate an interrupt only when the transfer counter reaches 0, disable the interrupt by
the cause of interrupt that invokes HSDMA and use the HSDMA transfer completion interrupt.
When software trigger is selected, the HSDMA channel can be invoked by writing 1 to HSTx (Dx/0x30029A).
HSTx: Ch.x Software Trigger Bit in the HSDMA Software Trigger Register (Dx/0x30029A)
When the selected trigger occurs, the trigger flag is set to 1 to invoke the HSDMA channel.
The HSDMA starts a DMA transfer if it has been enabled and the trigger flag is cleared by the hardware at the
same time. This makes it possible to queue the HSDMA triggers that have been generated.
The trigger flag can be read and cleared using HSx_TF (D0/0x30112E + 0x10x).
HSx_TF: Ch.x Trigger Flag Status/Clear Bit in the HSDMA Ch.x Trigger Flag Register (D0/0x30112E + 0x10x)
By writing 1 to this bit, the set trigger flag can be cleared if the DMA transfer has not been started.
When this bit is read, 1 indicates that the flag is set and 0 indicates that the flag is cleared.
Note: The following shows the priority order of channels when DMA triggers with the same interrupt
level occur in two or more HSDMA and IDMA channels.
Priority
Channel
High
←
→ Low
HSDMA Ch.0 > Ch.1 > Ch.2 > Ch.3 > IDMA software trigger > IDMA hardware trigger