JP2021168036A - 演算処理装置 - Google Patents

演算処理装置 Download PDF

Info

Publication number
JP2021168036A
JP2021168036A JP2020071046A JP2020071046A JP2021168036A JP 2021168036 A JP2021168036 A JP 2021168036A JP 2020071046 A JP2020071046 A JP 2020071046A JP 2020071046 A JP2020071046 A JP 2020071046A JP 2021168036 A JP2021168036 A JP 2021168036A
Authority
JP
Japan
Prior art keywords
instruction
decoder
processed
instruction decoder
decoding
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
Application number
JP2020071046A
Other languages
English (en)
Other versions
JP7409208B2 (ja
Inventor
亮平 岡崎
Ryohei Okazaki
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2020071046A priority Critical patent/JP7409208B2/ja
Priority to US17/182,328 priority patent/US11720366B2/en
Publication of JP2021168036A publication Critical patent/JP2021168036A/ja
Application granted granted Critical
Publication of JP7409208B2 publication Critical patent/JP7409208B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/57Arithmetic logic units [ALU], i.e. arrangements or devices for performing two or more of the operations covered by groups G06F7/483 – G06F7/556 or for performing logical operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3818Decoding for concurrent execution
    • G06F9/3822Parallel decoding, e.g. parallel decode units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30145Instruction analysis, e.g. decoding, instruction word fields

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

【課題】命令デコーダのレイテンシ増加を抑える。
【解決手段】単一のサイクルで命令を処理する第1のデコーダ114と、複数のサイクルで命令を処理する第2のデコーダ114と、処理対象の命令が特定の命令であり、且つ、処理中の前方命令が存在しない場合には、第1のデコーダ114に処理対象の命令を処理させる一方、処理対象の命令が特定の命令でなく、又は、処理中の前方命令が存在する場合には、第2のデコーダ114に処理対象の命令を処理させる判定を行なう判定器114aと、を備える。
【選択図】図3

Description

本発明は、演算処理装置に関する。
命令のデコードを行なう際、どのような命令であっても決まったサイクル数で処理が行なわれることがある。また、Complex Instruction Set Computer(CISC)のような複雑な命令体系の命令セットアーキテクチャの命令をデコードするには、複数サイクルでのデコード処理が行なわれることがある。
例えば、マイクロオペ分解制御において、複雑な一命令を複数の単純な命令に分解するというデコード処理を行なう場合には、単一サイクルでは処理しきれないため、複数サイクルをかけて命令デコードが行なわれる。
特開昭64−25240号公報 特開平1−320540号公報
命令デコーダのレイテンシが伸びると、命令フェッチから命令完了(別言すれば、コミット)までの総パイプライン段数が伸びてしまう。これは、分岐予測ミスのペナルティが伸びることを意味している。
分岐予測ミスのペナルティが増えると、プロセッサのInstructions Per Clock(IPC)が下がり、性能が下がってしまう。
対処の方式として、低レイテンシで少ない種類の命令をデコード処理可能な命令デコーダと、長レイテンシで全命令をデコード処理可能な命令デコーダとが用意される。通常であれば長レイテンシの命令デコーダのデコード結果が採用される。また、低レイテンシの命令デコーダで処理できる命令しか存在しない命令列であることがわかったら、低レイテンシの命令デコーダを切り替えるという方式も考えられる。
しかしながら、低レイテンシの命令デコーダで処理できる命令と処理できない命令とが入り混じったような命令列については、命令デコーダのパイプライン動作を維持しながら動的に動作を切り替えられないおそれがある。
1つの側面では、命令デコーダのレイテンシ増加を抑えることを目的とする。
1つの側面では、演算処理装置は、単一のサイクルで命令を処理する第1のデコーダと、複数のサイクルで命令を処理する第2のデコーダと、処理対象の命令が特定の命令であり、且つ、処理中の前方命令が存在しない場合には、前記第1のデコーダに前記処理対象の命令を処理させる一方、前記処理対象の命令が前記特定の命令でなく、又は、処理中の前方命令が存在する場合には、前記第2のデコーダに前記処理対象の命令を処理させる判定を行なう判定器と、を備える。
1つの側面では、命令デコーダのレイテンシ増加を抑えることができる。
実施形態の一例における演算処理装置のハードウェア構成例を模式的に示すブロック図である。 図1に示した演算処理装置のソフトウェア構成例を模式的に示すブロック図である。 図2に示した命令デコーダの構成例を模式的に示すブロック図である。 図3に示したsimple enable判定器による対象命令の判定処理を説明する図である。 図2に示した命令デコーダのパイプラインを例示するテーブルである。 図3に示したsimple enable判定器の論理回路を例示する図である。 図1に示した演算処理装置における対象命令の判定処理を説明するフローチャートである。
以下、図面を参照して一実施の形態を説明する。ただし、以下に示す実施形態はあくまでも例示に過ぎず、実施形態で明示しない種々の変形例や技術の適用を排除する意図はない。すなわち、本実施形態を、その趣旨を逸脱しない範囲で種々変形して実施することができる。
また、各図は、図中に示す構成要素のみを備えるという趣旨ではなく、他の機能等を含むことができる。
以下、図中において、同一の各符号は同様の部分を示しているので、その説明は省略する。
〔A〕実施形態の一例
〔A−1〕システム構成例
図1は、実施形態の一例における演算処理装置1のハードウェア構成例を模式的に示すブロック図である。
演算処理装置1は、複数(図示する例では2つ)のCentral Processing Unit(CPU)11,複数(図示する例では2つ)のメモリ12及びインターコネクト制御部13を備える。
メモリ12は、例示的に、Read Only Memory(ROM)及びRandom Access Memory(RAM)を含む記憶装置である。メモリ12のROMには、Basic Input/Output System(BIOS)等のプログラムが書き込まれてよい。メモリ12のソフトウェアプログラムは、CPU11に適宜に読み込まれて実行されてよい。また、メモリ12のRAMは、一次記録メモリあるいはワーキングメモリとして利用されてよい。
インターコネクト制御部13は、外部装置との通信を可能にするためのインタフェースである。
図2は、図1に示した演算処理装置1のソフトウェア構成例を模式的に示すブロック図である。
図2に示すように、CPU11は、命令フェッチアドレス生成器111,分岐予測機構112,命令バッファ113,命令デコーダ114及びレジスタリネーミング部115として機能する。また、CPU11は、RSA116a,RSE116b,RSF116c,RSBR116d,CSE116e,オペランドアドレス生成器117,演算器118a,118b及びPC119として機能する。更に、CPU11は、一次命令キャッシュ101,二次命令キャッシュ102,一次データキャッシュ103,固定小数点レジスタ104,浮動小数点レジスタ105,固定小数点更新バッファ106及び浮動小数点更新バッファ107として機能する。
なお、RSAはReservation Station for Address generationの略称であり、RSEはReservation Station for Executionの略称であり、RSFはReservation Station for Floating pointの略称である。また、RSBRはReservation Station for Branchの略称であり、CSEはCommit Stack Entryの略称であり、PCはProgram Counterの略称である。更に、固定小数点レジスタはGeneral Purpose Register(GPR)と表記されてもよく、浮動小数点レジスタはFloating Point Registers(FPR)と表記されてもよい。
命令フェッチアドレス生成器111は、命令フェッチアドレスを生成して、一次命令キャッシュ101,二次命令キャッシュ102又はメモリ12に格納する。
分岐予測機構112は、将来実行する命令列の分岐を予測する。
命令バッファ113は、プログラムの順番通りに一次命令キャッシュ101からフェッチされてきた命令を一旦格納する。
命令デコーダ114は、命令バッファ113に一旦格納された命令を解読する。
レジスタリネーミング部115は、演算結果を書き込む物理レジスタを決める。
RSA116a,RSE116b,RSF116c及びRSBR116dは、リザベーションステーションと呼ばれるキュー構造のストレージである。レジスタリネーミング部115によって演算結果の書き込み先の物理レジスタが決まると、命令はリザベーションステーションに蓄積される。
RSA116aは、ロードストア命令のアドレス計算用のリザベーションステーションであり、オペランドアドレス生成器117,一次データキャッシュ103及び浮動小数点レジスタ105が後段に接続される。
RSE116bは、固定小数点計算用のリザベーションステーションであり、演算器118a,固定小数点更新バッファ106及び固定小数点レジスタ104が後段に接続される。
RSF116cは、浮動小数点計算用のリザベーションステーションであり、演算器118b,浮動小数点更新バッファ107及び浮動小数点レジスタ105が後段に接続される。
RSBR116dは、分岐命令用のリザベーションステーションである。
命令デコーダ114で解読された命令はその順番通りに命令識別子(Instruction Identification;IID)が割り振られ、順番通りにCSE116eと呼ばれるCOMMIT処理をする回路に送られる。CSE116eは、デコードされた命令を命令の実行順番通りにためておくキュー構造のストレージと、キューの情報及び各処理パイプからの完了報告をもとにCOMMIT処理を行なう完了処理回路とに分けられる。デコーダで解読された命令はCSE116eのキューに貯められ、命令処理完了の報告を待つ。各々のリザベーションステーションでOut of Orderにより実行された命令は終了報告がCSE116eに送られる。そして、CSE116eの完了処理回路でプログラム本来の実行順序に従って順番に、キューに貯められた完了報告待ちの命令の中から終了報告に対応する命令が終了(Commit)され、資源の更新が行なわれる。
PC119は、CSE116eの後段及び命令フェッチアドレス生成器111の前段に接続され、CSE116eの演算結果に基づき、次に実行すべき命令が格納されているメモリ12上のアドレスを命令フェッチアドレス生成器111に通知する。
図3は、図2に示した命令デコーダ114の構成例を模式的に示すブロック図である。
図示する例では、スーパースカラプロセッサのデコード並列数は4とする。命令デコーダ114は命令デコーダcomplexと命令デコーダsimpleとに分けられる。命令デコーダcomplexは、例えばマイクロオペ分解などの複雑な命令デコードを行なうことができる。全ての命令のデコードを行なうことができるが、デコードレイテンシは命令デコーダsimpleよりも長い。図示する例においては、命令デコーダcomplex は、+2サイクルかけてデコードが行なわれるものとする。命令デコーダsimpleは簡単な命令しかデコードできないが、その分1サイクルで命令をデコードすることができる。
命令デコードがスタートすると、命令デコーダsimpleと命令デコーダcomplex 1stとの両方に命令オペコードが渡され、デコードが始められる。命令デコーダcomplex 1stは、命令デコーダcomplexが3サイクルかけてデコードを行なう際の1サイクル目の処理を示す。2サイクル目の処理はcomplex 2ndで表され、3サイクル目の処理はcomplex 3rdで表される。
命令デコーダsimpleでは、命令デコーダsimpleでデコードできる命令であるかの判定がまず行なわれる。デコードできる命令であるという判定がなされると、simpleというフラグが“1“に設定される。
同一サイクルで、全てのスロットのsimple enable =1で、命令デコーダcomplexに一つもデコード中の命令がいなく(別言すれば、all invalid)、且つ、Decode endのFFに命令を入れることができる際、simple enable判定器114aは、Simple decode enableというフラグを”1”にして出力する。
All invalidを見るのは、命令デコーダcomplexに命令がいるとき、そちらのほうが命令順で先の命令であるため、追い抜かないようにするためである。
Simple decode enable =“1”であるとき、decode startのFFから命令デコーダcomplexの初段のFFへの命令移動は行なわれない。代わりに、decode startのFFからdecode endのFFに直接命令が移動する。
各スロットの各サイクルはvalidというフラグを持ち、これが“1”であると有効な命令であることを示す。命令の移動は、validの移動でもある。
Decode endのFFへ入力される命令は命令デコーダsimpleの出力と命令デコーダcomplexの出力とのいずれかを選択したものであり、Simple decode enable =“1”であれば命令デコーダsimple側が選択される。出力の選択には、例えば、multiplexer(MUX)回路が使われてよい。
Simple decode enable=“1”の際、命令デコーダcomplexのcomplex 1stのサイクルへのvalidの移動を抑止することで、命令の移動が抑止される。
上記のようにすれば、命令デコーダcomplexに命令が存在しないとき、命令デコーダsimpleを通じて、単純な命令は短いレイテンシでデコードすることができる。また、命令デコーダsimpleで処理できない命令と混ざった命令列でも、命令デコーダcomplexとsimple enable判定器114aとによる調停によって、命令の処理順番を正しく維持しながら、命令デコードをパイプライン処理できる。
また、命令デコーダsimpleで処理できる命令のみの命令列であれば、decode endから命令を発行できない状態とならなければ、常に短いレイテンシで命令をデコードできる。
図4は、図3に示したsimple enable判定器114aによる対象命令の判定処理を説明する図である。
命令デコーダsimpleによる処理の対象かどうかの判定は、命令オペコードを入力として一意に判定できる。すなわち、図4に示すように、対象命令の一覧テーブルを予め定義しておき、その一覧テーブルに該当する命令かどうかのチェックを行なえばよい。
一般的には、add等のシンプルな命令はデコードも低レイテンシで行なえるため、命令デコーダsimpleによる処理の対象となる。一方で、複雑な処理を行ない複数フローに分ける必要がある命令は、デコードも長レイテンシで行なうこととなり、命令デコーダsimpleによる処理の対象とならない。
命令デコーダsimpleによる処理の対象である場合、通常レイテンシの命令デコーダ114でデコード処理中の命令がいないかどうかが判定される。発行順で前の命令であっても、通常レイテンシの命令デコーダ114の方がレイテンシが長いため、デコードが終わっていない可能性がある。
命令デコードはin-orderで行なわれるため、デコード処理中の命令がないことが確認される。これらの判断は、低レイテンシデコード(別言すれば、命令デコーダsimple)と通常レイテンシデコード(別言すれば、命令デコーダcomplex)からの報告に基づき、simple enable判定器114aによって実施される。
デコード処理中の命令がない場合には、並列して実行させていた通常レイテンシの命令デコードをキャンセルさせる。また、低レイテンシの命令デコーダsimpleのデコード結果を用いて、デコードが完了される。
低レイテンシのデコードの対象でないか、又は、通常レイテンシのデコードに前方命令が存在する場合は、低レイテンシのデコード処理によるデコード結果を破棄して、命令デコーダcomplexのデコード結果を待ち、出力結果が得られる。
すなわち、命令デコーダsimpleは、単一のサイクルで命令を処理する第1のデコーダの一例である。また、命令デコーダcomplexは、複数のサイクルで命令を処理する第2のデコーダの一例である。そして、simple enable判定器114aは、処理対象の命令が特定の命令であり、且つ、処理中の前方命令が存在しない場合には、命令デコーダsimpleに処理対象の命令を処理させる判定を行なう。また、simple enable判定器114aは、処理対象の命令が前記特定の命令でなく、又は、処理中の前方命令が存在する場合には、命令デコーダcomplexに処理対象の命令を処理させる判定を行なう。
simple enable判定器114aは、入力された命令オペコードに基づき、特定の命令の判定を行なってよい。
図5は、図2に示した命令デコーダ114のパイプラインを例示するテーブルである。
各パイプラインステージの名前をE,PD1,PD2,PD3,Dとする。
Eは命令バッファ113から命令をデコーダに渡すサイクルであり、デコーダsimple, complexともに共通である。PD1サイクルで各々がデコードをし、simple側がsimple enable判定器114aに命令デコーダsimpleで処理できる命令かを報告する。また、complex側はPD2,PD3にvalidな命令がいるかどうかを確認し、simple enable判定器114aに報告する。これらの情報から、simple enable判定器114aは、Simple decode enableを判定し、信号をPD1サイクルで出す。
図6は、図3に示したsimple enable判定器114aの論理回路を例示する図である。
simple enable判定器114aは、各スロット(Slot0-3)に対応する命令デコーダsimpleから取得された対象命令か否かを示す情報と、Pd2, Pd3の各サイクルに命令が存在するかの情報とを入力とする。そして、simple enable判定器114aは、Slot0-3のsimpleが全て1であり、かつPd2, Pd3のvalid=offであれば、Simple decode enableを有効にする。
〔A−2〕動作例
図1に示した演算処理装置1における対象命令の判定処理を、図7に示すフローチャート(ステップS1〜S6)に従って説明する。
命令デコーダ114は、命令バッファ113から命令オペコードを受け取り、命令でコードをスタートさせる(ステップS1)。
simple enable判定器114aは、命令が低レイテンシデコードの対象命令であるかを判定する(ステップS2)。
命令が低レイテンシデコードの対象命令でない場合には(ステップS2のNOルート参照)、処理はステップS6へ進む。
一方、命令が低レイテンシデコードの対象命令である場合には(ステップS2のYESルート参照)、simple enable判定器114aは、通常レイテンシの命令デコーダcomplexで処理中の前方命令があるかを判定する(ステップS3)。
通常レイテンシの命令デコーダcomplexで処理中の前方命令がある場合には(ステップS3のYESルート参照)、処理はステップS6へ進む。
通常レイテンシの命令デコーダcomplexで処理中の前方命令がない場合には(ステップS3のNOルート参照)、命令デコーダ114は、低レイテンシの命令デコーダsimpleのデコード結果をアウトプットとすることを決定する。そして、命令デコーダ114は、通常レイテンシの命令デコーダcomplexのデコードをキャンセルさせる(ステップS4)。
命令デコーダ114は、デコード結果をアウトプットして(ステップS5)、対象命令の判定処理は終了する。
ステップS2において命令が低レイテンシデコードの対象命令でない場合(ステップS2のNOルート参照)、又は、ステップS3において通常レイテンシの命令デコーダcomplexで処理中の前方命令がある場合には(ステップS3のYESルート参照)、上述したように処理はステップS6へ進む。命令デコーダ114は、通常レイテンシの命令デコーダcomplexのデコード結果をアウトプットとすることを決定する(ステップS6)。そして、処理はステップS5へ進む。
〔A−3〕効果
上述した実施形態の一例における演算処理装置1によれば、例えば、以下の作用効果を奏することができる。
命令デコーダsimpleは、単一のサイクルで命令を処理する。また、命令デコーダcomplexは、複数のサイクルで命令を処理する。そして、simple enable判定器114aは、処理対象の命令が特定の命令であり、且つ、処理中の前方命令が存在しない場合には、命令デコーダsimpleに処理対象の命令を処理させる判定を行なう。また、simple enable判定器114aは、処理対象の命令が前記特定の命令でなく、又は、処理中の前方命令が存在する場合には、命令デコーダcomplexに処理対象の命令を処理させる判定を行なう。
これにより、簡単な命令をなるべく低レイテンシの命令デコーダ114に実行させることで、命令デコーダ114のレイテンシ増加を抑えることができる。そして、総パイプライン段数を短くし、実質的な分岐予測ミスペナルティを削減できる。
simple enable判定器114aは、入力された命令オペコードに基づき、特定の命令の判定を行なう。これにより、add等のシンプルな特定の命令を容易に判別でき、命令デコーダsimpleの処理対象候補とすることができる。
〔B〕その他
開示の技術は上述した実施形態に限定されるものではなく、本実施形態の趣旨を逸脱しない範囲で種々変形して実施することができる。本実施形態の各構成及び各処理は、必要に応じて取捨選択することができ、あるいは適宜組み合わせてもよい。
1 :演算処理装置
11 :CPU
101 :一次命令キャッシュ
102 :二次命令キャッシュ
103 :一次データキャッシュ
104 :固定小数点レジスタ
105 :浮動小数点レジスタ
106 :固定小数点更新バッファ
107 :浮動小数点更新バッファ
111 :命令フェッチアドレス生成器
112 :分岐予測機構
113 :命令バッファ
114 :命令デコーダ
114a :simple enable判定器
115 :レジスタリネーミング部
116a :RSA
116b :RSE
116c :RSF
116d :RSBR
116e :CSE
117 :オペランドアドレス生成器
118a,118b:演算器
119 :PC
12 :メモリ
13 :インターコネクト制御部

Claims (2)

  1. 単一のサイクルで命令を処理する第1のデコーダと、
    複数のサイクルで命令を処理する第2のデコーダと、
    処理対象の命令が特定の命令であり、且つ、処理中の前方命令が存在しない場合には、前記第1のデコーダに前記処理対象の命令を処理させる一方、前記処理対象の命令が前記特定の命令でなく、又は、処理中の前方命令が存在する場合には、前記第2のデコーダに前記処理対象の命令を処理させる判定を行なう判定器と、
    を備える、演算処理装置。
  2. 前記判定器は、入力された命令オペコードに基づき、前記特定の命令の判定を行なう、
    請求項1に記載の演算処理装置。
JP2020071046A 2020-04-10 2020-04-10 演算処理装置 Active JP7409208B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2020071046A JP7409208B2 (ja) 2020-04-10 2020-04-10 演算処理装置
US17/182,328 US11720366B2 (en) 2020-04-10 2021-02-23 Arithmetic processing apparatus using either simple or complex instruction decoder

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020071046A JP7409208B2 (ja) 2020-04-10 2020-04-10 演算処理装置

Publications (2)

Publication Number Publication Date
JP2021168036A true JP2021168036A (ja) 2021-10-21
JP7409208B2 JP7409208B2 (ja) 2024-01-09

Family

ID=78005538

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020071046A Active JP7409208B2 (ja) 2020-04-10 2020-04-10 演算処理装置

Country Status (2)

Country Link
US (1) US11720366B2 (ja)
JP (1) JP7409208B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4166722A1 (en) 2021-10-13 2023-04-19 Mitsubishi Heavy Industries, Ltd. Method for disassembling offshore structure

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2510591B2 (ja) * 1987-06-12 1996-06-26 株式会社日立製作所 命令処理装置
JPS6425240A (en) 1987-07-22 1989-01-27 Hitachi Ltd Decoding instruction system
JPH01320540A (ja) 1988-06-22 1989-12-26 Hitachi Ltd 半導体集積回路装置
JPH0651984A (ja) * 1992-06-05 1994-02-25 Hitachi Ltd マイクロプロセッサ
US5630083A (en) * 1994-03-01 1997-05-13 Intel Corporation Decoder for decoding multiple instructions in parallel
US5881279A (en) * 1996-11-25 1999-03-09 Intel Corporation Method and apparatus for handling invalid opcode faults via execution of an event-signaling micro-operation
JP2002259118A (ja) 2000-12-28 2002-09-13 Matsushita Electric Ind Co Ltd マイクロプロセッサ及び命令列変換装置
US10437596B2 (en) * 2014-11-26 2019-10-08 Texas Instruments Incorporated Processor with a full instruction set decoder and a partial instruction set decoder

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4166722A1 (en) 2021-10-13 2023-04-19 Mitsubishi Heavy Industries, Ltd. Method for disassembling offshore structure

Also Published As

Publication number Publication date
JP7409208B2 (ja) 2024-01-09
US20210318854A1 (en) 2021-10-14
US11720366B2 (en) 2023-08-08

Similar Documents

Publication Publication Date Title
JP5889986B2 (ja) 実行された命令の結果を選択的にコミットするためのシステムおよび方法
JP2006114036A (ja) Smtディスパッチのための命令グループ形成およびメカニズム
US20060259742A1 (en) Controlling out of order execution pipelines using pipeline skew parameters
US20010005882A1 (en) Circuit and method for initiating exception routines using implicit exception checking
US20120137109A1 (en) Method and apparatus for performing store-to-load forwarding from an interlocking store using an enhanced load/store unit in a processor
EP3767462A1 (en) Detecting a dynamic control flow re-convergence point for conditional branches in hardware
EP1974254B1 (en) Early conditional selection of an operand
CN113535236A (zh) 基于指令集体系结构的和自动的加载跟踪的方法和装置
US6871343B1 (en) Central processing apparatus and a compile method
JP2000322257A (ja) 条件分岐命令の投機的実行制御方法
US7779234B2 (en) System and method for implementing a hardware-supported thread assist under load lookahead mechanism for a microprocessor
JP2009524167A5 (ja)
US6983359B2 (en) Processor and method for pre-fetching out-of-order instructions
CN112559048B (zh) 一种指令处理装置、处理器及其处理方法
JP7409208B2 (ja) 演算処理装置
JP3683439B2 (ja) 分岐予測を抑止する情報処理装置および方法
US11055101B2 (en) Processing apparatus and controlling method for processing apparatus
JPH06266556A (ja) データ処理装置
US6983358B2 (en) Method and apparatus for maintaining status coherency between queue-separated functional units
JP2004038255A (ja) 命令制御方法及びプロセッサ
JP3721002B2 (ja) メモリ要求を形成するために並列に生成される複数の取出アドレスのうちの1つを選択する、プロセッサおよび命令取出方法
US7783692B1 (en) Fast flag generation
US11314505B2 (en) Arithmetic processing device
US6697933B1 (en) Method and apparatus for fast, speculative floating point register renaming
US6490653B1 (en) Method and system for optimally issuing dependent instructions based on speculative L2 cache hit in a data processing system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230112

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230907

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230926

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231109

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20231109

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: 20231121

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231204

R150 Certificate of patent or registration of utility model

Ref document number: 7409208

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150