JPH0437927A - プロセッサの処理方法 - Google Patents

プロセッサの処理方法

Info

Publication number
JPH0437927A
JPH0437927A JP2143883A JP14388390A JPH0437927A JP H0437927 A JPH0437927 A JP H0437927A JP 2143883 A JP2143883 A JP 2143883A JP 14388390 A JP14388390 A JP 14388390A JP H0437927 A JPH0437927 A JP H0437927A
Authority
JP
Japan
Prior art keywords
information
instruction
cycle
address information
processing
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
Application number
JP2143883A
Other languages
English (en)
Inventor
Hiroyuki Yasuda
弘幸 安田
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.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP2143883A priority Critical patent/JPH0437927A/ja
Priority to EP19910108801 priority patent/EP0459445A3/en
Priority to KR1019910008872A priority patent/KR920001319A/ko
Publication of JPH0437927A publication Critical patent/JPH0437927A/ja
Priority to US08/158,190 priority patent/US5611061A/en
Pending legal-status Critical Current

Links

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
    • 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/3861Recovery, e.g. branch miss-prediction, exception handling
    • 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/32Address formation of the next instruction, e.g. by incrementing the instruction counter
    • G06F9/322Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address
    • 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/32Address formation of the next instruction, e.g. by incrementing the instruction counter
    • G06F9/322Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address
    • G06F9/323Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address for indirect branch instructions
    • 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/3861Recovery, e.g. branch miss-prediction, exception handling
    • G06F9/3863Recovery, e.g. branch miss-prediction, exception handling using multiple copies of the architectural state, e.g. shadow registers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 A 産業上の利用分野 本発明は、第1のす・イクルで第1の命令情報を取り込
み、続く第2のサイクルで上記第1の命令情報に基づく
実行を行うとともに第2の命令情報を取り込むようにし
たバイブうイン制御方式のプロセ、すの処理方法に関す
る。
B 発明の概要 本発明は、第1の→ノイクルで第1の命令情報を取り込
み、続く第2の4ノイクルで上記第1の命令情報に基づ
く実行を行うとともに第2の命令情報を取り込むように
したパイプライン制御方式のプロセッサの処理方法にお
いて、一連の動作サイクル中に割り込み要求があった時
、このサイクルで取り込んだ命令情報のアドレス情報と
上記サイクルに続くサイクルに取り込む命令情報のアド
レス情報をそれぞれセーブし、上記割り込み要求に基づ
く割り込み処理の終了時に、上記二つのアドレス情報に
よって指定された命令情報を取り込んで実行することに
よって、割り込み処理を高速に且つ確実に実行すること
ができるようにしたものである。
C従来の技術 従来より、ノイマン型のストアード・プログラム方式を
採用したディジタル計算機が広く提供されている。この
種のディジタル計算機では、プログラム蓄積部に蓄積さ
れた機械語の命令情報をシーケンサによって選択的にフ
ェッチすなわち取り込み、この取り込まれた命令情報C
4従ってデータの処理を実行する。
また、この種のディジタル計算機のプロセッサにおいて
は、その処理動作をいくつかの部分に分けて、流れ作業
のように連続並列処理するパイプライン制御方式を採用
することによって高速処理を可能にしている。
例えば、2段のパイプラインを備えるプロセッサでは、
第4図に示すように、所定のプログラムを記述した一連
の命令(1)、(2)、(3)・・情報について、この
命令(1)、  (2)。
〔3)・・・情報のフエ’7チと、これら命令(1)(
2)、  (3)  ・・・情報に基づく実行とを並列
的に行う。
なお、このような2段のパイプラインを備えるプリセッ
サにより、例えば、次のような分岐処理プログラム move3.rφ  =・−・ (1)jmp    
1abel  −=−(2)move   rφ、  
rl  −・・  (3)label:   move
   3.r φ  ・・・move   1.r φ
  ・・・ (Δ〕 (B) を実行する場合、第5図に示すように、分岐命令〔2)
