[prev in list] [next in list] [prev in thread] [next in thread] 

List:       bluesmoke-devel
Subject:    Re: Supporting a new memory controller
From:       Joshua Wise <wise () sicortex ! com>
Date:       2006-07-07 20:51:22
Message-ID: Pine.LNX.4.64.0607071558170.26057 () gs107 ! sicortex ! com
[Download RAW message or body]

On Fri, 7 Jul 2006, Doug Thompson wrote:
>> We will have two DIMMs, each up to 2-rank (although 4-rank may be supported
>> at our discretion later). So, right there, each DIMM has 2 CSROWs. But, we
>> don't separate the DIMMs out at the top of memroy -- rather, we separate
>> them out by address bit 6. So:
>>
>> [     0MB]+0000000000000000 DIMM0, CS0
>> [     0MB]+0000000000100000 DIMM1, CS0
>> [     0MB]+0000000001000000 DIMM0, CS0
>> [     0MB]+0000000001100000 DIMM1, CS0
>> [...]
>> [memory/2]-0000000001000000 DIMM0, CS0
>> [memory/2]-0000000000100000 DIMM1, CS0
>> [memory/2]+0000000000000000 DIMM0, CS1
>> [memory/2]+0000000000100000 DIMM1, CS1
>> [memory/2]+0000000001000000 DIMM0, CS1
>> [memory/2]+0000000001100000 DIMM1, CS1
>
>> From that I would be more inclined to call bit 6 your channel selector.
>
> You have 4 CSROWs, and 2 "channels".
>
> In a real dual-channel system a CSROW covers both channels, making each
> row a double width item, that happends to cover over 2 DIMMs.
>
> I would approach it with the 4 CSROWs and 2 channels.
>
> might that make more sense?

Hmm.

I was thinking of calling them channels, but they weren't accessed in
parallel.

I think what I decided on was four CSROWs, but that they overlap, such that
dimm0.cs0.start = dimm1.cs0.start
dimm0.cs0.end = dimm1.cs0.end
dimm0.cs1.start = dimm1.cs1.start
dimm0.cs1.end = dimm1.cs1.end
BUT, dimm0.cs0.nr_pages = (dimm0.cs0.end - dimm0.cs0.start) / 2

That way, I accurately represent how much memory is in each CSROW, but I
also represent which pages might've gotten whacked by an error.

> right. You will just need to configure them so your address lookup works
> with them.

OK, I wrote an address to csrow routine.

Everything should work -- next is to test it out...

> It is basicly in its 2nd form. I  hope it is constant.  Items that
> sparked different viewpoints were removed, in the thought that the
> others were acceptable.

Excellent. Within the next few months, we shuld be ready to do a little bit
of userspace management.

Thanks for all your help. I'm pretty close now -- just need to do platform
devices for this stuff, and I'll be ready to go.

joshua

Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
bluesmoke-devel mailing list
bluesmoke-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bluesmoke-devel
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic