Introduction

This article serves as an introduction to the concept of Quantum computing. It begins by explaining the role of Classical Computers in order to provide a foundation for understanding Quantum computers. Computers are a part of our daily lives and encompass a wide range of devices, from smartwatches to supercomputers, all of which contain microprocessors or microcontrollers.

As a point of reference for discussing classical computers, please remember the following simple 4-digit code: 8421. This code will be used to unlock a perspective on classical computers.

Classical Computer:

Classical computers, also known as classical or conventional computing systems, have been in use for several decades. These traditional computers process information using bits, which are binary units of data represented as 0s and 1s. They rely on the principles of classical physics to perform computations.

Bulb and switch:

To understand the working of classical computer, lets take a switch, bulb and a battery.

It doesn’t matter if you don’t understand the circuit here. However, we know that whenever the switch is turned off, the light bulb will not glow. - lets name this state as state 0

representation of bulb in off state

When the switch is turned on, the bulb glows- lets name this state as state 1

representation of bulb in on state

The bulb can be turned on or turned off in an instance. For making it easier, lets put the state in a table:

Switch State
on 1
off 0

Lets now add another bulb so that when I turn on/off the switch, two bulbs turns on/off.

Now when we know that when the bulb turns on, it is state 1 and when it is turned off, it is state 0. Lets modify the above table as:

Switch State
on 11
off 00

Since we have two bulb, we have two state. Lets modify the above circuit so that each bulb has an switch. so that I can turn on/off one bulb individually and I am also increasing the number of bulb to 4. So it looks similar like this:

From the above gif, you can see that I have 4 bulbs each having its own switch. So now I can individually:

  1. Turn on each bulb
  2. Turn off each bulb
  3. Turn on all bulb at once
  4. Turn off all bulb at once
  5. Turn on only one bulb
  6. Turn off only one bulb

and if you list down all the probability, we get 16 probability. For simpler understanding, lets put few of them in the table that we have created before.

Since we have 4 bulbs, lets name each of them. Remember the pin that asked you to remember- 8421, lets use this to name the bulbs

Bulb one - 8 Bulb two - 4 Bulb three - 2 Bulb four - 1 Result Addition
0 0 0 0 0
0 0 0 1 1
0 0 1 0 2
0 0 1 1 3
0 1 0 0 4
0 1 0 1 5

From the table above, we can easily understand that 0 represents the off state of the bulb, while 1 represents the on state. So, if I only turn on bulb four, which is represented by the number 1, the result will be 1. Similarly, if I turn on bulb three and bulb four, which have representative codes of 1 and 2 respectively, the result will be three.

By flipping the switch on and off, we can continue this pattern up to 16. When we examine why the bulb turns on or off, we can see that when the switch is turned off, it blocks the current and there is no voltage difference. However, when the switch is turned on, it allows the current to flow, creating a voltage difference and causing the bulb to glow. In our case, this is represented by 0's and 1's.

This is why we say that computers only generate and understand 0's and 1's. They simply turn switches on or off. The switches are located in the microprocessor, and the bulbs turning on or off represent the data that the computer generates.

How fast can you flip a switch?

Now we know that microprocessors have switches that can be flipped on or off, producing 0's and 1's. But in order to understand the type of switch these processors use, let's first examine the switch we use to turn a bulb on or off. I'm sure you have used a switch at your home or workplace today.

You can turn on a switch now and you could create 1 and turn it off to create a 0. If you have 4 switches, you could apply the code 8421 to generate number from 0-15. But the question here is, how fast could you generate them. It depends on how many fingers you use to flip the switches.

Lets assume you are using on finger to toggle 4 switches one by one, so it takes 4 seconds to turn them on - 4 seconds to create data. If you use 4 fingers at the same time to flip them, it takes 1 second turn them on - 1 second to create data. Faster you flip the switch, the more the data you generate in a less time. This is important to a microprocessor since one factor that makes a processor faster is IPC - Instruction Per Cycle. In our switch and bulb case IPC is the time taken you to flip a switch to turn on and turn it off. One point that you should remember is the word per cycle in IPC is the time taken to turn on and off. when you turn on an switch and turn of an switch in 1 second the IPC is 1. If you are faster enough to turn on and off the switch 2 times in 1 second. Then the IPC is 2.

