×

Data Path, ALU and Control Unit

Data Path, ALU(Arithmetic Logic Unit) and Control Unit

What is the Data path?

Suppose any data processing operation should be performed in the CPU like transferring the content of register from one place to another, from one register to another register, performing the addition of two numbers in ALU, copying something in memory and copying to register. So, any data processing operation happens in the CPU, then for that data operation, data follows a specific path, which is called "data path.”

“Data path is the collection of functional units such as arithmetic logic units or multipliers. Data path is required to perform data processing operations.”

To perform any operation in the CPU, data follows a specific path within the CPU to execute the instruction. That followed path is known as a data path.

This data path diagram tells how data follows a specific path. It's not a standard diagram as every CPU can have a different data path diagram. Components in the diagram:-

Data Path ALU and Control Unit

Registers- Here, we have five registers used to store in-out signal data named as instruction register (IR), a program counter (PC), data(D) register, Address(A)-register. Registers are like gates here through which signals are further sent to components to do the micro-operation. Registers are controlled, and signals of registers are directed by the control- unit.

Instruction Register- IR works on  IN-OUT signal value. It carries the value of micro-operation which is going to be performed by the CPU.

Data register- In the diagram, we have two data registers named D1 and D2, which save the input data used to perform the micro-operation. D1 data directly goes to ALU, and D2 data moves to MUX 1.

Program Counter- It can take two signals in-out signal. Value of PC sent to MUX forwarded to ALU. The program counter has its incrementer through which the PC's value is incremented in the same register, and it requires a signal named INC. If INC is enabled having value 1, it increases the program counter value and disables having value 0.     

Multiplexer- multiplexer is a combinational circuit that takes multiple signals and sends them further as one signal. The diagram shows two multiplexers of 2x1 named MUX 1 and MUX 2, which uses the selected signal to carry the data. It depends on micro-operation. If the select signal is 1, then MUX is enabled, and if the select signal is 0, then MUX is disabled.

Memory- Data is kept in memory with two functions, i.e., the Read and Write function.  When the Read function is enabled, data is sent from memory to CPU, and when they write function is enabled, then data is stored in CPU to memory. Read signal enabled than write signal is disabled and vice-versa.

Address bus – Address bus directly carries the input address from the address register to memory.

Data bus- Data bus is used to carry data from memory to registers and registers to memory. Here data bus transfer data from memory to MUX 2.

ALU: Arithmetic Logic Unit

Arithmetic Logic Unit is the full form of ALU. It is present in every CPU to perform operations like addition, subtraction, division, multiplication and many more. It is the main component of the system to apply logic to execute a particular instruction or program. ALU takes two operands as input and function code. ALU can perform multiple functions like subtraction, X-NOR, division and many more. It becomes necessary to provide a function code(assume 10100), which indicates or tells what kind of  function ALU has to perform on the given inputs.

Data Path ALU and Control Unit

Instruction Fetch

Instruction fetch is getting the instruction or reading/fetching an instruction from memory to CPU. Instruction will be fetched from a particular address on which the next instruction is present, and this address is stored in a register called a program counter register. Memory is accessed on an address stored in the program counter, and then on that memory address, instruction is available, and it is kept in the instruction register.

                                                          IRß M[PC]

But this operation cannot be completed in a single step. So to do this complete operation, various steps are required because one component can perform only one operation at one time:-

  1. Firstly, bring the program counter (PC) value into the address register because we cannot bring the value of the program counter to memory. It should be copied to the address register first.

                                        AR ßPC           …….(i)

  • Content of the address register is sent directly to memory, and content can be read from memory. Further, the content of the register is copied to the instruction register. Along with this value of the program in program counter, it is incremented by 1.

                                         IRß M[AR],   PCß PC +1     …..(2)

Note: Two micro-operation can only perform together only when the operation components are different for both operations.

Control Unit

Control unit generates all the signals (in-out) based on which all other component works. The unit generates the signal and sends those signals to components, and components work accordingly. The Control unit is a component present in the CPU which guides the input and signals to reach their required destination (components). It tells computer memory, input/output signal, arithmetic logic unit to respond to the instructions sent to the processor.

Two devices require a control unit:-

1) Central Processing Units (CPU’s)

 2) Graphics Processing Unit(GPU’s)

Data Path ALU and Control Unit

What is the control Variable?

Control variable- To every signal, we have assigned some names. For example:  Read and write signal for memory, I-Register having control signal named IN-OUT, the select signal for multiplexer 1 and 2, out a signal for D1 and D2.

“Control variable is the name of  control signal.”

