Introduction to Registers | Analog and Digital Electronics - Electrical Engineering (EE) PDF Download

Introduction

  • A Register is a collection of flip flops. A flip flop is used to store single bit digital data. For storing a large number of bits, the storage capacity is increased by grouping more than one flip flops. If we want to store an n-bit word, we have to use an n-bit register containing n number of flip flops.
  • The register is used to perform different types of operations. For performing the operations, the CPU use these registers. The faded inputs to the system will store into the registers. The result returned by the system will store in the registers. There are the following operations which are performed by the registers:

Fetch
It is used

  • To take the instructions given by the users.
  • To fetch the instruction stored into the main memory.

Decode
The decode operation is used to interpret the instructions. In decode, the operation performed on the instructions is identified by the CPU. In simple words, the decode operation is used to decode the instructions.

Execute
The execution operation is used to store the result produced by the CPU into the memory. After storing this result, it is displayed on the user screen.

Types of Registers

There are various types of registers which are as follows:
Introduction to Registers | Analog and Digital Electronics - Electrical Engineering (EE)

MAR or Memory Address Register

The MAR is a special type of register that contains the memory address of the data and instruction. The main task of the MAR is to access instruction and data from memory in the execution phase. The MAR stores the address of the memory location where the data is to be read or to be stored by the CPU.

Program Counter

The program counter is also called an instruction address register or instruction pointer. The next memory address of the instruction, which is going to be executed after completing the execution of current instruction is contained in the program counter. In simple words, the program counter contains the memory address of the location of the next instruction.

Accumulator Register

The CPU mostly uses an accumulator register. The accumulator register is used to store the system result. All the results will be stored in the accumulator register when the CPU produces some results after processing.

MDR or Memory Data Register

Memory Data Register is a part of the computer's control unit. It contains the data that we want to store in the computer storage or the data fetched from the computer storage. The MDR works as a buffer that contains anything for which the processor is ready to use it. The MDR contains the copied data of the memory for the processor. Firstly the MDR holds the information, and then it goes to the decoder.
The data which is to be read out or written into the address location is contained in the Memory Data Register.
The data is written in one direction when it is fetched from memory and placed into the MDR. In write instruction, the data place into the MDR from another CPU register. This CPU register writes the data into the memory. Half of the minimal interface between the computer storage and the microprogram is the memory data address register, and the other half is the memory data register.

Index Register

The Index Register is the hardware element that holds the number. The number adds to the computer instruction's address to create an effective address. In CPU, the index register is a processor register used to modify the operand address during the running program.

Memory Buffer Register

Memory Buffer Register is mostly called MBR. The MBR contains the Metadata of the data and instruction written in or read from memory. In simple words, it adds is used to store the upcoming data/instruction from the memory and going to memory.

Data Register

The data register is used to temporarily store the data. This data transmits to or from a peripheral device.

Parallel In - Parallel Out (PIPO) Registers

An electronic register is a form of memory that uses a series of flip-flops to store the individual bits of a binary word such as a byte (8 bits) of data. The length of the stored binary word depends on the number of flip-flops that make up the register. A simple 4-bit register is illustrated in Fig. 5.7.1 and consists of four D type flip - flop, sharing a common clock input, providing synchronous operation ensuring all bits are stored at exactly the same time.

The binary word to be stored is applied to the four D inputs and is remembered by the flip-flops at the rising edge of the next clock (CK) pulse. The stored data can then be read from the Q outputs at any time, as long as power is maintained, or until a change of data on the D inputs is stored by a further clock pulse, which overwrites the previous data.

Different types of register are generally classified by the method of storage and readout used; this basic form of register is therefore classified as a ‘Parallel In/Parallel Out’ (PIPO) register.

Introduction to Registers | Analog and Digital Electronics - Electrical Engineering (EE)

Shift Registers.

