Cache memory system and method for automatically locking cache entries to prevent selected memory items from being replaced
First Claim
1. A single chip central processing unit (CPU) having an integer unit for generating read and write requests to an external memory, a cache memory internal to the single chip CPU for storing memory items staged from the external memory and a bus interface unit for reading and writing memory items stored in the external memory and for replacing memory items stored in the cache memory, wherein the integer unit, cache memory and bus interface unit are interconnected by a bus, the cache memory having a plurality of cache entries for storing memory items and corresponding cache entry lock bits, the single chip CPU comprising:
- a memory-mapped cache/bus interface unit (BIU) control register connected to the integer unit and having a global cache lock bit selectively settable by the integer unit for indicating that all cache entries are to be locked;
a memory-mapped lock control register connected to the integer unit and having a cache entry auto lock bit selectively settable by the integer unit for indicating that individual cache entries are to be locked when accessed by the bus interface unit; and
means connected to the cache memory, the cache/BIU control register and the lock control register, for locking all cache entries by selectively disabling replacement of all memory items stored therein by the bus interface unit while the global cache lock bit in the memory-mapped cache/BIU control register is set, and for automatically locking individual cache entries by setting the corresponding cache entry lock bits in the individual cache entries, thereby selectively disabling replacement of individual memory items stored therein, when he individual cache entries are subsequently accessed by the bus interface unit while the cache entry auto lock bit in the memory-mapped lock control register is set.
0 Assignments
0 Petitions
Accused Products
Abstract
A cache memory system has a plurality of cache entries for storing memory items staged from a memory. The cache memory system locks entries so that memory items stored therein are prevented from being replaced by newly staged memory items. Entries can be locked globally whereby more than one entry is locked. Entries can also be locked locally whereby only selected ones of the entries are locked. The cache memory system can also set or clear a representation in an entry representing that such entry is not to be replaced upon being selectively activated or deactivated by an auto-lock (automatic lock) signal. The representation is memory-mapped and can be set or cleared directly by an integer unit.
147 Citations
15 Claims
-
1. A single chip central processing unit (CPU) having an integer unit for generating read and write requests to an external memory, a cache memory internal to the single chip CPU for storing memory items staged from the external memory and a bus interface unit for reading and writing memory items stored in the external memory and for replacing memory items stored in the cache memory, wherein the integer unit, cache memory and bus interface unit are interconnected by a bus, the cache memory having a plurality of cache entries for storing memory items and corresponding cache entry lock bits, the single chip CPU comprising:
-
a memory-mapped cache/bus interface unit (BIU) control register connected to the integer unit and having a global cache lock bit selectively settable by the integer unit for indicating that all cache entries are to be locked; a memory-mapped lock control register connected to the integer unit and having a cache entry auto lock bit selectively settable by the integer unit for indicating that individual cache entries are to be locked when accessed by the bus interface unit; and means connected to the cache memory, the cache/BIU control register and the lock control register, for locking all cache entries by selectively disabling replacement of all memory items stored therein by the bus interface unit while the global cache lock bit in the memory-mapped cache/BIU control register is set, and for automatically locking individual cache entries by setting the corresponding cache entry lock bits in the individual cache entries, thereby selectively disabling replacement of individual memory items stored therein, when he individual cache entries are subsequently accessed by the bus interface unit while the cache entry auto lock bit in the memory-mapped lock control register is set. - View Dependent Claims (2, 3)
-
-
4. In a computer system having a central processing unit and an external memory, the central processing unit having an integer unit for generating read and write requests and at least one cache memory system internal to the central processing unit for storing memory items staged from the external memory, each cache memory system comprising:
-
a memory-mapped cache/bus interface unit (BIU) control register having a global cache lock bit selectively settable by the integer unit; a memory-mapped lock control register having a cache entry auto lock bit selectively settable by the integer unit; a cache having a plurality of cache entries for storing the memory items staged from the external memory and corresponding cache entry lock bits; a bus interface unit coupled to the integer unit and the cache by a first bus and coupled to the external memory by a second bus for replacing a memory item stored in the external memory in response to a write request and for replacing a memory item stored in one of the cache entries with a new memory item from the external memory in response to a read request; and locking means coupled to the cache, the memory-mapped cache/BIU control register and the memory-mapped lock control register, for locking all cache entries by selectively disabling replacement of all memory items stored therein by the bus interface unit while the global lock bit in the memory-mapped cache/BIU control register is set, and for automatically locking individual cache entries by setting the corresponding cache entry lock bits in the individual cache entries, thereby selectively disabling replacement of individual memory items stored therein, when the individual cache entries are subsequently accessed by the bus interface unit while the cache entry auto lock bit is set in the lock control register. - View Dependent Claims (5, 6, 7, 8, 9, 10)
-
-
11. A method for managing a cache internal to a single chip central processing unit, comprising the steps of:
-
storing a plurality of memory items in a plurality of cache entries in the cache, each cache entry including a corresponding cache entry lock bit; staging a new memory item from the external memory in response to a read request that results in a cache miss; replacing a memory item stored in one of the cache entries with the new memory item; setting a global lock bit in a cache/bus interface unit (BIU) control register when replacement of memory items in all cache entries is to be blocked; preventing replacement of memory items in all cache entries in the replacing step, while the global lock bit is set in the cache/bus interface unit (BIU) control register; setting an auto lock bit in a lock control register when replacement of memory items in individual cache entries is to be blocked; and locking individual cache entries by preventing replacement of memory items in the individual cache entries in the replacing step, by setting the corresponding cache entry lock bits of the individual cache entries, when the individual cache entries are accessed by a bus interface unit while the auto lock bit is set in the lock control register. - View Dependent Claims (12, 13, 14, 15)
-
Specification