JPH04293159A - ベクトルデータ処理装置 - Google Patents

ベクトルデータ処理装置

Info

Publication number
JPH04293159A
JPH04293159A JP8158191A JP8158191A JPH04293159A JP H04293159 A JPH04293159 A JP H04293159A JP 8158191 A JP8158191 A JP 8158191A JP 8158191 A JP8158191 A JP 8158191A JP H04293159 A JPH04293159 A JP H04293159A
Authority
JP
Japan
Prior art keywords
address
vector
task
task number
vector register
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
JP8158191A
Other languages
English (en)
Inventor
Toshimasa Ooyama
大山 俊匡
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.)
NEC Computertechno Ltd
Original Assignee
NEC Computertechno 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 NEC Computertechno Ltd filed Critical NEC Computertechno Ltd
Priority to JP8158191A priority Critical patent/JPH04293159A/ja
Publication of JPH04293159A publication Critical patent/JPH04293159A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Abstract

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

Description

【発明の詳細な説明】
【0001】
【技術分野】本発明はベクトルデータ処理装置に関し、
特にベクトルレジスタの内容の主記憶装置上への退避及
び回復時の処理方式に関するものである。
【0002】
【従来技術】従来、ベクトルデータ処理装置で複数のタ
スクを切換えて処理をするような場合、タスクの切換え
時にベクトルレジスタの内容を退避及び回復する処理を
行っている。
【0003】上記のような処理を行う場合、割込みハン
ドラという処理ルーチンを用いてタスクの切換えとベク
トルレジスタの退避及び回復を行う場合がある。この割
込みハンドラによるタスク切換えの方法を図面を参照し
て説明する。
【0004】図8は、従来のベクトルデータ処理装置の
ブロック図である。図において、ベクトル演算部1は8
つのベクトルレジスタ11〜18と、4つの演算器21
〜24とを用いてベクトル演算を行う。
【0005】転送手段2は信号線100 、101 を
介してベクトル演算部1と主記憶装置3との間でデータ
の転送を行い、ベクトルレジスタから主記憶装置3、主
記憶装置3からベクトルレジスタへのデータ転送を夫々
1つずつ同時に行うことができる。
【0006】主記憶装置3は信号線101 を介して転
送手段2によりベクトルレジスタからのデータの格納と
ベクトルレジスタへのデータ送出を行う。
【0007】次にこのベクトルデータ処理装置でのタス
ク切換えの実行シーケンスを図9を参照して説明する。 図はタスクA、タスクBという2つのタスクを割込みハ
ンドラHが交互に切換えて実行させる場合の例である。
【0008】図において、A1からA8は夫々タスクA
がベクトルレジスタ11〜18を使用している時間を示
す。B1〜B8は夫々タスクBがベクトルレジスタ11
〜18を使用している時間を示す。H1〜H8は夫々割
込みハンドラが各ベクトルレジスタ11〜18を主記憶
装置3に退避及び回復をしている時間を示す。
【0009】タスクAを実行中、時刻T0で割込みがか
かると、割込みハンドラが起動されて、ベクトルレジス
タの退避及び回復が開始される。ベクトルレジスタの退
避及び回復は、割込みハンドラがベクトルストア命令(
ベクトルレジスタから主記憶装置3への転送命令)とベ
クトルロード命令(主記憶装置3からベクトルレジスタ
への転送命令)を各ベクトルレジスタに対して実行する
ことにより行われる。
【0010】すなわち割込みハンドラが起動されると、
タスクAで使用していたベクトルレジスタ11に格納さ
れているデータを退避するために、ベクトルストア命令
を実行し、続いてタスクBで使用するデータをベクトル
レジスタ11に回復するためにベクトルロード命令を実
行する。同様にベクトルレジスタ12から18の退避と
回復を行うことによって全てのベクトルレジスタの退避
、回復を終了する。
【0011】割込みハンドラの処理が終了すると、タス
クBが起動される。再び割込みがかかると同様に割込み
ハンドラが実行されベクトルレジスタの退避、回復が行
われる。
【0012】以上説明したように、従来のベクトルデー
タ処理装置では、ベクトルレジスタの退避、回復をタス
ク切換え時に全て行っている。しかし、その中には退避
、回復を全くする必要のないベクトルレジスタや、タス
ク切換え時にはまだ退避、回復する必要のないベクトル
レジスタがある場合が少なくない。
【0013】つまり、使用されなかったベクトルレジス
タは退避させる必要がなく、使用しないベクトルレジス
タは回復する必要がない。また、タスク切換え直後には
まだ使用されないベクトルレジスタもあり、タスク切換
え時にそれだけ無駄な処理を行っていることになる。
【0014】通常ベクトルレジスタの退避、回復は、数
キロバイトの転送を必要とするため、上述のようにタス
ク切換え時に全てのベクトルレジスタの退避、回復をす
るのは、タスク切換えの時間が増大し、システム全体の
性能が低下してしまうという問題点がある。
【0015】
【発明の目的】本発明の目的は、タスク切換え時におけ
るベクトルレジスタの退避、回復処理の時間を短縮して
システム全体の性能向上を図ったベクトルデータ処理装
置を提供することである。
【0016】
【発明の構成】本発明によれば、複数要素からなるベク
トルデータを格納する複数のベクトルレジスタと、主記
憶装置と、前記主記憶装置と前記ベクトルレジスタとの
間でデータの転送制御を行うデータ転送手段とを含むベ
クトルデータ処理装置であって、実行中のタスク番号を
指示するタスク番号指示手段と、前記ベクトルレジスタ
に夫々対応した前記主記憶装置上のアドレスをベクトル
レジスタ対応に生成する手段と、この生成されたアドレ
スと前記タスク番号指示手段により指示されるタスク番
号とを、ベクトルレジスタ対応に格納可能なアドレス格
納手段と、前記タスク番号指示手段で指示されるタスク
番号と前記アドレス格納手段に格納されているタスク番
号とを比較する比較手段と、特定ベクトルレジスタをア
クセスする命令の場合、前記タスク番号比較手段が不一
致を示したとき、前記アドレス格納手段の前記特定ベク
トルレジスタに対応するアドレスを前記主記憶装置の書
込みアドレスとして前記データ転送手段に供給してベク
トルデータの退避指示をなす退避指示手段と、前記アド
レス生成手段により生成されるアドレスと前記タスク番
号指示手段の出力するタスク番号とを前記アドレス格納
手段に格納すると共に、このアドレスを前記主記憶装置
の読出しアドレスとして前記データ転送手段へ供給して
読出し、指示されたベクトルレジスタへベクトルデータ
の回復指示をなす回復指示手段とを含むことを特徴とす
るベクトルデータ処理装置が得られる。
【0017】
【実施例】次に、本発明の実施例を図面を参照しつつ詳
細に説明する。
【0018】図1は、本発明の第1の実施例のブロック
図である。ベクトル演算部1は8つのベクトルレジスタ
11〜18と4つのベクトル演算器21〜24とを用い
てベクトル演算を行う。また、信号線100 を介して
ベクトルレジスタと転送手段2との間でデータ転送も行
う。 ベクトルレジスタ11〜18はそれぞれ固有のベクトル
レジスタ番号が付与されており信号線200 より特定
のベクトルレジスタを指示する。
【0019】転送手段2は主記憶装置3とベクトルレジ
スタとの間で信号線100 、101 を介しデータ転
送をし、信号線102 からベクトルレジスタの退避先
アドレスが入力されると、信号線200 より入力され
るベクトルレジスタ番号に対応するベクトルレジスタに
格納されているデータを信号線102 から入力した主
記憶装置上のアドレスに転送する。
【0020】また、信号線103 からベクトルレジス
タの回復先アドレスが入力されると、このアドレスに格
納されているデータを信号線200 より入力されるベ
クトルレジスタ番号に対応するベクトルレジスタに転送
する。
【0021】主記憶装置3は信号線101 を介して転
送手段2との間でデータ転送を行う。
【0022】タスク番号指示手段4は信号線104 よ
り現在実行中のタスク番号を送出する。アドレス設定手
段5はプログラム命令により設定される各ベクトルレジ
スタの退避先アドレスを信号線201 より入力し、信
号線200 より入力されるベクトルレジスタ番号に対
応して格納する。また、信号線200 より入力される
ベクトルレジスタ番号に対応する退避先アドレスを信号
線105 より送出する。
【0023】アドレス格納手段6は信号線200 から
入力されるベクトルレジスタ番号に対応する退避先アド
レスとタスク番号とを信号線107 ,106 より送
出する。また、信号線110 からの書込み指示により
信号線200 からのベクトルレジスタ番号に対応する
退避先アドレスとタスク番号とを信号線105 ,10
4 より夫々入力し格納する。
【0024】タスク番号比較手段7は信号線104 か
らのタスク番号と信号線106 からのタスク番号とを
比較し、一致していれば一致信号を信号線108 より
送出し、一致していなければ不一致信号を信号線108
 に送出する。
