
Memory Management Unit
9-28
MC68030 USER’S MANUAL
MOTOROLA
When a search is made for a logical address to which an early termination page descriptor
applies, the MC68030 creates an entry in the ATC for the logical address; the physical
address in the ATC entry is the sum of the page address field in the descriptor plus an offset.
The offset is the logical address with the bits used in the search set to zero.
Although the early termination page descriptor creates a contiguous logical-to-physical
mapping without having to maintain individual descriptors in the translation tree for each
page that is a member of the contiguous region, the ATC contains one entry for each page
mapped. These entries are created internally each time a page boundary (as determined by
the page size) is crossed in the contiguous region. Figure 9-21 shows an example
translation table with a portion of the logical address space translated as a contiguous block.
Note that the DT field can be set to page descriptor at any level of the translation tree
including the root pointer level. Setting the DT field of a root pointer to page descriptor
creates a direct mapping from the logical to the physical address space with a constant
offset as determined by the value in the table address field of the root pointer.
9.5.3.2 INDIRECTION.
The MC68030 provides the ability to replace an entry in a page table
with a pointer to an alternate entry. The indirection capability allows multiple tasks to share
a physical page while maintaining only a single set of history information for the page (i.e.,
the "modified" indication is maintained only in the single descriptor). The indirection
capability also allows the page frame to appear at arbitrarily different addresses in the logical
address spaces of each task.
Using the indirection capability, single entries or entire tables can be shared between
multiple tasks. Figure 9-22 shows two tasks sharing a page using indirect descriptors.
When the MC68030 has completed a normal table search (has exhausted all index fields of
the logical page address), it examines the descriptor-type field of the last entry fetched from
the translation tables. If the DT field contains a "valid long" ($2) or "valid short" ($3)
encoding, this indicates that the address contained in the highest order 30 bits of the table
address field of the descriptor is a pointer to the page descriptor that is to be used to map
the logical address. The processor then fetches the page descriptor of the indicated format
from this address and uses the page address field of the page descriptor as the physical
mapping for the logical address.