JPH0452759A - ベクトル命令多重処理方式 - Google Patents

ベクトル命令多重処理方式

Info

Publication number
JPH0452759A
JPH0452759A JP2155808A JP15580890A JPH0452759A JP H0452759 A JPH0452759 A JP H0452759A JP 2155808 A JP2155808 A JP 2155808A JP 15580890 A JP15580890 A JP 15580890A JP H0452759 A JPH0452759 A JP H0452759A
Authority
JP
Japan
Prior art keywords
vector
pipeline
processing
load
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.)
Pending
Application number
JP2155808A
Other languages
English (en)
Inventor
Hideaki Fujimaki
藤巻 秀明
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 JP2155808A priority Critical patent/JPH0452759A/ja
Publication of JPH0452759A publication Critical patent/JPH0452759A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔目 次〕 概要 産業上の利用分野 従来の技術と発明が解決しようとする課題課題を解決す
るための手段 作用 実施例 発明の効果 〔概要〕 ベクトル演算を複数個のパイプラインで処理し。
且つ、オンデマンドページング方式による仮想記憶空間
上でベクトル命令を処理する方式に関し、オンデマンド
ページングモード下においても、複数個のパイプライン
をできる限り、並列に使用することを目的とし、 主記憶装置 (MSU)をアクセスするバイブラインで
ページフォルトが発生したとき、複数個の全パイプライ
ンでのベクトル命令の処理を中断すると共に、上記主記
憶装置(MSU)をアクセスするバイブライン (ロー
ド/ストアパイプライン)と、主記憶装f (MSU)
をアクセスしないバイブライン(演算パ1゛ブライン)
との両方に、上記中断し7たときの各パイブラ・インで
処理中のベクトル命令の状態(再開要素番号等)を保持
する手段を設し3て、上記ページフォルトが発生しで、
各バイブラインでのベクトル処理を中断し、上記主記憶
装jf(MSU)上のオペ1/イテイングシステム(O
5)4二割込んだとき、該オペレーティングシステム(
OS)からの再開指示に基づいて、上記保持手段に格納
されている中断状態から、各バイブラインで中断されて
いる複数個のベクトル命令の処理を再開するように構成
する。
(産業上の利用分野〕 本発明は、ベクトル演算を複数個のバイブラインで処理
し、且つ、オンデマンドページング方式による仮想記憶
空間」二でベクトル命令を処理する方式に関する。
近年のベクトルパイプライン方式の計算機による高速処
理が普及するに伴い、多数のユーザからの該ベクトル計
算機によるデータ処理の要求が高ま、っており、その結
果として、処理されるベクトルデータのデータ量も増大
し、仮想記憶空間上に該ベクトルデータを展開する必要
が生じている。
従って、かかる仮想記憶空間に展開したベクトルデータ
に対して、高速に、該ベクI・ルデータを処理すること
ができるヘクトル命令処理方弐が必要とされる。
[従来の技術と発明が解決しようとする課題〕第2図は
従来の−、クトル命令処理方式を説明する図であり、(
a)は構成例を示し、(lil) 、 (b2)は概略
の動作フローを示している。
(a)図に示したような、複数個のバイブライン(演算
パイプライン20.ロード、′ストアパイプライン2]
)を備えたベクトル計算機のベクI−ルコニッI・(ν
υ)2においては、主記憶装置(MSU) 1にベクト
ルデータが展開されている場合、(hl)図に示したよ
うに2.複数個のベクトル命令(1) ” (3)を並
列に実行させることで、当該ベクトルデータの処理能力
の向上を図っている。
然しながら、最近のよ・うに、該ベクトル計算機を使用
する7−・ザが多様化j7、ベクトルデータのJも大き
くな2.てくると、主記憶装置(にSO) iの実記憶
空間内では、該膨大なベクトル演算開し切れなく4綽な
り、」−記ファ・イル記憶装置(DASD)上に仮想記
憶空間を構築し、上記実記憶空間(主記憶装置(MSU
) 1 ) fにページを単位として該べり;−ルデ・
−りを展開しなからベクトルデータを処理する必要がQ
Q Iニる。この処理方式をオンデマンドページング方
式という。
このような場合、該ロード/ストアパイプライン21で
の処理で、主記憶装置(MSU) 1上に、ロードずべ
きベクトルデータがなくなり、所謂、ページフォル[・
が検出されると、該ロード/ストアパイプライン21で
の処理を中断し、そのとき該ロード/ストアパイプライ
ン21で実行中のベクトル命令のインデックス(即ち、
再開要素番号)を特定のステータスレジスタ210に保
持し、オペレーティングシステム(OS)に割込む。
該割込まれたオペレイティングシステム(O3)によっ
て、該仮想記憶空間からベクトルデータをページ単位で
、主記憶装置(MSU) 1にページインされる。
該ベージインが完了すると、該オペレーティングシステ
ム(OS)からの再開指示(具体的には、該ベクトル命
令を再発行して)により1.上記ロード/ストアパイプ
ライン21のステータスレジスタ2101こ保持されて
いる要素番号から、該ベクトル命令の実行を再開する。
このとき、他の演算パイプライン20で実行中のベクト
ル命令については、当該ベクトル計算機システムの中央
処理装置であるスカラユニット(SU)から突き放され
、ベクトルユニット(VU)2で独立に演算が行われて
いる。
従って、上記のように、ロード/ストアパイプライン2
1でページフォルトが発生して、該ロード/ストアパイ
プライン21での処理を中断するとき、同様に、他の演
算パイプライン20での処理も中断してもよいが1、該
演算パイプライン20で実行中のベクトル命令のアドレ
ス(スカラユニット(SU)のプログラムステータス語
(PSW)で指示される)は勿論、中断時点での要素番
号も、上記スカラユニット(Sll)では管理されてい
ないので、該ベクトル命令の再発行は勿論、中断要素か
らの再開処理も困難であった。
そこで、従来方式においては、上記のごとき仮想記憶方
式をとるベクトル計算機において、ページフォルトが発
生したときの、オペレイティングシステム(O3)への
割込み→ページ獲得→再実行という一連のプロセスを、
いかなる場合にも矛盾なく実行する為に、本図(b2)
に示したように、該ページフォルトを発生させる可能性
のあるベクトル命令、即ち、主記憶装置(MSU) 1
へのアクセスを伴うベクトル命令(ベクトルロード命令
/ベクトルストア命令)は、他のベクトル命令とはオー
バラップさせることなく、シリアライズして、単独で実
行させていた。
上記ロード/ストアパイプライン21にステータスレジ
スタ210を設けて、ページフォルトを発生したとき、
オペレイティングシステム(O3)の命令によって、該
ステータスレジスタ210の内容を読み出し、該読み出
された内容に従って、該中断されたベクトル命令を再発
行し、該ページフォルト発生の直前の要素から、該中断
されたベクトル命令を実行する方式については、本願出
願人が特願平1−53674号「ベクトル命令処理方式
」で開示しである技術である。
この従来方式においては、メモリアクセスを伴うベクト
ル命令がスカラユニット(SU)で検出されたとき、後
続する他のベクトル命令のベクトル演算ッ)(Vtl)
2への投入を抑止するので、複数個のベクトル命令をオ
ーバラップさせて処理することができない。
従って、ロード/ストアパイプライン21以外の他の演
算パイプライン20は未使用の状態となっており、本来
使用可能であるこれらの演算パイプライン20が非使用
の状態とされることにより、該非使用の演算パイプライ
ン20の分だけ、当該ベクトル計算機の性能が低下する
ことになる。
本発明は上記従来の欠点に鑑み、ベクトル演算を複数個
のパイプラインで処理し、且つ、オンデマンドページン
グ方式による仮想記憶空間上でベクトル命令を処理する
ベクトル計算機において、オンデマンドページングモー
ド下においても、上記複数個のパイプラインをできる限
り、並列に使用することができるベクトル命令多重処理
方式を提供することを目的とするものである。
〔課題を解決するための手段〕
上記の問題点は下記の如くに構成したベクトル命令多重
処理方式によって達成される。
ベクトル演算を複数個のパイプラインで処理し。
且つ、オンデマンドページング方式による仮想記憶方式
をとるベクトル計算機において、主記憶装置(MSU)
をアクセスするパイプラインでページフォルトが発生し
たとき、上記複数個の全パイプラインでのベクトル命令
の処理を中断すると共に、 上記主記憶装置(MSU)をアクセスするパイプライン
と、主記憶装置(MSU)をアクセスしないパイプライ
ンとの両方に、上記中断したときの各パイプラインで処
理中のベクトル命令の状態を保持する手段を設けて、 上記ページフォルトが発生して、各パイプラインでのベ
クトル処理を中断し、上記主記憶装置(MSU)上のオ
ペレイティングシステム(O5)に割込んだとき、該オ
ペレイティングシステム(O3)からの再開指示に基づ
いて、上記保持手段に格納されている中断状態から、各
パイプラインで中断されている複数個のベクトル命令の
処理を再開するように構成する。
〔作用〕
即ち、本発明によれば、ベクトル演算を複数のバイブラ
インで処理するベクトル計算機において、ロード/スト
アバイブラインと、他の演算バイブラインのそれぞれに
、ステータスレジスタを設けるように構成する。
従って、上記ロード/ストアパイプライン、及び、演算
バイブラインが全て動作中において、メモリアクセスを
行うロード/ストアパイプラインで、ページフォルトが
発生すると、スカラユニッ) (SU)に対してページ
フォルトの割込み■が通知されると同時に、該ロード/
ストアパイプラインは勿論9他の演算バイブラインも、
全て、ベクトル命令の処理が中断され、そのときのベク
トル命令、及び、要素番号が、それぞれのバイブライン
に備えられているステータスレジスタに保持される。
スカラユニット(SU)のオペレイティングシステム(
O5)は、該割込み通知により、剖込み処理ルーチン(
ページフォルトルーチン)に分岐し、ページ獲得処理を
行う。
ここで、ページ獲得に成功した場合は、該オペレイティ
ングシステム(O3)からの指示に基づき、各バイブラ
インで中断されたベクトル命令が再発行され、それぞれ
のバイブラインに具備されているステータスレジスタに
格納されている要素番号(エレメント番号)以降のエレ
メントについて処理を再開する。
このとき、各演算バイブライン中で実行途中のベクトル
命令に、処理の順序性があると、別途設けられているプ
ロセスステータスレジスタに保持されている内容に従っ
て、定められた順序の通りに実行される。
従って、本発明によれば、仮想記憶空間上のベクトル処
理においても、ベクトル命令を、オーバラップして処理
することができ、当該ヘクトル計算機の処理能力を向上
させることができる効果がある。
(実施例〕 以下本発明の実施例を図面によって詳述する。
第1図は本発明の一実施例を示した図であり、複数個の
バイブライン、例えば、ロード/ストアパイプライン2
1.及び、演算バイブライン20のそれぞれに、ロード
/バイブライン21でメモリアクセス命令を実行中にペ
ージフォルトを検出し、それぞれのパイプラインでのベ
クトル処理を中断したときの、各パイプライン21,2
0で実行中のベクトル命令、及び、再開要素番号を保持
するステータスレジスタ210,200を設ける手段が
本発明を実施するのに必要な手段である。尚、全図を通
して同じ符号は同じ対象物を示している。
以下、第1図により、本発明のベクI・ル命令多重処理
方式を説明する。
本ベクトルユニット(VIJ) 2においては、図示さ
れている如くに、1個の口・−ド/ストアバイブライン
21.及び、3個の演算バイブライン20で構成され”
Cおり、通常、全てのパイプライン20.21にベクト
ル命令が投入されて、並列に、該ベクトル命令を処理す
る。
今、上記1個のロード/ストアパイプライン21、及び
、3個の演算バイブライン20が、全て動作中、主記憶
装置(MSU) 1に対してメモリアクセスを実行して
いるロード/ストアパイプライン21において処理中の
ベクトル命令(ベクトルロード命令、或いは、ベクトル
ストア命令)で、前述のページフォルトが発生したとす
ると、該ロード/ストアバイブライン2工から、割込み
通知信号■が送出され、同時に、他の演算バイブライン
20でのベクトル演算が全て中断され、そのときのベク
トル命令、要素番号が、対応するステータスレジスタ2
00に表示(保持)され、該ロード/ストアパイプライ
ン21でページフォルトの発生した要素番号は、該ロー
ド/ストアパイプライン21に備えられているステータ
スレジスタ210に表示(保持)される。
又、上記ロード/ストアバイブラインン21で処理中の
ベクトル命令以降に、図示されていないスカラユニット
(SO)から発行されたベクトル命令のステータスは、
完了してしまったベクトル命令も含めて、プロセスステ
ータスレジスタ22に表示(保持)される。
スカラユニット(SU)におけるオペレイティングシス
テム(O3)は、上記ベクトルユニット(VU) 2か
ら出力された割込み通知信号■により、割込み処理ルー
チン(具体的には、ページフォルトルーチン)に分岐し
、ページ獲得処理に入る。
言亥ページフォルトルーチン 得に成功した場合、オペレイティングシステム(OS)
に戻り、該ページフォルトの発生したベクトル命令,及
び、それに続くベクトル命令を、ベクトルユニット(V
U) 2に再発行する。
該ベクトル命令が再発行されると、ページフォルトの発
生したベクトル命令は、ステータスレジスタ210に示
される要素(エレメント)以腎のエレメントについての
み処理を行う。
それに続くベクトル命令は、上記プロセスステータスレ
ジスタ22に保持されている内容に従って、既に、完了
してしまったベクトル命令は、無実行(ノーオペレーシ
ョン)とし、実行中であったベクトル命令は、それぞれ
、該当の演算パイプライン20において、処理の順序性
(例えば、ある演算パイプライン20での演算結果に基
づいて行われるベクトル演算等は、該演算パイプライン
20でのベクトル演算が終わってから開始される)に従
って、対応するステータスレジスタ200の保持するエ
レメントより処理を再開する。
勿論、該ページフォルトの発生したベクトル命令以前の
ベクトル命令については、該ページフォルトの発生した
時点で中断されている場合には、その中断されたエレメ
ントから処理を再開する。
若し、上記のページ獲得処理で、ページの獲得に失敗し
た場合には、該ページフォルトを発生したベクトル命令
を含む「プログラム」の実行は意味がないので、例えば
、異常終了として、上記オペレイティングシステム(O
S)がプロセスステータスレジスタ22をクリアするこ
とにより、各パイプライン20.21のステータスレジ
スタ200,210をクリアし、新たなFプログラム」
を受は付けることができるようにする。
このように、本発明は、ベクトル演算を、複数個のパイ
プラインで処理するベクトル計算機(スカラユニット(
SO) 、ベクトルユニット(VU) 、主記憶装置(
MSU)からなる)において、ベクトルユニット(VU
)内の複数個のパイプライン、例えば、ロード/ストア
パイプライン21,及び、演算パイプライン20のそれ
ぞれに、ロード/パイプライン21でメモリアクセス命
令を実行中にページフォルトを検出し、それぞれのパイ
プラインでのベクトル処理を中断したときの、各パイプ
ライン21。
20で実行中のベクトル命令,及び、再開要素番号を保
持するステータスレジスタ210.200を設けておき
、上記ロード/ストアパイプライン21でページフォル
トを検出したとき、スカラユニット(SU)のオペレイ
ティングシステム(OS)にページフォルトの割込みを
行い、オペレイティングシステム(OS)側で、ページ
を獲得したとき、該オペレイティングシステム(OS)
からの再開指示(ベクトル命令を再発行して)に基づい
て、該ページフォルトの発生したロード/ストアパイプ
ライン21,演算パイプライン20で中断されている要
素(エレメント)から再開するようにして、仮想記憶方
式をとるベクトル計算機でメモリアクセスを行うベクト
ル命令が実行しているときでも、他の演算パイプライン
において、他のベクトル命令を並列に実行するようにし
た所に特徴がある。
〔発明の効果〕
以上、詳細に説明したように、本発明のベクトル命令多
重処理方式は、ベクトル演算を複数個のパイプラインで
処理し,且つ、オンデマンドページング方式による仮想
記憶空間上でベクトル命令を処理するベクトル計算機の
ベクトル演算ッ)(VU)において、主記憶装置(MS
U)をアクセスするパイプラインでページフォルトが発
生したとき、複数個の全パイプラインでのベクトル命令
の処理を中断すると共に、上記主記憶装置(MSU)を
アクセスするパイプライン(ロード/ストアパイプライ
ン)と、主記憶装’It. (MSU)をアクセスしな
いバイプライン(演算バイブライン)との両方に、上記
中断したときの各バイブラインで処理中のベクトル命令
の状態(再開要素番号等)を保持する手段(ステータス
レジスタ)を設けて、上記ページフォルトが発生して、
各バイブラインでのベクトル処理を中断し、上記主記憶
袋?! (MSIJ)上のオペレイティングシステム(
O5)に割込んだとき、該オペレーティングシステム(
OS)からの再開指示に基づいて、上記保持手段(ステ
ータスレジスタ)に格納されている中断状態から、各バ
イブラインで中断されている複数個のベクトル命令の処
理を再開するようにしたものであるので、仮想記憶空間
上でのベクトル処理においても、ベクトルロード/スト
ア命令以外の複数個のベクトル命令をオーバラップして
処理することが可能となり、当該ベクトル計算機の処理
能力を、格段に向上させることができる効果がある。
第2図は従来のベクトル命令処理方式を説明する図。
である。
図面において、 工は主記憶装置(MSU) 。
2はベクトルユニット(VU)。
20は演算バイブライン。
200はステータスレジスタ。
21はロード/ストアバイブライン。
210はステータスレジスタ。
22はプロセスステータスレジスタ。
■は割込み通知信号、又は、割込み。
をそれぞれ示す。
【図面の簡単な説明】
第1図は本発明の一実施例を示した図。

