JPS6250867B2 - - Google Patents
Info
- Publication number
- JPS6250867B2 JPS6250867B2 JP10153080A JP10153080A JPS6250867B2 JP S6250867 B2 JPS6250867 B2 JP S6250867B2 JP 10153080 A JP10153080 A JP 10153080A JP 10153080 A JP10153080 A JP 10153080A JP S6250867 B2 JPS6250867 B2 JP S6250867B2
- Authority
- JP
- Japan
- Prior art keywords
- address
- register
- vector
- element storage
- storage area
- 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
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)
Description
【発明の詳細な説明】
本発明は、ベクトル・レジスタを効率的にアク
セスすることが出来ると共に、ベクトル・レジス
タのアクセス制御を簡単に行うことが出来るベク
トル・データ処理装置に関するものである。
セスすることが出来ると共に、ベクトル・レジス
タのアクセス制御を簡単に行うことが出来るベク
トル・データ処理装置に関するものである。
第1図はベクトル・データ処理装置の概要を示
すものであつて、1はメモリ、2はベクトル・レ
ジスタ、3は演算器をそれぞれ示している。ベク
トル・データ処理装置においては、主メモリ1と
ベクトル・レジスタ2との間でデータのストアお
よびロードが行われ、演算器3はベクトル・レジ
スタ2内のエレメント・データ列を用いて演算を
行う。ベクトル・レジスタ2は複数個設けられて
いるものであり、各ベクトル・レジスタは複数の
エレメント・データ、例えば#0エレメント・デ
ータないし#127エレメント・データを格納す
る。従来技術においては、例えば8個のベクト
ル・レジスタが存在するときには、8個のバンク
が設けられており、各バンクに1個のベクトル・
レジスタが割当てられている。このような従来方
式においては、或るアクセス要求元Aがベクト
ル・レジスタVRiをアクセスしていると仮定する
と、アクセス要求元Aがベクトル・レジスタVRi
の#0エレメント・データないし#127エレメン
ト・データの全てをアクセスし終るまで、他のア
クセス要求元がベクトル・レジスタVRiをアクセ
スすることが出来ない。このような欠点を除去す
るため、ベクトル・レジスタの#iエレメント格
納域と#i+1エレメント格納域を異なるバンク
に割付けることが提案されているが、この提案さ
れた方式を公知の技術を用いて実現しようとする
と、ベクトル・レジスタのアクセス制御が非常に
複雑になる。更に、アクセス制御を簡単化する為
に、読み出し側、書き込み側にインタリーブ分の
バツフアをおくことも考えられるが物量が膨大と
なり現実的でない。
すものであつて、1はメモリ、2はベクトル・レ
ジスタ、3は演算器をそれぞれ示している。ベク
トル・データ処理装置においては、主メモリ1と
ベクトル・レジスタ2との間でデータのストアお
よびロードが行われ、演算器3はベクトル・レジ
スタ2内のエレメント・データ列を用いて演算を
行う。ベクトル・レジスタ2は複数個設けられて
いるものであり、各ベクトル・レジスタは複数の
エレメント・データ、例えば#0エレメント・デ
ータないし#127エレメント・データを格納す
る。従来技術においては、例えば8個のベクト
ル・レジスタが存在するときには、8個のバンク
が設けられており、各バンクに1個のベクトル・
レジスタが割当てられている。このような従来方
式においては、或るアクセス要求元Aがベクト
ル・レジスタVRiをアクセスしていると仮定する
と、アクセス要求元Aがベクトル・レジスタVRi
の#0エレメント・データないし#127エレメン
ト・データの全てをアクセスし終るまで、他のア
クセス要求元がベクトル・レジスタVRiをアクセ
スすることが出来ない。このような欠点を除去す
るため、ベクトル・レジスタの#iエレメント格
納域と#i+1エレメント格納域を異なるバンク
に割付けることが提案されているが、この提案さ
れた方式を公知の技術を用いて実現しようとする
と、ベクトル・レジスタのアクセス制御が非常に
複雑になる。更に、アクセス制御を簡単化する為
に、読み出し側、書き込み側にインタリーブ分の
バツフアをおくことも考えられるが物量が膨大と
なり現実的でない。
本発明は、上記の考察に基づくものであつて、
簡単な構成でベクトル・レジスタを効率的にアク
セスすることが出来ると共に、ベクトル・レジス
タのアクセス制御を簡単に行い得るようになつた
ベクトル・データ処理装置を提供することを目的
としている。そしてそのため、本発明のベクト
ル・データ処理装置は、複数のエレメント格納域
からなる複数のベクトル・レジスタのエレメント
格納域を順次にアクセスしつつ処理を行うベクト
ル・データ処理装置において、 複数のベクトル・レジスタをn個(nは2以上
の整数)のバンク単位に分割し、全てのベクト
ル・レジスタの同じ番号のエレメント格納域を同
じバンクに割当て、ベクトル・レジスタをエレメ
ント格納域の番号順にインタリーブする構成と
し、 各バンクをアクセスするn個のアドレス・レジ
スタをインタリーブ順に接続すると共に1クロツ
ク毎にアドレス・レジスタのアドレスが次のアド
レス・レジスタに移送されるように構成し、 アクセス開始時に初期アドレスを先頭のアドレ
ス・レジスタに入力する手段を設け、アクセス開
始時以外においては、最後のアドレス・レジスタ
からアドレスが出力された時、当該アドレスに基
づいて最後のバンクがアクセスされている場合に
は当該アドレスを+1して先頭のアドレス・レジ
スタに入力し、そうでない場合には当該アドレス
をそのまま先頭のアドレス・レジスタに入力する
手段を設けた ことを特徴とするものである。以下、本発明を図
面を参照しつつ説明する。
簡単な構成でベクトル・レジスタを効率的にアク
セスすることが出来ると共に、ベクトル・レジス
タのアクセス制御を簡単に行い得るようになつた
ベクトル・データ処理装置を提供することを目的
としている。そしてそのため、本発明のベクト
ル・データ処理装置は、複数のエレメント格納域
からなる複数のベクトル・レジスタのエレメント
格納域を順次にアクセスしつつ処理を行うベクト
ル・データ処理装置において、 複数のベクトル・レジスタをn個(nは2以上
の整数)のバンク単位に分割し、全てのベクト
ル・レジスタの同じ番号のエレメント格納域を同
じバンクに割当て、ベクトル・レジスタをエレメ
ント格納域の番号順にインタリーブする構成と
し、 各バンクをアクセスするn個のアドレス・レジ
スタをインタリーブ順に接続すると共に1クロツ
ク毎にアドレス・レジスタのアドレスが次のアド
レス・レジスタに移送されるように構成し、 アクセス開始時に初期アドレスを先頭のアドレ
ス・レジスタに入力する手段を設け、アクセス開
始時以外においては、最後のアドレス・レジスタ
からアドレスが出力された時、当該アドレスに基
づいて最後のバンクがアクセスされている場合に
は当該アドレスを+1して先頭のアドレス・レジ
スタに入力し、そうでない場合には当該アドレス
をそのまま先頭のアドレス・レジスタに入力する
手段を設けた ことを特徴とするものである。以下、本発明を図
面を参照しつつ説明する。
第2図は本発明におけるベクトル・レジスタ関
連部分のデータ系のブロツク図、第3図は本発明
におけるベクトル・レジスタ関連部分のアドレス
系の1実施例のブロツク図、第4図はアクセス要
求元がエレメント格納域をアクセスできるタイ
ム・スロツトを説明する図、第5図は第3図の実
施例の動作を説明するタイム・チヤートである。
連部分のデータ系のブロツク図、第3図は本発明
におけるベクトル・レジスタ関連部分のアドレス
系の1実施例のブロツク図、第4図はアクセス要
求元がエレメント格納域をアクセスできるタイ
ム・スロツトを説明する図、第5図は第3図の実
施例の動作を説明するタイム・チヤートである。
第2図において、4はロード・パイプライン、
5と6は演算パイプライン、7はストア・パイプ
ライン、8ないし10は書込レジスタ、11ない
し18は入力レジスタ、B0ないしB7はバン
ク、19ないし26は出力レジスタ、27ないし
33はバツフア・レジスタをそれぞれ示してい
る。
5と6は演算パイプライン、7はストア・パイプ
ライン、8ないし10は書込レジスタ、11ない
し18は入力レジスタ、B0ないしB7はバン
ク、19ないし26は出力レジスタ、27ないし
33はバツフア・レジスタをそれぞれ示してい
る。
ロード・パイプライン4は主メモリ1上のデー
タをベクトル・レジスタに格納するためのもので
ある。演算パイプライン5は例えば加算パイプラ
インであり、また、演算パイプライン6は例えば
乗算パイプラインである。演算パイプライン5,
6には、指定されたベクトル・レジスタから読出
されたエレメント・データ列が順次に入力され、
演算結果の列が指定されたベクトル・レジスタに
逐次に格納される。ストア・パイプライン7は、
ベクトル・レジスタのデータを主メモリ1に書込
むためのものである。ベクトル・レジスタは、8
個のバンクB0ないしB7から構成されている。
第2図から判るように、ベクトル・レジスタVRj
の#(8m+i)エレメント格納域はバンクBiに
割当てられる。なお、iは0,1,2,3,……
7であり、1個のベクトル・レジスタのエレメン
ト・データ数が128個のときにはmは0,1,
2,……15であり、VRjはVR0,VR1……VRn
である。書込レジスタ8は入力レジスタ11ない
し18に接続されている。また、図面に完全に示
されていないが、書込レジスタ9,10も同様で
ある。出力レジスタ19は、レジスタ27,2
9,30,31および33に接続されている。図
面に完全に示されていないが、出力レジスタ20
ないし26のそれぞれも同様である。演算パイプ
ライン5の一方の入力には2個のバツフア・レジ
スタ27と28が設けられ、他方の入力には1個
のバツフア・レジスタ29しか設けられていない
が、このような構成はエレメント・データ間の同
期をとるために採用されていものである。例え
ば、ベクトル・レジスタVR0のエレメント・デ
ータとベクトル・レジスタVR1のエレメント・
データとを演算パイプライン5で演算する場合、
後述するようにベクトル・レジスタVR0の#i
エレメント・データがバツフア・レジスタ27に
入力されるより1サイクル遅れてベクトル・レジ
スタVR1の#iエレメント・データがバツフ
ア・レジスタ29に入力されるが、バツフア・レ
ジスタ28はベクトル・レジスタVR0の#iエ
レメント・データを1サイクル遅延させるもので
ある。
タをベクトル・レジスタに格納するためのもので
ある。演算パイプライン5は例えば加算パイプラ
インであり、また、演算パイプライン6は例えば
乗算パイプラインである。演算パイプライン5,
6には、指定されたベクトル・レジスタから読出
されたエレメント・データ列が順次に入力され、
演算結果の列が指定されたベクトル・レジスタに
逐次に格納される。ストア・パイプライン7は、
ベクトル・レジスタのデータを主メモリ1に書込
むためのものである。ベクトル・レジスタは、8
個のバンクB0ないしB7から構成されている。
第2図から判るように、ベクトル・レジスタVRj
の#(8m+i)エレメント格納域はバンクBiに
割当てられる。なお、iは0,1,2,3,……
7であり、1個のベクトル・レジスタのエレメン
ト・データ数が128個のときにはmは0,1,
2,……15であり、VRjはVR0,VR1……VRn
である。書込レジスタ8は入力レジスタ11ない
し18に接続されている。また、図面に完全に示
されていないが、書込レジスタ9,10も同様で
ある。出力レジスタ19は、レジスタ27,2
9,30,31および33に接続されている。図
面に完全に示されていないが、出力レジスタ20
ないし26のそれぞれも同様である。演算パイプ
ライン5の一方の入力には2個のバツフア・レジ
スタ27と28が設けられ、他方の入力には1個
のバツフア・レジスタ29しか設けられていない
が、このような構成はエレメント・データ間の同
期をとるために採用されていものである。例え
ば、ベクトル・レジスタVR0のエレメント・デ
ータとベクトル・レジスタVR1のエレメント・
データとを演算パイプライン5で演算する場合、
後述するようにベクトル・レジスタVR0の#i
エレメント・データがバツフア・レジスタ27に
入力されるより1サイクル遅れてベクトル・レジ
スタVR1の#iエレメント・データがバツフ
ア・レジスタ29に入力されるが、バツフア・レ
ジスタ28はベクトル・レジスタVR0の#iエ
レメント・データを1サイクル遅延させるもので
ある。
第3図は本発明におけるベクトル・レジスタ関
連部分のアドレス系の1実施例のブロツク図であ
る。第3図において、34は命令制御部、35は
初期アドレス設定部、36ないし43は例えば3
ビツトの8進カウンタ、44は+1回路、G1と
G2はゲート、45はOR回路、46ないし53
はアドレス・レジスタ、54はキヤリー検出部を
それぞれ示している。また、L,ER2,ER3,
EW1,S,FR2,FR3およびFW1はベクト
ル・レジスタのアクセス要求元である。アクセス
要求元Lは、主メモリから送られて来るデータを
ベクトル・レジスタに格納するためのものであ
る。アクセス要求元ER2は、例えば被演算数と
なるエレメント・データ列をベクトル・レジスタ
から読出して演算パイプライン5に供給するもの
である。アクセス要求元ER3は、演算数となる
エレメント・データ列をベクトル・レジスタから
読出して演算パイプライン5に供給するものであ
る。アクセス要求元EW1は、演算パイプライン
5の演算結果の列をベクトル・レジスタに書込む
ためのものである。アクセス要求元Sは、ベクト
ル・レジスタからエレメント・データ列を読出し
て主メモリに書込むためのものである。アクセス
要求元FR2,FR3およびFW1は演算パイプラ
イン6に対するものであり、FR2はER2に、
FR3はER3に、FW1はEW1にそれぞれ相当
するものである。命令制御部34は、命令をデコ
ードし、アクセス要求元L,ER2,ER3,EW
1,S,FR2,FR3,FW1を起動すると共に
演算パイプライン5,6の制御を行うものであ
る。初期アドレス設定部35は、命令制御部34
から送られて来る初期アドレスをOR回路45を
経由してアドレス・レジスタ46にセツトするた
めのものである。8進カウンタ36はアクセス要
求元Lのアクセスが第幾番目のバンクに対してま
で行われたかをカウントするものであり、8進カ
ウンタ37は、アクセス要求元ER2のアクセス
が第幾番目のバンクに対してまで行われたかをカ
ウントするものである。その他の8進カウンタ3
8ないし43も同様な機能を有している。ベクト
ル命令制御部34は、ベクトル命令を解読し、ベ
クトル・レジスタへのアクセスを起動する時に、
対応する8進カウンタの初期設定を行う。+1回
路44は、アドレス・レジスタ53より送られて
来るアドレスを+1するものである。アドレス・
レジスタ46ないし47のそれぞれは、対応する
バンクのエレメント格納域を指定するものであ
り、1サイクル毎に左側のアドレス・レジスタの
内容が隣接する右側のアドレス・レジスタに移さ
れる。また、最右端のアドレス・レジスタ53の
内容はタイム・スロツトの終りで+1回路44お
よびゲートG2に送られる。キヤリー検出部54
は#0タイム・スロツトの開始時には8進カウン
タ36の内容を、#1タイム・スロツト開始時に
は8進カウンタ37の内容を、同様にして#7タ
イム・スロツト開始時には8進カウンタ43の内
容を検査する。そして検査時点において、8進カ
ウンタにキヤリーが存在する場合にはゲートG1
を開き、ゲートS2を閉じる。キヤリーが存在し
ない場合には、ゲートG1を閉じ、ゲートG2を
開く。
連部分のアドレス系の1実施例のブロツク図であ
る。第3図において、34は命令制御部、35は
初期アドレス設定部、36ないし43は例えば3
ビツトの8進カウンタ、44は+1回路、G1と
G2はゲート、45はOR回路、46ないし53
はアドレス・レジスタ、54はキヤリー検出部を
それぞれ示している。また、L,ER2,ER3,
EW1,S,FR2,FR3およびFW1はベクト
ル・レジスタのアクセス要求元である。アクセス
要求元Lは、主メモリから送られて来るデータを
ベクトル・レジスタに格納するためのものであ
る。アクセス要求元ER2は、例えば被演算数と
なるエレメント・データ列をベクトル・レジスタ
から読出して演算パイプライン5に供給するもの
である。アクセス要求元ER3は、演算数となる
エレメント・データ列をベクトル・レジスタから
読出して演算パイプライン5に供給するものであ
る。アクセス要求元EW1は、演算パイプライン
5の演算結果の列をベクトル・レジスタに書込む
ためのものである。アクセス要求元Sは、ベクト
ル・レジスタからエレメント・データ列を読出し
て主メモリに書込むためのものである。アクセス
要求元FR2,FR3およびFW1は演算パイプラ
イン6に対するものであり、FR2はER2に、
FR3はER3に、FW1はEW1にそれぞれ相当
するものである。命令制御部34は、命令をデコ
ードし、アクセス要求元L,ER2,ER3,EW
1,S,FR2,FR3,FW1を起動すると共に
演算パイプライン5,6の制御を行うものであ
る。初期アドレス設定部35は、命令制御部34
から送られて来る初期アドレスをOR回路45を
経由してアドレス・レジスタ46にセツトするた
めのものである。8進カウンタ36はアクセス要
求元Lのアクセスが第幾番目のバンクに対してま
で行われたかをカウントするものであり、8進カ
ウンタ37は、アクセス要求元ER2のアクセス
が第幾番目のバンクに対してまで行われたかをカ
ウントするものである。その他の8進カウンタ3
8ないし43も同様な機能を有している。ベクト
ル命令制御部34は、ベクトル命令を解読し、ベ
クトル・レジスタへのアクセスを起動する時に、
対応する8進カウンタの初期設定を行う。+1回
路44は、アドレス・レジスタ53より送られて
来るアドレスを+1するものである。アドレス・
レジスタ46ないし47のそれぞれは、対応する
バンクのエレメント格納域を指定するものであ
り、1サイクル毎に左側のアドレス・レジスタの
内容が隣接する右側のアドレス・レジスタに移さ
れる。また、最右端のアドレス・レジスタ53の
内容はタイム・スロツトの終りで+1回路44お
よびゲートG2に送られる。キヤリー検出部54
は#0タイム・スロツトの開始時には8進カウン
タ36の内容を、#1タイム・スロツト開始時に
は8進カウンタ37の内容を、同様にして#7タ
イム・スロツト開始時には8進カウンタ43の内
容を検査する。そして検査時点において、8進カ
ウンタにキヤリーが存在する場合にはゲートG1
を開き、ゲートS2を閉じる。キヤリーが存在し
ない場合には、ゲートG1を閉じ、ゲートG2を
開く。
第4図はアクセス要求元がエレメント格納域を
アクセスできるタイム・スロツトを説明するもの
である。第4図から判るように、アクセス要求元
Lは、#0タイム・スロツトで#0エレメント格
納域、#1タイム・スロツトで#1エレメント格
納域、#2タイム・スロツトで#2エレメント格
納域、#3タイム・スロツトで#3エレメント格
納域、#4タイム・スロツトで#4エレメント格
納域、#5タイム・スロツトで#5エレメント格
納域、#6で#6エレメント格納域、#7タイ
ム・スロツトで#7エレメント格納域をアクセス
することが出来る。アクセス要求元ER2は、
#1タイム・スロツトで#0エレメント格納域、
#2タイム・スロツトで#1エレメント格納域、
#3タイム・スロツトで#2エレメント格納域、
#4タイム・スロツトで#3エレメント格納域、
#5タイム・スロツトで#4エレメント格納域、
#6タイム・スロツトで#5エレメント格納域、
#7タイム・スロツトで#6エレメント格納域、
#0タイム・スロツトで#7エレメント格納域を
アクセスすることが出来る。他のアクセス要求元
がエレメント格納域をアクセスできるタイム・ス
ロツトも同様に図示のとおりである。なお、#i
(i=0ないし7)のエレメント格納域をアクセ
スできるタイミングにおいては(8m+i)のエ
レメント格納域がアクセスすることが出来るのは
説明するまでもない。
アクセスできるタイム・スロツトを説明するもの
である。第4図から判るように、アクセス要求元
Lは、#0タイム・スロツトで#0エレメント格
納域、#1タイム・スロツトで#1エレメント格
納域、#2タイム・スロツトで#2エレメント格
納域、#3タイム・スロツトで#3エレメント格
納域、#4タイム・スロツトで#4エレメント格
納域、#5タイム・スロツトで#5エレメント格
納域、#6で#6エレメント格納域、#7タイ
ム・スロツトで#7エレメント格納域をアクセス
することが出来る。アクセス要求元ER2は、
#1タイム・スロツトで#0エレメント格納域、
#2タイム・スロツトで#1エレメント格納域、
#3タイム・スロツトで#2エレメント格納域、
#4タイム・スロツトで#3エレメント格納域、
#5タイム・スロツトで#4エレメント格納域、
#6タイム・スロツトで#5エレメント格納域、
#7タイム・スロツトで#6エレメント格納域、
#0タイム・スロツトで#7エレメント格納域を
アクセスすることが出来る。他のアクセス要求元
がエレメント格納域をアクセスできるタイム・ス
ロツトも同様に図示のとおりである。なお、#i
(i=0ないし7)のエレメント格納域をアクセ
スできるタイミングにおいては(8m+i)のエ
レメント格納域がアクセスすることが出来るのは
説明するまでもない。
第5図イ,ロは第3図の実施例の動作を説明す
る図である。第5図において二重のアンダライン
「〓〓」は開始時を示し、点線のアンダライン
「……」は処理されなかつたことを示している。
第5図イはアクセス要求元Lがベクトル・レジス
タVR0をアクセスし、アクセス要求元ER2がベ
クトル・レジスタVR3をアクセスする場合を示
している。#0タイム・スロツトにおいて、ベク
トル・レジスタVR0の#0エレメント格納域を
示す初期アドレスADLがアドレス・レジスタ4
6にセツトされ、ベクトル・レジスタVR0の
#0エレメント・データの書込みが行われる。以
下、1クロツク毎にこのアドレスADLはアドレ
ス・レジスタ47,48……53に移され、ベク
トル・レジスタVR0の#1,#2……#7エレ
メント・データの書込みが行われる。この書込み
が行われる度に8進カウンタ36の内容が+1さ
れ、ベクトル・レジスタVR0の#7エレメン
ト・データの書込みが終了した時、8進カウンタ
36の内容が「000」となり、最上位桁からキヤ
リーが出力される。次の#0タイム・スロツトで
キヤリー検出部54が8進カウンタ36の内容を
調べる。この場合には、キヤリーが存在するの
で、初期アドレスADLを+1したものがアドレ
ス・レジスタ46にセツトされ、ベクトル・レジ
スタVR0の#8エレメント・データの書込みが
行われる。次の#1タイム・スロツトでは、アド
レス(ADL+1)がレジスタ47に移され、ベ
クトル・レジスタVR0の#9エレメント・デー
タの書込みが行われる。
る図である。第5図において二重のアンダライン
「〓〓」は開始時を示し、点線のアンダライン
「……」は処理されなかつたことを示している。
第5図イはアクセス要求元Lがベクトル・レジス
タVR0をアクセスし、アクセス要求元ER2がベ
クトル・レジスタVR3をアクセスする場合を示
している。#0タイム・スロツトにおいて、ベク
トル・レジスタVR0の#0エレメント格納域を
示す初期アドレスADLがアドレス・レジスタ4
6にセツトされ、ベクトル・レジスタVR0の
#0エレメント・データの書込みが行われる。以
下、1クロツク毎にこのアドレスADLはアドレ
ス・レジスタ47,48……53に移され、ベク
トル・レジスタVR0の#1,#2……#7エレ
メント・データの書込みが行われる。この書込み
が行われる度に8進カウンタ36の内容が+1さ
れ、ベクトル・レジスタVR0の#7エレメン
ト・データの書込みが終了した時、8進カウンタ
36の内容が「000」となり、最上位桁からキヤ
リーが出力される。次の#0タイム・スロツトで
キヤリー検出部54が8進カウンタ36の内容を
調べる。この場合には、キヤリーが存在するの
で、初期アドレスADLを+1したものがアドレ
ス・レジスタ46にセツトされ、ベクトル・レジ
スタVR0の#8エレメント・データの書込みが
行われる。次の#1タイム・スロツトでは、アド
レス(ADL+1)がレジスタ47に移され、ベ
クトル・レジスタVR0の#9エレメント・デー
タの書込みが行われる。
アクセス要求元ER2に対しては#1タイム・
スロツトで、初期アドレスADER2がアドレス・
レジスタ46にセツトされ、ベクトル・レジスタ
VR3の#0エレメント・データの読出しが行わ
れる。以下、図示のようにしてベクトル・レジス
タVR3のアクセスが行われる。
スロツトで、初期アドレスADER2がアドレス・
レジスタ46にセツトされ、ベクトル・レジスタ
VR3の#0エレメント・データの読出しが行わ
れる。以下、図示のようにしてベクトル・レジス
タVR3のアクセスが行われる。
第5図ロは、ベクトル・レジスタVR1にデー
タをロードする場合において、主メモリからのデ
ータ転送が途切れた場合を示している。データを
ベクトル・レジスタVR1へロードするための初
期アドレスADLが#0タイム・スロツトでアド
レス・レジスタ46にセツトされ、ベクトル・レ
ジスタVR1の#0エレメント・データの書込み
が行われる。この書込みが完了すると、8進カウ
ンタ36の内容は「001」となる。#1タイム・
スロツトでは初期アドレスADLがアドレス・レ
ジスタ47に移され、ベクトル・レジスタVR1
の#1エレメント・データの書込みが行われる。
この書込みが完了すると、8進カウンタ36の内
容は「010」となる。#2タイム・スロツトで初
期アドレスADLはアドレス・レジスタ48に移
される。このとき、主メモリからデータが送られ
て来ていないとすると、ベクトル・レジスタVR
1の#2エレメント格納域にデータを書込むこと
が出来ず、8進カウンタ36の内容も+1されな
い。#7タイム・スロツトが終了し、次の#0タ
イム・スロツトが開始されると、初期アドレス
ADLがアドレス・レジスタ53より出力され、+
1回路44およびゲートG2に送られる。次の
#0タイム・スロツトでキヤリー検出部54が8
進カウンタ36の内容を検査すると、8進カウン
タ36の内容が「010」であり、キヤリーが存在
しないので、ゲートG1を閉じ、ゲートG2を開
く。それ故、次の#0タイム・スロツトでは、初
期アドレスADLがそのままアドレス・レジスタ
46にセツトされる。次の#1タイム・スロツト
では初期アドレスがアドレス・レジスタ47に移
され、次の#2タイム・スロツトではアドレス・
レジスタ48に移される。8進カウンタ36の内
容が「010」であるので、ベクトル・レジスタVR
1の#2エレメント格納域に対するデータ書込み
動作が可能となるが、この時点で主メモリから
#2エレメント・データ以降のデータが送られて
来る、ベクトル・レジスタVR1の#2エレメン
ト格納域に対するデータ書込みが行われる。以下
ベクトル・レジスタVR1の#3エレメント格納
域、#4エレメント格納域……に対するエレメン
ト・データの書込みが行われる。
タをロードする場合において、主メモリからのデ
ータ転送が途切れた場合を示している。データを
ベクトル・レジスタVR1へロードするための初
期アドレスADLが#0タイム・スロツトでアド
レス・レジスタ46にセツトされ、ベクトル・レ
ジスタVR1の#0エレメント・データの書込み
が行われる。この書込みが完了すると、8進カウ
ンタ36の内容は「001」となる。#1タイム・
スロツトでは初期アドレスADLがアドレス・レ
ジスタ47に移され、ベクトル・レジスタVR1
の#1エレメント・データの書込みが行われる。
この書込みが完了すると、8進カウンタ36の内
容は「010」となる。#2タイム・スロツトで初
期アドレスADLはアドレス・レジスタ48に移
される。このとき、主メモリからデータが送られ
て来ていないとすると、ベクトル・レジスタVR
1の#2エレメント格納域にデータを書込むこと
が出来ず、8進カウンタ36の内容も+1されな
い。#7タイム・スロツトが終了し、次の#0タ
イム・スロツトが開始されると、初期アドレス
ADLがアドレス・レジスタ53より出力され、+
1回路44およびゲートG2に送られる。次の
#0タイム・スロツトでキヤリー検出部54が8
進カウンタ36の内容を検査すると、8進カウン
タ36の内容が「010」であり、キヤリーが存在
しないので、ゲートG1を閉じ、ゲートG2を開
く。それ故、次の#0タイム・スロツトでは、初
期アドレスADLがそのままアドレス・レジスタ
46にセツトされる。次の#1タイム・スロツト
では初期アドレスがアドレス・レジスタ47に移
され、次の#2タイム・スロツトではアドレス・
レジスタ48に移される。8進カウンタ36の内
容が「010」であるので、ベクトル・レジスタVR
1の#2エレメント格納域に対するデータ書込み
動作が可能となるが、この時点で主メモリから
#2エレメント・データ以降のデータが送られて
来る、ベクトル・レジスタVR1の#2エレメン
ト格納域に対するデータ書込みが行われる。以下
ベクトル・レジスタVR1の#3エレメント格納
域、#4エレメント格納域……に対するエレメン
ト・データの書込みが行われる。
以上の説明から明らかなように、本発明によれ
ば、簡単な構成によりベクトル・レジスタを効率
的にアクセスできると共に、ベクトル・レジスタ
のアクセス制御を簡単に行い得るという効果が得
られる。
ば、簡単な構成によりベクトル・レジスタを効率
的にアクセスできると共に、ベクトル・レジスタ
のアクセス制御を簡単に行い得るという効果が得
られる。
第1図はベクトル・データ処理の概要を示す
図、第2図は本発明におけるベクトル・レジスタ
関連部分のデータ系のブロツク図、第3図は本発
明におけるベクトル・レジスタ関連部分のアドレ
ス系の1実施例のブロツク図、第4図はアクセス
要求元がエレメント格納域をアクセスできるタイ
ム・スロツトを説明する図、第5図は第3図の実
施例の動作を説明するタイム・チヤートである。 4……ロード・パイプライン、5と6……演算
パイプライン、7……ストア・パイプライン、8
ないし10……書込レジスタ、11ないし18…
…入力レジスタ、B0ないしB7……バンク、1
9ないし26……出力レジスタ、27ないし33
……バツフア・レジスタ、34……命令制御部、
5……初期アドレス設定部、36ないし43……
3ビツトの8進カウンタ、44……+1回路、G
1とG2……ゲート、44……OR回路、46な
いし53……アドレス・レジスタ、54……キヤ
リー検出部。
図、第2図は本発明におけるベクトル・レジスタ
関連部分のデータ系のブロツク図、第3図は本発
明におけるベクトル・レジスタ関連部分のアドレ
ス系の1実施例のブロツク図、第4図はアクセス
要求元がエレメント格納域をアクセスできるタイ
ム・スロツトを説明する図、第5図は第3図の実
施例の動作を説明するタイム・チヤートである。 4……ロード・パイプライン、5と6……演算
パイプライン、7……ストア・パイプライン、8
ないし10……書込レジスタ、11ないし18…
…入力レジスタ、B0ないしB7……バンク、1
9ないし26……出力レジスタ、27ないし33
……バツフア・レジスタ、34……命令制御部、
5……初期アドレス設定部、36ないし43……
3ビツトの8進カウンタ、44……+1回路、G
1とG2……ゲート、44……OR回路、46な
いし53……アドレス・レジスタ、54……キヤ
リー検出部。
Claims (1)
- 【特許請求の範囲】 1 複数のエレメント格納域からなる複数のベク
トル・レジスタのエレメント格納域を順次にアク
セスしつつ処理を行うベクトル・データ処理装置
において、 複数のベクトル・レジスタをn個(nは2以上
の整数)のバンク単位に分割し、全てのベクト
ル・レジスタの同じ番号のエレメント格納域を同
じバンクに割当て、ベクトル・レジスタをエレメ
ント格納域の番号順にインタリーブする構成と
し、 各バンクをアクセスするn個のアドレス・レジ
スタをインタリーブ順に接続すると共に1クロツ
ク毎にアドレス・レジスタのアドレスが次のアド
レス・レジスタに移送されるように構成し、 アクセス開始時に初期アドレスを先頭のアドレ
ス・レジスタに入力する手段を設け、 アクセス開始時以外においては、最後のアドレ
ス・レジスタからアドレスが出力された時、当該
アドレスに基づいて最後のバンクがアクセスされ
ている場合には当該アドレスを+1して先頭のア
ドレス・レジスタに入力し、そうでない場合には
当該アドレスをそのまま先頭のアドレス・レジス
タに入力する手段を設けた ことを特徴とするベクトル・データ処理装置。 2 複数のアクセス要求元と1対1の対応をなす
複数のn進カウンタを設け、 アクセス要求元により指定されるベクトル・レ
ジスタのエレメント格納域に対するデータの書込
み/読出しが行われる度に対応するn進カウンタ
のカウント値を+1し、 最後のアドレス・レジスタからアドレスが出力
された時、対応するn進カウンタのカウント値を
調べ、当該カウント値が所定値の場合には最後の
アドレス・レジスタから出力されるアドレスを+
1して先頭のアドレス・レジスタに入力し、そう
でない場合には最後のアドレス・レジスタから出
力されるアドレスをそのまま先頭のアドレス・レ
ジスタに入力する ことを特徴とする特許請求の範囲第1項記載のベ
クトル・データ処理装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP10153080A JPS5727362A (en) | 1980-07-24 | 1980-07-24 | Vector data processor |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP10153080A JPS5727362A (en) | 1980-07-24 | 1980-07-24 | Vector data processor |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS5727362A JPS5727362A (en) | 1982-02-13 |
| JPS6250867B2 true JPS6250867B2 (ja) | 1987-10-27 |
Family
ID=14303009
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP10153080A Granted JPS5727362A (en) | 1980-07-24 | 1980-07-24 | Vector data processor |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS5727362A (ja) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS58122787A (ja) * | 1982-01-14 | 1983-07-21 | Toshiba Corp | 化合物半導体発光素子の製造方法 |
| JPS60220467A (ja) * | 1984-04-17 | 1985-11-05 | Fujitsu Ltd | ベクトルレジスタのアクセス制御回路 |
-
1980
- 1980-07-24 JP JP10153080A patent/JPS5727362A/ja active Granted
Also Published As
| Publication number | Publication date |
|---|---|
| JPS5727362A (en) | 1982-02-13 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPS6028015B2 (ja) | 情報処理装置 | |
| JPH0374434B2 (ja) | ||
| GB1445746A (en) | Data processing system | |
| JPH0248931B2 (ja) | ||
| US3292152A (en) | Memory | |
| JPH0410108B2 (ja) | ||
| US5539902A (en) | Vector data processing apparatus wherein a time slot for access to a bank of vector registors is assigned based on memory access time information | |
| JPS623461B2 (ja) | ||
| JPH0282330A (ja) | ムーブアウト・システム | |
| JPS6120906B2 (ja) | ||
| JPS6120907B2 (ja) | ||
| JPH0552539B2 (ja) | ||
| JP2716254B2 (ja) | リストベクトル処理装置 | |
| JPS5928289A (ja) | バツフア記憶制御方式 | |
| JP2576589B2 (ja) | 仮想記憶アクセス制御方式 | |
| JPS6129031B2 (ja) | ||
| JPS5947668A (ja) | 情報処理装置 | |
| JPS6120905B2 (ja) | ||
| JPS6014335A (ja) | 情報処理装置 | |
| JPS5852750A (ja) | ブランチ命令制御方式 | |
| JPH04266140A (ja) | アドレス変換バッファ装置 | |
| JPS61194566A (ja) | ベクトルデ−タ参照制御方式 | |
| JPS61133440A (ja) | デ−タ処理装置 | |
| JPS6316785B2 (ja) | ||
| JPH0348549B2 (ja) |