Instruction manual
To configure memory, perform the following:
1. Read the MCR to determine sizes of memory SIMMPairs. Each bit in the
MCR shows whether a SIMMPair is 16 or 64 MB.
1
(See Section 3.2.3.)
2. Read the MCR to find out the possible maximum address of contiguous
memory. For example, if MCR<3:0> = 1111, the maximum amount of
contiguous memory is 256 MB; if MCR<3:0> = 0011, the maximum amount of
contiguous memory is no greater then 160 MB but could be as low as 128 MB.
(See Section 3.2.3.)
If MCR<3:0> have trailing 0s (for example, 1100) memory configuration rules
have been disregarded: the larger SIMMPairs have not been installed in the
lowest-numbered slots and gaps have been left in memory.
3. Determine memory size.
The following steps determine size within 8 MB of accuracy. If you need more
accuracy, use smaller increments in the write/read process.
a. Write unique patterns into memory at every 8-MB address boundary
starting from address 0 to the maximum address number of contiguous
memory. (The smallest size of a bank is 8 MB.)
Because the hardware returns whatever data is located on the system
data bus if an access is performed to a non-existent SIMM, unique write
patterns ensure that the last data pattern left on the bus is not interpeted
as correct data.
b. Read back every written location starting at 0. The separation between
read and write operations ensures that the data is transferred from cache
to memory, rather than remaining in the Bcache.
c. Once accesses reach the maximum address of real memory, read data does
not match written data.
1
The information on the SIMMPair is not sufficient to determine the presence of memory.
If a SIMMPair is not installed, the MCR bit is nonetheless 0, indicating a 16 MB
SIMMPair. Still, reading the MCR rules out the existence of a 64 MB SIMMPair.
3–6 TURBOchannel I/O Registers