JP2010066893A - データプロセッサ - Google Patents
データプロセッサ Download PDFInfo
- Publication number
- JP2010066893A JP2010066893A JP2008231148A JP2008231148A JP2010066893A JP 2010066893 A JP2010066893 A JP 2010066893A JP 2008231148 A JP2008231148 A JP 2008231148A JP 2008231148 A JP2008231148 A JP 2008231148A JP 2010066893 A JP2010066893 A JP 2010066893A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- code
- prefix
- data processor
- instructions
- 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
- 230000008859 change Effects 0.000 claims description 7
- 230000004048 modification Effects 0.000 claims 1
- 238000012986 modification Methods 0.000 claims 1
- 238000001514 detection method Methods 0.000 abstract 1
- 238000000034 method Methods 0.000 description 17
- 238000006073 displacement reaction Methods 0.000 description 13
- 239000000872 buffer Substances 0.000 description 11
- 238000010586 diagram Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 8
- 230000015654 memory Effects 0.000 description 6
- 230000006872 improvement Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 4
- 230000009467 reduction Effects 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 229910021421 monocrystalline silicon Inorganic materials 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 210000003813 thumb Anatomy 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/30181—Instruction operation extension or modification
-
- 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/30003—Arrangements for executing specific machine instructions
- G06F9/3004—Arrangements for executing specific machine instructions to perform operations on memory
- G06F9/30043—LOAD or STORE instructions; Clear instruction
-
- 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/30145—Instruction analysis, e.g. decoding, instruction word fields
- G06F9/3016—Decoding the operand specifier, e.g. specifier format
-
- 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/3017—Runtime instruction translation, e.g. macros
-
- 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/30185—Instruction operation extension or modification according to one or more bits in the instruction, e.g. prefix, sub-opcode
-
- 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
- G06F9/3814—Implementation provisions of instruction buffers, e.g. prefetch buffer; banks
-
- 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/3818—Decoding for concurrent execution
- G06F9/382—Pipelined decoding, e.g. using predecoding
-
- 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/3818—Decoding for concurrent execution
- G06F9/3822—Parallel decoding, e.g. parallel decode units
-
- 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/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
-
- 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/3867—Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Executing Machine-Instructions (AREA)
Abstract
【解決手段】命令コードタイプを判定するデコーダ(PD0〜PD3)による判定結果に基づいてプレフィックス以外の各命令コードタイプ毎の命令を探索し、探索された各命令に、直前の命令を付加して、命令実行手段に出力する回路(EX−ISD,LS−ISD、BR-ISD)を採用する。この回路は、探索対象とする複数命令単位中で目的命令コードタイプの命令を検出したとき当該検出命令と共にその直前の目的命令コードタイプ以外の命令をプレフィックスコード候補として出力し、探索対象の複数命令単位の後端で目的命令コードタイプの命令を検出できなかったときは当該後端の命令をプレフィックスコード候補として出力し、命令コード探索の先頭で目的命令コードタイプの命令を検出したときは当該先頭の命令を出力する。
【選択図】図4
Description
先ず、本願において開示される発明の代表的な実施の形態について概要を説明する。代表的な実施の形態についての概要説明で括弧を付して参照する図面中の参照符号はそれが付された構成要素の概念に含まれるものを例示するに過ぎない。
実施の形態について更に詳述する。以下、本発明を実施するための形態を図面に基づいて詳細に説明する。なお、発明を実施するための形態を説明するための全図において、同一の機能を有する要素には同一の符号を付して、その繰り返しの説明を省略する。
図1には本発明に係るデータプロセッサMPUが例示される。データプロセッサMPUは複数個のプロセッサコアCPUを中心に、これに内部バスで接続されたメモリMEM、外部インタフェース回路EIF、及び内蔵周辺モジュールPER等を一個又は複数個備える。データプロセッサMPUは、特に制限されないが、単結晶シリコンのような1個の半導体基板に相補型MOS集積回路製造技術等によって形成される。
図7には本発明の第1の課題を解決するためのプレフィックスコード定義が例示される。また、図8にはプレフィックスコードが修飾する命令が例示される。
CPU プロセッサコア
MEM メモリ
EIF 外部インタフェース回路
PER 内蔵周辺モジュール
IC 命令キャッシュ
IFU 命令フェッチユニット
PD プリデコーダ
GIQ グローバル命令キュー
BRC 分岐制御部
DC データキャッシュ
LSU ロードストアユニット
LSIQ ロードストア命令キュー
LSID ロードストア命令デコーダ
LSE ロードストア命令実行部
EXU 演算命令実行ユニット
EXIQ 実行命令キュー
EXID 演算命令デコーダ
EXE 演算命令実行部
BIU バスインタフェースユニット
IC1、IC2 命令キャッシュアクセスステージ
GIB グローバル命令バッファステージ
EXIB ローカル命令バッファステージ
EXRR ローカルレジスタリードステージ
EX 演算ステージ
WB レジスタライトバックステージ
LSIB ローカル命令バッファステージ
LSRR ローカルレジスタリードステージ
LSA アドレス計算ステージ
DC1、DC2 データキャッシュアクセスステージ
BR 分岐ステージ
GIQ0〜15 命令キューエントリ
GIQP グローバル命令キューポインタ
GIQP−DEC グローバル命令キューポインタデコーダ
EXP 演算命令ポインタ
LSP ロードストア命令ポインタ
BRP 分岐命令ポインタ
EX−ISD 演算命令探索ディスパッチ回路
LS−ISD ロードストア命令探索ディスパッチ回路
BR−ISD 分岐命令探索ディスパッチ回路
IREQ−GEN 命令フェッチ要求生成部
ICOV 命令キャッシュ出力有効信号
GIQU0〜3 グローバル命令キュー更新信号
ICO0〜3 命令キャッシュ出力命令コード
GIQU0〜3 グローバル命令キュー更新信号
GIQP−NEW 新グローバル命令キューポインタ
EX−IV 演算命令コード有効信号
EX−INST 演算命令
EXP−NEW 新演算命令ポインタ
LSP−NEW 新ロードストア命令ポインタ
BRP−NEW 新分岐命令ポインタ
EX−PV 演算プレフィックス候補有効信号
LS−PV ロードストアプレフィックス候補有効信号
BR−PV 分岐プレフィックス候補有効信号
IREQ 命令フェッチ要求信号
EX−OK 演算命令ポインタの更新制御信号
LS−OK ロードストア命令ポインタの更新制御信号
BR−OK 分岐命令ポインタの更新制御信号
E 演算命令ビット
L ロードストア命令ビット
B 分岐命令ビット
P−DEC ポインタデコーダ
M0〜M3 命令コードマルチプレクサ
PE プライオリティエンコーダ
MOUT 出力命令コードマルチプレクサ
P−ADVポインタ更新回路
M0−CNTL〜M3−CNTL 命令コードマルチプレクサ制御信号
M0〜M3 命令コードマルチプレクサ
C0〜C3 探索対象命令コード
Claims (11)
- 後続命令を修飾するプレフィックスコードを有する命令セットアーキテクチャを有すると共にスーパースカラによる複数命令の並列的発行を行なうデータプロセッサであって、
並列的にフェッチされた複数命令コードの命令コードタイプを判定するデコーダと、
前記デコーダによる判定結果を伴って前記並列的にフェッチされた複数命令コードの単位で順次蓄積する命令キューと、
前記命令キューから出力される複数命令コード単位でプレフィックスコードを除く命令コードタイプ毎の命令コードを探索し、探索結果に基づいて対応する命令コードタイプの命令デコード及び実行部に命令を出力するディスパッチ回路とを有し、
前記ディスパッチ回路は、探索対象とする複数命令コード単位の中で目的とする命令コードタイプの命令コードを検出したときは当該検出した命令コードと共にその直前の命令コードをプレフィックスコード候補として出力し、探索対象とする複数命令コード単位の後端で目的とする命令コードタイプの命令コードを検出できなかったときは当該後端の命令コードをプレフィックスコード候補として出力し、命令コード探索において先頭で目的とする命令コードタイプの命令コードを検出した場合には当該先頭の命令コードを出力する、データプロセッサ。 - 前記命令デコード及び実行部は、プレフィックスコード候補として供給された命令コードがプレフィックスコードでないときはこれを無視する、請求項1記載のデータプロセッサ。
- 前記命令デコード及び実行部は、プレフィックスコード候補として出力された前記後端の命令コードを、その直後の命令コード探索において先頭で検出されて供給された目的命令コードタイプの命令コードのプレフィックスコード候補として用いる、請求項2記載のデータプロセッサ。
- 前記直前の命令コード及び後端の命令コードは、夫々複数の命令コードである、請求項1記載のデータプロセッサ。
- 後続命令を修飾するプレフィックスコードを有する命令セットアーキテクチャのデータプロセッサであって、
前記命令セットには命令によって暗黙的に指定される固定レジスタ使用命令を含み、
前記プレフィックスコードは、前記固定レジスタ使用命令に前置されて、前記固定レジスタを、命令で指定可能な他のレジスタに置換するように、前記固定レジスタ使用命令を修飾する、データプロセッサ。 - 後続命令を修飾するプレフィックスコードを有する命令セットアーキテクチャのデータプロセッサであって、
前記命令セットには命令によって暗黙的に指定される固定レジスタ使用命令を含み、
前記プレフィックスコードは、前記固定レジスタ使用命令に前置されて、前記固定レジスタを即値に置換するように、前記固定レジスタ使用命令を修飾する、データプロセッサ。 - 後続命令を修飾するプレフィックスコードを有する命令セットアーキテクチャのデータプロセッサであって、
前記命令セットは、オペランドに関しデータサイズを有する命令を含み、
前記プレフィックスコードは、前記オペランドサイズを有する命令に前置されて、前記命令のオペランドサイズを前記プレフィックスコードのオペランドサイズ指定フィールドで指定されるオペランドサイズの命令に変換するように、前記オペランドサイズを有する命令を修飾する、データプロセッサ。 - 前記プレフィックスコードは前記オペランドサイズを有する命令に対してそのリテラルフィールドを拡張する修飾を併せて行う、請求項7記載のデータプロセッサ。
- 前記プレフィックスコードは前記オペランドサイズを有する命令に対して前記指定フィールドで指定されたサイズのオペランドの上位側を符号付き又は符号無しで拡張する修飾を併せて行う、請求項7記載のデータプロセッサ。
- 後続命令を修飾するプレフィックスコードを有する命令セットアーキテクチャのデータプロセッサであって、前記プレフィックスコードの定義が前記プレフィックスコードによって修飾される後続命令の種類によって変化する、データプロセッサ。
- 前記後続命令が命令によって暗黙的に指定される固定レジスタ使用命令であるとき前記プレフィックスコードは前記固定レジスタを即値に置換するように、前記固定レジスタ使用命令を修飾し、
前記後続命令が命令によって暗黙的に指定される固定レジスタ使用命令でないとき前記プレフィックスコードはオペランドサイズを変更又はリテラルを拡張するように、前記後続命令を修飾する、請求項10記載のデータプロセッサ。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008231148A JP5357475B2 (ja) | 2008-09-09 | 2008-09-09 | データプロセッサ |
US12/546,809 US8402256B2 (en) | 2008-09-09 | 2009-08-25 | Processing prefix code in instruction queue storing fetched sets of plural instructions in superscalar processor |
US13/782,271 US9116688B2 (en) | 2008-09-09 | 2013-03-01 | Executing prefix code to substitute fixed operand in subsequent fixed register instruction |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008231148A JP5357475B2 (ja) | 2008-09-09 | 2008-09-09 | データプロセッサ |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013179225A Division JP5657760B2 (ja) | 2013-08-30 | 2013-08-30 | データプロセッサ |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010066893A true JP2010066893A (ja) | 2010-03-25 |
JP5357475B2 JP5357475B2 (ja) | 2013-12-04 |
Family
ID=41800162
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008231148A Active JP5357475B2 (ja) | 2008-09-09 | 2008-09-09 | データプロセッサ |
Country Status (2)
Country | Link |
---|---|
US (2) | US8402256B2 (ja) |
JP (1) | JP5357475B2 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014509764A (ja) * | 2011-04-01 | 2014-04-21 | インテル コーポレイション | ベクトルフレンドリ命令フォーマット及びその実行 |
US9910674B2 (en) | 2011-04-21 | 2018-03-06 | Renesas Electronics Corporation | Data processor with extended instruction code space including a prohibition combination pattern as a separate instruction |
US10157061B2 (en) | 2011-12-22 | 2018-12-18 | Intel Corporation | Instructions for storing in general purpose registers one of two scalar constants based on the contents of vector write masks |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2486739B (en) * | 2010-12-24 | 2018-09-19 | Qualcomm Technologies Int Ltd | Instruction execution |
US9286072B2 (en) | 2011-10-03 | 2016-03-15 | International Business Machines Corporation | Using register last use infomation to perform decode-time computer instruction optimization |
US9329869B2 (en) | 2011-10-03 | 2016-05-03 | International Business Machines Corporation | Prefix computer instruction for compatibily extending instruction functionality |
US9354874B2 (en) | 2011-10-03 | 2016-05-31 | International Business Machines Corporation | Scalable decode-time instruction sequence optimization of dependent instructions |
JP5832963B2 (ja) | 2012-06-29 | 2015-12-16 | 株式会社東芝 | メモリシステム |
US9058415B1 (en) * | 2013-03-15 | 2015-06-16 | Google Inc. | Counting events using hardware performance counters and annotated instructions |
US10761852B2 (en) * | 2015-09-30 | 2020-09-01 | International Business Machines Corporation | Extending data range addressing |
US9870305B2 (en) | 2015-09-30 | 2018-01-16 | International Business Machines Corporation | Debugging of prefixed code |
US10877759B2 (en) | 2015-09-30 | 2020-12-29 | International Business Machines Corporation | Managing the capture of information in applications with prefix instructions |
US9983875B2 (en) | 2016-03-04 | 2018-05-29 | International Business Machines Corporation | Operation of a multi-slice processor preventing early dependent instruction wakeup |
US10037211B2 (en) | 2016-03-22 | 2018-07-31 | International Business Machines Corporation | Operation of a multi-slice processor with an expanded merge fetching queue |
US10346174B2 (en) | 2016-03-24 | 2019-07-09 | International Business Machines Corporation | Operation of a multi-slice processor with dynamic canceling of partial loads |
US10761854B2 (en) | 2016-04-19 | 2020-09-01 | International Business Machines Corporation | Preventing hazard flushes in an instruction sequencing unit of a multi-slice processor |
US10037229B2 (en) | 2016-05-11 | 2018-07-31 | International Business Machines Corporation | Operation of a multi-slice processor implementing a load/store unit maintaining rejected instructions |
US9934033B2 (en) | 2016-06-13 | 2018-04-03 | International Business Machines Corporation | Operation of a multi-slice processor implementing simultaneous two-target loads and stores |
US10042647B2 (en) | 2016-06-27 | 2018-08-07 | International Business Machines Corporation | Managing a divided load reorder queue |
US10318419B2 (en) | 2016-08-08 | 2019-06-11 | International Business Machines Corporation | Flush avoidance in a load store unit |
WO2019046723A1 (en) * | 2017-08-31 | 2019-03-07 | MIPS Tech, LLC | RELATED ADDRESSING OF GLOBAL POINTER IMPLICIT FOR ACCESS TO GLOBAL MEMORY |
US11119775B2 (en) * | 2019-12-26 | 2021-09-14 | Texas Instruments Incorporated | Methods, apparatus, and systems to replace values in a device |
TWI755744B (zh) * | 2020-05-28 | 2022-02-21 | 芯鼎科技股份有限公司 | 控制命令列隊的裝置及方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0651981A (ja) * | 1992-08-03 | 1994-02-25 | Hitachi Ltd | データ処理装置 |
JPH07182163A (ja) * | 1993-10-29 | 1995-07-21 | Advanced Micro Devicds Inc | スーパスカラ命令デコード/発行装置 |
JPH07182162A (ja) * | 1993-10-29 | 1995-07-21 | Advanced Micro Devicds Inc | 可変バイト長命令フォーマットを有するタイプのプロセッサのための命令キャッシュ |
JP2000515275A (ja) * | 1996-07-16 | 2000-11-14 | アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド | 高速命令整列ユニットを含むスーパースカラマイクロプロセッサ |
JP2004030015A (ja) * | 2002-06-24 | 2004-01-29 | Seiko Epson Corp | 情報処理装置及び電子機器 |
JP2006302324A (ja) * | 2006-08-15 | 2006-11-02 | Renesas Technology Corp | データ処理装置 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4363091A (en) * | 1978-01-31 | 1982-12-07 | Intel Corporation | Extended address, single and multiple bit microprocessor |
US5353420A (en) * | 1992-08-10 | 1994-10-04 | Intel Corporation | Method and apparatus for decoding conditional jump instructions in a single clock in a computer processor |
US5586277A (en) * | 1994-03-01 | 1996-12-17 | Intel Corporation | Method for parallel steering of fixed length fields containing a variable length instruction from an instruction buffer to parallel decoders |
US5680578A (en) * | 1995-06-07 | 1997-10-21 | Advanced Micro Devices, Inc. | Microprocessor using an instruction field to specify expanded functionality and a computer system employing same |
EP0912923A1 (en) | 1996-07-16 | 1999-05-06 | Advanced Micro Devices, Inc. | Method and apparatus for predecoding variable byte-length instructions within a superscalar microprocessor |
JP3570287B2 (ja) | 1999-03-31 | 2004-09-29 | セイコーエプソン株式会社 | マイクロコンピュータ |
JP2001202243A (ja) * | 1999-04-30 | 2001-07-27 | Hitachi Ltd | データ処理装置 |
US8438367B2 (en) * | 2009-05-19 | 2013-05-07 | Via Technologies, Inc. | Instruction extraction through prefix accumulation |
US20110314263A1 (en) * | 2010-06-22 | 2011-12-22 | International Business Machines Corporation | Instructions for performing an operation on two operands and subsequently storing an original value of operand |
-
2008
- 2008-09-09 JP JP2008231148A patent/JP5357475B2/ja active Active
-
2009
- 2009-08-25 US US12/546,809 patent/US8402256B2/en not_active Expired - Fee Related
-
2013
- 2013-03-01 US US13/782,271 patent/US9116688B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0651981A (ja) * | 1992-08-03 | 1994-02-25 | Hitachi Ltd | データ処理装置 |
JPH07182163A (ja) * | 1993-10-29 | 1995-07-21 | Advanced Micro Devicds Inc | スーパスカラ命令デコード/発行装置 |
JPH07182162A (ja) * | 1993-10-29 | 1995-07-21 | Advanced Micro Devicds Inc | 可変バイト長命令フォーマットを有するタイプのプロセッサのための命令キャッシュ |
JP2000515275A (ja) * | 1996-07-16 | 2000-11-14 | アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド | 高速命令整列ユニットを含むスーパースカラマイクロプロセッサ |
JP2004030015A (ja) * | 2002-06-24 | 2004-01-29 | Seiko Epson Corp | 情報処理装置及び電子機器 |
JP2006302324A (ja) * | 2006-08-15 | 2006-11-02 | Renesas Technology Corp | データ処理装置 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014509764A (ja) * | 2011-04-01 | 2014-04-21 | インテル コーポレイション | ベクトルフレンドリ命令フォーマット及びその実行 |
US9513917B2 (en) | 2011-04-01 | 2016-12-06 | Intel Corporation | Vector friendly instruction format and execution thereof |
JP2017079078A (ja) * | 2011-04-01 | 2017-04-27 | インテル コーポレイション | ベクトルフレンドリ命令フォーマット及びその実行 |
US10795680B2 (en) | 2011-04-01 | 2020-10-06 | Intel Corporation | Vector friendly instruction format and execution thereof |
US11210096B2 (en) | 2011-04-01 | 2021-12-28 | Intel Corporation | Vector friendly instruction format and execution thereof |
US11740904B2 (en) | 2011-04-01 | 2023-08-29 | Intel Corporation | Vector friendly instruction format and execution thereof |
US9910674B2 (en) | 2011-04-21 | 2018-03-06 | Renesas Electronics Corporation | Data processor with extended instruction code space including a prohibition combination pattern as a separate instruction |
US10157061B2 (en) | 2011-12-22 | 2018-12-18 | Intel Corporation | Instructions for storing in general purpose registers one of two scalar constants based on the contents of vector write masks |
Also Published As
Publication number | Publication date |
---|---|
JP5357475B2 (ja) | 2013-12-04 |
US20130246765A1 (en) | 2013-09-19 |
US9116688B2 (en) | 2015-08-25 |
US20100064119A1 (en) | 2010-03-11 |
US8402256B2 (en) | 2013-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5357475B2 (ja) | データプロセッサ | |
JP4986431B2 (ja) | プロセッサ | |
JP3499252B2 (ja) | コンパイル装置及びデータ処理装置 | |
JP2816248B2 (ja) | データプロセッサ | |
JP4841861B2 (ja) | 演算処理装置及びデータ転送処理の実行方法 | |
JP2616182B2 (ja) | データ処理装置 | |
USRE40509E1 (en) | Methods and apparatus for abbreviated instruction sets adaptable to configurable processor architecture | |
MX2007014522A (es) | Almacenamiento en memoria cache de instrucciones para un procesador de estado multiple. | |
US9021236B2 (en) | Methods and apparatus for storing expanded width instructions in a VLIW memory for deferred execution | |
JP2004171573A (ja) | 新規な分割命令トランズアクションモデルを使用して構築したコプロセッサ拡張アーキテクチャ | |
CN113590197A (zh) | 一种支持可变长向量处理的可配置处理器及其实现方法 | |
JP4228241B2 (ja) | 演算処理装置 | |
JP5658358B2 (ja) | データプロセッサ | |
JP4502532B2 (ja) | データ処理装置 | |
JP2002229778A (ja) | 高速ディスプレースメント付きpc相対分岐方式 | |
JP5657760B2 (ja) | データプロセッサ | |
JP2556182B2 (ja) | デ−タ処理装置 | |
US20150095616A1 (en) | Data processor | |
CN112559037B (zh) | 一种指令执行方法、单元、装置及系统 | |
JP2504312B2 (ja) | プライオリティエンコ―ダ及びそれを備えたデ―タ処理装置 | |
Bik et al. | A case study on compiler optimizations for the Intel® Core TM 2 Duo Processor | |
CN111813447A (zh) | 一种数据拼接指令的处理方法和处理装置 | |
JP3915019B2 (ja) | Vliwプロセッサ、プログラム生成装置、および記録媒体 | |
JP2004152049A (ja) | データ処理装置 | |
JP2956707B2 (ja) | 情報処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20100527 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110902 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130430 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130516 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130710 |
|
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: 20130801 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130830 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5357475 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |