English
Language : 

HD6417706 Datasheet, PDF (125/709 Pages) Renesas Technology Corp – Renesas 32-Bit RISC Microcomputer Super RISC engine Family/SH7700 Series
3.7.2 Use of TLB
An erroneous value is set in the RC bit in MMUCR when all of the following conditions are
satisfied.
1. MMU is on (AT bit in MMUCR is 1)
2. Same VPN exists in more than one ways in a single entry in a TLB address array
3. TLB exception is generated
VPN is not initialized by a power-on reset or a manual reset. Therefore, two or more VPNs have
the same values in a single entry. When an entry in this state is registered to way 3, for example,
the state of that entry in the TLB address array becomes as shown below. As a result, the same
VPN exists in both way 0 and way 3, and condition 2 above is satisfied.
After reset
WAY VPN V
0 12345 0
3 12345 0
After registered to way 3
WAY VPN V
0 12345 0
3 12345 1
A condition may also be satisfied when the TLB is handled by software. For example, if an entry
in the TLB address array is registered to way 3 after way 0 is disabled (V bit is changed from 1 to
0), the state of that entry becomes as shown below. Similar to the above case, the same VPN exists
in both way 0 and way 3, and condition 2 above is satisfied.
After way 0 is disabled
WAY VPN V
0 12345 0
3 11111 0
After registered to way 3
WAY VPN V
0 12345 0
3 12345 1
To avoid this failure, take the following two countermeasures.
1. After a reset, initialize the upper four bits in VPN to 1 for all entries in the TLB address array
until the AT bit in MMUCR is set to 1.
2. When disabling a way in the TLB address array, in addition to clearing the V bit to 0, initialize
the upper four bits in VPN to 1.
These countermeasures will prevent VPN from being a target of address translation. Accordingly,
condition 3 is not satisfied, and this failure can be avoided.
Rev. 4.00, 03/04, page 79 of 660