Claims Analysis
Total Claims: 20
Claim 1
Independent Claim
225 words
An apparatus for a central processing unit to address data in a second memory, the data in the second memory being a copy of data in a first memory, the first memory having a plurality of bytes storing data, each byte of the first memory addressable by a memory address, comprising: means for storing a plurality of tags and a plurality of blocks in the second memory, each tag associated with one block, and each tag and said associated one block addressable by an index; means, connected to an input of the second memory, for converting a selected memory address to a selected tag and a plurality of different indexes, each different index individually addressing one of said plurality of tags in the second memory; means, connected to said means for converting and said means for storing said plurality of tags, for comparing said selected tag with each of said plurality of tags individually addressed by each of said plurality of different indexes; and means, connected to said means for comparing and said means for storing said plurality of blocks and responsive to said selected tag being equal to one of said plurality of tags individually addressed by each of said different indexes, for addressing a selected block associated with said selected tag to transfer data from the central processing unit to the second memory.
Claim 2
Independent Claim
225 words
An apparatus for a central processing unit to address data in a second memory, the data in the second memory being a copy of data in a first memory, the first memory having a plurality of bytes storing data, each byte of the first memory addressable by a memory address, comprising: means for storing a plurality of tags and a plurality of blocks in the second memory, each tag associated with one block, and each tag and said associated one block addressable by an index; means, connected to an input of the second memory, for converting a selected memory address to a selected tag and a plurality of different indexes, each different index individually addressing one of said plurality of tags in the second memory; means, connected to said means for converting and said means for storing said plurality of tags, for comparing said selected tag with each of said plurality of tags individually addressed by each of said plurality of different indexes; and means, connected to said means for comparing and said means for storing said plurality of blocks and responsive to said selected tag being equal to one of said plurality of tags individually addressed by each of said different indexes, for addressing a selected block associated with said selected tag to transfer data from the central processing unit to the second memory.
Claim 3
Dependent Claim
48 words
The apparatus as in claim 1 whereto said means for converting includes means for translating said selected memory address to said selected tag and a selected index, and a plurality of means for combining said selected tag and said selected index to generate said plurality of different indexes.
Claim 4
Dependent Claim
18 words
The apparatus as in claim 2 wherein each of said means for combining includes a boolean hashing function.
Claim 5
Dependent Claim
16 words
The apparatus as in claim 3 wherein said boolean hashing function includes an exclusive OR function.
Claim 6
Dependent Claim
41 words
The apparatus as in claim 1 wherein said plurality of tags and said plurality of blocks are organized into a plurality of sets of tags and blocks, one set of tags and blocks for each of said plurality of different indexes.
Claim 7
Dependent Claim
50 words
The apparatus as in claim 1 wherein said plurality of tags are concurrently addressable by said plurality of different indexes and further comprising: a plurality of sets of lines connecting said means for converting, each one of said sets of lines for carrying one of said plurality of different indexes.
Claim 8
Independent Claim
158 words
A method for a central processing unit to address data in a second memory, the data in the second memory being a copy of data in a first memory, the first memory having a plurality of bytes storing data, each byte of the first memory addressable by a memory address, the method comprising: organizing the second memory into a plurality of tags and a plurality of blocks, each tag associated with one block, and each tag and said associated one block addressable by an index; converting a selected memory address to a selected tag and a plurality of different indexes, each different index individually addressing a different tag in the second memory; comparing said selected tag with each of said different tags; and addressing, as determined by said selected tag being equal to one of said different tags, a selected block associated with said selected tag to transfer data between the central processing unit and the second memory.
Claim 9
Independent Claim
158 words
A method for a central processing unit to address data in a second memory, the data in the second memory being a copy of data in a first memory, the first memory having a plurality of bytes storing data, each byte of the first memory addressable by a memory address, the method comprising: organizing the second memory into a plurality of tags and a plurality of blocks, each tag associated with one block, and each tag and said associated one block addressable by an index; converting a selected memory address to a selected tag and a plurality of different indexes, each different index individually addressing a different tag in the second memory; comparing said selected tag with each of said different tags; and addressing, as determined by said selected tag being equal to one of said different tags, a selected block associated with said selected tag to transfer data between the central processing unit and the second memory.
Claim 10
Dependent Claim
46 words
The method in claim 7 wherein said step for converting includes the step of translating said selected memory address to said selected tag and a selected index, and a step for combining said selected tag and said selected index to generate said plurality of different indexes.
Claim 11
Dependent Claim
30 words
The method as in claim 8 wherein said step for combining includes the step of hashing by a plurality of boolean hashing functions to generate said plurality of different indexes.
Claim 12
Dependent Claim
16 words
The method as in claim 9 wherein said hashing step includes the step of exclusive ORing.
Claim 13
Dependent Claim
41 words
The method as in claim 7 including the step of organizing said plurality of rags and said plurality of blocks into a plurality of sets of tags and blocks, one set of tags and blocks for each of said different indexes.
Claim 14
Dependent Claim
31 words
The method as in claim 7 including the step of concurrently addressing said plurality of tags by said selected tag and addressing said selected block by said plurality of different indexes.
Claim 15
Independent Claim
318 words
An apparatus for a central processing unit to address data in a second memory, the data in the second memory being a copy of data in a first memory, the first memory having a plurality of bytes storing data, each byte of the first memory addressable by a memory address, comprising: means for storing a plurality of tags and a plurality of blocks in the second memory, each tag associated with one block, and each tag and said associated one block concurrently addressable by an index, said plurality of tags and said plurality of blocks organized into a plurality of sets of tags and blocks, one set of tags and blocks for each of said different indexes; means, connected to an input of the second memory, for translating a selected memory address to a selected tag and a selected index, said selected tag, said selected index, and said selected memory address each having a plurality of bits, the number of bits of said selected tag plus the number of bits of said selected index equal to the number of bits of said selected memory address; a plurality of means, connected to said means for translating, for combining said bits of said selected tag and an equal number of bits of said selected index to generate a plurality of different indexes, each different index individually addressing a different tag in the second memory, the number of different indexes equal to the number of said sets into which said tags and said associated blocks are organized; means, connected to an output of the second memory, for comparing said selected tag with each of said different tags; and means, connected to said means for comparing and responsive to said selected tag being equal to one of said different tags, for addressing a selected block associated with said selected tag to transfer data between the central processing unit and the second memory.
Claim 16
Independent Claim
318 words
An apparatus for a central processing unit to address data in a second memory, the data in the second memory being a copy of data in a first memory, the first memory having a plurality of bytes storing data, each byte of the first memory addressable by a memory address, comprising: means for storing a plurality of tags and a plurality of blocks in the second memory, each tag associated with one block, and each tag and said associated one block concurrently addressable by an index, said plurality of tags and said plurality of blocks organized into a plurality of sets of tags and blocks, one set of tags and blocks for each of said different indexes; means, connected to an input of the second memory, for translating a selected memory address to a selected tag and a selected index, said selected tag, said selected index, and said selected memory address each having a plurality of bits, the number of bits of said selected tag plus the number of bits of said selected index equal to the number of bits of said selected memory address; a plurality of means, connected to said means for translating, for combining said bits of said selected tag and an equal number of bits of said selected index to generate a plurality of different indexes, each different index individually addressing a different tag in the second memory, the number of different indexes equal to the number of said sets into which said tags and said associated blocks are organized; means, connected to an output of the second memory, for comparing said selected tag with each of said different tags; and means, connected to said means for comparing and responsive to said selected tag being equal to one of said different tags, for addressing a selected block associated with said selected tag to transfer data between the central processing unit and the second memory.
Claim 17
Dependent Claim
18 words
The apparatus as in claim 13 wherein each of said means for combining includes an exclusive OR function.
Claim 18
Dependent Claim
25 words
The apparatus as in claim 13 wherein said means for comparing includes a comparator and said means for addressing said selected block includes a multiplexer.
Claim 19
Dependent Claim
15 words
The apparatus as in claim 13 wherein the second memory is a cache buffer memory.
Claim 20
Dependent Claim
16 words
The apparatus as in claim 13 wherein each of said sets is a random access memory.