PC Hardware

Serial/Parallel Conversion

Virtually all personal computers use a family of chips produced by National Semiconductor to run serial ports. Known as UARTs (universal asynchronous receiver-transmitters), these chips convert an 8-bit wide parallel data path to a 1-bit wide serial path.

The UART has gone through several major changes during the PC era, and there are many different types of UARTs with different functions. The following table lists several of the more common ones.

Chip Description
INS8250 The original chip used in the IBM PC, the INS8250 operated at speeds up to 56 kilobits per second (Kbps). The 8250A and 8250B incorporated fixes for minor bugs in the original design, but the 8250 series was unreliable at speeds over 9600 bps.
16450 Designed for 286-based PCs, the 16450 is the first UART that reliably operated at 9600 bps and above.
16550 The 16550 allowed use of more than one DMA channel to achieve improved throughput over the 16450.
16550A An improved version of the 16550, the 16550A is the only UART installed on today's computers. It adds support for First in-First Out (FIFO) communication. This is the only UART that should be installed in current PCs or add-on cards that are used to provide expansion card-based COM ports.

Determining which UART chip is installed in a computer can be easily accomplished by using the MSD (Microsoft Diagnostics) utility that comes with MS-DOS, Windows 3.x, and Windows 95 and Windows 98 (Windows Device Manager). Select COM Ports from the MSD main menu. (See Figure 12.6.)

Click to view at full size.

Figure 12.6 MSD utility-COM ports

Digital Communication

The movement of data from one computer to another over telephone lines is a multistep process. The first step is to convert the data from parallel to serial form. Then the digital information must be broken into uniquely marked packets (this allows the receiving computer to distinguish one byte from another).

Asynchronous Communication

Asynchronous communication is any data transmission that does not link the two devices with a common data clock. This is useful because the length of time between sending a packet and its receipt on the other end can vary between the communicating devices. A signal called a start bit is sent at the beginning of each segment, and a signal called a stop bit is sent at the end. These let the receiving device note the boundaries (beginning and end) of a transmission packet. Early PC modems were almost always asynchronous devices operating at speeds of no more than 18,000 bits per second.