Claims Analysis
Total Claims: 18
Claim 1
Independent Claim
390 words
In a cache having an ordered plurality of locations into a selected one of which information is loaded in response to a select signal applied thereto, a location selector comprising: an ordered plurality of valid bit latches, each associated with a respective one of the locations in the cache, for storing valid bits indicative of the validity of the information in the associated location in the cache; valid select logic, coupled to the valid bit latches, for determining the highest one, if any, of the valid bit latches having a valid bit indicating the invalidity of the information in the associated location in the cache, and providing a first location selection signal corresponding to that location in the cache; a location index latch, responsive to the select signal, for providing an index signal indicative of an indexed location in the cache relative to the location indicated by the select signal; an ordered plurality of history bit latches, each associated with a respective one of the locations in the cache, for storing history bits indicative of the replacement status of the information in the associated location in the cache; replacement select logic, coupled to the history bit latches, for determining the highest one, if any, of the history bit latches having a history bit indicating that the information in the associated location in the cache is replaceable, and providing a second location selection signal corresponding to that location in the cache; and location select logic, coupled to the valid bit latches, for applying the select signal to the location in the cache selected by the first location selection signal if at least one of the valid bits indicate that the information in the associated location in the cache is invalid, and applying the select signal to the location in the cache selected by the second location selection signal if all of the valid bits indicate that the information in the associated locations in the cache are valid; characterized in that the location selector includes: history bit control logic, coupled to the history bit latches and to the location index latch, for storing into each of the history bit latches associated with all locations in the cache lower than the indexed location but higher than the selected location, an indication that the information in the associated location in the cache is replaceable.
Claim 2
Dependent Claim
390 words
In a cache having an ordered plurality of locations into a selected one of which information is loaded in response to a select signal applied thereto, a location selector comprising: an ordered plurality of valid bit latches, each associated with a respective one of the locations in the cache, for storing valid bits indicative of the validity of the information in the associated location in the cache; valid select logic, coupled to the valid bit latches, for determining the highest one, if any, of the valid bit latches having a valid bit indicating the invalidity of the information in the associated location in the cache, and providing a first location selection signal corresponding to that location in the cache; a location index latch, responsive to the select signal, for providing an index signal indicative of an indexed location in the cache relative to the location indicated by the select signal; an ordered plurality of history bit latches, each associated with a respective one of the locations in the cache, for storing history bits indicative of the replacement status of the information in the associated location in the cache; replacement select logic, coupled to the history bit latches, for determining the highest one, if any, of the history bit latches having a history bit indicating that the information in the associated location in the cache is replaceable, and providing a second location selection signal corresponding to that location in the cache; and location select logic, coupled to the valid bit latches, for applying the select signal to the location in the cache selected by the first location selection signal if at least one of the valid bits indicate that the information in the associated location in the cache is invalid, and applying the select signal to the location in the cache selected by the second location selection signal if all of the valid bits indicate that the information in the associated locations in the cache are valid; characterized in that the location selector includes: history bit control logic, coupled to the history bit latches and to the location index latch, for storing into each of the history bit latches associated with all locations in the cache lower than the indexed location but higher than the selected location, an indication that the information in the associated location in the cache is replaceable.
Claim 3
Dependent Claim
49 words
The location selector of claim 1 further characterized as including means for locking information in selected locations in the cache and for preventing the history bit control logic from storing into the history bit latches associated with said locations said indication that the information in said locations is replaceable.
Claim 4
Dependent Claim
64 words
The location selector of claim 1 further characterized as including means for storing into the history bit latch associated with each location in the cache which the associated valid bit latch indicates contains valid information, an indication that said information is replaceable, in response to detecting that the history bit latches associated with all such locations indicate that all such locations contain non-replaceable information.
Claim 5
Dependent Claim
372 words
In a cache having an ordered plurality of locations into a selected one of which information is loaded in response to a select signal applied thereto, a location selector comprising: an ordered plurality of valid bit latches, each associated with a respective one of the locations in the cache, for storing valid bits indicative of the validity of the information in the associated location in the cache; valid select logic, coupled to the valid bit latches, for determining the highest one, if any, of the valid bit latches having a valid bit indicating the invalidity of the information in the associated location in the cache, and providing a first location selection signal corresponding to that location in the cache; a location index latch, responsive to the select signal, for providing an index signal indicative of an indexed location in the cache relative to the location indicated by the select signal; an ordered plurality of history bit latches, each associated with a respective one of the locations in the cache, for storing history bits indicative of the replacement status of the information in the associated location in the cache; replacement select logic, coupled to the history bit latches, for determining the highest one, if any, of the history bit latches having a history bit indicating that the information in the associated location in the cache is replaceable, and providing a second location selection signal corresponding to that location in the cache; and location select logic, coupled to the valid bit latches, for applying the select signal to the location in the cache selected by the first location selection signal if at least one of the valid bits indicate that the information in the associated location in the cache is invalid, and applying the select signal to the location in the cache selected by the second location selection signal if all of the valid bits indicate that the information in the associated locations in the cache are valid; characterized in that the location selector stores into each of the history bit latches associated with all locations in the cache lower than the indexed location but higher than the selected location, an indication that the information in the associated location in the cache is replaceable.
Claim 6
Dependent Claim
372 words
In a cache having an ordered plurality of locations into a selected one of which information is loaded in response to a select signal applied thereto, a location selector comprising: an ordered plurality of valid bit latches, each associated with a respective one of the locations in the cache, for storing valid bits indicative of the validity of the information in the associated location in the cache; valid select logic, coupled to the valid bit latches, for determining the highest one, if any, of the valid bit latches having a valid bit indicating the invalidity of the information in the associated location in the cache, and providing a first location selection signal corresponding to that location in the cache; a location index latch, responsive to the select signal, for providing an index signal indicative of an indexed location in the cache relative to the location indicated by the select signal; an ordered plurality of history bit latches, each associated with a respective one of the locations in the cache, for storing history bits indicative of the replacement status of the information in the associated location in the cache; replacement select logic, coupled to the history bit latches, for determining the highest one, if any, of the history bit latches having a history bit indicating that the information in the associated location in the cache is replaceable, and providing a second location selection signal corresponding to that location in the cache; and location select logic, coupled to the valid bit latches, for applying the select signal to the location in the cache selected by the first location selection signal if at least one of the valid bits indicate that the information in the associated location in the cache is invalid, and applying the select signal to the location in the cache selected by the second location selection signal if all of the valid bits indicate that the information in the associated locations in the cache are valid; characterized in that the location selector stores into each of the history bit latches associated with all locations in the cache lower than the indexed location but higher than the selected location, an indication that the information in the associated location in the cache is replaceable.
Claim 7
Dependent Claim
40 words
The location selector of claim 4 further characterized as locking information in selected locations in the cache and preventing the storing into the history bit latches associated with said locations said indication that the information in said locations is replaceable.
Claim 8
Dependent Claim
61 words
The location selector of claim 4 further characterized as storing into the history bit latch associated with each location in the cache which the associated valid bit latch indicates contains valid information, an indication that said information is replaceable, in response to detecting that the history bit latches associated with all such locations indicate that all such locations contain nonreplaceable information.
Claim 9
Dependent Claim
260 words
In a cache location selector, a valid chain for selecting one location in a cache, if any, which does not contain valid information, comprising: an ordered plurality of valid chain cells, each valid chain cell being associated with a respective one of the locations in the cache and comprising: a valid bit latch for storing a valid bit indicative of the validity of the information in the associated location in the cache; a valid chain gate having a first input coupled to the output of the valid bit latch of the same valid chain cell, a second input, and an output; an inverter having an input coupled to the output of the valid chain latch of the same valid chain cell, and an output; a valid select gate having a first input coupled to the output of the inverter of the same valid chain cell, a second input, and an output; wherein the second inputs of the valid chain gate and of the valid select gate of the highest valid chain cell are connected so as to be asserted always, and wherein the second inputs of the valid chain gate and of the valid select gate of the valid chain cells other than the highest valid chain cell are coupled to the output of the valid chain gate of the next higher valid chain cell; whereby only one, if any, of the valid select gates will provide a valid select signal via the output thereof corresponding to said location in the cache, if any, which does not contain valid information.
Claim 10
Dependent Claim
260 words
In a cache location selector, a valid chain for selecting one location in a cache, if any, which does not contain valid information, comprising: an ordered plurality of valid chain cells, each valid chain cell being associated with a respective one of the locations in the cache and comprising: a valid bit latch for storing a valid bit indicative of the validity of the information in the associated location in the cache; a valid chain gate having a first input coupled to the output of the valid bit latch of the same valid chain cell, a second input, and an output; an inverter having an input coupled to the output of the valid chain latch of the same valid chain cell, and an output; a valid select gate having a first input coupled to the output of the inverter of the same valid chain cell, a second input, and an output; wherein the second inputs of the valid chain gate and of the valid select gate of the highest valid chain cell are connected so as to be asserted always, and wherein the second inputs of the valid chain gate and of the valid select gate of the valid chain cells other than the highest valid chain cell are coupled to the output of the valid chain gate of the next higher valid chain cell; whereby only one, if any, of the valid select gates will provide a valid select signal via the output thereof corresponding to said location in the cache, if any, which does not contain valid information.
Claim 11
Dependent Claim
39 words
The valid chain of claim 7 wherein the output of the valid chain gate of the lowest valid chain cell comprises an ALLVALID signal, which, when asserted, indicates that all of the locations in the cache contain valid information.
Claim 12
Dependent Claim
333 words
In a cache location selector, a history loop for selecting one location in a cache for First-In-Not-Used-First-Out (FINUFO) replacement, comprising: an ordered plurality of history loop cells, each history loop cell being associated with a respective one of the locations in the cache and comprising: a location index latch for storing an index bit indicative of information in the associated location in the cache being considered first for FINUFO replacement; a location index gate having a first input coupled to the output of the location index latch of the same history loop cell, a second input, and an output; a history bit latch for storing a history bit indicative of a recent access to the information in the associated location in the cache; a history loop gate having a first input coupled to the output of the history bit latch of the same history loop cell, a second input coupled to the output of the location index gate of the same history loop cell, and an output; a first inverter having an input coupled to the output of the history loop latch of the same history loop cell, and an output; a history select gate having a first input coupled to the output of the first inverter of the same history loop cell, a second input coupled to the output of the location index gate of the same history loop cell, and an output; wherein the second input of the location index gate of the highest history loop cell is coupled to the output of the history loop gate of the lowest history loop cell, and wherein the second input of the location index gate of every history loop cell other than the highest history loop cell is coupled to the output of the history loop gate of the next higher history loop cell; whereby only one of the history select gates will provide a history select signal via the output thereof corresponding to said location in the cache selected for FINUFO replacement.
Claim 13
Dependent Claim
333 words
In a cache location selector, a history loop for selecting one location in a cache for First-In-Not-Used-First-Out (FINUFO) replacement, comprising: an ordered plurality of history loop cells, each history loop cell being associated with a respective one of the locations in the cache and comprising: a location index latch for storing an index bit indicative of information in the associated location in the cache being considered first for FINUFO replacement; a location index gate having a first input coupled to the output of the location index latch of the same history loop cell, a second input, and an output; a history bit latch for storing a history bit indicative of a recent access to the information in the associated location in the cache; a history loop gate having a first input coupled to the output of the history bit latch of the same history loop cell, a second input coupled to the output of the location index gate of the same history loop cell, and an output; a first inverter having an input coupled to the output of the history loop latch of the same history loop cell, and an output; a history select gate having a first input coupled to the output of the first inverter of the same history loop cell, a second input coupled to the output of the location index gate of the same history loop cell, and an output; wherein the second input of the location index gate of the highest history loop cell is coupled to the output of the history loop gate of the lowest history loop cell, and wherein the second input of the location index gate of every history loop cell other than the highest history loop cell is coupled to the output of the history loop gate of the next higher history loop cell; whereby only one of the history select gates will provide a history select signal via the output thereof corresponding to said location in the cache selected for FINUFO replacement.
Claim 14
Dependent Claim
85 words
The history loop of claim 9 wherein each history loop cell further comprises: a history clear gate having a first input coupled to the output of the history loop gate of the same history loop cell, a second input adapted to receive a LOAD signal indicative of the loading of information into a location in the cache, and an output; and wherein each history bit latch has a CLEAR input coupled to the output of the history loop gate of the same history loop cell.
Claim 15
Dependent Claim
86 words
The history loop of claim 10 wherein each history loop cell further comprises: a lock bit latch for storing a lock bit indicative of information in the associated location in the cache being unavailable for FINUFO replacement; and a second inverter having an input coupled to the output of the lock bit latch of the same history loop cell, and an output; and wherein each history clear gate has a third input coupled to the output of the second inverter of the same history loop cell.
Claim 16
Dependent Claim
88 words
The history loop of claim 10 wherein each history loop cell further comprises: a valid history gate having a first input coupled to the output of the history bit latch of the same history loop cell, a second input adapted to receive a valid bit signal indicative of the invalidity of the information in the associated location in the cache, and an output; and wherein each history bit latch has a CLEAR input coupled to the output of the history loop gate of the same history loop cell.
Claim 17
Dependent Claim
263 words
The cache location selector of claim 9 including a valid chain for selecting one location in a cache, if any, which does not contain valid information, comprising: an ordered plurality of valid chain cells, each valid chain cell being associated with a respective one of the locations in the cache and comprising: a valid bit latch for storing a valid bit indicative of the validity of the information in the associated location in the cache; a valid chain gate having a first input coupled to the output of the valid bit latch of the same valid chain cell, a second input, and an output; an inverter having an input coupled to the output of the valid chain latch of the same valid chain cell, and an output; a valid select gate having a first input coupled to the output of the inverter of the same valid chain cell, a second input, and an output; wherein the second inputs of the valid chain gate and of the valid select gate of the highest valid chain cell are connected so as to be asserted always, and wherein the second inputs of the valid chain gate and of the valid select gate of the valid chain cells other than the highest valid chain cell are coupled to the output of the valid chain gate of the next higher valid chain cell; whereby only one, if any, of the valid select gates will provide a valid select signal via the output thereof corresponding to said location in the cache, if any, which does not contain valid information.
Claim 18
Dependent Claim
84 words
The location selector of claim 13 wherein the output of the valid chain gate of the lowest valid chain cell comprises an ALLVALID signal, which, when asserted, indicates that all of the locations in the cache contain valid information, and wherein said valid select signal determines the selection of said selected one location in response to the negation of the ALLVALID signal, and the history select signal determines the selection of said selected one location in response to the assertion of the ALLVALID signal.