Serial Transmission
Alan Clements
Although a parallel input-output scheme can provide fast data transfer and is
simple in operation, it has the disadvantage of requiring a large number of intercon-
nections. As an example a typical 8 bit parallel data port uses 8 data lines, plus one or
two handshake lines and one or more ground return lines. It is fairly common practice
to provide a separate ground return line for each signal line, so an 8 bit port could
typically use a 20core interconnection cable. Whilst such a multiway cable is quite
acceptable for short distance links, up to perhaps a few meters, it becomes too expen-
sive for long distance links where, in addition to the cost of the multicore cable, sepa-
rate driver and receiver circuits may be required on each of the 10 signal lines. Where
part of the link is to be made via a radio link, perhaps through a space satellite, sepa-
rate radio frequency channels would be required for each data bit and this becomes
unacceptable.
An alternative to the parallel transfer of data is a serial system in which the states
of the individual data bits are transmitted in sequence over a single wire link. Each bit
is allocated a fixed time slot. At the receiving end the individual bit states are detected
and stored in separate flip-flop stages, so that the data may be reassembled to produce
a parallel data word. The advantage of this serial method of transmission is that it re-
quires only one signal wire and a ground return, irrespective of the number of bits in
the data word being transmitted. The main disadvantage is that the rate at which data
can be transferred is reduced in comparison with a parallel data transfer, since the bits
are dealt with in sequence and the larger the number of bits in the word, the slower the
maximum transfer speed becomes. For most applications however, a serial data
stream can provide a perfectly adequate data transfer rate. This type of communica-
tion system is well suited for radio or telephone line links, since only one communica-
tion channel is required to carry the data.
We have seen that in the CPU system data is normally transferred in parallel
across the、main data bus, so if the input-output data is to be in serial form, then a
parallel to serial data conversion process is required between the CPU data bus and
the external I/O line. The conversion from parallel data to the serial form could be
achieved by simply using a multiplexer switch which selects each data bit in turn and
connects it to the output line for a fixed time period. This basic scheme is shown in
Fig. 12-1.Amore practical technique makes use of a shift register to convert the par-
allel data into serial form.
A shift register consists of a series of D type flip-flops connected in a chain, with
the Q output of one flip-flop driving the D input of the next in the chain. All of the
flip-flops are clocked simultaneously by a common clock pulse. When the clock pulse
occurs the data stored in each flip-flop is transferred to the next flip-flop to the right in
the chain. Thus for each clock pulse the data word is effectively stepped along the
shift register by one stage. At the end of the chain the state of the output flip-flop will
57