摘要 |
<p>A method and apparatus for performing address translation in a computer system supporting virtual memory by searching a translation lookaside buffer (101) (TLB) and, possibly, a translation table (116) held in memory (106) and implemented as a B-tree data structure. The TLB is initially searched for a translation for a specified input address (104). If exactly one valid entry of the TLB stores a translation for the specified input address then the output address (129) corresponding to the specified input address is determined from the contents of that entry. Otherwise, the translation table is searched for a translation for the specified input address. If two or more valid entries of the TLB store a translation for the specified input address then these entries are invalidated. A translation for the specified input address and possibly one or more translations for other input addresses that are stored together with the translation for the specified input address are taken from the translation table and inserted into the TLB.</p> |