Computers and Serial Communication

Back to the previous section, Serial Communication and Radio

3. Early Computer Interfaces

Up to this point I have been using the term "teletype" to mean "teletypewriter". The word "Teletype" was (and probably still is) a registered trademark, like "Xerox" or "Scotch" tape. The Teletype corporation was a subsidiary of the old American Telephone and Telegraph Corp. (AT&T). In this paper I am using the word "teletype" in the generic sense, as a contraction of the longer word "teletypewriter".

After the Second World War, the need for improvement over the old five bit Baudot code was clear, so a new seven bit code was developed, called the American Standard Code for Information Interchange (ASCII). With seven bits, up to 128 characters can be represented, and this is enough characters for uppercase letters and numbers, lowercase letters, a wide variety of punctuation, with room left over for special codes that could be used to control teletype circuits, all without the need for mode shifting as in the Baudot code. In fact, ASCII could represent any character that could commonly be found on an American typewriter.

ASCII was not the only code that was used. The Electronic Industries Association (EIA) had a competing code with many of the same features as ASCII, and it seems like every manufacturer of early computers had their own character codes. The most famous of these was the code invented by IBM to operate the Selectric typewriter, which also could be used as a computer terminal, that is, a teletypewriter. ASCII became the dominant standard because of its heavy use in the telecommunications industry, and because of the ready availability of teletypes that supported it.

In ASCII, an eighth bit called a parity bit can be added to each character to do an error check. Here is how it works: each character in the seven bit code has a certain number of 'one' bits. This number of 'one' bits is either an even or an odd number. The parity bit is chosen to make the total number of 'one' bits (including the parity bit) in each character even. So the parity bit is sometimes a 'one', sometimes a 'zero'. If any character is received that does not have an even number of 'one' bits (again including the parity bit), an error in transmission is assumed to have occurred. If all of the characters come in with the correct parity bits, this creates a high level of confidence that errors are not occurring, and the system is functioning correctly.

The parity bit can also be chosen so that the number of 'ones' is always odd. In this case the value of the parity bit is always exactly the opposite of what it would be for even parity. This gives an option for how your error checking will be done, so if you receive a signal with the wrong parity, you may conclude it is the wrong signal.

In modern systems parity is usually not used, and more complex, efficient and reliable methods of error checking are used. This leaves the position occupied by the parity bit available for data, and with the use of international characters the extra code values are badly needed.

ASCII teletype transmission followed the methods that were used in the Baudot code: a start bit to indicate a character was coming, the data bits in order, and a stop bit. In mechanical systems, a single stop bit was usually not enough to reset all the mechanics, so two stop bits were used. This is a simplification of the Baudot system, where a fractional number of bits were used for stop. When the serial receiver is electronic, the second stop bit is dropped since there are no mechanics to reset. This makes the transmission a little bit faster. The normal speed of a teletype transmission was 110 Baud, and if a parity bit and two stop bits are used, each character has a total of 11 bit times. This results in 10 characters per second or 600 characters per minute, and if we use the previously accepted value of 6 characters per word, the machine could type 100 words per minute.

As teletypes, modems, and other related communications equipment became widely used, there was a need to standardize the interface between them, so that a terminal could be purchased from one company, a modem from another, and the two could be plugged together and work. This standard, which was published by the Electronic Industries Association (EIA) became known as RS-232. The standard was very narrow in scope. If you had a piece of Data Terminal Equipment (DTE) and you wanted to connect it to a piece of Data Communications Equipment (DCE, usually a modem), everything worked fine. But things got very confusing if it was not clear if your equipment was a terminal or a modem, or if you wanted to hook two terminals up together, or if you wanted to use the interface for any purpose other than that for which it was originally intended.

As computers were being developed, there was a need for a device that people could use to communicate with computers. Switches and lights look really pretty, but it is hard to get a program in through those switches, even a short one. Teletypes filled this need pretty well. They could print output from the computer, the keyboard could be used to input programs, data and commands, and the paper tape punch and reader that was available on some teletype models could be used as a way of storing programs or data and reading them back into the computer later. Teletypes had some disadvantages as well. They were noisy and slow, particularly compared with video display terminals, and of course they were much slower than the speed of most computers. And since they were mechanical machines, they eventually wore out and broke down.

The advantages of the teletype as the all-in-one computer terminal became dominant in the 1960s, as companies began making small computers called "minicomputers". While a big mainframe computer could have separate high speed printers, user consoles and storage devices, a minicomputer user needed the versatility offered by the teletype machine, and usually could live with its shortcomings. So, for a few years, for small computers, the teletype machine became the standard computer interface. A teletype equipped with a modem also made a great remote computer terminal, and this type of setup was used both with minicomputer systems and with larger multiuser time-sharing systems.

On to the next section, Early Microprocessors and the UART
Back to the Index
feedback to the author