JP2859645B2 - ベクトル処理システム - Google Patents
ベクトル処理システムInfo
- Publication number
- JP2859645B2 JP2859645B2 JP18137489A JP18137489A JP2859645B2 JP 2859645 B2 JP2859645 B2 JP 2859645B2 JP 18137489 A JP18137489 A JP 18137489A JP 18137489 A JP18137489 A JP 18137489A JP 2859645 B2 JP2859645 B2 JP 2859645B2
- Authority
- JP
- Japan
- Prior art keywords
- vector
- banks
- data
- output
- selector
- 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 - Lifetime
Links
Landscapes
- Complex Calculations (AREA)
Description
【発明の詳細な説明】 〔概 要〕 複数のバンクからなるベクトルレジスタを有するベク
トル処理システムに関し、 ベクトルレジスタ周辺の回路規模の削減を目的とし、 主記憶装置との間でデータの入出力を行う複数のアク
セスパイプラインと、複数のバンクにインタリーブされ
たベクトルレジスタと、このベクトルレジスタの格納デ
ータに対して演算を行う複数の演算器とを有し、複数の
バンクのそれぞれのアクセスタイミングに対応するバン
クスロットに反復性を持たせるようにしたベクトル処理
システムにおいて、ベクトルレジスタ内の複数のバンク
をバンクスロットの反復性に対応した数のグループに分
け、各グループ内の何れかのバンクを選択する複数の第
1選択手段と、各グループに対応した第1選択手段の何
れかを選択する複数の第2選択手段とを備え、第2選択
手段のそれぞれの選択出力をアクセスパイプライン,演
算器のそれぞれに供給するように構成する。
トル処理システムに関し、 ベクトルレジスタ周辺の回路規模の削減を目的とし、 主記憶装置との間でデータの入出力を行う複数のアク
セスパイプラインと、複数のバンクにインタリーブされ
たベクトルレジスタと、このベクトルレジスタの格納デ
ータに対して演算を行う複数の演算器とを有し、複数の
バンクのそれぞれのアクセスタイミングに対応するバン
クスロットに反復性を持たせるようにしたベクトル処理
システムにおいて、ベクトルレジスタ内の複数のバンク
をバンクスロットの反復性に対応した数のグループに分
け、各グループ内の何れかのバンクを選択する複数の第
1選択手段と、各グループに対応した第1選択手段の何
れかを選択する複数の第2選択手段とを備え、第2選択
手段のそれぞれの選択出力をアクセスパイプライン,演
算器のそれぞれに供給するように構成する。
本発明は、複数のバンクからなるベクトルレジスタを
有するベクトル処理システムに関するものである。
有するベクトル処理システムに関するものである。
近年のベクトル計算機の発達に伴い、ベクトルレジス
タに接続されるアクセスパイプライン,演算器等の使用
可能度を上げるために、ベクトルレジスタに接続される
データ転送用のアクセスパイプラインの本数を増やすこ
とが行われてきた。しかし、ベクトルレジスタと各アク
セスパイプラインの各オペランド入口との間のセレクタ
の規模が膨大となり、LSIあるいは基板内の配線が複雑
化すると共に信号の遅延が問題となってきた。そのた
め、このセレクタの規模を縮小し、アラインのための配
線の負荷分散をすることのできる技術が求められてい
る。
タに接続されるアクセスパイプライン,演算器等の使用
可能度を上げるために、ベクトルレジスタに接続される
データ転送用のアクセスパイプラインの本数を増やすこ
とが行われてきた。しかし、ベクトルレジスタと各アク
セスパイプラインの各オペランド入口との間のセレクタ
の規模が膨大となり、LSIあるいは基板内の配線が複雑
化すると共に信号の遅延が問題となってきた。そのた
め、このセレクタの規模を縮小し、アラインのための配
線の負荷分散をすることのできる技術が求められてい
る。
第3図に、ベクトル処理システムの構成を示す。図に
おいて、311は主記憶装置(MSU)を、321は記憶制御装
置(MCU)を、331はベクトルユニットを、333はベクト
ル命令制御部を、335はベクトルデータ処理部を、341は
データ転送回路を、343はベクトルレジスタ(VR)を、3
45はベクトル演算器を、351はスカラユニットをそれぞ
れ示している。
おいて、311は主記憶装置(MSU)を、321は記憶制御装
置(MCU)を、331はベクトルユニットを、333はベクト
ル命令制御部を、335はベクトルデータ処理部を、341は
データ転送回路を、343はベクトルレジスタ(VR)を、3
45はベクトル演算器を、351はスカラユニットをそれぞ
れ示している。
ベクトルユニット331は、スカラユニット351からの指
示に応じてベクトル処理を行う。例えば、ベクトルデー
タ処理部335は、ベクトル命令制御部333から出力される
アクセス命令に基づいて主記憶装置311からベクトルデ
ータのロードを行い、パイプライン構成のデータ転送回
路341を介してこのベクトルデータをベクトルレジスタ3
43に格納する。また、ベクトル演算を行う場合は、ベク
トルレジスタ343から読み出したベクトルデータに対し
てベクトル演算器345によるベクトル演算を施し、演算
結果は再度ベクトルレジスタ343に格納する。
示に応じてベクトル処理を行う。例えば、ベクトルデー
タ処理部335は、ベクトル命令制御部333から出力される
アクセス命令に基づいて主記憶装置311からベクトルデ
ータのロードを行い、パイプライン構成のデータ転送回
路341を介してこのベクトルデータをベクトルレジスタ3
43に格納する。また、ベクトル演算を行う場合は、ベク
トルレジスタ343から読み出したベクトルデータに対し
てベクトル演算器345によるベクトル演算を施し、演算
結果は再度ベクトルレジスタ343に格納する。
このようなベクトル演算を高速に行うために、ベクト
ルレジスタ343を複数のバンクにインタリーブすると共
に、データ転送回路341に複数のアクセスパイプライン
を備える技法が汎用されており、この場合のベクトルデ
ータ処理部335の構成を第4図に示す。
ルレジスタ343を複数のバンクにインタリーブすると共
に、データ転送回路341に複数のアクセスパイプライン
を備える技法が汎用されており、この場合のベクトルデ
ータ処理部335の構成を第4図に示す。
第4図において、411、413はアクセスパイプライン
を、421,423,425,427はレジスタ(R)を、431,433,43
5,437,441,443はセレクタ(S)を、451,453は演算器を
それぞれ示している。
を、421,423,425,427はレジスタ(R)を、431,433,43
5,437,441,443はセレクタ(S)を、451,453は演算器を
それぞれ示している。
2つのアクセスパイプライン411,413はデータ転送回
路341内にあって主記憶装置311との間でのデータの入出
力を行うものであり、2つの演算器451,453はベクトル
演算器345内にあって2入力に対して所定の演算(加
算,乗算等)を行うものである。また、ベクトルレジス
タ343は、8つのバンク0〜バンク7にインタリーブさ
れている。
路341内にあって主記憶装置311との間でのデータの入出
力を行うものであり、2つの演算器451,453はベクトル
演算器345内にあって2入力に対して所定の演算(加
算,乗算等)を行うものである。また、ベクトルレジス
タ343は、8つのバンク0〜バンク7にインタリーブさ
れている。
アクセスパイプライン411から出力されるデータは、
一旦レジスタ421に保持された後、ベクトルレジスタ343
の8つのバンクのそれぞれの入力端に供給される。同様
に、アクセスパイプライン413から出力されるデータ
は、一旦レジスタ423に保持された後、ベクトルレジス
タ343の8つのバンクのそれぞれの入力端に供給され
る。
一旦レジスタ421に保持された後、ベクトルレジスタ343
の8つのバンクのそれぞれの入力端に供給される。同様
に、アクセスパイプライン413から出力されるデータ
は、一旦レジスタ423に保持された後、ベクトルレジス
タ343の8つのバンクのそれぞれの入力端に供給され
る。
また、4つのセレクタ431〜437及び2つのセレクタ44
1,443のそれぞれは8つの入力端を有しており、これら
の各入力端はベクトルレジスタ343の8つのバンクの各
出力端に接続されている。従って、これらの各セレクタ
は、任意の入力端を選択することにより、ベクトルレジ
スタ343内の任意のバンクを選択してデータを取り出す
ことができる。
1,443のそれぞれは8つの入力端を有しており、これら
の各入力端はベクトルレジスタ343の8つのバンクの各
出力端に接続されている。従って、これらの各セレクタ
は、任意の入力端を選択することにより、ベクトルレジ
スタ343内の任意のバンクを選択してデータを取り出す
ことができる。
演算器451にはセレクタ431,433から出力される2つの
データが入力され、所定の演算を行う。演算結果はレジ
スタ425を介してベクトルレジスタ343内の何れかのバン
クに格納される。同様に、演算器453にはセレクタ435,4
37から出力される2つのデータが入力され、所定の演算
を行う。演算結果はレジスタ427を介してベクトルレジ
スタ343内の何れかのバンクに格納される。
データが入力され、所定の演算を行う。演算結果はレジ
スタ425を介してベクトルレジスタ343内の何れかのバン
クに格納される。同様に、演算器453にはセレクタ435,4
37から出力される2つのデータが入力され、所定の演算
を行う。演算結果はレジスタ427を介してベクトルレジ
スタ343内の何れかのバンクに格納される。
また、セレクタ441の出力はアクセスパイプライン411
に入力され、セレクタ413の出力はアクセスパイプライ
ン413に入力される。
に入力され、セレクタ413の出力はアクセスパイプライ
ン413に入力される。
このように、4つのレジスタ421〜427及び6つのセレ
クタ431〜437,441,443を介して、ベクトルレジスタ343
内の任意のバンクに対するデータの入出力を行うことに
より、所定のエレメント数を並行して処理するベクトル
処理が可能になる。
クタ431〜437,441,443を介して、ベクトルレジスタ343
内の任意のバンクに対するデータの入出力を行うことに
より、所定のエレメント数を並行して処理するベクトル
処理が可能になる。
ところで、上述した従来方式にあっては、各レジスタ
及び各セレクタがベクトルレジスタ343内の全てのバン
クに接続されているため、ベクトルレジスタ343周辺の
回路規模が大きくなるという問題点があった。
及び各セレクタがベクトルレジスタ343内の全てのバン
クに接続されているため、ベクトルレジスタ343周辺の
回路規模が大きくなるという問題点があった。
特に、それぞれを接続するための配線が複雑になり、
ベクトルレジスタ343をビットスライスで構成するなど
の必要が生じる。また、所定のデータ長(ビット数)を
有する8つのバンクの中の1つを各セレクタによって選
択するため、このセレクタの回路規模が大きくなる。更
に、任意のバンクを指定するための各セレクタのセレク
ト信号及びデータを取り込むバンクを指定するためのバ
ンクセレクト信号が複雑化することにより、処理速度に
関しても不利となる。
ベクトルレジスタ343をビットスライスで構成するなど
の必要が生じる。また、所定のデータ長(ビット数)を
有する8つのバンクの中の1つを各セレクタによって選
択するため、このセレクタの回路規模が大きくなる。更
に、任意のバンクを指定するための各セレクタのセレク
ト信号及びデータを取り込むバンクを指定するためのバ
ンクセレクト信号が複雑化することにより、処理速度に
関しても不利となる。
本発明は、このような点にかんがみて創作されたもの
であり、ベクトルレジスタ周辺の回路規模を削減するこ
とができるベクトル処理システムを提供することを目的
としている。
であり、ベクトルレジスタ周辺の回路規模を削減するこ
とができるベクトル処理システムを提供することを目的
としている。
第1図は、本発明のベクトル処理システムの原理ブロ
ック図である。
ック図である。
図において、主記憶装置との間でデータの入出力を行
う複数のアクセスパイプライン111と、複数のバンクに
インタリーブされたベクトルレジスタ121と、このベク
トルレジスタ121の格納データに対して演算を行う複数
の演算器131とを有し、複数のバンクのそれぞれのアク
セスタイミングに対応するバンクスロットに反復性を持
たせるようにしたベクトル処理システムにおいて、ベク
トルレジスタ121内の複数のバンクをバンクスロットの
反復性に対応した数のグループに分け、各グループ内の
何れかのバンクを選択する複数の第1選択手段141と、
各グループに対応した第1選択手段141の何れかを選択
する複数の第2選択手段151とを備え、第2選択手段151
のそれぞれの選択出力を前記アクセスパイプライン111,
演算器131のそれぞれに供給するように構成されてい
る。
う複数のアクセスパイプライン111と、複数のバンクに
インタリーブされたベクトルレジスタ121と、このベク
トルレジスタ121の格納データに対して演算を行う複数
の演算器131とを有し、複数のバンクのそれぞれのアク
セスタイミングに対応するバンクスロットに反復性を持
たせるようにしたベクトル処理システムにおいて、ベク
トルレジスタ121内の複数のバンクをバンクスロットの
反復性に対応した数のグループに分け、各グループ内の
何れかのバンクを選択する複数の第1選択手段141と、
各グループに対応した第1選択手段141の何れかを選択
する複数の第2選択手段151とを備え、第2選択手段151
のそれぞれの選択出力を前記アクセスパイプライン111,
演算器131のそれぞれに供給するように構成されてい
る。
ベクトルレジスタ121は、複数のバンクにインタリー
ブされており、これらのバンクの複数個を単位とした複
数のグループに分けられている。また、このグループ分
けは、各バンクのそれぞれのアクセスタイミングに対応
するバンクスロットに持たせた反復性に対応している。
ブされており、これらのバンクの複数個を単位とした複
数のグループに分けられている。また、このグループ分
けは、各バンクのそれぞれのアクセスタイミングに対応
するバンクスロットに持たせた反復性に対応している。
上述したグループのそれぞれには、グループ内の複数
のバンクの1つを選択する第1選択手段141が接続され
ており、グループ内の何れかのバンクに対するアクセス
が行われる。また、これら複数の第1選択手段141に
は、グループを選択するための複数の第2選択手段151
が接続されており、この第2選択手段151の選択出力が
複数のアクセスパイプライン111あるいは複数の演算器1
31に供給される。
のバンクの1つを選択する第1選択手段141が接続され
ており、グループ内の何れかのバンクに対するアクセス
が行われる。また、これら複数の第1選択手段141に
は、グループを選択するための複数の第2選択手段151
が接続されており、この第2選択手段151の選択出力が
複数のアクセスパイプライン111あるいは複数の演算器1
31に供給される。
本発明にあっては、バンクスロットの反復性に対応し
たグループ分けを行って、アクセスパイプライン111の
それぞれあるいは演算器131のそれぞれを異なるグルー
プに対応させることができるため、グループを単位とし
たベクトルレジスタ121のアクセスが可能になり、第1
選択手段141とベクトル121の接続が簡素になる。
たグループ分けを行って、アクセスパイプライン111の
それぞれあるいは演算器131のそれぞれを異なるグルー
プに対応させることができるため、グループを単位とし
たベクトルレジスタ121のアクセスが可能になり、第1
選択手段141とベクトル121の接続が簡素になる。
以下、図面に基づいて本発明の実施例について詳細に
説明する。
説明する。
第2図は、本発明のベクトル処理システムを適用した
一実施例におけるベクトルデータ処理部の構成を示す。
一実施例におけるベクトルデータ処理部の構成を示す。
第2図におい、211,213はアクセスパイプラインを、2
21,223,225,227はレジスタ(R)を、231,233,235,237,
251,253,255,261,263,265,271,273,275,277,291,293は
セレクタ(S)を、241はベクトルレジスタ(VR)を、2
81,283は演算器をそれぞれ示している。
21,223,225,227はレジスタ(R)を、231,233,235,237,
251,253,255,261,263,265,271,273,275,277,291,293は
セレクタ(S)を、241はベクトルレジスタ(VR)を、2
81,283は演算器をそれぞれ示している。
第2図に示したベクトルデータ処理部を含むベクトル
処理システムの全体構成は、例えば第3図の構成とし、
第3図のベクトルデータ処理部335を第2図のベクトル
データ処理部に置き換えて考える。
処理システムの全体構成は、例えば第3図の構成とし、
第3図のベクトルデータ処理部335を第2図のベクトル
データ処理部に置き換えて考える。
ベクトルレジスタ241は8つのバンク0〜バンク7を
有しており、例えばバンク0〜バンク3をグループA、
バンク4〜バンク7をグループBとして以下の説明を行
う。
有しており、例えばバンク0〜バンク3をグループA、
バンク4〜バンク7をグループBとして以下の説明を行
う。
2つのセレクタ231,233は、グループAの各バンクに
データを供給するためのものである。セレクタ231は、
それぞれがレジスタ221,223に接続された2つの入力端
を有しており、何れか一方の入力端に入力されたデータ
を選択して出力する。出力データは、グループAの各バ
ンクに供給される。セレクタ233は、それぞれがレジス
タ225,227に接続された2つの入力端を有しており、何
れか一方の入力端に入力されたデータを選択して出力す
る。出力データは、グループAの各バンクに供給され
る。
データを供給するためのものである。セレクタ231は、
それぞれがレジスタ221,223に接続された2つの入力端
を有しており、何れか一方の入力端に入力されたデータ
を選択して出力する。出力データは、グループAの各バ
ンクに供給される。セレクタ233は、それぞれがレジス
タ225,227に接続された2つの入力端を有しており、何
れか一方の入力端に入力されたデータを選択して出力す
る。出力データは、グループAの各バンクに供給され
る。
3つのセレクタ251,253,255は、グループAの各バン
クから出力されるデータを選択するためのものである。
セレクタ251は、それぞれがグループAの4つのバンク
の各出力端に接続された4つの入力端を有しており、何
れかのバンクのデータを選択して出力する。同様に、セ
レクタ253,255もグループAの何れかのバンクのデータ
を選択して出力する。
クから出力されるデータを選択するためのものである。
セレクタ251は、それぞれがグループAの4つのバンク
の各出力端に接続された4つの入力端を有しており、何
れかのバンクのデータを選択して出力する。同様に、セ
レクタ253,255もグループAの何れかのバンクのデータ
を選択して出力する。
また、2つのセレクタ235,237は、グループBの各バ
ンクにデータを供給するためのものである。セレクタ23
5は、それぞれレジスタ221,223に接続された2つの入力
端を有しており、何れかの一方の入力端に入力されたデ
ータを選択して出力する。出力データは、グループBの
各バンクに供給される。セレクタ237は、それぞれがレ
ジスタ225,227に接続された2つの入力端を有してお
り、何れか一方の入力端に入力されたデータを選択して
出力する。出力データは、グループBの各バンクに供給
される。
ンクにデータを供給するためのものである。セレクタ23
5は、それぞれレジスタ221,223に接続された2つの入力
端を有しており、何れかの一方の入力端に入力されたデ
ータを選択して出力する。出力データは、グループBの
各バンクに供給される。セレクタ237は、それぞれがレ
ジスタ225,227に接続された2つの入力端を有してお
り、何れか一方の入力端に入力されたデータを選択して
出力する。出力データは、グループBの各バンクに供給
される。
3つのセレクタ261,263,265は、グループBの各バン
クから出力されるデータを選択するためのものである。
セレクタ261は、それぞれグループBの4つのバンクの
各出力端に接続された4つの入力端を有しており、何れ
かのバンクのデータを選択して出力する。同様に、セレ
クタ263,265もグループAの何れかのバンクのデータを
選択して出力する。
クから出力されるデータを選択するためのものである。
セレクタ261は、それぞれグループBの4つのバンクの
各出力端に接続された4つの入力端を有しており、何れ
かのバンクのデータを選択して出力する。同様に、セレ
クタ263,265もグループAの何れかのバンクのデータを
選択して出力する。
更に、セレクタ271,273,275,277,291,293のそれぞれ
は2つの入力端を有しており、各入力端はグループAあ
るいはグループBに対応している。
は2つの入力端を有しており、各入力端はグループAあ
るいはグループBに対応している。
セレクタ291は、一方の入力端に入力されたセレクタ2
51の出力と、他方の入力端に入力されたセレクタ261の
出力とを択一的に出力する。出力データはアクセスパイ
プライン211に供給される。
51の出力と、他方の入力端に入力されたセレクタ261の
出力とを択一的に出力する。出力データはアクセスパイ
プライン211に供給される。
セレクタ293は、一方の入力端に入力されたセレクタ2
51の出力と、他方の入力端に入力されたセレクタ261の
出力とを択一的に出力する。出力データはアクセスパイ
プライン213に供給される。
51の出力と、他方の入力端に入力されたセレクタ261の
出力とを択一的に出力する。出力データはアクセスパイ
プライン213に供給される。
セレクタ271は、一方の入力端に入力されたセレクタ2
53の出力と、他方の入力端に入力されたセレクタ263の
出力とを択一的に出力する。出力データは演算器281の
一方の入力端に供給される。
53の出力と、他方の入力端に入力されたセレクタ263の
出力とを択一的に出力する。出力データは演算器281の
一方の入力端に供給される。
セレクタ273は、一方の入力端に入力されたセレクタ2
55の出力と、他方の入力端に入力されたセレクタ265の
出力とを択一的に出力する。出力データは演算器281の
他方の入力端に供給される。
55の出力と、他方の入力端に入力されたセレクタ265の
出力とを択一的に出力する。出力データは演算器281の
他方の入力端に供給される。
セレクタ275は、一方の入力端に入力されたセレクタ2
53の出力と、他方の入力端に入力されたセレクタ263の
出力とを択一的に出力する。出力データは演算器283の
一方の入力端に供給される。
53の出力と、他方の入力端に入力されたセレクタ263の
出力とを択一的に出力する。出力データは演算器283の
一方の入力端に供給される。
セレクタ277は、一方の入力端に入力されたセレクタ2
55の出力と、他方の入力端に入力されたセレクタ265の
出力とを択一的に出力する。出力データは演算器283の
他方の入力端に供給される。
55の出力と、他方の入力端に入力されたセレクタ265の
出力とを択一的に出力する。出力データは演算器283の
他方の入力端に供給される。
2つの演算器281,283のそれぞれは、例えば加算,乗
算等を2入力データに対して行うものであり、演算器28
1の演算結果はレジスタ225に、演算器283の演算結果は
レジスタ227に供給される。
算等を2入力データに対して行うものであり、演算器28
1の演算結果はレジスタ225に、演算器283の演算結果は
レジスタ227に供給される。
8つのバンクのアクセスタイミングに対応した各バン
クスロットを、例えばK,E3,E2,E1,L,F3,F2,F1とする。
ここで、K,Lはアクセスパイプラインが使用可能なスロ
ットを、E3,F3は演算のR3オペランドが使用可能なスロ
ットを、E2,F2は演算のR2オペランドが使用可能なスロ
ットを、E1,F1は演算のR1オペランドが使用可能なスロ
ットをそれぞれ示している。このように、8バンクスロ
ットをそれぞれが同一構成の4バンクスロット(4バン
クスロットK,E3,E2,E1と4バンクスロットL.F3,F2,F1)
にグループ分けする。
クスロットを、例えばK,E3,E2,E1,L,F3,F2,F1とする。
ここで、K,Lはアクセスパイプラインが使用可能なスロ
ットを、E3,F3は演算のR3オペランドが使用可能なスロ
ットを、E2,F2は演算のR2オペランドが使用可能なスロ
ットを、E1,F1は演算のR1オペランドが使用可能なスロ
ットをそれぞれ示している。このように、8バンクスロ
ットをそれぞれが同一構成の4バンクスロット(4バン
クスロットK,E3,E2,E1と4バンクスロットL.F3,F2,F1)
にグループ分けする。
また、ベクトルレジスタ241の8つのバンクを2つに
グループ分け(グループA,グループB)すると共に、ア
クセスパイプライン211,213及び演算器281,283のそれぞ
れについても構成に反復性を持たせる。
グループ分け(グループA,グループB)すると共に、ア
クセスパイプライン211,213及び演算器281,283のそれぞ
れについても構成に反復性を持たせる。
バンクスロットの構成に反復性を持たせると共に、回
路構成にも同数の反復法を持たせることにより、ベクト
ルレジスタ241内のグループAの各バンクに対するデー
タの読み書きと、グループBの各バンクに対するデータ
の読み書きとを別々に行うことができるようになる。
路構成にも同数の反復法を持たせることにより、ベクト
ルレジスタ241内のグループAの各バンクに対するデー
タの読み書きと、グループBの各バンクに対するデータ
の読み書きとを別々に行うことができるようになる。
別々に各グループから読み出したデータは、更にセレ
クタ271〜277,291,293のそれぞれによって選択され、2
つのアクセスパイプライン211,213の何れか、あるいは
2つの演算器281,283の何れかに供給される。
クタ271〜277,291,293のそれぞれによって選択され、2
つのアクセスパイプライン211,213の何れか、あるいは
2つの演算器281,283の何れかに供給される。
このように、ベクトルレジスタ241の8つのバンクを
2つにグループ分けし、それぞれを対象としたデータの
読み書きを行うことにより、アクセスパイプラインのそ
れぞれあるいは演算器のそれぞれを異なるグループに対
応させることができるので、配線を簡略化すると共に、
回路規模を削減することが可能になる。
2つにグループ分けし、それぞれを対象としたデータの
読み書きを行うことにより、アクセスパイプラインのそ
れぞれあるいは演算器のそれぞれを異なるグループに対
応させることができるので、配線を簡略化すると共に、
回路規模を削減することが可能になる。
例えば、セレクタ251〜255あるいはセレクタ261〜265
は、各入力端の数が従来に比べて半分になっているた
め、回路規模が半分になる。従って、他の2入力のセレ
クタ(セレクタ231,291等)を考慮に入れても、従来に
比べて回路規模を大幅に削減することができる。
は、各入力端の数が従来に比べて半分になっているた
め、回路規模が半分になる。従って、他の2入力のセレ
クタ(セレクタ231,291等)を考慮に入れても、従来に
比べて回路規模を大幅に削減することができる。
また、ベクトルレジスタ241の各グループ毎に入出力
データをまとめており、配線が局部的になるため、隔た
った構成部間の配線を減らして配線の簡略化が可能な
る。
データをまとめており、配線が局部的になるため、隔た
った構成部間の配線を減らして配線の簡略化が可能な
る。
また、反復した構成部を単位として各セレクタのセレ
クト信号及び各バンクのセレクト信号の制御を行うた
め、この制御が簡単になり、高速化にも有利になる。
クト信号及び各バンクのセレクト信号の制御を行うた
め、この制御が簡単になり、高速化にも有利になる。
更に、上述したように局所的な配線及び部品の配置を
行って負荷分散を行うことにより、信号レジベルの調整
が不要になると共に、LSI化を行う場合の分割が容易に
なる。例えば、セレクタ251〜255,261〜265と演算器28
1,283とが隔たって配置されている場合にも、一旦セレ
クタ271〜277を介しているためレベル調整が不要とな
る。しかも、複数のLSIによってベクトルデータ処理部
を構成する場合には、セレクタ251〜255,261〜265と演
算器281,283との間を分割すればよい。
行って負荷分散を行うことにより、信号レジベルの調整
が不要になると共に、LSI化を行う場合の分割が容易に
なる。例えば、セレクタ251〜255,261〜265と演算器28
1,283とが隔たって配置されている場合にも、一旦セレ
クタ271〜277を介しているためレベル調整が不要とな
る。しかも、複数のLSIによってベクトルデータ処理部
を構成する場合には、セレクタ251〜255,261〜265と演
算器281,283との間を分割すればよい。
なお、実施例では、ベクトルレジスタ241を8バンク
にインタリーブし、更にこの8バンクを2グループに分
けるようにしたが、インターリブの数及び反復数は他の
組み合わせであってもよい。一般に、反復数を2n、イン
タリーブ数を2mとすると、2m-n個のバンクを有する各グ
ループに対する選択動作と、各グループの出力数2nに対
する選択動作とを2段階で行えばよい。
にインタリーブし、更にこの8バンクを2グループに分
けるようにしたが、インターリブの数及び反復数は他の
組み合わせであってもよい。一般に、反復数を2n、イン
タリーブ数を2mとすると、2m-n個のバンクを有する各グ
ループに対する選択動作と、各グループの出力数2nに対
する選択動作とを2段階で行えばよい。
上述したように、本発明によれば、バンクスロットの
反復性に対応したグループ分けを行って、アクセスパイ
プラインのそれぞれあるいは演算器のそれぞれに対応さ
せることができるため、グループを単位としたベクトル
レジスタのアクセスが可能になり、ベクトルレジスタ周
辺の回路規模が削減できるので、実用的には極めて有用
である。
反復性に対応したグループ分けを行って、アクセスパイ
プラインのそれぞれあるいは演算器のそれぞれに対応さ
せることができるため、グループを単位としたベクトル
レジスタのアクセスが可能になり、ベクトルレジスタ周
辺の回路規模が削減できるので、実用的には極めて有用
である。
第1図は本発明のベクトル処理システムの原理ブロック
図、 第2図は本発明の一実施例によるベクトルデータ処理部
の構成図、 第3図はベクトル処理出力の構成図、 第4図は従来例のベクトルデータ処理部の構成図であ
る。 図において、 111はアクセスパイプライン、 121はベクトルレジスタ、 131は演算器、 141は第1選択手段、 151は第2選択手段、 211,213はアクセスパイプライン、 221,223,225,227はレジスタ(R)、 231,233,235,237,251,253,255,261,263,265,271,273,27
5,277,291,293はセレクタ(S)、 241はベクトルレジスタ(VR)、 281,283は演算器である。
図、 第2図は本発明の一実施例によるベクトルデータ処理部
の構成図、 第3図はベクトル処理出力の構成図、 第4図は従来例のベクトルデータ処理部の構成図であ
る。 図において、 111はアクセスパイプライン、 121はベクトルレジスタ、 131は演算器、 141は第1選択手段、 151は第2選択手段、 211,213はアクセスパイプライン、 221,223,225,227はレジスタ(R)、 231,233,235,237,251,253,255,261,263,265,271,273,27
5,277,291,293はセレクタ(S)、 241はベクトルレジスタ(VR)、 281,283は演算器である。
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭56−88559(JP,A) 特開 昭57−27362(JP,A) 特開 昭57−27363(JP,A) 特開 昭57−30078(JP,A) 特開 昭57−3172(JP,A) (58)調査した分野(Int.Cl.6,DB名) G06F 17/16
Claims (1)
- 【請求項1】主記憶装置との間でデータの入出力を行う
複数のアクセスパイプライン(111)と、複数のバンク
にインタリーブされたベクトルレジスタ(121)と、こ
のベクトルレジスタ(121)の格納データに対して演算
を行う複数の演算器(131)とを有し、前記複数のバン
クのそれぞれのアクセスタイミングに対応するバンクス
ロットに反復性を持たせるようにしたベクトル処理シス
テムにおいて、 前記ベクトルレジスタ(121)内の複数のバンクを前記
バンクスロットの反復性に対応した数のグループに分
け、各グループ内の何れかのバンクを選択する複数の第
1選択手段(141)と、各グループに対応した第1選択
手段(141)の何れかを選択する複数の第2選択手段(1
51)とを備え、 前記第2選択手段(151)のそれぞれの選択出力を前記
アクセスパイプライン(111),前記演算器(131)のそ
れぞれに供給するように構成したことを特徴とするベク
トル処理システム。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP18137489A JP2859645B2 (ja) | 1989-07-13 | 1989-07-13 | ベクトル処理システム |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP18137489A JP2859645B2 (ja) | 1989-07-13 | 1989-07-13 | ベクトル処理システム |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH0346068A JPH0346068A (ja) | 1991-02-27 |
| JP2859645B2 true JP2859645B2 (ja) | 1999-02-17 |
Family
ID=16099614
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP18137489A Expired - Lifetime JP2859645B2 (ja) | 1989-07-13 | 1989-07-13 | ベクトル処理システム |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2859645B2 (ja) |
-
1989
- 1989-07-13 JP JP18137489A patent/JP2859645B2/ja not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JPH0346068A (ja) | 1991-02-27 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5226171A (en) | Parallel vector processing system for individual and broadcast distribution of operands and control information | |
| EP0075593B1 (en) | A bit slice microprogrammable processor for signal processing applications | |
| US5287532A (en) | Processor elements having multi-byte structure shift register for shifting data either byte wise or bit wise with single-bit output formed at bit positions thereof spaced by one byte | |
| US5410727A (en) | Input/output system for a massively parallel, single instruction, multiple data (SIMD) computer providing for the simultaneous transfer of data between a host computer input/output system and all SIMD memory devices | |
| US5081573A (en) | Parallel processing system | |
| US6230257B1 (en) | Method and apparatus for staggering execution of a single packed data instruction using the same circuit | |
| US3787673A (en) | Pipelined high speed arithmetic unit | |
| KR100415417B1 (ko) | 이미지-처리프로세서 | |
| KR0125623B1 (ko) | 데이타 프로세서 및 데이타 처리방법 | |
| US5148547A (en) | Method and apparatus for interfacing bit-serial parallel processors to a coprocessor | |
| US4228498A (en) | Multibus processor for increasing execution speed using a pipeline effect | |
| US4974146A (en) | Array processor | |
| JPH0731669B2 (ja) | ベクトル・プロセツサ | |
| KR100346515B1 (ko) | 수퍼파이프라인된수퍼스칼라프로세서를위한임시파이프라인레지스터파일 | |
| US4162535A (en) | Triangular high speed I/O system for content addressable memories | |
| JPH06274528A (ja) | ベクトル演算処理装置 | |
| US7284113B2 (en) | Synchronous periodical orthogonal data converter | |
| US4153943A (en) | High speed I/O for content addressable type memories | |
| US5603046A (en) | Method for complex data movement in a multi-processor data processing system | |
| JP2859645B2 (ja) | ベクトル処理システム | |
| EP0992917B1 (en) | Linear vector computation | |
| EP1050800A1 (en) | A pipelined execution unit | |
| JP2717850B2 (ja) | 高速通信機構を持った並列計算機 | |
| US5548771A (en) | Multi-processor data processing system having multiple ports coupled to multiple interface circuits | |
| US5027300A (en) | Two level multiplexer circuit shifter apparatus |