Each stage (PRE, RAS and CAS) takes approximately the same amount of time.
jmc
If you're wondering, as I was at this point in the lecture, why we're only pulling individual bytes from memory whereas we've always talked about memory as responding with whole cache lines, we're just developing the ideas from the ground up here. "Real" DRAM systems pull in whole cache lines, as shown later on.
shhhh
The whole cache line is still some portion of each row on each of the DRAM though, so the idea doesn't change much other than the fact that you are pulling the pieces of the cache line from multiple DRAM.
ask
The row buffer is analogous to a cache at the row-level. Whenever a byte is to be loaded, the entire row which the byte belongs to is brought into the row buffer through the precharge step. Subsequent byte accesses do not involve precharge steps if the requested byte is already in the row buffer, thus improving performance.
Each stage (PRE, RAS and CAS) takes approximately the same amount of time.
If you're wondering, as I was at this point in the lecture, why we're only pulling individual bytes from memory whereas we've always talked about memory as responding with whole cache lines, we're just developing the ideas from the ground up here. "Real" DRAM systems pull in whole cache lines, as shown later on.
The whole cache line is still some portion of each row on each of the DRAM though, so the idea doesn't change much other than the fact that you are pulling the pieces of the cache line from multiple DRAM.
The row buffer is analogous to a cache at the row-level. Whenever a byte is to be loaded, the entire row which the byte belongs to is brought into the row buffer through the precharge step. Subsequent byte accesses do not involve precharge steps if the requested byte is already in the row buffer, thus improving performance.