
177
7.5.8
Power-On Sequence
To use synchronous DRAM, the mode must first be set after the power is turned on. To properly
initialize the synchronous DRAM, the synchronous DRAM mode register must be written to after
the registers of the bus state controller have first been set. The synchronous DRAM mode register
is set using a combination of the
RAS
/
CE
,
CAS
/
OE
and RD/
WR
signals. They fetch the value of
the address signal at that time. If the value to be set is X, the bus state controller operates by
writing to address X + H'FFFF8000 from the CPU, which allows the value X to be written to the
synchronous DRAM mode register. Data is ignored at this time, but the mode is written using
word as the size. Write any data in word size to the following addresses to select the burst read
single write supported by the SH7604, a CAS latency of 1 to 3, a sequential wrap type, and a burst
length of 8 or 4 (depending on whether the width is 16 bits or 32 bits).
For 16 bits:
CAS latency 1
CAS latency 2
CAS latency 3
H'FFFF8426
H'FFFF8446
H'FFFF8466
For 32 bits:
CAS latency 1
CAS latency 2
CAS latency 3
H'FFFF8848
H'FFFF8888
H'FFFF88C8
Figure 7.27 shows the mode register setting timing.
Writing to address X + H'FFFF8000 first issues an all-bank precharge command (PALL) in the Tp
cycle, then issues a mode register write command in the Tmw cycle. When the TRP bit in MCR is
set to 1, a single idle cycle is inserted between the Tp cycle and the Tmw cycle.
Before setting the mode register, an idle time of 100
μ
s (differs by memory manufacturer) must be
assured after the power required by the synchronous DRAM is turned on. When the pulse width of
the reset signal is longer than the idle time, the mode register may be set immediately without
problem. At least the number of dummy auto-refresh cycles specified by the manufacturer (usually
8 must be executed). After setting auto-refresh, it is usual for this to occur naturally during the
various initializations, but to make sure, the interval at which refresh requests are generated can be
shortened only while the dummy cycles are executing. Because the address counter within the
synchronous DRAM is not initialized when auto-refresh is used during single read or write
accesses, an auto-refresh cycle must always be used.