Concurrent RAM fetch?

  • Thread starter Robert Redelmeier
  • Start date
R

Robert Redelmeier

It's been a while since I've looked, but I know that CPUs and
Northbridges (RAM controllers) can have/queue many (4-12?)
outstanding memory fetches. Mostly to be able to combine them.

But how many memory fetches can be outstanding on the bus
to the RAM chips? Can the horrible fetch latency from one
memory address be overlapped with the latency from a far
different address? Does RDRAM or dual-channel help?

-- Robert
 
D

daytripper

It's been a while since I've looked, but I know that CPUs and
Northbridges (RAM controllers) can have/queue many (4-12?)
outstanding memory fetches. Mostly to be able to combine them.

But how many memory fetches can be outstanding on the bus
to the RAM chips?

As many ranks and banks as are available *and* that the chipset can manage.
Can the horrible fetch latency from one memory address be overlapped with the latency from a far
different address?

Sure - as long as the two fetches don't co-exist in the same bank.
Does RDRAM or dual-channel help?

"Dual-channel": afaik both channels are actually opened to the identical bank
& row, so that helps with bandwidth but doesn't improve open-bank "hits".

RDRAM: don't know if they finally went a four-bank design to cut die costs,
but at one time iirc RDRAM could have as many as 32 open banks at once -
subject to chipset capabilities...

/daytripper
 
R

Robert Redelmeier

daytripper said:
As many ranks and banks as are available *and* that the chipset can manage.

Oh, now we get in to that slippery word "bank".
How many are "typical" on say a 128MB SIMM or a 512 MB DIMM?
Sure - as long as the two fetches don't co-exist in the same bank.

How are the banks laid out in RAM? Sequentially (1=0-32, 4=96-128MB),
or interleaved on physical addresses? What about multiple SIMM/DIMMs?
"Dual-channel": afaik both channels are actually opened to the identical bank
& row, so that helps with bandwidth but doesn't improve open-bank "hits".
Clear.

RDRAM: don't know if they finally went a four-bank design to cut die costs,
but at one time iirc RDRAM could have as many as 32 open banks at once -
subject to chipset capabilities...

Whoa! Doesn't more open banks mean more heat?
Small wonder they needed heatsinks.

Thans for your reply,
-- Robert
 
D

David Wang

Oh, now we get in to that slippery word "bank".
How many are "typical" on say a 128MB SIMM or a 512 MB DIMM?

There used to be just one bank of DRAM arrays inside of each DRAM
chip, so when you lined them up in parallel, you had "1 bank" of
DRAM chips. The terminology rank into problems when SDRAM came along,
and they have 2 or 4 banks per chip. So now when you lined up a
bunch of SDRAM chips, you have 1 "bank" of DRAM chips, and you
have 4 "bank" of DRAM arrays inside of that 1 "bank" of DRAM
chips. It gets to be a bit dizzying after you read some
chipset/motherboard manuals.

We now refer to the "bunch of chips lined up to behave as a
single bank of memory" as a "rank" of DRAM chips, and each "rank"
has 2, 4, 8 or 32 banks of DRAM arrays inside of them.

Each SIMM can have 1 or 2 ranks, but since you only have FPM or
EDO on SIMMS, each rank only has 1 bank per rank.

Each DIMM can have 1 or 2 ranks. Each SDRAM/DDR device has 4
banks per rank, so 4 or 8 ranks per DIMM.
How are the banks laid out in RAM? Sequentially (1=0-32, 4=96-128MB),
or interleaved on physical addresses? What about multiple SIMM/DIMMs?

Depends on the chipset. You can take a look at Intel's chipset
manuals, and some of them tell you how the physical address bits
are mapped to the DRAM address bits.

Rank id's are usually mapped to the very high range of the physical
address. It's a very in-effective way to utilize bank-rank parallelism,
but the problem is that the number of ranks is variable depending on
what the end-user sticks in their machine. That's why the rank_id is
mapped to the high range.


They did, and I think Samsung has shown such a device operating at
1.6 Gbps, which is quite good, and CAS is down to ~20ns or so...
Not that it matters any longer.
Whoa! Doesn't more open banks mean more heat?
Yes.

Small wonder they needed heatsinks.

They need heat sinks/heat spreaders for a slightly different reason
than the CPU's.
 
D

David Wang

David Wang said:
We now refer to the "bunch of chips lined up to behave as a
single bank of memory" as a "rank" of DRAM chips, and each "rank"
has 2, 4, 8 or 32 banks of DRAM arrays inside of them.
Each SIMM can have 1 or 2 ranks, but since you only have FPM or
EDO on SIMMS, each rank only has 1 bank per rank.
Each DIMM can have 1 or 2 ranks. Each SDRAM/DDR device has 4
banks per rank, so 4 or 8 ranks per DIMM.

This should read 4 or 8 banks per DIMM.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top