JPH06202867A - 並列計算機 - Google Patents
並列計算機Info
- Publication number
- JPH06202867A JPH06202867A JP34843092A JP34843092A JPH06202867A JP H06202867 A JPH06202867 A JP H06202867A JP 34843092 A JP34843092 A JP 34843092A JP 34843092 A JP34843092 A JP 34843092A JP H06202867 A JPH06202867 A JP H06202867A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- data
- read
- memory
- address
- 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
Links
Landscapes
- Advance Control (AREA)
Abstract
図った並列計算機を得る。 【構成】 実行ステージ6′は、命令コードOPが読み
出しを指示する場合、メモリーデータ記憶部9のアドレ
スSMAと、演算実行器13で計算した読み出しアドレ
スである演算結果MAとを、メモリ・アドレス比較器1
0により比較する。そして、メモリ・アドレス比較器1
0が比較結果である一致信号GETがHレベルで、両者
MA及びSMAの一致を判定するとき、次のステージで
あるメモリ・アクセス・ステージ7によるデータ・メモ
リ3からの読み出しデータと同じデータを、メモリーデ
ータ記憶部9のデータMDに基づくデータDATAを読
み出することにより得ることができる。 【効果】 パイプライン処理をより効率的に行うことが
でき、処理能力の向上を図ることができる。
Description
方式で実行する並列計算機に関し、特にパイプライン方
式を採用した縮小命令セットコンピュータRISCに関
する。
ロード(読み出し)命令及びストア命令に限定されるロ
ード・ストア・アーキテクチャを採用する。また演算命
令は全て内部のレジスタに格納されたデータを用いて行
われる。RISCは、一般に以下の特徴を備える。
行う。
後の命令は、レジスタに対して行われる。
いくつかの命令を並列処理する。
ドウェアで行い、複雑な処理は、ソフトウェアで行う。
を示す。図9においてRISCは、命令を格納する命令
メモリ1とデータを一時的に格納するための複数のレジ
スタからなるレジスタ・ファイル2とデータを格納する
ためのデータ・メモリ3と5段のパイプライン・ステー
ジ4〜8とから構成される。
ログラムカウンタ(図示せず)を備えており、プログラ
ムカウンタから発生されたアドレス信号を命令メモリ1
に与える。与えられたアドレス信号により指定された命
令が取り出され、命令デコード・ステージ5に送られ
る。
令フェッチ・ステージ4を介して命令メモリ1からの命
令を受け、該命令をデコードする。そして、命令デコー
ド・ステージ5は、命令のデコード結果に基づき、与え
られた命令が待機することなく、次段の実行ステージ6
で実行することのできる命令の場合、実行ステージ6が
与えられた命令を実行するのに使うデータをレジスタ・
フィルタ2から読み出し、読み出したデータを実行ステ
ージ6に与える。
た命令が演算命令の場合には、与えられた命令を実行す
る。デコードされた命令がメモリ・アクセス命令(ロー
ド命令、ストア命令)の場合、データ・メモリ3の実行
アドレスを計算してメモリ・アクセス・ステージ(ME
M)7に与える。
テージ6から得た実行アドレスにしたがってデータ・メ
モリ3にアクセスし、データの書き込み、読み出しを実
行する。
結果及びデータ・メモリ3からの読み出しデータをレジ
スタ・ファイル2に書き込む。
オーバラップ・クロック信号も応答して動作する。2相
のノンオーバラップ・クロック信号φ1,φ2の例を図
10に示す。RISCはパイプライン化されており、各
クロック・サイクルで新しい命令をフェッチする。図9
に示すRISCにおいては、1つの命令の実行完了には
5サイクルが必要とされる。しかし、並列計算機である
RISCは、各クロックサイクル毎に新しい命令を開始
することができるようにパイプライン化されているた
め、新しい命令の開始は、現在の命令の完了前に行うこ
とができる。
作を示す。命令1〜命令3はそれぞれ命令フェッチ・ス
テージ4でフェッチされた後、命令デコード・ステージ
5、実行ステージ6、メモリ・アクセス・ステージ7及
びライトバック・ステージ8を通過する。
において、命令1の命令デコードと命令2のフェッチが
同時に行われる。サイクルT3において、命令1の実
行、命令2のデコード及び命令3のフェッチが同時に行
われる。このように、命令がパイプライン式に並行して
実行されるため、全体としては、1マシン・サイクルで
1命令を実行するのことができる。
は、ワード単位でデータを扱う命令の他に、バイト単位
やハーフ・ワード単位で扱う命令が存在する。一般にメ
モリからの読み出しは、1ワード(複数バイト)単位で
行われ、命令がバイト単位や、ハーフ・ワード単位の場
合、不必要なデータは捨てられてしまう。
SCに対し、図11(b)に示すように、命令1(バイ
ト単位のロード(読み出し)命令),命令2(バイト単
位のロード(読み出し)命令),命令3(演算命令)の
順で3つの命令が順次与えられて処理され、これに加え
て、命令1でデータ・メモリ3から読み出されたデータ
の一部を命令2が読み出し、命令2の実行により読み出
されたデータが命令3の処理の中で使われると仮定す
る。
に、まず命令1が実行され、かつ終了する。すなわち、
期間T1において命令フェッチ・ステージ4における命
令1の処理が行われ、期間T2においては命令デコード
・ステージ5における命令1の処理が行われる。実行ス
テージ6,メモリ・アクセス・ステージ7,ライトバッ
ク・ステージ8における命令1の処理は、期間T3,T
4,T5においてそれぞれ実行される。
・ステージ4が実行され、期間T3においては命令デコ
ード・ステージ5における命令2の処理が行われる。期
間T4,T5,T6において実行ステージ6,メモリ・
アクセス・ステージ7,ライトバック・ステージ8にお
ける命令2の処理が行われる。
・ステージ4における処理が行われ、期間T4において
は命令デコード・ステージ5における命令3の処理が行
われる。しかし、期間5からの実行ステージ6,メモリ
・アクセス・ステージ7,ライトバック・ステージ8に
おける命令3の処理の実行は停止される。なぜなら、前
述のように、命令3が命令2でデータ・メモリ3から読
み出されたデータを使用するため、命令2の実行の終了
(ライトバック・ステージ8によるレジスタ・ファイル
2へのデータ格納)を待たないと命令3が実行できない
からである。
6において待期状態(パイプライン・インターロック)
になり、命令2の完了した期間T6の次の期間T7で実
行が再開される。再開された命令3は、期間T7で命令
・デコード・ステージ5における命令3の処理が行われ
る。そして、実行ステージ6,メモリ・アクセス・ステ
ージ7,ライトバック・ステージ8における命令3の処
理が、期間T8,T9,T10においてそれぞれ実行さ
れる。
タを連続して読み出し、命令2の読み出し対象のデータ
が命令1の実行によりデータ・メモリ3から既に読み出
されているにもかかわらず、命令2によって再度、命令
1と同様の読み出し動作を行うという無駄な動作が行わ
れている。。
利用する場合は、命令2で読み出されたデータが一旦レ
ジスタファイル2に書き込まれた後、実行ステージ6で
実行することができ、命令3においてレジスタ・ファイ
ル2をアクセスする。このため、命令2の読み出し処理
実行中の期間T5及びT6において、待機しなければな
らない。
に、命令2の実行により読み出されるデータは、期間T
4の時点で既にデータ・メモリ3から読み出されてい
る。にもかかわらず、命令2の処理の際に捨てられてし
まうため、そのデータを参照する命令3は、命令2の実
行が終了を待たなければならない。
まう分、命令の実行を完了するのに長い時間を要し、R
ISC等の並列計算機の処理能力を低下させていた。
されたもので、効率的なデータ処理を行い処理能力の向
上を図った並列計算機を得ることを目的とする。
1記載の並列計算機は、レジスタと、命令実行に必要な
データが格納されるデータ記憶手段と、命令コードを受
け、前記命令コードを解読する命令解読手段と、前記命
令解読手段の解読結果に基づき決定される命令を、必要
に応じて前記レジスタの格納データを用いて実行し、前
記命令が前記データ記憶手段からの読み出しを指示する
場合、前記データ記憶手段の読み出しアドレスを演算し
て出力する命令実行手段と、前記命令が前記読み出しを
指示する場合、前記データ記憶手段から、前記読み出し
アドレスの格納データを読み出す外部データ読み出し手
段と、前記命令が前記読み出しを指示する場合、前記読
み出しデータを前記レジスタに書き込むレジスタ書き込
み手段とを備え、前記命令解読手段、前記命令実行手
段、前記外部データ読み出し手段及びレジスタ書き込み
手段は、各々パイプライン方式で並列実行可能であり、
前記データ記憶手段からの読み出しが実行される際、前
記読み出しアドレスを一時格納アドレスとし、前記読み
出しデータを一時格納データとして格納する一時格納記
憶手段をさらに備え、前記命令実行手段は、前記読み出
しアドレスが前記一時格納アドレスを一致すると、前記
一時的記憶手段の前記一時格納データを読み出して、前
記命令を実行することができる。
ように、前記命令実行手段は、前記読み出しアドレスが
前記一時格納アドレスに一致すると、前記命令の前記読
み出し指示を変更して、前記外部データ読み出し手段に
よる前記データ記憶手段に対する読み出し処理を無効に
する。
一時格納記憶手段は、データ記憶手段からの読み出しが
実行される際、読み出しアドレスを一時格納アドレスと
し、読み出しデータを一時格納データをして格納してお
り、命令実行手段は、読み出しアドレスが一時格納アド
レスを一致すると、一時格納記憶手段の一時格納データ
を読み出して命令を実行することが可能である。
データ記憶手段からの読み出しを指示し、後に実行され
る第2の命令が第1の命令の読み出しデータを利用する
処理を指示する場合、第2の命令は、第1の命令の読み
出しデータがレジスタに格納されるのを待つことなく、
一時格納記憶手段に格納された格納データを読み出して
命令を実行することができる。
るRISCの内部構成を詳細に示すブロック図である。
図1に示すRISCは、命令を格納する命令メモリ1
と、データを一時的に格納するための複数のレジスタか
らなるレジスタ・ファイル2と、データを格納するため
のデータ・メモリ3と、5段のパイプライン・ステージ
である、命令フェッチ・ステージ4、命令デコード・ス
テージ5、実行ステージ6′、メモリ・アクセス・ステ
ージ7及びライトバック・ステージ8とから構成され
る。加えて、メモリーデータ記憶部9が実行ステージ
6′とアクセス可能に構成される。
リ3から1ワード(4バイト)単位で行われる。また、
RISCは外部的に与えられる2相のノンオーバラップ
・クロック信号φ1及びφ2に応答して動作する。基本
的な動作は、図10に示した従来の信号φ1及びφ2と
同様であるので説明を省略する。
カウンタ40を備えており、プログラムカウンタから発
生されたアドレス信号を命令メモリ1に与える。命令フ
ェッチ・ステージ4により、与えられたアドレス信号に
より指定された命令が取り出され、命令デコード・ステ
ージ5に送られる。
チ・ステージ4を介して命令メモリ1からの命令50を
受け、該命令をデコードする。そして、命令デコード・
ステージ5は、命令のデコード結果に基づき、与えられ
た命令が待機することなく、次段の実行ステージ6′で
実行することのできる命令の場合、必要に応じて実行ス
テージ6が与えられた命令を実行するのに使うデータを
レジスタ・フィルタ2から読み出し、読み出したデータ
を実行ステージ6に与える。
出力される演算結果MAとメモリーデータ記憶部9に保
持されているアドレスSMAとを比較するメモリ・アド
レス比較器10と、先行命令の命令コードOPに従っ
て、先行命令の格納アドレスDとソース・アドレスS3
1,S32それぞれとを比較して比較結果である選択信
号S1およびS2を出力するレジスタファイル・アドレ
ス比較器11と、選択信号S1およびS2,一致信号G
ETに応答してデータを選択するレジスタ・ファイル・
データ・セレクタ12と、選択されたデータに基づいて
演算を実行する演算実行器13と、レジスタ16,19
及び21とから構成される。なお、デコード・ステージ
5から与えられる命令50は、命令コードOPと2つの
ソース・アドレスS31,S32,格納アドレスDを含
む。
は、レジスタ19を介して先行命令の格納アドレスD、
現在の命令のソース・アドレスS31,S32とを受
け、ソース・アドレスS31,S32それぞれと格納ア
ドレスD2を比較し、一致/不一致を検出して選択信号
S1及びS2をレジスタ・ファイル・データ・セレクタ
12に出力する。なお、詳細については後に記述する。
5から与えられる命令コードOPを保持する。保持され
た命令コードOPは、メモリ・アクセス・ステージ7内
のレジスタ17及びメモリ・アドレス比較器10に与え
られる。
5から与えられる格納アドレスDを保持する。保持され
た格納アドレスDは、レジスタファイル・アドレス比較
器11およびメモリ・アクセス・ステージ7内のレジス
タ20に与えられる。
2は、レジスタ・ファイル2より与えられる2つのデー
タR1,R2を受けるとともに、メモリ・アドレス比較
器10から得られたメモリ・データDATAを受ける。
そして、レジスタ・ファイル・データ・セレクタ12
は、レジスタ・アドレス比較器11から与えられる選択
信号S1、S2及び一致信号GETに応答して動作す
る。詳細は後に記述する。
24を介してレジスタ・ファイル・データ・セレクタ1
2と接続され、与えられたデータを使用して命令コード
OP基づく演算を実行する。演算の実行結果MAは、レ
ジスタ21、メモリ・アドレス比較器10及びデータ・
メモリ3に与えられる。詳細については、後に記述す
る。
ドOPと、メモリーデータ記憶部9に格納されているメ
モリ・アドレスSMA及びメモリ・データMDを受ける
とともに、演算実行器13によって計算された演算結果
MAを受ける。この演算結果MAは読み出し時には読み
出しアドレスとなる。そして、メモリ・アドレス比較器
10は、アドレスSMAと演算結果MAとを比較し、一
致/不一致を検出する。詳細については後に記述する。
ードを保持するためのレジスタ17と格納アドレスを保
持するためのレジスタ20と演算結果のデータを保持す
るデータレジスタ22とを含む。ライトバック・ステー
ジ8では、与えられた格納アドレス20のアドレスにし
たがって実行結果データを保持しているレジスタ22の
データをレジスタ・ファイル2に書き込む。
比較器11の一構成例を図2に示す。レジスタファイル
・アドレス比較器11は、一致検出器111と一致検出
器112とからなる。
られる先行命令の格納アドレスDと、ソース・アドレス
S31との一致/不一致に基づき、H/Lの選択信号S
1をレジスタ・ファイル・データ・セレクタ12に出力
する。一致検出器112は、先行命令の格納アドレスD
と、ソース・アドレスS32との一致/不一致に基づ
き、H/Lの選択信号S2をレジスタ・ファイル・デー
タ・セレクタ12に出力する。
2の一構成例を図3に示す。レジスタ・ファイル・デー
タ・セレクタ12は、各々の出力がデータバス23に接
続されたトライステードバッファ121及び122と、
各々の出力がデータバス24に接続されたトライステー
ドバッファ123及び124と、ANDゲート125及
び126とから構成される。
比較器10より、所望するデータが得られた否かをH/
Lで示す一致信号GETと、レジスタファイル・アドレ
ス比較器11からの選択信号S1とを入力し、その出力
を制御信号GS1として、トライステードバッファ12
1及び123に出力する。ANDゲート126は、一致
信号GETと選択信号S2とを入力し、その出力を制御
信号GS2として、トライステードバッファ122及び
124に出力する。
号GS1の反転信号のH/Lに基づき活性/非活性が制
御され、レジスタ・ファイル2から与えられるデータR
1を入力部に受ける。トライステードバッファ123
は、制御信号GS2の反転信号のH/Lに基づき活性/
非活性が制御され、レジスタ・ファイル2から与えられ
るデータR2を入力部に受ける。
制御信号GS1のH/Lに基づき活性/非活性が制御さ
れ、メモリーデータ記憶部9から得られたデータMDを
入力部に受ける。トライステードバッファ124は、制
御信号GS2メモリ・アドレス活性/非活性が制御さ
れ、メモリーデータ記憶部9から得られたデータMDを
入力部に受ける。
ータ・セレクタ12において、選択信号S1がHレベル
で与えられかつ一致信号GETがHレベルで与えられた
とき、制御信号GS1がHレベルとなるため、トライス
テードバッファ122は、活性状態となり、データMD
をデータバス23に出力する。このとき、トライステー
ドバッファ121は非活性状態であるため、出力はハイ
インピーダンス状態となる。そして、選択信号S2がH
レベルで与えられかつ一致信号GETがHレベルで与え
られたとき、制御信号GS2がHレベルとなると、トラ
イステードバッファ124は、活性状態となりデータM
Dをデータバス24に出力する。このとき、トライステ
ードバッファ123は非活性状態であるため、出力はハ
イインピーダンス状態となる。
うち、一方の信号がLレベルで与えられたとき、制御信
号GS1がLレベルとなるため、トライステードバッフ
ァ121が活性状態となり、データR1をデータバス2
3に出力する。このとき、トライステードバッファ12
2は非活性状態であるため、出力はハイインピーダンス
状態となる。そして、選択信号S2及び一致信号GET
のうち、一方の信号がLレベルで与えられたとき、制御
信号GS1がLレベルとなるため、トライステードバッ
ファ123が活性状態となり、データR2をデータバス
24に出力する。このとき、トライステードバッファ1
24は非活性状態であるため、出力はハイインピーダン
ス状態となる。
演算実行器13は、データバス23,24を介して得ら
れたデータをそれぞれ保持するレジスタ131,132
と、レジスタ131,132によって保持されたデータ
を用いて、命令コードOPに基づく演算を実行する演算
器133とからなる。したがって、命令コードOPが読
み出し動作を指示する場合は、演算器133の演算結果
MAが読み出しアドレスとなる。
図6に示す。メモリ・アドレス比較器10は、一致検出
器101とデータ作成部102とから構成される。
部9に格納されているメモリ・アドレスMAと、演算実
行器13によって計算された演算結果MAと、命令コー
ドOPをそれぞれ受ける。そして、一致検出器101
は、命令コードOPがメモリ読み出し命令であるとき、
保持されているメモリ・アドレスSMAと、読み出しア
ドレスである演算結果MAの一致/不一致を検出し、一
致/不一致に基づきH/Lとなり、データが得られたこ
とを示す一致信号GETを発生する。また、一致検出器
101は、命令コードOPの読み出し内容に基づき、一
致の部分が、1ワード(4バイト)のデータMD内のど
のバイトであるか否かを、各々がH/Lで示すバイト選
択信号B1〜B4をデータ作成部102に出力する。
1〜B4とメモリーデータ記憶部9に格納されているデ
ータMDを受ける。そして、例えば、選択信号B1がH
レベルで、選択信号B2〜B4がLレベルであるとき、
データMDの上位1バイトを下位バイトまでシフトして
データバス信号DATAを生成する。これらの一致信号
GET及びデータ信号DATAは、レジスタ・ファイル
・データ・セレクタ12に与えられる。
に示す。メモリーデータ記憶部9は、ロード(読み出
し)命令のアドレスを一時的に保持する一次メモリであ
るデータ・メモリ91と、メモリ・データを一時的に保
持する一次メモリであるデータ・メモリ92とからな
る。アドレス・メモリ92は、命令コードOPとメモリ
・アドレスMAを受ける。アドレス・メモリ91は、命
令コードOPがロード(読み出し)命令の場合、メモリ
・アドレスMAの下位にビットをマスクしたアドレスを
保持する。またストア命令の場合、リセットする。
続され、データ・メモリ3から出力されたデータLDを
データMDとして保持する。保持したデータMDをメモ
リ・アドレス比較器10に与える。
施例の動作について説明する。以下の説明において図1
に示したRISCが図11(b)を参照して説明した命
令1及び命令2,3を実行するものと仮定する。
(読み出し)命令),命令2(バイト単位のロード(読
み出し)命令),命令3(演算命令)の順で3つの命令
が順次与えられて処理され、これに加えて、命令1でデ
ータ・メモリ3から読み出されたデータの一部を命令2
が読み出し、命令2の実行により読み出されたデータが
命令3の処理の中で使われると仮定する。
・ステージ4における処理が行われ、期間T2において
は命令デコード・ステージ5における命令1の処理が行
われる。実行ステージ6′,メモリ・アクセス・ステー
ジ7,ライトバック・ステージ8における命令1の処理
は、期間T3,T4,T5においてそれぞれ実行され
る。
・ステージ4が実行され、期間T3においては命令デコ
ード・ステージ5における命令2の処理が行われる。
メモリ・アドレスである演算結果MAが計算され、メモ
リーデータ記憶部9のメモリ・アドレスSMAとがメモ
リ・アドレス比較器10により比較される。
モリ・アドレスMAとメモリーデータ記憶部9に格納さ
れたアドレスSMAとが一致しているので、Hレベルの
一致信号GETがメモリ・アドレス比較器10より発生
される。
フェッチ・ステージ4が実行され、期間T4において
は、命令デコード・ステージ5における命令2の処理が
行われる。期間T5においては、命令2のデータがメモ
リーデータ記憶部9に既に得られている。したがって、
期間T5で、命令3の実行ステージ6′として、メモリ
・アドレス比較器10から出力されるデータDATAを
用いて、演算実行器13が演算処理を行うことができ
る。以下、この点を詳述する。
リ・アドレス比較器10は、メモリーデータ記憶部9に
格納されている命令1によって読み出されたデータのメ
モリ・アドレスSMAと命令2のメモリ・アドレスであ
る演算結果MAとを比較する。このとき、命令2の命令
コードOPを参照し、命令コードOPがロード(読み出
し)命令でかつ、アドレスの一致が検出されるため、H
レベルの一致信号GETを発生する。さらに、メモリ・
アドレス比較器10は、メモリーデータ記憶部9に格納
されているデータから必要部分を取り出しデータDAT
Aとして出力する。従って、必要なデータがデータDA
TAとして、レジスタ・ファイル・データ・セレクタ1
2に転送される。
スタファイル・アドレス比較器11は、命令2の格納ア
ドレスDと自身の命令3に含まれるソース・アドレスS
31,S32を比較して選択信号S1及びS2を出力す
る。このとき、命令3は命令2の読み出しだデータを利
用した演算処理を行う命令であるため、選択信号S1,
S2の少なくとも一方はHレベルとなる。
レクタ12は、選択信号S1、S2及び、モリ・データ
が得られたことを示すHレベルの一致信号GETに応答
して、データDATAをデータバス23に与える。すな
わち、データ選択信号S1またはS2がHレベルで与え
られかつ一致信号GETがHレベルで与えらるため、そ
の信号線に応じて、データDATAをデータバス23あ
るいは24に与える。
3で即時利用することができ、命令3は、図11(b)
で示した従来例のように、待機状態を設ける必要がなく
なる。すなわち、図11(c)を参照して、期間T4の
終了時点で、命令2の読み出したデータを得ることがで
き、得られたデータがデータDATAとして命令3に与
えられるので、期間T5において実行ステージ6′によ
る命令3の演算処理が可能となる。
ことにより、RISCの処理能力の向上が図れる。
実施例であるRISCの内部構成を詳細に示すブロック
図である。同図に示すように、第2の実施例の実行ステ
ージ6′′は、第1の実施例に加えて、データが得られ
たことを示す一致信号GETに応答して命令を変更する
命令変更器25をさらに有する。命令変更器25の一構
成例を図8に示す。命令変更器25は、レジスタ・ファ
イル書き込み命令を保持するレジスタ251と選択回路
252とからなる。選択回路252はメモリ・アドレス
比較器10から与えられた一致信号GETと、レジスタ
16から与えられる命令コードOPとを受ける。選択回
路252は、一致信号GETによって制御される。例え
ば、一致信号GETがHレベルである場合、選択回路
は、レジスタ251に保持された読み出し命令無効(変
更命令)を指示する命令コードを選択し、メモリ・アク
セス・ステージ7のレジスタ17に書き込む。一方、一
致信号GETがLレベルの時は、命令コードOPをその
ままレジスタ17に書き込む。
と同様なので省略する。以下、第1の実施例と異なる動
作についてのみ言及する。
して、レジスタ16から得た命令コードOPあるいはレ
ジスタ251に格納された、読み出し命令の無効を指示
する変更命令のいずれかを選択する。すなわち、一致信
号GETがHレベルである場合、選択回路252によ
り、レジスタ251に保持された変更命令が選択され、
レジスタ17に書き込まれる。
メモリーデータ記憶部9より読み出し処理が行われた命
令2のような読み出し命令の実行時には、次段のメモリ
・アクセス・ステージ7で、再度データ・メモリ3から
の読み出し処理を行わないように、命令変更することが
できるため、無駄なメモリ・アクセス処理の実行を阻止
することができる。
算機の一時格納記憶手段は、データ記憶手段からの読み
出しが実行される際、読み出しアドレスを一時格納アド
レスとし、読み出しデータを一時格納データをして格納
しており、命令実行手段は、読み出しアドレスが一時格
納アドレスと一致すると、一時格納記憶手段の一時格納
データを読み出して命令を実行することが可能である。
データ記憶手段からの読み出しを指示し、後に実行され
る第2の命令が第1の命令の読み出しデータを利用する
処理を指示する場合、第2の命令は、第1の命令の読み
出しデータがレジスタに格納されるのを待つことなく、
一時格納記憶手段に格納された格納データを読み出して
命令を実行することができる。
が従来に比べ短縮されるため、効率的なデータ処理を行
い処理能力の向上を図ることができる。
記憶手段の第1のアドレスからの読み出しを指示し、後
に実行される第2の命令もデータ記憶手段の上記第1の
アドレスからの読み出しを指示する場合、第2の命令
は、データ記憶手段にアクセスすることなく、一時格納
記憶手段に格納された格納データを読み出すことができ
る。そこで、請求項2記載の並列計算機の命令実行手段
により、読み出しアドレスが一時格納アドレスに一致し
た(一時格納記憶手段からの読み出しに成功した)場
合、外部データ読み出し手段に与える命令を変更して読
み出し命令を無効にすることにより、外部データ読み出
し手段によるデータ記憶手段からの読み出し処理を行う
という無駄を省くことができる。
じアドレスの読み出しを行う場合は、RISCのよう
に、同じアドレスにアクセスする読み出し命令であっ
て、バイト単位や・ハーフ・バイト単位でデータを読み
出す命令の場合でも、常に複数バイトからなるワード単
位でデータを読み出して必要な部分を抽出する形式の並
列計算機には比較的起こりうるため、処理効率の向上を
図るにはたいへん有効である。
構成を示すブロック図である。
較器の一構成例を示すブロック図である。
クタの一構成例を示す回路図である。
図である。
例を示す説明図である。
例を示すブロック図である。
構成を示すブロック図である。
図である。
る。
イミング図である。
ンの処理の進行状況を示す説明図である。
Claims (2)
- 【請求項1】 レジスタと、 命令実行に必要なデータが格納されるデータ記憶手段
と、 命令コードを受け、前記命令コードを解読する命令解読
手段と、 前記命令解読手段の解読結果に基づき決定される命令
を、必要に応じて前記レジスタの格納データを用いて実
行し、前記命令が前記データ記憶手段からの読み出しを
指示する場合、前記データ記憶手段の読み出しアドレス
を演算して出力する命令実行手段と、 前記命令が前記読み出しを指示する場合、前記データ記
憶手段から、前記読み出しアドレスの格納データを読み
出す外部データ読み出し手段と、 前記命令が前記読み出しを指示する場合、前記読み出し
データを前記レジスタに書き込むレジスタ書き込み手段
とを備え、 前記命令解読手段、前記命令実行手段、前記外部データ
読み出し手段及びレジスタ書き込み手段は、各々パイプ
ライン方式で並列実行可能であり、 前記データ記憶手段からの読み出しが実行される際、前
記読み出しアドレスを一時格納アドレスとし、前記読み
出しデータを一時格納データとして格納する一時格納記
憶手段をさらに備え、 前記命令実行手段は、前記読み出しアドレスが前記一時
格納アドレスを一致すると、前記一時的記憶手段の前記
一時格納データを読み出して、前記命令を実行すること
ができる並列計算機。 - 【請求項2】 前記命令実行手段は、前記読み出しアド
レスが前記一時格納アドレスに一致すると、前記命令の
前記読み出し指示を変更して、前記外部データ読み出し
手段による前記データ記憶手段に対する読み出し処理を
無効にする請求項1記載の並列計算機。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP34843092A JP2821328B2 (ja) | 1992-12-28 | 1992-12-28 | 並列計算機 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP34843092A JP2821328B2 (ja) | 1992-12-28 | 1992-12-28 | 並列計算機 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH06202867A true JPH06202867A (ja) | 1994-07-22 |
JP2821328B2 JP2821328B2 (ja) | 1998-11-05 |
Family
ID=18396957
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP34843092A Expired - Fee Related JP2821328B2 (ja) | 1992-12-28 | 1992-12-28 | 並列計算機 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2821328B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08272611A (ja) * | 1995-03-31 | 1996-10-18 | Nec Corp | マイクロプロセッサ |
-
1992
- 1992-12-28 JP JP34843092A patent/JP2821328B2/ja not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08272611A (ja) * | 1995-03-31 | 1996-10-18 | Nec Corp | マイクロプロセッサ |
Also Published As
Publication number | Publication date |
---|---|
JP2821328B2 (ja) | 1998-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5706459A (en) | Processor having a variable number of stages in a pipeline | |
US5404552A (en) | Pipeline risc processing unit with improved efficiency when handling data dependency | |
JP2539199B2 (ja) | デジタルプロセッサ制御装置 | |
US6081887A (en) | System for passing an index value with each prediction in forward direction to enable truth predictor to associate truth value with particular branch instruction | |
CA2016532C (en) | Serializing system between vector instruction and scalar instruction in data processing system | |
JPH02297630A (ja) | デイジタル・データ処理システム | |
JP2000330787A (ja) | 命令ループを実行するコンピュータシステムおよび命令ループ実行方法 | |
JPH05233271A (ja) | データプロセッサ | |
JP2560988B2 (ja) | 情報処理装置および処理方法 | |
EP0297943B1 (en) | Microcode reading control system | |
US20220365787A1 (en) | Event handling in pipeline execute stages | |
JPH03233630A (ja) | 情報処理装置 | |
JPH0581119A (ja) | レジスタ間接モードを用いる汎用メモリ・アクセス方式 | |
US6161171A (en) | Apparatus for pipelining sequential instructions in synchronism with an operation clock | |
JP2821328B2 (ja) | 並列計算機 | |
US5421026A (en) | Data processor for processing instruction after conditional branch instruction at high speed | |
JP3490005B2 (ja) | 命令制御装置及びその方法 | |
JPH0248932B2 (ja) | ||
JPH05241827A (ja) | 命令バッファ制御装置 | |
JPS6329292B2 (ja) | ||
US6360310B1 (en) | Apparatus and method for instruction cache access | |
JPH02197924A (ja) | 中央演算処理装置 | |
JPH06139071A (ja) | 並列計算機 | |
JPH07200406A (ja) | キャッシュシステム | |
US8117383B2 (en) | Hardware accelerator based method and device for string searching |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Year of fee payment: 9 Free format text: PAYMENT UNTIL: 20070828 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Year of fee payment: 10 Free format text: PAYMENT UNTIL: 20080828 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Year of fee payment: 10 Free format text: PAYMENT UNTIL: 20080828 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Year of fee payment: 11 Free format text: PAYMENT UNTIL: 20090828 |
|
LAPS | Cancellation because of no payment of annual fees |