Serial communication

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by 130.104.224.153 (talk) at 11:20, 9 July 2008 (Improved the definition). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

In telecommunication and computer science, serial communication is the process of sending data one bit at one time, sequentially, over a communication channel or computer bus. This is in contrast to parallel communication, where several bits are sent together (on a link comprising of several wired channels in parallel).
Serial communication is used for all long-haul communication and most computer networks, where the cost of cable and synchronization difficulties make parallel communication impractical. At shorter distances, serial computer buses are becoming more common because of a tipping point where the disadvantages of parallel busses (clock skew, interconnect density) outweigh their advantage of simplicity (no need for serializer and deserializer (SERDES)). Improved technology to ensure signal integrity and to transmit and receive at a sufficiently high speed per lane have made serial links competitive. The migration from PCI to PCI-Express is an example.


Teletype systems

Standard teletype systems evolved as an automated telegraphy system called telex. Originally, a rotating mechanical commutator (a rotating switch) was started by a "start bit". The commutator would distribute the other bits to set relays that would pull on solenoids which would cause the mechanism to print a figure on paper. The routing was automated with rotary electromechanical dialing systems like those used in early telephone systems. When computers became commonplace, these serial communication systems were adapted using I/O devices called serial ports that used UARTs. The development of communication hardware had a deep continuing impact on the nature of software and operating systems, both of which usually arrange data as sequences of characters.

Serial buses

Integrated circuits are more expensive when they have more pins. To reduce the pins, many ICs use a serial bus to transfer data when speed is not important. Some examples of such low-cost serial buses include SPI, I²C, and 1-Wire.

Serial versus parallel

The communication links across which computers—or parts of computers—talk to one another may be either serial or parallel. A parallel link transmits several streams of data (perhaps representing particular bits of a stream of bytes) along multiple channels (wires, printed circuit tracks, optical fibres, etc.); a serial link transmits a single stream of data.

At first sight it would seem that a serial link must be inferior to a parallel one, because it can transmit less data on each clock tick. However, it is often the case that serial links can be clocked considerably faster than parallel links, and achieve a higher data rate. A number of factors allow serial to be clocked at a greater rate:

  • Clock skew between different channels is not an issue (for unclocked asynchronous serial communication links)
  • A serial connection requires fewer interconnecting cables (e.g. wires/fibres) and hence occupies less space. The extra space allows for better isolation of the channel from its surroundings
  • Crosstalk is less of an issue, because there are fewer conductors in proximity.

In many cases, serial is a better option because it is cheaper to implement. Many ICs have serial interfaces, as opposed to parallel ones, so that they have fewer pins and are therefore cheaper.

Examples of serial communication architectures

(see additional examples in Computer bus)

There are a number of serial communication standards which, while significantly at variance with the RS-232 standard, are casually and incorrectly called "RS-232".

See also

External links