Instruction manual

4.1 Memory Configuration Registers
Memory configuration registers (1.C220.0000-1.C227.FFFF) are used to specify
memory SIMM sizes and control which bank of RAMs is accessed on a memory
read or write operation. The registers are accessible by the console and by the
operating system through both I/O read and write operations.
The console must determine the size of each bank and write the correct
information to the MCRs at boot time. After that, the operating system need
read these registers only when errors occur in order to determine the memory
configuration.
RAM banks, which do not have to be located in physically adjacent slots, are
arranged:
Model
Max. Logical
Banks RAM Size
Bank
Size Max. Memory
500/500S/500X/800/900 8 256Kx4 8 MB 64 MB
500/500S/500X/800/900 8 1Mx4 32 MB 256 MB
500/500S/500X/800/900 8 4Mx4 128 MB 1 GB
400/400S/600/700 4 256Kx4 8 MB 32 MB
400/400S/600/700 4 1Mx4 32 MB 128 MB
300/300L/300X/300LX 8 1Mx4 8 MB 64 MB
300/300L/300X/300LX 8 4Mx4 32 MB 256 MB
The MCRs (one for each bank) contain information that maps the address
referenced by a memory read or write operation to the appropriate bank. If the
address is identical with a valid address in an MCR, the appropriate bank is
accessed. Only one bank is be accessed at a time.
Regardless of how the banks are positioned physically, they must be positioned
in address space such that the largest banks occupy the low order of the address
space and smaller banks the higher addresses.
4.1.1 Operation
Each MCR has two halves:
Compare half (address bits <29:23>
The compare bits represent the base address of a bank and are XNOR’d with
the address. If all the bits are equal, or if a mask bit is set in a position
where the compare failed, the address is identical with a valid address for
that bank.
Stated in logic, this description reads:
Hit = (A<29> xnor C<29>) * (A<28> xnor C<28>) * (A<27> xnor C<27>) *
(A<26> xnor C<26> + M<26>) * (A<25> xnor C<25> + M<25>) *
(A<24> xnor C<24> + M<24>) * (A<23> xnor C<23> + M<23>)
where: A = address, C = compare, M = mask.
4–2 Address ASIC Registers (400/500/600/700/800/900 Models)