US5249286A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Selectively locking memory locations within a microprocessor's on-chip cache
Assignee: National Semiconductor Corp
•
Filing: 1992-11-24
•
Granted: 1993-09-28
•
Expires: 2012-11-24
Abstract
Abstract A microprocessor architecture that includes capabilities for locking individual entries into its integrated instruction cache and data cache while leaving the remainder of the cache unlocked and available for use in capturing the microprocessor's dynamic locality of reference. The microprocessor also includes the capability for locking instruction cache entries without requiring that the instructions be executed during the locking process.
Inventors
- 👤 Donald B. Alpert
- 👤 Oved Oz
- 👤 Gideon Intrater
- 👤 Reuven Marko
- 👤 Alon Shacham
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-30 04:05
CPC Classifications
G; G06; G06F; G06F12/00; G06F12/02; G06F12/08; G06F12/12; G06F12/121; G06F12/126
Claims Analysis
Total Claims: 28
Claim 1
Independent Claim
74 words
A processor that processes information, the processor comprising: (a) an internal storage element comprising a plurality of storage locations for storing information to be processed by the processor; (b) means for replacing information stored in the internal storage element with information retrieved from an external memory; and (c) means for locking selected individual independent storage locations in the internal storage element to prevent replacement of information stored in the selected individual independent storage locations.
Claim 2
Dependent Claim
74 words
A processor that processes information, the processor comprising: (a) an internal storage element comprising a plurality of storage locations for storing information to be processed by the processor; (b) means for replacing information stored in the internal storage element with information retrieved from an external memory; and (c) means for locking selected individual independent storage locations in the internal storage element to prevent replacement of information stored in the selected individual independent storage locations.
Claim 3
Dependent Claim
81 words
A microprocessor that executes instructions and processes data, the microprocessor comprising: (a) an instruction cache comprising a plurality of storage locations for storing instruction entries that include instructions to be executed by the microprocessor; (b) means for replacing instruction entries stored in the instruction cache with instruction entries retrieved from an external memory; and (c) means for locking selected individual independent storage locations in the instruction cache to prevent replacement of instruction entries stored in the selected individual independent storage locations.
Claim 4
Dependent Claim
81 words
A microprocessor that executes instructions and processes data, the microprocessor comprising: (a) an instruction cache comprising a plurality of storage locations for storing instruction entries that include instructions to be executed by the microprocessor; (b) means for replacing instruction entries stored in the instruction cache with instruction entries retrieved from an external memory; and (c) means for locking selected individual independent storage locations in the instruction cache to prevent replacement of instruction entries stored in the selected individual independent storage locations.
Claim 5
Dependent Claim
42 words
A microprocessor as in claim 2 wherein the means for locking selected individual independent storage locations in the instruction cache comprises a configuration register that enables and disables various operating modes of the selected individual independent storage locations in the instruction cache.
Claim 6
Dependent Claim
33 words
A microprocessor as in claim 3 wherein the configuration register includes means for storing a bit that controls whether a storage location which receives an instruction entry retrieved from external memory is locked.
Claim 7
Dependent Claim
33 words
A microprocessor as in claim 2 wherein each instruction entry stored in the instruction cache includes a bit that indicates whether the storage location in which the instruction entry is stored is locked.
Claim 8
Dependent Claim
19 words
A microprocessor as in claim 2 and further including means for invalidating instruction entries stored in unlocked storage locations.
Claim 9
Dependent Claim
29 words
A microprocessor as in claim 2 and further including means for invalidating all instruction entries stored in the instruction cache, including instruction entries stored in the selected storage locations.
Claim 10
Dependent Claim
37 words
A microprocessor as in claim 2 and further including means for locking a selected individual independent storage location without the microprocessor executing the instruction included in the instruction entry stored in the selected individual independent storage location.
Claim 11
Dependent Claim
81 words
A microprocessor that executes instructions and process data, the microprocessor comprising: (a) a data cache comprising a plurality of storage locations for storing data entries that include data to be processed by the microprocessor; (b) means for replacing data entries stored in the data cache with data entries retrieved from an external memory; and (c) means for locking selected individual independent storage locations in the data cache to prevent replacement of data entries stored in the selected individual independent storage locations.
Claim 12
Dependent Claim
81 words
A microprocessor that executes instructions and process data, the microprocessor comprising: (a) a data cache comprising a plurality of storage locations for storing data entries that include data to be processed by the microprocessor; (b) means for replacing data entries stored in the data cache with data entries retrieved from an external memory; and (c) means for locking selected individual independent storage locations in the data cache to prevent replacement of data entries stored in the selected individual independent storage locations.
Claim 13
Dependent Claim
48 words
A microprocessor as in claim 9 wherein the means for locking selected individual independent storage locations in the data cache comprises a configuration register that enables or disable various operating modes for the microprocessor, including the locking of the selected individual independent storage locations in the data cache.
Claim 14
Dependent Claim
33 words
A microprocessor as in claim 10 wherein the configuration register includes means for storing a bit that controls whether a storage location which receives a data entry retrieved from external memory is locked.
Claim 15
Dependent Claim
33 words
A microprocessor as in claim 9 wherein each data entry stored in the data cache includes a bit that indicates whether the storage location in which the data entry is stored is locked.
Claim 16
Dependent Claim
19 words
A microprocessor as in claim 9 and further including means for invalidating data entries stored in unlocked storage locations.
Claim 17
Dependent Claim
31 words
A microprocessor as in claim 9 and further including means for invalidating all data entries stored in the data cache, including data entries stored in the selected individual independent storage locations.
Claim 18
Independent Claim
85 words
A method of protecting information entries processed by a data processing system, the method comprising: (a) storing information entries to be processed by the data processing system in an internal storage element comprising a plurality of information entry storage locations: (b) replacing information entries stored in the internal storage element with information entries retrieved from an external memory; and (c) locking selected individual independent storage locations in the internal storage element to prevent replacement of information entries stored in the selected individual independent storage locations.
Claim 19
Independent Claim
85 words
A method of protecting information entries processed by a data processing system, the method comprising: (a) storing information entries to be processed by the data processing system in an internal storage element comprising a plurality of information entry storage locations: (b) replacing information entries stored in the internal storage element with information entries retrieved from an external memory; and (c) locking selected individual independent storage locations in the internal storage element to prevent replacement of information entries stored in the selected individual independent storage locations.
Claim 20
Independent Claim
88 words
A method of protecting instructions executed by a microprocessor that executes instructions and processes data, the method comprising: (a) storing instruction entries that include instructions to be executed by the microprocessor in an instruction cache comprising a plurality of instruction entry storage locations; (b) replacing instruction entries stored in the instruction cache with instructions entries retrieved from an external memory; and (c) locking a selected individual independent instruction entry storage location to prevent replacement of the instruction entry stored in the selected individual independent instruction entry storage location.
Claim 21
Independent Claim
88 words
A method of protecting instructions executed by a microprocessor that executes instructions and processes data, the method comprising: (a) storing instruction entries that include instructions to be executed by the microprocessor in an instruction cache comprising a plurality of instruction entry storage locations; (b) replacing instruction entries stored in the instruction cache with instructions entries retrieved from an external memory; and (c) locking a selected individual independent instruction entry storage location to prevent replacement of the instruction entry stored in the selected individual independent instruction entry storage location.
Claim 22
Dependent Claim
22 words
A method as in claim 16 and including the further step of invalidating instruction entries stored in unlocked instruction entry storage locations.
Claim 23
Dependent Claim
20 words
A method as in claim 16 and including the further step of invalidating all instruction entries in the instruction cache.
Claim 24
Dependent Claim
46 words
A method as in claim 16 wherein the step of locking the selected instruction entry storage location comprises locking the selected instruction entry storage location without the microprocessor executing the instruction included in the instruction entry stored in the selected individual independent instruction entry storage location.
Claim 25
Independent Claim
87 words
A method of protecting data processed by a microprocessor that executes instructions and processes data, the method comprising: (a) storing data entries that include data to be processed by the microprocessor in a data cache comprising a plurality of data entry storage locations; (b) replacing data entries stored in the data cache with data entries retrieved from an external memory; and (c) locking an selected individual independent data entry storage location to prevent replacement of data entry stored in the selected individual independent data entry storage location.
Claim 26
Independent Claim
87 words
A method of protecting data processed by a microprocessor that executes instructions and processes data, the method comprising: (a) storing data entries that include data to be processed by the microprocessor in a data cache comprising a plurality of data entry storage locations; (b) replacing data entries stored in the data cache with data entries retrieved from an external memory; and (c) locking an selected individual independent data entry storage location to prevent replacement of data entry stored in the selected individual independent data entry storage location.
Claim 27
Dependent Claim
22 words
A method as in claim 20 and including the further step of invalidating data entries stored in unlocked data entry storage locations.
Claim 28
Dependent Claim
20 words
A method as in claim 20 and including the further step of invalidating all data entries in the data cache.
References Cited (Backward Citations)
US4277826A
Cited
US4513367A
Cited
US4733352A
Cited
US4933835A
Cited
EP0203601A2
Cited
US5029072A
Cited
US4811215A
Cited
US4802085A
Cited
US4926317A
Cited
US5003465A
Cited
US4939641A
Cited
US4912630A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 1996-09-27 | 1997-03-29 | 1997-09-28 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2000-09-27 | 2001-03-29 | 2001-09-28 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2004-09-27 | 2005-03-29 | 2005-09-28 | $7700.00 | Window Closed / Lapsed |