[sci.electronics] UARTS for speed...

cyamamot@kilroy.jpl.nasa.gov (Cliff Yamamoto) (11/21/90)

Greetings!

I've been running my serial line at 38.4Kbaud on my 386 clone for a few
weeks now without any problems (not running Windows or Deskview).  However,
I've heard that one can change the UART to offload some work on the CPU.

Can anyone tell me if the 8250, the 16450 and the 16550A are pin-for-pin
interchangable?  I'm not sure if I have the 8250 or the 16450, but I'd like
to eventually plug in a 16550A.  Also do all three share the same port and
programming characteristics?  Are 16550A readily available?

Thanks,
Cliff Yamamoto
-------------------------------------------------------------------------------
USnail: Clifford K. Yamamoto - KA6JRG  | Email:  cyamamot@kilroy.jpl.nasa.gov
        Jet Propelled La-bore-atore-ee |         cyamamot@grissom.jpl.nasa.gov
        4800 Oak Grove Drive           |         cky@hydra.jpl.nasa.gov
        M/S 238-737, Section 333       |         cyamamot@devvax.jpl.nasa.gov
        Pasadena, Calif.  91109        |         cyamamot@jato.jpl.nasa.gov
---------------------------------------+---------------------------------------
MaBell: (818) 354-1242 - off.   (818) 354-6042 - alt.   (818) 354-6426 - lab.

jjj@blob.hut.fi (Joni Jaakko J{rvenkyl{) (11/22/90)

In article <1990Nov21.145421.23315@elroy.jpl.nasa.gov> cyamamot@kilroy.jpl.nasa.gov (Cliff Yamamoto) writes:
>I've been running my serial line at 38.4Kbaud on my 386 clone for a few

>Can anyone tell me if the 8250, the 16450 and the 16550A are pin-for-pin
>interchangable?  I'm not sure if I have the 8250 or the 16450, but I'd like
>to eventually plug in a 16550A.  Also do all three share the same port and
>programming characteristics?  Are 16550A readily available?

Yes they are interchangeable.

You do NOT want a 16550AN to a 386 clone when running at 38.4, but you DO
want a 16550AFN. THat F stands there for Fast.

Ok, that is high-end a??hole talk, but anyway, there is a difference between
AN and AFN. And when you can get 16550AFN for about 15$ there's no reason
for not buying it.

--
jjj@niksula.hut.fi
jjj@otax.tky.hut.fi

fire me, fire					until you die

grege@gold.gvg.tek.com (Greg Ebert) (11/22/90)

 cyamamot@kilroy.jpl.nasa.gov (Cliff Yamamoto) writes:
> [...]
>Can anyone tell me if the 8250, the 16450 and the 16550A are pin-for-pin
>interchangable?  I'm not sure if I have the 8250 or the 16450, but I'd like
>to eventually plug in a 16550A.  Also do all three share the same port and
>programming characteristics?  Are 16550A readily available?
>

The 8250 and 16450 are pin interchangeable, and the 16450 is an 'enhanced'
version of the 8250. I dunno what the enhancements are.

The 16550 is *NOT* pin compatible (but quite close). It is upward-compatible
from a software viewpoint from the 16450; you have to enable the FIFO mode.
If you want to install a 16550, you need to rework pins 24 (CSOUT on 16450,
TXRDY on 16550) and 29 (NC on 16450, RXRDY on 16550). These pins show FIFO
status.

You can get all 3 from Jameco.

A comment on the 16550: It's a *NEAT* chip. The FIFOs really cut down on
interrupt overhead, especially at high data rates.


----- Boycott redwood products ---------------------------- Recycle -----
                                                                 #####
{uunet!tektronix!gold!grege}     Register to vote, then        ##  |  ##
grege@gold.gvg.tek.com           vote responsibly             #    |    #
							      #   /|\   #
Support high oil prices, waste tax $$ on war, evade domestic   #/  |  \#
problems, and die young on foreign soil- Just say YES to Bush   #######

barry@dgbt.doc.ca (Barry McLarnon DGBT/DIP) (11/27/90)

From article <1990Nov21.145421.23315@elroy.jpl.nasa.gov>, by cyamamot@kilroy.jpl.nasa.gov (Cliff Yamamoto):
> Greetings!
> 
> I've been running my serial line at 38.4Kbaud on my 386 clone for a few
> weeks now without any problems (not running Windows or Deskview).  However,
> I've heard that one can change the UART to offload some work on the CPU.
> 
> Can anyone tell me if the 8250, the 16450 and the 16550A are pin-for-pin
> interchangable?  I'm not sure if I have the 8250 or the 16450, but I'd like
> to eventually plug in a 16550A.  Also do all three share the same port and
> programming characteristics?  Are 16550A readily available?
> 

16550A's are somewhat hard to come by at the moment, but TI has recently
announced the TL16C550A, so that should help improve the supply.  The
following is a summary I put together some months ago, that seems relevant
to this discussion:


                   INS8250 UART Family Comparison


NMOS Parts:

INS8250
INS8250-B

The INS8250 is the original version of the series.  The "B" version is
identical except for slower CPU bus timings (but fast enough for 4.77 MHz
8088 systems).  There is a long list of gotchas and software workarounds for
these chips.



"XMOS" Parts:

INS8250A

This is the improved version of the 8250.  It features improved bus timing
constraints, and design changes have eliminated nearly all of the gotchas
associated with the NMOS parts.  A major difference from the older parts is
that interrupts are now level-sensitive rather than edge-triggered.
Unfortunately, this means that interrupt-driven drivers written for the older
parts will probably break if you replace one with a newer "A" part.  The
symptom is that when multiple interrupts are pending, only the first one gets
serviced.  The necessary fix can be done in either software or hardware.


NS16450

This is essentially a higher-speed 8250A, developed for use in IBM AT-class
systems.  All of the comments in the preceding section apply.  There is a
potential problem in both this chip and the 8250A which can occur in full
duplex operation, involving loss of the THRE interrupt indication.  Several
workarounds are available to avoid this situation.


NS16550
NS16550A

The 16550 powers up in a mode completely compatible with the 16450.  It has a
number of enhancements over the 16450, including faster bus timings, on-board
FIFOs, DMA interface, and higher maximum baud rates.  However, the original
NS16550 was brain-damaged, preventing use of the FIFOs.  It should be avoided
in favor of the fully-functional NS16550A part.  It is possible for software
to distinguish between the two parts.



CMOS Parts:

INS82C50A
NS16C450

These are CMOS versions of the 8250A and 16450, and have no significant
compatibility problems with the latter.  They draw about 1/10 of the maximum
operating current of the XMOS parts.



Reference:  National Semiconductor Application Note 493, "A Comparison of the
            INS8250, NS16450 and NS16550A Series of UARTS"  (included in the
            "Microcommunication Elements" Databook).

[Note: there are now several sources of CMOS 16550A parts, including TI,
as mentioned above, and VLSI Technology]

Barry

-- 
| Barry McLarnon     Communications Research Center, Ottawa, ON, Canada |
| Internet: barry@dgbt.doc.ca           				|
| Packet BBS: VE3JF@VE3JF        AMPRnet: barry@bbs.ve3jf [44.135.96.6] |