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
127
When the part is reset the SDRAM channels are put in power-down mode with the clock stopped and CKE
deasserted. Because CKE is deasserted all devices on the memory channel will place their outputs in a high
impedance state, this will prevent multiple bus drivers as the channel starts up. To initialize a channel software
must first start the clock by programming the
mc_clock_cfg,
then wait for 200us for the clock to stabilize
before giving the PDN_clr command to assert CKE. Next the DDR SDRAMs must be initialized (this also needs
to be done when exiting power down mode if the DLL has been disabled). The initialization sequence is
specified in the SDRAM data sheet, however the JEDEC recommended sequence should be a superset of all
manufacturer requirements. It is:
1
Precharge all banks (PRE).
2
Enable the DLL and set the appropriate output drive strength in the extended mode register (EMRS).
3
Reset the DLL in the mode register (MRS).
From this point no access other than the subsequent initialization steps (
through
) may be done for 200
memory cycles.
4
Wait for 2 cycles (tMRD).
5
Precharge all banks (PRE).
6
Issue two auto refresh cycles (AR, AR). (The JEDEC spec allows these to be done before the Precharge in
step
7
Configure the mode register for Normal Operation, appropriate CAS latency, Sequential burst and burst length
of 4. (MRS)
8
Once 200 memory cycles have passed since the DLL was reset, the SDRAM is ready for normal operation.
The reset initialization sequence is different for FCRAM from regular DDR parts. The memory controller will
not release the enable (CKE) when the PDN_clr command is used to start the clock, but waits for a PRE
command to be issued before it asserts CKE and automatically runs the address sequencing initialization
sequence for all chip selects. The sequence of commands needed is therefor:
1
Set DRAM type to FCRAM. This MUST be done first. This will start the memory clock on Mn_CLK.
2
Wait for minimum of 200us. This is required by the FCRAM which must have a stable clock for a minimum time
before being enabled.
3
Issue PDN_clr command. This asserts CKE and sets the DESL command with CS_L=1 BA[1:0]=00 A[8]=0
A[7]=1. This covers steps 1-6 of the standard FCRAM initialization sequence.
4
Issue PRE command. This will run the sequence starting from CS_L=1 BA[1:0]=00 A[8]=0 A[7]=1; CS_L=0
BA[1:0]=11, A[14:8]=1111111 A[7]=0 held for two clocks; CS_L=1 rest same for 4 clocks; CS_L=1 and change
BA[1:0] and A[14:7], hold for 4 clocks. This covers steps 6-9 of the standard FCRAM initialization sequence.
5
Set the Mode Register and issue EMRS command.
6
Set the Mode Register and issue MRS command.
7
Issue two auto-refresh commands (AR, AR).
8
Wait for 200 or 300 memory cycles (see FCRAM data sheet).
9
Do a dummy write to each bank of each chip select.
10
The device is now ready for normal operation.