JPS60214069A - 処理システム - Google Patents
処理システムInfo
- Publication number
- JPS60214069A JPS60214069A JP59267637A JP26763784A JPS60214069A JP S60214069 A JPS60214069 A JP S60214069A JP 59267637 A JP59267637 A JP 59267637A JP 26763784 A JP26763784 A JP 26763784A JP S60214069 A JPS60214069 A JP S60214069A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- register
- instructions
- gpr
- high speed
- 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; 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/3877—Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor
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)
- Advance Control (AREA)
- Saccharide Compounds (AREA)
- Pharmaceuticals Containing Other Organic And Inorganic Compounds (AREA)
- Multi Processors (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は主プロセツサと高速プロセッサが命令セットの
うち各々選択されたサブセットを実行するようなコンピ
ュータシステムに関する。
うち各々選択されたサブセットを実行するようなコンピ
ュータシステムに関する。
従来技術においては、多重プロセッサコンピュータシス
テムのタイプは少な(とも2つある。それU、(a)
コンピュータシステムのプロセッサ部分の信頼性を高め
る目的で、少なくとも2つのプロセッサの各々が1つの
プログラムの全ての命令を実行するタイプと、(b)少
なくとも2つのプロセッサの各々が異なるプログラムを
実行する(すなわち異なるタスクまたは機能を遂行する
)タイプである。
テムのタイプは少な(とも2つある。それU、(a)
コンピュータシステムのプロセッサ部分の信頼性を高め
る目的で、少なくとも2つのプロセッサの各々が1つの
プログラムの全ての命令を実行するタイプと、(b)少
なくとも2つのプロセッサの各々が異なるプログラムを
実行する(すなわち異なるタスクまたは機能を遂行する
)タイプである。
コンピュータシステムの性能は、少な、くとも、そのシ
ステム内のプロセッサが命令セラトラ実行する速度に依
存する。一般に、命令セットは逐次的に実行され、その
命令の各々は一定の速度で実行される。命令セットの中
にはハードウェアで容易に実現できるものあり、そのよ
うな命令は簡単な命令として分類することができる。そ
の他の命令はハードウェアで実現することは困&fLで
あり、そのような命令は複雑な命令として分類すること
ができる。簡単な命令は複雑な命令よりも頻繁に実行さ
れる。ところが簡単な命令は複雑な命令よりも頻繁に実
行されるという事実があるにもかかわらず、命令セット
の命令(簡単な命令を含む)は、通常、逐次的に一定の
速度で実行される。コンピュータシステムの性能は命令
セットの各命令の逐次的な実行に要する時間に依存する
ので、より簡単な命令を他の複雑な命令と同じく逐次的
に一定の速度で実行するというのはコンピユークンステ
ムの性能上、問題がある。
ステム内のプロセッサが命令セラトラ実行する速度に依
存する。一般に、命令セットは逐次的に実行され、その
命令の各々は一定の速度で実行される。命令セットの中
にはハードウェアで容易に実現できるものあり、そのよ
うな命令は簡単な命令として分類することができる。そ
の他の命令はハードウェアで実現することは困&fLで
あり、そのような命令は複雑な命令として分類すること
ができる。簡単な命令は複雑な命令よりも頻繁に実行さ
れる。ところが簡単な命令は複雑な命令よりも頻繁に実
行されるという事実があるにもかかわらず、命令セット
の命令(簡単な命令を含む)は、通常、逐次的に一定の
速度で実行される。コンピュータシステムの性能は命令
セットの各命令の逐次的な実行に要する時間に依存する
ので、より簡単な命令を他の複雑な命令と同じく逐次的
に一定の速度で実行するというのはコンピユークンステ
ムの性能上、問題がある。
したがって本発明の目的はそのようなコンピュータシス
テムの性能をさらに向上させることにある。
テムの性能をさらに向上させることにある。
本発明に基づく多重プロセッサシステムは前記2つのタ
イプ(a)および(b)とは異なる第6のタイプである
。
イプ(a)および(b)とは異なる第6のタイプである
。
要約すれば、第3のタイプVi2つのプロセッサが1つ
のプログラムを実行するのであるが、各プロセッサは命
令の異なるサブセットをそれぞれ実行するというもので
ある。
のプログラムを実行するのであるが、各プロセッサは命
令の異なるサブセットをそれぞれ実行するというもので
ある。
したがって本発明に基づく処理システムは、命令セット
のうち”簡単“でしかも”より頻繁に実行される°”命
令のザブセットを高速に実行する部分と、このサブセッ
ト以外の命令を実行する部分と、を有することを特徴と
している。
のうち”簡単“でしかも”より頻繁に実行される°”命
令のザブセットを高速に実行する部分と、このサブセッ
ト以外の命令を実行する部分と、を有することを特徴と
している。
このような構成によれば従来に比べより効率良くプログ
ラムを実行することができるようになる。
ラムを実行することができるようになる。
第1図に示すデータ処理システム10はメモリ10A、
主プロセツサ10B1制御記憶装置10Cを含む。主プ
ロセツサ10Bはライン10E110F1および10G
を介してメモ1,110 Aに接続される。制御記憶装
置iocは主プロセツサ10Bに接続されたROMであ
る。メモ’J 10 Aは主記憶装置10AIとこれに
接続されたキャノシユサブンステム10A2Y含む。ラ
イン10 Eはキャッシュサブシステム10A2と主プ
ロセツサ10Bとを相互接続し、データ転送用に用いら
れる。ライン10Fおよびライン10Gは命令転送用に
用いられる。主プロセツサ10Bは入出力用のラインI
ODを介して様々な周辺装置に接続される。
主プロセツサ10B1制御記憶装置10Cを含む。主プ
ロセツサ10Bはライン10E110F1および10G
を介してメモ1,110 Aに接続される。制御記憶装
置iocは主プロセツサ10Bに接続されたROMであ
る。メモ’J 10 Aは主記憶装置10AIとこれに
接続されたキャノシユサブンステム10A2Y含む。ラ
イン10 Eはキャッシュサブシステム10A2と主プ
ロセツサ10Bとを相互接続し、データ転送用に用いら
れる。ライン10Fおよびライン10Gは命令転送用に
用いられる。主プロセツサ10Bは入出力用のラインI
ODを介して様々な周辺装置に接続される。
本発明に従って、高速プロセッサ12がライン10Fお
よび1[]Gを介してメモリIOAと主プロセツサ10
Bとの間に接続される。高速プロセッサ12はメモリI
OAから命令を受り取る。高速プロセッサ12が受け取
る命令の中には、他に比べてより頻繁に実行される命令
もある。高速プロセッサ12は受け取った命令がiより
頻繁に実行されるIという部類(以下、“実行頻度大”
という)に入っているかどうかを判断する。受は取っ
た命令がその部類に人っているときは、主プロセツサI
DBにその命令の実行を禁止し、高速プロセッサ12が
それを実行する。逆の場合、すなわち、受は取った命令
が′□実行頻度大・・という部類に入っていないときは
、高速プロセッサ12は主プロセツサ10Bにそのこと
を通知する。その結果、主プロセツサ10Bはその命令
の実行を許可される。この場合、高速プロセッサ12の
オペレーションは延期される。高速プロセッサ12は、
”実行頻匹大”という部類に入っている一定の選択され
た命令を実行するよう設計されており、高速プロセッサ
12によってそうした命令が実行されるときの速度id
、主プロセツサIOBによって他の残りの命令が実行さ
れるときの速度に比べて非常に太きい。したがって高速
プロセッサを利用する本発明に基づくコンピュータシス
テムは、高速プロセッサを用いない従来のコンピュータ
システムに比べてその性能が高い。
よび1[]Gを介してメモリIOAと主プロセツサ10
Bとの間に接続される。高速プロセッサ12はメモリI
OAから命令を受り取る。高速プロセッサ12が受け取
る命令の中には、他に比べてより頻繁に実行される命令
もある。高速プロセッサ12は受け取った命令がiより
頻繁に実行されるIという部類(以下、“実行頻度大”
という)に入っているかどうかを判断する。受は取っ
た命令がその部類に人っているときは、主プロセツサI
DBにその命令の実行を禁止し、高速プロセッサ12が
それを実行する。逆の場合、すなわち、受は取った命令
が′□実行頻度大・・という部類に入っていないときは
、高速プロセッサ12は主プロセツサ10Bにそのこと
を通知する。その結果、主プロセツサ10Bはその命令
の実行を許可される。この場合、高速プロセッサ12の
オペレーションは延期される。高速プロセッサ12は、
”実行頻匹大”という部類に入っている一定の選択され
た命令を実行するよう設計されており、高速プロセッサ
12によってそうした命令が実行されるときの速度id
、主プロセツサIOBによって他の残りの命令が実行さ
れるときの速度に比べて非常に太きい。したがって高速
プロセッサを利用する本発明に基づくコンピュータシス
テムは、高速プロセッサを用いない従来のコンピュータ
システムに比べてその性能が高い。
第2図を参照して高速プロセッサ12について説明する
。高速プロセッサ12は実行すべき命令を一時的に記憶
するだめの、メモ’J 10 Aに接続された命令バッ
ファ12a’(r含む。命令レジスタ12bは命令バッ
ファ12aに接続され実行に備えてそこから命令を受り
′取る。命令レジスタ12bの出力は命令を主プロセツ
サIOBに転送するためにそこに接続される。命令が高
速プロセッサ12で実行できないという事象の場合に主
プロセツサIOBがその命令を実行する。命令レジスタ
12bの実行される命令をデコードするために、命令レ
ジスタ12bの出力は、命令デコーダおよび制御回路を
含む命令処理部12cにも接続される。主プロセツサI
DBが現命令を実行するために汎用レジスタ群12dか
も1以上のオペランドを検索したいという事象の場合に
、汎用レジスタ12d内の場所に関連するアドレス情報
を供給できるよう、主プロセツサ10Bは命令処理部1
2Cに接続される。命令処理部12cは制御ライン12
tを介して主プロセツサ10Bに接続される。
。高速プロセッサ12は実行すべき命令を一時的に記憶
するだめの、メモ’J 10 Aに接続された命令バッ
ファ12a’(r含む。命令レジスタ12bは命令バッ
ファ12aに接続され実行に備えてそこから命令を受り
′取る。命令レジスタ12bの出力は命令を主プロセツ
サIOBに転送するためにそこに接続される。命令が高
速プロセッサ12で実行できないという事象の場合に主
プロセツサIOBがその命令を実行する。命令レジスタ
12bの実行される命令をデコードするために、命令レ
ジスタ12bの出力は、命令デコーダおよび制御回路を
含む命令処理部12cにも接続される。主プロセツサI
DBが現命令を実行するために汎用レジスタ群12dか
も1以上のオペランドを検索したいという事象の場合に
、汎用レジスタ12d内の場所に関連するアドレス情報
を供給できるよう、主プロセツサ10Bは命令処理部1
2Cに接続される。命令処理部12cは制御ライン12
tを介して主プロセツサ10Bに接続される。
制御ライン12tは主プロセツサ10 Bに命令を実行
するか否かを通知するための信号ラインである。制御ラ
イン12tがハイレベル(2進値1)のときは、主プロ
セツサ10Bは命令を実行する。
するか否かを通知するための信号ラインである。制御ラ
イン12tがハイレベル(2進値1)のときは、主プロ
セツサ10Bは命令を実行する。
制御ライン12tがローレベル(2進値O)のときは、
主プロセツサ10Bは命令を実行することはできない。
主プロセツサ10Bは命令を実行することはできない。
主プロセツサ10Bが命令を実行できないときは高速プ
ロセッサ12がその命令を実行する。
ロセッサ12がその命令を実行する。
命令処理部’12cはライン12eを介して汎用レジス
タ群12dに接続される。汎用レジスタ群j2dはAレ
ジスタ12gおよびBレジスタ12hを介してALU
12fに接続される。Aレジスタ12gの出力は命令処
理部12cの入力に接続される。主プロセツサ10Bが
命令ヲ英行中であるという事象の場合に、汎用レジスタ
群12dに記憶されているデータ(たとえばオペランド
)を主プロセツサ10Bに転送できるよう、Aレジスタ
12.gの出力は主プロセツサ111Hの入力にも接続
される。命令レジスタ12bは変位レジスタ12Sに変
位値を記憶するために変位レジスフ12Sにも接続され
る。変位レジスタ12Sの出力はライン12Mを介して
ALU12fに接続される。ALU12fの出力はDレ
ジスタ1210入力に接続される。命令処理部12cの
出力はDし9スタ12iの入力に接続される。Dレジス
タ121の出力はAレジスタ12g、Bレジスタ12h
1汎用レジスタ群12d1およびメモリ10Aの入力に
接゛続される。
タ群12dに接続される。汎用レジスタ群j2dはAレ
ジスタ12gおよびBレジスタ12hを介してALU
12fに接続される。Aレジスタ12gの出力は命令処
理部12cの入力に接続される。主プロセツサ10Bが
命令ヲ英行中であるという事象の場合に、汎用レジスタ
群12dに記憶されているデータ(たとえばオペランド
)を主プロセツサ10Bに転送できるよう、Aレジスタ
12.gの出力は主プロセツサ111Hの入力にも接続
される。命令レジスタ12bは変位レジスタ12Sに変
位値を記憶するために変位レジスフ12Sにも接続され
る。変位レジスタ12Sの出力はライン12Mを介して
ALU12fに接続される。ALU12fの出力はDレ
ジスタ1210入力に接続される。命令処理部12cの
出力はDし9スタ12iの入力に接続される。Dレジス
タ121の出力はAレジスタ12g、Bレジスタ12h
1汎用レジスタ群12d1およびメモリ10Aの入力に
接゛続される。
メモリ10 Aはデータレジスタ12jの入力に接続さ
れる。Dレジスタ12jの出力はデータレジスタ12j
の別の入力にも接続される。Aレジスタ12gに接続さ
れた、汎用レジスフ群12dの出力はライン12Qを介
してデータレジスタ12Jの別の入力に接続される。B
レジスタ12hに接続された、汎用レジスタ群12dの
出力はライン12Rを介してデータレジスタ12jの別
の入力に接続される。データレジスタ12jの出力はバ
イトシフタ12Kに接続される。バイトシフタ12には
、データバイトの最初のビラトラそのデータのバイトの
正しい最初のビット位置に適切に境界合わせするために
入力データを一定量だけシフトするものである。バイト
シフタ12にはBレジスタ12hの入力、ORゲート1
213の入力、オヨヒメモリ1[IAに接続される。A
レジスタ12gに接続された、汎用レジスタ群12dの
出力ばORゲート12!のもう一方の入力に接続される
。
れる。Dレジスタ12jの出力はデータレジスタ12j
の別の入力にも接続される。Aレジスタ12gに接続さ
れた、汎用レジスフ群12dの出力はライン12Qを介
してデータレジスタ12Jの別の入力に接続される。B
レジスタ12hに接続された、汎用レジスタ群12dの
出力はライン12Rを介してデータレジスタ12jの別
の入力に接続される。データレジスタ12jの出力はバ
イトシフタ12Kに接続される。バイトシフタ12には
、データバイトの最初のビラトラそのデータのバイトの
正しい最初のビット位置に適切に境界合わせするために
入力データを一定量だけシフトするものである。バイト
シフタ12にはBレジスタ12hの入力、ORゲート1
213の入力、オヨヒメモリ1[IAに接続される。A
レジスタ12gに接続された、汎用レジスタ群12dの
出力ばORゲート12!のもう一方の入力に接続される
。
oRゲー)12Aの出力は命令レジスタ12bのもう一
方の入力に接続される。
方の入力に接続される。
第3図を参照して命令デコーダおよび制御回路を含む命
令処理部12cについて説明する。命令処理部12cは
命令レジスタ12bに接続されるオペコード処理部12
c 、1を含む。オペコード処理部12c1は命令(
たとえばEXECUTE命令)のタイプを判断するため
に、命令レジスタ12bに入っている命令のオペコード
をデコードする。オペコード処理部12c1は主プロセ
ツサ10Bに接続される。オペコード処理部12cIが
命令のオペコードから、その命令がa実行頻度大・とい
う部類に入ると判断したときは、制御ライン12tを介
してローレベルの信号を発生する。このローレベル信号
に応答して主プロセツサ11]Bはその命令の実行を禁
止される。この場合、は高速プロセッサ12がその命令
を実行する。命令処理部12c1が命令のオペコードか
ら、その命令が”実行頻度太′という部類に入らないと
判断したときは、制御ライン12tを介してノ・インベ
ルの信号を発生する。主プロセツサ10Bはこのノ・イ
レベル信号に応答してその命令を実行し、高速プロセッ
サ12は自身のオペレーションを延ル1する。
令処理部12cについて説明する。命令処理部12cは
命令レジスタ12bに接続されるオペコード処理部12
c 、1を含む。オペコード処理部12c1は命令(
たとえばEXECUTE命令)のタイプを判断するため
に、命令レジスタ12bに入っている命令のオペコード
をデコードする。オペコード処理部12c1は主プロセ
ツサ10Bに接続される。オペコード処理部12cIが
命令のオペコードから、その命令がa実行頻度大・とい
う部類に入ると判断したときは、制御ライン12tを介
してローレベルの信号を発生する。このローレベル信号
に応答して主プロセツサ11]Bはその命令の実行を禁
止される。この場合、は高速プロセッサ12がその命令
を実行する。命令処理部12c1が命令のオペコードか
ら、その命令が”実行頻度太′という部類に入らないと
判断したときは、制御ライン12tを介してノ・インベ
ルの信号を発生する。主プロセツサ10Bはこのノ・イ
レベル信号に応答してその命令を実行し、高速プロセッ
サ12は自身のオペレーションを延ル1する。
命令処理部12cは命令レジスタ12bに接続すしたG
PR(汎用レジスタ)−Aアドレス制御部12C2およ
びGPR−Bアドレス制御部12c3を含む。これらの
アドレス制御部は命令レジスタ12bに記憶された命令
からアドレス情報を受け取って記憶する。GPR−Aア
ドレス制御部12c2およびGPR−Bアドレス制御部
12c6からの雨量カラインを合わぜてライン12eを
構成する。ライン12eは汎用レジスタ群12dに接続
される。命令レジスタ12bはGPI’tアドレス比較
部12c4に接続される。G P R−Aアドレス制御
部12c2の出力はGPRアドレス比較部12c4にも
接続される。GPRアドレス比較部12c4は入力され
たアドレス(G l) R−Aアドレス制御部12c2
に送られそこで記憶されるアドレス)と、GPR−Aア
ドレス制御部12c2の発生するアドレスとを比較し、
この比較が一致したときは、次の命令の実行を延期する
。GPRアドレス比較部12c4がALU12fからの
結果をBレジスタ12hに戻してその結果をさらに処理
できるようにしてもよい。前述のように2つの逐次的な
命令を時間的に重なるように実行するという観点から、
実行すべき次の命令からの入力アドレスと、実行中の現
命令に関連する、GPR−Aアドレス制御部12c2の
発生するアドレスと、が等しいときは、GPRアドレス
比較部12c4は並列処理減勢信号を発生する。並列処
理減勢信号は、(a) 命令処理部12cのライン12
eを介する汎用レジスタ群12dのアドレス指定を禁止
し、(b)Aレジ2212gおよびBレジスタ12hを
減勢し、(C)オペコード制御部12c1による次命令
の事前デコードを禁止する。こうして、汎用レジスタ群
12dから事前に取り出されたオペランドに関するオペ
レーションの処理をALU 12 fが遂行しながら、
並列処理減勢信号が汎用レジスフ群12dからの次命令
に関連するオペランドの取出しを禁止する。
PR(汎用レジスタ)−Aアドレス制御部12C2およ
びGPR−Bアドレス制御部12c3を含む。これらの
アドレス制御部は命令レジスタ12bに記憶された命令
からアドレス情報を受け取って記憶する。GPR−Aア
ドレス制御部12c2およびGPR−Bアドレス制御部
12c6からの雨量カラインを合わぜてライン12eを
構成する。ライン12eは汎用レジスタ群12dに接続
される。命令レジスタ12bはGPI’tアドレス比較
部12c4に接続される。G P R−Aアドレス制御
部12c2の出力はGPRアドレス比較部12c4にも
接続される。GPRアドレス比較部12c4は入力され
たアドレス(G l) R−Aアドレス制御部12c2
に送られそこで記憶されるアドレス)と、GPR−Aア
ドレス制御部12c2の発生するアドレスとを比較し、
この比較が一致したときは、次の命令の実行を延期する
。GPRアドレス比較部12c4がALU12fからの
結果をBレジスタ12hに戻してその結果をさらに処理
できるようにしてもよい。前述のように2つの逐次的な
命令を時間的に重なるように実行するという観点から、
実行すべき次の命令からの入力アドレスと、実行中の現
命令に関連する、GPR−Aアドレス制御部12c2の
発生するアドレスと、が等しいときは、GPRアドレス
比較部12c4は並列処理減勢信号を発生する。並列処
理減勢信号は、(a) 命令処理部12cのライン12
eを介する汎用レジスタ群12dのアドレス指定を禁止
し、(b)Aレジ2212gおよびBレジスタ12hを
減勢し、(C)オペコード制御部12c1による次命令
の事前デコードを禁止する。こうして、汎用レジスタ群
12dから事前に取り出されたオペランドに関するオペ
レーションの処理をALU 12 fが遂行しながら、
並列処理減勢信号が汎用レジスフ群12dからの次命令
に関連するオペランドの取出しを禁止する。
GPR−Aアドレス制御部12C2の出力は命令再試行
バッファ12C5の一方の入力に接続される。Aレジ2
212gの出力は命令再試行ノくツファ12c5のもう
一方の入力に接続される。命令再試行バッファ12C5
の出力ばDレジスタ121の入力に接続される。実行さ
れる命令が2つのオペランドのオペレーションを指示す
るときは、その命令の実行前に2つのオペランドの5ら
の1つが命令再試行バッファ12C5に記憶される。
バッファ12C5の一方の入力に接続される。Aレジ2
212gの出力は命令再試行ノくツファ12c5のもう
一方の入力に接続される。命令再試行バッファ12C5
の出力ばDレジスタ121の入力に接続される。実行さ
れる命令が2つのオペランドのオペレーションを指示す
るときは、その命令の実行前に2つのオペランドの5ら
の1つが命令再試行バッファ12C5に記憶される。
マシンチェックが生じたときは、命令再試行バッファ1
2c5は命令の再実行に備えて1つのオペランドを有す
る。そのオペランドは命令の実行前に命令再試行バッフ
ァ12C5に記憶されねばならブよい。これについては
後で説明する。もう一方のオペランドは命令を実行して
も壊れないので、事前に記憶する必要はない。
2c5は命令の再実行に備えて1つのオペランドを有す
る。そのオペランドは命令の実行前に命令再試行バッフ
ァ12C5に記憶されねばならブよい。これについては
後で説明する。もう一方のオペランドは命令を実行して
も壊れないので、事前に記憶する必要はない。
第4図について説明する。第4図は汎用レジスタ群12
dの詳細を示す図である。汎用レジスフ群12dは汎用
レジスタAグループ12dl(GPR−A)および汎用
し2ンスタBグループ12d2(GPR−B)を含む。
dの詳細を示す図である。汎用レジスフ群12dは汎用
レジスタAグループ12dl(GPR−A)および汎用
し2ンスタBグループ12d2(GPR−B)を含む。
GPR−Bの内容はGPR−Aの内容のコピーである。
Dレジスタ12/lの出力はGPR−AおよびGPR−
Bにそれぞれ接続される。G l) R−Aアドレス制
御部12C2はライン12eを介してGPR−Aに接続
される。GPR−Bアドレス制御部12c3はライン1
2eを介してGPR−Bに接続される。GPR−Aアド
レス制御部12c2およびGPR−Bアドレス制御部1
2cろはGPR−AおよびGPR−B内の場所をそれぞ
れアドレス指定するだめのアドレスレジスタである。G
PR−AはAレジ2212gの入力に接続される。GP
R−BばBレジスタ12hの入力に接続される。GPR
−AおよびGPR−Bからの各出力はデータレジスタ1
2jの入力にそれぞれ接続される。
Bにそれぞれ接続される。G l) R−Aアドレス制
御部12C2はライン12eを介してGPR−Aに接続
される。GPR−Bアドレス制御部12c3はライン1
2eを介してGPR−Bに接続される。GPR−Aアド
レス制御部12c2およびGPR−Bアドレス制御部1
2cろはGPR−AおよびGPR−B内の場所をそれぞ
れアドレス指定するだめのアドレスレジスタである。G
PR−AはAレジ2212gの入力に接続される。GP
R−BばBレジスタ12hの入力に接続される。GPR
−AおよびGPR−Bからの各出力はデータレジスタ1
2jの入力にそれぞれ接続される。
下記に示す表1ば「簡単口かつ番・実行頻度大鍔なる命
令と、″′複雑材かつ・実行頻度小・なる命令の例を示
すものである。
令と、″′複雑材かつ・実行頻度小・なる命令の例を示
すものである。
表1
表1は6つの欄を有する。第1欄(A)は命令の簡略コ
ードを表わす。第2欄(B)は第1 illに示した命
令の簡略コードに対応するオペコードを表わす。第6i
(C)は各命令の混合比(1))を表わす。
ードを表わす。第2欄(B)は第1 illに示した命
令の簡略コードに対応するオペコードを表わす。第6i
(C)は各命令の混合比(1))を表わす。
すなわち第3欄に示す数字は命令セットにおU゛る各命
令の平均的な出現率優)を表わしている。表1かられか
るように、命令113 Cl、lL’、および1STl
はそれぞれおよそ19%、1ろ係、および6φの出現率
であり、命令I X C=、l M VCL”、および
=MMC’はそれぞれおよそ05%、0.06%、およ
び15チの出現率である。これらの出現率に基づいて、
命令’BC’、IL11、および’S T”は簡単かつ
実行頻度大の命令に分類され、命令’XC”、’MVC
3’、および”MMC”は複雑かつ実行頻度小の命令に
分類される。
令の平均的な出現率優)を表わしている。表1かられか
るように、命令113 Cl、lL’、および1STl
はそれぞれおよそ19%、1ろ係、および6φの出現率
であり、命令I X C=、l M VCL”、および
=MMC’はそれぞれおよそ05%、0.06%、およ
び15チの出現率である。これらの出現率に基づいて、
命令’BC’、IL11、および’S T”は簡単かつ
実行頻度大の命令に分類され、命令’XC”、’MVC
3’、および”MMC”は複雑かつ実行頻度小の命令に
分類される。
第5図について説明する。第5図は第6図に示したオペ
コード処理部12c1の一部分を詳細に示す図である。
コード処理部12c1の一部分を詳細に示す図である。
第6図ではオペコード処理部12c1はNORゲ−)1
2C1(A)を含む。NORゲ−)12CI(A)の入
力は複数のオペコードデコーダ12 C1(C)を介し
て命令レジスタ12’bに接続される。オペコードデコ
ーダ12 CI (C)ばNORゲー) 12 C1(
A>の各入力に接続される。オペコードデコーダ12
CI (C)は、それぞれ、異なる命令オペコードをデ
コードし応答するよ5設り−られている。たとえば命令
が・条件付分岐(BC)”命令のときは、そのオペコー
ドは” 47 ”である。
2C1(A)を含む。NORゲ−)12CI(A)の入
力は複数のオペコードデコーダ12 C1(C)を介し
て命令レジスタ12’bに接続される。オペコードデコ
ーダ12 CI (C)ばNORゲー) 12 C1(
A>の各入力に接続される。オペコードデコーダ12
CI (C)は、それぞれ、異なる命令オペコードをデ
コードし応答するよ5設り−られている。たとえば命令
が・条件付分岐(BC)”命令のときは、そのオペコー
ドは” 47 ”である。
したがって第5図に示すように第1のオペコードデコー
ダ12 CI (c)がその命令をデコードし応答して
、出力信号を発生する。他のオペコードデコーダはこの
命令には応答しない。NORゲート12 CI (A)
の出力は主プロセツサIOBに接続され、第2図および
第6図で示すように、制御ライン12tに制御信号を発
生する。NORゲート12C1囚はORゲー)12CI
(4)(1)とその出力に4妾続されたインバータ12
C1(4)(2)を有する。
ダ12 CI (c)がその命令をデコードし応答して
、出力信号を発生する。他のオペコードデコーダはこの
命令には応答しない。NORゲート12 CI (A)
の出力は主プロセツサIOBに接続され、第2図および
第6図で示すように、制御ライン12tに制御信号を発
生する。NORゲート12C1囚はORゲー)12CI
(4)(1)とその出力に4妾続されたインバータ12
C1(4)(2)を有する。
高速プロセッサ12を組み合わせたデータ処理システム
100機能的な動作を、以下、第1図を参照しながら説
明する。
100機能的な動作を、以下、第1図を参照しながら説
明する。
命令はメモIJ I D Aから取り出されて、これを
高速プロセッサ12が受け取る。その命令が・実行頻度
大口の命令であれば、高速プロセッサ12がその命令を
実行する。主プロセツサ10Bはこの命令の実行を禁止
される。ところで命令が・実行頻度大口の命令でないと
きは、主プロセツサ10Bはその命令の実行を許可され
る。この場合、高速プロセッサ12は、主プロセツサ1
0I3がその命令の実行を完了するまで、自身のオペレ
ーションは延期される。制御記憶装置10CはROMで
あり、命令の実行に際し主プロセツサ10Bを援助する
だめのマイクロコードな記憶している。
高速プロセッサ12が受け取る。その命令が・実行頻度
大口の命令であれば、高速プロセッサ12がその命令を
実行する。主プロセツサ10Bはこの命令の実行を禁止
される。ところで命令が・実行頻度大口の命令でないと
きは、主プロセツサ10Bはその命令の実行を許可され
る。この場合、高速プロセッサ12は、主プロセツサ1
0I3がその命令の実行を完了するまで、自身のオペレ
ーションは延期される。制御記憶装置10CはROMで
あり、命令の実行に際し主プロセツサ10Bを援助する
だめのマイクロコードな記憶している。
主プロセツサIOBが命令の実行を許可されると、この
マイクロコードに基づいて命令を実行する。
マイクロコードに基づいて命令を実行する。
メモIJ 10 Aから取り出される命令の大部分は°
1実行頻度太罰の部類に入り、よのような命令が高速プ
ロセッサ12で実行される。
1実行頻度太罰の部類に入り、よのような命令が高速プ
ロセッサ12で実行される。
高速プロセッサ12が命令を実行するときは、それは並
列実行モードで動作する。並列実行モードのときは、高
速プロセッサ12は命令シーケンスの第1の命令を実行
すると同時に、第2の命令の実行開始の準備をする。こ
のようにして、並列実行モードで選択された命令を実行
するので、高速プロセッサ12は、主プロセツサIOB
が選択されたn実行頻度大・の命令を実行するよりも速
くそれを実行することができる。
列実行モードで動作する。並列実行モードのときは、高
速プロセッサ12は命令シーケンスの第1の命令を実行
すると同時に、第2の命令の実行開始の準備をする。こ
のようにして、並列実行モードで選択された命令を実行
するので、高速プロセッサ12は、主プロセツサIOB
が選択されたn実行頻度大・の命令を実行するよりも速
くそれを実行することができる。
この結果、メモ!J 10 Aから取り出された命令の
実行に関する処理時間をおよそ409る減らずことがで
きる。
実行に関する処理時間をおよそ409る減らずことがで
きる。
高速プロセッサ120機能的な動作を、以下、第2図な
いし第4図を参照して説明する。
いし第4図を参照して説明する。
命令はメモリ10 Aから取り出され高速プロセツサ1
2で受け取られる。この命令は命令バッファ12aで一
時的に記憶され訂次に実行される命令“とみなされる。
2で受け取られる。この命令は命令バッファ12aで一
時的に記憶され訂次に実行される命令“とみなされる。
次にこの命令は実行に備えて命令レジスタ12bに送ら
れそこに記憶される。
れそこに記憶される。
命令レジスタ12bへの命令転送が完了すると、実行に
先立って命令処理部12cのオペコード処理部12c1
が、その命令がi実行頻度大”の部類に入るものである
かどうかを判断するためにその命令をデコードする。命
令が1実行頻度大”の部類に入らないときは、オペコー
ド処理部12c1は制御ライン12tにハイレベル信号
を発生する。このハイレベル信号に応答して主プロセツ
サ10Bはその命令を実行する。命令が1実行頻度大社
の部類に入るときは、制御ライン12tの信号はローレ
ベルのままである。したがって主プロセツサ10Bはそ
の命令の実行を禁止される。
先立って命令処理部12cのオペコード処理部12c1
が、その命令がi実行頻度大”の部類に入るものである
かどうかを判断するためにその命令をデコードする。命
令が1実行頻度大”の部類に入らないときは、オペコー
ド処理部12c1は制御ライン12tにハイレベル信号
を発生する。このハイレベル信号に応答して主プロセツ
サ10Bはその命令を実行する。命令が1実行頻度大社
の部類に入るときは、制御ライン12tの信号はローレ
ベルのままである。したがって主プロセツサ10Bはそ
の命令の実行を禁止される。
ところで、第1オペランドおよび81!2オペランドに
関連する命令アドレス情報はGPR−Aアドレス制御部
12c2およびGPR−Bアドレス制御部12c6にそ
れぞれ記憶される。ここで、命令ンジスタ12bに記憶
されている命令がADD命令であり、2つのオペランド
を加算し、その和を汎用レジスフ群12dに記憶すると
仮定する。〜さらに、これら2つのオペランドは、汎用
レジスフ群12dの汎用レジスタAグループ12dl(
GPR−A)および汎用レジスタBグループ12d2(
GPR−B)にそれぞれが記憶されて℃・るものとする
。前述のように、GPR−Aの内容はGPR−Bの内容
のコピーである。GPR−Aアドレス制御部12c2に
記憶されたアドレス情報を用いてGPR−Aをアドレス
指定し、Gl)R−Bアドレス制御部−1203に記憶
されたアドレス情報を用いてGPR−Bをアドレス指定
する。これらのアドレス指定は同時に行われる。したが
って汎用レジスフ群12dのアドレス指定に要する時間
は節約される。
関連する命令アドレス情報はGPR−Aアドレス制御部
12c2およびGPR−Bアドレス制御部12c6にそ
れぞれ記憶される。ここで、命令ンジスタ12bに記憶
されている命令がADD命令であり、2つのオペランド
を加算し、その和を汎用レジスフ群12dに記憶すると
仮定する。〜さらに、これら2つのオペランドは、汎用
レジスフ群12dの汎用レジスタAグループ12dl(
GPR−A)および汎用レジスタBグループ12d2(
GPR−B)にそれぞれが記憶されて℃・るものとする
。前述のように、GPR−Aの内容はGPR−Bの内容
のコピーである。GPR−Aアドレス制御部12c2に
記憶されたアドレス情報を用いてGPR−Aをアドレス
指定し、Gl)R−Bアドレス制御部−1203に記憶
されたアドレス情報を用いてGPR−Bをアドレス指定
する。これらのアドレス指定は同時に行われる。したが
って汎用レジスフ群12dのアドレス指定に要する時間
は節約される。
GPR−AおよびC,PR−Bがアドレス指定されると
、それらに記憶゛されているオペランドは同時に取り出
されAレジスタ12gおよびBレジスタ12hにそれぞ
れ記憶される。ALU 12 fはAレジスタ12gお
よびBレジスタ1211からオペランドを検索してこれ
ら2つのオペランドに対して命令のオペレーションを遂
行する、すなわち、2つのオペランドを加算してそれら
の和を生成する。こうして生成された和は、Dレジスタ
12iを介して汎用レジスタ群12d内のG P R−
AおよびGPR−Bに記憶される。ALU12fが2つ
のオペランドに対して命令のオペレーションを遂行して
いる間に、命令シーケンスにおける次に実行される命令
が命令レジスタ1.2 bに記憶され、オペコード処理
部12C1がその命令の種類を判断するため事前にその
命令をデコードする。このようにして高速プロセッサ1
2は、現命令の実行と次命令の実行の準備とを並列させ
る並列実行モードで動作する。このような並列実行モー
ドにより、高速プロセッサ12は主プロセツサ10Bよ
りも速く現命令を実行することができる。GPRアドレ
ス比較部12c4は、次命令を実行する前(すなわち次
命令の実行に関る、汎用レジスタ群12dのアドレス指
定をする前)に、ALU12fによる現命令の実行完了
を保証する。これについては後で説明する。
、それらに記憶゛されているオペランドは同時に取り出
されAレジスタ12gおよびBレジスタ12hにそれぞ
れ記憶される。ALU 12 fはAレジスタ12gお
よびBレジスタ1211からオペランドを検索してこれ
ら2つのオペランドに対して命令のオペレーションを遂
行する、すなわち、2つのオペランドを加算してそれら
の和を生成する。こうして生成された和は、Dレジスタ
12iを介して汎用レジスタ群12d内のG P R−
AおよびGPR−Bに記憶される。ALU12fが2つ
のオペランドに対して命令のオペレーションを遂行して
いる間に、命令シーケンスにおける次に実行される命令
が命令レジスタ1.2 bに記憶され、オペコード処理
部12C1がその命令の種類を判断するため事前にその
命令をデコードする。このようにして高速プロセッサ1
2は、現命令の実行と次命令の実行の準備とを並列させ
る並列実行モードで動作する。このような並列実行モー
ドにより、高速プロセッサ12は主プロセツサ10Bよ
りも速く現命令を実行することができる。GPRアドレ
ス比較部12c4は、次命令を実行する前(すなわち次
命令の実行に関る、汎用レジスタ群12dのアドレス指
定をする前)に、ALU12fによる現命令の実行完了
を保証する。これについては後で説明する。
次に、一方のオペランドがGPR−Bに記憶され、もう
一方のオペランドがメモIJ 10 Aに記憶されてい
ると仮定する。前と同様、命令レジスタ12dにはAD
D命令が記憶され、前記両オペランドを加算してその和
をGPR−Hに記憶すると仮定する。これらのオペラン
ドを加算するには、まず、メモリ10Aの方に記憶され
て(・るオペランドを取り出すために、メモリ10Aを
アドレス指定しなければならない。オペコード処理部1
2c1が命令レジスタ12.bに記憶された命令をデコ
ードしその命令が”実行頻度犬IIの部類に入っている
と判断すれば、制御ライン12tにローレベル信号を発
生し、GPR−Aアドレス制御部12c2およびGPR
−Bアドレス制御部12cろがGPR−AおよびGPR
−Bをそれぞれアドレス指定する。これらのアドレス指
手が行われると、GPR−AおよびCPR−Bから2進
値が読み取られ、Aレジスタ12gオシよびBレジスタ
12hにそれぞれ記憶される。命令レジスタ12bに記
憶された命令は変位値を含む。命令の変位値は変位レジ
スタ12Sに記憶される。変位レジスタ12Sからの信
号(変位値を表わす)はライン12Mを介してALU1
2fを伺勢する。Aレジスタ12gおよびBレジスタ1
2hからの信号(2進値)はライン12nおよび12p
を介してALU12fを付勢する。ALU 12 fは
小計(前記2進値の和)に変位値を加えてそれらの合計
を生成する。この合計はDレジスタ12iに記憶される
。
一方のオペランドがメモIJ 10 Aに記憶されてい
ると仮定する。前と同様、命令レジスタ12dにはAD
D命令が記憶され、前記両オペランドを加算してその和
をGPR−Hに記憶すると仮定する。これらのオペラン
ドを加算するには、まず、メモリ10Aの方に記憶され
て(・るオペランドを取り出すために、メモリ10Aを
アドレス指定しなければならない。オペコード処理部1
2c1が命令レジスタ12.bに記憶された命令をデコ
ードしその命令が”実行頻度犬IIの部類に入っている
と判断すれば、制御ライン12tにローレベル信号を発
生し、GPR−Aアドレス制御部12c2およびGPR
−Bアドレス制御部12cろがGPR−AおよびGPR
−Bをそれぞれアドレス指定する。これらのアドレス指
手が行われると、GPR−AおよびCPR−Bから2進
値が読み取られ、Aレジスタ12gオシよびBレジスタ
12hにそれぞれ記憶される。命令レジスタ12bに記
憶された命令は変位値を含む。命令の変位値は変位レジ
スタ12Sに記憶される。変位レジスタ12Sからの信
号(変位値を表わす)はライン12Mを介してALU1
2fを伺勢する。Aレジスタ12gおよびBレジスタ1
2hからの信号(2進値)はライン12nおよび12p
を介してALU12fを付勢する。ALU 12 fは
小計(前記2進値の和)に変位値を加えてそれらの合計
を生成する。この合計はDレジスタ12iに記憶される
。
Dレジスタ12iは合計を表わすアドレスを発生し、こ
のアドレスで、メモリ1[]Aに記憶された一方のオペ
ランドに対応する場所をアドレス指定する。このオペラ
ンドはデータレジスタ12jおよびバイトシフタ12K
を介してBレジスタ12hに記憶される。バイトシフタ
12 Kは、このオペランドの最初のバイトの最初のビ
ットがBレジスタ12hの最初の正しいピット位置にな
るように境界合わせする。GPR−Aアドレス制御部1
2c2はGPR−Aをアドレス指定することによってそ
こから1つのオペランドを取り出し、Aレジスタ12g
に記憶する。ALU 12 fばAレジ1スタ12gに
記憶されたオペランドと、Bレジスタ12hに記憶され
たオペランドとを加算する。
のアドレスで、メモリ1[]Aに記憶された一方のオペ
ランドに対応する場所をアドレス指定する。このオペラ
ンドはデータレジスタ12jおよびバイトシフタ12K
を介してBレジスタ12hに記憶される。バイトシフタ
12 Kは、このオペランドの最初のバイトの最初のビ
ットがBレジスタ12hの最初の正しいピット位置にな
るように境界合わせする。GPR−Aアドレス制御部1
2c2はGPR−Aをアドレス指定することによってそ
こから1つのオペランドを取り出し、Aレジスタ12g
に記憶する。ALU 12 fばAレジ1スタ12gに
記憶されたオペランドと、Bレジスタ12hに記憶され
たオペランドとを加算する。
これらのオペランドの和はDレジスタ12i’g介して
GPR−Bに記憶される。
GPR−Bに記憶される。
命令レジスタ12bに記憶された命令がEXECUTE
命令であると仮定する。EXECUTE命令は、EX、
、MODIFY、、5UBJECTINSTRUCTI
ON というフィールドを有し、GPR−AおよびGP
R−Bに関するアドレス情報および変位値を含む。EX
はその命令がEXECUTE命令であることを示す本の
である。MODEFYは修飾フィールドである。5UB
JECTINSTRUCTIONはメモリ10Aに5U
BJECT命令が記憶されていることを示すものである
。変位レジスタ12Sに記憶された変位値はライン12
Mを介しALU12fを付勢する。GPR−Aアドレス
制御部12c2およびGPR−Bアドレス制御部12c
6から発生される信号(アドレス情報)はライン12e
を介してG I) R〜AおよびGPR−Bを付勢する
。GPRA:16よびGPR−Bの内容はライン12n
および’I2pを介してALU12fを付勢する。AL
U 12 fはGPR−AおよびGPR−Bの内容と、
変位値とを加算して別の和を生成する。この和はDレジ
スタ121で一時的に記憶されメモ1J10A’4;ア
ドレス指定する。5UBJECT命令はメモ1.ll0
Aから取り出され、データレジスタ12jに一時的に記
憶される。5UBJECT命令はバイトシフタ12にで
必要なだけシフトされ、それがORゲート12にの1つ
の入力を付勢する。
命令であると仮定する。EXECUTE命令は、EX、
、MODIFY、、5UBJECTINSTRUCTI
ON というフィールドを有し、GPR−AおよびGP
R−Bに関するアドレス情報および変位値を含む。EX
はその命令がEXECUTE命令であることを示す本の
である。MODEFYは修飾フィールドである。5UB
JECTINSTRUCTIONはメモリ10Aに5U
BJECT命令が記憶されていることを示すものである
。変位レジスタ12Sに記憶された変位値はライン12
Mを介しALU12fを付勢する。GPR−Aアドレス
制御部12c2およびGPR−Bアドレス制御部12c
6から発生される信号(アドレス情報)はライン12e
を介してG I) R〜AおよびGPR−Bを付勢する
。GPRA:16よびGPR−Bの内容はライン12n
および’I2pを介してALU12fを付勢する。AL
U 12 fはGPR−AおよびGPR−Bの内容と、
変位値とを加算して別の和を生成する。この和はDレジ
スタ121で一時的に記憶されメモ1J10A’4;ア
ドレス指定する。5UBJECT命令はメモ1.ll0
Aから取り出され、データレジスタ12jに一時的に記
憶される。5UBJECT命令はバイトシフタ12にで
必要なだけシフトされ、それがORゲート12にの1つ
の入力を付勢する。
EXECUTE命令の修飾フィールド(MODIFY)
はライン12eを介してG I) R−A ’(jアド
レス指定する。このアドレス指定に応答してGPR−A
から特定のデータバイトが読み取られる。
はライン12eを介してG I) R−A ’(jアド
レス指定する。このアドレス指定に応答してGPR−A
から特定のデータバイトが読み取られる。
このデータバイトはORゲート12にのもう一方の入力
を付勢する。こうして、5UBJECT命令のバイトが
GPR−Aから読み取られたデークツ(イトに従って変
更される。ORゲー)12Aから発生される信号が変更
された5tJBJECT命令である。この変更された5
UBJECT命令は実行に備えて命令レジスタ12bに
記憶される。
を付勢する。こうして、5UBJECT命令のバイトが
GPR−Aから読み取られたデークツ(イトに従って変
更される。ORゲー)12Aから発生される信号が変更
された5tJBJECT命令である。この変更された5
UBJECT命令は実行に備えて命令レジスタ12bに
記憶される。
高速プロセッサ12が、並列実行モードで動作している
間に、ALU12fによる現命令の実行が完了する前に
次命令を実行する目的で汎用レジスタ群12dのアドレ
ス指定を始めるときは、GPRアドレス比較部12c4
は次命令の実行を延期する。以下、この延期について説
明する。GPRアドレス比較部12c4は実行すべき次
命令のアドレスと、実行中の現命令のアドレス(GPR
〜Aアドレス制御部12c2の出力)とを比較する。こ
れらのアドレスが等しいときは、GPRアドレス比較部
12c4は一致信号(並列処理減勢信号)を発生する。
間に、ALU12fによる現命令の実行が完了する前に
次命令を実行する目的で汎用レジスタ群12dのアドレ
ス指定を始めるときは、GPRアドレス比較部12c4
は次命令の実行を延期する。以下、この延期について説
明する。GPRアドレス比較部12c4は実行すべき次
命令のアドレスと、実行中の現命令のアドレス(GPR
〜Aアドレス制御部12c2の出力)とを比較する。こ
れらのアドレスが等しいときは、GPRアドレス比較部
12c4は一致信号(並列処理減勢信号)を発生する。
この一致信号(は、(a)ライン12eを介する命令処
理部12cの汎用レジスタ群12dのアドレス指定を禁
止し、(b)Aレジスタ12gおよびBレジスタ12h
を減勢し、(C)オペコード処理部12c1の次命令の
事前テコードを禁止する。以上のようにして、GPRア
トt/ス比較部12c4は、現命令の実行が完了するま
で、次命令の実行を延期する。
理部12cの汎用レジスタ群12dのアドレス指定を禁
止し、(b)Aレジスタ12gおよびBレジスタ12h
を減勢し、(C)オペコード処理部12c1の次命令の
事前テコードを禁止する。以上のようにして、GPRア
トt/ス比較部12c4は、現命令の実行が完了するま
で、次命令の実行を延期する。
GPR−Aアドレス制御部12c2が信号(GPR−A
の場所を表わす)を発生すると、その場所のアドレスは
命令再試行バッファ12c5に記憶される。このアドレ
スの内容に対応する第1オペランドも、Aレジスタ12
gから命令再試行バッファ12c5に記憶される。命令
を再実行しなげればならない場合、すなわち、マシンチ
ェックが発生したときは、命令再試行バッファ12c5
に第1オペランドが記憶されているので、それを使用す
ることができる。GPR−AおよびGPR−Bの第1オ
ペランドに対応する場所には命令を実行した結果が入っ
ているので、GPR−Aには第1オペランドは記憶され
ない。GPR−AおよびGPR−Bの第2オペランドに
対応する場所には命令の結果は入っていないので、GP
R−AおよびG P R−Bには依然として第2オペラ
ンドが記憶されておりこれを使用することができる。
の場所を表わす)を発生すると、その場所のアドレスは
命令再試行バッファ12c5に記憶される。このアドレ
スの内容に対応する第1オペランドも、Aレジスタ12
gから命令再試行バッファ12c5に記憶される。命令
を再実行しなげればならない場合、すなわち、マシンチ
ェックが発生したときは、命令再試行バッファ12c5
に第1オペランドが記憶されているので、それを使用す
ることができる。GPR−AおよびGPR−Bの第1オ
ペランドに対応する場所には命令を実行した結果が入っ
ているので、GPR−Aには第1オペランドは記憶され
ない。GPR−AおよびGPR−Bの第2オペランドに
対応する場所には命令の結果は入っていないので、GP
R−AおよびG P R−Bには依然として第2オペラ
ンドが記憶されておりこれを使用することができる。
GPR−AおよびGPR−Bの内容はライン12Q11
2R1データレジスタ12J1およびバイトシフタ12
Kを介してメモ!J 10 Aに記憶される。
2R1データレジスタ12J1およびバイトシフタ12
Kを介してメモ!J 10 Aに記憶される。
オペコード処理部12c1の機能的な動作を、以下、表
1および第5図を参照しながら説明する。
1および第5図を参照しながら説明する。
第5図において、オペコードデコーダ12C1(C)は
表1に示す命令’BC’、”L”、および”ST”、
(オペコードはそれぞれ“47”、“58”、および”
50”)をそれぞれデコードしこれに応答するよう設け
られている。たとえば、命令レジスタ12bに記憶され
た命令が’ B C”命令(オペコードは’47’ )
であるとすると、NORグー)12c1(A)の入力に
接続された第1のオペコードデコーダ12c1(C)だ
けが応答する。第1のオペコードデコーダ12c1(C
)(図中に対応するオペコード’47’を記す)が出力
信号を発生する。他のオペコードデコーダは出力信号を
発生することはできない。この出力信号がノ・イレベル
信号(2進値1)であるとすると、NORゲート12
C1(A)はライン12tを介してローレベル信号(2
進値0)を発生する。前述のように’EC”命令は・簡
単かつ実行頻度大・の命令である。ライン12tを介す
る制御信号がローレベルであるから、主プロセツサ10
Bは’B C’命令の実行を禁止される。したがって高
速プロセッサ12がこの命令を実行する。ところで命令
レジスタ12bに記憶された命令が”xc”命令(オペ
コードは“’D7”)であるときは、どのオペコードデ
コーダ12 c 1 (C)も応答しない。したがって
どのオペコードデコーダも出力信号(ハイレベル)を発
生しないのでORグー)12CI(ト)はハイレベル信
号を発生する。ORグー)12CI(5)がライン12
t7介してハイレベル信号を発生するので、主プロセツ
サ10Bが”XC1命令を実行する。
表1に示す命令’BC’、”L”、および”ST”、
(オペコードはそれぞれ“47”、“58”、および”
50”)をそれぞれデコードしこれに応答するよう設け
られている。たとえば、命令レジスタ12bに記憶され
た命令が’ B C”命令(オペコードは’47’ )
であるとすると、NORグー)12c1(A)の入力に
接続された第1のオペコードデコーダ12c1(C)だ
けが応答する。第1のオペコードデコーダ12c1(C
)(図中に対応するオペコード’47’を記す)が出力
信号を発生する。他のオペコードデコーダは出力信号を
発生することはできない。この出力信号がノ・イレベル
信号(2進値1)であるとすると、NORゲート12
C1(A)はライン12tを介してローレベル信号(2
進値0)を発生する。前述のように’EC”命令は・簡
単かつ実行頻度大・の命令である。ライン12tを介す
る制御信号がローレベルであるから、主プロセツサ10
Bは’B C’命令の実行を禁止される。したがって高
速プロセッサ12がこの命令を実行する。ところで命令
レジスタ12bに記憶された命令が”xc”命令(オペ
コードは“’D7”)であるときは、どのオペコードデ
コーダ12 c 1 (C)も応答しない。したがって
どのオペコードデコーダも出力信号(ハイレベル)を発
生しないのでORグー)12CI(ト)はハイレベル信
号を発生する。ORグー)12CI(5)がライン12
t7介してハイレベル信号を発生するので、主プロセツ
サ10Bが”XC1命令を実行する。
前述のように・xc”命令は・複雑かつ実行頻度小゛の
命令である。このときは高速プロセッサ12は・XC・
命令の実行を禁止される。
命令である。このときは高速プロセッサ12は・XC・
命令の実行を禁止される。
以上説明したように本発明によれば、命令セットの命令
の実行に関する処理時間が大幅に減少されるのでコンピ
ュータシステムの性能が向上する。
の実行に関する処理時間が大幅に減少されるのでコンピ
ュータシステムの性能が向上する。
第1図は本発明を利用するデータ処理システムを簡略的
に示すブロック図、第2図は本発明に従った高速プロセ
ッサを示すブロック図、第3図は高速プロセッサの命令
処理部を示すブロック図、第4図は高速プロセッサの汎
用レジスタ群を示すブロック図、第5図は命令処理部の
オペコード処理部を示すブロック図である。 出願人インター)ツヨナル・ビレネス・マシーンズ・コ
ーポレーション+IQ 第1図 第2図
に示すブロック図、第2図は本発明に従った高速プロセ
ッサを示すブロック図、第3図は高速プロセッサの命令
処理部を示すブロック図、第4図は高速プロセッサの汎
用レジスタ群を示すブロック図、第5図は命令処理部の
オペコード処理部を示すブロック図である。 出願人インター)ツヨナル・ビレネス・マシーンズ・コ
ーポレーション+IQ 第1図 第2図
Claims (1)
- 【特許請求の範囲】 命令セットを実行する処理システムであって、前記命令
セットのうち簡単でしかも実行される頻度の大きい命令
のサブセラトラ高速に実行する第1の処理手段と、 該第1の処理手段に接続され、前記命令セットのうち前
記サブセット以外の命令を実行する第2の処理手段と、 を有することを特徴とする処理システム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US59577584A | 1984-04-02 | 1984-04-02 | |
US595775 | 1984-04-02 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS60214069A true JPS60214069A (ja) | 1985-10-26 |
Family
ID=24384632
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP59267637A Pending JPS60214069A (ja) | 1984-04-02 | 1984-12-20 | 処理システム |
Country Status (5)
Country | Link |
---|---|
EP (1) | EP0157306B1 (ja) |
JP (1) | JPS60214069A (ja) |
AT (1) | ATE64019T1 (ja) |
DE (1) | DE3582944D1 (ja) |
IN (1) | IN165115B (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2678400B1 (fr) | 1991-06-27 | 1995-08-04 | Texas Instruments France | Processeur de protocole destine a l'execution d'un ensemble d'instructions en un nombre reduit d'operation. |
US7197623B1 (en) | 1991-06-27 | 2007-03-27 | Texas Instruments Incorporated | Multiple processor cellular radio |
US6000026A (en) * | 1992-06-22 | 1999-12-07 | Texas Instrument Incorporated | Multiple processor apparatus having a protocol processor intended for the execution of a collection of instructions in a reduced number of operations |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS52119137A (en) * | 1976-03-31 | 1977-10-06 | Mitsubishi Electric Corp | Multi-processor system |
JPS5532118A (en) * | 1978-08-28 | 1980-03-06 | Fujitsu Ltd | Data processing system |
JPS5730068A (en) * | 1980-07-30 | 1982-02-18 | Fujitsu Ltd | Data processing system |
JPS57212541A (en) * | 1981-06-24 | 1982-12-27 | Nec Corp | Operational processor |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NL286251A (ja) * | 1961-12-04 | |||
US4085450A (en) * | 1976-12-29 | 1978-04-18 | Burroughs Corporation | Performance invarient execution unit for non-communicative instructions |
US4395758A (en) * | 1979-12-10 | 1983-07-26 | Digital Equipment Corporation | Accelerator processor for a data processing system |
-
1984
- 1984-12-20 JP JP59267637A patent/JPS60214069A/ja active Pending
-
1985
- 1985-03-22 AT AT85103348T patent/ATE64019T1/de not_active IP Right Cessation
- 1985-03-22 DE DE8585103348T patent/DE3582944D1/de not_active Expired - Lifetime
- 1985-03-22 EP EP85103348A patent/EP0157306B1/en not_active Expired - Lifetime
- 1985-07-03 IN IN505/MAS/85A patent/IN165115B/en unknown
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS52119137A (en) * | 1976-03-31 | 1977-10-06 | Mitsubishi Electric Corp | Multi-processor system |
JPS5532118A (en) * | 1978-08-28 | 1980-03-06 | Fujitsu Ltd | Data processing system |
JPS5730068A (en) * | 1980-07-30 | 1982-02-18 | Fujitsu Ltd | Data processing system |
JPS57212541A (en) * | 1981-06-24 | 1982-12-27 | Nec Corp | Operational processor |
Also Published As
Publication number | Publication date |
---|---|
EP0157306A3 (en) | 1986-07-23 |
DE3582944D1 (de) | 1991-07-04 |
IN165115B (ja) | 1989-08-19 |
EP0157306A2 (en) | 1985-10-09 |
ATE64019T1 (de) | 1991-06-15 |
EP0157306B1 (en) | 1991-05-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TW388811B (en) | Out-of-pipeline trace buffer for instruction replay following misspeculation | |
US8127078B2 (en) | High performance unaligned cache access | |
US5016169A (en) | Data processor capable of correctly re-executing instructions | |
US4179731A (en) | Microprogrammed control system | |
US9323529B2 (en) | Reducing register read ports for register pairs | |
JP2008299795A (ja) | 分岐予測制御装置及びその方法 | |
US5003458A (en) | Suspended instruction restart processing system based on a checkpoint microprogram address | |
JPS62197830A (ja) | デ−タ処理システム | |
US20110154000A1 (en) | Adaptive optimized compare-exchange operation | |
US4841439A (en) | Method for restarting execution interrupted due to page fault in a data processing system | |
JPH0673105B2 (ja) | 命令パイプライン方式のマイクロプロセッサ | |
US3553655A (en) | Short forward conditional skip hardware | |
JPS60214069A (ja) | 処理システム | |
JPH03129432A (ja) | 分岐制御回路 | |
CN117008975A (zh) | 一种指令融合分割方法、处理器核和处理器 | |
JPS5943447A (ja) | デ−タ処理装置 | |
CN111813447B (zh) | 一种数据拼接指令的处理方法和处理装置 | |
JPS61110238A (ja) | マイクロプログラム式並列プロセツサ | |
JPH02123442A (ja) | 高速化メモリ | |
JP2581565B2 (ja) | ガード付命令を実行するデータ処理装置 | |
US9298459B2 (en) | Managing register pairing | |
JP3180803B2 (ja) | スーパースカラプロセッサ | |
CN113254083B (zh) | 指令处理方法、指令处理系统及处理器、芯片 | |
JPH0133856B2 (ja) | ||
JP2555427B2 (ja) | 命令実行のシリアライズ制御方式 |