notice:
I'm sure someone asked something along those lines, but no matter how I say it, I can't seem to find a definitive answer
Question:
Does the RAM get some kind of indication of how much data the CPU needs or if a certain amount of data is available, and if the CPU needs more it has to call again (and how much is this specified amount of data)?
During a cache error, the CPU needs at least a single cache line (32, 64 or 128 bytes). Does the CPU have to poll the RAM multiple times to obtain a single cache line (assuming the specified amount is 8 bytes), or does the RAM return more data per call, or can the RAM be notified in some way of how much data it needs become?
I am aware that the CPU will most likely call more than a single cache line to avoid the tedious request from RAM if more data from the same block of memory is needed in the future.
Extra points:
If you know and have more information, I would also be interested in the following extras:
- If this differs depending on the brand of CPU (generation differences can also be interesting, but if you add information about them, please skip similar generations).
- If this differs depending on the type of RAM
- How the CPU can request a cache line or block size of different sizes (only applies if the RAM returns a fixed size that corresponds to the size of a block or a cache line)
- Any other useful relevant information or resources for further reading