説明

ベクトル処理装置

【課題】ベクトルレジスタ及び演算器の解放を待つことなく後続命令を発行すること。
【解決手段】マスクデータ制御部は、マスク生成命令に応じて、マスク生成命令比較結果選択指示とマスクレジスタ更新指示とを出力する。比較結果セレクタは、マスク生成命令比較結果選択指示に応じて、マスク生成命令に対応する比較結果格納レジスタに格納されている比較結果データをマスク生成命令比較結果選択結果として出力する。マスクセレクタは、マスクレジスタ更新指示に応じて、マスク生成命令比較結果選択結果をマスクデータとしてマスクレジスタに書き込む(マスクレジスタを更新する)。マスク生成命令は、ベクトルレジスタとベクトルデータの読み出しと演算器の処理対象ではない。従って、ベクトルレジスタの読み出しと演算器はマスク生成命令以外で動作可能である。即ち、同時に複数の命令を処理することができる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ベクトルデータに対してマスク生成演算を実行してマスクデータを生成するベクトル処理装置に関する。
【背景技術】
【0002】
図1は、従来のベクトル処理装置の構成を示すブロック図である。従来のベクトル処理装置は、命令記憶部101、ベクトル部制御回路1102、クロスバ103、ベクトルレジスタ104、演算器105、ビットシフタ106、マスクレジスタ107を具備している。
【0003】
クロスバ103は、演算器105を含む1個あるいは複数の演算器から出力されるマスク生成演算結果118を受ける。クロスバ103は、その演算結果118をベクトルデータ110として、0要素目からn要素目(nは0より大きい整数である)までn+1クロックサイクル間、ベクトルレジスタ104へ書き込む。
【0004】
マスク生成命令111が発行されたときに、命令記憶部101に格納される。ベクトル部制御回路1102は、このマスク生成命令111に応じて、ベクトルレジスタ読み出し指示112をベクトルレジスタ104に出力し、マスク生成命令演算指示114を演算器105に出力し、演算結果格納指示116をビットシフタ106に出力する。
【0005】
ベクトルレジスタ104は、ベクトルレジスタ読み出し指示112に応じて、0要素目から逐次読み出しを開始してn要素目までn+1クロックサイクル間連続してベクトルデータ110の読み出しを行い、ベクトルデータ113として演算器105に出力する。
【0006】
演算器105は、マスク生成命令演算指示114に応じて、ベクトルレジスタ104からのベクトルデータ113に対してマスク生成演算を実行し、その結果をマスク生成演算結果118としてクロスバ103に出力し、マスク生成演算結果118をマスク生成命令演算結果115として0要素目からn要素目までn+1クロックサイクル間連続してビットシフタ106に出力する。
【0007】
ビットシフタ106は、演算結果格納指示116に応じて、n+1個の連続要素であるマスク生成命令演算結果115をマスクデータ117として、ベクトルレジスタ104の要素番号に対応するマスクレジス107の各ビットに、n+1クロックサイクル間連続して書き込みを行う。マスクデータ117は、ベクトルデータ113の演算有効又は演算無効を判別するために用いられる。
【0008】
即ち、従来のベクトル処理装置では、マスク生成命令が発行されたときに、マスクレジスタ107の0要素目に書き込んでからn+1クロックサイクル後でないとn要素目が書き込まれないので、このマスク生成命令を実行する処理に時間を要してしまう。
【0009】
また、従来のベクトル処理装置では、マスク生成命令により、ベクトルレジスタ104からベクトルデータ113が読み出されるときと演算器105からマスク生成命令演算結果が出力されるときに、n+1クロックサイクル間占有してしまう。
【0010】
このように、従来のベクトル処理装置では、マスク生成命令の後続命令として、同じベクトルレジスタあるいは同演算器を使用する命令があった場合、マスク生成命令が完了するまで後続命令を発行できない。
【0011】
従って、マスク生成命令の後続命令として同じベクトルレジスタ及び演算器を使用する命令が存在した場合、ベクトルレジスタ及び演算器が解放されるまで待たずに後続命令を発行できることが望まれる。
【0012】
ベクトル演算に関する文献を紹介する。
【0013】
特開平9−91272号公報には、ベクトルデータ処理装置が記載されている。ベクトルデータ処理装置は、ベクトルデータに付随し、該ベクトルデータ処理の有効/無効の識別に使用するマスクデータを保持し、該マスクデータの更新や送出を制御するマスク制御部を有している。ベクトルデータ処理装置は、1サイクルで更新/送出処理する前記マスクデータの要素数を決定するサイクル要素数決定手段と、該サイクル要素数決定手段からの指示に従って、マスク更新/送出命令での動作を切り替えるマスク命令動作切り替え手段を設けたことを特徴としている。
【0014】
特開平1−319864号公報には、ベクトルマスク制御方式が記載されている。ベクトルマスク制御方式は、通常のベクトル命令、ベクトルマスク生成命令およびマスク制御付きベクトル命令が実行されるものである。このベクトルマスク制御方式は、ベクトルマスク生成命令に基づきベクトルマスクデータを生成するベクトルマスクデータ生成手段と、このベクトルマスクデータ生成手段により生成されたベクトルマスクデータの内容が対象配列データの全ての配列要素について抑止要指示であるか否かを判定する抑止要指示判定手段と、この抑止要指示判定手段の判定によりベクトルマスクデータの内容が対象配列データの全ての配列要素について抑止要指示である場合にマスク特殊制御フラグを設定するマスク特殊制御フラグ設定手段と、このマスク特殊制御フラグ設定手段によりマスク特殊制御フラグが設定されている場合にマスク制御付きベクトル命令の実行時にベクトルマスクデータ生成手段により生成されたベクトルマスクデータを参照せずに無動作命令の演算を実行する演算実行手段と、を有することを特徴としている。
【0015】
特開昭59−58580号公報には、マスク付きベクトル演算処理装置が記載されている。マスク付きベクトル演算処理装置は、2つ以上のベクトルマスク専用レジスタと、少なくとも1つのベクトルマスク演算器と、ベクトルマスク専用レジスタへの書き込み処理に並行して、同一のベクトルマスク専用レジスタからの脱出し処理を行うための同期の手段と、ベクトルマスク専用レジスタ間での演算命令の処理にあたって、要求されるマスク情報間での読み出し及び演算の同期手段と、マスク付きベクトル演算処理命令の処理にあたって、要求されるベクトルデータ及びマスク情報の間での読み出し及び演算処理の同期手段とを有している。
【先行技術文献】
【特許文献】
【0016】
【特許文献1】特開平9−91272号公報
【特許文献2】特開平1−319864号公報
【特許文献3】特開昭59−58580号公報
【発明の概要】
【発明が解決しようとする課題】
【0017】
本発明の課題は、同一のベクトルレジスタあるいは同一演算器を使用する後続命令が存在した場合、そのベクトルレジスタ及び演算器の解放を待つことなく後続命令を発行できるベクトル処理装置を提供することにある。
【課題を解決するための手段】
【0018】
本発明のベクトル処理装置は、ベクトル部制御回路と、ベクトルレジスタと、演算器と、複数の比較結果格納レジスタと、マスク比較器と、マスクデータ制御部と、比較結果セレクタと、マスクレジスタと、マスクセレクタとを具備している。ベクトル部制御回路は、ベクトルレジスタ読み出し指示とマスク生成命令演算指示とを出力する。ベクトルレジスタは、マスク生成演算結果がベクトルデータとして書き込まれ、ベクトルレジスタ読み出し指示に応じて、ベクトルデータが読み出される。演算器は、マスク生成命令演算指示に応じて、ベクトルレジスタから読み出されたベクトルデータに対してマスク生成演算を実行し、その結果をマスク生成演算結果として出力する。複数の比較結果格納レジスタは、複数種類のマスク生成命令にそれぞれ対応する。マスク比較器は、ベクトルレジスタに書き込まれるベクトルデータと同じベクトルデータの要素と、複数種類のマスク生成命令に対応した要素との比較演算を実行し、その結果を比較結果データとして、複数の比較結果格納レジスタのうちの1つの比較結果格納レジスタに格納する。マスクデータ制御部は、マスク生成命令に応じて、複数の比較結果格納レジスタのうちの、マスク生成命令に対応する比較結果格納レジスタを選択するためのマスク生成命令比較結果選択指示と、マスクレジスタ更新指示とを出力する。比較結果セレクタは、マスク生成命令比較結果選択指示に応じて、マスク生成命令に対応する比較結果格納レジスタに格納されている比較結果データをマスク生成命令比較結果選択結果として出力する。マスクセレクタは、マスクレジスタ更新指示に応じて、マスク生成命令比較結果選択結果を取り込み、マスクデータとしてマスクレジスタに書き込むことにより、マスクレジスタを更新する。
【発明の効果】
【0019】
マスク生成命令は、ベクトルレジスタとベクトルデータの読み出しと演算器の処理対象ではない。従って、ベクトルレジスタの読み出しと演算器はマスク生成命令以外で動作可能である。即ち、従来では、マスク生成命令の後続に同じベクトルレジスタ及び演算器を使用する命令(例えば、マスク生成命令ではないが、マスク生成命令と同一のデータを使用する演算命令)があった場合、マスク生成命令の後に、ベクトルレジスタ・演算器を使用する命令を行わなければならなかった。一方、本発明では、上述の構成により、同時に複数の命令を処理することができる。このように、本発明では、マスク生成命令においてマスクレジスタを1クロックサイクルで高速に更新することができる。また、同じマスク生成命令によってベクトルレジスタ及び演算器を動作させないので、マスク生成命令の後続命令として、同じベクトルレジスタ及び演算器を使用する命令が存在した場合、同時に複数の命令を処理する。従って、ベクトルレジスタ及び演算器の解放を待つことなく後続命令を発行することができる。
【図面の簡単な説明】
【0020】
【図1】図1は、従来のベクトル処理装置の構成を示すブロック図である。
【図2】図2は、本発明の第1実施形態によるベクトル処理装置の構成を示すブロック図である。
【図3】図3は、本発明の第1〜3実施形態によるベクトル処理装置と従来のベクトル処理装置との動作を示すタイムチャートである。
【図4】図4は、本発明の第2実施形態によるベクトル処理装置の構成を示すブロック図である。
【図5】図5は、本発明の第3実施形態によるベクトル処理装置の構成を示すブロック図である。
【発明を実施するための形態】
【0021】
以下に添付図面を参照して、本発明の実施形態によるベクトル処理装置について詳細に説明する。
【0022】
(第1実施形態)
[構成]
図2は、本発明の第1実施形態によるベクトル処理装置の構成を示している。本発明の第1実施形態によるベクトル処理装置は、命令記憶部101、マスクデータ制御部108、クロスバ103、ベクトルレジスタ104、演算器105、マスクレジスタ107、マスク比較器130、複数の比較結果格納レジスタ131、比較結果セレクタ132、マスクセレクタ133を具備している。マスクデータ制御部108は、ベクトル部制御回路102を具備している。
【0023】
本発明の実施形態を説明する上で、マスク生成命令111について説明する。ここで、マスクレジスタ107はマスクレジスタ更新指示144がない限り常に同じデータを保持するものとする。マスク生成命令111とは、要素が連続するベクトルデータを演算器105で比較した結果として出力されるマスクデータを、ベクトルデータの要素番号に対応するマスクレジスタ107に格納する命令である。
【0024】
クロスバ103は、演算器105を含む1個あるいは複数の演算器から出力されるマスク生成演算結果118を受ける。クロスバ103は、そのマスク生成演算結果118をベクトルデータ110として、0要素目からn要素目(nは0より大きい整数である)までn+1クロックサイクル間、ベクトルレジスタ104へ書き込む。
【0025】
ベクトル部制御回路102は、ベクトルレジスタ読み出し指示(図示しない)をベクトルレジスタ104に出力し、マスク生成命令演算指示(図示しない)を演算器105に出力する。
【0026】
ベクトルレジスタ104は、ベクトルレジスタ読み出し指示に応じて、0要素目から逐次読み出しを開始してn要素目までn+1クロックサイクル間連続してベクトルデータ110の読み出しを行い、ベクトルデータ113として演算器105に出力する。
【0027】
演算器105は、マスク生成命令演算指示に応じて、ベクトルレジスタ104からのベクトルデータ113に対してマスク生成演算を実行し、その結果をマスク生成演算結果118としてクロスバ103に出力する。
【0028】
また、クロスバ103は、ベクトルデータ110をベクトルレジスタ104へ書き込むと同時に、このベクトルデータ110と同じベクトルデータをマスク比較器130に出力する。
【0029】
マスク生成命令111が発行されたときに、命令記憶部101に格納される。このマスク生成命令111に応じて、後述の動作が実行される。
【0030】
マスク比較器130は、このベクトルデータ110の要素と、複数種類のマスク生成命令111に対応した要素との比較演算を実行する。マスク比較器130では、1個あるいは複数のマスク生成命令111の種類分の比較演算を0要素目からn要素目までn+1クロックサイクル間行い、その結果を比較結果データ140として0要素目は対応する0要素目、n要素目は対応するn要素目とn+1クロックサイクル間に渡りそれぞれ複数の比較結果格納レジスタ131へ格納する。例えば、ベクトルデータの要素Xに対して、Xの定数が“0”であるときに、同要素に対応するマスクデータ“1”を生成する命令である場合、ベクトルデータ110の要素と要素X“0”との比較となる。この比較対象は一意ではなく、X≧0や、X≦0、X>0等、複数種類のマスク生成命令に対応したバリエーションが存在する。また、定数は0以外の場合もある。
【0031】
本説明では、マスク生成命令111の種類が2種類、即ち、比較結果格納レジスタ131が2つ存在し、2つの比較結果格納レジスタ131は、それぞれ2種類のマスク生成命令111に対応しているものとする。この場合、マスク比較器130は、2つの比較結果格納レジスタ131のうちの1つの比較結果格納レジスタ131に比較結果データ140を格納する。
【0032】
マスク生成命令111が発行されたときに、命令記憶部101に格納される。ベクトル部制御回路102は、このマスク生成命令111に応じて、2つの比較結果格納レジスタ131のうちの、上記のマスク生成命令111に対応する比較結果格納レジスタ131を選択するためのマスク生成命令比較結果選択指示142を比較結果セレクタ132に出力する。
【0033】
比較結果セレクタ132は、マスク生成命令比較結果選択指示142に応じて、上記のマスク生成命令111に対応する比較結果格納レジスタ131を選択し、その比較結果格納レジスタ131に格納されている比較結果データ140を1クロックサイクルでn+1ビットのマスク生成命令比較結果選択結果143として出力する。
【0034】
ベクトル部制御回路102は、マスク生成命令比較結果選択指示142と共に、マスク生成命令比較結果選択結果143をマスクレジスタ107に格納するための指示として、マスクレジスタ更新指示144をマスクセレクタ133に出力する。
【0035】
マスクセレクタ133は、マスクレジスタ更新指示144に応じて、マスク生成命令比較結果選択結果143を取り込み、マスクデータ117としてマスクレジスタ107に1クロックサイクルで書き込むことにより、マスクレジスタ107を更新する。マスクデータ117は、ベクトルデータ113の演算有効又は演算無効を判別するために用いられる。
【0036】
上記の通り、マスク生成命令111は、ベクトルレジスタ104とベクトルデータ113の読み出しと演算器105の処理対象ではない。従って、ベクトルレジスタ104の読み出しと演算器105はマスク生成命令111以外で動作可能である。即ち、従来では、マスク生成命令111の後続に同じベクトルレジスタ104及び演算器105を使用する命令(例えば、マスク生成命令ではないが、マスク生成命令と同一のデータを使用する演算命令)があった場合、マスク生成命令111の後に、ベクトルレジスタ104・演算器105を使用する命令を行わなければならなかった。一方、本発明では、上述の構成により、同時に2つの命令を処理することができる。
【0037】
[動作]
図3は、本発明の実施形態によるベクトル処理装置と従来のベクトル処理装置との動作を示すタイムチャートである。
【0038】
平易化のため、本説明でのベクトルレジスタ104の要素数を4と仮定する。また、本発明と比較対象である従来とで、ベクトルレジスタ104への書き込みが同じタイミングで発生したと仮定する。
【0039】
ベクトルデータは4要素連続でクロスバ103より出力され、共に次のクロックサイクルでベクトルレジスタ104へ書き込みが行われる。
【0040】
本発明では、ベクトルデータがベクトルレジスタ104へ書き込まれるタイミングで、ベクトルデータに対する比較演算を行い、それぞれの比較結果をベクトルデータの要素に対応した比較結果格納レジスタ131に格納する。
【0041】
本発明及び従来共に、全ての要素がベクトルレジスタ104に書き込まれた後、マスク生成命令111が同タイミングで発行されたものとする。
【0042】
従来では、ベクトルレジスタ104から4要素分連続で読み出して比較演算を行い、その比較結果を4クロックサイクル間連続してマスクレジスタ107に書き込む必要がある。一方、本発明では、既にベクトルレジスタ104への格納時に4要素分の比較演算を行っているので、マスク生成命令111と一致した比較結果を1クロックサイクルで選択し、マスクレジスタ107に書き込むことができる。
【0043】
また、従来では、マスク生成命令111を処理するときにベクトルレジスタ104と演算器105が占有される。一方、本発明では、マスク生成命令111を処理するときに演算器105を使用しないので、従来と異なり占有されない。従って、本発明では、マスク生成命令111と並列して処理することができる。
【0044】
[効果]
以上の説明により、本発明の第1実施形態によるベクトル処理装置では、マスク生成命令111においてマスクレジスタ107を1クロックサイクルで高速に更新することができる。また、同じマスク生成命令111によってベクトルレジスタ104及び演算器105を動作させないので、マスク生成命令111の後続命令として、同じベクトルレジスタ104及び演算器105を使用する命令が存在した場合、同時に2つの命令を処理する。従って、ベクトルレジスタ104及び演算器105の解放を待つことなく後続命令を発行することができる。
【0045】
(第2実施形態)
図4は、本発明の第2実施形態によるベクトル処理装置の構成を示している。本発明の第2実施形態によるベクトル処理装置では、マスクデータ制御部108は、更に、ベクトル長判別部150を具備している。第2実施形態では、第1実施形態と重複する説明について省略する。
【0046】
ベクトル部制御回路102は、マスクレジスタ更新指示144をマスクセレクタ133に出力すると共に、マスク生成命令111に対するマスクレジスタ更新判定指示160と、このマスク生成命令111のベクトル長を表すベクトル長データ161とをベクトル長判別部150に出力する。
【0047】
ベクトル長判別部150は、マスクレジスタ更新判定指示160に応じて、計n+1ビットのマスクレジスタ107のうち、ビット0(0要素目)からベクトル長データ161で指定されたビット(要素)を更新するためのマスクレジスタ更新指示144を生成し、マスクセレクタ133に出力する。
【0048】
マスクセレクタ133は、マスクレジスタ更新指示144に応じて、マスク生成命令111の0要素目からベクトル長データ161で指示された要素までのマスク生成命令比較結果選択結果143を取り込み、マスクデータ117としてマスクレジスタ107に1クロックサイクルで書き込むことにより、マスクレジスタ107を更新する。
【0049】
本発明の第2実施形態によるベクトル処理装置では、第1実施形態と同様に、マスク生成命令111の後続命令として、同じベクトルレジスタ104及び演算器105を使用する命令が存在した場合、同時に2つの命令を処理する。従って、ベクトルレジスタ104及び演算器105の解放を待つことなく後続命令を発行することができる。
【0050】
(第3実施形態)
図5は、本発明の第3実施形態によるベクトル処理装置の構成を示している。本発明の第3実施形態によるベクトル処理装置では、マスクデータ制御部108は、更に、マスク演算器170を具備している。第3実施形態では、第1実施形態と重複する説明について省略する。
【0051】
ベクトル部制御回路102は、マスクレジスタ更新指示144をマスクセレクタ133に出力すると共に、マスク演算種別指示181をマスク演算器170に出力する。
【0052】
マスク演算器170は、マスク生成命令比較結果選択結果143を取り込み、マスク演算種別指示181に応じて、マスクレジスタ107に格納されているマスクデータ117をマスクデータ180として取り込む。マスク演算器170は、マスク生成命令比較結果選択結果143とマスクデータ180とに対して演算を行い、その結果をマスク演算結果182として1クロックサイクルでマスクセレクタ133に出力する。
【0053】
マスクセレクタ133は、マスクレジスタ更新指示144に応じて、マスク演算結果182を取り込み、マスクデータ117としてマスクレジスタ107に1クロックサイクルで書き込むことにより、マスクレジスタ107を更新する。
【0054】
本発明の第3実施形態によるベクトル処理装置では、第1実施形態と同様に、マスク生成命令111の後続命令として、同じベクトルレジスタ104及び演算器105を使用する命令が存在した場合、同時に2つの命令を処理する。従って、ベクトルレジスタ104及び演算器105の解放を待つことなく後続命令を発行することができる。
【符号の説明】
【0055】
101 命令記憶部、
102、1102 ベクトル部制御回路、
103 クロスバ、
104 ベクトルレジスタ、
105 演算器、
106 ビットシフタ、
107 マスクレジスタ、
108 マスクデータ制御部、
110 ベクトルデータ、
111 マスク生成命令、
112 ベクトルレジスタ読み出し指示、
113 ベクトルデータ、
114 マスク生成命令演算指示、
115 マスク生成命令演算結果、
116 演算結果格納指示、
117 マスクデータ、
118 マスク生成演算結果、
130 マスク比較器、
131 比較結果格納レジスタ、
132 比較結果セレクタ、
133 マスクセレクタ、
140 比較結果データ、
142 マスク生成命令比較結果選択指示、
143 マスク生成命令比較結果選択結果、
144 マスクレジスタ更新指示、
150 ベクトル長判別部、
160 マスクレジスタ更新判定指示、
161 ベクトル長データ、
170 マスク演算器、
180 マスクデータ、
181 マスク演算種別指示、
182 マスク演算結果、

