Articles

What Are Cores In A Computer? (CPU Cores Explained)

Whether you are a student of computer hardware or a customer looking for a new processor, you must have definitely heard of the term called “core“. So what is core in computer and what does it do?

You must be aware that computers come in various forms and sizes depending on the need which they fulfill.

Desktops, Laptops, Smart Phones, Tablets, Servers etc are all examples of computers that you may have come across.

Any computer is made up of several components that are a basic requirement for the computer to function.

You have to have all of these components in a computer, otherwise it will not work.

You can divide these components into two types, major components and sub componentsMajor components include the motherboard, RAM, ROM and CPU etc

Sub components are basically the integral part of each of the major component.

The Core is basically a sub-component of the CPU.

However, to really understand what is core in computer, you need to briefly look at two important aspects of a computer:

  1. 1
    The Computer Program
  2. 2
    The CPU and its Many Sub-Components

Courtesy: Codeforwin.com

The computer works by running programs, where a program is a set of instructions for the computer that allow it to perform specific actions.

As a simple example, let’s say you are working on a Laptop and doing a Skype chat. You are typing in your sentences and sending them over the network.

So, if you press a key, say “A”, you see it typed on the screen in the Skype window.

What happened is that the computer was given an instruction to listen to the keyboard and to the moment a key is pressed. It was then asked to identify which key was pressed and finally it was given an instruction to print it on the screen at the designated place inside the Skype window.

Now of course this is a very high level overview of what happened when in actuality countless instructions would have passed back and forth between the CPU and the peripheral i.e keyboard and the monitor.

Now all instructions that the computer performs, get interpreted and executed inside the CPU (Central Processing Unit), also known as Microprocessor or simply Processor.


The CPU (Central Processing Unit)

The CPU is the component of a computer which performs calculations and executes commands or instructions.

By definition, this is what a computer is basically supposed to do at the very root of its functionality.

So, we can safely say that the CPU is the “Brain” of the computer.

The CPU in itself contains several components that we will discuss below. We will also discuss what basic steps the CPU performs in order to execute instructions.

CPU Sub-Components

A CPU consists of the following sub-components

It is important to understand these sub-components because some of these combine to from a CORE in the CPU.

CPU basics
1. ALU (Arithmetic Logic Unit)

This is a component of the CPU which performs the mathematical, logical or decision operations.

You can consider the ALU as the very heart of the CPU where the “thinking” happens.

2. FPU (Floating Point Unit)

This is a supporting component of the ALU which performs the mathematical operations on floating-point numbers.

3. Registers

These are storage components inside the CPU where data and instructions are stored during the execution process.

The registers also store various statuses as needed by the execution process.

4. Control Unit

The control unit is like an orchestrator which controls the various steps that take place during the execution of instructions.

You can think of it like a manager who actually makes it all work inside the CPU.

5. Cache

The processors of today also contain cache.

This is an additional memory inside the CPU which is used to store instructions and data after fetching from the RAM.

The cache is kept filled with instructions and data that are considered to be most important for upcoming execution in the CPU.

This eliminates the fetching time from the RAM because the instructions are fed into the CPU from the cache which is already inside the CPU. In turn, this provides a boost to the overall computer performance.

Related: Does Each Core Have It's Own L1 & L2 Cache?

6. Front-side-bus
FSB

As you have seen, instructions and data are moving in and out of the CPU.

They are initially in the RAM and transferred into the CPU. In the CPU, the instructions are processed and the result is transferred to the RAM.

The front-side-bus provides the interface or the gateway for this flow of information.


What is Core in Computer?

Now that you have stood the basics of a computer program and CPU, we can now discuss what is core in computer.

major portion of the CPU is called the Core.

CPU_vs_CORE

Basic Diagram of a Quad Core CPU

The following two points explain to you what constitutes the Core within the CPU:

  • The components ALUFPURegistersControl Unit and Cache together form the Core of the CPU.
  • Other components of the CPU that are not considered part of the Core are higher level Caches and the front-side-bus.

