JP2702137B2 - ベクトル演算命令の処理方法 - Google Patents

ベクトル演算命令の処理方法

Info

Publication number
JP2702137B2
JP2702137B2 JP63059498A JP5949888A JP2702137B2 JP 2702137 B2 JP2702137 B2 JP 2702137B2 JP 63059498 A JP63059498 A JP 63059498A JP 5949888 A JP5949888 A JP 5949888A JP 2702137 B2 JP2702137 B2 JP 2702137B2
Authority
JP
Japan
Prior art keywords
vector
processor
instruction
period
operation instruction
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.)
Expired - Fee Related
Application number
JP63059498A
Other languages
English (en)
Other versions
JPH01233558A (ja
Inventor
秀明 藤巻
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP63059498A priority Critical patent/JP2702137B2/ja
Publication of JPH01233558A publication Critical patent/JPH01233558A/ja
Application granted granted Critical
Publication of JP2702137B2 publication Critical patent/JP2702137B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)
  • Complex Calculations (AREA)

Description

【発明の詳細な説明】 〔概 要〕 中央処理装置と、ベクトル演算を行うベクトルプロセ
ッサを設けたベクトル演算プロセッサシステムに関し、 ベクトル演算処理に要する処理時間を短縮することを
目的とし、 中央処理装置は、ベクトル演算の対象とするベクトル
データのロード命令とベクトル演算命令とが到来したと
き、ベクトルプロセッサのレジスタへのベクトルデータ
のロードを開始するとともにこのベクトルプロセッサを
起動し、予めロードされていたベクトルデータとこのロ
ード中の上記ベクトルデータ中のロードされてきた要素
とによって上記ベクトル演算命令によるベクトル演算処
理を逐次行わせとともに、この中央処理装置に、ベクト
ルプロセッサを起動したときにセットされ、ベクトル演
算命令の実行ステートでリセットされるフラグを設け
て、このフラグがセットされている期間中の上記中央処
理装置への割込みについては、オペランドアクセス例外
割込および緊急マシンチェック割込以外の割込みを禁止
するように構成した。
〔産業上の利用分野〕
パイプライン処理によってベクトル演算を行うベクト
ルプロセッサを設けたベクトル演算プロセッサシステム
に関する。
〔従来の技術〕
第5図は本発明が対象とするベクトル演算プロセッサ
システムを示すもので、主記憶装置Mおよびプロセッサ
Pを含む汎用のプロセッサシステムPSに例えばパイプラ
イン処理によってベクトル演算を行うベクトルプロセッ
サVPが付加されており、ベクトル演算を行なう場合には
汎用プロセッサPの制御の下にロードされたベクトルデ
ータをこのベクトルプロセッサVPによって処理して、そ
の処理結果を上記プロセッサPに返送するように構成さ
れている。
このようなベクトル演算プロセッサシステムにおいて
は、ベクトルプロセッサVPへのベクトルロードパイプが
1本しかなく、また、主記憶装置Mからベクトルデータ
をベクトルプロセッサVPにロードする処理を上記プロセ
ッサPが処理するため、このベクトルデータのロードが
終了するまで次の処理を開始することができないという
問題があった。
第6図は上記のようなベクトルプロセッサを備えるプ
ロセッサシステムによって2つのベクトル間の演算を行
なう場合の概念的なタイムチャートを示すもので、主記
憶装置MからのプロセッサPの制御によってベクトルプ
ロセッサのベクトルレジスタへの第1のベクトルデータ
のロードが終了した後、この第1のベクトルと演算すべ
き第2のベクトルデータを同様にベクトルプロセッサの
ベクトルレジスタにロードする。
次いでこのプロセッサPからベクトルプロセッサVPに
ベクトル演算を実行させるための起動信号を送出してベ
クトル演算を行わせ、その演算結果をこのベクトルプロ
セッサVPからプロセッサPの制御によって主記憶装置M
に格納するが、図示のように、これらの処理に要する時
間がそれぞれ1000τであるとすると、上記の処理を行な
うに必要な処理時間4000τとなる。
第7図は上記のような2つのベクトル間の演算処理を
行なう場合のタイムチャートをより詳細に示したもの
で、主記憶装置MからベクトルプロセッサVPのベクトル
レジスタへの第1のベクトルデータのロードが終了した
後の処理状態を示している。なお、横軸のτ12,……
はそれぞれ1処理期間を示している。
同図(1)は、このベクトルレジスタに格納されてい
る第1のベクトルと演算すべき第2のベクトルデータを
ロードするベクトルロード命令の処理ステップを示すも
ので、τ期間はこの命令をデコードするDステート期
間であり、次のτ期間はこのデコードされた命令から
アドレスを計算するAステート期間であり、これによっ
て求められたアドレスからこの例では10個として例示し
たベクトルオペランドをτ〜τ12の期間に汎って主記
憶装置から読出してベクトルプロセッサのベクトルレジ
スタに格納する。
なお、続くτ13の期間は、ベクトルレジスタに書込み
行うWステートの期間である。
同図(2)は上記ベクトルロード命令に続いて上記期
間τに到来するベクトル演算命令であり、この命令は
直ちにデコードされるが上記第2のベクトルデータの全
要素のロードが未だ終了していないので、この全要素の
ロードの終了した期間τ12になってAステートのアドレ
ス計算を行い、続く期間τ13の実行期間であるE1ステー
トでベクトルプロセッサVPに対してベクトル演算を実行
させるために“起”として示した起動をかける。
これによって、同図(3)に示すように、このベクト
ルプロセッサはベクトルレジスタにそれぞれ格納されて
いる第1および第2のベクトルデータの全要素を用いて
τ14〜τ23の期間にベクトル演算を実行する。
〔発明が解決しようとする課題〕
上記のごとき従来技術においては、中央処理装置が主
記憶装置からベクトルプロセッサへのデータ転送の管理
を行っているためにベクトルデータのロードが終了する
まで他の処理を行うことができないばかりでなく、この
中央処理装置と主記憶装置とベクトルプロセッサとが1
つのバスを共用しているために異なる処理を並例に実行
することができないという問題があった。
本発明は、ベクトル演算処理を高速化することによっ
て中央処理装置やバスの占有時間を短縮し、これによっ
てシステム全体の処理効率を向上させることを目的とす
る。
〔課題を解決するための手段〕
中央処理装置と、この中央処理装置の制御の下に受け
取ったベクトルデータをパイプライン処理によってベク
トル演算を行うベクトルプロセッサとを備えるベクトル
演算プロセッサシステムにおいて、上記中央処理装置は
ベクトル演算の対象とするベクトルデータのロード命令
とベクトル演算命令とが到来したとき、このベクトルデ
ータの上記ベクトルプロセッサのレジスタへのロードを
開始するとともに、このベクトルプロセッサを起動し
て、予めロードされていたベクトルデータとこのロード
中の上記ベクトルデータ中のロードされてきた要素とに
よって上記ベクトル演算命令によるベクトル演算処理を
逐次行わせ、上記中央処理装置には、上記ベクトルプロ
セッサを起動したときにセットされてベクトル演算命令
の実行ステートでリセットされるフラグを設け、このフ
ラグがセットされている期間中の上記中央処理装置への
割込みについては、オペランドアクセス例外割込および
緊急マシンチェック割込以外の割込みを禁止するように
した。
また、上記ベクトル演算命令に続くベクトル演算命令
を、ベクトルプロセッサの他のパイプラインによって並
列実行させるようにすることができる。
〔作 用〕
ベクトル演算を行うための命令としては、第1番目の
ベクトルデータを主記憶装置からプロセッサにロードす
るための第1のベクトルロード命令、第2番目のベクト
ルデータを主記憶装置からプロセッサにロードするため
の第2のベクトルロード命令、ベクトル演算の演算内容
を指定するための例えばベクトル加算命令であるベクト
ル加算命令あるいはベクトル乗算命令であるベクトル乗
算命令などの1つあるいは複数個のベクトル演算命令、
および得られた演算結果を主記憶装置に格納するための
ベクトルストア命令が一般的にセットとなっている。
したがって、本発明の原理を示す第1図のタイムチャ
ートに示したように、上記第1のベクトルロード命令に
よって第1番目のベクトルデータのベクトルプロセッサ
のベクトルレジスタへのロードが終了して、第2のベク
トルロード命令によって第2番目のベクトルデータがベ
クトルプロセッサにロードされてくるとき、実行すべき
演算の内容が識別されていればこの第2番目のベクトル
データがすべてロードされていない状態であっても、第
2番目のベクトルデータ中のロードされたベクトル要素
と第1番目のベクトルデータとを用いたベクトル演算を
実行することができる。
なお、この第1図には、第2のベクトルデータのロー
ドが開始されてからその第2のベクトルデータの要素が
ベクトルプロセッサのベクトルレジスタに確立するまで
の1τ期間の遅れを示してあり、この遅れを考慮しても
この第1図に示したように3001τの時間で処理が終了し
ており、第6図に示した従来例における処理時間は4000
τに比較すると約3/4の処理時間で足りる。
ところで、上記のような命令のプロセッサ内での処理
は、少なくとも、その命令のデコードを行うDステー
ト、アドレスを計算するAステート、演算を実行するE
ステートおよびこのベクトル演算の結果を主記憶装置に
ストアするためのWステートを含んでいる。
第2図は本発明による処理を前記した第7図の従来例
の処理におけると同様により詳細に示すためのもので、
第2番目のベクトルデータのロード命令以降のプロセッ
サPにおける処理ステップを示すものであり、同図
(1)は上記第2番目のベクトルデータのロード命令の
処理ステップを示すものであり、期間τのDステート
において命令をデコードし、次の期間τのAステート
においてこのデコードされた命令によってアドレスを算
出してから、この図示の例では10個の所定のオペランド
を次のEステートにあるτ〜τ12期間中主記憶装置か
らロードしてベクトルプロセッサのベクトルレジスタに
書込む。
1処理サイクル期間遅れた期間τに到来する同図
(2)のベクトル演算命令はこのDステートの期間τ
にデコードされ、続くτの期間にアドレスを計算する
と同時にベクトルプロセッサに対してベクトル演算を実
行するように“起”として示した起動をかける。
続くτ〜τ12の期間には、同図(3)に示すように
それぞれアドレスを計算するとともに、第2番目のベク
トルデータ中のロードされてきた要素d1〜d10によって
それぞれ第1番目のベクトルデータとのベクトル演算e1
〜e10を逐次行わせる。
本発明の動作を示す第2図と従来例の動作を示す第7
図とを比較すれば明らかなように、従来例では演算すべ
きベクトルデータのロードがτで開始されてからτ23
でベクトル演算が終了するまで21τの期間を要するのに
対して、本発明においてはτでベクトルデータの最初
の要素のロードが開始されてからτ13でそのベクトル演
算が終了するまで11τの期間でよいから、約2倍の高速
化を図ることができる。
しかしながら、期間τでベクトルプロセッサを起動
した後に何らかの理由で割込が発生すると、ロードされ
ることを予定していたベクトルデータがロードされない
ことになって不都合を生じるので、オペレーションシス
テムの異常などによるオペランドアクセス例外あるいは
ハードウェアの異常による緊急マシンチェック以外の割
込みは行わないようにする必要がある。
また、第2図の(2)に示したベクトル演算命令の期
間τ13のEステートにおけるベクトルプロセッサの起動
については、このベクトル演算命令の起動が期間τ
既に済んでいるのでこれを抑圧しておく必要がある。
これらの必要に対処するため、プロセッサにはベクト
ルプロセッサを起動したことを示すフラグを設け、この
フラグがセットされている期間中は上記のオペランドア
クセスがセットされている期間中は上記のオペランドア
クセス例外あるいはハードウェアの異常による緊急マシ
ンチェック以外の割込みおよびベクトル演算命令による
ベクトルプロセッサの重複起動を行わないようにした。
なお、このフラグのリセットは、上記ベクトル演算命令
の期間τ13のEステートによって行えばよい。
また、上記のオペランドアクセス例外についてはソフ
トにおいてこのオペランドアクセス例外が発生しないよ
うに保証しており、また、ハードウェアの異常も極めて
希にしか発生しないので実際上これらの割込みが生ずる
可能性が低いが、万一これらの割込みが発生した場合に
は処理中のタスクの再実行を行うようにソフトを構成し
ておくことが望ましい。
さらに、ベクトルロード命令に引き続いて複数のベク
トル演算命令が連続している場合には、その演算の種類
には関係なく、ベクトルプロセッサの異なるパイプライ
ンを使用して処理し得る演算命令であれば上記同様に並
列処理を行うことができ、例えば第3図に示すように、
(2)で示したベクトル演算命令#1を(5)に示すよ
うなタイミングで実行するとともに、次の期間τに到
来する(3)で示したベクトル演算命令#2を(6)に
示すようなタイミングでτの期間から上記ベクトル演
算命令#1による演算と並列に実行させる。
なお、この処理の詳細については次の実施例において
説明する。
〔実施例〕
第4図は本発明によるプロセッサシステムの実施例に
ついて本発明に関連する要部の構成のみを示したもの
で、中央処理装置11、命令バッファレジスタ12、起動バ
ッファ131,132,……13nおよびフラグがセットされるフ
リップ・フロップ141,142,……14nを含むプロセッサ10
と、主記憶装置1、ベクトルプロセッサ20とからなる。
この実施例の動作をベクトル演算命令が2つ連続す
る、先に示した第3図の例について説明する。
中央処理装置11は期間τのDステートで命令バッフ
ァレジスタ12にフェッチされた命令をデコードするとと
もにそのデコードした結果が第3図(1)に示すベクト
ルロード命令であることを検出する。
続くτの期間に、中央処理装置11は、上記ベクトル
ロード命令によって指定されるアドレスを算出するとと
もに主記憶装置1およびベクトルプロセッサ20に対して
ベクトルデータの転送命令を送出し、同時に上記命令バ
ッファレジスタ12中のベクトルロード命令を起動バッフ
ァに転送する。
さらに、このτの期間に命令バッファレジスタ12に
フェッチされた次の命令が到来するので、中央処理装置
11はこの命令をデコードしてこの命令が(2)のベクト
ル演算命令#1であることを検出する。
次の期間τには上記転送命令に基づいて主記憶装置
1からベクトルプロセッサ20のベクトルレジスタ21への
ベクトルデータの転送が開始され、また、中央処理装置
11は、上記(2)のベクトル演算命令#1によって指定
されるアドレスを計算するとともに、命令バッファレジ
スタから上記ベクトル演算命令を起動バッファに移すこ
とによって送出される起動信号によってこの起動バッフ
ァに対応するフリップ・フロップ回路141をセットする
とともにベクトルプロセッサ20を起動し、さらに、この
期間τに到来する命令をデコードしてこの命令が
(3)のベクトル演算命令#2であることを検出する。
このようにして起動されたベクトルプロセッサ20のベ
クトルレジスタ21には、第3図の説明の際に述べたよう
に演算対象とする第1のベクトルデータが既にストアさ
れているので、次のτの期間に確立する演算対象であ
る第2のベクトルデータの要素d1を用いてパイプライン
22、例えばパイプライン221による加算などのパイプラ
イン処理e1を実行する。
そして、このτの期間には、中央処理装置11は、上
記(2)のベクトル演算命令#2によって指定されるア
ドレスを計算するとともに、命令バッファレジスタから
上記ベクトル演算命令を起動バッファ132に移すことに
よって送出される起動信号によってこの起動バッファに
対応するフリップ・フロップ回路142をセットするとと
もにベクトルプロセッサ20を起動し、さらに、この期間
τに到来する命令をデコードしてこの命令が(3)の
ベクトル演算命令#2であることを検出する。
次のτの期間には、ベクトル演算命令#1について
は前のτの期間におけると同様に、第2のベクトルデ
ータの確立したデータd2を用いてパイプライン221によ
るパイプライン処理e2が実行されるが、この期間にはベ
クトル演算命令#2による演算も起動されるので、上記
のベクトル演算命令#1による演算に使用されているパ
イプライン221以外のパイプライン例えば222を用いたベ
クトル演算命令#2による演算も並列的に実行される。
なお、このベクトル演算命令#2による演算の対象と
なるベクトルデータは、前記の第1、第2のベクトルロ
ード命令によってロードされたベクトルデータ、あるい
は上記ベクトル演算命令#1によって処理されたベクト
ルデータであってもよいことはいうまでもない。
τ〜τ13の期間は上記の期間τにおけると同様な
演算処理をそれぞれのベクトルデータについて行うが、
このτ13の期間にベクトル演算命令#1の実行を指示す
るEステートE1が検出されるけれども、この演算の実行
は既に行われているので、前記フリップ・フロップ回路
141がセットされていることを中央処理装置11が検出し
てこの実行指示がベクトルプロセッサ20に送出されるの
を抑圧するとともに、その抑圧が終了したときにこのフ
リップ・フロップ回路141をリセットする。
なお、ベクトル演算命令#2のEステートE1が検出さ
れるτ14の期間においても上記同様に、このベクトル演
算命令#2による実行指示の抑圧およびフリップ・フロ
ップ回路142のリセットが行われる。
これら、フリップ・フロップ回路14の例えばセット状
態にあるときのフラグは、上記のように実行指令の抑圧
に用いられるほかに、上記オペランドアクセス例外割込
および緊急マシンチェック割込以外の割込みを禁止する
ためのフラグとしても用いられる。
〔発明の効果〕
本発明によれば、予めロードされていた第1のベクト
ルデータとロード中の第2ベクトルデータのロードされ
た要素とによってベクトル演算処理を逐次行わせること
ができるので、ベクトル演算の処理速度が著しく向上す
るという格別の効果が達成される。
また、複数のベクトル演算命令をベクトルプロセッサ
のそれぞれ異なるパイプラインによって処理すれば、複
数のベクトル演算命令についての並列処理が可能とな
り、ベクトル演算の処理速度を更に向上させることがで
きる。
【図面の簡単な説明】 第1図は本発明の原理を示すタイムチャート、 第2図および第3図は本発明による処理をより詳細に示
すタイムチャート、 第4図は本発明の実施例を示すブロック図、 第5図は本発明が対象とするベクトルプロセッサを備え
たプロセッサシステムを示す図、 第6図は従来のベクトルプロセッサを備えたプロセッサ
システムにおける処理を示すタイムチャート、 第7図は上記第6図の処理をさらに詳細に示すタイムチ
ャートである。

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】中央処理装置と、この中央処理装置の制御
    の下に受け取ったベクトルデータをパイプライン処理に
    よってベクトル演算を行うベクトルプロセッサとを備え
    るベクトル演算プロセッサシステムにおいて、 上記中央処理装置は、ベクトル演算の対象とするベクト
    ルデータのロード命令とベクトル演算命令とが到来した
    とき、このベクトルデータの上記ベクトルプロセッサの
    レジスタへのロードを開始するとともに、このベクトル
    プロセッサを起動して、予めロードされていたベクトル
    データとこのロード中のベクトルデータ中のロードされ
    てきた要素とによって上記ベクトル演算命令によるベク
    トル演算処理を逐次行わせ、 上記中央処理装置には、上記ベクトルプロセッサを起動
    したときにセットされ、ベクトル演算命令の実行ステー
    トでリセットされるフラグを設け、 このフラグがセットされている期間中の上記中央処理装
    置への割込みについては、オペランドアクセス例外割込
    および緊急マシンチェック割込以外の割込みを禁止する
    ことを特徴とするベクトル演算命令の処理方法。
  2. 【請求項2】上記ベクトル演算命令に続くベクトル演算
    命令を、ベクトルプロセッサの他のパイプラインによっ
    て並列実行させるようにしたことを特徴とする請求項1
    記載のベクトル演算命令の処理方法。
