Binary data in the form of a single bit (either 0 or 1) may be stored using flip flops. But storing several bits of data requires a lot of flip-flops. A network of N flip flops must be connected for storing multiple ‘n’ bits of data. These details are stored in a registry. It is a collection of flip-flops that are linked in series and are used to store several bits. Shift registers are used to transmit the data that is stored in these registers. This article discussed parallel and series shift registers in detail.
Shift Registers
Several bits of data are stored in a shift register, a group of flip flops and the Clock pulses are used to transfer the bits contained in these registers both within and outside of the registers. By joining n flip-flops, an n-bits based shift register is created. Shift registers have the categories below.
Shift Register for Serial-In Serial-Out (SISO)
SISO shift register permits serial data inputs, one data bit at a time over one data line, and serial output. Due to the fact that there is only single output, the shift register outputs its data serially, thus the name of SISO is used for such registers. A shift register with serial data in and serial data out is provided below. Four D flip-flops that are linked serially make up the circuit.
A SISO’s primary function is to serve as a delay component.
Shift Register for Serial-In Parallel-Out (SIPO)
The shift register is called a serial-in parallel-out shift register because it accepts serial data input over a single data line at a time and generates parallel output. A shift register with serial-in and parallel-out is provided below:
The circuit consists of four linked D flip-flops. All 4 flip flops have the clock signal and the clear (CLR) signal linked to them in order to RESET them. The 2nd flip-flop’s input is linked to the 1st flip-flop’s output, and so on. Since the SIPO register’s primary function is conversion of serial data into parallel data, they are utilized in data communication lines.
Shift Register for Parallel-In Serial-Out (PISO)
A parallel-in serial-out shift register is one that accepts parallel input (data is sent simultaneously and individually to each flip flop) and generates serial output.
The above circuit comprises four numbers of the linked D flip-flops. All of the flip-flops are directly linked to the clock input, but the input data connects to each flip-flop individually. This is done by a multiplexer at the inputs of flip-flops. Flip-flops are in time with one another because they all get the same clock pulse.
Shift Register for Parallel-In Parallel-Out (PIPO)
The shift register is called parallel-in parallel-out shift register because it permits parallel data input (data is simultaneously and independently sent to multiple flip flops). An example of a parallel-in-parallel-out shift register is provided below.
The above circuit comprises four of the linked D flip-flops. All 4 flip-flops are coupled to the clock signal and the clear (CLR) signal. Since there is no need for serial data shifting in this form of register, there are no connections between the individual flip-flops. Each flip flop receives data as input independently, and each flip flop’s output is likewise gathered separately.
Bidirectional Based Shift Registers
A binary number may be multiplied by two by moving it one position to the left or one position to the right. It can also be divided in two by moving it one position to the right. A register that can shift the data in either way in order to accomplish these actions is therefore required in this configuration. Depending on the mode used, bidirectional shift type registers have the ability to move the data either left or right. The data will be shifted if the mode is set to 1 (high), which will move it in the right direction, or 0 (low), which will shift it in the left direction.
The above circuit comprises four of the linked D flip-flops. Two sides of the above circuit are linked to the input data, and only one gate is active depending on the mode chosen.
Universal Shift Register
A form of register that includes both the left and right shifts is called a universal shift register. Additionally, it may load in parallel. These registers are often regarded as memory components in computers. The drawback of this register type is that it is unidirectional; it only shifts data in one direction. In other words, the unidirectional shift register, and the bidirectional shift register are combined to create the universal shift register.
Multiplexers and flip-flops are components of an N-bit universal shift register. Both have a size of N. In this, the select input chooses the appropriate input for flip-flops over the select lines shared by all n multiplexers.
Conclusion
Parallel registers have data bits on multiple individual wires at the same time while serial registers have data bits on the same wire one after the other in sequential order. Register inputs and outputs can be set up in a variety of ways, which is why they are referred to be serial in- serial out, parallel in parallel out, serial in serial out, and serial in parallel out configurations.