User Manual
BCM1250/BCM1125/BCM1125H
10/21/02
B r o a d c o m C o r p o r a t i o n
Document
1250_1125-UM100CB-R
Section 6: DRAM
Page
117
R
OW
, C
OLUMN
AND
B
ANK
C
ONFIGURATION
The memory channel can be structured in many different ways with many different types of SDRAMs on
different types of DIMMs and different DIMM counts per memory channel. In order to support such different
configurations, the assignment of the address bits for row, column, and internal bank selection are fully
software configurable along with the SDRAM timing parameters and operating modes.
Each memory channel is 8 bytes (64 bits) wide with ECC (8 bits), so the three lowest physical address bits play
no part in the memory addressing. The memory controller always accesses memory with a burst of four 64-bit
double-words, to access a full cache line. Therefore bits [4:3] of the physical address are always used as the
lowest two column address bits. (The SDRAMs count the burst internally, so the memory controller only ever
drives 00 on these two bits.)
shows the maximum number of address bits that can be used for the row, column and bank parts of
the SDRAM address. Each of the memory channels can theoretically address 4GB of memory (for a total of
8GB attached on a BCM1250). This comes from the number of RAS (13 or 14), CAS (12 or 11), bank (2), chip
select (2) and bytes in dword(3) = 32 address bits per channel. (The gigabit SDRAMs are mostly configured
with 14 row and 11 column address bits, to support these the extra A13 pin was added in PERIPH_REV3 of
the BCM1250 and on the BCM1125/H.) However, there are only four chip selects (hence the 2 bit equivalent
shown above) per channel, and four bit wide devices are not supported. The maximum size is therefore
achieved using four physical banks of 8 (or 9 with ECC) eight bit wide devices. Using 256Mb technology parts
this limits the total size to 1GB per channel or 2GB total. Using 512Mb parts this doubles and will double again
when the 1Gb DDR parts come out (reaching the theoretical maximum of 8GB).
The memory controller can use fast DDR parts (200 MHz clock). To work at this speed the signal trace lengths
between the controller and the memory devices must be carefully controlled, maintaining tight tolerances and
avoiding long stubs. Using a carefully chosen termination scheme DIMMs may be run at this speed.
Table 61: Address Bits Used by a Memory Channel
DRAM Address
Selected From
Comment
Row Address[13:0]
Row Address[14:0] (FCRAM)
Contiguous block of bits from
Address[34:10]
Regular SDRAMs have 13 row address bits (or 14
on BCM1125/H and BCM1250 PERIPH_REV3 or
later).
FCRAMS use WE_L and CAS_L as extra row bits.
Column Address[1:0]
Fixed to use Address[4:3]
Using 256 Mb technology parts only maximum of 10
column bits are used. For larger devices the JEDEC
standard requires that the column address is
presented on A[12:11,9:0] retaining the use of A10
as the auto pre-charge bit.
Column Address[12:11, 9:0]
One or two contiguous blocks of
bits from Address[20:7] and
Address[6:5]
Bank Address[2:0]
Contiguous block of bits from
Address[36:5]
Regular SDRAMs have only two bank address bits,
so only two bits should be set.
If three bits are set for bank address the top address
bit becomes BA[2] and is not used for row or column.
The top address bit is:
A[12] for SDRAM when the ram_with_A13 bit is clear
A[13] for SDRAM when the ram_with_A13 bit is set
A[14] for FCRAM
Chip Selects (4)
Address range decode or CS
Interleave selection
Only one chip select will be active (low) during an
access.