Quoting Myles Watson myles@pel.cs.byu.edu:
col = 9 /* SPD byte 4: Number of Column Addresses */ bus_width = 64 /* SPD byte 6: Data Width of Assembly */
page_size = (2^col)*bus_width
2^9 = 512
5184 = 81 * 64
512 * 64 = 32K
Myles
Sorry, that should have been 32K bits, since you are multiplying by 64 bits. Then dividing by 8 bits/byte = 4 KB.
Myles
Which is not correct because the DIMM has a 4k page size. (According to it's datasheet).
Your right, Duh I was doing 9^2 = 81 :-)
col = 9 /* SPD byte 4: Number of Column Addresses */ bus_width = 64 /* SPD byte 6: Data Width of Assembly */
bit_page_size = ((2^col) * bus_width)
*/ convert to KB */ page_size = ((bit_page_size / 8) >> 10)
= 4KB
Sweet, this is a much easier way to calculate the DRA ? DRAM Row Attribute Register!! One last question, A normal SDRAM DIMM should always have SPD byte 6 = 64 and ECC should have SPD byte 6 = 72. Is this correct??
Thanks for all the help - Joe