Shift registers have a similar structure to the PIPO register but have the added ability to shift the stored binary word left or right, one bit at a time. This makes them extremely useful for many applications. They are used in handling serial data and converting it to parallel form or back again to serial form, and therefore are an essential component in communication systems. Shift registers are also essential in arithmetic circuits where binary numbers may be shifted right (and so divided by two), or left (multiplied by two) as part of a calculation. Shift registers can be used to delay the passage of data at a particular point in a circuit. As the data is shifted one bit at a time from input to output, the amount of delay will depend on the number of flip-flops in the register and the frequency of the clock pulses driving the shift register. Because a number of serial bits of data are stored as they enter the input, and are then recovered from the output at some later time, this action can also be described as a serial memory, or as a digital delay line.

 

The simple storage register shown in Fig. 5.7.1 can be modified to a shift register by connecting the output of one flip-flop into the input of the next, as shown in Fig. 5.7.2. The basis of shift register circuits is the D-type flip-flop, but the clocked SR  or the JK flip - flopmay also be converted to D-types by the inclusion of an inverter between S and R or between J and K. In all cases the clock input is in synchronous mode.

The serial input of the shift register in Fig. 5.7.2 is the D input of the first flip-flop, and the serial output is the Q output of the last flip-flop in the chain. The logic state at the serial input appears at the output, a number of clock pulses (equal to the number of flip flops) later.


Introduction to Registers | Analog and Digital Electronics - Electrical Engineering (EE)

Modes of Shift Register Operation.

SISO

A State Table and Timing Diagram illustrating the operation of Fig.5.7.2 is shown in Fig. 5.7.3 where the timing diagram shows the time relationship between the CK pulses and changes at the Q outputs of the circuit. It can be seen that if the serial input goes from 0 to 1 just before CK pulse 1, the Q output of flip-flop FF0 will go high at the rising edge of CK pulse 1. At the next clock pulse rising edge, the logic 1 will be transferred to FF1 and so on until it reaches FF3, and the serial output.

The same action can also be illustrated by a State Table, which, rather than showing timing data, shows the states of the four Q outputs after each clock pulse. After each CK pulse one more flip-flop output is set to 1 until, after 4 pulses, column 4 shows that all Q outputs, including the serial output, are at logic 1. This form of operation is called ‘serial in/serial out’ or SISO.  

              Introduction to Registers | Analog and Digital Electronics - Electrical Engineering (EE)            Introduction to Registers | Analog and Digital Electronics - Electrical Engineering (EE)
 Fig. 5.7.3 Timing Diagram and State Table for SISO Operation

 

SIPO

In Fig. 5.7.4 the shift register is modified to include additional Q outputs from each flip-flop, so allowing the register to input serial data, and output it in both serial and parallel form. The register could therefore now be called both a ‘Serial In/Serial Out and Serial In/Parallel Out’ (SISO/SIPO) register. This format is the basis for converting serial data to parallel data.

Introduction to Registers | Analog and Digital Electronics - Electrical Engineering (EE)

 

PISO

If use is also made of the Introduction to Registers | Analog and Digital Electronics - Electrical Engineering (EE) output, and the additional preset Introduction to Registers | Analog and Digital Electronics - Electrical Engineering (EE) and clear Introduction to Registers | Analog and Digital Electronics - Electrical Engineering (EE) inputs available on many flip-flops, the shift register could be made more versatile still.

Fig. 5.7.5 shows a shift register modified to enable it to be loaded with a 4-bit parallel number, which may then be shifted right to appear at the serial output one bit at a time. As the ‘Parallel In/Serial Out’ or PISO register also has a serial input, it can also be used as a SISO register, and if extra outputs from each Q output were also included, the register would also have Serial In/Parallel Out (SIPO) operation.

 

Introduction to Registers | Analog and Digital Electronics - Electrical Engineering (EE)

Loading Parallel Data

If the Introduction to Registers | Analog and Digital Electronics - Electrical Engineering (EE) input is taken to logic 0, the LOAD control line connected to the four pairs of NAND gates associated with the four flip-flops will be at logic 1, and all four pairs of NAND gates will be enabled. Therefore a logic 1 appearing on any of the D inputs will be inverted by the NOT gate connected to the D input, making the inputs to the left hand NAND gate of the relevant pair of gates, logic 1 and logic 0. This will cause logic 1 to be applied to the Introduction to Registers | Analog and Digital Electronics - Electrical Engineering (EE) input of the flip-flop.