【0025】退避指示手段8は信号線108から不一致
信号が入力されると、信号線107 から入力されるア
ドレスを信号線102 を介して転送手段2に送出する
【0026】回避指示手段9は退避指示手段8が転送手
段2にアドレスを送出したことを信号線109 より知
ると、信号線105 より入力されるアドレスを信号線
103 より転送手段2に送出する。
【0027】次に、この割込みハンドラを用いたタスク
切換えの実行シーケンスを図2〜図4を参照して説明す
る。図2において、A1からA8は夫々タスクAがベク
トルレジスタ11〜18を使用している時間を示す。
【0028】B1〜B8は夫々タスクBがベクトルレジ
スタ11〜18を使用している時間を示す。H1〜H8
は夫々ベクトルレジスタ11〜18が主記憶装置3に退
避及び回復されている時間を示す。
【0029】図3はタスクAからタスクBに切換わった
後、タスクBで処理する命令である。図において、(A
)のVLD命令は、第2オペランドが示す主記憶上のア
ドレスから第1オペランドの示すベクトルレジスタへデ
ータの転送を行う命令(ベクトルロード命令)である。
【0030】(B)のVADD命令は、第2オペランド
、第3オペランドの示すベクトルレジスタに格納されて
いるデータを加算し、第1オペランドの示すベクトルレ
ジスタに結果を格納する命令である。
【0031】(C)のVSUB命令は、第2オペランド
の示すベクトルレジスタから、第3オペランドの示すベ
クトルレジスタの内容を減算し、第1オペランドの示す
ベクトルレジスタに結果を格納する命令である。
【0032】また、オペランド中のV1〜V8は図1の
ベクトルレジスタ11〜18を夫々示す。
【0033】図4はタスクAからタスクBに切換わった
後の図1におけるタスク番号指示手段4とアドレス設定
手段5とアドレス格納手段6との内容を説明するための
図で、タスクA、タスクBのタスク番号は夫々”0”,
”1”である。
【0034】図2においてタスクAを実行中、時刻T0
で割込みがかかると、割込みハンドラが起動される。割
込みハンドラは、次に実行されるタスクBのタスク番号
”1”をタスク番号指示手段4に設定し、ベクトルレジ
スタ11〜18の退避先アドレスをアドレス設定手段5
に設定する。
【0035】このときタスク番号指示手段4、アドレス
設定手段5、アドレス格納手段6は図4の(a)のよう
な状態になる。
【0036】以上で割込みハンドラは処理を終了し、タ
スクBが実行される。タスクBに切換わった後、図3(
A)のVLD命令を実行するために、図1の信号線20
0 よりアドレス設定手段5、アドレス格納手段6、転
送手段2に、ベクトルレジスタ11に対応する番号を指
示する。
【0037】アドレス格納手段6は、この信号線200
 からの指示により、ベクトルレジスタ11に対応する
