JPS62232073A - ベクトルデ−タ処理装置 - Google Patents
ベクトルデ−タ処理装置Info
- Publication number
- JPS62232073A JPS62232073A JP7601186A JP7601186A JPS62232073A JP S62232073 A JPS62232073 A JP S62232073A JP 7601186 A JP7601186 A JP 7601186A JP 7601186 A JP7601186 A JP 7601186A JP S62232073 A JPS62232073 A JP S62232073A
- Authority
- JP
- Japan
- Prior art keywords
- vector
- register
- read
- element data
- selection circuit
- 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
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)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明はベクトルデータ処理装置に関し、特にベクトル
レジスタ間のエレメントデータ移送を行うベクトルデー
タ処理装置に関する。
レジスタ間のエレメントデータ移送を行うベクトルデー
タ処理装置に関する。
従来、この種のベクトルデータ処理装置としては、米国
特許第4.128.880号公報に開示されたものがあ
る。すなわち、第2図を参照すると、従来のベクトルデ
ータ処理装置は、ベクトルレジスタ10および11、読
出し/書込みアドレスレジスタ20および21、エレメ
ントデータ人力選択回路30、エレメントデータ出力選
択回路40および演算器50から構成されている。
特許第4.128.880号公報に開示されたものがあ
る。すなわち、第2図を参照すると、従来のベクトルデ
ータ処理装置は、ベクトルレジスタ10および11、読
出し/書込みアドレスレジスタ20および21、エレメ
ントデータ人力選択回路30、エレメントデータ出力選
択回路40および演算器50から構成されている。
ベクトルレジスタ10および11は、それぞれ複数個の
エレメントデータを保持するもので、通常複数個設けら
れている。
エレメントデータを保持するもので、通常複数個設けら
れている。
読出し/書込みアドレスレジスタ20および21は、ベ
クトルレジスタ10およびll内に保持されているエレ
メントデータのロケーションを指定するもので、初期設
定で0にクリアされるとともに、+1力ウント機能を有
する。
クトルレジスタ10およびll内に保持されているエレ
メントデータのロケーションを指定するもので、初期設
定で0にクリアされるとともに、+1力ウント機能を有
する。
このような従来のベクトルデータ処理装置で、1個のへ
クトルレジスタに保持されているエレメントデータの部
分ベクトル演算を行う場合、このベクトルレジスタに保
持されているエレメントデータの一部を他のベクトルレ
ジスタに移送しておく必要がある。このためには、ベク
トルレジスタと主メモリとの間のストア/ロード命令を
用いてエレメントデータを移送する方法、またはシフト
命令を用いて移送する方法がとられている。
クトルレジスタに保持されているエレメントデータの部
分ベクトル演算を行う場合、このベクトルレジスタに保
持されているエレメントデータの一部を他のベクトルレ
ジスタに移送しておく必要がある。このためには、ベク
トルレジスタと主メモリとの間のストア/ロード命令を
用いてエレメントデータを移送する方法、またはシフト
命令を用いて移送する方法がとられている。
ストア/ロード命令を用いる方法では、ベクトルレジス
タ10に保持されているエレメントデータがストア命令
によりベクトル長指定分だけ主メモリに順次ストアされ
、ストアされたエレメントデータの一部がベクトルレジ
スタ11にロードされる。
タ10に保持されているエレメントデータがストア命令
によりベクトル長指定分だけ主メモリに順次ストアされ
、ストアされたエレメントデータの一部がベクトルレジ
スタ11にロードされる。
すなわち、まずストア命令における移送元ベクトルレジ
スタ10と移送するベクトル長との指定に応答して、読
出し/書込みアドレスレジスタ20は0に初期設定され
る。この初期設定に応答して、ベクトルレジスタ10に
保持されているエレメントデータのロケーションOがエ
レメントデータ出力選択回路40に出力され、読出し/
書込みアドレスレジスタ20のカウントアンプにともな
いエレメントデータが順次出力される。エレメントデー
タ出力選択回路40を介して与えられるベクトルレジス
タ10の出力は主メモリに順次移送される0次に、ロー
ド命令における部分ベクトル演算に必要なエレメントデ
ータのロード開始アドレス、ロード先のベクトルレジス
タ11およびベクトル長指定に応答して、読出し/書込
みアドレスレジスタ21の指示に従い主メモリからベク
トルレジスタ11にエレメントデータが順次ロードされ
る。
スタ10と移送するベクトル長との指定に応答して、読
出し/書込みアドレスレジスタ20は0に初期設定され
る。この初期設定に応答して、ベクトルレジスタ10に
保持されているエレメントデータのロケーションOがエ
レメントデータ出力選択回路40に出力され、読出し/
書込みアドレスレジスタ20のカウントアンプにともな
いエレメントデータが順次出力される。エレメントデー
タ出力選択回路40を介して与えられるベクトルレジス
タ10の出力は主メモリに順次移送される0次に、ロー
ド命令における部分ベクトル演算に必要なエレメントデ
ータのロード開始アドレス、ロード先のベクトルレジス
タ11およびベクトル長指定に応答して、読出し/書込
みアドレスレジスタ21の指示に従い主メモリからベク
トルレジスタ11にエレメントデータが順次ロードされ
る。
シフト命令を用いる方法では、ベクトルレジスタ10に
保持されているエレメントデータがシフト命令により1
語ずつシフトされてベクトルレジスタ11に移送される
。シフト命令でシフトすべきエレメントデータを保持す
るベクトルレジスタIO、シフト結果を移送するベクト
ルレジスタ11、シフト量およびベクトル長を指定する
と、読出し/IF込みアドレスレジスタ2oのカウント
アツプにともない、ベクトルレジスタ10に保持されて
いるエレメントデータはロケーション0がらエレメント
データ出力選択回路40に順次出力される。エレメント
データ出力選択回路40を介して与えられたベクトルレ
ジスタ10の出力は、演算器50に送られる。
保持されているエレメントデータがシフト命令により1
語ずつシフトされてベクトルレジスタ11に移送される
。シフト命令でシフトすべきエレメントデータを保持す
るベクトルレジスタIO、シフト結果を移送するベクト
ルレジスタ11、シフト量およびベクトル長を指定する
と、読出し/IF込みアドレスレジスタ2oのカウント
アツプにともない、ベクトルレジスタ10に保持されて
いるエレメントデータはロケーション0がらエレメント
データ出力選択回路40に順次出力される。エレメント
データ出力選択回路40を介して与えられたベクトルレ
ジスタ10の出力は、演算器50に送られる。
演算器50は、エレメントデータ出力選択回路4oの出
力と命令で指定されたシフト量とに応答してシフト動作
を行う。シフト量は通常1語右シフト指定である。エレ
メントデータを1語分右シフトして出力することにより
、演算器50の出力はエレメントデータ入力選択回路3
0を介してベクトルレジスタ11に1語分シフトした形
式で移送される。読出し/書込みアドレスレジスタ21
も+1力ウント機能を有し、エレメントデータ入力選択
回路3oがら出力されるエレメントデータのロケーショ
ンを順次指定する。このシフト動作を繰り返すことで所
定のエレメントデータの移送が終了する。
力と命令で指定されたシフト量とに応答してシフト動作
を行う。シフト量は通常1語右シフト指定である。エレ
メントデータを1語分右シフトして出力することにより
、演算器50の出力はエレメントデータ入力選択回路3
0を介してベクトルレジスタ11に1語分シフトした形
式で移送される。読出し/書込みアドレスレジスタ21
も+1力ウント機能を有し、エレメントデータ入力選択
回路3oがら出力されるエレメントデータのロケーショ
ンを順次指定する。このシフト動作を繰り返すことで所
定のエレメントデータの移送が終了する。
上述した従来のベクトルデータ処理装置は、どちらの方
法を採用する装置でも主メモリまたは演算器を必要とす
るため、エレメントデータ移送の性能が低く、しかも後
続の命令が主メモリまたは演算器を必要とするときに競
合してしまうという欠点がある。
法を採用する装置でも主メモリまたは演算器を必要とす
るため、エレメントデータ移送の性能が低く、しかも後
続の命令が主メモリまたは演算器を必要とするときに競
合してしまうという欠点がある。
本発明の目的は、上述の点に鑑み、ベクトルレジスタ間
のエレメントデータの移送を高速化することができるベ
クトルデータ処理装置を提供することにある。
のエレメントデータの移送を高速化することができるベ
クトルデータ処理装置を提供することにある。
本発明のベクトルデータ処理装置は、順序付けられたエ
レメントデータを保持する複数個の第1のベクトルレジ
スタと、順序付けられたエレメントデータを保持する複
数個の第2のベクトルレジスタと、ベクトル命令によっ
て前記第1のベクトルレジスタから前記第2のベクトル
レジスタにエレメントデータを移送する移送手段と、ベ
クトル命令によって演算を行う際に前記第1のへクトル
レジスクの読出しアドレスを設定する第1の読出しアド
レス設定手段と、ベクトル命令によって前記移送手段に
よりエレメントデータを移送する際に前記第1のベクト
ルレジスタの読出しアドレスを設定する第2の読出しア
ドレス設定手段とを有する。
レメントデータを保持する複数個の第1のベクトルレジ
スタと、順序付けられたエレメントデータを保持する複
数個の第2のベクトルレジスタと、ベクトル命令によっ
て前記第1のベクトルレジスタから前記第2のベクトル
レジスタにエレメントデータを移送する移送手段と、ベ
クトル命令によって演算を行う際に前記第1のへクトル
レジスクの読出しアドレスを設定する第1の読出しアド
レス設定手段と、ベクトル命令によって前記移送手段に
よりエレメントデータを移送する際に前記第1のベクト
ルレジスタの読出しアドレスを設定する第2の読出しア
ドレス設定手段とを有する。
次に、本発明について図面を参照して詳細に説明する。
第1図を参照すると、本発明の一実施例は、ベクトルレ
ジスタ100および101、ベクトルバッファレジスタ
102、第1読出しアドレスレジスタ110および11
1、読出し/書込みアドレスレジスタ112、第2読出
しアドレスレジスタ120および121、書込みアドレ
スレジスタエ30および131 。
ジスタ100および101、ベクトルバッファレジスタ
102、第1読出しアドレスレジスタ110および11
1、読出し/書込みアドレスレジスタ112、第2読出
しアドレスレジスタ120および121、書込みアドレ
スレジスタエ30および131 。
第1読出しアドレス選択回路140および141、読出
し/書込みアドレス選択回路142、第2読出しアドレ
ス選択回路150および151、書込みアドレス選択回
路160および161、第1読出しデータ170および
171、第2読出しデータ180および181ならびに
エレメントデータ入力選択回路200を存している。
し/書込みアドレス選択回路142、第2読出しアドレ
ス選択回路150および151、書込みアドレス選択回
路160および161、第1読出しデータ170および
171、第2読出しデータ180および181ならびに
エレメントデータ入力選択回路200を存している。
複数個のベクトルレジスタ、本実施例では2個のベクト
ルレジスタ100および101は、それぞれが順序付け
られた複数のエレメントデータを保持するもので、演算
器(図示せず)から出力される演算結果あるいは主メモ
リから出力されるロードデータを格納する。
ルレジスタ100および101は、それぞれが順序付け
られた複数のエレメントデータを保持するもので、演算
器(図示せず)から出力される演算結果あるいは主メモ
リから出力されるロードデータを格納する。
複数個のベクトルバッファレジスタ、本実施例では1個
のベクトルバッファレジスタ102もまたそれぞれが順
序付けられた複数のエレメントデータを保持するもので
、ベクトルレジスタ100および101から出力される
エレメントデータを格納する。
のベクトルバッファレジスタ102もまたそれぞれが順
序付けられた複数のエレメントデータを保持するもので
、ベクトルレジスタ100および101から出力される
エレメントデータを格納する。
次に、このように構成された本実施例のベクトルデータ
処理装置の動作について説明する。
処理装置の動作について説明する。
主メモリから出力されたロードデータを保持しているベ
クトルレジスタをベクトルレジスタ100とし、そのベ
クトルレジスタ100に格納されているエレメントデー
タを順次読み出してスカラデータとベクトルニレメトデ
ータとのベクトル演算を行い、演算結果をベクトルバッ
ファレジスタ102に格納する場合、命令によってスカ
ラデータを保持しているスカラレジスクの番号、ベクト
ルエレメントデータを保持しているベクトルレジスタ1
00の番号および演算結果を格納するベクトルバッファ
レジスタ102の番号が指定される。ベクトルレジスタ
100への読出し開始アドレスおよびベクトルバッファ
レジスタ102への書込み開始アドレスはOとしてそれ
ぞれ第1読出しアドレス選択回路140および読出し/
書込みアドレス選択回路142に入力される。
クトルレジスタをベクトルレジスタ100とし、そのベ
クトルレジスタ100に格納されているエレメントデー
タを順次読み出してスカラデータとベクトルニレメトデ
ータとのベクトル演算を行い、演算結果をベクトルバッ
ファレジスタ102に格納する場合、命令によってスカ
ラデータを保持しているスカラレジスクの番号、ベクト
ルエレメントデータを保持しているベクトルレジスタ1
00の番号および演算結果を格納するベクトルバッファ
レジスタ102の番号が指定される。ベクトルレジスタ
100への読出し開始アドレスおよびベクトルバッファ
レジスタ102への書込み開始アドレスはOとしてそれ
ぞれ第1読出しアドレス選択回路140および読出し/
書込みアドレス選択回路142に入力される。
なお、これらの開始アドレスの設定経路およびスカラデ
ータの設定経路は図示されていない。
ータの設定経路は図示されていない。
ベクトルレジスタ100およびベクトルバッファレジス
タ102に保持できる最大エレメントデータ長をそれぞ
れ64個としてベクトル長指定が32である場合、命令
実行開始にともない第1読出しアドレス選択回路140
および読出し/書込みアドレス選択回路142に入力さ
れている開始アドレスOがそれぞれ第1読出しアドレス
レジスタ110 #よび読出し/書込みアドレスレジス
タ112に格納される。ベクトルレジスタ100は第1
読出しアドレスレジスタ110で措定されるロケーショ
ンのエレメントデータを第1読出しデータ170として
読み出し、演算器に供給する。第1読出しアドレスレジ
スタ110はエレメントデータを順次読み出すために+
1力ウント機能を有し、ロケーション0の次はロケーシ
ョン1、その次はロケーション2とカウントされる。カ
ウントされたロケーションからベクトル長指定分だけベ
クトルレジスタ100内に保持されているエレメントデ
ータが読み出され、演算器に供給される。演算結果はエ
レメントデータ入力選択回路200に入力され、演算結
果をベクトルバッファレジスタ102に出力するように
選択指示される。
タ102に保持できる最大エレメントデータ長をそれぞ
れ64個としてベクトル長指定が32である場合、命令
実行開始にともない第1読出しアドレス選択回路140
および読出し/書込みアドレス選択回路142に入力さ
れている開始アドレスOがそれぞれ第1読出しアドレス
レジスタ110 #よび読出し/書込みアドレスレジス
タ112に格納される。ベクトルレジスタ100は第1
読出しアドレスレジスタ110で措定されるロケーショ
ンのエレメントデータを第1読出しデータ170として
読み出し、演算器に供給する。第1読出しアドレスレジ
スタ110はエレメントデータを順次読み出すために+
1力ウント機能を有し、ロケーション0の次はロケーシ
ョン1、その次はロケーション2とカウントされる。カ
ウントされたロケーションからベクトル長指定分だけベ
クトルレジスタ100内に保持されているエレメントデ
ータが読み出され、演算器に供給される。演算結果はエ
レメントデータ入力選択回路200に入力され、演算結
果をベクトルバッファレジスタ102に出力するように
選択指示される。
一方、ベクトルバフフルレジスタ102は読出し/書込
みアドレスレジスタ112で指定されるロケーションに
、エレメントデータ入力選択回路200から第1番目の
エレメントデータが出力される時点で演算結果の書込み
を開始する。読出し/・書込みアドレスレジスタ112
も第1読出しアドレスレジスタ110と同様にエレメン
トデータを順次書き込むために+1力ウント機能を有し
、ロケーション00次はロケーション1、その次はロケ
ーション2とカウントされる。カウントされたロケーシ
ョンにベクトル長指定分だけエレメントデータ入力選択
回路200から出力されるエレメントデータが書き込ま
れる。この動作は移送したエレメントデータ数が32に
達したとき、すなわちベクトル長指定に等しくなったと
きに終了する。
みアドレスレジスタ112で指定されるロケーションに
、エレメントデータ入力選択回路200から第1番目の
エレメントデータが出力される時点で演算結果の書込み
を開始する。読出し/・書込みアドレスレジスタ112
も第1読出しアドレスレジスタ110と同様にエレメン
トデータを順次書き込むために+1力ウント機能を有し
、ロケーション00次はロケーション1、その次はロケ
ーション2とカウントされる。カウントされたロケーシ
ョンにベクトル長指定分だけエレメントデータ入力選択
回路200から出力されるエレメントデータが書き込ま
れる。この動作は移送したエレメントデータ数が32に
達したとき、すなわちベクトル長指定に等しくなったと
きに終了する。
他の命令で、1個のベクトルレジスタに保持されている
エレメントデータの部分ベクトル演算を行う場合、この
ベクトルレジスタに保持されているエレメントデータの
一部を他のベクトルレジスタに移送しておく必要がある
。演算器から出力された演算結果あるいは主メモリから
出力されたロードデータを保持している移送元のベクト
ルレジスタをベクトルレジスタ100とし、そのベクト
ルレジスタ100に格納されているエレメントデータの
一部を移送する移送先ベクトルレジスタをベクトルレジ
スタ101 とする場合、後続する命令によって移送元
ベクトルレジスタ100の番号と移送先ベクトルレジス
タ101の番号が指定される。
エレメントデータの部分ベクトル演算を行う場合、この
ベクトルレジスタに保持されているエレメントデータの
一部を他のベクトルレジスタに移送しておく必要がある
。演算器から出力された演算結果あるいは主メモリから
出力されたロードデータを保持している移送元のベクト
ルレジスタをベクトルレジスタ100とし、そのベクト
ルレジスタ100に格納されているエレメントデータの
一部を移送する移送先ベクトルレジスタをベクトルレジ
スタ101 とする場合、後続する命令によって移送元
ベクトルレジスタ100の番号と移送先ベクトルレジス
タ101の番号が指定される。
直前に実行開始され、いまだ終了していないベクトル演
算のためのへクトルレジスタ100のエレメントデータ
読出し動作にかかわらず、移送元ベクトルレジスタ10
0への読出し開始アドレスは、命令あるいは命令付随情
報として第2読出しアドレス選択回路150に入力され
る。また、移送先ベクトルレジスタ101の書込み開始
アドレスも同様に、命令あるいは命令付随情報として書
込みアドレス選択回路161に入力される。なお、これ
らの開始アドレスの設定経路は図示されていない。
算のためのへクトルレジスタ100のエレメントデータ
読出し動作にかかわらず、移送元ベクトルレジスタ10
0への読出し開始アドレスは、命令あるいは命令付随情
報として第2読出しアドレス選択回路150に入力され
る。また、移送先ベクトルレジスタ101の書込み開始
アドレスも同様に、命令あるいは命令付随情報として書
込みアドレス選択回路161に入力される。なお、これ
らの開始アドレスの設定経路は図示されていない。
ベクトルレジスタ100からベクトルレジスタ101に
32個のエレメントデータを移送する場合には、命令に
よって移送元ベクトルレジスタ番号をベクトルレジスタ
100 、移送先ベクトルレジスタ番号をベクトルレジ
スタ101 とそれぞれ指定し、ベクトルレジスタ10
0の読出し開始アドレスを32と指定する。命令によっ
て指定された読出し開始アドレスは第2読出しアドレス
選択回路150に人力されて選択され、第2読出しアド
レスレジスタ120に値32が格納される。同時に書込
みアドレス選択回路161に0が入力されて選択され、
書込みアドレスレジスタ131に0が初期設定される。
32個のエレメントデータを移送する場合には、命令に
よって移送元ベクトルレジスタ番号をベクトルレジスタ
100 、移送先ベクトルレジスタ番号をベクトルレジ
スタ101 とそれぞれ指定し、ベクトルレジスタ10
0の読出し開始アドレスを32と指定する。命令によっ
て指定された読出し開始アドレスは第2読出しアドレス
選択回路150に人力されて選択され、第2読出しアド
レスレジスタ120に値32が格納される。同時に書込
みアドレス選択回路161に0が入力されて選択され、
書込みアドレスレジスタ131に0が初期設定される。
ベクトルレジスタ100は第2読出しアドレスレジスタ
120で指定されるロケーションのエレメントデータを
第2読出しデータ180として読み出し、エレメントデ
ータ入力選択回路200に出力する。第2読出しアドレ
スレジスタ120も第1読出しアドレスレジスタ110
と同様にエレメントデータを順次読み出すために+1力
ウント機能を有し、ロケーション32の次はロケーショ
ン33、その次はロケーション34とカウントされ、ベ
クトル長指定分だけベクトルレジスタ100内に保持さ
れているエレメントデータが読み出され、エレメントデ
ータ入力選択回路200に出力される。エレメントデ入
力選択回路200は、ベクトルレジスタ100から読み
出されたエレメントデータをベクトルレジスタ101に
入力するように選択指示する。
120で指定されるロケーションのエレメントデータを
第2読出しデータ180として読み出し、エレメントデ
ータ入力選択回路200に出力する。第2読出しアドレ
スレジスタ120も第1読出しアドレスレジスタ110
と同様にエレメントデータを順次読み出すために+1力
ウント機能を有し、ロケーション32の次はロケーショ
ン33、その次はロケーション34とカウントされ、ベ
クトル長指定分だけベクトルレジスタ100内に保持さ
れているエレメントデータが読み出され、エレメントデ
ータ入力選択回路200に出力される。エレメントデ入
力選択回路200は、ベクトルレジスタ100から読み
出されたエレメントデータをベクトルレジスタ101に
入力するように選択指示する。
一方、ベクトルレジスタ101は書込みアドレスレジス
タ131で指定されるロケーションに、エレメントデー
タ入力選択回路200から第1番目のエレメントデータ
が出力される時点でエレメントデータの書込みを開始す
る。iF込みアドレスレジスタ131 も第2読出しア
ドレスレジスタ120と同様にエレメントデータを順次
書き込むために+1力ウント機能を有し、ロケーション
0の次はロケーション1、その次はロケーション2とカ
ウントされ、ベクトル長指定分だけエレメントデータ入
力選択回路200から出力されるエレメントデータが書
き込まれる。この動作は移送したエレメントデータ数が
32に達したとき、すなわちベクトル長指定に等しくな
ったとき終了する。したがって、先行するベクトル演算
命令によるベクトルレジスタ100のエレメントデータ
読出し動作と後続の移送命令によるベクトルレジスタ1
00のエレメントデータ読出し動作とは、同時に実行で
きることになる。
タ131で指定されるロケーションに、エレメントデー
タ入力選択回路200から第1番目のエレメントデータ
が出力される時点でエレメントデータの書込みを開始す
る。iF込みアドレスレジスタ131 も第2読出しア
ドレスレジスタ120と同様にエレメントデータを順次
書き込むために+1力ウント機能を有し、ロケーション
0の次はロケーション1、その次はロケーション2とカ
ウントされ、ベクトル長指定分だけエレメントデータ入
力選択回路200から出力されるエレメントデータが書
き込まれる。この動作は移送したエレメントデータ数が
32に達したとき、すなわちベクトル長指定に等しくな
ったとき終了する。したがって、先行するベクトル演算
命令によるベクトルレジスタ100のエレメントデータ
読出し動作と後続の移送命令によるベクトルレジスタ1
00のエレメントデータ読出し動作とは、同時に実行で
きることになる。
他の命令の組合せで、ベクトルレジスタ101に格納さ
れているエレメントデータを順次読み出してスカラデー
タとベクトルエレメントデータのベクトル演算を行い、
演算結果をベクトルレジスタ100に格納する命令と、
ベクトルレジスタ101に格納されているエレメントデ
ータを順次読み出してベクトルバッファレジスタ102
に移送する命令が引き続いて実行される場合、まず先行
する命令によってスカラデータを保持しているスカラレ
ジスタの番号、ベクトルエレメントデータを保持してい
るベクトルレジスタ101の番号および演算結果を格納
するベクトルレジスタ100の番号が指定される。ベク
トルレジスタ101への読出し開始アドレスおよびベク
トルレジスタ100への書込み開始アドレスは0として
それぞれ第1読出しアドレス選択回路141および書込
みアドレス選択回路160に入力される。なお、これら
の開始アドレスの設定経路およびスカラデータの設定経
路は図示されていない。
れているエレメントデータを順次読み出してスカラデー
タとベクトルエレメントデータのベクトル演算を行い、
演算結果をベクトルレジスタ100に格納する命令と、
ベクトルレジスタ101に格納されているエレメントデ
ータを順次読み出してベクトルバッファレジスタ102
に移送する命令が引き続いて実行される場合、まず先行
する命令によってスカラデータを保持しているスカラレ
ジスタの番号、ベクトルエレメントデータを保持してい
るベクトルレジスタ101の番号および演算結果を格納
するベクトルレジスタ100の番号が指定される。ベク
トルレジスタ101への読出し開始アドレスおよびベク
トルレジスタ100への書込み開始アドレスは0として
それぞれ第1読出しアドレス選択回路141および書込
みアドレス選択回路160に入力される。なお、これら
の開始アドレスの設定経路およびスカラデータの設定経
路は図示されていない。
ベクトルレジスタ101およびベクトルレジスタ100
に保持できる最大エレメントデータ長をそれぞれ64個
として、ベクトル長指定が32である場合、命令実行開
始にともない第1読出しアドレス選択回路141および
書込みアドレス選択回路160に入力されている開始ア
ドレス0がそれぞれ第1読出しアドレスレジスタ111
および書込みアドレスレジスタ130に格納される。ベ
クトルレジスタ101は第1読出しアドレスレジスタ1
11で指定されるロケーションのエレメントデータを第
1読出しデータ171 として読み出し、演算器に供給
する。第1読み出しアドレスレジスタ111はエレメン
トデータを順次読み出すために+1力ウント機能を有し
、ロケーションOの次はロケーション1、その次はロケ
ーション2とカウントされる。カウントされたロケーシ
ョンからベクトル長指定分だけベクトルレジスタ101
内に保持されているエレメントデータが読み出され、演
算器に供給される。演算結果はエレメントデータ入力選
択回路200に入力され、演算結果をベクトルレジスタ
100に出力するように選択指示される。
に保持できる最大エレメントデータ長をそれぞれ64個
として、ベクトル長指定が32である場合、命令実行開
始にともない第1読出しアドレス選択回路141および
書込みアドレス選択回路160に入力されている開始ア
ドレス0がそれぞれ第1読出しアドレスレジスタ111
および書込みアドレスレジスタ130に格納される。ベ
クトルレジスタ101は第1読出しアドレスレジスタ1
11で指定されるロケーションのエレメントデータを第
1読出しデータ171 として読み出し、演算器に供給
する。第1読み出しアドレスレジスタ111はエレメン
トデータを順次読み出すために+1力ウント機能を有し
、ロケーションOの次はロケーション1、その次はロケ
ーション2とカウントされる。カウントされたロケーシ
ョンからベクトル長指定分だけベクトルレジスタ101
内に保持されているエレメントデータが読み出され、演
算器に供給される。演算結果はエレメントデータ入力選
択回路200に入力され、演算結果をベクトルレジスタ
100に出力するように選択指示される。
一方、ベクトルレジスタ100は書込みアドレスレジス
タ130で指定されるロケーションに、エレメントデー
タ入力選択回路200から第1番目のエレメントデータ
が出力される時点で演算結果の書込みを開始する。
タ130で指定されるロケーションに、エレメントデー
タ入力選択回路200から第1番目のエレメントデータ
が出力される時点で演算結果の書込みを開始する。
書込みアドレスレジスタ130も第1読出しアドレスレ
ジスタ111 と同様にエレメントデータを順次書き込
むために+1力ウント機能を有し、ロケーションOの次
はロケーションl、その次はロケーション2とカウント
される。カウントされたロケーションにベクトル長指定
分だけエレメントデータ入力選択回路200から出力さ
れるエレメントデータが書き込まれる。この動作は、移
送したエレメントデータ数が32に達したときに、すな
わちベクトル長指定に等しくなったときに終了する。
ジスタ111 と同様にエレメントデータを順次書き込
むために+1力ウント機能を有し、ロケーションOの次
はロケーションl、その次はロケーション2とカウント
される。カウントされたロケーションにベクトル長指定
分だけエレメントデータ入力選択回路200から出力さ
れるエレメントデータが書き込まれる。この動作は、移
送したエレメントデータ数が32に達したときに、すな
わちベクトル長指定に等しくなったときに終了する。
効率良くベクトル命令を実行していく上で、ベクトルレ
ジスタ数が不足するような場合には、ベクトルレジスタ
内のエレメントデータを一時ベクトルバッファレジスタ
に退避させておく必要が生じる。この場合、演算器から
出力された演算結果あるいは主メモリから出力されたロ
ードデータを保持している移送元のベクトルレジスタを
ベクトルレジスタ101 とし、そのベクトルレジスタ
101に格納されているエレメントデータを移送する移
送先ベクトルバッファレジスタをベクトルバッファレジ
スタ102とする場合、後続する命令によって移送元ベ
クトルレジスタ101の番号と移送先ベクトルバッファ
レジスタ102の番号が指定される。
ジスタ数が不足するような場合には、ベクトルレジスタ
内のエレメントデータを一時ベクトルバッファレジスタ
に退避させておく必要が生じる。この場合、演算器から
出力された演算結果あるいは主メモリから出力されたロ
ードデータを保持している移送元のベクトルレジスタを
ベクトルレジスタ101 とし、そのベクトルレジスタ
101に格納されているエレメントデータを移送する移
送先ベクトルバッファレジスタをベクトルバッファレジ
スタ102とする場合、後続する命令によって移送元ベ
クトルレジスタ101の番号と移送先ベクトルバッファ
レジスタ102の番号が指定される。
直前に実行開始され、いまだ終了していないベクトル演
算のためのベクトルレジスタ101のエレメントデータ
読出し動作にかかわらず、移送元ベクトルレジスタ10
1への読出し開始アドレスは、命令あるいは命令付随情
報として第2読出しアドレス選択回路151に入力され
る。また、移送先ベクトルバッフルレジスタ102の書
込み開始アドレスも同様、命令あるいは命令付随情報と
して読出し/書込みアドレス選択回路142に入力され
る。なお、これらの開始アドレスの設定経路は図示され
ていない。
算のためのベクトルレジスタ101のエレメントデータ
読出し動作にかかわらず、移送元ベクトルレジスタ10
1への読出し開始アドレスは、命令あるいは命令付随情
報として第2読出しアドレス選択回路151に入力され
る。また、移送先ベクトルバッフルレジスタ102の書
込み開始アドレスも同様、命令あるいは命令付随情報と
して読出し/書込みアドレス選択回路142に入力され
る。なお、これらの開始アドレスの設定経路は図示され
ていない。
ベクトルレジスタ101からベクトルバッファレジスタ
102に32個のエレメントデータを移送する場合には
、命令によって移送元へクトルレジスク番号をベクトル
レジスタ101、移送先ベクトルバッファレジスタ番号
をベクトルバッファレジスタ102とそれぞれ指定し、
ベクトルレジスタ101の読出し開始アドレスを32と
指定する。命令によって指定された読出し開始アドレス
は第2読出しアドレス選択回路151に入力され、選択
されて第2読出しアドレスレジスタ121に値32が格
納される。
102に32個のエレメントデータを移送する場合には
、命令によって移送元へクトルレジスク番号をベクトル
レジスタ101、移送先ベクトルバッファレジスタ番号
をベクトルバッファレジスタ102とそれぞれ指定し、
ベクトルレジスタ101の読出し開始アドレスを32と
指定する。命令によって指定された読出し開始アドレス
は第2読出しアドレス選択回路151に入力され、選択
されて第2読出しアドレスレジスタ121に値32が格
納される。
同時に読出し/書込みアドレス選択回路142にOが入
力され、選択されて読出し/書込みアドレスレジスタ1
12に0が初期設定される。ベクトルレジスタ101は
第2読出しアドレスレジスタ121で指定されるロケー
ションのエレメントデータを第2読出しデータ181と
して読み出し、エレメントデータ入力選択回路200に
出力する。第2読出しアドレスレジスタ121 も第1
読出しアドレスレジスタ111 と同様にエレメントデ
ータを順次読み出すために+1力ウント機能を有し、ロ
ケーション32の次はロケーション33、その次はロケ
ーション34とカウントされ、ベクトル長指定分だけベ
クトルレジスタ101内に保持されているエレメントデ
ータが読み出され、エレメントデータ入力選択回路20
0に出力される。エレメントデータ入力選択回路200
は、ベクトルレジスタ101から読み出されたエレメン
トデータをベクトルバッファレジスタ102に入力する
ように選択指示する。
力され、選択されて読出し/書込みアドレスレジスタ1
12に0が初期設定される。ベクトルレジスタ101は
第2読出しアドレスレジスタ121で指定されるロケー
ションのエレメントデータを第2読出しデータ181と
して読み出し、エレメントデータ入力選択回路200に
出力する。第2読出しアドレスレジスタ121 も第1
読出しアドレスレジスタ111 と同様にエレメントデ
ータを順次読み出すために+1力ウント機能を有し、ロ
ケーション32の次はロケーション33、その次はロケ
ーション34とカウントされ、ベクトル長指定分だけベ
クトルレジスタ101内に保持されているエレメントデ
ータが読み出され、エレメントデータ入力選択回路20
0に出力される。エレメントデータ入力選択回路200
は、ベクトルレジスタ101から読み出されたエレメン
トデータをベクトルバッファレジスタ102に入力する
ように選択指示する。
一方、ベクトルバッファレジスタ102は読出し/書込
みアドレスレジスタ112で指定されるロケーションに
、エレメントデータ入力選択回路200から第1番目の
エレメントデータが出力される時点でエレメントデータ
の書込みを開始する。読出し/書込みアドレスレジスタ
112も第2読出しアドレスレジスタ121と同様にエ
レメントデータを順次書き込むために+1カウン)11
能を有し、ロケーション0の次はロケーション1、その
次はロケーション2とカウントされ、ベクトル長指定分
だけエレメントデータ入力選択回路200から出力され
るエレメントデータが書き込まれる。この動作は移送し
たエレメントデータ数が32に達したとき、すなわちベ
クトル長指定に等しくなったときに終了する。したがっ
て、先行するベクトル演算命令によるベクトルレジスタ
101のエレメントデータ読出し動作と後続の移送命令
によるベクトルレジスタ101のエレメントデータ読出
し動作とは、同時に実行できることになる。
みアドレスレジスタ112で指定されるロケーションに
、エレメントデータ入力選択回路200から第1番目の
エレメントデータが出力される時点でエレメントデータ
の書込みを開始する。読出し/書込みアドレスレジスタ
112も第2読出しアドレスレジスタ121と同様にエ
レメントデータを順次書き込むために+1カウン)11
能を有し、ロケーション0の次はロケーション1、その
次はロケーション2とカウントされ、ベクトル長指定分
だけエレメントデータ入力選択回路200から出力され
るエレメントデータが書き込まれる。この動作は移送し
たエレメントデータ数が32に達したとき、すなわちベ
クトル長指定に等しくなったときに終了する。したがっ
て、先行するベクトル演算命令によるベクトルレジスタ
101のエレメントデータ読出し動作と後続の移送命令
によるベクトルレジスタ101のエレメントデータ読出
し動作とは、同時に実行できることになる。
本実施例では、ベクトルレジスタ数を2、ベクトルバッ
ファレジスタ数を1としたが、本発明はベクトルレジス
タ数が2またはベクトルバッファレジスタ数が1に限定
されるものではなく、また、スカラデータとベクトルエ
レメントデータのベクトル演算としたが、これに限定さ
れるものでなく、ベクトルエレメントデータとベクトル
エレメントデータとのベクトル演算等を命令によって任
意に指定できる。
ファレジスタ数を1としたが、本発明はベクトルレジス
タ数が2またはベクトルバッファレジスタ数が1に限定
されるものではなく、また、スカラデータとベクトルエ
レメントデータのベクトル演算としたが、これに限定さ
れるものでなく、ベクトルエレメントデータとベクトル
エレメントデータとのベクトル演算等を命令によって任
意に指定できる。
以上説明したように本発明には、ベクトルレジスタ当り
2個の読出しアドレス設定手段とベクトルレジスタ間の
エレメントデータ移送手段とを設けることにより、ベク
トルレジスタ間のエレメントデータ移送を高速に実現で
きるという効果がある。
2個の読出しアドレス設定手段とベクトルレジスタ間の
エレメントデータ移送手段とを設けることにより、ベク
トルレジスタ間のエレメントデータ移送を高速に実現で
きるという効果がある。
第1図は本発明の一実施例を示すブロック図、第2図は
従来のベクトルデータ処理装置の一例を示すブロック図
である。 図において、 100、101 ・・ベクトルレジスタ、102
・・・・ベクトルバッファレジスタ、112 ・・・
・読出し/書込みアドレスレジスタ、200 ・・・
・エレメントデータ入力選択回路、110、111
・・第1読出しアドレスレジスタ、120、121
・・第2読出しアドレスレジスタ、130、131
・・書込みアドレスレジスタ、140、141 ・・
第1読出しアドレス選択回路、150、151 ・・
第2読出しアドレス選択回路、160、161 ・・
書込みアドレス選択回路、142 ・・・・読出し/
書込みアドレス選択回路、170、171 ・・第1
読出しデータ、180、181 ・・第2読出しデー
タである。
従来のベクトルデータ処理装置の一例を示すブロック図
である。 図において、 100、101 ・・ベクトルレジスタ、102
・・・・ベクトルバッファレジスタ、112 ・・・
・読出し/書込みアドレスレジスタ、200 ・・・
・エレメントデータ入力選択回路、110、111
・・第1読出しアドレスレジスタ、120、121
・・第2読出しアドレスレジスタ、130、131
・・書込みアドレスレジスタ、140、141 ・・
第1読出しアドレス選択回路、150、151 ・・
第2読出しアドレス選択回路、160、161 ・・
書込みアドレス選択回路、142 ・・・・読出し/
書込みアドレス選択回路、170、171 ・・第1
読出しデータ、180、181 ・・第2読出しデー
タである。
Claims (1)
- 【特許請求の範囲】 順序付けられたエレメントデータを保持する複数個の第
1のベクトルレジスタと、 順序付けられたエレメントデータを保持する複数個の第
2のベクトルレジスタと、 ベクトル命令によって前記第1のベクトルレジスタから
前記第2のベクトルレジスタにエレメントデータを移送
する移送手段と、 ベクトル命令によって演算を行う際に前記第1のベクト
ルレジスタの読出しアドレスを設定する第1の読出しア
ドレス設定手段と、 ベクトル命令によって前記移送手段によりエレメントデ
ータを移送する際に前記第1のベクトルレジスタの読出
しアドレスを設定する第2の読出しアドレス設定手段と
、 を有することを特徴とするベクトルデータ処理装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP7601186A JPS62232073A (ja) | 1986-04-01 | 1986-04-01 | ベクトルデ−タ処理装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP7601186A JPS62232073A (ja) | 1986-04-01 | 1986-04-01 | ベクトルデ−タ処理装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPS62232073A true JPS62232073A (ja) | 1987-10-12 |
Family
ID=13592874
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP7601186A Pending JPS62232073A (ja) | 1986-04-01 | 1986-04-01 | ベクトルデ−タ処理装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS62232073A (ja) |
-
1986
- 1986-04-01 JP JP7601186A patent/JPS62232073A/ja active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5019969A (en) | Computer system for directly transferring vactor elements from register to register using a single instruction | |
| JPH0496172A (ja) | データ格納方法,ベクトルデータバッファ装置およびベクトルデータ処理装置 | |
| JPS62232074A (ja) | ベクトルデ−タ処理装置 | |
| JPH0255821B2 (ja) | ||
| JPS6116364A (ja) | ベクトルデ−タ処理装置 | |
| EP0715252B1 (en) | A bit field peripheral | |
| JPH1091593A (ja) | マイクロプロセッサと付加的計算ユニットとを含むデータ処理装置 | |
| JPH0255822B2 (ja) | ||
| JPS6116365A (ja) | ベクトルデ−タ処理装置 | |
| JPH07325805A (ja) | ベクトル処理装置 | |
| JPS62182857A (ja) | 入出力制御装置 | |
| JP3704367B2 (ja) | スイッチ回路 | |
| JPH10334038A (ja) | データ転送装置 | |
| JP2001084171A (ja) | 画像処理装置 | |
| JPH02190968A (ja) | ベクトル処理装置 | |
| JP2881023B2 (ja) | 命令バッファ構成方式 | |
| JP2518912B2 (ja) | 並列デ―タ処理装置 | |
| JP3039043B2 (ja) | 並列プロセッサ | |
| JP2553630B2 (ja) | データ処理装置 | |
| JPH04289935A (ja) | コンピュータ装置 | |
| JPH05165875A (ja) | ベクトル演算処理装置 | |
| JPS62281058A (ja) | ベクトルデ−タ処理装置 | |
| JPS59189407A (ja) | シ−ケンス制御装置 | |
| JPS6356722A (ja) | デ−タの書込み方式 | |
| JPH08297583A (ja) | 割り込み処理装置およびその方法 |