JP2001167084A - ベクトル演算処理装置及びベクトルデータ移送方法 - Google Patents

ベクトル演算処理装置及びベクトルデータ移送方法

Info

Publication number
JP2001167084A
JP2001167084A JP34888299A JP34888299A JP2001167084A JP 2001167084 A JP2001167084 A JP 2001167084A JP 34888299 A JP34888299 A JP 34888299A JP 34888299 A JP34888299 A JP 34888299A JP 2001167084 A JP2001167084 A JP 2001167084A
Authority
JP
Japan
Prior art keywords
vector
data
vector data
register
supplied
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
JP34888299A
Other languages
English (en)
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 JP34888299A priority Critical patent/JP2001167084A/ja
Publication of JP2001167084A publication Critical patent/JP2001167084A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)
  • Executing Machine-Instructions (AREA)
  • Complex Calculations (AREA)

Abstract

(57)【要約】 【課題】 ベクトルデータの移送処理の高速化を図った
ベクトル演算処理装置を提供する。 【解決手段】 ベクトルレジスタのバンク毎にベクトル
データがインタリーブで格納される、演算を並行処理す
る複数のベクトルパイプライン処理部を有するベクトル
演算処理装置であって、移送元のベクトルレジスタから
供給されたベクトルデータを一時的に保持する複数のバ
ッファと、移送開始要素番号に基づいて、バッファに保
持されたベクトルデータまたはベクトルレジスタから供
給されたベクトルデータのいずれか一方を選択するため
の選択信号を出力するデータ選択制御部と、選択信号に
したがって上記ベクトルデータのいずれか一方を出力す
る複数のセレクタと、セレクタから出力されたベクトル
データを移送先のベクトルレジスタへ送出するクロスバ
とを有するベクトルパイプ間データ処理部を設ける。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、高速に演算処理を
行うベクトル演算処理装置に関し、特にベクトルデータ
の移送処理の高速化を図ったベクトル演算処理装置に関
する。
【0002】
【従来の技術】科学技術計算の分野における大規模な数
値演算需要に応える計算機としてベクトル演算処理装置
が知られている。
【0003】ベクトル演算処理装置は、複雑な処理をよ
り簡単な一連の処理要素系列(パイプ)に展開し、異な
ったデータに対して予め決められた処理を一定の時間内
に各処理要素毎に並行して流れ作業的に行う装置であ
る。
【0004】このような処理方法はパイプライン処理と
も呼ばれ、一般に、各処理要素(以下、ベクトルパイプ
ライン処理部と称す)は、乗算、除算、加減算や論理演
算等を行う演算器と処理中のデータである中間データを
格納しておくための複数のベクトルレジスタとから構成
される。なお、ベクトルデータは、同一ベクトルパイプ
ライン処理部内の他のベクトルレジスタ、あるいは他の
ベクトルパイプライン処理部内のベクトルレジスタに必
要に応じて移送される。したがって、ベクトル演算処理
装置内には、ベクトルパイプライン処理部間でベクトル
データを移送するためのベクトルパイプ間データ処理部
と、ベクトルパイプ間データ処理部やベクトルパイプラ
イン処理部に対してベクトルデータの移送命令等を発行
する命令発行部とを備えている。
【0005】従来のベクトル演算処理装置では、演算器
またはベクトルパイプ間データ処理部に、1マシンサイ
クルあたり1つのベクトルデータがベクトルレジスタか
らそれぞれ供給されていた。
【0006】
【発明が解決しようとする課題】近年のベクトル演算処
理装置では、さらなる高速化に対応するために演算器の
演算サイクルがマシンサイクルの複数倍になってきてい
る。そのため、演算器に対して1マシンサイクルあたり
複数個のベクトルデータを供給する必要がある。このよ
うな要求に応えるため、ベクトル演算処理装置では、ベ
クトルレジスタに複数個のバンクを持たせ、1マシンサ
イクル毎に各バンクから演算器にベクトルデータをそれ
ぞれ供給するようにしている。なお、パイプライン処理
を効率よく行うためには、パイプがいつも詰まっている
状態、すなわち次に処理するベクトルデータが常にベク
トルレジスタに格納されていることが重要である。した
がって、各ベクトルレジスタにはインタリーブでベクト
ルデータが格納される。上述したベクトルレジスタに複
数のバンクを有する構成の場合、ベクトルデータはバン
ク単位にインタリーブで格納される。
【0007】ところで、上述したように、ベクトルレジ
スタ内のベクトルデータは演算器だけでなくベクトルパ
イプ間データ処理部にも供給される。ベクトルレジスタ
に複数のバンクを有する構成の場合、任意のバンクから
順に所定数のベクトルデータを移送しようとすると、異
なったアドレスのバンク内に格納されたベクトルデータ
も同時に読み出し/書込みできるようにすることが望ま
しい。
【0008】しかしながら従来のベクトル演算処理装置
では、同一アドレスのバンクからしか同時に読み出し/
書込みができないため、対応するベクトルデータを主記
憶装置に一旦書き込み、移送を開始するベクトルデータ
から再び読み出す処理を行っていたため、処理に時間が
かかってしまうという問題があった。
【0009】本発明は上記したような従来の技術が有す
る問題点を解決するためになされたものであり、ベクト
ルデータの移送を主記憶装置を用いることなく行うこと
ができるようにすることで、移送処理の高速化を図った
ベクトル演算処理装置を提供することを目的とする。
【0010】
【課題を解決するための手段】上記目的を達成するため
本発明のベクトル演算処理装置は、複数のバンクからな
るベクトルレジスタを備え、ベクトルデータが前記バン
ク毎にインタリーブに割り当てられて格納される、ベク
トル演算を並行して処理する複数のベクトルパイプライ
ン処理部と、前記ベクトルパイプライン処理部間でベク
トルデータを移送するためのベクトルパイプ間データ処
理部と、を有するベクトル演算処理装置であって、前記
ベクトルパイプ間データ処理部は、移送元のベクトルレ
ジスタから供給されたベクトルデータを一時的に保持す
る複数のバッファと、移送を開始するベクトルデータの
要素番号である移送開始要素番号に基づいて、前記バッ
ファに保持されたベクトルデータ、または前記ベクトル
レジスタから供給されたベクトルデータのいずれか一方
を選択するためのデータ選択信号を出力するデータ選択
制御部と、前記データ選択信号にしたがって、前記バッ
ファに保持されたベクトルデータ、または前記ベクトル
レジスタから供給されたベクトルデータのいずれか一方
を出力する複数のセレクタと、該セレクタから出力され
たベクトルデータを移送先のベクトルレジスタへ送出す
るクロスバと、を有する構成である。
【0011】このとき、前記データ選択制御部は、移送
対象のベクトルデータに対応して発行される、該ベクト
ルデータが有効か無効かを示すデータ有効信号に基づい
て、有効を示すデータ有効信号を受け取っている間は、
前記バッファに保持されたベクトルデータを前記セレク
タに選択させ、無効を示すデータ有効信号を受け取った
後は、前記ベクトルレジスタから供給されたベクトルデ
ータを前記セレクタに選択させるためのデータ選択信号
を出力してもよく、前記ベクトルパイプライン処理部
は、1マシンサイクルの複数倍のサイクルで演算処理を
行う複数の演算器を有していてもよい。
【0012】一方、本発明のデータ移送方法は、複数の
バンクからなるベクトルレジスタを備え、ベクトルデー
タが前記バンク毎にインタリーブに割り当てられて格納
される、ベクトル演算を並行して処理する複数のベクト
ルパイプライン処理部を有するベクトル演算処理装置
の、前記ベクトルパイプライン処理部間でベクトルデー
タを移送するためのベクトルデータ移送方法であって、
移送元のベクトルレジスタから供給されたベクトルデー
タを複数のバッファに一時的に保持し、移送を開始する
ベクトルデータの要素番号である移送開始要素番号に基
づいて、前記バッファに保持されたベクトルデータ、ま
たは前記ベクトルレジスタから供給されたベクトルデー
タのいずれか一方を選択するためのデータ選択信号を出
力し、前記データ選択信号にしたがって、前記バッファ
に保持されたベクトルデータ、または前記ベクトルレジ
スタから供給されたベクトルデータのいずれか一方を移
送先のベクトルレジスタへ送出する方法である。
【0013】このとき、移送対象のベクトルデータに対
応して発行される、該ベクトルデータが有効か無効かを
示すデータ有効信号に基づいて、有効を示すデータ有効
信号を受け取っている間は、前記バッファに保持された
ベクトルデータを選択し、無効を示すデータ有効信号を
受け取った後は、前記ベクトルレジスタから供給された
ベクトルデータを選択して、移送先のベクトルレジスタ
へ送出してもよく、前記ベクトル演算処理装置に、1マ
シンサイクルの複数倍のサイクルで演算処理を行う複数
の演算器を有していてもよい。
【0014】上記のように構成されたベクトル演算処理
装置では、ベクトルパイプ間データ処理部に、移送元の
ベクトルレジスタから供給されたベクトルデータを一時
的に保持する複数のバッファと、移送開始要素番号に基
づいて、バッファに保持されたベクトルデータ、または
ベクトルレジスタから供給されたベクトルデータのいず
れか一方を選択するためのデータ選択信号を出力するデ
ータ選択制御部と、データ選択信号にしたがって、バッ
ファに保持されたベクトルデータ、またはベクトルレジ
スタから供給されたベクトルデータのいずれか一方を出
力する複数のセレクタと、該セレクタから出力されたベ
クトルデータを移送先のベクトルレジスタへ送出するク
ロスバとを有することで、任意の要素番号のベクトルデ
ータから移送を開始する場合に、ベクトルデータがバン
ク毎にインタリーブで格納されていても、従来のように
主記憶装置を用いることなく、ベクトルデータの移送処
理を行うことができる。
【0015】
【発明の実施の形態】次に本発明について図面を参照し
て説明する。
【0016】図1は本発明のベクトル演算処理装置の一
構成例を示すブロック図である。なお、図1では2つの
ベクトルパイプライン処理部を有する構成を示している
が、ベクトルパイプライン処理部の数は2つに限るもの
ではなく3つ以上であってもよい。
【0017】図1において、本発明のベクトル演算処理
装置は、主記憶装置1と、ベクトル演算処理を行うベク
トル処理部10とを有する構成である。
【0018】ベクトル処理部10は、ベクトル演算を並
行して処理する複数のベクトルパイプライン処理部10
0(1001、1002)と、ベクトルパイプライン処理
部100間でベクトルデータを移送するためのベクトル
パイプ間データ処理部200とを有している。
【0019】ベクトルパイプライン処理部1001は、
ベクトルデータが格納される複数のベクトルレジスタ1
20(12011〜1201n)と、複数の演算器130
(13011、13012)と、ベクトルレジスタ120か
ら出力されたベクトルデータ、または演算器130の演
算結果を同一パイプ内の他のベクトルレジスタに移送す
るためのクロスバ110(1101)とを有し、ベクト
ルレジスタ120は、例えば、複数のバンクを有する1
つのRAM(Random Access Memory)によってそれぞれ
構成されている。
【0020】同様に、ベクトルパイプライン処理部10
2は、ベクトルデータが格納される複数のベクトルレ
ジスタ120(12021〜1202n)と、演算器130
(13021、13022)と、ベクトルレジスタ120か
ら出力されたベクトルデータ、または演算器130の演
算結果を同一パイプ内の他のベクトルレジスタに移送す
るためのクロスバ110(1102)とを有している。
【0021】なお、図1では、ベクトルパイプライン処
理部100に、それぞれ2つの演算器130を有する構
成を示しているが、演算器130の数は2つに限るもの
ではなく3つ以上であってもよい。
【0022】ベクトルパイプ間データ処理部200は、
ベクトルパイプライン処理部100から供給されたベク
トルデータをバンク単位に一時的に保持するバッファ2
10(21011、21012、21021、21022)と、
ベクトルパイプライン処理部100から供給されたベク
トルデータ、またはバッファ210に保持されたベクト
ルデータのいずれか一方を選択して出力するセレクタ2
20(22011、22012、22021、22022)と、
セレクタ220の動作をそれぞれ制御するためのデータ
選択制御部240と、セレクタ220からの出力データ
を指定されたベクトルパイプライン処理部100に送出
するためのクロスバ230とを有している。なお、バッ
ファ210及びセレクタ220は、ベクトルレジスタ1
20が有するバンク数に対応して各ベクトルパイプライ
ン処理部100毎にそれぞれ2つずつ設けられている。
また、ベクトル処理部10には、ベクトルパイプ間デー
タ処理部200やベクトルパイプライン処理部100に
対してベクトルデータの移送命令等を発行する不図示の
命令発行部を有している。
【0023】このような構成において、ベクトルパイプ
ライン処理部100が有する演算器130は、それぞれ
マシンサイクルの複数倍のサイクルで演算処理を行う。
ベクトルレジスタ120からは1マシンサイクルあたり
複数個のベクトルデータが演算器130またはベクトル
パイプ間データ処理部200にそれぞれ送出される。
【0024】また、ベクトルレジスタ120には、それ
ぞれバンク単位にベクトルデータがインターリーブに割
り当てられて格納される。
【0025】データ選択制御部240は、不図示の命令
発行部から出力される命令の種類、移送開始要素番号
(移送を開始するベクトルデータの要素番号)等から、
ベクトルパイプライン処理部100から出力されるベク
トルデータ、またはバッファ210に保持されたベクト
ルデータのいずれか一方を選択するためのデータ選択信
号を各セレクタ220にそれぞれ出力する。
【0026】なお、ベクトルデータ数をVL、移送開始
要素番号をmとし、移送元のベクトルデータ列をVy、
移送先のベクトルデータ列をVXとしたとき、以下で
は、ベクトルデータの移送命令を、VX(0、1、2、
…、VL−1)←Vy(m、m+1、…、VL−1、
0、1、…、m−1)で表すことにする。
【0027】次に、図1に示したベクトル演算処理装置
の動作について、図2を用いて具体的に説明する。
【0028】図2は図1に示したベクトルパイプライン
処理部及びベクトルパイプ間データ処理部の動作を説明
するための模式図である。なお、図2では、ベクトル処
理部10が4つのベクトルパイプライン処理部1001
〜1004を有し、ベクトルレジスタが2つのバンク
(第1のバンク、第2のバンク)でそれぞれ構成されて
いる例を示している。また、図2では、各ベクトルパイ
プライン処理部100が有する複数のベクトルレジスタ
のうち、それぞれ1つのベクトルレジスタのみが記載さ
れている。さらに、ベクトルデータが移送元のベクトル
レジスタから直接ベクトルパイプ間データ処理部200
のバッファ210に供給されるように記載されている
が、ベクトルデータはベクトルレジスタ120からベク
トルパイプライン処理部100が有するクロスバ110
を介して移送先のベクトルパイプ間データ処理部200
へ供給される。
【0029】ベクトルパイプライン処理部1001が有
するベクトルレジスタ12011の第1のバンクからは、
ベクトルパイプ間データ処理部200が有するバッファ
21011及びセレクタ22011にベクトルデータがそれ
ぞれ供給され、第2のバンクからはデータバッファ21
12及びセレクタ22012にベクトルデータがそれぞれ
供給される。
【0030】同様に、ベクトルパイプライン処理部10
2、1003、1004が有するベクトルレジスタ12
21、12031、12041の第1のバンクからは、ベク
トルパイプ間データ処理部200が有するバッファ21
21、21031、21041及びセレクタ22021、22
31、22041にベクトルデータがそれぞれ供給され、
第2のバンクからはデータバッファ21022、21
32、21042及びセレクタ22022、22032、22
42にベクトルデータがそれぞれ供給される。
【0031】バッファ21011は、ベクトルパイプライ
ン処理部1001から供給されたベクトルデータを保持
し、セレクタ22011へ出力する。同様に、バッファ2
10 12、21021、21022、21031、21032、2
1041、21042も、セレクタ22012、22021、2
2022、22031、22032、22041、22042にそ
れぞれベクトルデータを出力する。
【0032】データ選択制御部240は、発行された命
令の種類、移送開始要素番号等から、ベクトルパイプラ
イン処理部120から出力されたベクトルデータとバッ
ファ210に保持されたベクトルデータのいずれか一方
を選択するためのデータ選択信号を各セレクタ220に
それぞれ出力する。
【0033】セレクタ22011は、データ選択制御部2
40からのデータ選択信号にしたがってベクトルパイプ
ライン処理部1001から供給されたベクトルデータ、
またはバッファ21011に保持されたベクトルデータの
いずれか一方を選択してクロスバ230に送出する。同
様に、セレクタ22012、22021、22022、220
31、22032、22041、22042も、対応するベクト
ルレジスタ120から出力されたベクトルデータまたは
バッファ210に保持されたベクトルデータのいずれか
一方を選択してクロスバ230に送出する。
【0034】クロスバ230は、各セレクタ220から
供給されたベクトルデータを、命令の種類や移送開始要
素番号等から得られる指示にしたがって所定のベクトル
パイプライン処理部100に送出する。
【0035】次に、ベクトルデータ数を32、移送開始
要素番号を「10」としたとき、VX(0、1、2、
…、31)←Vy(10、11、…、31、0、1、
…、9)で表されるベクトルデータ移送命令を実行する
場合を例にして、図2及び図3を用いてベクトル演算処
理装置の動作について説明する。
【0036】図3は、図1に示したベクトル演算処理装
置の移送処理手順を示す図であり、ベクトルデータの流
れを示すタイミングチャートである。
【0037】図2に示すように、移送開始要素番号「1
0」が格納されているベクトルレジスタ120のアドレ
スは「1」であるため、ベクトルパイプライン処理部1
00 1〜1004のベクトルレジスタ12011、12
21、12031、12041のアドレス「1」からそれぞ
れ読み出されたベクトルデータは、各バッファ210及
びセレクタ220にそれぞれ供給される。なお、アドレ
ス「7」までのベクトルデータがベクトルレジスタ12
0から読み出されたら、引き続き、アドレス「0」のベ
クトルデータがベクトルレジスタ120から読み出され
る。
【0038】このとき、ベクトルレジスタ120から読
み出されるベクトルデータの要素番号をマシンサイクル
毎に示すと以下のようになる。
【0039】 1サイクル目:要素08,09,10,11,12,1
3,14,15 2サイクル目:要素16,17,18,19,20,2
1,22,23 3サイクル目:要素24,25,26,27,28,2
9,30,31 4サイクル目:要素32,33,34,35,36,3
7,38,39 5サイクル目:要素40,41,42,43,44,4
5,46,47 6サイクル目:要素48,49,50,51,52,5
3,54,55 7サイクル目:要素56,57,58,59,60,6
1,62,63 8サイクル目:要素00,01,02,03,04,0
5,06,07 9サイクル目:要素08,09,10,11,12,1
3,14,15 図2に示すように、ベクトルデータを格納する順番にベ
クトルレジスタ120が有するバンク番号を、バンク
「0」、バンク「1」、…バンク「7」としたとき、デ
ータ選択制御部240は、(移送開始要素番号)mod
(ベクトルパイプライン処理部の数×ベクトルレジスタ
毎のバンク数)の式から読み出し開始バンク番号を求め
る。ここでは、10/(4×2)=1、余り2であるた
め、読み出し開始バンク番号は「2」となる。
【0040】データ選択制御部240は、バンク「0」
から「読み出し開始バンク番号−1」に対応するセレク
タ220に対してバッファ210に保持されたベクトル
データを選択するようにデータ選択信号を送出し、「読
み出し開始バンク番号」以降のバンクに対応するセレク
タ220に対してベクトルレジスタから供給されたベク
トルデータを選択するようにデータ選択信号を送出す
る。
【0041】すなわち、移送開始要素番号を「10」と
すると、読み出し開始バンク番号は「2」であるため、
バンク「0」、バンク「1」に対応するセレクタではバ
ッファ210に保持されたベクトルデータが選択され、
バンク「2」〜バンク「7」に対応するセレクタではベ
クトルレジスタ120から供給されたベクトルデータが
選択されてクロスバ230に送出される。このとき、各
セレクタ220によって選択されるベクトルデータの要
素番号をマシンサイクル毎に示すと以下のようになる。
【0042】 1サイクル目:要素16,17,10,11,12,1
3,14,15 2サイクル目:要素24,25,18,19,20,2
1,22,23 3サイクル目:要素32,33,26,27,28,2
9,30,31 4サイクル目:要素40,41,34,35,36,3
7,38,39 5サイクル目:要素48,49,42,43,44,4
5,46,47 6サイクル目:要素56,57,50,51,52,5
3,54,55 7サイクル目:要素00,01,58,59,60,6
1,62,63 8サイクル目:要素08,09,02,03,04,0
5,06,07 クロスバ240は、各セレクタ220から供給されたベ
クトルデータを指定されたベクトルパイプライン処理部
100へ移送する。
【0043】図3は、以上説明した動作のタイミングチ
ャートを示した図であり、マシンサイクル毎に、ベクト
ルレジスタからのベクトルデータ読み出しタイミング、
バッファへのベクトルデータ保持タイミング、及びクロ
スバへのベクトルデータ供給タイミングをそれぞれ示し
ている。
【0044】ところで、従来のベクトル演算処理装置で
は、上述したように、ベクトルレジスタ120からアド
レス単位でしかベクトルデータの読み出し/書き込みが
できない。例えば、図2に示した構成でベクトルデータ
の移送を行う場合、移送開始要素番号を「10」とする
と、上記したように、最初に要素「10」〜「17」の
ベクトルデータを各ベクトルレジスタ120から読み出
す必要がある。ここで、要素「16」、「17」のベク
トルデータは、要素「10」〜「15」のベクトルデー
タと異なるアドレスのバンクに格納されているため、そ
れらを同時に読み出すことができない。
【0045】したがって、従来のベクトル演算装置で
は、主記憶装置1にそれら全てのベクトルデータを一旦
書込み、その後、要素「10」のベクトルデータから順
に読み出して移送先のベクトルパイプライン処理部10
0のベクトルレジスタ120に格納する必要があった。
【0046】本発明では、ベクトルパイプ間データ処理
部200に、バッファ210、セレクタ220、及びデ
ータ選択制御部240を設けることで、上述したよう
に、主記憶装置1を用いることなくベクトル処理部10
内でベクトルデータの移送処理を行うことが可能になる
ため、ベクトルデータの移送処理を高速に実行すること
ができる。
【0047】なお、ベクトルデータが有効か無効かを示
すデータ有効信号が、ベクトルレジスタからのベクトル
データの出力と共に不図示の命令発行部からデータ選択
制御部240に送出された場合、データ選択制御部24
0は、セレクタ220に供給するデータ選択信号をデー
タ有効信号から生成することができる。このときのベク
トル処理部10の処理手順の例を図4に示す。
【0048】図1に示したベクトル演算処理装置の他の
移送処理手順を示す図であり、ベクトルデータの流れを
示すタイミングチャートである。
【0049】データ選択制御部240は、不図示の命令
発行部からベクトル移送命令が発行されると、図4に示
すように、各セレクタ220に送出するデータ選択信号
をそれぞれ一旦「0」にリセットする。続いて、各要素
毎に、受け取ったデータ有効信号が「0」(無効)の時
はデータ選択信号を反転させ、「1」(有効)の時はデ
ータ選択信号の値をそのまま保持する。
【0050】セレクタ220は、データ選択信号が
「0」の時にバッファ220に保持されたベクトルデー
タを選択し、「1」の時にベクトルレジスタ120から
出力されたベクトルデータを選択する。
【0051】すなわち、「1」(有効)のデータ有効信
号を受け取っている間は、バッファ220に保持された
ベクトルデータが選択され、「0」(無効)のデータ有
効信号を受け取った後は、ベクトルレジスタ120から
出力されたベクトルデータが選択される。
【0052】このようにして選択されたベクトルデータ
をクロスバ230を介して所定のベクトルパイプライン
処理部100に送出すれば、ベクトル処理部10内でベ
クトルデータの移送処理を行うことができるため、ベク
トルデータの移送命令を高速に処理することができる。
【0053】
【発明の効果】本発明は以上説明したように構成されて
いるので、以下に記載する効果を奏する。
【0054】ベクトルパイプ間データ処理部に、移送元
のベクトルレジスタから供給されたベクトルデータを一
時的に保持する複数のバッファと、移送開始要素番号に
基づいて、バッファに保持されたベクトルデータ、また
はベクトルレジスタから供給されたベクトルデータのい
ずれか一方を選択するためのデータ選択信号を出力する
データ選択制御部と、データ選択信号にしたがって、バ
ッファに保持されたベクトルデータ、またはベクトルレ
ジスタから供給されたベクトルデータのいずれか一方を
出力する複数のセレクタと、該セレクタから出力された
ベクトルデータを移送先のベクトルレジスタへ送出する
クロスバとを有することで、任意の要素番号のベクトル
データから移送を開始する場合に、ベクトルデータがバ
ンク毎にインタリーブで格納されていても、従来のよう
に主記憶装置を用いることなく、ベクトルデータの移送
処理を行うことが可能になるため、ベクトルデータの移
送処理を高速に実行することができる。
【図面の簡単な説明】
【図1】本発明のベクトル演算処理装置の一構成例を示
すブロック図である。
【図2】図1に示したベクトルパイプライン処理部及び
ベクトルパイプ間データ処理部の動作を説明するための
模式図である。
【図3】図1に示したベクトル演算処理装置の移送処理
手順を示す図であり、ベクトルデータの流れを示すタイ
ミングチャートである。
【図4】図1に示したベクトル演算処理装置の他の移送
処理手順を示す図であり、ベクトルデータの流れを示す
タイミングチャートである。
【符号の説明】
1 主記憶装置 10 ベクトル処理部 1001〜1004 ベクトルパイプライン処理部 1101、1102、230 クロスバ 12011〜1201n、12021〜1202n、12031
12041 ベクトルレジスタ 13011、13012、13021、13022 演算器 200 ベクトルパイプ間データ処理部 21011、21012、21021、21022、21031
21032、21041、21042 バッファ 22011、22012、22021、22022、22031
22032、22041、22042 セレクタ 240 データ選択制御部

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 複数のバンクからなるベクトルレジスタ
    を備え、ベクトルデータが前記バンク毎にインタリーブ
    に割り当てられて格納される、ベクトル演算を並行して
    処理する複数のベクトルパイプライン処理部と、 前記ベクトルパイプライン処理部間でベクトルデータを
    移送するためのベクトルパイプ間データ処理部と、を有
    するベクトル演算処理装置であって、 前記ベクトルパイプ間データ処理部は、 移送元のベクトルレジスタから供給されたベクトルデー
    タを一時的に保持する複数のバッファと、 移送を開始するベクトルデータの要素番号である移送開
    始要素番号に基づいて、前記バッファに保持されたベク
    トルデータ、または前記ベクトルレジスタから供給され
    たベクトルデータのいずれか一方を選択するためのデー
    タ選択信号を出力するデータ選択制御部と、 前記データ選択信号にしたがって、前記バッファに保持
    されたベクトルデータ、または前記ベクトルレジスタか
    ら供給されたベクトルデータのいずれか一方を出力する
    複数のセレクタと、 該セレクタから出力されたベクトルデータを移送先のベ
    クトルレジスタへ送出するクロスバと、を有するベクト
    ル演算処理装置。
  2. 【請求項2】 前記データ選択制御部は、 移送対象のベクトルデータに対応して発行される、該ベ
    クトルデータが有効か無効かを示すデータ有効信号に基
    づいて、 有効を示すデータ有効信号を受け取っている間は、前記
    バッファに保持されたベクトルデータを前記セレクタに
    選択させ、無効を示すデータ有効信号を受け取った後
    は、前記ベクトルレジスタから供給されたベクトルデー
    タを前記セレクタに選択させるためのデータ選択信号を
    出力する請求項1記載のベクトル演算処理装置。
  3. 【請求項3】 前記ベクトルパイプライン処理部は、 1マシンサイクルの複数倍のサイクルで演算処理を行う
    複数の演算器を有する請求項1または2記載のベクトル
    演算処理装置。
  4. 【請求項4】 複数のバンクからなるベクトルレジスタ
    を備え、ベクトルデータが前記バンク毎にインタリーブ
    に割り当てられて格納される、ベクトル演算を並行して
    処理する複数のベクトルパイプライン処理部を有するベ
    クトル演算処理装置の、前記ベクトルパイプライン処理
    部間でベクトルデータを移送するためのベクトルデータ
    移送方法であって、 移送元のベクトルレジスタから供給されたベクトルデー
    タを複数のバッファに一時的に保持し、 移送を開始するベクトルデータの要素番号である移送開
    始要素番号に基づいて、前記バッファに保持されたベク
    トルデータ、または前記ベクトルレジスタから供給され
    たベクトルデータのいずれか一方を選択するためのデー
    タ選択信号を出力し、 前記データ選択信号にしたがって、前記バッファに保持
    されたベクトルデータ、または前記ベクトルレジスタか
    ら供給されたベクトルデータのいずれか一方を移送先の
    ベクトルレジスタへ送出するベクトルデータ移送方法。
  5. 【請求項5】 移送対象のベクトルデータに対応して発
    行される、該ベクトルデータが有効か無効かを示すデー
    タ有効信号に基づいて、 有効を示すデータ有効信号を受け取っている間は、前記
    バッファに保持されたベクトルデータを選択し、無効を
    示すデータ有効信号を受け取った後は、前記ベクトルレ
    ジスタから供給されたベクトルデータを選択して、移送
    先のベクトルレジスタへ送出する請求項4記載のベクト
    ルデータ移送方法。
  6. 【請求項6】 前記ベクトル演算処理装置は、 1マシンサイクルの複数倍のサイクルで演算処理を行う
    複数の演算器を有する請求項4または5記載のベクトル
    データ移送方法。
