JP2010536089A - エイリアスアドレス指定を用いる可変長命令コード化の実装 - Google Patents
エイリアスアドレス指定を用いる可変長命令コード化の実装 Download PDFInfo
- Publication number
- JP2010536089A JP2010536089A JP2010519909A JP2010519909A JP2010536089A JP 2010536089 A JP2010536089 A JP 2010536089A JP 2010519909 A JP2010519909 A JP 2010519909A JP 2010519909 A JP2010519909 A JP 2010519909A JP 2010536089 A JP2010536089 A JP 2010536089A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- address space
- mode
- address
- length
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 claims abstract description 24
- 230000007704 transition Effects 0.000 claims abstract description 18
- 230000004044 response Effects 0.000 claims description 12
- 238000010586 diagram Methods 0.000 description 13
- 230000008859 change Effects 0.000 description 5
- 238000013519 translation Methods 0.000 description 4
- 238000013459 approach Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000011022 operating instruction Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000005549 size reduction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
- G06F9/30149—Instruction analysis, e.g. decoding, instruction word fields of variable length instructions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30181—Instruction operation extension or modification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/04—Addressing variable-length words or parts of words
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30181—Instruction operation extension or modification
- G06F9/30189—Instruction operation extension or modification according to execution mode, e.g. mode flag
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30181—Instruction operation extension or modification
- G06F9/30196—Instruction operation extension or modification using decoder, e.g. decoder per instruction set, adaptable or programmable decoders
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3802—Instruction prefetching
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Executing Machine-Instructions (AREA)
- Advance Control (AREA)
Abstract
Description
本発明は、レガシープロセッサ上の可変長命令コード化に関し、より詳細には、自動モード切替えを実装するためにエイリアスアドレス空間を利用する可変長命令コード化に関する。
最新の埋込み型プロセッサは、圧縮したコードサイズを達成するために、プロセッサの命令セットの可変長命令コード化を使用する。レガシープロセッサの存在に従って、2つのアプローチが取られた。
本発明の第1の局面従って、メモリと、プログラムシーケンサと、実行ユニットとを含むデジタルプロセッサを動作させる方法が提供される。方法は、メモリにコードシーケンスの命令を格納することと、コードシーケンスの命令アドレスを生成することと、命令アドレスにおける、第1のアドレス空間と第2のアドレス空間との間の移行に応答して、第1の動作モードと第2の動作モードとを自動的に切り替えることであって、第1のアドレス空間および第2のアドレス空間におけるアドレスは、共通のメモリ空間にアクセスする、ことと、第1の動作モードにおいて、第1のアドレス空間において命令にアクセスすることと、第2の動作モードにおいて、第2のアドレス空間において命令にアクセスすることと、コードシーケンスのアクセスされた命令を実行する、こととを包含する。
本発明は、その適用において、以下の説明に述べられるかまたは図面に例示される構造の詳細および構成要素の配置に限定されない。本発明は、他の実施形態が可能であり、様々な方法で実施されるかまたは実行されることが可能である。また、本明細書において用いられる語法および術語は、説明の目的のためであり、限定することとして考えられるべきではない。「含む(including)」、「備えている、包含する(comprising)」、または「有する(having)」、「含んでいる(containing)」、「伴う(involving)」、および本明細書におけるこれらの変形を用いることは、以下に記載される項目および追加の項目の外にそれらの項目の均等物を包含する(encompass)ことが意図される。
Claims (29)
- メモリと、プログラムシーケンサと、実行ユニットとを含むデジタルプロセッサを動作させる方法であって、
該メモリにコードシーケンスの命令を格納することと、
該コードシーケンスの命令アドレスを生成することと、
命令アドレスにおける、第1のアドレス空間と第2のアドレス空間との間の移行に応答して、第1の動作モードと第2の動作モードとを自動的に切り替えることであって、該第1のアドレス空間および第2のアドレス空間におけるアドレスは共通のメモリ空間にアクセスする、ことと、
該第1の動作モードにおいて、該第1のアドレス空間において命令にアクセスすることと、
該第2の動作モードにおいて、該第2のアドレス空間において命令にアクセスすることと、
該コードシーケンスの該アクセスされた命令を実行することと
を包含する、方法。 - 自動的に切り替えることは、命令アドレスにおける、前記第1のアドレス空間から前記第2のアドレス空間への移行に応答して、前記第1のモードから前記第2のモードに切り替えることと、命令アドレスにおける、該第2のアドレス空間から該第1のアドレス空間への移行に応答して、該第2のモードから該第1のモードに切り替えることとを包含する、請求項1に記載の方法。
- 前記第1のアドレス空間において命令にアクセスすることは、第1の命令長の命令にアクセスすることを包含し、前記第2のアドレス空間において命令にアクセスすることは、第2の命令長の命令にアクセスすることを包含する、請求項1に記載の方法。
- 前記第2のアドレス空間において命令にアクセスすることは、該第2のアドレス空間において前記第1の命令長の命令にアクセスすることをさらに包含する、請求項3に記載の方法。
- 前記第2のモードにおいて現在の命令長を決定することと、現在の命令長に基づいて次の命令を整列させることとをさらに包含する、請求項4に記載の方法。
- 命令を整列させることは、前記現在の命令長に応答して、命令整列バッファにおいて命令をシフトさせることを包含する、請求項5に記載の方法。
- 命令にアクセスすることは、各クロック周期で最長命令長に対応する若干数のビットにアクセスすることを包含する、請求項3に記載の方法。
- 前記第2のアドレス空間において命令にアクセスすることは、該第2のアドレス空間において前記第1の命令長の命令および第3の命令長の命令にアクセスすることをさらに包含する、請求項3に記載の方法。
- 前記第1の命令長は、前記第2の命令長および第3の命令長より大きい、請求項8に記載の方法。
- 自動的に切り替えることは、分岐命令の目標アドレスを検出することと、該分岐命令の該目標アドレスが前記第1のアドレス空間と前記第2のアドレス空間との間の移行を表すとき、前記第1のモードと前記第2のモードとを切り替えることとを包含する、請求項1に記載の方法。
- 前記第2のアドレス空間において命令にアクセスすることは、前記メモリの連続位置において混合命令長の命令にアクセスすることを包含する、請求項8に記載の方法。
- 前記第2のアドレス空間において命令にアクセスすることは、該第2のアドレス空間において第3の命令長の命令にアクセスすることをさらに包含する、請求項3に記載の方法。
- 前記第1の命令長は48ビットであり、前記第2の命令長は32ビットであり、前記第3の命令長は16ビットである、請求項8に記載の方法。
- 前記第1のアドレス空間はノーマルワードアドレス空間であり、前記第2のアドレス空間はショートワードアドレス空間である、請求項1に記載の方法。
- 前記第1のアドレス空間は仮想アドレス空間の第1の仮想ページであり、前記第2のアドレス空間は該仮想アドレス空間の第2の仮想ページである、請求項1に記載の方法。
- コードシーケンスの命令を格納するように構成されたメモリと、
該コードシーケンスの命令アドレスを生成し、命令アドレスにおける、第1のアドレス空間と第2のアドレス空間との間の移行に応答して、第1の動作モードと第2の動作モードとを自動的に切り替えるように構成されたプログラムシーケンサであって、該第1のアドレス空間および該第2のアドレス空間におけるアドレスは共通のメモリ空間にアクセスし、該第1の動作モードにおいて、命令は該第1のアドレス空間においてアクセスされ、該第2の動作モードにおいて、命令は該第2のアドレス空間においてアクセスされる、プログラムシーケンサと、
該コードシーケンスの該アクセスされた命令を実行するように構成された実行ユニットと
を備えている、デジタルプロセッサ装置。 - 前記プログラムシーケンサは、命令アドレスにおける、前記第1のアドレス空間から前記第2のアドレス空間への移行に応答して、前記第1のモードから前記第2のモードに切り替えるように構成され、命令アドレスにおける、該第2のアドレス空間から該第1のアドレス空間への移行に応答して、該第2のモードから該第1のモードに切り替えるように構成される、請求項16に記載のデジタルプロセッサ装置。
- 前記プログラムシーケンサは、前記第1のアドレス空間において第1の命令長の命令にアクセスし、前記第2のアドレス空間において第2の命令長の命令にアクセスするように構成される、請求項16に記載のデジタルプロセッサ装置。
- 前記プログラムシーケンサは、前記第2のアドレス空間において前記第1の命令長の命令にアクセスするようにさらに構成される、請求項18に記載のデジタルプロセッサ装置。
- 前記プログラムシーケンサは、前記第2のアドレス空間において前記第1の命令長の命令および第3の命令長の命令にアクセスするようにさらに構成される、請求項18に記載のデジタルプロセッサ装置。
- 前記第1の命令長は、前記第2の命令長および前記第3の命令長より大きい、請求項20に記載のデジタルプロセッサ装置。
- 前記第1の命令長は48ビットであり、前記第2の命令長は32ビットであり、前記第3の命令長は16ビットである、請求項20に記載のデジタルプロセッサ装置。
- 前記プログラムシーケンサは、各クロック周期で最長命令長に対応するビット数をフェッチするように構成される、請求項18に記載のデジタルプロセッサ装置。
- 前記第2のモードにおいて現在の命令長を決定するデコーダと、該現在の命令長に応答して、次の命令を整列させる命令整列バッファとをさらに備えている、請求項18に記載のデジタルプロセッサ装置。
- 前記命令整列バッファは、前記現在の命令長に応答して、命令をシフトさせるように構成される、請求項24に記載のデジタルプロセッサ装置。
- 前記プログラムシーケンサは、分岐命令の目標アドレスを検出し、該分岐命令の該目標アドレスが前記第1のアドレス空間と前記第2のアドレス空間との間の移行を表すことを検出することに応答して、前記第1のモードと前記第2のモードとを切り替えるように構成される、請求項16に記載のデジタルプロセッサ装置。
- 前記第1のアドレス空間はノーマルワードアドレス空間であり、前記第2のアドレス空間はショートワードアドレス空間である、請求項16に記載のデジタルプロセッサ装置。
- 前記第1のアドレス空間は仮想アドレス空間の第1の仮想ページであり、前記第2のアドレス空間は該仮想アドレス空間の第2の仮想ページである、請求項16に記載のデジタルプロセッサ装置。
- メモリと、プログラムシーケンサと、実行ユニットとを含むデジタルプロセッサを動作させる方法であって、
該メモリにコードシーケンスの命令を格納することと、
該コードシーケンスの命令アドレスを生成することと、
第1のアドレス空間と第2のアドレス空間との間の分岐に応答して、第1の動作モードと第2の動作モードとを自動的に切り替えることであって、該第1のアドレス空間および第2のアドレス空間におけるアドレスは共通のメモリ空間にアクセスする、ことと、
該第1の動作モードにおいて、該第1のアドレス空間において第1の命令長の命令にアクセスすることと、
該第2の動作モードにおいて、該第2のアドレス空間において該第1の命令長、第2の命令長および第3の命令長の命令にアクセスすることと、
該コードシーケンスの該アクセスされた命令を実行することと
を包含する、方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/890,907 | 2007-08-08 | ||
US11/890,907 US7836285B2 (en) | 2007-08-08 | 2007-08-08 | Implementation of variable length instruction encoding using alias addressing |
PCT/US2008/008725 WO2009020513A1 (en) | 2007-08-08 | 2008-07-17 | Implementation of variable length instruction encoding using alias addressing |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010536089A true JP2010536089A (ja) | 2010-11-25 |
JP5329541B2 JP5329541B2 (ja) | 2013-10-30 |
Family
ID=39940664
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010519909A Expired - Fee Related JP5329541B2 (ja) | 2007-08-08 | 2008-07-17 | エイリアスアドレス指定を用いる可変長命令コード化の実装 |
Country Status (7)
Country | Link |
---|---|
US (2) | US7836285B2 (ja) |
EP (1) | EP2186001B1 (ja) |
JP (1) | JP5329541B2 (ja) |
KR (1) | KR101503554B1 (ja) |
CN (1) | CN101849222B (ja) |
TW (2) | TWI520059B (ja) |
WO (1) | WO2009020513A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018522335A (ja) * | 2015-07-27 | 2018-08-09 | ソニー インタラクティブ エンタテインメント アメリカ リミテッド ライアビリテイ カンパニー | アルゴリズム整合、機能無効化、または性能制限による後方互換性 |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101449194B (zh) * | 2006-06-20 | 2012-06-13 | 数据逻辑扫描公司 | 具有多个像场的成像扫描仪 |
US20100312991A1 (en) * | 2008-05-08 | 2010-12-09 | Mips Technologies, Inc. | Microprocessor with Compact Instruction Set Architecture |
CN102077195A (zh) * | 2008-05-08 | 2011-05-25 | Mips技术公司 | 具有紧凑指令集架构的微处理器 |
US9274796B2 (en) | 2009-05-11 | 2016-03-01 | Arm Finance Overseas Limited | Variable register and immediate field encoding in an instruction set architecture |
US8335910B2 (en) * | 2009-05-19 | 2012-12-18 | Via Technologies, Inc. | Early release of cache data with start/end marks when instructions are only partially present |
US8533343B1 (en) | 2011-01-13 | 2013-09-10 | Google Inc. | Virtual network pairs |
US8874888B1 (en) | 2011-01-13 | 2014-10-28 | Google Inc. | Managed boot in a cloud system |
US9135037B1 (en) | 2011-01-13 | 2015-09-15 | Google Inc. | Virtual network protocol |
US20120185688A1 (en) * | 2011-01-13 | 2012-07-19 | Google Inc. | Processor mode locking |
US8812586B1 (en) | 2011-02-15 | 2014-08-19 | Google Inc. | Correlating status information generated in a computer network |
US8261295B1 (en) | 2011-03-16 | 2012-09-04 | Google Inc. | High-level language for specifying configurations of cloud-based deployments |
US9237087B1 (en) | 2011-03-16 | 2016-01-12 | Google Inc. | Virtual machine name resolution |
US9063818B1 (en) | 2011-03-16 | 2015-06-23 | Google Inc. | Automated software updating based on prior activity |
US8533796B1 (en) | 2011-03-16 | 2013-09-10 | Google Inc. | Providing application programs with access to secured resources |
US9378560B2 (en) | 2011-06-17 | 2016-06-28 | Advanced Micro Devices, Inc. | Real time on-chip texture decompression using shader processors |
US9075979B1 (en) | 2011-08-11 | 2015-07-07 | Google Inc. | Authentication based on proximity to mobile device |
US8966198B1 (en) | 2011-09-01 | 2015-02-24 | Google Inc. | Providing snapshots of virtual storage devices |
US9069616B2 (en) | 2011-09-23 | 2015-06-30 | Google Inc. | Bandwidth throttling of virtual disks |
US8958293B1 (en) | 2011-12-06 | 2015-02-17 | Google Inc. | Transparent load-balancing for cloud computing services |
US8800009B1 (en) | 2011-12-30 | 2014-08-05 | Google Inc. | Virtual machine service access |
US8983860B1 (en) | 2012-01-30 | 2015-03-17 | Google Inc. | Advertising auction system |
US9672052B1 (en) | 2012-02-16 | 2017-06-06 | Google Inc. | Secure inter-process communication |
US8996887B2 (en) | 2012-02-24 | 2015-03-31 | Google Inc. | Log structured volume encryption for virtual machines |
US8677449B1 (en) | 2012-03-19 | 2014-03-18 | Google Inc. | Exposing data to virtual machines |
US9069806B2 (en) | 2012-03-27 | 2015-06-30 | Google Inc. | Virtual block devices |
US9430255B1 (en) | 2013-03-15 | 2016-08-30 | Google Inc. | Updating virtual machine generated metadata to a distribution service for sharing and backup |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6273333A (ja) * | 1985-09-26 | 1987-04-04 | Nec Corp | エミュレーション制御装置 |
US5481684A (en) * | 1994-01-11 | 1996-01-02 | Exponential Technology, Inc. | Emulating operating system calls in an alternate instruction set using a modified code segment descriptor |
JPH08339325A (ja) * | 1995-06-07 | 1996-12-24 | Internatl Business Mach Corp <Ibm> | 二つの別個の命令セット・アーキテクチャへの拡張をサポートすることができるアーキテクチャ・モード制御を備えたマイクロプロセッサ |
JPH1173315A (ja) * | 1997-08-28 | 1999-03-16 | Saibaa Lab:Kk | 可変長命令プロセサ |
JP2000010863A (ja) * | 1998-06-24 | 2000-01-14 | Sony Computer Entertainment Inc | 情報処理装置および方法、並びに提供媒体 |
US6571330B1 (en) * | 2000-01-14 | 2003-05-27 | Advanced Micro Devices, Inc. | Address size and operand size prefix overrides for default sizes defined by an operating mode of a processor |
US7047394B1 (en) * | 1999-01-28 | 2006-05-16 | Ati International Srl | Computer for execution of RISC and CISC instruction sets |
US7149878B1 (en) * | 2000-10-30 | 2006-12-12 | Mips Technologies, Inc. | Changing instruction set architecture mode by comparison of current instruction execution address with boundary address register values |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5115500A (en) * | 1988-01-11 | 1992-05-19 | International Business Machines Corporation | Plural incompatible instruction format decode method and apparatus |
GB2290395B (en) * | 1994-06-10 | 1997-05-28 | Advanced Risc Mach Ltd | Interoperability with multiple instruction sets |
US5638525A (en) * | 1995-02-10 | 1997-06-10 | Intel Corporation | Processor capable of executing programs that contain RISC and CISC instructions |
US5826074A (en) * | 1996-11-22 | 1998-10-20 | S3 Incorporated | Extenstion of 32-bit architecture for 64-bit addressing with shared super-page register |
US5881258A (en) * | 1997-03-31 | 1999-03-09 | Sun Microsystems, Inc. | Hardware compatibility circuit for a new processor architecture |
US6189090B1 (en) * | 1997-09-17 | 2001-02-13 | Sony Corporation | Digital signal processor with variable width instructions |
US6167459A (en) * | 1998-10-07 | 2000-12-26 | International Business Machines Corporation | System for reassigning alias addresses to an input/output device |
US6820189B1 (en) * | 1999-05-12 | 2004-11-16 | Analog Devices, Inc. | Computation core executing multiple operation DSP instructions and micro-controller instructions of shorter length without performing switch operation |
US7171543B1 (en) * | 2000-03-28 | 2007-01-30 | Intel Corp. | Method and apparatus for executing a 32-bit application by confining the application to a 32-bit address space subset in a 64-bit processor |
US6671791B1 (en) * | 2001-06-15 | 2003-12-30 | Advanced Micro Devices, Inc. | Processor including a translation unit for selectively translating virtual addresses of different sizes using a plurality of paging tables and mapping mechanisms |
JP4073721B2 (ja) * | 2002-06-28 | 2008-04-09 | 株式会社ルネサステクノロジ | データ処理装置 |
US7149873B2 (en) * | 2003-10-24 | 2006-12-12 | Hewlett-Packard Development Company, L.P. | Methods and apparatus for a dual address space operating system |
US7421568B2 (en) * | 2005-03-04 | 2008-09-02 | Qualcomm Incorporated | Power saving methods and apparatus to selectively enable cache bits based on known processor state |
GB2435116B (en) | 2006-02-10 | 2010-04-07 | Imagination Tech Ltd | Selecting between instruction sets in a microprocessors |
-
2007
- 2007-08-08 US US11/890,907 patent/US7836285B2/en active Active
-
2008
- 2008-07-15 TW TW103125987A patent/TWI520059B/zh not_active IP Right Cessation
- 2008-07-15 TW TW097126741A patent/TWI451329B/zh not_active IP Right Cessation
- 2008-07-17 JP JP2010519909A patent/JP5329541B2/ja not_active Expired - Fee Related
- 2008-07-17 WO PCT/US2008/008725 patent/WO2009020513A1/en active Application Filing
- 2008-07-17 KR KR1020107004979A patent/KR101503554B1/ko active IP Right Grant
- 2008-07-17 CN CN200880110576.6A patent/CN101849222B/zh not_active Expired - Fee Related
- 2008-07-17 EP EP08794539.0A patent/EP2186001B1/en not_active Not-in-force
-
2010
- 2010-10-08 US US12/900,993 patent/US8332621B2/en active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6273333A (ja) * | 1985-09-26 | 1987-04-04 | Nec Corp | エミュレーション制御装置 |
US5481684A (en) * | 1994-01-11 | 1996-01-02 | Exponential Technology, Inc. | Emulating operating system calls in an alternate instruction set using a modified code segment descriptor |
JPH08339325A (ja) * | 1995-06-07 | 1996-12-24 | Internatl Business Mach Corp <Ibm> | 二つの別個の命令セット・アーキテクチャへの拡張をサポートすることができるアーキテクチャ・モード制御を備えたマイクロプロセッサ |
JPH1173315A (ja) * | 1997-08-28 | 1999-03-16 | Saibaa Lab:Kk | 可変長命令プロセサ |
JP2000010863A (ja) * | 1998-06-24 | 2000-01-14 | Sony Computer Entertainment Inc | 情報処理装置および方法、並びに提供媒体 |
US7047394B1 (en) * | 1999-01-28 | 2006-05-16 | Ati International Srl | Computer for execution of RISC and CISC instruction sets |
US6571330B1 (en) * | 2000-01-14 | 2003-05-27 | Advanced Micro Devices, Inc. | Address size and operand size prefix overrides for default sizes defined by an operating mode of a processor |
US7149878B1 (en) * | 2000-10-30 | 2006-12-12 | Mips Technologies, Inc. | Changing instruction set architecture mode by comparison of current instruction execution address with boundary address register values |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018522335A (ja) * | 2015-07-27 | 2018-08-09 | ソニー インタラクティブ エンタテインメント アメリカ リミテッド ライアビリテイ カンパニー | アルゴリズム整合、機能無効化、または性能制限による後方互換性 |
Also Published As
Publication number | Publication date |
---|---|
TWI451329B (zh) | 2014-09-01 |
US20110078423A1 (en) | 2011-03-31 |
KR20100061463A (ko) | 2010-06-07 |
US7836285B2 (en) | 2010-11-16 |
EP2186001A1 (en) | 2010-05-19 |
JP5329541B2 (ja) | 2013-10-30 |
WO2009020513A1 (en) | 2009-02-12 |
CN101849222A (zh) | 2010-09-29 |
CN101849222B (zh) | 2014-01-29 |
TW200907796A (en) | 2009-02-16 |
EP2186001B1 (en) | 2018-06-13 |
US8332621B2 (en) | 2012-12-11 |
TWI520059B (zh) | 2016-02-01 |
TW201445442A (zh) | 2014-12-01 |
KR101503554B1 (ko) | 2015-03-17 |
US20090043990A1 (en) | 2009-02-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5329541B2 (ja) | エイリアスアドレス指定を用いる可変長命令コード化の実装 | |
EP2018609B1 (en) | Pre-decoding variable length instructions | |
JP6591978B2 (ja) | 命令セット変換システム及び方法 | |
US6430674B1 (en) | Processor executing plural instruction sets (ISA's) with ability to have plural ISA's in different pipeline stages at same time | |
US6275927B2 (en) | Compressing variable-length instruction prefix bytes | |
JP3919802B2 (ja) | プロセッサ、およびプロセッサにおいて命令演算をスケジューリングするための方法 | |
EP0138419A2 (en) | Central processing unit for a digital computer | |
JP2004506263A (ja) | 拡張レジスタモードで拡張レジスタセットにアクセスするcpu | |
JPH04313121A (ja) | インストラクションメモリ装置 | |
KR20010050792A (ko) | 2개의 서로 다른 고정 길이 명령 세트를 실행하기 위한프로세서 아키텍쳐 | |
KR19980063936A (ko) | 소규모의 하드웨어로 높은 적중률의 분기 예측을 하는 정보 처리 장치 | |
US6145075A (en) | Apparatus and method for executing a single-cycle exchange instruction to exchange contents of two locations in a register file | |
US6212621B1 (en) | Method and system using tagged instructions to allow out-of-program-order instruction decoding | |
US6460116B1 (en) | Using separate caches for variable and generated fixed-length instructions | |
US20060095746A1 (en) | Branch predictor, processor and branch prediction method | |
US5404471A (en) | Method and apparatus for switching address generation modes in CPU having plural address generation modes | |
KR20030007480A (ko) | 컴퓨터 시스템 및 컴퓨터 프로그램 | |
CN108920188B (zh) | 一种扩展寄存器堆的方法及装置 | |
CN100356318C (zh) | 用于指令对准的方法和设备 | |
US20090300330A1 (en) | Data processing method and system based on pipeline | |
JP3644892B2 (ja) | 複数組の命令組を実行するためのデータ処理装置 | |
CN114116007A (zh) | 具有指令预取功能的微处理器 | |
WO2001082059A2 (en) | Method and apparatus to improve context switch times in a computing system | |
JPS617961A (ja) | アドレス変換バツフア制御方式 | |
KR19980083442A (ko) | 분기예측회로 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110519 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120509 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130301 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130306 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20130531 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20130607 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130620 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20130704 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130724 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5329541 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: R3D04 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |