So I understand the basic principle that RAM timings dictate how many clock cycles must pass between when a CPU requests data from the RAM and when the RAM actually responds. But what I dont understand is why the RAM waits at all, why cant it react immediately? Furthermore, why is it possible to artificially force the RAM to respond faster by lowering the timing settings? Last, if we know the CPU has to wait for the RAM to respond to a request for data, why cant the CPU "work ahead" and request the data in advance to make up for the latency? I think I know the answer to the last question, but I'll wait for an explanation anyway to make sure I am correct.