[LinuxBIOS] DIMM Page Size
joe at smittys.pointclark.net
Wed Jul 11 20:24:26 CEST 2007
Quoting Myles Watson <myles at 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
> Sorry, that should have been 32K bits, since you are multiplying by 64 bits.
> Then dividing by 8 bits/byte = 4 KB.
>> > 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)
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
Thanks for all the help - Joe
More information about the coreboot