Claims (1)

  1. 【特許請求の範囲】 ベクトル演算を複数個のパイプライン(20,21)で
    処理し、且つ、オンデマンドページング方式による仮想
    記憶方式をとるベクトル計算機において、主記憶装置(
    MSU)(1)をアクセスするパイプライン(21)で
    ページフォルトが発生したとき、上記複数個の全パイプ
    ライン(21,20)でのベクトル命令の処理を中断す
    ると共に、 上記主記憶装置(MSU)(1)をアクセスするパイプ
    ライン(21)と、主記憶装置(MSU)(1)をアク
    セスしないパイプライン(20)との両方に、上記中断
    したときの各パイプライン(21,20)で処理中のベ
    クトル命令の状態を保持する手段(210,200)を
    設けて、上記ページフォルトが発生して、各パイプライ
    ン(21,20)でのベクトル処理を中断し、上記主記
    憶装置(MSU)(1)上のオペレーティングシステム
    (OS)に割込んだとき、該オペレーティングシステム
    (OS)からの再開指示に基づいて、上記保持手段(2
    10,200)に格納されている中断状態から、各パイ
    プライン(21,20)で中断されている複数個のベク
    トル命令の処理を再開することを特徴とするベクトル命
    令多重処理方式。
JP2155808A 1990-06-14 1990-06-14 ベクトル命令多重処理方式 Pending JPH0452759A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2155808A JPH0452759A (ja) 1990-06-14 1990-06-14 ベクトル命令多重処理方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2155808A JPH0452759A (ja) 1990-06-14 1990-06-14 ベクトル命令多重処理方式