You can flip a switch on and off within 1 seconds if your brain signal is fast so that it could communicate with the finger to flip it faster. Have you seen people who are above 70-80. If you watch them flipping the switch on/off, they take much time since the brain signal is weak.

So faster the signal >> faster the fingers >> faster the fingers >> faster the amount of 0’s and 1’s produced and faster the IPC.

Getting more IPC - Creating faster signals

Imagine your brain giving you a crazy signal to your fingers so that you flip the switch on and off 10 times per second. The amount of 0’s and 1’s you generate are also becomes higher.

when you turn on an switch and turn of an switch in 1 second the IPC is 1. If you are faster enough to turn on and off the switch 10 times in 1 second. Then the IPC is 10.

The speed of signal in which it could turn on and off within a second is measured in Hertz (Hz). When you could flip a switch 10 times on and off within 1 second, it is 10 Hertz. If you could only flip the switch on and off 1 time per second then it is 1 Hertz. Remember that it always should complete one cycle i.e., turn on and off in 1 second.

  1. So faster the signal >> Higher the hertz.
  2. Higher the hertz >> Higher the 0’s and 1’s.

To obtain faster cycles, we need to increase the signal that our brain gives to our finger. So to address this, we can introduce a high frequency(higher signal generator) called as Quartz crystal.

Quartz is a… lets say a magical crystal which can produce 300 Hertz ( which is equal signal to turn on and off a switch 300 times per second). So now we can take some rest so that we don’t need to keep on flipping the switch on and off to generate 0’s and 1’s. Now we have solved the problem of creating higher signal to turn the switch to flip on/off with a greater speed.

Quartz crystal oscillator

Deep dive into switch

Now as we have high speed signal to turn on and off the switch (Quartz crystal), we have created a problem here. The switches cannot understand Quartz crystal. It only understands physical flips. We need to physically touch a switch to flip it on. It cannot do it by itself. Is it the only problem? No:

  1. It is too large
  2. It has metallic and moving parts in it
  3. Moving part does not las longer - especially turned on and off 300 times per second
  4. Since it has moving part, it is slow in switching

So here is where we eliminate the switch that we use everyday and introduce a device called Transistor. This understands the signal from Quartz and also:

  1. Can be smaller in size - worlds smallest transiter is 1nano meter small
  2. It doesn’t have moving part
  3. It can switch faster

Transistor

Now if we put 300 Hertz Quartz and transistor together, It can generate 300 1’s and 300 0’s within a second. Now imagine the amount of data it could generate.

Remember that we introduced 4 bulbs. Now do the same with transistors. Now its 300*4 1’s and 300*4 0’s in one second. There’s more to it. Lets take an intel i3 processor.

Its package size is~37.5mm x 37.5mm. If a transistor size is 1nano meter, image the amount of transistor that an i3 processors hold. An Skylake i3 6100 contains 1,400,000,000 transistors (1.400 billion) transistor. If i turn all the transistor on and off for one second, it gives me 1.400 billion 0’s and 1.400 billion 1’s in a second. Do you remember that we constructed a small table with 8421 to calculate number from 0-16? Imagine what can be calculated using this i3 processor.

There is more to it. i3 processor gets its signal from a 3,500,000,000 Hertz Quartz. Now if we do the math, It could produce 3,500,000,000*1,400,000,000 of 0’s and 1’s in a single second. If you open your property tab on your computer and if it says base speed: 3.60 Ghz, it has 3,500,000,000 Hertz Quartz crystal which is giving the signal to it.

Conclusion

This applies for all processors from smart watch, smartphones, PC’s to Supercomputers. To summarize, Quartz is the brain signal, Transistors are the brains. Faster the signal, faster the brain works. Faster the brain works, more the things that we do. This is how a Classical computer works, just 0’s and 1’s which are converted to human readable formats using Classical computing. One major thing to remember is, it is 0’s and 1’s - two states thus called binary.

Classical computers have a memory circuit operating on “bits.” A bit is a binary piece of information, valuing 0 or 1.

Even now, if you are reading this article, There are billions of switches turning on/off to deliver this content on you screen.

This will be the start of our journey to Quantum computing.