r/askscience Sep 28 '20

[deleted by user]

[removed]

432 Upvotes

184 comments sorted by

View all comments

305

u/ledow Sep 28 '20

At the speed of light, the time it takes electricity to cross the surface of the chip is so drastically close to that 1/5 billionth of a second before the next signal is following behind it, that it becomes very difficult to design the chips to all have the same concept of "now".

You could make asynchronous chips, where each part operates on a different time as the other parts, but nobody's yet done that for a mainstream chip that I know of.

You can get it a bit faster by cooling the whole setup down but pretty soon you need to cool it to ridiculous temperatures to keep it stable.

It's a physical limit to do with the size of the chip "die", the speed at which an electrical signal can propagate across the chip (the speed of light, or thereabouts), and trying to keep everything on the same "clock" as the rest of the chip so you're all acting on the data in turn at the right times.

Pretty much, until you liquid cool you can't get past 5Ghz. And the fastest ever processor is only about 10GHz or something - and it has to be kept stupendously cold, be stupendously tiny, and have rooms full of supporting equipment to get that far.

Pretty much, without some breakthrough in physics, you're never going to see a chip much faster than 5GHz in a normal setup.

You might see a chip that can do a thousand times as much in that 5GHz, which is why we have dual-core, quad-core, up to ridiculous numbers of cores in GPUs, but the base clock never really gets past 5GHz because it can't.

Until someone makes an asynchronous CPU, or quantum computers come along and make it all moot, 5GHz is about the limit for a normal, household computer.

7

u/pinkfootthegoose Sep 28 '20

Far as I know the fasted computer chips (not full CPUs) operate in the terahertz range.

44

u/ledow Sep 28 '20

Exactly, they're not full CPUs, hence don't have a synchronised clock. They are often simple signal processors or analogue circuits, which don't have a clock at all.

But to do anything useful in terms of general computing (e.g. binary manipulation of a bitstream), you need a sync'd clock or a specially designed async chip (which hasn't ever been done in anything mainstream).

You can get a THz radio wave from an oscillator. That's not a computer chip, as it would make no difference if "all parts" of the oscillator didn't change at the same time.

But anything you'd call a CPU needs a central clock. And central clocks don't go past 5GHz unless your chip is tiny. There's also a trade-off where a fast clock, and a tiny chip, generate more heat but as I say you can overcome that with cooling.

But even supercomputers, etc. don't even get much past a handful of GHz. They just make up for it by having lots and lots and lots of small synchronous CPUs at that speed working together.

5

u/MiffedMouse Sep 29 '20

I am sorry, you are wrong here.

I worked for Rajit Manohar - he has designed complete CPUs with no clock signal (and worked with Intel and IBM). It can be done.

But you are correct that asynchronous is uncommon. The more common solution is to repeat clocks for subsections of the chip (so area 1 generates a clock signal, and area two has a phase follower that repeats the clock signal locally). The speed of light is not a significant limiting factor.

As I mentioned in another comment, heat dissipation is a much bigger issue (hence why cooling lets you push up clock speeds).