JPS6083176A - ベクトルプロセツサ - Google Patents

ベクトルプロセツサ

Info

Publication number
JPS6083176A
JPS6083176A JP59171663A JP17166384A JPS6083176A JP S6083176 A JPS6083176 A JP S6083176A JP 59171663 A JP59171663 A JP 59171663A JP 17166384 A JP17166384 A JP 17166384A JP S6083176 A JPS6083176 A JP S6083176A
Authority
JP
Japan
Prior art keywords
vector
register
stored
elements
processor
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
JP59171663A
Other languages
English (en)
Inventor
チヤツク・ホング・ナイ
エドワード・リチヤード・ワツセル
ジエラルド・ジヨセフ・ワトキンス
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPS6083176A publication Critical patent/JPS6083176A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/3001Arithmetic instructions
    • G06F9/30014Arithmetic instructions with variable precision
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/80Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
    • G06F15/8053Vector processors
    • G06F15/8076Details on data register access
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30036Instructions to perform operations on packed data, e.g. vector, tile or matrix operations

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Complex Calculations (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明はコンピュータシステムに関し、さらに詳しく言
えば、1個のベクトルの各要素を処理しその結果を記憶
するための並列式バク1−ルプロセツサに関する。
[従来技術] 第5図に示すような通常のベクトルプロセッサ10は複
数のベクトルレジスタ12を有し、各々のベクトルレジ
スタ12は1個のベタ1ヘルを記憶する。ベクトルは複
数の要素を有する。パイプライン処理装[16はベクト
ルレジスタに係るセレクタ14に接続され、第1のベク
トルレジスタから第1のベクトルの要素を順次に受け取
って、第1のベクトルの要素に対して算術演算を実行し
て、結果ベクトルを生成する。結果ベクトルの要素は、
第1のベクトルレジスタの対応する位置に書き戻される
こともあれば、別のベクトルレジスタに書き戻されるこ
ともある。
しかしながら、こうした構成を採る限りは、ベクトルの
各々の要素に対して順次に演算を実行しなければならな
い。ベクトルの256個の要素全てに対して演算を終え
るのに要する時間は、各要素に対する1演算あたりの、
パイプラインのサイクルタイムに関係する。
[発明が解決しようとする問題点]゛ コンピユータシステム複雑になればなるほど、コンピュ
ータシステムのベクトルプロセッサ部の効率が問題とな
ってくる。
本発明の目的は、従来に比べ効率よくベクトル処理を行
うことのできるベクトルプロセッサを提供することにあ
る。
[問題点を解決するための手段〕 1個のベクトルの全ての要素に対する演算処理を終える
のに要する時間を減することによって、本発明の目的は
達成される。
ベクトルレジスタを複数の小レジスタに分けて、小レジ
スタの各々が例えば256個の要素のうちの4個を記憶
するようにしておく。各々の小レジスタに関連する要素
プロセッサが、パイプライン処理装置と同じ機能を遂行
する。各々の要素プロセッサとそれに対応する小レジス
タとで1個のユニットを構成する。複数のユニットを並
列構成する。1個のベクトルレジスタに記憶された、1
個のベクトルに係る要素に対して演術演算を実行する場
合、こうした並列構成を用いることによって、この算術
演算を終えるのに要する時間は、第5図の通常のベクト
ルプロセッサを利用してベクトルの4個の要素に対して
算術演算を終えるのに要する時間に、はぼ等しくなる。
従って、ベクトルプロセッサの性能は大幅に改善される
[実施例] 実施例と従来例の違いを明瞭にするためにまず第5図に
ついて説明する。第5図はパイプライン式のベクトルプ
ロセッサ10を示す。第5図において、複数のベクトル
レジスタ12(VROないしVR15)が示されている
。各ベクトルレジスタは256個の要素(要素0ないし
要素255)を記憶する。良好な実施例では、要素1個
は4バイトの2進ワードを有する。セレクタ14が各ベ
クトルレジスタに接続され、ベクトルレジスタ12から
対応する要素を選択し、選択された要素をパイプライン
処理装置16にゲートする。パイプライン処理装w16
はセレクタ14に接続され、対応する要素を受け取って
該要素に対して算術演算のような選択された演算を実行
する。例えば、パイプライン処理装置16はベクトルレ
ジスタVROの要素OとベクトルレジスタVROの要素
1を受け取ってそれら要素に対して加算を実行する。
パイプライン処理装[16は、次に、ベクトルレジスタ
VROの要素2を受け取って前の和にこれを加算して別
の和を生成する。パイプライン処理装置16はベクトル
レジスタVROの残りの要素と記憶された前の和との加
算を順次に続行し、ベクトルレジスタVROに記憶され
たベクトルを構成する要素の最終和を生成する。結果レ
ジスタ18はパイプライン処理装置16に接続され、そ
こから受け取る最終和を記憶する。結果レジスタ18は
選択ゲート22を介してベクトルレジスタ12の各々に
接続され、要求があれば、結果レジスタ18の最終和を
他のベクトルレジスタへ転送する。
第5図に示すベクトルプロセッサ構成は本発明のベクト
ルプロセッサ構成とは異なる点を有する。
例を挙げて説明する。ベクトルレジスタVROがら第1
の要素が選択されて、ベクトルレジスタVROから第2
の要素が選択される。1九らの要素は前述のようにして
加算される。ベクトルレジスタVROから第3の要素が
選択さ九、前述のようにして前の和に加算される。ベク
トルレジスタ■ROに記憶されているベクトルの要素の
最終和を生成するには、ベクトルレジスタVROがら2
56個の要素を順次連続して選択し加算しなけ肛ばなら
ない。従って、ベクトルレジスタVROに記憶されてい
るベクトルの処理を終えるのに要する時間は、ベクトル
1個あたりの要素の数と、ベクトル1個につき要素1個
を処理するのに要するサイクルタイムと、の関数となる
。従って、1個のベクトルレジスタに記憶された1個の
ベクトルの処理に要する時間を減らせば、ベクトルプロ
セッサの性能を向上させることができる。
第2図に示す並列式のベクトルプロセッサについて説明
する。第2図で、第5図のベクトルレジスタVROない
しvR15の各々はN個の要素を記憶する。ベクトルレ
ジスタVROないしVRI5の各々は複数の小レジスタ
12aに分けられる。
小レジスタ12aは各々N個の要素のうちのM個を記憶
する(MはNより小さい)。例えば、ベクトルレジスタ
VROないしVR15の各々が256個の要素を記憶す
るとして、小レジスタ12aが256個の要素のうちの
4個を記憶してもよい。
複数の小レジスタ12aに対応する複数の要素プロセッ
サ20が接続される。1個の小しジスタエ2aと対応す
る1個の要素プロセッサ20とを合わせて1個のユニッ
ト30を形成する。要素プロセッサ20はベクトルレジ
スタに記憶さ九でいる要素に対して(算術)演算処理を
実行する。例を挙げて説明する。各々の要素プロセッサ
20は1個のベクトルの4個の要素に対して演算処理を
実行する。演算処理の結果は各々の要素プロセッサ20
によって並行して同時に生成される。演算処理の結果は
ベクトルレジスタVROないしVRI5のうちの任意の
1つの対応する場所に記憶することができる。
要素プロセッサ20を含むユニッ1−30の機成を第3
図に示す。第3図において、局所記憶装置12が第2図
で示したベクトルレジスタ12を表わしている。システ
ムのバス11およびllaの一端は駆動回路(D)9に
接続され、他端は受信回路(R)7に接続される。第1
の入力データアセンブラ(ASM)13が、駆動回路9
および受信回路7に接続される。ASM13は、さらに
、局所記憶装置12および要素プロセッサ2oに接続さ
れる。第3図に示す要素プロセッサ2oは第2の入力デ
ータアセンブラ(ASM)20aを含む。ASM20a
は局所記憶装置12およびΔ5M13に接続される。バ
スインターフェースレジスタ(BIR)15の一端はバ
ス11およびバス11aに接続され、他端はA S M
 20 aに接続される。シフト選択レジスタ20bお
よびフラッシュ選択レジスタ20cはA S M 20
 aに接続される。フラッシュ選択レジスタ2C1cは
、直接、真数/補数ゲート(T/Cゲーグー)20dに
接続されるが、一方、シフト選択レジスタ20bは事前
シフタ20fを介して真数/補数ゲート(T/Cゲート
)20eに接続される。T/Cゲート2゜dおよび20
eはそれぞれ算術論理機構(ALU)20gに接続され
る。ALU20gは事後シフタ20iを介して結果レジ
スタ20hに接続される。
結果レジスタ20hは局所記憶装置12に接続される。
ベクトルレジスタ12の小レジスタ12aに記憶された
ベクトルの4個の要素に対して算術演算処理を要素プロ
セッサ20が終えた場合に、結果レジスタ20hはその
結果を記憶する。乗算回路20jはA S M 20 
aとALU20gとの間に相互接続される。乗算回路2
0jは2つのオペランドを受け取る。乗算回路20jは
和出力と桁上げ出力を生成して、ALU20gがそれら
を受け取る。
第1図について説明する。本発明に従ってブロック#O
ないし#63が示されている。各ブロックはユニット3
0である。ユニット30は小レジスタ12aと関連する
要素プロセッサ20とを合わせたものである。ユニツ1
〜30は、第1図に示すように、基本的に並列構成にな
っている。そうして、高速に、1個のベクトルレジスタ
に記憶されたベクトルの要素を連続的に加算し前記バク
1−ルの要素の和を表わす結果を生成する。
第1図で、ブロック#0ないし#7の各々は第2図また
は第3図のユニット30を表わしている。
ブロック#0ないし#7を合わせて総合ユニツ1へ40
とする。複数の総合ユニット40は並列構成で接続され
る。4個の総合ユニット40が1つの接続部51で合わ
せて接続され、残りの4個の総合ユニット40が別の接
続部52で合わせて接続される。4個の総合ユニット4
0が、ブロック#0ないし#31の小レジスタ12aに
記憶された128個の要素に対応し、残りの4個の総合
ユニット40が、ブロック#32ないし#63の小しジ
スタ12aに記憶された128個の要素に対応する。こ
うして、第1図の構成によって、256個の要素に係る
和の合計を提供することができる。
接続部51は双方向性の駆動回路(BI)4.2に接続
され、接続部52は別の双方向性の駆動回路(BI)4
4に接続される。これらの駆動回路の各々の出力端は合
わせて別の接続部53に接続される。プロセッサインタ
ーフェースアダプタ(PIA)50は接続部53に接続
され、複数の総合ユニット40を構成する複数のユニッ
ト30の機能的な動作を管理する。記憶装置56はPI
A50に接続される。命令処理装置(IPU)54はP
IA50および記憶装置56に接続される。
第4図について説明する。第4図にはPIA50の溝造
が示されている。PIA50はベクトル命令レジスタ(
VIR)50aを含む。VIR50aはIPU54に接
続され、そこかろベクトル命令を受け取って一時的に記
憶する。ベクトルデータレジスタ(vDR)5obは記
憶装置56およびIPU54に接続され、記憶装置56
からデータを受け取って一時的に記憶する。ベクトル状
況レジスタ(VSR)50cは記憶装置56およびIP
U54に接続され、記憶装置56からデータを受け取っ
て一時的に記憶する。ピコ制御記憶50dはV I R
50aに接続され、VIR50aに記憶されたベクトル
命令を復号しピコ制御記憶50dの記憶しているピコ制
御ルーチンを選択する。指令レジスタ50eはピコ制御
記憶50dに接続され、さらに指令バスを介して、:L
ニット30の要素プロセッサ20にも接続され、要素プ
ロセッサ20を駆動する。バス制御50fはVDR50
bと、ユニット30の要素プロセッサ20とに接続され
、VDR50bからデータを受け取って、データバスを
介してそのデータをユニット30の要素プロセッサ20
に送る。バス制御50fは1個の要素プロセッサから他
の要素プロセッサにデータを向けることもできる。V 
S R50cも、同様に、アドレス制御50hを介して
バス制御50gに接続される。アドレス制御50hは、
vSR50cから受け取るデータに対応したアドレスを
生成する。バス制御50gは要素プロセッサ20に接続
され、アドレスバスを介して、ユニット30の要素プロ
セッサ20に、生成されたアドレスを送る。
第1図、第3図、および第4図を参照しながら、本発明
に従った要素プロセッサ20の機能的な動作を説明する
要素プロセッサ20を介して記憶装置56から1以上の
ベクトルレジスタ(VROないしVRI5)にデータを
ロードせよ、という指示がIPU54からPIA50に
既に発せられていると仮定する。さらに、ベクトルレジ
スタVROないしVR15は各々256個の要素を有す
ることができる大きさであると仮定しよう。こうして、
今、1以上のベクトルレジスタ12に256個の要素が
存在するとしよう。1以上のベクトルレジスタ12に2
56個の要素が記憶されると、IPU54はPIA50
にINTERNAL ACCUMULATE命令を実行
するように命令する。INTERNAL ACCUMU
LATE命令が実行されると、小レジスタ12aに記憶
された各々の要素が一緒に加算されて中間和要素が生成
される。
中間和要素は結果レジスタ20hに記憶される。
結果レジスタ20hはその小レジスタに接続された対応
する要素プロセッサ20に係るものである。
INTERNAL ACCUMULATE命令実行中に
、PIA50は、各ユニット30に関連した要素プロセ
ッサ20に、それに対応する小レジスタ12aから第1
および第2の要素を検索するよう、命令する。例を挙げ
て説明する。小レジスタ12aの各々に4個の要素が記
憶されると仮定する。各小レジスタ12aにある第1お
よび第2の要素は対応する要素プロセッサ20に送ら九
る。
IPU54の制御下で、PIA50は、要素プロセッサ
20に、第1および第2の要素を加算してその和を自身
の結果レジスタ20hに記憶するよう、命令する。各々
の要素プロセッサ20はこの加算を実行してその和を結
果レジスタ20hに記憶する。IPU54の制御下で、
PIA50は、各々の要素プロセッサ20に、次のこと
を命令する。それは、対応する小レジスタ12aから第
3の要素を検索すること、結果レジスタ20hに記憶さ
れている和に第3の要速を加算すること、および、さら
にその加算結果を結果レジスタ20hに記憶すること、
である。要素プロセッサ2oがこの命令を実行すると、
PIA50は、各々の要素プロセッサ20に、次のこと
を命令する。それは、対応する小レジスタ12aから第
4の要素を検索すること、対応する結果レジスタ20h
に記憶されている和に第4の要素を加算すること、およ
び、その加算結果を対応する結果レジろ夕20hに記憶
すること、である。こうして、各々のユニット30Lこ
対応した各々の要素プロセッサ20に、中間和要素が記
憶される。この中間和要素は対応する小レジスタ12a
に記憶されていた要素の4個の和を表わす。
IPU54の制御下で、PIA50は、ユニット30に
関連した全ての要素プロセッサ20に、中間和要素をま
とめて加算するよう命令する。それによって最終相を生
成する。要素プロセッサ20のこの総合的な加算を次に
説明する。
ブロック#1(前述のようにこれはユニット30である
)に記憶されている中間和要素をブロック#0に記憶さ
れている中間和要素に加算して、その和をブロック#O
に記憶する。ブロック#3に記憶されている中間和要素
をブロック#2に記憶されている中間和要素に加算して
、その和をブロック#2に記憶する。ブロック#5に記
憶されている中間和要素をブロック#4に記憶さオシて
いる中間和要素に加算して、その和をブロック#4に記
憶する。ブロック#7に記憶されている中間和要素をブ
ロック#6に記憶されている中間和要素に加算して、そ
の和をブロック#6に記憶する。
こうして、第1の総合ユニット40のブロック#0、#
2、#4、および#6に小計が記憶される。
第2ないし第8の総合ユニットもこれと同様に機能して
、ブロック#8、#10、#12、#14、#16、#
18、#20.#22.#24、#26、#28、#3
0、#32、#34、#36、#38、#40、#42
、#44.#46、#48、 #50、 #52、 #
54、 #56、 #58、#60、および#62にそ
れぞれ小計が記憶される。
ブロック#2に記憶されている小計をブロック#0に記
憶されている小計に加算して、新たな小計をブロック#
0に記憶する。ブロック#4に記憶されている小計をブ
ロック#0に記憶された新たな小計に加算して、さらに
新たな小計をブロック#Oに記憶する。ブロック#6に
記憶されている小計をブロック#0に記憶されたさらに
新たな小計に加算して、さらに新たな小計をブロック#
0に記憶する。第2ないし第8の総合ユニット40もこ
れと同様に機能して、ブロック#8、#16、#24、
#32、#40、#48、および#56にこのような新
たな小計が記憶される。
ブロック#8に記憶されている新小計をブロック#0に
記憶されている新小計に加算して、第1の新小計をブロ
ック#0に記憶する。ブロック#16に記憶されている
新小計をブロック#0に記憶された第1の新小計に加算
して、第2の新小計をブロック#0に記憶する。ブロッ
ク#24に記憶されている新小計をブロック#0に記憶
された第2の新小計に加算して、第3の新小計をブロッ
ク#0に記憶する。ブロック#32.#4.O1#48
、および#56に記憶されている新小計も同様にして連
続的に加算して、第4の新小計をブロック#32に記憶
する。双方向性の駆動回路44および42を介して、ブ
ロック#32に記憶されてい幣第4の新小計をブロック
#Oに記憶されている第3の新小計に加算して、最終の
合計をブロック#0に記憶する。この最終の合計は、1
個のベクトルレジスタに記憶されたベクトルの全ての要
素(実施例では256個)の和を表わしている。
この最終の合計は、必要な時に、I PU54によって
使用可能となる。
第3図に示す要素プロセッサ20の機能的な動作は、次
に示す4サイクルの動作に分けられる。
すなわち、局所記憶装置読取り・シフト選択サイクル(
第1サイクル)、事前正規化シフトサイクル(第2サイ
クル)、ALU演算サイクル(第3サイクル)、および
事後正規化シフトサイクル(第4サイクル)である。
PIA50が、要素プロセッサ20の各々に、それらの
小レジスタ12aの要素を連続的に加算してその結果を
結果レジスタ20hに記憶するよう、命令したと仮定す
る。PIA50は、要素プロセッサ20の各々に、次の
ことを命令する。それは、関連するベクトルレジスタ1
2の対応する小レジスタ12aから(局所記憶装置から
)各自の4個の要素を検索することである。例えば要素
プロセッサ#0の機能的な動作に着目すると、バスll
aを介して受信回路7が記憶装置56から要素Oないし
要素3を受け取って、ASMI3を介してそれらの要素
が局所記憶装置12に記憶される。要素Oないし要素3
を記憶する局所記憶装置12は第2図で示したベクトル
レジスタ12を表わしている。さらに、要素Oないし要
素3は浮動小数点要素オペランドを表わすと仮定する。
PIA50が、要素プロセッサ#0に、要素Oないし要
素3を連続的に加算しその和を結果レジスタ20hに記
憶するよう、命令すれば、その第1サイクルで、初めの
2個の要素オペランド(4要素構成のベクトルのうちの
初めの2個)を局所記憶装置12から読み取り、A S
 M 20 aを介してフラッシュ選択レジスタ20c
およびシフト選択レジスタ20bに一時的に記憶する。
その場合、各要素の指数部は指数制御部(図示せず)に
如って、そこで各指数部の大きさの差が計算さ」する。
こうして、より小さい指数部を有する要素はシフト選択
レジスタ20bヘゲートさ九、一方、より大きい指数部
を有する要素はフラッシュ選択レジスタ20cヘゲート
される。フラッシュ選択レジスタ20cおよびシフト選
択レジスタ20bは第1サイクルの終わりでラッチクロ
ックによってラッチされる。
第2サイクルの始めで、シフト動作が開始される。フラ
ッシュ選択レジスタ20cに記憶されているより大きい
指数部を有する要素は+ ALU20gの一方の入力ヘ
ゲートされる。シフト制御情報は指数制御部(図示せず
)から事前シフタ20fに送られる。事前シフタ20f
によって、より小さい指数部を有する要素(シフト選択
レジスタ20bに記憶されている)は右方にシフトされ
て、より大きい指数部を有する要素と整列される。より
大きい指数部を有する関素は、そのときALU20gの
一方の入力ヘゲートされている。同時に、ALU20g
はT/Cゲート20d、20eから適切な入力を選択し
、T/Cゲート20d、20eを介してフラッシュ選択
レジスタ20cおよびシフト選択レジスタ2’Obから
それぞれ要素を受け取る。
第3サイクルは、第3図に示す要素プロセッサ20の動
作におけるALU20gの機能的な動作のためのサイク
ルである。ALU20gは8バイトの高素桁上げ先見加
算器である。桁上げ先見加算器は1の補数計算と循環桁
上げ・再補数化を備えている。ALU20gは加算操作
を実行する。
4個の要素(例えばベクトルレジスタVROに関連した
、要素プロセッサ#0の小レジスタ12aに記憶されて
いる要素Oないし要素3)が連続して加算される。加算
の結果は、最終的に、局所記憶装置12に記憶される。
しかしながら、このステップの前に第4サイクルの間で
、事後正規化ステップを実行する必要がある。
ALU20gによって加算が終ると、第4サイクルで事
後正規化ステップが行われる。゛′事後正規化″(デー
タ処理の用語)は、ALU20gの生成した結果の先頭
のゼロデイジツ1−(16進)を検出して検出したゼロ
ディジットの個数に基づいて結果を左方にシフトすると
いうステップを含む。指数結果は、ゼロディジットのシ
フト1つに対して指数部の値を1だけ減分することによ
って調整しなければならない。ALU20gの出力ディ
ジットがゼロ状態であるかどうか、を事後シフタ20i
が検査する。そうして検出されたゼロディジットの個数
に基づいて、ALU20gの出力する結果を左方ヘシフ
トする。この左方シフトされた結果は結果レジスタ20
hに送られて、そこで一時的に記憶される。指数制御部
(図示せず)は結果要素の指数部(ALU20gから出
力される)の値を減分するかまたは増分する。これは最
終の指数部の正しい値を結果レジスタ20hヘゲートす
るためである。こうして結果要素が結果レジスタ20h
に記憶される(この結果要素のオペランドは検出された
ゼロディジットの個数に基づいて左方に適切な量だけシ
フトされたものであり、また、このオペランドの指数部
は正しい最終のべき指数値である)。必要ならば、第4
サイクルに続く次のサイクルの間に、結果要素を局所記
憶装置12へ送ってそこへ記憶する。残りの2個の要素
に関して機能的な動作を繰返すことによって、4個の要
素の和を生成しそれを結果レジスタ20hに記憶する。
この4個の要素の和が中間和要素である。
[発明の効果] 以上に説明したように、1個のベクトルを高速に処理す
ることのできるベクトルプロセッサが提供される。
【図面の簡単な説明】
第1図は本発明によるベクトルプロセッサの実施例の構
成を示すブロック図、第2図は複数の小レジスタを有す
るベクトルレジスタと、それに係る要素プロセッサと、
の関係を表わすブロック図、第3図は第2図において小
レジスタと要素プロセッサとから成るユニットの詳細を
示すブロック図、第4図は第1図のプロセッサインター
フェースアダプタ(PIA)の詳細を示すブロック図、
第5図は通常のベクトルプロセッサの構成を示すブロッ
ク図である。 出願人 インターナショナル・ビジネス・マシーンズ・
コーポレーション 代理人 弁理士 頓 宮 孝 − (外1名) 第1図 第2図 記憶褒直 第3図 第4図 アドレスへパス データハ”ス 41ν争八′人IIF
素プロセッサへ

Claims (1)

  1. 【特許請求の範囲】 それぞれベクトルの要素N個を記憶する複数のベクトル
    レジスタ手段と、複数の要素プロセッサ手段と、を有し
    、 前記複数のベクトルレジスタ手段の各々が複数の小レジ
    スタ手段を含み、該複数の小レジスタ手段の各々がベク
    トルの要素N個のうちのM個を記憶し。 前記複数の要素プロセッサ手段は各々前記小レジスタ手
    段に接続され該小レジスタ手段に記憶されたベクトルの
    M個の要素を処理し、 前記小レジスタ手段とこれに対応する前記要素プロセッ
    サ手段とで1個のユニットを成し、該ユニットを複数個
    合わせて並列構成して総合ユニットを成し、複数の総合
    ユニットが前記複数のベクトルレジスタ手段のうちの1
    個に記憶された1個めべ々kltzffiilt去N儒
    * * ;till L−@ IIm!オ乙ごンレ紬徴
    とするベクトルプロセッサ。
JP59171663A 1983-10-03 1984-08-20 ベクトルプロセツサ Pending JPS6083176A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US53831883A 1983-10-03 1983-10-03
US538318 1983-10-03

Publications (1)

Publication Number Publication Date
JPS6083176A true JPS6083176A (ja) 1985-05-11

Family

ID=24146415

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59171663A Pending JPS6083176A (ja) 1983-10-03 1984-08-20 ベクトルプロセツサ

Country Status (4)

Country Link
EP (1) EP0136538B1 (ja)
JP (1) JPS6083176A (ja)
CA (1) CA1208790A (ja)
DE (1) DE3485786T2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0167061A3 (en) * 1984-06-20 1988-07-27 Convex Computer Corporation Vector processing computer
CA1233260A (en) 1985-03-13 1988-02-23 Chuck H. Ngai High performance parallel vector processor having a modified vector register/element processor configuration
US6643765B1 (en) 1995-08-16 2003-11-04 Microunity Systems Engineering, Inc. Programmable processor with group floating point operations

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58149555A (ja) * 1982-02-27 1983-09-05 Fujitsu Ltd 並列処理装置
JPS58149556A (ja) * 1982-02-27 1983-09-05 Fujitsu Ltd 並列処理装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR860001434B1 (ko) * 1980-11-21 1986-09-24 후지쑤 가부시끼가이샤 데이타 처리시 스템
US4967343A (en) * 1983-05-18 1990-10-30 International Business Machines Corp. Pipelined parallel vector processor including parallel configured element processors for processing vector elements in parallel fashion

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58149555A (ja) * 1982-02-27 1983-09-05 Fujitsu Ltd 並列処理装置
JPS58149556A (ja) * 1982-02-27 1983-09-05 Fujitsu Ltd 並列処理装置

Also Published As

Publication number Publication date
DE3485786D1 (de) 1992-07-30
DE3485786T2 (de) 1993-02-04
EP0136538A2 (en) 1985-04-10
EP0136538B1 (en) 1992-06-24
EP0136538A3 (en) 1988-01-27
CA1208790A (en) 1986-07-29

Similar Documents

Publication Publication Date Title
EP0976027B1 (en) ARITHMETIC PROCESSOR combining finite field arithmetic and modular integer arithmetic
US4075704A (en) Floating point data processor for high speech operation
EP0053457B1 (en) Data processing apparatus
US4179734A (en) Floating point data processor having fast access memory means
US4876644A (en) Parallel pipelined processor
US4888682A (en) Parallel vector processor using multiple dedicated processors and vector registers divided into smaller registers
US4967343A (en) Pipelined parallel vector processor including parallel configured element processors for processing vector elements in parallel fashion
EP0450802A2 (en) Arithmetic unit
EP0195245B1 (en) A high performance parallel vector processor having a modified vector register/element processor configuration
US4866652A (en) Floating point unit using combined multiply and ALU functions
US4631672A (en) Arithmetic control apparatus for a pipeline processing system
JPH0139131B2 (ja)
US4761753A (en) Vector processing apparatus
EP0141232B1 (en) Vector processing unit
US3001708A (en) Central control circuit for computers
US5424969A (en) Product-sum operation unit
JPS6083176A (ja) ベクトルプロセツサ
US3293420A (en) Computer with compatible multiplication and division
US3500027A (en) Computer having sum of products instruction capability
EP0314342B1 (en) Parallel pipelined computer processor
JPS59106043A (ja) パイプライン演算回路
JP2654451B2 (ja) データ出力方法
JPH0330905B2 (ja)
JPH0528870B2 (ja)
JPS61296435A (ja) マイクロプログラム制御方式