JPH01194031A - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
JPH01194031A
JPH01194031A JP1706688A JP1706688A JPH01194031A JP H01194031 A JPH01194031 A JP H01194031A JP 1706688 A JP1706688 A JP 1706688A JP 1706688 A JP1706688 A JP 1706688A JP H01194031 A JPH01194031 A JP H01194031A
Authority
JP
Japan
Prior art keywords
instruction
instructions
signal
execution
input
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP1706688A
Other languages
English (en)
Other versions
JP3161711B2 (ja
Inventor
Yoichi Shintani
洋一 新谷
Kazunori Kuriyama
和則 栗山
Toru Shonai
亨 庄内
Eiki Kamata
釜田 栄樹
Kiyoshi Inoue
潔 井上
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP01706688A priority Critical patent/JP3161711B2/ja
Publication of JPH01194031A publication Critical patent/JPH01194031A/ja
Application granted granted Critical
Publication of JP3161711B2 publication Critical patent/JP3161711B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はいわゆる汎用コンピュータ等の、プログラムか
らみて概念的に命令が一つずつ実行される情報処理装置
に関わり、特に処理速度向上のために複数の演算器にて
複数の命令を同時に実行する上で重要となる方式に関す
る。
〔従来の技術〕
概念的に命令が一つずつ実行されるコンピュータの内、
並列演算によって高速化を図った例として、I BM3
60/91に関する文献(R,M。
Tomasule  An  Efflcient  
A1gorithw*  forExploiting
 Multiple Arithmetic unit
s”、 IBMJournal、1967、 Jan)
や日本公開特許昭58−176751“命令語解読ユニ
ット”に記載の技術がある。これらのコンピュータでは
、概念的に順序付けられた複数命令が異なる演算器で実
行されるため結果の書き込みが概念的順序と異なる場合
がある。従って割り込みが発生した場合割り込みの原因
となった命令に対し、どの命令まで実行されたかが一般
的には識別回置である。また分岐命令で分岐判定が下る
までの間予側判定に基づく実行を行なう方式を用いる場
合、予測失敗時に予測命令による結果の誤った書き込み
が生じると、その回復処理が必要となる。
〔発明が解決しようとする課題〕
米国IBM社の370アーキテクチャ−に準拠する情報
処理装置に於いては、上記のような結果の書き込み順序
の逆転はプログラムから観測されてはならない、従って
上記のような複数演算器を有し命令の同時もしくは追い
抜き実行の有り得る情報処理装置では、370アーキテ
クチャ−における命令実行順序仕様に準拠するためには
結果の書き込みによって失われる記憶装置のフィールド
上のデータとそのアドレスを個々の命令実行に際して予
め待避しておき、命令実行のオーバランが発生し該命令
の実行を無効化する必要が生じた場合は待避したデータ
を再び元のフィールドに回復するといった処理を行なう
必要がある。この方法は日本特公昭56−40382 
 r情報処理装置」又は対応するUS特許4 、385
 、365にて開示されているように従来でも類似の目
的のために使用することがある。しかし、この方法は制
御が複雑であること、データとアドレスの待避レジスタ
が必要でコストが高くなること、データの回復に時間を
要するので、この命令実行の無効化が頻発すると処理装
置全体の性能を返って下げる可能性がある等の問題点が
ある。またさらに、370アーキテクチャ−における主
記憶に対して書き込みのオーバランが発生すると、フィ
ールドの回復前に他のプロセッサやチャネルからオーバ
ランして書き込まれたデータを参照される可能性があり
、その場合は上記待避回復による順序保証方式によって
も該アーキテクチャ−による順序規定に準拠することが
できない。
上述のような命令実行のオーバランが発生するのは命令
実行に付随する割り込みが起こる場合や、分岐命令の後
続命令を予測実行していたときに予測が誤っていたこと
が判定された場合等である。
本発明は複数の演算器を有し複数の命令を効率的に実行
できる情報処理装置を提供することを目的とする。
さらに本発明は、複数の命令を並列に実行でき、かつ命
令の実行の中断を簡単に行える情報処理装置を提供する
ことを他の目的とする。
〔課題を解決するための手段〕
上記目的は、本発明に於いては、同時に実行する複数の
命令の間では結果の書き込みの追い抜きが発生しないよ
う制御することで実現する。この為、以下に述べるよう
な命令実行に関する制御手段を用いる。
(1)概念的実行順序の観点から連続している複数の命
令を同時に演算器にセットアツプする命令セットアツプ
手段。ただし、分岐命令の後続命令は分岐の成立側、不
成立側のいずれであっても該分岐命令に連続すると見な
す。
(2)同時にセットアツプする複数の命令のうちの任意
の命令に着目した場合、該命令の演算実行に付随し該命
令もしくはその後続命令を無効化する要因が検出される
可韻性のある最終演算ステージより前に書き込みを実行
する後続命令が同時にセットアツプすることのないよう
、演算器ヘセットアツプする命令の組合せを制限するセ
ットアツプ命令制限手段。
(3)同時にセットアツプした複数命令の実行に当たっ
て、何らかの命令で実行待ち合わせ要因が発生したとき
、書き込みを行なう可能性のある全ての後続命令の実行
を待ち合わせるよう制御する後続命令実行待ち合わせ手
段。
(4)同時にセットアツプした複数の命令のうちのいず
れかの命令の演算実行に付随して該命令もしくはその後
続命令を無効化する要因が検出された場合、該命令及び
同時に実行している全ての後続命令の内、無効化すべき
全ての命令実行をそれらの書き込みステージまでに抑止
する後続命令実行抑止手段。
〔作用〕
上記(1)〜(4)で述べた手段を設けることにより、
同時に演算実行されている複数命令の何れに於いても自
命令もしくは後続命令を無効化する要因がない場合はこ
れ等は同時に実行が終了するので処理時間は大幅に短縮
される。もし、いずれかで無効化要因が検出されたとき
には書き込みのオーバランがおきないので、上で述べた
ような回復動作無しに引き続き正しい命令もしくは割り
込み処理等を直ちに開始することができる。
〔実施例〕
以下本発明に好適な実施例を図面を用いて説明する。以
下の実施例では日立製作所のMシリーズアーキテクチャ
に基づく計算機を例に取り説明を行なう。
上記アーキテクチャにおける命令フォーマットの例を第
9図に示す、(1)はロード命令、ストア命令、四則演
算命令等に用いられる命令形式の例である。OPは命令
コードであり、命令の種類を示す、R1は第1オペラン
ドを格納する汎用レジスタの番号を示す、R2,B2は
第2オペランドのアドレスを生成するために用いるイン
デックスレジスタ、及びペースレジスタの番号を示す、
インデックスレジスタ、及びペースレジスタは汎用レジ
スタを指定する。D2はアドレスを生成するために用い
るアドレス変位である。オペランドアドレスはインデッ
クスレジスタ、ペースレジスタ、およびアドレス変位を
加算して生成される。加算命令は第2オペランドアドレ
ス上の主記憶データを読みだし、R1で指定される汎用
レジスタ上の第1オペランドと加算し、結果を再び汎用
レジスタR1上に格納する。(2)は条件分岐命令に用
いられる命令形式の例である。OPは命令コードであり
、命令の種類を示す、Mlは分岐成立となる条件コード
の値を指定するマスク値である。x2゜B2.D2は(
1)と同様に第2オペランドアドレスを指定する1分岐
成立の場合第2オペランドアドレス上の命令から実行を
継続する。
第1図は本発明による計算機の全体構成を示す。
1は記憶装置、2は命令制御ユニット、3は演算ユニッ
ト、4.5.6はn個の演算器El、E2゜、、、、、
En、7は演算制御ユニット、8は入力交換回路、9は
出力交換回路、そして10は入出力装置である。
記憶装置1はプログラムやデータを保持し、さらにこれ
等の読みだし、書き込みの制御を行い従来技術により構
成する。また入出力装置10は記憶装置1に対し外部デ
ータの書き込みと、外部へのデータ読みだしを要求する
が、これも従来技術にて構成する。命令制御ユニット2
は、複数の命令を記憶装置1から読みだし、同時に最大
p個の命令の解読を行ない、これらの命令に必要なオペ
ランドの読みだしを同時に行なう、このため命令制御ユ
ニット2から命令読みだしアドレスMAIが記憶装置t
1に送出され、命令列MDIが記憶装置llから命令制
御ユニット2に送出される。また最大p個のオペランド
アドレスMAi(i−1〜p)が同時に2から1に送出
され、読みだされた9個のオペランドデータMDOi(
i=1〜p)が1から2に送出される*MAi(i=1
〜p)の送出とともに、後述の命令キュー(211(第
2図))の9個の入力ポインタQIPi  (i=1〜
p)が命令制御ユニット2から記憶装置1に送出され、
さらにオペランドデータMDOi(i=1〜p)の送出
に伴って、データの送出を示すアドバンス信号ADVi
(i=1〜p)及び各データの一時格納場所である後述
のオペランドバッファ(216(第2図))の番号0B
NOi (i=1〜p)が記憶袋w1から命令制御ユニ
ット2に送出される0本実施例では0BNOi (i=
1〜p)としては順に入力ポインタQIPi  (i=
1〜P)と同じ値を返す、これは後述するように本実施
例では命令キュー211(第2図)とオペランドバッフ
ァ216(第2図)を1対1に対応させ、同一の入出カ
ポインタにより制御するからである。
命令制御ユニット2は解読の完了した命令の中から実行
順に連続した最大m個を選択し、これ等及びこれ等の付
随情報を演算ユニット3に同時にセットアツプする。こ
のため、各情報のセットアツプを行なうための信号線群
をm命令分としてm組設ける。これらをセットアツプボ
ートi (i=1〜m)と呼ぶ、入力交換回路8にセッ
トアツプする情報には、セットアツプボートi (i=
1〜m)に対応して、命令lN5Ti(i=1〜m)。
レジスタオペランドRDi  (i=1〜m)、メモリ
オペランドMDi(i=1〜m)、オペランドアドレス
MAi(i=1〜m)、そして書き込みレジスタ番号R
WAi(i=1〜m)がある、また演算制御ユニット7
にセットアツプする情報には、セットアツプボートi 
(i=1〜m)によりセットアツプする命令のうち有効
なものを示す有効命令信号I RD Y i (i =
 1〜mL各命令の演算を実行させる演算器番号ENO
i(i=1〜m)。
条件分岐命令であることを示す解読情報BCi(i=1
〜m)2条件分岐命令のM1フィールド(マスク) B
 CM i  (i = 1〜m ) 、そしてメモリ
オペランドの読みたしが遅れていることを示すオペラン
ド待ち信号A D V W i (i = 1〜m)が
ある、命令制御ユニット2は上記命令セットアツプ制御
を行なうため、演算制御ユニット7からセットアツプボ
ート1(i=1〜m)毎にそのセットアツプ完了を示す
信号0BTi (i=1〜m)、同時にセットアツプさ
れた命令の個々の演算開始時刻のうち最後の時刻を示す
最終開始時刻信号LBOP、そして同時にセットアツプ
サれた命令の個数を示す信号LINOを受は取る。さら
に命令制御ユニット2は演算制御ユニット7から条件分
岐命令の分岐成立信号TKNと、割り込みの発生を示す
信号INTを受は取る。
命令制御ユニット2は出力交換回路9からセットアツプ
ポートi (i=1〜m)に対応した演算結果EDi 
(i=1〜m)とそのレジスタ書き込み指令RWCi(
i=1〜m)、書き込みレジスタ番号RWA i  (
i = 1〜m)を受は取り、これに従い汎用レジスタ
群200にこれらの結果の書き込みを行なう。
演算器4,5.6はそれぞれ特定の種類の命令グループ
のみ実行可能なものあるいは全てを実行可能とするもの
のいずれかで構成するものとする。
各演算器には演算に必要な入力データと演算実行制御情
報が入力交換回路8から送出される。演算器Ei (i
=1〜n)への入力データとしては、命令コードlN5
TEi、レジスタオペランドRDE i 、メモリオペ
ランドMDEi、オペランドアドレスMAEi、Wき込
みレジスタ番号RWAEiがあり、演算実行制御情報と
しては、セットアツプ完了信号0BTEi、演算実行許
可信号EXEi及び演算実行の取り消し信号RESEX
がある。各演算器Eiからは演算の出力データ及び演算
制御情報が出力交換回路9に送出される。
演算器Eiからの出力としては、演算結果EDEi 。
結果のレジスタ書き込み指令RWCEi、書き込みレジ
スタ番号RWAEi、結果のメモリ書き込み指令5TC
Ei、書き込みメモリアドレス5TAEi 。
条件コードの変更を示す信号CC3Ei、そして条件コ
ードCCEiがあり、また演算制御情報としては演算の
終了を示す信号EOPEi、完了型割り完了条割の発生
を示す信号INTCEi、そして抑止型割り込み条件の
発生を示す信号INTSEiがある。
全ての演算器Ei (i=1〜n)には、演算制御ユニ
ット7から演算実行取り消し信号RESを入力する。取
消信号はRESは割り込み条件が発生したときもしくは
条件分岐命令で分岐予測が失敗したときに′1′となり
、このとき、各演算器Ei (i=1〜n)は後続命令
の演算実行を取り消す、特にレジスタ書き込み指令RW
CEi(i=1〜n)、及びメモリ書き込み指令MWC
Ei(i=1〜n)を抑止し、取り消すべき命令による
結果の書き込みが生じないようにする。またこの時全て
の演算器Ei (i=1〜n)は演算終了信号EOPE
i (i=1〜n)を11′とする。
演算器Eiはセットアツプ完了信号OB T E iに
同期して入力データを取り込む、以後命令やオペランド
の条件等により工ないし複数サイクルをかけて演算実行
を行なうが、各サイクルの実行は信号EXEiが′1′
のときのみ許可される。信号EXEiが′0′のときは
演算実行は待ち状態になる。信号EXEiが′O′とな
るのは例えば必要なメモリオペランドが到着していない
ときである。また、RESEi信号が′1′となった場
合、演算器Eiは直ちに演算実行を取り消す、この時レ
ジスタ書き込み指令RWCEi、及びメモリ書き込み指
令MWCEiを抑止し、取り消すべき命令による結果の
書き込みが生じないようにし、また演算終了信号EOP
Eiを1とする6個々の演算器の実行制御は複雑な命令
の演算を行なうものはよく知られたマイクロプログラム
制御によって、また簡単な命令の演算を行なうものは通
常の論理回路による制御等で行なえばよい。
第11図は第1番目の演算器Eiの構成例を示す、11
01.1102は演算数を保持するワークレジスタであ
る。1101には入力交換回路よりレジスタオペランド
RDEiを、1102には入力交換回路よりメモリオペ
ランドMDEiを、さらに両者に命令セットアツプ完了
信号0BTE i信号を入力する。ワークレジスタ11
01,1102は信号0BTEiが“1′となったとき
、それぞれ信RDEi、MDEiを取り込む、1103
は入力交換回路から0BTEi信号を受は取り、これが
′1′の時オペランドアドレスMAEi、書き込みレジ
スタアドレスRWAEiを取り込む。
1104は加減算器、シフタ、論理演算器等からなるA
LUである。ALUI 104にはワークレジスタ11
01,1102から演算数を、ALU制御回路1107
からALU制御信号を入力し、各命令の演算を行なう、
ワークレジスタ1101゜1102にはALUの出力デ
ータパスを接続し、複数サイクルに及ぶ演算を可能とす
る。このためALU制御回路1107からはワークレジ
スタ1101.1102へのデータ取り込み制御信号を
入力する。ALU制御回路1107には0BTEi 。
I N5TE i 、 1EXEi信号を入力する。A
LU制御回路1107はマイクロプログラムとその実行
制御回路からなる従来技術で構成し、○BTEi信号が
61′となったとき、I N S T E i信号を取
り込み、この命令に対応したマイクロプログラムの最初
のマイクロ命令を読み出す、演算ステージが1サイクル
で終了する命令の場合、この最初のマイクロ命令に演算
終了を、また複数サイクルを要する場合は最後の演算ス
テージを制御するマイクロ命令に演算終了を指定し、こ
れをEOPEi信号として出力する。マイクロ命令は各
演算サイクル毎のALU制御を指定するが、指定に従っ
て実際に実行するのはEXEi信号が11′となったと
きである。1108は条件コード生成回路であり、AL
Uから演算結果、ALU制御回路1107から条件コー
ド生成情報を入力し、演算ステージより1サイクル後に
条件コードCCEiを生成する。
1109は割り込み条件検出回路でありALUからの演
算結果とALU制御回路1107からの割り込み検出制
御情報を入力し演算ステージより1サイクル後に割り込
み条件発生信号I N T CE i 。
INTSEiを生成する。1110は書き込み制御回路
であり、ALU制御回路1107から結果書き込み制御
情報を入力し演算ステージより1サイクル後に5TCE
i、RWCEi、CC3Ei信号を生成する。また制御
回路111oには入力交換回路8から信号RESEi、
演算制御ユニット7から信号RESを入力し、これらの
うち何れが11′であっても、5TCEi、RWCEi
。
CC3Eiの各信号を直ちに′0′に抑止する。
信号RES、及びRESiはさらにALU制御回路11
07にも入力し、これ等のうち何れが51′となっても
1107によるALU制御をキャンセルする。1105
.1106は演算結果、書き込みメモリアドレス、書き
込みレジスタ番号を保持するパイプラインレジスタであ
り、演算ステージより1サイクル後にE D E i 
、 5TAEi、 RVAEiを出力する。El−nの
何れの演算器に於いてもALU制御回路1107.書込
み制御回路1110に相当する回路を有し、RES、T
ESi信号に対する動作は同様である。
演算制御ユニット7は上記複数の演算器による命令の並
列実行を制御する。すなわち7は、演算終了信号EOP
i(i=1〜m)を監視し、現在演算実行中の全ての命
令が終了した時に、有効命令信号I RDY i (i
 = 1〜m)で示される最大m個の後続命令に対しセ
ットアツプ完了信号0BTi(i=1〜m)を発行し、
これを命令制御ユニット2と入力交換回路8に送出する
。またこのとき命令制御ユニット2から送出される演算
器番号ENOi (i=1〜m)を取り込み、セットア
ツプした命令の演算実行中これを保持し、入力交換回路
8及び出力交換回路9に送出する。
演算制御ユニット7はオペランド待ち信号ADVWi 
(i=1〜m)を監視し、メモリオペランドの到着して
いない命令がある場合その到着まで、EXi (i=1
〜m)信号のうち該命令及びその後続命令の演算実行許
可信号を′O′とする。この制御により、本発明におい
ては該命令の後続命令の演算実行が先に始まることを防
止する。
演算制御ユニット7は条件分岐命令の分岐判定を行ない
、分岐成立信号TKNを命令制御ユニット2に送出する
。このため出力交換回路9から条件コード変更信号CC
8i  (i=1〜m)、条件コードCCi  (i=
l〜m)を受は取る0本実施例では条件分岐命令が解読
された時点では、従来の計算機でよく行なわれるように
該分岐命令は不成立となるものと予測し、ひき続く命令
を解読していく、従って分岐成立信号TKNが11′と
なったことは、予測が失敗したことを意味するので、直
ちに現在命令制御ユニット2にて解読中の命令を取り消
し、次にターゲットストリーム上の命令解読を始める。
また現在演算実行中の命令のうち該分岐命令の後続命令
に対し演算実行の取り消しを示す信号RESi(i=l
〜m)を入力交換回路8に送出する。
演算制御ユニット7は出力交換回路9から演算実行中の
命令についての割り込み条件発生信号INTCi (i
=1〜m)及びI NTS i (i =1〜m)を受
取り、完了型割り込み条件が発生した場合、割り込み条
件の発生した命令の後続命令の演算実行を取り消し、抑
止型割り込み条件が発生した場合、割り込み条件の発生
した命令とその後続命令の演算実行を取り消すよう取消
信号RESi (i=1〜m)信号を発行する。さらに
直後にセットアツプした後続命令グループの演算実行を
取り消すため、取消指示信号RESを全ての演算器に対
し送出する。また同時に命令制御ユニット2に対し割込
み信号INTを送出する。
入力交換回路8はセットアツプポート1(i=1〜m)
を介してセットアツプするm個の命令に対し、上記のセ
ットアツプデータをそれぞれの命令を演算実行する演算
器に振り分けて送出する。
このために演算制御ユニット7からセットアツプポート
対応に演算器番号ENOi(i=1〜m)を受は取る。
出力交換回路9には演算器Ei  (i=1〜n)から
上記出力データや演算制御情報を入力しセットアツプポ
ートi (i=1〜m)の順に並べかえて出力する。こ
のために演算制御ユニット7がら演算器番号ENOi(
i=1〜m)を受は取る。
出力情報は上記のように各ユニットに送出するが、さら
に、演算結果のうち記憶袋fftlに書き込むものに対
し、そのデータEDi (i=1〜m)、アドレス5T
Ai(i=1〜m)、及びメモリ書き込み指令5TCi
(i=1〜m)を記憶装置1に送出する。記憶装置ll
はこれらを受は取りメモリに書き込みをおこなう。
第2図は命令制御ユニット2の詳細構成を示す。
201は命令読み出し回路であり、先読み命令バッファ
202の空き状態を監視し、空きがあるときは命令読み
出しアドレスMAIを記憶装置1に送出し、読みだされ
た命令データMDIを命令バッファ202にセットとす
る。−回の命令読み出しで通常は連続する数命令を得る
。従って、先読み命令バッファ202は少なくとも一回
の読み出しで得られる命令の分だけの大きさを有する様
構成する。命令バッファとして分岐命令のターゲット命
令列を格納するためにもう一つの命令バッファ203が
設けら九ている0分岐命令で分岐成立が判定されないう
ちはセレクタ204は202を選択し命令読みだし回路
201に送出する1分岐命令で分岐成立が判定されると
分岐成功信号TKNを演算制御ユニットからセレクタ2
04に送出し、これに応答して以後セレクタ204は命
令バッファ203を選択しこれを命令読出し回路201
に送出する0以上の命令読みだし制御は通常の汎用計算
機では最も典型的なものであり、容易に従来技術によっ
て構成することができる。
205〜206はp個の命令レジスタである。
命令読み出し回路201は、セレクタ204で選択した
命令バッファ202,203上の命令列から、連続した
p個の命令を切り出し命令レジスタ205から206に
順にセットする。このための命令読みだし回路201の
構成は日本公開特許昭58−176751“命令語解読
ユニット”に開示されているのと同様である。207〜
208はp個の命令解読器でありそれぞれ命令レジスタ
205〜206に対応して命令を解読し解読情報を出力
する。解読情報としてデコーダDECi(i=1〜p)
より順に、命令のインデックスレジスタ指定部XAi 
(i=1〜p)yベースレジスタ指定部BAi  (i
=1〜p)を汎用レジスタ群209に、アドレス変位部
DSPi (i=1〜p)をp個のアドレス加算器21
4〜215に、メモリオペランドを用いる命令であるこ
とを示す情報UOBi(i=1〜p)をオペランド待ち
制御回路210に送出する。さらに解読情報として、命
令コードlN5TDi  (i=1〜p)t レジスタ
オペランド番号RAi (i=1〜p)、演算結果を格
納するための書き込みレジスタ番号WAi(i=1〜p
)、命令の演算サイクル数E L i (i = 1〜
p)、その命令の演算が各演算器Ei(i=1−n)に
おいて実行可能である事を示す情報EISDi (i=
1〜p)、E2SDi(i=1〜P)*−−−+EnS
Di (i=1〜P)e条件分岐命令であることを示す
情報BCDi (i=l〜p)2条件分岐命令のマスク
値BCMDi (i=1〜p)のそれぞれを、命令キュ
ー211に送出する。命令の解読が完了したことを示す
信号DSi(i−1〜p)をデコーダDECi (i−
1〜p)から命令キュー制御回路212.命令セットア
ツプ制御回路213.命令キュー211.オペランド待
ち制御回路210にそれぞれ送出する。
汎用レジスタ群209は命令で指定される16本の4バ
イトのレジスタからなる。デコーダ207〜208から
インデックスレジスタ指定部XAi(i=1〜p)tベ
ースレジスタ指定部B A 1(i=1〜p)を入力し
、指定された番号のレジスタを読みだし、インデックス
レジスタデータXDi  (i=1〜P)及びペースレ
ジスタデータBDi  (i=1〜p)として順にアド
レス加算器AAi  (i=1〜P)に送出する。汎用
レジスタ群209には命令待ちキュー211からm個の
セットアツプポート対応のレジスタオペランド番号RR
Ai  (i=1〜m)を入力し、これらに指定された
レジスタを読みだし、レジスタオペランドデータRD 
i (i = 1〜m)として入力交換回路8に送出す
る。さらに汎用レジスタ群209には出力交換回路9よ
りm個のセットアツプボート対応の演算結果EDi(i
=1〜m)、書き込みレジスタ番号RWA i (i 
= 1〜m)及びレジスタ書き込み指令RWCi(i=
1〜m)を入力し、指定されたレジスタにこれらを書き
込む、汎用レジスタ群209は上記のように、同時に複
数の読みだし、書き込みを行なうが、これは従来により
容易に構成可能である。
アドレス加算器AAi(i=1〜p)には、それぞれ、
インデックスレジスタデータXDi (i=INp)e
ベースレジスタデータBDi  (i=1〜p)tアド
レス変位DSPi (i=1〜p)を入力し、これ等の
加算結果をオペランドアドレスMAi(i=1〜p)と
して記憶装置1と命令キュー211に送出する。オペラ
ンドアドレスMAi(i=1〜p)は、該命令が分岐命
令でなければ、メモリオペランドのアドレスであり、記
憶袋W1から読み出したデータはデータ信号MDOi(
i=1〜p)によってオペランドバッファ216に送出
する。一方、該命令が分岐命令であった場合はメモリオ
ペランドアドレスM A i (i = 1〜p)のう
ち対応するものはターゲット命令アドレスであり、記憶
袋W11から読み出したデータはデータ信号MDIによ
って命令バッファ202もしくは203に送出する。
命令キュー211は上記命令解読情報を保持するに命令
骨のキューレジスタとその入出力回路からなる。にの値
は少なくとも上記p、mの何れよりも下回らないように
する。命令キュー211には、デコーダDEdi(i=
1〜p)から2個の連続した命令の解読情報を入力しこ
れらを同時にキューイングする。この時実際にキューイ
ングする命令は対応するデコード完了信号DSi (i
=1〜p)信号の31′となっているものであり、この
とき、入力ポインタQIPi(i=1〜p)で示される
キューレジスタにそれぞれセットする。
入力ポインタQIPi (i=1〜P)の値は、命令待
ち行列内の最新の命令のキューレジスタの次から連続す
る2個のキューレジスタを順に示すようにする。なおに
番目のキューレジスタの次は1番目のキューレジスタが
連続するものとする。命令キュー211からは、キュー
内の最も古い命令から最大m個の連続した命令の解読情
報を同時に取り出す、このため、m個の出力ポインタQ
OPi (i=1〜P)の値は、待ち行列内の最も古い
命令から連続するm個のキューレジスタを順に示すよう
にする。出力ポインタQOPi(i=1〜m)で選ばれ
たm命令分の出力が上記m個のセットアツプボートの実
体である。このとき実際に取り出したと見なすのは、命
令セットアツプ制御回路213から出力する上記有効命
令信号I RDY 1(i=1〜m)が11″となって
いるものである。
命令待ち行列の出力として、命令コードTNST 1(
i=l〜m)pオペランドアドレスMAi(i=1〜m
)、書き込みレジスタ番号RWAi(i=1〜m)を入
力交換回路8へ、レジスタオペランド番号RRAi  
(i=1〜m)を汎用レジスタ209へ、条件分岐命令
表示BCi(i=1〜p)。
条件分岐命令のマスク値BCMi(i=1〜p)を演算
制御ユニット7へ、そして演算サイクル数E L i 
(i = 1〜m ) 、演算器Ei(i=1〜n)で
の実行可能性表示情報EISi (i=1〜m)。
E2Si (i=1〜m)t 、、、、EnSi (i
=1〜m)を命令セットアツプ制御回路213へそれぞ
れ送出する。
オペランドバッファ216は、記憶装置1から送出され
るオペランドデータMDOi(i=1〜p)を保持する
に個のバッファレジスタ(図示せず)とその入出力回路
からなる。216は記憶装置1からアドバンス信号AD
Vi(i=1〜p)を受は取ると、付随して送出される
オペランド番号0BNOi (i=1〜p)で示される
バッファレジスタにオペランドデータMDOi(i=1
〜p)を格納する。216は同時に最大2個のデータを
格納する0本実施例ではに個のバッファレジスタは上記
命令キューのに個のキューレジスタに対応している。す
なわちメモリオペランドを必要とする命令に関して、解
読情報を格納するキューレジスタとメモリオペランドを
格納するバッファレジスタとは同一番号のものを用いる
。
オペランドバッファ216は、セットアツプボート対応
に最大m個の命令のオペランドデータMDi(i=1〜
m)を同時に読みだし入力交換回路8に送出する。この
ため、オペランドバッファ216には命令キュー制御回
路212から命令キュー出カポインタQOPi (i=
1〜p)を入力する。
命令キュー制御回路212は命令キュー211のp個の
入力ポインタQIPi(i=1〜p)及びm個の出力ポ
インタQOPi(i=1〜m)を生成する。この制御回
路212はQIPi (i=1〜p)を命令セットアツ
プ制御回路213.命令キュー211.オペランドキュ
ー制御回路210、そして、記憶装置1へ送出する。制
御回路212は出力ポインタQOPi (i−1〜m)
を命令セットアツプ制御回路213.命令キュー211
゜オペランドキュー制御回路210、そしてオペランド
バッファ216に送出する。また、制御回路212には
デコーダDECi(i=1〜p)からデコード完了信号
DSi(i=1〜p)を、演算制御ユニット7から最終
開始時刻信号LBOP。
命令個数信号L I No、分岐成功信号TKN、そし
て割込み信号INTを入力する。命令キュー制御回路2
12のより詳細な構成を第8図にしめす。
801はQIPIの値を保持するレジスタである。
802〜803は定数値のインクリメンタであり、レジ
スタ801の値を入力し、これに、順に1゜−−−eP
  1を加算(ただしpを法とする)して得られる値を
入力ポインタQIP2−pとして出力する。804は入
力ポインタ更新回路であり、p個のデコード完了信号D
Si (i=1〜p)と入力ポインタQIPIを入力し
、分岐成功信号DSi (i=1〜p)のなかで1′と
なっている信号の数と入力ポインタQIPIの値をpを
法として加算し、結果をレジスタ801にセットする0
例えば同時に解読が完了した命令が2個であった場合、
信号DSL、DS2が1′でありDSj  (j=3〜
p)は0′である。このときこの2つの命令は入力ポイ
ンタQIPI、QIP2で示されるキューレジスタ(図
示せず)にその解読情報が格納される。そして、レジス
タ801の内容は2増加される。レジスタ801の初期
値は0とする。すなわち最初の命令の処理に当たって予
め値Oを設定しておく、805はORゲートであり、演
算制御ユニット7からの分岐成立信号TKN、及び割り
込み検出信号INTを入力しこれらの論理和を出力し、
これを入力ポインタ更新回路804及び出力ポインタ更
新回路806に送出する。出力ポインタ更新回路804
はORゲート805の出力値が11′となったとき、レ
ジスタ801を0に設定する。これは、条件分岐命令が
分岐成立となったときは予測失敗を意味するので、命令
待ち行列内の後続命令を全て無効化し、改めてターゲッ
ト命令の解読から処理をやり直す必要があるからである
。
807はQOPIの値を保持するためのレジスタである
。808〜809はm−1個のインクリメンタであり、
レジスタ807は値を入力し、順にmを法として1.、
、、、m−1インクリメントした値を出力ポインタ信号
QOPj  (j=2〜m)として出力する。出力ポイ
ンタ更新回路806にはレジスタ807の値と演算制御
ユニット7からの最終開始時刻信号LBOP、命令数L
INOを入力し、信号LBOPが′1′となったとき信
号LINOの値とレジスタ807の値をmを法として加
算して得られる値をレジスタ807に設定する。レジス
タ807の初期値はレジスタ801に合わせ、0とする
。ORゲート805の出力値が11′となったときはレ
ジスタ807をOに設定する。その理由は上記入力ポイ
ンタの場合と同じである。
第2図の命令セットアツプ制御回路213は、命令キュ
ー211内の解読済み命令の中から、セットアツプ可能
な最大m個の命令を選び、これを有効命令信号IRDY
i (i=1〜m)によって表示する。すなわち制御回
路213は、命令キュー211から上記各論理回路に同
時に送出するm命令分のセットアツプポート1(i=1
〜m)のうち、どれが有効な命令の解読情報を載せてい
るかを有効信号IRDYi (i=1〜m)によって表
示する。信号I RDY i (i = 1〜m)の中
で′1′となっている信号に対応した命令が有効であり
、次のセットアツプの対象である。−回でセットアツプ
可能な命令グループの条件は次の通りとする。
(1)セットアツプ可能な命令グループは、命令待ち行
列の中で最も古い、すなわちプログラムにおける実行順
序として最初に実行すべき命令を第1の命令として、連
続する最大m個の命令からなる。
(2)該命令グループ内の全ての命令を同時に演算実行
するに十分な数と機能を有する演算器が存在する。
(3)該命令グループ内の隣合う2命令に着目した場合
、後続命令の演算サイクル数は先行命令の演算サイクル
数と同じかそれ以上である。
命令セットアツプ制御回路213は、セットアツプする
各命令に対してその演算実行を行なう演算器を決定し、
演算器番号を示す信号ENOi(i=1〜m)を演算制
御ユニット7に送出する。
ここで上記(1)〜(3)の条件を満足するような命令
有効信号I RDY i (i = 1〜m)及びEN
Oi(i=1〜m)を生成する命令セットアツプ制御回
路213を第7A〜7D図を用いてより詳細に説明する
。第7A図は信号I RD Y i  (i = 1〜
m)が上記(1)の条件を満たすために、その必要条件
を示す信号Q RD Y i (i = 1〜m)を生
成する回路である。701〜702はに個のフリップフ
ロップであり、命令キューのに個のキューレジスタ(図
示せず)に対応し、そのキューレジスタに解読済でセッ
トアツプ待ちの命令が格納されている状態を表示する。
703〜704はに個のORゲートであり、701〜7
02に対応し、各フリップフロップを11′にセットす
る信号を送出する。705〜706はp個のデコーダで
あり、それぞれ第2図のp個の命令解読器DECi(i
=1〜p)に対応し、順に命令解読完了信号DSi(i
=1〜p)及び命令待ち行列入力ポインタ信号QIPi
(i=1〜p)を入力し、k本のデコード出力を順にO
Rゲート703〜704に送出する。705〜706の
各デコーダは、命令解読完了信号が11′となったとき
、命令キュ量大カポインタ信号で示されるキューレジス
タに対応したデコード出力信号値を“1′とする。この
時ORゲート703〜704の内対応したゲートが1′
を出力し、これにより対応したフリップフロップが“1
′にセットされる。2命令以上が同時に解読を完了した
場合DSLからその命令数分だけの命令解読完了信号が
“1′となるが、この時は入力ポインタQIPIで示さ
れるフリップフロップから連続する上記命令数分のフリ
ップフロップが11′にセットされる。707〜708
はに個のORゲートであり、701〜702に対応し、
各フリップフロップを0′にリセットする信号を送出す
る。709〜710はm個のデコーダであり、それぞれ
出力交換回路9のm命令分の出力ポート、つまりセット
アツプポートi (121〜m)に対応し、順にセット
アツプ完了信号0BTi  (121〜m)及び命令キ
ュー出カポインタ信号QOPi (i=1〜m)を入力
し、k本のデコード出力を順にORゲート707〜70
8に送出する。709〜710の各デコーダは、セット
アツプ完了信号が1′となったとき、命令キュー出カポ
インタ信号で示されるキューレジスタに対応したデコー
ド出力信号値を1′とする。
この時ORゲート707〜708の内対応したゲートが
1′を出力し、これにより対応したフリップフロップが
0′にリセットされる。2命令以上が同時にセットアツ
プを完了した場合信号0BTIからその命令数分だけの
セットアツプ完了信号が1′となるが、この時球出カポ
インタQOPIで示されるフリップフロップから連続す
る上記命令数分のフリップフロップが0′にリセットさ
れる。711はORゲートであり、演算制御ユニット7
から送出される上記TKN、並びにINT信号の論理和
をORゲート707〜708に送出する。従って、条件
分岐命令が分岐成立、即ち予測失敗と判定された場合、
もしくは、割り込み条件が発生し、以後の命令実行を取
り消す場合、それぞれTKN、INT信号が11′とな
り、711.707〜708を介して701〜702の
全てのフリップフロップが0′にリセットされる。71
2〜713はセットアツプポートj(121〜m)に対
応したm個のセレクタである。
各セレクタにはそれぞれフリップフロップ701〜70
2の出力である合計に本のキュービジー信号QBSYi
(i=1〜k)を入力する。また、各セレクタには順に
命令待ち行列出カポインタQOPi  (i=1〜m)
を入力し、それぞれQBSYl−にの中から該ポインタ
で示されるキューレジスタに対応するキュービジー信号
の値を選択し、信号QRDYi(121〜m)信号とし
て出力する。上記の様に本発明に於いては命令待ち行列
には、−度に最大p個の連続する命令が既にキューイン
グ済みの命令に連続して格納され、また−度に最大m個
の連続する命令がセットアツプのために取りだされる。
QOPi (121〜m)は解読済の命令のなかで最も
古いものを格納するキューレジスタから連続するm個の
キューレジスタを示すので、解読済の命令がi個成る場
合、iがmより小さい場合QRDYj (j”1〜i)
が1′。
Q RD Y j (j = i + 1〜m )が1
0′となり、iがm以上の場合、QRDYi(121〜
m)すべてが、11′となる6以上の説明から信号PR
DYi(121〜m)が上記(1)の条件を示すことが
言える。
第7B図は信号IRDYi (i=l 〜m)が上記(
2)の条件を満たすために、その必要条件を示すm−1
本の信号EAi (i=2〜m)を生成する回路である
。この回路はセットアツプボート1(121〜m)を介
してセットアツプする各命令に対して、その演算実行を
行な−う演算器番信号ENOi  (121〜m)を決
定する機能も有する。
720.721はセットアツプする最大m個の命令のう
ち順に第1番目、及びi+1番目の命令に対EAi、E
NOi及びEAi+1.ENOi+1信号を生成する演
算器割当制御回路EACである。EACはセットアツプ
ボートi (i = 1〜m)に対応してm個ある。7
22〜725は演算器に対応したn個のANDゲートで
あり、順に第i命令に対する各演算器の空き状態を示す
信号EIAi、、、、、EnAiと、第i命令の演算を
実行する機能を有するか否かを各演算器毎に示す命令解
読情報EISi、、、、、EnSiを入力し、その論理
積を出力する。この論理積が1′であれば、対応する演
算器が空いており、しかもその演算器は該命令の演算実
行機能を有するわけであり、割り当てる演算器の候補で
あることを示す。
一般には割当可能な演算器の候補は複数ある。
726はORゲートであり、722〜725の出力の論
理和をE A i信号として出力する。722〜725
の出力の中で何れかが11′であれば、該命令を割り当
てる演算器が存在するので、この時EAi信号が11′
となる。727〜729はn−1個のANDゲートであ
り、上記割り当て候補が複数存在した時に、実際に割り
当てる演算器を1つに絞るためのものである。即ち、7
27〜729は順に演算器E2〜Enが実際に割り当て
られたとき′1′を出力する。このため、727〜72
9には順に723〜725の出力信号を入力し、対応す
る演算器が割り当て候補となったとき、′1′を出力し
得るようにする。さらに、722の出力信号の否定を7
27〜729に、723の出力信号の否定を728〜7
29に入力する。一般に722〜725の出力信号のう
ち、演算器Ejに対応したゲートの出力値の否定を、7
27〜729のうちの演算器Ei+1〜nに対応したゲ
ートに入力する。こうすることで、n個のゲート722
,727〜729の出力は、1つ以上の演算器割り当て
候補が存在したとき、最も小さい番号を有する演算器に
対応した出力のみ11′となり、残りはj OP どな
る、730はエンコーダであり上記n個のゲート出力を
受は取り、11′となっている演算器番号をENOi信
号として出力する。731〜734は各演算器に対応し
たn個のANDゲートであり、順に上記演算器空き状態
信号EIAi、、、、、EnAiと、上記n個のゲート
722,727〜729の出力の否定を入力し、これら
の論理積を第i + 1番目の命令に対する演算器空き
状態信号E I A i + 1 。
、 0.、EnAi+1として出力する。上記説明から
明らかなように、EIAi+1.、、、。
E n A i + 1は対応するE I A L +
 1 * −−−eE n A iのうちで、第1番目
の命令に対し割り当てられた演算器に対応した信号のみ
′0′としたものといえる。第1番目の命令に対するE
ACにおいては、演算器空き状態信号EIAI、、、、
。
EnAlはすべて空きを示す11′とする。
第7C図は信号IRDYi (i=1〜m)が上記(3
)の条件を満たすために、その必要条件を示すm−1本
の信号ELOKi (i=1〜m)を生成する回路であ
る。740は比較回路であり、命令待ち行列211より
入力する第1.第2番目の命令の演算サイクル数ELL
及びEL2を比較し、後者が前者と同じかそれ以上であ
るとき出力信号ELOK2を′1′とする。741〜7
42は740と同一構成のm −2個の比較回路であり
、順に第3番目から第m#目の命令に対応し、その演算
サイクル数と直前の命令の演算サイクル数を入力し、後
者が前者と同じかそれ以上であるとき出力信号を′1′
とする。743〜744はm−2個のANDゲートであ
り、順に第3番ぽから第m番目の命令に対応し信号EL
OKi(i=3〜m)を出力する。740及び741の
出力は743〜744の全てに入力する。一般に比較回
路741〜742のうち第1番目(ただしi〉2)の命
令に対応するものの出力を、ANDゲート743〜74
4のうち第1番目以降の命令に対応するもの全てに入力
する。したがって、ANDゲート744には740〜7
42の全ての出力を入力する1以上の構成により、EL
OKi信号は第1番目から第1番目にいたる、全ての命
令について、上記(3)の条件が成立したとき、そして
そのときにのみ′1′となる。
第7D図は、上記第7A図、第7B図、第7C図にて説
明した信号QRDYi (i=1〜m)。
信号EAi(i=2〜m)、信号ELOKi(i=2〜
m)を用いて、有効命令信号IRDY(i=1〜m)を
生成する回路を示す、750はANDゲートであるが、
本実施例に於いてはQRDYlのみを入力しそのままの
値を出力しIRDY1信号とする。即ち、QOPIで示
される解読済命令は必ずセットアツプすることができる
。751〜753は、同時にセットアツプする最大m個
の命令に於ける第2ないし第m番目までのm−1個の命
令に対応するANDゲートであり、順にQRDY 1(
i=2〜m)及びELOKi (i=2〜m)を入力す
る。さらにEA2信号を751〜753のすべてに、E
A3信号を752〜753の全てに入力する。一般に、
第1番目(ただしi〉1)の命令に対応する演算器割り
当て信号EAiを、ゲート751〜753のうち、第1
番目以降の命令に対応するものすべてに入力する。従っ
て例えば、ゲート753には、EAi (i=2〜m)
のすべてを入力する。ゲート751〜753は、各々の
入力の論理積を順にIRDYi(i=2〜m)信号とし
て出力する0以上の構成により、IRDYi (i=1
〜m)信号は上記(1)〜(3)の条件を全て満たす有
効命令信号となる。
第2図のオペランド待ち制御回路210はセットアツプ
された最大m個の命令のそれぞれについて、必要とする
オペランドデータがオペランドバッファに読みだされて
いるかどうかを示す信号A D V W i (i =
 1〜m )を生成し、これを演算制御ユニット7に送
出する。このため、命令解読器207〜208より信号
DSi(i=1〜p)及びUOBi (i=1〜P)、
命令待ち行列制御回路212より信号QTPi (i=
1〜p)及びQOPi (i=l〜m) 、記憶装置1
より信号ADVi (i=1〜p)及び○BNOi (
i=1〜p)をそれぞれ入力する。
第6図を用いて、オペランド待ち°制御回路210の構
成をより詳細に説明する。601〜602はに個のフリ
ップフロップであり、オペランドバッファ216のに個
のバッファレジスタに対応し、そのバッファレジスタに
必要なオペランドが到着していない状態を表示する。す
なわち、あるフリッププロップが1″の時、対応するバ
ッファレジスタにオペランドを読み出す必要があるがま
だ到着していない事を、またO′の時、対応するバッフ
ァレジスタにオペランドを読み出す必要がないか、ある
いは既に到着している事を示す。
603〜604はに個のORゲートであり、フリップフ
ロップ601〜602のそれぞれに対し、セットする値
を送出する。605〜606はp個のデコーダであり、
それぞれ第2図のp個の命令解読器DECi (i=1
〜p)に対応し、順にUOBi(i=1〜p)及び命令
待ち行列入力ポインタ信号Q I P i (i = 
1〜p)を入力し、それぞれに本のデコード出力を順に
ORゲート603〜604に送出する。605〜606
の各デコーダは、UOBi(i=1〜p)のうち対応す
る信号が1″となったとき、命令待ち行列入力ポインタ
信号で示されるバッファレジスタに対応したデコード出
力信号値を1″とする。この時ORゲート603〜60
4の内対応したゲートが11′を出力する。607〜6
08はに個のORゲートであり、フリップフロップ60
1〜602のそれぞれに対し、上記603〜604から
の入力データをセットするためのクロック信号を送出す
る。
609〜610はp個のデコーダであり、それぞれ第2
図のp個の命令解読器DECi (i=1〜p)に対応
し、順にDSi(i=1〜p)及び命令待ち行列入力ポ
インタ信号QIPi (i=1〜p)を入力し、それぞ
れに本のデコード出力を順に○Rゲート607〜6o8
に送出する。609〜610の各デコーダは、DSi(
i=1〜p)のうち対応する信号が1″となったとき、
命令待ち行列入力ポインタ信号で示されるバッファレジ
スタに対応したデコード出力信号値を1″とする。この
時ORゲート607〜608の内対応したゲートがクロ
ック信号値′1′を出力する。
これにより対応したフリップフロップに上記入力データ
がセットされる。2命令以上が同時に解読を完了した場
合DSLからの命令数分だけの命令解読完了信号が1″
となるが、この時はQIPlで示されるフリップフロッ
プから連続する上記命令数分のフリップフロップが各々
の入力データ値にセットされる。611〜612はに個
のORゲートであり、601〜602に対応し、各フリ
ップフロップを0″にリセットする信号を送出する。6
13〜614はp個のデコーダであり、それぞれ記憶装
置1からのp個の出力ボートに対応し、順にアドバンス
信号A D V i (i = 1〜p)及びオペラン
ドバッファ番号0BNOi (i=1〜p)を入力し、
それぞれに本のデコード出力を順にORゲート611〜
612に送出する。613〜614の各デコーダは、ア
ドバンス信号が“1′、すなわちオペランドが記憶装置
から送出されてきたとき、オペランドバッファ番号で示
されるバッファレジスタに対応したデコード出力信号値
を1′とする。この時ORゲート611〜612の内対
応したゲートが1′を出力し、これにより対応したフリ
フップロップが0′にリセットされる。2つ以上のオペ
ランドが同時に読みだされた場合、そのオペランド数分
だけのアドバンス信号が11′となるが、この時は上記
オペランド数分のフリップフロップが0′にリセットさ
れる。
615〜616はセットアツプポートi (i=1〜m
)対応のm個のセレクタである。各セレクタにはそれぞ
れフリップフロップ601〜602の出力である合計に
本のオペランド待ち信号ADVWQi  (i=1〜k
)を入力する。また、各セレクタには順に命令待ち行列
出カポインタQOPi(i=1〜m)を入力し、それぞ
れADVVQi(i=1〜k)の中から該ポインタで示
されるバッファレジスタに対応するオペランド待ち信号
の値を選択し、信号ADVWi (i=1〜m)として
出力する0以上の説明から明らかなように、信号ADV
Wi(i=1〜m)はセットアツプした最大m個の命令
のそれぞれに対応して、必要なオペランドがオペランド
バッファに到着していないことを示す。
第3A図及び第3B図を用いて演算制御ユニット7の構
成を説明する。第3A図は演算実行許可信号EXi (
i=1〜m)、セットアツプ完了信号0BTi (i=
1〜m)v最終演算開始信号LBOP、セットアツプ命
令数LINOを生成する回路である。301〜303は
セットアツプポート1(i=1〜m)に対応するm個の
NORゲートであり、各セットアツプポートを介してセ
ットアツプした命令に対する演算実行保留条件を入力し
、その論理和の否定を出力する。演算実行保留条件とし
てポート1に対応するセットアツプ命令中第1番目の命
令のオペランドが未到着である条件FWI をANDゲ
ート317より301〜303の全てに入力する。ボー
ト2に対応する第2番目の命令についてのオペランド未
到着条件FW2をANDゲート318より302〜30
3に入力する。一般に、第i番目の命令についてのFW
i信号をNORゲート301〜3o3のうちポルトiか
らボートmに対応するものに入力する。
304〜306はセットアツプポートi  (i=1〜
m)に対応したm個のフリップフロップであり、NOR
ゲート301〜303のうち対応するものの出力値を毎
サイクル保持し、EXi(i=1〜m)信号として出力
する。上記構成により、第i番目の命令でFWi信号が
1′となった場合、第1番目以降のすべての演算実行許
可信号EXi(i=1〜m)は0′となり、第iないし
m番目の命令の演算実行を開始しない0本実施例では演
算実行保留条件としてオペランド未到着条件のみを示し
たが、その他の保留条件に関しても上記と同様にNOR
ゲート301〜303に入力することにより、演算実行
の追い越しを防止する。
307〜309はセットアツプポートi (i=1〜m
)に対応するm個のANDゲートであり、出力交換回路
9から送出される各命令の演算終了信号EOPi (i
==1〜m)とフリップフロップ304〜306から送
出される演算実行許可信号EXi (i=1〜m)のう
ち、対応するポートの信号を入力し、その論理積を信号
EOPEXi(i=1〜m)として出力する。信号EO
PEXiは第i番目の命令に対する演算終了が実際に許
可されたことを示す、310はANDゲートであり、信
号EOPEXi (i=1〜m)を入力しその論理積を
信号ERDYとして出力する。信号ERDYはセットア
ツプした命令が全て演算を完了し、従って全ての演算器
Ei (i=1〜n)が空いたことを示す0本実施例で
は信号ERDY信号が1′となって初めて後続命令グル
ープのセットアツプを行なう、311〜313はセット
アツプポート1(i=1〜m)に対応するm個のAND
ゲートであり、順に命令制御ユニット2から送出される
有効命令信号IRDYi (i=1〜m)を、またそれ
ぞれに上記信号ERDYを入力し、それらの論理積を出
力する311〜313の出力は対応するポートを介して
そのサイクルに命令セットアツプが行なわれたことを示
す、314〜316はセットアツプポートi (i =
 1〜m)に対応するm個のフリップフロップであり、
順に311〜313からセットアツプ完了条件をデータ
入力端子に、またフリップフロップ304〜306から
EXi(i=1〜m)信号をクロック端子に入力し、セ
ットアツプ完了信号0BTi(i=1〜m)を出力する
。314〜316のうちセットアツプポートiに対応す
るフリップフロップに関して見ると、該ポートに対応し
て有効な命令が存在した場合その命令セットアツプの完
了したサイクルに信号0BTiが1′となり、対応する
演算実行が実際に開始したとき、その次のサイクルから
401となる。337〜339はセットアツプポート1
〜mに対応したm個のレジスタであり、命令制御ユニッ
ト2から順に信号ENOi(i=1〜m)を入力し、ゲ
ート311〜313のうち、対応するものの出力が1′
となったときに信号ENOi(i=1〜m)をとり込む
、それらのレジスタの内容は入力交換回路8に送られる
。317〜319はセットアツプポートi (i = 
1〜m)に対応するm個のANDゲートであり、順に命
令制御ユニット2からオペランド待ち信号ADVWi(
i=1〜m)を、またフリップフロップ314〜316
から信号0BTi(i=1〜m)を入力し、それらの論
理積をオペランド未到着条件信号FWi(i=1〜m)
として出力する。320〜322は、セットアツプポー
トi (i=1〜m)に対応するm個のANDゲートで
あり、順に上記NORゲート301〜303から演算実
行許可信号を、またフリッププロップ314〜316か
らセットアツプ完了信号0BTi(i=1〜m)を入力
し、これらの論理積を演算実行開始信号BOPi(i=
1〜m)として出力する。323〜325は、セットア
ツプポート1(i=1〜m)に対応するm個のANDゲ
ートであり、各々対応するポートを介してセットアツプ
された命令が、同時にセットアツプされた命令の中で概
念的に最後の命令であり、しかも該命令が演算実行を開
始したことを検出する。このためセットアツプポートi
に応答するANDゲートには信号BOPiと、信号0B
Ti+1の否定値を入力する。ただしゲート325にお
いては信号BOPmのみを入力する信号BOPi(i<
m)が1′となった時に次のポートi+1に対応する信
号がO′であった場合、該第i番目の命令が最後の命令
である。何故ならば、もし第i番目の命令が最後でない
と仮定すると、第i+1ないし第m番目のポートに対応
して命令がセットアツプされたことになる。もしポート
i+1に対応して命令がセットアツプされていたとする
と、第i+1番目の命令の演算実行開始は第i番目のそ
れを追い抜かないので、信号0BTi+1は信号BOP
iが1′となったときにはO′では有り得ず、上記に矛
盾する。またもしポートi + 1に対して命令がセッ
トアツプされていなかったとすると、第i+2ないしm
番目のポートに対して命令セットアツプが行なわれたこ
とになるが、これは本実施例では命令セットアツプは連
続したポートに対して行なわれるので有り得ない、これ
は第i番目の命令が最後でないと仮定したことに誤りが
有るからである。従って上記の場合は第i番目の命令が
セットアツプされた命令のうち最後の命令であることが
いえる。また信号BOPmが111となったときは第m
番目の命令が最後の命令であることは明らかである。こ
のときゲート323〜325のうち、第i番目のゲート
の出力が“1′となる。また、明らかにその他のゲート
の出力は0′である。326はORゲートでありゲート
323〜325の出力の全ての論理和をとり、信号LB
OPとして出力する。
327はエンコーダであり、ANDゲート323〜32
5の出力を受は取り、11′を出力しているゲートに対
応するポート番号を生成し、信号LINOとして出力す
る。
第3B図は演算制御ユニットのうち条件分岐判定信号T
KN、割り込み検出信号INT、及び演算実行取り消し
信号RESi (i=1〜m)を生成する回路である。
350は条件コード選択回路であり、出力交換回路によ
りセットアツプポートに対応した各命令の条件コードC
Ci (121〜m)及びそれらのセット信号CC3i
 (121〜m)を受は取り、′1′となっている信号
CC3i(121〜m)のうち最も番号の大きいものに
対応した条件コードを選択し、レジスタ351に送出す
る。352はORゲートであり、信号CC81(121
〜m)を受は取り、これらの論理和を351のクロック
端子に送出する。351は条件コードレジスタであり、
352からのクロック信号が′1′となったとき、35
0が出力する条件コード値をセットする。351が出力
する条件コードCCPは、同時にセットアツプされた命
令が全て実行を完了した場合の条件コードを示す、35
3はセットアツプポート1に条件分岐命令がセットアツ
プされた時の分岐判定制御回路である。また354〜3
55は、セットアツプポート1(132〜m)に対応し
た分岐判定制御回路である。
356.358〜359はセットアツプポート1(12
1〜m)に対応するm個のレジスタであり。
命令制御ユニットから送出する条件分岐命令信号BCi
(121〜m)及びマスク信号BCMi(121〜m)
のうち、対応するポートのものをセットする。各レジス
タにはクロック信号として演算制御ユニット内部で生成
する上記QBTi (121〜m)信号を入力する。3
62〜363は条件コードの選択回路であり、対応する
セットアツプポートから条件分岐命令がセットアツプさ
れたとき、該条件分岐命令にとって最新の条件コードを
出力する。このため362には、上記ccp。
CC1そしてCC81を入力する。CC81が“1′で
あれば第1番目の命令が最新の条件コードを設定してお
り、このとき362はCCIの値を出力し、CC81が
101であればccpを出力する。一般に、362〜3
63のうちセットアツプポートi(但しi〉1)に対応
して選択回路にはCCP、CC1,、、、、CC1−1
,CGSL。
、、、、CC3i−1を入力する。この時、CC3I、
、、、、CC3i−1がすべて′O′。
すなわち、同時にセットアツプされた命令のなかでは該
条件分岐命令に先だって条件コードを設定はる命令が無
い場合、該選択回路はCCPを出力し、CGSL、、、
、、CC:5i−1のうちで少なくとも1つが11′の
場合、′1′である条件コードセット信号の中で最も番
号の大きいポートに対応した条件コードを出力する0以
上により362〜363は、対応するセットアツプポー
トから条件分岐命令がセットアツプされたとき、該条件
分岐命令にとって最新の条件コードを出力することがわ
かる。357,360〜361は分岐判定回路である。
357には条件コードレジスタ351からCCP、35
gからBCI、BCMI、そして演算制御ユニット内部
で生成する上記信号EOPEXIを入力する。信号EO
PEXIは第1番目の命令の演算実行が終了したサイク
ルであることを示し、このとBClが11′、すなわち
該命令が条件分岐命令であれば、マスク値BCMIと最
新の条件コードであるCCPから分岐の有無を判定し、
判定結果を信号TKN1として出力する。同様にして3
60〜361には順に362〜363からそれぞれに対
する最新の条件コード。
358〜359からBCi(132〜m)、BCMi(
132〜m)、そして演算制御ユニット内部で生成する
上記信号EOPEXi (i=2〜m)を入力する。さ
らに353と同様にして分岐判定を行ない、結果を信号
TKNi(132〜m)として出力する。364〜36
6はセットアツプポート1(121〜m)に対応するm
個のORゲートであり、対応する命令の演算実行取り消
し信号RESi(121〜m)を出力する。このため3
65〜366の全てに上記TKN1及び出力交換回路か
らの信号INTCIを入力する。さらに一般に信号TK
Ni及びINTCi (132〜m)を、365〜36
6のうちポートi+1からポートmに対応した全てのゲ
ートに入力する。また364〜366の全てに出力交換
回路からのINTSI信号を入力する。さらに一般に信
号INTSi(132〜m)を、365〜366のうち
ポートiからポートmに対応した全てのゲートに入力す
る0以上から分るように、第i番目の命令に於いて分岐
成立もしくは完了型割り込みが発生すると第i+1番目
以降の命令の演算を実行している全ての演算器に対し、
また第i番目の命令において抑止型割り込みが発生する
と第1番目以降の命令の演算を実行している全ての演算
器に対し、取り消し信号RESi+1.....RES
mが送出される。367及び368はORゲートであり
、それぞれ全ての分岐成立信号TKNi(121〜m)
及び割り込み検出信号INTCi  (121〜m)。
I NTS i (i = 1〜m)の論理和を、TK
N及びINT信号として命令制御ユニットに送出する。
369はORゲートテあり上記INT及びTKN信号の
論理和をフリップフロップ370に送出するフリップフ
ロップ370は369の出力を1サイクル保持し、その
出力信号RESを全ての演算器Ei(i=1〜n)に送
出する。RES信号により、直後のサイクルでセットア
ツプされた命令グループの演算実行を抑止する。
第4図は入力交換回路8の構成を示す、401〜403
は演算器Ei (i=1〜n)に対応したn個のORゲ
ートであり、演算器にセットアツプするデータを出力す
る。404〜406はセットアツプポートi (121
〜m)に対応するm個のデコーダであり、順に入力デー
タdi  (121〜m)及び演算器番号ENOi (
i=1〜m)を入力し、演算器Ei (i=1〜n)に
対応したn本のデコード信号を順に401〜403に送
出する。
各デコーダは入力データが1′の時演算器番号で示され
るデコード信号を1″とする。入力データdi(i=1
〜m)としては、上記のlN5Ti。
RD i 、 M A i 、 M D i 、 RW
 A i 、 OB T i pEXi、RESi  
(121〜m)等があり、それぞれに対して第4図の交
換回路を設ける。
第5図は出力交換回路9の構成を示す、501〜503
はセットアツプボートi (121〜m)に対応するm
個のセレクタあり、各セレクタに順に演算制御ユニット
7から演算器番号E N O1(121〜m)を、また
全ての演算器からの出力データのi  (i=l〜n)
を各セレクタに入力する。セレクタ501〜503は入
力データei(i=1〜n)のうちそれぞれの演算器番
号で示されるものを信号di (121〜m)として出
力する。出力データとしては、上記EDi (121〜
m)、RWAi (i=1〜m)、5TAi (121
〜m)等がある。
以下では典型的な命令列を例にとり、本実施例になる計
算機の動作を説明する。第10A図は、Load、 M
ultiplyt Load、 5torsの4命令列
に対する動作タイムチートである0本実施例では1つの
命令処理は命令読み出しを除くと6つのステージからな
る。Dステージでは命令解読及びオペランドアドレス生
成、Aステージでは命令解読情報の命令待行列への格納
とメモリオペランドもしくは分岐命令のターゲット命令
読み出し、Lステージでは命令セットアツプ、Eステー
ジでは演算実行、Pステージでは演算結果のチエツクも
しくは、条件分岐判定および演算結果の書き込み指令の
発行。
Sステージでは演算結果のレジスタもしくは記憶装置へ
の書き込みを行なう、命令により、Sステージの無い場
合がある。最も簡単な命令においては各ステージは1サ
イクルで実行するが命令により特定のステージを複数サ
イクルで実行する場合もある。第10A図では横軸はマ
シンサイクルを単位とした時間を、縦軸は上記命令列及
び主要信号もしくは主要処理を示す、上記4命令には図
中の参照のため1〜4の命令番号を付す、さて、本発明
では命令1,2が同時にセットアツプされ、演算実行を
したところ、命令2において完了型割り込みが発生した
ため、後続の命令3,4の処理を取り消す場合を示して
いる。命令1,2はサイクルC1にて同時に解読され、
この時C2にて命令解読完了信号DSL、2が“1′と
なる。C3にて有効命令信号IRDY1.2が11′と
なる。この時演算器は全て空いているとすると、E R
DY信号が1′であり、従ってこのサイクルで命令セッ
トアツプが行なわれ0BTI、2信号が1′となる。こ
の時特に演算実行保留条件が無いので、直ちに演算が開
始され、BOPI、2信号が1′となる。またC4から
は、演算実行許可信号EX1.2が′1′となる。命令
1のEステージは1サイクルで終了するのでC4にて演
算終了信号EOP1が11′となる。一方命令2はEス
テージは3サイクルを要するので、C6にてEOP2が
11′となる。従って次にERDY信号が11′となる
のはC6である。この例では命令2のEステージの終了
時点で完了型割り込み条件が検出されるのでINTC2
信号がPステージで′1′となり、これに応答してRE
S信号がSステージで′1′となる。一方命令3,4は
命令1,2より1サイクル遅れてDステージが始まりC
4からIRDYI、2信号が“1′となるものの、先行
する命令グレーグの演算が全て終了しておらず、従って
ERDY信号が′0′なので、セットアツプが待たされ
る。C6にてERDYが11′となり、命令3,4のセ
ットアツプが完了する。引続き命令3,4はE、Pステ
ージを実行し、C9でSステージに入る。しかし、先行
する命令2にて割り込みが発生しており、C8にてRE
S信号′1′となっているので、これによりC8での命
令3,4による結果の書き込み指令RWC1。
MWC2がそれぞれ抑止される。これは命令3゜4のセ
ットアツプを命令1,2の演算実行の終了を待って行な
ったため、命令3,4の書き込み指令発行が命令1,2
の割り込み検出を行なうPステージより後になったから
可能であった。従来は命令3,4は必ずしも命令1,2
の終了を待たずしてセットアツプされ演算を開始してい
たので命令2の割り込みが検出された時点では一般的に
は結果の書き込みはすでに終了してしまう、従って、レ
ジスタの場合は予め待避しておいたデータを回復する必
要があり、また記憶装置の場合はMシリーズアーキテキ
チャの仕様を守ることが困難である。
第10B図は、主記憶装置上に並ぶCo■pare*B
ranch on Condition、 Load、
 5toreの4命令列において、第2のBC命令が分
岐成立となり、予測実行していたLoad、 5tor
e命令をキャンセルし、ターゲット命令Addを実行す
る例である0本例は命令1のメモリオペランド読み出し
が2サイクル遅れる場合を示す、C1にて命令1,2.
3の解読が完了し、C2にてDSL、2,3信号が′1
′となる。C3にてIRDYI、2,3信号が51′と
なる。この時全ての演算器が空いておりERDY信号が
11′であるとすると、命令セットアツプが行なわれ、
0BTI、2.3信号が11′となる。またこのC3か
ら05までの2サイクルの間、命令1のメモリオペラン
ドが到着していないことを示すADVWI信号が′1′
となる。これに応答してこの2サイクルの間、後続命令
に対する演算実行許可信号EXI、2,3及び演算実行
開始信号BOPI、2.3が抑止される。
C6にて命令1,2.3の演算実行が開始され、BC命
令はそのPステージ(C7)にて分岐成立信号TKN2
が′1′となる。これに応答してRES3信号がC7、
RES信号がC8にて′1′となり、これらにより順に
命令3のレジスタ書き込み指令RWC3及び命令4によ
り記憶装置1へのメモリ書き込み指令MWC1が抑止さ
れる。命令3の結果の書き込み指令抑止が可能であった
のは、その演算実行開始を命令1,2の演算実行開始を
待って行ない、しかも命令3の演算ステージサイクル数
が命令2より短くないため、命令3の書き込み指令発行
が命令2の分岐判定を行なうPステージより後になった
から可能であった。なおターゲット命令の解読はC8ス
テージから開始される。従来は令命3は必ずしも命令1
の演算実行保留条件により伴って演算実行を保留しない
ので命令2の分岐成立が検出された時点では一般的には
結果の書き込みはすでに終了してしまう、従って、予め
待避しておいたデータをレジスタに回復する必要があり
、またもし命令3が5tore命令であった場合はMシ
リーズアーキテクチャの仕様を守ることが困難である。
命令4の記憶装置への書き込み指令が抑止可能であった
のは第10A図におけると同様の理由による。
本発明によれば、プログラムから見て1つずつ命令が処
理されるアーキテクチャに基づくタイプの情報処理装置
において、並列実行方式により高速化を図る場合、割り
込みや分岐命令により予測失敗時の順序性保証が極めて
容易かつ高速となる。
仮に本方式を用いないと、レジ゛スタに結果を格納する
命令に関しては常に予め書き込み前のレジスタの内容を
待避しておき上記のケースにおいてレジスタの回復処理
を行なう必要があり、そのための制御回路が必要となり
、また処理時間も大きくなる。また主記憶に結果を書き
込む命令に関しては上記順序仕様を守ることが現状の技
術では不可能である。
【図面の簡単な説明】
第1図は本発明になる計算機の全体ブロック図、第2図
は第1図の命令制御ユニット(2)の詳細構成図、第3
A図は第1図の演算制御ユニット(7)の一部の詳細構
成図、第3B図は第1図の演算制御ユニット(7)の残
りの部分の詳細構成図、第4図は第1図の入力交換回路
(8)の一般的な構成図、第5図は第1図の出力交換回
路(9)の一般的な構成図、第6図は第2図のオペラン
ド待ち制御回路(210)の詳細構成図、第7A図から
第7D図はそれぞれ第2図の命令セットアツプ制御回路
(213)の異なる部分の詳細構成図、第8図は第2図
の命令キュー制御回路(212)の詳細構成図、第9図
は第1図の装置で用いる命令の形式例、第10A図及び
108図は簡単な命令列に於けるいろいろの信号のタイ
ムチャート、第11図は第1図の演算第 4  図 盈 第 5 図 咬倉=iへ1(\Lと 冨 7C図 スリ(−等杓 %  7F)  図 Zυ(一部今少

Claims (1)

  1. 【特許請求の範囲】 1、任意の2命令におけるそれぞれの所定の処理を開始
    するにあたり着目した場合、該先行命令による該後続命
    令の取り消し処理開始時刻T_1と、該後続命令による
    結果の書き込み処理開始時刻T_2との間に、T_1<
    T_2なる条件が満たされることを判定する判定手段を
    有し、上記条件を満たす場合、該後続命令の該所定の処
    理を該先行命令の該所定の処理と同時もしくはそれ以前
    に開始する手段を有し、上記条件を満たさない場合、該
    後続命令の該所定の処理の開始を上記条件が満たされる
    時刻以降に待ち合わせる開始時刻待ち合わせ手段を有す
    る情報処理装置。 2、特許請求の範囲第1項において上記取り消し処理に
    より、該先行命令の該所定の処理と同時もしくはそれ以
    前に、該所定の処理を開始した該後続命令の結果の書き
    込みを抑止し、該先行命令よりさらに先行する命令の結
    果の書き込みは抑止しない、選択的な結果書き込みの抑
    止手段を有する情報処理装置。 3、特許請求の範囲第1項において該後続命令の該所定
    の処理を開始するにあたり、上記条件を満たさなかつた
    場合は、全ての先行命令についての該所定の処理が終了
    するまで、該後続命令の該所定の処理を待ち合わせる手
    段を有する情報処理装置。 4、特許請求の範囲第1項において該所定の処理が特に
    演算実行である情報処理装置。 5、特許請求の範囲第1項において該先行命令の該所定
    の処理から該取り消し処理開始までの時間の上限値Δt
    _1が命令の種類により定まり、該後続命令の該所定の
    処理から該結果の書き込み開始までの時間の下限値Δt
    _2が命令の種類により定まり、該先行命令の該所定の
    処理の開始時刻をt_1、該後続命令の該所定の処理の
    開始時刻ををt_2としたとき、上記開始時刻待ち合わ
    せ手段としてt_2が、t_1+Δt_1<t_2+Δ
    t_2を満たすことを判定する手段を含む情報処理装置
    。 6、概念的に命令が1つずつ処理され結果が概念的に順
    序的に記憶装置に書き込まれる情報処理装置において、
    M個命令の解読およびオペランド読み出しを並列に行え
    る命令制御手段と、複数の命令の演算を相互に並列に行
    うことのできる、該Mより大きいか等しいN個の演算手
    段と、該N個の演算手段のうち該命令制御手段にて解読
    されたM個の命令が必要とするM個の演算手段が全て空
    きか否かを検出する検出手段と、該検出手段の検出結果
    が否である間は、該解読されたM個の命令の演算実行を
    待ち合わせるための待ち合わせ手段を有することを特徴
    とする情報処理装置。 7、プログラムとデータを格納する記憶手段と、複数の
    命令を同時に実行するための複数の命令実行手段を持つ
    情報処理装置に於いて、該命令実行手段群に同時にセッ
    トアップする複数命令を、プログラムから見た概念的実
    行順序の連続した複数命令に制限する第1の命令セット
    アップ制限手段を有し、各命令に付随する該命令もしく
    はその後続命令の実行を無効化する条件の検出ステージ
    に関する第1の属性情報と、各命令に付随する該命令に
    おける演算結果の書き込みステージに関する第2の属性
    情報とを生成する手段を有し、上記第1及び第2の属性
    情報から同時にセットアップする任意の2命令に着目し
    た場合先行命令の上記無効化条件検出ステージが後続命
    令の上記書き込みステージより遅れることがないような
    命令グループのみをセットアップするように制限する第
    2の命令セットアップ制限手段を有し、全ての演算器が
    空くまで命令セットアップを待ち合わせる第3の命令セ
    ットアップ制限手段を有し、上記第1、第2及び第3の
    命令セットアップ制限手段による制限を全て満たすよう
    に命令グループを上記命令実行手段群にセットアップす
    る命令セットアップ手段を有し、同時にセットアップし
    た命令の実行に当たつて何れかの命令で実行待ち合わせ
    要因が発生したとき、書き込みを行なう可能性のある全
    ての後続命令の実行を待ち合わせる手段を有し、同時に
    セットアップした命令の何れかで該命令もしくはその後
    続命令を無効化する要因を検出した場合該命令もしくは
    その後続命令の実行及び結果の書き込みを抑止する手段
    を有することを特徴とする情報処理装置。
JP01706688A 1988-01-29 1988-01-29 情報処理装置 Expired - Lifetime JP3161711B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP01706688A JP3161711B2 (ja) 1988-01-29 1988-01-29 情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP01706688A JP3161711B2 (ja) 1988-01-29 1988-01-29 情報処理装置

Publications (2)

Publication Number Publication Date
JPH01194031A true JPH01194031A (ja) 1989-08-04
JP3161711B2 JP3161711B2 (ja) 2001-04-25

Family

ID=11933615

Family Applications (1)

Application Number Title Priority Date Filing Date
JP01706688A Expired - Lifetime JP3161711B2 (ja) 1988-01-29 1988-01-29 情報処理装置

Country Status (1)

Country Link
JP (1) JP3161711B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114546866A (zh) * 2022-02-24 2022-05-27 安徽芯纪元科技有限公司 一种jtag读指令延时处理方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114546866A (zh) * 2022-02-24 2022-05-27 安徽芯纪元科技有限公司 一种jtag读指令延时处理方法

Also Published As

Publication number Publication date
JP3161711B2 (ja) 2001-04-25

Similar Documents

Publication Publication Date Title
US5922068A (en) Information processing system and information processing method for executing instructions in parallel
EP0381471B1 (en) Method and apparatus for preprocessing multiple instructions in a pipeline processor
US4740893A (en) Method for reducing the time for switching between programs
US3825902A (en) Interlevel communication in multilevel priority interrupt system
US4016545A (en) Plural memory controller apparatus
EP0087978B1 (en) Information processing unit
EP0021399B1 (en) A method and a machine for multiple instruction execution
US3735363A (en) Information processing system employing stored microprogrammed processors and access free field memories
CA1242281A (en) Vector processing
AU598969B2 (en) Method and apparatus for executing instructions for a vector processing system
JPS5911943B2 (ja) デ−タ処理装置の為のトラツプ機構
US3988719A (en) Microprogrammed data processing systems
JPH0769818B2 (ja) デ−タ処理装置
US3654621A (en) Information processing system having means for dynamic memory address preparation
JPH09120359A (ja) プロセッサ内の資源割当て追跡方法及びそのシステム
JPH02234229A (ja) ソース・リスト、ポインタ・キューおよび結果キュー
JPH0430053B2 (ja)
JP3093673B2 (ja) リネーム・レジスタを割り付ける方法及びプロセッサ
EP0094535A2 (en) Pipe-line data processing system
EP0265108B1 (en) Cache storage priority
US20020099922A1 (en) Data processing apparatus including a plurality of pipeline processing mechanisms in which memory access instructions are carried out in a memory access pipeline
KR100431975B1 (ko) 분기에의한중단이없는파이프라인방식의마이크로프로세서를위한다중명령디스패치시스템
CA1304823C (en) Apparatus and method for synchronization of arithmetic exceptions in central processing units having pipelined execution units simultaneously executing instructions
CA1302580C (en) Apparatus and method for using lockout for synchronization of access to main memory signal groups in a multiprocessor data processing system
JP3161711B2 (ja) 情報処理装置

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term