The Author Online Book Forums are Moving

The Author Online Book Forums will soon redirect to Manning's liveBook and liveVideo. All book forum content will migrate to liveBook's discussion forum and all video forum content will migrate to liveVideo. Log in to liveBook or liveVideo with your Manning credentials to join the discussion!

Thank you for your engagement in the AoF over the years! We look forward to offering you a more enhanced forum experience.

314192 (3) [Avatar] Offline
#1
The introduction says "the single-processor CPU has nearly reached the speed of light". I cannot help wondering what that means. Would it please be possible to add an explanation?


Riccardo Terrell (31) [Avatar] Offline
#2
This is a good question, I am trying to answer but I might have to think about a little further.
The speed of the light for electric transmission, like the signals in the CPU, is the absolute physical limit, since no data propagation can be transmitted faster than the light medium.
Modern chips have a base cycle frequency of roughly 3.5 GHz. That's 1 cycle every 1/3,500,000,000 seconds, or 2.85 nano seconds. The speed of light is about 3e8, which means that data can be propagated around 0.1 meters per cycle. That's roughly 3.8 inches, but the bigger the chip the longer it takes for data to travel through the chip, we need small CPU to have speed (the smaller the faster). In fact, even if the electric signals in a CPU were moving at the speed of light, a chip running above 5GHz wouldn't be able to transmit the information from one side of the chip to the other due to the size of the chip. Is like the chicken egg story.

I hope it is clearer. I will add a note to the chapter in the book to explain this quote.
Riccardo Terrell (31) [Avatar] Offline
#3
I found this that provides a good answer [http://www.physlink.com/education/askexperts/ae391.cfm]

For all practical purposes, electrical signals travel at the speed of light. Let us take an example: Assume a processor which works at 1GHz. This means one billion clock cycles per second. This also means one clock cycle takes one billionth of a second, or a nanosecond. Light travels about 30cm (about a foot) in a nanosecond. So, the size of circuitry involved at such clock speeds better be much less than (at least 1/10 of) 30cm. So, your maximum circuit size is 3cm. Taking into account that the actual CPU core size is less than 1cm a side, we are still in safe waters.

Remember that this was for 1 GHz. If the clock speed is increased to 100GHz, a cycle will be 0.01 nanoseconds, and signals will only propagate 3mm in this time. So, your CPU core will ideally need to be about 0.3mm in size. It is quite hard to cram a CPU core into such a small space. So, we're still in safe waters, but somewhere between now and 100GHz, we're going to hit this physical barrier.

What happens when this size limitation is violated? What happens is that certain parts of your circuit are in the 'current' cycle, and other parts are in the 'previous' cycle. It gets really hard to handle such distributed systems. Then in design, you'll have to handle delays in signal propagation, circuit shape starts playing a strong role in design. In fact, it becomes more like separate processors than a single processor.