The right hand NAND gate of the pair will have both inputs at logic 1, due to the logic 1 on LOAD line and logic 1 on the D input, and so will output logic 0 (NAND qate rules) to the Introduction to Registers | Analog and Digital Electronics - Electrical Engineering (EE) input of the flip-flop, setting the Q output to logic 1.

If the D input is at logic 0, the left hand gate of the NAND gate pair will output logic 0 and the right hand NAND gate will output logic 1, causing the Introduction to Registers | Analog and Digital Electronics - Electrical Engineering (EE) input to clear the Q output of the relevant flip-flop to logic 0.

Notice that as JK flip-flops are being used in this design, a NOT qate is connected between J and K of the first flip-flop of the chain to make the JK flip-flop mimic a D Type. The remaining flip-flops of the shift register have J and K connected to the previous Q and Q outputs, so will also be at opposite logic states. 

 

Introduction to Registers | Analog and Digital Electronics - Electrical Engineering (EE)

A 4-bit Reversible shift register.
 

The shift register in Fig 5.7.5 could be operated as:

  • A parallel in/parallel out register. (PIPO)
  • A Serial in/serial out register. (SISO)
  • A serial in/parallel out register. (SIPO)
  • A parallel in/serial out register. (PISO)

However Fig 5.7.5 can only shift data in one direction, i.e. left to right. To be truly versatile it could be an advantage to be able to shift data in both directions and in any of the four shift register operating modes. Fig. 5.7.6 achieves this by adding data steering circuitry.

 

The gating arrangement at the bottom of Fig 5.7.6 (gates G1 to G13) is exactly the same as that described above in Fig. 5.7.5, and these gates control the loading of parallel data.

Gates G14 to G28 in Fig 5.7.6 control the direction of data flow through the register. The JK flip-flops use the inverter gates G29 to G32 to ensure that J and K are at opposite logic states, so the flip-flops are  mimiking D Type operation, with J being used as the data input. Notice also that the clock is connected in the familiar synchronous mode.

 

Introduction to Registers | Analog and Digital Electronics - Electrical Engineering (EE)

 

Operation

In any of the modes involving serial operation, data may be shifted left or shifted right by the application of a suitable logic level at the shift control Introduction to Registers | Analog and Digital Electronics - Electrical Engineering (EE) input.

With a logic 1 at this input the register is in the shift right mode, and data is taken into the ‘Serial in R’ input to be shifted right by application of successive clock pulses, appearing as parallel data, changing with each clock pulse, on the flip flop Q outputs. After four clock pulses the data begins to appear in serial form on the Q3output, which is also the ‘Serial Out R’ output.

The logic 1 on the shift control Introduction to Registers | Analog and Digital Electronics - Electrical Engineering (EE) enables gates G18, 20, 22 & 24, but because the logic 1 is inverted by G27, gates G19, 21, 23 & 25 are disabled.

The path of serial data (e.g. a logic 1) from left to right is as follows; the logic 1 appearing at the input to G26 is inverted and passes through G18 which re-inverts it to logic 1 and, as G19 is disabled its output must also be at logic 1. Both inputs to the AND gate G14 are at logic 1 and therefore so is its output, (AND gate rules) making the J input of FF0 logic 1.

On the arrival of a clock pulse, the logic 1 input to FF0 will appear on the output Q0. Its inverse (logic 0) will also appear on the Introduction to Registers | Analog and Digital Electronics - Electrical Engineering (EE) output of FF0. This logic 0 forms the input to the next multiplexer arrangement, gates G20, 21 & 15. As G20 is enabled (and G21 disabled) the logic 0 becomes logic 1 at G15 output and so is fed to the J input of FF1. This method is used to transfer data to each flip-flop in the chain.

