The race to 1GHz was only the beginning of a gigahertz war between Intel and AMD, and before long, processors had doubled, tripled, and even quadrupled in frequency. It seemed like we were destined to be using 10GHz processors by now, so why aren't we?
As you might imagine, heat is a problem. Faster frequencies generate more heat, which is why you see professional overclockers using liquid nitrogen when attempting to push clockspeeds to new heights. Of course, using LN2 is not practical.
In a blog post on Intel's Developer Zone, Intel's Victoria Zhislina gets into the technical nature of CPU design and why frequencies are no longer being pushed increasingly higher like they once were.
"The main limitation is found in the conveyor level, which is integral to superscalar structure. Functionally, every execution of a processor’s instruction is divided into several steps... These steps follow each other sequentially, and each is executed on a separate computing device," Zhislina explains.
The above diagram outlines a simplified series of steps, broken up by clock ticks. By the beginning of the second tick period (t2), the first step has completed and the second step can begin on the second device.
"What does this have to do with frequency? Actually, different stages can vary in execution time. At the same time, different steps of the same instruction are executed during different clock ticks. Clock tick length (and frequency as well) of the processor should fit the longest step," Zhislina says.
Here's another diagram that shows this:
With this setup, there is no advantage to setting the clock tick length shorter than the longest step—It's technically possible to do so, but won't result in any processor acceleration.
"Suppose that the longest step requires 500 ps (picosecond) for execution. This is the clock tick length when the computer frequency is 2GHz. Then, we set a clock tick two times shorter, which would be 250 ps, and everything but the frequency remains the same. Now, what was identified as the longest step is executed during two clock ticks, which together takes 500 ps as well. Nothing is gained by making this change while designing such a change becomes much more complicated and heat emission increases," Zhislina explains.
A faster frequency will speed up the initial execution. However, this will cause delays further on down the line, so nothing is really gained. According to Zhislina, the only way to raise the frequency is to shorten the longest step.
Unfortunately, there are not many ways of doing that right now. One way is to develop a more advanced technological process that reduces the physical size of the components. That makes the processor faster since the electrical impulses travel shorter distances, and also because there would be a reduction in transistor switch times.
"Simply stated, everything speeds up uniformly. All steps are shortened uniformly, including the longest one, and the frequency can be increased as a result. It sounds quite simple, but the way down the nanometer scale is very complicated. Increased frequency depends heavily on the current level of technology and advances cannot move beyond these physical limitations," Zhislina says.
Even so, there are constant efforts to achieve this very thing, and as a result we see a gradual increase in core CPU frequencies.
There's plenty more to digest. If you have some spare time, hit the blog and give it a read.