JPH07141326A - リストベクトル処理装置 - Google Patents
リストベクトル処理装置Info
- Publication number
- JPH07141326A JPH07141326A JP28289293A JP28289293A JPH07141326A JP H07141326 A JPH07141326 A JP H07141326A JP 28289293 A JP28289293 A JP 28289293A JP 28289293 A JP28289293 A JP 28289293A JP H07141326 A JPH07141326 A JP H07141326A
- Authority
- JP
- Japan
- Prior art keywords
- elements
- register
- parallel processing
- vector
- stored
- 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.)
- Granted
Links
Landscapes
- Complex Calculations (AREA)
Abstract
(57)【要約】
【構成】リストベクトルの要素の同時並列処理を行った
とき、その処理によって空いたレジスタの空間に、後続
のリストベクトルの要素を単独にまたはブロック単位に
補充し、次回の処理のとき、その補充した要素を含むリ
ストベクトルの要素の同時並列処理の可能性をチェック
する。 【効果】リストベクトルの要素の同時並列処理を効率よ
く行うことが可能になり、従ってリストベクトルのロー
ドおよびストア処理のスループットを向上させることが
できる。
とき、その処理によって空いたレジスタの空間に、後続
のリストベクトルの要素を単独にまたはブロック単位に
補充し、次回の処理のとき、その補充した要素を含むリ
ストベクトルの要素の同時並列処理の可能性をチェック
する。 【効果】リストベクトルの要素の同時並列処理を効率よ
く行うことが可能になり、従ってリストベクトルのロー
ドおよびストア処理のスループットを向上させることが
できる。
Description
【0001】
【産業上の利用分野】本発明は情報処理装置のリストベ
クトル処理装置に関し、特にリストベクトルのロードお
よびストアに関する。
クトル処理装置に関し、特にリストベクトルのロードお
よびストアに関する。
【0002】
【従来の技術】図4は従来のリストベクトル処理装置の
一例を示すブロック図である。
一例を示すブロック図である。
【0003】情報処理装置の従来のリストベクトル処理
装置のストア処理は、各要素の並列処理を実現するた
め、図4に示すように、ベクトルレジスタ(図示省略)
から転送されたアドレスを一時的に保持するリストベク
トルバッファ20から、一定数の要素(本例では8要
素)ごとにリストベクトルの要素の順番に従ってレジス
タ21に格納し、このレジスタ21に格納した要素の中
の同時に並列処理が可能な要素を同時並列処理要素検出
回路23において検出する。この同時に並列処理が可能
な要素は、ポートの競合がなく、一度にページ変換が可
能である等の制約条件によって決定される。このように
して検出された同時並列処理可能な要素は、各要素毎に
設けられているメモリアクセス有効フラグ群24にメモ
リアクセス有効フラグ(フラグ)がセットされ、そのタ
イミングでレジスタ22に格納した要素の中の、上記フ
ラグがセットされた要素のみがメモリにアクセスされ
る。
装置のストア処理は、各要素の並列処理を実現するた
め、図4に示すように、ベクトルレジスタ(図示省略)
から転送されたアドレスを一時的に保持するリストベク
トルバッファ20から、一定数の要素(本例では8要
素)ごとにリストベクトルの要素の順番に従ってレジス
タ21に格納し、このレジスタ21に格納した要素の中
の同時に並列処理が可能な要素を同時並列処理要素検出
回路23において検出する。この同時に並列処理が可能
な要素は、ポートの競合がなく、一度にページ変換が可
能である等の制約条件によって決定される。このように
して検出された同時並列処理可能な要素は、各要素毎に
設けられているメモリアクセス有効フラグ群24にメモ
リアクセス有効フラグ(フラグ)がセットされ、そのタ
イミングでレジスタ22に格納した要素の中の、上記フ
ラグがセットされた要素のみがメモリにアクセスされ
る。
【0004】同時並列処理要素検出回路23は、レジス
タ21に格納した8個の要素のすべてを同時に並列処理
することができないと検出したときは、信号線200に
よってレジスタ21をホールドし、次のタイミングにお
いて、未処理の要素について、再度同時並列処理要素検
出回路23によって同時に並列処理が可能な要素を検出
する。
タ21に格納した8個の要素のすべてを同時に並列処理
することができないと検出したときは、信号線200に
よってレジスタ21をホールドし、次のタイミングにお
いて、未処理の要素について、再度同時並列処理要素検
出回路23によって同時に並列処理が可能な要素を検出
する。
【0005】例えば、同時並列処理要素検出回路23に
おいて、レジスタ21の要素(0)21aから要素
(3)21dが同時並列処理が可能であると判定される
と、メモリアクセス有効フラグ群24の要素(0)21
aから要素(3)21dに対応するフラグがセットさ
れ、そのタイミングでレジスタ22に格納されている要
素(0)22aから要素(3)22dがメモリにアクセ
スされる。また、同時並列処理要素検出回路23は、8
個の要素のうちの4個の要素しか同時並列処理を行うこ
とができないため、信号線200によってレジスタ21
をホールドする。ホールドしたレジスタ21には、同時
処理を行った要素(0)21a〜要素(3)21dを含
む要素(0)21a〜要素(7)21hが残っており、
未処理の要素(4)21e〜要素(7)21hを対象と
して、次のタイミングにおいて、再度同時並列処理要素
検出回路23によって、同時に並列処理が可能な要素を
検出する。
おいて、レジスタ21の要素(0)21aから要素
(3)21dが同時並列処理が可能であると判定される
と、メモリアクセス有効フラグ群24の要素(0)21
aから要素(3)21dに対応するフラグがセットさ
れ、そのタイミングでレジスタ22に格納されている要
素(0)22aから要素(3)22dがメモリにアクセ
スされる。また、同時並列処理要素検出回路23は、8
個の要素のうちの4個の要素しか同時並列処理を行うこ
とができないため、信号線200によってレジスタ21
をホールドする。ホールドしたレジスタ21には、同時
処理を行った要素(0)21a〜要素(3)21dを含
む要素(0)21a〜要素(7)21hが残っており、
未処理の要素(4)21e〜要素(7)21hを対象と
して、次のタイミングにおいて、再度同時並列処理要素
検出回路23によって、同時に並列処理が可能な要素を
検出する。
【0006】このようにして、レジスタ21に格納した
すべての要素をメモリにアクセスするまでレジスタ21
をホールドし、すべての要素をメモリにアクセスしたと
き、リストベクトルバッファ20から次の8個の要素を
レジスタ21に格納し、上記の動作を繰返えす。このよ
うにして、リストベクトルバッファ20のすべての要素
の処理を行う。
すべての要素をメモリにアクセスするまでレジスタ21
をホールドし、すべての要素をメモリにアクセスしたと
き、リストベクトルバッファ20から次の8個の要素を
レジスタ21に格納し、上記の動作を繰返えす。このよ
うにして、リストベクトルバッファ20のすべての要素
の処理を行う。
【0007】
【発明が解決しようとする課題】上述したように、従来
のリストベクトル処理装置は、一定数の要素と、次の一
定数の要素との間の同時並列処理要素の検出ができない
ため、それらの間に同時並列処理が可能な要素がある場
合も、それらを別々にメモリにアクセスされることにな
り、リストベクトルのロードおよびストアのスループッ
トが低いという問題点を有している。
のリストベクトル処理装置は、一定数の要素と、次の一
定数の要素との間の同時並列処理要素の検出ができない
ため、それらの間に同時並列処理が可能な要素がある場
合も、それらを別々にメモリにアクセスされることにな
り、リストベクトルのロードおよびストアのスループッ
トが低いという問題点を有している。
【0008】
【課題を解決するための手段】本発明の第一のリストベ
クトル処理装置は、ベクトル演算を行う複数のベクトル
演算部と、複数のバンクを有し同時並列処理を行うこと
が可能な複数のポートを有するメモリモジュールで構成
される複数の主記憶部と、前記ベクトル演算部と前記主
記憶部とのインタフェースを制御するインタフェース制
御部とを備える情報処理装置のリストベクトル処理装置
において、ベクトルレジスタから転送された要素をリス
トベクトルの要素の順番に従って格納するリストベクト
ルバッファと、前記リストベクトルバッファから読出し
た8個の要素を格納しそれらを同時に読出すことができ
る第一のレジスタと、前記第一のレジスタに格納した要
素の次の8個の要素を格納する第二のレジスタと、前記
第一のレジスタに格納してある要素の中の同時に並列処
理が可能な要素を検出する同時並列処理要素検出回路
と、次のタイミングにおいて前記第一のレジスタに格納
した各要素を格納する第三のレジスタレジスタと、前記
同時並列処理要素検出回路によって同時並列処理が可能
であることが検出された各要素に関するメモリアクセス
有効フラグを格納するメモリアクセス有効フラグ群と、
前記同時並列処理要素検出回路からの信号によって制御
され、前記第一のレジスタおよび前記第二のレジスタお
よび前記リストベクトルバッファの要素を移動させる処
理要素シフト回路とを備えている。
クトル処理装置は、ベクトル演算を行う複数のベクトル
演算部と、複数のバンクを有し同時並列処理を行うこと
が可能な複数のポートを有するメモリモジュールで構成
される複数の主記憶部と、前記ベクトル演算部と前記主
記憶部とのインタフェースを制御するインタフェース制
御部とを備える情報処理装置のリストベクトル処理装置
において、ベクトルレジスタから転送された要素をリス
トベクトルの要素の順番に従って格納するリストベクト
ルバッファと、前記リストベクトルバッファから読出し
た8個の要素を格納しそれらを同時に読出すことができ
る第一のレジスタと、前記第一のレジスタに格納した要
素の次の8個の要素を格納する第二のレジスタと、前記
第一のレジスタに格納してある要素の中の同時に並列処
理が可能な要素を検出する同時並列処理要素検出回路
と、次のタイミングにおいて前記第一のレジスタに格納
した各要素を格納する第三のレジスタレジスタと、前記
同時並列処理要素検出回路によって同時並列処理が可能
であることが検出された各要素に関するメモリアクセス
有効フラグを格納するメモリアクセス有効フラグ群と、
前記同時並列処理要素検出回路からの信号によって制御
され、前記第一のレジスタおよび前記第二のレジスタお
よび前記リストベクトルバッファの要素を移動させる処
理要素シフト回路とを備えている。
【0009】本発明の第二のリストベクトル処理装置
は、ベクトル演算を行う複数のベクトル演算部と、複数
のバンクを有し同時並列処理を行うことが可能な複数の
ポートを有するメモリモジュールで構成される複数の主
記憶部と、前記ベクトル演算部と前記主記憶部とのイン
タフェースを制御するインタフェース制御部とを備える
情報処理装置のリストベクトル処理装置において、ベク
トルレジスタから転送された要素をリストベクトルの要
素の順番に従って格納するリストベクトルバッファと、
前記リストベクトルバッファから読出した4個の要素を
1ブロックとする2ブロックを格納しそれらを同時に読
出すことができる第一のレジスタと、前記第一のレジス
タに格納してある要素の中の同時に並列処理が可能な要
素を検出する同時並列処理要素検出回路と、前記同時並
列処理要素検出回路からの信号によって制御され、前記
第一のレジスタの1番目のブロックとして格納する4個
の要素を選択する第一のセレクタと、前記同時並列処理
要素検出回路からの信号によって制御され、前記第一の
レジスタの2番目のブロックとして格納する4個の要素
を選択する第二のセレクタと、前記第一のレジスタに格
納した要素の次の1ブロックの4個の要素を格納する第
二のレジスタと、次のタイミングにおいて前記第一のレ
ジスタに格納した各要素を格納する第三のレジスタと、
前記同時並列処理要素検出回路によって同時並列処理が
可能であることが検出された各要素に関するメモリアク
セス有効フラグを格納するメモリアクセス有効フラグ群
とを備えている。
は、ベクトル演算を行う複数のベクトル演算部と、複数
のバンクを有し同時並列処理を行うことが可能な複数の
ポートを有するメモリモジュールで構成される複数の主
記憶部と、前記ベクトル演算部と前記主記憶部とのイン
タフェースを制御するインタフェース制御部とを備える
情報処理装置のリストベクトル処理装置において、ベク
トルレジスタから転送された要素をリストベクトルの要
素の順番に従って格納するリストベクトルバッファと、
前記リストベクトルバッファから読出した4個の要素を
1ブロックとする2ブロックを格納しそれらを同時に読
出すことができる第一のレジスタと、前記第一のレジス
タに格納してある要素の中の同時に並列処理が可能な要
素を検出する同時並列処理要素検出回路と、前記同時並
列処理要素検出回路からの信号によって制御され、前記
第一のレジスタの1番目のブロックとして格納する4個
の要素を選択する第一のセレクタと、前記同時並列処理
要素検出回路からの信号によって制御され、前記第一の
レジスタの2番目のブロックとして格納する4個の要素
を選択する第二のセレクタと、前記第一のレジスタに格
納した要素の次の1ブロックの4個の要素を格納する第
二のレジスタと、次のタイミングにおいて前記第一のレ
ジスタに格納した各要素を格納する第三のレジスタと、
前記同時並列処理要素検出回路によって同時並列処理が
可能であることが検出された各要素に関するメモリアク
セス有効フラグを格納するメモリアクセス有効フラグ群
とを備えている。
【0010】
【実施例】次に、本発明の実施例について図面を参照し
て説明する。
て説明する。
【0011】図1は本発明の第一の実施例を示すブロッ
ク図、図2は図1および図3の実施例の動作を示す説明
図である。
ク図、図2は図1および図3の実施例の動作を示す説明
図である。
【0012】図1において、リストベクトルバッファ1
0は、ベクトルレジスタ(図示省略)から転送されたア
ドレスを一時的に保持するバッファで、各要素をリスト
ベクトルの要素の順番に従って格納し、8個の要素を同
時に読出すことができる。
0は、ベクトルレジスタ(図示省略)から転送されたア
ドレスを一時的に保持するバッファで、各要素をリスト
ベクトルの要素の順番に従って格納し、8個の要素を同
時に読出すことができる。
【0013】レジスタ11は、リストベクトルバッファ
10から読出した8個のリストベクトルの要素を格納す
る。
10から読出した8個のリストベクトルの要素を格納す
る。
【0014】同時並列処理要素検出回路15は、レジス
タ11に格納した要素の中の同時に並列処理が可能な
(同じタイミングでメモリにアクセスできる)要素を検
出する。同時に並列処理が可能な要素は、メモリポート
の競合がなく、一度にページ変換が可能である等の条件
によって決定される。
タ11に格納した要素の中の同時に並列処理が可能な
(同じタイミングでメモリにアクセスできる)要素を検
出する。同時に並列処理が可能な要素は、メモリポート
の競合がなく、一度にページ変換が可能である等の条件
によって決定される。
【0015】レジスタ12は、レジスタ11に格納した
各要素を、次のタイミングで格納するレジスタである。
各要素を、次のタイミングで格納するレジスタである。
【0016】メモリアクセス有効フラグ群16は、同時
並列処理要素検出回路15によって検出された各要素に
関するメモリアクセス有効フラグ(フラグ)を格納す
る。例えば、レジスタ11の要素(0)11aに対する
フラグがセットされていれば、レジスタ12の要素
(0)12aのメモリアクセスが有効となる。
並列処理要素検出回路15によって検出された各要素に
関するメモリアクセス有効フラグ(フラグ)を格納す
る。例えば、レジスタ11の要素(0)11aに対する
フラグがセットされていれば、レジスタ12の要素
(0)12aのメモリアクセスが有効となる。
【0017】レジスタ14は、次のタイミングでレジス
タ11に格納する要素を格納しているレジスタである。
これは、リストベクトルバッファ10が一度に1ワード
しかリードできず、1ワードには8要素が格納されてお
り、8要素が同時に読出し可能なレジスタファイル構成
となっているためである。
タ11に格納する要素を格納しているレジスタである。
これは、リストベクトルバッファ10が一度に1ワード
しかリードできず、1ワードには8要素が格納されてお
り、8要素が同時に読出し可能なレジスタファイル構成
となっているためである。
【0018】処理要素シフト回路13は、同時並列処理
要素検出回路15から信号線100を介して送られてく
る信号によって制御され、レジスタ11およびレジスタ
14およびリストベクトルバッファ10の値をシフトし
てレジスタ11に出力する。例えば、レジスタ11に格
納してある8個の要素(0)11a〜要素(7)11h
の中の5個の要素(0)11a〜要素(4)11eが同
時並列処理要素検出回路によって同時に並列処理が可能
な要素であると判定されると、処理要素シフト回路13
は、要素(5)11f〜要素(7)11hを要素(0)
11a〜要素(2)11cの位置に移動し、レジスタ1
4に格納してある8個の要素(0)14a〜要素(7)
14hの中の5個の要素(0)14a〜要素(4)14
eをレジスタ11の要素(3)11d〜要素(7)11
hの位置に移動する。これによって新たな8個の要素が
レジスタ11に格納されることになる。この動作は、同
時並列処理要素検出回路15が、レジスタ11に格納し
てある8個の要素(0)11a〜要素(7)11hの中
のどの要素とどの要素が同時並列処理できるかを判断
し、その結果によって移動する要素とその数とを信号線
100を介して処理要素シフト回路13に送ることによ
って制御している。
要素検出回路15から信号線100を介して送られてく
る信号によって制御され、レジスタ11およびレジスタ
14およびリストベクトルバッファ10の値をシフトし
てレジスタ11に出力する。例えば、レジスタ11に格
納してある8個の要素(0)11a〜要素(7)11h
の中の5個の要素(0)11a〜要素(4)11eが同
時並列処理要素検出回路によって同時に並列処理が可能
な要素であると判定されると、処理要素シフト回路13
は、要素(5)11f〜要素(7)11hを要素(0)
11a〜要素(2)11cの位置に移動し、レジスタ1
4に格納してある8個の要素(0)14a〜要素(7)
14hの中の5個の要素(0)14a〜要素(4)14
eをレジスタ11の要素(3)11d〜要素(7)11
hの位置に移動する。これによって新たな8個の要素が
レジスタ11に格納されることになる。この動作は、同
時並列処理要素検出回路15が、レジスタ11に格納し
てある8個の要素(0)11a〜要素(7)11hの中
のどの要素とどの要素が同時並列処理できるかを判断
し、その結果によって移動する要素とその数とを信号線
100を介して処理要素シフト回路13に送ることによ
って制御している。
【0019】また、次のタイミングでレジスタ11に格
納した8個の要素(5)11f〜要素(7)11hおよ
び要素(0)14a〜要素(4)14eの中の先頭の6
個の要素が同時並列処理されると、処理要素シフト回路
13は、先にレジスタ11に格納した要素(3)14d
〜要素(4)14eを要素(0)11a〜要素(1)1
1bの位置に移動し、更にレジスタ14に格納してある
3個の要素(5)14f〜要素(7)14hをレジスタ
11の要素(2)11c〜要素(4)11eの位置に移
動する。この状態でレジスタ11の要素(5)11f〜
要素(7)11hの位置が空いているので、これらの位
置にリストベクトルバッファ10の最初の3個の要素を
格納する。このとき、リストベクトルバッファ10の次
の8個の要素は、レジスタ14に格納される。
納した8個の要素(5)11f〜要素(7)11hおよ
び要素(0)14a〜要素(4)14eの中の先頭の6
個の要素が同時並列処理されると、処理要素シフト回路
13は、先にレジスタ11に格納した要素(3)14d
〜要素(4)14eを要素(0)11a〜要素(1)1
1bの位置に移動し、更にレジスタ14に格納してある
3個の要素(5)14f〜要素(7)14hをレジスタ
11の要素(2)11c〜要素(4)11eの位置に移
動する。この状態でレジスタ11の要素(5)11f〜
要素(7)11hの位置が空いているので、これらの位
置にリストベクトルバッファ10の最初の3個の要素を
格納する。このとき、リストベクトルバッファ10の次
の8個の要素は、レジスタ14に格納される。
【0020】このようにして、同時並列処理要素検出回
路15によって同時並列処理が検出されるレジスタ11
中の要素数は、常に8個となっている。
路15によって同時並列処理が検出されるレジスタ11
中の要素数は、常に8個となっている。
【0021】図4は、上記の動作によってリストベクト
ルのロードおよびストアのスループットがいかに向上す
るかを示す図であり、リストベクトルの要素数が40の
場合を例として、従来の場合と比較して示した図であ
る。
ルのロードおよびストアのスループットがいかに向上す
るかを示す図であり、リストベクトルの要素数が40の
場合を例として、従来の場合と比較して示した図であ
る。
【0022】図4(a)は、リストベクトルの40個の
要素のポートアドレス40を示したものであり、この場
合、メモリポートの数は16個(0〜9,A〜F)で、
16進数で表わしている。
要素のポートアドレス40を示したものであり、この場
合、メモリポートの数は16個(0〜9,A〜F)で、
16進数で表わしている。
【0023】図4(b)は、従来の場合のメモリアクセ
ス動作を示す図で、アクセス回数41aの各回毎の同時
処理要素をポート番号で示している。この場合は、同時
処理要素の検出条件を、メモリポートの競合のみとし、
リストベクトルの要素の順番に従ってそれらの先頭の要
素からメモリポートが競合する要素をチェックし、メモ
リポートの競合があったとき、その要素の前の要素まで
を同時並列処理が可能であるとしている。従って、第1
回目のアクセスでは、最初の8個の要素について同時並
列処理の検出を行い、「5,B,3,A」の4個の要素
が同時並列処理される。これは、5個目の要素のメモリ
ポートが「5」であって先頭の要素のメモリポートの同
じであるため、メモリポートの競合が発生して同時並列
処理が不可能となるためである。
ス動作を示す図で、アクセス回数41aの各回毎の同時
処理要素をポート番号で示している。この場合は、同時
処理要素の検出条件を、メモリポートの競合のみとし、
リストベクトルの要素の順番に従ってそれらの先頭の要
素からメモリポートが競合する要素をチェックし、メモ
リポートの競合があったとき、その要素の前の要素まで
を同時並列処理が可能であるとしている。従って、第1
回目のアクセスでは、最初の8個の要素について同時並
列処理の検出を行い、「5,B,3,A」の4個の要素
が同時並列処理される。これは、5個目の要素のメモリ
ポートが「5」であって先頭の要素のメモリポートの同
じであるため、メモリポートの競合が発生して同時並列
処理が不可能となるためである。
【0024】同様にして、第2回目のアクセスでは、
「5,6」の2個の要素が同時並列処理され、第3回目
のアクセスでは、「6,9」の2個の要素が同時並列処
理される。これは、従来の場合は、最初の8個の要素間
についてのみ同時並列処理の検出を行うことができるた
めであり、それに続く要素については、例え同時平行処
理が可能な要素があっても、それらの検出が不可能なた
めである。
「5,6」の2個の要素が同時並列処理され、第3回目
のアクセスでは、「6,9」の2個の要素が同時並列処
理される。これは、従来の場合は、最初の8個の要素間
についてのみ同時並列処理の検出を行うことができるた
めであり、それに続く要素については、例え同時平行処
理が可能な要素があっても、それらの検出が不可能なた
めである。
【0025】第4回目のアクセスでは、次の8個の要素
について同時並列処理の検出を行い、「D,E,A,
0,C,E」の6個の要素が同時並列処理され、第5回
目のアクセスでは「C,8」の2個の要素が同時並列処
理される。
について同時並列処理の検出を行い、「D,E,A,
0,C,E」の6個の要素が同時並列処理され、第5回
目のアクセスでは「C,8」の2個の要素が同時並列処
理される。
【0026】このようにして、従来の場合は、12回の
メモリアクセスによって40個の要素の処理を行うこと
ができる。
メモリアクセスによって40個の要素の処理を行うこと
ができる。
【0027】図4(c)は、図1の実施例の場合のメモ
リアクセス動作を示す図で、同時処理要素の検出条件お
よび方法は、図4(b)の場合と同じである。従って第
1回目のアクセスでは「5,B,3,A」の4個の要素
が同時並列処理されるが、第2回目のアクセスのとき
は、検出対象の要素が「5,6,6,9,D,E,A,
0」の8個の要素となり、第33目のアクセスのとき
は、検出対象の要素が「6,9,D,E,A,0,C,
E」の8個の要素となる。従って、第2回目のアクセス
では、「5,6」の2個の要素が同時並列処理され、第
3回目のアクセスでは、「6,9,D,E,A,0,
C」の7個の要素が同時並列処理される。
リアクセス動作を示す図で、同時処理要素の検出条件お
よび方法は、図4(b)の場合と同じである。従って第
1回目のアクセスでは「5,B,3,A」の4個の要素
が同時並列処理されるが、第2回目のアクセスのとき
は、検出対象の要素が「5,6,6,9,D,E,A,
0」の8個の要素となり、第33目のアクセスのとき
は、検出対象の要素が「6,9,D,E,A,0,C,
E」の8個の要素となる。従って、第2回目のアクセス
では、「5,6」の2個の要素が同時並列処理され、第
3回目のアクセスでは、「6,9,D,E,A,0,
C」の7個の要素が同時並列処理される。
【0028】このようにして、図1の実施例の場合は、
9回のメモリアクセスによって40個の要素の処理を行
うことが可能となり、スループットが向上する。
9回のメモリアクセスによって40個の要素の処理を行
うことが可能となり、スループットが向上する。
【0029】図3は本発明の第二の実施例を示すブロッ
ク図である。
ク図である。
【0030】図3において、リストベクトルバッファ3
0は、ベクトルレジスタ(図示省略)から転送されたア
ドレスを一時的に保持するバッファで、各要素をリスト
ベクトルの要素の順番に従って格納し、8個の要素を同
時に読出すことができる。
0は、ベクトルレジスタ(図示省略)から転送されたア
ドレスを一時的に保持するバッファで、各要素をリスト
ベクトルの要素の順番に従って格納し、8個の要素を同
時に読出すことができる。
【0031】レジスタ31は、リストベクトルバッファ
30から読出した8個のリストベクトルの要素を、4個
の要素ずつの二つのブロックに分割して格納する。
30から読出した8個のリストベクトルの要素を、4個
の要素ずつの二つのブロックに分割して格納する。
【0032】セレクタ33は、レジスタ31の最初のブ
ロックの4個の要素(0)31a〜要素(3)31dと
して格納する要素を選択するセレクタであり、セレクタ
34は、レジスタ31の後のブロックの4個の要素
(4)31e〜要素(7)31hとして格納する要素を
選択するセレクタである。
ロックの4個の要素(0)31a〜要素(3)31dと
して格納する要素を選択するセレクタであり、セレクタ
34は、レジスタ31の後のブロックの4個の要素
(4)31e〜要素(7)31hとして格納する要素を
選択するセレクタである。
【0033】レジスタ35は、レジスタ31に格納した
要素の後続の1ブロックの4個の要素を格納するレジス
タである。
要素の後続の1ブロックの4個の要素を格納するレジス
タである。
【0034】同時並列処理要素検出回路36は、レジス
タ31に格納した要素の中の同時に並列処理が可能な
(同じタイミングでメモリにアクセスできる)要素を検
出する。同時に並列処理が可能な要素は、メモリポート
の競合がなく、一度にページ変換が可能である等の条件
によって決定される。同時並列処理要素検出回路36は
また、4個の要素を1ブロックとして制御するための回
路を有しており、信号線300を介してセレクタ33お
よび34に信号を送ることによって制御する。
タ31に格納した要素の中の同時に並列処理が可能な
(同じタイミングでメモリにアクセスできる)要素を検
出する。同時に並列処理が可能な要素は、メモリポート
の競合がなく、一度にページ変換が可能である等の条件
によって決定される。同時並列処理要素検出回路36は
また、4個の要素を1ブロックとして制御するための回
路を有しており、信号線300を介してセレクタ33お
よび34に信号を送ることによって制御する。
【0035】レジスタ32は、レジスタ31に格納した
各要素を、次のタイミングで格納するレジスタである。
各要素を、次のタイミングで格納するレジスタである。
【0036】メモリアクセス有効フラグ群37は、同時
並列処理要素検出回路36によって検出された各要素に
関するメモリアクセス有効フラグ(フラグ)を格納す
る。例えば、レジスタ31の要素(0)31aに対する
フラグがセットされていれば、レジスタ32の要素
(0)32aのメモリアクセスが有効となる。
並列処理要素検出回路36によって検出された各要素に
関するメモリアクセス有効フラグ(フラグ)を格納す
る。例えば、レジスタ31の要素(0)31aに対する
フラグがセットされていれば、レジスタ32の要素
(0)32aのメモリアクセスが有効となる。
【0037】次に、上述のように構成したリストベクト
ル処理装置の動作について、図2を参照して説明する。
ル処理装置の動作について、図2を参照して説明する。
【0038】図2(d)は、図3の実施例の場合のメモ
リアクセス動作を示す図で、同時処理要素の検出条件お
よび方法は、図2(b)の場合と同じである。
リアクセス動作を示す図で、同時処理要素の検出条件お
よび方法は、図2(b)の場合と同じである。
【0039】レジスタ31には、8個のリストベクトル
の要素(0)31a〜要素(7)31hとして「5,
B,3,A,5,6,6,9」が格納されている。
の要素(0)31a〜要素(7)31hとして「5,
B,3,A,5,6,6,9」が格納されている。
【0040】第1回目のアクセスでは、同時並列処理要
素検出回路36によってこれらの要素のメモリポートの
競合のチェックを行い、要素(0)31a〜要素(3)
31dの「5,B,3,A」の4個の要素を同時並列処
理する。
素検出回路36によってこれらの要素のメモリポートの
競合のチェックを行い、要素(0)31a〜要素(3)
31dの「5,B,3,A」の4個の要素を同時並列処
理する。
【0041】要素(0)31a〜要素(3)31dの
「5,B,3,A」の4個の要素が1ブロックとして全
部処理できたため、レジスタ31は、次のタイミングで
次のブロックの4個の要素(4)31e〜要素(7)3
1hの「5,6,6,9」を要素(0)31a〜要素
(3)31cの位置に移動し、レジスタ35に格納して
ある1ブロックの4個の要素(4)35e〜要素(7)
35hの「D,E,A,0」を要素(4)31e〜要素
(7)31hの位置に移動して格納する。このとき、レ
ジスタ35には、後続の1ブロックの「C,E,C,
8」がリストベクトルバッファ30から格納される。
「5,B,3,A」の4個の要素が1ブロックとして全
部処理できたため、レジスタ31は、次のタイミングで
次のブロックの4個の要素(4)31e〜要素(7)3
1hの「5,6,6,9」を要素(0)31a〜要素
(3)31cの位置に移動し、レジスタ35に格納して
ある1ブロックの4個の要素(4)35e〜要素(7)
35hの「D,E,A,0」を要素(4)31e〜要素
(7)31hの位置に移動して格納する。このとき、レ
ジスタ35には、後続の1ブロックの「C,E,C,
8」がリストベクトルバッファ30から格納される。
【0042】次に同時並列処理要素検出回路36は、レ
ジスタ31の8個のリストベクトルの要素「5,6,
6,9,D,E,A,0」のメモリポートの競合のチェ
ックを行い、「5,6」の2個の要素を第2回目のアク
セスにおいて同時並列処理する。この時点では、4個の
要素のすべてが処理されたブロックがないため、レジス
タ31はホールドされ、次のタイミングにおいて「6,
9,D,E,A,0」の6個の要素のメモリポートの競
合のチェックが行われる。
ジスタ31の8個のリストベクトルの要素「5,6,
6,9,D,E,A,0」のメモリポートの競合のチェ
ックを行い、「5,6」の2個の要素を第2回目のアク
セスにおいて同時並列処理する。この時点では、4個の
要素のすべてが処理されたブロックがないため、レジス
タ31はホールドされ、次のタイミングにおいて「6,
9,D,E,A,0」の6個の要素のメモリポートの競
合のチェックが行われる。
【0043】第3回目のアクセスのときは、6個の要素
「6,9,D,E,A,0」がすべて処理され、レジス
タ31には、次の2ブロックの8個のリストベクトルの
要素「C,E,C,8,0,3,8,3」が格納され
る。
「6,9,D,E,A,0」がすべて処理され、レジス
タ31には、次の2ブロックの8個のリストベクトルの
要素「C,E,C,8,0,3,8,3」が格納され
る。
【0044】以下同様に、4個の要素を1ブロックとし
て一括してレジスタ31に格納されながら、上述の動作
が繰返えされる。この結果、10回のメモリアクセスに
よって40個の要素の処理を行うことが可能となり、ス
ループットが向上する。
て一括してレジスタ31に格納されながら、上述の動作
が繰返えされる。この結果、10回のメモリアクセスに
よって40個の要素の処理を行うことが可能となり、ス
ループットが向上する。
【0045】
【発明の効果】以上説明したように、本発明のリストベ
クトル処理装置は、リストベクトルの要素の同時並列処
理を行ったとき、その処理によって空いたレジスタの空
間に、後続のリストベクトルの要素を単独にまたはブロ
ック単位に補充し、次回の処理のとき、その補充した要
素を含むリストベクトルの要素の同時並列処理の可能性
をチェックすることにより、リストベクトルの要素の同
時並列処理を効率よく行うことが可能になるという効果
があり、従ってリストベクトルのロードおよびストア処
理のスループットを向上させることができるという効果
がある。
クトル処理装置は、リストベクトルの要素の同時並列処
理を行ったとき、その処理によって空いたレジスタの空
間に、後続のリストベクトルの要素を単独にまたはブロ
ック単位に補充し、次回の処理のとき、その補充した要
素を含むリストベクトルの要素の同時並列処理の可能性
をチェックすることにより、リストベクトルの要素の同
時並列処理を効率よく行うことが可能になるという効果
があり、従ってリストベクトルのロードおよびストア処
理のスループットを向上させることができるという効果
がある。
【図1】本発明の第一の実施例を示すブロック図であ
る。
る。
【図2】図1および図3の実施例の動作を示す説明図で
ある。
ある。
【図3】本発明の第二の実施例を示すブロック図であ
る。
る。
【図4】従来のリストベクトル処理装置の一例を示すブ
ロック図である。
ロック図である。
10・20・30 リストベクトルバッファ 11・12・14・21・22・31・32・35
レジスタ 13 処理要素シフト回路13 15・23・36 同時並列処理要素検出回路 16・24・37 メモリアクセス有効フラグ群 33・34 セレクタ 100・200・300 信号線
レジスタ 13 処理要素シフト回路13 15・23・36 同時並列処理要素検出回路 16・24・37 メモリアクセス有効フラグ群 33・34 セレクタ 100・200・300 信号線
Claims (2)
- 【請求項1】 ベクトル演算を行う複数のベクトル演算
部と、複数のバンクを有し同時並列処理を行うことが可
能な複数のポートを有するメモリモジュールで構成され
る複数の主記憶部と、前記ベクトル演算部と前記主記憶
部とのインタフェースを制御するインタフェース制御部
とを備える情報処理装置のリストベクトル処理装置にお
いて、 ベクトルレジスタから転送された要素をリストベクトル
の要素の順番に従って格納するリストベクトルバッファ
と、 前記リストベクトルバッファから読出した8個の要素を
格納しそれらを同時に読出すことができる第一のレジス
タと、 前記第一のレジスタに格納した要素の次の8個の要素を
格納する第二のレジスタと、 前記第一のレジスタに格納してある要素の中の同時に並
列処理が可能な要素を検出する同時並列処理要素検出回
路と、 次のタイミングにおいて前記第一のレジスタに格納した
各要素を格納する第三のレジスタレジスタと、 前記同時並列処理要素検出回路によって同時並列処理が
可能であることが検出された各要素に関するメモリアク
セス有効フラグを格納するメモリアクセス有効フラグ群
と、 前記同時並列処理要素検出回路からの信号によって制御
され、前記第一のレジスタおよび前記第二のレジスタお
よび前記リストベクトルバッファの要素を移動させる処
理要素シフト回路とを備えることを特徴とするリストベ
クトル処理装置。 - 【請求項2】 ベクトル演算を行う複数のベクトル演算
部と、複数のバンクを有し同時並列処理を行うことが可
能な複数のポートを有するメモリモジュールで構成され
る複数の主記憶部と、前記ベクトル演算部と前記主記憶
部とのインタフェースを制御するインタフェース制御部
とを備える情報処理装置のリストベクトル処理装置にお
いて、 ベクトルレジスタから転送された要素をリストベクトル
の要素の順番に従って格納するリストベクトルバッファ
と、 前記リストベクトルバッファから読出した4個の要素を
1ブロックとする2ブロックを格納しそれらを同時に読
出すことができる第一のレジスタと、 前記第一のレジスタに格納してある要素の中の同時に並
列処理が可能な要素を検出する同時並列処理要素検出回
路と、 前記同時並列処理要素検出回路からの信号によって制御
され、前記第一のレジスタの1番目のブロックとして格
納する4個の要素を選択する第一のセレクタと、 前記同時並列処理要素検出回路からの信号によって制御
され、前記第一のレジスタの2番目のブロックとして格
納する4個の要素を選択する第二のセレクタと、 前記第一のレジスタに格納した要素の次の1ブロックの
4個の要素を格納する第二のレジスタと、 次のタイミングにおいて前記第一のレジスタに格納した
各要素を格納する第三のレジスタと、 前記同時並列処理要素検出回路によって同時並列処理が
可能であることが検出された各要素に関するメモリアク
セス有効フラグを格納するメモリアクセス有効フラグ群
とを備えることを特徴とするリストベクトル処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP28289293A JP3245488B2 (ja) | 1993-11-12 | 1993-11-12 | リストベクトル処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP28289293A JP3245488B2 (ja) | 1993-11-12 | 1993-11-12 | リストベクトル処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH07141326A true JPH07141326A (ja) | 1995-06-02 |
JP3245488B2 JP3245488B2 (ja) | 2002-01-15 |
Family
ID=17658456
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP28289293A Expired - Fee Related JP3245488B2 (ja) | 1993-11-12 | 1993-11-12 | リストベクトル処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3245488B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015528610A (ja) * | 2012-09-28 | 2015-09-28 | インテル・コーポレーション | リードマスク及びライトマスクにより制御されるベクトル移動命令 |
-
1993
- 1993-11-12 JP JP28289293A patent/JP3245488B2/ja not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015528610A (ja) * | 2012-09-28 | 2015-09-28 | インテル・コーポレーション | リードマスク及びライトマスクにより制御されるベクトル移動命令 |
JP2017107579A (ja) * | 2012-09-28 | 2017-06-15 | インテル・コーポレーション | リードマスク及びライトマスクにより制御されるベクトル移動命令 |
Also Published As
Publication number | Publication date |
---|---|
JP3245488B2 (ja) | 2002-01-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS6027964A (ja) | メモリアクセス制御回路 | |
KR100573256B1 (ko) | 복수어드레스유지기억장치 | |
US5388230A (en) | Parallel processor having multi-processing units either connected or bypassed in either series or parallel by the use of bus switching | |
JP3971535B2 (ja) | Simd型プロセッサ | |
US5201058A (en) | Control system for transferring vector data without waiting for transfer end of the previous vector data | |
JPH07141326A (ja) | リストベクトル処理装置 | |
US5099416A (en) | An operand storage compare (osc) detecting device using column and row signals in a buffer storage | |
JP2003316571A (ja) | 並列プロセッサ | |
JP2731761B2 (ja) | ネットワーク制御装置 | |
US6772271B2 (en) | Reduction of bank switching instructions in main memory of data processing apparatus having main memory and plural memory | |
JP2591928B2 (ja) | キャッシュ記憶回路 | |
JPH07319829A (ja) | データ転送方法 | |
JP2003216950A (ja) | パターンマッチングなどを行なうためのsimd型マイクロプロセッサ | |
JPH07114509A (ja) | メモリアクセス装置 | |
JPH096759A (ja) | ベクトル処理装置 | |
JPH07219845A (ja) | キャッシュメモリ制御方式 | |
JPS6024976B2 (ja) | メモリ・アクセス制御方式 | |
JPH07175721A (ja) | メモリアクセス制御方式 | |
JPH11167519A (ja) | メモリリフレッシュ制御回路、メモリ、メモリモジュー ル、デジタル装置 | |
JPH05334233A (ja) | データ転送装置 | |
JPS61198351A (ja) | ダイレクト・メモリ・アクセス制御回路 | |
JPS63123145A (ja) | バツフアメモリ装置 | |
JPH0368045A (ja) | 主記憶制御方式 | |
JPH01305452A (ja) | バッファ記憶装置のストア制御方式 | |
JPH0756807A (ja) | メモリバンク自動切替システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20011009 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081026 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091026 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |