Renesas SH7781 用户手册

下载
页码 1692
7.   Memory Management Unit (MMU) 
Rev.1.00  Jan. 10, 2008  Page 183 of 1658 
REJ09B0261-0100 
 
7.6.2
 
Instruction TLB Miss Exception 
An instruction TLB miss exception occurs when address translation information for the virtual 
address to which an instruction access is made is not found in the UTLB entries by the hardware 
ITLB miss handling routine. The instruction TLB miss exception processing carried out by 
hardware and software is shown below. This is the same as the processing for a data TLB miss 
exception. 
(1)
  Hardware Processing 
In the event of an instruction TLB miss exception, hardware carries out the following processing: 
1.  Sets the VPN of the virtual address at which the exception occurred in PTEH. 
2.  Sets the virtual address at which the exception occurred in TEA. 
3.  Sets exception code H'040 in EXPEVT. 
4.  Sets the PC value indicating the address of the instruction at which the exception occurred in 
SPC. If the exception occurred at a delay slot, sets the PC value indicating the address of the 
delayed branch instruction in SPC. 
5.  Sets the SR contents at the time of the exception in SSR. The R15 contents at this time are 
saved in SGR. 
6.  Sets the MD bit in SR to 1, and switches to privileged mode. 
7.  Sets the BL bit in SR to 1, and masks subsequent exception requests. 
8.  Sets the RB bit in SR to 1. 
9.  Branches to the address obtained by adding offset H'0000 0400 to the contents of VBR, and 
starts the instruction TLB miss exception handling routine. 
 
(2)
  Software Processing (Instruction TLB Miss Exception Handling Routine) 
Software is responsible for searching the external memory page table and assigning the necessary 
page table entry. Software should carry out the following processing in order to find and assign the 
necessary page table entry. 
1.  In TLB compatible mode, write to PTEL the values of the PPN, PR, SZ, C, D, SH, V, and WT 
bits in the page table entry stored in the address translation table for external memory. 
In TLB extended mode, write to PTEL and PTEA the values of the PPN, EPR, ESZ, C, D, SH, 
V, and WT bits in the page table entry stored in the address translation table for external 
memory. 
2.  When the entry to be replaced in entry replacement is specified by software, write the value to 
the URC bits in MMUCR. If URC is greater than URB at this time, the value should be 
changed to an appropriate value after issuing an LDTLB instruction.