JPS58214963A - ベクトル処理装置 - Google Patents
ベクトル処理装置Info
- Publication number
- JPS58214963A JPS58214963A JP9765582A JP9765582A JPS58214963A JP S58214963 A JPS58214963 A JP S58214963A JP 9765582 A JP9765582 A JP 9765582A JP 9765582 A JP9765582 A JP 9765582A JP S58214963 A JPS58214963 A JP S58214963A
- Authority
- JP
- Japan
- Prior art keywords
- data
- register
- contents
- vector
- 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.)
- Pending
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
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)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
発明の対象
本発明は命令語を処理するデータ処理装置に係り、特に
行列型式のデータを高速に処理するのに好適なベクトル
処理装置に関する。
行列型式のデータを高速に処理するのに好適なベクトル
処理装置に関する。
従来技術
和学技術計算に頻繁に現れる大型行列計算などの高速処
理を行うベクトル処理装置が考案されている。特にベク
トル処理装置に含まれる複数個のパイプライン演算器の
高速性・並列性を有効に発揮するように、演算データの
転送能力を向上させろため、ベクトル・レジスタとその
チェイニング機能を有するベクトル処理装置がある、こ
の中でベクトルレジスタ(以下VRという)は主記憶装
置(9下、M Sという)上に格納されているデータを
取り込み、演算器へのデータ転送能力を高めている点に
おいて、ひじよう罠有効な方法である。しかし従来の技
術においては、MS上に圧縮されたデータについてはV
R上に取り込む有効な手段がなかった。
理を行うベクトル処理装置が考案されている。特にベク
トル処理装置に含まれる複数個のパイプライン演算器の
高速性・並列性を有効に発揮するように、演算データの
転送能力を向上させろため、ベクトル・レジスタとその
チェイニング機能を有するベクトル処理装置がある、こ
の中でベクトルレジスタ(以下VRという)は主記憶装
置(9下、M Sという)上に格納されているデータを
取り込み、演算器へのデータ転送能力を高めている点に
おいて、ひじよう罠有効な方法である。しかし従来の技
術においては、MS上に圧縮されたデータについてはV
R上に取り込む有効な手段がなかった。
発明の目的
本発明の目的はMS上に圧縮されたデータをVR上に伸
長する手段を提供すること、およびVR上に伸長された
データをMS上に圧縮された形で格納する手段を提供す
ることにある。
長する手段を提供すること、およびVR上に伸長された
データをMS上に圧縮された形で格納する手段を提供す
ることにある。
このために本発明においては、圧縮されたデータ、およ
び伸長されたデータに対応したマスクレジスタを有し、
マスクレジスタの内容の1を数カウントすることにより
、MS上より必要な数だけのデータを読み出し、あるい
はMSへ必要な数だけのデータを格納する様にした。
び伸長されたデータに対応したマスクレジスタを有し、
マスクレジスタの内容の1を数カウントすることにより
、MS上より必要な数だけのデータを読み出し、あるい
はMSへ必要な数だけのデータを格納する様にした。
発明の実施例
以下、本発明の内容を図示の実施例により詳細に説明す
る。
る。
第1図は本発明が適用されるベクトル処理装置の全体構
成を示したもので、1はベクトル・レジスタ(VR)、
2はデータ分配回路、3はデータ選択回路、4は演算器
、5は主記憶装置、10は記憶制御装置である。演算の
処理の流れを簡単に述べると次の通りである、ベクトル
命令はMSに格納されているが、これを記憶制御装置1
0に取り込む。記憶制御装置においてベクトル命令が解
読され、演算に必要なデータがMSから命令で指定され
た番号のVRへ読み出される。Vl’Lへ取り込まれた
データは演算器により演算が行われ、結果が角びVR,
へ書き込まれる。
成を示したもので、1はベクトル・レジスタ(VR)、
2はデータ分配回路、3はデータ選択回路、4は演算器
、5は主記憶装置、10は記憶制御装置である。演算の
処理の流れを簡単に述べると次の通りである、ベクトル
命令はMSに格納されているが、これを記憶制御装置1
0に取り込む。記憶制御装置においてベクトル命令が解
読され、演算に必要なデータがMSから命令で指定され
た番号のVRへ読み出される。Vl’Lへ取り込まれた
データは演算器により演算が行われ、結果が角びVR,
へ書き込まれる。
MSへの結果の書き込みは、VRの内容を読み出して行
われる。
われる。
たとえば行列A、IBの加算を行う例では次のようにな
る。
る。
■ LVRVRO,AC行列へをVRoへ格納)■ L
VRVR2,lB(行列BをVR2へ格納)■ V E
A VR4、VRo 、VR2(A + [13−
+VH−s)■ 8TVRVR4,(A+[pをΦへ格
納)この例において、■まずMS上の行列Aの内容がV
Roへ格納され、■次にMS上の行列出の内容がVR2
へ格納される。この後、■v)toトVR2の内容が加
算され結果がVR4へ格納される。
VRVR2,lB(行列BをVR2へ格納)■ V E
A VR4、VRo 、VR2(A + [13−
+VH−s)■ 8TVRVR4,(A+[pをΦへ格
納)この例において、■まずMS上の行列Aの内容がV
Roへ格納され、■次にMS上の行列出の内容がVR2
へ格納される。この後、■v)toトVR2の内容が加
算され結果がVR4へ格納される。
加算の演算が終了すると、■VFL4の内容がMS上の
行列Cへ格納される、 これらの動作においてVRの長さは有限個である(第1
図の実施例では128要素格納できる)ため行列の要素
数が128より大きい場合は、演X要素数を128単位
に区切って処理する必要がある。
行列Cへ格納される、 これらの動作においてVRの長さは有限個である(第1
図の実施例では128要素格納できる)ため行列の要素
数が128より大きい場合は、演X要素数を128単位
に区切って処理する必要がある。
このため第2図に示す様な、MS上の圧縮されたデータ
をVR上に伸長1′る命令−1,VR,E(Load
Vector Register Expanding
)−などでは、VR上の要素数とMS上の要素数が異
なるため、単純には処理できない。また第6図に示す例
はVR上に伸長されたデータをMS上に圧縮する命令−
8T V RC(5tore Vector Reg−
ister Compressing )−も同様であ
る。これらの命令の処理は+ LVREにおいてはMS
上に圧縮されたデータ(第2図ではa。ta+*atv
asで示す)を演算器により生成されたマスクレジスタ
の内容を見て1′のあるエレメントについてVR上にa
。Ial#’・・・をロードして行く。マスクレジスタ
の内容が% oLに相当するエレメントについてはVR
上には・0′をロードする。5TVRCの場合はこの逆
の処理を行う。すなわちVR上のデータをマスクレジス
タの内容が1′に相当するエレメントのみを増り出しM
S上に格納して行(O LVREおよび5TVRCという命令は行列のエレメン
トに0′がひじように多い場合、10′のデータを圧縮
してMS上に格納する場合に有効である。
をVR上に伸長1′る命令−1,VR,E(Load
Vector Register Expanding
)−などでは、VR上の要素数とMS上の要素数が異
なるため、単純には処理できない。また第6図に示す例
はVR上に伸長されたデータをMS上に圧縮する命令−
8T V RC(5tore Vector Reg−
ister Compressing )−も同様であ
る。これらの命令の処理は+ LVREにおいてはMS
上に圧縮されたデータ(第2図ではa。ta+*atv
asで示す)を演算器により生成されたマスクレジスタ
の内容を見て1′のあるエレメントについてVR上にa
。Ial#’・・・をロードして行く。マスクレジスタ
の内容が% oLに相当するエレメントについてはVR
上には・0′をロードする。5TVRCの場合はこの逆
の処理を行う。すなわちVR上のデータをマスクレジス
タの内容が1′に相当するエレメントのみを増り出しM
S上に格納して行(O LVREおよび5TVRCという命令は行列のエレメン
トに0′がひじように多い場合、10′のデータを圧縮
してMS上に格納する場合に有効である。
行う記憶制御装置のさらに詳細な図を示す。図において
MSより読み出さおだベクトル命令(この場合はLVR
Eもしくは8TVRC)がベクトル命令解読回路21に
より命令が解読されベクトルの処理が始まる。たとえば
LYRE命令を例にとると、MS上のデータのアドレス
は、行列エレメントの先頭アドレスを&持するアドレス
拳レジスタVAR22と、行列エレメント間の距離を保
持するインクリメント−レジスタ■lR23の和で次の
様に示される。VAR22゜V I R,23、LNG
27内の値は命令から与えられる。
MSより読み出さおだベクトル命令(この場合はLVR
Eもしくは8TVRC)がベクトル命令解読回路21に
より命令が解読されベクトルの処理が始まる。たとえば
LYRE命令を例にとると、MS上のデータのアドレス
は、行列エレメントの先頭アドレスを&持するアドレス
拳レジスタVAR22と、行列エレメント間の距離を保
持するインクリメント−レジスタ■lR23の和で次の
様に示される。VAR22゜V I R,23、LNG
27内の値は命令から与えられる。
(VAR)+n*(Vl)t) ([1:0〜)J
)ここでnは行列のエレメント数である。このアドレス
がアドレス加算器24により生成さf′L−データ線1
4を経由してMSへ送られる。
)ここでnは行列のエレメント数である。このアドレス
がアドレス加算器24により生成さf′L−データ線1
4を経由してMSへ送られる。
アドレスはリクエストと共に必要なエレメント数のみM
Sへ送られる必要がある。LV BEもしくは5TVR
C命令9外の場合は、ベクトル命令解読回J21により
示されたレングス・しジスタ27に入っている処理エレ
メント数を減算器31へ送り、レングス・レジスタの内
容で示されるエレメント数の分だけMSヘリクエストが
送られる。LVRBもしくは5TVRC命令の場合は、
マスク・レジスタ25で示された内容の1′の数をビッ
ト数・カウント回路26によりカウントし結果を減算器
31へ送り、マスク・レジスタの内容で示された1′の
数の分だけがMSヘリクエストが送られる。減算器61
の出力にはゼロ検出回路62があり、エレメント・カウ
ントがゼロになるとAND回路36により、これ以上の
リクエストを抑止している。
Sへ送られる必要がある。LV BEもしくは5TVR
C命令9外の場合は、ベクトル命令解読回J21により
示されたレングス・しジスタ27に入っている処理エレ
メント数を減算器31へ送り、レングス・レジスタの内
容で示されるエレメント数の分だけMSヘリクエストが
送られる。LVRBもしくは5TVRC命令の場合は、
マスク・レジスタ25で示された内容の1′の数をビッ
ト数・カウント回路26によりカウントし結果を減算器
31へ送り、マスク・レジスタの内容で示された1′の
数の分だけがMSヘリクエストが送られる。減算器61
の出力にはゼロ検出回路62があり、エレメント・カウ
ントがゼロになるとAND回路36により、これ以上の
リクエストを抑止している。
たとえば、第2図に示すLVRE命令を例にとると、M
S上の第1エレメントa。のアドレスが、(VAR)+
o*(V I R) で示さn、読み出しリクエストが
MSへ発行される。MSよりデータa。が読み出され、
データ送出線11を経由してVR4へ格納される。 V
Riの内容はマスクレジスタ16の内容(これはマスク
レジスタ25と胞容は同じもの)を見て、マスクの内容
が0′に対応する部分はVRiに0′を埋め込んで行(
。第2図の例ではa。の次に0′が坤め込まれ、その次
にはMSからのテータa、およびa2が、マスクの内容
が、11/ 、 ilzであるため格納される。次は
0′が埋め込まれ最後にデータa3が格納される。第4
図のビット数カウント回路26ではこの例の場合は4と
なり4の値が減算器31により、MSヘリクエストが送
出されるごとに−1ずつ減算され、0になった(4ケの
リクエストの送出が完了した時点)ところでMSに対す
る読出しリクエストが完了1−る。
S上の第1エレメントa。のアドレスが、(VAR)+
o*(V I R) で示さn、読み出しリクエストが
MSへ発行される。MSよりデータa。が読み出され、
データ送出線11を経由してVR4へ格納される。 V
Riの内容はマスクレジスタ16の内容(これはマスク
レジスタ25と胞容は同じもの)を見て、マスクの内容
が0′に対応する部分はVRiに0′を埋め込んで行(
。第2図の例ではa。の次に0′が坤め込まれ、その次
にはMSからのテータa、およびa2が、マスクの内容
が、11/ 、 ilzであるため格納される。次は
0′が埋め込まれ最後にデータa3が格納される。第4
図のビット数カウント回路26ではこの例の場合は4と
なり4の値が減算器31により、MSヘリクエストが送
出されるごとに−1ずつ減算され、0になった(4ケの
リクエストの送出が完了した時点)ところでMSに対す
る読出しリクエストが完了1−る。
第6図に示す8TVRC命令を例にとると−LVR,E
命令と同様にMS士の第1エレメントboのアドレスが
(VA R)+o*(V 11(、)でボされ、リクエ
スト(この場合は誉き込みリクエスト)がMSへ発行さ
れる。VRからの1き込みデータは、マスクが%1′の
部分に相当(第6図の例では、bo−b+ 、−bt、
bs ) ”’fるデータのみが、記憶制御装置10を
経由してMSへ送られる。このため第4図のビット数カ
ウント回路26によって、マスクの1′の数がカウント
され(第3図の例では4となる)この数だけMSヘリク
エストを送出することになる。
命令と同様にMS士の第1エレメントboのアドレスが
(VA R)+o*(V 11(、)でボされ、リクエ
スト(この場合は誉き込みリクエスト)がMSへ発行さ
れる。VRからの1き込みデータは、マスクが%1′の
部分に相当(第6図の例では、bo−b+ 、−bt、
bs ) ”’fるデータのみが、記憶制御装置10を
経由してMSへ送られる。このため第4図のビット数カ
ウント回路26によって、マスクの1′の数がカウント
され(第3図の例では4となる)この数だけMSヘリク
エストを送出することになる。
発明の詳細
な説明したごと(、本発明によれば、ベクトル処理装置
において、主記憶装置上におかれた行列の圧縮したデー
タをベクトル・レジスタ上に引き伸1ことが可能となる
。これによりLV)(、E命令により圧縮データをベク
トル・レジスタ上に引き伸し、様々な演算をベクトル・
レジスタを用いて行った後5TVRC命令を用いて結果
を主記憶装置上に再び圧縮した型にして格納することが
可能である。
において、主記憶装置上におかれた行列の圧縮したデー
タをベクトル・レジスタ上に引き伸1ことが可能となる
。これによりLV)(、E命令により圧縮データをベク
トル・レジスタ上に引き伸し、様々な演算をベクトル・
レジスタを用いて行った後5TVRC命令を用いて結果
を主記憶装置上に再び圧縮した型にして格納することが
可能である。
第1図は本発明が適用されるベクトル処理装置の全体構
成図、第2図はLVRE命令、処理の説明図、第6図は
5TVRC命令処理の説明図、第4図は本発明の中心を
な1−記憶制御装置の一実施例を示す構成図である。 1・・・ベクトル台レジスタ 4・・・演算器 5・・主記憶装置 10・・・記憶制御装置 16.25・・・マスク・レジスタ 26・・ビットカウント回路 ろ2・・・ゼロ検出回路 才 l 図 P z 図 ? 3 品
成図、第2図はLVRE命令、処理の説明図、第6図は
5TVRC命令処理の説明図、第4図は本発明の中心を
な1−記憶制御装置の一実施例を示す構成図である。 1・・・ベクトル台レジスタ 4・・・演算器 5・・主記憶装置 10・・・記憶制御装置 16.25・・・マスク・レジスタ 26・・ビットカウント回路 ろ2・・・ゼロ検出回路 才 l 図 P z 図 ? 3 品
Claims (1)
- 【特許請求の範囲】 1、 行列を処理するベクトル処理装置において、主記
憶装置上の圧縮されたデータとベクトル・レジスタ上の
伸長されたデータ間の転送を行うために圧縮されたデー
タの有効性を示すマスクレジスタの有効ビットをカウン
トする手段と。 転送数をこのカウント数により制御する手段とを備える
ことを特徴とするベクトル処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9765582A JPS58214963A (ja) | 1982-06-09 | 1982-06-09 | ベクトル処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9765582A JPS58214963A (ja) | 1982-06-09 | 1982-06-09 | ベクトル処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS58214963A true JPS58214963A (ja) | 1983-12-14 |
Family
ID=14198089
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP9765582A Pending JPS58214963A (ja) | 1982-06-09 | 1982-06-09 | ベクトル処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS58214963A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2585859A1 (fr) * | 1985-07-31 | 1987-02-06 | Nec Corp | Unite de commande d'operations de masques vectoriels. |
JPS62137660A (ja) * | 1985-12-11 | 1987-06-20 | Nec Corp | ベクトル要素数カウンタ |
CN103988173A (zh) * | 2011-11-25 | 2014-08-13 | 英特尔公司 | 用于提供掩码寄存器与通用寄存器或存储器之间的转换的指令和逻辑 |
US9501276B2 (en) | 2012-12-31 | 2016-11-22 | Intel Corporation | Instructions and logic to vectorize conditional loops |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5166745A (ja) * | 1974-12-06 | 1976-06-09 | Fujitsu Ltd | Bekutoruenzanseigyohoshiki |
JPS5760461A (en) * | 1980-09-29 | 1982-04-12 | Control Data Corp | Computer |
-
1982
- 1982-06-09 JP JP9765582A patent/JPS58214963A/ja active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5166745A (ja) * | 1974-12-06 | 1976-06-09 | Fujitsu Ltd | Bekutoruenzanseigyohoshiki |
JPS5760461A (en) * | 1980-09-29 | 1982-04-12 | Control Data Corp | Computer |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2585859A1 (fr) * | 1985-07-31 | 1987-02-06 | Nec Corp | Unite de commande d'operations de masques vectoriels. |
JPS62137660A (ja) * | 1985-12-11 | 1987-06-20 | Nec Corp | ベクトル要素数カウンタ |
CN103988173A (zh) * | 2011-11-25 | 2014-08-13 | 英特尔公司 | 用于提供掩码寄存器与通用寄存器或存储器之间的转换的指令和逻辑 |
CN103988173B (zh) * | 2011-11-25 | 2017-04-05 | 英特尔公司 | 用于提供掩码寄存器与通用寄存器或存储器之间的转换的指令和逻辑 |
US9501276B2 (en) | 2012-12-31 | 2016-11-22 | Intel Corporation | Instructions and logic to vectorize conditional loops |
US9696993B2 (en) | 2012-12-31 | 2017-07-04 | Intel Corporation | Instructions and logic to vectorize conditional loops |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH04219859A (ja) | 並列プロセッサに直列命令ストリームデータを分散するハードウェアディストリビュータ | |
US3701977A (en) | General purpose digital computer | |
US4916658A (en) | Dynamic buffer control | |
JPS58214963A (ja) | ベクトル処理装置 | |
JPS6211736B2 (ja) | ||
JPH0951276A (ja) | デジタルデータ処理装置 | |
JPH07219766A (ja) | 演算処理装置 | |
JPS6058503B2 (ja) | デ−タ処理制御方式 | |
JP3341847B2 (ja) | データ処理装置 | |
JPS6031647A (ja) | デ−タ処理装置 | |
JPH02190968A (ja) | ベクトル処理装置 | |
JPS61194565A (ja) | ベクトル処理装置 | |
JPH0434191B2 (ja) | ||
JPS5947668A (ja) | 情報処理装置 | |
JPH06274450A (ja) | データ転送システム | |
SU1702367A1 (ru) | Устройство дл распаковки команд | |
JPS619725A (ja) | マイクロプログラム制御回路 | |
JPS60178547A (ja) | デ−タ処理方式 | |
JP2716563B2 (ja) | データ書込み制御方式 | |
JPS61217868A (ja) | ベクトルデ−タアクセス制御方式 | |
JPH0255821B2 (ja) | ||
JPH04266140A (ja) | アドレス変換バッファ装置 | |
JPS60215281A (ja) | ベクトルデータ処理装置 | |
JPH0785259A (ja) | データ処理方法およびシグナルプロセッサ | |
JPH04107665A (ja) | 入出力制御装置 |