The electrons certainly will NOT have had enough time. You mean (as I'm sure you know actually, but in case other readers might not) the electric field may not have had enough time to propagate. The electrons themselves travel at order of fractions of a millimeter per second.
Yes - an important distinction; I was being sloppy.
I'll try to clarify this for people interested in the OP's question. In a CPU, binary signals are represented by voltage levels. The clock signal is a square wave at a particular frequency: it's a signal that alternates between 0 and 1, or more specifically, between the two voltages chosen to represent 0 and 1, such as 0.5 V and 2.7 V.
Suppose you have a long copper wire. On one end you attach a clock generator. On the other end you attach some piece of equipment (like an ALU) that needs to "see" that clock in order to do something (like add two values). The clock generator will alternately increase and decrease the voltage at the first end of the wire to represent a 0 and a 1. But how does that voltage "move" from the clock generator to the CPU?
The copper wire is full of charge carriers (electrons). Most of the time they're just bouncing around randomly, not really going anywhere. And most of the time they all have the same energy. Suppose the clock generator increases the voltage at one end of the wire by stuffing more electrons into the wire. More electrons bouncing around near the start of the wire means more voltage at that end.
The "pressure" of these electrons all bunched up at the start of the wire forces all the electrons in the wire to start drifting towards the other end. Eventually the electrons are evenly spread again, but now there are more electrons in the wire, so the voltage at both ends (and everywhere in between) is higher. The ALU at the end of the wire now "sees" the same voltage that the clock generator "created" at the start of the wire.
Unfortunately, it takes a very long time for this drift to balance out the voltage in the wire. The clock generator would have to increase the voltage (to signal a rising clock edge) and then wait entire seconds for the electrons to finish drifting towards the ALU. If it didn't wait long enough, parts of the CPU that are closer to the clock generator would "see" the new voltage before the ALU. For example, the CPU might alert the motherboard that an answer is ready before the ALU even gets the signal to start computing! Different parts of the CPU would no longer be in sync and everything breaks.
So if it takes such a long time for voltage to propagate from one end of a wire to the other via electrons "bunching up" and drifting, how can CPUs operate so quickly? It turns out that there is another physical phenomenon at work other than drift. When the electrons at the start of the wire start drifting they actually cause the electrons at the end of the wire to start drifting
almost immediately. We
don't have to wait for the "bunching up" and drift to stabilize.. everything starts moving nearly at the same time.
This happens through the instantaneous generation of an electromagnetic field, which itself moves through the wire at the speed of light. In other words, we don't have to wait for the drift to "ripple" through the wire. The fact that electrons at one end are moving causes electrons at the other end to start moving almost immediately. This means that the ALU "sees" the new voltage almost immediately after the clock generator establishes it. In fact, the electromagnetic field propagates so fast that it doesn't really matter whether some parts of the CPU are close to the clock generator or far away. They all "see" the new voltage almost at the same time. The clock generator doesn't have to wait very long to ensure that everybody "sees" the new voltage level.
For the first 30+ years of CPU design that worked fine, because the electromagnetic field transmits voltage changes ludicrously fast.
But is it fast enough? The speed of light is approximately 300 million meters per second. Suppose the ALU is 3 cm away from the clock generator. How long will it take for the voltage at the clock generator to propagate to the ALU? If we had to wait for the electron drift to stabilize it could take tens of seconds! The electromagnetic field, propagating at the speed of light, takes only (3 cm) / (300 million m/s) = 100 picoseconds to propagate the new voltage. This means that the clock generator must wait at least 100 picoseconds between clock edges to ensure that the ALU "saw" the new clock edge. 100 picoseconds between edges means 200 picoseconds per clock cycle, or a clock speed of 5 GHz. That's not much higher than current clock rates!
In summary, the electrons themselves move very slowly through the CPU. Too slowly to be useful in propagating voltage changes. The clock rate would have to be really, really slow if we had to wait for electrons to slowly drift from one part of the CPU to another to transmit voltage levels around. Luckily, we don't have to wait that long, because the electromagnetic field propagates voltage changes at the speed of light. However, even the speed of light incurs a slight delay between the time that different parts of the CPU "see" a new voltage. The clock generator must wait for every part of the CPU to see the previous voltage level before sending out a new one. If the furthest part of a CPU is 3 cm away from the clock generator, this means a maximum clock rate of 5 GHz.
Now in reality, the clock generator does not actually have to wait for all parts of the circuit to "see" the previous voltage before sending out the new one. It's possible to use a clock rate that is too high, so long as you never incur bugs (like telling the motherboard an answer is ready before you've computed it). Large CPUs with very high clock rates (like modern x86 chips) have clock skew, but work anyway, thanks to clever techniques to clock distribution.
TL;DR: Koshling makes the important point that electrons in a CPU move very slowly, but the voltage at different points propagates at the speed of light because it is the electromagnetic field, not electron drift, that transmits new voltage levels (like a clock signal) from one part of a CPU to another. Oric's point (that CPU size limits clock rates) is still valid, because clock rates have reached the point that the speed of light no longer seems "instantaneous".
Note: I was somewhat intentionally vague and clumsy in this description. The exact nature of electrons "bunching" and "bouncing" and "drifting" is not as simple as I made it seem, and I completely ignored the definitions of voltage and current and the connection to potential energy, charge, and flux. But hopefully this description was accurate enough to explain clock skew and the connection between CPU size and clock rate.