
XR17V358
21
REV. 1.0.6
HIGH PERFORMANCE OCTAL PCI EXPRESS UART
1.4.1
The Global Interrupt Registers - INT0, INT1, INT2 and INT3
The XR17V358 can support two different interrupt schemes with a 32-bit wide register [INT3, INT2, INT1 and
INT0]. The first scheme uses INT0 (bits [7:0]) along with the Interrupt Status Register (ISR) of the individual
UART channels. The INT0 register is an 8-bit indicator representing all 8 channels with each bit representing a
channel from 0 to 7. Once the interrupting channel is determined, the ISR of the interrupting channel is read to
determine the interrupt to be serviced.
The second interrupt scheme uses INT3 – INT1 to provide details about the source of the interrupts for each
UART channel. Interrupts are encoded into a 3-bit code where bits [10:8] represent channel 0 and bits [31:29]
represent channel 7, respectively. Using this scheme, the highest pending interrupt for all 8 channels are
available with a single DWORD read operation without having to read the ISR register of the individual UART
channels. If there is a global interrupt such as the wake-up interrupt, timer/counter interrupt or MPIO interrupt,
then they would be reported in the 3-bit code for channel 0 in INT1 bits [10:8]. However, since the UART
interrupts have a higher priority, all UART channel 0 interrupts must first be cleared before any of the global
interrupts can be reported in INT1 bits [10:8].
GLOBAL INTERRUPT REGISTER (DWORD) [default 0x00-00-00-00]
INT3 [31:24]
INT2 [23:16]
INT1 [15:8]
INT0 [7:0]
All bits start up zero. A special interrupt condition is generated by the XR17V358 upon awakening from sleep
after all eight channels were put to sleep mode earlier. This wake-up interrupt is cleared by a read to the INT0
register.
shows the 4-byte interrupt register and its make up.
0x098
MPIOINV[15:8]
Read/Write MPIO[15:8] input polarity select
Bits [15:8] = 0x00
0x099
MPIOSEL[15:8]
Read/Write MPIO[15:8] select
Bits [15:8] = 0xFF
0x09A
MPIOOD[15:8]
Read/Write MPIO[15:8] open-drain output control
Bits [15:8] = 0x00
0x09B
Reserved
0x00
T
ABLE
6: D
EVICE
C
ONFIGURATION
R
EGISTERS
SHOWN
IN
DWORD
ALIGNMENT
A
DDRESS
R
EGISTER
B
YTE
3 [31:24]
B
YTE
2 [23:16]
B
YTE
1 [15:8]
B
YTE
0 [7:0]
0x0080
-
0x0083
INTERRUPT (read-only)
INT3
INT2
INT1
INT0
0x0084-0x0087
TIMER (read/write)
TIMERMSB
TIMERLSB
Reserved
TIMERCNTL
0x0088-0x008B
ANCILLARY1 (read/write)
SLEEP
RESET
4XMODE
8XMODE
0x008C-0x008F
ANCILLARY2 (read-only)
MPIOINT[7:0]
REGB
DVID
DREV
0x0090-0x0093
MPIO1 (read/write)
MPIOSEL[7:0]
MPIOINV[7:0]
MPIO3T[7:0]
MPIOLVL[7:0]
0x0094-0x0097
MPIO2 (read/write)
MPIO3T[7:0]
MPIOLVL[15:8]
MPIOINT[15:8]
MPIOOD[7:0]
0x0098-0x009B
MPIO3 (read/write)
Reserved
MPIOOD[15:8]
MPIOSEL[15:8]
MPIOINV[15:8]
T
ABLE
5: D
EVICE
C
ONFIGURATION
R
EGISTERS
SHOWN
IN
BYTE
ALIGNMENT
A
DDRESS
[A7:A0]
R
EGISTER
R
EAD
/W
RITE
C
OMMENT
RESET
STATE