タスク番号である”0”(図4(a)参照)を信号線1
06 に送出する。
【0038】タスク番号比較手段7は信号線104 か
らのタスク番号”1”と、信号線106 からのタスク
番号”0”とを比較し、一致してないので信号線108
 へ不一致信号を送出する。
【0039】退避指示手段8はこの不一致信号により信
号線107 から入力されるアドレス”0100”を転
送手段2に送出する。
【0040】転送手段2はこの信号線102 からのア
ドレス”0100”が入力されると、ベクトルレジスタ
11に格納されているデータを主記憶装置上のアドレス
”0100”に転送する。
【0041】回復指示手段9は、退避指示手段8が転送
手段2にアドレスを送出したことを信号線109 より
知らされると、信号線105 からアドレス”1100
”を入力し、それを転送手段2に送出し、このアドレス
”1100”とタスク番号指示手段4の出力するタスク
番号”1”とを格納するようにアドレス格納手段6に指
示する。
【0042】転送手段2は信号線103 からアドレス
”1100”を入力すると、主記憶装置上のアドレス”
1100”の示す場所からベクトルレジスタ11にデー
タを転送する。この時、タスク番号指示手段4、アドレ
ス設定手段5、アドレス格納手段6は、図4(b)に示
す状態になる。
【0043】以上でベクトルレジスタの11の退避、回
復処理は終了し、VLD命令が実行される。
【0044】次のVADD命令(図3(B)参照)では
、ベクトルレジスタ11とベクトルレジスタ12が使用
されるが、ベクトルレジスタ11はすでに退避、回復さ
れているので、ここでは退避、回復はされない。これは
、タスク番号比較手段7が、信号線104 からのタス
ク番号”1”と信号線106 からのタスク番号”1”
とが一致していることを検出するためである。
【0045】ベクトルレジスタ12は、信号線104 
からのタスク番号”1”と信号線106 からのタスク
番号”0”とが一致していないので、前述のVLD命令
の時のベクトルレジスタ11の退避、回復と同様な動作
によってベクトルレジスタ12の退避、回復がされる。
【0046】この時、タスク番号指示手段4、アドレス
設定手段5、アドレス格納手段6は、図4(c)に示す
状態になる。図3(C)のVSUB命令以降も、各命令
を実行する前に同様の処理がされる。
【0047】図5は本発明の第二の実施例のブロック図
であり、図1と同等部分は同一符号により示している。 図1の実施例と異なる部分はアドレス生成手段5Aのみ
であり、他は全て同一である。
【0048】アドレス生成手段5Aは、信号線104 
から入力されるタスク信号と、信号線200 から入力
されるベクトルレジスタ番号とから図6で示すようなア
ドレスを生成し信号線105 より送出する(詳細は後
述)。
【0049】次に、割込みハンドラを用いたタスク切換
えの実行シーケンスを図2,図3及び図7を参照して説
明する。
【0050】図2は第1の実施例で説明したとおりで、
A1からA8は夫々タスクAがベクトルレジスタ11〜
18を使用している時間を示す。B1〜B8は夫々タス
クBがベクトルレジスタ11〜18を使用している時間
を示す。H1〜H8は夫々ベクトルレジスタ11〜18
が主記憶装置3に退避及び回復されている時間を示す。
【0051】図3も第1の実施例で説明したとおりで、
タスクAからタスクBに切換わった後タスクBで処理す
る命令である。
【0052】図7はタスクAからタスクBに切換わった
後の図5におけるタスク番号指示手段4とアドレス格納
手段6との内容を説明するための図であり、タスクA、
タスクBのタスク番号は夫々”0”,”1”である。
【0053】図2においてタスクAを実行中、時刻T0
で割込みがかかると、割込みハンドラが起動される。割
込みハンドラは、次に実行されるタスクBのタスク番号
”1”をタスク番号指示手段4に設定する。このときタ
スク番号指示手段4、アドレス格納手段6は、図7の(
a)のような状態になる。
【0054】以上で割込みハンドラは処理を終了し、タ
スクBが実行される。タスクBに切換わった後、図3(
A)のVLD命令を実行するために、信号線200 よ
りアドレス生成手段5A、アドレス格納手段6、転送手
段2にベクトルレジスタ11に対応する番号を指示する
【0055】アドレス格納手段6は、この信号線200
 からの指示により、ベクトルレジスタ11に対応する