To achieve shift left operation, the shift control Introduction to Registers | Analog and Digital Electronics - Electrical Engineering (EE) is set to logic 0 and so enables gates G19, 21, 23 & 25 while disabling gates G18, 20, 22 & 24. Therefore the Introduction to Registers | Analog and Digital Electronics - Electrical Engineering (EE)  output of FF3 is connected via G23 and G16 to the D input of FF2, the Introduction to Registers | Analog and Digital Electronics - Electrical Engineering (EE) output of FF2 is connected to the J input of FF1 via G21 and G15 (remember that G24 is disabled, so FF3 is isolated from this path). Finally, the Introduction to Registers | Analog and Digital Electronics - Electrical Engineering (EE) output of FF1 is connected via G19 and G14 to the J input of FF0, the Q0 output of which is also the ‘Serial Out L’ output. The ability to shift data in either direction, together with the parallel input and output facilities make this register a very versatile device.

It is common to connect shift register ICs in cascade, using the serial output of one register to connect to the serial input of the next register in the chain. For this reason both the data and clock inputs and outputs of register ICs are normally buffered.

Some examples from the many commercially available IC registers using these and similar methods, available in both CMOS and TTL versions, are listed below.

  • 74HC164 8-Bit SIPO Shift register from NXP
  • 74HC594 8-Bit SIPO/SISO with PIPO output storage register and dual clocks - from NXP
  • 74HC595 8-Bit SIPO/SISO with tri-state output PIPO storage register and dual clocks - from NXP
  • HEF4014B PISO Register with 8-bit synchronous parallel LOAD and outputs from Q5, Q6 & Q7 only - from NXP
  • CD4031B 64 Stage SISO shift register with re-circulation mode - from  Texas instruments.
The document Introduction to Registers | Analog and Digital Electronics - Electrical Engineering (EE) is a part of the Electrical Engineering (EE) Course Analog and Digital Electronics.
All you need of Electrical Engineering (EE) at this link: Electrical Engineering (EE)
135 videos|167 docs|71 tests

FAQs on Introduction to Registers - Analog and Digital Electronics - Electrical Engineering (EE)

1. What is a PIPO register and how does it differ from other types of registers?
Ans. A Parallel In - Parallel Out (PIPO) register is a type of register where data is loaded in parallel and output in parallel. This differs from other types of registers like Serial In - Serial Out (SISO) or Serial In - Parallel Out (SIPO) registers where data is shifted in or out serially.
2. How are shift registers different from PIPO registers?
Ans. Shift registers are a type of register where data is shifted in or out serially, one bit at a time. In contrast, PIPO registers allow for parallel loading and output of data, enabling faster data transfer compared to shift registers.
3. What are some common applications of PIPO registers?
Ans. PIPO registers are commonly used in digital signal processing, image processing, data communication systems, and other applications where parallel data processing is required.
4. Can PIPO registers be cascaded together to increase the data storage capacity?
Ans. Yes, PIPO registers can be cascaded together to increase the data storage capacity. By connecting multiple PIPO registers in series, the overall storage capacity and data processing capabilities can be expanded.
5. How do PIPO registers contribute to the overall efficiency of digital systems?
Ans. PIPO registers help improve the efficiency of digital systems by allowing for faster data transfer through parallel loading and output. This can lead to improved performance and reduced processing time in various digital applications.
Related Searches

practice quizzes

,

shortcuts and tricks

,

video lectures

,

Previous Year Questions with Solutions

,

Viva Questions

,

Important questions

,

study material

,

pdf

,

mock tests for examination

,

Introduction to Registers | Analog and Digital Electronics - Electrical Engineering (EE)

,

Semester Notes

,

Introduction to Registers | Analog and Digital Electronics - Electrical Engineering (EE)

,

past year papers

,

Extra Questions

,

MCQs

,

Free

,

Introduction to Registers | Analog and Digital Electronics - Electrical Engineering (EE)

,

Sample Paper

,

ppt

,

Exam

,

Summary

,

Objective type Questions

;