Microprocessor having improved memory management unit and...

Electrical computers and digital processing systems: memory – Storage accessing and control – Hierarchical memories

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C711S205000, C711S209000, C711S210000

Reexamination Certificate

active

06553460

ABSTRACT:

FIELD OF THE INVENTION
The present invention relates to microprocessor and similar computing-type devices, and more particularly to microprocessors and similar computing-type devices with improved memory management and cache capabilities, particularly those that include virtual cache memories.
BACKGROUND OF THE INVENTION
Microprocessors, data processors, microcomputers, microcontrollers and other computing-type devices (herein generally referred to simply as “microprocessors”) often are implemented to include a memory management units (MMU) and one or more cache memories. As is known in the art, the MMU typically improve microprocessor capabilities by managing the separation of logical or virtual address space (virtual memory) from physical address space (main memory), and often includes a translation lookaside buffer (TLB) or other resources to translate between logical and physical addresses. Also as is known in the art, a cache memory maintains a copy of the contents of the most recently accessed memory locations and is able to provide the data to the processor very quickly should any address in the cache be accessed again.
Caches generally are divided into three types: (1) physically indexed physically tagged (PIPT); (2) virtually indexed physically tagged (VIPT); and (3) virtually indexed virtually tagged (VIVT) or “virtual cache”. The most commonly used cache configuration is the VIPT cache. In VIPT caches, the virtual address is used to select the index into the cache. The physical tag is then compared with part of the physical address, which is derived from the physical page number (PPN) and size information provided by the TLB. Virtual caches index into the cache using the virtual address (similar to VIPT caches), but the tag residing in the cache is also virtual. In case of a virtual tag match, the data is immediately returned without any TLB access. For this reason, virtual caches tend to have faster cache access times as compared to VIPT caches. Therefore, it often is possible to achieve higher frequencies with a virtual cache.
While the use of such virtual caches has been proposed (see U.S. Pat. No. 5,930,833, which is incorporated herein by reference), there are a number of issues that may arise. For example, virtual caches have very fast access time since they do not incur delays during the virtual-physical address translation. They do incur, however, tend to incur a consistency problem, often called the synonym problem. This is caused when two different virtual addresses point to a unique physical address, or the same virtual addresses with different process ID's point to a unique physical address. While U.S. Pat. No. 5,930,833 proposed certain strategies for dealing with the synonym problem and for otherwise improving microprocessors, the need exists for yet further improvements in microprocessors incorporating MMUs, TLBs, caches, virtual caches, etc.
SUMMARY OF THE INVENTION
The present invention provides microprocessors, and methods of operating microprocessors, utilizing improved MMUs, TLBs, caches and virtual caches. In accordance with the present invention, MMUs may be provided in a manner that the MMU may more readily be scaled to accommodate the development of later generation microprocessors. MMU resources preferably are accessed in a configuration register space separate from the physical and logical address spaces, and such MMU configuration registers are implemented in a manner to more readily accommodate future, scaled versions. Instructions to access, modify and control the MMU configuration register contents preferably are provided.
MMUs in accordance with preferred embodiments also provide particular linked behavior with the cache or virtual cache. In such preferred embodiments, the cache or virtual cache preferably is frozen and bypassed when the MMU is disabled, although certain instructions may yet access the cache configuration registers (the cache sources preferably also are accessed in the separate configuration register space).
MMUs in accordance with certain preferred embodiments also operate in a more optimal manner with virtual cache memories. As one illustrate example, permissions may be widened in the cache upon finding that the permission in the MMU/TLB is wider that the corresponding entry in the cache, and desirably the cache permission may automatically be widened.
Also in accordance with the present invention, the cache as well as the MMU may be provided in a manner to be more readily scalable to accommodate the development of later generation microprocessors. Cache resources also preferably are accessed in a configuration register space separate from the physical and logical address spaces, and such cache configuration registers are implemented in a manner to more readily accommodate future, scaled versions. Instructions to access, modify and control the cache configuration register contents preferably are provided.
In accordance with preferred embodiments, the MMU and cache is implemented in a manner to more readily enable versions with virtual and non-virtual cache designs.
In order to more optimally operate caches, microprocessors with caches, instructions are provided to enable cache locking and cache invalidate/flush/purge operation in a more desirable manner. In general, in accordance with the present invention, caches and in particular virtual caches may more be readily implemented, managed and controlled using configuration registers, cache control instructions and other implements as more described below.
Accordingly, the objects of the present invention include the provision of microprocessors having MMUs/TLBs/caches and/or virtual caches with the foregoing advantages and benefits, and as well as the advantages and benefits as will be disclosed in, and/or apparent from, the detailed description to be hereinafter set forth.


