pctechguide.com

  • Home
  • Guides
  • Tutorials
  • Articles
  • Reviews
  • Glossary
  • Contact

Serial Ports

National Semiconductor has made the UART chips which have driven the PC’s serial port ever since the emergence of IBM’s first PC.

The original PC serial interface used the INS8250-B UART chip. This could receive and transmit data at speeds of up to 56 Kbit/s and, in the days of 4.77MHz bus speeds and serial printers, was perfectly adequate. When the IBM-AT came along a new UART was required because of the increase in bus speed and the fact that the bus was now 16 bits wide. This new UART was known as the INS 16450 and its CPU read and write cycles were over five times faster than its 8-bit predecessor.

In an AT ISA-bus machine, all serial data transfers are handled by the CPU and each byte must pass through the CPU registers to get to memory or disk. This means that access times must be fast enough to avoid read overrun errors and transmission latency at higher bit rates. In fact when the IBM PC-AT came out, the performance of the INS16450 was adequate because the speed at which data was routinely transmitted through the serial port was significantly less than is possible with modern modems.

Serial

To understand the limitations of the INS 16450, it is necessary to recognise how the serial port interrupts the CPU which has to finish its current task, or service a higher-priority interrupt, before servicing the UART. This delay is the bus latency time associated with servicing the UART interrupt request. If the CPU cannot service the UART before the next data byte is received (by the UART from the serial port), data will be lost, with consequent retransmissions and an inevitable impact on throughput.

This condition is known as overrun error. At low bit rates the AT system is fast enough to read each byte from the UART receiver before the next byte is received. The higher the bit rate at the serial port, the higher the strain on the system to transfer each byte from the UART before the next is received. Higher bit rates cause the CPU to spend increasing amounts of time servicing the UART, thus making the whole system run inefficiently.

To attack this problem, National Semiconductor developed the NS16550A UART. The 16550 overcomes the previous problems by including First In First Out (FIFO) buffers on the receiver and transmitter, which dramatically improve performance on modem transfer speeds of 9.6 Kbit/s or higher.

The size of the receiver FIFO ensures that as many as 16 bytes are ready to transfer when the CPU services the UART receiver interrupt. The receiver can request transfer at FIFO thresholds of one, four, eight, 16 bytes full. This allows software to modify the FIFO threshold according to its current task and ensures that the CPU doesn’t continually waste time switching context for only a couple of bytes of data received.

The transmitter FIFO ensures that as many as 16 bytes can be transferred when the CPU services the UART transmit interrupt. This reduces the time lost by the CPU in context switching. However, since a time lag in servicing an transmitter usually has no penalty, CPU latency is of no concern when transmitting, although ultimate throughput may suffer.

Filed Under: Serial Communications

Latest Articles

Adding Animation and Multimedia to Your PowerPoint Files

Many people are not aware of all of the features that are available with PowerPoint. There is a rich array of media features that you can use to create awesome presentations. Adding Audio and Animation Files to PowerPoint Presentations A PowerPoint slide show will be more successful if you add … [Read More...]

Intel Mobile Pentium III and Tualatin Pentium III-M Guide

The October 1999 announcement of a range of 0.18-micron Pentium III processors included the launch of the first mobile Pentium IIIs. The new processors - available at speeds of 400MHz, 450MHz and 500MHz and featuring a 100MHz system bus - … [Read More...]

Routers

Routing achieved commercial popularity in the mid-1980s - at a time when large-scale internetworking began to replace the fairly simple, homogeneous environments that had been the norm hitherto. Routing is the act of moving information across an … [Read More...]

Gaming Laptop Security Guide: Protecting Your High-End Hardware Investment in 2025

Since Jacob took over PC Tech Guide, we’ve looked at how tech intersects with personal well-being and digital safety. Gaming laptops are now … [Read More...]

20 Cool Creative Commons Photographs About the Future of AI

AI technology is starting to have a huge impact on our lives. The market value for AI is estimated to have been worth $279.22 billion in 2024 and it … [Read More...]

13 Impressive Stats on the Future of AI

AI technology is starting to become much more important in our everyday lives. Many businesses are using it as well. While he has created a lot of … [Read More...]

Graphic Designers on Reddit Share their Views of AI

There are clearly a lot of positive things about AI. However, it is not a good thing for everyone. One of the things that many people are worried … [Read More...]

Redditors Talk About the Impact of AI on Freelance Writers

AI technology has had a huge impact on our lives. A 2023 survey by Pew Research found that 56% of people use AI at least once a day or once a week. … [Read More...]

11 Most Popular Books on Perl Programming

Perl is not the most popular programming language. It has only one million users, compared to 12 million that use Python. However, it has a lot of … [Read More...]

Guides

  • Computer Communications
  • Mobile Computing
  • PC Components
  • PC Data Storage
  • PC Input-Output
  • PC Multimedia
  • Processors (CPUs)

Recent Posts

Pentium Northwood

For several months after the Pentium 4 began shipping in late 2000 the leadership in the battle to have the fastest … [Read More...]

Communication Standards

Over the years, modem standards have tended to develop in a rather haphazard way. As well as defining the speed at which a … [Read More...]

Using vi to Edit Text Files on A Linux Dedicated Server

A fact of life with Linux administration is that you will have to edit text files, simply because the operating system is configured using text … [Read More...]

[footer_backtotop]

Copyright © 2025 About | Privacy | Contact Information | Wrtie For Us | Disclaimer | Copyright License | Authors