Philips Semiconductors Product data sheet
SC28L198Octal UART for 3.3 V and 5 V supply voltage
2006 Aug 10
28
Table 27. ICR – Interrupt Control Register
Bit 7 Bits 6:0
Reserved. Set to 0 Upper seven bits of the Arbitration Threshold
This register provides a single 7 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 x’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 (7) 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 x’8C. ( 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 poll 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.
Table 28. CIR – Current Interrupt Register
Bits 7:6 Bits 5:3 Bits 2:0
Type Current byte count/type Channel number
00 – other 000 – no interrupt
001 – Change of State
010 – Address
Recognition
011 – Xon/Xoff status
100 – Not used
101 – Break change
110, 111 do not occur
000 = a
001 = b
010 = c
011 = d
111 = h
01 – Transmit
11– Receive w/
errors
10 – Receive w/o
errors
Current count code
0 => 9 or less
characters
1 => 10 characters
.
.
5 => 14 characters
6 => 15 characters
7 => 16
(See also GIBCR)
000 = a
001 = b
010 = c
011 = d
111 = h
The Current Interrupt Register is provided to speed up the
specification of the interrupting condition in the Octal UART. 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:3], channel is CIR[2:0]
Else If CIR[6] = 1 then a transmitter interrupt is pending and the
count is CIR[5:3], channel is CIR[2:0]
Else the interrupt is another type, specified in CIR[5:3]
Note: The GIBCR, Global Interrupting Byte Count Register, may be
read to determine an exact character count if 9 or less characters
are indicated in the count field of the CIR.
Table 29. 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.
Table 30. Modification of the IVR
Bits 7:5 Bits 4:3 Bits 2:0
Always contains
bits (7:5) of the IVR
Will be replaced
with current inter-
rupt type if IVC field
of GCCR > 1
Replaced with inter-
rupting channel num-
ber if IVC field of
GCCR > 0
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)
Table 31. GICR – Global Interrupting Channel
Register
Bits 7:3 Bits 2:0
Reserved Channel code
100 = e 000 = a
101 = f 001 = b
110 = g 010 = c
111 = h 011 = d
A register associated with the interrupting channel as defined in the
CIR. It contains the interrupting channel code for all interrupts.
Philips Semiconductors Product data sheet
SC28L198Octal UART for 3.3 V and 5 V supply voltage
2006 Aug 10
29
Table 32. GIBCR – Global Interrupting Byte Count
Register
Bits 7:4 Bits 3:0
Reserved Channel byte count code
0000 = 1 AND RxRDY status set for RxFIFO
0000 = 1 AND TxRDY status set for TxD
0001 = 2
0010 = 3
.
1111 = 16
A register associated with the interrupting channel as defined in the
CIR. Its numerical value equals
the number of bytes minus 1 (count – 1) ready for transfer to the
transmitter or transfer from the receiver. It is undefined for other
types of interrupts
Table 33. 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 b’00 000 – not ”other” type
001 – Change of State
010 – Address Recognition
Event
011 – Xon/Xoff status
100 – Not used
101 – Break Change
11x – do not occur
A register associated with the interrupting channel as defined in the
CIR. It contains the type of interrupt code for all interrupts.
Table 34. 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
Table 35. 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.
Table 36. IPR – Input Port Register,
Bit 7 Bit 6 Bit 7 Bit 6 Bit 3 Bit 2 Bit 1 Bit 0
I/O3
change
I/O2
change
I/O1
change
I/O0
change
I/O3
state
I/O2
state
I/O1
state
I/O0
state
0 – no change
1 – change
0 – no change
1 – change
0 – no change
1 – change
0 – no change
1 – change
The actual logic level at the I/O pin.
1 = high level; 0 =– low level.
This register may be read to determine the current 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.
Table 37. I/OPIOR – I/O Port Interrupt and Output Register
Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
I/O3 enable I/O2 enable I/O1 enable I/O0 enable I/O3 output I/O2 output I/O1 output I/O0 output
0 – disable
1 – enable
0 – disable
1 – enable
0 – disable
1 – enable
0 – disable
1 – enable
OPR[3] OPR[2] OPR[1] OPR[0]
I/OPIOR[7:4] bits activate the input change of state detectors. If a
pin is configured as an output, a b’1 value written to a I/O field has
no effect.
I/OPIOR[3:0] bits hold the datum which is the inverse of the datum
driven to its associated I/O pin when the I/OPCR control bits for that
pin are programmed to b’01.
Philips Semiconductors Product data sheet
SC28L198Octal UART for 3.3 V and 5 V supply voltage
2006 Aug 10
30
Table 38. I/OPCR – I/O Port Configuration Register
Bits 7:6 Bits 5:4 Bits 3:2 Bits 1:0
I/O3 control I/O2 control I/O1 control I/O0 control
00 – GPI/TxC input
01 – I/OPIOR[3] output
10 – TxC16x output
11 – TxC1x output
00 – GPI/RxC input
01 – I/OPIOR[2]/RTSN *
10 – RxC1x output
11 – RxC16x output
00 – GPI input
01 – I/OPIOR[1]/RTSN *
10 – Reserved
11 – RxC1x output
00 – GPI/CTSN input
01 – I/OPIOR[0]output
10 – TxC1x output
11 – TxC16x output
* If I/OPCR(5:4) is programmed as ’01’ then the RTSN functionality
is assigned to I/O2, otherwise, this function can be implemented on
I/O1. (This allows for a lower pin count package option)
This register contains 4, 2 bit fields that set the direction and source
for each of the I/O pins associated with the channel. The I/O2
output may be RTSN if MR1[7] is set, or may signal ”end of
transmission” if MR2[5] is set.(Please see the descriptions of these
functions under the MR1 and MR2 register descriptions) If this
control bit is cleared, the pin will use the OPR[2] as a source if
I/OPCR[5:4] is b’01. The b’00 combinations are always inputs. This
register resets to x’0, effectively configuring all I/O pins as inputs on
power up or reset. Inputs may be used as RxC, TxC inputs or
CTSN and General Purpose Inputs simultaneously. All inputs are
equipped with change detectors that may be used to generate
interrupts or can be polled, as required.
NOTE: To ensure that CTSN, RTSN and an external RxC are
always available, if I/O2 is not selected as the RTSN output, the
RTSN function is automatically provided on I/O1.
GENERAL PURPOSE OUTPUT PIN CONTROL
The following four registers control the function of the G
OUT
0 pin.
These output pins have a unique control matrix which includes a
clocking mechanism that will allow the pin to change synchronously
with an internal or external stimulus. See diagram below.
Table 39. GPOSR – General Purpose Output
Select Register
GPOSR selects the signal or data source for the G
OUT
0 pin. The Tx
and Rx clock selection is straight forward. The selection of the
GPOR allows a more flexible timing control of when the G
OUT
0 pin
changes.
Bits 7:4 Bits 3:0
Reserved Global General Purpose Output 0 Selection
0000 – 0111 reserved
1000 = TxC1x a
1001 = TxC16x a
1010 = RxC16x a
1011 = TxC16x b
1100 = GGPOR(3)
1101 = GGPOR(2)
1110 = GGPOR(1)
1111 = GGPOR(0)
Table 40. GPOR – General Purpose Output
Register
This register is a read/write register. Its contents may be altered by
a GPOR Write or by the GPOC and GPOD registers shown below.
The GPOD and GPOC may be programmed to cause the individual
bits of the GPOR to change synchronously with internal or external
events. The cells of this register may be thought of as a “Two Port
flip-flop”; one port is controlled by a D input and clock, the other by a
data load strobe. A read of the GPOR always returns its current
value regardless of the port from which it was loaded.
Bits 7:4 Bit 3 Bit 2 Bit 1 Bit 0
Reserved GPOR(3) GPOR(2) GPOR(1) GPOR(0)
Table 41. GPOC – General Purpose Output Clk
Register
This controls the clock source for GPOR that will clock and/or toggle
the data from the selected GPOD source. When code b’00 is
selected, no clock will be provided, thereby preventing any change
through the D port.
Bits 7:6 Bits 5:4 Bits 3:2 Bits 1:0
Clk Sel
GPOR(3)
Clk Sel
GPOR(2)
Clk Sel
GPOR(1)
Clk Sel
GPOR(0)
00 = none
01 = G
IN
0
10 = G
IN
1
11 = reserved
00 = none
01 = G
IN
0
10 = G
IN
1
11 = reserved
00 = none
01 = G
IN
0
10 = G
IN
1
11 = I/O3c
00 = none
01 = G
IN
0
10 = G
IN
1
11 = I/O3a
Table 42. GPOD – General Purpose Output Data
Register
This register selects the data that will be presented to the GPOR “D”
input. Note that selection b’10 selects the inverted GPOR data as
the input. In this case, the GPOR output will toggle synchronously
with the clock selected in the GPOC.
Bits 7:6 Bits 5:4 Bits 3:2 Bits 1:0
Data Sel
GPOR(3)
Data Sel
GPOR(2)
Data Sel
GPOR(1)
Data Sel
GPOR(0)
00 = ’1’
01 = ’0’
10 = GPOR3N
11 = reserved
00 = ’1’
01 = ’0’
10 = GPOR2N
11 = reserved
00 = ’1’
01 = ’0’
10 = GPOR1N
11 = I/O3d
00 = ’1’
01 = ’0’
10 = GPOR0N
11 = I/O3b

SC28L198A1A,529

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