10-10
ColdFire CF4E Core User’s Manual
For More Information On This Product,
Go to: www.freescale.com
MMU Definition
Special mode accesses, including interrupt acknowledges, reads/writes to
program-visible control registers (such as CACR, ROMBARs, RAMBARs, and
ACRs), cache control commands (CPUSHL and INTOUCH), and emulator mode
operations. These accesses have specific attributes such as the following:
— Non-cacheable
— Precise
— No write protection
Unless the CPU space/IACK mask bit is set, interrupt acknowledge cycles and
emulator mode operations are allowed to hit in RAMBARs and ROMBARs. All
other operations are normal mode accesses.
Normal mode accesses. For these accesses, an effective cache mode, precision and
write-protection are calculated for each request.
For the data K-Bus, a normal mode access address is compared with the following priority,
from highest to lowest: RAMBAR0, RAMBAR1, ROMBAR0, ROMBAR1, ACR0, and
ACR1. If no match is found, default attributes in the CACR are used. The priority for
instruction K-Bus accesses is RAMBAR0, RAMBAR1, ROMBAR0, ROMBAR1, ACR2,
and ACR3. Again, if no match is found, default CACR attributes are used.
Only the test-and-set (TAS) instruction can generate a normal mode access with implied
cache mode and precision. TAS is a special, byte-sized, read-modify-write instruction used
in synchronization routines. A TAS data access that does not hit in the RAMBARs is
non-cacheable and precise. TAS uses the normal effective write protection.
The ColdFire MMU is an optional enhancement to the memory access control. If the MMU
is present and enabled, it adds two factors for calculating effective address attributes:
MMUBAR defines a memory-mapped, privileged data-only space with the highest
priority in effective address attribute calculation for the data K-Bus (that is, the
MMUBAR has priority over RAMBAR0).
If virtual mode is enabled, any normal mode access that does not hit in the
MMUBAR, RAMBARs, ROMBARs, or ACRs is considered a normal mode virtual
address request and generates its access attributes from the MMU. For this case, the
default CACR address attributes are not used.
The MMU also uses TLB contents to perform virtual-to-physical address translation.
10.5.2 MMU Functionality
The MMU provides virtual-to-physical address translation and memory access control. The
MMU consists of memory-mapped, control, status, and fault registers and a TLB that can
be accessed through MMU registers. Supervisor software can access these resources
through MMUBAR. Software can control address translation and access attributes of a
virtual address by configuring MMU control registers and loading the MMU’s TLB, which
functions as a cache, associating virtual addresses to corresponding physical addresses and
F
Freescale Semiconductor, Inc.
n
.