TI NS16C552

NS16C552,PC16552D
PC16552D Dual Universal Asynchronous Receiver/Transmitter with FIFOs†
Literature Number: SNLS387B
PC16552D
Dual Universal Asynchronous
Receiver/Transmitter with FIFOs ²
General Description
Features
The PC16552D is a dual version of the PC16550D Universal
Asynchronous Receiver/Transmitter (UART). The two serial
channels are completely independent except for a common
CPU interface and crystal input. On power-up both channels
are functionally identical to the 16450*. Each channel can
operate with on-chip transmitter and receiver FIFOs (FIFO
mode) to relieve the CPU of excessive software overhead.
In FIFO mode each channel is capable of buffering 16 bytes
(plus 3 bits of error data per byte in the RCVR FIFO) of data
in both the transmitter and receiver. All the FIFO control
logic is on-chip to minimize system overhead and maximize
system efficiency.
Signalling for DMA transfers is done through two pins per
channel (TXRDY and RXRDY). The RXRDY function is multiplexed on one pin with the OUT 2 and BAUDOUT functions. The CPU can select these functions through a new
register (Alternate Function Register).
Each channel performs serial-to-parallel conversion on data
characters received from a peripheral device or a MODEM,
and parallel-to-serial conversion on data characters received from the CPU. The CPU can read the complete
status of each channel at any time. Status information reported includes the type and condition of the transfer operations being performed by the DUART, as well as any error
conditions (parity, overrun, framing, or break interrupt).
The DUART includes one programmable baud rate generator for each channel. Each is capable of dividing the clock
input by divisors of 1 to (216 b 1), and producing a 16 c
clock for driving the internal transmitter logic. Provisions are
also included to use this 16 c clock to drive the receiver
logic. The DUART has complete MODEM-control capability,
and a processor-interrupt system. Interrupts can be programmed to the user’s requirements, minimizing the computing required to handle the communications link.
The DUART is fabricated using National Semiconductor’s
advanced M2CMOSTM .
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Dual independent UARTs
Capable of running all existing 16450 and PC16550D
software
After reset, all registers are identical to the 16450 register set
Read and write cycle times of 84 ns
In the FIFO mode transmitter and receiver are each
buffered with 16-byte FIFOs to reduce the number of
interrupts presented to the CPU
Holding and shift registers in the 16450 Mode eliminate
the need for precise synchronization between the CPU
and serial data
Adds or deletes standard asynchronous communication
bits (start, stop, and parity) to or from the serial data
Independently controlled transmit, receive, line status,
and data set interrupts
Programmable baud generators divide any input clock
by 1 to (216 b 1) and generate the 16 c clock
MODEM control functions (CTS, RTS, DSR, DTR, RI,
and DCD)
Fully programmable serial-interface characteristics:
Ð 5-, 6-, 7-, or 8-bit characters
Ð Even, odd, or no-parity bit generation and detection
Ð 1-, 1(/2-, or 2-stop bit generation
Ð Baud generation (DC to 1.5M baud) with 16 c clock
False start bit detection
Complete status reporting capabilities
TRI-STATEÉ TTL drive for the data and control buses
Line break generation and detection
Internal diagnostic capabilities:
Ð Loopback controls for communications link fault
isolation
Ð Break, parity, overrun, framing error simulation
Full prioritized interrupt system controls
*Can also be reset to 16450 Mode under software control.
² Note: This part is patented.
TRI-STATEÉ is a registered trademark of National Semiconductor Corporation
M2CMOSTM is a trademark of National Semiconductor Corporation
C1995 National Semiconductor Corporation
TL/C/9426
RRD-B30M75/Printed in U. S. A.
PC16552D Dual Universal Asynchronous Receiver/Transmitter with FIFOs
June 1995
Table of Contents
8.0 REGISTERS (Continued)
1.0 ABSOLUTE MAXIMUM RATINGS
8.3 Programmable Baud Generator
2.0 DC ELECTRICAL CHARACTERISTICS
8.4 Line Status Register
8.5 FIFO Control Register
8.6 Interrupt Identification Register
8.7 Interrupt Enable Register
8.8 Modem Control Register
8.9 Modem Status Register
8.10 Alternate Function Register
8.11 Scratchpad Register
3.0 AC ELECTRICAL CHARACTERISTICS
4.0 TIMING WAVEFORMS
5.0 BLOCK DIAGRAM OF A SINGLE SERIAL CHANNEL
6.0 PIN DESCRIPTIONS
6.1 Input Signals
6.2 Output Signals
6.3 Input/Output Signals
6.4 Clock Signals
6.5 Power
9.0 FIFO Mode Operation
9.1 FIFO Interrupt Operation
9.2 FIFO Polled Operation
7.0 CONNECTION DIAGRAM
10.0 ORDERING INFORMATION
8.0 REGISTERS
8.1 Line Control Register
8.2 Typical Clock Circuits
Basic Configuration
TL/C/9426 – 1
2
1.0 Absolute Maximum Ratings
Temperature under Bias
Note: Maximum ratings indicate limits beyond which permanent damage may occur. Continuous operation at these limits is not intended and should be limited to those conditions
specified under DC electrical characteristics.
0§ C to a 70§ C
Storage Temperature
b 65§ C to a 150§ C
All Input or Output Voltages
with Respect to VSS
b 0.5V to a 7.0V
Power Dissipation
1W
2.0 DC Electrical Characteristics
TA e 0§ C to a 70§ C, VDD e a 5V g 10%, VSS e 0V, unless otherwise specified
Symbol
Parameter
Conditions
Min
Max
Units
VILX
Clock Input Low Voltage
b 0.5
VIHX
Clock Input High Voltage
2
VIL
Input Low Voltage
b 0.5
0.8
V
VIH
Input High Voltage
2
VCC
V
VOL
Output Low Voltage
IOL e 1.6 mA on all (Note 1)
VOH
Output High Voltage
IOH e b1 mA (Note 1)
ICC(AV)
Average Power Supply
Current
VDD e 5.5V
No Loads on Output;
CS, RD, WR,
SIN, DSR, DCD,
CTS, RI e 2V
All Other Inputs e 0.8V
XIN e 24 MHz
Divisor e EFFF
IIL
Input Leakage
ICL
Clock Leakage
IOZ
TRI-STATE Leakage
VILMR
MR Schmitt VIL
VIHMR
MR Schmitt VIH
0.8
V
VCC
V
0.4
2.4
V
V
VDD e 5.5V, VSS e 0V
VIN e 0V, 5.5V
VDD e 5.5V, VSS e 0V
VOUT e 0V, 5.5V
1) Chip Deselected
2) WRITE Mode,
Chip Selected
30
mA
g 10
mA
g 10
mA
g 20
mA
0.8
V
2
V
Note 1: Does not apply to XOUT
Note 2: TA e 25§ C
Capacitance TA e 25§ C, VDD e VSS e 0V
Symbol
CXIN
Parameter
Conditions
Clock Input Capacitance
fc e 1 MHz
Unmeasured Pins
Returned to VSS
Min
Typ
Max
Units
7
9
pF
7
9
pF
pF
CXOUT
Clock Output Capacitance
CIN
Input Capacitance
5
7
COUT
Output Capacitance
6
8
pF
CI/O
Input/Output Capacitance
10
12
pF
3
3.0 AC Electrical Characteristics TA e 0§ C to a 70§ C, VDD e a 5V g 10%
Symbol
Parameter
Conditions
Min
Max
Units
tAR
RD Delay from Address
15
ns
tAW
WR Delay from Address
15
ns
tDH
Data Hold Time
5
ns
tDS
Data Setup Time
15
tHZ
RD to Floating Data Delay
tMR
Master Reset Pulse Width
tRA
Address Hold Time from RD
tRC
Read Cycle Update
29
ns
tRD
RD Strobe Width
40
ns
tRVD
Delay from RD to Data
tWA
Address Hold Time from WR
tWC
Write Cycle Update
29
ns
tWR
WR Strobe Width
40
ns
tXH
Duration of Clock High Pulse
External Clock (24 MHz Max)
17
ns
tXL
Duration of Clock Low Pulse
External Clock (24 MHz Max)
17
ns
RC
Read Cycle e tAR a tRD a tRC
84
ns
WC
Write Cycle e tAW a tWR a tWC
84
ns
(Note 2)
ns
10
20
ns
500
ns
0
ns
25
0
ns
ns
BAUD GENERATOR
1
216 b 1
N
Baud Divisor
tBHD
Baud Output Positive Edge Delay
fX e 24 MHz, d 2
45
ns
tBLD
Baud Output Negative Edge Delay
fX e 24 MHz, d 2
45
ns
RECEIVER
tRAI
Delay from Active Edge of RD to
Reset Interrupt
78
ns
tRINT
Delay from Inactive Edge of RD
(RD LSR)
to Reset Interrupt
40
ns
tRXI
Delay from READ to RXRDY Inactive
55
ns
tSCD
Delay from RCLK to Sample Time
33
ns
tSINT
Delay from Stop to Set Interrupt
2
BAUDOUT
Cycles
(Note 1)
Note 1: In the FIFO mode (FCR0 e 1) the trigger level interrupts, the receiver data available indication, the active RXRDY indication and the overrun error
indication will be delayed 3 RCLKs. Status indicators (PE, FE, BI) will be delayed 3 RCLKs after the first byte has been received. For subsequently received bytes
these indicators will be updated immediately after RDRBR goes inactive. Timeout interrupt is delayed 8 RCLKs.
Note 2: Charge and discharge time is determined by VOL, VOH and the external loading.
Note 3: All AC timings can be met with current loads that don’t exceed 3.2 mA or b 80 mA at 100 pF capacitive loading.
Note 4: For capacitive loads that exceed 100 pF the following typical derating factors should be used:
AC Testing Load Circuit
100 pF k CL s 150 pF t e (0.1 ns/pF)(CL b 100 pF)
150 pF k CL s 200 pF t e (0.08 ns/pF)(CL b 100 pF)
ISINK
t e (0.5 ns/mA)(ISINK mA)
ISOURCE
t e (0.5 ns/mA)(ISOURCE mA)
Limits: ISOURCE is negative, ISINK s 4.8 mA, ISOURCE s b 120 mA, CL s 250 pF
TL/C/9426 – 22
4
3.0 AC Electrical Characteristics TA e 0§ C to a 70§ C, VDD e a 5V g 10% (Continued)
Symbol
Parameter
Conditions
Min
Max
Units
TRANSMITTER
tHR
Delay from WR (WR THR)
to Reset Interrupt
40
ns
tIR
Delay from RD (RD IIR) to Reset
Interrupt (THRE)
40
ns
tIRS
Delay from Initial INTR Reset
to Transmit Start
8
24
BAUDOUT
Cycles
tSI
Delay from Initial Write to Interrupt
(Note 1)
16
24
BAUDOUT
Cycles
tSTI
Delay from Start to Interrupt (THRE)
(Note 1)
8
BAUDOUT
Cycles
tSXA
Delay from Start to TXRDY Active
8
BAUDOUT
Cycles
tWXI
Delay from Write to TXRDY Inactive
25
ns
MODEM CONTROL
tMDO
Delay from WR (WR MCR)
to Output
40
ns
tRIM
Delay to Reset Interrupt from
RD (RD MSR)
78
ns
tSIM
Delay to Set Interrupt from MODEM Input
40
ns
Note 1: This delay will be lengthened by 1 character time, minus the last stop bit time if the transmitter interrupt delay circuit is active. (See FIFO Interrupt Mode
Operation).
4.0 Timing Waveforms All timings are referenced to valid 0 and valid 1
External Clock Input (24 MHz Max)
AC Test Points
TL/C/9426 – 3
TL/C/9426 – 2
Note 2: The 2.4V and 0.4V levels are the voltages that the inputs are driven to during AC testing.
Note 3: The 2.0V and 0.8V levels are the voltages at which the timing tests are made.
BAUDOUT Timing
TL/C/9426 – 4
5
4.0 Timing Waveforms All timings are referenced to valid 0 and valid 1 (Continued)
Read Cycle
TL/C/9426 – 6
Write Cycle
TL/C/9426 – 5
Transmitter Timing
TL/C/9426 – 8
Note 1: See Write Cycle Timing.
Note 2: See Read Cycle Timing.
6
4.0 Timing Waveforms All timings are referenced to valid 0 and valid 1 (Continued)
Receiver Timing
TL/C/9426 – 7
MODEM Control Timing
TL/C/9426 – 9
Note 1: See Write Cycle Timing.
Note 2: See Read Cycle Timing.
7
4.0 Timing Waveforms All timings are referenced to valid 0 and valid 1 (Continued)
RCVR FIFO First Byte (This Sets RDR)
TL/C/9426 – 10
RCVR FIFO Bytes Other Than the First Byte (RDR Is Already Set)
TL/C/9426 – 11
Receiver Ready FCR0 e 0 or FCR0 e 1 and FCR3 e 0 (Mode 0)
TL/C/9426 – 12
Note 1: This is the reading of the last byte in the FIFO.
Note 2: If FCR0 e 1, then tSINT e 3 RCLKs. For a timeout interrupt, tSINT e 8 RCLKs.
8
4.0 Timing Waveforms All timings are referenced to valid 0 and valid 1 (Continued)
Receiver Ready FCR0 e 1 and FCR3 e 1 (Mode 1)
TL/C/9426 – 13
Note 1: This is the reading of the last byte in the FIFO.
Note 2: If FCR0 e 1, tSINT e 3 RCLKs.
Transmitter Ready FCR0 e 0 or FCR0 e 1 and FCR3 e 0 (Mode 0)
TL/C/9426 – 14
Transmitter Ready FCR0 e 1 and FCR3 e 1 (Mode 1)
TL/C/9426 – 15
9
5.0 Block Diagram of a Single Channel
TL/C/9426 – 16
10
6.0 Pin Descriptions
The following describes the function of all DUART pins.
Some of these descriptions reference internal circuits.
In the following descriptions, a low represents a logic 0 (0V
nominal) and a high represents a logic 1 ( a 2.4V nominal).
appropriate channel. Bit 5 is the complement of the DSR
signal. Bit 1 (DDSR) of the MODEM Status Register indicates whether the DSR input has changed state since the
previous reading of the MODEM Status Register.
Serial channels are designated by a numerical suffix (1 or 2)
after each pin name. If a numerical suffix is not associated
with the pin name, then the information applies to both
channels.
A0, A1, A2 (Register Select), pins 10, 14, 15: Address signals connected to these 3 inputs select a DUART register
for the CPU to read from or write to during data transfer.
Table I shows the registers and their addresses. Note that
the state of the Divisor Latch Access Bit (DLAB), which is
the most significant bit of the Line Control Register, affects
the selection of certain DUART registers. The DLAB must
be set high by the system software to access the Baud
Generator Divisor Latches and the Alternate Function Register.
CHSL (Channel Select), pin 16: This directs the address
and data information to the selected serial channel. When
CHSL is high, channel 1 is selected. When CHSL is low
channel 2 is selected.
CS (Chip Select), pin 18: When CS is low, the chip is selected. This enables communication between the DUART and
the CPU. Valid chip selects should stabilize according to the
tAW parameter.
CTS1, CTS2 (Clear to Send), pins 40, 28: When low, this
indicates that the MODEM or data set is ready to exchange
data. The CTS signal is a MODEM status input whose condition the CPU can test by reading bit 4 (CTS) of the
MODEM Status Register for the appropriate channel. Bit 4
is the complement of the CTS signal. Bit 0 (DCTS) of the
MODEM Status Register indicates whether the CTS input
has changed state since the previous reading of the
MODEM Status Register. CTS has no effect on the Transmitter.
Note: Whenever the DSR bit of the MODEM Status Register changes state,
an interrupt is generated if the MODEM Status Interrupt is enabled.
DTR1, DTR2 (Data Terminal Ready), pins 37, 27: When low,
this informs the MODEM or data set that the DUART is
ready to establish a communications link. The DTR output
signal can be set to an active low by programming bit 0
(DTR) of the MODEM Control Register to a high level. A
Master Reset operation sets this signal to its inactive (high)
state. Loop mode operation holds this signal in its inactive
state.
INTR1, INTR2 (Interrupt), pins 34, 17: This goes high whenever any one of the following interrupt types has an active
high condition and is enabled via the IER: Receiver Error
Flag; Received Data Available: timeout (FIFO Mode only);
Transmitter Holding Register Empty; and MODEM Status.
The INTR signal is reset low upon the appropriate interrupt
service or a Master Reset operation.
MF1, MF2 (Multi-Function), pins 35, 19: This can be programmed for any one of three signal functions OUT 2,
BAUDOUT or RXRDY. Bits 2 and 1 of the Alternate Function Register select which output signal will be present on
this pin. OUT 2 is the default signal and it is selected immediately after master reset or power-up.
The OUT 2 signal can be set active low by programming bit
3 (OUT 2) of the associated channel’s MODEM Control
Register to a 1. A Master Reset operation sets this signal to
its inactive (high) state. Loop Mode holds this signal in its
inactive state.
The BAUDOUT signal is the 16 c clock output that drives
the transmitter and receiver logic of the associated serial
channel. This signal is the result of the XIN clock divided by
the value in the Division Latch Registers. The BAUDOUT
signal for each channel is internally connected to provide
the receiver clock (formerly RCLK on the PC16550D).
The RXRDY signal can be used to request a DMA transfer
of data from the RCVR FIFO. Details regarding the active
and inactive states of this signal are given in Section 8.5, Bit
3.
MR (Master Reset), pin 21: When this input is high, it clears
all the registers (except the Receiver Buffer, Transmitter
Holding, and Divisor Latches), and the control logic of the
DUART. The states of various output signals (SOUT, INTR,
OUT 2, RTS, DTR) are affected by an active MR input (Refer to Table III.) This input is buffered with a TTL-compatible
Schmitt Trigger.
RD (Read), pin 24: When RD is low while the chip is selected, the CPU can read status information or data from the
selected DUART register.
RTS1, RTS2 (Request to Send), pins 36, 23: When low, this
informs the MODEM or data set that the UART is ready to
exchange data. The RTS output signal can be set to an
active low by programming bit 1 (RTS) of the MODEM Control Register. A Master Reset operation sets this signal to its
inactive (high) state. Loop mode operation holds this signal
in its inactive state.
Note: Whenever the CTS bit of the MODEM Status Register changes state,
an interrupt is generated if the MODEM Status Interrupt is enabled.
D7 – D0 (Data Bus), pins 9–2: This bus comprises eight TRISTATE input/output lines. The bus provides bidirectional
communications between the UART and the CPU. Data,
control words, and status information are transferred via the
D7 – D0 Data Bus.
DCD1, DCD2 (Data Carrier Detect), pins 42, 30: When low,
indicates that the data carrier has been detected by the
MODEM or data set. The DCD signal is a MODEM status
input whose condition the CPU can test by reading bit 7
(DCD) of the MODEM Status Register for the appropriate
channel. Bit 7 is the complement of the DCD signal. Bit 3
(DDCD) of the MODEM Status Register indicates whether
the DCD input has changed state since the previous reading
of the MODEM Status Register. DCD has no effect on the
receiver.
Note: Whenever the DCD bit of the MODEM Status Register changes state,
an interrupt is generated if the MODEM Status Interrupt is enabled.
DSR1, DSR2 (Data Set Ready), pins 41, 29: When low, this
indicates that the MODEM or data set is ready to establish
the communications link with the DUART. The DSR signal is
a MODEM status input whose condition the CPU can test by
reading bit 5 (DSR) of the MODEM Status Register for the
11
6.0 Pin Descriptions (Continued)
RI1, RI2 (Ring Indicator), pins 43, 31: When low, this indicates that a telephone ringing signal has been received by
the MODEM or data set. The RI signal is a MODEM status
input whose condition the CPU can test by reading bit 6 (RI)
of the MODEM Status Register for the appropriate channel.
Bit 6 is the complement of the RI signal. Bit 2 (TERI) of the
MODEM Status Register indicates whether the RI input signal has changed from a low to a high state since the previous reading of the MODEM Status Register.
two types of DMA transfer via FCR3. When operating as in
the 16450 Mode, only DMA mode 0 is allowed. Mode 0
supports single transfer DMA where a transfer is made between CPU bus cycles. Mode 1 supports multi-transfer DMA
where multiple transfers are made continuously until the
XMIT FIFO has been filled. Details regarding the active and
inactive states of this signal are given in Section 8.5, Bit 3.
VDD (Power), pins 33, 44: a 5V Supply
VSS (Ground), pins 12, 22: 0V Reference
WR (Write), pin 20: When WR is low while the chip is selected, the CPU can write control words or data into the selected DUART register.
XIN (External Crystal Input), pin 11: This signal input is used
in conjunction with XOUT to form a feedback circuit for the
baud rate generator’s oscillator. If a clock signal will be generated off-chip, then it should drive the baud rate generator
through this pin.
XOUT (External Crystal Output), pin 13: This signal output is
used in conjunction with XIN to form a feedback circuit for
the baud rate generator’s oscillator. If the clock signal will
be generated off-chip, then this pin is unused.
Note: Whenever the RI bit of the MODEM Status Register changes from a
high to a low state, an interrupt is generated if the MODEM Status
Interrupt is enabled.
SIN1, SIN2 (Serial Input), pins 39, 25 : Serial data input from
the communications link (peripheral device, MODEM, or
data set).
SOUT1, SOUT2 (Serial Output), pins 38, 26: Composite serial data output to the communications link (peripheral,
MODEM or data set). The SOUT signal is set to the Marking
(logic 1) state upon a Master Reset operation.
TXRDY1, TXRDY2 (Transmitter Ready), pins 1, 32: Transmitter DMA signalling is available through two pins. When
operating in the FIFO mode, the CPU selects one of
7.0 Connection Diagram
Chip Carrier Package
TL/C/9426 – 17
Top View
Order Number PC16552D
See NS Package Number V44A
12
8.0 Registers
TABLE I. Register Addresses
DLAB1
CHSL
A2
A1
A0
Register
0
1
0
0
0
0
0
0
X
X
X
X
X
1
1
1
1
1
1
1
1
1
1
0
0
0
0
1
1
1
1
0
0
1
1
1
0
0
1
1
0
1
0
0
1
0
1
0
1
0
1
1
0
0
1
Receiver Buffer (Read),
Transmitter Holding
Register (Write)
Interrupt Enable
Interrupt Identification (Read)
FIFO Control (Write)
Line Control
MODEM Control
Line Status
MODEM Status
Scratch
Divisor Latch
(Least Significant Byte)
Divisor Latch
(Most Significant Byte)
Alternate Function
1
1
0
1
0
DLAB2
CHSL
A2
A1
A0
Register
0
0
0
0
0
0
0
0
X
X
X
X
X
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
0
0
1
1
1
0
0
1
1
0
1
0
0
1
0
1
0
1
0
1
0
0
0
1
1
0
0
1
0
Receiver Buffer (Read),
Transmitter Holding
Register (Write)
Interrupt Enable
Interrupt Identification (Read)
FIFO Control (Write)
Line Control
MODEM Control
Line Status
MODEM Status
Scratch
Divisor Latch
(Least Significant Byte)
Divisor Latch
(Most Significant Byte)
Alternate Function
13
C
H
A
N
N
E
L
1
C
H
A
N
N
E
L
2
14
Data Bit 4
Data Bit 5
Data Bit 6
Data Bit 7
4
5
6
7
Data Bit 7
Data Bit 6
Data Bit 5
Data Bit 4
Data Bit 3
Data Bit 2
Data Bit 1
0 DLAB e 0
Transmitter
Holding
Register
(Write
Only)
THR
Data Bit 0
0
0
0
IER
Enable
Received
Data
Available
Interrupt
(ERDAI)
Enable
Transmitter
Holding
Register
Empty
Interrupt
(ETHREI)
Enable
Receiver
Line Status
Interrupt
(ELSI)
Enable
MODEM
Status
Interrupt
(EMSI)
0
Interrupt
Enable
Register
1 DLAB e 0
FIFOs
Enabled
(Note 2)
FIFOs
Enabled
(Note 2)
0
0
Interrupt
ID
Bit
(Note 2)
Interrupt
ID
Bit
Interrupt
ID
Bit
2
Interrupt
Ident.
Register
(Read
Only)
IIR
‘‘0’’ if
Interrupt
Pending
RCVR
Trigger
(LSB)
RCVR
Trigger
(MSB)
Reserved
Reserved
DMA
Mode
Select
XMIT
FIFO
Reset
RCVR
FIFO
Reset
2
FIFO
Control
Register
(Write
Only)
FCR
FIFO
Enable
Note 3: This bit no longer has a pin associated with it.
Note 2: These bits are always 0 in the 16450 Mode.
Note 1: Bit 0 is the least significant bit. It is the first bit serially transmitted or received.
Data Bit 3
Data Bit 2
2
3
Data Bit 1
1
0
Bit
No.
0 DLAB e 0
Receiver
Buffer
Register
(Read
Only)
RBR
Data Bit 0
(Note 1)
Divisor
Latch
Access Bit
(DLAB)
Set
Break
Even
Parity
Select
(EPS)
Stick
Parity
Parity
Enable
(PEN)
Number of
Stop Bits
(STB)
Word
Length
Select
Bit 1
(WLS1)
LCR
Word
Length
Select
Bit 0
(WLS0)
Line
Control
Register
0
0
0
Loop
Out 2
Out 1
(Note 3)
Request
to Send
(RTS)
MCR
Data
Terminal
Ready
(DTR)
MODEM
Control
Register
Register Address
3
4
Transmitter
Holding
Register
(THRE)
Transmitter
Empty
(TEMT)
Error in
RCVR
FIFO
(Note 2)
Break
Interrupt
(BI)
Framing
Error
(FE)
Parity
Error
(PE)
Overrun
Error
(OE)
LSR
Data
Ready
(DR)
Line
Status
Register
5
6
Delta
Data
Carrier
Detect
(DDCD)
Clear
to
Send
(CTS)
Data
Set
Ready
(DSR)
Ring
Indicator
(RI)
Data
Carrier
Detect
(DCD)
Trailing
Edge Ring
Indicator
(TERI)
Delta
Data
Set
Ready
(DDSR)
MSR
Delta
Clear
to Send
(DCTS)
MODEM
Status
Register
TABLE II. Register Summary for an Individual Channel
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
SCR
Bit 0
Scratch
Register
7
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
DLL
Bit 0
Divisor
Latch
(LS)
0 DLAB e 1
Bit 15
Bit 14
Bit 13
Bit 12
Bit 11
Bit 10
Bit 9
DLM
Bit 8
Divisor
Latch
(MS)
1 DLAB e 1
0
0
0
0
0
RXRDY
Select
BAUDOUT
Select
AFR
Concurrent
Write
Alternate
Function
Register
2 DLAB e 1
8.0 Registers (Continued)
Two identical register sets, one for each channel, are in the
DUART. All register descriptions in this section apply to the
register sets in both channels.
Note: This feature enables the CPU to alert a terminal in a computer communications system. If the following sequence is followed, no erroneous or extraneous characters will be transmitted because of the
break.
8.1 LINE CONTROL REGISTER
The system programmer specifies the format of the asynchronous data communications exchange and sets the Divisor Latch Access bit via the Line Control Register (LCR).
This is a read and write register. Table II shows the contents
of the LCR. Details on each bit follow:
Bits 0 and 1: These two bits specify the number of data bits
in each transmitted or received serial character. The encoding of bits 0 and 1 is as follows:
1. Load an all 0s, pad character, in response to THRE.
Bit 1
Bit 0
Data Length
0
0
1
1
0
1
0
1
5 Bits
6 Bits
7 Bits
8 Bits
2. Set break after the next THRE.
3. Wait for the transmitter to be idle, (TEMT e 1), and clear break when
normal transmission has to be restored.
During the break, the Transmitter can be used as a character timer to accurately establish the break duration.
Bit 7: This bit is the Divisor Latch Access Bit (DLAB). It must
be set high (logic 1) to access the Divisor Latches of the
Baud Generator or the Alternate Function Register during a
Read or Write operation. It must be set low (logic 0) to access any other register.
8.2 TYPICAL CLOCK CIRCUITS
Bit 2: This bit specifies the number of Stop bits transmitted
with each serial character. If bit 2 is a logic 0, one Stop bit is
generated in the transmitted data. If bit 2 is a logic 1 when a
5-bit data length is selected, one and a half Stop bits are
generated. If bit 2 is a logic 1 when either a 6-, 7-, or 8-bit
word length is selected, two Stop bits are generated. The
receiver checks the first Stop bit only, regardless of the
number of Stop bits selected.
Bit 3: This bit is the Parity Enable bit. When bit 3 is a logic 1,
a Parity bit is generated (transmit data) or checked (receive
data) between the last data bit and Stop bit of the serial
data. (The Parity bit is used to produce an even or odd
number of 1s when the data bits and the Parity bit are
summed.)
Bit 4: This bit is the Even Parity Select bit. When parity is
enabled and bit 4 is a logic 0, an odd number of logic 1s is
transmitted or checked in the data word bits and Parity bit.
When parity is enabled and bit 4 is a logic 1, an even number of logic 1s is transmitted or checked.
Bit 5: This bit is the Stick Parity bit. When parity is enabled it
is used in conjunction with bit 4 to select Mark or Space
Parity. When bits 3, 4 and 5 are logic 1 the Parity bit is
transmitted and checked as a logic 0 (Space Parity). If bits 3
and 5 are 1 and bit 4 is a logic 0 then the Parity bit is
transmitted and checked as a logic 1 (Mark Parity). If bit 5 is
a logic 0 Stick Parity is disabled.
Bit 6: This bit is the Break Control bit. It causes a break
condition to be transmitted to the receiving UART. When it
is set to a logic 1, the serial output (SOUT) is forced to the
Spacing state (logic 0). The break is disabled by setting bit 6
to a logic 0. The Break Control bit acts only on SOUT and
has no effect on the transmitter logic.
TL/C/9426 – 18
TL/C/9426 – 19
Typical Crystal Oscillator Network (Note)
Crystal
RP
RX2
C1
C2
3.1 MHz
1 MX
1.5k
10 – 30 pF
40 – 60 pF
1.8 MHz
1 MX
1.5k
10 – 30 pF
40 – 60 pF
Note: These R and C values are approximate and may vary 2 x depending
on the crystal characteristics. All crystal circuits should be designed
specifically for the system.
Composite Serial Data
TL/C/9426 – 21
15
8.0 Registers (Continued)
TABLE III. DUART Reset Configuration
Register/Signal
Reset Control
Reset State
Interrupt Enable Register
Master Reset
0000
Interrupt Identification Register
Master Reset
0000
FIFO Control
Master Reset
0000
Line Control Register
Master Reset
0000
MODEM Control Register
Master Reset
0000
Line Status Register
Master Reset
0110
MODEM Status Register
Master Reset
XXXX
Alternate Function Register
Master Reset
0000 0000
SOUT
Master Reset
High
INTR (RCVR Errs)
Read LSR/MR
Low
INTR (RCVR Data Ready)
Read RBR/MR
Low
Read IIR/Write THR/MR
Low
INTR (THRE)
INTR (Modem Status Changes)
Read MSR/MR
Low
OUT 2
Master Reset
High
RTS
Master Reset
High
DTR
Master Reset
0000
(Note 1)
0001
0000
0000
0000
0000
0000
(Note 2)
High
RCVR FIFO
MR/FCR1 # FCR0/DFCR0
All Bits Low
XMIT FIFO
MR/FCR1 # FCR0/DFCR0
All Bits Low
Note 1: Boldface bits are permanently low.
Note 2: Bits 7–4 are driven by the input signals.
previous character. The OE indicator is set to a logic 1 during the character stop bit time when the overrun condition
exists. It is reset whenever the CPU reads the contents of
the Line Status Register. If the FIFO mode data continues to
fill the FIFO beyond the trigger level, an overrun error will
occur only after the FIFO is full and the next character has
been completely received in the shift register. OE is indicated to the CPU as soon as it happens. The character in the
shift register can be overwritten, but it is not transferred to
the FIFO.
Bit 2: This bit is the Parity Error (PE) indicator. Bit 2 indicates that the received data character does not have the
correct even or odd parity, as selected by the even-parityselect bit. The PE bit is set to a logic 1 during the character
Stop bit time when the character has a parity error. It is
reset to a logic 0 whenever the CPU reads the contents of
the Line Status Register or when the next character is loaded into the Receiver Buffer Register. In the FIFO mode this
error is associated with the particular character in the FIFO
it applies to. This error is revealed to the CPU when its
associated character is at the top of the FIFO.
8.3 PROGRAMMABLE BAUD GENERATOR
The DUART contains two independently programmable
Baud Generators. Each is capable of taking a common
clock input from DC to 24.0 MHz and dividing it by any divisor from 1 to 216 b 1. The highest input clock frequency
recommended with a divisor e 1 is 24 MHz. The output
frequency of the Baud Generator is 16 c the baud rate,
[divisor Ý e (frequency input) d (baud rate c 16)]. The
output of each Baud Generator drives the transmitter and
receiver sections of the associated serial channel. Two 8-bit
latches per channel store the divisor in a 16-bit binary format. These Divisor Latches must be loaded during initialization to ensure proper operation of the Baud Generator.
Upon loading either of the Divisor Latches, a 16-bit Baud
Counter is loaded.
Table IV provides decimal divisors to use with crystal frequencies of 1.8432 MHz, 3.072 MHz and 18.432 MHz. For
baud rates of 38400 and below, the error obtained is minimal. The accuracy of the desired baud rate is dependent on
the crystal frequency chosen. Using a divisor of zero is not
recommended.
Bit 3: This bit is the Framing Error (FE) indicator. Bit 3 indicates that the received character did not have a valid Stop
bit. The FE bit is set to a logic 1 when the serial channel
detects a logic 0 during the first Stop bit time. The FE indicator is reset whenever the CPU reads the contents of the
Line Status Register or when the next character is loaded
into the Receiver Buffer Register. In the FIFO Mode this
error is associated with the particular character in the FIFO
it applies to. This error is revealed to the CPU when its
associated character is at the top of the FIFO. The serial
channel will try to resynchronize after a framing error. To do
this it assumes that the framing error was due to the next
start bit, so it samples this ‘‘start’’ bit twice and then takes in
the ‘‘data’’.
8.4 LINE STATUS REGISTER
This register provides status information to the CPU concerning the data transfer. Table II shows the contents of the
Line Status Register. Details on each bit follow:
Bit 0: This bit is the receiver Data Ready (DR) indicator. Bit
0 is set to a logic 1 whenever a complete incoming character has been received and transferred into the Receiver
Buffer Register or the FIFO. Bit 0 is reset to a logic 0 by
reading all of the data in the Receiver Buffer Register or the
FIFO.
Bit 1: This bit is the Overrun Error (OE) indicator. Bit 1 indicates that the next character received was transferred into
the Receiver Buffer Register before the CPU could read the
previously received character. This transfer destroys the
16
8.0 Registers (Continued)
Bit 7: In the 16450 Mode this is a 0. In the FIFO Mode LSR7
is set when there is at least one parity error, framing error or
break indication in the FIFO. LSR7 is cleared when the CPU
reads the LSR, if there are no subsequent errors in the
FIFO.
Bit 4: This bit is the Break Interrupt (BI) indicator. Bit 4 is set
to a logic 1 whenever the received data input is held in the
Spacing (logic 0) state for longer than a full word transmission time (that is, the total time of Start bit a data bits a
Parity a Stop bits). The BI indicator is reset whenever the
CPU reads the contents of the Line Status Register or when
the next valid character is loaded into the Receiver Buffer
Register. In the FIFO Mode this condition is associated with
the particular character in the FIFO it applies to. It is revealed to the CPU when its associated character is at the
top of the FIFO. When break occurs only one zero character
is loaded into the FIFO. The next character transfer is enabled after SIN goes to the marking state and receives the
next valid start bit.
Note: The Line Status Register is intended for read operations only. Writing
to this register is not recommended as this operation is only used for
factory testing. In the FIFO mode the user must load a data byte into
the Rx FIFO in order to write to LSR2–4. LSR0 and LSR7 cannot be
written to in the FIFO mode.
8.5 FIFO CONTROL REGISTER
This is a write only register at the same location as the IIR
(the IIR is a read only register). This register is used to enable the FIFOs, clear the FIFOs, set the RCVR FIFO trigger
level, and select the type of DMA signalling.
Bit 0: Writing a 1 to FCR0 enables both the XMIT and RCVR
FIFOs. Resetting FCR0 will clear all bytes in both FIFOs.
When changing from FIFO Mode to 16450 Mode and vice
versa, data is automatically cleared from the FIFOs. This bit
must be a 1 when other FCR bits are written to or they will
not be programmed.
Bit 1: Writing a 1 to FCR1 clears all bytes in the RCVR FIFO
and resets its counter logic to 0. The shift register is not
cleared. The 1 that is written to this bit position is self-clearing.
Bit 2: Writing a 1 to FCR2 clears all bytes in the XMIT FIFO
and resets its counter logic to 0. The shift register is not
cleared. The 1 that is written to this bit position is self-clearing.
Bit 3: Writing a 1 to FCR3 causes RXRDY and TXRDY operations to change from mode 0 to mode 1 if FCR0 e 1.
RXRDY Mode 0: When in the 16450 Mode (FCR0 e 0) or
in the FIFO Mode (FCR0 e 1, FCR3 e 0) and there is at
least 1 character in the RCVR FIFO or RCVR Buffer Register, the RXRDY pin will go low active. Once active the
RXRDY pin will go inactive when there are no more characters in the FIFO or Buffer Register.
Note: Bits 1 through 4 are the error conditions that produce a Receiver Line
Status interrupt whenever any of the corresponding conditions are
detected and the interrupt is enabled.
Bit 5: This bit is the Transmitter Holding Register Empty
(THRE) indicator. In the 16450 mode bit 5 indicates that the
associated serial channel is ready to accept a new character for transmission. In addition, this bit causes the DUART
to issue an interrupt to the CPU when the Transmit Holding
Register Empty Interrupt enable is set high. The THRE bit is
set to a logic 1 when a character is transferred from the
Transmitter Holding Register into the Transmitter Shift Register. The bit is reset to logic 0 concurrently with the loading
of the Transmitter Holding Register by the CPU. In the FIFO
mode this bit is set when the XMIT FIFO is empty; it is
cleared when at least 1 byte is written to the XMIT FIFO.
Bit 6: This bit is the Transmitter Empty (TEMT) indicator. Bit
6 is set to a logic 1 whenever the Transmitter Holding Register (THR) and the Transmitter Shift Register (TSR) are both
empty. It is reset to a logic 0 whenever either the THR or
TSR contains a data character. In the FIFO mode this bit is
set to one whenever the transmitter FIFO and shift register
are both empty.
TABLE IV. Baud Rates, Divisors and Crystals
1.8432 MHz Crystal
Baud Rate
Decimal Divisor
for 16 c Clock
50
75
110
134.5
150
300
600
1200
1800
2000
2400
3600
4800
7200
9600
19200
38400
56000
128000
2304
1536
1047
857
768
384
192
96
64
58
48
32
24
16
12
6
3
2
Ð
3.072 MHz Crystal
Percent Error
Decimal Divisor
for 16 c Clock
Ð
Ð
0.026
0.058
Ð
Ð
Ð
Ð
Ð
0.69
Ð
Ð
Ð
Ð
Ð
Ð
Ð
2.86
Ð
3840
2560
1745
1428
1280
640
320
160
107
96
80
53
40
27
20
10
5
Ð
Ð
Percent Error
Percent Error
Ð
Ð
0.026
0.034
Ð
Ð
Ð
Ð
0.312
Ð
Ð
0.628
Ð
1.23
Ð
Ð
Ð
Ð
Ð
23040
15360
10473
8565
7680
3840
1920
920
640
576
480
320
240
160
120
60
30
21
9
Ð
Ð
Ð
Ð
Ð
Ð
Ð
Ð
Ð
Ð
Ð
Ð
Ð
Ð
Ð
Ð
Ð
2.04
Ð
Note: For baud rates of 250k, 300k, 375k, 500k, 750k and 1.5M using a 24 MHz crystal causes minimal error.
17
18.432 MHz Crystal
Decimal Divisor
for 16 c Clock
8.0 Registers (Continued)
RXRDY Mode 1: In the FIFO Mode (FCR0 e 1) when the
FCR3 e 1 and the trigger level or the timeout has been
reached, the RXRDY pin will go low active. Once it is activated it will go inactive when there are no more characters
in the FIFO.
TXRDY Mode 0: In the 16450 Mode (FCR0 e 0) or in the
FIFO Mode (FCR0 e 1, FCR3 e 0) when there are no
characters in the XMIT FIFO or XMIT Holding Register, the
TXRDY pin will go low active. Once active the TXRDY pin
will go inactive after the first character is loaded into the
XMIT FIFO or Holding Register.
TXRDY Mode 1: In the FIFO Mode (FCR0 e 1, FCR3 e 1)
and when there are no characters in the XMIT FIFO, the
TXRDY pin will go low active. This pin will become inactive
when the XMIT FIFO is completely full.
Bit 4, 5: FCR4 to FCR5 are reserved for future use.
Bit 6, 7: FCR6 and FCR7 are used to designate the interrupt
trigger level. When the number of bytes in the RCVR FIFO
equals the designated interrupt trigger level, a Received
Data Available Interrupt is activated. This interrupt must be
enabled by setting IER0.
FCR Bits
7 6
0
0
1
1
8.6 INTERRUPT IDENTIFICATION REGISTER
In order to provide minimum software overhead during data
character transfers, each serial channel of the DUART prioritizes interrupts into four levels and records these in the
Interrupt Identification Register. The four levels of interrupt
conditions in order of priority are Receiver Line Status; Received Data Ready; Transmitter Holding Register Empty;
and MODEM Status.
When the CPU reads the IIR, the associated DUART serial
channel freezes all interrupts and indicates the highest priority pending interrupt to the CPU. While this CPU access is
occurring, the associated DUART serial channel records
new interrupts, but does not change its current indication
until the access is complete. Table II shows the contents of
the IIR. Details on each bit follow:
Bit 0: This bit can be used in a prioritized interrupt environment to indicate whether an interrupt is pending. When bit 0
is a logic 0, an interrupt is pending and the IIR contents may
be used as a pointer to the appropriate interrupt service
routine. When bit 0 is a logic 1, no interrupt is pending.
Bits 1 and 2: These two bits of the IIR identify the highest
priority interrupt pending from those shown in Table V.
Bit 3: In the 16450 Mode this bit is 0. In the FIFO Mode this
bit is set along with bit 2 when a timeout interrupt is pending.
Bits 4 and 5: These two bits of the IIR are always logic 0.
Bits 6 and 7: These two bits are set when FCR0 e 1.
(FIFO Mode enabled.)
RCVR FIFO
Trigger Level (Bytes)
0
1
0
1
01
04
08
14
TABLE V. Interrupt Control Functions
FIFO
Mode
Only
Interrupt
Identification
Register
Bit 3 Bit 2 Bit 1 Bit 0
Interrupt Set and Reset Functions
Priority
Level
Ð
Interrupt Type
None
Interrupt Source
None
Interrupt Reset Control
0
0
0
1
0
1
1
0
Highest Receiver Line Status
0
1
0
0
Second Received Data Available Receiver Data Available or Trigger
Level Reached
Reading the Receiver Buffer
Register or the FIFO Drops
below the Trigger Level
1
1
0
0
Second Character Timeout
Indication
No Characters Have Been
Removed from or Input to the
RCVR FIFO During the Last 4 Char.
Times and There is at Least 1 Char.
in it During This Time
Reading the Receiver
Buffer Register
0
0
1
0
Third
Transmitter Holding
Register Empty
Transmitter Holding
Register Empty
Reading the IIR Register (if
Source of Interrupt) or Writing
into the Transmitter Holding
Register
0
0
0
0
Fourth
MODEM Status
Clear to Send or Data Set Ready or
Ring Indicator or Data Carrier
Detect
Reading the MODEM
Status Register
Overrun Error or Parity Error or
Framing Error or Break Interrupt
18
Ð
Reading the Line Status
Register
8.0 Registers (Continued)
In this diagnostic mode, the receiver and transmitter interrupts are fully operational. Their sources are external to the
part. The MODEM Control Interrupts are also operational,
but the interrupts’ sources are now the lower four bits of the
MODEM Control Register instead of the four MODEM Control inputs. The interrupts are still controlled by the Interrupt
Enable Register.
Bits 5 through 7: These bits are permanently set to logic 0.
8.7 INTERRUPT ENABLE REGISTER
This register enables five types of interrupts for the associated serial channel. Each interrupt can individually activate
the interrupt (INTR) output signal. It is possible to totally
disable the interrupt system by resetting bits 0 through 3 of
the Interrupt Enable Register (IER). Similarly, setting bits of
the IER register to a logic 1, enables the selected interrupt(s). Disabling an interrupt prevents it from being indicated as active in the IIR and from activating the INTR output
signal. All other system functions operate in their normal
manner, including the setting of the Line Status and
MODEM Status Registers. Table II shows the contents of
the IER. Details on each bit follow:
Bit 0: When set to logic 1 this bit enables the Received Data
Available Interrupt and Timeout Interrupt in the FIFO Mode.
Bit 1: When set to logic 1 this bit enables the Transmitter
Holding Register Empty Interrupt.
Bit 2: When set to logic 1 this bit enables the Receiver Line
Status Interrupt.
Bit 3: When set to logic 1 this bit enables the MODEM
Status Interrupt.
Bits 4 through 7: These four bits are always logic 0.
8.9 MODEM STATUS REGISTER
This register provides the current state of the control lines
from the MODEM (or peripheral device) to the CPU. In addition to this current-state information, four bits of the
MODEM Status Register provide change information. The
latter bits are set to a logic 1 whenever a control input from
the MODEM changes state. They are reset to logic 0 whenever the CPU reads the MODEM Status Register.
The contents of the MODEM Status Register are indicated
in Table II and described below.
Bit 0: This bit is the Delta Clear to Send (DCTS) indicator.
Bit 0 indicates that the CTS input to the chip has changed
state since the last time it was read by the CPU.
Bit 1: This bit is the Delta Data Set Ready (DDSR) indicator.
Bit 1 indicates that the DSR input to the chip has changed
state since the last time it was read by the CPU.
Bit 2: This bit is the Trailing Edge of Ring Indicator (TERI)
detector. Bit 2 indicates that the RI input to the chip has
changed from a low to a high state.
Bit 3: This bit is the Delta Data Carrier Detect (DDCD) indicator. Bit 3 indicates that the DCD input to the chip has
changed state.
8.8 MODEM CONTROL REGISTER
This register controls the interface with the MODEM or data
set (or a peripheral device emulating a MODEM). The contents of the MODEM Control Register are indicated in Table
II and are described below:
Bit 0: This bit controls the Data Terminal Ready (DTR) output. When bit 0 is set to a logic 1, the DTR output is forced
to a logic 0. When bit 0 is reset to a logic 0, the DTR output
is forced to a logic 1.
Bit 1: This bit controls the Request to Send (RTS) output.
Bit 1 affects the RTS output in a manner identical to that
described above for bit 0.
Bit 2: This bit is the OUT 1 bit. It does not have an output
pin associated with it. It can be written to and read by the
CPU. In Local Loopback Mode this bit controls bit 2 of the
Modem Status Register.
Bit 3: This bit controls the Output 2 (OUT 2) signal, which is
an auxiliary user-designated output. Bit 3 affects the OUT 2
pin in a manner identical to that described above for bit 0.
The function of this bit is multiplexed on a single output pin
with two other functions: BAUDOUT and RXRDY. The
OUT 2 function is the default function of the pin after a
master reset. See Section 8.10 for more information about
selecting one of these 3 pin functions.
Bit 4: This bit provides a local loopback feature for diagnostic testing of the associated serial channel. When bit 4 is set
to logic 1, the following occur: the transmitter Serial Output
(SOUT) is set to the Marking (logic 1) state; the receiver
Serial Input (SIN) is disconnected; the output of the Transmitter Shift Register is ‘‘looped back’’ into the Receiver Shift
Register input; the four MODEM Control inputs (DSR, CTS,
RI, and DCD) are disconnected; the four MODEM Control
outputs (DTR, RTS, OUT 1, and OUT 2) are internally connected to the four MODEM Control inputs; and the MODEM
Control output pins are forced to their inactive state (high).
In this diagnostic mode, data that is transmitted is immediately received. This feature allows the processor to verify
transmit and receive data paths of the DUART.
Note: Whenever bit 0, 1, 2, or 3 is set to logic 1, a MODEM Status Interrupt
is generated.
Bit 4: This bit is the complement of the Clear to Send (CTS)
input. If bit 4 (loop) of the MCR is set to a 1, this bit is
equivalent to RTS in the MCR.
Bit 5: This bit is the complement of the Data Set Ready
(DSR) input. If bit 4 of the MCR is set to a 1, this bit is
equivalent to DTR in the MCR.
Bit 6: This bit is the complement of the Ring Indicator (RI)
input. If bit 4 of the MCR is set to a 1, this bit is equivalent to
OUT 1 in the MCR.
Bit 7: This bit is the complement of the Data Carrier Detect
(DCD) input. If bit 4 of the MCR is set to a 1, this bit is
equivalent to OUT 2 in the MCR.
8.10 ALTERNATE FUNCTION REGISTER
This is a read/write register used to select specific modes of
operation. It is located at address 010 when the DLAB bit is
set.
Bit 0: When this bit is set the CPU can write concurrently to
the same register in both register sets. This function is intended to reduce the DUART initialization time. It can be
used by a CPU when both channels are initialized to the
same state. The CPU can set or clear this bit by accessing
either register set. When this bit is set the channel select pin
still selects the channel to be accessed during read operations. Setting or clearing this bit has no effect on read operations.
The user should ensure that the DLAB bit (LCR7) of both
channels are in the same state before executing a concurrent write to register addresses 0, 1 and 2.
19
The maximum time between a received character and a
timeout interrupt will be 160 ms at 300 baud with a 12-bit
receive character (i.e. 1 START, 8 DATA, 1 PARITY and
2 STOP BITS).
8.0 Registers (Continued)
Bits 1 and 2: These select the output signal that will be
present on the multi-function pin, MF. These bits are individually programmable for each channel, so that different signals can be selected on each channel. Table VI associates
the signal present at the multi-function pin with the bit code.
B. Character times are calculated by using the BAUDOUT
signal as a clock signal (this makes the delay proportional to the baud rate).
C. When a timeout interrupt has occurred it is cleared and
the timer reset when the CPU reads one character from
the RCVR FIFO.
D. When the timeout interrupt indication is inactive the timeout indication timer is reset after a new character is received or after the CPU reads the RCVR FIFO.
When the XMIT FIFO interrupts are enabled (FCR0 e 1,
IER1 e 1), XMIT interrupts will occur as follows:
A. The Transmitter Holding Register Empty Interrupt occurs
when the XMIT FIFO is empty. It is cleared as soon as
the Transmitter Holding Register is written to (1 to 16
characters may be written to the XMIT FIFO while servicing this interrupt) or the IIR is read.
B. The transmitter FIFO empty indications will be delayed 1
character time minus the last Stop bit time whenever the
following occurs: THRE e 1 and there have not been at
least two bytes at the same time in the transmit FIFO,
since the last THRE e 1. The first Transmitter Holding
Register Empty Interrupt after changing FCR0 will be immediate, if it is enabled.
This delay prevents the DUART from issuing a second
Transmitter Holding Register Empty Interrupt as soon as it
transfers the first character into the Transmitter Shift Register.
Character timeout and RCVR FIFO trigger level interrupts
have the same priority as the current received data available interrupt; XMIT FIFO Empty has the same priority as
the current Transmitter Holding Register Empty Interrupt.
TABLE VI
AFR Bit Code
Bit 2 Bit 1
0
0
1
1
0
1
0
1
(Note 1)
Multi-Function Pin Signal
OUT 2
BAUDOUT
RXRDY
Reserved
(Note 2)
Note 1: This is the state after power-up or master reset.
Note 2: Output is forced high.
Bits 3 through 7: These bits are permanently set to a logic
0.
8.11 SCRATCHPAD REGISTER
This 8-bit Read/Write Register does not control the serial
channel in any way. It is intended as a Scratchpad Register
to be used by the programmer to hold data temporarily.
9.0 FIFO Mode Operation
Each serial channel has two 16-byte FIFOs associated with
it. The operational description that follows is applicable to
the FIFOs of both channels.
9.1 FIFO INTERRUPT OPERATION
When the RCVR FIFO and receiver interrupt are enabled
(FCR0 e 1, IER0 e 1) Receive Data Available Interrupts
will occur as follows:
A. The Receive Data Available Interrupt will be issued to the
CPU when the number of bytes in the RCVR FIFO equals
the programmed trigger level; it will be cleared as soon
as the number of bytes in the RCVR FIFO drops below its
programmed trigger level.
B. The IIR Receive Data Available Indication also occurs
when the FIFO trigger level is reached, and like the interrupt it is cleared when the FIFO drops below the trigger
level.
C. The Receiver Line Status Interrupt (IIR e 06), as before,
has higher priority than the Received Data Available
(IIR e 04) Interrupt.
D. The data ready bit (LSR0) is set as soon as a character is
transferred from the shift register to the RCVR FIFO. It is
reset when the RCVR FIFO is empty.
When RCVR FIFO and receiver interrupts are enabled,
RCVR FIFO timeout interrupts will occur as follows:
A. A RCVR FIFO Timeout Interrupt will occur, if the following
conditions exist:
Ð at least one character is in the RCVR FIFO
Ð the most recent serial character received was longer
than 4 continuous character times ago (if 2 stop bits
are programmed the second one is included in this
time delay).
Ð the most recent CPU read of the RCVR FIFO was
longer than 4 continuous character times ago.
9.2 FIFO POLLED OPERATION
With FCR0 e 1 resetting IER0, IER1, IER2, IER3 or all to
zero puts the associated serial channel in the FIFO Polled
Mode of operation. Since the receiver and transmitter are
controlled separately either one or both can be in the polled
mode of operation.
In this mode the user’s program will check receiver and
transmitter status via the LSR. As stated in Section 8.4:
LSR0 will be set as long as there is one byte in the RCVR
FIFO.
LSR1 to LSR4 will specify which error(s) has occurred.
Character error status is handled the same way as in the
interrupt mode.
LSR5 will indicate when the XMIT FIFO is empty.
LSR6 will indicate that both the XMIT FIFO and shift register are empty.
LSR7 will indicate whether there are any errors in the
RCVR FIFO.
There is no trigger level reached or timeout condition indicated in the FIFO Polled Mode, however, the RCVR and
XMIT FIFOs are otherwise functional.
20
21
PC16552D Dual Universal Asynchronous Receiver/Transmitter with FIFOs
Physical Dimensions inches (millimeters)
44-Lead Plastic Chip Carrier (V)
Order Number PC16552DV
NS Package Number V44A
LIFE SUPPORT POLICY
NATIONAL’S PRODUCTS ARE NOT AUTHORIZED FOR USE AS CRITICAL COMPONENTS IN LIFE SUPPORT
DEVICES OR SYSTEMS WITHOUT THE EXPRESS WRITTEN APPROVAL OF THE PRESIDENT OF NATIONAL
SEMICONDUCTOR CORPORATION. As used herein:
1. Life support devices or systems are devices or
systems which, (a) are intended for surgical implant
into the body, or (b) support or sustain life, and whose
failure to perform, when properly used in accordance
with instructions for use provided in the labeling, can
be reasonably expected to result in a significant injury
to the user.
National Semiconductor
Corporation
2900 Semiconductor Drive
P.O. Box 58090
Santa Clara, CA 95052-8090
Tel: 1(800) 272-9959
TWX: (910) 339-9240
National Semiconductor
GmbH
Livry-Gargan-Str. 10
D-82256 F4urstenfeldbruck
Germany
Tel: (81-41) 35-0
Telex: 527649
Fax: (81-41) 35-1
National Semiconductor
Japan Ltd.
Sumitomo Chemical
Engineering Center
Bldg. 7F
1-7-1, Nakase, Mihama-Ku
Chiba-City,
Ciba Prefecture 261
Tel: (043) 299-2300
Fax: (043) 299-2500
2. A critical component is any component of a life
support device or system whose failure to perform can
be reasonably expected to cause the failure of the life
support device or system, or to affect its safety or
effectiveness.
National Semiconductor
Hong Kong Ltd.
13th Floor, Straight Block,
Ocean Centre, 5 Canton Rd.
Tsimshatsui, Kowloon
Hong Kong
Tel: (852) 2737-1600
Fax: (852) 2736-9960
National Semiconductores
Do Brazil Ltda.
Rue Deputado Lacorda Franco
120-3A
Sao Paulo-SP
Brazil 05418-000
Tel: (55-11) 212-5066
Telex: 391-1131931 NSBR BR
Fax: (55-11) 212-1181
National Semiconductor
(Australia) Pty, Ltd.
Building 16
Business Park Drive
Monash Business Park
Nottinghill, Melbourne
Victoria 3168 Australia
Tel: (3) 558-9999
Fax: (3) 558-9998
National does not assume any responsibility for use of any circuitry described, no circuit patent licenses are implied and National reserves the right at any time without notice to change said circuitry and specifications.
IMPORTANT NOTICE
Texas Instruments Incorporated and its subsidiaries (TI) reserve the right to make corrections, modifications, enhancements, improvements,
and other changes to its products and services at any time and to discontinue any product or service without notice. Customers should
obtain the latest relevant information before placing orders and should verify that such information is current and complete. All products are
sold subject to TI’s terms and conditions of sale supplied at the time of order acknowledgment.
TI warrants performance of its hardware products to the specifications applicable at the time of sale in accordance with TI’s standard
warranty. Testing and other quality control techniques are used to the extent TI deems necessary to support this warranty. Except where
mandated by government requirements, testing of all parameters of each product is not necessarily performed.
TI assumes no liability for applications assistance or customer product design. Customers are responsible for their products and
applications using TI components. To minimize the risks associated with customer products and applications, customers should provide
adequate design and operating safeguards.
TI does not warrant or represent that any license, either express or implied, is granted under any TI patent right, copyright, mask work right,
or other TI intellectual property right relating to any combination, machine, or process in which TI products or services are used. Information
published by TI regarding third-party products or services does not constitute a license from TI to use such products or services or a
warranty or endorsement thereof. Use of such information may require a license from a third party under the patents or other intellectual
property of the third party, or a license from TI under the patents or other intellectual property of TI.
Reproduction of TI information in TI data books or data sheets is permissible only if reproduction is without alteration and is accompanied
by all associated warranties, conditions, limitations, and notices. Reproduction of this information with alteration is an unfair and deceptive
business practice. TI is not responsible or liable for such altered documentation. Information of third parties may be subject to additional
restrictions.
Resale of TI products or services with statements different from or beyond the parameters stated by TI for that product or service voids all
express and any implied warranties for the associated TI product or service and is an unfair and deceptive business practice. TI is not
responsible or liable for any such statements.
TI products are not authorized for use in safety-critical applications (such as life support) where a failure of the TI product would reasonably
be expected to cause severe personal injury or death, unless officers of the parties have executed an agreement specifically governing
such use. Buyers represent that they have all necessary expertise in the safety and regulatory ramifications of their applications, and
acknowledge and agree that they are solely responsible for all legal, regulatory and safety-related requirements concerning their products
and any use of TI products in such safety-critical applications, notwithstanding any applications-related information or support that may be
provided by TI. Further, Buyers must fully indemnify TI and its representatives against any damages arising out of the use of TI products in
such safety-critical applications.
TI products are neither designed nor intended for use in military/aerospace applications or environments unless the TI products are
specifically designated by TI as military-grade or "enhanced plastic." Only products designated by TI as military-grade meet military
specifications. Buyers acknowledge and agree that any such use of TI products which TI has not designated as military-grade is solely at
the Buyer's risk, and that they are solely responsible for compliance with all legal and regulatory requirements in connection with such use.
TI products are neither designed nor intended for use in automotive applications or environments unless the specific TI products are
designated by TI as compliant with ISO/TS 16949 requirements. Buyers acknowledge and agree that, if they use any non-designated
products in automotive applications, TI will not be responsible for any failure to meet such requirements.
Following are URLs where you can obtain information on other Texas Instruments products and application solutions:
Products
Applications
Audio
www.ti.com/audio
Communications and Telecom www.ti.com/communications
Amplifiers
amplifier.ti.com
Computers and Peripherals
www.ti.com/computers
Data Converters
dataconverter.ti.com
Consumer Electronics
www.ti.com/consumer-apps
DLP® Products
www.dlp.com
Energy and Lighting
www.ti.com/energy
DSP
dsp.ti.com
Industrial
www.ti.com/industrial
Clocks and Timers
www.ti.com/clocks
Medical
www.ti.com/medical
Interface
interface.ti.com
Security
www.ti.com/security
Logic
logic.ti.com
Space, Avionics and Defense
www.ti.com/space-avionics-defense
Power Mgmt
power.ti.com
Transportation and Automotive www.ti.com/automotive
Microcontrollers
microcontroller.ti.com
Video and Imaging
RFID
www.ti-rfid.com
OMAP Mobile Processors
www.ti.com/omap
Wireless Connectivity
www.ti.com/wirelessconnectivity
TI E2E Community Home Page
www.ti.com/video
e2e.ti.com
Mailing Address: Texas Instruments, Post Office Box 655303, Dallas, Texas 75265
Copyright © 2011, Texas Instruments Incorporated