情報の次の命令[3]情報のフェッチ中に上記分岐命令
〔2〕を実行することにより、上記命令(3)情報の次
には、上記分岐命令[2]情報に与えられた1abel
により指定される命令(A)情報ををフェッチする。な
お、上記分岐命令〔2〕情報に続く命令〔3]情報は、
何も実行を行わない所謂nopとして取り扱われる。
また、上記2段のパイプラインを備えるプロセッサにお
いて、割り込み要求を受は付けて割り込み処理を行う場
合には、割り込みサービスルーチンの命令シーケンスを
(il )、  (i−)、  (i、]・・・ とす
ると、例えば、第6図Aに示すように、命令〔2]の実
行中に割り込み要求があると、該命令(2〕の実行後に
割り込み要求を受は付ける。そして、割り込み要求を受
は付けたサイクルでは、上記割り込みサービスルーチン
の命令情報のアドレス情報を所定のメモリから読み、ま
た、上記命令[2]の実行サイクル中にフェッチした命
令(3〕情報へのリターンアドレス情報をスタックレジ
スタに一時的に待避すなわちブツシュし、次のサイクル
から上記割り込みサービスルーチンの命令(i+ )、
(it )、(i、)・・・情報をフェッチし実行する
。そして、上記割り込みサービスルーチンから復婦する
ときには、第6図Bに示すように、リターン命令(re
t)情報を1回フェッチし、このリターン命令(ret
)の実行サイクルでスタックレジスタから上記命令〔3
]情報・\のリターンアドレス情報をポツプして、その
アドレス情報の命令[3]情報をフェッチし実行する。
D 発明が解決しようとする課題 上述のよ−)にパイプライン制1ffI方式を(1用し
た従来のプロセッサにおい゛(は、上述の第5図に示し
た分岐処理プロゲラJ2のり、f+中に、例えば、第6
図Aに示すように、l−記分岐命令[2]の実行サイク
ル中に割り込み要求があると、この分岐命令〔2〕の実
行シイクル中にフェッチした命令〔3〕情報へのリター
ンアドレス情報がスタックレジスタにプノンユされるの
で、割り込みサービスルーチンから復ツケするときには
、第6図Bに示すように、スタックレジスタからポツプ
される上記命令〔3〕情報へのリターンアドレス情報に
より命令〔3]情報がフェッチされ実行されてしまい、
上記分岐命令〔2)情報が事実状無視されてしまうこと
になる。従って、分岐命令情報の実行中には、割り込み
要求を受は付けることができみかった。
ところで、例えば、パイプライン制御方式を採用したプ
ロセッサによる仮想記憶システムにおいて、ある命令情
報のフエンチ中に所謂ページフォルトが発生して割り込
み要求が発生したたときには、この命令情報のフェッチ
サイクルの前のフェッチサイクルでフェッチした命令情
報について実行サイクルの終了時点で、上記割り込み要
求を受は付けて、上記ページフォルトに対する処理を行
う割り込みサービスルーチンに移る必要がある。
しかし、上記ページフォルトが発生したときに実行して
いる命令情報が分岐命令情報であった場合には、上述の
ように割り込み要求を受けず]けることができないので
、上記ページフォルトに対する処理を行うことができな
くなってしまう。
そこで、本発明は、上述の如き従来のパイプライン制御
方式を採用したプロセッサにおける割り込み処理の実情
に鑑み、パイプライン制御方式を採用したプロセッサに
おける割り込み処理を高速に且つ確実に行うことができ
るようにし、パイプライン制御方式を採用したプロセッ
サによる仮想記憶システムにおけるページフォルトに対
する処理を割り込み処理により行うことができるように
することを目的とするものである。
E yA題を解決するための手段 本発明は、上述の目的を達成するために、第1のサイク
ルで第1の命令情報を取り込み、続く第2のサイクルで
上記第1の命令情報に基づく実行を行うとともに第2の
命令情報を取り込むようにしたパイプライン制御方式の
プロセッサの処理方法において、一連の動作サイクル中
に割り込み要求があった時、このサイクルで取り込んだ
命令情報のアドレス情報と上記→ノイクルに続くサイク
ルに取り込む命令情報のアドレス情報をそれぞれセーブ
し、上記割り込み要求に基づく割り込み処理の終了時に
、上記二つのアドレス情報によって指定された命令情報
を取り込んで実行するようにしたことを特徴とするもの
である。
F 作用 すなわち、本発明に係るプロセッサの処理方法では、一
連の動作サイクル中に割り込み要求があると、この割り
込み要求があったサイクルで取り込んだ命令情報のアド
レス情報と上記サイクルに続くサイクルに取り込む命令
情報のアドレス情報をそれぞれセーブする。そして、上
記割り込み要求に基づく割り込み処理の終了時には、」
二記二つのアドレス情報によらて指定された命令情報を
取り込んで実行する。
G 実施例 以下、本発明に係るプロセッサの処理方法の一実施例に
ついて、図面を参照しながら詳細に説明する。
本発明方法は、例えば、第2図に示すように、機械語の
命令情報を蓄積するプログラム蓄積部(1)、該プログ
ラム蓄積部(1)から機械a5の命令情報をフェッチす
なわち取り込んで、データの転送制御等の各種制御動作
を行うシーケンサ(2)、該シーケンサ(2)によりフ
ェフチされた命令情報に応した制御情報に従って算術演
算や論理演算の処理を行う演17部(3)、処理中に中
間データ等を一時記jQ してお・く作業領域(4)、
処理に必要なデータや処理済のデータ等を惑積しておく
主記憶部(5)等を備え、これらがバス(に) 、 (
7) 、 (8)を介しで接続されてなるプIIIセ、
すにオンいて実施される。
−ヒ記プロセ、→ノは、上述のように上記プログラム晶
積部(1)とンー))ンサ(2)とを独立の命令情報用
のバス(9)で接続したパ・イブライン制御1方式を採
用したもので、上記ブリグラム蓄4i部、(1)に蓄積
されている機械語の命令情報について、上記シーケンサ
(2)により、第1のサイクルで第1の命令情報を取り
込み、続く第2のサイクルで上記第1の命令情報に基づ
く実行を行うとともに第2の命令情報を取り込むように
なっている。
そして、上記シーケンサ(2)は、その要部構成を第3
図に示しであるように、1動作サイクル毎にインクリメ
ントされるプログラムカウンタ(11)と、このプログ
ラム力うンタ(11)により発生されるプログラムアド
レス情報を1動作サイクル期間保持しでおく制御レジス
タ(12)と、上記プログラムカウンタ(11)が発生
するアドレス情報により上記プログラム蓄積部(1)か
ら読み出される命令情報を解読して、該命令情報に応し
た制御情報等を出力する処理部(13)と、この処理部
(13)の出゛力によって制御され、上記プログラムカ
ウンタ(11)が発生しているアドレス情報と上記制御
レジスタ(12)から出力されるアドレス情報とを選択
するセレクタ(14)等を備えてなる。なお、上記プロ
グラムカウンタ(11)には、プログラムアドレスを強
制設定することができ、また、上記処理部(13)は、
割り込み要求を受は付けるようになっている。
そして、上記シーケンサ(2)の処理部(13)は、第
1図へに示すように、一連の動作サイクルの例えば命令
[2]の実行サイクル中に割り込み要求があると、該命
令[2〕の実行紡了時点で割り込み要求を受は付ける。
そして、割り込み要求を受は付けた実行サイクルでは、
上記プログラムカウンタ (11)を選択するように上記セレクタ(14)を制御
して、この実行サイクル中にフェッチされる命令(A)
4+dIiのアドレス情報をリターンアドレス情報とし
て上記作業領域(4)中のスタックレジスタにブツシュ
してから、上記割り込みサービスルーチンのアドレス情
報を上記作業領域(4)から読み、このアドレス情報を
設定アドレス情報として上記プログラムカウンタ(11
)のプログラムアドレスを強制的に設定する処理を行う
なお、上記作業領域(4)中のスタックレジスタには、
上記リターンアドレス情報とともに、フラグや割り込み
レヘル情報等を同時にブツシュする。
そして、上記割り込み要求を受は付けた実行サイクルの
次のサイクルから割り込みサービスルーチンの命令(i
、)、  Ci−’J、(i3)・・・情報をフェッチ
し実行する。また、上記割り込み要求を受は付けた実行
サイクルの次の実行サイクルすなわち上記命令(11)
情報をフェッチしているサイクルの実行→ノイクルでは
、上記制御レジスタ(12)を−時的に選!Rするよう
に上記セレクタ(14)を制御して、上記命令(2〕の
実行サイクル中に割り込み要求があった実行サイクルで
フェッチしていた命令[3]情報のアドレス情報をリタ
ーンアドレスとして上記作業領域(4)中のスタックレ
ジスタにさらにブ・ンシュする。
そして、上記割り込み要求に基づく割り込み処理の終了
時には、第1図Bに示すように、リターン命令(ret
l情報を2回)J−7チし、1回口の命令(ret)の
実行サイクルでは、上記作業領域(4)中のスタックレ
ジスタから上記命令[3]情報のアドレス情報をポツプ
する。これにより、この1回口の命令(ret)情報の
サイクルの次のサイクルで、上記命令〔3]情報のアド
レス情報をフェッチし、さらに、次の実行サイクルで上
記命令〔3〕を実行する。
また、2回口の命令(rct)の実行サイクルは、1−
記作業領域(4)中のスタックレジスタから1記命令(
A)情報の711/ノ、情報をポツプする。
これにより、この2回口の命令[reL)の実行サイク
ルの次のサイクルで、上記命令[Δ]情報のアルレス情
報をフェッチし、さらに、次の実行サイクルで上記命令
〔Δ]を実行する。
すなわら、この実施例では、−迎の動作す・イクル中に
割り込め要求があった11.7には、このサイクルでフ
ェッチした命令[、E ]11’を報のア)レス情報と
上記サイクルに続くサイクルにフェッチする命令(A)
情報のアドレス情報をそれぞれリターンアドレス情報と
して、上記イ1¥1領域(4)中のスタックレジスタに
逆順にストア4る。
そして、上記割り込み要求cコ基づく割り込み処理の終
了時には、」−記イ1業領域(4)中のスタックレジス
タから順次ポツプさtするリターンアドレス情報によっ
て指定される命令(3〕情報2命令[A〕情報を順次に
フJ・ツチして実行する。
このような一連の処理U」作によって、割り込み要求を
受は付けて、剖り込み処理を行い、割り込み処理終了後
に、元の処理プログラムに確実に復帰することができる
ここで、この実施例において、上記命令〔2〕情報を分
岐命令情報とし、上述の従来の技術にわいて述べた分岐
処理プログラムに対応さセた処理を行う場合に、上記分
岐命令〔2〕の実行サイクル中に割り込み要求があった
とすると、この分岐命令(2)の実行サイクル中にフェ
ッチした命令〔3]情報へのリターンアドレス情報と上
記分岐命令(2)情報に与えられた1abelにより指
定される命令(A)情報へのリターンアドレス情報とを
上記作業領域(4)中のスタックレジスタにストアし、
創り込みサービスルーチンから復帰するときには、スタ
ッレジスタからポツプされる上記命令(3)情報、命令
(A)情報を順次にフェッチして実行するので、上記分
岐命令(2)を確実に実行することができる。
なお、この実施例においても、上記分岐命令(2]情報
に続く命令[3]情報は、NOPとして取り扱う。
また、この実施例において、上記割り込み要求に基づく
割り込み処理の終了時に、さらに、割り込み要求があっ
た場合にも、同様な手順で割り込み処理を行えば良い。
H発明の効果 上述のように、本発明に係るプロセッサの処理方法では
、一連の動作サイクル中に割り込み要求があると、この
サイクルで取り込んだ命令情報のアドレス情報と上記サ
イクルに続くサイクルに取り込む命令情報のアドレス情
報をそれぞれセーフし、上記割り込み要求に基づく割り
込み処理の終了時に、上記二つのアドレス情報によって
指定された命令情報を取り込んで実行することにより、
分岐命令の実行中にも割り込み要求を受は付け°ζ、割
り込み処理を確実に行うことができる。
従って、本発明によれば、パイプライン制御方式を採用
したプロセッサによる仮想記憶システl、におけるペー
ジフォルトに対する処理を割り込み処理により、高速に
且つ確実に行うことが可能になる。
【図面の簡単な説明】
第1図Aは本発明に係るプロセッサの処理方法。 における割り込み処理開始時の処理過程を示すタイムチ
ャート、第1図Bは同じく剖り込み要求処理終了時の処
理過程を示すタイムチャート、第2図は本発明方法を実
施するために用いられるプロセッサの機能構成を示すブ
ロック図、第3図は上記プIJセッサに備えられるシー
ケンサの要部構成を示づブロック図である。 第4I171は従来のパイプライン制御方式のプロセッ
サにおける処理過程を示すタイムチャート、第5図は同
しく分岐処理プログラムを実行する場合の処理過程を示
すタイムチャート、第6図Δは上記分岐処理プログラム
を実行する場合の処理過程において割り込み要求を受は
付けた場合の割り込み処理開始時の処理過程を示すタイ
ムチャート、第6図Bは同しく割り込み要求処理終了時
の処理過程を示すタイムチャートである。

Claims (1)

  1. 【特許請求の範囲】 第1のサイクルで第1の命令情報を取り込み、続く第2
    のサイクルで上記第1の命令情報に基づく実行を行うと
    ともに第2の命令情報を取り込むようにしたパイプライ
    ン制御方式のプロセッサの処理方法において、 一連の動作サイクル中に割り込み要求があった時、この
    サイクルで取り込んだ命令情報のアドレス情報と上記サ
    イクルに続くサイクルに取り込む命令情報のアドレス情
    報をそれぞれセーブし、上記割り込み要求に基づく割り
    込み処理の終了時に、上記二つのアドレス情報によって
    指定された命令情報を取り込んで実行するようにしたこ
    とを特徴とするプロセッサの処理方法。
JP2143883A 1990-06-01 1990-06-01 プロセッサの処理方法 Pending JPH0437927A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2143883A JPH0437927A (ja) 1990-06-01 1990-06-01 プロセッサの処理方法
EP19910108801 EP0459445A3 (en) 1990-06-01 1991-05-29 Method for processing by processor
KR1019910008872A KR920001319A (ko) 1990-06-01 1991-05-30 처리기 및 처리기의 처리방법
US08/158,190 US5611061A (en) 1990-06-01 1993-11-24 Method and processor for reliably processing interrupt demands in a pipeline processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2143883A JPH0437927A (ja) 1990-06-01 1990-06-01 プロセッサの処理方法

Publications (1)

Publication Number Publication Date
JPH0437927A true JPH0437927A (ja) 1992-02-07

Family

ID=15349242

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2143883A Pending JPH0437927A (ja) 1990-06-01 1990-06-01 プロセッサの処理方法

Country Status (4)

Country Link
US (1) US5611061A (ja)
EP (1) EP0459445A3 (ja)
JP (1) JPH0437927A (ja)
KR (1) KR920001319A (ja)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0969047A (ja) * 1995-09-01 1997-03-11 Sony Corp Risc型マイクロプロセッサおよび情報処理装置
US5923887A (en) * 1996-05-20 1999-07-13 Advanced Micro Devices, Inc. Interrupt request that defines resource usage
US6785803B1 (en) * 1996-11-13 2004-08-31 Intel Corporation Processor including replay queue to break livelocks
US5850556A (en) * 1996-12-26 1998-12-15 Cypress Semiconductor Corp. Interruptible state machine
US6732357B1 (en) 1997-12-12 2004-05-04 International Business Machines Corporation Determining and compensating for temporal overhead in trace record generation and processing
US6158024A (en) * 1998-03-31 2000-12-05 International Business Machines Corporation Method and apparatus for structured memory analysis of data processing systems and applications
US6560773B1 (en) 1997-12-12 2003-05-06 International Business Machines Corporation Method and system for memory leak detection in an object-oriented environment during real-time trace processing
US6662358B1 (en) 1997-12-12 2003-12-09 International Business Machines Corporation Minimizing profiling-related perturbation using periodic contextual information
US6546548B1 (en) 1997-12-12 2003-04-08 International Business Machines Corporation Method and system for compensating for output overhead in trace data using initial calibration information
US6513155B1 (en) 1997-12-12 2003-01-28 International Business Machines Corporation Method and system for merging event-based data and sampled data into postprocessed trace output
US6751789B1 (en) 1997-12-12 2004-06-15 International Business Machines Corporation Method and system for periodic trace sampling for real-time generation of segments of call stack trees augmented with call stack position determination
US6526463B1 (en) * 2000-04-14 2003-02-25 Koninklijke Philips Electronics N.V. Dynamically selectable stack frame size for processor interrupts
US6937084B2 (en) * 2001-06-01 2005-08-30 Microchip Technology Incorporated Processor with dual-deadtime pulse width modulation generator
US7003543B2 (en) * 2001-06-01 2006-02-21 Microchip Technology Incorporated Sticky z bit
US7467178B2 (en) * 2001-06-01 2008-12-16 Microchip Technology Incorporated Dual mode arithmetic saturation processing
US6975679B2 (en) * 2001-06-01 2005-12-13 Microchip Technology Incorporated Configuration fuses for setting PWM options
US6934728B2 (en) * 2001-06-01 2005-08-23 Microchip Technology Incorporated Euclidean distance instructions
US20030028696A1 (en) * 2001-06-01 2003-02-06 Michael Catherwood Low overhead interrupt
US20030005268A1 (en) * 2001-06-01 2003-01-02 Catherwood Michael I. Find first bit value instruction
US20030005269A1 (en) * 2001-06-01 2003-01-02 Conner Joshua M. Multi-precision barrel shifting
US20030023836A1 (en) * 2001-06-01 2003-01-30 Michael Catherwood Shadow register array control instructions
US6985986B2 (en) * 2001-06-01 2006-01-10 Microchip Technology Incorporated Variable cycle interrupt disabling
US6952711B2 (en) * 2001-06-01 2005-10-04 Microchip Technology Incorporated Maximally negative signed fractional number multiplication
US6976158B2 (en) * 2001-06-01 2005-12-13 Microchip Technology Incorporated Repeat instruction with interrupt
US7020788B2 (en) * 2001-06-01 2006-03-28 Microchip Technology Incorporated Reduced power option
US20020184566A1 (en) * 2001-06-01 2002-12-05 Michael Catherwood Register pointer trap
US7007172B2 (en) * 2001-06-01 2006-02-28 Microchip Technology Incorporated Modified Harvard architecture processor having data memory space mapped to program memory space with erroneous execution protection
US8682877B2 (en) 2012-06-15 2014-03-25 International Business Machines Corporation Constrained transaction execution
US8688661B2 (en) 2012-06-15 2014-04-01 International Business Machines Corporation Transactional processing
US9336046B2 (en) 2012-06-15 2016-05-10 International Business Machines Corporation Transaction abort processing
US9348642B2 (en) 2012-06-15 2016-05-24 International Business Machines Corporation Transaction begin/end instructions
US9361115B2 (en) 2012-06-15 2016-06-07 International Business Machines Corporation Saving/restoring selected registers in transactional processing
US10437602B2 (en) 2012-06-15 2019-10-08 International Business Machines Corporation Program interruption filtering in transactional execution
US9448796B2 (en) 2012-06-15 2016-09-20 International Business Machines Corporation Restricted instructions in transactional execution
US20130339680A1 (en) * 2012-06-15 2013-12-19 International Business Machines Corporation Nontransactional store instruction
US9772854B2 (en) 2012-06-15 2017-09-26 International Business Machines Corporation Selectively controlling instruction execution in transactional processing
US9436477B2 (en) 2012-06-15 2016-09-06 International Business Machines Corporation Transaction abort instruction
US9384004B2 (en) 2012-06-15 2016-07-05 International Business Machines Corporation Randomized testing within transactional execution
US9740549B2 (en) 2012-06-15 2017-08-22 International Business Machines Corporation Facilitating transaction completion subsequent to repeated aborts of the transaction
US10642693B2 (en) * 2017-09-06 2020-05-05 Western Digital Technologies, Inc. System and method for switching firmware

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4398244A (en) * 1980-05-07 1983-08-09 Fairchild Camera & Instrument Corporation Interruptible microprogram sequencing unit and microprogrammed apparatus utilizing same
US4438492A (en) * 1980-08-01 1984-03-20 Advanced Micro Devices, Inc. Interruptable microprogram controller for microcomputer systems
US4399507A (en) * 1981-06-30 1983-08-16 Ibm Corporation Instruction address stack in the data memory of an instruction-pipelined processor
US4488227A (en) * 1982-12-03 1984-12-11 Honeywell Information Systems Inc. Program counter stacking method and apparatus for nested subroutines and interrupts
US4498136A (en) * 1982-12-15 1985-02-05 Ibm Corporation Interrupt processor
DE3369015D1 (en) * 1983-09-16 1987-02-12 Ibm Deutschland Arrangement in the command circuit of a pipe-line processor for instruction interrupt and report
CA1250667A (en) * 1985-04-15 1989-02-28 Larry D. Larsen Branch control in a three phase pipelined signal processor
EP0208181A1 (en) * 1985-06-28 1987-01-14 Hewlett-Packard Company Programme counter queue for a pipelined processor
US4777587A (en) * 1985-08-30 1988-10-11 Advanced Micro Devices, Inc. System for processing single-cycle branch instruction in a pipeline having relative, absolute, indirect and trap addresses
US4709324A (en) * 1985-11-27 1987-11-24 Motorola, Inc. Data processor control unit having an interrupt service using instruction prefetch redirection
US4755935A (en) * 1986-01-27 1988-07-05 Schlumberger Technology Corporation Prefetch memory system having next-instruction buffer which stores target tracks of jumps prior to CPU access of instruction
US5003462A (en) * 1988-05-31 1991-03-26 International Business Machines Corporation Apparatus and method for implementing precise interrupts on a pipelined processor with multiple functional units with separate address translation interrupt means
US5119483A (en) * 1988-07-20 1992-06-02 Digital Equipment Corporation Application of state silos for recovery from memory management exceptions
JPH0275023A (ja) * 1988-09-09 1990-03-14 Fujitsu Ltd 遅延分岐命令における割入方式
US5150469A (en) * 1988-12-12 1992-09-22 Digital Equipment Corporation System and method for processor pipeline control by selective signal deassertion
US5185871A (en) * 1989-12-26 1993-02-09 International Business Machines Corporation Coordination of out-of-sequence fetching between multiple processors using re-execution of instructions

Also Published As

Publication number Publication date
KR920001319A (ko) 1992-01-30
EP0459445A3 (en) 1993-09-29
EP0459445A2 (en) 1991-12-04
US5611061A (en) 1997-03-11

Similar Documents

Publication Publication Date Title
JPH0437927A (ja) プロセッサの処理方法
EP0344450A2 (en) Apparatus and method for implementing precise interrupts on pipelined processor with multiple functional units
JPS61109147A (ja) 命令フェッチ及び実行制御方法
EP0297943B1 (en) Microcode reading control system
JP2685245B2 (ja) プログラマブルコントローラ
JPH01214902A (ja) プログラマブル・コントローラ
JPH10124312A (ja) 中央処理装置
JP2531791B2 (ja) フエッチアクセス時の異常処理方法
JPS61173345A (ja) 計算機システム
JPH0248733A (ja) 情報処理装置
JPH03119424A (ja) 情報処理方式及び装置
JPS63247861A (ja) コプロセツサ制御方法
JP3029355B2 (ja) 命令のシングルステップ実行方式
JPH0437926A (ja) ディジタル計算機
JPH03154929A (ja) 中央処理装置
JPS6232507B2 (ja)
JPS6028014B2 (ja) マイクロプロセツサ
JPS58134350A (ja) メモリ制御装置
JPH0490038A (ja) データ処理装置
JPH06314196A (ja) 情報処理方法および装置
JPS59220844A (ja) 命令再実行制御方式
JPH0769800B2 (ja) データ処理装置
JPH0546390A (ja) 電子計算機の演算エラー情報保持装置
JPH04293159A (ja) ベクトルデータ処理装置
JPH04276827A (ja) パイプライン処理装置