Publications (1)

Publication Number Publication Date
JPH0452759A true JPH0452759A (ja) 1992-02-20

Family

ID=15613911

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2155808A Pending JPH0452759A (ja) 1990-06-14 1990-06-14 ベクトル命令多重処理方式

Country Status (1)

Country Link
JP (1) JPH0452759A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08328854A (ja) * 1995-05-30 1996-12-13 Kofu Nippon Denki Kk パイプラインデ−タ処理装置
US11055132B2 (en) 2018-03-26 2021-07-06 Nec Corporation Multicore page fault processing

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08328854A (ja) * 1995-05-30 1996-12-13 Kofu Nippon Denki Kk パイプラインデ−タ処理装置
US11055132B2 (en) 2018-03-26 2021-07-06 Nec Corporation Multicore page fault processing

Similar Documents

Publication Publication Date Title
JP2765411B2 (ja) 仮想計算機方式
US5113521A (en) Method and apparatus for handling faults of vector instructions causing memory management exceptions
US5043867A (en) Exception reporting mechanism for a vector processor
JPS5911943B2 (ja) デ−タ処理装置の為のトラツプ機構
JPH0517588B2 (ja)
JPS59201154A (ja) 共同プロセツサによる命令の実行を調整する方法および装置
JPS63279328A (ja) 仮想計算機システムのゲスト実行制御方式
JPH0452759A (ja) ベクトル命令多重処理方式
JP2823230B2 (ja) 処理の継続実行方法
JP4114946B2 (ja) データ処理装置
JP2778717B2 (ja) データ処理ユニット
JPH0668725B2 (ja) データ処理システムにおける割込条件に応答する装置及び非同期割込条件に応答する方法
JPH0754467B2 (ja) データ処理装置
JP4756599B2 (ja) データ処理装置
JP2849189B2 (ja) 例外処理システム
JP2562838B2 (ja) プロセッサ及びストアバッファ制御方法
JPH0250259A (ja) ベクタープロセッサによって非同期メモリ管理例外を取り扱う方法及び装置
JPS62267869A (ja) ベクトル・プロセツサにおける演算例外時の処理方式
JPS58182766A (ja) プログラムトレ−ス装置
JPS6136850A (ja) 入出力割込通知方式
JP2765831B2 (ja) データ処理装置
JPH0234058B2 (ja)
JPS58166454A (ja) デ−タ処理装置
JPH0375832A (ja) 仮想計算機制御方式
JPS59189452A (ja) デ−タ処理装置用キユ−構造