Claims Analysis
Total Claims: 42
Claim 1
Independent Claim
132 words
An apparatus for providing programmable minimum memory page sizes, the apparatus comprising: a pagegrain register, configured to prescribe a minimum page size, in default, according to a legacy memory management protocol, and in alternative, as one of the programmable minimum memory page sizes according to an extended memory management protocol; and a memory management unit (MMU), coupled to said pagegrain register, configured to store a plurality of page table entries (PTEs), each of said plurality of PTEs specifying a page granularity for a corresponding physical memory page, wherein said page granularity is bounded by said minimum page size, said MMU comprising: page granularity logic, configured to determine a page size for said corresponding physical memory page, wherein said page size is determined based on said minimum page size and said page granularity.
Claim 2
Independent Claim
132 words
An apparatus for providing programmable minimum memory page sizes, the apparatus comprising: a pagegrain register, configured to prescribe a minimum page size, in default, according to a legacy memory management protocol, and in alternative, as one of the programmable minimum memory page sizes according to an extended memory management protocol; and a memory management unit (MMU), coupled to said pagegrain register, configured to store a plurality of page table entries (PTEs), each of said plurality of PTEs specifying a page granularity for a corresponding physical memory page, wherein said page granularity is bounded by said minimum page size, said MMU comprising: page granularity logic, configured to determine a page size for said corresponding physical memory page, wherein said page size is determined based on said minimum page size and said page granularity.
Claim 3
Dependent Claim
23 words
The apparatus as recited in claim 1 , wherein said minimum page size according to said legacy memory management protocol is 4 KB.
Claim 4
Dependent Claim
42 words
The apparatus as recited in claim 2 , wherein the programmable minimum memory page sizes according to said extended memory management protocol comprise a 1 KB minimum page size, a 2 KB minimum page size, and a 4 KB minimum page size.
Claim 5
Dependent Claim
38 words
The apparatus as recited in claim 1 , wherein said pagegrain register is programmed to prescribe said one of the programmable minimum memory page sizes by execution of an instruction in accordance with said extended memory management protocol.
Claim 6
Dependent Claim
48 words
The apparatus as recited in claim 4 , wherein said each of said plurality of PTEs comprises a physical frame number (PFN) field, and wherein bits of said PFN field are employed to construct an upper part of a physical address associated with said corresponding physical memory page.
Claim 7
Dependent Claim
81 words
The apparatus as recited in claim 5 , wherein said MMU further comprises: physical address construction logic, coupled to said page granularity logic, configured to construct said upper part, and a lower part of said physical address using lower bits of a virtual address, wherein said page size determines how many of said lower bits are used to construct said lower part, and the positions within said upper part that are occupied by bits taken from said physical frame number field.
Claim 8
Dependent Claim
53 words
The apparatus as recited in claim 6 , wherein said MMU further comprises: a translation lookaside buffer (TLB), coupled to said physical address construction logic, configured to store frequently used ones of said plurality of PTEs, and configured to provide said PFN field for construction of said upper part of said physical address.
Claim 9
Dependent Claim
15 words
The apparatus as recited in claim 7 , wherein said TLB comprises a software-based TLB.
Claim 10
Dependent Claim
15 words
The apparatus as recited in claim 7 , wherein said TLB comprises a hardware-based TLB.
Claim 11
Dependent Claim
195 words
A computer program product for use with a computing device, the computer program product comprising: a computer usable medium, having computer readable program code embodied in said medium, for causing a CPU to be described, said CPU being capable of sizing memory pages according to a legacy memory management technique or an extended memory management technique, said computer readable program code comprising: first program code, for describing a memory management unit (MMU), said MMU configured to store page table entries (PTEs), each of said PTEs prescribing a page granularity for a corresponding physical memory page, wherein said page granularity is bounded by a minimum page size; second program code, for describing page granularity logic within said MMU, and being configured to establish a page size for said corresponding physical memory page, wherein said page size is established as a function of a minimum page size and said page granularity; and third program code, for describing a pagegrain register, said pagegrain register being coupled to said MMU, said pagegrain register configured to specify said minimum page size, in default, according to said legacy memory management technique, and in alternative, according to said extended memory management technique.
Claim 12
Dependent Claim
195 words
A computer program product for use with a computing device, the computer program product comprising: a computer usable medium, having computer readable program code embodied in said medium, for causing a CPU to be described, said CPU being capable of sizing memory pages according to a legacy memory management technique or an extended memory management technique, said computer readable program code comprising: first program code, for describing a memory management unit (MMU), said MMU configured to store page table entries (PTEs), each of said PTEs prescribing a page granularity for a corresponding physical memory page, wherein said page granularity is bounded by a minimum page size; second program code, for describing page granularity logic within said MMU, and being configured to establish a page size for said corresponding physical memory page, wherein said page size is established as a function of a minimum page size and said page granularity; and third program code, for describing a pagegrain register, said pagegrain register being coupled to said MMU, said pagegrain register configured to specify said minimum page size, in default, according to said legacy memory management technique, and in alternative, according to said extended memory management technique.
Claim 13
Dependent Claim
25 words
The computer program product as recited in claim 10 , wherein said minimum page size according to said legacy memory management technique is 4 KB.
Claim 14
Dependent Claim
34 words
The computer program product as recited in claim 10 , wherein said minimum page size according to said extended memory management technique can be programmed to either 1 KB, 2 KB, or 4 KB.
Claim 15
Dependent Claim
34 words
The computer program product as recited in claim 12 , wherein said pagegrain register is programmed to prescribe said minimum page size via execution of an instruction according to said extended memory management technique.
Claim 16
Dependent Claim
48 words
The computer program product as recited in claim 13 , wherein said each of said PTEs comprises a physical frame number (PFN) field, and wherein bits of said PFN field are employed to construct an upper part of a physical address associated with said corresponding physical memory page.
Claim 17
Dependent Claim
96 words
The computer program product as recited in claim 14 , further comprising: fourth program code, for describing physical address construction logic within said MMU, said physical address construction logic being coupled to said page granularity logic, and being configured to construct said upper part, and a lower part of said physical address using lower bits of a virtual address, wherein said page size determines how many of said lower bits are used to construct said lower part, and the positions within said upper part that are occupied by bits taken from said physical frame number field.
Claim 18
Dependent Claim
58 words
The computer program product as recited in claim 15 , further comprising: fifth program code, for describing a translation lookaside buffer (TLB) within said MMU, coupled to said physical address construction logic, configured to store frequently used ones of said PTEs, and configured to provide said PFN field for construction of said upper part of said physical address.
Claim 19
Dependent Claim
17 words
The computer program product as recited in claim 16 , wherein said TLB comprises a software-based TLB.
Claim 20
Dependent Claim
17 words
The computer program product as recited in claim 16 , wherein said TLB comprises a hardware-based TLB.
Claim 21
Dependent Claim
142 words
A computer data signal embodied in a transmission medium, comprising: first computer-readable program code, for describing a memory management unit (MMU), said MMU configured to store page table entries (PTEs), each of said PTEs specifying a page granularity for a corresponding physical memory page, wherein said page granularity is bounded by a minimum page size; second computer-readable program code, for describing page granularity logic within said MMU, said page granularity logic configured to determine a page size for said corresponding physical memory page, wherein said page size is determined based on said minimum page size and said page granularity; and third computer-readable program code, for describing a pagegrain register coupled to said MMU, said pagegrain register configured to prescribe said minimum page size, in default, according to a legacy memory management protocol, and in alternative, according to an extended memory management protocol.
Claim 22
Dependent Claim
142 words
A computer data signal embodied in a transmission medium, comprising: first computer-readable program code, for describing a memory management unit (MMU), said MMU configured to store page table entries (PTEs), each of said PTEs specifying a page granularity for a corresponding physical memory page, wherein said page granularity is bounded by a minimum page size; second computer-readable program code, for describing page granularity logic within said MMU, said page granularity logic configured to determine a page size for said corresponding physical memory page, wherein said page size is determined based on said minimum page size and said page granularity; and third computer-readable program code, for describing a pagegrain register coupled to said MMU, said pagegrain register configured to prescribe said minimum page size, in default, according to a legacy memory management protocol, and in alternative, according to an extended memory management protocol.
Claim 23
Dependent Claim
25 words
The computer data signal as recited in claim 19 , wherein said minimum page size according to said legacy memory management protocol is 4 KB.
Claim 24
Dependent Claim
34 words
The computer data signal as recited in claim 19 , wherein said minimum page size according to said extended memory management protocol can be programmed to either 1 KB, 2 KB, or 4 KB.
Claim 25
Dependent Claim
34 words
The computer data signal as recited in claim 21 , wherein said pagegrain register is programmed to prescribe said minimum page size via execution of an instruction according to said extended memory management protocol.
Claim 26
Dependent Claim
48 words
The computer data signal as recited in claim 22 , wherein said each of said PTEs comprises a physical frame number (PFN) field, and wherein bits of said PFN field are employed to construct an upper part of a physical address associated with said corresponding physical memory page.
Claim 27
Dependent Claim
97 words
The computer data signal as recited in claim 23 , further comprising: fourth computer-readable program code, for describing physical address construction logic within said MMU, said physical address construction logic being coupled to said page granularity logic, and being configured to construct said upper part, and a lower part of said physical address using lower bits of a virtual address, wherein said page size determines how many of said lower bits are used to construct said lower part, and the positions within said upper part that are occupied by bits taken from said physical frame number field.
Claim 28
Dependent Claim
59 words
The computer data signal as recited in claim 24 , further comprising: fifth computer-readable program code, for describing a translation lookaside buffer (TLB) within said MMU, coupled to said physical address construction logic, configured to store frequently used ones of said PTEs, and configured to provide said PFN field for construction of said upper part of said physical address.
Claim 29
Dependent Claim
17 words
The computer data signal as recited in claim 25 , wherein said TLB comprises a software-based TLB.
Claim 30
Dependent Claim
17 words
The computer data signal as recited in claim 25 , wherein said TLB comprises a hardware-based TLB.
Claim 31
Independent Claim
116 words
A method for providing programmable minimum memory page sizes, the method comprising: within a memory management unit (MMU), storing page table entries (PTEs), wherein each of the PTEs prescribes a page granularity for a corresponding physical memory page, and wherein the page granularity is bounded by a minimum page size; initiating contents of a pagegrain register to designate the minimum page size such that address translation comports with a legacy memory management protocol; programming the contents of the pagegrain register to designate the minimum page size such that address translation comports with an extended memory management protocol; and determining a page size for the corresponding physical memory page based on the page granularity and said programming.
Claim 32
Independent Claim
116 words
A method for providing programmable minimum memory page sizes, the method comprising: within a memory management unit (MMU), storing page table entries (PTEs), wherein each of the PTEs prescribes a page granularity for a corresponding physical memory page, and wherein the page granularity is bounded by a minimum page size; initiating contents of a pagegrain register to designate the minimum page size such that address translation comports with a legacy memory management protocol; programming the contents of the pagegrain register to designate the minimum page size such that address translation comports with an extended memory management protocol; and determining a page size for the corresponding physical memory page based on the page granularity and said programming.
Claim 33
Dependent Claim
19 words
The method as recited in claim 28 , wherein said initiating sets the minimum page size to 4 KB.
Claim 34
Dependent Claim
25 words
The method as recited in claim 28 , wherein said programming sets the minimum page size to either 1 KB, 2 KB, or 4 KB.
Claim 35
Dependent Claim
23 words
The method as recited in claim 28 , wherein said programming comprises: executing an instruction in accordance with said extended memory management protocol.
Claim 36
Dependent Claim
49 words
The method as recited in claim 28 , wherein said storing comprises: within the each of the PTEs, employing a physical frame number (PFN) field, wherein bits of the PFN field are used to generate an upper part of a physical address associated with the corresponding physical memory page.
Claim 37
Dependent Claim
72 words
The method as recited in claim 32 , further comprising: first constructing the upper part, wherein the page size determines positions within the upper part that are occupied by bits taken from the physical frame number field; and second constructing a lower part of the physical address using lower bits of a virtual address, wherein the page size determines how many of the lower bits are used to construct the lower part.
Claim 38
Dependent Claim
44 words
The method as recited in claim 28 , wherein said storing comprises: employing a translation lookaside buffer (TLB) that is configured to store frequently used PTEs; and from the TLB, providing said PFN field for construction of said upper part of said physical address.
Claim 39
Dependent Claim
15 words
The method as recited in claim 34 , wherein said TLB is a software-based TLB.
Claim 40
Dependent Claim
15 words
The method as recited in claim 34 , wherein said TLB is a hardware-based TLB.
Claim 41
Dependent Claim
173 words
A virtual memory system, for providing programmable minimum memory page sizes, the virtual memory system comprising: a central processing unit (CPU), for accessing instructions/data within a physical memory, wherein access of said instructions/data is controlled according to a legacy virtual memory management protocol or an extended virtual memory management protocol, said CPU comprising: a pagegrain register, configured to prescribe a minimum page size, in default, according to said legacy memory management protocol, and in alternative, as one of the programmable minimum memory page sizes according to said extended memory management protocol; and a memory management unit (MMU), coupled to said pagegrain register, configured to store a plurality of page table entries (PTEs), each of said plurality of PTEs specifying a page granularity for a corresponding physical memory page, wherein said page granularity is bounded by said minimum page size, said MMU comprising: page granularity logic, configured to determine a page size for said corresponding physical memory page, wherein said page size is determined based on said minimum page size and said page granularity.
Claim 42
Dependent Claim
173 words
A virtual memory system, for providing programmable minimum memory page sizes, the virtual memory system comprising: a central processing unit (CPU), for accessing instructions/data within a physical memory, wherein access of said instructions/data is controlled according to a legacy virtual memory management protocol or an extended virtual memory management protocol, said CPU comprising: a pagegrain register, configured to prescribe a minimum page size, in default, according to said legacy memory management protocol, and in alternative, as one of the programmable minimum memory page sizes according to said extended memory management protocol; and a memory management unit (MMU), coupled to said pagegrain register, configured to store a plurality of page table entries (PTEs), each of said plurality of PTEs specifying a page granularity for a corresponding physical memory page, wherein said page granularity is bounded by said minimum page size, said MMU comprising: page granularity logic, configured to determine a page size for said corresponding physical memory page, wherein said page size is determined based on said minimum page size and said page granularity.