Patent US5600806A successfully refreshed from Google Patents.
US5600806A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Method and apparatus for aligning an instruction boundary in variable length macroinstructions with an instruction buffer
Assignee: Intel Corp
•
Filing: 1994-03-01
•
Granted: 1997-02-04
•
Expires: 2014-03-01
Abstract
Abstract A circuit and method for supplying and aligning a block of multiple variable length macro instructions to an instruction buffer. Only one cycle is required to align and rotate the block of instruction code. A last byte vector of the instruction code in the instruction buffer is scanned from the last byte in a direction from back to front, thereby saving time. Rotating begins immediately so that a next block of instruction code is available in a next cycle. The block is stored in the instruction buffer after all macroinstructions therein have been steered to the decoder.
Inventors
- 👤 Gary L. Brown
- 👤 Donald D. Parker
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-11-04 21:39
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/30; G06F9/30145; G06F9/30149; G06F9/30152; G06F9/38; G06F9/3802; G06F9/3816; G06F9/3818; G06F9/382
Claims Analysis
Total Claims: 10
Claim 1
Independent Claim
108 words
An aligning and rotating method for aligning and rotating instruction code having multiple variable length macroinstructions included therein to an instruction buffer from which multiple macroinstructions are steered to a decoder, said aligning and rotating method comprising the steps of: a) locating a last macroinstruction boundary in a block of instruction code in the instruction buffer; b) responsive to said last macroinstruction boundary, rotating a next block of instruction code beginning with said last macroinstruction boundary; c) steering all complete macroinstructions from the instruction buffer to the decoder; and d) subsequent to said step c), storing said block in said instruction buffer, and repeating steps a) through c).
Claim 2
Dependent Claim
108 words
An aligning and rotating method for aligning and rotating instruction code having multiple variable length macroinstructions included therein to an instruction buffer from which multiple macroinstructions are steered to a decoder, said aligning and rotating method comprising the steps of: a) locating a last macroinstruction boundary in a block of instruction code in the instruction buffer; b) responsive to said last macroinstruction boundary, rotating a next block of instruction code beginning with said last macroinstruction boundary; c) steering all complete macroinstructions from the instruction buffer to the decoder; and d) subsequent to said step c), storing said block in said instruction buffer, and repeating steps a) through c).
Claim 3
Dependent Claim
43 words
The aligning and rotating method of claim I wherein step a) comprises the step of scanning a last byte vector in a direction from the back to the front to locate the last byte of a last complete instruction within said instruction buffer.
Claim 4
Dependent Claim
31 words
The aligning and rotating method of claim 1 wherein: said steps a), b), and c) occur in a first clock cycle; and said step d) occurs in a subsequent clock cycle.
Claim 5
Dependent Claim
149 words
An aligning and rotating method for aligning and rotating instruction code having multiple variable length macroinstructions included therein to an instruction buffer that steers multiple macroinstructions simultaneously to a decoder, said aligning and rotating method comprising the steps of: a) storing a first block of instruction code in the instruction buffer so that a first buffer byte is aligned with a first macroinstruction within the first block; b) scanning the first block beginning with the last buffer byte in a direction from back to front to determine a last byte a the last complete instruction within said instruction buffer; c) rotating a next block of instruction code aligned with said last byte; d) supplying all complete macroinstructions in the first block from the instruction buffer to the decoder; and e) subsequent to said step d), storing the next block in said instruction buffer, and repeating steps b) through d).
Claim 6
Dependent Claim
149 words
An aligning and rotating method for aligning and rotating instruction code having multiple variable length macroinstructions included therein to an instruction buffer that steers multiple macroinstructions simultaneously to a decoder, said aligning and rotating method comprising the steps of: a) storing a first block of instruction code in the instruction buffer so that a first buffer byte is aligned with a first macroinstruction within the first block; b) scanning the first block beginning with the last buffer byte in a direction from back to front to determine a last byte a the last complete instruction within said instruction buffer; c) rotating a next block of instruction code aligned with said last byte; d) supplying all complete macroinstructions in the first block from the instruction buffer to the decoder; and e) subsequent to said step d), storing the next block in said instruction buffer, and repeating steps b) through d).
Claim 7
Dependent Claim
30 words
The aligning and rotating method of claim 4 wherein: said steps a), b), and c) occur in a first microprocessor cycle; and said step d) occurs in a subsequent cycle.
Claim 8
Dependent Claim
117 words
An aligning and rotating circuit for aligning and rotating instruction code having multiple variable length macroinstructions included therein to an instruction buffer from which multiple macroinstructions are steered to a decoder, said circuit comprising: a) means for locating a last macroinstruction boundary in a block of instruction code in the instruction buffer; b) rotating means responsive to said last macroinstruction boundary, for rotating a next block of instruction code beginning with said last macroinstruction boundary; c) steering means for steering all complete macroinstructions from the instruction buffer to the decoder; and d) control means for storing said block in said instruction buffer subsequent to the steering of all completed macroinstruction from the instruction buffer to the decoder.
Claim 9
Dependent Claim
117 words
An aligning and rotating circuit for aligning and rotating instruction code having multiple variable length macroinstructions included therein to an instruction buffer from which multiple macroinstructions are steered to a decoder, said circuit comprising: a) means for locating a last macroinstruction boundary in a block of instruction code in the instruction buffer; b) rotating means responsive to said last macroinstruction boundary, for rotating a next block of instruction code beginning with said last macroinstruction boundary; c) steering means for steering all complete macroinstructions from the instruction buffer to the decoder; and d) control means for storing said block in said instruction buffer subsequent to the steering of all completed macroinstruction from the instruction buffer to the decoder.
Claim 10
Dependent Claim
38 words
The circuit of claim 6 wherein element a) comprises scanning means for scanning a last byte vector in a direction from back to front to locate a last byte of a last complete instruction within the instruction buffer.
References Cited (Backward Citations)
US4050058A
Cited
US4199811A
Cited
US4342078A
Cited
US4394736A
Cited
US4376976A
Cited
US4399505A
Cited
US4654781A
Cited
US4928223A
Cited
US4591972A
Cited
US4745544A
Cited
US5235686A
Cited
US5005118A
Cited
US5101344A
Cited
US4875160A
Cited
US5202967A
Cited
US5233694A
Cited
US5113515A
Cited
US5293592A
Cited
US5129067A
Cited
US5168571A
Cited
US5222244A
Cited
US5488710A
Cited
US5450605A
Cited
US5438668A
Cited
US5371864A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2000-02-04 | 2000-08-05 | 2001-02-04 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2004-02-04 | 2004-08-05 | 2005-02-04 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2008-02-04 | 2008-08-05 | 2009-02-04 | $7700.00 | Window Closed / Lapsed |