[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JPS6120907B2 - - Google Patents

Info

Publication number
JPS6120907B2
JPS6120907B2 JP10554980A JP10554980A JPS6120907B2 JP S6120907 B2 JPS6120907 B2 JP S6120907B2 JP 10554980 A JP10554980 A JP 10554980A JP 10554980 A JP10554980 A JP 10554980A JP S6120907 B2 JPS6120907 B2 JP S6120907B2
Authority
JP
Japan
Prior art keywords
vector
register
vector register
bank
arithmetic unit
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
Application number
JP10554980A
Other languages
English (en)
Other versions
JPS5730078A (en
Inventor
Hiroshi Tamura
Keiichiro Uchida
Tetsuo Okamoto
Hideo Myanaga
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP10554980A priority Critical patent/JPS5730078A/ja
Publication of JPS5730078A publication Critical patent/JPS5730078A/ja
Publication of JPS6120907B2 publication Critical patent/JPS6120907B2/ja
Granted legal-status Critical Current

Links

Classifications

    • 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

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

【発明の詳細な説明】
本発明は、ベクトル・レジスタをインタリーブ
方式を採用して多バンク構成とすると共に、各種
の処理パイプラインの段数を等しくするようにし
たベクトル・データ処理装置に関するものであ
る。 第1図はベクトル・データ処理装置の概要を示
すものであつて、MSは主メモリ、VRはベクト
ル・レジスタ、EUは演算器をそれぞれ示してい
る。ベクトル・データ処理装置においては、主メ
モリMSとベクトル・レジスタVRの間でデータの
ストアおよびロードが行われ、演算器EUはベク
トル・レジスタVR内のエレメント・データ列の
演算を行う。ベクトル・レジスタVRは複数個設
けられているものであり、各ベクトル・レジスタ
は複数のエレメント・データ列、例えば#0エレ
メント・データないし#127エレメント・データ
を格納する。従来技術においては、例えば論理的
に8個のベクトル・レジスタが存在する場合に
は、8個のバンクが設けられ、各バンクに1個の
ベクトル・レジスタが割当てられている。このよ
うな従来方式においては、或るアクセス要求元A
が#iベクトル・レジスタをアクセスしていると
仮定すると、アクセス要求元Aが#iのベクト
ル・レジスタの#0のエレメント・データないし
#127エレメント・データをアクセス終るまで他
のアクセス要求元が#iのベクトル・レジスタを
アクセスすることが出来ず、この点が高速化の妨
げになつている。また、ベクトル・データ処理装
置に例えば加算器と乗算器を設け、加算器の加算
結果を乗算器の入力データとすることが行われて
いるが、従来方式では加算が全て終了してから乗
算を実行しており、効率的ではなかつた。 本発明は、上記の考察に基づくものであつて、
ベクトル・レジスタのアクセスを効率的に行いえ
ること、及び種類の異なる演算を含む処理を効率
的に実行できること及び演算の制御を簡単に行な
えること等の特徴を有するベクトル・データ処理
装置を提供することを目的としている。そしてそ
のため、本発明のベクトル・データ処理装置は、
複数のエレメントから成るベクトル・レジスタを
複数のバンク単位で構成し、複数のアクセスを発
生するアクセス元がそれぞれ各バンクのエレメン
トを順次にアクセスして演算を行うベクトル・デ
ータ処理装置において、ベクトル・レジスタのi
番目のエレメントとi+1番目のエレメントを異
なるバンク単位に割付けると共に各ベクトル・レ
ジスタの同一番号のエレメントを同一のバンク単
位に割付ける構成とし、且つ複数の演算器の段数
を等しくしたことを特徴とするものである。以
下、本発明を図面を参照しつつ説明する。 第2図はベクトル・レジスタのデータ系回路の
1実施例のブロツク図、第3図はベクトル・レジ
スタのアドレス系回路の1実施例のブロツク図、
第4図は処理シーケンスを説明する図である。 図において、1ないし3は書込レジスタ、4と
5は読出レジスタ、6はバツフア・レジスタ、7
は読出レジスタ、8と9も読出レジスタ、10は
バツフア・レジスタ、11は第1の演算器、12
は第2の演算器、13はストア・パイプライン、
14はロード・パイプライン、B0ないしB7は
バンク、VR0ないしVRnはベクトル・レジス
タ、15ないし22はアドレス・レジスタ、23
ないし30はアクセス要求選択回路、31ないし
38はバンク内アドレス・レジスタをそれぞれ示
している。 書込レジスタ1は、バンクB0ないしB7に接
続されている。図面には完全に示されていない
が、書込レジスタ2と3のそれぞれも同様であ
る。ベクトル・レジスタはバンクB0ないしB7
で構成されている。ベクトル・レジスタVR0な
いしVRnのそれぞれの#0エレメントはバンクB
0、#1エレメントはバンクB1、#2エレメン
トはバンクB2、#3エレメントはB3、#4エ
レメントはバンクB4、#5エレメントはバンク
B5、#6エレメントはバンクB6、#7エレメ
ントはバンクB7、#8エレメントはバンクB0
に格納されている。以下、同様にしてエレメント
は図示のようにバンクに割当てられている。バン
クB0ないしB7のそれぞれからの読出データ
は、読出レジスタ4に入力することが出来る。図
面に示されていないが、これらのバンクからの読
出データは、同様にして読出レジスタ5,7,
8,9に入力することが出来る。バツフア・レジ
スタ6と10は、エレメント間の同期をとるもの
であつて、1クロツク分の遅延を与えるものであ
る。第1の演算器11は例えば加算パイプライン
であり、第2の演算器には例えば乗算パイプライ
ンである。ベクトル・レジスタVR0のベクト
ル・データとベクトル・レジスタVR1のベクト
ル・データとを加算し、加算結果をベクトル・レ
ジスタVRnに書込む命令を実行する場合には、先
ずベクトル・レジスタVR0から#0、#1…
#mエレメントが順次に読出され、レジスタ4に
供給される。続いて1クロツクおくれてベクト
ル・レジスタVR1から#0、#1…#mエレメ
ントが読出され、レジスタ5に供給される。読出
されたベクトル・データはバツフア・レジスタ6
で同期が取られ、ベクトル・レジスタVR0の
#iエレメントとベクトル・レジスタVR1の
#iエレメントが同時に第1の演算器11に入力
される。第1の演算器11は入力されたエレメン
トを演算処理して出力する。第1の演算器11か
ら出力される演算結果は、ベクトル・レジスタ
VRnの#0、#1…#mエレメント格納域に書込
まれる。第2の演算器12も同様な処理を行う。
ロード・パイプライン14は主メモリから送られ
て来るベクトル・データをベクトル・レジスタに
書込むための処理を行うものであり、ストア・パ
イプライン13はベクトル・レジスタからベクト
ル・データを読出して主メモリに書込むための処
理を行うものである。 第3図は、ベクトル・レジスタのアドレス系回
路の1実施例のブロツク図である。図において、
EW1は演算器11の出力を書込むためのアクセ
ス元、ER2は演算器11の第1演算ベクトル・
データを読出すためのアクセス元、ER3は演算
器11の第2の演算ベクトル・データを読出すた
めのアクセス元である。FW1,FR2およびFR
3は演算器12に対するものであつて、FW1は
EW1、FR2はER2、FR3はER3に相当して
いる。Lは主メモリからのデータをベクトル・レ
ジスタに書込むためのアクセス元であり、Sは主
メモリへ送るべきデータをベクトル・レジスタか
ら読出すためのアクセス元である。アドレス・レ
ジスタ15ないし22のそれぞれは、例えば13ビ
ツト構成のものであり、下位3ビツトはバンクを
指定し、残りビツトはバンク内アドレスを示して
いる。アクセス要求選択回路23ないし30のそ
れぞれは、所定のアルゴリズムに従つてアクセス
要求を選択するものである。図には完全に示され
ていないが、アドレス・レジスタ15ないし22
のそれぞれは、アクセス要求選択回路23ないし
30に接続されている。 いま、アクセス元ER2がベクトル・レジスタ
VR0のベクトル・データを読出すべくアクセス
要求を発したと仮定する。バンクB0のベクト
ル・レジスタVR0の#0エレメントが読出され
ると、アドレス・レジスタ16は+1される。次
のタイム・スロツトではバンクB1のベクトル・
レジスタVR0の#1エレメントが読出される。
このようにして、ベクトル・レジスタVR0のエ
レメントが順次に読出される。 第4図は処理のシーケンスを説明する図であ
る。ベクトル命令の形式は例えば
【表】 とうものである。0Pは命令コード部、R1は第
1オペランド部、R2は第2オペランド部、R3
は第3オペランド部を示している。ベクトル命令
は、第2オペランド部で指定されたベクトル・レ
ジスタの内容と第3オペランド部で指定されたベ
クトル・レジスタの内容とを0Pコードで指定さ
れるように演算し、その演算結果を第1オペラン
ド部で指定されたベクトル・レジスタに書込むこ
とを指示するものである。いま、0Pコードが加
算を、第1オペランド部がベクトル・レジスタ
VRnを、第2オペランド部がベクトル・レジスタ
VR0を、第3オペランド部がベクトル・レジス
タVR1を指定し、更にベクトル・レジスタVR0
のアクセスが#1タイムスロツトで開始されたと
仮定する。そうすると、ベクトル・レジスタVR
0の#0エレメントは、#2タイムスロツトでは
レジスタ4にセツトされ、#3タイムスロツトで
はレジスタ6にセツトされる。ベクトル・レジス
タVR1の#0エレメントは#3タイムスロツト
でレジスタ5にセツトされる。#4タイムスロツ
トでは、ベクトル・レジスタVR0の#0エレメ
ントとベクトル・レジスタVR1の#0エレメン
トとが第1の演算器11に入力される。第1の演
算器11がステージd、e、fを有するとする
と、ステージdは入力ステージに対応する。#5
タイムスロツトではステージeの演算処理が行わ
れ、#6タイムスロツトではステージfの演算処
理が行われ、#7タイムスロツトでは#0エレメ
ントの加算結果がレジスタ1にセツトされ、#8
タイムスロツトでこの加算結果がベクトル・レジ
スタVRnの#0エレメント格納域に書込まれる。 本発明においては、第1の演算器11の段数と
第2の演算器12の段数とを等しくしている。こ
のようにすることにより複数の演算器の制御が一
様に扱え、極めて簡単になる。例えば加算の結果
を用いて乗算を行うような場合、第1の演算器1
1から出力される#0エレメントの加算結果がベ
クトル・レジスタに書込まれた後、直ちに第2の
演算器12を動作させることが出来る。第4図で
具体的に説明すると、#0エレメントの加算結果
は#8タイムスロツトでベクトル・レジスタVRn
の#0エレメント格納域に書込まれるが、この
#8タイムスロツトの次に来る#4タイムスロツ
トでベクトル・レジスタVRnの#0エレメントを
読出し、そして次のタイミングで第2の演算器1
2へ送ることが出来る。もう一方の入力ベクト
ル・データ例えばVR2の#0エレメントは#5
タイムスロツトでベクトル・レジスタから読出さ
れ、そして次のタイミングで、第2の演算器12
に送られる。このように、演算器を起動するに当
り、所定の簡単な制御により実現できる。複数の
演算器があつて各々が異なる段数で構成される場
合は、次の演算器の起動の為に演算に際して、必
要な演算器が使用されていないこと及び必要なベ
クトル・レジスタへのオペランド・アクセスが他
のアクセスとぶつかりなく行えること等の条件判
定が必要なため、前の命令動作として行われてい
る演算器が不使用になるタイミングや他の動作に
よるレジスタ・アクセスのタイミングをチエツク
する必要が生じ、極めて複雑な制御となる。 以上の説明から明らかなように、本発明によれ
ば、簡単な制御の下にベクトル・レジスタのアク
セスを効率的に行い得ると共に種類の異なる演算
を含む処理を効率的に実行することが出来る。
【図面の簡単な説明】
第1図はベクトル・データ処理装置の概要を示
す図、第2図はベクトル・レジスタのデータ系回
路の1実施例のブロツク図、第3図はベクトル・
レジスタのアドレス系回路の1実施例のブロツク
図、第4図は処理シーケンスを説明する図であ
る。 1ないし3…書込レジスタ、4と5…読出レジ
スタ、6…バツフア・レジスタ、7…読出レジス
タ、8と9…読出レジスタ、10…バツフア・レ
ジスタ、11…第1の演算器、12…第2の演算
器、13…ストア・パイプライン、14…ロード
パイプライン、B0ないしB7…バンク、VR0
ないしVRn…ベクトル・レジスタ、15ないし2
2…アドレス・レジスタ、23ないし30…アク
セス要求選択回路、31ないし38…バンク内ア
ドレス・レジスタ。

Claims (1)

    【特許請求の範囲】
  1. 1 複数のエレメントから成るベクトル・レジス
    タを複数のバンク単位で構成し、複数のアクセス
    を発生するアクセス元がそれぞれ各バンクのエレ
    メントを順次にアクセスして演算を行うベクト
    ル・データ処理装置において、ベクトル・レジス
    タのi番目のエレメントとi+1番目のエレメン
    トを異なるバンク単位に割付けると共に各ベクト
    ル・レジスタの同一番号のエレメントを同一のバ
    ンク単位に割付ける構成とし、且つ複数の演算器
    の段数を等しくしたことを特徴とするベクトル・
    データ処理装置。
JP10554980A 1980-07-31 1980-07-31 Vector data processor Granted JPS5730078A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10554980A JPS5730078A (en) 1980-07-31 1980-07-31 Vector data processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10554980A JPS5730078A (en) 1980-07-31 1980-07-31 Vector data processor

Publications (2)

Publication Number Publication Date
JPS5730078A JPS5730078A (en) 1982-02-18
JPS6120907B2 true JPS6120907B2 (ja) 1986-05-24

Family

ID=14410647

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10554980A Granted JPS5730078A (en) 1980-07-31 1980-07-31 Vector data processor

Country Status (1)

Country Link
JP (1) JPS5730078A (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4980817A (en) * 1987-08-31 1990-12-25 Digital Equipment Vector register system for executing plural read/write commands concurrently and independently routing data to plural read/write ports
JPH03297673A (ja) * 1990-04-17 1991-12-27 Matsushita Electric Ind Co Ltd プラテン駆動装置

Also Published As

Publication number Publication date
JPS5730078A (en) 1982-02-18

Similar Documents

Publication Publication Date Title
US4507728A (en) Data processing system for parallel processing of different instructions
JPS6028015B2 (ja) 情報処理装置
JPH0248931B2 (ja)
JPH10187661A (ja) コンピュータにおけるスカラ値をベクトルに記入する方法
JPS6120907B2 (ja)
JPS6049340B2 (ja) 分岐命令先取り方式
JPS6120906B2 (ja)
US5819081A (en) Method of executing a branch instruction of jumping to a subroutine in a pipeline control system
JPS601655B2 (ja) デ−タプリフェツチ方式
JPS6250867B2 (ja)
JPS6122830B2 (ja)
JPH06230963A (ja) メモリアクセス制御装置
JP2000194556A (ja) 命令ルックアヘッドシステムおよびハ―ドウェア
US5854919A (en) Processor and its operation processing method for processing operation having bit width exceeding data width of bit storage unit
JPH0452488B2 (ja)
JP2716254B2 (ja) リストベクトル処理装置
JPS60178540A (ja) 情報処理装置におけるバイパス制御方式
JPS5896346A (ja) 階層型演算方式
JPS6119072B2 (ja)
JPH01206462A (ja) ベクトル計算機
JPS6120905B2 (ja)
JPS61133440A (ja) デ−タ処理装置
JPH0823820B2 (ja) アドレス・オーバラップ・チェック処理装置
JPS6014335A (ja) 情報処理装置
JPH0364903B2 (ja)