JP34888299A 1999-12-08 1999-12-08 ベクトル演算処理装置及びベクトルデータ移送方法 Pending JP2001167084A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP34888299A JP2001167084A (ja) 1999-12-08 1999-12-08 ベクトル演算処理装置及びベクトルデータ移送方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP34888299A JP2001167084A (ja) 1999-12-08 1999-12-08 ベクトル演算処理装置及びベクトルデータ移送方法

Publications (1)

Publication Number Publication Date
JP2001167084A true JP2001167084A (ja) 2001-06-22

Family

ID=18400033

Family Applications (1)

Application Number Title Priority Date Filing Date
JP34888299A Pending JP2001167084A (ja) 1999-12-08 1999-12-08 ベクトル演算処理装置及びベクトルデータ移送方法

Country Status (1)

Country Link
JP (1) JP2001167084A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009251724A (ja) * 2008-04-02 2009-10-29 Hitachi Ltd ベクトルプロセッサ制御装置
JP2011113183A (ja) * 2009-11-25 2011-06-09 Nec Computertechno Ltd ベクトル処理装置及びベクトル演算処理方法
JP2011238271A (ja) * 2004-07-13 2011-11-24 Nvidia Corp 低ポート数メモリーを用いたマルチポートメモリーのシミュレート
US8316215B2 (en) 2007-03-08 2012-11-20 Nec Corporation Vector processor with plural arithmetic units for processing a vector data string divided into plural register banks accessed by read pointers starting at different positions

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011238271A (ja) * 2004-07-13 2011-11-24 Nvidia Corp 低ポート数メモリーを用いたマルチポートメモリーのシミュレート
US8316215B2 (en) 2007-03-08 2012-11-20 Nec Corporation Vector processor with plural arithmetic units for processing a vector data string divided into plural register banks accessed by read pointers starting at different positions
JP2009251724A (ja) * 2008-04-02 2009-10-29 Hitachi Ltd ベクトルプロセッサ制御装置
JP2011113183A (ja) * 2009-11-25 2011-06-09 Nec Computertechno Ltd ベクトル処理装置及びベクトル演算処理方法

