- Shift Registers Definition: Shift registers are circuits that store and move data bits in digital systems, crucial for various applications.
- Data Format Converters: PISO shift registers convert parallel data to serial form, while SIPO shift registers convert serial data to parallel form.
- Data Processors: Shift registers help in binary operations like multiplying and dividing by shifting bits.
- Counters: Ring counters and Johnson counters use shift registers to cycle through a series of states in digital circuits.
- Applications of Shift Registers: They are used in delay lines, data format conversion, data processing, counting, random pattern generation, pulse extending, pattern recognition, and interconnection.
Delay Lines of Shift Registers
Shift registers of Serial In Serial Out (SISO) kind are one common use: they delay a digital signal by a set time. An n-bit register delays the stream by n clock periods, that is n divided by the clock frequency of the shift register. A long chain can hold temporary data as delay-line memory. Several bidirectional shift registers in parallel can also act as a stack.
Data Format Converters of Shift Registers
A long link is usually serial so it needs fewer wires. A Parallel In Serial Out shift registers (PISO) turns the sender’s parallel word into a bit stream. A microprocessor often wants parallel bits, so a Serial In Parallel Out shift register (SIPO) rebuilds the word at the receiver.
Data Processors of Shift Registers
Early machines also used shift registers as the adder workspace. They still do binary multiply and divide. A one-bit right shift divides an unsigned value by 2. A one-bit left shift multiplies it by 2. The 4-bit word 0110 is 6. Shift left and it becomes 1100, which is 12 (6 × 2). Shift right and it becomes 0011, which is 3 (6/2).
Counters of Shift Registers
A Ring Counter and a Johnson Counter are shift-register counters. In a ring counter the last stage feeds the first, so a 1 walks around the loop. A 4-bit ring loaded with 0001 visits 0001, 1000, 0100 and 0010. A Johnson counter feeds the complement of the last stage back to the first.
Thus for a 4-bit Johnson counter with input data word as 0001, one gets eight definite states – 0001, 0000, 1000, 1100, 1110, 1111, 0111 and 0011 – after which the pattern repeats.
Pseudo Random Pattern Generator of Shift Registers
Shift registers generate pseudo-random patterns for testing by EX-ORing outputs of certain stages and feeding them back to the first stage.
The number of patterns generated depend upon the number of points which are tapped to be provided as X-OR gate inputs. If tapped appropriately, the maximum number of patterns that can be generated using a n-stage shift register is (2n-1).
Pulse Extenders of Shift Registers
Pulse Extenders are the circuits which have longer output pulses when compared to the input pulses. Shift registers can be used as pulse extenders and are advantageous over mono stable multi vibrators as the timing is independent of the component values. However they are operated by an external clock which in turn determines the timing accuracy.
Pattern Recognizers of Shift Registers
Shift registers can be used to determine the occurrence of a definite bit pattern at the input. For example, the Figure 3 shows a 0101 pattern recognizer formed by using shift registers and the NAND gate. Here, as the sequence of bits in the input stream becomes 0101, the output of the NAND gate goes low.
Interconnectors of Shift Registers
Shift registers of the type SISO and PISO can be effectively used to reduce the number of wires interconnecting the various systems in the design. For example, in order to drive 16 LEDs from a microcontroller one would require 16 General Purpose Input Output (GPIO) ports. Instead two shift registers connected in series can be used to complete the task just by using 4 Input/Output (I/O) pins.