The concept of Core is rather new in comparison to the time since CPU exists.

Computers have become faster over time and so much so that Moore’s law said as a result of observation, that the number of transistors inside the CPU doubles every two years.

Consequently, the computers became smaller and faster.

Then there came a time when the CPU speed reached a limit.

The Engineers had two options now:

  1. 1
    Multiple CPU on a Motherboard
  2. 2
    Divide a Single CPU into Cores
Multiple CPU

Now, using multiple CPUs had its own drawbacks because between each CPU, there was the front-side-bus, so the computer speed was limited by the bus speed.

Cores

A better way was to include multiple Core sections inside one single chip or die.

In this case, the chip was still like a single CPU with its power connection, mounting, heat-sink and front-side-bus but had multiple Cores.

This gave rise to Multi-Core CPUs which allowed greater computing speeds to be achieved.

Another important limitations of a single CPU ultra powerful processor was the heat generated and the issue of Context Switch Overhead. The basic idea is that a single CPU generated a lot of heat, consumed much more power, and suffered from bad multitasking efficiency.

Hence, CORE solidified its name and position as an integral part of a CPU.

Different processors have different amount of cores which you can read about here:


How Does the CPU or the Core Work?

The answer to the question “what is core in computer” would not be fully understood if you do not understand how a CPU Core works.

Of course there is a whole engineering degree based on this concept so going in depth is beyond the capacity of this article.

Let us look at what happens from a very high level.

As mentioned earlier a computer program is a set of instructions that perform the tasks for running the operating system and other applications on the computer.

The instructions are stored in the RAM and each instruction is stored at a particular memory address inside the RAM.

The instructions are read by the CPU, executed and the result is stored in the RAM.

Each Core in a CPU performs four basic functions during its process of executing instructions:

fetch decode execute
1. Fetch

Instructions are fetched by the CPU from the RAM.

2. Decode

The instructions are in Assembly language which are decoded into binary words (One’s and Zero’s) because the execution of instructions are carried out as binary operations.

3. Execute

The decoded instructions are executed in the CPU.

4. Write-Back

The result of the instructions is stored in the RAM

Together, the above 4 functions occurring in the same sequence are called the instruction cycle.

During execution of computer programs, the instruction cycles are repeated for every instruction in the program.

Each Core can handle the fetch and execute cycle. Therefore, the more cores you have, the more instruction cycles the CPU can perform.


The Instruction Word

The instruction word is the set of binary bits that represent an instruction.

Over the period of years, the length of the instruction word has varied. The basic idea is that a longer word results in quicker processing and faster execution.

Today’s processors generally support 32bit words or 64bit words.

Here, one point to be considered is that this advantage of longer word requires that the program code be written accordingly, otherwise it does not make any difference whether the CPU supports 32bit or 64bit instruction words.

Complex software that require a lot of calculation benefit from not just by the higher 64 bit architecture, but also by multiple cores.


The Clock Speed, Heat and Cores

The computer is a digital device. It works in binary ones and zeroes. These ones and zeroes are represented by electrical voltage pulses that have an extremely short duration, typically of the order of 1 to 2 GHz (Giga Hertz) or 1 to 2 billion pulses in one second (It can reach much higher magnitudes).

This is also known as the clock speed.

The greater the number of pulses per second, greater the clock speed and the faster the processing.

In other words, very fast CPUs have high clock speed.

One may come to think that in order to keep increasing the speed of computers, you just keep increasing the clock speed, but this is not the case after a certain limit.

Recall from earlier that a single powerful CPU can generate a lot of heat. Hence, the CPU is divided into Cores.

Each core has its own clock speed. So if you see a quad core CPU with a 3.0 GHz clock speed. It basically means that EACH CORE ON THE CPU has a clock speed of 3.0 GHz.


Conclusion

Here we briefly looked at the question: “What is Core in Computer”.

While a single article cannot do justice to this very difficult concept, we encourage you to read further.