← Back to Patent Explorer
US5329627A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and apparatus for a translation lookaside buffer with built-in replacement scheme in a computer system

Assignee: Sun Microsystems Inc
•
Filing: 1992-04-17
•
Granted: 1994-07-12
•
Expires: 2012-04-17
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and apparatus for selecting an entry to be replaced in a translation lookaside buffer in a computer system. The translation lookaside buffer stores a plurality of entries of virtual-to-physical address translations with each entry having a used bit and a valid bit. The circuit comprises a validity circuit coupled to the valid bit of each entry for determining whether the entry is valid and if not, the validity circuit causes a first signal to be asserted; a use circuit coupled to the used bit of each entry and to the validity circuit for determining whether the entry is used when a control signal is present and if not, the use circuit asserts a second signal to the validity circuit, the asserted second signal causing the first signal to be asserted; a ripple circuit coupled to each entry, its previous entry and its next entry, the ripple circuit receiving the first signal from the validity circuit of each entry and a first FOUND signal from its previous entry, the ripple circuit outputting a second FOUND signal, the ripple circuit causing the second FOUND signal to be asserted when the first signal is asserted and the first FOUND signal is de-asserted, the ripple circuit causing the second FOUND signal to be asserted when the first FOUND signal is asserted, the second FOUND signal being input to the ripple circuit of its next entry, wherein an asserted second FOUND signal for an entry causes the second FOUND signal for its next entry to be asserted, such that an entry with an asserted second FOUND signal propagates the asserted second FOUND signal through its next consecutive entries.

Inventors

  • 👤 Sunil Nanda
  • 👤 Norman M. Hayes

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-09 14:50
CPC Classifications
G; G06; G06F; G06F12/00; G06F12/02; G06F12/08; G06F12/12; G06F12/121

Claims Analysis

