lotus



previous page: 3.17  My floppy drive doesn't work and the light remains on, why?
  
page up: PC Hardware FAQ
  
next page: 3.19  Are there any >4 channel serial port cards?

3.18 What is a 16550 and do I need one?




Description

This item is from the PC Hardware FAQ, by Willie Lim and Ralph Valentino with numerous contributions by others. (v1.25).

3.18 What is a 16550 and do I need one?

The 16550 is a UART with two 16 byte FIFOs. A UART is the part of a serial port that takes byte-wide (characters) data and converts it to bit-wide (serial) data, and visa versa. The FIFO is a buffer which can hold characters until the CPU is ready to remove it or until the serial line is ready to transmit it. The 'normal' UART in the PC (the 8250 or 16450) only has 1-byte FIFOs. The additional 15 bytes can be useful when the CPU is busy doing other things - if the CPU isn't able to remove data fast enough, it will be lost. The OS or program has to explicitly support 16550 to make full use of its advantages.

A very important thing to note is that under DOS, the CPU doesn't have anything else to do, so the 16550 is wasted. Only under multitasking operating systems does it really become useful. The 16550 will *not* make your file transfers any faster, it will only prevent data from being lost and relieve your CPU of some overhead. If you notice system performance dropping like a rock when file transfers are occurring, a 16550 may be helpful. If you see re-transmissions (bad packets) or "FIFO overrun's" during file transfers under a multitasking OS, try the same thing under DOS - if the errors go away, then chances are a 16550 will be useful. If they remain, then your problem is likely to be elsewhere.

 

Continue to:













TOP
previous page: 3.17  My floppy drive doesn't work and the light remains on, why?
  
page up: PC Hardware FAQ
  
next page: 3.19  Are there any >4 channel serial port cards?