Similar Documents

Publication Publication Date Title
US4881168A (en) Vector processor with vector data compression/expansion capability
CN100380313C (zh) 用于带有间接超长指令字处理部件至处理部件通信的有效同步mimd操作的方法和设备
JP2008181551A (ja) ベクトルレジスタを備えたコンピュータにおけるベクトルテールゲーティング
US6457121B1 (en) Method and apparatus for reordering data in X86 ordering
JPH03189843A (ja) データ処理システムおよび方法
JP2001167084A (ja) ベクトル演算処理装置及びベクトルデータ移送方法
JP3961461B2 (ja) ベクトル処理装置、および、ベクトル処理方法
JPS6156546B2 (ja)
JP2005235216A (ja) ダイレクト・メモリ・アクセス制御
JP2514473B2 (ja) 並列処理装置
JPH0877143A (ja) ベクトルデータ処理装置
JP2828972B2 (ja) 並列プロセツサ
JP3001545B1 (ja) ベクトルデータ処理装置
JPS63198144A (ja) マルチポ−トメモリにおけるダイレクトメモリアクセス制御方式
JPH0412491B2 (ja)
JPH05165875A (ja) ベクトル演算処理装置
JPH06110855A (ja) マルチ・プロセッサ
JP2001043210A (ja) アドレス生成装置、データ転送処理装置、ベクトル処理装置、ベクトル計算機、情報処理装置
JPH0368045A (ja) 主記憶制御方式
JPH06231096A (ja) マルチプロセッサシステムの完全結合型データ転送装置
JPS60144874A (ja) ベクトルデ−タ処理装置
JPH0934736A (ja) 動作切替えコントローラ
JPH04138582A (ja) 単一命令型並列計算機
JPH0484265A (ja) データ処理装置
JPS62138940A (ja) レジスタアクセス制御方式

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040714

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040909

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20040909

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20041110

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20041110

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050608

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20060119

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060215