JPH01166248A - データ処理システム - Google Patents
データ処理システムInfo
- Publication number
- JPH01166248A JPH01166248A JP63290372A JP29037288A JPH01166248A JP H01166248 A JPH01166248 A JP H01166248A JP 63290372 A JP63290372 A JP 63290372A JP 29037288 A JP29037288 A JP 29037288A JP H01166248 A JPH01166248 A JP H01166248A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- register
- instructions
- stack
- execution
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/3861—Recovery, e.g. branch miss-prediction, exception handling
- G06F9/3863—Recovery, e.g. branch miss-prediction, exception handling using multiple copies of the architectural state, e.g. shadow registers
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Advance Control (AREA)
- Multi Processors (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
A、産業上の利用分野
本発明はデータ処理に関し、具体的には並列データ処理
システムの割込み処理に関する。
システムの割込み処理に関する。
B、従来の技術
従来のプロセッサは、逐次式にすなわち一時に1つずつ
命令を実行する。データ処理システムの実行の動作効率
と速度を増大させるために、並列処理が実施されている
。並列処理とは命令の同時実行を行なうものである。し
かし、命令が連続して実行されるように見えるような形
で同時に命令を実行することが望ましい。データ処理シ
ステムで複数の実行ユニットを使用すると、複数の命令
を個々の実行ユニットに分配またはディスパッチして、
1つの周期またはサイクル中に同時に実行することがで
きる。命令ディスパッチ装置は、どの命令をどの実行ユ
ニットにディスパッチするかを決定するのに必要である
。こうしたディスパッチ装置の例は、「分岐処理命令キ
ャッシュ」(Branch−Processing I
n5truction Cache)11 BMテクニ
カル・ディスクロージャ・プルテン、Vol、29、N
o、1.1988年6月、pp−357−359に記載
されている。この開示は、命令を取り出す機構を例示し
ているが、他の命令が取り出されている間に分岐命令を
処理する能力をもつ。
命令を実行する。データ処理システムの実行の動作効率
と速度を増大させるために、並列処理が実施されている
。並列処理とは命令の同時実行を行なうものである。し
かし、命令が連続して実行されるように見えるような形
で同時に命令を実行することが望ましい。データ処理シ
ステムで複数の実行ユニットを使用すると、複数の命令
を個々の実行ユニットに分配またはディスパッチして、
1つの周期またはサイクル中に同時に実行することがで
きる。命令ディスパッチ装置は、どの命令をどの実行ユ
ニットにディスパッチするかを決定するのに必要である
。こうしたディスパッチ装置の例は、「分岐処理命令キ
ャッシュ」(Branch−Processing I
n5truction Cache)11 BMテクニ
カル・ディスクロージャ・プルテン、Vol、29、N
o、1.1988年6月、pp−357−359に記載
されている。この開示は、命令を取り出す機構を例示し
ているが、他の命令が取り出されている間に分岐命令を
処理する能力をもつ。
C0発明が解決しようとする問題点
命令を並列同時処理する際に生じる1つの問題は、命令
によって発生する割込みを、連続的に命令を実行してい
るように見える形で処理することである。
によって発生する割込みを、連続的に命令を実行してい
るように見える形で処理することである。
本発明の目的は、命令の同時実行を行なっている間に割
込みを処理する機構を提供することである。
込みを処理する機構を提供することである。
D0問題点を解決するための手段
本発明によると、一連の命令を実行するデータ処理シス
テムが提供される。このデータ処理システムは複数のプ
ロセッサをもち、そのそれぞれが命令を実行する。さら
に、各命令をプロセッサの1つにディスバッチするディ
スバッチ装置も含まれている。シーケンス内での命令の
位置に関わらず、ディスバッチされた命令のプロセッサ
内での同時実行を指示するための制御装置が含まれてい
る。この制御装置は、命令割込み信号を受は取る能力を
有する。命令割込み信号を受は取ると、制御装置は、ど
の命令の実行で命令割込みが発生したかを判定する。制
御装置は、割込みを引き起こした命令を再実行するため
に、プロセッサとディスバッチ装置を、命令割込み信号
を発生させた命令が最初に実行されたときに存在した状
態にリセットする能力をもつ。
テムが提供される。このデータ処理システムは複数のプ
ロセッサをもち、そのそれぞれが命令を実行する。さら
に、各命令をプロセッサの1つにディスバッチするディ
スバッチ装置も含まれている。シーケンス内での命令の
位置に関わらず、ディスバッチされた命令のプロセッサ
内での同時実行を指示するための制御装置が含まれてい
る。この制御装置は、命令割込み信号を受は取る能力を
有する。命令割込み信号を受は取ると、制御装置は、ど
の命令の実行で命令割込みが発生したかを判定する。制
御装置は、割込みを引き起こした命令を再実行するため
に、プロセッサとディスバッチ装置を、命令割込み信号
を発生させた命令が最初に実行されたときに存在した状
態にリセットする能力をもつ。
好ましい実施例では、制御装置は、どの命令がどのプロ
セッサにディスバッチされたかの活動記録を維持する能
力をもつ。制御装置は、さらに選択されたレジスタの内
容の記録を維持する。割込み信号が発生するとき、制御
装置は、これらのレジスタの状態と、その命令が最初に
実行されたときのプロセッサの状態を決定することがで
きる。
セッサにディスバッチされたかの活動記録を維持する能
力をもつ。制御装置は、さらに選択されたレジスタの内
容の記録を維持する。割込み信号が発生するとき、制御
装置は、これらのレジスタの状態と、その命令が最初に
実行されたときのプロセッサの状態を決定することがで
きる。
制御装置は、次いで記憶された情報ですべてのプロセッ
サを再初期設定して、プロセッサと命令ディスバッチ装
置を、割込みを引き起こした命令が最初に実行されたと
きに存在した状態にする。
サを再初期設定して、プロセッサと命令ディスバッチ装
置を、割込みを引き起こした命令が最初に実行されたと
きに存在した状態にする。
E、実施例
本発明は、割込みが処理できるようにしながら、複数の
命令を、命令の実行が連続的に見えるような形で並列同
時実行する機構を提供する。
命令を、命令の実行が連続的に見えるような形で並列同
時実行する機構を提供する。
第1図は、メモリ・コントローラ12と命令バッファ1
4に接続されたメモリ10を含むデータ処理ユニットを
示す構成図である。命令バッファ14には、プログラム
・カウンタ・スタック/命令ディスバッチ論理機構18
が接続されている。複数の命令実行ユニツ)18aない
し18dが、プログラムφカウンタ・スタック/命令デ
ィスバッチ論理機構16に接続されている。実行ユニッ
ト18aないし18dは、データ処理システム全体に情
報を分配する情報バス20に接続されている。
4に接続されたメモリ10を含むデータ処理ユニットを
示す構成図である。命令バッファ14には、プログラム
・カウンタ・スタック/命令ディスバッチ論理機構18
が接続されている。複数の命令実行ユニツ)18aない
し18dが、プログラムφカウンタ・スタック/命令デ
ィスバッチ論理機構16に接続されている。実行ユニッ
ト18aないし18dは、データ処理システム全体に情
報を分配する情報バス20に接続されている。
第2図は、バス線1を介して命令発行論理機構17に接
続された命令バッファ14を示す構成図である。命令発
行論理機構17は、さらにバス2と3を介してプログラ
ム・カウンタ・スタック15に接続されている。命令発
行論理機構17とプログラム・カウンタ・スタック15
で、第1図のブロック16を構成している。さらに、命
令実行ユニット18 all 8 bt 18 cお
よび18dも示されている。当業者には自明のことであ
るが、含まれる実行ユニットの数は、同時に実行される
命令の数に応じて変わる。好ましい実施例では、実行ユ
ニツ)18aは分岐命令を実行する。実行ユニツ)18
bは固定小数点演算命令を実行する。
続された命令バッファ14を示す構成図である。命令発
行論理機構17は、さらにバス2と3を介してプログラ
ム・カウンタ・スタック15に接続されている。命令発
行論理機構17とプログラム・カウンタ・スタック15
で、第1図のブロック16を構成している。さらに、命
令実行ユニット18 all 8 bt 18 cお
よび18dも示されている。当業者には自明のことであ
るが、含まれる実行ユニットの数は、同時に実行される
命令の数に応じて変わる。好ましい実施例では、実行ユ
ニツ)18aは分岐命令を実行する。実行ユニツ)18
bは固定小数点演算命令を実行する。
実行ユニツ) 18cは、浮動小数点演算命令を実行す
る。この好ましい実施例では、実行ユニット18aない
し18cのみが機能する。
る。この好ましい実施例では、実行ユニット18aない
し18cのみが機能する。
命令バッファ14は、メモリ10から受は取った大きな
命令群を記憶する(第1図)。命令発行論理機構17は
命令バッファ14からの命令を使用可能な実行ユニット
18aないし18dにロードする。好ましい実施例では
、命令発行論理機構17は、実行ユニット18aないし
18dに同時に4個の命令をロードできる。命令発行論
理機構17は、さらにどの命令がどの実行ユニットにい
くのか、及び実行ユニットが命令を受けることができる
かどうかを決定する。さらに、命令発行論理機構17は
、線2を介してプログラム・カウンタ・スタックに入力
を供給する。この入力は、ディスパッチされた命令の記
録を含む。プログラム・スタック・カウンタ15は、線
3を介して命令発行論理機構に命令のディスバッチを停
止するための信号を送る。この信号は、割込みが発生し
たとき、またはプログラム・カウンタ・スタック15が
一杯になったときに発生する。命令発行論理機構17か
らの命令は、当該の実行ユニットに送られる。分岐命令
実行ユニッ)18aは、線7を介して特定のレジスタの
アドレスと値などの情報をプログラム・カウンタ・スタ
ックに送る。固定小数点演算命令実行ユニッ)18bは
、線9を介して命令の完了または命令割込み信号の発生
を示す信号を送る。固定小数点演算命令実行ユニット1
8bは、さらに線11を介して浮動小数点演算命令実行
ユニット18cと信号をやり取りする。線11を介する
これらの信号は、浮動小数点ロード命令及び記憶命令の
実行のために浮動小数点演算命令実行ユニットと固定小
数点演算命令実行ユニット間の同期化を行なう。この実
施例では、固定小数点演算命令実行ユニット18bがア
ドレス計算浮動小数点ロード命令及び記憶命令を完了す
る。
命令群を記憶する(第1図)。命令発行論理機構17は
命令バッファ14からの命令を使用可能な実行ユニット
18aないし18dにロードする。好ましい実施例では
、命令発行論理機構17は、実行ユニット18aないし
18dに同時に4個の命令をロードできる。命令発行論
理機構17は、さらにどの命令がどの実行ユニットにい
くのか、及び実行ユニットが命令を受けることができる
かどうかを決定する。さらに、命令発行論理機構17は
、線2を介してプログラム・カウンタ・スタックに入力
を供給する。この入力は、ディスパッチされた命令の記
録を含む。プログラム・スタック・カウンタ15は、線
3を介して命令発行論理機構に命令のディスバッチを停
止するための信号を送る。この信号は、割込みが発生し
たとき、またはプログラム・カウンタ・スタック15が
一杯になったときに発生する。命令発行論理機構17か
らの命令は、当該の実行ユニットに送られる。分岐命令
実行ユニッ)18aは、線7を介して特定のレジスタの
アドレスと値などの情報をプログラム・カウンタ・スタ
ックに送る。固定小数点演算命令実行ユニッ)18bは
、線9を介して命令の完了または命令割込み信号の発生
を示す信号を送る。固定小数点演算命令実行ユニット1
8bは、さらに線11を介して浮動小数点演算命令実行
ユニット18cと信号をやり取りする。線11を介する
これらの信号は、浮動小数点ロード命令及び記憶命令の
実行のために浮動小数点演算命令実行ユニットと固定小
数点演算命令実行ユニット間の同期化を行なう。この実
施例では、固定小数点演算命令実行ユニット18bがア
ドレス計算浮動小数点ロード命令及び記憶命令を完了す
る。
固定小数点演算命令実行ユニッ)18bはこれらのアド
レスをメモリに送る。記憶命令の場合、固定小数点演算
命令実行ユニツ)18bは、いつデータが記憶の準備が
できるか、ひいてはいっそのアドレスが送信の準備がで
きるかを知ることができるように、浮動小数点演算命令
実行ユニット18Cがいつ命令の実行を完了したかを知
らなければならない。さらに、固定小数点演算命令実行
ユニット18bは、割込みの発生を浮動小数点演算命令
実行ユニツ) 18cに合図して、後者が現在の浮動小
数点演算命令実行ユニット命令を無視できるようにする
。
レスをメモリに送る。記憶命令の場合、固定小数点演算
命令実行ユニツ)18bは、いつデータが記憶の準備が
できるか、ひいてはいっそのアドレスが送信の準備がで
きるかを知ることができるように、浮動小数点演算命令
実行ユニット18Cがいつ命令の実行を完了したかを知
らなければならない。さらに、固定小数点演算命令実行
ユニット18bは、割込みの発生を浮動小数点演算命令
実行ユニツ) 18cに合図して、後者が現在の浮動小
数点演算命令実行ユニット命令を無視できるようにする
。
第3図は、分岐命令実行ユニツ)18aとプログラム・
カウンタ・スタック16の間の相互通信をより詳細に示
したものである。第3図で、分岐命令実行ユニット18
aは、カウント・レジスタ22、リンク・レジスタ24
、条件レジスタ26、及び割込みアドレス・レジスタ2
8を含む。カウント・レジスタ22は、分岐命令実行ユ
ニット18a内にループ命令の実行のためのカウントを
維持する。リンク・レジスタ24は、サブルーチン・コ
ールからの戻りなどのリンク動作のためのアドレスを維
持する。条件レジスタ26は、比較動作から発生する条
件コードを維持する。割込みアドレス・レジスタ28は
、割込みを発生させた命令のアドレスを受は取る。カウ
ント・レジスタ22は、線40と42によってプログラ
ム・カウンタ・スタック16内のカウント・レジスタ・
バックアップ・ストック30に接続されている。同様に
、リンク・レジスタ24は、線44と46によってリン
ク・レジスタ・バックアップ・スタック32に接続され
ている。さらに、条件レジスタ26は、線48と50を
介して条件レジスタ・バックアップ・スタック34に接
続されている。割込みアドレス・レジスタ28は、線7
0を介して加算器75に接続されている。加算器75は
、線71を介して割込みレジスタ28のための割込みア
ドレスを生成する。これらのレジスタ22.24.2B
及び28の内容によって、分岐命令実行ユニット18a
の実行の状態が制御される。
カウンタ・スタック16の間の相互通信をより詳細に示
したものである。第3図で、分岐命令実行ユニット18
aは、カウント・レジスタ22、リンク・レジスタ24
、条件レジスタ26、及び割込みアドレス・レジスタ2
8を含む。カウント・レジスタ22は、分岐命令実行ユ
ニット18a内にループ命令の実行のためのカウントを
維持する。リンク・レジスタ24は、サブルーチン・コ
ールからの戻りなどのリンク動作のためのアドレスを維
持する。条件レジスタ26は、比較動作から発生する条
件コードを維持する。割込みアドレス・レジスタ28は
、割込みを発生させた命令のアドレスを受は取る。カウ
ント・レジスタ22は、線40と42によってプログラ
ム・カウンタ・スタック16内のカウント・レジスタ・
バックアップ・ストック30に接続されている。同様に
、リンク・レジスタ24は、線44と46によってリン
ク・レジスタ・バックアップ・スタック32に接続され
ている。さらに、条件レジスタ26は、線48と50を
介して条件レジスタ・バックアップ・スタック34に接
続されている。割込みアドレス・レジスタ28は、線7
0を介して加算器75に接続されている。加算器75は
、線71を介して割込みレジスタ28のための割込みア
ドレスを生成する。これらのレジスタ22.24.2B
及び28の内容によって、分岐命令実行ユニット18a
の実行の状態が制御される。
割込みが発生すると実行ユニット18bと180の実行
が停止するので、分岐命令実行ユニット18aによって
命令が再実行されると、割込みを発生させた命令で命令
シーケンスの実行が再初期設定される。
が停止するので、分岐命令実行ユニット18aによって
命令が再実行されると、割込みを発生させた命令で命令
シーケンスの実行が再初期設定される。
命令発行論理機構17(第2図)が1サイクルに4個ま
たはそれ以下の命令を発行するとき、プログラム・カウ
ンタ記憶項目記憶テーブル36が更新される。基底アド
レスは線56を介して送られる。マスクと2つのフィー
ルドは、プログラム・カウンタ・スタック制御装置38
から線54を介して送られる。プログラム・カウンタ・
スタック制御装置38は命令発行論理機構17から線θ
3を介してこの情報を受は取る。さらに、プログラム・
カウンタ・スタック制御装置38は、3つのバックアッ
プ・スタック30,32及び34に対するヘッド・ポイ
ンタ及びテール・ポインタを含むスタック・ポインタ3
9を更新し、スタック追加論理機構64とスタック除去
論理機構66によって実行されるスタック除去機能及び
スタック追加機能を実行する。
たはそれ以下の命令を発行するとき、プログラム・カウ
ンタ記憶項目記憶テーブル36が更新される。基底アド
レスは線56を介して送られる。マスクと2つのフィー
ルドは、プログラム・カウンタ・スタック制御装置38
から線54を介して送られる。プログラム・カウンタ・
スタック制御装置38は命令発行論理機構17から線θ
3を介してこの情報を受は取る。さらに、プログラム・
カウンタ・スタック制御装置38は、3つのバックアッ
プ・スタック30,32及び34に対するヘッド・ポイ
ンタ及びテール・ポインタを含むスタック・ポインタ3
9を更新し、スタック追加論理機構64とスタック除去
論理機構66によって実行されるスタック除去機能及び
スタック追加機能を実行する。
プログラム・カウンタ・スタック制御装置i!38は、
線62を介してバックアップ・スタック30.32及び
34の動作を制御する。さらに、前に考察したように、
この制御装置38は線62を介して命令発行論理機構1
7にディスバッチ停止信号を送り、線60を介して固定
小数点演算命令実行ニー’−ツ) 18 bから命令完
了信号及び割込み信号を受は取る。
線62を介してバックアップ・スタック30.32及び
34の動作を制御する。さらに、前に考察したように、
この制御装置38は線62を介して命令発行論理機構1
7にディスバッチ停止信号を送り、線60を介して固定
小数点演算命令実行ニー’−ツ) 18 bから命令完
了信号及び割込み信号を受は取る。
プログラム・カウンタ・スタック項目記憶テーブル36
は、線70を介して割込みアドレス・レジスタ28に割
込み命令のアドレスを供給する。
は、線70を介して割込みアドレス・レジスタ28に割
込み命令のアドレスを供給する。
第4図はプログラム・カウンタ・スタック項目記憶テー
ブル36(第3図)の内容を示したものである。基底命
令アドレス・フィールド82.4ビツトのマスク・フィ
ールド84、命令1フイールド86、命令2フイールド
88を含む単一項目80が示されている。フィールド8
2は、命令発行論理機構17によってそのサイクル中に
ディスバッチされた4命令シーケンスの基底命令のアド
レスである(第2図)。マスク・フィールド84は、こ
の4命令グループ中での割込みを引き起こす命令の位置
を示す。本実施例では、4命令グループ中で2個の命令
だけが割込みを引き起こすことができる。したがって、
これらの命令を記録するのに2つの命令フィールド86
と88を設けるだけでよい。第1の命令フィールド86
はサブフィールド90,92及び94を含む。フィール
ド94は、リンク・レジスタ24が変わったかどうかを
示す。フィールドθ2は、カウント・レジスタ22が変
わったかどうかを示す。フィールド94は、条件レジス
タ26が変わったかどうかを示す。好ましい実施例では
、フィールド90と92はそれぞれ1ビツトを含む。フ
ィールド94は、条件レジスタ26の別々の3つの部分
を示す3ビツトを含む。フィールド88もフィールド8
6と類似のフィールド9B、97.98を含み、これら
のフィールドは前に考察したようにフィールド90.9
2及び94に対応する。
ブル36(第3図)の内容を示したものである。基底命
令アドレス・フィールド82.4ビツトのマスク・フィ
ールド84、命令1フイールド86、命令2フイールド
88を含む単一項目80が示されている。フィールド8
2は、命令発行論理機構17によってそのサイクル中に
ディスバッチされた4命令シーケンスの基底命令のアド
レスである(第2図)。マスク・フィールド84は、こ
の4命令グループ中での割込みを引き起こす命令の位置
を示す。本実施例では、4命令グループ中で2個の命令
だけが割込みを引き起こすことができる。したがって、
これらの命令を記録するのに2つの命令フィールド86
と88を設けるだけでよい。第1の命令フィールド86
はサブフィールド90,92及び94を含む。フィール
ド94は、リンク・レジスタ24が変わったかどうかを
示す。フィールドθ2は、カウント・レジスタ22が変
わったかどうかを示す。フィールド94は、条件レジス
タ26が変わったかどうかを示す。好ましい実施例では
、フィールド90と92はそれぞれ1ビツトを含む。フ
ィールド94は、条件レジスタ26の別々の3つの部分
を示す3ビツトを含む。フィールド88もフィールド8
6と類似のフィールド9B、97.98を含み、これら
のフィールドは前に考察したようにフィールド90.9
2及び94に対応する。
本発明の動作は、例を示すと最も良く理解できる。表1
に、実行ユニットによって実行されるためにディスバッ
チされる12個の命令を示す。これらの命令は、それぞ
れ4個の命令からなる3つのグループに分割される。こ
の例では、第1の命令のアドレスは1である。命令工な
いし4からなるグループ1は、サイクル1でディスバッ
チされる。
に、実行ユニットによって実行されるためにディスバッ
チされる12個の命令を示す。これらの命令は、それぞ
れ4個の命令からなる3つのグループに分割される。こ
の例では、第1の命令のアドレスは1である。命令工な
いし4からなるグループ1は、サイクル1でディスバッ
チされる。
表 1
グループ1
1、 L R1,ADDRESSI *メモリか
ら固定小数点レジスタ1 をロードする 2、 A R3,R2,R1: R1とR2を加えてR
3とする 3、 8RAMCII ADDRESS2 ニアド
レス2に分岐するグループ2 5、 L R1,ADDRESSI :メモリか
ら固定小数点レジスタ1 をロードする 6、 A R3,R2,R1零R1とR2を加えてR3
とする 7、 8RAMCII ADDRESS2 ネアド
レス2に分岐する8、 LCRB3. B2. Bl
:条件レジスタで論理演算−条件レジスタを更新
する グループ3 9、 L R1,ADDRESSI :メ壬りから
固定小数点レジスタ 1 をロードする 10、 A R3,R2,R1:R1とR2を加えてR
3とする 11、8RAMCII ADDRESS2 ニアド
レス2に分岐する12、 LCRB3. B2. Bl
:条件レジスタで論理演算−条件レジスタを更
新する 第5図に、項目位置100.102.104から構成さ
れるプログラム・カウンタ・スタック項目記憶テーブル
36、項目30 a130 b130Cから構成される
カウント・レジスタ・バックアップ−Xタック301項
目32 a132 b132 cから構成されるリンク
・レジスタ・バックアップ・スタック32、項目34
aN 34 b134 cから構成される条件レジスタ
・バックアップ・スタック34の内容を示す。さらに、
カウント・レジスタ22、リンク・レジスタ24及び条
件レジスタ26の初期内容がそれぞれ50.80及び7
0として示されている。これらの内容の実際の値は任意
であり、この例で読者が項目を追跡できるように含めた
ものにすぎない。
ら固定小数点レジスタ1 をロードする 2、 A R3,R2,R1: R1とR2を加えてR
3とする 3、 8RAMCII ADDRESS2 ニアド
レス2に分岐するグループ2 5、 L R1,ADDRESSI :メモリか
ら固定小数点レジスタ1 をロードする 6、 A R3,R2,R1零R1とR2を加えてR3
とする 7、 8RAMCII ADDRESS2 ネアド
レス2に分岐する8、 LCRB3. B2. Bl
:条件レジスタで論理演算−条件レジスタを更新
する グループ3 9、 L R1,ADDRESSI :メ壬りから
固定小数点レジスタ 1 をロードする 10、 A R3,R2,R1:R1とR2を加えてR
3とする 11、8RAMCII ADDRESS2 ニアド
レス2に分岐する12、 LCRB3. B2. Bl
:条件レジスタで論理演算−条件レジスタを更
新する 第5図に、項目位置100.102.104から構成さ
れるプログラム・カウンタ・スタック項目記憶テーブル
36、項目30 a130 b130Cから構成される
カウント・レジスタ・バックアップ−Xタック301項
目32 a132 b132 cから構成されるリンク
・レジスタ・バックアップ・スタック32、項目34
aN 34 b134 cから構成される条件レジスタ
・バックアップ・スタック34の内容を示す。さらに、
カウント・レジスタ22、リンク・レジスタ24及び条
件レジスタ26の初期内容がそれぞれ50.80及び7
0として示されている。これらの内容の実際の値は任意
であり、この例で読者が項目を追跡できるように含めた
ものにすぎない。
第6図で、サイクル1の間に、命令1ないし4がディス
パッチされる。ロード命令(命令1)がディスパッチさ
れたので、プログラム・カウンタ・スタック項目記憶テ
ーブル36に1項目が追加される。この実施例では、ロ
ード命令及び記憶命令だけが割込みを発生させる。「1
」の基底アドレスが記憶される。マスク値は1000で
、第1の命令が割込みを引き起こす命令の位置であるこ
とを示す。4命令グループに2つの命令が含まれている
場合、マスク・フィールドの2ビツトは1にセットされ
る。これらのビットの位置は、4命令シーケンス内で割
込みを発生させる命令の位置を示す。したがって、マス
ク・ビット位置を基底アドレスに対するオフセットとし
て使って、割込みを引き起こす命令の実際のアドレスを
得ることができる。フィールド1の内容は、カウント・
レジスタ22、リンク・レジスタ24及び条件レジスタ
26の内容がこの4命令シーケンスの実行中に変更され
る場合にセットされる。この例では、分岐命令がカウン
ト・レジスタ22とリンク・レジスタ24をセットする
。LCR(条件レジスタに対する論理)命令が、条件レ
ジスタ26の内容をセットする。図のようにこれらのレ
ジスタの以前の内容が記憶される。
パッチされる。ロード命令(命令1)がディスパッチさ
れたので、プログラム・カウンタ・スタック項目記憶テ
ーブル36に1項目が追加される。この実施例では、ロ
ード命令及び記憶命令だけが割込みを発生させる。「1
」の基底アドレスが記憶される。マスク値は1000で
、第1の命令が割込みを引き起こす命令の位置であるこ
とを示す。4命令グループに2つの命令が含まれている
場合、マスク・フィールドの2ビツトは1にセットされ
る。これらのビットの位置は、4命令シーケンス内で割
込みを発生させる命令の位置を示す。したがって、マス
ク・ビット位置を基底アドレスに対するオフセットとし
て使って、割込みを引き起こす命令の実際のアドレスを
得ることができる。フィールド1の内容は、カウント・
レジスタ22、リンク・レジスタ24及び条件レジスタ
26の内容がこの4命令シーケンスの実行中に変更され
る場合にセットされる。この例では、分岐命令がカウン
ト・レジスタ22とリンク・レジスタ24をセットする
。LCR(条件レジスタに対する論理)命令が、条件レ
ジスタ26の内容をセットする。図のようにこれらのレ
ジスタの以前の内容が記憶される。
第7図は、サイクル2の後の状況を示す。サイクル2で
は、命令5ないし8(表1のグループ2)がディスパッ
チされる。グループ2はグループ1と全く同じ命令の組
合せなので、同じ動作が行われてそれぞれバックアップ
・スタックを更新する。
は、命令5ないし8(表1のグループ2)がディスパッ
チされる。グループ2はグループ1と全く同じ命令の組
合せなので、同じ動作が行われてそれぞれバックアップ
・スタックを更新する。
さらに、命令7と8の実行で、カウント・レジスタ22
、リンク・レジスタ24及び条件レジスタ26が更新さ
れる。バックアップ・レジスタ30.32.34は、カ
ウント・レジスタ22、リンク・レジスタ24及び条件
レジスタ26の以前の内容を記憶する。各サイクルで、
割込みを引き起こす命令がディスパッチされる度に、デ
ィスパッチ・サイクルのレコードがプログラム・カウン
タ・スタック項目記憶テーブル36に書き込まれる。後
続の命令でリンク・レジスタ24、カウント・レジスタ
22または条件レジスタ26が更新される場合、これら
のレジスタの古い値が当該のバックアップ・スタックに
記憶され、当該のテール・ポインタが増分される。各バ
ックアップ・スタックごとにヘッド・ポインタとテール
・ポインタがある。これらのポインタは3つのバックア
ップ・レジスタ位置を循環待ち行列として動作させる。
、リンク・レジスタ24及び条件レジスタ26が更新さ
れる。バックアップ・レジスタ30.32.34は、カ
ウント・レジスタ22、リンク・レジスタ24及び条件
レジスタ26の以前の内容を記憶する。各サイクルで、
割込みを引き起こす命令がディスパッチされる度に、デ
ィスパッチ・サイクルのレコードがプログラム・カウン
タ・スタック項目記憶テーブル36に書き込まれる。後
続の命令でリンク・レジスタ24、カウント・レジスタ
22または条件レジスタ26が更新される場合、これら
のレジスタの古い値が当該のバックアップ・スタックに
記憶され、当該のテール・ポインタが増分される。各バ
ックアップ・スタックごとにヘッド・ポインタとテール
・ポインタがある。これらのポインタは3つのバックア
ップ・レジスタ位置を循環待ち行列として動作させる。
したがって、項目が作成される度に、テール・ポインタ
が増分される。項目が除去される度に、ヘッド・ポイン
タが増分される。第8図は、サイクル3の終りにグルー
プ3の命令がディスパッチされたときのレジスタの内容
を示す。この例では、サイクル3の間に、固定小数点演
算命令実行ユニット18bが命令1を実行する。この例
では、命令1は割込みを引き起こさなかった。割込みを
引き起こす命令は1つしかこのサイクル(サイクル1)
中にディスパッチされなかったので、項目100全体が
除去される。フィールド1の情報を用いて、バックアッ
プ・レジスタの項目30 aN 32 as34aも除
去される。これは、前に考察したようにヘッド・ポイン
タを増分させることによって実施される。グループ3の
命令はグループ1及び2と同様なので、プログラム・カ
ウンタ・スタック記憶項目104は、図の通りである。
が増分される。項目が除去される度に、ヘッド・ポイン
タが増分される。第8図は、サイクル3の終りにグルー
プ3の命令がディスパッチされたときのレジスタの内容
を示す。この例では、サイクル3の間に、固定小数点演
算命令実行ユニット18bが命令1を実行する。この例
では、命令1は割込みを引き起こさなかった。割込みを
引き起こす命令は1つしかこのサイクル(サイクル1)
中にディスパッチされなかったので、項目100全体が
除去される。フィールド1の情報を用いて、バックアッ
プ・レジスタの項目30 aN 32 as34aも除
去される。これは、前に考察したようにヘッド・ポイン
タを増分させることによって実施される。グループ3の
命令はグループ1及び2と同様なので、プログラム・カ
ウンタ・スタック記憶項目104は、図の通りである。
同様に、カウント・レジスタ22、リンク・レジスタ2
4及び条件レジスタ26はそれぞれ値57.67及び7
7を含んでいる。これらのレジスタの以前の値は図のよ
うに、それらのバックアップ・スタック30.32及び
34中の当該の項目に記憶されている。
4及び条件レジスタ26はそれぞれ値57.67及び7
7を含んでいる。これらのレジスタの以前の値は図のよ
うに、それらのバックアップ・スタック30.32及び
34中の当該の項目に記憶されている。
第9図は、サイクル4の終りのこれらのレジスタの内容
を示す。この例では、サイクル4で、命令2が固定小数
点演算命令実行ユニット18bによって実行された。こ
の命令はロード命令や記憶命令ではないので、割込みを
引き起こすことはできない。したがって、プログラム・
カウンタ・スタック項目記憶テーブル36から項目を除
去する必要はない。
を示す。この例では、サイクル4で、命令2が固定小数
点演算命令実行ユニット18bによって実行された。こ
の命令はロード命令や記憶命令ではないので、割込みを
引き起こすことはできない。したがって、プログラム・
カウンタ・スタック項目記憶テーブル36から項目を除
去する必要はない。
第10図は、サイクル5の終りの各レジスタの内容を示
す。サイクル5の間に、固定小数点演算命令実行ユニッ
ト18bは命令5を実行した。この例では、この命令は
割込みを引き起こさなかった。この場合、オフセット・
マスク・ビット(1000)を基底アドレス(5)と組
み合わせて、割込みを引き起こした命令の位置が決定さ
れる。
す。サイクル5の間に、固定小数点演算命令実行ユニッ
ト18bは命令5を実行した。この例では、この命令は
割込みを引き起こさなかった。この場合、オフセット・
マスク・ビット(1000)を基底アドレス(5)と組
み合わせて、割込みを引き起こした命令の位置が決定さ
れる。
この例では、そのアドレスは5である。さらに、カウン
ト・レジスタ22、リンク・レジスタ24及び条件レジ
スタ26に対してフィールド1タツグ・ビットがセット
されたので、これらのレジスタに対するバックアップ値
がこれらのレジスタに供給される。これらの値はそれぞ
れ項目30b132b及び34bに記憶される。割込み
命令のアドレスが、分岐命令実行ユニッ)18aに送ら
れる。同様に、バックアップ・レジスタの内容が当該の
各レジスタに送られる。この記憶された情報が無関係に
なり、システムが位置5の命令が実行されたときの状態
に再初期設定されるので、プログラム・カウンタ・スタ
ック項目記憶テーブル38及びバックアップ・スタック
30,32.34からすべての情報がパージされる。
ト・レジスタ22、リンク・レジスタ24及び条件レジ
スタ26に対してフィールド1タツグ・ビットがセット
されたので、これらのレジスタに対するバックアップ値
がこれらのレジスタに供給される。これらの値はそれぞ
れ項目30b132b及び34bに記憶される。割込み
命令のアドレスが、分岐命令実行ユニッ)18aに送ら
れる。同様に、バックアップ・レジスタの内容が当該の
各レジスタに送られる。この記憶された情報が無関係に
なり、システムが位置5の命令が実行されたときの状態
に再初期設定されるので、プログラム・カウンタ・スタ
ック項目記憶テーブル38及びバックアップ・スタック
30,32.34からすべての情報がパージされる。
第11図は、サイクル6の終りにカウント・レジスタ2
2、リンク・レジスタ24及び条件レジスタ26が更新
されたときの各レジスタの内容を示す。サイクル6の終
りに、システムが再初期設定されて、命令5から始まる
命令シーケンスの実行を再び開始させる準備ができる。
2、リンク・レジスタ24及び条件レジスタ26が更新
されたときの各レジスタの内容を示す。サイクル6の終
りに、システムが再初期設定されて、命令5から始まる
命令シーケンスの実行を再び開始させる準備ができる。
この実施例では、単一のプログラム・カウンタ・スタッ
ク項目に、割込みを発生させる命令が2個含まれる場合
、割込みは先入れ先だし方式で受は取られる。言い替え
れば、割込みが発生したとき、割込みを発生させる最も
古い命令がこの割込みを発生させたものと仮定される。
ク項目に、割込みを発生させる命令が2個含まれる場合
、割込みは先入れ先だし方式で受は取られる。言い替え
れば、割込みが発生したとき、割込みを発生させる最も
古い命令がこの割込みを発生させたものと仮定される。
しかし、当然のことながら、他のシステムでは、必ずし
も最も古い命令が割込みを引き起こす命令ではない。そ
の場合、システムは、割込みの発生によってもたらされ
るタグによって割込みを引き起こした命令を決定するこ
とができる。
も最も古い命令が割込みを引き起こす命令ではない。そ
の場合、システムは、割込みの発生によってもたらされ
るタグによって割込みを引き起こした命令を決定するこ
とができる。
したがって、第11図で、レジスタは、命令工ないし4
のみが実行されたように見える。
のみが実行されたように見える。
第12図は、論理機構64内のスタック追加機能(状態
122)とスタック除去論理機構66内のスタック除去
機能124の同時実行を示す状態図である。機能122
と124は、状態120と126で示すように各サイク
ル中に実行される。
122)とスタック除去論理機構66内のスタック除去
機能124の同時実行を示す状態図である。機能122
と124は、状態120と126で示すように各サイク
ル中に実行される。
第13図はスタック追加機能を示す流れ図である。サイ
クルの始めに、スタック追加論理機構64はステップ2
00からスタートし、ステップ202に進んで、ロード
命令または記憶命令がディスパッチされたかどうか判定
する。ディスパッチされた場合、論理機構64はステッ
プ204に進み、基底アドレスを記憶し、プログラム・
カウンタ・スタック項目記憶テーブル36のタグ・オフ
セット・ビットをセットする。ロード命令及び記憶命令
がディスパッチされてない場合、または基底アドレスと
オフセット・ビットが記憶された後、論理機構はステッ
プ206に進み、ロード命令または記憶命令の前に分岐
命令またはLCR命令がディスパッチされたかどうか判
定する。ディスパッチされた場合、以前のプログラム・
カウンタ・スタック項目のタグ・ビットが更新されて、
カウント・レジスタ、リンク・レジスタ及び条件レジス
タの古い値がバックアップ・スタックに記憶される。プ
ログラムは次にステップ216に進む。ステップ206
に戻って、ロード命令または記憶命令の前に分岐命令ま
たはLCR命令がディスパッチされなかった場合、論理
機構はステップ210に進み、ロード命令または記憶命
令の後で分岐命令またはLCR命令がディスパッチされ
たかどうか判定する。ディスパッチされた場合、論理機
構はステップ212に進み、現在のプログラム・カウン
タ項目のタグ・ビットをセットし、古い値をバックアッ
プ・スタックに記憶する。次いでステップ216で、バ
ックアップ・スタック・ポインタ39が増分される。ス
テップ210に戻って、ロード命令または記憶命令の後
で分岐命令またはLCR命令がディスパッチされなかっ
た場合、論理機構はステップ214に進み、現在のプロ
グラム・カウンタ・スタック項目のタグ・ビットをゼロ
にセットする。次に、ステップ218で、ロード命令ま
たは記憶命令がディスバッチされた場合、プログラム・
カウンタ・スタック項目を指すポインタが増分される。
クルの始めに、スタック追加論理機構64はステップ2
00からスタートし、ステップ202に進んで、ロード
命令または記憶命令がディスパッチされたかどうか判定
する。ディスパッチされた場合、論理機構64はステッ
プ204に進み、基底アドレスを記憶し、プログラム・
カウンタ・スタック項目記憶テーブル36のタグ・オフ
セット・ビットをセットする。ロード命令及び記憶命令
がディスパッチされてない場合、または基底アドレスと
オフセット・ビットが記憶された後、論理機構はステッ
プ206に進み、ロード命令または記憶命令の前に分岐
命令またはLCR命令がディスパッチされたかどうか判
定する。ディスパッチされた場合、以前のプログラム・
カウンタ・スタック項目のタグ・ビットが更新されて、
カウント・レジスタ、リンク・レジスタ及び条件レジス
タの古い値がバックアップ・スタックに記憶される。プ
ログラムは次にステップ216に進む。ステップ206
に戻って、ロード命令または記憶命令の前に分岐命令ま
たはLCR命令がディスパッチされなかった場合、論理
機構はステップ210に進み、ロード命令または記憶命
令の後で分岐命令またはLCR命令がディスパッチされ
たかどうか判定する。ディスパッチされた場合、論理機
構はステップ212に進み、現在のプログラム・カウン
タ項目のタグ・ビットをセットし、古い値をバックアッ
プ・スタックに記憶する。次いでステップ216で、バ
ックアップ・スタック・ポインタ39が増分される。ス
テップ210に戻って、ロード命令または記憶命令の後
で分岐命令またはLCR命令がディスパッチされなかっ
た場合、論理機構はステップ214に進み、現在のプロ
グラム・カウンタ・スタック項目のタグ・ビットをゼロ
にセットする。次に、ステップ218で、ロード命令ま
たは記憶命令がディスバッチされた場合、プログラム・
カウンタ・スタック項目を指すポインタが増分される。
次にステップ220で、論理機構は、プログラム・カウ
ンタ・スタック項目記憶テーブルが一杯かどうか判定す
る。−杯の場合、ステップ222でラッチがセットされ
て、ディスパッチ停止信号を命令発行論理機構17に送
る。
ンタ・スタック項目記憶テーブルが一杯かどうか判定す
る。−杯の場合、ステップ222でラッチがセットされ
て、ディスパッチ停止信号を命令発行論理機構17に送
る。
ステップ224で、論理機構64は、次のサイクルが発
生するまで待ち、次のサイクルでステップ200に戻る
。
生するまで待ち、次のサイクルでステップ200に戻る
。
第14図は論理機構66によって実行されるスタック除
去手順を示す流れ図である。サイクルの始めに、論理機
構68はステップ300からステップ302に進み、ロ
ード命令または記憶命令が固定小数点演算命令実行ユニ
ットによって実行されたかどうか判定する。そうでない
場合、論理機構はステップ310に進む。実行された場
合、論理機構はステップ304に進み、プログラム・カ
ウンタ・スタック項目記憶テーブルのすべてのロード命
令及び記憶命令が実行されたかどうか判定する。すべて
が実行されたわけではない場合、プログラムはステップ
306に進み、次のサイクルまで待機する。その項目に
対するロード命令及び記憶命令がすべて実行された場合
、論理機構はステップ308に進み、その項目を除去し
、状況ビットを使ってバックアップ・スタック項目を除
去し、ポインタをすべて減分させる。ステップ308が
完了すると、論理機構はステップ306に進み、次のサ
イクルを待つ。
去手順を示す流れ図である。サイクルの始めに、論理機
構68はステップ300からステップ302に進み、ロ
ード命令または記憶命令が固定小数点演算命令実行ユニ
ットによって実行されたかどうか判定する。そうでない
場合、論理機構はステップ310に進む。実行された場
合、論理機構はステップ304に進み、プログラム・カ
ウンタ・スタック項目記憶テーブルのすべてのロード命
令及び記憶命令が実行されたかどうか判定する。すべて
が実行されたわけではない場合、プログラムはステップ
306に進み、次のサイクルまで待機する。その項目に
対するロード命令及び記憶命令がすべて実行された場合
、論理機構はステップ308に進み、その項目を除去し
、状況ビットを使ってバックアップ・スタック項目を除
去し、ポインタをすべて減分させる。ステップ308が
完了すると、論理機構はステップ306に進み、次のサ
イクルを待つ。
ステップ310に戻って、論理機構は、ロード命令また
は記憶命令が割込みを引き起こしたかどうか判定する。
は記憶命令が割込みを引き起こしたかどうか判定する。
そうでない場合、論理機構はステップ306に進む。割
込みが発生した場合、論理機構はステップ312に進み
、プログラム゛・カウンタ・スタック項目の基底アドレ
スとタグ・ビットからロード命令及び記憶命令のアドレ
スを再構成する。次に、ステップ314で、該当する場
合、リンク・レジスタ24、カウント・レジスタ22及
び条件レジスタ26の古い値が記憶される。ステップ3
16で、プログラム・カウンタ・スタック項目記憶テー
ブル36と各バックアップ・レジスタの内容が、それら
の値はもはや無関係なので、除去される。論理機構66
は次いでステップ306に進み、次のサイクルを待つ。
込みが発生した場合、論理機構はステップ312に進み
、プログラム゛・カウンタ・スタック項目の基底アドレ
スとタグ・ビットからロード命令及び記憶命令のアドレ
スを再構成する。次に、ステップ314で、該当する場
合、リンク・レジスタ24、カウント・レジスタ22及
び条件レジスタ26の古い値が記憶される。ステップ3
16で、プログラム・カウンタ・スタック項目記憶テー
ブル36と各バックアップ・レジスタの内容が、それら
の値はもはや無関係なので、除去される。論理機構66
は次いでステップ306に進み、次のサイクルを待つ。
本発明を例示された実施例に関して説明してきたが、こ
の説明は限られた意味に解釈されるように意図したもの
ではない。この説明から、当業者にとって、例示した実
施例の様々な修正及び本発明の他の実施例は自明である
。したがって、頭記の特許請求の範囲に、本発明の範囲
に、含まれる変更または実施例がすべて包含される。
の説明は限られた意味に解釈されるように意図したもの
ではない。この説明から、当業者にとって、例示した実
施例の様々な修正及び本発明の他の実施例は自明である
。したがって、頭記の特許請求の範囲に、本発明の範囲
に、含まれる変更または実施例がすべて包含される。
4、図面の簡単な説明 ゛
第1図は、並列データ処理システムの構成図である。
第2図は第1図のデータ処理システムの一部分を示す構
成図である。
成図である。
第3図は、プログラム・カウンタ・スタックと分岐命令
実行ユニットの部分を示す構成図である。
実行ユニットの部分を示す構成図である。
第4図はプログラム・カウンタ・スタック項目の内容を
示す構成図である。
示す構成図である。
第5図はサイクル0の間の命令レジスタとスタック・レ
ジスタの内容を示す。
ジスタの内容を示す。
第6図は、サイクル1の間の命令レジスタとスタック・
レジスタの内容を示す。
レジスタの内容を示す。
第7図は、サイクル2の間の命令レジスタとスタック・
レジスタの内容を示す。
レジスタの内容を示す。
第8図は、サイクル3の間の命令レジスタとスタック・
レジスタの内容を示す。
レジスタの内容を示す。
第9図は、サイクル4の間の命令レジスタとスタック・
レジスタの内容を示す。
レジスタの内容を示す。
第10図は、サイクル5の間の命令レジスタとスタック
・レジスタの内容を示す。
・レジスタの内容を示す。
第11図は、サイクル6の間の命令レジスタとスタック
・レジスタの内容を示す。
・レジスタの内容を示す。
第12図は、スタック追加機能とスタック除去機能の同
時実行を示す流れ図である。
時実行を示す流れ図である。
第13図は、スタック追加機能を示す流れ図である。
第14図は、スタック除去機能を示す流れ図である。
10・・・・メモリ、12・・・・メモリ・コントロー
ラ、14・・・・命令バッファ、15・・・・プログラ
ム・カウンタ・スタック、16・・・・プログラム・カ
ウンタ・スタック/命令ディスバッチ論理機構、17・
・・・命令発行論理回路、18・・・・命令実行ユニッ
ト、20・・・・情報バス、22・・・・カウント・レ
ジスタ、24・・・・リンク・レジスタ、26・・・・
条件レジスタ、28・・・・割込みアドレス・レジスタ
、30.32.34・・・・バックアップ・スタック、
36・・・・プログラム・カウンタ項目記憶テーブル、
38・・・・スタック制御装置、84・・・・スタック
追加論理回路、66・・・・スタック除去論理回路。
ラ、14・・・・命令バッファ、15・・・・プログラ
ム・カウンタ・スタック、16・・・・プログラム・カ
ウンタ・スタック/命令ディスバッチ論理機構、17・
・・・命令発行論理回路、18・・・・命令実行ユニッ
ト、20・・・・情報バス、22・・・・カウント・レ
ジスタ、24・・・・リンク・レジスタ、26・・・・
条件レジスタ、28・・・・割込みアドレス・レジスタ
、30.32.34・・・・バックアップ・スタック、
36・・・・プログラム・カウンタ項目記憶テーブル、
38・・・・スタック制御装置、84・・・・スタック
追加論理回路、66・・・・スタック除去論理回路。
出願人 インターナショナル・ビジネス・マシーンズ
・コーポレーシロン 復代理人 弁理士 澤 1) 俊 夫o
0 0 蔓 、φ ! 〜 6 8゜ 第1201
・コーポレーシロン 復代理人 弁理士 澤 1) 俊 夫o
0 0 蔓 、φ ! 〜 6 8゜ 第1201
Claims (1)
- 【特許請求の範囲】 一連の命令を実行するデータ処理システムにおいて、 それぞれ命令を実行する複数のプロセッサと、上記命令
の各々を上記プロセッサの1つにディスパッチするディ
スパッチ手段と、 上記一連の命令中での命令の位置と無関係に上記複数の
プロセッサにおいてディスパッチされた命令を並行処理
するよう指示する制御手段とを有し、 上記制御手段は、 命令割込み信号を受け取る手段と、 上記複数のプロセッサ及びディスパッチ手段を、上記命
令割込み信号を発生させた命令が実行されたときの状態
にリセットし、割込みを引き起こした命令を再実行する
手段とを有することを特徴とするデータ処理システム。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US12681887A | 1987-11-30 | 1987-11-30 | |
| US126818 | 2002-04-19 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH01166248A true JPH01166248A (ja) | 1989-06-30 |
Family
ID=22426855
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP63290372A Pending JPH01166248A (ja) | 1987-11-30 | 1988-11-18 | データ処理システム |
Country Status (5)
| Country | Link |
|---|---|
| EP (1) | EP0319132B1 (ja) |
| JP (1) | JPH01166248A (ja) |
| BR (1) | BR8806279A (ja) |
| CA (1) | CA1313275C (ja) |
| DE (1) | DE3854859T2 (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5881990A (en) * | 1996-07-17 | 1999-03-16 | Isuzu Ceramics Research Institute Co., Ltd. | Vibration and sound isolation device for a cogeneration system with an engine |
| EP0935058A2 (en) | 1998-02-06 | 1999-08-11 | Isuzu Ceramics Research Institute Co., Ltd. | Radiators and soundproofing engine enclosure designs |
Families Citing this family (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5075844A (en) * | 1989-05-24 | 1991-12-24 | Tandem Computers Incorporated | Paired instruction processor precise exception handling mechanism |
| US5440703A (en) * | 1993-09-20 | 1995-08-08 | International Business Machines Corporation | System and method for saving state information in a multi-execution unit processor when interruptable instructions are identified |
| CN1099073C (zh) * | 1995-01-24 | 2003-01-15 | 联华电子股份有限公司 | 并行处理器的定址装置 |
| US7502725B2 (en) | 2004-04-29 | 2009-03-10 | International Business Machines Corporation | Method, system and computer program product for register management in a simulation environment |
-
1988
- 1988-08-25 CA CA000575695A patent/CA1313275C/en not_active Expired - Fee Related
- 1988-10-11 EP EP88309481A patent/EP0319132B1/en not_active Expired - Lifetime
- 1988-10-11 DE DE3854859T patent/DE3854859T2/de not_active Expired - Fee Related
- 1988-11-18 JP JP63290372A patent/JPH01166248A/ja active Pending
- 1988-11-29 BR BR888806279A patent/BR8806279A/pt not_active Application Discontinuation
Non-Patent Citations (1)
| Title |
|---|
| CONF.PROC THE12TH ANNUAL INT SYMPOSIUM ON COMPUTER ARCHITECTURE=1985US * |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5881990A (en) * | 1996-07-17 | 1999-03-16 | Isuzu Ceramics Research Institute Co., Ltd. | Vibration and sound isolation device for a cogeneration system with an engine |
| EP0935058A2 (en) | 1998-02-06 | 1999-08-11 | Isuzu Ceramics Research Institute Co., Ltd. | Radiators and soundproofing engine enclosure designs |
Also Published As
| Publication number | Publication date |
|---|---|
| EP0319132A2 (en) | 1989-06-07 |
| DE3854859D1 (de) | 1996-02-15 |
| BR8806279A (pt) | 1989-08-15 |
| EP0319132B1 (en) | 1996-01-03 |
| EP0319132A3 (en) | 1991-12-04 |
| DE3854859T2 (de) | 1996-07-11 |
| CA1313275C (en) | 1993-01-26 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5247628A (en) | Parallel processor instruction dispatch apparatus with interrupt handler | |
| US6374347B1 (en) | Register file backup queue | |
| JP2645669B2 (ja) | データ処理システム | |
| US4901233A (en) | Computer system with logic for writing instruction identifying data into array control lists for precise post-branch recoveries | |
| EP0106670B1 (en) | Cpu with multiple execution units | |
| EP0437044B1 (en) | Data processing system with instruction tag apparatus | |
| US4369494A (en) | Apparatus and method for providing synchronization between processes and events occurring at different times in a data processing system | |
| EP0205809B1 (en) | Vector processing | |
| HK1000050B (en) | Data processing systems | |
| JPS61286931A (ja) | 情報処理装置 | |
| EP0646861B1 (en) | A history buffer system | |
| JPH01166248A (ja) | データ処理システム | |
| US3644900A (en) | Data-processing device | |
| US20220342844A1 (en) | Method and Apparatus for Desynchronizing Execution in a Vector Processor | |
| JP2876791B2 (ja) | 例外処理装置および例外処理方法 | |
| JPH10283178A (ja) | 命令を発行するための方法及びシステム | |
| WO2022231733A1 (en) | Method and apparatus for desynchronizing execution in a vector processor | |
| JPS63284673A (ja) | 情報処理装置 | |
| JPH10207720A (ja) | 情報処理装置 | |
| JPH07262008A (ja) | 並列分岐処理装置 | |
| JPH04156645A (ja) | 半導体集積回路装置 | |
| JPH03108061A (ja) | ベクトル演算装置 |