REFERENCES:
patent: 4332010 (1982-05-01), Messina et al.
patent: 4400770 (1983-08-01), Chan et al.
patent: 4724517 (1988-02-01), May
patent: 4797814 (1989-01-01), Brenza
patent: 4814981 (1989-03-01), Rubinfeld
patent: 4873629 (1989-10-01), Harris et al.
patent: 4926317 (1990-05-01), Wallach et al.
patent: 5148538 (1992-09-01), Celtruda et al.
patent: 5251311 (1993-10-01), Kasai
patent: 5386565 (1995-01-01), Tanaka et al.
patent: 5423050 (1995-06-01), Taylor et al.
patent: 5434804 (1995-07-01), Bock et al.
patent: 5440705 (1995-08-01), Wang et al.
patent: 5448576 (1995-09-01), Russell
patent: 5452432 (1995-09-01), Macahor
patent: 5455936 (1995-10-01), Maemura
patent: 5479652 (1995-12-01), Dreyer et al.
patent: 5483518 (1996-01-01), Whetsel
patent: 5488688 (1996-01-01), Gonzales et al.
patent: 5530965 (1996-06-01), Kawasaki et al.
patent: 5570375 (1996-10-01), Tsai et al.
patent: 5590354 (1996-12-01), Klapproth et al.
patent: 5596734 (1997-01-01), Ferra
patent: 5598551 (1997-01-01), Barajas et al.
patent: 5608881 (1997-03-01), Masumura et al.
patent: 5613153 (1997-03-01), Arimilli et al.
patent: 5623626 (1997-04-01), Morioka et al.
patent: 5627842 (1997-05-01), Brown et al.
patent: 5657273 (1997-08-01), Ayukawa et al.
patent: 5682545 (1997-10-01), Kawasaki et al.
patent: 5704034 (1997-12-01), Circello
patent: 5708773 (1998-01-01), Jeppesen, III et al.
patent: 5724549 (1998-03-01), Selgas et al.
patent: 5737516 (1998-04-01), Circello et al.
patent: 5751621 (1998-05-01), Arakawa
patent: 5768152 (1998-06-01), Battaline et al.
patent: 5771240 (1998-06-01), Tobin et al.
patent: 5774701 (1998-06-01), Matsui et al.
patent: 5778237 (1998-07-01), Yamamoto et al.
patent: 5781558 (1998-07-01), Inglis et al.
patent: 5796978 (1998-08-01), Yoshioka et al.
patent: 5822619 (1998-10-01), Sidwell
patent: 5828825 (1998-10-01), Eskandari et al.
patent: 5832248 (1998-11-01), Kishi et al.
patent: 5835963 (1998-11-01), Yoshioka et al.
patent: 5848247 (1998-12-01), Matsui et al.
patent: 5859789 (1999-01-01), Sidwell
patent: 5860127 (1999-01-01), Shimazaki et al.
patent: 5862387 (1999-01-01), Songer et al.
patent: 5867726 (1999-02-01), Ohsuga et al.
patent: 5875355 (1999-02-01), Sidwell et al.
patent: 5884092 (1999-03

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Microprocessor having improved memory management unit and... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Microprocessor having improved memory management unit and..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Microprocessor having improved memory management unit and... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3063097

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.