JPS6141027B2 - - Google Patents
Info
- Publication number
- JPS6141027B2 JPS6141027B2 JP56105435A JP10543581A JPS6141027B2 JP S6141027 B2 JPS6141027 B2 JP S6141027B2 JP 56105435 A JP56105435 A JP 56105435A JP 10543581 A JP10543581 A JP 10543581A JP S6141027 B2 JPS6141027 B2 JP S6141027B2
- Authority
- JP
- Japan
- Prior art keywords
- vector
- operands
- bits
- register
- ordered
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Complex Calculations (AREA)
Description
【発明の詳細な説明】
〔産業上の利用分野〕
この発明は、データ処理の技術に関し、特に中
央処理装置に関する。
央処理装置に関する。
スパースベクトルは、0又はほぼ0のオペラン
ドを除去し、残りのオペランドを一つにまとめた
マルチオペランドである。コンピユータの中央処
理装置によるこのようなベクトルの処理装置は、
ハツトソン(Hutson)ほかに対する米国特許第
3919534号に開示されている。この処理装置は、
演算論理ユニツト(ALU)へ与えられた複数の
スパースベクトルのオペランドを一時に転送す
る。同時処理すべくALUに対して入力した第2
のスパースベクトルが当該の順序で0でないオペ
ランドであるときはALUに対しては0のオペラ
ンドを供給する。各スパースベクトルに一つの順
序ベクトルを設け、対応する順序のスパースベク
トルが0か又は0でないかをビツトの状態で表示
させる。
ドを除去し、残りのオペランドを一つにまとめた
マルチオペランドである。コンピユータの中央処
理装置によるこのようなベクトルの処理装置は、
ハツトソン(Hutson)ほかに対する米国特許第
3919534号に開示されている。この処理装置は、
演算論理ユニツト(ALU)へ与えられた複数の
スパースベクトルのオペランドを一時に転送す
る。同時処理すべくALUに対して入力した第2
のスパースベクトルが当該の順序で0でないオペ
ランドであるときはALUに対しては0のオペラ
ンドを供給する。各スパースベクトルに一つの順
序ベクトルを設け、対応する順序のスパースベク
トルが0か又は0でないかをビツトの状態で表示
させる。
この発明は、スパースベクトル形式をアンバツ
ク形式に変換し、一時にn幅の演算論理ユニツト
へnオペランドを転送してタンデムに処理をす
る。このようにして全体の処理速度をn倍するこ
とが可能である。
ク形式に変換し、一時にn幅の演算論理ユニツト
へnオペランドを転送してタンデムに処理をす
る。このようにして全体の処理速度をn倍するこ
とが可能である。
アンバツクは、対応する順序ベクトルのn個の
ビツトを一度に調べることにより、実行される。
スパースベクトルの先頭からオペランドを受け取
り、順序ベクトルにおける各1のビツトに対して
配置する。0又は予め選択したオペランド値は、
順序ベクトルの各0のビツトに対して挿入され
る。1のビツトのポピユレーシヨンカウントは順
序ベクトルのnビツトセグメントについて行い、
そのカウントに従つてスパースベクトルのオペラ
ンドを先方に転送するのを制御する。装置は、ロ
ジツクの所定点で順序ベクトルを全て1のビツト
で選択的に置換することにより、スパースベクト
ルを拡張ベクトルへ拡大したり、又はベクトルを
スパークベクトルへ圧縮したりすることができ
る。
ビツトを一度に調べることにより、実行される。
スパースベクトルの先頭からオペランドを受け取
り、順序ベクトルにおける各1のビツトに対して
配置する。0又は予め選択したオペランド値は、
順序ベクトルの各0のビツトに対して挿入され
る。1のビツトのポピユレーシヨンカウントは順
序ベクトルのnビツトセグメントについて行い、
そのカウントに従つてスパースベクトルのオペラ
ンドを先方に転送するのを制御する。装置は、ロ
ジツクの所定点で順序ベクトルを全て1のビツト
で選択的に置換することにより、スパースベクト
ルを拡張ベクトルへ拡大したり、又はベクトルを
スパークベクトルへ圧縮したりすることができ
る。
第1図は、演算論理ユニツト(以下ALUとい
う)による次の処理のために、スパースベクトル
をアンバツクする装置のブロツク図である。通
常、ALUは一時に2つのベクトルを、加算、引
算、掛算又は割算による同時処理を行う。第7図
に示す装置は、このようなベクトルの一つのみを
アンバツクするもので、2つのベクトルを処理す
るためには第1図の装置は2重化される。
う)による次の処理のために、スパースベクトル
をアンバツクする装置のブロツク図である。通
常、ALUは一時に2つのベクトルを、加算、引
算、掛算又は割算による同時処理を行う。第7図
に示す装置は、このようなベクトルの一つのみを
アンバツクするもので、2つのベクトルを処理す
るためには第1図の装置は2重化される。
典型的なベクトルは、個有の順序で多数のオペ
ランド、例えばA0,A1,A2,A3…,Anをもつ。
スパースベクトルは、所定のあるオペランド値が
省略されたベクトルである。通常オペランドは、
値が0又はほぼ0のときは、省略される。残りの
オペランドは、連鎖即ちパツクされ、メモリによ
り効率的に記憶され、またこれより読み出され
る。例えば、与えられたベクトルのオペランド
A2,A3及びA8の値が0であると仮定すると、ベ
クトルのスパースベクトルは、メモリ内では
A1,A4,A5,A6,A7,A9,…,Anとなつてい
る。
ランド、例えばA0,A1,A2,A3…,Anをもつ。
スパースベクトルは、所定のあるオペランド値が
省略されたベクトルである。通常オペランドは、
値が0又はほぼ0のときは、省略される。残りの
オペランドは、連鎖即ちパツクされ、メモリによ
り効率的に記憶され、またこれより読み出され
る。例えば、与えられたベクトルのオペランド
A2,A3及びA8の値が0であると仮定すると、ベ
クトルのスパースベクトルは、メモリ内では
A1,A4,A5,A6,A7,A9,…,Anとなつてい
る。
複数ベクトルについて演算処理を実行するとき
は、各ベクトルの相互に対応する順位にあるオペ
ランドは、通常処理のためにALUに同時に入力
される必要がある。例えば、ベクトルAをベクト
ルBに加える場合、それぞれの対応する順位オペ
ランドが加算されなければならず、A1+B1,2
+B2,A3+B3,…An+Bnでなければならない。
は、各ベクトルの相互に対応する順位にあるオペ
ランドは、通常処理のためにALUに同時に入力
される必要がある。例えば、ベクトルAをベクト
ルBに加える場合、それぞれの対応する順位オペ
ランドが加算されなければならず、A1+B1,2
+B2,A3+B3,…An+Bnでなければならない。
メモリ内にあるスパースベクトルは個有の配列
情報をもつていない。即ち、第1のオペランドか
ら5個のオペランドを数えるとオペランドA4を
指示することにはならないので、各スパースベク
トルは対応する順序ベクトルをもつ必要がある。
順序ベクトルは本質的に一連のビツトからなり通
常のアンバツクベクトルの各オペランドに対して
1個のビツトである。ビツトの状態は0又は1で
ある。0は、対応して配列されたベクトルのオペ
ランドを省略したことを示す。1は、対応して配
置されたベクトルオペランドが存在することを示
す。従つて、1のビツトに対応するオペランドの
みが実際にメモリに貯えられる。
情報をもつていない。即ち、第1のオペランドか
ら5個のオペランドを数えるとオペランドA4を
指示することにはならないので、各スパースベク
トルは対応する順序ベクトルをもつ必要がある。
順序ベクトルは本質的に一連のビツトからなり通
常のアンバツクベクトルの各オペランドに対して
1個のビツトである。ビツトの状態は0又は1で
ある。0は、対応して配列されたベクトルのオペ
ランドを省略したことを示す。1は、対応して配
置されたベクトルオペランドが存在することを示
す。従つて、1のビツトに対応するオペランドの
みが実際にメモリに貯えられる。
従来技術、例えばハトソンほかに対する米国特
許第3919534号において、順序ベクトルは原理的
に一時に一つのビツトが調べられる。1のビツト
が検出されると、列の最初のオペランドはALU
に転送されて処理される。しかし、0のビツトが
検出されると、オペランドは転送されない。2つ
のベクトルが同時的に処理されると、両者の順序
ベクトルの1のビツトは、順序ベクトルが1のビ
ツトをもつているスパースベクトルからオペラン
ドを少なくとも転送される。もし、他の順序ベク
トルが0のビツトであるならば、0値のオペラン
ドは、列の先頭のオペランドに代つて、挿入さ
れ、転送される。
許第3919534号において、順序ベクトルは原理的
に一時に一つのビツトが調べられる。1のビツト
が検出されると、列の最初のオペランドはALU
に転送されて処理される。しかし、0のビツトが
検出されると、オペランドは転送されない。2つ
のベクトルが同時的に処理されると、両者の順序
ベクトルの1のビツトは、順序ベクトルが1のビ
ツトをもつているスパースベクトルからオペラン
ドを少なくとも転送される。もし、他の順序ベク
トルが0のビツトであるならば、0値のオペラン
ドは、列の先頭のオペランドに代つて、挿入さ
れ、転送される。
第1図に示す装置は一時に8個の順序ビツトの
グループを調べるように前述の手続を変更したも
のである。(この場合、8は任意数であり、調べ
るべき実際のビツト数は、当業者に明らかなよう
に任意に選択することができる。予め選定された
値のオペランド、例えば0のオペランドは、順序
ベクトルに生起する0に従い、メモリから読み出
されたオペランド列へ挿入される。その結果、拡
張又はアンバツクされた8個のオペランドは、並
列にALUに転送され、同時的にタンデム処理さ
れる。もし、順序ベクトルのあらゆるビツトが1
であり、0でない8個のオペランドをALUに転
送することを表わしているときは、ALUへ一時
に一つのオペランドを転送する従来技術に比較し
て速度を8倍まで増加することができる。
グループを調べるように前述の手続を変更したも
のである。(この場合、8は任意数であり、調べ
るべき実際のビツト数は、当業者に明らかなよう
に任意に選択することができる。予め選定された
値のオペランド、例えば0のオペランドは、順序
ベクトルに生起する0に従い、メモリから読み出
されたオペランド列へ挿入される。その結果、拡
張又はアンバツクされた8個のオペランドは、並
列にALUに転送され、同時的にタンデム処理さ
れる。もし、順序ベクトルのあらゆるビツトが1
であり、0でない8個のオペランドをALUに転
送することを表わしているときは、ALUへ一時
に一つのオペランドを転送する従来技術に比較し
て速度を8倍まで増加することができる。
スパースベクトルのオペランドは、それぞれの
装置(図示なし)によりメモリから取出され、相
互接続された8ビツトのオペランドレジスタR
1,R2及びR3を介して転送される。このた
め、(この例では、スパースベクトルは0値のオ
ペランドをもたないと仮定して)オペランドA0
〜A7はオペランドレジスタR3に置かれ、同様
にA8〜A15はオペランドレジスタR2に、A16〜
A23はオペランドレジスタR1に置かれる。
装置(図示なし)によりメモリから取出され、相
互接続された8ビツトのオペランドレジスタR
1,R2及びR3を介して転送される。このた
め、(この例では、スパースベクトルは0値のオ
ペランドをもたないと仮定して)オペランドA0
〜A7はオペランドレジスタR3に置かれ、同様
にA8〜A15はオペランドレジスタR2に、A16〜
A23はオペランドレジスタR1に置かれる。
スパースベクトルのオペランドがオペランドレ
ジスタR1〜R3にロードされているとき、スパ
ースベクトルの対応する順序ベクトルの8個のビ
ツトが一時にビツトレジスタXOにロードされ
る。各マシンサイクルにおいて、順序ベクトルの
全ビツトをロードするまで更に8個のビツトをビ
ツトレジスタX0にロードする。同様に、各マシ
ンサイクルにおいて、ビツトレジスタX0の内容
は、これに接続されているレジスタX2に転送さ
れ、かつ1ビツトのポピユレーシヨンカウントカ
ウンタEP1の入力として供給される。ポピユレ
ーシヨンカウンタEP1は、カウント0〜カウン
ト8のカウント幅をもち、カウント結果を同一の
マシンサイクルの間に4ビツトのビツトレジスタ
X1にロードされる。
ジスタR1〜R3にロードされているとき、スパ
ースベクトルの対応する順序ベクトルの8個のビ
ツトが一時にビツトレジスタXOにロードされ
る。各マシンサイクルにおいて、順序ベクトルの
全ビツトをロードするまで更に8個のビツトをビ
ツトレジスタX0にロードする。同様に、各マシ
ンサイクルにおいて、ビツトレジスタX0の内容
は、これに接続されているレジスタX2に転送さ
れ、かつ1ビツトのポピユレーシヨンカウントカ
ウンタEP1の入力として供給される。ポピユレ
ーシヨンカウンタEP1は、カウント0〜カウン
ト8のカウント幅をもち、カウント結果を同一の
マシンサイクルの間に4ビツトのビツトレジスタ
X1にロードされる。
第3のマシンサイクルにおいて、ビツトレジス
タX2の内容は、これに接続されているビツトレ
ジスタX3にロードされる。ビツトレジスタX1
の4ビツトのカウントは加算器A1の第1入力と
して供給される。加算器A1の他方の入力はビツ
トレジスタSC1から供給される3ビツトであ
る。ビツトレジスタSC1はプログラマが指定す
るスタートシフトカウントに初期設定されてい
る。この加算器A1の入力の第4番目のビツトと
して0のバイアスが供給される。加算器A1の出
力(3ビツト)は第3のマシンサイクルの間に3
ビツトのビツトレジスタSC1にロードされる。
キヤリビツトもキヤリレジスタC1にロードされ
る。加算器A1の出力が3ビツトに限定されてい
るので、加算により7の数より大きな結果を生ず
ると、キヤリレジスタC1にキヤリ入力が供給さ
れる。その結果の下位の3個のビツトレジスタ
SC1の入力となる。このマシンサイクルでは、
ビツトレジスタSC1の内容は、これに接続され
ているビツトレジスタSC2に転送される。
タX2の内容は、これに接続されているビツトレ
ジスタX3にロードされる。ビツトレジスタX1
の4ビツトのカウントは加算器A1の第1入力と
して供給される。加算器A1の他方の入力はビツ
トレジスタSC1から供給される3ビツトであ
る。ビツトレジスタSC1はプログラマが指定す
るスタートシフトカウントに初期設定されてい
る。この加算器A1の入力の第4番目のビツトと
して0のバイアスが供給される。加算器A1の出
力(3ビツト)は第3のマシンサイクルの間に3
ビツトのビツトレジスタSC1にロードされる。
キヤリビツトもキヤリレジスタC1にロードされ
る。加算器A1の出力が3ビツトに限定されてい
るので、加算により7の数より大きな結果を生ず
ると、キヤリレジスタC1にキヤリ入力が供給さ
れる。その結果の下位の3個のビツトレジスタ
SC1の入力となる。このマシンサイクルでは、
ビツトレジスタSC1の内容は、これに接続され
ているビツトレジスタSC2に転送される。
第3のマシンサイクルの終りで、ビツトレジス
タX3は順序ベクトルの8個のビツトの第1グル
ープを含んでいる。即ちビツトレジスタSC1
は、第1グループの順序ベクトルのビツトにおけ
る1のビツトのカウント数(3ビツト)+スター
トシフトカウントをもつ。またビツトレジスタ
SC2はスタートシフトカウントをもつ。
タX3は順序ベクトルの8個のビツトの第1グル
ープを含んでいる。即ちビツトレジスタSC1
は、第1グループの順序ベクトルのビツトにおけ
る1のビツトのカウント数(3ビツト)+スター
トシフトカウントをもつ。またビツトレジスタ
SC2はスタートシフトカウントをもつ。
第4のマシンサイクルで、ビツトレジスタX3
の8個のビツトは拡張回路網E1の入力とされ
る。シフト回路網10の8個の出力も拡張回路網
E1の入力とされる。シフト回路網10は15個の
オペランドを受け取る。即ち、そのうちの8個は
オペランドレジスタR3から、7個をオペランド
レジスタR2から受け取る。シフト回路網10は
ビツトレジスタSC2のカウントに従つてその8
個の出力へ前述のオペランドをシフトする。ビツ
トレジスタSC2は第4のマシンサイクルにおい
てスタートシフトカウンタを含んでいる。拡張回
路網E1は、ブリセツトデータ線から通常0のブ
リセツトデータのオペランドも受け取り、ビツト
レジスタX3にある順序ベクトルの配列に従い、
2組のオペランド入力を構成する。
の8個のビツトは拡張回路網E1の入力とされ
る。シフト回路網10の8個の出力も拡張回路網
E1の入力とされる。シフト回路網10は15個の
オペランドを受け取る。即ち、そのうちの8個は
オペランドレジスタR3から、7個をオペランド
レジスタR2から受け取る。シフト回路網10は
ビツトレジスタSC2のカウントに従つてその8
個の出力へ前述のオペランドをシフトする。ビツ
トレジスタSC2は第4のマシンサイクルにおい
てスタートシフトカウンタを含んでいる。拡張回
路網E1は、ブリセツトデータ線から通常0のブ
リセツトデータのオペランドも受け取り、ビツト
レジスタX3にある順序ベクトルの配列に従い、
2組のオペランド入力を構成する。
上述の説明について、、その概要をまとめる
と、この実施例では1個のオペランドレジスタの
代りに3個のオペランドレジスタR1,R2及R
3を用いているがこれはメモリからのベクトルオ
ペランドを取出し、これらオペランドをシフトし
てタンデムに演算論理ユニツトへ送る動作をより
効率的に調整するためである。これらのオペラン
ドはメモリから8個が同時に取出されてレジスタ
R1に送られ、そこで先にレジスタR2及びR3
にロードされた8個のオペランドの2つのグルー
プの処理が完了するまで保持される。メモリから
の8個のオペランドがALUで処理が終る度毎に
レジスタR2とR3の内容は1回づつ移動する
が、このためレジスタR3はR2の内容をコピー
し、レジスタR2はR1の内容をコピーし、また
レジスタR1はメモリから新しい8個のスパース
ベクトルオペランドのグループをメモリからロー
ドする。各マシンサイクルの間にレジスタR2及
びR3から8個より少ないオペランドを処理して
もよく、この場合は、メモリから次のグループの
オペランドが必要となる前に数個のALUマシン
サイクルが生じる。入力レジスタR1を設けるこ
とにより、メモリからの取出しをALUでの処理
とはある程度時間的に無関係とすることができ
る。そのため、ALUの処理はメモリからの取出
しに対して速度が増し、メモリからの取出しサイ
クル当りのALU処理サイクルの数が増す。
と、この実施例では1個のオペランドレジスタの
代りに3個のオペランドレジスタR1,R2及R
3を用いているがこれはメモリからのベクトルオ
ペランドを取出し、これらオペランドをシフトし
てタンデムに演算論理ユニツトへ送る動作をより
効率的に調整するためである。これらのオペラン
ドはメモリから8個が同時に取出されてレジスタ
R1に送られ、そこで先にレジスタR2及びR3
にロードされた8個のオペランドの2つのグルー
プの処理が完了するまで保持される。メモリから
の8個のオペランドがALUで処理が終る度毎に
レジスタR2とR3の内容は1回づつ移動する
が、このためレジスタR3はR2の内容をコピー
し、レジスタR2はR1の内容をコピーし、また
レジスタR1はメモリから新しい8個のスパース
ベクトルオペランドのグループをメモリからロー
ドする。各マシンサイクルの間にレジスタR2及
びR3から8個より少ないオペランドを処理して
もよく、この場合は、メモリから次のグループの
オペランドが必要となる前に数個のALUマシン
サイクルが生じる。入力レジスタR1を設けるこ
とにより、メモリからの取出しをALUでの処理
とはある程度時間的に無関係とすることができ
る。そのため、ALUの処理はメモリからの取出
しに対して速度が増し、メモリからの取出しサイ
クル当りのALU処理サイクルの数が増す。
レジスタR1―R3におけるオペランドの移動
はキヤリレジスタC1により制御され、キヤリレ
ジスタC1には加算器A1の出力が供給される。
加算器A1の入力には、「現在の順序ベクトルグ
ループのポピユレーシヨンカウント、及び「以
前」の順序ベクトルグループ(複数)のカウント
の和がある。これら2つの入力の合計のカウント
が8のカウントに等しくなるか又はこれを超すと
何時でもキヤリが現われる。従つて、引続く2つ
の順序ベクトルビツトの合計のポピユレーシヨン
カウントが、後述の例のように10のカウントに等
しいと加算器A1からキヤリが発生し、キヤリレ
ジスタC1はオペランドをR1からR2へ1つづ
つ移動させる。オペランドが1つづつ移動する
と、次の合計に対するいわゆるポピユレーシヨン
カウントを2のカウントに減少させる。この2の
カウントは、キヤリビツトをはぎ取りそしてこれ
をレジスタSC1に与えることなくして、レジス
タSC1への加算器A1の出力上に与えられる。
レジスタSC1には2のカウントがセツトされ、
レジスタSC1の出力は加算器A1の1の入力に
帰還される。
はキヤリレジスタC1により制御され、キヤリレ
ジスタC1には加算器A1の出力が供給される。
加算器A1の入力には、「現在の順序ベクトルグ
ループのポピユレーシヨンカウント、及び「以
前」の順序ベクトルグループ(複数)のカウント
の和がある。これら2つの入力の合計のカウント
が8のカウントに等しくなるか又はこれを超すと
何時でもキヤリが現われる。従つて、引続く2つ
の順序ベクトルビツトの合計のポピユレーシヨン
カウントが、後述の例のように10のカウントに等
しいと加算器A1からキヤリが発生し、キヤリレ
ジスタC1はオペランドをR1からR2へ1つづ
つ移動させる。オペランドが1つづつ移動する
と、次の合計に対するいわゆるポピユレーシヨン
カウントを2のカウントに減少させる。この2の
カウントは、キヤリビツトをはぎ取りそしてこれ
をレジスタSC1に与えることなくして、レジス
タSC1への加算器A1の出力上に与えられる。
レジスタSC1には2のカウントがセツトされ、
レジスタSC1の出力は加算器A1の1の入力に
帰還される。
レジスタR2及びR3の15個の最下位ビツトの
出力は並列にシフト回路網10に送られ、シフト
回路網10はこれら15個のオペランドの8個だけ
を拡張回路網E1への出力へ出す。どの8個を出
すかはビツトレジスタSC2のポピユレーシヨン
カウントにより制御されるが、このポピユレーシ
ヨンカウントは本質的にはレジスタSC1のコピ
ーである。もしレジスタSC2におけるカウント
が零であれば、シフト回路網10は8個の出力と
してレジスタR3の全部の内容を出力しこれはR
3の内容だけで勿論8個のオペランドを含んでい
る。もし、2番目の例として、ビツトレジスタ
SC2のカウントが2であれば、シフト回路網1
0はその出力に、オペランドレジスタR3の第3
番目の最下位のオペランドから始まりレジスタR
2における第2番目の最下位のオペランドに連続
する8個の出力オペランド、即ちレジスタセルR
32から始まりレジスタセルR21を含む8個の
オペランドを出す。ビツトレジスタSC2の最高
カウントはカウント7であるので、シフトのため
の最高開始点はレジスタセルR37である。この
第3の例で、シフトして出される8個のオペラン
ドはレジスタセルR37からR26に含まれてい
る。
出力は並列にシフト回路網10に送られ、シフト
回路網10はこれら15個のオペランドの8個だけ
を拡張回路網E1への出力へ出す。どの8個を出
すかはビツトレジスタSC2のポピユレーシヨン
カウントにより制御されるが、このポピユレーシ
ヨンカウントは本質的にはレジスタSC1のコピ
ーである。もしレジスタSC2におけるカウント
が零であれば、シフト回路網10は8個の出力と
してレジスタR3の全部の内容を出力しこれはR
3の内容だけで勿論8個のオペランドを含んでい
る。もし、2番目の例として、ビツトレジスタ
SC2のカウントが2であれば、シフト回路網1
0はその出力に、オペランドレジスタR3の第3
番目の最下位のオペランドから始まりレジスタR
2における第2番目の最下位のオペランドに連続
する8個の出力オペランド、即ちレジスタセルR
32から始まりレジスタセルR21を含む8個の
オペランドを出す。ビツトレジスタSC2の最高
カウントはカウント7であるので、シフトのため
の最高開始点はレジスタセルR37である。この
第3の例で、シフトして出される8個のオペラン
ドはレジスタセルR37からR26に含まれてい
る。
加算器A1から出るポピユレーシヨンカウント
は、マシンサイクル毎に処理される「メモリから
出る」オペランドの数に対応しており、従つて、
8個の「メモリから出た」オペランドがタンデム
になつているALUにより処理されてしまうまで
は、加算器A1からキヤリは発生しない。従つ
て、どれくらい多くのベクトル位置が、0値オペ
ランドのような所定のデータを含んでいるかに依
存してどのようなグループ数の順序ベクトルビツ
トをもとることができる。勿論、もし与えられた
ベクトルの中に0値オペランドが含まれていなけ
れば、各グループの順序ベクトルビツトは8個の
0でないビツトのポピユレーシヨンカウントをも
ち、これによりALUマシンサイクル毎にキヤリ
が加算器A1から発生する。
は、マシンサイクル毎に処理される「メモリから
出る」オペランドの数に対応しており、従つて、
8個の「メモリから出た」オペランドがタンデム
になつているALUにより処理されてしまうまで
は、加算器A1からキヤリは発生しない。従つ
て、どれくらい多くのベクトル位置が、0値オペ
ランドのような所定のデータを含んでいるかに依
存してどのようなグループ数の順序ベクトルビツ
トをもとることができる。勿論、もし与えられた
ベクトルの中に0値オペランドが含まれていなけ
れば、各グループの順序ベクトルビツトは8個の
0でないビツトのポピユレーシヨンカウントをも
ち、これによりALUマシンサイクル毎にキヤリ
が加算器A1から発生する。
基本的には、従つて、オペランドレジスタR2
とR3は一時に16個のベクトルオペランドを保持
し、加算器A1がキヤリの存在によつて、レジス
タR3の8個のオペランドの総てが拡張回路網E
1へシフトされてしまつたことを示すまでは持つ
ている。このことから再び、順序ベクトルの内容
に依存してALUのマシンサイクルの数は決定さ
れない。当面、ベクトルの処理を効率的に行うた
め、ハードウエアは独立してメモリから取出し、
そして処理されるべき次の8個のオペランドをレ
ジスタR1にロードし、レジスタR1からR2へ
のオペランドの次の移動の用意をする。これによ
りメモリの動作速度はある程度ALUの速度から
独立させることができる。このことは、また、メ
モリからのオペランドの取得と速度に対して
ALUの速度を大きく増加させることができ、コ
ンピユータ処理速度の全般的な増加となる。
とR3は一時に16個のベクトルオペランドを保持
し、加算器A1がキヤリの存在によつて、レジス
タR3の8個のオペランドの総てが拡張回路網E
1へシフトされてしまつたことを示すまでは持つ
ている。このことから再び、順序ベクトルの内容
に依存してALUのマシンサイクルの数は決定さ
れない。当面、ベクトルの処理を効率的に行うた
め、ハードウエアは独立してメモリから取出し、
そして処理されるべき次の8個のオペランドをレ
ジスタR1にロードし、レジスタR1からR2へ
のオペランドの次の移動の用意をする。これによ
りメモリの動作速度はある程度ALUの速度から
独立させることができる。このことは、また、メ
モリからのオペランドの取得と速度に対して
ALUの速度を大きく増加させることができ、コ
ンピユータ処理速度の全般的な増加となる。
また、拡張回路網E1は、シフト回路網10か
ら8個のオペランドを受けるが、拡張回路網E1
は与えられたグループの順序ベクトルビツトの0
でないビツトに対応するオペランドのみを処理
し、そしてこれらを順序ベクトルビツトの配列と
順序に従つて、配列し順序付けるものである。
ら8個のオペランドを受けるが、拡張回路網E1
は与えられたグループの順序ベクトルビツトの0
でないビツトに対応するオペランドのみを処理
し、そしてこれらを順序ベクトルビツトの配列と
順序に従つて、配列し順序付けるものである。
例えば、スタートシフトカウントが0で、順序
ベクトルの最初の8個のビツトが10011011(リス
トの一番左はA0に対応する)のときは、オペラ
ンドレジスタR3の最下位から順位付けされたセ
ルには次のようなスパースベクトルのオペランド
を含む。
ベクトルの最初の8個のビツトが10011011(リス
トの一番左はA0に対応する)のときは、オペラ
ンドレジスタR3の最下位から順位付けされたセ
ルには次のようなスパースベクトルのオペランド
を含む。
A0,A3,A4,A6,A7
R30,R31,R32,R33,R34.
拡張回路網E1は、ビツトレジスタX3の順序
ベクトルのビツトの最下位ビツトを調べ、1を検
出したときはビツトレジスタR3からのオペラン
ドA0を最下位の出力とする。拡張回路網E1
は、ビツトレジスタX3の次に最低位のビツトを
調べ、0を検出したときは、ブリセツトデータオ
ペランド0を2番目の最低位出力に置き、以下拡
張回路網E1の8個の出力が次のようになるまで
続ける。
ベクトルのビツトの最下位ビツトを調べ、1を検
出したときはビツトレジスタR3からのオペラン
ドA0を最下位の出力とする。拡張回路網E1
は、ビツトレジスタX3の次に最低位のビツトを
調べ、0を検出したときは、ブリセツトデータオ
ペランド0を2番目の最低位出力に置き、以下拡
張回路網E1の8個の出力が次のようになるまで
続ける。
A0,0,0,A3,A4,0,A6,A7,
これらの8個の出力はALUに対する入力とし
て同時に供給され、タンデム処理される。
て同時に供給され、タンデム処理される。
次に第5のマシンサイクルにおいて、ビツトレ
ジスタSC1の内容は、第1グループの順序ベク
トル(8ビツト)にある1のビツトをカウントし
た数であり、レジスタSC2にロードされる。ビ
ツトレジスタSC2の出力によりシフト回路網1
0はオペランドレジスタR3のセルアドレス5を
指定する。この実施例では、第1グループの順序
ベクトルのビツトにおける1のビツト数は5であ
る。「指定する」とは、シフト回路網10がオペ
ランドレジスタR3のセル5,6及び7及びオペ
ランドレジスタR2のセル0,1,2,3及び4
の内容をその8個の出力にシフトすることを意味
する。
ジスタSC1の内容は、第1グループの順序ベク
トル(8ビツト)にある1のビツトをカウントし
た数であり、レジスタSC2にロードされる。ビ
ツトレジスタSC2の出力によりシフト回路網1
0はオペランドレジスタR3のセルアドレス5を
指定する。この実施例では、第1グループの順序
ベクトルのビツトにおける1のビツト数は5であ
る。「指定する」とは、シフト回路網10がオペ
ランドレジスタR3のセル5,6及び7及びオペ
ランドレジスタR2のセル0,1,2,3及び4
の内容をその8個の出力にシフトすることを意味
する。
第2グループの8個の順序ビツトはこの同一マ
シンサイクルでビツトレジスタX3に転送され
る。第2グループの順序ベクトルのビツトが次の
パターン01011101からなるものとすると、シフト
回路網10の出力に存在するオペランド(一部)
は、オペランドレジスタR3の第5順位のセルか
らオペランドレジスタR2の第2順位のセルへ出
たもので次のようになつている。
シンサイクルでビツトレジスタX3に転送され
る。第2グループの順序ベクトルのビツトが次の
パターン01011101からなるものとすると、シフト
回路網10の出力に存在するオペランド(一部)
は、オペランドレジスタR3の第5順位のセルか
らオペランドレジスタR2の第2順位のセルへ出
たもので次のようになつている。
A9,A11,A12,A13,A15
R35,R36,R37,R20,R21,
拡張回路網E1はビツトレジスタX3の順序ベ
クトルのビツトパターン01011101に従い、このよ
うな5つのオペランドを出力する。従つて、第5
サイクルの終りで拡張回路網E1の出力は0,
A9,0,A11,A12,A13,0,A15となる。これ
らの8つのオペランドは、並列に転送され、
ALUによりタンデムに同時処理される。
クトルのビツトパターン01011101に従い、このよ
うな5つのオペランドを出力する。従つて、第5
サイクルの終りで拡張回路網E1の出力は0,
A9,0,A11,A12,A13,0,A15となる。これ
らの8つのオペランドは、並列に転送され、
ALUによりタンデムに同時処理される。
前のマシンサイクル(第4サイクル)における
ビツトレジスタSC1の内容は、第1グループの
順序ベクトルのビツトに存在する1のビツトが5
個のあることを表わす5の数であつた。更に、こ
のカウントは、ビツトレジスタSC2にロードさ
れ、シフト回路網10を制御し、更に以上説明し
たように加算器A1の第2入力としてフイードバ
ツクされる。第2グループの順序ベクトルのビツ
トも1のビツトを5個もつ。従つて、ポピユレー
シヨンカウントEP1はカウント5を加算器A1
の第1入力に転送することになる。これらの2つ
のカウント5の入力を加算することにより、加算
器A1は2の数とキヤリを出力する。3個の下位
順序ビツトはビツトパターン010をもち、ビツト
レジスタSC1に転送される。キヤリはキヤリレ
ジスタC1に転送される。
ビツトレジスタSC1の内容は、第1グループの
順序ベクトルのビツトに存在する1のビツトが5
個のあることを表わす5の数であつた。更に、こ
のカウントは、ビツトレジスタSC2にロードさ
れ、シフト回路網10を制御し、更に以上説明し
たように加算器A1の第2入力としてフイードバ
ツクされる。第2グループの順序ベクトルのビツ
トも1のビツトを5個もつ。従つて、ポピユレー
シヨンカウントEP1はカウント5を加算器A1
の第1入力に転送することになる。これらの2つ
のカウント5の入力を加算することにより、加算
器A1は2の数とキヤリを出力する。3個の下位
順序ビツトはビツトパターン010をもち、ビツト
レジスタSC1に転送される。キヤリはキヤリレ
ジスタC1に転送される。
第5マシンサイクルにおいて、キヤリレジスタ
C1に1のビツトが存在すると、オペランドレジ
スタR3はオペランドレジスタR2の内容を写し
取り、オペランドレジスタR2はオペランドレジ
スタR1の内容を写し取り、オペランドレジスタ
R1に新しいグループの8つのスパースベクトル
のオペランドをロードする。
C1に1のビツトが存在すると、オペランドレジ
スタR3はオペランドレジスタR2の内容を写し
取り、オペランドレジスタR2はオペランドレジ
スタR1の内容を写し取り、オペランドレジスタ
R1に新しいグループの8つのスパースベクトル
のオペランドをロードする。
第3及び第4グループの順序ベクトルのビツト
が全て1であると仮定すると、この転送の後はオ
ペランドレジスタR3及びR2の内容が次のよう
になる。
が全て1であると仮定すると、この転送の後はオ
ペランドレジスタR3及びR2の内容が次のよう
になる。
A13,A15,A16,…,A29
R30,R31,R32,…,R27,
この同一のマシンサイクルにおいてビツトレジ
スタSC1の内容010はビツトレジスタSC2にロ
ードされる。次のマシンサイクルにおいて、シフ
ト回路網10はR32,即ちオペランドレジスタ
R3の最下位から2番目のセルを指定することに
なり、セルR32は処理すべき次のスペースベク
トルのオペランドA16をもつている。
スタSC1の内容010はビツトレジスタSC2にロ
ードされる。次のマシンサイクルにおいて、シフ
ト回路網10はR32,即ちオペランドレジスタ
R3の最下位から2番目のセルを指定することに
なり、セルR32は処理すべき次のスペースベク
トルのオペランドA16をもつている。
このプロセスはスパースベクトルの各オペラン
ドをALUに転送するまで連続する。
ドをALUに転送するまで連続する。
ここで上述のオペランドA0−A7の処理につい
て、簡単に説明を補足すると、オペランドA0―
A7はレジスタR3のセル(記憶場所)R30から
R34のそれぞれに入つている5個の「メモリか
ら読出された」ベクトルオペランドである。ビツ
トレジスタSC2上の最初のカウントは0であ
り、従つてシフト回路網10はレジスタR3のセ
ルR30を指定する。シフト回路網10は、レジ
スタR3に含まれている総ての8個のオペランド
をその出力上に出す。しかし、拡張回路網E1
は、タンデムのALUに入力するために最初の5
個のオペランドだけを拡張する。その理由は、ビ
ツトレジスタX3の内容にはこれら5個のベクト
ルオペランドに対応する0でない順序ベクトルビ
ツトを5個しか含んでいないからである。従つ
て、8個のタンデムになつたALUへの実際の入
力は、上述のように、A0,0,0,A3,A4,
0,A6,A7である。これらは順序ベクトルグル
ープに従つて配列し順位付けられている。
て、簡単に説明を補足すると、オペランドA0―
A7はレジスタR3のセル(記憶場所)R30から
R34のそれぞれに入つている5個の「メモリか
ら読出された」ベクトルオペランドである。ビツ
トレジスタSC2上の最初のカウントは0であ
り、従つてシフト回路網10はレジスタR3のセ
ルR30を指定する。シフト回路網10は、レジ
スタR3に含まれている総ての8個のオペランド
をその出力上に出す。しかし、拡張回路網E1
は、タンデムのALUに入力するために最初の5
個のオペランドだけを拡張する。その理由は、ビ
ツトレジスタX3の内容にはこれら5個のベクト
ルオペランドに対応する0でない順序ベクトルビ
ツトを5個しか含んでいないからである。従つ
て、8個のタンデムになつたALUへの実際の入
力は、上述のように、A0,0,0,A3,A4,
0,A6,A7である。これらは順序ベクトルグル
ープに従つて配列し順位付けられている。
次のマシンサイクル(前述では第5マシンサイ
クル)で、5のポピユレーシヨンカウント(5は
前のALUマシンサイクルにおいて処理されたオ
ペランドの数である)がビツトレジスタSC2に
ロードされる。ビツトレジスタSC2から5の数
がシフト回路網10に入力されると、シフト回路
網10は、レジスタR3のセルR35からレジス
タR2のセルR24に存在する8個のオペランド
をその8個の出力として出す。しかし、ビツトレ
ジスタX3に今存在す対応する順序ベクトルグル
ープの内容は5個の0でないビツトしか含まない
ので、8個の出力の最初の5個だけが事実上拡張
され、そしてこのマシンサイクルの間に8個のタ
ンデムのALUによつて処理される。これら実際
に処理されるオペランドは、前述のように A9,A11,A12,A13,A15であり、また、拡張
回路網E1を出るときの配列と順位付けは、0,
A9,0,A11,A12,A13,0,A15となつてお
り、これらは順序ベクトルグループに対応する。
クル)で、5のポピユレーシヨンカウント(5は
前のALUマシンサイクルにおいて処理されたオ
ペランドの数である)がビツトレジスタSC2に
ロードされる。ビツトレジスタSC2から5の数
がシフト回路網10に入力されると、シフト回路
網10は、レジスタR3のセルR35からレジス
タR2のセルR24に存在する8個のオペランド
をその8個の出力として出す。しかし、ビツトレ
ジスタX3に今存在す対応する順序ベクトルグル
ープの内容は5個の0でないビツトしか含まない
ので、8個の出力の最初の5個だけが事実上拡張
され、そしてこのマシンサイクルの間に8個のタ
ンデムのALUによつて処理される。これら実際
に処理されるオペランドは、前述のように A9,A11,A12,A13,A15であり、また、拡張
回路網E1を出るときの配列と順位付けは、0,
A9,0,A11,A12,A13,0,A15となつてお
り、これらは順序ベクトルグループに対応する。
これら10個のオペランドが、2つのマシンサイ
クルの間に8個のタンデムのALUによつて処理
されてしまつた後に、6個のベクトルオペランド
のみが未処理でレジスタR2の中に残つている。
レジスタR3の総てのオペランドは処理されてし
まつている。次のグループの順序ベクトルビツト
は、8個の0でないビツトをもち得るので、6個
というのは、必要な場合、ALUに供給される未
処理のオペランドとしては不十分な数であり、従
つて、レジスタR1からの8個のオペランドがレ
ジスタR2へ移動し、そしてレジスタR2のオペ
ランドは8個のタンデムのALUの潜在的入力と
してレジスタR3へ移動する。
クルの間に8個のタンデムのALUによつて処理
されてしまつた後に、6個のベクトルオペランド
のみが未処理でレジスタR2の中に残つている。
レジスタR3の総てのオペランドは処理されてし
まつている。次のグループの順序ベクトルビツト
は、8個の0でないビツトをもち得るので、6個
というのは、必要な場合、ALUに供給される未
処理のオペランドとしては不十分な数であり、従
つて、レジスタR1からの8個のオペランドがレ
ジスタR2へ移動し、そしてレジスタR2のオペ
ランドは8個のタンデムのALUの潜在的入力と
してレジスタR3へ移動する。
加算器A1は、5と5を加算し、その結果7よ
り多い数となり、このためキヤリレジスタC1へ
のキヤリが出力される。この結果、キヤリレジス
タC1は、レジスタR2の内容を移動させ、その
もつている6個の未処理オペランドをレジスタR
3の中へ、そしてレジスタR1から新しい8個の
オペランドをレジスタR2の中へ移す。前述のよ
うに、加算器A1のカウント出力はカウント10か
ら8を引いたもの、即ち2であり、8個のレジス
タR3のオペランドは既にALUへ送られた事実
を表わしている。このカウントは今やビツトレジ
スタSC2において、シフト回路網10をしてそ
の8個の出力上へレジスタR3のセルR32から
始まりレジスタR2のセルR21迄の8個のオペ
ランドを出力される。勿論、レジスタR3のセル
R32からR37にはレジスタR2から丁度ロー
ドされた6個の未処理ベクトルオペランドが含ま
れており、他方セルR30とR31にはALUに
より前に処理された2個のオペランドを含まれて
いた。
り多い数となり、このためキヤリレジスタC1へ
のキヤリが出力される。この結果、キヤリレジス
タC1は、レジスタR2の内容を移動させ、その
もつている6個の未処理オペランドをレジスタR
3の中へ、そしてレジスタR1から新しい8個の
オペランドをレジスタR2の中へ移す。前述のよ
うに、加算器A1のカウント出力はカウント10か
ら8を引いたもの、即ち2であり、8個のレジス
タR3のオペランドは既にALUへ送られた事実
を表わしている。このカウントは今やビツトレジ
スタSC2において、シフト回路網10をしてそ
の8個の出力上へレジスタR3のセルR32から
始まりレジスタR2のセルR21迄の8個のオペ
ランドを出力される。勿論、レジスタR3のセル
R32からR37にはレジスタR2から丁度ロー
ドされた6個の未処理ベクトルオペランドが含ま
れており、他方セルR30とR31にはALUに
より前に処理された2個のオペランドを含まれて
いた。
より詳細に述べると、拡張回路網E1に対する
順序ベクトルの入力をZ0,Z1,…Zoで表わした
ときは、シフト回路網10からの8つのオペラン
ド入力はA0,A1,…,Aoで表わされ、拡張回路
網E1の出力はO0,O1,…,Oo,かつB=プリ
セツトデータで表わされる。次の論理式は、拡張
回路網E1の動作を説明するものである。
順序ベクトルの入力をZ0,Z1,…Zoで表わした
ときは、シフト回路網10からの8つのオペラン
ド入力はA0,A1,…,Aoで表わされ、拡張回路
網E1の出力はO0,O1,…,Oo,かつB=プリ
セツトデータで表わされる。次の論理式は、拡張
回路網E1の動作を説明するものである。
C00=A0 0+A1Z0
C10=A0 0+A2Z0
C20=A2 0+A3Z0
C30=A3 0+A4Z0
C40=A4 0+A5Z0
C50=A5 0+A6Z0
C60=A6 0+A7Z0
C01=C00 1+C10Z1
C11=C10 1+C20Z1
C21=C20 1+C30Z1
C31=C30 1+C40Z1
C41=C40 1+C50Z1
C51=C50 1+C60Z1
C02=C01 2+C11Z2
C12=C11 2+C21Z2
C22=C21 2+C31Z2
C32=C31 2+C41Z2
C42=C41 2+C51Z2
C03=C02 3+C12Z3
C13=C12 3+C22Z3
C23=C22 3+C32Z3
C33=C32 3+C42Z3
C04=C03 4+C13Z4
C14=C13 4+C23Z4
C24=C23 4+C33Z4
C05=C04 5+C14Z5
C15=C14 5+C24Z5
C06=C05 6+C15Z6
O0=B0+A0Z0
O1=B1+C00Z1
O2=B2+C01Z2
O3=B3+C02Z3
O4=B4+C03Z4
O5=B5+C04Z5
O6=B6+C05Z6
O7=B7+C06Z7
当業者においては明らかなように上記論理式は
各オペランドA及びBについてビツト毎で実行す
るのが良い。
各オペランドA及びBについてビツト毎で実行す
るのが良い。
ALUは一時にn対のオペランドを受け取り、
n個の演算又は論理処理をタンデムで実行する。
これらの処理を実行した後、ALUはマシンサイ
クル毎にn個の結果を出力する。この結果のうち
のいくつかは、0の値又は0で割算したときの無
効な結果をもつかもしれない。メモリには0又は
無効な結果を除いた結果を記憶するのが好まし
い。このような除去を行なう装置を第2図に示
す。
n個の演算又は論理処理をタンデムで実行する。
これらの処理を実行した後、ALUはマシンサイ
クル毎にn個の結果を出力する。この結果のうち
のいくつかは、0の値又は0で割算したときの無
効な結果をもつかもしれない。メモリには0又は
無効な結果を除いた結果を記憶するのが好まし
い。このような除去を行なう装置を第2図に示
す。
各マシンサイクルで第1の拡張ベクトルのオペ
ランドはnオペランドのデータレジスタR4に貯
えられる。同様に、第2の拡張ベクトルのオペラ
ンドはnオペランドのデータレジスタR24に貯
えられる。ALUはデータレジスタR4,R24
からこのオペランドをロードし、これに対してn
個のタンデム論理又は演算処理を実行し、n個の
結果をデータレジスタR5に貯える。これらn個
の結果はその後、圧縮回路網CR1により次のマ
シンサイクルでスパースベクトル形式に圧縮され
る。圧縮回路網CR1については以下で詳細に説
明する。圧縮した結果はデータレジスタR6に貯
えられる。データレジスタR6に貯えられた結果
の数は、n個の結果のグループに存在する有効な
結果(ゼロ又は無効な結果を除く)の数に従う。
これらの結果は次段の装置(図示なし)を介して
メモリに転送される。
ランドはnオペランドのデータレジスタR4に貯
えられる。同様に、第2の拡張ベクトルのオペラ
ンドはnオペランドのデータレジスタR24に貯
えられる。ALUはデータレジスタR4,R24
からこのオペランドをロードし、これに対してn
個のタンデム論理又は演算処理を実行し、n個の
結果をデータレジスタR5に貯える。これらn個
の結果はその後、圧縮回路網CR1により次のマ
シンサイクルでスパースベクトル形式に圧縮され
る。圧縮回路網CR1については以下で詳細に説
明する。圧縮した結果はデータレジスタR6に貯
えられる。データレジスタR6に貯えられた結果
の数は、n個の結果のグループに存在する有効な
結果(ゼロ又は無効な結果を除く)の数に従う。
これらの結果は次段の装置(図示なし)を介して
メモリに転送される。
どの結果が有効であり、まだどの結果がゼロ又
は無効かの判断は2つのスパースベクトルに対す
る順序ベクトルの論理的組み合せに従つて行なわ
れる。スパースベクトルの一つは順序ベクトルX
と呼び、他は順序ベクトルYと呼ぶ。例えば、2
つのスパースベクトルに実行されるべき処理が加
算又は引算処理のときは、入力ベクトルの一つが
その順位で有効なオペランドをもつ限り、結果の
ベクトルは与えられた順位に対し有効な結果とな
る。もし順序ベクトルXが10000110からなり、順
序ベクトルYが01001010からなるならば、その結
果の順序ベクトルZは11001110となり、1は有効
な結果に対応する。この順序ベクトルZは順序ベ
クトルX及びYの論理知からなる。同様に、処理
が掛算又は割算ならば、その結果の順序ベクトル
Zは00000010となり、これは順序ベクトルX及び
Yの論理積からなる。同様の論理的な処理を順序
ベクトルX及びYに実行し、ALUが実行した全
ての論理又は演算処理の結果の順序ベクトルを見
付け出す。
は無効かの判断は2つのスパースベクトルに対す
る順序ベクトルの論理的組み合せに従つて行なわ
れる。スパースベクトルの一つは順序ベクトルX
と呼び、他は順序ベクトルYと呼ぶ。例えば、2
つのスパースベクトルに実行されるべき処理が加
算又は引算処理のときは、入力ベクトルの一つが
その順位で有効なオペランドをもつ限り、結果の
ベクトルは与えられた順位に対し有効な結果とな
る。もし順序ベクトルXが10000110からなり、順
序ベクトルYが01001010からなるならば、その結
果の順序ベクトルZは11001110となり、1は有効
な結果に対応する。この順序ベクトルZは順序ベ
クトルX及びYの論理知からなる。同様に、処理
が掛算又は割算ならば、その結果の順序ベクトル
Zは00000010となり、これは順序ベクトルX及び
Yの論理積からなる。同様の論理的な処理を順序
ベクトルX及びYに実行し、ALUが実行した全
ての論理又は演算処理の結果の順序ベクトルを見
付け出す。
第2図において、この論理処理はブロツク
SDOに実行される。ブロツクSDOは、2つのオ
ペランド順序ベクトルX及びYを入力すると共
に、ALUにより実行されるべき命令、即ちOPコ
ードの表示を入力するもので、各マシンサイクル
で8ビツトの2つの順序ベクトルを受け取り、そ
の結果をビツトレジスタX10に貯えさせる。
SDOに実行される。ブロツクSDOは、2つのオ
ペランド順序ベクトルX及びYを入力すると共
に、ALUにより実行されるべき命令、即ちOPコ
ードの表示を入力するもので、各マシンサイクル
で8ビツトの2つの順序ベクトルを受け取り、そ
の結果をビツトレジスタX10に貯えさせる。
ビツトレジスタX10〜X13は、遅延レジス
タであり、入力スパースベクトルのオペランドが
オペランドレジスタR1,R2,R3及びデータ
レジスタR4を通過する必要から、結果の順序ベ
クトルZをマシンサイクル数だけ遅延させる。
タであり、入力スパースベクトルのオペランドが
オペランドレジスタR1,R2,R3及びデータ
レジスタR4を通過する必要から、結果の順序ベ
クトルZをマシンサイクル数だけ遅延させる。
ビツトレジスタX13の出力はビツトレジスタ
X14に貯えられる。しかしこれらの2つのビツ
トレジスタX13,14間の転送は、オペランド
がALUにより処理されている同一期間で生ずる
ので、機能ユニツト遅延20により遅延され、ビ
ツトレジスタX14への順位ベクトルZのビツト
の到達とレジスタR5への結果の到達とを同期さ
せる。遅延時間はALUにより実行される論理又
は演算処理に依存する。
X14に貯えられる。しかしこれらの2つのビツ
トレジスタX13,14間の転送は、オペランド
がALUにより処理されている同一期間で生ずる
ので、機能ユニツト遅延20により遅延され、ビ
ツトレジスタX14への順位ベクトルZのビツト
の到達とレジスタR5への結果の到達とを同期さ
せる。遅延時間はALUにより実行される論理又
は演算処理に依存する。
ビツトレジスタX14の内容は、圧縮回路網
CR1の一入力として供給され、更にそれに含ま
れている1のビツトを計数するポピユレーシヨン
カウンタCP1の入力として供給される。このカ
ウントは、データレジスタR5における有効なオ
ペランド数を表わすもので、4ビツトのビツトレ
ジスタX15に転送される。ビツトレジスタX1
5の出力は、次段の回路に供給され、有効なスパ
ースベクトルの結果の数を表わし、この結果はデ
ータレジスタR6において得られ、メモリに貯え
られる。
CR1の一入力として供給され、更にそれに含ま
れている1のビツトを計数するポピユレーシヨン
カウンタCP1の入力として供給される。このカ
ウントは、データレジスタR5における有効なオ
ペランド数を表わすもので、4ビツトのビツトレ
ジスタX15に転送される。ビツトレジスタX1
5の出力は、次段の回路に供給され、有効なスパ
ースベクトルの結果の数を表わし、この結果はデ
ータレジスタR6において得られ、メモリに貯え
られる。
圧縮回路網CR1の動作を次の例で説明する。
ビツトレジスタ14からの結果の順序ベクトルZ
がビツトパターン10101101からなるものとする
と、データレジスタR5に存在する結果、r0,
r1,r2,…,r7は、圧縮され、データレジスタR
6に左からつめて次のように記憶される。
ビツトレジスタ14からの結果の順序ベクトルZ
がビツトパターン10101101からなるものとする
と、データレジスタR5に存在する結果、r0,
r1,r2,…,r7は、圧縮され、データレジスタR
6に左からつめて次のように記憶される。
r0,r2,r4,r5,r7,0,0,0順序ベクトル
Zの0に対応するr1,r3及びr6は省略されたもの
である。
Zの0に対応するr1,r3及びr6は省略されたもの
である。
圧縮回路網CR1の論理式において、Z0〜Z7は
ビツトレジスタX14の結果の順序ベクトルのビ
ツト入力を表わし、A0,A1,A2,…,A7はデー
タレジスタR5の結果の入力を表わし、r0,r1,
r2…,r7は次のものからなる圧縮回路網CR1の
出力を表わす。
ビツトレジスタX14の結果の順序ベクトルのビ
ツト入力を表わし、A0,A1,A2,…,A7はデー
タレジスタR5の結果の入力を表わし、r0,r1,
r2…,r7は次のものからなる圧縮回路網CR1の
出力を表わす。
C70=A7Z7
C60=A6Z6
C50=A5Z5
C40=A4Z4
C30=A3Z3
C20=A2Z2
C10=A1Z1
C00=A0Z0
C71=C70Z6
C61=C70 6+C60
C72=C71Z5
C62=C71 5+C61Z5
C52=C61 5+C50
C73=C72Z4
C63=C72 4+C62Z4
C53=C62 4+C52Z4
C43=C52 4+C40
C74=C73Z3
C64=C73 3+C63Z3
C54=C63 3+C53Z3
C44=C53 3+C42Z3
C34=C43 3+C30
C75=C74Z2
C65=C74 2+C64Z2
C55=C64 2+C54Z2
C45=C54 2+C44Z2
C35=C44 2+C34Z2
C25=C34 2+C20
C76=C75Z1
C66=C75 1+C65Z1
C56=C65 1+C55Z1
C46=C55 1+C45Z1
C36=C45 1+C35Z1
C26=C35 1+C25Z1
C16=C25 1+C10
r7=C77=C76Z0
r6=C67=C76 0+C66Z0
r5=C57=C66 0+C56Z0
r4=C47=C56 0+C46Z0
r3=C37=C46 0+C36Z0
r2=C27=C36 0+C26Z0
r1=C17=C26 0+C16Z0
r0=C07=C16 0+C00
上記のいく組かの等式は2入力の論理和を用い
ることを意味している。この好ましい実施例では
実際に4入力の論理和を用いている。4入力の論
理和によるロジツクを用い、等価的な4入力論理
和ロジツクを作るときは、上記等式を変形する必
要がある。
ることを意味している。この好ましい実施例では
実際に4入力の論理和を用いている。4入力の論
理和によるロジツクを用い、等価的な4入力論理
和ロジツクを作るときは、上記等式を変形する必
要がある。
説明はしなかつたが、当業者において明らかな
ように、1のビツトを順位ベクトルビツトZで置
換することにより、データレジスタR5の各結果
を乱すことなく、データレジスタR6に従つてメ
モリに転送する結果となる。この状態でメモリに
貯えた結果ベクトルは拡張された非圧縮形式とな
る。これらの1のビツトは適当にビツトレジスタ
X10に導入できる。もし1個のスパースベクト
ルのみが導入され、ALUのOPコードがNO―OP
(無命令)ならば、スパースベクトルを拡張ベク
トルに変換することが正味の結果である。
ように、1のビツトを順位ベクトルビツトZで置
換することにより、データレジスタR5の各結果
を乱すことなく、データレジスタR6に従つてメ
モリに転送する結果となる。この状態でメモリに
貯えた結果ベクトルは拡張された非圧縮形式とな
る。これらの1のビツトは適当にビツトレジスタ
X10に導入できる。もし1個のスパースベクト
ルのみが導入され、ALUのOPコードがNO―OP
(無命令)ならば、スパースベクトルを拡張ベク
トルに変換することが正味の結果である。
同様に、ALUにより処理されるべくメモリに
あるベクトル又は複数のベクトルが既に拡張形式
にあるならば(順位ベクトルさえ保有していない
かもしれない)、順位ベクトルのビツトに代り、
第1図のビツトレジスタXOに入力される1のビ
ツトのグループは、1ビツトカウンタEP1にお
いて拡張しない結果となる。このようにして拡張
ベクトル又は複数のベクトルは処理されて圧縮さ
れる。もし1のみが入力され、ALUのOPコード
がNO―OPならば、拡張ベクトルをスパースベク
トルに圧縮することが正味の結果となる。
あるベクトル又は複数のベクトルが既に拡張形式
にあるならば(順位ベクトルさえ保有していない
かもしれない)、順位ベクトルのビツトに代り、
第1図のビツトレジスタXOに入力される1のビ
ツトのグループは、1ビツトカウンタEP1にお
いて拡張しない結果となる。このようにして拡張
ベクトル又は複数のベクトルは処理されて圧縮さ
れる。もし1のみが入力され、ALUのOPコード
がNO―OPならば、拡張ベクトルをスパースベク
トルに圧縮することが正味の結果となる。
もし1のビツトがビツトレジスタX0及びX1
の両方において置換されるならば、1以上の拡張
ベクトルをこの発明の装置で処理できる。
の両方において置換されるならば、1以上の拡張
ベクトルをこの発明の装置で処理できる。
他の同じような変更は当業者において容易に可
能である。
能である。
この実施例の特定の要素を列挙したが、これは
この特許請求の範囲及び精神を限定するものでは
ない。
この特許請求の範囲及び精神を限定するものでは
ない。
第1図はALUによりタンデム処理するために
スパースベクトルを拡張する回路のブロツク図、
第2図はALUのタンデム出力をスパースベクト
ルに圧縮する回路のブロツク図である。 10……シフト回路網、20……機能ユニツト
遅延、A1……加算器、ALU……演算論理ユニ
ツト、C1……キヤリレジスタ、CP1……ポピ
ユレーシヨンカウンタ、CR1……圧縮回路網、
E1……拡張回路網、EP1……1のビツトカウ
ンタ、R1,R2,R3……オペランドレジス
タ、R4,R5,R6,R24……データレジス
タ、SC1,SC2,X0,X1,X2,X3,X
10,X11,X12,X13,X14,X15
……ビツトレジスタ。
スパースベクトルを拡張する回路のブロツク図、
第2図はALUのタンデム出力をスパースベクト
ルに圧縮する回路のブロツク図である。 10……シフト回路網、20……機能ユニツト
遅延、A1……加算器、ALU……演算論理ユニ
ツト、C1……キヤリレジスタ、CP1……ポピ
ユレーシヨンカウンタ、CR1……圧縮回路網、
E1……拡張回路網、EP1……1のビツトカウ
ンタ、R1,R2,R3……オペランドレジス
タ、R4,R5,R6,R24……データレジス
タ、SC1,SC2,X0,X1,X2,X3,X
10,X11,X12,X13,X14,X15
……ビツトレジスタ。
Claims (1)
- 【特許請求の範囲】 1 少なくとも予め定められた数のオペランドを
タンデムに処理することが可能な演算論理ユニツ
トを備え、かつ対応する順序ベクトルを持つたス
パースベクトルを処理するようにされたコンピユ
ータであつて、上記演算論理ユニツトにより同時
処理されるべき各々のスパースベクトルのため
に、前記順序ベクトルは2種類のビツトをもち、
その第1の種類は拡張ベクトルにおけるスパース
ベクトルのオペランドの位置を示し、第2の種類
は予め選定された値のオペランドの位置を示すも
のにおいて、 全ての順序ベクトルのビツトが取出されるまで
前記順序ベクトルのビツトを、前記演算論理ユニ
ツトがダンテムに処理が可能な前記予め定められ
たオペランド数に等しい数のビツトをもつグルー
プごとに取出す装置と、 前記順位ベクトルのビツトを取出す装置に応答
して、順序ベクトルのビツトのグループにおける
上記第1の種類のビツトの数についてのポピユレ
ーシヨンカウントを生成する装置と、 前記ポピユレーシヨンカウントを生成する装置
に応答して前記スパースベクトルから上記ポピユ
レーシヨンカウントに等しい数の第1の複数のオ
ペランドを送る装置と、 順序ベクトルビツトの前記グループにおける第
1の種類のビツトの整列及び順序に従い前記第1
の複数のオペランドを拡張されたグループの中へ
整列しかつ順序付ける装置と、 予め選定された値のオペランドを発生する装置
と、 前記順序ベクトルのビツトのグループ中の前記
第2の種類のビツトの整列と順序に従つて前記予
め選定された値のオペランドを前記拡張されたグ
ループの中へ挿入する装置と、 前記整列されかつ順序付けられたオペランドの
拡張されたグループを前記演算論理ユニツトにタ
ンデムに送る装置と、を有するコンピユータ。 2 特許請求の範囲第1項に記のコンピユータで
あつて、前記スパースベクトルからの第1の複数
のオペランドを送る装置は、 前記予め定められた数のオペランドをロード
し、保持しかつ出力端に出力する第1のレジスタ
装置と、 前記予め定められた数のオペランドをロード
し、保持しかつ出力端に出力する第2のレジスタ
装置と、 最低順位に前記第1のレジスタ装置の出力を含
み最高順位に前記第2のレジスタ装置の出力の最
高順位を除く総てを少なくとも含む順序づけられ
た入力から或る数の連続して順序づけられた入力
を同じ数の出力にシフトするシフト回路網装置で
あつて、シフトされるべき最低順位の入力はシフ
トカウント入力により指示され、シフトされた数
は前記の予め定められた数であり、前記のシフト
された出力は送られたオペランドを含む前記シフ
トネツトワーク装置と、 シフトカウントを保持しかつ出力端に出力する
シフトカウントレジスタ装置であつた、出力端は
前記シフト回路網装置の前記シフトカウント入力
に相互接続する装置を有する前記シフトカウント
レジスタ装置と、 前記ポピユレーシヨンカウントと前記シフトカ
ウントレジスタ装置にあるシフトカウントであつ
てその最大のカウントが前記予め定められた数よ
り1つ少ない前記シフトカウントとを加算し、第
1の加算出力に前記加算の最低順位ビツトを形成
し、前記和が前記予め定められた数に等しいか該
数を越える場合には第2の加算出力にキヤリを形
成する加算装置と、 前記第1の加算出力を、前記の整列されかつ順
序づけられたオペランドが前記演算論理ユニツト
に送られた後に、前記シフトカウントレジスタ装
置に移動する装置とを備え、 前記第2の加算出力に相互接続され、キヤリが
あることに応答して前記第2のレジスタ装置にあ
るオペランドを前記第1のレジスタ装置に移動し
新たなグループの前記予め定められた数のスパー
スペクトルオペランドを前記第2のレジスタ装置
にロードする装置とを有する、コンピユータ。 3 少なくとも予め定められた数のオペランドを
タンデムに処理することが可能な演算論理ユニツ
トを備え、かつ対応する順序ベクトルを持つたス
パースベクトルを処理するようにされたコンピユ
ータであつて、上記演算論理ユニツトにより同時
処理されるべき各々のスパースベクトルのため
に、前記順序ベクトルは2種類のビツトをもち、
その第1の種類は拡張ベクトルにおけるスパース
ベクトルのオペランドの位置を示し、第2の種類
は予め選定された値のオペランドの位置を示すも
のにおいて、 全ての順序ベクトルのビツトが取出されるまで
前記順序ベクトルのビツトを、前記演算論理ユニ
ツトがタンデムに処理が可能な前記予め定められ
たオペランド数に等しい数ビツトをもつグループ
ごとに取出す装置と、 前記順位ベクトルのビツトを取出す装置に応答
して、順序ベクトルのビツトのグループにおける
上記第1の種類のビツトの数についてのポピユレ
ーシヨンカウントを生成する装置と、 前記ポピユレーシヨンカウントを生成する装置
に応答して前記スパースベクトルから上記ポピユ
レーシヨンカウントに等しい数の第1の複数のオ
ペランドを送る装置と、 順序ベクトルビツトの前記グループにおける第
1の種類のビツトの整列及び順序に従い前記第1
の複数のオペランドを拡張されたグループの中へ
整列しかつ順序付ける装置と、 予め選定された値のオペランドを発生する装置
と、 前記順序ベクトルのビツトのグループ中の前記
第2の種類のビツトの整列と順序に従つて前記予
め選定された値のオペランドを前記拡張されたグ
ループの中へ挿入する装置と、 前記の整列されかつ順序付けられたオペランド
の拡張されたグループを前記演算論理ユニツトに
タンデムに送る装置と、 前記演算論理ユニツトにより加算され、引算さ
れ、掛算され又は割算されるスパースベクトルに
対応する順序ベクトルにつき、前記演算論理ユニ
ツトが加算又は減算の演算を行う場合には前記順
序ベクトルの論理和を含む出力順序ベクトルを形
成し、前記演算論理ユニツトが掛算又は割算を行
う場合には前記順序ベクトルの論理積を含む出力
順序ベクトルを形成する装置と、 前記論理演算ユニツトの出力における有効なス
パースベクトルリザルタントの存在を表わす、前
記出力順序ベクトルビツトのグループにおけるビ
ツトの数のカウントを生成する装置であつて、前
記グループのビツトの総数は前記演算論理ユニツ
トがタンデムに処理し得る前記予め定められたオ
ペランド数に等しい前記装置と、 前記演算論理ユニツトからの前記予め定められ
た数のリザルタントの出力を受け有効なスパース
ベクトルリザルタントを表わす前記出力順序ベク
トルビツトの整列及び順序に従つて整列されかつ
順序づけされたリザルタントを抽出する装置と、 前記の抽出されたリザルタントを出力に送る装
置であつて、送られた数は前記カウントに等しい
前記装置と、 を有するコンピユータ。 4 特許請求の範囲第3項に記載のコンピユータ
であつて、前記順序ベクトルビツト又は前記出力
順序ベクトルビツトの代りに全部1のビツトを選
択的に置き代えるか又は前記順序ベクトルビツト
及び前記出力順序ベクトルビツトの両方の代りに
全部1のビツトを選択的に置き代える装置であつ
て、それより拡張された形式のベクトルが前記直
列処理演算論理ユニツトへ入力され、前記ユニツ
トから出力され、又は前記ベクトルの前記ユニツ
トへの入力及び前記ユニツトからの出力の両方が
行われるようにされた前記装置を更に含むコンピ
ユータ。
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US06/191,808 US4371951A (en) | 1980-09-29 | 1980-09-29 | Apparatus for converting serial input sparse vector format to parallel unpacked format for input to tandem arithmetic logic units |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS5760461A JPS5760461A (en) | 1982-04-12 |
| JPS6141027B2 true JPS6141027B2 (ja) | 1986-09-12 |
Family
ID=22707017
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP56105435A Granted JPS5760461A (en) | 1980-09-29 | 1981-07-06 | Computer |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US4371951A (ja) |
| EP (1) | EP0049039B1 (ja) |
| JP (1) | JPS5760461A (ja) |
| AU (1) | AU535431B2 (ja) |
| CA (1) | CA1159964A (ja) |
| DE (1) | DE3164722D1 (ja) |
Families Citing this family (18)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS58214963A (ja) * | 1982-06-09 | 1983-12-14 | Hitachi Ltd | ベクトル処理装置 |
| US4630192A (en) * | 1983-05-18 | 1986-12-16 | International Business Machines Corporation | Apparatus for executing an instruction and for simultaneously generating and storing related information |
| US4589067A (en) * | 1983-05-27 | 1986-05-13 | Analogic Corporation | Full floating point vector processor with dynamically configurable multifunction pipelined ALU |
| JPH0731669B2 (ja) * | 1986-04-04 | 1995-04-10 | 株式会社日立製作所 | ベクトル・プロセツサ |
| US5179680A (en) * | 1987-04-20 | 1993-01-12 | Digital Equipment Corporation | Instruction storage and cache miss recovery in a high speed multiprocessing parallel processing apparatus |
| US5057837A (en) * | 1987-04-20 | 1991-10-15 | Digital Equipment Corporation | Instruction storage method with a compressed format using a mask word |
| US5113507A (en) * | 1988-10-20 | 1992-05-12 | Universities Space Research Association | Method and apparatus for a sparse distributed memory system |
| US5369773A (en) * | 1991-04-26 | 1994-11-29 | Adaptive Solutions, Inc. | Neural network using virtual-zero |
| US5717616A (en) * | 1993-02-19 | 1998-02-10 | Hewlett-Packard Company | Computer hardware instruction and method for computing population counts |
| US6049864A (en) * | 1996-08-20 | 2000-04-11 | Intel Corporation | Method for scheduling a flag generating instruction and a subsequent instruction by executing the flag generating instruction in a microprocessor |
| US7600104B2 (en) * | 2006-08-15 | 2009-10-06 | Peter Neumann | Method and system for parallel vector data processing of vector data having a number of data elements including a defined first bit-length |
| EP3657389A1 (en) * | 2012-09-05 | 2020-05-27 | Element, Inc. | System and method for biometric authentication in connection with camera-equipped devices |
| KR102506826B1 (ko) | 2014-05-13 | 2023-03-06 | 엘리먼트, 인크. | 모바일 장치와 관련된 전자 키 지급 및 액세스 관리를 위한 시스템 및 방법 |
| JP6415607B2 (ja) | 2014-06-03 | 2018-10-31 | エレメント,インク. | モバイル・デバイスに関連する出退認証および管理 |
| AT519514B1 (de) | 2017-01-13 | 2021-07-15 | Blum Gmbh Julius | Führungssystem zur Führung eines bewegbar gelagerten Möbelteiles |
| CN114048450A (zh) | 2017-09-18 | 2022-02-15 | 埃利蒙特公司 | 用于在移动验证中检测电子欺骗的方法、系统和介质 |
| BR112021018149B1 (pt) | 2019-03-12 | 2023-12-26 | Element Inc | Método implementado por computador para detectar falsificação de reconhecimento de identidade biométrica usando a câmera de um dispositivo móvel, sistema implementado por computador e meio de armazenamento legível por computador não transitório |
| US11507248B2 (en) | 2019-12-16 | 2022-11-22 | Element Inc. | Methods, systems, and media for anti-spoofing using eye-tracking |
Family Cites Families (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5737885B2 (ja) * | 1973-12-22 | 1982-08-12 | ||
| JPS5435743B2 (ja) * | 1973-12-24 | 1979-11-05 | ||
| US3919534A (en) * | 1974-05-17 | 1975-11-11 | Control Data Corp | Data processing system |
| JPS5615534B2 (ja) * | 1974-10-25 | 1981-04-10 | ||
| US4128880A (en) * | 1976-06-30 | 1978-12-05 | Cray Research, Inc. | Computer vector register processing |
| JPS5852265B2 (ja) * | 1977-01-12 | 1983-11-21 | 株式会社日立製作所 | デ−タ処理装置 |
| US4162534A (en) * | 1977-07-29 | 1979-07-24 | Burroughs Corporation | Parallel alignment network for d-ordered vector elements |
-
1980
- 1980-09-29 US US06/191,808 patent/US4371951A/en not_active Expired - Lifetime
-
1981
- 1981-06-12 CA CA000379616A patent/CA1159964A/en not_active Expired
- 1981-07-06 JP JP56105435A patent/JPS5760461A/ja active Granted
- 1981-08-13 DE DE8181303689T patent/DE3164722D1/de not_active Expired
- 1981-08-13 EP EP81303689A patent/EP0049039B1/en not_active Expired
- 1981-08-19 AU AU74336/81A patent/AU535431B2/en not_active Ceased
Also Published As
| Publication number | Publication date |
|---|---|
| CA1159964A (en) | 1984-01-03 |
| AU535431B2 (en) | 1984-03-22 |
| JPS5760461A (en) | 1982-04-12 |
| DE3164722D1 (en) | 1984-08-16 |
| EP0049039B1 (en) | 1984-07-11 |
| US4371951A (en) | 1983-02-01 |
| AU7433681A (en) | 1982-04-08 |
| EP0049039A1 (en) | 1982-04-07 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPS6141027B2 (ja) | ||
| US5081573A (en) | Parallel processing system | |
| US5226171A (en) | Parallel vector processing system for individual and broadcast distribution of operands and control information | |
| EP0754998B1 (en) | An arithmetic unit | |
| US5696959A (en) | Memory store from a selected one of a register pair conditional upon the state of a selected status bit | |
| US5696954A (en) | Three input arithmetic logic unit with shifting means at one input forming a sum/difference of two inputs logically anded with a third input logically ored with the sum/difference logically anded with an inverse of the third input | |
| US5680339A (en) | Method for rounding using redundant coded multiply result | |
| US5600847A (en) | Three input arithmetic logic unit with mask generator | |
| US5446651A (en) | Split multiply operation | |
| EP0208870B1 (en) | Vector data processor | |
| US5805913A (en) | Arithmetic logic unit with conditional register source selection | |
| US5509129A (en) | Long instruction word controlling plural independent processor operations | |
| US5596763A (en) | Three input arithmetic logic unit forming mixed arithmetic and boolean combinations | |
| US5960193A (en) | Apparatus and system for sum of plural absolute differences | |
| US5606677A (en) | Packed word pair multiply operation forming output including most significant bits of product and other bits of one input | |
| US6016538A (en) | Method, apparatus and system forming the sum of data in plural equal sections of a single data word | |
| JP3729881B2 (ja) | 並列加算および平均演算を行うための回路およびその方法 | |
| EP0314809B1 (en) | Vector processor for processing recurrent equations at a high speed | |
| US6067613A (en) | Rotation register for orthogonal data transformation | |
| EP0428327A1 (en) | Processor array system | |
| US5596519A (en) | Iterative division apparatus, system and method employing left most one's detection and left most one's detection with exclusive OR | |
| US6026484A (en) | Data processing apparatus, system and method for if, then, else operation using write priority | |
| JPS6256536B2 (ja) | ||
| US20240354368A1 (en) | Method and system for performing matrix multiplication using convolution-supporting unit, device, and medium | |
| US5512896A (en) | Huffman encoding method, circuit and system employing most significant bit change for size detection |