xxxi
MC68030 USER’S MANUAL
MOTOROLA
TABLE OF CONTENTS
(
Concluded
)
Paragraph
Number
9.5.1.12
9.5.2
9.5.3
9.5.3.1
9.5.3.2
9.5.3.3
9.5.3.4
9.5.3.5
9.5.4
9.5.5
9.5.5.1
9.5.5.2
9.5.5.3
9.5.5.4
9.6
9.7
9.7.1
9.7.2
9.7.3
9.7.4
9.7.5
9.7.5.1
9.7.5.2
9.7.5.3
9.8
9.9
9.9.1
9.9.2
9.9.3
9.9.3.1
9.9.3.2
9.9.3.3
9.9.3.4
9.9.3.5
9.9.3.6
9.10
9.10.1
9.10.2
9.10.3
Title
Page
Number
Long-Format Indirect Descriptor . . . . . . . . . . . . . . . . . . . . . . . . . 9-28
General Table Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-28
Variations in Translation Table Structure . . . . . . . . . . . . . . . . . . . . 9-33
Early Termination and Contiguous Memory. . . . . . . . . . . . . . . . . 9-33
Indirection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-34
Table Sharing Between Tasks. . . . . . . . . . . . . . . . . . . . . . . . . . . 9-37
Paging of Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-37
Dynamic Allocation of Tables. . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-40
Detail of Table Search Operations . . . . . . . . . . . . . . . . . . . . . . . . . 9-40
Protection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-43
Function Code Lookup. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-45
Supervisor Translation Tree. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-48
Supervisor Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-48
Write Protect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-48
MC68030 and MC68851 Mmu Differences . . . . . . . . . . . . . . . . . . . . 9-51
Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-52
Root Pointer Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-52
Translation Control Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-54
Transparent Translation Registers . . . . . . . . . . . . . . . . . . . . . . . . . 9-57
MMU Status Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-59
Register Programming Considerations . . . . . . . . . . . . . . . . . . . . . . 9-61
Register Side Effects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-61
MMU Status Register Decoding. . . . . . . . . . . . . . . . . . . . . . . . . . 9-61
MMU Configuration Exception. . . . . . . . . . . . . . . . . . . . . . . . . . . 9-62
Mmu Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-63
Defining and Using Page Tables in An Operating System. . . . . . . . . 9-65
Root Pointer Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-65
Task Memory Map Definition. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-66
Impact of MMU Features On Table Definition . . . . . . . . . . . . . . . . . 9-68
Number of Table Levels. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-68
Initial Shift Count . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-69
Limit Fields. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-70
Early Termination Page Descriptors . . . . . . . . . . . . . . . . . . . . . . 9-70
Indirect Descriptors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-71
Using Unused Descriptor Bits . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-71
An Example of Paging Implementation in an Operating System . . . . 9-72
System Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-72
Allocation Routines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-78
Bus Error Handler Routine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-82
Section 10
Coprocessor Interface Description