How does two dimms per channel work?
There's two memory channels ... in which you can have single rank , dual rank or even quad rank memory sticks (if the memory controller supports quad rank memory sticks)
Single Rank vs Dual Rank vs Quad Rank :
The ram stick is designed to receive or transmit 64 bits at a time to/from the processor. Well, 72 bits if you include ECC data, but for common desktop memory, we're talking 64 bits.
The tiny memory chips that are on the ram stick are designed to output either 4 bits or 8 bits at a time, these days chips that output 8 bits at a time are the most common.
So, in order to put 64 bits on the contacts of the ram stick, you need to have a multiple of 8 ram chips. If you use 4 bit ram chips, then you need 64/4 = 16 ram chips on the memory stick, so you'll have a single rank ram stick with 16 memory chips on it, probably 8 on each side.
If you use 8 bit ram chips, then you need at least 8 ram chips. Manufacturer can then use either 8 or 16 ram chips to make the ram stick, so you could have a Single Rank ram stick with 8 ram chips on one side, or you could have a Dual Rank ram stick, with 2 groups of 8 ram chips. (quad rank sticks would use 32 chips, 4x8 chips)
The thing with Ranks is the processor can only work with a rank at a time, it can't read or write from both ranks at a time.
But, it can do a think called interleaving.
Basically each time the processor wants something, it has to tell the ram chips : Guys , I want data at this position in your ram chips, get prepared to give this data to me.
Then, it takes a few nanoseconds for the ram chips in that rank to be ready to put the data on the ram stick pins, 64 bits at a time.
The processor can take advantage by this by sending a "get ready to give me data" to a rank right before it starts transferring data from another rank, for which it previously already sent the request to read or write data.
By the data the processor is done reading from that rank, the other rank spent those few nanoseconds preparing to send data and the processor can switch between ranks right away, without having to send the "get ready to transfer" command and wait nanoseconds doing nothing.
So dual rank ram sticks can give you a very slightly performance increase compared to single rank sticks, because with single rank sticks, every time a transfer is done, the processor has to send that "get ready to transfer" command and wait for the ram chips to being that transfer. With dual or quad rank, it can "chain" / interleave those "get ready calls" and skip on waiting those nanoseconds of time.
When you put two ram sticks on same channel, the memory controller basically treats each ram stick as if they're separate ranks ... it knows the capacity of each ram stick on that channel and only enables the ram stick rank it wants to talk to.
-
With dual channel, the processor takes advantage of having two sticks, one in each channel, or four sticks , two in each channel, to transfer data to and from memory 128 bits at a time (2 x 64 bit transfers).
It still takes time (nonoseconds) for the "get ready to transfer command" to be "processed" by the ram chips, but once that's done the processor gets 128 bits at a time, 64 bits from each memory channel. This way, it receives the desired data twice as fast.
Of course, you get most benefit when dealing with large amounts of data, because otherwise those nanoseconds of waiting time each time the processor has to send that "get ready to transfer" command can not be reduced.
For example, let's say it takes 10 ns to get ready and 4 ns to send 512 KB of data. With dual channel, it would still take 10ns to get ready, but each channel will transfer half (256 KB) in 2ns, so overall it takes 10+2 = 12 ns instead of 14ns to transfer this data. Dual channel in this case doesn't get you twice the speed, but it is a bit faster.
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now