Вы находитесь на странице: 1из 11

Shift registers

• Shift registers are a type of sequential logic circuit, mainly for storage
of
digital data.
• They are a group of flip-flops connected in a chain so that
the output from one flip-flop becomes the input of the next flip-flop.
• Most of the registers possess no characteristic internal sequence of
states.
• All flip-flop is driven by a common clock, and all are set or reset
simultaneously.
Basic types of shift registers are:
 Serial In - Serial Out(SISO) - the data is shifted serially “IN”
and “OUT” of the register, one bit at a time in either a left or
right direction under clock control.
 Serial In - Parallel Out(SIPO) - the register is loaded with
serial data, one bit at a time, with the stored data being
available at the output in parallel form.
 Parallel In - Serial Out (PISO) - the parallel data is loaded into
the register simultaneously and is shifted out of the register
serially one bit at a time under clock control.
 Parallel In - Parallel Out(PIPO) - the parallel data is loaded
simultaneously into the register, and transferred together to
their respective outputs by the same clock pulse.
Serial In - Serial Out Shift Registers

 The serial in/serial out shift register accepts data


serially – that is, one bit at a time on a single line.
 It produces the stored information on its output
also in serial form.
A construction of a Four-bit shift register

The operation of the circuit:


 The register is first cleared, forcing all four outputs to zero.
 The input data is then applied sequentially to the D input of the
first flip-flop on the left (FF0).
 During each clock pulse, one bit is transmitted from left to right.
 Assume a data word to be 1001.
 The least significant bit of the data has to be shifted through the
register from FF0 to FF3.
In order to get the data out of the register, they must be shifted out
serially. This can be done destructively or non-destructively. For
destructive readout, the original data is lost and at the end of the read
cycle, all flip-flops are reset to zero.

FF0 FF1 FF2 FF3


0 0 0 0 1001

The data is loaded to the register when the control line is HIGH (ie
WRITE). The data can be shifted out of the register when the control line is LOW (ie
READ). Clear FF0 FF1 FF2 FF3
1001 0 0 0 0
WRITE:
FF0 FF1 FF2 FF3
1 0 0 1 0000
READ:
FF0 FF1 FF2 FF3
1 0 0 1 1001
Serial In - Parallel Out Shift Registers

 For this kind of register, data bits are entered


serially.
 Once the data are stored, each bit appears on
its respective output line, and all bits are
available simultaneously.
A construction of a four-bit serial in - parallel out
register

In the table below, we can see how the four-bit binary number 1001 is
shifted to the Q outputs of the register.

Clear FF0 FF1 FF2 FF3


1001 0 0 0 0
1 0 0 0
0 1 0 0
0 0 1 0
1 0 0 1
An 8-bit serial in/parallel out shift register

Вам также может понравиться