タスク番号である”0”(図7(a)参照)を信号線1
06 に送出する。
【0056】タスク番号比較手段7は信号線104 か
らのタスク番号”1”と、信号線106 からのタスク
番号”0”とを比較し、一致してないので信号線108
 へ不一致信号を送出する。
【0057】退避指示手段8はこの不一致信号により信
号線107 から入力されるアドレス”0100”を転
送手段2に送出する。
【0058】転送手段2はこの信号線102 からのア
ドレス”0100”が入力されると、ベクトルレジスタ
11に格納されているデータを主記憶装置上のアドレス
”0100”に転送する。
【0059】回復指示手段9は退避指示手段8が転送手
段2にアドレスを送出したことを信号線109 より知
らされると、信号線105 からアドレス生成手段5A
が出力するアドレス”1100”(図6参照)を入力し
、それを転送手段2に送出し、このアドレス”1100
”とタスク番号指示手段4の出力するタスク番号”1”
を格納するようにアドレス格納手段6に指示する。
【0060】転送手段2は信号線103 からアドレス
”1100”が入力されると、主記憶装置上のアドレス
”1100”の示す場所からベクトルレジスタ11にデ
ータを転送する。この時、タスク番号指示手段4、アド
レス格納手段6は図7(b)に示す状態になる。
【0061】以上でベクトルレジスタの11の退避、回
復処理は終了し、VLD命令が実行される。
【0062】次のVADD命令(図3(B)参照)では
、ベクトルレジスタ11とベクトルレジスタ12とが使
用されるが、ベクトルレジスタ11はすでにに退避、回
復されているので、ここでは退避、回復はされない。 これは、タスク番号比較手段7が、信号線104 から
のタスク番号”1”と信号線106 からのタスク番号
”1”とが一致していることを検出するためである。
【0063】ベクトルレジスタ12は、信号線104 
からのタスク番号”1”と信号線106 からのタスク
番号”0”とが一致していないので、前述のVLD命令
の時のベクトルレジスタ11の退避、回復と同様な動作
によってベクトルレジスタ12の退避、回復がされる。
【0064】この時、タスク番号指示手段4、アドレス
格納手段6は図7(C)に示す状態になる。図3(C)
のVSUB命令以降も、各命令を実行する前に同様の処
理がされる。
【0065】
【発明の効果】以上説明したように、本発明は各ベクト
ルレジスタごとにタスク番号と、退避先アドレスを保持
することにより、タスク切換え後、各ベクトルレジスタ
を最初に使用するときに、退避、回復を行うため、ある
タスクを実行中使用されなかったベクトルレジスタは、
そのタスクが終了し、次のタスクに実行が移っても、退
避、回復はされない。また、あるベクトルレジスタが退
避、回復中でも他のベクトルレジスタは、ベクトル演算
器内だけで処理できる命令は平行して実行することがで
きる。
【図面の簡単な説明】
【図1】本発明の実施例のシステムブロック図である。
【図2】本発明の実施例によるタスク切換え動作を説明
するタイムチャートである。
【図3】本発明の実施例に用いる命令列を示す図である
【図4】本発明の実施例において、図3の命令列を実行
したときのタスク番号指示手段4とアドレス設定手段5
とアドレス格納手段6との各状態を示す図である。
【図5】本発明の他の実施例のシステムブロック図であ
る。
【図6】本発明の他の実施例におけるアドレス生成手段
5Aにより生成されるアドレスを示す図である。
【図7】本発明の他の実施例において、図3の命令列を
実行したときのタスク番号指示手段4とアドレス格納手
段5との各状態を示す図である。
【図8】従来のベクトルデータ処理装置のブロック図で
ある。
【図9】従来のベクトルデータ処理装置によるタスク切
換えの動作を示す図である。
【符号の説明】
1  ベクトル演算部 2  データ転送部 3  主記憶装置 4  アドレス番号指示部 5  アドレス設定部 6  アドレス格納部 7  比較部 8  退避指示部 9  回復部

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】  複数要素からなるベクトルデータを格
    納する複数のベクトルレジスタと、主記憶装置と、前記
    主記憶装置と前記ベクトルレジスタとの間でデータの転
    送制御を行うデータ転送手段とを含むベクトルデータ処
    理装置であって、実行中のタスク番号を指示するタスク
    番号指示手段と、前記ベクトルレジスタに夫々対応した
    前記主記憶装置上のアドレスをベクトルレジスタ対応に
    生成する手段と、この生成されたアドレスと前記タスク
    番号指示手段により指示されるタスク番号とを、ベクト
    ルレジスタ対応に格納可能なアドレス格納手段と、前記
    タスク番号指示手段で指示されるタスク番号と前記アド
    レス格納手段に格納されているタスク番号とを比較する
    比較手段と、特定ベクトルレジスタをアクセスする命令
    の場合、前記タスク番号比較手段が不一致を示したとき
    、前記アドレス格納手段の前記特定ベクトルレジスタに
    対応するアドレスを前記主記憶装置の書込みアドレスと
    して前記データ転送手段に供給してベクトルデータの退
    避指示をなす退避指示手段と、前記アドレス生成手段に
    より生成されるアドレスと前記タスク番号指示手段の出
    力するタスク番号とを前記アドレス格納手段に格納する
    と共に、このアドレスを前記主記憶装置の読出しアドレ
    スとして前記データ転送手段へ供給して読出し、指示さ
    れたベクトルレジスタへベクトルデータの回復指示をな
    す回復指示手段とを含むことを特徴とするベクトルデー
    タ処理装置。
