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

Multiple instruction set mapping

Assignee: ARM Ltd
•
Filing: 1994-09-19
•
Granted: 1996-10-22
•
Expires: 2014-09-19
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A data processing system is described utilising multiple instruction sets. The program instruction words are supplied to a processor core 2 via an instruction pipeline 6. As program instruction words of a second instruction set pass along the instruction pipeline, they are mapped to program instruction words of the first instruction set. The second instruction set has program instruction words of a smaller bit size than those of the first instruction set and is a subset of the first instruction set. Smaller bit size improves code density, whilst the nature of the second instruction set as a subset of the first instruction set enables a one-to-one mapping to be efficiently performed and so avoid the need for a dedicated instruction decoder for the second instruction set.

Inventors

  • 👤 David V. Jaggar

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-05 02:34
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/30; G06F9/3017; G06F9/30174; G06F9/30181; G06F9/30189; G06F9/30196

Claims Analysis

Total Claims: 15
Claim 1
Independent Claim 221 words
Apparatus for processing data, said apparatus comprising: (i) a processor core responsive to a plurality of core control signals; (ii) decoding means for decoding P bits of an X-bit program instruction word of a first instruction set to generate said core control signals; (iii) an instruction pipeline through which instruction program words are passed to said decoding means; and (iv) first mapping means responsive to a Y-bit program instruction word of a second instruction set passing along said instruction pipeline for mapping Q bits of said Y-bit program instruction word to said P bits of a corresponding X-bit program instruction word for decoding by said decoding means, wherein (v) Y is less than X, P is less than X and said second instruction set is a subset of said first instruction set; and (vi) instruction program words pass through said instruction pipeline over a plurality of processing cycles, one of said processing cycles being a decode cycle, said decoding means being operative to produce said core control signals by the end of said decode cycle and said first mapping means being operative to produce said P bits of said corresponding X-bit program instruction word during a first portion of said decode cycle to enable said decoding means still to produce said core control signals by the end of said decode cycle.
Claim 2
Dependent Claim 221 words
Apparatus for processing data, said apparatus comprising: (i) a processor core responsive to a plurality of core control signals; (ii) decoding means for decoding P bits of an X-bit program instruction word of a first instruction set to generate said core control signals; (iii) an instruction pipeline through which instruction program words are passed to said decoding means; and (iv) first mapping means responsive to a Y-bit program instruction word of a second instruction set passing along said instruction pipeline for mapping Q bits of said Y-bit program instruction word to said P bits of a corresponding X-bit program instruction word for decoding by said decoding means, wherein (v) Y is less than X, P is less than X and said second instruction set is a subset of said first instruction set; and (vi) instruction program words pass through said instruction pipeline over a plurality of processing cycles, one of said processing cycles being a decode cycle, said decoding means being operative to produce said core control signals by the end of said decode cycle and said first mapping means being operative to produce said P bits of said corresponding X-bit program instruction word during a first portion of said decode cycle to enable said decoding means still to produce said core control signals by the end of said decode cycle.
Claim 3
Dependent Claim 31 words
Apparatus as claimed in claim 1, comprising an instruction register for holding an X-bit instruction being executed by said processor core, said processor core reading operand values from said instruction register.
Claim 4
Dependent Claim 50 words
Apparatus as claimed in claim 2, comprising second mapping means for mapping operand values within said Y-bit program instruction word within said instruction pipeline to corresponding positions within said corresponding X-bit program instruction word and storing said mapped operand values in said instruction register for use by said processor core.
Claim 5
Dependent Claim 44 words
Apparatus as claimed in claim 3, wherein said second mapping means maps said Y-bit program instruction word to a complete version of said corresponding X-bit program instruction word and stores said complete version of said corresponding X-bit program instruction word in said instruction register.
Claim 6
Dependent Claim 75 words
Apparatus as claimed in claim 2, comprising second mapping means for mapping operand values within said Y-bit program instruction word within said instruction pipeline to corresponding positions within said corresponding X-bit program instruction word and storing said mapped operand values in said instruction register for use by said processor core and wherein said second mapping means is operative to store said mapped operand values in said instruction register by the end of said decode cycle.
Claim 7
Dependent Claim 19 words
Apparatus as claimed in claim 3, wherein said second mapping means operates in parallel with said first mapping means.
Claim 8
Dependent Claim 55 words
Apparatus as claimed in claim 3, wherein said operands of said X-bit program instruction words have a greater range than said operands of said Y-bit program instruction words and said second mapping means high order zero extends said operands from said Y-bit program instruction words to yield and operands of said X-bit program instruction words.
Claim 9
Dependent Claim 57 words
Apparatus as claimed in claim 1, wherein said processor core has a plurality of registers used by said first instruction set and defined as register operands within some of said X-bit program instruction words and said second instruction set uses a subset of said registers defined as register operands within some of said Y-bit program instruction words.
Claim 10
Dependent Claim 102 words
Apparatus as claimed in claim 8, comprising an instruction register for holding an X-bit instruction being executed by said processor core, said processor core reading operand values from said instruction register, and second mapping means for mapping operand values within said Y-bit program instruction word within said instruction pipeline to corresponding positions within said corresponding X-bit program instruction word and storing said mapped operand values in said instruction register for use by said processor core and wherein said second mapping means extends said register operands of said Y-bit program instruction words to produce said register operands of said X-bit program instruction words.
Claim 11
Dependent Claim 15 words
Apparatus as claimed in claim 1, wherein Q is less than or equal to P.
Claim 12
Dependent Claim 14 words
Apparatus as claimed in claim 1, wherein X is 32 and Y is 16.
Claim 13
Dependent Claim 13 words
Apparatus as claimed in claim 1, wherein said apparatus is an integrated circuit.
Claim 14
Independent Claim 209 words
A method of processing data, said method comprising the steps of: (i) providing a processor core responsive to a plurality of core control signals; (ii) decoding P bits of an X-bit program instruction word of a first instruction set with a decoding means to generate core control signals for controlling a processor core; (iii) passing instruction program words through an instruction pipeline to said decoding means; and (iv) mapping Q bits of a Y-bit program instruction word of a second instruction set passing along said instruction pipeline to said P bits of a corresponding X-bit program instruction word for decoding by said decoding means, wherein (v) Y is less than X, P is less than X and said second instruction set is a subset of said first instruction set; and (vi) instruction program words pass through said instruction pipeline over a plurality of processing cycles, one of said processing cycles being a decode cycle, said decoding operating to produce said core control signals by the end of said decode cycle, and said mapping operating to produce said P bits of said corresponding X-bit program instruction word during a first portion of said decode cycle to enable production of said core control signals by the end of said decode cycle.
Claim 15
Independent Claim 209 words
A method of processing data, said method comprising the steps of: (i) providing a processor core responsive to a plurality of core control signals; (ii) decoding P bits of an X-bit program instruction word of a first instruction set with a decoding means to generate core control signals for controlling a processor core; (iii) passing instruction program words through an instruction pipeline to said decoding means; and (iv) mapping Q bits of a Y-bit program instruction word of a second instruction set passing along said instruction pipeline to said P bits of a corresponding X-bit program instruction word for decoding by said decoding means, wherein (v) Y is less than X, P is less than X and said second instruction set is a subset of said first instruction set; and (vi) instruction program words pass through said instruction pipeline over a plurality of processing cycles, one of said processing cycles being a decode cycle, said decoding operating to produce said core control signals by the end of said decode cycle, and said mapping operating to produce said P bits of said corresponding X-bit program instruction word during a first portion of said decode cycle to enable production of said core control signals by the end of said decode cycle.

References Cited (Backward Citations)

US4274138A Cited
US4839797A Cited
US5524211A Cited
US5475824A Cited
US5392408A Cited
US5481684A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1999-10-22 2000-04-22 2000-10-22 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2003-10-22 2004-04-22 2004-10-22 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2007-10-22 2008-04-22 2008-10-22 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag