The communications 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, ...); 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, there are plenty of compensating advantages.
- A serial connection takes up less space. That's good in itself, but it also means that ...
- The extra space can be used to isolate it better from its surroundings.
- Not having multiple conductors in close proximity means less crosstalk at higher frequencies.
- Clock skew between the different channels is not an issue.
- These last three considerations mean that a serial connection can, all else being equal, be clocked considerably faster than a parallel one.
Some examples of serial communication architectures:
- RS-232 (old, low-cost, low-speed, for connecting computers to peripherals)
- Universal Serial Bus (newer, moderate-speed, for connecting computers to peripherals)
- Fibre Channel (high-speed, for connecting computers to mass storage devices)
- InfiniBand (very high speed, broadly comparable in scope to PCI)