JP2008158810A - 命令実行処理装置 - Google Patents
命令実行処理装置 Download PDFInfo
- Publication number
- JP2008158810A JP2008158810A JP2006346774A JP2006346774A JP2008158810A JP 2008158810 A JP2008158810 A JP 2008158810A JP 2006346774 A JP2006346774 A JP 2006346774A JP 2006346774 A JP2006346774 A JP 2006346774A JP 2008158810 A JP2008158810 A JP 2008158810A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- execution
- flag
- result
- unit
- 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.)
- Pending
Links
Images
Landscapes
- Advance Control (AREA)
- Executing Machine-Instructions (AREA)
Abstract
【課題】簡素な構成でパイプライン処理におけるハザードを抑制する。
【解決手段】命令レジスタ2に取り込んだ命令セット(命令コードおよびスキップ条件ビットからなる)の命令コードを命令デコーダでデコードして、実行ユニット5で実行する。命令が演算命令である場合、実行ユニット5は命令の実行結果を演算結果フラグ(キャリーフラグなど)として出力し、フラグレジスタ6に格納する。この演算結果フラグと、命令セットにおけるスキップ条件ビットとを合致回路8で比較して、両者が一致した場合、フリップフロップ9にスキップフラグをセットする。これにより、実行ユニット5が次の命令の実行を停止する。このように、条件付き分岐命令を使用する代わりに、スキップ機能付き命令を使用することにより、条件付き分岐命令が実行された結果で分岐条件が成立するまでパイプライン処理を停止させるようなことがなくなる。
【選択図】図1
【解決手段】命令レジスタ2に取り込んだ命令セット(命令コードおよびスキップ条件ビットからなる)の命令コードを命令デコーダでデコードして、実行ユニット5で実行する。命令が演算命令である場合、実行ユニット5は命令の実行結果を演算結果フラグ(キャリーフラグなど)として出力し、フラグレジスタ6に格納する。この演算結果フラグと、命令セットにおけるスキップ条件ビットとを合致回路8で比較して、両者が一致した場合、フリップフロップ9にスキップフラグをセットする。これにより、実行ユニット5が次の命令の実行を停止する。このように、条件付き分岐命令を使用する代わりに、スキップ機能付き命令を使用することにより、条件付き分岐命令が実行された結果で分岐条件が成立するまでパイプライン処理を停止させるようなことがなくなる。
【選択図】図1
Description
本発明は、パイプライン処理におけるハザードを防止する機能を備えたマイクロプロセッサ等の命令実行処理装置に関するものである。
近年、マイクロプロセッサにパイプライン処理を導入して高速処理化を図ることは、ごく一般的になってきている。パイプライン処理においては、条件付き分岐命令を実行するとき、図6に示すように、実行ステージで条件付き分岐命令が実行されることにより、分岐条件が成立すれば、分岐先の命令にジャンプし、分岐条件が成立しなければ、分岐先の命令にはジャンプしない。ジャンプする場合は、実行ステージで分岐条件が成立するまで分岐先の命令フェッチができない。このように、条件付き分岐命令についての命令デコードステージおよびアドレス計算ステージの段階で、パイプライン処理の次のサイクルが停止するため、パイプライン処理が乱されてしまう。
このような条件分岐によるハザードを防止し、分岐命令の処理を高速化するために、分岐予測を行う手法が知られている。例えば、分岐予測では、分岐予測テーブルを用いて、分岐予測テーブルに登録された以前に出現した分岐命令のアドレスとデコードされた分岐命令のアドレスとを比較し、一致すれば、分岐先命令を分岐予測テーブルから取り出して実行することが知られている(特許文献1)。ここで、ハザードが生じないということは、プログラムの内容の一部がスキップ等で実行されない場合があっても、プログラムの流れは停止しないということを意味している。
特開平5−143334号公報(1993年6月11日公開)
ところが、上記のような分岐予測の手法を用いると、分岐予測テーブルが必要である上、全ての条件分岐の可能性の予測に対応するためには、複数のパイプラインを備える必要があるなどマイクロプロセッサの構成が複雑化する。
本発明は、上記の問題点に鑑みてなされたものであり、簡素な構成でパイプライン処理におけるハザードを抑制することを目的としている。
本発明に係る命令実行処理装置は、取り込まれた命令をデコードする命令デコード部と、デコードされた命令を実行する実行部とを備え、命令のデコードおよび実行をパイプライン処理にて行う命令実行処理装置において、上記の課題を解決するために、前記命令が演算命令であるとき前記実行部から出力された演算命令実行結果が当該演算命令に付加された付加条件と一致すると、前記実行部に前記演算命令の次の命令の実行を停止させる一方、前記演算命令実行結果が前記付加条件と一致しないと、前記実行部に前記次の命令を実行させる実行制御部を備えていることを特徴としている。
上記の構成では、演算命令を実行するときに、実行部からの演算命令実行結果と演算命令に付加された付加条件とが一致すると、実行制御部によって、次の命令の実行が停止される。また、演算命令実行結果と付加条件とが一致しないと、実行制御部によって、次の命令の実行される。これにより、次の命令がスキップされることになり、条件付き分岐命令を使用しなくても、条件に応じて処理を選択するプログラムを実行することができる。このように命令をスキップすることにより、パイプライン処理が乱されることなく行われる。
前記命令実行処理装置は、前記演算命令実行結果を格納する演算命令実行結果格納部と、前記実行制御部が前記次の命令の実行を停止させるときに前記演算命令実行結果格納部に格納された前記演算命令実行結果を出力する一方、前記実行制御部が前記次の命令を実行させるときに前記実行部による非演算命令実行結果を出力する出力選択部とを備えていることが好ましい。
上記の構成においては、実行制御部によって命令の実行を停止させるときに、演算命令実行結果格納部に格納された演算命令実行結果が出力選択部を介して実行制御部に出力される。これにより、実行制御部によって、演算命令実行結果と付加条件との一致/不一致が判断される。また、実行制御部が命令を実行させるときに、実行部による非演算命令実行結果が出力選択部を介して実行制御部に出力される。これにより、実行制御部によって、非演算命令実行結果と付加条件との不一致が判断される。このように、演算命令の実行前後で得られる値に変化がある場合、演算命令実行結果と付加条件との一致/不一致を実行制御部で判断する必要がある一方で、非演算命令の実行前後では得られる値に変化がない場合、実行制御部では不一致の判断結果しか得られないので、出力選択部によって、実行制御部に入力される実行結果を選択している。
本発明に係る命令実行処理装置は、以上のように、命令が演算命令であるとき実行部から出力された演算命令実行結果が当該演算命令に付加された付加条件と一致すると、前記実行部に前記演算命令の次の命令の実行を停止させる一方、前記演算命令実行結果が前記付加条件と一致しないと、前記実行部に前記次の命令を実行させる実行制御部を備えているので、条件付き分岐命令を使用しなくても、条件に応じて処理を選択するプログラムを実行することができる。したがって、本発明の命令実行処理装置を採用すれば、分岐予測を行う従来のマイクロプロセッサと比べて、簡素な構成でハザードの発生を大幅に抑制することができるという効果を奏する。
本発明の実施形態について図1ないし図5に基づいて説明すると、以下の通りである。
図1に示すように、マイクロプロセッサ1は、命令レジスタ2と、命令デコーダ3と、アドレス計算部4と、実行ユニット5と、フラグレジスタ6と、セレクタ7と、合致回路8と、Dフリップフロップ9と、ANDゲート10とを備えている。
なお、図1においては、太い実線が複数ビットの信号線を表し、細い実線が1ビットの信号線を表している。
命令レジスタ2は、図示しない命令メモリから命令セットをフェッチして格納している。命令セットは、命令コードおよびスキップ条件ビットからなる。スキップ条件ビットは、スキップ条件付き命令のスキップ条件を表すビットである。スキップ条件付き命令は、スキップ条件に応じて次の命令をスキップするか実行するかを規定した命令である。スキップ条件としては、演算命令の実行結果である演算結果を示す演算結果フラグ、例えばキャリーフラグC、ゼロフラグZ、サインフラグSおよびオーバーフローチャートフラグVのそれぞれの状態、すなわちセット(“1”)およびクリア(“0”)が用いられる。例えば、スキップ条件付き命令としては、各フラグがセットであるときに次の命令をスキップするが、各フラグがクリアであるときに次の命令を実行する命令や、逆に、各フラグがセットであるときに次の命令を実行するが、各フラグがクリアであるときに次の命令をスキップする命令が挙げられる。
例えば、演算結果フラグおよびスキップ条件ビットは、次の表1に示すように4ビットで設定される。また、スキップ条件ビットには無条件で命令を実行するビットも含まれる。
命令デコーダ3は、命令レジスタ2に格納されている命令セットにおける命令コードをデコードすることにより、マイクロプロセッサ1に対する指令を取り出す部分である。具体的には、この命令デコーダ3は、命令の種類を判別するとともに、命令コードから情報を取り出して実行すべき演算の種類を決定したり、各種の制御信号を発生したりする。
アドレス計算部4は、ロード命令およびストア命令や条件付き分岐命令で必要とするアドレスをデコードされた命令におけるオペランドの部分に所定の計算処理を施すことによって求める部分である。また、アドレス計算部4は、デコードされた命令のオペコード部分に基づいて、デコードされた命令コードが演算命令の命令コードであるか否かを判定する。具体的には、アドレス計算部4は、デコードされた命令コードが演算命令の命令コードである場合に“0”の演算命令判定ビットを出力し、そうでない場合に“1”の演算命令判定ビットを出力する。
実行ユニット5は、命令デコーダ3によるデコード結果に基づいて、所定の演算処理を行うことにより命令を実行する部分である。また、実行ユニット5は、イネーブル端子Enable端子に、後述するフリップフロップ9からの“0”の実行制御信号が入力されると、命令の実行に関する全ての処理を停止する。
フラグレジスタ6は、実行ユニット5から出力される命令の実行結果として、演算命令の実行結果を示す前述の演算結果フラグを格納するためのレジスタである。
セレクタ7は、実行ユニット5から出力される命令実行の結果と、フラグレジスタ6に格納された演算結果フラグとのいずれか一方を選択してY端子から出力する回路である。具体的には、セレクタ7は、S端子に入力されるANDゲート10からの制御信号が“1”であるときに実行ユニット5からの命令実行の結果を出力し、制御信号が“0”であるときに演算結果フラグを出力する。
合致回路8は、一致検出コンパレータなどで構成されており、命令レジスタ2から読み出されたスキップ条件ビットとセレクタ7からの出力値とを比較する。また、合致回路8は、比較の結果、両者が一致したときに“1”の値の一致信号を出力し、両者が一致しなかったときに“0”の不一致信号を出力する。
フリップフロップ9は、Dフリップフロップであり、パイプライン処理の基準となるクロック信号CLOCKが入力されている。このフリップフロップ9は、合致回路8から“1”のデータが入力されると、クロック信号CLOCKに同期してスキップフラグをセットし、“0”の実行制御信号をQ(バー)端子から出力する。また、フリップフロップ9は、合致回路8から“0”のデータが入力されると、スキップフラグをリセットして、“1”の実行制御信号をQ(バー)端子から出力する。
ANDゲート10は、フリップフロップ9からの実行制御信号とアドレス計算部4からの演算命令判定ビットとの論理積をセレクタ7のS端子に出力する。
ここで、上記のように構成されるマイクロプロセッサ1の命令実行処理時の動作について説明する。
まず、命令デコードステージにおいては、命令レジスタ2に格納された命令セットにおける命令コードが、命令デコーダ3によってデコードされる。次いで、アドレス計算ステージでは、当該命令コードで特定される命令が演算命令であるか否かがアドレス計算部4によって判定される。命令が演算命令であるとき、アドレス計算部4からは、“0”の演算命令判定ビットが出力される。
実行ステージにおいては、命令デコーダ3による命令コードのデコード結果に基づいて、命令の実行処理が実行ユニット5によって行われる。演算命令が実行された場合、実行ユニット5から演算結果フラグが出力され、当該演算結果フラグがフラグレジスタ6にセットされる。
初期状態では、フリップフロップ9においてスキップフラグがクリアされているので、“1”の実行制御信号がフリップフロップ9から出力される。これにより、上記の実行ステージでの実行処理が可能となる。また、このとき、実行制御信号が“0”であるので、演算命令判定ビットの値に関わらず、ANDゲート10の出力が“0”となる。これにより、フラグレジスタ6からの演算結果フラグがセレクタ7を介して合致回路8に出力される。
合致回路8では、セレクタ7から入力された演算結果フラグと、命令レジスタ2からのスキップ条件ビットとが比較される。そして、両者が一致すると、合致回路8から“1”の一致信号が出力されるので、フリップフロップ9にはスキップフラグがセットされて、“0”の実行制御信号がフリップフロップ9から出力される。実行ユニット5は、この実行制御信号の指示を受けて実行処理を停止する。これにより、次の命令は、パイプライン処理の次のサイクルで命令デコードステージおよびアドレス計算ステージまで処理が進んでいても、実行ステージで実行されずにスキップされる。
一方、合致回路8において、両者が一致しないと判定された場合、合致回路8から“0”の不一致信号が出力されるので、フリップフロップ9にはスキップフラグがリセットされて、“1”の実行制御信号がフリップフロップ9から出力される。実行ユニット5は、この実行制御信号の指示を受けて実行処理を可能とする。これにより、次の命令についても、パイプライン処理の次のサイクルで命令デコードステージおよびアドレス計算ステージに続いて、実行ステージでも処理される。
上記のスキップされた命令の次の命令についても、続くサイクルで命令デコードステージおよびアドレス計算ステージにより処理が行われる。この命令が、演算命令ではない命令(例えば転送命令)であれば、スキップ条件ビットが設定されていない、すなわちすべて0である。この場合、合致回路8では、前の演算結果フラグと0のスキップ条件ビットが比較された結果、両者が不一致であると判定されるので、フリップフロップ9にはスキップフラグがリセットされる。このとき、“1”の実行制御信号がフリップフロップ9から出力されることにより、実行ユニット5では実行処理が可能となるので、上記の命令が実行されることになる。また、このとき、実行制御信号が“1”であり、かつ上記の命令が非演算命令であるために演算命令判定ビットが“1”となるので、ANDゲート10の出力が“1”となる結果、実行ユニット5の実行出力がセレクタ7から出力される。
このように、上記の構成においては、演算命令を処理するときに、実行ユニット5から出力される演算結果フラグが、セレクタ7を介して合致回路8に入力されてスキップビット条件と比較される。その結果として、両者が一致したときに、スキップフラグがセットされることにより、実行ユニット5の実行処理が停止される。一方、両者が一致しなかったときに、スキップフラグがリセットされることにより、実行ユニット5の実行処理が行われる。したがって、演算命令の実行の結果によってスキップ条件が成立したときには、次の命令が実行されないので、不要な処理が行われることを回避できる。
続いて、命令実行処理の具体例について説明する。
図2のフローチャートに示すプログラムは、次のような処理手順を含んでいる。
まず、R1レジスタの値とR2レジスタの値とを加算して、その結果をR1レジスタに格納する(ステップS1)。次いで、ステップS1での演算結果としてのR1レジスタの値についてキャリーフラグCがセットであるかクリアであるか判定する(ステップS2)。キャリーフラグCがセットである場合(YES)、R3レジスタの値をR1レジスタに格納し(ステップS3)、キャリーフラグCがクリアである場合(NO)、R2レジスタの値をR1レジスタに格納する(ステップS4)。
引き続き、R1レジスタの値からR2レジスタの値を減算して、その結果をR1レジスタに格納する(S5)。次いで、ステップS5での演算結果としてのR1レジスタの値についてサインフラグSがセットであるかクリアであるか判定する(ステップS6)。サインフラグSがセットである場合(YES)、R2レジスタの値をR1レジスタに格納して(ステップS7)、R1レジスタの値についてゼロフラグZがセットであるかクリアであるか判定する(ステップS8)。また、サインフラグSがクリアである場合(NO)、ステップS8に移行する。
さらに、ゼロフラグZがクリアである場合(NO)、R3レジスタの値とR1レジスタの値とを加算して、その結果をR3レジスタに格納して(ステップS9)、R3レジスタの値をR2レジスタに格納する(ステップS10)。また、ゼロフラグZがセットである場合(YES)、ステップS10に移行する。
上記の一連の処理を実現するためのプログラムは、従来の条件付き分岐命令でニーモニック形式で記述すると、図3のように表される。
このプログラムにおいては、ステップS2でキャリーフラグCがセットであると判定されると(2行目の[BR_C])、分岐条件が成立して、5行目の転送命令([Move R3,R1])にジャンプする。また、ステップS2でキャリーフラグCがクリアであると判定されると、分岐条件が成立しないので、3行目の転送命令([Move R2,R1])が実行される。この場合は、5行目の転送命令が実行されないので、6行目の減算命令にジャンプする([Sub R2,R1])。
ステップS8でゼロフラグZがセットであると判定されると(9行目の[Br_Z])、分岐条件が成立して、11行目の転送命令([Move R3,R2])にジャンプする。また、ステップS8でゼロフラグZがクリアであると判定されると、分岐条件が成立しないので、10行目の加算命令([Add R1,R3])が実行される。
このように、条件付き分岐命令を用いると、条件が成立するまで、パイプライン処理における次のサイクルの動作が停止するので、ハザードが生じてしまう。
これに対し、スキップ条件付き命令を用いたマイクロプロセッサ1においては、上記の一連の処理を実現するためのプログラムは、ニーモニック形式で記述すると、図4のように表される。
このプログラムにおいては、まず、ステップS1の加算演算の結果、キャリーフラグCがセットである場合、1行目の[Add R2,R1 skip=C]により、スキップ条件が成立するので、次の転送命令(2行目の[Move R2,R1 skip=notC])をスキップして、3行目の転送命令([Move R3,R1 ])を実行する。一方、キャリーフラグCがクリアである場合、1行目の[Add R2,R1 skip=C]により、スキップ条件が成立しないので、2行目の転送命令を実行する。また、この転送命令では、次の命令をスキップする条件として、キャリーフラグCがクリアであることが含まれているので、3行目の転送命令をスキップする。
ステップS7の転送命令を実行した結果、ゼロフラグZがセットである場合、5行目の[Move R2,R1 skip=Z]により、スキップ条件が成立するので、次の転送命令(6行目の[Move R3,R1])をスキップして、7行目の転送命令([Move R3,R2])を実行する。
ここで、マイクロプロセッサ1が、上記の一連の処理をパイプラインによって図4に示すプログラムを実行するときの動作を図5のタイミングチャートを参照して説明する。
まず、図4の1行目の命令が、クロック信号CLOCKの1クロック毎に、命令デコードステージ、アドレス計算ステージ、実行ステージの順で処理されていく。実行ステージでは、1行目の命令の実行の結果、キャリーフラグCがセットされることにより、スキップフラグがセットされる。これにより、スキップ条件が成立するので、2行目の命令のスキップが決定する。
次のサイクルでは、2行目の命令が、最初のサイクルから1クロック遅れて同様に処理されていく。しかしながら、スキップ条件が成立しているので、2行目の命令は、実行ステージで実行されない(スキップされる)ことになる。そして、続く3行目の命令は、前のサイクルから1クロック遅れて処理されていく。
このように、本実施形態のマイクロプロセッサ1は、命令コードとスキップ条件とを含む命令セット(スキップ機能付き命令)を実行可能とするため、実行ステージを実現する構成として実行ユニット5に加えて、フラグレジスタ6、セレクタ7、合致回路8、フリップフロップ9およびANDゲート10を備えている。これにより、演算命令に設定されたスキップ条件が成立すると、その次の命令の実行を停止してスキップする一方、スキップ条件が成立しないと、その次の命令を実行する。それゆえ、上記の構成は、2つ以上の命令をスキップする必要がある場合には適用できないが、図2に示すように、条件判定のステップから1つのステップを介して合流するような処理を行う場合に適している。一般に、プログラムは、このような処理を多用しているので、次の命令をスキップすることで、条件付き分岐命令を使用しなくても、条件に応じて処理を選択するプログラムを実行することができる。このように命令をスキップすることにより、図5に示すように、パイプライン処理が乱されることなく行われる。したがって、本実施形態のマイクロプロセッサ1を採用すれば、分岐予測を行う従来のマイクロプロセッサと比べて、簡素な構成でハザードの発生を大幅に抑制することができる。
本発明は、上述した実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能である。すなわち、請求項に示した範囲で適宜変更した技術的手段を組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
本発明の命令実行処理装置は、スキップ機能付き命令を用い、実行される演算命令が所定の条件を満たしたときに、次の命令を実行せずにスキップする一方、当該演算命令が所定の条件を満たさなかったときに、次の命令を実行するように構成されることにより、ハザードの発生を抑制できるので、マイクロプロセッサの高速化に好適に利用できる。
1 マイクロプロセッサ
2 命令レジスタ
3 命令デコーダ(デコード部)
4 アドレス計算部
5 実行ユニット(実行部)
6 フラグレジスタ(演算命令実行結果格納部)
7 セレクタ(出力選択部)
8 合致回路(実行制御部)
9 フリップフロップ
10 ANDゲート
2 命令レジスタ
3 命令デコーダ(デコード部)
4 アドレス計算部
5 実行ユニット(実行部)
6 フラグレジスタ(演算命令実行結果格納部)
7 セレクタ(出力選択部)
8 合致回路(実行制御部)
9 フリップフロップ
10 ANDゲート
Claims (2)
- 取り込まれた命令をデコードする命令デコード部と、デコードされた命令を実行する実行部とを備え、命令のデコードおよび実行をパイプライン処理にて行う命令実行処理装置において、
前記命令が演算命令であるとき前記実行部から出力された演算命令実行結果が当該演算命令に付加された付加条件と一致すると、前記実行部に前記演算命令の次の命令の実行を停止させる一方、前記演算命令実行結果が前記付加条件と一致しないと、前記実行部に前記次の命令を実行させる実行制御部を備えていることを特徴とする命令実行処理装置。 - 前記演算命令実行結果を格納する演算命令実行結果格納部と、
前記実行制御部が前記次の命令の実行を停止させるときに前記演算命令実行結果格納部に格納された前記演算命令実行結果を出力する一方、前記実行制御部が前記次の命令を実行させるときに前記実行部による非演算命令実行結果を出力する出力選択部とを備えていることを特徴とする請求項1に記載の命令実行処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006346774A JP2008158810A (ja) | 2006-12-22 | 2006-12-22 | 命令実行処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006346774A JP2008158810A (ja) | 2006-12-22 | 2006-12-22 | 命令実行処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008158810A true JP2008158810A (ja) | 2008-07-10 |
Family
ID=39659643
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006346774A Pending JP2008158810A (ja) | 2006-12-22 | 2006-12-22 | 命令実行処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008158810A (ja) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS56153448A (en) * | 1980-04-30 | 1981-11-27 | Nec Corp | Microprogram control device |
JPH01253032A (ja) * | 1988-03-31 | 1989-10-09 | Nec Home Electron Ltd | マイクロプログラム制御型プロセッサ |
-
2006
- 2006-12-22 JP JP2006346774A patent/JP2008158810A/ja active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS56153448A (en) * | 1980-04-30 | 1981-11-27 | Nec Corp | Microprogram control device |
JPH01253032A (ja) * | 1988-03-31 | 1989-10-09 | Nec Home Electron Ltd | マイクロプログラム制御型プロセッサ |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10162635B2 (en) | Confidence-driven selective predication of processor instructions | |
KR100423910B1 (ko) | 코프로세서 명령 실행 장치 및 방법 | |
JP2009163624A (ja) | プロセッサ装置及び条件分岐処理方法 | |
JP2007272353A (ja) | プロセッサ装置及び複合条件処理方法 | |
JP4412905B2 (ja) | 低電力動作制御装置、およびプログラム最適化装置 | |
JP3749233B2 (ja) | パイプラインでの命令実行方法及び装置 | |
KR20080014062A (ko) | 마이크로프로세서에서의 효율적인 서브프로그램 복귀 | |
JP2009059246A (ja) | マイクロプロセッサ | |
JPH1196004A (ja) | データプロセッサにおける条件分岐実行を制御するための方法および装置 | |
US9830153B2 (en) | Skip instruction to skip a number of instructions on a predicate | |
JP5233078B2 (ja) | プロセッサ及びその処理方法 | |
JP4889235B2 (ja) | プログラム制御プロセッサ | |
JPH04245539A (ja) | パイプラインにおける分岐命令制御方式 | |
JP2008158810A (ja) | 命令実行処理装置 | |
JP4383496B1 (ja) | マイクロコンピュータ及びその命令実行方法 | |
JP2006053830A (ja) | 分岐予測装置および分岐予測方法 | |
JPS5860355A (ja) | 情報処理装置 | |
US20050289330A1 (en) | Branch control method and information processor | |
US20050108698A1 (en) | Assembler capable of reducing size of object code, and processor for executing the object code | |
JPH10161873A (ja) | プロセッサ | |
JP2005135090A (ja) | 演算処理装置 | |
US20060015704A1 (en) | Operation apparatus and instruction code executing method | |
JP2006285721A (ja) | 演算処理装置および演算処理方法 | |
US20040019772A1 (en) | Microprocessor | |
US20100153688A1 (en) | Apparatus and method for data process |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20081111 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110127 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120313 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20120703 |