JP63059498A 1988-03-15 1988-03-15 ベクトル演算命令の処理方法 Expired - Fee Related JP2702137B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63059498A JP2702137B2 (ja) 1988-03-15 1988-03-15 ベクトル演算命令の処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63059498A JP2702137B2 (ja) 1988-03-15 1988-03-15 ベクトル演算命令の処理方法

Publications (2)

Publication Number Publication Date
JPH01233558A JPH01233558A (ja) 1989-09-19
JP2702137B2 true JP2702137B2 (ja) 1998-01-21

Family

ID=13115011

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63059498A Expired - Fee Related JP2702137B2 (ja) 1988-03-15 1988-03-15 ベクトル演算命令の処理方法

Country Status (1)

Country Link
JP (1) JP2702137B2 (ja)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5744173B2 (ja) * 1975-02-27 1982-09-20
JPS60250476A (ja) * 1984-05-25 1985-12-11 Nec Corp 処理装置
JPH0627964B2 (ja) * 1985-08-30 1994-04-13 キヤノン株式会社 画像記録装置

Also Published As

Publication number Publication date
JPH01233558A (ja) 1989-09-19

Similar Documents

Publication Publication Date Title
US6233670B1 (en) Superscalar processor with direct result bypass between execution units having comparators in execution units for comparing operand and result addresses and activating result bypassing
US20020144099A1 (en) Hardware architecture for fast servicing of processor interrupts
JP2531760B2 (ja) ベクトル処理装置
JPH0769812B2 (ja) データ処理装置
JPH0530112A (ja) デイジタル信号処理システムの制御方法
JPS6142308B2 (ja)
JP2702137B2 (ja) ベクトル演算命令の処理方法
KR100188374B1 (ko) 연산처리장치
JP3726092B2 (ja) ベクトル処理装置およびベクトルロード方法
JP2876791B2 (ja) 例外処理装置および例外処理方法
JP2920968B2 (ja) 命令処理順序制御方式
JP2965045B2 (ja) 半導体集積回路装置
JPH07114509A (ja) メモリアクセス装置
JP2549410B2 (ja) 主記憶参照順序制御方式
JPH0228765A (ja) 命令処理順序制御システム
JPH0228724A (ja) 分岐命令制御方式
JPH05108697A (ja) スカラオペランド付ベクトル命令処理方式及び方法
JPH05250161A (ja) マイクロコンピュータ装置
JPH0564373B2 (ja)
JPH0321941B2 (ja)
JPH08235135A (ja) 通信レジスタ付並列計算機
JPH0695304B2 (ja) デ−タ処理装置
JPH0740226B2 (ja) 分岐命令制御方式
JPH01224870A (ja) 情報処理装置における主記憶アクセス命令実行制御方式
JPS5918733B2 (ja) デ−タ送受信制御装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees