JP2636075B2 - ベクトル処理装置 - Google Patents
ベクトル処理装置Info
- Publication number
- JP2636075B2 JP2636075B2 JP31187590A JP31187590A JP2636075B2 JP 2636075 B2 JP2636075 B2 JP 2636075B2 JP 31187590 A JP31187590 A JP 31187590A JP 31187590 A JP31187590 A JP 31187590A JP 2636075 B2 JP2636075 B2 JP 2636075B2
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- vector
- store
- bit position
- load
- 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
Links
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
- Complex Calculations (AREA)
Description
【発明の詳細な説明】 [産業上の利用分野] 本発明は、ベクトルを単位とするロード/ストアを、
主記憶装置とベクトルレジスタとの間で行なうベクトル
処理装置に関する。
主記憶装置とベクトルレジスタとの間で行なうベクトル
処理装置に関する。
[従来の技術] 従来より命令処理の高速化を目的とした、命令処理順
序を動的に決定しプログラムで指定された順序によらず
演算部、主記憶処理部(主記憶装置を含み、データの読
出しと書込を行なう)に命令投入を行う方式がスカラ処
理を行なう計算機で用いられている。この様な計算機で
は、命令の入出力オペランドであるレジスタやメモリア
ドレスの衝突の検出および演算器や主記憶処理部の使用
状況を判定しプログラムで指定された順序によらず演算
部や主記憶処理部への命令投入を決定する手段を有して
いる。
序を動的に決定しプログラムで指定された順序によらず
演算部、主記憶処理部(主記憶装置を含み、データの読
出しと書込を行なう)に命令投入を行う方式がスカラ処
理を行なう計算機で用いられている。この様な計算機で
は、命令の入出力オペランドであるレジスタやメモリア
ドレスの衝突の検出および演算器や主記憶処理部の使用
状況を判定しプログラムで指定された順序によらず演算
部や主記憶処理部への命令投入を決定する手段を有して
いる。
上記の命令の入出力オペランドであるレジスタやメモ
リアドレスの衝突の検出および主記憶装置の使用状況を
判定しプログラムで指定された順序によらず主記憶処理
部への命令投入を決定する方式は、スカラ計算機のみな
らずスベクトル計算機においても適用可能であるが、ス
ベクトル計算機では複数のメモリ参照ベクトル命令を、
プログラムで指定された順序と逆順にして主記憶処理部
に投入してもよいかの判定が困難である。即ち、プログ
ラムで実行することが指定されているベクトルストア命
令のストア開始起点アドレスをbase1、該ベクトルスト
ア命令がストアするベクトルの要素間距離をdist1、該
ベクトルストア命令がストアするベクトル要素数をlen1
(len1≧1)とし、該ベクトルストア命令より後で実行
することがプログラムで指定されているベクトルロード
命令のロード開始起点アドレスをbase2、該ベクトルロ
ード命令がロードするベクトルの要素間距離をdist2、
該ベクトルロード命令がロードするベクトル要素数をle
n2(len2≧1)とすると、該ベクトルストア命令によっ
てストアされるアドレスの集合である{base1,base1+d
ist1×1,base1+dist1×2,…,base1+dist1×(len1−
1)}と該ベクトルロード命令によってロードされるア
ドレスの集合である{base2,base2+dist2×1,base2+d
ist2×2,…,base2+dist×(len2−1)}との交わりの
集合が空である場合のみ、該ベクトルロード命令は該ベ
クトルストア命令に先行して主記憶参照をおこなっても
よいと判定されるが、任意のbase1,dist1,len1(len1≧
1),base2,dist2,len2(len2≧1)の組合せに対して
判定を短時間で下すのは困難である。
リアドレスの衝突の検出および主記憶装置の使用状況を
判定しプログラムで指定された順序によらず主記憶処理
部への命令投入を決定する方式は、スカラ計算機のみな
らずスベクトル計算機においても適用可能であるが、ス
ベクトル計算機では複数のメモリ参照ベクトル命令を、
プログラムで指定された順序と逆順にして主記憶処理部
に投入してもよいかの判定が困難である。即ち、プログ
ラムで実行することが指定されているベクトルストア命
令のストア開始起点アドレスをbase1、該ベクトルスト
ア命令がストアするベクトルの要素間距離をdist1、該
ベクトルストア命令がストアするベクトル要素数をlen1
(len1≧1)とし、該ベクトルストア命令より後で実行
することがプログラムで指定されているベクトルロード
命令のロード開始起点アドレスをbase2、該ベクトルロ
ード命令がロードするベクトルの要素間距離をdist2、
該ベクトルロード命令がロードするベクトル要素数をle
n2(len2≧1)とすると、該ベクトルストア命令によっ
てストアされるアドレスの集合である{base1,base1+d
ist1×1,base1+dist1×2,…,base1+dist1×(len1−
1)}と該ベクトルロード命令によってロードされるア
ドレスの集合である{base2,base2+dist2×1,base2+d
ist2×2,…,base2+dist×(len2−1)}との交わりの
集合が空である場合のみ、該ベクトルロード命令は該ベ
クトルストア命令に先行して主記憶参照をおこなっても
よいと判定されるが、任意のbase1,dist1,len1(len1≧
1),base2,dist2,len2(len2≧1)の組合せに対して
判定を短時間で下すのは困難である。
そこで、単純に判定可能な場合として、先行するベク
トルストア命令で指定されたストア開始起点アドレスba
se1から該ベクトルストア命令の最終ストアアドレスで
あるbase1+dist1×(len1−1)までの間をアドレス集
合要素とする{addl;base1≦addl≧(base1+dist1×
(len1−1))}と、後続するベクトルロード命令で指
定されたロード開始起点アドレスbase2から該ベクトル
ロード命令の最終ストアアドレスであるbase2+(len2
−1)×dist2までの間をアドレス集合要素とする{add
2;base2≦add2≧(base2+dist2×(len2−1))}と
の交わりの集合が空であるならば主記憶参照に関して追
い越しても構わないとする、アドレス範囲の重複を判定
する方法が考案されている。
トルストア命令で指定されたストア開始起点アドレスba
se1から該ベクトルストア命令の最終ストアアドレスで
あるbase1+dist1×(len1−1)までの間をアドレス集
合要素とする{addl;base1≦addl≧(base1+dist1×
(len1−1))}と、後続するベクトルロード命令で指
定されたロード開始起点アドレスbase2から該ベクトル
ロード命令の最終ストアアドレスであるbase2+(len2
−1)×dist2までの間をアドレス集合要素とする{add
2;base2≦add2≧(base2+dist2×(len2−1))}と
の交わりの集合が空であるならば主記憶参照に関して追
い越しても構わないとする、アドレス範囲の重複を判定
する方法が考案されている。
[発明が解決しようとする課題] 上述したアドレス範囲の重複を判定する方法は比較的
簡単に実現する反面、追越し可能がどうかを正しく判定
できる組合せも限定される。即ち、プログラムで実行す
ることが指定されているベクトルストア命令のストア開
始起点アドレスをbase1、該ベクトルストア命令でスト
アされる最終ベクトル要素のアドレスをlast1とし、該
ベクトルストア命令より後で実行することがプログラム
で指定されているベクトルロード命令のロード開始起点
アドレスをbase2、該ベクトルロード命令でロードされ
る最終ベクトル要素のアドレスをlast2とした場合、前
述したアドレス範囲の重複を判定する方法では、base1,
last1,base2,last2のアドレスの順序関係24通りのなか
で、高々8通り (base1≦last1≦base2≦last2) (base1≦last1≦last2≦base2) (last1≦base1≦base2≦last2) (last1≦base1≦last2≦base2) (base2≦last2≦base1≦last1) (base2≦last2≦last1≦base1) (last2≦base2≦base1≦last1) (last2≦base2≦last1≦base1) の場合しか追い越してできないという欠点を有してお
り、またベクトルストア命令によるベクトルストア領域
とベクトルロード命令によるベクトルロード領域とが重
なっているが、データは重なっていないことをチェック
するためのチェック回路は、その搭載ハードウェア量お
よび追い越し可/不可チェック時間が無視できない。
簡単に実現する反面、追越し可能がどうかを正しく判定
できる組合せも限定される。即ち、プログラムで実行す
ることが指定されているベクトルストア命令のストア開
始起点アドレスをbase1、該ベクトルストア命令でスト
アされる最終ベクトル要素のアドレスをlast1とし、該
ベクトルストア命令より後で実行することがプログラム
で指定されているベクトルロード命令のロード開始起点
アドレスをbase2、該ベクトルロード命令でロードされ
る最終ベクトル要素のアドレスをlast2とした場合、前
述したアドレス範囲の重複を判定する方法では、base1,
last1,base2,last2のアドレスの順序関係24通りのなか
で、高々8通り (base1≦last1≦base2≦last2) (base1≦last1≦last2≦base2) (last1≦base1≦base2≦last2) (last1≦base1≦last2≦base2) (base2≦last2≦base1≦last1) (base2≦last2≦last1≦base1) (last2≦base2≦base1≦last1) (last2≦base2≦last1≦base1) の場合しか追い越してできないという欠点を有してお
り、またベクトルストア命令によるベクトルストア領域
とベクトルロード命令によるベクトルロード領域とが重
なっているが、データは重なっていないことをチェック
するためのチェック回路は、その搭載ハードウェア量お
よび追い越し可/不可チェック時間が無視できない。
本発明の目的は、ベクトルストア命令によるベクトル
ストア領域とベクトルロード命令によるベクトルロード
領域とが重なっているが、データは重なっていることを
比較的ハードウェア量が少なく短時間でチェックできる
ベクトル処理装置を提供することである。
ストア領域とベクトルロード命令によるベクトルロード
領域とが重なっているが、データは重なっていることを
比較的ハードウェア量が少なく短時間でチェックできる
ベクトル処理装置を提供することである。
[課題を解決するための手段] 本発明のベクトル処理装置は、 命令群を保持する命令保持回路と、 ベクトルストア命令のストア開始起点アドレスが命令
保持回路より格納されるストア開始起点アドレス格納レ
ジスタと、 ベクトルロード命令のロード開始起点アドレスが命令
保持回路より格納されるロード開始起点アドレス格納レ
ジスタと、 ベクトルストア命令のストア要素間距離が命令保持回
路より格納されるストア要素間距離格納レジスタと、 ベクトルロード命令のロード要素間距離が命令保持回
路より格納されるロード要素間距離格納レジスタと、 前記ストア開始起点アドレスと前記ロード開始起点ア
ドレスの差を取る減算器と、 前記減算器の減算結果が正の場合、上位1検出を行な
い該減算結果の上位側より始めて1が検出されたビット
位置を第1のビット位置とし、該減算結果が負の場合、
上位0検出を行ない該減算結果の上位側より始めて0が
検出されたビット位置の1ビット上位側を第1のビット
位置とするか、前記減算器の減算結果の正・負にかかわ
らず下位1検出を行ない、該減算結果の下位側より始め
て1が検出されたビット位置を第1のビット位置とする
第1の上位・下位1および0検出回路と、 前記ストア要素間距離または前記ベクトル要素間距離
が正の場合、上位1検出を行ないその上位側より始めて
1が検出されたビット位置を第2のビット位置とし、負
の場合、上位0検出を行ないその上位側より始めて0が
検出されたビット位置を第2のビット位置とするか、前
記ストア要素間距離または前記ベクトル要素間距離の正
・負にかかわらず下位1検出を行ない、下位側より始め
て1が検出されたビット位置を第2のビット位置とする
第2の上位・下位1および0検出回路と、 前記ストア要素間距離と前記ロード要素間距離を比較
する比較回路と、 前記命令保持回路により保持されている命令群中のベ
クトルストア命令と、前記ベクトルストア命令よりも後
から命令投入することをプログラムで指定され前記命令
保持回路により保持されている命令群中のベクトルロー
ド命令に関し、比較回路から一致信号が出力された場
合、第1の上位・下位1および0検出回路によって検出
された第1のビット位置と第2の上位・下位1および0
検出回路によって検出された第2のビット位置の大小関
係を判定し、後者が前者よりも上位側ならば前記ベクト
ルロード命令を前記ベクトルストア命令に先行して主記
憶処理装置に投入する比較回路を有する。
保持回路より格納されるストア開始起点アドレス格納レ
ジスタと、 ベクトルロード命令のロード開始起点アドレスが命令
保持回路より格納されるロード開始起点アドレス格納レ
ジスタと、 ベクトルストア命令のストア要素間距離が命令保持回
路より格納されるストア要素間距離格納レジスタと、 ベクトルロード命令のロード要素間距離が命令保持回
路より格納されるロード要素間距離格納レジスタと、 前記ストア開始起点アドレスと前記ロード開始起点ア
ドレスの差を取る減算器と、 前記減算器の減算結果が正の場合、上位1検出を行な
い該減算結果の上位側より始めて1が検出されたビット
位置を第1のビット位置とし、該減算結果が負の場合、
上位0検出を行ない該減算結果の上位側より始めて0が
検出されたビット位置の1ビット上位側を第1のビット
位置とするか、前記減算器の減算結果の正・負にかかわ
らず下位1検出を行ない、該減算結果の下位側より始め
て1が検出されたビット位置を第1のビット位置とする
第1の上位・下位1および0検出回路と、 前記ストア要素間距離または前記ベクトル要素間距離
が正の場合、上位1検出を行ないその上位側より始めて
1が検出されたビット位置を第2のビット位置とし、負
の場合、上位0検出を行ないその上位側より始めて0が
検出されたビット位置を第2のビット位置とするか、前
記ストア要素間距離または前記ベクトル要素間距離の正
・負にかかわらず下位1検出を行ない、下位側より始め
て1が検出されたビット位置を第2のビット位置とする
第2の上位・下位1および0検出回路と、 前記ストア要素間距離と前記ロード要素間距離を比較
する比較回路と、 前記命令保持回路により保持されている命令群中のベ
クトルストア命令と、前記ベクトルストア命令よりも後
から命令投入することをプログラムで指定され前記命令
保持回路により保持されている命令群中のベクトルロー
ド命令に関し、比較回路から一致信号が出力された場
合、第1の上位・下位1および0検出回路によって検出
された第1のビット位置と第2の上位・下位1および0
検出回路によって検出された第2のビット位置の大小関
係を判定し、後者が前者よりも上位側ならば前記ベクト
ルロード命令を前記ベクトルストア命令に先行して主記
憶処理装置に投入する比較回路を有する。
[作用] ベクトルストア命令の開始起点アドレスとベクトルロ
ード命令のロード開始起点アドレスの差をとり、減算結
果の上位・下位1あるいは上位0検出結果(ビット位
置)と、ベクトルストア命令の要素関距離(またはベク
トルロード命令の要素間距離)の上位・下位1あるいは
上位0検出の検出結果(ビット位置)とを比較して追い
越しの可否を判定するので、ベクトルストア命令による
ベクトルストア領域とベクトルロード命令によるベクト
ルロード領域とが重なっていてもデータが重なっていな
いケースにおいても比較的ハードウェア量が少なく短時
間で追い越しチェックを行なうことができる。
ード命令のロード開始起点アドレスの差をとり、減算結
果の上位・下位1あるいは上位0検出結果(ビット位
置)と、ベクトルストア命令の要素関距離(またはベク
トルロード命令の要素間距離)の上位・下位1あるいは
上位0検出の検出結果(ビット位置)とを比較して追い
越しの可否を判定するので、ベクトルストア命令による
ベクトルストア領域とベクトルロード命令によるベクト
ルロード領域とが重なっていてもデータが重なっていな
いケースにおいても比較的ハードウェア量が少なく短時
間で追い越しチェックを行なうことができる。
[実施例] 次に、本発明の実施例について図面を参照して説明す
る。
る。
第1図は本発明の一実施例のベクトル処理装置のブロ
ック図、第2図は、ベクトルストア領域とベクトルロー
ド領域とが重なっているがデータは重なっていないこと
を表わす図、第3図は、表1〜表3によって求められた
上位1・0検出結果を比較し、追越可・不可を表わす
図、第4図は、ストア開始起点アドレスとロード開始起
点アドレスの差(base1−base2)と要素間距離(dist1
またはdist2)について下位1を表わす図、第5図は表
1〜表3の検出結果と第5図の検出結果より、ストア開
始起点アドレスとロード開始起点アドレスの差(base1
−base2)と要素間距離(dist1またはdist2)について
より正確な値を求めることを表わす図である。
ック図、第2図は、ベクトルストア領域とベクトルロー
ド領域とが重なっているがデータは重なっていないこと
を表わす図、第3図は、表1〜表3によって求められた
上位1・0検出結果を比較し、追越可・不可を表わす
図、第4図は、ストア開始起点アドレスとロード開始起
点アドレスの差(base1−base2)と要素間距離(dist1
またはdist2)について下位1を表わす図、第5図は表
1〜表3の検出結果と第5図の検出結果より、ストア開
始起点アドレスとロード開始起点アドレスの差(base1
−base2)と要素間距離(dist1またはdist2)について
より正確な値を求めることを表わす図である。
本ベクトル処理装置は、命令群を保持する命令保持回
路1と、ベクトルストア命令のストア開始起点アドレス
base1が命令保持回路1より格納されるストア開始点ア
ドレスレジスタ2と、ベクトルロード命令のロード開始
起点アドレスbase2が命令保持回路1より格納されるロ
ード開始点アドレス格納レジスタ3と、ストア開始起点
アドレスbase1とロード開始起点アドレスbase2との差を
取る減算器6と、減算結果の上位・下位1検出および上
位0検出を行なう上位・下位1および検出回路7と、ベ
クトルストア命令がストアするベクトルの要素間距離di
st1が命令保持回路1より格納されるストア要素間距離
格納レジスタ4と、ベクトルロード命令がロードするベ
クトルの要素間距離dist2が命令保持回路1より格納さ
れるロード要素間距離格納レジスタ5と、ベクトルスト
ア命令の要素間距離dist1とベクトルロード命令の要素
間距離dist2とを比較する比較回路8と、ベクトルロー
ド命令の要素間距離dist2の上位・下位1検出および上
位0検出を行なう上位・下位1および0検出回路9と、
検出結果の大小比較を行なう比較回路10から構成されて
いる。
路1と、ベクトルストア命令のストア開始起点アドレス
base1が命令保持回路1より格納されるストア開始点ア
ドレスレジスタ2と、ベクトルロード命令のロード開始
起点アドレスbase2が命令保持回路1より格納されるロ
ード開始点アドレス格納レジスタ3と、ストア開始起点
アドレスbase1とロード開始起点アドレスbase2との差を
取る減算器6と、減算結果の上位・下位1検出および上
位0検出を行なう上位・下位1および検出回路7と、ベ
クトルストア命令がストアするベクトルの要素間距離di
st1が命令保持回路1より格納されるストア要素間距離
格納レジスタ4と、ベクトルロード命令がロードするベ
クトルの要素間距離dist2が命令保持回路1より格納さ
れるロード要素間距離格納レジスタ5と、ベクトルスト
ア命令の要素間距離dist1とベクトルロード命令の要素
間距離dist2とを比較する比較回路8と、ベクトルロー
ド命令の要素間距離dist2の上位・下位1検出および上
位0検出を行なう上位・下位1および0検出回路9と、
検出結果の大小比較を行なう比較回路10から構成されて
いる。
上位・下位1および0検出回路7は減算器6の減算結
果が正の場合、上位1検出を行ない該減算結果の上位側
より始めて1が検出されたビット位置を第1のビット位
置とし、該減算結果の負の場合、上位0検出を行ない該
減算結果の上位側より始めて0が検出されたビット位置
の1ビット上位側を第1のビット位置とするか、減算器
6の減算結果の正・負にかかわらず下位1検出を行な
い、該減算結果の下位側より始めて1が検出されたビッ
ト位置を第1のビット位置とする。第2の上・下位1お
よび0検出回路9は、要素間距離dist2が正の場合、上
位1検出を行ないその上位側より始めて1が検出された
ビット位置を第2のビット位置とし、負の場合、上位0
検出を行ないその上位側より始めて0が検出されたビッ
ト位置を第2のビット位置とするか、要素間距離dist2
の正・負にかかわらず下位1検出を行ない、下位側より
始めて1が検出されたビット位置を第2のビット位置と
する。比較回路10は、命令保持回路1により保持されて
いる命令群中のベクトルストア命令と、前記ベクトルス
トア命令よりも後から命令投入することをプログラムで
指定され命令保持回路1により保持されている命令群中
のベクトルロード命令に関し、比較回路8から一致信号
が出力された場合、上位・下位1および0検出回路7に
よって検出された第1のビット位置と上位・下位1およ
び0検出回路9によって検出された第2のビット位置の
大小関係を判定し、後者が前者よりも上位側ならば前記
ベクトルロード命令を前記ベクトルストア命令に先行し
て主記憶装置に投入させる。
果が正の場合、上位1検出を行ない該減算結果の上位側
より始めて1が検出されたビット位置を第1のビット位
置とし、該減算結果の負の場合、上位0検出を行ない該
減算結果の上位側より始めて0が検出されたビット位置
の1ビット上位側を第1のビット位置とするか、減算器
6の減算結果の正・負にかかわらず下位1検出を行な
い、該減算結果の下位側より始めて1が検出されたビッ
ト位置を第1のビット位置とする。第2の上・下位1お
よび0検出回路9は、要素間距離dist2が正の場合、上
位1検出を行ないその上位側より始めて1が検出された
ビット位置を第2のビット位置とし、負の場合、上位0
検出を行ないその上位側より始めて0が検出されたビッ
ト位置を第2のビット位置とするか、要素間距離dist2
の正・負にかかわらず下位1検出を行ない、下位側より
始めて1が検出されたビット位置を第2のビット位置と
する。比較回路10は、命令保持回路1により保持されて
いる命令群中のベクトルストア命令と、前記ベクトルス
トア命令よりも後から命令投入することをプログラムで
指定され命令保持回路1により保持されている命令群中
のベクトルロード命令に関し、比較回路8から一致信号
が出力された場合、上位・下位1および0検出回路7に
よって検出された第1のビット位置と上位・下位1およ
び0検出回路9によって検出された第2のビット位置の
大小関係を判定し、後者が前者よりも上位側ならば前記
ベクトルロード命令を前記ベクトルストア命令に先行し
て主記憶装置に投入させる。
ここで、第2図は、ベクトルストア領域とベクトルロ
ード領域とが重なっているが、データは重なっていない
ことを表わす図であり、ベクトルストア領域およびベク
トルロード領域といっても実際には部分的にしかデータ
は存在していない場合もある。なお、ベクトルストア領
域およびベクトルロード領域共に主記憶装置に含まれ、
ベクトルストア領域はストア開始起点アドレスbase1よ
り始まり、ベクトルストア命令がストアするベクトルの
要素間距離dist1とベクトルストア領域内に含まれるベ
クトルストアデータの数であるベクトル要素数len1によ
って確定し、ベクトルロード領域はロード開始起点アド
レスbase2より始まり、ベクトルロード命令がロードす
るベクトルの要素間距離dist2とベクトルロード領域内
に含まれるベクトルロードデータの数であるベクトル要
素数len2によって確定するものである。
ード領域とが重なっているが、データは重なっていない
ことを表わす図であり、ベクトルストア領域およびベク
トルロード領域といっても実際には部分的にしかデータ
は存在していない場合もある。なお、ベクトルストア領
域およびベクトルロード領域共に主記憶装置に含まれ、
ベクトルストア領域はストア開始起点アドレスbase1よ
り始まり、ベクトルストア命令がストアするベクトルの
要素間距離dist1とベクトルストア領域内に含まれるベ
クトルストアデータの数であるベクトル要素数len1によ
って確定し、ベクトルロード領域はロード開始起点アド
レスbase2より始まり、ベクトルロード命令がロードす
るベクトルの要素間距離dist2とベクトルロード領域内
に含まれるベクトルロードデータの数であるベクトル要
素数len2によって確定するものである。
第2図の一例として、要素間距離が等しく(dist1=d
ist2)、ストア開始起点アドレスとロード開始起点アド
レスの差が要素間距離より小さいとき[(base1−base
2)<dist1(またはdist2)]、ベクトルストア領域内
にベクトル要素を4つ(len1=4)含み、またベクトル
ロード領域内にベクトル要素を4つ(len2=4)含んで
おり、それぞれのベクトルデータは、ある幅を持ってい
るが4つのベクトルデータは連続していないため、ベク
トルストア領域とベクトルロード領域が重なっていても
データは重なっていない場合もある。
ist2)、ストア開始起点アドレスとロード開始起点アド
レスの差が要素間距離より小さいとき[(base1−base
2)<dist1(またはdist2)]、ベクトルストア領域内
にベクトル要素を4つ(len1=4)含み、またベクトル
ロード領域内にベクトル要素を4つ(len2=4)含んで
おり、それぞれのベクトルデータは、ある幅を持ってい
るが4つのベクトルデータは連続していないため、ベク
トルストア領域とベクトルロード領域が重なっていても
データは重なっていない場合もある。
以上第1図は、第2図のケースを検出するための回路
である。
である。
ここで第1図の例1として第3図(a)〜(d)の様
にストア開始起点アドレスとロード開始起点アドレスの
差(base1−base2)と要素間距離(dist1またはdist2)
について上位1[U1:Upper1)]検出および上位0[U0:
Upeer0]検出を行なう。ただし、第3図(a)のdist1
(またはdist2)と第3図(c)のbase1−base2におい
ては共にその値は正なので上位1検出を行ない、第3図
(b)のdist1(dist2)においてその値は負なので上位
0検出を行ない、上位側より始めて0が検出されたビッ
ト位置に1をセットし、第3図(d)のbase1−base2に
おいてその値は負なので上位0検出を行ない上位側より
始めて0が検出されたビット位置の1ビット上位側に1
をセットする。第3図の結果より表1の様な場合[U1/0
(base1−base2)<U1/0 dist1(dist2)]、データは
重ならないため追越可と判断され、表2、表3のような
場合[U1/0(base1−base2)≧U1/0 dist1(dist
2)]、追越不可と判断される。
にストア開始起点アドレスとロード開始起点アドレスの
差(base1−base2)と要素間距離(dist1またはdist2)
について上位1[U1:Upper1)]検出および上位0[U0:
Upeer0]検出を行なう。ただし、第3図(a)のdist1
(またはdist2)と第3図(c)のbase1−base2におい
ては共にその値は正なので上位1検出を行ない、第3図
(b)のdist1(dist2)においてその値は負なので上位
0検出を行ない、上位側より始めて0が検出されたビッ
ト位置に1をセットし、第3図(d)のbase1−base2に
おいてその値は負なので上位0検出を行ない上位側より
始めて0が検出されたビット位置の1ビット上位側に1
をセットする。第3図の結果より表1の様な場合[U1/0
(base1−base2)<U1/0 dist1(dist2)]、データは
重ならないため追越可と判断され、表2、表3のような
場合[U1/0(base1−base2)≧U1/0 dist1(dist
2)]、追越不可と判断される。
第1図の例2として、第4図の(a)〜(b)のスト
ア開始起点アドレスとロード開始起点アドレスの差(ba
se1−base2)と要素間距離(dist1またはdist2)につい
てその値が正・負共に下位1[L1:Lower1]検出を行な
い、第4図の下位1検出結果と、第3図の上位1あるい
は上位0、検出結果とを第5図の様に比較する。ここで
第5図(a)では負のdist1を上位0検出(U0 dist1)
と下位1検出(L1dist1)をしている。その結果、U0 di
st1よりもL1dist1の方が高いビット位置に1がセットさ
れる結果となる。U0 dist1にて0が検出されたビット位
置に1をセットするのはU0 dist1によって0が検出され
たビット位置よりも低いビット位置に1がある場合のこ
とを考慮に入れ、追い越し比較用U0 dist1は真のdist1
(dist2)よりも小さな値をセットしている。しかしL1
dist1の方がU0 dist1よりも上位ビットに1をセットす
る場合、U0 dist1によって1をセットしたビット位置よ
りも低いビット位置に1はないものとなる。よってビッ
ト位置検出時の1のセット位置は、L1 dist1によって1
がセットされたビット位置に修正される。同様に第5図
(b)では負のbase1−base2を上位0検出[U0(base1
−base2)]と下位1検出[L1(base1−base2)]をし
ている。その結果U0(base1−base2)よりも、L1(base
1−base2)の方が低いビット位置に1がセットされる結
果となる。U0(base1−base2)にて0が検出されたビッ
ト位置の1ビット上位のビット位置に1をセットするの
は、U0(base1−base2)によって0が検出されたビット
位置よりも下位のビット位置すべてが0の場合のことを
考慮に入れ、追い越し比較用U0(base1−base2)は真の
base1−base2よりも大きな値をセットしている。しかし
L1(base1−base2)の方がU0(base1−base2)よりも下
位ビットに1をセットする場合U0(base1−base2)によ
って1をセットしたビット位置よりも低いビット位置に
1があるものとなる。よってビット位置検出時の1のセ
ット位置は、上位0検出されたビット位置に修正され
る。以上により求めた結果を表1〜表3と同様にbase1
−base2とdist1(dist2)とを比較することにより、例
1よりもより多くのケースが追い越し可能となる。
ア開始起点アドレスとロード開始起点アドレスの差(ba
se1−base2)と要素間距離(dist1またはdist2)につい
てその値が正・負共に下位1[L1:Lower1]検出を行な
い、第4図の下位1検出結果と、第3図の上位1あるい
は上位0、検出結果とを第5図の様に比較する。ここで
第5図(a)では負のdist1を上位0検出(U0 dist1)
と下位1検出(L1dist1)をしている。その結果、U0 di
st1よりもL1dist1の方が高いビット位置に1がセットさ
れる結果となる。U0 dist1にて0が検出されたビット位
置に1をセットするのはU0 dist1によって0が検出され
たビット位置よりも低いビット位置に1がある場合のこ
とを考慮に入れ、追い越し比較用U0 dist1は真のdist1
(dist2)よりも小さな値をセットしている。しかしL1
dist1の方がU0 dist1よりも上位ビットに1をセットす
る場合、U0 dist1によって1をセットしたビット位置よ
りも低いビット位置に1はないものとなる。よってビッ
ト位置検出時の1のセット位置は、L1 dist1によって1
がセットされたビット位置に修正される。同様に第5図
(b)では負のbase1−base2を上位0検出[U0(base1
−base2)]と下位1検出[L1(base1−base2)]をし
ている。その結果U0(base1−base2)よりも、L1(base
1−base2)の方が低いビット位置に1がセットされる結
果となる。U0(base1−base2)にて0が検出されたビッ
ト位置の1ビット上位のビット位置に1をセットするの
は、U0(base1−base2)によって0が検出されたビット
位置よりも下位のビット位置すべてが0の場合のことを
考慮に入れ、追い越し比較用U0(base1−base2)は真の
base1−base2よりも大きな値をセットしている。しかし
L1(base1−base2)の方がU0(base1−base2)よりも下
位ビットに1をセットする場合U0(base1−base2)によ
って1をセットしたビット位置よりも低いビット位置に
1があるものとなる。よってビット位置検出時の1のセ
ット位置は、上位0検出されたビット位置に修正され
る。以上により求めた結果を表1〜表3と同様にbase1
−base2とdist1(dist2)とを比較することにより、例
1よりもより多くのケースが追い越し可能となる。
[発明の効果] 以上説明したように本発明は、ベクトルストア命令の
ストア開始起点アドレスとベクトルロード命令のロード
開始起点アドレスの差をとり、減算結果の上位・下位1
あるいは上位0検出結果(ビット位置)と、ベクトルス
トア命令の要素間距離(またはベクトルロード命令の要
素間距離)の上位・下位1あるいは上位0検出の検出結
果(ビット位置)とを比較して追い越しの可否を判定す
ることにより、ベクトルストア命令によるベクトルスト
ア領域とベクトルロード命令によるベクトルロード領域
とが重なっていても第2図の様なデータが重なっていな
いケースにおいても比較的ハードウェア量が少なく短時
間で追い越しチェックを行なうことができ、追い越しが
能となってベクトル処理を高速化できる効果がある。
ストア開始起点アドレスとベクトルロード命令のロード
開始起点アドレスの差をとり、減算結果の上位・下位1
あるいは上位0検出結果(ビット位置)と、ベクトルス
トア命令の要素間距離(またはベクトルロード命令の要
素間距離)の上位・下位1あるいは上位0検出の検出結
果(ビット位置)とを比較して追い越しの可否を判定す
ることにより、ベクトルストア命令によるベクトルスト
ア領域とベクトルロード命令によるベクトルロード領域
とが重なっていても第2図の様なデータが重なっていな
いケースにおいても比較的ハードウェア量が少なく短時
間で追い越しチェックを行なうことができ、追い越しが
能となってベクトル処理を高速化できる効果がある。
第1図は本発明の位置実施例のベクトル処理装置のブロ
ック図、第2図は、ベクトルストア領域とベクトルロー
ド領域とが重なっているがデータは重なっていないこと
を表わす図、第3図は、表1〜表2によって求められた
上位1・0検出結果を比較し追越可・不可を表わす図、
第4図は、ストア開始起点アドレスとロード開始起点ア
ドレスの差(base1−base2)と要素間距離(dist1また
はdist2)について下位1を表わす図、第5図は、表1
〜表3の検出結果と第5図の検出結果より、ストア開始
起点アドレスとロード開始起点アドレスの差(base1−b
ase2)と要素間距離(dist1またはdist2)についてより
正確な値を求めることを表わす図である。 1……命令保持回路、 2……ストア開始起点アドレス格納レジスタ、 3……ロード開始起点アドレス格納レジスタ、 4……ストア要素間距離格納レジスタ、 5……ロード要素間距離格納レジスタ、 6……減算器、 7……上位・下位1および0検出回路、 8……比較回路、 9……上位・下位1および0検出回路、 10……比較回路。
ック図、第2図は、ベクトルストア領域とベクトルロー
ド領域とが重なっているがデータは重なっていないこと
を表わす図、第3図は、表1〜表2によって求められた
上位1・0検出結果を比較し追越可・不可を表わす図、
第4図は、ストア開始起点アドレスとロード開始起点ア
ドレスの差(base1−base2)と要素間距離(dist1また
はdist2)について下位1を表わす図、第5図は、表1
〜表3の検出結果と第5図の検出結果より、ストア開始
起点アドレスとロード開始起点アドレスの差(base1−b
ase2)と要素間距離(dist1またはdist2)についてより
正確な値を求めることを表わす図である。 1……命令保持回路、 2……ストア開始起点アドレス格納レジスタ、 3……ロード開始起点アドレス格納レジスタ、 4……ストア要素間距離格納レジスタ、 5……ロード要素間距離格納レジスタ、 6……減算器、 7……上位・下位1および0検出回路、 8……比較回路、 9……上位・下位1および0検出回路、 10……比較回路。
Claims (1)
- 【請求項1】ベクトルを単位とするロード/ストアを、
主記憶装置とベクトルレジスタとの間で行なうベクトル
処理装置であって、 命令群を保持する命令保持回路と、 ベクトルストア命令のストア開始起点アドレスが命令保
持回路より格納されるストア開始起点アドレス格納レジ
スタと、 ベクトルロード命令のロード開始起点アドレスが命令保
持回路より格納されるロード開始起点アドレス格納レジ
スタと、 ベクトルストア命令のストア要素間距離が命令保持回路
より格納されるストア要素間距離格納レジスタと、 ベクトルロード命令のロード要素間距離が命令保持回路
より格納されるロード要素間距離格納レジスタと、 前記ストア開始起点アドレスと前記ロード開始起点アド
レスの差を取る減算器と、 前記減算器の減算結果が正の場合、上位1検出を行ない
該減算結果の上位側より始めて1が検出されたビット位
置を第1のビット位置とし、該減算結果が負の場合、上
位0検出を行ない該減算結果の上位側より始めて0が検
出されたビット位置の1ビット上位側を第1のビット位
置とするか、前記減算器の減算結果の正・負にかかわら
ず下位1検出を行ない、該減算結果の下位側より始めて
1が検出されたビット位置を第1のビット位置とする第
1の上位・下位1および0検出回路と、 前記ストア要素間距離または前記ベクトル要素間距離が
正の場合、上位1検出を行ないその上位側より始めて1
が検出されたビット位置を第2のビット位置とし、負の
場合、上位0検出を行ないその上位側より始めて0が検
出されたビット位置を第2のビット位置とするか、前記
ストア要素間距離または前記ベクトル要素間距離の正・
負にかかわらず下位1検出を行ない、下位側より始めて
1が検出されたビット位置を第2のビット位置とする第
2の上位・下位1および0検出回路と、 前記ストア要素間距離と前記ロード要素間距離を比較す
る比較回路と、 前記命令保持回路により保持されている命令群中のベク
トルストア命令と、前記ベクトルストア命令よりも後か
ら命令投入することをプログラムで指定され前記命令保
持回路により保持されている命令群中のベクトルロード
命令に関し、比較回路から一致信号が出力された場合、
第1の上位・下位1および0検出回路によって検出され
た第1のビット位置と第2の上位・下位1および0検出
回路によって検出された第2のビット位置の大小関係を
判定し、後者が前者よりも上位側ならば前記ベクトルロ
ード命令を前記ベクトルストア命令に先行して主記憶装
置に投入させる比較回路を有するベクトル処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP31187590A JP2636075B2 (ja) | 1990-11-16 | 1990-11-16 | ベクトル処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP31187590A JP2636075B2 (ja) | 1990-11-16 | 1990-11-16 | ベクトル処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH04182777A JPH04182777A (ja) | 1992-06-30 |
JP2636075B2 true JP2636075B2 (ja) | 1997-07-30 |
Family
ID=18022467
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP31187590A Expired - Fee Related JP2636075B2 (ja) | 1990-11-16 | 1990-11-16 | ベクトル処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2636075B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9323531B2 (en) * | 2013-03-15 | 2016-04-26 | Intel Corporation | Systems, apparatuses, and methods for determining a trailing least significant masking bit of a writemask register |
-
1990
- 1990-11-16 JP JP31187590A patent/JP2636075B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH04182777A (ja) | 1992-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109146932B (zh) | 确定图像中目标点的世界坐标的方法、装置和系统 | |
CN111915549A (zh) | 瑕疵检测方法、电子装置及计算机可读存储介质 | |
CN112257377B (zh) | 器件布局方法、装置、电子设备和计算机可读存储介质 | |
CN111881764A (zh) | 一种目标检测方法、装置、电子设备及存储介质 | |
US8749503B2 (en) | Touch position detector and mobile cell phone | |
JP2636075B2 (ja) | ベクトル処理装置 | |
JP2004523823A (ja) | モジュロ・アドレシング | |
CN110989880B (zh) | 一种界面元素处理方法、装置及可读存储介质 | |
JP2636076B2 (ja) | ベクトル処理装置 | |
CN113420604B (zh) | 多人姿态估计方法、装置和电子设备 | |
CN108764206A (zh) | 目标图像识别方法和系统、计算机设备 | |
US5457645A (en) | Pattern recognition system including a circuit for detecting maximum or minimum data elements which determines the standard pattern closest to the input pattern | |
CN113190455B (zh) | 一种元素定位方法及计算设备 | |
JP2558952B2 (ja) | 固定小数点型デジタル信号処理装置 | |
CN115690052A (zh) | 一种晶圆检测的方法、装置及存储介质 | |
JP2920968B2 (ja) | 命令処理順序制御方式 | |
US20040078413A1 (en) | Device for monitoring operation of processing circuit | |
JPH01271876A (ja) | 比較演算処理装置 | |
CN117523604A (zh) | 手势识别方法、装置、电子设备及计算机可读存储介质 | |
CN116432700A (zh) | 应用于深度神经网络的量化位宽确定方法及电子设备 | |
CN116881151A (zh) | 应用程序匹配测试方法、装置、计算机设备及存储介质 | |
JPH03282685A (ja) | 画像処理装置 | |
CN114898090A (zh) | 一种生产检测方法、装置、电子设备及存储介质 | |
JPH04316127A (ja) | 情報処理装置 | |
CN113420762A (zh) | 一种图像处理方法、系统、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |