JPH03144783A - 入出力システム - Google Patents
入出力システムInfo
- Publication number
- JPH03144783A JPH03144783A JP2263254A JP26325490A JPH03144783A JP H03144783 A JPH03144783 A JP H03144783A JP 2263254 A JP2263254 A JP 2263254A JP 26325490 A JP26325490 A JP 26325490A JP H03144783 A JPH03144783 A JP H03144783A
- Authority
- JP
- Japan
- Prior art keywords
- data
- input
- buffers
- simd
- temporary storage
- 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
- 238000000034 method Methods 0.000 title claims abstract description 27
- 239000000872 buffer Substances 0.000 claims abstract description 135
- 238000012546 transfer Methods 0.000 claims abstract description 81
- 230000015654 memory Effects 0.000 claims description 101
- 238000012545 processing Methods 0.000 claims description 38
- 230000007246 mechanism Effects 0.000 claims description 16
- 230000002457 bidirectional effect Effects 0.000 claims description 10
- 235000014121 butter Nutrition 0.000 abstract 1
- 230000008569 process Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 5
- 238000013507 mapping Methods 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 238000003870 depth resolved spectroscopy Methods 0.000 description 2
- 208000009743 drug hypersensitivity syndrome Diseases 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000001788 irregular Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 101100263202 Mus musculus Usp9x gene Proteins 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000012536 storage buffer Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/76—Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data
- G06F7/78—Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data for changing the order of data flow, e.g. matrix transposition or LIFO buffers; Overflow or underflow handling therefor
- G06F7/785—Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data for changing the order of data flow, e.g. matrix transposition or LIFO buffers; Overflow or underflow handling therefor having a sequence of storage locations each being individually accessible for both enqueue and dequeue operations, e.g. using a RAM
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
- G06F15/17356—Indirect interconnection networks
- G06F15/17368—Indirect interconnection networks non hierarchical topologies
-
- 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/8007—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors single instruction multiple data [SIMD] multiprocessors
- G06F15/8015—One dimensional arrays, e.g. rings, linear arrays, buses
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Multi Processors (AREA)
- Image Processing (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
A、産業上の利用分野
本発明は、SIMD並列コ並列コンピユー入用カシステ
ムに関し、具体的にはSIMDシステムの入出力速度を
大福に増加させる2次元データ転送スキームを供給する
ことのできる、SIMDコンピュータの各処理要素ごと
に個別の一時記憶パツファを用いた、分散入出力システ
ムに関する。
ムに関し、具体的にはSIMDシステムの入出力速度を
大福に増加させる2次元データ転送スキームを供給する
ことのできる、SIMDコンピュータの各処理要素ごと
に個別の一時記憶パツファを用いた、分散入出力システ
ムに関する。
B、従来技術、及びその課題
すべての分野の科学者及び技術者は、その仕事を進める
ために対してコンピュータに依存するようになってきて
おり、この依存によって、コンピュータの性能がほぼ5
年ごとに、ある大きさだけ増大すると期待するようにな
ってきた。このコンピュータの性能がその大きさずつ高
まる傾向は、速度が下がってきており、事実、現在使用
できるスーパーコンビニ−夕は、すでにその技術的限界
にある。従来、その限界は、電気信号が光速の約半分の
速度で様々なワイヤ及び相互接続を通って伝播するのに
要する時間の長さに基づいて、毎秒当り約30億個の浮
動小数点命令、すなわち約3ギガフロツプであった。従
来技術のシステムの欠点は、今日の科学者及び技術者が
直面する多くの間題が、3ギガフロツプの限界をはるか
に越えた性能を有するコンピュータを利用してしか解決
できないことである。
ために対してコンピュータに依存するようになってきて
おり、この依存によって、コンピュータの性能がほぼ5
年ごとに、ある大きさだけ増大すると期待するようにな
ってきた。このコンピュータの性能がその大きさずつ高
まる傾向は、速度が下がってきており、事実、現在使用
できるスーパーコンビニ−夕は、すでにその技術的限界
にある。従来、その限界は、電気信号が光速の約半分の
速度で様々なワイヤ及び相互接続を通って伝播するのに
要する時間の長さに基づいて、毎秒当り約30億個の浮
動小数点命令、すなわち約3ギガフロツプであった。従
来技術のシステムの欠点は、今日の科学者及び技術者が
直面する多くの間題が、3ギガフロツプの限界をはるか
に越えた性能を有するコンピュータを利用してしか解決
できないことである。
スーパーコンビーータ性能の最近の進歩は、アプリケー
ジ画ンを、並列に作動する多くのプロセッサ間で分割す
ることによって達成されたものである。理論的には、並
列処理コンピュータは、テラフロ、プの範囲の性能を提
供するはずである。これらのコンビュー夕はより大きな
容量及び速度を提供するが、また新しい一連の問題、す
なわち新しいコンピュータのプログラミング、入出力動
作の取扱い、データの操作といった問題をもたらす。
ジ画ンを、並列に作動する多くのプロセッサ間で分割す
ることによって達成されたものである。理論的には、並
列処理コンピュータは、テラフロ、プの範囲の性能を提
供するはずである。これらのコンビュー夕はより大きな
容量及び速度を提供するが、また新しい一連の問題、す
なわち新しいコンピュータのプログラミング、入出力動
作の取扱い、データの操作といった問題をもたらす。
プログラミングの困難さは、プログラムがどれだけ良く
書かれていたとしても、複数のプロセッサを100%利
用するのは非常に困難だということから生じる。入出力
動作の取扱い及びデータ操作の問題は、これらのタイプ
のコンピュータに関連するデータの量から生じる。プロ
グラミングの問題は、経験から解決することができるが
、入出力及びデータ操作の問題は、コンビ具−夕月の入
出力システムを改良することによって軽減することがで
きる。
書かれていたとしても、複数のプロセッサを100%利
用するのは非常に困難だということから生じる。入出力
動作の取扱い及びデータ操作の問題は、これらのタイプ
のコンピュータに関連するデータの量から生じる。プロ
グラミングの問題は、経験から解決することができるが
、入出力及びデータ操作の問題は、コンビ具−夕月の入
出力システムを改良することによって軽減することがで
きる。
第1図に示すように、従来のSIMD(単一命令複数デ
ータ)並列システムは、入出力サブシステム30を介し
てホストコンピュータ20と対話するSIMDコンピー
ータ10を含む。SIMDコンピュータ10は、Pl、
P 2−P Nと番号をつけた、それぞれが非常に簡単
なCPUである複数のプロセッサ12、プロセッサ12
同士を接続するネットワーク13、各プロセッサ用のM
l、M2・・・MNと番号をつけたメモリ14、及びプ
ロセッサに命令及びクロック・パルスを発行する制御装
置15を含む、プロセッサ・アレイ11から構成される
。入出力サブシステム30は、通常、SIMDコンピュ
ータ10とホスト20の間でのデータの転送を担当する
ステージング・メモリを含む。
ータ)並列システムは、入出力サブシステム30を介し
てホストコンピュータ20と対話するSIMDコンピー
ータ10を含む。SIMDコンピュータ10は、Pl、
P 2−P Nと番号をつけた、それぞれが非常に簡単
なCPUである複数のプロセッサ12、プロセッサ12
同士を接続するネットワーク13、各プロセッサ用のM
l、M2・・・MNと番号をつけたメモリ14、及びプ
ロセッサに命令及びクロック・パルスを発行する制御装
置15を含む、プロセッサ・アレイ11から構成される
。入出力サブシステム30は、通常、SIMDコンピュ
ータ10とホスト20の間でのデータの転送を担当する
ステージング・メモリを含む。
ファイン・ブレインド大規模並列SIMDシステムでは
、次々に1つずつ命令がプロセッサ・アレイに同時に同
報通信され、各命令が異なるデータに適用される。
、次々に1つずつ命令がプロセッサ・アレイに同時に同
報通信され、各命令が異なるデータに適用される。
従来から、ファイン・グレインドSIMD並列システム
は、イメージ本位のコンピユーテイングをそのアプリケ
ージ習ンの重点としており、したがってイメージやマト
リックス・データなど規則的な構造の2次元データを取
り扱うためにのみ設計された入出力システムをもたらし
た。SIMDコンピュータ・システムの入出力速度は、
FN×1メツシュとして配列されたNプロセッサSIM
Dシステムでは、1マシン・サイクル1当り、ff項目
のデータシステムとの間で入出力されないために、通常
は遅い。はとんどのファイン・グレインドSIMD並列
システムはメツシュ・ネットワークによって接続され、
それらの入出力は、ホストとSIMDシステムの1つの
境界行/列の間でデータをシフトすることによって行な
われる。このタイプのデータ転送は、1次元であると考
えられる。
は、イメージ本位のコンピユーテイングをそのアプリケ
ージ習ンの重点としており、したがってイメージやマト
リックス・データなど規則的な構造の2次元データを取
り扱うためにのみ設計された入出力システムをもたらし
た。SIMDコンピュータ・システムの入出力速度は、
FN×1メツシュとして配列されたNプロセッサSIM
Dシステムでは、1マシン・サイクル1当り、ff項目
のデータシステムとの間で入出力されないために、通常
は遅い。はとんどのファイン・グレインドSIMD並列
システムはメツシュ・ネットワークによって接続され、
それらの入出力は、ホストとSIMDシステムの1つの
境界行/列の間でデータをシフトすることによって行な
われる。このタイプのデータ転送は、1次元であると考
えられる。
それに加えて、データは、特定のデータを所望のプロセ
ッサに割り当てることができるよつに、ホストによって
予め配列しなければならない。規則的なデータ構造のみ
を取り扱つ際の入出力速度が遅く、能力が制限されてい
るため、SIMDコンピュータは狭い適用範囲に制限さ
れている。
ッサに割り当てることができるよつに、ホストによって
予め配列しなければならない。規則的なデータ構造のみ
を取り扱つ際の入出力速度が遅く、能力が制限されてい
るため、SIMDコンピュータは狭い適用範囲に制限さ
れている。
従来技術のSIMD入出力システム内で使用されるメツ
シュ本位の行/列シフト・スキームの第2の欠点は、プ
ログラミングの困難さである。入出力機能が現タスクの
実行とオーバーラツプするので、プログラマは、コンビ
ニ−ティング用の命令の間に入出力用の命令を挟まなけ
ればならない。
シュ本位の行/列シフト・スキームの第2の欠点は、プ
ログラミングの困難さである。入出力機能が現タスクの
実行とオーバーラツプするので、プログラマは、コンビ
ニ−ティング用の命令の間に入出力用の命令を挟まなけ
ればならない。
この状況により、まったく読み取ることのできないコー
ドがもたらされ、かつプロゲラえングがアセンブリ言語
のレベルに留まることになる。
ドがもたらされ、かつプロゲラえングがアセンブリ言語
のレベルに留まることになる。
SIMDコンピュータで現在用いられている従来技術の
入出力サブシステムの第3の態様は、コーナー回転機能
の取扱いである。コーナー回転機能は、ホストとSIM
Dシステムでデータの配列が異なることから生じる現象
である。たとえば、N個の32ビツト・ワードは、ホス
ト内ではそれぞれが32ビツト幅のN個の連続するワー
ドとして配列される。しかし、転送時には、これらのデ
ータ・ワードは、各プレーンがNビットを含み、そのそ
れぞれが1つのプロセッサに関連する、SIMDメモリ
の32個のプレーン間に分配される。
入出力サブシステムの第3の態様は、コーナー回転機能
の取扱いである。コーナー回転機能は、ホストとSIM
Dシステムでデータの配列が異なることから生じる現象
である。たとえば、N個の32ビツト・ワードは、ホス
ト内ではそれぞれが32ビツト幅のN個の連続するワー
ドとして配列される。しかし、転送時には、これらのデ
ータ・ワードは、各プレーンがNビットを含み、そのそ
れぞれが1つのプロセッサに関連する、SIMDメモリ
の32個のプレーン間に分配される。
この状況は、SIMDシステムでは、すべてのプロセッ
サが同じマシン・サイクルで同じメモリ位置にアクセス
する必要があり、かつプレーン編成がそのようなメモリ
・アクセシングを支援するためである。イメージやマト
リックスなど規則的データ構造のコーナー回転は、メツ
シュ本位の行/列シフトによって支援される。しかし、
不規則なデータ構造のコーナー回転は、従来技術の行/
列シフト入出力スキームによって支援されない。
サが同じマシン・サイクルで同じメモリ位置にアクセス
する必要があり、かつプレーン編成がそのようなメモリ
・アクセシングを支援するためである。イメージやマト
リックスなど規則的データ構造のコーナー回転は、メツ
シュ本位の行/列シフトによって支援される。しかし、
不規則なデータ構造のコーナー回転は、従来技術の行/
列シフト入出力スキームによって支援されない。
上記のように、従来技術の入出力システムは、現在、ス
テージング・メモリなど集中式のハードウェアとして実
施されている。この手法では、すべてのプロセッサに接
続するために、集中式の入出力システムを必要とし、そ
の結果、入出力システム用に多くのワイヤが必要となる
。米国特許第4727474号明細書は、大規模並列コ
ンピュータ用のステージング・メモリを開示している。
テージング・メモリなど集中式のハードウェアとして実
施されている。この手法では、すべてのプロセッサに接
続するために、集中式の入出力システムを必要とし、そ
の結果、入出力システム用に多くのワイヤが必要となる
。米国特許第4727474号明細書は、大規模並列コ
ンピュータ用のステージング・メモリを開示している。
ステージング・メモリは、ホスト・メモリと局所プロセ
ッサ・メモリの間の非常に複雑なインタフェースである
。このネットワークは、データのバッファリング、置換
、及びシャフリングが可能である。
ッサ・メモリの間の非常に複雑なインタフェースである
。このネットワークは、データのバッファリング、置換
、及びシャフリングが可能である。
このスキームを実施するための回路は、複雑であり、複
数のステージを必要とし、非常に多数のプロセッサに容
易に分散できない。
数のステージを必要とし、非常に多数のプロセッサに容
易に分散できない。
メツシュ本位の行/列シフト・スキームは、ワイヤを節
約するために、入出力システムをメッシユの境界に接続
するが、そろすると、システムの入出力速度が減少する
ので、妥協策である。
約するために、入出力システムをメッシユの境界に接続
するが、そろすると、システムの入出力速度が減少する
ので、妥協策である。
米国特許第4330048号明細書は、1次元入出力ス
キームを利用した大規模並列プロセッサ・コンピュータ
を開示している。開示された入出力システムは、入出力
動作用の記憶要素として働く。
キームを利用した大規模並列プロセッサ・コンピュータ
を開示している。開示された入出力システムは、入出力
動作用の記憶要素として働く。
システムによって利用される双方向データ・バスの瞬間
的論理状態を、入出力システムの1ビツト・レジスタに
記憶することができ、同様に、1ビツト・レジスタの論
理状態をデータ・バスに読み出すことができる。開示さ
れた入出力システムは、入出力システムの隣接する処理
要素中にビットをシフトすることができる。ビットは、
ただ1方向にのみシフトされ、シタがって、最大処理要
素アレイでは、1ビツトのスライス・データ・ストリー
ム・アレイは、データ・アレイを処理要素アレイ中に移
動するために、m回のシフト動作を必要とする。したが
って、高い入出力速度を維持しながら、配線の複雑さを
軽減する、入出力システムが求められている。
的論理状態を、入出力システムの1ビツト・レジスタに
記憶することができ、同様に、1ビツト・レジスタの論
理状態をデータ・バスに読み出すことができる。開示さ
れた入出力システムは、入出力システムの隣接する処理
要素中にビットをシフトすることができる。ビットは、
ただ1方向にのみシフトされ、シタがって、最大処理要
素アレイでは、1ビツトのスライス・データ・ストリー
ム・アレイは、データ・アレイを処理要素アレイ中に移
動するために、m回のシフト動作を必要とする。したが
って、高い入出力速度を維持しながら、配線の複雑さを
軽減する、入出力システムが求められている。
C0課題を解決するための手段
本発明は、ホスト・コンピュータとSIMDコンピュー
タの間の双方向データ転送スキームを提供する大規模並
列SIMD用の入出力システムを対象とする。SIMD
コンピュータは、それぞれ複数のSIMDメモリの1つ
と関連している複数ノ並列に連結されたプロセッサから
なる並列アレイ・プロセッサを有する、−命令複数デー
タ・コンピュータである。入出力システムは、ホスト・
コンピュータとSIMDコンピュータの間でデータの双
方向2次元転送を行なつための一時記憶手段、及びホス
ト・コンピュータと一時記憶手段の間のデータの流れを
制御し、かつ一時記憶手段と複数のSIMDメモリの間
のデータの流れを制御するための入出力処理手段を含む
。一時記憶手段は、本発明の図の実施例では、それぞれ
複数のSIMDメモリの1つと直接関連している複数の
バッファ1及びホスト・コンピュータと一時記憶手段の
間と、一時記憶手段とSIMDメモリの間でのデータ転
送のために、タイミング信号及び選択信号を供給するた
めの制御回路手段を含む。一時記憶手段は、所定の2次
元パターンで複数のバッファにデータを分配し、かつ1
システム・クロック・サイクルで、転送に適したファー
マットでデータを配列することにより、データの転送を
行なう。
タの間の双方向データ転送スキームを提供する大規模並
列SIMD用の入出力システムを対象とする。SIMD
コンピュータは、それぞれ複数のSIMDメモリの1つ
と関連している複数ノ並列に連結されたプロセッサから
なる並列アレイ・プロセッサを有する、−命令複数デー
タ・コンピュータである。入出力システムは、ホスト・
コンピュータとSIMDコンピュータの間でデータの双
方向2次元転送を行なつための一時記憶手段、及びホス
ト・コンピュータと一時記憶手段の間のデータの流れを
制御し、かつ一時記憶手段と複数のSIMDメモリの間
のデータの流れを制御するための入出力処理手段を含む
。一時記憶手段は、本発明の図の実施例では、それぞれ
複数のSIMDメモリの1つと直接関連している複数の
バッファ1及びホスト・コンピュータと一時記憶手段の
間と、一時記憶手段とSIMDメモリの間でのデータ転
送のために、タイミング信号及び選択信号を供給するた
めの制御回路手段を含む。一時記憶手段は、所定の2次
元パターンで複数のバッファにデータを分配し、かつ1
システム・クロック・サイクルで、転送に適したファー
マットでデータを配列することにより、データの転送を
行なう。
本発明の入出力システムの入力動作は、2ステツプ・プ
ロセスであり、第1のステップでホスト・コンピュータ
・メモリから複数のバッファにf −夕を転送し、第2
のステップで複数のバッファからSIMDメモリへデー
タを転送する。ホスト・コンビ5−夕から複数のバッフ
ァヘデータを転送する場合、入出力処理手段は、転送さ
れるホスト・メモリ内のデータ・ブロックの開始アドレ
スである入出力データ・ポインタ、及びホスト・コンピ
ュータの入出力装置に転送される項目の合計数である入
出力データ長さを書き込む。入出力データ・ポインタ及
び入出力データ長さの転送が完了すると、入出力処理手
段は、データ転送を呼び出す。ホスト・コンピュータ・
メモリからのデータ・ブロックは、入出力処理手段内に
あるアドレス生成機構のアドレス待ち行列にM対のセグ
メント開始アドレス及びセグメント長さをロードさせる
ことによって、複数のバッファの連続バッファのM個の
セグメントに分配される。このデータ転送の操作及び制
御は、入出力処理手段及び制御回路手段によって達成さ
れる。複数のバッファからSIMDメモリへデータを転
送する場合、入出力処理手段は、SIMDメモリの開始
アドレス及び長さをアドレス生成機構にロードし、その
後、データ転送を呼び出す。この場合も、このデータ転
送の操作及び制御は、入出力処理手段及び制御回路手段
によって行なわれる。ホスト・コンピュータ・メモリと
複数のバッファの間のデータ転送は、入出力チャネルを
介して行なわれ、複数のバッファと複数のSIMDメモ
リの間のデータ転送は、局所データ・バスによって行な
われる。
ロセスであり、第1のステップでホスト・コンピュータ
・メモリから複数のバッファにf −夕を転送し、第2
のステップで複数のバッファからSIMDメモリへデー
タを転送する。ホスト・コンビ5−夕から複数のバッフ
ァヘデータを転送する場合、入出力処理手段は、転送さ
れるホスト・メモリ内のデータ・ブロックの開始アドレ
スである入出力データ・ポインタ、及びホスト・コンピ
ュータの入出力装置に転送される項目の合計数である入
出力データ長さを書き込む。入出力データ・ポインタ及
び入出力データ長さの転送が完了すると、入出力処理手
段は、データ転送を呼び出す。ホスト・コンピュータ・
メモリからのデータ・ブロックは、入出力処理手段内に
あるアドレス生成機構のアドレス待ち行列にM対のセグ
メント開始アドレス及びセグメント長さをロードさせる
ことによって、複数のバッファの連続バッファのM個の
セグメントに分配される。このデータ転送の操作及び制
御は、入出力処理手段及び制御回路手段によって達成さ
れる。複数のバッファからSIMDメモリへデータを転
送する場合、入出力処理手段は、SIMDメモリの開始
アドレス及び長さをアドレス生成機構にロードし、その
後、データ転送を呼び出す。この場合も、このデータ転
送の操作及び制御は、入出力処理手段及び制御回路手段
によって行なわれる。ホスト・コンピュータ・メモリと
複数のバッファの間のデータ転送は、入出力チャネルを
介して行なわれ、複数のバッファと複数のSIMDメモ
リの間のデータ転送は、局所データ・バスによって行な
われる。
本発明の入出力システムの出力動作も2ステツプ・プロ
セスであり、第1のステップで複数のSIMDメモリか
ら複数のバッファへデータを転送し、第2のステップで
複数のバッファからホスト・コンピュータ・メモリへデ
ータを転送する。出力動作は、入力動作の逆の活動及び
機能を必要とする。
セスであり、第1のステップで複数のSIMDメモリか
ら複数のバッファへデータを転送し、第2のステップで
複数のバッファからホスト・コンピュータ・メモリへデ
ータを転送する。出力動作は、入力動作の逆の活動及び
機能を必要とする。
本発明の入出力システムは、Nプロセッサ・システムの
場合、従来技術で利用された67列シフト入出力システ
ムよりf1倍大きい入出力速度を支援する、2次元入出
力スキームを提供する。2次元であるため、規則的デー
タ構造の効率的転送、ならびに疎マトリックスやグラフ
ィック・データなどの不規則データ構造の転送が可能で
ある。この能力により、ユーザは、データを任意の所定
のパターンでプロセッサ内にマツプすることができる。
場合、従来技術で利用された67列シフト入出力システ
ムよりf1倍大きい入出力速度を支援する、2次元入出
力スキームを提供する。2次元であるため、規則的デー
タ構造の効率的転送、ならびに疎マトリックスやグラフ
ィック・データなどの不規則データ構造の転送が可能で
ある。この能力により、ユーザは、データを任意の所定
のパターンでプロセッサ内にマツプすることができる。
本発明はまた、入出力システムとSIMDコンピュータ
の間の配線の複雑さを軽減する分散構造も提供する。そ
れに加えて、入出力システムは、入出力プログラミング
をコンピユーテイングから分1して、並列システムのプ
ログラミングの労力を軽減する。
の間の配線の複雑さを軽減する分散構造も提供する。そ
れに加えて、入出力システムは、入出力プログラミング
をコンピユーテイングから分1して、並列システムのプ
ログラミングの労力を軽減する。
本発明は、一時記憶手段を入出力システムの一体的分散
構造要素として組み込むことによって、2次元データ転
送が実施でき、それによりflビット/サイクルからN
ビット/サイクルへ入出力データ速度を増す点で効用が
ある。このタイプの入出力システムは、どのSIMDコ
ンピュータ・システムの動作効果をも大きく増大させ、
またプロセッサ同士を接続するネットワークから独立し
ているために、複数のSIMDコンピュータ・システム
内で用いることができる。入出力システムによって利用
されるアドレシング・スキームにより、本発明を、メツ
シュ、多形トーラス、ハイパーキ一−ブ、その他のネッ
トワーク接続形状を利用したネットワークで利用するこ
とができる。
構造要素として組み込むことによって、2次元データ転
送が実施でき、それによりflビット/サイクルからN
ビット/サイクルへ入出力データ速度を増す点で効用が
ある。このタイプの入出力システムは、どのSIMDコ
ンピュータ・システムの動作効果をも大きく増大させ、
またプロセッサ同士を接続するネットワークから独立し
ているために、複数のSIMDコンピュータ・システム
内で用いることができる。入出力システムによって利用
されるアドレシング・スキームにより、本発明を、メツ
シュ、多形トーラス、ハイパーキ一−ブ、その他のネッ
トワーク接続形状を利用したネットワークで利用するこ
とができる。
D、実施例
大規模並列SIMDコンピュータ・システム用入出力シ
ステムは、SIMDコンピュータとそのホストの間のデ
ータ転送を担当する。第2図は、SIMDコンピーータ
・システムの基本ブロックを示ス。システムは、メイン
フレーム・コンピュータまたはマイクロプロセッサと関
連するメモリからなるホスト・コンピュータ200.S
IMDコンピュータ100、及びホスト・コンピュータ
200とSIMDコンピュータ100を接続する入出力
システム300を含む。本発明の入出力システム300
は、ホスト・コンピュータ200とSIMDコンピュー
タ100の間の双方向2次元データ転送を実施する。
ステムは、SIMDコンピュータとそのホストの間のデ
ータ転送を担当する。第2図は、SIMDコンピーータ
・システムの基本ブロックを示ス。システムは、メイン
フレーム・コンピュータまたはマイクロプロセッサと関
連するメモリからなるホスト・コンピュータ200.S
IMDコンピュータ100、及びホスト・コンピュータ
200とSIMDコンピュータ100を接続する入出力
システム300を含む。本発明の入出力システム300
は、ホスト・コンピュータ200とSIMDコンピュー
タ100の間の双方向2次元データ転送を実施する。
SIMDコンピュータ100は、Pl、P2−・・PN
と番号をつけた複数の処理要素120、個々の処理要素
120を接続するネットワーク130、及びML M2
・−M Nと番号をつけた複数のSIMD記憶装置14
0を有するプロセッサ・アレイヲ含む。SIMDコンピ
ュータ100は、並列に連結され操作される非常に多数
の個々の処理要素120を有する並列アレイ・プロセッ
サである。
と番号をつけた複数の処理要素120、個々の処理要素
120を接続するネットワーク130、及びML M2
・−M Nと番号をつけた複数のSIMD記憶装置14
0を有するプロセッサ・アレイヲ含む。SIMDコンピ
ュータ100は、並列に連結され操作される非常に多数
の個々の処理要素120を有する並列アレイ・プロセッ
サである。
SIMDコンピュータ100は大規模に並列であり、処
理要素120の数Nが非常に大きく、たとえば、個々の
処理要素が100万個以上ある。SIMDコンピュータ
100は、処理要素のための命令ストリームを生成し、
またコンピュータに必要なタイミング信号を供給する制
御装置150を含む。ネットワーク130は、個々の処
理要素120のための相互接続手段であり、メツシュ、
多形トーラス、ハイパーキューブなど多くの形状を取る
ことができる。複数の記憶装置140は、個々の処理要
素120用のデータを即座に記憶するためのものであり
、処理要素120の数と記憶装置140の数の間には1
対1の対応がある。
理要素120の数Nが非常に大きく、たとえば、個々の
処理要素が100万個以上ある。SIMDコンピュータ
100は、処理要素のための命令ストリームを生成し、
またコンピュータに必要なタイミング信号を供給する制
御装置150を含む。ネットワーク130は、個々の処
理要素120のための相互接続手段であり、メツシュ、
多形トーラス、ハイパーキューブなど多くの形状を取る
ことができる。複数の記憶装置140は、個々の処理要
素120用のデータを即座に記憶するためのものであり
、処理要素120の数と記憶装置140の数の間には1
対1の対応がある。
本発明の入出力システム300は、入出力プロセッサ(
IOP)320に結合された一時記憶手段310を含む
。入出力システム300の2次元データ転送スキームは
、一時記憶手段310によって提供される。第2図に示
した実施例では、一時記憶手段310が、Bl、B2・
・−BNと番号をつけた複数のバッファ330を含む。
IOP)320に結合された一時記憶手段310を含む
。入出力システム300の2次元データ転送スキームは
、一時記憶手段310によって提供される。第2図に示
した実施例では、一時記憶手段310が、Bl、B2・
・−BNと番号をつけた複数のバッファ330を含む。
複数のバッファ300のそれぞれが、複数のSIMD記
憶装置140の1つと関連している。したがって、本発
明の入出力システムは、入出力データ転送機能を、各プ
ロセッサ120に対して1つずつ、N個に分割すること
により、分散手法を利用するものである。一時記憶手段
310によって転送されるデータは、所定の2次元パタ
ーン内で前記複数のバッファに分配され、データはまた
、1システム・クロック・サイクルで、転送に適したフ
ォーマットに配列される。
憶装置140の1つと関連している。したがって、本発
明の入出力システムは、入出力データ転送機能を、各プ
ロセッサ120に対して1つずつ、N個に分割すること
により、分散手法を利用するものである。一時記憶手段
310によって転送されるデータは、所定の2次元パタ
ーン内で前記複数のバッファに分配され、データはまた
、1システム・クロック・サイクルで、転送に適したフ
ォーマットに配列される。
本発明の入出力システム300を第2図のような分離し
たエンティティとして構成することもでき、個々の要素
を他のSIMDシステム・コンポーネントに組み込むこ
ともできる。たとえば、IO2機能をホスト200によ
って実行することもでき、一時記憶手段を、SIMDプ
ロセッサ・アレイ110に直接組み込むこともでき、あ
るいはその両方を同時に行なつこともできる。第3図は
、上記の両方のオプシ冒ンを利用したSIMDシステム
のブロック・ダイヤグラムである。
たエンティティとして構成することもでき、個々の要素
を他のSIMDシステム・コンポーネントに組み込むこ
ともできる。たとえば、IO2機能をホスト200によ
って実行することもでき、一時記憶手段を、SIMDプ
ロセッサ・アレイ110に直接組み込むこともでき、あ
るいはその両方を同時に行なつこともできる。第3図は
、上記の両方のオプシ冒ンを利用したSIMDシステム
のブロック・ダイヤグラムである。
第4図を参照すると、ホスト・コンピュータ200と、
その中に組み込まれた本発明の入出力システムの一時記
憶手段310を含むSIMDコンピュータlOOと、9
隠した要素としてのl0P320とを有する、SIMD
システムの他の実施例の詳細なダイヤグラムが図示され
ている。入出力システムはさらに、SIMDコンピュー
タ100とホスト・コンピュータ200の間のデータ転
送に利用される入出力チャネル340を含む。入出力チ
ャネル340は、ホスト・コンピュータ200と入出力
プロセッサ手段3201ホスト・コンピュータ200と
一時記憶手段3101及びホスト・コンピュータ200
とアレイ制御装置150を相互接続するnビットの双方
向データ・バスである。nビット双方向データ・バス3
40は、アプリケージ1ンに応じて多数のタイプのデー
タ・ワードを取り扱うことができる。たとえば、入出力
チャネル340は、1ビツト、8ビツト、16ビ、ト、
及び32ビツトのデータ・ワードを取り扱うことができ
る。入出力プロセッサ手段320は、SIMDコンピュ
ータ100との間の入出力データの流れ全体だけでなく
、コンピュータ100内のデータの流れも制御する。入
出力プロセッサ手段320は、アドレス生成機構350
、アドレス待ち行列330.マイクロプロセッサ、及び
関連メモリ370を含むプロセッサである。
その中に組み込まれた本発明の入出力システムの一時記
憶手段310を含むSIMDコンピュータlOOと、9
隠した要素としてのl0P320とを有する、SIMD
システムの他の実施例の詳細なダイヤグラムが図示され
ている。入出力システムはさらに、SIMDコンピュー
タ100とホスト・コンピュータ200の間のデータ転
送に利用される入出力チャネル340を含む。入出力チ
ャネル340は、ホスト・コンピュータ200と入出力
プロセッサ手段3201ホスト・コンピュータ200と
一時記憶手段3101及びホスト・コンピュータ200
とアレイ制御装置150を相互接続するnビットの双方
向データ・バスである。nビット双方向データ・バス3
40は、アプリケージ1ンに応じて多数のタイプのデー
タ・ワードを取り扱うことができる。たとえば、入出力
チャネル340は、1ビツト、8ビツト、16ビ、ト、
及び32ビツトのデータ・ワードを取り扱うことができ
る。入出力プロセッサ手段320は、SIMDコンピュ
ータ100との間の入出力データの流れ全体だけでなく
、コンピュータ100内のデータの流れも制御する。入
出力プロセッサ手段320は、アドレス生成機構350
、アドレス待ち行列330.マイクロプロセッサ、及び
関連メモリ370を含むプロセッサである。
上記の入出力システムは、双方向2次元データ転送がで
きるV&置である。データの入力は、ホスト・コンピュ
ータ200のメモリから一時記憶手段310へ、その後
、一時記憶手段310から複数のSIMDメモリ140
ヘデータを転送することによって行なわれる。データの
出力は、データの入力を含むステップの順序を逆にして
同様の2ステツプ・プロセスで行なわれる。
きるV&置である。データの入力は、ホスト・コンピュ
ータ200のメモリから一時記憶手段310へ、その後
、一時記憶手段310から複数のSIMDメモリ140
ヘデータを転送することによって行なわれる。データの
出力は、データの入力を含むステップの順序を逆にして
同様の2ステツプ・プロセスで行なわれる。
ホストから−へのデータの
データをホスト・コンピュータ200のメモリから、一
時記憶手段310を含む複数のバッファ330に転送す
るために、入出力プロセッサ320は、ホスト・コンピ
ュータ200のメモリ内のデータの開始アドレスである
「入出力データ・ポインタ」、及び32ビツト・ワード
のデータの長さである「入出力データ長さ」を、ホスト
・コンピュータ200の入出力装置に書き込む。この入
出力装置は、ディスク駆動装置や直接メモリ・アクセス
装置などどんなタイプの入出力装置でもよい。この情報
の転送が完了すると、入出力プロセッサ320は、ホス
ト・コンピュータのメモリから一時記憶手段310への
データ転送を呼び出す。
時記憶手段310を含む複数のバッファ330に転送す
るために、入出力プロセッサ320は、ホスト・コンピ
ュータ200のメモリ内のデータの開始アドレスである
「入出力データ・ポインタ」、及び32ビツト・ワード
のデータの長さである「入出力データ長さ」を、ホスト
・コンピュータ200の入出力装置に書き込む。この入
出力装置は、ディスク駆動装置や直接メモリ・アクセス
装置などどんなタイプの入出力装置でもよい。この情報
の転送が完了すると、入出力プロセッサ320は、ホス
ト・コンピュータのメモリから一時記憶手段310への
データ転送を呼び出す。
マイクロプロセッサ及びメモリ370は、「入出力デー
タ・ポインタ」及び「入出力データ長さ」の生成を担当
する入出力プログラムだけでなく、転送を呼び出すため
に必要な命令も含んでいる。
タ・ポインタ」及び「入出力データ長さ」の生成を担当
する入出力プログラムだけでなく、転送を呼び出すため
に必要な命令も含んでいる。
アドレス生成機構350は、特定のバッファ830に対
するアドレスの生成を担当する。入出力プロセッサ32
0は、アドレス生成機構350のアドレス待ち行列36
0に、「セグメント開始アドレス」及び「セグメント長
さ」をロードし、その後、データ転送のためにアドレス
生成機構350及びホスト入出力装置を同時に呼び出す
。アドレス生成機構350とホスト・コンピュータ20
0の入出力装置とは、各データ転送ごとに同期させなけ
ればならない。アドレス待ち行列330は、アドレスの
多数のセグメントを記憶することができる先入れ先出し
くF I FO)式待ち行列である。
するアドレスの生成を担当する。入出力プロセッサ32
0は、アドレス生成機構350のアドレス待ち行列36
0に、「セグメント開始アドレス」及び「セグメント長
さ」をロードし、その後、データ転送のためにアドレス
生成機構350及びホスト入出力装置を同時に呼び出す
。アドレス生成機構350とホスト・コンピュータ20
0の入出力装置とは、各データ転送ごとに同期させなけ
ればならない。アドレス待ち行列330は、アドレスの
多数のセグメントを記憶することができる先入れ先出し
くF I FO)式待ち行列である。
ホスト・コンピュータ200のメモリ内の連続したデー
タ・ブロックについては、データを連続するバッフy3
30からなるM個のセグメントに分配する。この転送の
場合、入出力プロセッサ320は、M対の「セグメント
開始アドレスJ (SA)及び「セグメント長さ」
(L)を、アドレス生成機構350のアドレス待ち行列
360にロードする。「セグメント長さ」の合計は、ホ
スト入出力装置に書き込まれた「入出力データ長さ」に
等しい。M対の「セグメント開始アドレス」及び「セグ
メント長さ」を受け取ったのに応じて、アドレス生成機
構350は、次のアドレスを生成する。
タ・ブロックについては、データを連続するバッフy3
30からなるM個のセグメントに分配する。この転送の
場合、入出力プロセッサ320は、M対の「セグメント
開始アドレスJ (SA)及び「セグメント長さ」
(L)を、アドレス生成機構350のアドレス待ち行列
360にロードする。「セグメント長さ」の合計は、ホ
スト入出力装置に書き込まれた「入出力データ長さ」に
等しい。M対の「セグメント開始アドレス」及び「セグ
メント長さ」を受け取ったのに応じて、アドレス生成機
構350は、次のアドレスを生成する。
5A(1)、5A(1)◆1......5A(1)◆
L(1)−1,(USA(2) 、5A(2)◆1..
....5A(2)◆L(2)−1,(2)SA(M)
、SA (M)◆1...... SA(M)+L(
M)−1,(3)上記の転送手順がそのままうまく適用
できない状況または場面があり得る。すなわち、転送さ
れるデータ・ブロックが、所与のバッファの数より大き
な入出力データの長さを有する時、及びデータ・プロ、
りが、バッファ幅より大きなワード・サイズ、通常は3
2ビツトを有する時である。
L(1)−1,(USA(2) 、5A(2)◆1..
....5A(2)◆L(2)−1,(2)SA(M)
、SA (M)◆1...... SA(M)+L(
M)−1,(3)上記の転送手順がそのままうまく適用
できない状況または場面があり得る。すなわち、転送さ
れるデータ・ブロックが、所与のバッファの数より大き
な入出力データの長さを有する時、及びデータ・プロ、
りが、バッファ幅より大きなワード・サイズ、通常は3
2ビツトを有する時である。
「入出力データ長さ」が所与のバッファの数より大きい
データ・ブロックを転送するには、入出力プロセッサ3
20は、マイクロプロセッサ370によるプログラム実
行を呼び出し、マイクロプロセッサ370は、数ステッ
プでデータ・ブロック全体を転送する。このプログラム
は、各ステップで、データ転送の最大サイズがバッファ
330の数より小さいことを保証する。ワード・サイズ
がバッファ幅より大きなデータ・ブロックを転送するに
は、ホスト・コンピュータ200は、ワード・サイズが
32より大きくならないよろに、データを準備しなけれ
ばならない。
データ・ブロックを転送するには、入出力プロセッサ3
20は、マイクロプロセッサ370によるプログラム実
行を呼び出し、マイクロプロセッサ370は、数ステッ
プでデータ・ブロック全体を転送する。このプログラム
は、各ステップで、データ転送の最大サイズがバッファ
330の数より小さいことを保証する。ワード・サイズ
がバッファ幅より大きなデータ・ブロックを転送するに
は、ホスト・コンピュータ200は、ワード・サイズが
32より大きくならないよろに、データを準備しなけれ
ばならない。
データ転送で生じる第3の状況は、データ・ワードがバ
ッファ幅より小さい状況である。この場合、ワード・サ
イズがバッファ幅より小さいデータをホスト・コンピュ
ータ200のメモリ内で32ビツト・ワードにパックし
、1回の転送で複数のバッファに分配することができる
。たとえば、4バイトのデータを1つの32ビツト・ワ
ードにパックして、1回の転送で4つの連続バッファに
分配することができる。そのような転送の場合、入出力
プロセッサ320は、「セグメント開始アドレス」、「
セグメント長さ」及び「データ・タイプ」を、アドレス
生成機構350のアドレス待ち行列360にロードする
。この入力情報から、アドレス生成機構350は、AD
DRESS、BUFFER(アドレス・バッファ)信号
、及びADDRESS、DATATYPE (アドレス
・データタイプ)信号を生成し、それが信号バス330
によって一時記憶手段310に運ばれる。ADDRES
S、BUFFERは、特定のバッファ330の識別番号
を示す信号であり、ADDRESS、DATATYPE
は、特定のデータ・ワード内に何ビットあるかを示す2
ビツト情報コードである。ADDRESS、DATAT
YPEのコードは次のとおりである。OOは転送されて
いるデータが1ビツト・タイプであることを表し、01
は転送されているデータが8ビツト・タイプであること
を表し、10は転送されているデータが18ビツト・タ
イプであることを表し、11は転送されているデータが
32ビツトであることを表す。一時記憶手段310は、
ADDRESS、BUFFER及びADDRESS、D
ATATYPEを復号する。ADDRESS、DATA
TYPEを復号すると、複数のバッファがアドレスされ
、たとえば、1つの32ビツト・ワードにパックされた
4バイトのデータに関する転送では、ADDRESS、
BUFFERの最後の2ビツトは「ドント・ケア」とし
て取り扱われ、したがって4つのバッファが、データを
受け取るために復号される。同じ32ビツト・ワードは
、同じマシン・サイクルで4つのバッファに書き込まれ
る。マイクロプロセッサ370によって実行される入出
力プログラムは、その後、第2バイト、第3バイト、及
び第4バイトを適当な位置に回転する。他のデータ・タ
イプの場合の復号も同様にして実行され、入出力プロセ
スは、マイクロプロセッサ370内に含まれる入出力プ
ログラムの助けを借りて完了する。
ッファ幅より小さい状況である。この場合、ワード・サ
イズがバッファ幅より小さいデータをホスト・コンピュ
ータ200のメモリ内で32ビツト・ワードにパックし
、1回の転送で複数のバッファに分配することができる
。たとえば、4バイトのデータを1つの32ビツト・ワ
ードにパックして、1回の転送で4つの連続バッファに
分配することができる。そのような転送の場合、入出力
プロセッサ320は、「セグメント開始アドレス」、「
セグメント長さ」及び「データ・タイプ」を、アドレス
生成機構350のアドレス待ち行列360にロードする
。この入力情報から、アドレス生成機構350は、AD
DRESS、BUFFER(アドレス・バッファ)信号
、及びADDRESS、DATATYPE (アドレス
・データタイプ)信号を生成し、それが信号バス330
によって一時記憶手段310に運ばれる。ADDRES
S、BUFFERは、特定のバッファ330の識別番号
を示す信号であり、ADDRESS、DATATYPE
は、特定のデータ・ワード内に何ビットあるかを示す2
ビツト情報コードである。ADDRESS、DATAT
YPEのコードは次のとおりである。OOは転送されて
いるデータが1ビツト・タイプであることを表し、01
は転送されているデータが8ビツト・タイプであること
を表し、10は転送されているデータが18ビツト・タ
イプであることを表し、11は転送されているデータが
32ビツトであることを表す。一時記憶手段310は、
ADDRESS、BUFFER及びADDRESS、D
ATATYPEを復号する。ADDRESS、DATA
TYPEを復号すると、複数のバッファがアドレスされ
、たとえば、1つの32ビツト・ワードにパックされた
4バイトのデータに関する転送では、ADDRESS、
BUFFERの最後の2ビツトは「ドント・ケア」とし
て取り扱われ、したがって4つのバッファが、データを
受け取るために復号される。同じ32ビツト・ワードは
、同じマシン・サイクルで4つのバッファに書き込まれ
る。マイクロプロセッサ370によって実行される入出
力プログラムは、その後、第2バイト、第3バイト、及
び第4バイトを適当な位置に回転する。他のデータ・タ
イプの場合の復号も同様にして実行され、入出力プロセ
スは、マイクロプロセッサ370内に含まれる入出力プ
ログラムの助けを借りて完了する。
第5図を参照すると、一時記憶手段310の実施例の詳
細なブロック・ダイヤグラムが示されている。図では一
時記憶手段310は、複数のバッファ330及びその基
本的支援構成要素または回路、ならびに2つのコマンド
信号を供給するアドレス生成機構350及びSIMDメ
モリ140から構成されている。基本的構成要素とは、
アドレス・デコーダ311.MUXN−MUXlで表さ
れるN個のマルチプレクサから構成される多重化回路手
段314、DMUXN−DMUXlで表されるN個のデ
マルチプレクサから構成される多重化解除回路手段31
8、カウンタ回路316、及び比較機構回路317であ
る。各構成要素については、次段で記憶手段310の動
作の説明と同時に詳しく説明する。上記のように、アド
レス生成機構350は、ADDRESS、BUFFER
及びADDRESS、DATATYPEを一時記憶手段
310に出力する。これら2つの信号は、一時記憶手段
310に入り、アドレス・デコーダ311によって復号
される。アドレス・デコーダ311は、次式で与えられ
る複数のエネーブル信号を生成する。
細なブロック・ダイヤグラムが示されている。図では一
時記憶手段310は、複数のバッファ330及びその基
本的支援構成要素または回路、ならびに2つのコマンド
信号を供給するアドレス生成機構350及びSIMDメ
モリ140から構成されている。基本的構成要素とは、
アドレス・デコーダ311.MUXN−MUXlで表さ
れるN個のマルチプレクサから構成される多重化回路手
段314、DMUXN−DMUXlで表されるN個のデ
マルチプレクサから構成される多重化解除回路手段31
8、カウンタ回路316、及び比較機構回路317であ
る。各構成要素については、次段で記憶手段310の動
作の説明と同時に詳しく説明する。上記のように、アド
レス生成機構350は、ADDRESS、BUFFER
及びADDRESS、DATATYPEを一時記憶手段
310に出力する。これら2つの信号は、一時記憶手段
310に入り、アドレス・デコーダ311によって復号
される。アドレス・デコーダ311は、次式で与えられ
る複数のエネーブル信号を生成する。
EN (i、 j)、k (
4)上式で 1 ≦ i fafl (5)
1 :a j ≦ fl (6
)1 ≦ k!32 (7)l及
びjで定義されるマトリックス空間は、バッファの合計
数を表し、kは特定のバッファの全容量を表す。システ
ム内のバッファの合計数はNに等しく、シたがって、エ
ネーブル信号の合計数は32×Nである。式(4)で表
され、線312上を運ばれる各エネーブル信号は、関連
するバッファ位置330 (Bl、B2・・・BN)で
のロードを制御する。エネーブル信号が論理1、すなわ
ち高状態の時、関連するバッファ位置が、ロードまたは
記憶のためにエネーブルされ、そうでない場合はディス
エーブルされる。ADDRESS、DATATYPEが
11(32ビツト・データタイプ)の場合、32個のエ
ネーブル信号EN (s+ t)−rは高状態にある
。ただし、S及びtはそれぞれ次式で与えられる。
4)上式で 1 ≦ i fafl (5)
1 :a j ≦ fl (6
)1 ≦ k!32 (7)l及
びjで定義されるマトリックス空間は、バッファの合計
数を表し、kは特定のバッファの全容量を表す。システ
ム内のバッファの合計数はNに等しく、シたがって、エ
ネーブル信号の合計数は32×Nである。式(4)で表
され、線312上を運ばれる各エネーブル信号は、関連
するバッファ位置330 (Bl、B2・・・BN)で
のロードを制御する。エネーブル信号が論理1、すなわ
ち高状態の時、関連するバッファ位置が、ロードまたは
記憶のためにエネーブルされ、そうでない場合はディス
エーブルされる。ADDRESS、DATATYPEが
11(32ビツト・データタイプ)の場合、32個のエ
ネーブル信号EN (s+ t)−rは高状態にある
。ただし、S及びtはそれぞれ次式で与えられる。
s =ADDRESS、BUFFER/ N
(8)t =ADDRESS、BUFFER−
(N’s) (9)式(8)でNによる
除算は、除算の余りを切り捨てる整数除算であることに
留意されたい。
(8)t =ADDRESS、BUFFER−
(N’s) (9)式(8)でNによる
除算は、除算の余りを切り捨てる整数除算であることに
留意されたい。
ADDRESS、DATATYPEが10(16ビツト
・データタイプ)の場合、EN(s、tl)、 r 1
及びEN(s、t2)、r2は高状態にある。ただし、
s、tl、t2、rl、r2はそれぞれ次式で与えられ
る。
・データタイプ)の場合、EN(s、tl)、 r 1
及びEN(s、t2)、r2は高状態にある。ただし、
s、tl、t2、rl、r2はそれぞれ次式で与えられ
る。
s =ADDRESS、BOFFER/ J’T4
(10)tl =ADDRESS、BLI
FFER−(s”H)、 (11)t2 =
tl◆1 (12)rl
=r2 =1.2.、、、.16
(13)データタイプが01(たとえば、バイト・デー
タタイプ)の場合、4つのデータタイプがアドレスされ
たバッファから始まる4つの連続するバッファ位置に書
き込まれ、ピブト・データタイプ(すなわち、バッファ
・データタイプが00)では、32個の連続するバッフ
ァ位置が選択される(アドレス・バッファの下位5ビツ
トは無視する)。エネーブル信号の計算は、バイト・デ
ータタイプの信号の場合と同じである。
(10)tl =ADDRESS、BLI
FFER−(s”H)、 (11)t2 =
tl◆1 (12)rl
=r2 =1.2.、、、.16
(13)データタイプが01(たとえば、バイト・デー
タタイプ)の場合、4つのデータタイプがアドレスされ
たバッファから始まる4つの連続するバッファ位置に書
き込まれ、ピブト・データタイプ(すなわち、バッファ
・データタイプが00)では、32個の連続するバッフ
ァ位置が選択される(アドレス・バッファの下位5ビツ
トは無視する)。エネーブル信号の計算は、バイト・デ
ータタイプの信号の場合と同じである。
アドレス・デコーダ311は、入出力プロセッサ320
からADDRESS、BUFFER及びADDRESS
、DATATYPEを受け取り、複数のエネーブル信号
を生成する。この手順を使うて、ホスト・コンピュータ
200からバッファ330にデータをロードする。基本
的に、ホスト・コンピュータ100からのデータは、n
ビット・ワードとしてN個のアドレスで分配される。第
6図は、本発明の2次元マツピング・スキームを図示し
たものである。この図に示し、また上記で述べたように
、ホスト・コンピュータからのデータは、nビット・ワ
ードとしてN個のアドレスで複数のバッファに分配され
る。B1ないしBNで表した各バッファは、各nビット
・ワードの開始アドレスを表す。本発明のこの実施例で
は、nは、1ビツト、8ビツト、16ビツト、及び32
ビツトである。所与のデータのnビット・ワードのデー
タに対するすべてのエネーブル信号を生成することによ
って、ホスト・コンピュータ200からのデータの転送
は、1システム・クロック・サイクルで行なわれる。こ
のプロセスの次のステップは、データをバッファ330
からSIMDメモリ装置140に転送することであり、
これは、次のシステム・クロック・サイクルで行なわれ
る。
からADDRESS、BUFFER及びADDRESS
、DATATYPEを受け取り、複数のエネーブル信号
を生成する。この手順を使うて、ホスト・コンピュータ
200からバッファ330にデータをロードする。基本
的に、ホスト・コンピュータ100からのデータは、n
ビット・ワードとしてN個のアドレスで分配される。第
6図は、本発明の2次元マツピング・スキームを図示し
たものである。この図に示し、また上記で述べたように
、ホスト・コンピュータからのデータは、nビット・ワ
ードとしてN個のアドレスで複数のバッファに分配され
る。B1ないしBNで表した各バッファは、各nビット
・ワードの開始アドレスを表す。本発明のこの実施例で
は、nは、1ビツト、8ビツト、16ビツト、及び32
ビツトである。所与のデータのnビット・ワードのデー
タに対するすべてのエネーブル信号を生成することによ
って、ホスト・コンピュータ200からのデータの転送
は、1システム・クロック・サイクルで行なわれる。こ
のプロセスの次のステップは、データをバッファ330
からSIMDメモリ装置140に転送することであり、
これは、次のシステム・クロック・サイクルで行なわれ
る。
−からSIMDメモリへのデータの
再び第4図を参照すると、複数のSIMDメモリ140
が、一時記憶手段310とSIMD処理要素120の間
に接続されている。SIMDメモリ140は、バッファ
330とインタフェースし、アドレス生成機構350に
よって別々にアドレス可能なメモリ領域を含む。SIM
Dメモリは、幅Nビット、深さnビットのメモリとして
編成されている。ただし、Nはシステム内のプロセッサ
の合計数であり、Dは実施態様に応じて選択した値であ
る。SIMDメモリは、それぞれがNビットのメモリか
ら構成されるDブレーンと見なすことができる。特定の
プレーン内の各ビットは、ADDRESS、EXTME
M、BITとして表され、0.1.、、、、N−1の範
囲に及ぶ。
が、一時記憶手段310とSIMD処理要素120の間
に接続されている。SIMDメモリ140は、バッファ
330とインタフェースし、アドレス生成機構350に
よって別々にアドレス可能なメモリ領域を含む。SIM
Dメモリは、幅Nビット、深さnビットのメモリとして
編成されている。ただし、Nはシステム内のプロセッサ
の合計数であり、Dは実施態様に応じて選択した値であ
る。SIMDメモリは、それぞれがNビットのメモリか
ら構成されるDブレーンと見なすことができる。特定の
プレーン内の各ビットは、ADDRESS、EXTME
M、BITとして表され、0.1.、、、、N−1の範
囲に及ぶ。
この転送では、Nバッファ330は、それぞれがNビッ
トを含む32個のプレーンとして編成される。各バッフ
ァ・プレーンは、ADDRESS。
トを含む32個のプレーンとして編成される。各バッフ
ァ・プレーンは、ADDRESS。
BUFFER,PLANEによってアドレスされる。各
システム・クロッグ・サイクルごとに、ADDRESS
、BUFFERで指定される゛バッファのADDRES
S、BUFFER,PLANEで指定されるビットが、
ADDRESS、EXTMEMでt旨定されるSIMD
メモリのADDRESS、EXTMEM、BITで指定
されるビットに転送される。入出力プロセ、す320は
、バッファからSIMDメモリへのデータの入力を担当
する。
システム・クロッグ・サイクルごとに、ADDRESS
、BUFFERで指定される゛バッファのADDRES
S、BUFFER,PLANEで指定されるビットが、
ADDRESS、EXTMEMでt旨定されるSIMD
メモリのADDRESS、EXTMEM、BITで指定
されるビットに転送される。入出力プロセ、す320は
、バッファからSIMDメモリへのデータの入力を担当
する。
入出力プロセッサ320は、アドレス生成機構350に
、rsIMDメモリ開始アドレス」及びrSIMD長さ
」をロードし、その後、転送開始のためにアドレス生成
機構350を呼び出す。
、rsIMDメモリ開始アドレス」及びrSIMD長さ
」をロードし、その後、転送開始のためにアドレス生成
機構350を呼び出す。
次に第5図を参照して、転送のための厳密な機構につい
て説明する。マルチプレクサ/デマルチプレクサ手段3
14は、N個のバッフrの32個の位置のうちの1つを
選択するN個の32−1マルチプレクサ315を含む。
て説明する。マルチプレクサ/デマルチプレクサ手段3
14は、N個のバッフrの32個の位置のうちの1つを
選択するN個の32−1マルチプレクサ315を含む。
すべてのマルチプレクサ315は、全体として、複数の
SIMDメモリ140にNビットを供給する。マルチプ
レクサ315の選択制御は、1つの5ビツト・カウンタ
から構成されるカウンタ手段316によって行なわれる
。5ビツト・カウンタは、書き込みサイクルの完了時に
、入出力プロセッサ320によって0にリセットされる
。カウンタ316は、入出力プロセッサ320からAD
DRESS、DATATYPEを受け取り、ワードの長
さとしてADDRESS、DATATYPEを復号し、
その後、その長さを比較機構317に記憶する。各内部
クロック・サイクルごとに、カウンタ316の内容が比
較機構の内容と比較される。等しい時、カウンティング
を停止する5TOP信号が生成され、こうして、転送が
完了されたことを示す。
SIMDメモリ140にNビットを供給する。マルチプ
レクサ315の選択制御は、1つの5ビツト・カウンタ
から構成されるカウンタ手段316によって行なわれる
。5ビツト・カウンタは、書き込みサイクルの完了時に
、入出力プロセッサ320によって0にリセットされる
。カウンタ316は、入出力プロセッサ320からAD
DRESS、DATATYPEを受け取り、ワードの長
さとしてADDRESS、DATATYPEを復号し、
その後、その長さを比較機構317に記憶する。各内部
クロック・サイクルごとに、カウンタ316の内容が比
較機構の内容と比較される。等しい時、カウンティング
を停止する5TOP信号が生成され、こうして、転送が
完了されたことを示す。
第8図を再び参照すると、ホスト・コンピュータからの
nビット・ワードが、SIMDメモリ140へ転送でき
るように配列されている。各バッフy B 1−BNの
第1ビツトの位置は、まとめて335 (1)で表され
、各バッファの第2ビツトの位置は、まとめて335(
2)で表され、各バッファのn番目のビット位置はまと
めて335 (ii)で表されている。これらのグルー
プは、一時記憶手段330からSIMDメモリ140に
転送されるメモリのn個のプレーンを表す、この図は、
N個のバッファすべてのグループを表す。しかし、上記
のように、ホスト・コンピュータから一時記憶手段への
特定の転送に際して、データは、バッファのM個のセグ
メントに分配される。ただし、MはNに対応する必要は
ない。したがって、メモリのn個のプレーンを表す各グ
ループは、M個のデータ位置のみを含み、N個の位置は
含まない。
nビット・ワードが、SIMDメモリ140へ転送でき
るように配列されている。各バッフy B 1−BNの
第1ビツトの位置は、まとめて335 (1)で表され
、各バッファの第2ビツトの位置は、まとめて335(
2)で表され、各バッファのn番目のビット位置はまと
めて335 (ii)で表されている。これらのグルー
プは、一時記憶手段330からSIMDメモリ140に
転送されるメモリのn個のプレーンを表す、この図は、
N個のバッファすべてのグループを表す。しかし、上記
のように、ホスト・コンピュータから一時記憶手段への
特定の転送に際して、データは、バッファのM個のセグ
メントに分配される。ただし、MはNに対応する必要は
ない。したがって、メモリのn個のプレーンを表す各グ
ループは、M個のデータ位置のみを含み、N個の位置は
含まない。
これらのn個のプレーンは、n個のアドレスによってア
ドレスされ、各プレーンはNビットのデータを含む。
ドレスされ、各プレーンはNビットのデータを含む。
一二−9(Iυ土方
入出力システムの出力動作も2ステツプ・プロセスであ
り、SIMDメモリ140から一時記憶手段310への
データ転送と、一時記憶手段310からホスト・コンピ
ュータ200のメモリへの転送を行なう。
り、SIMDメモリ140から一時記憶手段310への
データ転送と、一時記憶手段310からホスト・コンピ
ュータ200のメモリへの転送を行なう。
SIMDメモリから一時記憶手段のバッファへのデータ
転送は、バッファからSIMDメモリヘのデータ入力の
逆の動作である。入力プロセスでは、nビット・ワード
が、複数のマルチプレクサによってN個のアドレスに書
き込まれる。出力プロセスでは、n個のアドレスによっ
てアドレス可能なNワードが、N個の1−32デマルチ
プレクサ319から構成されるデマルチプレクシング手
段318によって、バッファ330に転送される。
転送は、バッファからSIMDメモリヘのデータ入力の
逆の動作である。入力プロセスでは、nビット・ワード
が、複数のマルチプレクサによってN個のアドレスに書
き込まれる。出力プロセスでは、n個のアドレスによっ
てアドレス可能なNワードが、N個の1−32デマルチ
プレクサ319から構成されるデマルチプレクシング手
段318によって、バッファ330に転送される。
デマルチプレクサ319は、入力プロセスについて述べ
たのと全く同様にして、カウンタ316及び比較機+R
317によって制御される。
たのと全く同様にして、カウンタ316及び比較機+R
317によって制御される。
バッファからホスト・コンピュータのメモリへのデータ
転送は、ホストからバッファへの入力の逆の動作である
。入力プロセスでは、エネーブル信号がどのバッファに
書き込めるかを決定し、逆のプロセスでは、同じエネー
ブル信号がどのバッファから読み取れるかを決定する。
転送は、ホストからバッファへの入力の逆の動作である
。入力プロセスでは、エネーブル信号がどのバッファに
書き込めるかを決定し、逆のプロセスでは、同じエネー
ブル信号がどのバッファから読み取れるかを決定する。
このプロセスの制御は、入出力プロセッサの入出力プロ
グラムによる。
グラムによる。
第6図に戻ると、SIMDメモリ140内の335 (
1)−335(ii)で表されるn個のデータ・プレー
ンが、一時記憶手段330に転送できるように配列され
る。n個のプレーン335(1)−335(ii)は、
N個のアPL/Xによってアドレスされ、各プレーンが
一時記憶手段内での再配置のためにN個のアドレスを含
む。
1)−335(ii)で表されるn個のデータ・プレー
ンが、一時記憶手段330に転送できるように配列され
る。n個のプレーン335(1)−335(ii)は、
N個のアPL/Xによってアドレスされ、各プレーンが
一時記憶手段内での再配置のためにN個のアドレスを含
む。
本発明の基礎となる概念は、ホスト・コンピュータとS
IMDシステムの間のデータの迅速な双方向転送のため
の2ステツプ・マツピング・プロセスである。ホストか
らSIMDネットワークにデータを転送する際、ホスト
・メモリからのデータは、1システム・クロック・サイ
クルでM個の連続バッファにマツプまたは分配される。
IMDシステムの間のデータの迅速な双方向転送のため
の2ステツプ・マツピング・プロセスである。ホストか
らSIMDネットワークにデータを転送する際、ホスト
・メモリからのデータは、1システム・クロック・サイ
クルでM個の連続バッファにマツプまたは分配される。
その後、次のクロック・サイクルで、M個の連続バッフ
ァ内のデータが、SIMDメモリの32個のプレーンに
分配される。SIMDネットワークからホストにデータ
を転送する際には、SIMDメモリ内のデータが、1シ
ステム・クロック・サイクルでM個の連続バッファに分
配される。次のクロック・サイクルで、M個の連続バッ
ファ内のデータが、ホスト・コンピュータのメモリに転
送される。上記のように、このデータ操作により、Nプ
ロセッサSIMDシステムでデータ速度が、ff倍に増
加する。
ァ内のデータが、SIMDメモリの32個のプレーンに
分配される。SIMDネットワークからホストにデータ
を転送する際には、SIMDメモリ内のデータが、1シ
ステム・クロック・サイクルでM個の連続バッファに分
配される。次のクロック・サイクルで、M個の連続バッ
ファ内のデータが、ホスト・コンピュータのメモリに転
送される。上記のように、このデータ操作により、Nプ
ロセッサSIMDシステムでデータ速度が、ff倍に増
加する。
SIMDコンビコンピュータ々な構成で実行することが
できる。好ましい構成は、複数の回路板にN個のプロセ
ッサを分散し、いくつかのプロセッサの集合体を1つの
チップ内で実施するものである。システム内の各プロセ
ッサに、関連するメモリ、バッファ、及びマルチプレク
サ/デマルチプレクサの組合せが設けられている時、及
び、プロセッサの各集合体がアドレス・デコーダ、カウ
ンタ、及び比較機構を有する時、第6図のマツピング・
スキームは完全に実現される。上記の分散概念または分
散手法は、バッファとプロセッサ/メモリの間の配線が
1チツプ内のワイヤ内接続になることができるので、V
LSIを実施する際に利点がある。この分散手法は、大
規模並列ファイン・グレインドSIMDコンピュータを
実施する際の配線のボトルネックを軽減する。
できる。好ましい構成は、複数の回路板にN個のプロセ
ッサを分散し、いくつかのプロセッサの集合体を1つの
チップ内で実施するものである。システム内の各プロセ
ッサに、関連するメモリ、バッファ、及びマルチプレク
サ/デマルチプレクサの組合せが設けられている時、及
び、プロセッサの各集合体がアドレス・デコーダ、カウ
ンタ、及び比較機構を有する時、第6図のマツピング・
スキームは完全に実現される。上記の分散概念または分
散手法は、バッファとプロセッサ/メモリの間の配線が
1チツプ内のワイヤ内接続になることができるので、V
LSIを実施する際に利点がある。この分散手法は、大
規模並列ファイン・グレインドSIMDコンピュータを
実施する際の配線のボトルネックを軽減する。
E、効果
本発明によれば、SIMD用の入出力システムにおいて
、高い入力速度を維持しつつ、配線の複雑さを軽減す乞
ことが可能になる。
、高い入力速度を維持しつつ、配線の複雑さを軽減す乞
ことが可能になる。
第1図は、従来技術のSIMDコンピュータ・システム
のブロック・ダイヤグラムである。 第2図は、本発明の入出力システムの1つの表現を含む
SIMDコンピュータ・システムのブロック・ダイヤグ
ラムである。 第3図は、本発明の入出力システムの他の表現を含むS
IMDコンピュータ・システムのブロック・ダイヤグラ
ムである。 第4図は、本発明の入出力システムの他の表現を含むS
IMDコンピュータ・システムの詳細なブロック・ダイ
ヤグラムである。 第5図は、本発明の一時的記憶手段の詳細なブロック・
ダイヤグラムである。 第8図は、本発明の入出力システムによるデータ転送の
ためのマツピング・スキームを表す図である。
のブロック・ダイヤグラムである。 第2図は、本発明の入出力システムの1つの表現を含む
SIMDコンピュータ・システムのブロック・ダイヤグ
ラムである。 第3図は、本発明の入出力システムの他の表現を含むS
IMDコンピュータ・システムのブロック・ダイヤグラ
ムである。 第4図は、本発明の入出力システムの他の表現を含むS
IMDコンピュータ・システムの詳細なブロック・ダイ
ヤグラムである。 第5図は、本発明の一時的記憶手段の詳細なブロック・
ダイヤグラムである。 第8図は、本発明の入出力システムによるデータ転送の
ためのマツピング・スキームを表す図である。
Claims (48)
- (1)SIMDコンピュータが、それぞれ複数のSIM
Dメモリの1つに関連している複数の並列に連結したプ
ロセッサを含む並列アレイ・プロセッサを有しており、
ホスト・コンピュータと前記SIMDコンピュータの間
の2次元データ転送スキームを提供する大規模並列SI
MDコンピュータ用の入出力システムであって、 (a)前記ホスト・コンピュータと前記複数のSIMD
メモリの間に結合された、前記ホスト・コンピュータと
前記SIMDコンピュータの間の双方向2次元データ転
送のための一時記憶手段と、(b)前記ホスト・コンピ
ュータと前記一時記憶手段の間のデータの流れを制御し
、かつ前記一時記憶手段と前記複数のSIMDメモリの
間のデータの流れを制御するための入出力処理手段とを
含み、 前記一時記憶手段との間で転送されるデータが、所定の
2次元パターンで前記一時記憶手段に分配され、1クロ
ック・サイクルで転送に適したフォーマットに配列され
る、 入出力システム。 - (2)前記一時記憶手段が複数のバッファを含み、前記
複数のバッファがそれぞれ前記複数のSIMDメモリの
1つに関連している、請求項1に記載の入出力システム
。 - (3)前記一時記憶手段が、前記ホスト・コンピュータ
と前記一時記憶手段の間のデータ転送のため、及び前記
一時記憶手段と前記SIMDメモリの間のデータ転送の
ためのタイミング信号及び選択信号を供給する制御回路
手段を含むという、請求項2に記載の入出力システム。 - (4)SIMDコンピュータがそれぞれ複数のSIMD
メモリの1つに関連している、複数の並列に連結したプ
ロセッサを含む並列アレイ・プロセッサを有するという
、ホスト・コンピュータと前記SIMDコンピュータの
間の2次元データ転送スキームを提供する大規模並列S
IMDコンピュータ用の入出力システムであって、 (a)前記SIMDコンピュータと前記ホスト・コンピ
ュータの間のデータ転送のための入出力チャネルと、 (b)(i)それぞれ前記複数のSIMDメモリの1つ
と関連している複数のバッファと、 (ii)前記ホスト・コンピュータと前記一時記憶手段
の間のデータ転送のため、及び前記一時記憶手段と前記
SIMDメモリの間のデータ転送のためのタイミング信
号及び選択信号を供給する制御回路手段と を含む、前記ホスト・コンピュータと前記SIMDコン
ピュータの間の双方向2次元データ転送のために、前記
入出力チャネルと前記複数のSIMDメモリの間に接続
された一時記憶手段と、(c)前記ホスト・コンピュー
タと前記一時記憶手段の間のデータの流れを制御し、前
記一時記憶手段と前記複数のSIMDメモリの間のデー
タの流れを制御するための入出力処理手段とを含み、前
記一時記憶手段によって転送されるデータが、所定の2
次元パターンで前記複数のバッファに分配され、1クロ
ック・サイクルで転送に適したフォーマットに配列され
るという、 入出力システム。 - (5)前記入出力チャネルが、前記ホスト・コンピュー
タと前記入出力処理手段、前記ホスト・コンピュータと
前記一時記憶手段、及び前記ホスト・コンピュータとア
レイ制御装置を相互接続するnビット双方向データ・バ
スである、請求項4に記載の入出力システム。 - (6)前記複数のバッファがそれぞれ32ビット・バッ
ファである、請求項4に記載の入出力システム。 - (7)前記複数のバッファがそれぞれ、前記入出力処理
手段によって独立してアドレス可能である、請求項4に
記載の入出力システム。 - (8)Nを前記バッファの数とし、nをホスト・メモリ
内に記憶されたデータ・ワードの長さとして、前記一時
記憶手段が、N個のアドレスを有するnビット・ワード
としてアドレス可能であるという、請求項7に記載の入
出力システム。 - (9)Nを前記バッファの数とし、nをホスト・メモリ
内に記憶されたデータ・ワードの長さとして、前記一時
記憶手段が、n個のアドレスを有するN個のワードとし
てアドレス可能であるという、請求項4に記載の入出力
システム。 - (10)Nを前記バッファの数とし、nをホスト・メモ
リ内に記憶されたデータ・ワードの長さとして、前記一
時記憶手段が、n個のアドレスを有するN個のワードと
してアドレス可能であるという、請求項8に記載の入出
力システム。 - (11)Mをnビット・ワード中の合計データ長さとし
、Mを前記複数のバッファの合計数より少ないかまたは
等しいとして、前記一時記憶手段が、M個の連続するバ
ッファに分配されたnビット・ワードとしてアドレス可
能であるという、請求項4に記載の入出力システム。 - (12)前記制御回路手段が、前記複数のバッファのう
ちの所定数のものにデータを転送するために、複数のエ
ネーブル信号を生成するアドレス復号手段を含むという
、請求項4に記載の入出力システム。 - (13)前記制御回路手段がさらに、 所定数のバッファのn個の位置のうちのどの1から前記
複数のSIMDメモリにデータを転送するかを決定する
ためのマルチプレクサ手段と、所定数のバッファのn個
の位置のうちのどの1つに前記複数のSIMDメモリか
らデータを転送するかを決定するためのデマルチプレク
サ手段とを含むという、請求項12に記載の入出力シス
テム。 - (14)前記制御回路手段がさらに、 前記マルチプレクサ手段及び前記デマルチプレクサ手段
を制御するための制御信号を供給するカウンタ手段と、 前記カウンタ手段のトップ・カウントを決定するための
比較機構手段とを 含むという、請求項13に記載の入出力システム。 - (15)前記アドレス復号手段が、前記入出力処理手段
から受け取ったバッファ識別コードとデータ・タイプ・
コードから、前記複数のエネーブル信号を生成するとい
う、請求項12に記載の入出力システム。 - (16)前記マルチプレクサ手段がN個の32−1マル
チプレクサを含み、前記マルチプレクサがNビットのデ
ータを前記複数のSIMDメモリに供給するという、請
求項13に記載の入出力システム。 - (17)前記デマルチプレクサ手段がN個の1−32デ
マルチプレクサを含み、前記デマルチプレクサがNビッ
トのデータを前記複数のバッファに供給するという、請
求項16に記載の入出力システム。 - (18)前記カウンタ手段が1つの5ビット・カウンタ
を含み、前記カウンタが、前記マルチプレクサ及び前記
デマルチプレクサに対する選択制御を行なうという、請
求項14に記載の入出力システム。 - (19)前記カウンタが、前記入出力処理手段から前記
データ・タイプ・コードを受け取り、前記データ・タイ
プ・コードをワード長さとして復号し、さらにその長さ
を前記比較機構手段に記憶するという、請求項18に記
載の入出力システム。 - (20)前記比較機構手段が、前記カウンタのカウント
を前記ワード長さと比較し、一致したときは前記カウン
タに停止信号を与えるという、請求項14に記載の入出
力システム。 - (21)前記入出力処理手段が、 (a)前記複数のバッファのうちの特定のバッファのア
ドレスを生成し、前記複数のSIMDメモリのうちの特
定のメモリのアドレスを生成するためのアドレス生成機
構と、 (b)前記データの流れに対するすべての制御信号を生
成するためのマイクロ・プロセッサ及び関連メモリと を含むという、請求項4に記載の2次元入出力システム
。 - (22)前記アドレス生成機構が、後続のバッファ、ア
ドレスのストリングを供給するアドレス待ち行列を含む
という、請求項21に記載の入出力システム。 - (23)前記プロセッサ及び関連メモリが、前記複数の
制御信号を生成する入出力プログラムを含むという、請
求項22に記載の入出力システム。 - (24)前記入出力処理手段がさらに、データ長さが前
記複数のバッファの数より大きい時に、前記ホスト・コ
ンピュータから前記複数のバッファに転送されるデータ
の準備を担当するプログラムを含むという、請求項23
に記載の入出力システム。 - (25)(a)それぞれが複数のSIMDメモリのうち
の1つと関連している複数の並列に連結されたプロセッ
サを含む並列アレイ・プロセッサと、(b)前記複数の
並列に連結されたプロセッサを制御するためのアレイ制
御装置と、 (c)(i)前記ホスト・コンピュータと前記SIMD
コンピュータの間の双方向2次元データ転送のために、
前記ホスト・コンピュータと前記複数のSIMDメモリ
の間に結合された一時記憶手段と、 (ii)前記ホスト・コンピュータと前記一時記憶手段
の間のデータの流れを制御し、前記一時記憶手段と前記
複数のSIMDメモリ間のデータの流れを制御するため
の入出力処理手段と を含む、ホスト・コンピュータと演算処理要素の前記ア
レイの間の2次元データ転送スキームを提供する、単一
命令複数データ・プロセッサ用の入出力システムと を含む、単一命令複数データ・プロセッサ。 - (26)前記一時記憶手段が複数のバッファを含み、前
記複数のバッファがそれぞれ、前記複数のSIMDメモ
リの1つに関連するという、請求項25に記載の単一命
令複数データ・プロセッサ。 - (27)前記一時記憶手段が、前記ホスト・コンピュー
タと前記一時記憶手段の間のデータの転送、及び前記一
時記憶手段と前記SIMDメモリの間のデータ転送のた
めのタイミング信号及び選択信号を供給する制御回路手
段を含むという、請求項26に記載の単一命令複数デー
タ・プロセッサ。 - (28)(a)それぞれが複数のSIMDメモリの1つ
と関連している複数の並列に連結されたプロセッサを含
む並列アレイ・プロセッサと、 (b)前記複数の並列に連結されたプロセッサを制御す
るためのアレイ制御装置と、 (c)(i)前記SIMDコンピュータと前記ホスト・
コンピュータの間のデータ転送のための入出力チャネル
と、 (ii)1システム・クロック・サイクルで複数のバッ
ファに前記データを所定のパターンで配列し分配するこ
とにより、前記ホスト・コンピュータと前記SIMDコ
ンピュータの間の双方向2次元データ転送のために、前
記入出力チャネルと前記複数のSIMDメモリの間に接
続され、それぞれが前記複数のSIMDメモリに直接関
連している前記複数のバッファと、一時記憶前記ホスト
・コンピュータと前記一時記憶手段の間のデータの転送
、及び前記一時記憶手段と前記SIMDメモリの間のデ
ータの転送のためのタイミング信号及び選択信号を供給
するための制御手段とを含む一時記憶手段と、 (iii)前記ホスト・コンピュータと前記一時記憶手
段の間のデータの流れを制御し、前記一時記憶手段と前
記複数のSIMDメモリのデータの流れを制御するため
の入出力処理手段と を含む、ホスト・コンピュータと演算処理要素の前記ア
レイの間の2次元データ転送スキームを提供する単一命
令複数データ・プロセッサ用の入出力システムと を含む、単一命令複数データ・プロセッサ。 - (29)前記入出力チャネルが、前記ホスト・コンピュ
ータと前記入出力処理手段、前記ホスト・コンピュータ
と前記一時記憶手段、及び前記ホスト・コンピュータと
アレイ制御装置を相互接続するnビット双方向データ・
バスであるという、請求項28に記載の単一命令複数デ
ータ・プロセッサ。 - (30)前記複数のバッファがそれぞれ、前記入出力処
理手段によって独立にアドレス可能であるという、請求
項29に記載の単一命令複数データ・プロセッサ。 - (31)Nを前記複数のバッファの数とし、nをホスト
・メモリ内に記憶されたデータ・ワードの長さとして、
前記一時記憶手段が、N個のアドレスを有するnビット
・ワードとしてアドレス可能であるという、請求項30
に記載の単一命令複数データ・プロセッサ。 - (32)Nを前記バッファの数とし、nをホスト・メモ
リ内に記憶されたデータ・ワードの長さとして、前記一
時記憶手段が、n個のアドレスを有するN個のワードと
してアドレス可能であるという、請求項30に記載の単
一命令複数データ・プロセッサ。 - (33)Mをnビット・ワード中の合計データ長さとし
、Mを前記複数のバッファの合計数より少ないかまたは
等しいとして、前記一時記憶手段が、M個の連続するバ
ッファに分配されたnビット・ワードとしてアドレス可
能であるという、請求項32に記載の単一命令複数デー
タ・プロセッサ。 - (34)前記制御回路手段が、前記複数のバッファのう
ちの所定数のものにデータを転送するために、複数のエ
ネーブル信号を生成するアドレス復号手段を含むという
、請求項33に記載の単一命令複数データ・プロセッサ
。 - (35)前記制御回路手段がさらに、 (a)所定数のバッファのn個の位置のどの1つから前
記複数のSIMDメモリにデータを転送するかを決定す
るためのマルチプレクサ手段と、(b)所定数のバッフ
ァのn個の位置のどれに前記複数のSIMDメモリから
データを転送するかを決定するためのデマルチプレクサ
手段とを含むという、 請求項34に記載の単一命令複数データ・プロセッサ。 - (36)前記制御回路手段がさらに、 (a)前記マルチプレクサ手段及び前記デマルチプレク
サ手段を制御するための制御信号を供給するカウンタ手
段と、 (b)前記カウンタ手段のトップ・カウントを決定する
ための比較機構手段と を含むという、請求項35に記載の単一命令複数データ
・プロセッサ。 - (37)前記入出力処理手段が、 (a)前記複数のバッファのうちの特定のバッファのア
ドレスを生成し、前記複数のSIMDメモリのうちの特
定のメモリのアドレスを生成するためのアドレス生成機
構と、 (b)前記データの流れに対するすべての制御信号を生
成するためのマイクロプロセッサ及び関連メモリと を含むという、請求項28に記載の単一命令複数データ
・プロセッサ。 - (38)前記アドレス生成機構が、後続のバッファ・ア
ドレスのストリングを供給するアドレス待ち行列を含む
という、請求項37に記載の単一命令複数データ・プロ
セッサ。 - (39)前記プロセッサ及び関連メモリが、前記複数の
制御信号を生成する入出力プログラムを含むという、請
求項38に記載の単一命令複数データ・プロセッサ。 - (40)前記入出力処理手段がさらに、データ長さが前
記複数のバッファの数より大きい時、前記ホスト・コン
ピュータから前記複数のバッファに転送するデータの準
備を担当するプログラムを含むという、請求項39に記
載の単一命令複数データ・プロセッサ。 - (41)(a)データが2次元転送スキームを利用して
1システム・クロック・サイクルで転送されるように、
前記SIMDコンピュータの一時記憶手段とホスト・コ
ンピュータの間でデータを転送するステップと、 (b)データが前記2次元転送スキームを利用して前記
1システム・クロック・サイクルで転送されるように、
前記一時記憶手段と複数のSIMDメモリの間でデータ
を転送するステップと を含む、大規模並列SIMDコンピュータでデータの2
次元入出力を行なうための方法。 - (42)一時記憶手段とホスト・コンピュータの間でデ
ータを転送する前記ステップが、 (a)第1のシステム・クロック・サイクルで、前記ホ
スト・コンピュータからのデータを、前記一時記憶手段
を含む複数のバッファに分配するステップと、 (b)第2のシステム・クロック・サイクルで、前記一
時記憶手段からのデータを、ホスト・コンピュータの所
定の領域に分配するステップとを含む、請求項41に記
載の方法。 - (43)ホスト・コンピュータからのデータを分配する
前記ステップがさらに、 (a)前記複数のバッファのうちの所定数のものにデー
タを転送するために、複数のエネーブル信号を生成する
ステップと、 (b)Nを前記複数のバッファの数とし、nを前記複数
のバッファの個々のバッファの幅として、前記ホスト・
コンピュータからのデータを、N個のアドレスを有する
nビット・ワードとしてアドレス可能な前記複数のバッ
ファのうちの連続するバッファのM個のセグメントに転
送するステップと を含むという、請求項42に記載の方法。 - (44)一時記憶手段と複数のSIMDメモリの間でデ
ータを転送する前記ステップが、 (a)第1のシステム・クロック・サイクルで、前記一
時記憶手段からのデータを、前記複数のSIMDメモリ
を含む複数のプレーンに分配するステップと、 (b)第2のシステム・クロック・サイクルで、前記複
数のプレーンからのデータを、前記一時記憶手段を含む
複数のバッファに分配するステップと を含むという、請求項41に記載の方法。 - (45)前記一時記憶手段からのデータを分配する前記
ステップが、 (a)前記複数のバッファのn個の位置のどの1つを、
前記SIMDメモリに転送するかをマルチプレクサによ
って決定するステップと、 (b)Nを前記複数のバッファの数とし、nを前記複数
のバッファの個々のバッファの幅として、前記一時記憶
手段から、n個のアドレスを有するNビット・ワードと
してアドレス可能な前記複数のプレーンにデータを転送
するステップと を含むという、請求項44に記載の方法。 - (46)n個の位置を決定する前記ステップが、前記マ
ルチプレクサを制御するための1組の制御信号を生成す
るステップを含むという、請求項45に記載の方法。 - (47)前記複数のプレーンからのデータを分配する前
記ステップがさらに、 (a)前記複数のプレーンから前記複数のバッファのn
個の位置のどの1つにデータを転送するかをデマルチプ
レクサによって決定するステップと、(b)Nを前記複
数のバッファの数とし、nを前記複数のバッファの個々
のバッファの幅として、前記複数のプレーンから、N個
のアドレスを有するnビット・ワードとしてアドレス可
能な前記複数のバッファのうちの連続するバッファのM
個のセグメントにデータを転送するステップと を含むという、請求項44に記載の方法。 - (48)n個の位置を決定する前記ステップが、前記マ
ルチプレクサを制御するための1組の制御信号を生成す
るステップを含むという、請求項47に記載の方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US42614089A | 1989-10-24 | 1989-10-24 | |
US426140 | 1999-10-22 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH03144783A true JPH03144783A (ja) | 1991-06-20 |
Family
ID=23689475
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2263254A Pending JPH03144783A (ja) | 1989-10-24 | 1990-10-02 | 入出力システム |
Country Status (3)
Country | Link |
---|---|
US (1) | US5410727A (ja) |
EP (1) | EP0424618A3 (ja) |
JP (1) | JPH03144783A (ja) |
Families Citing this family (89)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE69031865T2 (de) * | 1990-02-28 | 1998-08-06 | Texas Instruments Inc | Ein SIMD-Prozessor als digitales Filter |
WO1993011503A1 (en) * | 1991-12-06 | 1993-06-10 | Norman Richard S | Massively-parallel direct output processor array |
US5872988A (en) * | 1992-06-17 | 1999-02-16 | U.S. Philips Corporation | Parallel data processing device having a concatenated data path between elementary processors |
US5623669A (en) * | 1993-07-21 | 1997-04-22 | International Business Machines Corporation | High speed online copy of partitioned data |
CA2129882A1 (en) * | 1993-08-12 | 1995-02-13 | Soheil Shams | Dynamically reconfigurable interprocessor communication network for simd multiprocessors and apparatus implementing same |
JP3626784B2 (ja) * | 1995-03-17 | 2005-03-09 | 富士通株式会社 | 分散メモリ型並列計算機におけるデータ更新方法およびプログラム変換装置 |
US5903771A (en) * | 1996-01-16 | 1999-05-11 | Alacron, Inc. | Scalable multi-processor architecture for SIMD and MIMD operations |
EP3073388A1 (en) | 1998-03-18 | 2016-09-28 | Koninklijke Philips N.V. | Data processing device and method of computing the cosine transform of a matrix |
US7966475B2 (en) | 1999-04-09 | 2011-06-21 | Rambus Inc. | Parallel data processing apparatus |
US8174530B2 (en) * | 1999-04-09 | 2012-05-08 | Rambus Inc. | Parallel date processing apparatus |
US8171263B2 (en) * | 1999-04-09 | 2012-05-01 | Rambus Inc. | Data processing apparatus comprising an array controller for separating an instruction stream processing instructions and data transfer instructions |
US20070242074A1 (en) * | 1999-04-09 | 2007-10-18 | Dave Stuttard | Parallel data processing apparatus |
JP5285828B2 (ja) | 1999-04-09 | 2013-09-11 | ラムバス・インコーポレーテッド | 並列データ処理装置 |
US7802079B2 (en) * | 1999-04-09 | 2010-09-21 | Clearspeed Technology Limited | Parallel data processing apparatus |
US8762691B2 (en) | 1999-04-09 | 2014-06-24 | Rambus Inc. | Memory access consolidation for SIMD processing elements using transaction identifiers |
US7526630B2 (en) * | 1999-04-09 | 2009-04-28 | Clearspeed Technology, Plc | Parallel data processing apparatus |
US20080008393A1 (en) * | 1999-04-09 | 2008-01-10 | Dave Stuttard | Parallel data processing apparatus |
US20080162875A1 (en) * | 1999-04-09 | 2008-07-03 | Dave Stuttard | Parallel Data Processing Apparatus |
US20080162874A1 (en) * | 1999-04-09 | 2008-07-03 | Dave Stuttard | Parallel data processing apparatus |
US8169440B2 (en) | 1999-04-09 | 2012-05-01 | Rambus Inc. | Parallel data processing apparatus |
GB2362552B (en) * | 1999-06-28 | 2003-12-10 | Clearspeed Technology Ltd | Processing graphical data |
US6529945B1 (en) | 1999-07-26 | 2003-03-04 | International Business Machines Corporation | Data buffer management between two different systems |
US6728863B1 (en) | 1999-10-26 | 2004-04-27 | Assabet Ventures | Wide connections for transferring data between PE's of an N-dimensional mesh-connected SIMD array while transferring operands from memory |
US6487651B1 (en) | 1999-10-26 | 2002-11-26 | Assabet Ventures | MIMD arrangement of SIMD machines |
US6807620B1 (en) * | 2000-02-11 | 2004-10-19 | Sony Computer Entertainment Inc. | Game system with graphics processor |
CA2303604A1 (en) * | 2000-03-31 | 2001-09-30 | Catena Technologies Canada, Inc. | Flexible buffering scheme for multi-rate simd processor |
GB2370380B (en) | 2000-12-19 | 2003-12-31 | Picochip Designs Ltd | Processor architecture |
US7516334B2 (en) | 2001-03-22 | 2009-04-07 | Sony Computer Entertainment Inc. | Power management for processing modules |
US6526491B2 (en) * | 2001-03-22 | 2003-02-25 | Sony Corporation Entertainment Inc. | Memory protection system and method for computer architecture for broadband networks |
US7231500B2 (en) | 2001-03-22 | 2007-06-12 | Sony Computer Entertainment Inc. | External data interface in a computer architecture for broadband networks |
US7093104B2 (en) * | 2001-03-22 | 2006-08-15 | Sony Computer Entertainment Inc. | Processing modules for computer architecture for broadband networks |
US7233998B2 (en) * | 2001-03-22 | 2007-06-19 | Sony Computer Entertainment Inc. | Computer architecture and software cells for broadband networks |
US6910084B2 (en) * | 2001-04-30 | 2005-06-21 | Medtronic, Inc | Method and system for transferring and storing data in a medical device with limited storage and memory |
JP3921367B2 (ja) * | 2001-09-26 | 2007-05-30 | 日本電気株式会社 | データ処理装置および方法、コンピュータプログラム、情報記憶媒体、並列演算装置、データ処理システム |
US6901421B2 (en) | 2002-03-25 | 2005-05-31 | The Boeing Company | System, method and computer program product for signal processing of array data |
GB2396446B (en) * | 2002-12-20 | 2005-11-16 | Picochip Designs Ltd | Array synchronization |
GB0405283D0 (en) * | 2004-03-09 | 2004-04-21 | Aspex Technology Ltd | Multi-port memory for flexible and space efficient corner turning networks in associative processors |
US8224639B2 (en) | 2004-03-29 | 2012-07-17 | Sony Computer Entertainment Inc. | Methods and apparatus for achieving thermal management using processing task scheduling |
US7502873B2 (en) * | 2006-10-10 | 2009-03-10 | International Business Machines Corporation | Facilitating access to status and measurement data associated with input/output processing |
US7500023B2 (en) * | 2006-10-10 | 2009-03-03 | International Business Machines Corporation | Facilitating input/output processing by using transport control words to reduce input/output communications |
JP4801605B2 (ja) * | 2007-02-28 | 2011-10-26 | 株式会社リコー | Simd型マイクロプロセッサ |
GB2454865B (en) * | 2007-11-05 | 2012-06-13 | Picochip Designs Ltd | Power control |
US9052837B2 (en) | 2008-02-14 | 2015-06-09 | International Business Machines Corporation | Processing communication data in a ships passing condition |
US7937507B2 (en) * | 2008-02-14 | 2011-05-03 | International Business Machines Corporation | Extended measurement word determination at a channel subsystem of an I/O processing system |
US8082481B2 (en) * | 2008-02-14 | 2011-12-20 | International Business Machines Corporation | Multiple CRC insertion in an output data stream |
US8117347B2 (en) * | 2008-02-14 | 2012-02-14 | International Business Machines Corporation | Providing indirect data addressing for a control block at a channel subsystem of an I/O processing system |
US7908403B2 (en) * | 2008-02-14 | 2011-03-15 | International Business Machines Corporation | Reserved device access contention reduction |
US8095847B2 (en) * | 2008-02-14 | 2012-01-10 | International Business Machines Corporation | Exception condition handling at a channel subsystem in an I/O processing system |
US8478915B2 (en) | 2008-02-14 | 2013-07-02 | International Business Machines Corporation | Determining extended capability of a channel path |
US7840718B2 (en) * | 2008-02-14 | 2010-11-23 | International Business Machines Corporation | Processing of data to suspend operations in an input/output processing log-out system |
US7917813B2 (en) * | 2008-02-14 | 2011-03-29 | International Business Machines Corporation | Exception condition determination at a control unit in an I/O processing system |
US8176222B2 (en) * | 2008-02-14 | 2012-05-08 | International Business Machines Corporation | Early termination of an I/O operation in an I/O processing system |
US7904605B2 (en) * | 2008-02-14 | 2011-03-08 | International Business Machines Corporation | Computer command and response for determining the state of an I/O operation |
US8196149B2 (en) * | 2008-02-14 | 2012-06-05 | International Business Machines Corporation | Processing of data to determine compatability in an input/output processing system |
US8214562B2 (en) * | 2008-02-14 | 2012-07-03 | International Business Machines Corporation | Processing of data to perform system changes in an input/output processing system |
US7890668B2 (en) | 2008-02-14 | 2011-02-15 | International Business Machines Corporation | Providing indirect data addressing in an input/output processing system where the indirect data address list is non-contiguous |
US8001298B2 (en) * | 2008-02-14 | 2011-08-16 | International Business Machines Corporation | Providing extended measurement data in an I/O processing system |
US8108570B2 (en) * | 2008-02-14 | 2012-01-31 | International Business Machines Corporation | Determining the state of an I/O operation |
US7941570B2 (en) | 2008-02-14 | 2011-05-10 | International Business Machines Corporation | Bi-directional data transfer within a single I/O operation |
US8312189B2 (en) * | 2008-02-14 | 2012-11-13 | International Business Machines Corporation | Processing of data to monitor input/output operations |
US7899944B2 (en) * | 2008-02-14 | 2011-03-01 | International Business Machines Corporation | Open exchange limiting in an I/O processing system |
US8166206B2 (en) * | 2008-02-14 | 2012-04-24 | International Business Machines Corporation | Cancel instruction and command for determining the state of an I/O operation |
US7840717B2 (en) * | 2008-02-14 | 2010-11-23 | International Business Machines Corporation | Processing a variable length device command word at a control unit in an I/O processing system |
US7937504B2 (en) * | 2008-07-31 | 2011-05-03 | International Business Machines Corporation | Transport control channel program message pairing |
US7904606B2 (en) * | 2008-07-31 | 2011-03-08 | International Business Machines Corporation | Transport control channel program chain linked branching |
US8055807B2 (en) * | 2008-07-31 | 2011-11-08 | International Business Machines Corporation | Transport control channel program chain linking including determining sequence order |
GB2466661B (en) * | 2009-01-05 | 2014-11-26 | Intel Corp | Rake receiver |
GB2470037B (en) | 2009-05-07 | 2013-07-10 | Picochip Designs Ltd | Methods and devices for reducing interference in an uplink |
GB2470771B (en) | 2009-06-05 | 2012-07-18 | Picochip Designs Ltd | A method and device in a communication network |
GB2470891B (en) | 2009-06-05 | 2013-11-27 | Picochip Designs Ltd | A method and device in a communication network |
GB2474071B (en) | 2009-10-05 | 2013-08-07 | Picochip Designs Ltd | Femtocell base station |
US8332542B2 (en) | 2009-11-12 | 2012-12-11 | International Business Machines Corporation | Communication with input/output system devices |
GB2482869B (en) | 2010-08-16 | 2013-11-06 | Picochip Designs Ltd | Femtocell access control |
GB2489716B (en) | 2011-04-05 | 2015-06-24 | Intel Corp | Multimode base system |
GB2489919B (en) | 2011-04-05 | 2018-02-14 | Intel Corp | Filter |
GB2491098B (en) | 2011-05-16 | 2015-05-20 | Intel Corp | Accessing a base station |
US8583988B2 (en) | 2011-06-01 | 2013-11-12 | International Business Machines Corporation | Fibre channel input/output data routing system and method |
US8364853B2 (en) | 2011-06-01 | 2013-01-29 | International Business Machines Corporation | Fibre channel input/output data routing system and method |
US8677027B2 (en) | 2011-06-01 | 2014-03-18 | International Business Machines Corporation | Fibre channel input/output data routing system and method |
US9021155B2 (en) | 2011-06-01 | 2015-04-28 | International Business Machines Corporation | Fibre channel input/output data routing including discarding of data transfer requests in response to error detection |
US8738811B2 (en) | 2011-06-01 | 2014-05-27 | International Business Machines Corporation | Fibre channel input/output data routing system and method |
US8364854B2 (en) | 2011-06-01 | 2013-01-29 | International Business Machines Corporation | Fibre channel input/output data routing system and method |
US8346978B1 (en) | 2011-06-30 | 2013-01-01 | International Business Machines Corporation | Facilitating transport mode input/output operations between a channel subsystem and input/output devices |
US8549185B2 (en) | 2011-06-30 | 2013-10-01 | International Business Machines Corporation | Facilitating transport mode input/output operations between a channel subsystem and input/output devices |
US8312176B1 (en) | 2011-06-30 | 2012-11-13 | International Business Machines Corporation | Facilitating transport mode input/output operations between a channel subsystem and input/output devices |
US8473641B2 (en) | 2011-06-30 | 2013-06-25 | International Business Machines Corporation | Facilitating transport mode input/output operations between a channel subsystem and input/output devices |
US8918542B2 (en) | 2013-03-15 | 2014-12-23 | International Business Machines Corporation | Facilitating transport mode data transfer between a channel subsystem and input/output devices |
US8990439B2 (en) | 2013-05-29 | 2015-03-24 | International Business Machines Corporation | Transport mode data transfer between a channel subsystem and input/output devices |
BR102016008802B1 (pt) * | 2016-04-20 | 2022-10-11 | Manoel Henrique Da Silva | Aperfeiçoamentos introduzidos em medidor de umidade portátil para uso remoto |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3287703A (en) * | 1962-12-04 | 1966-11-22 | Westinghouse Electric Corp | Computer |
US3936806A (en) * | 1972-07-12 | 1976-02-03 | Goodyear Aerospace Corporation | Solid state associative processor organization |
ZA742069B (en) * | 1973-04-13 | 1975-03-26 | Int Computers Ltd | Improvements in or relating to array processors |
US4065808A (en) * | 1975-01-25 | 1977-12-27 | U.S. Philips Corporation | Network computer system |
US4101960A (en) * | 1977-03-29 | 1978-07-18 | Burroughs Corporation | Scientific processor |
US4484262A (en) * | 1979-01-09 | 1984-11-20 | Sullivan Herbert W | Shared memory computer method and apparatus |
US4707781A (en) * | 1979-01-09 | 1987-11-17 | Chopp Computer Corp. | Shared memory computer method and apparatus |
US4380046A (en) * | 1979-05-21 | 1983-04-12 | Nasa | Massively parallel processor computer |
US4481580A (en) * | 1979-11-19 | 1984-11-06 | Sperry Corporation | Distributed data transfer control for parallel processor architectures |
JPS56164464A (en) * | 1980-05-21 | 1981-12-17 | Tatsuo Nogi | Parallel processing computer |
US4546433A (en) * | 1981-07-04 | 1985-10-08 | Gec Avionics Limited | Arrangement for processing data in a two-dimensional array |
US4523273A (en) * | 1982-12-23 | 1985-06-11 | Purdue Research Foundation | Extra stage cube |
JPH0778825B2 (ja) * | 1983-02-09 | 1995-08-23 | 株式会社日立製作所 | 画像処理プロセツサ |
US4727474A (en) * | 1983-02-18 | 1988-02-23 | Loral Corporation | Staging memory for massively parallel processor |
US4709327A (en) * | 1983-05-31 | 1987-11-24 | Hillis W Daniel | Parallel processor/memory circuit |
US4601055A (en) * | 1984-04-10 | 1986-07-15 | The United States Of America As Represented By The Secretary Of Commerce | Image processor |
GB2160685B (en) * | 1984-06-02 | 1987-09-03 | Int Computers Ltd | Data reorganisation apparatus |
US4901224A (en) * | 1985-02-25 | 1990-02-13 | Ewert Alfred P | Parallel digital processor |
US4972314A (en) * | 1985-05-20 | 1990-11-20 | Hughes Aircraft Company | Data flow signal processor method and apparatus |
US4773038A (en) * | 1986-02-24 | 1988-09-20 | Thinking Machines Corporation | Method of simulating additional processors in a SIMD parallel processor array |
US4783738A (en) * | 1986-03-13 | 1988-11-08 | International Business Machines Corporation | Adaptive instruction processing by array processor having processor identification and data dependent status registers in each processing element |
US5081575A (en) * | 1987-11-06 | 1992-01-14 | Oryx Corporation | Highly parallel computer architecture employing crossbar switch with selectable pipeline delay |
US5148547A (en) * | 1988-04-08 | 1992-09-15 | Thinking Machines Corporation | Method and apparatus for interfacing bit-serial parallel processors to a coprocessor |
US5136717A (en) * | 1988-11-23 | 1992-08-04 | Flavors Technology Inc. | Realtime systolic, multiple-instruction, single-data parallel computer system |
-
1990
- 1990-08-10 EP EP19900115338 patent/EP0424618A3/en not_active Withdrawn
- 1990-10-02 JP JP2263254A patent/JPH03144783A/ja active Pending
-
1993
- 1993-11-22 US US08/157,232 patent/US5410727A/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
EP0424618A2 (en) | 1991-05-02 |
US5410727A (en) | 1995-04-25 |
EP0424618A3 (en) | 1992-11-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH03144783A (ja) | 入出力システム | |
US5581773A (en) | Massively parallel SIMD processor which selectively transfers individual contiguously disposed serial memory elements | |
EP0428327A1 (en) | Processor array system | |
US5887183A (en) | Method and system in a data processing system for loading and storing vectors in a plurality of modes | |
CN114391135A (zh) | 用于对连续分配数据执行存储器内处理操作的方法及相关存储器装置和系统 | |
US3787673A (en) | Pipelined high speed arithmetic unit | |
US7584343B2 (en) | Data reordering processor and method for use in an active memory device | |
JPS618785A (ja) | 記憶装置アクセス制御方式 | |
US6948045B2 (en) | Providing a register file memory with local addressing in a SIMD parallel processor | |
WO1994003860A1 (en) | Massively parallel computer including auxiliary vector processor | |
JP2002539519A (ja) | Vliwプロセッサにおけるレジスタ・アドレッシングの間接制御を提供するためのレジスタファイル索引付け方法及び装置 | |
US4841435A (en) | Data alignment system for random and block transfers of embedded subarrays of an array onto a system bus | |
US3299261A (en) | Multiple-input memory accessing apparatus | |
JPH0622034B2 (ja) | マルチポートベクトルレジスタファイル | |
US3745532A (en) | Modular digital processing equipment | |
JPH0916397A (ja) | 複数のコンピュータ・ワードにパックされている複数のサブ・ワード・アイテムの選択混合システム | |
JP2947664B2 (ja) | 画像専用半導体記憶装置 | |
EP1314099B1 (en) | Method and apparatus for connecting a massively parallel processor array to a memory array in a bit serial manner | |
US7284113B2 (en) | Synchronous periodical orthogonal data converter | |
JP2003196246A (ja) | データ処理システム、アレイ型プロセッサ、データ処理装置、コンピュータプログラム、情報記憶媒体 | |
JP2010244096A (ja) | データ処理装置、印刷システムおよびプログラム | |
JPH0740242B2 (ja) | データ転送方法 | |
EP0136218A2 (en) | Multiple port pipelined processor | |
KR100334298B1 (ko) | 기억 소자 | |
GB2399901A (en) | Method for using a reduced width instruction set in an active memory device |