JPS6131502B2 - - Google Patents

Info

Publication number
JPS6131502B2
JPS6131502B2 JP55098741A JP9874180A JPS6131502B2 JP S6131502 B2 JPS6131502 B2 JP S6131502B2 JP 55098741 A JP55098741 A JP 55098741A JP 9874180 A JP9874180 A JP 9874180A JP S6131502 B2 JPS6131502 B2 JP S6131502B2
Authority
JP
Japan
Prior art keywords
vector
register
vector register
read
write
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
JP55098741A
Other languages
English (en)
Other versions
JPS5725069A (en
Inventor
Koichiro Omoda
Shigeo Nagashima
Shunichi Torii
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP9874180A priority Critical patent/JPS5725069A/ja
Priority to EP81105749A priority patent/EP0044562B1/en
Priority to EP86106710A priority patent/EP0208870B1/en
Priority to DE8181105749T priority patent/DE3177192D1/de
Priority to DE8686106710T priority patent/DE3177235D1/de
Publication of JPS5725069A publication Critical patent/JPS5725069A/ja
Priority to US06/594,301 priority patent/US4651274A/en
Publication of JPS6131502B2 publication Critical patent/JPS6131502B2/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
    • G06F15/8076Details on data register access
    • G06F15/8084Special arrangements thereof, e.g. mask or switch
    • 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/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3867Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Complex Calculations (AREA)

Description

【発明の詳細な説明】 〔発明の利用分野〕 本発明は、ベクトル演算を高速処理するベクト
ルデータ処理装置に関し、特に、主記憶と演算装
置の間にあつて、プログラム命令で指定されるベ
クトルデータ格納手段(ベクトルレジスタとよば
れる)を有するベクトルデータ処理装置に関す
る。
〔発明の背景〕
主記憶と演算装置の間だけで多量のベクトルデ
ータを転送し合うと転送オーバヘツドが大きいと
いう問題解決のために、主記憶と演算装置の間に
(物理的には演算装置の近くに)ベクトルレジス
タを設ける技術が知られている(例えば米国特許
第4128880号)。この技術によれば、主記憶から読
出して演算装置へ供給するベクトルデータを保持
することによつて、また、演算装置から出力され
る中間的な演算結果のベクトルデータを保持する
ことによつて、主記憶からの重複したベクトルデ
ータの読出しおよび無駄な書込みを軽減させるこ
とが可能となる。
このベクトルレジスタは一般的には複数個設置
され、各々のベクトルレジスタはベクトルデータ
の各要素を保持するための複数のアドレス位置を
含んでいる。この従来技術では、たとえば、主記
憶から読出したベクトルデータをベクトルレジス
タへ書込む動作と、そのベクトルデータを演算装
置へ転送する動作と並列して行なうことは、特定
の場合にしか出来なかつた。すなわち、書き込む
べきベクトルデータの先頭の要素を書き込むタイ
ミングから、そのベクトルデータの転送動作を開
始するときのみ書き込み動作と転送動作を同時に
行うことができた。書き込むべきベクトルデータ
の少くとも一つのベクトル要素が一担書き込まれ
た後では、もはや転送動作は並行して実行できず
ベクトルデータの全要素が書き込まれた後でのみ
転送動作を開始できた。転送動作を指示する命令
がいつ解読されるかにより、転送開始をしたいタ
イミングが変わる。したがつて、上記従来技術で
は、書込み動作と転送動作を並列に実行できる場
合は多くない。
〔発明の目的〕
本発明の目的は、このような点に鑑み、ベクト
ルデータの書込み動作の開始タイミングと異なつ
たタイミングでそのベクトルデータの転送動作を
開始でき、かつ上記書き込み動作と並列に転送動
作を行なうのに適したベクトルデータ処理装置を
提供することにある。
〔発明の概要〕
上述の従来技術で先頭の要素の書きタイミング
でのみしかベクトルデータの転送開始がでないの
は、ベクトルレジスタに書き込まれたベクトル要
素を何らかの手段により直接ベクトルレジスタの
出力側に転送する方法を採つているためと考えら
れる。
本発明では、各ベクトルレジスタを互いに独立
に動作可能なように構成し、かつ、各ベクトルレ
ジスタに読出しカウンタと書込みカウンタを設
け、 さらに異なるベクトルレジスタに属するカウン
タ(読出しカウンタ又は書込みカウンタ)を互い
に並行に駆動するだけでなく、同一のベクトルレ
ジスタに属する読出しカウンタと書込みカウンタ
をも並行に駆動可能な制御回路を設けた。
これにより異なるベクトルレジスタについての
ベクトルデータの書込み又は読出しが並行に行え
るだけでなく、同一のベクトルレジスタについて
もベクトルデータの書込みと読出しを並行に行う
ことができる。また、各ベクトルレジスタが互い
に独立に動作可能であるため各ベクトルレジスタ
の読み出し、書き込みは他のベクトルレジスタの
動作に無関係に開始可能となる。
〔発明の実施例〕
第1図に於て、1は主記憶、2,3,12はア
ドレス・レジスタ、4はインクリメント・レジス
タ、10,14,15は選択器、11はアドレス
加算器、20はエレメントカウンタ(EC)、21
はカウントアツプ(+1加算)回路(CUP)、2
2はエレメント・レングス・レジスタ(ELR)、
23は比較器(COMP)、24はセツト信号
(SET)、25はリセツト信号(RST)、26は一
致信号、27は演算制御回路、36はリクエスト
信号(REQ)、200は命令バツフア、201は
命令読出し線、202は命令終了信号である。1
16,123,130,137は書込みカウン
タ、117,122,124,129,131,
136,138,143はカウントアツプ回路、
118,120,125,127,132,13
4,139,141は解読器、119,126,
133,140はプログラム命令で指定可能なベ
クトルレジスタ、121,128,135,14
2は読出しカウンタ、100,102,104,
106,108,110,112,114はリセ
ツト信号、101,103,105,107,1
09,111,113,115はセツト信号、1
44〜146は選択器、147は演算器、203
は演算指示信号である。ベクトルレジスタ11
9,126,133,140は、l個のレジスタ
群から構成されl個のデータ(ベクトル要素)を
格納できる。以下の説明では、処理すべきベクト
ルデータの要素数(ベクトル長)nがn≦lの場
合について説明するが、n>lの場合では、デー
タをl個の処理単位に分割して処理すれば良い。
本実施例では各ベクトルレジスタごとに互いに
並列に動作しうる書込み回路と読み出し回路とが
設けられている。すなわち書込みカウンタ11
6、カウントアツプ回路117、デコーダ118
がベクトルレジスタ119の書き込み回路であ
り、読み出しカウンタ121、カウントアツプ回
路122、デコーダ120が同じベクトルレジス
タ119に対する読み出し回路である。書込みカ
ウンタ116はカウントアツプ回路117の動作
により、ベクトルレジスタ119内の書込みアド
レスを順次デコーダ118に出力し、このデコー
ダ118により、この書込みアドレス位置にベク
トル要素が書き込まれる。同様に、読み出しカウ
ンタ121は、カウントアツプ回路122の動作
により、ベクトルレジスタ119内の読み出しア
ドレスをデコーダ120へ出力し、デコーダ12
0により、この読み出しアドレス位置よりベクト
ル要素を読み出す。カウントアツプ回路117と
122は演算制御回路27から別々に与えられる
セツト信号103,101に応答して読み出し動
作又は書き込み動作をする。したがつて、書込み
カウンタ116と読み出しカウンタ121は互い
に独立に動作可能であり、かつ、互いに異なる記
憶位置を同時に指定することができる。以上のこ
とは他のベクトルレジスタ126,133,14
0についてもあてはまる。
これらのベクトルレジスタ119,126,1
33,140に対するベクトルデータの読み出
し、書き込みは演算制御回路27が命令をデコー
ドして、選択的に指令することができる。これら
のベクトルレジスタは主記憶1から読み出された
ベクトルデータ又は演算器147から出力される
ベクトルデータを構成する複数のベクトル要素を
順次格納する。また、これらのベクトルレジスタ
一つから読み出されたベクトルデータを構成する
複数のベクトル要素は順次、演算器147へ選択
器145又は146を介してオペランドとして与
えられる。演算器147はパイプライン的にこれ
らの入力オペランドに対して、演算制御回路27
から線203を介して指定される演算を実行し、
結果ベクトルをベクトルレジスタ119,12
6,133,140のいずれかへ線160を介し
て与える。このように、ベクトルレジスタを用い
ていろいろの演算をくり返すことができる。ま
た、一つのベクトルレジスタから順次読み出され
たベクトル要素は選択器144、線155、選択
器15を介してアドレス加算器11にも与えるこ
とができ、主記憶1からベクトルデータをフエツ
チするアドレスを連続的に発生するのに用いられ
る。本発明においては、ベクトルレジスタからベ
クトルデータを順次受取り処理するかもしくはベ
クトルレジスタにベクトルデータを順次供給する
ベクトル処理回路を複数個用いる所にも特徴があ
るが、本実施例においては上述の動作説明から明
らかなとおり、演算器147、アドレス加算器1
1が本発明にいうベクトル処理回路の一つにそれ
ぞれに相当する。しかし、本発明はこれらのベク
トル処理回路に限定されない。以下に述べる動作
から分かるように、本実施例ではベクトルレジス
タへのベクトルデータの読み出しと書き込みが並
行して行えるところに特徴がある。
したがつて、本発明にいうベクトル処理回路
は、演算器147のごとく、ベクトルレジスタか
らベクトルデータを受け取り処理し、かつ、ベク
トルレジスタにベクトルデータを供給するもので
もよく、また、加算器11のごとく単にベクトル
データをベクトルレジスタから受取り処理するも
のでもよい。要するに、ベクトルレジスタから読
み出されたベクトルデータを順次受取り処理する
ことと、ベクトルデータをベクトルデータに順次
供給することとの少くとも一方を行う回路であれ
ばよい。
以下では、ベクトルデータD(i)の内、間接
アドレスAとBの和A(1〜n)+B(1〜n)
で指定されるアドレスを有する要素のみを主記憶
1から読出す場合の本実施例の動作を第2図を参
照して説明する。
ここで間接アドレスベクトルA(1〜n)の各
要素A(i)は、あるベクトルD(1〜m)の先
頭要素D(1)からある要素D(i)までのアドレス
差を示す。したがつて、ベクトルA(1〜n)に
よりベクトルD(1〜m)の内の選ばれた一部の
ベクトル要素を選択的に指定することができる。
このアドレス差が間接アドレスと呼ばれる。この
ベクトルAは主記憶1上にそれぞれ一定の間隔で
規則正しく記憶されている。ベクトルB,Dにつ
いて同様である。これらの一定間隔をインクリメ
ント値と呼ぶ。
(1) A(1〜n)の読出し 最初、エレメント数nをエレメント・レング
ス・レジスタ22に、インクリメント値をイン
クリメント・レジスタ4に、先頭の要素A1の
アドレスを選択器10を介してアドレス・レジ
スタ2にセツトする。
次に、演算制御回路27は、命令バツフア2
00より命令読出し線201を介して、A(1
〜n)を主記憶1から読出して、ベクトルレジ
スタ119に格納する命令を取込む。演算制御
回路27は上記命令を解読して演算に必要な制
御を次のように行なう。まず、リセツト信号2
5,102を送出して、それぞれエレメントカ
ウンタ20、書込みカウンタ116をゼロクリ
アする。引続いて、セツト信号24を送出し
て、エレメントカウント20の値をカウントア
ツプ回路21でプラス1する。このとき、カウ
ントアツプ回路21の出力は、比較器23に入
力され、エレメント・レングス・レジスタ22
の値と比較される。この比較演算結果、両者の
値が同じであれば、一致信号26として演算制
御回路27に送出され、終了の判定に使用され
る。上記セツト信号24は一致信号26が検出
されるまでnサイクルの間、各サイクル送出さ
れ、このセツト信号24と同期して、リクエス
ト信号36が主記憶1に送出される。第2図の
タイムチヤートは、A1の読出しリクエスト、
即ち最初のリクエスト信号36が送出される時
点以降の時間関係を示している。第2図に示す
ように、リクエスト信号36はエレメント1か
らnまで順に毎サイクル送出される。これと同
期して読出しアドレスは順次次のように演算制
御回路27の制御のもとで生成する。最初のエ
レメントA1のアドレスは、アドレス・レジス
タ2の値とデータ“0”を、それぞれ、選択器
14,15を介してアドレス加算器11に入力
し、両者の値を加算(実質的にはアドレス・レ
ジスタ2の値そのもの)することにより生成さ
れ、加算結果はアドレス・レジスタ12を介し
て主記憶1に送出される。このとき、また加算
結果を選択器10を介してアドレス・レジスタ
2にセツトして、次のエレメントA2のアドレ
スを生成するのに使用する。2番目のエレメン
トA2のアドレスは、1番目のエレメントのア
ドレス計算でセツトしたアドレス・レジスタ2
の値とインクリメント・レジスタ4の値を、そ
れぞれ、選択器14,15を介してアドレス加
算器11に入力し、両者の値を加算して生成さ
れ、加算結果はアドレス・レジスタ12を介し
て主記憶1に送出されると同時に、選択器10
を介してアドレス・レジスタ2にセツトし、第
3番目のエレメントA2のアドレスを生成する
際に使用する。以下同様の操作により順次アド
レスを生成し、リクエスト信号36と同期して
毎サイクル主記憶に送出するようにパイプライ
ン制御される。
引続いて、リクエスト信号36を4サイクル
デイレイさせて、間接ベクトルA(1〜n)を
格納すべきベクトルレジスタ119に対する書
込みタイミングを示すセツト信号103を送出
する。セツト信号103が送出されると、書込
みカウンタ(WC)116の値をカウントアツ
プ回路117に入力して、プラス1し、その結
果をカウンタ116にストアする。このとき同
時に、カウントアツプ前の書込みカウンタ11
6の値を解読器39で解読し、解読結果により
指定されるベクトルレジスタ119のレジスタ
番号に、主記憶1から読出した間接アドレス・
ベクトルA(1〜n)を格納する。なお、主記
憶1からの読出しデータは、リクエスト信号3
6の送出後、4サイクルでベクトルレジスタ1
19に到達すると仮定している。第2図に示す
ように、ベクトルレジスタ119への間隔ベク
トルA(1〜n)の書込みは、最初のセツト信
号103が送出されてから、即ち、最初のリク
エスト信号36が送出されてから、4サイクル
後に開始され、nサイクルの間、毎回行なわれ
る。
(2) B(1〜n)の読出し 上記処理の終了後、演算制御回路27が命令
バツフア200に命令終了信号202を送出す
る。続いて、間接ベクトルBのインクリメント
値をインクリメント・レジスタ4に、先頭アド
レスをアドレス・レジスタ2にセツトする。次
に、演算制御回路27は、命令バツフア200
より次に処理すべき命令、即ち、B(1〜n)
を主記憶1から読出して、ベクトルレジスタ1
26に格納する命令を線201を介して取込ん
で、処理に必要な制御を行なう。まず、リセツ
ト信号25,106を送出して、それぞれエレ
メントカウント20、書込みカウンタ123を
ゼロクリアする。引続いて、セツト信号24、
リクエスト信号36(セツト信号24と同
期)、間接ベクトルBを格納すべきベクトルレ
ジスタ126に対するセツト信号107(リク
エスト信号36の4サイクルのデイレイ)を送
出する。リクエスト信号36に同期した読出し
アドレスの生成方法は、間接ベクトルA(1〜
n)を読出す場合と同様である。セツト信号1
07と同期して、主記憶1から読出されるB
(1〜n)を順次、主記憶1にデータ線150
を介して接続されたベクトルレジスタ126に
格納するが、この場合の制御は、書込みカウン
タ123、カウントアツプ回路124、解読器
125を続いて、間接ベクトルAの場合と同様
に行なわれる。第2図に示すように、リクエス
ト信号36は、A(n)をベクトルレジスタ1
19に格納後、4サイクル目から送出が開始さ
れ、n回毎サイクル送出される。また、ベクト
ルレジスタ126へのB(1〜n)の格納は、
リクエスト信号36より4サイクル遅れて順次
行なわれる。
(3) A(1〜n)+B(1〜n)の演算とD(A
(1〜n)+B(1〜n))の読出し (2)の処理終了後、演算制御回路27が命令バ
ツフア200に命令終了信号202を送出す
る。続いて、D(1〜m)の先頭アドレス、即
ち要素D1のアドレスをアドレス・レジスタ3
にセツトする。
次に、演算制御回路27は、命令バツフア2
00より命令読出し線201を介して、A(1
〜n)とB(1〜n)を、それぞれ、ベクトル
レジスタ119と126から読出して演算器1
47で加算し、加算結果をベクトルレジスタ1
33に格納する命令と、ベクトルレジスタ13
3に格納されるA(1〜n)+B(1〜n)を
間接アドレスとし、D(A(1〜n)+B(1
〜n))を主記憶1から読出してベクトルレジ
スタ140に格納する命令を取込んで、処理に
必要な制御を行なう。まず、リセツト信号2
5,100,104,110,108,114
を送出して、それぞれ、エレメントカウンタ2
0、読出しカウンタ121、読出しカウンタ1
28、書込みカウンタ130、読出しカウンタ
135、書込みカウンタ137をゼロクリアす
る。引続いて、セツト信号24を送出して、エ
レメントカウント20の値をカウントアツプ回
路21でプラス1する。このとき、カウントア
ツプ回路21の出力は比較器23に入力され、
エレメント・レングス・レジスタ22の値と比
較され、前述のごとく終了の判定に使用され
る。セツト信号24は一致信号26が検出され
るまでn回毎サイクル送出されるが、この信号
と同期してベクトルレジスタ119,126に
対するセツト信号101、セツト信号105が
演算制御回路27から送出される。また、セツ
ト信号101の1サイクルのデイレイである演
算指示信号203、2サイクルのデイレイであ
るセツト信号111が送出される。セツト信号
101が送出されるとベクトルレジスタ119
に格納されているA(1〜n)の値を読出し、
線151と選択器145を介して演算器147
に、セツト信号105が送出されるとベクトル
レジスタ126に格納されているB(1〜n)
の値を読出し、線152と選択器146を介し
て演算器147に入力される。なお、A(1〜
n)をベクトルレジスタ119から読出す場
合、読出しカウンタ121、カウントアツプ回
路122、解読器120を用いて制御し、ま
た、B(1〜n)をベクトルレジスタ126か
ら読出す場合、読出しカウンタ128、カウン
トアツプ回路129、解読器127を用いて制
御する。ベクトルレジスタ119,126から
読出されたベクトルデータA(1〜n)、B
(1〜n)は、演算器147に入力され、加算
を指示する演算指示信号203に基づいて1サ
イクルで加算され、演算結果A(1〜n)+B
(1〜n)は演算後1サイクルで線160を介
してベクトルレジスタ133に格納される。演
算結果の格納は、セツト信号111と同期して
行なわれ、このとき、書込みカウンタ130、
カウントアツプ回路131、解読器132によ
り制御される。ベクトルレジスタ119と12
6から、それぞれ、最初のエレメントA1,B
1を読出す時点は、第2図に示すように前回の
処理に於て、B(n)を主記憶1から読出して
ベクトルレジスタ126に格納後、4サイクル
目であり、以後n回毎サイクル順次読出され
る。また、演算器147での演算は読出しから
1サイクル後、演算結果のベクトルレジスタ1
40への格納は読出しから2サイクル後であ
る。
引続いて、セツト信号101の3サイクルの
デイレイであるセツト信号109、およびリク
エスト信号36が、また、セツト信号101の
7サイクルのデイレイであるセツト信号115
が演算制御回路27から送出される。セツト信
号109が送出されるとベクトルレジスタ13
3からベクトルデータA(1〜n)+B(1〜
n)が読出され、線153、選択器144、線
155、選択器15を介してアドレス加算器1
1に転送される。アドレス加算器の他方の入力
には、アドレス・レジスタ3の値が入力され、
これら2入力が加算され、D(A(1〜n)+
B(1〜n))の読出しアドレスとして、アド
レス・レジスタ12を介して主記憶1に転送さ
れる。このアドレス転送と同期して、前述のリ
クエスト信号36が演算制御回路27から主記
憶1に送出される。なお、ベクトルレジスタ1
33の読出しは、読出しカウンタ135、カウ
ントアツプ回路136、解読器134により制
御される。また、主記憶1からの読出しベクト
ルデータD((1〜n)+B(1〜n))は、リ
クエスト信号36の送出後、4サイクルで線1
50を介してベクトルレジスタ140に到達
し、格納される。この格納は、セツト信号11
5と同期し、書込みカウンタ137、カウント
アツプ回路138、解読器139により制御さ
れる。第2図に示すように、ベクトルレジスタ
133からの間接ベクトルデータA(1〜n)
+B(1〜n)の読出しと主記憶1に対するベ
クトルデータD(A(1〜n)+B(1〜n))
の読出しリクエストは、演算器147から出力
される間接ベクトルデータ(A1+B1)をベク
トルレジスタ133に格納する1サイクル後か
ら送出が開始され、以後、順次n回毎サイクル
送出される。したがつて、ベクトルレジスタ1
33では、間接ベクトルデータを新たに書き込
みつつ、すでに書き込まれたベクトル要素をこ
の新たな書き込みと並行して(書込まれたベク
トル要素を1サイクル遅れて)読み出している
ので、間接ベクトルデータのすべての要素の書
き込みが完了するまで待つ必要なく、処理の高
速化が図れる。なお、主記憶1からの読出しデ
ータD(A(1〜n)+B(1〜n))は、読出
しリクエスト、即ちリクエスト信号36の送出
から4サイクル遅れてベクトルレジスタ140
に格納される。最後のエレメントD(A(n)
+B(n))がベクトルレジスタ140に格納
された後、演算制御回路27が命令バツフア2
00に命令終了信号202を送出して処理を完
了する。なお、例えば、ベクトルレジスタ14
0に格納したベクトルデータD(A(1〜n)
+B(1〜n))を順次演算器147に転送す
るような場合には、読出しカウンタ142(こ
れは、前述の如く、リセツト信号112により
ゼロクリアされてから使用される。)、カウント
アツプ回路143、解読器141により制御さ
れ、セツト信号113と同期して読出されるこ
とになる。主記憶1からの読出しベクトルデー
タは、リクエスト信号36が送出されてから4
サイクル後にベクトルレジスタに格納されると
仮定したが、本発明はこの場合に限るものでは
ない。
以上の実施例から明らかなように、ベクトル
レジスタ133では、間接ベクトルデータA
(1〜n)+B(1〜n)の各要素を順次書き込
みつつ、すでに書き込まれた要素を、その要素
の書き込みより1サイクル遅れて読み出してい
る。したがつて、ベクトルレジスタ133では
ベクトル要素の書き込み開始後に、新たなベク
トル要素の書き込みと並行して、その書き込み
位置と異なる記憶位置からすでに書き込まれて
いるベクトル要素を読み出している。この結
果、レジスタ133に対して書き込まれつつあ
るデータのすべてのベクトル要素の書き込み終
了を待たないで、上記書き込みと並行して読み
出し可能となる。このことは、ベクトルレジス
タ133に対する書込み回路と読み出し回路が
互いに異なる記憶位置に対して同時にアクセス
することができることにより実現されている。
したがつて、上記の並列動作は、ベクトルレジ
スタ133に限らず、他のベクトルレジスタに
ついても実現しうる。また上記実施例では、ベ
クトルレジスタ133に対する書き込み開始タ
イミングと読み出し開始タイミングは1サイク
ルずれている例を示した。しかし、このずれ
は、ベクトルレジスタ133に対する書き込み
回路と読出し回路が互いに並列に動作できるも
のである以上、本実施例は上記特定のずれのみ
の動作に限定されるものでない。
〔発明の効果〕
以上述べたように、本発明によれば、ベクトル
レジスタの異なつたアドレス位置へのベクトルデ
ータの書込み動作と読出して動作を並行して行な
えるので、ベクトルデータへのアクセス処理時間
を短縮することができる。特に、あるベクトルレ
ジスタに対してすでにベクトルデータの書き込み
が開始されている状態でも、残りのベクトル要素
の書き込みと並行して先に書き込みずみのベクト
ル要素を順に読み出すことができ、すべてのベク
トル要素の書き込み終了を待たなくてよく、読み
出し開始を早めることができる。しかも、各ベク
トルレジスタは互いに独立に動作可能であるた
め、各ベクトルレジスタの書き込み又は読み出し
は他のベクトルレジスタの動作と無関係に開始で
きる。
【図面の簡単な説明】
第1図は、本発明によるベクトルデータ処理装
置の概略ブロツク図、第2図は、第1図の装置の
一例の動作タイムチヤート。

Claims (1)

  1. 【特許請求の範囲】 1 主記憶装置と、 該主記憶装置に接続され、それぞれが複数のベ
    クトル要素を記憶することができ、それぞれプロ
    グラム命令で指定可能であり、互いに独立に動作
    可能な複数のベクトルレジスタと、 各ベクトルレジスタごとに設けられ、 各ベクトルレジスタの複数の記憶位置を指定す
    るアドレスを、ベクトル要素の読み出し時および
    ベルクト要素の書き込み時にそれぞれ発生する、
    読出しカウンタおよび書込みカウンタと、 それぞれが、該複数のベクトルレジスタのいず
    れか少くとも一つから読み出された複数のベクト
    ル要素を順次受け取り、処理するか、もしくは該
    複数のベクトルレジスタのいずれか一つに複数の
    ベクトル要素を順次出力するかの少くとも一方を
    行う、複数のベクトル処理回路と、 プログラム命令で、ベクトル要素を読み出すべ
    く指定された一つのベクトルレジスタに対して設
    けられた読出しカウンタを駆動して、ベクトル要
    素を順次読み出し該主記憶装置又は、該複数のベ
    クトル処理回路の一つに供給し、プログラム命令
    でベクトル要素を書き込むべく指定された一つの
    ベクトルレジスタに対して設けられた書込みカウ
    ンタを駆動して該主記憶装置又は一つのベクトル
    処理回路から出力された複数のベクトル要素を順
    次書き込む制御回路とを有し、該制御回路は、一
    つのベクトルレジスタに対して設けられた読出し
    カウンタ又は書込みカウンタと他の一つのベクト
    ルレジスタに設けられた読出しカウンタ又は書込
    みカウンタを互いに並行して駆動可能であるとと
    もに、同一のベクトルレジスタに対して設けられ
    た読出しカウンタと書込みカウンタを並行して駆
    動可能なものであることを特徴とするベクトルデ
    ータ処理装置。 2 該制御回路は、一つのベクトルレジスタに複
    数のベクトル要素の書き込み完了前に、書き込み
    済のベクトル要素を該一つのベクトルレジスタか
    ら読み出し開始しできるように、該一つのベクト
    ルレジスタに対する書込みカウンタを駆動開始
    後、該駆動と並行して該一つのベクトルレジスタ
    に対する読出しカウンタを駆動開始可能なもので
    ある特許請求の範囲第1項のベクトルデータ処理
    装置。 3 該制御回路は、一つのベクトル処理回路から
    供給されるベクトル要素を書き込むべく該一つの
    ベクトルレジスタを指定する第1のプログラム命
    令に応答して該書込みカウンタの駆動を行い、他
    の一つのベクトル処理回路にベクトル要素を供給
    すべく該一つのベクトルレジスタを指定する第2
    のプログラム命令に応答して、該読出しカウンタ
    の駆動を、該書込みカウンタの駆動開始後に、該
    駆動と並行して実行可能なものである特許請求の
    範囲第2項のベクトルデータ処理装置。 4 該複数のベクトル処理回路は、該複数のベク
    トルレジスタの少くとも一つから複数のベクトル
    要素を受け取り、演算を施し、演算の結果得られ
    る複数のベクトル要素を、該複数のベクトルレジ
    スタの一つに順次出力することができる、少くと
    も一つのベクトル演算回路を含み、 該制御回路は、第1のベクトルレジスタに対し
    て設けられた読出しカウンタを駆動して複数のベ
    クトル要素を順次該第1のベクトルレジスタから
    読み出し、該ベクトル演算回路に供給し、第2の
    ベクトルレジスタに対して設けられた書込みカウ
    ンタを、該ベクトル演算回路から複数の演算結果
    ベクトル要素の各々が出力されるのに同期して駆
    動して、該第2のベクトルレジスタに該演算結果
    ベクトル要素を書き込み、該第2のベクトルレジ
    スタに対して設けられた該書込みカウンタの駆動
    開始後に、該駆動と並行して、該第2のベクトル
    レジスタに対して設けられた読出しカウンタを駆
    動して、該演算結果ベクトル要素を該第2のベク
    トルレジスタから順次読み出し、他の一つのベク
    トル処理回路に供給可能なものである第1項のベ
    クトルデータ処理装置。 5 該制御回路は、ベクトル要素を該ベクトル演
    算回路に供給すべく該第1のベクトルレジスタを
    指定し、該ベクトル演算回路からの演算結果ベク
    トル要素を格納すべく該第2のベクトルレジスタ
    を指定する第1のプログラム命令に応答して、該
    第1のベクトルレジスタに対して設けられた該読
    出しカウンタの駆動および該第2のベクトルレジ
    スタに対して設けられた該書込みカウンタの駆動
    を行い、ベクトル要素を該他の一つのベクトル処
    理回路に供給すべく該第2のベクトルレジスタを
    指定する第2のプログラム命令に応答して該第2
    のベクトルレジスタに対して設けられた該読出し
    カウンタの駆動を、該第2のベクトルレジスタに
    対して設けられた該書込みカウンタの駆動の開始
    後に当該駆動と並行して実行可能なものである特
    許請求の範囲第4項のベクトルデータ処理装置。
JP9874180A 1980-07-21 1980-07-21 Vector data processing equipment Granted JPS5725069A (en)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP9874180A JPS5725069A (en) 1980-07-21 1980-07-21 Vector data processing equipment
EP81105749A EP0044562B1 (en) 1980-07-21 1981-07-21 Vector data processor
EP86106710A EP0208870B1 (en) 1980-07-21 1981-07-21 Vector data processor
DE8181105749T DE3177192D1 (de) 1980-07-21 1981-07-21 Vektor-datenverarbeitungsgeraet.
DE8686106710T DE3177235D1 (de) 1980-07-21 1981-07-21 Vektordatenverarbeitungsgeraet.
US06/594,301 US4651274A (en) 1980-07-21 1984-03-28 Vector data processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9874180A JPS5725069A (en) 1980-07-21 1980-07-21 Vector data processing equipment

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP5457685A Division JPS60215281A (ja) 1985-03-20 1985-03-20 ベクトルデータ処理装置

Publications (2)

Publication Number Publication Date
JPS5725069A JPS5725069A (en) 1982-02-09
JPS6131502B2 true JPS6131502B2 (ja) 1986-07-21

Family

ID=14227901

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9874180A Granted JPS5725069A (en) 1980-07-21 1980-07-21 Vector data processing equipment

Country Status (4)

Country Link
US (1) US4651274A (ja)
EP (2) EP0044562B1 (ja)
JP (1) JPS5725069A (ja)
DE (2) DE3177235D1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0545238U (ja) * 1991-11-19 1993-06-18 光洋精工株式会社 予圧調整装置

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1187200A (en) * 1982-02-24 1985-05-14 David R. Ditzel Computer with automatic mapping of memory contents into machine registers
JPS58154070A (ja) * 1982-03-08 1983-09-13 Mitsubishi Electric Corp デ−タ処理装置
JPS59163671A (ja) * 1983-03-09 1984-09-14 Nec Corp ベクトル処理装置
US4697235A (en) * 1983-03-22 1987-09-29 Fujitsu Limited List vector control apparatus
JPS6015770A (ja) * 1983-07-06 1985-01-26 Nec Corp ベクトルデ−タ処理装置
JPS6069746A (ja) * 1983-09-26 1985-04-20 Fujitsu Ltd ベクトル・デ−タ処理装置の制御方式
JPS60195643A (ja) * 1984-03-19 1985-10-04 Oki Electric Ind Co Ltd デ−タ処理装置
EP0167959B1 (en) * 1984-07-02 1992-05-06 Nec Corporation Computer vector register processing
JPH0650512B2 (ja) * 1984-07-11 1994-06-29 日本電気株式会社 デ−タ処理装置
US4890220A (en) * 1984-12-12 1989-12-26 Hitachi, Ltd. Vector processing apparatus for incrementing indices of vector operands of different length according to arithmetic operation results
JPS61151781A (ja) * 1984-12-26 1986-07-10 Hitachi Ltd ベクトル処理装置
JPS61173345A (ja) * 1985-01-29 1986-08-05 Hitachi Ltd 計算機システム
JPS621067A (ja) * 1985-02-25 1987-01-07 Hitachi Ltd ベクトル処理装置
US4671288A (en) * 1985-06-13 1987-06-09 The Regents Of The University Of California Electrochemical cell sensor for continuous short-term use in tissues and blood
US4945479A (en) * 1985-07-31 1990-07-31 Unisys Corporation Tightly coupled scientific processing system
US4858115A (en) * 1985-07-31 1989-08-15 Unisys Corporation Loop control mechanism for scientific processor
JPS62115571A (ja) * 1985-11-15 1987-05-27 Fujitsu Ltd ベクトルアクセス制御方式
JPS62120574A (ja) * 1985-11-20 1987-06-01 Fujitsu Ltd ベクトル処理装置
JPS62208167A (ja) * 1986-03-10 1987-09-12 Hitachi Ltd ベクトル処理装置
JP2760790B2 (ja) * 1986-10-09 1998-06-04 株式会社日立製作所 データ処理装置
JPH06103494B2 (ja) * 1986-11-18 1994-12-14 株式会社日立製作所 ベクトル処理装置の制御方式
DE3700119A1 (de) * 1987-01-03 1988-07-14 Inst Diabetestechnologie Gemei Implantierbarer elektrochemischer sensor
JPS63251835A (ja) * 1987-04-08 1988-10-19 Hitachi Ltd ベクトル処理装置
JP2902402B2 (ja) * 1987-09-30 1999-06-07 三菱電機株式会社 データ処理装置
JPH0192851A (ja) * 1987-10-02 1989-04-12 Hitachi Ltd アドレス空間切替装置
JPH0766324B2 (ja) * 1988-03-18 1995-07-19 三菱電機株式会社 データ処理装置
DE68903280T2 (de) * 1988-05-10 1993-05-27 Cray Research Inc Vektorschlange in computern mit vektorregister.
JPH0231741A (ja) * 1988-07-22 1990-02-01 Nok Corp 生理活性物質固定化電極
US5016160A (en) * 1988-12-15 1991-05-14 International Business Machines Corporation Computer system having efficient data transfer operations
JP2718254B2 (ja) * 1990-10-02 1998-02-25 日本電気株式会社 ベクトル処理装置
JP3304444B2 (ja) * 1992-11-30 2002-07-22 富士通株式会社 ベクトル処理装置
CA2087678C (en) * 1993-01-20 1998-09-01 Makoto Omata Arrangement of controlling issue timing of a instruction in a vector processor
JPH0981532A (ja) * 1995-09-08 1997-03-28 Fujitsu Ltd 分散記憶型並列計算機
DE19782200B4 (de) 1996-12-19 2011-06-16 Magnachip Semiconductor, Ltd. Maschine zur Videovollbildaufbereitung
US6430589B1 (en) 1997-06-20 2002-08-06 Hynix Semiconductor, Inc. Single precision array processor
PT1077634E (pt) * 1998-05-13 2003-12-31 Cygnus Therapeutic Systems Monitorizacao de substancias fisiologicas a analisar
GB2338094B (en) * 1998-05-27 2003-05-28 Advanced Risc Mach Ltd Vector register addressing
US6282634B1 (en) 1998-05-27 2001-08-28 Arm Limited Apparatus and method for processing data having a mixed vector/scalar register file
US7594102B2 (en) * 2004-12-15 2009-09-22 Stmicroelectronics, Inc. Method and apparatus for vector execution on a scalar machine
JP5658556B2 (ja) * 2010-12-24 2015-01-28 富士通株式会社 メモリ制御装置、及びメモリ制御方法
US9552205B2 (en) 2013-09-27 2017-01-24 Intel Corporation Vector indexed memory access plus arithmetic and/or logical operation processors, methods, systems, and instructions
US11138233B2 (en) 2014-10-27 2021-10-05 Kinaxis Inc. Data storage using vectors of vectors
US11144522B2 (en) 2014-10-27 2021-10-12 Kinaxis Inc. Data storage using vectors of vectors

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3541516A (en) * 1965-06-30 1970-11-17 Ibm Vector arithmetic multiprocessor computing system
US3573851A (en) * 1968-07-11 1971-04-06 Texas Instruments Inc Memory buffer for vector streaming
US3794948A (en) * 1970-10-02 1974-02-26 Fuse Indicator Corp Blown fuse indicators
US3827031A (en) * 1973-03-19 1974-07-30 Instr Inc Element select/replace apparatus for a vector computing system
US3919534A (en) * 1974-05-17 1975-11-11 Control Data Corp Data processing system
US4025771A (en) * 1974-03-25 1977-05-24 Hughes Aircraft Company Pipe line high speed signal processor
JPS5148937A (en) * 1974-10-25 1976-04-27 Fujitsu Ltd Kiokusochi niokeru junjoseigyohoshiki
US4128880A (en) * 1976-06-30 1978-12-05 Cray Research, Inc. Computer vector register processing
JPS5852265B2 (ja) * 1977-01-12 1983-11-21 株式会社日立製作所 デ−タ処理装置
SE403322B (sv) * 1977-02-28 1978-08-07 Ellemtel Utvecklings Ab Anordning i en styrdator for forkortning av exekveringstiden for instruktioner vid indirekt adressering av ett dataminne
US4101960A (en) * 1977-03-29 1978-07-18 Burroughs Corporation Scientific processor
US4302818A (en) * 1979-07-10 1981-11-24 Texas Instruments Incorporated Micro-vector processor

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0545238U (ja) * 1991-11-19 1993-06-18 光洋精工株式会社 予圧調整装置

Also Published As

Publication number Publication date
JPS5725069A (en) 1982-02-09
DE3177192D1 (de) 1990-07-19
DE3177235D1 (de) 1991-01-17
EP0208870A1 (en) 1987-01-21
EP0208870B1 (en) 1990-12-05
EP0044562A1 (en) 1982-01-27
US4651274A (en) 1987-03-17
EP0044562B1 (en) 1990-06-13

Similar Documents

Publication Publication Date Title
JPS6131502B2 (ja)
JP2008181551A (ja) ベクトルレジスタを備えたコンピュータにおけるベクトルテールゲーティング
JPH0512750B2 (ja)
US6457121B1 (en) Method and apparatus for reordering data in X86 ordering
EP0465847B1 (en) Memory access control having commonly shared pipeline structure
JP2008102599A (ja) プロセッサ
JP2001167084A (ja) ベクトル演算処理装置及びベクトルデータ移送方法
JPS6160473B2 (ja)
JPH0452488B2 (ja)
JP2557043B2 (ja) ビツトパタ−ン検出装置
JPH10111798A (ja) 情報処理装置
JPH02217924A (ja) データ処理装置のストア処理方式
JPS60205647A (ja) デ−タ処理装置
JP2576589B2 (ja) 仮想記憶アクセス制御方式
JPS5862886A (ja) 記憶制御方式
JPS5896346A (ja) 階層型演算方式
JPH0342721A (ja) 情報処理装置
JPH04300B2 (ja)
JPH0685166B2 (ja) マルチプロセッサシステムの命令制御方式
JPH0467661B2 (ja)
JPH01296345A (ja) 情報処理装置
JPH0228724A (ja) 分岐命令制御方式
JPH0736819A (ja) Dmaデータ転送装置
JPH01305452A (ja) バッファ記憶装置のストア制御方式
JPS62164135A (ja) デ−タ処理装置