Huh? I would think the limit on clock speed of a cpu using current technology is limited by the speed of an electron across the width of the die. If the CPU tries running faster than that, the CPU will have issues with clock skew, where one part of the CPU is running on a different clock cycle than another part.
/I am not pm, so take this with a giant grain of salt.
Well, that's the kindest thing that anyone has said about me (months ago) that I've read today.
Actually you can solve the clock problem with either a tree or a tree-grid so that all parts of the chip see the same clock at more or less precisely the same time no matter how big it is (within reason). Imagine if you have a central clock circuit that makes the clock signal for the whole chip then you have that output go through essentially a fractal tree-like shape so that the total length of the wire is the same no matter how far or close the end point is by having the longest paths take more or less direct paths and the shorter paths take a long and winding path that takes them to their destination such that the path is the same as the longest one... it just routed around all over the place. I worked on a clock tree like that for a monster-sized chip back a couple of years ago and wrote a paper about it (
http://ewh.ieee.org/r5/denver/sscs/Presentations/2005.03.Mahoney.pdf)
The other way to do it is to have the main clock driver circuit drive a tree of wires to another second set of secondary clock drivers which then drive a clock grid - which is like a screen door of squares of wires all tied together. This approach uses more power and takes up more metal, but it requires a lot less engineering work to do. But the result is the same - that more or less the clock arrives everywhere at the same time because of the tree-effect of the in the intermediate clock driver stage, such that the farthest and shortest paths all use the same effective length of wire.
Computational architectures stopped making significant evolutions about 20 years ago. Currently progress in this field is being driven almost entirely by consumer demands and product life cycle expectations; aka Intel's decision to hold off processor revisions based on profit cycles. It's not driven by science.
I disagree with pretty much all of the statements in this. First off, there have been lots of evolutionary changes in computational architectures in the last 20 years. OOE, uops, trace caches spring immediately to mind, and ones that don't achieve substantial market traction like Itanium had substantial changes to computing architecture. You can say that Itanium is "just VLIW" but that really doesn't encompass any of the real changes that were made to actually implement the design - like predication, the RSE and other changes. So, the idea that computer architecture has stagnated for 20 years seems ludicrous to me - how are CPU's improving IPC if there are no evolutionary improvements?
Second, I work for Intel and I have never seen the company say "well, we have this great design, but we aren't going to release it because if we don't sell it, we can make more money". That's like one of those internet conspiracies that don't even make sense - I see people say it but it never made any sense to me. If you have a CPU that is faster and better than everyone else, then you release it the second you can because people - and especially data centers - are willing to pay for performance and every day you wait is just lost opportunity cost while you wait for your competition to catch up with you and drive your pricing down. If you have a better design, it will only lose value over time. I know this personally from having VP's lecture me personally about this when we slip schedule on anything that I'm involved with.
And lastly, the idea that computer design isn't driven by science...? It's all about science. Everything in it is all about science, materials science, mathematics, chemistry and then electrical engineering and computer engineering and nowadays social sciences as well. I use the scientific method almost every day at work - I come up with hypotheses, design experiments, collect results, analyze the results, draw conclusions and then - with unfortunate regularity - undergo an aggressive form of peer review. My life revolves around science... sometimes too much - tonight my wife informed me that the scientific method is not suitable for determining our next kitchen table.
Patrick Mahoney
Enterprise Processor Division
Intel Corp.
* Not speaking as a spokesperson for Intel Corp. My opinions are my own. *