
6-56
MPC106 PCIB/MC User's Manual
MOTOROLA
6.4.8.1 RMW Parity Latency Considerations
When RMW parity is enabled, the time required to read, modify, and write increases
latency for processor single-beat writes to system memory and PCI writes to system
memory. All other transactions are unaffected and operate as in normal parity mode.
For 60x processor single-beat writes to system memory, the MPC106 latches the data,
performs a double-word read from system memory (checking parity), and then merges the
write data from the processor with the data read from memory. The MPC106 then generates
new parity bits for the merged double word and writes the data and parity to memory. The
read-modify-write process adds six clock cycles to a single-beat write operation. If page
mode retention is enabled (BSTOPRE
≠
0 and PGMAX
≠
0), then the MPC106 will keep
the memory in page mode for the read-modify-write sequence. Since the processor drives
all eight parity bits during 60x burst writes to system memory, these transactions go directly
to the SDRAMs with no performance penalty.
For PCI writes to system memory with RMW parity enabled, the MPC106 latches the data
in the internal PCI-to-system-memory-write buffer (PCMWB). If the PCI master writes
complete double words to system memory, the MPC106 generates the parity bits when the
PCMWB is flushed to memory. However, if the PCI master writes 32-, 16-, or 8-bit data
that cannot be gathered into a complete double word in the PCMWB, a read-modify-write
operation is required. The MPC106 performs a double-word read from system memory
(checking parity), and then merges the write data from the PCI master with the data read
from memory. The MPC106 then generates new parity for the merged double word and
writes the data and parity to memory. If page mode retention is enabled (BSTOPRE
≠
0 and
PGMAX
≠
0), the MPC106 keeps the memory in page mode for the read-modify-write
sequence.
6.4.9 SDRAM Refresh
The memory interface supplies CBR refreshes to SDRAM according to the interval
specified in MCCR2[REFINT]. REFINT is the refresh interval. When REFINT expires, the
MPC106 issues a precharge and then a refresh command to the SDRAM devices. The value
stored in REFINT should allow for a potential collision between memory accesses and
refresh cycles. In the worst case, the refresh must wait the number of clock cycles required
by the longest access. For example, if ROM is located on the 60x/memory bus and a ROM
access is in progress at the time a refresh operation needs to be performed, the refresh must
wait until the ROM access has completed. If ROM is located on the 60x/memory bus, the
longest access that could potentially stall a refresh is a burst read from ROM. If ROM is
located on the PCI bus, the longest memory access is a burst read from the SDRAM.
The MPC106 also has to wait for a precharge command (to close any open pages) before it
can issue the refresh command. The MPC106 requires two clock cycles to issue a precharge
to an internal bank; with two pages open simultaneously, this equates to four extra clock
cycles that must be taken off the refresh interval. Finally, the MPC106 must wait for the
PRETOACT interval to pass before issuing the refresh command.