Philips Semiconductors Product data sheet
SC28L202Dual UART
2005 Nov 01
34
Registers of the Arbitrating Interrupt System and Bidding control
ICR – Interrupt Control Register
Bits 7:0
Upper eight bits of the Arbitration Threshold
This register provides a single 8–bit field called the interrupt
threshold for use by the interrupt arbiter. The field is interpreted as a
single unsigned integer. The interrupt arbiter will not generate an
external interrupt request, by asserting IRQN, unless the value of
the highest priority interrupt exceeds the value of the interrupt
threshold. If the highest bidder in the interrupt arbitration is lower
than the threshold level set by the ICR, the Current Interrupt
Register, CIR, will contain 0x’00. Refer to the functional description
of interrupt generation for details on how the various interrupt source
bid values are calculated.
NOTE: While a watch–dog Timer interrupt is pending, the ICR is not
used and only receiver codes are presented for interrupt arbitration.
This allows receivers with very low count values (perhaps below the
threshold value) to win interrupt arbitration without requiring the user
to explicitly lower the threshold level in the ICR. These bits are the
upper seven (8) bits of the interrupt arbitration system. The lower
three (3) bits represent the channel number.
UCIR – Update CIR
A command based upon a decode of address 0x61. (UCIR is not a
register!) A write (the write data is not important; a ‘don’t care’) to
this ’register’ causes the Current Interrupt Register to be updated
with the value that is winning interrupt arbitration. The register would
be used in systems that polls the interrupt status registers rather
than wait for interrupts. Alternatively, the CIR is normally updated
during an Interrupt Acknowledge Bus cycle in interrupt driven
systems.
CIR – Current Interrupt Register
Bits 7:6 Bits 5:1 Bits 0
Type Current byte count/type Channel number or C/T number
00 = Type other than transmit or Receiver 00000 = no interrupt
00001 = Change of State
00010 = Address Recognition
00011 = Xon/Xoff status
00100 = Receiver Watch dog
00101 = Break change
00110 = Counter Timer
00111 = Rx Loop Back Error
0 = Channel A or C/T 0
1 = Channel B or C/T 1
01 = Transmit
11 = Receive w errors
10 = Receive w/o errors
Current count code
00000 => At least 1 character
00001 => At least 16 characters
00001 => At least 24 characters
.
.
11101 => At least 240 characters
11110 => At least 248 characters
11111 => 256 (See also GIBCR)
0 = A
1 = B
The Current Interrupt Register is provided to speed up the
specification of the interrupting condition in the DUART. The CIR is
updated at the beginning of an interrupt acknowledge bus cycle or in
response to an Update CIR command. (see immediately above)
Although interrupt arbitration continues in the background, the
current interrupt information remains frozen in the CIR until another
IACKN cycle or Update CIR command occurs. The LSBs of the CIR
provide part of the addressing for various Global Interrupt registers
including the GIBCR, GICR, GITR and the Global RxFIFO and
TxFIFO FIFO. The host CPU need not generate individual
addresses for this information since the interrupt context will remain
stable at the fixed addresses of the Global Interrupt registers until
the CIR is updated. For most interrupting sources, the data available
in the CIR alone will be sufficient to set up a service routine.
The CIR may be processed as follows:
If CIR[7] = 1, then a receiver interrupt is pending and the count is
CIR[5:1], channel is CIR[0]
Else If CIR[6] = 1 then a transmitter interrupt is pending and the
count is CIR[5:1], channel is CIR[0]
Else the interrupt is another type, specified in CIR[5:1]
NOTE: The GIBCR, Global Interrupting Byte Count Register, may be
read to determine an exact character count.
Philips Semiconductors Product data sheet
SC28L202Dual UART
2005 Nov 01
35
IVR – Interrupt Vector Register
Bits 7:0
8 data bits of the Interrupt Vector (IVR)
The IVR contains the byte that will be placed on the data bus during an IACKN cycle when the GCCR bits (2:1) are set to binary ‘01’. This is the
unmodified form of the interrupt vector.
Modification of the IVR
Bits 7:3 Bits 2:1 Bit 0
Always contains bits (7:3) of the IVR Will be replaced with current interrupt
type if IVC field of GCCR = 3
Replaced with interrupting channel
number if IVC field of GCCR > 1
The table above indicates how the IVR may be modified by the interrupting source. The modification of the IVR as it is presented to the data bus
during an IACK cycle is controlled by the setting of the bits (2:1) in the GCCR (Global Chip Configuration Register).
GICR – Global Interrupting Channel Register
Bits 7:1 Bit 0
Reserved Channel code
0 = a
1 = b
A register associated with the interrupting channel as defined in the CIR. It contains the channel number for the interrupting channel.
GIBCR – Global Interrupting Byte Count Register
Bits 7:0
Channel byte count code
00000001 = 1
00000010 = 2
.
11111111 = 255
00000000 = 256
A register associated with the interrupting channel as defined in the
CIR. Its numerical value equals TxEL or RxFL at the time IACKN or
‘Update CIR’ command was issued . The true number of bytes
ready for transfer to the transmitter or transfer from the receiver. It is
undefined for other types of interrupts
GITR – Global Interrupting Type Register
Bit 7:6
Bit 5 Bit 4:3 Bit 2:0
Receiver Interrupt Transmitter Interrupt Reserved Other types
0x = not receiver
10 = with receive errors
11 = w/o receive errors
0 = not transmitter
1 = transmitter interrupt
read 0x00 000 = not ‘other’ type
001 = Change of State
010 = Address Recognition Event
011 = Xon/Xoff status
100 = Rx Watchdog
101 = Break Change
110 = Counter Timer
111 = Rx Loop Back Error
A register associated with the interrupting channel as defined in the CIR. It contains the type of interrupt code for all interrupts.
GRxFIFO – Global RxFIFO Register
Bits 7:0
8 data bits of RxFIFO. MSBs set to 0 for 7, 6, 5 bit data
The RxFIFO of the channel indicated in the CIR channel field. Undefined when the CIR interrupt context is not a receiver interrupt.
Global
TxFIFO Register
GTxFIFO – Global TxFIFO Register
Bits 7:0
8 data bits of TxFIFO. MSBs not used for 7, 6, 5 bit data
The TxFIFO of the channel indicated in the CIR channel field. Undefined when the CIR interrupt context is not a transmitter interrupt. Writing to
the GTxFIFO when the current interrupt is not a transmitter event may result in the characters being transmitted on a different channel than
intended.
Philips Semiconductors Product data sheet
SC28L202Dual UART
2005 Nov 01
36
BCRBRK – Bidding Control Register – Break Change, A and B
Bits 7:0
MSBs of break change interrupt bid
This register provides the 8 MSBs of the Interrupt Arbitration number for a break change interrupt.
BCRCOS – Bidding Control Register – Change of State, A and B
Bits 7:0
MSBs of Change of state detectors (COS) interrupt bid
This register provides the 8 MSBs of the Interrupt Arbitration number for a Change of State, COS, interrupt.
BCRx – Bidding Control Register – Xon/Xoff, A and B
Bits 7:0
MSBs of an Xon/Xoff interrupt bid
This register provides the 8 MSBs of the Interrupt Arbitration number for a Xon/Xoff interrupt.
BCRA – Bidding Control Register – Address, A and B
Bits 7:0
MSBs of an address recognition event interrupt bid
This register provides the 8 MSBs of the Interrupt Arbitration number for an address recognition event interrupt.
BCR C/T – Bidding Control Register –C/T, 0 and 1
Bits 7:0
MSBs of a counter/timer event interrupt bid
This register provides the 8 MSBs of the Interrupt Arbitration number for a counter/timer event interrupt.
BCRLBE – Bidding Control Register – Received Loop Back Error
Bits 7:0
MSBs of a received loop back error event interrupt bid
This register provides the 8 MSBs of the Interrupt Arbitration number for the received loop back error interrupt.
Registers of the I/O ports
IPCRL – Input Port Change Register Lower Nibble, A and B (n = A for A, n = B for B)
Bit 7
Bit 6 Bit 7 Bit 6 Bit 3 Bit 2 Bit 1 Bit 0
I/O3 n
change
I/O2 n
change
I/O1 n
change
I/O0 n
change
I/O3 n state I/O2 n state I/O1 n state I/O0 n
state
0 = no change
1 = change
0 = no change
1 = change
0 = no change
1 = change
0 = no change
1 = change
Reads the actual logic level at the pin.
1 = high level; 0 = low level
This register may be read to determine the current logical level of the I/O pins and examine the output of the change detectors assigned to each
pin. If the change detection is not enabled or if the pin is configured as an output, the associated change field will read b’0.
IPCRU – Input Port Change Register Upper Nibble, A and B (n = A for A, n = B for B)
Bit 7 Bit 6 Bit 7 Bit 6 Bit 3 Bit 2 Bit 1 Bit 0
I/O7 n change I/O6 n change I/O5 n change I/O4 n change I/O7 n state I/0n6 state I/O5 n state I/O4 n state
0 = no change
1 = change
0 = no change
1 = change
0 = no change
1 = change
0 = no change
1 = change
Reads the actual logic level at the pin.
1 = high level; 0 = low level
This register may be read to determine the current logical level of the I/O pins and examine the output of the change detectors assigned to each
pin. If the change detection is not enabled or if the pin is configured as an output, the associated change field will read b’0.
IPR – Input Port Register, A and B (n = A for A, n = B for B)
Bits 7:0
Logical levels of I/O(7:0)n

SC28L202A1DGG,129

Mfr. #:
Manufacturer:
NXP Semiconductors
Description:
UART Interface IC 3-5V 2CH UART 3MBPS
Lifecycle:
New from this manufacturer.
Delivery:
DHL FedEx Ups TNT EMS
Payment:
T/T Paypal Visa MoneyGram Western Union