JP8158191A 1991-03-20 1991-03-20 ベクトルデータ処理装置 Pending JPH04293159A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8158191A JPH04293159A (ja) 1991-03-20 1991-03-20 ベクトルデータ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8158191A JPH04293159A (ja) 1991-03-20 1991-03-20 ベクトルデータ処理装置

Publications (1)

Publication Number Publication Date
JPH04293159A true JPH04293159A (ja) 1992-10-16

Family

ID=13750283

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8158191A Pending JPH04293159A (ja) 1991-03-20 1991-03-20 ベクトルデータ処理装置

Country Status (1)

Country Link
JP (1) JPH04293159A (ja)

Similar Documents

Publication Publication Date Title
JPH09212371A (ja) レジスタ退避及び復元システム
JPS6234242A (ja) デ−タ処理システム
JPH0517588B2 (ja)
JPH0437927A (ja) プロセッサの処理方法
JPH02227769A (ja) データ処理システム
JPS58121457A (ja) 情報処理装置
JPH04293159A (ja) ベクトルデータ処理装置
JPS62151940A (ja) レジスタ退避/復帰方式
JPH0668725B2 (ja) データ処理システムにおける割込条件に応答する装置及び非同期割込条件に応答する方法
JPH0754467B2 (ja) データ処理装置
JP2583614B2 (ja) ベクトル演算装置
JP2574918B2 (ja) 割り込み復帰処理方式
JPH03269628A (ja) 例外処理方式
JPS59144955A (ja) 情報処理装置
JPH0333954A (ja) 情報処理装置
JPH05241986A (ja) 入出力命令リトライ方式
JPH0916399A (ja) 計算機
JPH03184127A (ja) レジスタ退避制御方法
JPH0546581B2 (ja)
JPH02103635A (ja) ディジタルシステム
JPH04245333A (ja) 情報処理装置
JPH01309174A (ja) ベクトル処理装置
JPH01147773A (ja) ベクトル処理装置
JPS5846444A (ja) 電子計算機
JPS6394339A (ja) 仮想計算機システム