CPU (CPU) or computer processor is the most important chip or integrated circuit (IC) in the computer, which is responsible for interpreting and processing computer commands. This small electronic chip monitors external data sources such as memory or data streams. CPU is usually embedded in the form of a microprocessor on integrated circuit chips.
In this article, we introduce you to the definition of CPU, its components, types, and examples.
What is a CPU or processor?
CPU stands for “Central Processing Unit” and means “central processing unit”. This processor unit is the brain of the computer that processes the commands given to the computer and responds to them. CPU is an electronic circuit that is responsible for the calculation integrated processing and execution of programs and functions in the computer.
All different electronic devices are equipped with a processor that receives the instructions, processes them, and finally provides the appropriate response.
The CPU must interpret the operating system to perform any operation on the computer. Each CPU consists of a logic unit and a control unit (CU) and measures the following:
- Maximum number of bits or instructions
- The relative speed of the processor
- Ability to process orders in a specified time
CPU components
Each processor is made of 4 main components, which are: floating point unit (FPU), calculation and logic unit (ALU), registers, and cache. In the following, we explain each of the sections separately.
1- Floating point unit (FPU)
A floating point unit is a part of a computer system that is responsible for performing mathematical operations of root, multiplication, division, subtraction, and addition on floating numbers. This unit can also perform transcendental functions such as trigonometric and exponential functions, but they are not very accurate.
2- Calculation and logic unit (ALU)
The task of this unit, which is one of the main components of the processor, is to perform computational and logical operations. The calculation and logic unit is actually an integrated circuit in the CPU or GPU (graphics processing unit) and therefore it is also called an integer unit (IU). This part is the last component that performs calculations in the processor.
3- Register
The processor register is a type of computer memory that receives, transfers, and stores data and instructions. In addition, the processor register gives the necessary commands to perform the processes to the calculation and logic unit and stores the result of this operation.
4- cache or cache memory
The cache is a small but very fast memory in the processor. The task of this memory is to save copies of data from the main places of use. There are three cache levels: L1, L2 and L3 cache. L3 cache is the main chip that is embedded on the processor chip and since this memory is small, it also has a small amount of storage space.
L2 is secondary memory that is installed either on the processor chip or on a separate chip that connects it to the CPU. The L3 cache, which is actually the specialized backup memory of L1 and L2 and increases their performance, is also called processor cache.
Types of CPU
There are different types of processors that we mention below:
1- Program-specific instruction set processor (ASIP)
This part is used to design the system on a chip. ASIP command sets are customized for use in specific applications. Some ASIP-specific commands are configurable. ASIP can be used as an alternative to hardware accelerators for video coding or baseband signal processing.
2- CPU types based on Flynn’s classification
In Flynn’s classification, processors are divided into the following categories based on the number of instructions and available data flow:
1) SISD – one instruction – one data
SISD is a term in computer architecture where a single-core processor executes a stream of instructions to store data in memory. According to Flynn’s classification, SISD can have concurrent processing characteristics.
In this type of architecture, commands are sent from the memory module to the control unit, then decoded, and finally sent to the processing unit. The processing unit processes the retrieved data from the memory module and then returns it. Common single-processor machines such as personal computers, old mainframes, pipeline processors, and superscalar processors are examples of SSIDs.
2) SIMD- one instruction-multiple data
SIMD is a computer that has multiple processing elements and simultaneously performs an operation on multiple data. In addition, in this type of computer, parallel calculations are performed only on a single instruction at a given time. The processing speed in SIMD architecture is higher and it is usually used in the design of hardware such as graphics cards.
3) MISD- several instructions- one data
This term is a type of parallel computing architecture in which several units perform different operations on the same data. In this type of architecture, each CU controls a command stream and processes it using the corresponding processing elements. This type of architecture is rarely used and is usually used for fault tolerance. The Space Shuttle flight control computer is an example of MISD.
4) MIMD-Multi-Instruction-Multi-Data
This technique is used to achieve parallelization. Machines equipped with MIMD architecture have multiple processors, each of which operates separately and asynchronously. These independent processors execute different commands on several different data each time. These machines may use shared memory or distributed memory based on how MIMD processors access memory.
3- CPU types based on the number of cores
Processors are divided into the following types based on the number of cores:
1) Single core
Single-core microprocessors consist of one core, and since they only execute one thread, they can execute instructions only once per clock cycle. These types of processors have low processing power and are less useful. Therefore, multi-core processors are more popular.
2) Multi-core
A multi-core processor is a microprocessor that has two or more cores in an integrated unit. Each of these cores reads program commands and executes them. In multi-core processors, a single processor can simultaneously execute instructions on each core. For this reason, the speed of programs that use multi-threaded and parallel computing techniques increases.
3) Hyper-Threading
Multithreading is a type of technology used in Intel microprocessors. In this technology, each core is divided into two separate cores. In this way, each core executes several functions at the same time, and this increases the speed of the system.
4- Specialized processors
1) Graphics processing unit (GPU)
The graphics processing unit is a specialized electronic circuit designed to speed up the process of creating images in frame buffers for output on the device’s display through memory manipulation and modification. This unit can change the amount of computer image and graphics processing. Compared to the CPU, the GPU is more efficient in processing large data in parallel because of its parallel structure. GPU can be installed on a motherboard or graphics card.
2) Physics Processing Unit (PPU)
PPU, also known as a physics acceleration card, is a specialized microprocessor that, unlike GPU, is responsible for performing physical calculations. This processor is especially used in the physics engine of computer games so that the load of time-consuming processing tasks is removed from the CPU and the PPU does them. The GPU simulates the physical data and sends it to the CPU. This type of processor is used in computers that have high efficiency.
3) digital signal processor (DSP)
DSP is another specialized processor designed to perform signal processing operations. This processor measures, compresses, and filters real-world continuous analog signals. DSP works more efficiently in terms of power consumption and therefore can be used to process electronic data that can be transmitted.
DSPs can receive multiple instructions and data simultaneously. Although this type of processor is cheaper in terms of price than other processors, at the same time, it has better performance and less delay, and it does not need a dedicated cooler or a bigger battery.
4) Network processor
A network processor is a programmable and special hardware device that has the low price and flexibility of RISC processors and the scalability and speed of ASIC chips. This type of processor has the capabilities of general-purpose CPUs and is used to design network applications. Firewalls, routers, switches, and network security devices all use the network processor.
5) Front end processor
The front-end processor is a small computer that connects networks to the host computer. Data is transferred between the host computer and the front-end processor through parallel interfaces at very high speed. This processor takes the burden of peripheral device management, package assembly and disassembly, as well as error detection and correction from the host computer. The front-end processor communicates with peripheral devices using serial interfaces and through communication networks.