Claims Analysis
Total Claims: 18
Claim 1
Independent Claim
196 words
An apparatus for translating a first address in a first address space to a second address in a second address space, comprising: (a) a processor; (b) a page table having a translation mask register, a comparison value register, and a replacement value register; and (c) a comparator coupled to the comparison value register and to the replacement value register; wherein: the first address comprises a first subaddress and a second subaddress, the first subaddress comprising a subset of the bits of the first address and the second subaddress comprising remaining bits of the first address; the first subaddress masked with a mask value stored in the mask register is compared by the comparator with successive comparison values stored in the comparison value register until a match comparison value is found; and if a match comparison value is found, then a replacement value in the replacement value register corresponding to the match comparison value is concatenated with the second subaddress to provide the second address; otherwise, if a match comparison value is not found, then a fault interrupt is generated to interrupt the translation and the processor accesses a service routine in accordance with the fault interrupt.
Claim 2
Independent Claim
196 words
An apparatus for translating a first address in a first address space to a second address in a second address space, comprising: (a) a processor; (b) a page table having a translation mask register, a comparison value register, and a replacement value register; and (c) a comparator coupled to the comparison value register and to the replacement value register; wherein: the first address comprises a first subaddress and a second subaddress, the first subaddress comprising a subset of the bits of the first address and the second subaddress comprising remaining bits of the first address; the first subaddress masked with a mask value stored in the mask register is compared by the comparator with successive comparison values stored in the comparison value register until a match comparison value is found; and if a match comparison value is found, then a replacement value in the replacement value register corresponding to the match comparison value is concatenated with the second subaddress to provide the second address; otherwise, if a match comparison value is not found, then a fault interrupt is generated to interrupt the translation and the processor accesses a service routine in accordance with the fault interrupt.
Claim 3
Dependent Claim
42 words
The apparatus of claim 1, further comprising a processor address space comparator for comparing the first address to a processor address space threshold, wherein the second address is equal to the first address if the first address is less than the threshold.
Claim 4
Dependent Claim
58 words
The apparatus of claim 1, wherein, if the first subaddress masked with the mask value in the mask register matches more than one comparison value in the comparison value register, then the first of the comparison values that match is used to determine the replacement value that is concatenated with the second subaddress to provide the second address.
Claim 5
Dependent Claim
38 words
The apparatus of claim 1, wherein the first address space is a processor address space of the processor and the second address space is a system address space of a computer system with which the processor is associated.
Claim 6
Dependent Claim
35 words
The apparatus of claim 1, wherein: the first address and second address are 32-bit addresses; and the mask register stores 20-bit masks which partition the first address into the first subaddress and the second subaddress.
Claim 7
Dependent Claim
32 words
The apparatus of claim 5, wherein the first subaddress comprises a variable page address of 0 to 20 bits and the second subaddress comprises a variable offset of 12 to 32 bits.
Claim 8
Dependent Claim
94 words
The apparatus of claim 1, wherein: data having a data format is associated with the first address space; the comparison value register stores, for each of said successive comparison values, at least one data format type bit that indicates the data format of data associated with an address of the first address space that matches each successive comparison value; and the at least one data format type bit is concatenated with the replacement value in the replacement value register corresponding to the match comparison value and the second subaddress to provide the second address.
Claim 9
Dependent Claim
31 words
The apparatus of claim 7, wherein the data format is one of a least significant bit to most significant bit format, and a most significant bit to least significant bit format.
Claim 10
Independent Claim
196 words
A method for translating a first address in a first address space to a second address in a second address space, comprising the steps of: (a) providing a processor, a page table having a translation mask register, a comparison value register, a replacement value register, and a comparator coupled to the comparison value register and to the replacement value register; (b) partitioning the first address into a first subaddress and a second subaddress, the first subaddress comprising a subset of the bits of the first address and the second subaddress comprising remaining bits of the first address; (c) comparing with the comparator the first subaddress masked with a mask value stored in the mask register with successive comparison values stored in the comparison value register until a match comparison value is found; and (d) if a match comparison value is found, then concatenating a replacement value in the replacement value register corresponding to the match comparison value with the second subaddress to provide the second address; (e) otherwise, if a match comparison value is not found, then generating a fault interrupt to interrupt the translation and accessing a service routine in accordance with the fault interrupt.
Claim 11
Independent Claim
196 words
A method for translating a first address in a first address space to a second address in a second address space, comprising the steps of: (a) providing a processor, a page table having a translation mask register, a comparison value register, a replacement value register, and a comparator coupled to the comparison value register and to the replacement value register; (b) partitioning the first address into a first subaddress and a second subaddress, the first subaddress comprising a subset of the bits of the first address and the second subaddress comprising remaining bits of the first address; (c) comparing with the comparator the first subaddress masked with a mask value stored in the mask register with successive comparison values stored in the comparison value register until a match comparison value is found; and (d) if a match comparison value is found, then concatenating a replacement value in the replacement value register corresponding to the match comparison value with the second subaddress to provide the second address; (e) otherwise, if a match comparison value is not found, then generating a fault interrupt to interrupt the translation and accessing a service routine in accordance with the fault interrupt.
Claim 12
Dependent Claim
42 words
The method of claim 9, further comprising the steps of: (f) comparing the first address to a processor address space threshold; and (g) if the first address is less than the threshold, then setting the second address equal to the first address.
Claim 13
Dependent Claim
58 words
The method of claim 9, wherein, if the first subaddress masked with the mask value in the mask register matches more than one comparison value in the comparison value register, then the first of the comparison values that match is used to determine the replacement value that is concatenated with the second subaddress to provide the second address.
Claim 14
Dependent Claim
38 words
The method of claim 9, wherein the first address space is a processor address space of the processor and the second address space is a system address space of a computer system with which the processor is associated.
Claim 15
Dependent Claim
35 words
The method of claim 9, wherein: the first address and second address are 32-bit addresses; and the mask register stores 20-bit masks which position the first address into the first subaddress and the second subaddress.
Claim 16
Dependent Claim
32 words
The method of claim 13, wherein the first subaddress comprises a variable page address of 0 to 20 bits and the second subaddress comprises a variable offset of 12 to 32 bits.
Claim 17
Dependent Claim
94 words
The method of claim 9, wherein: data having a data format is associated with the first address space; the comparison value register stores, for each of said successive comparison values, at least one data format type bit that indicates the data format of data associated with an address of the first address space that matches each successive comparison value; and the at least one data format type bit is concatenated with the replacement value in the replacement value register corresponding to the match comparison value and the second subaddress to provide the second address.
Claim 18
Dependent Claim
31 words
The method of claim 15, wherein the data format is one of: a least significant bit to most significant bit format, and a most significant bit to least significant bit format.