Notes
79RC32438 User Reference Manual
17 - 1
November 4, 2002
Chapter 17
On-Chip Memory
Introduction
This chapter describes the on-chip memory features and functions of the RC32438.
Theory of Operation
On-chip memory supports byte, halfword, triple-byte, and word memory read and write operations. All
IPBus transfer types are supported by on-chip memory (e.g., CPU, PCI, and DMA transfers). The RC32438
device includes 4KB of high speed SRAM organized as 1K x 32 bits of on-chip memory.
There is nothing to prohibit the CPU core from accessing on-chip memory. However, access to on-chip
memory by user processes/tasks may be prohibited by using the CPU’s MMU. PCI Bus masters may
access on-chip memory if the RC32438’s local address range of on-chip memory is contained in a region
mapped by one of the four PCI Base Address (PBAx) registers to the PCI bus. Some or all of the on-chip
memory may be used by the IPBus monitor. For additional information on the IPBus monitor, see Chapter
18, Debugging and Performance Monitoring.
CPU-initiated and IPBus monitor accesses to on-chip memory are conflict-free: CPU accesses to on-
chip memory are delayed by, at most, one IPBus clock cycle when both the CPU and IPBus monitor access
the same half of on-chip memory, and neither is delayed when CPU accesses are restricted to the bottom
half of memory and the IPBus monitor is configured to use the top half of memory.
The contents of on-chip memory is preserved across warm and cold resets.
Address decoding for on-chip memory is controlled by the On-Chip Memory Base (OCMBASE) and On-
Chip Memory Mask (OCMMASK) registers. The mask register is used to select which bits are used for
address decoding. When a bit in this register is a one, the corresponding address bit is active in address
comparisons. If a bit in this register is a zero, the corresponding address bit does not participate in address
comparisons. All of the active address bits not masked by the mask register are compared to the value in
the base register. If they all match, then on-chip memory is selected.
On-chip Memory Base Register
Figure 17.1 On-chip Memory Base Register (OCMBASE)
BASEADDR
Description:
Base Address.
This field specifies the upper 16-bits of the on-chip memory base address.
Initial Value:
0x0
Read Value:
Previous value written
Write Effect:
Modify value
OCMBASE
0
31
16
16
BASEADDR
0