[LinuxBIOS] DIMM Page Size

Joseph Smith 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
>>
>> 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




More information about the coreboot mailing list