
V PeRiPheRaL MoDuLes 3 (inteRFaCe): GeneRaL-PuRPose seRiaL inteRFaCe (eFsio)
V-1-38
ePson
s1C33L17 teChniCaL ManuaL
Control registers of the interrupt controller
Table V.1.7.1 shows the interrupt controller's control registers provided for each interrupt source (channel).
Table V.1.7.1 Control Register of Interrupt Controller
Cause of interrupt
Receive-error
Receive-buffer full
Transmit-buffer empty
Receive-error interrupt
Receive-buffer full
Transmit-buffer empty
Channel
Ch.0
Ch.1
Cause-of-interrupt flag
FSERR0(D0/0x300286)
FSRX0(D1/0x300286)
FSTX0(D2/0x300286)
FSERR1(D3/0x300286)
FSRX1(D4/0x300286)
FSTX1(D5/0x300286)
interrupt priority register
PSIO0[2:0](D[6:4]/0x300269)
PSIO1[2:0](D[2:0]/0x30026A)
interrupt enable register
ESERR0(D0/0x300276)
ESRX0(D1/0x300276)
ESTX0(D2/0x300276)
ESERR1(D3/0x300276)
ESRX1(D4/0x300276)
ESTX1(D5/0x300276)
When a cause of interrupt described above occurs, the corresponding cause-of-interrupt flag is set to 1. If the
interrupt enable register bit for that cause of interrupt has been set to 1, an interrupt request is generated.
Interrupts can be disabled by leaving the interrupt enable register bit for that cause of interrupt set to 0. The
cause-of-interrupt flag is set to 1 whenever interrupt conditions are met, regardless of the setting of the interrupt
enable register (even if it is set to 0).
The interrupt priority register sets the interrupt priority level of each interrupt source in a range between 0 and
7. An interrupt request to the CPU is accepted only when no other interrupt request of a higher priority has been
generated. In addition, only when the PSR's IE bit = 1 (interrupts enabled) and the set value of the IL is smaller
than the input interrupt level set by the interrupt priority register, will the input interrupt request actually be ac-
cepted by the CPU.
For details on these interrupt control registers, as well as the device operation when an interrupt has occurred,
refer to Section III.2, “Interrupt Controller (ITC).”
intelligent DMa
The receive-buffer full interrupt and transmit-buffer empty interrupt causes can be used to invoke intelligent
DMA (IDMA). This enables successive transmit/receive operations between memory and the transmit/receive-
buffer to be performed by means of a DMA transfer.
The following shows the IDMA channel numbers set for each cause of interrupt:
IDMA Ch.
Ch.0 receive-buffer full interrupt:
0x17
Ch.0 transmit-buffer empty interrupt: 0x18
Ch.1 receive-buffer full interrupt:
0x19
Ch.1 transmit-buffer empty interrupt: 0x1A
The IDMA request and enable bits shown in Table V.1.7.2 must be set to 1 for IDMA to be invoked. Transfer
conditions, etc. on the IDMA side must also be set in advance.
Table V.1.7.2 Control Bits for IDMA Transfer
Cause of interrupt
Receive-buffer full
Transmit-buffer empty
Receive-buffer full
Transmit-buffer empty
Channel
Ch.0
Ch.1
iDMa request bit
RSRX0(D6/0x300292)
RSTX0(D7/0x300292)
RSRX1(D0/0x300293)
RSTX1(D1/0x300293)
iDMa enable bit
DESRX0(D6/0x300296)
DESTX0(D7/0x300296)
DESRX1(D0/0x300297)
DESTX1(D1/0x300297)
If a cause of interrupt occurs when the IDMA request and enable bits are set to 1, IDMA is invoked. No inter-
rupt request is generated at that point. An interrupt request is generated upon completion of the DMA transfer.
The bits can also be set so as not to generate an interrupt, with only a DMA transfer performed.
For details on DMA transfer and how to control interrupts upon completion of DMA transfer, refer to Section
II.2, “Intelligent DMA (IDMA).”