JPH0319984B2 - - Google Patents
Info
- Publication number
- JPH0319984B2 JPH0319984B2 JP14357684A JP14357684A JPH0319984B2 JP H0319984 B2 JPH0319984 B2 JP H0319984B2 JP 14357684 A JP14357684 A JP 14357684A JP 14357684 A JP14357684 A JP 14357684A JP H0319984 B2 JPH0319984 B2 JP H0319984B2
- Authority
- JP
- Japan
- Prior art keywords
- vector
- vector length
- maximum
- length
- 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.)
- Expired
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/80—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
- G06F15/8053—Vector processors
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Complex Calculations (AREA)
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、ベクトルレジスタを備えベクトルレ
ジスタ長の判別を行なうベクトル処理装置に関す
る。
ジスタ長の判別を行なうベクトル処理装置に関す
る。
従来、CRAY−1に代表されるベクトル処理
装置においては、固定長(CRAY−1では64)
のベクトルレジスタを複数個備え、ベクトルレジ
スタ中のベクトルデータを対象として、ベクトル
演算を実行している。前記固定長は、一つのベク
トルレジスタが保持する最大のベクトル長なの
で、以下最大ベクトル長(MVL)と呼ぶ。
装置においては、固定長(CRAY−1では64)
のベクトルレジスタを複数個備え、ベクトルレジ
スタ中のベクトルデータを対象として、ベクトル
演算を実行している。前記固定長は、一つのベク
トルレジスタが保持する最大のベクトル長なの
で、以下最大ベクトル長(MVL)と呼ぶ。
ベクトル演算にあつては、ベクトル演算を実行
する前に該演算において、実行すべき演算数(ベ
クトル要素数)を保持するベクトル長レジスタと
呼ばれる記憶手段に、予じめ実行すべきベクトル
要素数が命令で設定されたあと、ベクトル演算が
実行される。ベクトル演算ユニツトではベクトル
長レジスタに設定された回数だけの命令で指定さ
れた演算がベクトルレジスタから次々と読み出し
たベクトル要素に対して実行され、演算結果がベ
クトルレジスタまたは主記憶装置に順次格納され
る。このとき、FORTRAN等で書かれた元々の
ベクトル演算を実行すべきループのループ長
(N)が前記最大ベクトル長(MVL)を超えてい
る場合にはこのループを複数個に分割して、1回
のベクトル演算が最大ベクトル長を超えないよう
にして、複数回、該ベクトル演算が実行される。
この結果、ループ長(N)>最大ベクトル長
(MVL)なるループのベクトル化が行われる。す
なわち、ループ長(N)≦最大ベクトル長
(MVL)ならばループ長(N)がベクトル長レジ
スタにセツトされてベクトル演算が実行される。
ループ長(N)>最大ベクトル長(MVL)なら
ば、ループを〔(N−1)/MVL〕+1個に分割
し、(N−1)/MVLの余りに1を加えた値がま
ずベクトル長レジスタにセツトされて第1回目の
ベクトル演算が実行される。次は最大ベクトル長
(MVL)がベクトル長レジスタにセツトされて残
りの〔(N−1)/MVL〕回のベクトル演算が実
行される。(〔x〕はxを超えない最大の整数。)
このようにしてループ長(N)>最大ベクトル長
(MVL)なるループは、最大ベクトル長を固定長
とするベクトルレジスタを持つベクトル処理装置
においてもベクトル化できる。このとき、
CRAY−1のような従来装置では、ベクトルレ
ジスタの最大長が固定であるのみならず、定数と
して、オブジエクトプログラム中で設定しておく
必要がある。このことは、例えば、将来、VLSI
技術等で高速大容量の記憶素子が実現されると、
より大容量のベクトルレジスタを処理装置内に備
えることが可能となり、このとき必然的に、ベク
トルレジスタの最大長も大きくなる。
する前に該演算において、実行すべき演算数(ベ
クトル要素数)を保持するベクトル長レジスタと
呼ばれる記憶手段に、予じめ実行すべきベクトル
要素数が命令で設定されたあと、ベクトル演算が
実行される。ベクトル演算ユニツトではベクトル
長レジスタに設定された回数だけの命令で指定さ
れた演算がベクトルレジスタから次々と読み出し
たベクトル要素に対して実行され、演算結果がベ
クトルレジスタまたは主記憶装置に順次格納され
る。このとき、FORTRAN等で書かれた元々の
ベクトル演算を実行すべきループのループ長
(N)が前記最大ベクトル長(MVL)を超えてい
る場合にはこのループを複数個に分割して、1回
のベクトル演算が最大ベクトル長を超えないよう
にして、複数回、該ベクトル演算が実行される。
この結果、ループ長(N)>最大ベクトル長
(MVL)なるループのベクトル化が行われる。す
なわち、ループ長(N)≦最大ベクトル長
(MVL)ならばループ長(N)がベクトル長レジ
スタにセツトされてベクトル演算が実行される。
ループ長(N)>最大ベクトル長(MVL)なら
ば、ループを〔(N−1)/MVL〕+1個に分割
し、(N−1)/MVLの余りに1を加えた値がま
ずベクトル長レジスタにセツトされて第1回目の
ベクトル演算が実行される。次は最大ベクトル長
(MVL)がベクトル長レジスタにセツトされて残
りの〔(N−1)/MVL〕回のベクトル演算が実
行される。(〔x〕はxを超えない最大の整数。)
このようにしてループ長(N)>最大ベクトル長
(MVL)なるループは、最大ベクトル長を固定長
とするベクトルレジスタを持つベクトル処理装置
においてもベクトル化できる。このとき、
CRAY−1のような従来装置では、ベクトルレ
ジスタの最大長が固定であるのみならず、定数と
して、オブジエクトプログラム中で設定しておく
必要がある。このことは、例えば、将来、VLSI
技術等で高速大容量の記憶素子が実現されると、
より大容量のベクトルレジスタを処理装置内に備
えることが可能となり、このとき必然的に、ベク
トルレジスタの最大長も大きくなる。
しかし、従来装置では、最大ベクトル長がオブ
ジエクトプログラム中に定数として設定されてい
るので、より小容量のベクトルレジスタ用に作ら
れた従来のプログラムを再コンパルすることなく
大容量ベクトルレジスタを有効に利用することは
できない。また、ベクトル処理装置を製品化する
場合に、性能/価格比を最適に、ユーザにより適
した製品とするために、ベクトルレジスタの容量
により複数個のモデルを設定する場合もある。こ
のとき、モデル間で、最大ベクトル長が通常は異
なるが、従来装置では前記同様、最大ベクトル長
(MVL)が定数となつているため、モデム間のオ
ブジエクトレベルの互換性がない、という欠点が
ある。
ジエクトプログラム中に定数として設定されてい
るので、より小容量のベクトルレジスタ用に作ら
れた従来のプログラムを再コンパルすることなく
大容量ベクトルレジスタを有効に利用することは
できない。また、ベクトル処理装置を製品化する
場合に、性能/価格比を最適に、ユーザにより適
した製品とするために、ベクトルレジスタの容量
により複数個のモデルを設定する場合もある。こ
のとき、モデル間で、最大ベクトル長が通常は異
なるが、従来装置では前記同様、最大ベクトル長
(MVL)が定数となつているため、モデム間のオ
ブジエクトレベルの互換性がない、という欠点が
ある。
本発明の目的は上述の欠点を解決し、ベクトル
レジスタの容量が異なるモデル間において、オブ
ジエクトレベルの互換性を与えるようにしたベク
トル処理装置を提供することにある。
レジスタの容量が異なるモデル間において、オブ
ジエクトレベルの互換性を与えるようにしたベク
トル処理装置を提供することにある。
本発明の処理装置は、命令およびオペランドを
記憶する主記憶装置と命令でアクセス可能な少な
くとも1個以上のスカラレジスタと、順序づけら
れた複数個のベクトル要素をそれぞれ保持する複
数個のベクトルレジスタと、該ベクトルレジスタ
の内容を演算する少なくとも一つ以上の演算ユニ
ツトと、該演算ユニツトが実行すべき演算要素数
を保持する少なくとも一つ以上のベクトル長保持
手段とを備えたベクトル処理装置において、前記
ベクトルレジスタの保持しうる最大ベクトル長は
2のべき乗の長さであり、該最大ベクトル長に対
応する符号化された符号化最大ベクトル長を記憶
し、かつ、外部から設定可能な最大ベクトル長記
憶手段に接続され、前記符号化最大ベクトル長の
値を(最大ベクトル長−1)の値に変換するベク
トル長変換手段と、該最大ベクトル長記憶手段か
らの読み出し命令検出に応答して該最大ベクトル
長記憶手段中の符号化最大ベクトル長を、前記ベ
クトル長変換手段を通して(最大ベクトル長−
1)の値に変換し、前記スカラレジスタまたは主
記憶装置に読出す制御手段とを備えたことを特徴
とする。
記憶する主記憶装置と命令でアクセス可能な少な
くとも1個以上のスカラレジスタと、順序づけら
れた複数個のベクトル要素をそれぞれ保持する複
数個のベクトルレジスタと、該ベクトルレジスタ
の内容を演算する少なくとも一つ以上の演算ユニ
ツトと、該演算ユニツトが実行すべき演算要素数
を保持する少なくとも一つ以上のベクトル長保持
手段とを備えたベクトル処理装置において、前記
ベクトルレジスタの保持しうる最大ベクトル長は
2のべき乗の長さであり、該最大ベクトル長に対
応する符号化された符号化最大ベクトル長を記憶
し、かつ、外部から設定可能な最大ベクトル長記
憶手段に接続され、前記符号化最大ベクトル長の
値を(最大ベクトル長−1)の値に変換するベク
トル長変換手段と、該最大ベクトル長記憶手段か
らの読み出し命令検出に応答して該最大ベクトル
長記憶手段中の符号化最大ベクトル長を、前記ベ
クトル長変換手段を通して(最大ベクトル長−
1)の値に変換し、前記スカラレジスタまたは主
記憶装置に読出す制御手段とを備えたことを特徴
とする。
次に本発明について、図面を参照して詳細に説
明する。
明する。
第1図を参照すると、本発明の一実施例では8
個のベクトルレジスタ1を備え、各ベクトルレジ
スタ1は0番地から63番地までの順序付けられた
64個のベクトル要素を保持することができるの
で、最大ベクトル長(MVL)は64である。各ベ
クトルレジスタ1は加減算器などの演算ユニツト
3に接続されている。ベクトル長レジスタ(VL)
2は、各演算ユニツト3が実行すべきベクトル演
算要素数を保持するレジスタであり、演算ユニツ
ト3に接続されている。前記レジスタ2は命令で
内容を設定することができ、本実施例ではスカラ
レジスタ4を通して内容が設定される。
個のベクトルレジスタ1を備え、各ベクトルレジ
スタ1は0番地から63番地までの順序付けられた
64個のベクトル要素を保持することができるの
で、最大ベクトル長(MVL)は64である。各ベ
クトルレジスタ1は加減算器などの演算ユニツト
3に接続されている。ベクトル長レジスタ(VL)
2は、各演算ユニツト3が実行すべきベクトル演
算要素数を保持するレジスタであり、演算ユニツ
ト3に接続されている。前記レジスタ2は命令で
内容を設定することができ、本実施例ではスカラ
レジスタ4を通して内容が設定される。
本実施例のベクトル処理装置では、命令が主記
憶装置5から読み出され、命令レジスタ6に設定
され、デコーダ10で解読される。該命令がベク
トル演算命令であると解読結果が適当な演算ユニ
ツト3に送出される。該演算ユニツト3では、命
令で指定されたベクトルレジスタ1からのベクト
ル要素が順次読み出され、指定された演算が実行
されて、演算結果のベクトル要素が次々とベクト
ルレジスタ1に格納される。このとき実行される
ベクトル演算数は予じめベクトル長(VL)レジ
スタ2に設定されている回数だけ実行される。
憶装置5から読み出され、命令レジスタ6に設定
され、デコーダ10で解読される。該命令がベク
トル演算命令であると解読結果が適当な演算ユニ
ツト3に送出される。該演算ユニツト3では、命
令で指定されたベクトルレジスタ1からのベクト
ル要素が順次読み出され、指定された演算が実行
されて、演算結果のベクトル要素が次々とベクト
ルレジスタ1に格納される。このとき実行される
ベクトル演算数は予じめベクトル長(VL)レジ
スタ2に設定されている回数だけ実行される。
スカラ演算やアドレス計算に使用するスカラレ
ジスタ4は16個あり、32ビツトの長さを持ち、ベ
クトルレジスタ1同様、演算ユニツト3に接続さ
れている。
ジスタ4は16個あり、32ビツトの長さを持ち、ベ
クトルレジスタ1同様、演算ユニツト3に接続さ
れている。
第1図の最大ベクトル長レジスタ(MVR)7
は、前記ベクトルレジスタ1の最大ベクトル長を
符号化して保持するレジスタである。符号化して
保持することにより、少ないビツト数で済ませる
ことができる。本実施例では、ベクトルレジスタ
1の最大ベクトル長(MVL)は64であるが、将
来、128から256まで拡張できることを想定して、
最大ベクトル長レジスタ(MVR)7としては2
ビツトの長さとする。最大ベクトル長(MVL)=
64のときは“00”、最大ベクトル長(MVL)=128
のときは“01”、最大ベクトル長(MVL)=256の
ときは“11”を最大ベクトル長レジスタ
(MVR)7に設定するものとする。すなわち、
本実施例では最大ベクトル長レジスタ(MVR)
7には“00”が設定されている。設定手段8は第
1図に示したように、ジヤンパ線やオイツチであ
つてもよく、あるいは保守・診断用のサービスプ
ロセツサ(SVP)でもよい。このような設定手
段8以外に、スキヤンパスのような特別なパスを
通して設定してもよく、ベクトルレジスタの構成
によつて、一意に定まる値が設定される。
は、前記ベクトルレジスタ1の最大ベクトル長を
符号化して保持するレジスタである。符号化して
保持することにより、少ないビツト数で済ませる
ことができる。本実施例では、ベクトルレジスタ
1の最大ベクトル長(MVL)は64であるが、将
来、128から256まで拡張できることを想定して、
最大ベクトル長レジスタ(MVR)7としては2
ビツトの長さとする。最大ベクトル長(MVL)=
64のときは“00”、最大ベクトル長(MVL)=128
のときは“01”、最大ベクトル長(MVL)=256の
ときは“11”を最大ベクトル長レジスタ
(MVR)7に設定するものとする。すなわち、
本実施例では最大ベクトル長レジスタ(MVR)
7には“00”が設定されている。設定手段8は第
1図に示したように、ジヤンパ線やオイツチであ
つてもよく、あるいは保守・診断用のサービスプ
ロセツサ(SVP)でもよい。このような設定手
段8以外に、スキヤンパスのような特別なパスを
通して設定してもよく、ベクトルレジスタの構成
によつて、一意に定まる値が設定される。
次に、第1図の変換回路12は最大ベクトル長
レジスタ7の内容をベクトルレジスタ1の最大ベ
クトル長に復号する変換手段であり、本実施例で
は最大ベクトル長レジスタ7の内容のうしろに6
ビツトの1を付加し、定数“63”を発生する回路
である。
レジスタ7の内容をベクトルレジスタ1の最大ベ
クトル長に復号する変換手段であり、本実施例で
は最大ベクトル長レジスタ7の内容のうしろに6
ビツトの1を付加し、定数“63”を発生する回路
である。
第1図において、主記憶装置5から命令レジス
タ6に命令が取出され、該命令がベクトルレジス
タ1の最大長を読み出す命令であると、命令のビ
ツト8−11で指定されるスカラレジスタ4が選択
回路9により選択される。次に、最大ベクトル長
レジスタ7の内容が変換回路12を通して(最大
ベクトル長−1)の値に変換され、選択されたス
カラレジスタ4にロードされる。本実施例では、
最大ベクトル長はスカラレジスタ4に読み出され
るものとしたが最大ベクトル長を、主記憶装置5
に直接転送するように構成してもよい。なお、最
大ベクトル長−1の値が読み出されるようにした
のは、2のべき乗の除算の余りの計算が便利なた
めである。
タ6に命令が取出され、該命令がベクトルレジス
タ1の最大長を読み出す命令であると、命令のビ
ツト8−11で指定されるスカラレジスタ4が選択
回路9により選択される。次に、最大ベクトル長
レジスタ7の内容が変換回路12を通して(最大
ベクトル長−1)の値に変換され、選択されたス
カラレジスタ4にロードされる。本実施例では、
最大ベクトル長はスカラレジスタ4に読み出され
るものとしたが最大ベクトル長を、主記憶装置5
に直接転送するように構成してもよい。なお、最
大ベクトル長−1の値が読み出されるようにした
のは、2のべき乗の除算の余りの計算が便利なた
めである。
第2図は、最大ベクトル長−1を主記憶制御装
置11を通して主記憶装置5に転送するよう構成
した第2の実施例である。この場合、最大ベクト
ル長−1を転送するよう指示した命令のビツト12
−31では、主記憶装置5のアドレスを指定する。
置11を通して主記憶装置5に転送するよう構成
した第2の実施例である。この場合、最大ベクト
ル長−1を転送するよう指示した命令のビツト12
−31では、主記憶装置5のアドレスを指定する。
第3A図は第1図に示した実施例による
FORT−RANのDOループのベクトル制御部分の
ソースプログラムを示し、第3B図はそのオブジ
エクトプログラムを示す。第3B図において←は
右辺の内容を左辺の記憶手段に設定(ロード)す
ることを示す。
FORT−RANのDOループのベクトル制御部分の
ソースプログラムを示し、第3B図はそのオブジ
エクトプログラムを示す。第3B図において←は
右辺の内容を左辺の記憶手段に設定(ロード)す
ることを示す。
第3B図においてステツプ(10)では第3A図に示
したソースプログラムのループ長Nがスカラレジ
スタS1にロードされている。ステツプ(2)ではベ
クトルレジスタの(最大ベクトル長−1)すなわ
ち、最大ベクトル長レジスタの内容を復号して、
“63”がスカラレジスタS2にロードされる。ス
テツプ(3)では数値N−1がレジスタS3にロード
されている。ステツプ(4)ではスカラレジスタS2
の内容に1が加えられ、最大ベクトル長(MVL)
が求められる。ステツプ(5)ではスカラレジスタS
3およびS2のそれぞれの内容の論理積がとられ
てスカラレジスタS5にロードされる。ステツプ
(3)からステツプ(5)の一連の処理では通常、最大ベ
クトル長(MVL)は2のべき乗であることを利
用して、(N−1)/MVLの剰余が求められる。
ステツプ(6)では前記剰余して、1が加えられて、
加算結果がスカラレジスタS6にロードされる。
本実施例では、アドレス情報はバイトを単位とし
ており、かつ、一つのベクトルデータは4バイト
長である。従つて、ステツプ(7)では、スカラレジ
スタS6の内容が2ビツト左にシフト、すなわ
ち、4倍されている。これはループを分割したと
きのベクトル要素間の距離が求められていること
に相当する。ステツプ(8)ではステツプ(7)と同様最
大ベクトル長時のベクトル要素間の距離が求めら
れる。ステツプ(9)では最初のベクトル要素の相対
ベースアドレスがセツトされている。ここまでが
第3A図のDOループの前処理部分である。
したソースプログラムのループ長Nがスカラレジ
スタS1にロードされている。ステツプ(2)ではベ
クトルレジスタの(最大ベクトル長−1)すなわ
ち、最大ベクトル長レジスタの内容を復号して、
“63”がスカラレジスタS2にロードされる。ス
テツプ(3)では数値N−1がレジスタS3にロード
されている。ステツプ(4)ではスカラレジスタS2
の内容に1が加えられ、最大ベクトル長(MVL)
が求められる。ステツプ(5)ではスカラレジスタS
3およびS2のそれぞれの内容の論理積がとられ
てスカラレジスタS5にロードされる。ステツプ
(3)からステツプ(5)の一連の処理では通常、最大ベ
クトル長(MVL)は2のべき乗であることを利
用して、(N−1)/MVLの剰余が求められる。
ステツプ(6)では前記剰余して、1が加えられて、
加算結果がスカラレジスタS6にロードされる。
本実施例では、アドレス情報はバイトを単位とし
ており、かつ、一つのベクトルデータは4バイト
長である。従つて、ステツプ(7)では、スカラレジ
スタS6の内容が2ビツト左にシフト、すなわ
ち、4倍されている。これはループを分割したと
きのベクトル要素間の距離が求められていること
に相当する。ステツプ(8)ではステツプ(7)と同様最
大ベクトル長時のベクトル要素間の距離が求めら
れる。ステツプ(9)では最初のベクトル要素の相対
ベースアドレスがセツトされている。ここまでが
第3A図のDOループの前処理部分である。
ステツプ(10)ではスカラレジスタS6の内容がベ
クトル長レジスタ2にロードされる。スカラレジ
スタS6の内容は前記(N−1)/MVLの剰余
+1または最大ベクトル長(MVL)のいずれか
である。ステツプ(11)では次のループの繰返し
のために、ベクトルの相対ベースアドレスが求め
られる。ステツプ(12)ではループ間のベクトル
要素間距離がスカラレジスタS7に移送される。
ステツプ(13)ではスカラレジスタS1の内容か
らスカラレジスタS6の内容が差し引かれて演算
すべき残りのベクトル要素数が求められている。
ステツプ(14)ではスカラレジスタS4の内容、
すなわち、最大ベクトル長MVLがスカラレジス
タS6に移送されている。ステツプ(15)では演
算すべき残りのベクトル要素があるかどうかが判
定され残りがあればLOOPへ分岐してさらにルー
プが繰返される。
クトル長レジスタ2にロードされる。スカラレジ
スタS6の内容は前記(N−1)/MVLの剰余
+1または最大ベクトル長(MVL)のいずれか
である。ステツプ(11)では次のループの繰返し
のために、ベクトルの相対ベースアドレスが求め
られる。ステツプ(12)ではループ間のベクトル
要素間距離がスカラレジスタS7に移送される。
ステツプ(13)ではスカラレジスタS1の内容か
らスカラレジスタS6の内容が差し引かれて演算
すべき残りのベクトル要素数が求められている。
ステツプ(14)ではスカラレジスタS4の内容、
すなわち、最大ベクトル長MVLがスカラレジス
タS6に移送されている。ステツプ(15)では演
算すべき残りのベクトル要素があるかどうかが判
定され残りがあればLOOPへ分岐してさらにルー
プが繰返される。
この実施例においては、第3B図から明らかな
ように、ベクトルレジスタの保持しうる最大ベク
トル長を定数とするオブジエクトプログラムとは
なつていないので、ベクトルレジスタの最大長が
異なるモデルであつても、同一のオブジエクトプ
ログラムが使用できる。
ように、ベクトルレジスタの保持しうる最大ベク
トル長を定数とするオブジエクトプログラムとは
なつていないので、ベクトルレジスタの最大長が
異なるモデルであつても、同一のオブジエクトプ
ログラムが使用できる。
発明の効果
本発明には外部から設定可能なベクトルレジス
タの保持しうる最大ベクトル長に相当する値を記
憶する手段を設け、該最大ベクトル長を命令によ
つて、プログラムに見えるレジスタもしくは主記
憶に読み出すように構成することにより、ベクト
ル長が異なるベクトルレジスタを有するベクトル
処理装置間でオブジエクトレベルの互換性をプロ
グラムに与えるという効果がある。
タの保持しうる最大ベクトル長に相当する値を記
憶する手段を設け、該最大ベクトル長を命令によ
つて、プログラムに見えるレジスタもしくは主記
憶に読み出すように構成することにより、ベクト
ル長が異なるベクトルレジスタを有するベクトル
処理装置間でオブジエクトレベルの互換性をプロ
グラムに与えるという効果がある。
第1図は本発明の一実施例を示す図、第2図は
本発明の他の実施例を示す図、第3A図は
FORT−RANのDOループ制御部分のコーデイン
グ例を示す図および第3B図は本発明による場合
の第3A図のソースプログラムに対応するオブジ
エクトプログラムの例を示す図である。 1……ベクトルレジスタ、2……ベクトル長レ
ジスタ、3……演算ユニツト、4……スカラレジ
スタ、5……主記憶装置、6……命令レジスタ、
7……最大ベクトル長レジスタ、8……設定手
段、9……選択回路、10……デコーダ、11…
…主記憶制御装置、12……変換回路。
本発明の他の実施例を示す図、第3A図は
FORT−RANのDOループ制御部分のコーデイン
グ例を示す図および第3B図は本発明による場合
の第3A図のソースプログラムに対応するオブジ
エクトプログラムの例を示す図である。 1……ベクトルレジスタ、2……ベクトル長レ
ジスタ、3……演算ユニツト、4……スカラレジ
スタ、5……主記憶装置、6……命令レジスタ、
7……最大ベクトル長レジスタ、8……設定手
段、9……選択回路、10……デコーダ、11…
…主記憶制御装置、12……変換回路。
Claims (1)
- 【特許請求の範囲】 1 命令およびオペランドを記憶する主記憶装置
と、命令でアクセス可能な少なくとも1個以上の
スカラレジスタと、順序づけられた複数個のベク
トル要素を保持する複数個のベクトルレジスタ
と、これらベクトルレジスタの内容を演算する少
なくとも一つ以上の演算ユニツトと、該演算ユニ
ツトが実行すべき演算要素数を保持する少なくと
も一つ以上のベクトル長保持手段とを備えたベク
トル処理装置において、 前記ベクトルレジスタの保持しうる最大ベクト
ル長は2のべき乗であり、該最大ベクトル長に対
応する符号化された符号化最大ベクトル長を記憶
し、かつ、外部から設定可能な最大ベクトル長記
憶手段と、該最大ベクトル長記憶手段に接続さ
れ、前記符号化最大ベクトル長の値を(最大ベク
トル長−1)の値に復号するベクトル長変換手段
と、 前記最大ベクトル長記憶手段からの読出し命令
検出に応答して、前記最大ベクトル長記憶手段の
符号化最大ベクトル長をベクトル長変換手段を通
して、(最大ベクトル長−1)の値に変換し、前
記スカラレジスタに読出す制御手段とを備えたこ
とを特徴とするベクトル処理装置。 2 特許請求の範囲第1項記載のベクトル処理装
置において、前記最大ベクトル長記憶手段からの
読出し命令検出に応答して、前記最大ベクトル長
記憶手段中の符号化最大ベクトル長を前記ベクト
ル長変換手段を介して、(最大ベクトル長−1)
の値に変換し、該(最大ベクトル長−1)の値を
前記主記憶装置に読出す制御手段とを備えたこと
を特徴とするベクトル処理装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP14357684A JPS6123273A (ja) | 1984-07-11 | 1984-07-11 | ベクトル処理装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP14357684A JPS6123273A (ja) | 1984-07-11 | 1984-07-11 | ベクトル処理装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS6123273A JPS6123273A (ja) | 1986-01-31 |
| JPH0319984B2 true JPH0319984B2 (ja) | 1991-03-18 |
Family
ID=15341950
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP14357684A Granted JPS6123273A (ja) | 1984-07-11 | 1984-07-11 | ベクトル処理装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS6123273A (ja) |
-
1984
- 1984-07-11 JP JP14357684A patent/JPS6123273A/ja active Granted
Also Published As
| Publication number | Publication date |
|---|---|
| JPS6123273A (ja) | 1986-01-31 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US20200371799A1 (en) | Method and Apparatus for Permuting Streamed Data Elements | |
| US6915413B2 (en) | Micro-controller for reading out compressed instruction code and program memory for compressing instruction code and storing therein | |
| JPH0371337A (ja) | マイクロプロセツサ回路 | |
| JPS6058490B2 (ja) | 命令ブランチ機構 | |
| JPH1091443A (ja) | 情報処理回路、マイクロコンピュータ及び電子機器 | |
| JPH0319986B2 (ja) | ||
| US6647484B1 (en) | Transpose address mode in general purpose DSP processor | |
| JPH0410108B2 (ja) | ||
| JPH0319985B2 (ja) | ||
| JPH0319984B2 (ja) | ||
| AU2020425196A1 (en) | Secure computation apparatus, secure computation method, and program | |
| JPH0319983B2 (ja) | ||
| JP2002215606A (ja) | データ処理装置 | |
| US4723258A (en) | Counter circuit | |
| JPS5826584B2 (ja) | デ−タ処理装置 | |
| JP2605792B2 (ja) | 演算処理装置 | |
| JP2624738B2 (ja) | 丸め処理方式 | |
| JP3193830B2 (ja) | 演算回路 | |
| JP2000148477A (ja) | アドレス計算方法およびその機構 | |
| JP2895892B2 (ja) | データ処理装置 | |
| JPS62154172A (ja) | ベクトル命令処理装置 | |
| JPH11143710A (ja) | 処理対象値入力装置及びプログラム変換装置 | |
| Tewfik et al. | Novel coding approach to high throughput rate FIR filter implementation | |
| JPS61296599A (ja) | メモリ集積回路 | |
| JPH0991135A (ja) | 演算処理装置および命令変換装置 |