What is the control word?

All the control signals in the process of execution of the program are collected at one place, known as the control word. The control word is collecting all the signals during the fetching of instruction by the components like registers, multiplexer, ALU etc. Control word generates a signal in 0 or 1 form(binary digits), 0 is for disabling, and 1 is for enabling. All the components take these signals meant for them and work accordingly because the different signal is meant for a different component. Components together operate and perform micro-operation.

Data Path ALU and Control Unit

Related Topics

Instruction Cycle: Computer Organization and Architecture

What is an effective Address? “Effective address is the address of operand in a computation-type instruction.” Computation type instructions are like ADD, SUB, MOV, OR, AND, etc., which require operand to...

4 minutes read.

Flag Register of 8086 Microprocessor

In this article, we are going to study about the one of the registers named flag registers of 8086 microprocessor. We are also going to know where and how to...

3 minutes read.

Advantages and Disadvantages of Flash Memory

What is Flash Memory? Electrically Erasable Programmable Read-Only Memory (EEPROM) and Erasable Programmable Read-Only Memory (EPROM) are used for flash memory (EEPROM). Although technically the word flash is used in the industry...

3 minutes read.

8085 instructions set

Introduction: In the computer, the user sends the data. The computer can use data and it also process the data. After the processing, send the result to the user. The specific...

10 minutes read.

COA: Interrupt and its types

Introduction: In general terms, the word interrupt means to stop the progress of ongoing work in between or to break the continuation of the work. In early digital computing, the...

5 minutes read.

Addressing mode in 8085 microprocessor

What is a Microprocessor? Microprocessor is a unit which is able to perform arithmetic and logical operations and is built on a single chip. The 8085 microprocessor is built by Intel which...

4 minutes read.

Use Case Diagram for the online bank system

What is a Use Case Diagram? A tool is called a Use Case Diagram which is used to create, present, and comprehend the functional requirements for a system. The Use Case...

3 minutes read.

Machine Instructions

What is a Digital Computer? A computer that takes input in a binary form and produces output in binary form. The question arises of what kind of input the computer takes...

4 minutes read.

IEEE Standard 754 Floating Point Numbers

Floating Point Representation: IEEE- 754 There were many problems in the conventional representation of floating-point notation like we could not express 0(zero), infinity number. To solve this, scientists have given a...

8 minutes read.

Microprocessor classification

Introduction: Microprocessor is known as the computer processor. The IC or integrated Circuit makes the microprocessor. that is the brain of the computer machine. The microprocessor is known as the...

6 minutes read.

8086 Microprocessor Pin Configurations

8086 microprocessor is invented and developed by Intel in 1976. The 8086 Microprocessor is an enhanced version of the 8085 Microprocessor. There are 20 address lines and 16 data lines...

6 minutes read.

Micro-Operations

Micro-Operations If CPU wants to perform any operation, suppose execution of only one instruction or even break it down one particular execution phase (like fetch instruction, write back, decode, operand fetch...

9 minutes read.

Computer Organization and Architecture Tutorial

Introduction to Computer Organization and Architecture In this modern era, or we can say computer era, Technology from all around surrounds us. Human is conserved, connected and absorbed by Technology. From...

4 minutes read.

Data Transfer and Manipulation

What is Data Transfer? In computer architecture, data transfer refers to the movement of data between different components within a computer system. These components can include the central processing unit (CPU),...

6 minutes read.

Local Broadcast Address and loopback address

In computer networking, if you send the data from one source to another source or group of sources in the form of packets, then this is called casting. We can categorize...

3 minutes read.

Fixed and Floating-Point Number

Fixed and Floating-Point Number: In digital technology, data is stored in memory registers with binary bits 0’s and 1’s because the computer only understands binary language. When we enter data...

6 minutes read.

Assembly Language Register

Assembly Language Register Assembly language was introduced during the late 1940s in the second generation. It is a low-level language that helps in communication between the user and the computer. It...

6 minutes read.

CarryLook Ahead Adder

What is Adder? Adder is the combinational circuit that is used to add the bits in digital electronics. As we know, in the digital system, every number is represented in the...

4 minutes read.

Digital Number System

Digital Number System: The computer understands digital language only. Many number systems are used in digital technology. The most common are Decimal, Binary, Octal and Hexadecimal number systems. Types of the...

7 minutes read.

8085 Arithmetic Instructions

Arithmetic instructions are a type of instruction in a computer's instruction set that perform arithmetic operations on data. These operations can include addition, subtraction, multiplication, and division. Arithmetic instructions can...

4 minutes read.