JP2718254B2 - ベクトル処理装置 - Google Patents
ベクトル処理装置Info
- Publication number
- JP2718254B2 JP2718254B2 JP2264139A JP26413990A JP2718254B2 JP 2718254 B2 JP2718254 B2 JP 2718254B2 JP 2264139 A JP2264139 A JP 2264139A JP 26413990 A JP26413990 A JP 26413990A JP 2718254 B2 JP2718254 B2 JP 2718254B2
- Authority
- JP
- Japan
- Prior art keywords
- vector
- data
- control unit
- memory
- instruction
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
- G06F15/8061—Details on data memory access
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
- G06F15/8076—Details on data register access
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/34—Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes
- G06F9/345—Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes of multiple operands or results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/34—Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes
- G06F9/345—Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes of multiple operands or results
- G06F9/3455—Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes of multiple operands or results using stride
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)
- Executing Machine-Instructions (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 本発明はベクトル処理装置に関し、特にベクトルデー
タを処理するベクトル処理装置に関する。
タを処理するベクトル処理装置に関する。
従来のベクトル処理装置は、例えば米国特許第412888
0公報に開示されているように、ベクトルデータを格納
するメモリと、このメモリからのベクトルデータを保持
する8個のレジスタとを有し、8個のレジスタはそれぞ
れメモリとの間でデータの授受を行っている。
0公報に開示されているように、ベクトルデータを格納
するメモリと、このメモリからのベクトルデータを保持
する8個のレジスタとを有し、8個のレジスタはそれぞ
れメモリとの間でデータの授受を行っている。
上述した従来のベクトル処理装置は、ベクトルデータ
のメモリ上の参照すべきアドレスがベクトルデータで表
わされる間接ベクトルのアクセス機能を付加しようとす
ると、ベクトルレジスタとメモリとの間に新たなパスを
設ける必要がある。また、最近の傾向としてプロセッサ
数を増やしたり、ベクトルパイプラインの数を増やすな
ど同時処理で演算性能を高めるというのが一般的であ
り、1つのパスを設けるということは複数のパスを設け
ることになりハードウェア量が増大するという欠点があ
る。
のメモリ上の参照すべきアドレスがベクトルデータで表
わされる間接ベクトルのアクセス機能を付加しようとす
ると、ベクトルレジスタとメモリとの間に新たなパスを
設ける必要がある。また、最近の傾向としてプロセッサ
数を増やしたり、ベクトルパイプラインの数を増やすな
ど同時処理で演算性能を高めるというのが一般的であ
り、1つのパスを設けるということは複数のパスを設け
ることになりハードウェア量が増大するという欠点があ
る。
本発明のベクトル処理装置は、スカラデータおよびベ
クトルデータを格納するメモリと、少なくとも1つの要
素で構成される前記ベクトルデータがそれぞれ保持され
る複数のベクトルレジスタを有するベクトルデータ制御
部と、前記メモリと前記ベクトルレジスタ間のデータ転
送のとき前記メモリと前記ベクトルデータ制御部との間
にデータ授受のためのパスを有するメモリ制御部とを備
え、前記ベクトルレジスタに保持されているベクトルデ
ータの要素が前記メモリのアドレスを示す間接ベクトル
アクセス命令であるときにこの間接ベクトルアクセス命
令のアドレスを前記パスを用いて前記メモリに対する書
き込みデータと交互に前記ベクトルデータ制御部から前
記メモリ制御部に送り前記間接ベクトルアクセス命令の
処理を行い、先頭要素のアドレスと要素間の間隔を指定
することにより前記ベクトルレジスタに保持されている
ベクトルデータを前記メモリに格納するベクトルストア
命令実行時には前記パスを毎サイクル占有して前記ベク
トルデータを前記メモリ制御部に送って前記ベクトルス
トア命令の処理を行なうことを特徴とする。
クトルデータを格納するメモリと、少なくとも1つの要
素で構成される前記ベクトルデータがそれぞれ保持され
る複数のベクトルレジスタを有するベクトルデータ制御
部と、前記メモリと前記ベクトルレジスタ間のデータ転
送のとき前記メモリと前記ベクトルデータ制御部との間
にデータ授受のためのパスを有するメモリ制御部とを備
え、前記ベクトルレジスタに保持されているベクトルデ
ータの要素が前記メモリのアドレスを示す間接ベクトル
アクセス命令であるときにこの間接ベクトルアクセス命
令のアドレスを前記パスを用いて前記メモリに対する書
き込みデータと交互に前記ベクトルデータ制御部から前
記メモリ制御部に送り前記間接ベクトルアクセス命令の
処理を行い、先頭要素のアドレスと要素間の間隔を指定
することにより前記ベクトルレジスタに保持されている
ベクトルデータを前記メモリに格納するベクトルストア
命令実行時には前記パスを毎サイクル占有して前記ベク
トルデータを前記メモリ制御部に送って前記ベクトルス
トア命令の処理を行なうことを特徴とする。
次に本発明について図面を参照して詳細に説明する。
第1図は本発明の一実施例を示すブロック図である。
第1図は本発明の一実施例を示すブロック図である。
命令制御部1は、プログラム命令の解読・実行を制御
し、解読された結果に応じて結線101経由でベクトルデ
ータ制御部2を制御し結線102経由でメモリ制御部3の
制御を行なう。
し、解読された結果に応じて結線101経由でベクトルデ
ータ制御部2を制御し結線102経由でメモリ制御部3の
制御を行なう。
ベクトルデータ制御部2は、第2図に示すようにベク
トルデータを保持する複数のベクトルレジスタ部11−1
〜11−8およびベクトル演算器群12とを有し、命令制御
部1からの指示によりベクトルレジスタ部11の選択、読
出し、ベクトル演算の実行およびベクトルレジスタ部11
への書込みを行う。
トルデータを保持する複数のベクトルレジスタ部11−1
〜11−8およびベクトル演算器群12とを有し、命令制御
部1からの指示によりベクトルレジスタ部11の選択、読
出し、ベクトル演算の実行およびベクトルレジスタ部11
への書込みを行う。
また、ベクトルレジスタ部11の内容をメモリ部4に書
込む場合は結線103経由でメモリ制御部3へ読出された
データ、アドレス、またはアドレスとデータが送られ
る。メモリ制御部3は、命令制御部1から送られてくる
リクエスト情報およびベクトルデータ制御部2から送ら
れてくるデータ、アドレスに基いて結線104経由でメモ
リ部4に対してアクセスを行なう。
込む場合は結線103経由でメモリ制御部3へ読出された
データ、アドレス、またはアドレスとデータが送られ
る。メモリ制御部3は、命令制御部1から送られてくる
リクエスト情報およびベクトルデータ制御部2から送ら
れてくるデータ、アドレスに基いて結線104経由でメモ
リ部4に対してアクセスを行なう。
第2図は本実施例のベクトルデータ制御部2の詳細ブ
ロック図である。
ロック図である。
コマンドデコード部10は命令制御部1から結線101経
由で制御情報を受けて解読し、ベクトルレジスタ11の読
出し、および書込みの制御情報を結線111−1〜111−8
経由でベクトルレジスタ部11−1〜11−8にそれぞれ供
給する。また、ベクトル演算の制御情報が結線112経由
でベクトル演算器群12に供給し、選択回路13の選択信号
が結線113経由で選択回路13に供給される。
由で制御情報を受けて解読し、ベクトルレジスタ11の読
出し、および書込みの制御情報を結線111−1〜111−8
経由でベクトルレジスタ部11−1〜11−8にそれぞれ供
給する。また、ベクトル演算の制御情報が結線112経由
でベクトル演算器群12に供給し、選択回路13の選択信号
が結線113経由で選択回路13に供給される。
ベクトルレジスタ部11−1〜11−8はベクトルレジス
タの他に読出し制御部および書込み制御部を有してお
り、コマンドデコード部10からの指示に基いて動作す
る。ベクトルレジスタ部11−1〜11−8から読出された
データはそれぞれ結線114−1〜114−8経由でベクトル
演算器群12および選択回路13に供給される。また、ベク
トルレジスタ部11−1〜11−8への書込みデータはベク
トル演算器群12から結線115−1〜115−8経由でそれぞ
れ供給される。ベクトル演算器群12は、ベクトルレジス
タ部11−1〜11−8から供給されるデータで、コマンド
デコード部10からの指示により演算を行い、演算結果が
結線115−1〜115−8経由でベクトルレジスタ部11−1
〜11−8に供給される。
タの他に読出し制御部および書込み制御部を有してお
り、コマンドデコード部10からの指示に基いて動作す
る。ベクトルレジスタ部11−1〜11−8から読出された
データはそれぞれ結線114−1〜114−8経由でベクトル
演算器群12および選択回路13に供給される。また、ベク
トルレジスタ部11−1〜11−8への書込みデータはベク
トル演算器群12から結線115−1〜115−8経由でそれぞ
れ供給される。ベクトル演算器群12は、ベクトルレジス
タ部11−1〜11−8から供給されるデータで、コマンド
デコード部10からの指示により演算を行い、演算結果が
結線115−1〜115−8経由でベクトルレジスタ部11−1
〜11−8に供給される。
選択回路13はメモリ制御部3へ供給するデータを選択
する回路であり、ベクトルレジスタ部11−1〜11−8か
ら読出されたデータが与えられたコマンドデーコード部
10から供給される制御情報に基いて選択されて、結線10
3経由でメモリ制御部3に供給される。
する回路であり、ベクトルレジスタ部11−1〜11−8か
ら読出されたデータが与えられたコマンドデーコード部
10から供給される制御情報に基いて選択されて、結線10
3経由でメモリ制御部3に供給される。
第3図は本実施例のベクトルレジスタ部11−1〜11−
8の詳細ブロック図である。
8の詳細ブロック図である。
ベクトルレジスタ21は、ベクトルデータが保持される
複数エントリからなる。ベクトル演算器群12から結線11
5経由で供給されるデータをフラグ22が「1」である
時、カウンタ23で示されるエントリに書込み、また、カ
ウンタ28で示されるエントリからデータが読出され、結
線114(第2図では114−1〜114−8)経由で第2図の
ベクトル演算器群12に供給される。書込フラグ22は図示
されない線によりコマンドデコード部10からの指示で
「1」にセットおよび「0」にリセットし、ベクトルレ
ジスタ21への書込み指示および書込アドレスカウンタ23
の歩進指示を行う。書込アドレスカウンタ23は図示され
ない線によりコマンドデコード部10からの指示で初期化
(エントリ「0」を指す値)され、書込フラグ22が
「1」の期間歩進され、書込みエントリをベクトルレジ
スタ21に指示する。
複数エントリからなる。ベクトル演算器群12から結線11
5経由で供給されるデータをフラグ22が「1」である
時、カウンタ23で示されるエントリに書込み、また、カ
ウンタ28で示されるエントリからデータが読出され、結
線114(第2図では114−1〜114−8)経由で第2図の
ベクトル演算器群12に供給される。書込フラグ22は図示
されない線によりコマンドデコード部10からの指示で
「1」にセットおよび「0」にリセットし、ベクトルレ
ジスタ21への書込み指示および書込アドレスカウンタ23
の歩進指示を行う。書込アドレスカウンタ23は図示され
ない線によりコマンドデコード部10からの指示で初期化
(エントリ「0」を指す値)され、書込フラグ22が
「1」の期間歩進され、書込みエントリをベクトルレジ
スタ21に指示する。
フラグ24〜26は読出アドレスカウンタ28の制御フラグ
で、フラグ24は読出し中を示し、フラグ25は間接ベクト
ルによりメモリへの書込みであることを示し、フラグ27
は間接ベクトルによるメモリへの書込みである場合の歩
進タイミングを示す。フラグ24および25は図示されない
線によりコマンドデコード部10からの指示で「1」にセ
ットまたは、「0」にリセットされる。フラグ26は図示
されない線によりコマンドデコード部10からの指示で
「0」にリセットされ、クロックサイクル毎に「1」,
「0」値を反転させる。読出アドレスカウンタ28は、論
理回路27によってフラグ24および25がそれぞれ「1」,
「0」であること、またはフラグ24〜26がそれぞれ
「1」,「1」,「1」であることを検出して歩進さ
れ、読出すべきベクトルレジスタ21のエントリを指示す
る。
で、フラグ24は読出し中を示し、フラグ25は間接ベクト
ルによりメモリへの書込みであることを示し、フラグ27
は間接ベクトルによるメモリへの書込みである場合の歩
進タイミングを示す。フラグ24および25は図示されない
線によりコマンドデコード部10からの指示で「1」にセ
ットまたは、「0」にリセットされる。フラグ26は図示
されない線によりコマンドデコード部10からの指示で
「0」にリセットされ、クロックサイクル毎に「1」,
「0」値を反転させる。読出アドレスカウンタ28は、論
理回路27によってフラグ24および25がそれぞれ「1」,
「0」であること、またはフラグ24〜26がそれぞれ
「1」,「1」,「1」であることを検出して歩進さ
れ、読出すべきベクトルレジスタ21のエントリを指示す
る。
第4図は本実施例のメモリ制御部3の詳細ブロック図
である。
である。
リクエスト制御部31は命令制御部1から送られてくる
メモリアクセス制御情報に基づきメモリ4へのアクセス
の制御を行ない、リクエスト信号およびアドレスが結線
104−1経由でメモリ部4に供給される。また、ベクト
ルレジスタ21の内容をメモリに書込む場合にはメモリ制
御部3のバッファ32−1および32−2の読出しを制御
し、また、間接ベクトル時にはバッファ32−1からアド
レスの供給を受け、アクセス時にバッファ32−2からデ
ータを読出してアクセスの制御を行なう。
メモリアクセス制御情報に基づきメモリ4へのアクセス
の制御を行ない、リクエスト信号およびアドレスが結線
104−1経由でメモリ部4に供給される。また、ベクト
ルレジスタ21の内容をメモリに書込む場合にはメモリ制
御部3のバッファ32−1および32−2の読出しを制御
し、また、間接ベクトル時にはバッファ32−1からアド
レスの供給を受け、アクセス時にバッファ32−2からデ
ータを読出してアクセスの制御を行なう。
バッファ32−1および32−2はベクトルデータ制御部
2から結線103経由で送られてくるデータまたは間接ベ
クトルのアドレスを保持し、間接ベクトルアクセス時に
はアドレスがバッファ32−1に保持されデータがバッフ
ァ32−2に保持され通常のライト時にはバッファ32−1,
32−2の両方に保持される。間接ベクトルのアドレス
は、リクエスト制御部31に供給され、データが切替回路
33に供給される。バッファの読出しエントリ、および書
込みエントリはリクエスト制御部31により制御される。
2から結線103経由で送られてくるデータまたは間接ベ
クトルのアドレスを保持し、間接ベクトルアクセス時に
はアドレスがバッファ32−1に保持されデータがバッフ
ァ32−2に保持され通常のライト時にはバッファ32−1,
32−2の両方に保持される。間接ベクトルのアドレス
は、リクエスト制御部31に供給され、データが切替回路
33に供給される。バッファの読出しエントリ、および書
込みエントリはリクエスト制御部31により制御される。
切替回路33はバッファ32−1および32−2から読出さ
れたデータをリクエスト制御部31の指示により切替えら
れて結線104−2経由でメモリ部4に供給される。
れたデータをリクエスト制御部31の指示により切替えら
れて結線104−2経由でメモリ部4に供給される。
次に動作について説明する。
ベクトルレジスタに保持されているベクトルデータの
通常ライト時(先頭アドレスと要素間間隔でベクトルデ
ータの各要素をメモリに書込む場合)には命令制御部1
で命令をデコードし、先頭アドレスおよび要素間間隔を
メモリ制御部3に送ると同時にどのベクトルレジスタの
ベクトルデータをメモリに書くかを示す情報(ベクトル
レジスタ番号)をベクトルデータ制御部2のコマンドデ
コード部10に送り、コマンドデコード部10ではベクトル
レジスタ番号を選択回路13に送り、指定されたベクトル
レジスタのデータを選択してメモリ制御部3に送る。ま
た、指定されたベクトルレジスタに対する読出し制御の
フラグ24を「1」にセットし、フラグ25が「0」のまま
なので指定されたベクトルレジスタに対する読出しアド
レスカウンタは毎サイクル歩進され、ベクトルレジスタ
に保持されているデータが順次読出され、選択回路13を
経てメモリ制御部3内のバッファ32−1および32−2に
取込まれる。
通常ライト時(先頭アドレスと要素間間隔でベクトルデ
ータの各要素をメモリに書込む場合)には命令制御部1
で命令をデコードし、先頭アドレスおよび要素間間隔を
メモリ制御部3に送ると同時にどのベクトルレジスタの
ベクトルデータをメモリに書くかを示す情報(ベクトル
レジスタ番号)をベクトルデータ制御部2のコマンドデ
コード部10に送り、コマンドデコード部10ではベクトル
レジスタ番号を選択回路13に送り、指定されたベクトル
レジスタのデータを選択してメモリ制御部3に送る。ま
た、指定されたベクトルレジスタに対する読出し制御の
フラグ24を「1」にセットし、フラグ25が「0」のまま
なので指定されたベクトルレジスタに対する読出しアド
レスカウンタは毎サイクル歩進され、ベクトルレジスタ
に保持されているデータが順次読出され、選択回路13を
経てメモリ制御部3内のバッファ32−1および32−2に
取込まれる。
メモリ制御部3内のリクエスト制御部31は、命令制御
部1から受けた先頭要素のアドレスおよび要素間間隔を
基にして各要素のアドレスを生成し、ベクトルデータ制
御部2から送られてきたデータをバッファ32−1および
32−2から読出してメモリ部4に対するアクセスを行な
い、バッファの読出しの速さは要素間距離から判断して
決定される。
部1から受けた先頭要素のアドレスおよび要素間間隔を
基にして各要素のアドレスを生成し、ベクトルデータ制
御部2から送られてきたデータをバッファ32−1および
32−2から読出してメモリ部4に対するアクセスを行な
い、バッファの読出しの速さは要素間距離から判断して
決定される。
次に、間接ベクトルアクセス時には、命令制御部1で
命令をデコードすると、メモリ制御部3に対してはリク
エスト情報として間接ベクトルであることを通知する。
また、ベクトルデータ制御部2に対してはアドレスのベ
クトルレジスタ番号、およびデータのベクトルレジスタ
番号を通知する。ベクトルデータ制御部2内のコマンド
部10は間接ベクトルアクセスなので指定された2つのベ
クトルレジスタに対応した読出し制御部のフラグ24およ
び25を「1」にセットする。またフラグ26は「0」にさ
れた後、毎サイクル「1」,「0」が反転するため、指
定された2つのベクトルレジスタに対応した読出しアド
レスカウンタ28は2クロックサイクル毎に歩進され、2
クロックサイクルで2つのベクトルレジスタに保持され
ているベクトルデータの対応する要素が初めにアドレス
後にデータの順で選択回路13で選択されてメモリ制御部
3に送られる。
命令をデコードすると、メモリ制御部3に対してはリク
エスト情報として間接ベクトルであることを通知する。
また、ベクトルデータ制御部2に対してはアドレスのベ
クトルレジスタ番号、およびデータのベクトルレジスタ
番号を通知する。ベクトルデータ制御部2内のコマンド
部10は間接ベクトルアクセスなので指定された2つのベ
クトルレジスタに対応した読出し制御部のフラグ24およ
び25を「1」にセットする。またフラグ26は「0」にさ
れた後、毎サイクル「1」,「0」が反転するため、指
定された2つのベクトルレジスタに対応した読出しアド
レスカウンタ28は2クロックサイクル毎に歩進され、2
クロックサイクルで2つのベクトルレジスタに保持され
ているベクトルデータの対応する要素が初めにアドレス
後にデータの順で選択回路13で選択されてメモリ制御部
3に送られる。
コマンドデコード部10は、命令制御部1から受けた2
つのベクトルレジスタ番号をサイクル毎にアドレス、デ
ータ、の順で交互に選択回路13に送り、アドレスとデー
タが交互に送られるよう制御する。メモリ制御部3で
は、ベクトルデータ制御部から送られてくるアドレス、
およびデータをそれぞれ32−1、および32−2に取込む
よう、リクエスト制御部31が書込み指示を行なう。アド
レス情報がバッファ32−1に入り始めると、アドレスが
順次リクエスト制御部に送られ、アドレスのバンクの状
態が2クロックサイクルかけてチェックされ、使用可で
あれば次のアドレスをリクエスト制御部に送るよう読出
し制御を行なう。また、バッファ32−2の歩進もバンク
が使用可能であるという条件で行なわれ、バンクの使用
状態のチェックに2クロックサイクルを要するため性能
低下は生じない。
つのベクトルレジスタ番号をサイクル毎にアドレス、デ
ータ、の順で交互に選択回路13に送り、アドレスとデー
タが交互に送られるよう制御する。メモリ制御部3で
は、ベクトルデータ制御部から送られてくるアドレス、
およびデータをそれぞれ32−1、および32−2に取込む
よう、リクエスト制御部31が書込み指示を行なう。アド
レス情報がバッファ32−1に入り始めると、アドレスが
順次リクエスト制御部に送られ、アドレスのバンクの状
態が2クロックサイクルかけてチェックされ、使用可で
あれば次のアドレスをリクエスト制御部に送るよう読出
し制御を行なう。また、バッファ32−2の歩進もバンク
が使用可能であるという条件で行なわれ、バンクの使用
状態のチェックに2クロックサイクルを要するため性能
低下は生じない。
なお、本実施例において、命令制御部はメモリ制御部
からバッファ32−1、および32−2の使用状況を受け、
使用可能でなければベクトルデータ制御部2およびメモ
リ制御部3に対するベクトルデータのメモリへの書込み
要求、または間接ベクトルのアクセス要求を保留する。
からバッファ32−1、および32−2の使用状況を受け、
使用可能でなければベクトルデータ制御部2およびメモ
リ制御部3に対するベクトルデータのメモリへの書込み
要求、または間接ベクトルのアクセス要求を保留する。
以上説明したように本発明は、ベクトルレジスタから
メモリに書込むためのパスを利用して間接ベクトルのア
ドレスを送り、また、間接ベクトルをアクセスする際に
ストアデータのためのバッファがアドレスを保持するこ
とにより、少ないハードウェア量で性能低下を招くこと
なく間接ベクトルのメモリへのアクセスを行なうことが
できるという効果がある。
メモリに書込むためのパスを利用して間接ベクトルのア
ドレスを送り、また、間接ベクトルをアクセスする際に
ストアデータのためのバッファがアドレスを保持するこ
とにより、少ないハードウェア量で性能低下を招くこと
なく間接ベクトルのメモリへのアクセスを行なうことが
できるという効果がある。
第1図は本発明の一実施例を示すブロック図、第2図は
本実施例のベクトルデータ制御部の詳細ブロック図、第
3図は本実施例のベクトルレジスタ部の詳細ブロック
図、第4図は本実施例のメモリ制御部の詳細のブロック
図である。 1…命令制御部、2…ベクトルデータ制御部、3…メモ
リ制御部、4…メモリ部、10…コマンドデコード部、11
−1〜11−8…ベクトルレジスタ部、12…ベクトル演算
器群、13…選択回路、21…ベクトルレジスタ、22…書込
フラグ、23…書込アドレスカウンタ、24,25,26…フラ
グ、27…論理回路、28…読出アドレスカウンタ、31…リ
クエスト制御部、32−1,32−2…バッファ、33…切換回
路。
本実施例のベクトルデータ制御部の詳細ブロック図、第
3図は本実施例のベクトルレジスタ部の詳細ブロック
図、第4図は本実施例のメモリ制御部の詳細のブロック
図である。 1…命令制御部、2…ベクトルデータ制御部、3…メモ
リ制御部、4…メモリ部、10…コマンドデコード部、11
−1〜11−8…ベクトルレジスタ部、12…ベクトル演算
器群、13…選択回路、21…ベクトルレジスタ、22…書込
フラグ、23…書込アドレスカウンタ、24,25,26…フラ
グ、27…論理回路、28…読出アドレスカウンタ、31…リ
クエスト制御部、32−1,32−2…バッファ、33…切換回
路。
Claims (1)
- 【請求項1】スカラデータおよびベクトルデータを格納
するメモリと、少なくとも1つの要素で構成される前記
ベクトルデータがそれぞれ保持される複数のベクトルレ
ジスタを有するベクトルデータ制御部と、前記メモリと
前記ベクトルレジスタ間のデータ転送のとき前記メモリ
と前記ベクトルデータ制御部との間にデータ授受のため
のパスを有するメモリ制御部とを備え、 前記メモリ制御部は、第1及び第2のバッファを有し、
ベクトルストア命令実行時には前記ベクトルデータ制御
部からのデータを前記第1及び第2のバッファにそれぞ
れ保持し、間接ベクトル命令実行時には前記ベクトルデ
ータ制御部からのアドレスを前記第1のバッファに、前
記ベクトルレジスタからのデータを前記第2のバッファ
にそれぞれ保持することを特徴とするベクトル処理装
置。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2264139A JP2718254B2 (ja) | 1990-10-02 | 1990-10-02 | ベクトル処理装置 |
CA002052559A CA2052559C (en) | 1990-10-02 | 1991-10-01 | Vector processing device comprising a reduced amount of hardware |
EP91116765A EP0479235B1 (en) | 1990-10-02 | 1991-10-01 | Vector processing device comprising a reduced amount of hardware |
DE69129725T DE69129725T2 (de) | 1990-10-02 | 1991-10-01 | Vektorprozessor mit beschränkter Hardwaremenge |
US07/768,040 US5390352A (en) | 1990-10-02 | 1991-10-01 | Vector processing device comprising a single supplying circuit for use in both stride and indirect vector processing modes |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2264139A JP2718254B2 (ja) | 1990-10-02 | 1990-10-02 | ベクトル処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH04140880A JPH04140880A (ja) | 1992-05-14 |
JP2718254B2 true JP2718254B2 (ja) | 1998-02-25 |
Family
ID=17399003
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2264139A Expired - Lifetime JP2718254B2 (ja) | 1990-10-02 | 1990-10-02 | ベクトル処理装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US5390352A (ja) |
EP (1) | EP0479235B1 (ja) |
JP (1) | JP2718254B2 (ja) |
CA (1) | CA2052559C (ja) |
DE (1) | DE69129725T2 (ja) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04156628A (ja) * | 1990-10-19 | 1992-05-29 | Fujitsu Ltd | アクセス制御方式 |
JPH07141327A (ja) * | 1993-04-13 | 1995-06-02 | Nec Corp | ベクトル処理装置 |
US6282634B1 (en) * | 1998-05-27 | 2001-08-28 | Arm Limited | Apparatus and method for processing data having a mixed vector/scalar register file |
DE19827238B4 (de) * | 1998-06-18 | 2004-09-30 | Nec Corp. | Verfahren zum Betrieb eines Vektorrechners |
US7159099B2 (en) * | 2002-06-28 | 2007-01-02 | Motorola, Inc. | Streaming vector processor with reconfigurable interconnection switch |
US7140019B2 (en) * | 2002-06-28 | 2006-11-21 | Motorola, Inc. | Scheduler of program instructions for streaming vector processor having interconnected functional units |
US7415601B2 (en) * | 2002-06-28 | 2008-08-19 | Motorola, Inc. | Method and apparatus for elimination of prolog and epilog instructions in a vector processor using data validity tags and sink counters |
US7290122B2 (en) * | 2003-08-29 | 2007-10-30 | Motorola, Inc. | Dataflow graph compression for power reduction in a vector processor |
US7610466B2 (en) * | 2003-09-05 | 2009-10-27 | Freescale Semiconductor, Inc. | Data processing system using independent memory and register operand size specifiers and method thereof |
US7107436B2 (en) * | 2003-09-08 | 2006-09-12 | Freescale Semiconductor, Inc. | Conditional next portion transferring of data stream to or from register based on subsequent instruction aspect |
US7315932B2 (en) * | 2003-09-08 | 2008-01-01 | Moyer William C | Data processing system having instruction specifiers for SIMD register operands and method thereof |
US7275148B2 (en) * | 2003-09-08 | 2007-09-25 | Freescale Semiconductor, Inc. | Data processing system using multiple addressing modes for SIMD operations and method thereof |
US7184327B2 (en) * | 2005-04-14 | 2007-02-27 | Micron Technology, Inc. | System and method for enhanced mode register definitions |
US7945768B2 (en) * | 2008-06-05 | 2011-05-17 | Motorola Mobility, Inc. | Method and apparatus for nested instruction looping using implicit predicates |
US9037835B1 (en) * | 2013-10-24 | 2015-05-19 | Arm Limited | Data processing method and apparatus for prefetching |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5725069A (en) * | 1980-07-21 | 1982-02-09 | Hitachi Ltd | Vector data processing equipment |
JPS6131502A (ja) * | 1984-07-25 | 1986-02-14 | 秩父コンクリ−ト工業株式会社 | 路面の仕上げ方法 |
JPS61275954A (ja) * | 1985-05-07 | 1986-12-06 | Panafacom Ltd | データ処理装置 |
US4745547A (en) * | 1985-06-17 | 1988-05-17 | International Business Machines Corp. | Vector processing |
JPS62115571A (ja) * | 1985-11-15 | 1987-05-27 | Fujitsu Ltd | ベクトルアクセス制御方式 |
JPS62180470A (ja) * | 1986-02-04 | 1987-08-07 | Hitachi Ltd | ベクトル処理装置 |
JPS63225837A (ja) * | 1987-03-13 | 1988-09-20 | Fujitsu Ltd | 距離付きベクトルアクセス方式 |
JPS63251835A (ja) * | 1987-04-08 | 1988-10-19 | Hitachi Ltd | ベクトル処理装置 |
JPS6465655A (en) * | 1987-09-07 | 1989-03-10 | Fujitsu Ltd | Memory interface control system |
JPH01150952A (ja) * | 1987-12-08 | 1989-06-13 | Hitachi Ltd | 多次元アドレスメモリのアクセス制御方法及び装置 |
US4888679A (en) * | 1988-01-11 | 1989-12-19 | Digital Equipment Corporation | Method and apparatus using a cache and main memory for both vector processing and scalar processing by prefetching cache blocks including vector data elements |
US4949247A (en) * | 1988-02-23 | 1990-08-14 | Stellar Computer, Inc. | System for transferring multiple vector data elements to and from vector memory in a single operation |
US5019968A (en) * | 1988-03-29 | 1991-05-28 | Yulan Wang | Three-dimensional vector processor |
-
1990
- 1990-10-02 JP JP2264139A patent/JP2718254B2/ja not_active Expired - Lifetime
-
1991
- 1991-10-01 US US07/768,040 patent/US5390352A/en not_active Expired - Fee Related
- 1991-10-01 DE DE69129725T patent/DE69129725T2/de not_active Expired - Fee Related
- 1991-10-01 CA CA002052559A patent/CA2052559C/en not_active Expired - Fee Related
- 1991-10-01 EP EP91116765A patent/EP0479235B1/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
US5390352A (en) | 1995-02-14 |
EP0479235A3 (en) | 1992-09-09 |
CA2052559C (en) | 1996-05-14 |
EP0479235A2 (en) | 1992-04-08 |
DE69129725D1 (de) | 1998-08-13 |
JPH04140880A (ja) | 1992-05-14 |
EP0479235B1 (en) | 1998-07-08 |
CA2052559A1 (en) | 1992-04-03 |
DE69129725T2 (de) | 1998-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2718254B2 (ja) | ベクトル処理装置 | |
US4831520A (en) | Bus interface circuit for digital data processor | |
US6272596B1 (en) | Data processor | |
WO2001016715A1 (en) | Branch instructions in a multithreaded parallel processing system | |
US4831581A (en) | Central processor unit for digital data processing system including cache management mechanism | |
JPH01156845A (ja) | メモリ・システム | |
US5119484A (en) | Selections between alternate control word and current instruction generated control word for alu in respond to alu output and current instruction | |
JPH0332818B2 (ja) | ||
EP0600165B1 (en) | Vector processing device | |
JPH0650863B2 (ja) | 直接データ転送のためのインターフエース | |
JPS62102344A (ja) | バツフア・メモリ制御方式 | |
US5440689A (en) | Interprocessor communication system for direct processor to processor communication between internal general purpose registers transparent to the execution of processors thereof | |
US4905190A (en) | Multiprogram control information processing system with process roll-in from main memory | |
US4737908A (en) | Buffer memory control system | |
US5276892A (en) | Destination control logic for arithmetic and logic unit for digital data processor | |
JPH0877143A (ja) | ベクトルデータ処理装置 | |
EP1193606B1 (en) | Apparatus and method for a host port interface unit in a digital signal processing unit | |
JPH10111798A (ja) | 情報処理装置 | |
JP2622026B2 (ja) | 中央処理装置におけるレジスタ書込制御方式 | |
WO1995022110A1 (en) | Write-read data operation for microprocessor | |
JPH05128279A (ja) | ワンチツプマイクロコンピユータ | |
JPH05143718A (ja) | 画像処理装置 | |
JPH0438560A (ja) | ストアデータ転送方式 | |
JPH06208539A (ja) | 高速データ転送方式 | |
JPH0535507A (ja) | 中央処理装置 |