【特許請求の範囲】
【請求項1】
ベクトルレジスタ読み出し指示とマスク生成命令演算指示とを出力するベクトル部制御回路と、
マスク生成演算結果がベクトルデータとして書き込まれ、前記ベクトルレジスタ読み出し指示に応じて、前記ベクトルデータが読み出されるベクトルレジスタと、
前記マスク生成命令演算指示に応じて、前記ベクトルレジスタから読み出された前記ベクトルデータに対してマスク生成演算を実行し、その結果を前記マスク生成演算結果として出力する演算器と、
複数種類のマスク生成命令にそれぞれ対応する複数の比較結果格納レジスタと、
前記ベクトルレジスタに書き込まれる前記ベクトルデータと同じベクトルデータの要素と、前記複数種類のマスク生成命令に対応した要素との比較演算を実行し、その結果を比較結果データとして、前記複数の比較結果格納レジスタのうちの1つの比較結果格納レジスタに格納するマスク比較器と、
前記マスク生成命令に応じて、前記複数の比較結果格納レジスタのうちの、前記マスク生成命令に対応する比較結果格納レジスタを選択するためのマスク生成命令比較結果選択指示と、マスクレジスタ更新指示とを出力するマスクデータ制御部と、
前記マスク生成命令比較結果選択指示に応じて、前記マスク生成命令に対応する比較結果格納レジスタに格納されている前記比較結果データをマスク生成命令比較結果選択結果として出力する比較結果セレクタと、
マスクレジスタと、
前記マスクレジスタ更新指示に応じて、前記マスク生成命令比較結果選択結果を取り込み、マスクデータとして前記マスクレジスタに書き込むことにより、前記マスクレジスタを更新するマスクセレクタと
を具備するベクトル処理装置。
【請求項2】
前記マスクデータ制御部は、
前記マスク生成命令に応じて、前記マスク生成命令比較結果選択指示を出力し、前記マスク生成命令に対するマスクレジスタ更新判定指示と、前記マスク生成命令のベクトル長を表すベクトル長データとを出力する制御回路と、
前記マスクレジスタ更新判定指示に応じて、前記マスクレジスタのうち、前記ベクトル長データで指定された要素を更新するための前記マスクレジスタ更新指示を出力するベクトル長判別部と
を具備し、
前記マスクセレクタは、前記マスクレジスタ更新指示に応じて、前記ベクトル長データで指定された要素までの前記マスク生成命令比較結果選択結果を取り込み、前記マスクデータとして前記マスクレジスタに書き込むことにより、前記マスクレジスタを更新する
請求項1に記載のベクトル処理装置。
【請求項3】
前記マスクデータ制御部は、
前記マスク生成命令に応じて、前記マスク生成命令比較結果選択指示と前記マスクレジスタ更新指示とマスク演算種別指示とを出力する制御回路と、
前記マスク生成命令比較結果選択結果を取り込み、前記マスク演算種別指示に応じて、前記マスクレジスタに格納されている前記マスクデータを取り込み、前記マスク生成命令比較結果選択結果と前記マスクデータとに対して演算を行い、その結果をマスク演算結果として出力するマスク演算器と
を具備し、
前記マスクセレクタは、前記マスクレジスタ更新指示に応じて、前記マスク演算結果を取り込み、前記マスクデータとして前記マスクレジスタに書き込むことにより、前記マスクレジスタを更新する
請求項1に記載のベクトル処理装置。
【請求項4】
前記制御回路は、前記ベクトル部制御回路である
請求項2又は3に記載のベクトル処理装置。
【請求項5】
ベクトルレジスタ読み出し指示とマスク生成命令演算指示とを出力するステップと、
マスク生成演算結果をベクトルデータとしてベクトルレジスタに書き込むステップと、
前記ベクトルレジスタ読み出し指示に応じて、前記ベクトルレジスタから前記ベクトルデータを読み出すステップと、
前記マスク生成命令演算指示に応じて、前記ベクトルレジスタから読み出された前記ベクトルデータに対してマスク生成演算を実行し、その結果を前記マスク生成演算結果として出力するステップと、
前記ベクトルレジスタに書き込まれる前記ベクトルデータと同じベクトルデータの要素と、前記複数種類のマスク生成命令に対応した要素との比較演算を実行し、その結果を比較結果データとして、複数種類のマスク生成命令にそれぞれ対応する複数の比較結果格納レジスタのうちの1つの比較結果格納レジスタに格納するステップと、
前記マスク生成命令に応じて、前記複数の比較結果格納レジスタのうちの、前記マスク生成命令に対応する比較結果格納レジスタを選択するためのマスク生成命令比較結果選択指示と、マスクレジスタ更新指示とを出力するステップと、
前記マスク生成命令比較結果選択指示に応じて、前記マスク生成命令に対応する比較結果格納レジスタに格納されている前記比較結果データをマスク生成命令比較結果選択結果として出力するステップと、
前記マスクレジスタ更新指示に応じて、前記マスク生成命令比較結果選択結果をマスクデータとしてマスクレジスタに書き込むことにより、前記マスクレジスタを更新するステップと
を具備するベクトル処理方法。
【請求項6】
前記マスク生成命令に応じて出力するステップは、
前記マスク生成命令比較結果選択指示と、前記マスク生成命令に対するマスクレジスタ更新判定指示と、前記マスク生成命令のベクトル長を表すベクトル長データとを出力するステップと、
前記マスクレジスタ更新判定指示に応じて、前記マスクレジスタのうち、前記ベクトル長データで指定された要素を更新するための前記マスクレジスタ更新指示を出力するステップと
を含み、
前記マスクレジスタを更新するステップは、
前記マスクレジスタ更新指示に応じて、前記ベクトル長データで指定された要素までの前記マスク生成命令比較結果選択結果を前記マスクデータとして前記マスクレジスタに書き込むことにより、前記マスクレジスタを更新するステップ
を含む請求項5に記載のベクトル処理方法。
【請求項7】
前記マスク生成命令に応じて出力するステップは、
前記マスク生成命令比較結果選択指示と前記マスクレジスタ更新指示とマスク演算種別指示とを出力するステップと
前記マスク演算種別指示に応じて、前記マスク生成命令比較結果選択結果と、前記マスクレジスタに格納されている前記マスクデータとに対して演算を行い、その結果をマスク演算結果として出力するステップと
を含み、
前記マスクレジスタを更新するステップは、
前記マスクレジスタ更新指示に応じて、前記マスク演算結果を前記マスクデータとして前記マスクレジスタに書き込むことにより、前記マスクレジスタを更新するステップ
を含む請求項5に記載のベクトル処理方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2010−204913(P2010−204913A)
【公開日】平成22年9月16日(2010.9.16)
【国際特許分類】
【出願番号】特願2009−49232(P2009−49232)
【出願日】平成21年3月3日(2009.3.3)
【出願人】(000168285)エヌイーシーコンピュータテクノ株式会社 (572)
【Fターム(参考)】