![Freescale Semiconductor MCF54455 Reference Manual Download Page 114](http://html1.mh-extra.com/html/freescale-semiconductor/mcf54455/mcf54455_reference-manual_2330541114.webp)
Memory Management Unit (MMU)
Freescale Semiconductor
4-13
Caches are addressed with the virtual address (the cache uses synchronous memory elements), and an
access starts at the rising-clock edge of the first processor local bus pipeline stage. The MMU provides a
physical address midway through this cycle.
If the cache-set address has fewer bits than the in-page address, the cache is considered physically
addressed because these bits are the same in the virtual and physical addresses. If the cache set address has
more bits than the in-page address, one or more of the low-order virtual page number bits are used to
address the cache. The MMU translates these bits; the resulting low-order physical page number bits are
used to determine cache hits.
Address aliasing problems occur when two virtual addresses access one physical page. This is generally
allowed and, if the page is cacheable, one coherent copy of the page image is mapped in the cache at any
time.
If multiple virtual addresses pointing to the same physical address differ only in the low-order virtual page
number bits, conflicting copies can be allocated. For an 8-Kbyte, 4-way, set-associative cache with a
16-byte line size, the cache set address uses address bits 10–4. If virtual addresses 0x0_1000 and 0x0_1400
are mapped to physical address 0x0_1000, using virtual address 0x0_1000 loads cache set 0x00; using
virtual address 0x0_1400 loads cache set 0x40. This puts two copies of the same physical address in the
cache, making this memory space not coherent. To avoid this problem, software must force low-order
virtual page number bits to be equal to low-order physical address bits for all bits used to address the cache
set.
4.3.1.2.6
Supervisor/User Stack Pointers
To isolate supervisor and user modes, the Version 4 ColdFire core implements two A7 register stack
pointers: one for supervisor mode (SSP) and one for user mode (USP). Two former M68000
family-privileged instructions to load and store the user stack pointer are restored in the instruction set
architecture.
4.3.1.2.7
Access Error Stack Frame
Processor local bus accesses that fault (that is, terminate with a transfer error acknowledge) to generate
an access error exception. MMU TLB misses and access violations use the same fault. New fault status
field (FS) encodings in the exception stack frame signal TLB misses on the following to quickly determine
if a fault was due to a TLB miss or another type of access error:
•
Instruction fetch
•
Instruction extension fetch
•
Data read
•
Data write
Section 4.3.3.3, “Access Error Stack Frame Additions
4.3.1.2.8
Expanded Control Register Space
The MMU base-address register (MMUBAR) is added for ColdFire virtual mode. Like other control
registers, it can be accessed from the debug module or written using the privileged MOVEC instruction.
See
Summary of Contents for MCF54455
Page 33: ...xxviii Freescale Semiconductor ...
Page 67: ...Freescale Semiconductor 1 ...
Page 125: ...Freescale Semiconductor 1 ...
Page 145: ...Enhanced Multiply Accumulate Unit EMAC 5 21 Freescale Semiconductor ...
Page 173: ...Cache 6 28 Freescale Semiconductor ...
Page 179: ...Static RAM SRAM 7 6 Freescale Semiconductor ...
Page 207: ...Power Management 9 16 Freescale Semiconductor ...
Page 323: ...Reset Controller Module 13 8 Freescale Semiconductor ...
Page 389: ...Pin Multiplexing and Control 16 44 Freescale Semiconductor ...
Page 575: ...PCI Bus Controller 22 58 Freescale Semiconductor ...
Page 600: ...Advanced Technology Attachment ATA Freescale Semiconductor 23 25 ...
Page 601: ...Freescale Semiconductor 1 ...
Page 842: ...I2 C Interface Freescale Semiconductor 33 16 ...
Page 843: ...Freescale Semiconductor 1 ...
Page 921: ...Revision History A 6 Freescale Semiconductor ...