JPH0954769A - ベクトル処理装置 - Google Patents

ベクトル処理装置

Info

Publication number
JPH0954769A
JPH0954769A JP20809995A JP20809995A JPH0954769A JP H0954769 A JPH0954769 A JP H0954769A JP 20809995 A JP20809995 A JP 20809995A JP 20809995 A JP20809995 A JP 20809995A JP H0954769 A JPH0954769 A JP H0954769A
Authority
JP
Japan
Prior art keywords
vector
vector data
address
storage device
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.)
Granted
Application number
JP20809995A
Other languages
English (en)
Other versions
JP3335808B2 (ja
Inventor
Kazuhiro Hosaka
和弘 保坂
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 JP20809995A priority Critical patent/JP3335808B2/ja
Publication of JPH0954769A publication Critical patent/JPH0954769A/ja
Application granted granted Critical
Publication of JP3335808B2 publication Critical patent/JP3335808B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Abstract

(57)【要約】 【課題】 圧縮命令で圧縮されたベクトルデータの拡
散処理と記憶装置への格納を同時に実施することによ
り、処理の高速化を図る。 【解決手段】 命令判定手段0において同一のベクト
ルデータに対して拡散命令とベクトルストア命令が発行
されたと判定されると、マスクレジスタ1、読み出しア
ドレス生成手段2、書き込みアドレス生成手段4および
記憶装置格納手段によりベクトルレジスタ3から読み出
されたベクトルデータの拡散処理と、記憶装置6への格
納処理を同時に実行する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は少なくとも一つ以上
のベクトルレジスタとマスクレジスタと記憶装置とを有
しベクトル演算を実行するベクトル処理装置に関し、特
に、効率よく記憶装置へのベクトルデータの格納を行う
ベクトル処理装置に関するものである。
【0002】
【従来の技術】従来のベクトル処理装置としては、たと
えば、「特開平01−284972号公報」記載の技術
がある。
【0003】この技術では、IF文処理等において条件
成立要素のみを圧縮して処理した結果を圧縮前のベクト
ル長に戻してから拡散を実行する。
【0004】その後、拡散したベクトルデータをベクト
ルレジスタに一旦格納し、さらにこの拡散後のベクトル
データをベクトルレジスタから読み出しベクトルデータ
の有効性を示すマスクデータと共に記憶装置に送出す
る。そして最後に、マスクデータがベクトルデータの有
効を示すときのみ記憶装置にベクトルデータの格納を行
う方法をとっている。
【0005】
【発明が解決しようとする課題】上述した従来のベクト
ル処理装置においては、IF文処理等において条件成立
要素のみを圧縮して処理した結果を圧縮前のベクトル長
に戻して連続アドレスで記憶装置へ格納するときに、ベ
クトルレジスタに保持している処理結果のベクトルデー
タを、まず拡散命令により圧縮前のベクトル長に戻して
再度ベクトルレジスタに格納し、その後ベクトルストア
命令により記憶装置に格納している。したがって、処理
が2段階であり、処理全体の低速化を招くというい欠点
がある。
【0006】
【課題を解決するための手段】本発明の第1ベクトル処
理装置は、(a)記憶装置と、(b)ベクトルデータを
格納する少なくとも一つ以上のベクトルレジスタと、
(c)ベクトルデータの有効性を示すマスク情報を格納
するマスクレジスタと、(d)圧縮されたベクトルデー
タを圧縮前のベクトル長に戻すための拡散命令と前記ベ
クトルレジスタに格納されたベクトルデータを前記記憶
装置に格納するためのベクトルストア命令とが同一ベク
トルデータに対して発行されたかどうかを判定する命令
判定手段と、(e)前記ベクトルレジスタに対する読み
出しアドレスの初期値として前記ベクトルレジスタの先
頭アドレスを設定し前記マスク情報が前記ベクトルレジ
スタに格納されているベクトルデータの有効を示す場合
に前記読み出しアドレスをインクリメントし前記マスク
情報が前記ベクトルデータの無効を示す場合に前記読み
出しアドレスをそのまま保持する読み出しアドレス生成
手段と、(f)前記記憶装置に対する書き込みアドレス
の初期値として前記ベクトルストア命令で指定された先
頭アドレスを設定し毎サイクル前記書き込みアドレスを
インクリメントする書き込みアドレス生成手段と、
(g)前記読み出しアドレスに対応する前記ベクトルレ
ジスタに格納されたベクトルデータを前記マスク情報に
したがって前記書き込みアドレスで指定された前記記憶
装置のエリアに格納する記憶装置格納手段と、を備えて
いる。
【0007】本発明の第2のベクトル処理装置は、前記
第1のベクトル処理装置であって、ベクトルストア命令
で示される要素間距離を、毎サイクル加算する前記書き
込みアドレス生成部を備えている。
【0008】
【発明の実施の形態】次に、本発明の実施の形態につい
て、図1、図2および図3を参照して詳細に説明する。
【0009】図1は本発明の一つの実施の形態を示すブ
ロック図である。
【0010】図1を参照すると、本実施の形態は、命令
判定手段0と、マスクレジスタ1と、読み出しアドレス
生成手段2と、ベクトルレジスタ3と、書き込みアドレ
ス生成手段4と、記憶装置格納手段5と、記憶装置6と
により構成されている。
【0011】命令判定手段0は圧縮命令により圧縮処理
されたベクトルデータに対し拡散命令とベクトルストア
命令とが発行されたことを判定すると命令発行信号10
による通知を行う。
【0012】マスクレジスタ1はベクトルレジスタ3に
格納されているベクトルデータの有効、無効を示すマス
クデータの格納を行うレジスタである。
【0013】読み出しアドレス生成手段2はベクトルレ
ジスタ3に対する読み出しアドレス信号21を生成する
手段であり、命令発行信号10が通知されたときにアド
レス初期値としてベクトルレジスタ3の先頭アドレスを
読み出しアドレス信号21に与える。また、ベクトルレ
ジスタに格納されているデータの有効性を示すマスクレ
ジスタ1の状態が有効を示すときには、インクリメント
動作を行い、無効を示すときには前サイクルで読み出し
アドレス生成手段2において確定された読み出しアドレ
ス2をそのまま保持する。
【0014】ベクトルレジスタ3からは読み出し生成手
段2により指定されたアドレス信号21で指定されたア
ドレスのベクトルデータの読み出しが行われる。
【0015】書き込みアドレス生成手段4は命令発行信
号10が通知されたときにアドレスの初期値として先頭
番地信号42上のベクトルストア命令で指定された先頭
番地を受け取る。そして、毎マシンサイクル、このアド
レスに要素間距離信号43上のベクトルストア命令で指
定された要素間距離を加算しこれを書き込みアドレスと
して書き込みアドレス信号41上に出力する。
【0016】記憶装置格納手段5はベクトルレジスタ3
から読み出しアドレス生成手段2により生成された読み
出しアドレス信号21上の読み出しアドレスに格納され
ているベクトルデータをベクトルデータ信号31上に読
み出す。そして、マスクレジスタ1からのマスク情報信
号11上のマスク情報がベクトルデータ信号31上のベ
クトルデータが有効であることを示すとき、このベクト
ルデータを書き込みアドレス生成手段4からの書き込み
アドレス信号41上の書き込みアドレスで示された記憶
装置6のエリアに格納する。
【0017】また、マスク情報がベクトルデータの無効
を示すとき、ベクトルデータ信号31上のベクトルデー
タの記憶装置6への格納を行う。
【0018】図2はマシンサイクル毎のマスクレジスタ
1、読み出しアドレス生成手段2、書き込みアドレス生
成手段4の関係を示したブロック図である。
【0019】図3はベクトルレジスタ3に格納されたベ
クトルデータが記憶装置6に格納される様子を示したブ
ロック図である。
【0020】図2、図3は、ベクトル要素長が“8”、
ベクトルレジスタ3に格納されているベクトルデータの
有効性を示すマスクレジスタ1に格納されているマスク
データが“11001010”、記憶装置6の書き込み
開始番地が“2”、要素間距離“4”の場合の例であ
る。
【0021】次に本実施の形態の動作について図1、図
2および図3を用いて説明する。
【0022】命令判定手段0は圧縮命令により圧縮処理
されたベクトルデータに対し拡散命令とベクトルストア
命令が発行されたことを判定すると命令発行信号10に
より通知を行う。
【0023】命令発行信号10が通知されると、読み出
しアドレス生成手段2ではアドレスの初期値としてベク
トルレジスタの先頭番地を示す値“0”を指定する。
【0024】書き込みアドレス生成手段4では記憶装置
6への書き込みアドレスの初期値としてベクトルストア
命令で示された先頭アドレス42で示される値“2”を
指定する。
【0025】マシンサイクル“0”では、記憶装置格納
手段5がベクトルレジスタ3から読み出しアドレス生成
手段2で指定された読み出しアドレス信号21上の読み
出しアドレス“0”に格納されているベクトルデータを
読み出す。読み出されたベクトルデータに対するマスク
情報信号11が有効を示す“1”であるため、このベク
トルデータを記憶装置6の書き込みアドレス生成手段4
で生成されたアドレス信号41上のアドレス“2”で指
定される記憶装置6のエリアに格納する。
【0026】マシンサイクル“1”では、マシンサイク
ル“0”でのベクトルデータに対するマスク情報信号1
1上のマスク情報が“1”なので読み出しアドレス生成
手段2において読み出しアドレス信号21上の読み出し
アドレスをインクリメントさせ“0”から“1”に変化
させる。
【0027】書き込みアドレス生成手段4ではマスク情
報信号11上のマスク信号にかかわらず書き込みアドレ
スにベクトルストア命令で示される要素間距離信号43
上の要素間距離“4”を加え書き込みアドレス信号41
上の書き込みアドレスを“2+4=6”とする。
【0028】記憶装置格納手段5ではベクトルレジスタ
3からアドレス信号21上のアドレス“1”に格納され
ているベクトルデータを読み出す。読み出されたベクト
ルデータに対するマスク情報信号11上のマスク情報が
“1”であるため、ベクトルデータを書き込みアドレス
信号41上のアドレス“6”で指定される記憶装置6の
エリアに格納する。
【0029】マシンサイクル“2”では、マシンサイク
ル“1”でのベクトルデータに対するマスク情報信号1
1上のマスク情報が“1”であるため、読み出しアドレ
ス生成手段2において読み出しアドレス信号21上の読
み出しアドレスをインクリメントさせ“1”から“2”
に変化させる。
【0030】書き込みアドレス生成手段4では書き込み
アドレスにベクトルストア命令で示される要素間距離信
号43上の要素間距離“4”を加え書き込みアドレス信
号41上の書き込みアドレスを“6+4=10”とす
る。
【0031】記憶装置格納手段5ではベクトルレジスタ
3から読み出しアドレス信号21上の読み出しアドレス
“2”で指定されているベクトルデータの読み出しを行
う。
【0032】ベクトルデータに対するマスク情報信号1
1の値が“0”なので記憶装置6にベクトルデータの書
き込みは行わない。
【0033】マシンサイクル“3”では、マシンサイク
ル“2”でのベクトルデータに対するマスク情報信号1
1上のマスク情報が“0”であるため、読み出しアドレ
ス生成手段2においてマシンサイクル“2”の読み出し
アドレス信号21上の読み出しアドレス“2”をそのま
ま保持する。
【0034】書き込みアドレス生成手段4では書き込み
アドレスにベクトルストア命令で示される要素間距離信
号43上の要素間距離“4”を加え、書き込みアドレス
信号41上の書き込みアドレスを“10+4=14”と
する。
【0035】記憶装置格納手段5ではベクトルレジスタ
3から読み出しアドレス信号21上の読み出しアドレス
“2”に格納されているベクトルデータの読み出しを行
う。
【0036】ベクトルデータに対するマスク情報信号1
1上のマスク情報が“0”なので記憶装置6にベクトル
データの書き込みは行わない。
【0037】マシンサイクル“4”では、マシンサイク
ル“3”でのベクトルデータに対するマスク情報信号1
1上のマスク情報が“0”であるため、読み出しアドレ
ス生成手段2において読み出しアドレス信号21上の読
み出しアドレス“2”を保持する。
【0038】書き込みアドレス生成手段4では書き込み
アドレス信号にベクトルストア命令で示される要素間距
離信号43上の要素間距離“4”を加え書き込みアドレ
ス信号41上の書き込みアドレスを“14+4=18”
とする。
【0039】記憶装置格納手段5ではベクトルレジスタ
3からアドレス信号21上のアドレス“2”に格納され
ているベクトルデータを読み出す。読み出されたベクト
ルデータに対するマスク情報信号11上のマスク情報が
“1”であるため、ベクトルデータを記憶装置6の書き
込みアドレス信号41上の書き込みアドレス“18”で
指定されたエリアに格納する。
【0040】マシンサイクル“5”では、マシンサイク
ル“4”でのベクトルデータに対するマスク情報信号1
1上のマスク情報が“1”であるため、読み出しアドレ
ス生成手段2において読み出しアドレス信号21上の読
み出しアドレスをインクリメントさせ“2”から“3”
に変化させる。
【0041】書き込みアドレス生成手段4では書き込み
アドレス信号にベクトルストア命令で示される要素間距
離信号43上の要素間距離“4”を加え書き込みアドレ
ス信号41上の書き込みアドレスを“18+4=22”
とする。
【0042】記憶装置格納手段5ではベクトルレジスタ
3から読み出しアドレス信号21上の読み出しアドレス
“3”に格納されているベクトルデータの読み出しを行
う。
【0043】ベクトルデータに対するマスク情報信号1
1上のマスク情報が“0”なので記憶装置6にベクトル
データの書き込みは行わない。
【0044】マシンサイクル“6”では、マシンサイク
ル“5”でのベクトルデータに対するマスク情報信号1
1上のマスク情報が“0”であるため、読み出しアドレ
ス生成手段2において読み出しアドレス信号21上の読
み出しアドレス“3”をそのまま保持する。
【0045】書き込みアドレス生成手段4では書き込み
アドレス信号に要素間距離信号43上のベクトルストア
命令で示される要素間距離“4”を加え書き込みアドレ
ス信号41上の書き込みアドレスを“22+4=26”
とする。
【0046】記憶装置格納手段5ではベクトルレジスタ
3から読み出しアドレス信号21上の読み出しアドレス
“3”に格納されているベクトルデータを読み出す。読
み出されたベクトルデータに対するマスク情報信号11
上のマスク情報が“1”であるため、ベクトルデータを
記憶装置6の書き込みアドレス信号41上の書き込みア
ドレス“26”で指定されるエリアに格納する。
【0047】マシンサイクル“7”では、マシンサイク
ル“6”でのベクトルデータ信号に対するマスク情報信
号11上のマスク情報が“1”であるため、読み出しア
ドレス生成手段2において読み出しアドレス信号21上
の読み出しアドレスをインクリメントさせ“3”から
“4”に変化させる。
【0048】書き込みアドレス生成手段4では書き込み
アドレス信号にベクトルストア命令で示される要素間距
離信号43上の要素間距離“4”を加え書き込みアドレ
ス信号41上の書き込みアドレスを“26+4=30”
とする。
【0049】記憶装置格納手段5ではベクトルレジスタ
3から読み出しアドレス信号21上の読み出しアドレス
“4”に格納されているベクトルデータの読み出しを行
う。
【0050】ベクトルデータに対するマスク情報信号1
1上のマスク信号が“0”なので記憶装置6にベクトル
データの書き込みは行わない。
【0051】
【発明の効果】以上説明したように、本発明は、ベクト
ルデータの拡散を行いながらベクトルデータを記憶装置
への格納するようにしたことにより、拡散命令を実行す
る必要が無いため、命令処理の高速化が図れるという効
果がある。
【図面の簡単な説明】
【図1】本発明の一つの実施の形態を示すブロック図で
ある。
【図2】図1の実施の形態におけるサイクル毎の動作を
示すブロック図である。
【図3】図1に示した記憶装置に対する格納動作を示す
ブロック図である。
【符号の説明】 0 命令判定手段 1 マスクレジスタ 2 読み出しアドレス生成手段 3 ベクトルレジスタ 4 書き込みアドレス生成手段 5 記憶装置格納手段 6 記憶装置 10 命令発行信号 11 マスク情報信号 21 読み出しアドレス信号 31 ベクトルデータ信号 41 書き込みアドレス信号 42 先頭アドレス信号 43 要素間距離信号

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 マスク付き演算を処理するベクトル処理
    装置において、(a)記憶装置と、(b)ベクトルデー
    タを格納する少なくとも一つ以上のベクトルレジスタ
    と、(c)ベクトルデータの有効性を示すマスク情報を
    格納するマスクレジスタと、(d)圧縮されたベクトル
    データを圧縮前のベクトル長に戻すための拡散命令と前
    記ベクトルレジスタに格納されたベクトルデータを前記
    記憶装置に格納するためのベクトルストア命令とが同一
    ベクトルデータに対して発行されたかどうかを判定する
    命令判定手段と、(e)前記ベクトルレジスタに対する
    読み出しアドレスの初期値として前記ベクトルレジスタ
    の先頭アドレスを設定し前記マスク情報が前記ベクトル
    レジスタに格納されているベクトルデータの有効を示す
    場合に前記読み出しアドレスをインクリメントし前記マ
    スク情報が前記ベクトルデータの無効を示す場合に前記
    読み出しアドレスをそのまま保持する読み出しアドレス
    生成手段と、(f)前記記憶装置に対する書き込みアド
    レスの初期値として前記ベクトルストア命令で指定され
    た先頭アドレスを設定し毎サイクル前記書き込みアドレ
    スをインクリメントする書き込みアドレス生成手段と、
    (g)前記読み出しアドレスに対応する前記ベクトルレ
    ジスタに格納されたベクトルデータを前記マスク情報に
    したがって前記書き込みアドレスで指定された前記記憶
    装置のエリアに格納する記憶装置格納手段と、を有する
    ことを特徴とするベクトル処理装置。
  2. 【請求項2】 前記書き込みアドレス生成部が各サイク
    ルにおいて前記ベクトルストア命令で示される要素間距
    離を加算していくことを特徴とする請求項1記載のベク
    トル処理装置。
JP20809995A 1995-08-15 1995-08-15 ベクトル処理装置 Expired - Fee Related JP3335808B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP20809995A JP3335808B2 (ja) 1995-08-15 1995-08-15 ベクトル処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP20809995A JP3335808B2 (ja) 1995-08-15 1995-08-15 ベクトル処理装置

Publications (2)

Publication Number Publication Date
JPH0954769A true JPH0954769A (ja) 1997-02-25
JP3335808B2 JP3335808B2 (ja) 2002-10-21

Family

ID=16550625

Family Applications (1)

Application Number Title Priority Date Filing Date
JP20809995A Expired - Fee Related JP3335808B2 (ja) 1995-08-15 1995-08-15 ベクトル処理装置

Country Status (1)

Country Link
JP (1) JP3335808B2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103827814A (zh) * 2011-09-26 2014-05-28 英特尔公司 用于提供利用跨越功能的向量加载操作/存储操作的指令和逻辑
JP2014526757A (ja) * 2011-09-26 2014-10-06 インテル・コーポレーション ベクトル散乱演算機能及びベクトル収集演算機能を提供する命令及びロジック
JP2014530426A (ja) * 2011-09-26 2014-11-17 インテル・コーポレーション ストライド機能及びマスク機能を有するベクトルロード及びベクトルストアを提供する命令及びロジック
JP2016157479A (ja) * 2016-05-02 2016-09-01 インテル・コーポレーション ベクトル散乱演算機能及びベクトル収集演算機能を提供する命令及びロジック
JP2016167291A (ja) * 2016-04-25 2016-09-15 インテル・コーポレーション ストライド機能及びマスク機能を有するベクトルロード及びベクトルストアを提供する命令及びロジック

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103827814A (zh) * 2011-09-26 2014-05-28 英特尔公司 用于提供利用跨越功能的向量加载操作/存储操作的指令和逻辑
JP2014526758A (ja) * 2011-09-26 2014-10-06 インテル・コーポレーション ストライド機能を有するベクトルロード演算/ストア演算を提供する命令及びロジック
JP2014526757A (ja) * 2011-09-26 2014-10-06 インテル・コーポレーション ベクトル散乱演算機能及びベクトル収集演算機能を提供する命令及びロジック
JP2014530426A (ja) * 2011-09-26 2014-11-17 インテル・コーポレーション ストライド機能及びマスク機能を有するベクトルロード及びベクトルストアを提供する命令及びロジック
CN106951214A (zh) * 2011-09-26 2017-07-14 英特尔公司 用于提供利用跨越功能的向量加载操作/存储操作的指令和逻辑
US9747101B2 (en) 2011-09-26 2017-08-29 Intel Corporation Gather-op instruction to duplicate a mask and perform an operation on vector elements gathered via tracked offset-based gathering
US9804844B2 (en) 2011-09-26 2017-10-31 Intel Corporation Instruction and logic to provide stride-based vector load-op functionality with mask duplication
JP2016167291A (ja) * 2016-04-25 2016-09-15 インテル・コーポレーション ストライド機能及びマスク機能を有するベクトルロード及びベクトルストアを提供する命令及びロジック
JP2016157479A (ja) * 2016-05-02 2016-09-01 インテル・コーポレーション ベクトル散乱演算機能及びベクトル収集演算機能を提供する命令及びロジック

Also Published As

Publication number Publication date
JP3335808B2 (ja) 2002-10-21

Similar Documents

Publication Publication Date Title
JPH06295257A (ja) デジタル信号処理システム
JPH0954769A (ja) ベクトル処理装置
KR970703564A (ko) 분산 데이터 버퍼를 액세싱하기 위한 방법 및 장치(method and apparatus for accessing a distributed data buffer)
US5386521A (en) Instruction prefetching circuit with a next physical address precalculating circuit
JP3211423B2 (ja) 分岐命令実行方法および分岐命令実行装置
JPH056281A (ja) 情報処理装置
JPH0877143A (ja) ベクトルデータ処理装置
JPS615348A (ja) 情報処理装置
JP3366235B2 (ja) データ読み出し制御装置
JP3157242B2 (ja) マイクロ・プログラム制御におけるエラー処理方法
JPS59197946A (ja) メモリ装置
JP2998299B2 (ja) プロセッサ制御装置
JP3729250B2 (ja) 情報処理装置及び電子機器
JP3005987B2 (ja) デジタル信号処理装置
KR100246465B1 (ko) 마이크로프로세서 스택 명령어의 수행사이클을 줄이기 위한 장치 및 그 방법
JP2705359B2 (ja) トレース回路
JP3047992B2 (ja) 主記憶キー制御方法
JP3179891B2 (ja) バス制御方式
JPH0333934A (ja) レジスタ退避復帰方式
JPH02272646A (ja) トレーサー
JPH07175648A (ja) マイクロプログラム制御装置
JPH02118729A (ja) 情報処理装置
JPH04287231A (ja) マイクロプロセッサ
JPS6086625A (ja) デ−タ処理装置
JPH09120383A (ja) データ入出力方法及びそのためのデータ入出力装置

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees