Serial data

From LavryEngineering
Revision as of 11:04, 23 July 2012 by Brad Johnson (talk | contribs)
Jump to navigation Jump to search

Overview

The term "Serial Data" refers to one of two methods by which most digital information is transmitted between devices. The devices can IC's on the same PC board, or separate units such as a personal computer and printer.

Basics

In order to represent a useful amount of information; most computer systems store and operate on information encoded in the form of a digital "word." A word is simply a specific number of "bits" that are grouped in a specific manner.

A bit is either a "1" or a "0" in binary math; which is the basis for virtually all contemporary digital computation. Because one bit can only represent two "states" (one or zero); it is not useful for representing information that is not either "yes or no" or "on or off." By grouping bits in "columns;" a larger number of states can be represented.

For example: 8 bits can represent 256 states or "steps." 16 bits can represent 65,536 steps, and 24 bits can represent 16,777,216 steps. This is typically referred to as the "resolution," because in most applications it defines how "fine" the detail is of the coded information. The "columns" in binary math are similar to the columns in "base 10" math where the fist column on the right represents the single "digits" and each column to the left represents a larger number of "digits." For example; in base 10, the number "12" means 2 plus (1 times 10). In computer binary the right-most column is referred to as the "least significant bit" (lsb) and the left most column is the "most significant bit" (msb).

In early digital systems operating on 8 bit "words;" parallel transmission was commonly used both because the information contained in each "word" is only useful if it was present at the same time and because the frequency of transmission of each word could be the same (or very close to the same) as of the clock used to synchronize the operation of all of the components in the system- which will be referred to as the "system clock". This insured that each word could be passed from one device to the next once each clock cycle.

As the number of bits in the word increased; it is easy to see how the number of connections required would greatly increase to the point were parallel transmission of data became impractical. The basis of serial transmission is multiplexing. Multiplexing is basically the idea of using one "carrier signal" or conductor to carry more than one informational signal. This can be accomplished in a number of manners; but in computers this typically means that the digital words are arranged in a pre-determined manner; with either the least significant bit (lsb) first and the most significant bit (msb) last; or vice-versa.

A "bit clock" is used to sequence the transmission and receiving of the serial data which is typically in the range of: (number of bits) times (system clock). For example; a 16 bit word length would require a minimum bit clock frequency of 16 times the system clock. A parallel to serial converter uses the bit clock to send each bit in a parallel word in sequence, one after the other down a single conductor. On the receiving end, each bit is "stacked" next to the previous one until all 16 bits have been received, and then output as all 16 bits in a parallel word; effectively re-constructing the original information as a single word.

Due to the need for a significantly higher frequency bit clock, serial transmission was limited to speeds lower than the system clock in early digital systems; which meant that parallel transmission was still effectively faster. As technology advanced, serial transmission became more practical in a wider number of applications and today is used widely for high-speed transfer between digital devices such as computer IC's and hard drives or printers; as well as digital audio devices.