Total Claims: 14
Claim 1
Independent Claim 346 words
In a computer system using virtual addressing for its memory operations, a circuit for selecting an entry in a translation lookaside buffer to be replaced, wherein said translation lookaside buffer stores a plurality of entries of virtual-to-physical address translations, each of said plurality of entries has a used bit and a valid bit, said used bit for indicating when an entry is accessed for said memory operations, said valid bit for indicating when the virtual-to-physical translation of an entry is not valid, said circuit comprising: a plurality of validity means, each of said plurality of validity means coupled to the valid bit of each entry for determining whether said entry is valid and if not, said validity means causing a first signal to be asserted; a plurality of use means, each of said plurality of use means coupled to the used bit of each entry and to said validity means for determining whether said entry is used when a control signal is present and if not, said use means asserting a second signal to said validity means, said asserted second signal causing said first signal to be asserted; a plurality of ripple means, each of said plurality of ripple means coupled to each entry, to an immediately previous entry and to a next consecutive entry, said ripple means receiving said first signal from the validity means of each entry and a first FOUND signal from said immediately previous entry, said ripple means outputting a second FOUND signal, said ripple means causing said second FOUND signal to be asserted when said first signal is asserted and said first FOUND signal is de-asserted, said ripple means causing said second FOUND signal to be asserted when said first FOUND signal is asserted, said second FOUND signal being input to the ripple means of said next consecutive entry, wherein an asserted second FOUND signal for an entry causes the second FOUND signal for said next consecutive entry to be asserted, such that an entry with an asserted second FOUND signal propagates said asserted second FOUND signal through next consecutive entries.
Claim 2
Dependent Claim 346 words
In a computer system using virtual addressing for its memory operations, a circuit for selecting an entry in a translation lookaside buffer to be replaced, wherein said translation lookaside buffer stores a plurality of entries of virtual-to-physical address translations, each of said plurality of entries has a used bit and a valid bit, said used bit for indicating when an entry is accessed for said memory operations, said valid bit for indicating when the virtual-to-physical translation of an entry is not valid, said circuit comprising: a plurality of validity means, each of said plurality of validity means coupled to the valid bit of each entry for determining whether said entry is valid and if not, said validity means causing a first signal to be asserted; a plurality of use means, each of said plurality of use means coupled to the used bit of each entry and to said validity means for determining whether said entry is used when a control signal is present and if not, said use means asserting a second signal to said validity means, said asserted second signal causing said first signal to be asserted; a plurality of ripple means, each of said plurality of ripple means coupled to each entry, to an immediately previous entry and to a next consecutive entry, said ripple means receiving said first signal from the validity means of each entry and a first FOUND signal from said immediately previous entry, said ripple means outputting a second FOUND signal, said ripple means causing said second FOUND signal to be asserted when said first signal is asserted and said first FOUND signal is de-asserted, said ripple means causing said second FOUND signal to be asserted when said first FOUND signal is asserted, said second FOUND signal being input to the ripple means of said next consecutive entry, wherein an asserted second FOUND signal for an entry causes the second FOUND signal for said next consecutive entry to be asserted, such that an entry with an asserted second FOUND signal propagates said asserted second FOUND signal through next consecutive entries.
Claim 3
Dependent Claim 68 words
A circuit according to claim 1, further comprising a plurality of select means, each of said plurality of select means coupled to said ripple means of each entry for selecting an entry in said translation lookaside buffer from among a plurality of consecutive entries, said entry being the first in said plurality of consecutive entries, each of said plurality of consecutive entries having its second FOUND signal asserted.
Claim 4
Dependent Claim 38 words
A circuit according to claim 2, wherein said use means coupled to the used bit of each entry is an AND gate, and said validity means coupled to the valid bit of each entry is a NOR gate.
Claim 5
Dependent Claim 172 words
A circuit according to claim 3, wherein said ripple means coupled to each entry comprises: a n-channel MOSFET having its gate coupled to the output of said NOR gate and its drain coupled to said first FOUND signal from said immediately previous entry; a first p-channel MOSFET having its gate coupled to the gate of said n-channel MOSFET and having its drain coupled to a source of said n-channel MOSFET, said drain of said first p-channel MOSFET and said source of said n-channel MOSFET generating a third FOUND signal to be outputted to said select means; a second p-channel MOSFET having its drain coupled to said source of said n-channel MOSFET and to said drain of said first p-channel MOSFET and having its gate coupled to said drain of said first p-channel MOSFET through a first inverter; a second inverter, an input side of said second inverter coupled to the gate of said second p-channel MOSFET, said second inverter outputting said second FOUND signal to be outputted to said next consecutive entry.
Claim 6
Dependent Claim 44 words
A circuit according to claim 1, further comprising a plurality of control means, each of said plurality of control means coupled to said use means of each entry for disabling said use means when at least one of said plurality of entries is invalid.
Claim 7
Dependent Claim 32 words
A circuit according to claim 5, wherein said control means of each entry disables said use means of each entry by NOR-ing all of the valid bits of said plurality of entries.
Claim 8
Dependent Claim 388 words
In a computer system using virtual addressing for its memory operations, a method of selecting an entry in a translation lookaside buffer to be replaced using a circuit, wherein said translation lookaside buffer stores a plurality of entries of virtual-to-physical address translations, each of said plurality of entries has a used bit and a valid bit, said used bit for indicating when an entry is accessed for said memory operations, said valid bit for indicating when the virtual-to-physical translation of an entry is not valid, and wherein said circuit comprises a plurality of validity means, a plurality of use means and a plurality of ripple means wherein each of said plurality of validity means is coupled to said valid bit of each entry, each of said plurality of use means is coupled to said used bit of each entry, and each of said ripple means is coupled to each entry, said method comprising the steps of: determining whether said entry is valid by said validity means coupled to the valid bit of each entry, and if not, said validity means causing a first signal to be asserted; determining whether said entry is used when a control signal is present by said use means coupled to the used bit of each entry and to said validity means and if not, said use means asserting a second signal to said validity means, said asserted second signal causing said first signal to be asserted; receiving said first signal from the validity means of each entry and a first FOUND signal from an immediately previous entry by said ripple means coupled to each entry, to said immediately previous entry and to a next consecutive entry, said ripple means outputting a second FOUND signal, said ripple means causing said second FOUND signal to be asserted when said first signal is asserted and said first FOUND signal is de-asserted, said ripple means causing said second FOUND signal to be asserted when said first FOUND signal is asserted, said second FOUND signal being input to the ripples means of said next consecutive entry, wherein an asserted second FOUND signal for an entry causes the second FOUND signal for said next consecutive entry to be asserted, such that an entry with an asserted second FOUND signal propagates said asserted second FOUND signal through next consecutive entries.
Claim 9
Dependent Claim 388 words
In a computer system using virtual addressing for its memory operations, a method of selecting an entry in a translation lookaside buffer to be replaced using a circuit, wherein said translation lookaside buffer stores a plurality of entries of virtual-to-physical address translations, each of said plurality of entries has a used bit and a valid bit, said used bit for indicating when an entry is accessed for said memory operations, said valid bit for indicating when the virtual-to-physical translation of an entry is not valid, and wherein said circuit comprises a plurality of validity means, a plurality of use means and a plurality of ripple means wherein each of said plurality of validity means is coupled to said valid bit of each entry, each of said plurality of use means is coupled to said used bit of each entry, and each of said ripple means is coupled to each entry, said method comprising the steps of: determining whether said entry is valid by said validity means coupled to the valid bit of each entry, and if not, said validity means causing a first signal to be asserted; determining whether said entry is used when a control signal is present by said use means coupled to the used bit of each entry and to said validity means and if not, said use means asserting a second signal to said validity means, said asserted second signal causing said first signal to be asserted; receiving said first signal from the validity means of each entry and a first FOUND signal from an immediately previous entry by said ripple means coupled to each entry, to said immediately previous entry and to a next consecutive entry, said ripple means outputting a second FOUND signal, said ripple means causing said second FOUND signal to be asserted when said first signal is asserted and said first FOUND signal is de-asserted, said ripple means causing said second FOUND signal to be asserted when said first FOUND signal is asserted, said second FOUND signal being input to the ripples means of said next consecutive entry, wherein an asserted second FOUND signal for an entry causes the second FOUND signal for said next consecutive entry to be asserted, such that an entry with an asserted second FOUND signal propagates said asserted second FOUND signal through next consecutive entries.
Claim 10
Dependent Claim 87 words
A method according to claim 7, wherein said circuit further comprises a plurality of select means, each of said plurality of select means coupled to said ripple means of each entry, further comprising the step of selecting an entry in said translation lookaside buffer from among a plurality of consecutive entries by said select means coupled to said ripple means of each entry, said entry being the first in said plurality of consecutive entries, each of said plurality of consecutive entries having its second FOUND signal asserted.
Claim 11
Dependent Claim 38 words
A method according to claim 8, wherein said use means coupled to the used bit of each entry is an AND gate, and said validity means coupled to the valid bit of each entry is a NOR gate.
Claim 12
Dependent Claim 172 words
A method according to claim 9, wherein said ripple means coupled to each entry comprises: a n-channel MOSFET having its gate coupled to the output of said NOR gate and its drain coupled to said first FOUND signal from said immediately previous entry; a first p-channel MOSFET having its gate coupled to the gate of said n-channel MOSFET and having its drain coupled to a source of said n-channel MOSFET, said drain of said first p-channel MOSFET and said source of said n-channel MOSFET generating a third FOUND signal to be outputted to said select means; a second p-channel MOSFET having its drain coupled to said source of said n-channel MOSFET and to said drain of said first p-channel MOSFET and having its gate coupled to said drain of said first p-channel MOSFET through a first inverter; a second inverter, an input side of said second inverter coupled to the gate of said second p-channel MOSFET, said second inverter outputting said second FOUND signal to be outputted to said next consecutive entry.
Claim 13
Dependent Claim 61 words
A method according to claim 7, wherein said circuit further comprises a plurality of control means, each of said plurality of control means coupled to said use means of each entry, further comprising the step of disabling said use means of each entry by said control means of each entry when at least one of said plurality of entries is invalid.
Claim 14
Dependent Claim 32 words
A method according to claim 11, wherein said control means of each entry disables said use means of each entry by NOR-ing all of the valid bits of said plurality of entries.

References Cited (Backward Citations)

US4195343A Cited
US4731739A Cited
US4783735A Cited
US4928239A Cited
US4961135A Cited
US4802086A Cited
US4996641A Cited
US5155825A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1997-07-11 1998-01-10 1998-07-12 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2001-07-11 2002-01-10 2002-07-12 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2005-07-11 2006-01-10 2006-07-12 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag