JP2647327B2 - 大規模並列コンピューティング・システム装置 - Google Patents

大規模並列コンピューティング・システム装置

Info

Publication number
JP2647327B2
JP2647327B2 JP5050603A JP5060393A JP2647327B2 JP 2647327 B2 JP2647327 B2 JP 2647327B2 JP 5050603 A JP5050603 A JP 5050603A JP 5060393 A JP5060393 A JP 5060393A JP 2647327 B2 JP2647327 B2 JP 2647327B2
Authority
JP
Japan
Prior art keywords
data
ports
coupled
command
register
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 - Lifetime
Application number
JP5050603A
Other languages
English (en)
Other versions
JPH0675986A (ja
Inventor
ジェラルド・ジョージ・ペチャネック
スタマティス・ヴァッシリアディス
ホセ・グァダループ・デルガード−フリアス
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH0675986A publication Critical patent/JPH0675986A/ja
Application granted granted Critical
Publication of JP2647327B2 publication Critical patent/JP2647327B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/80Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
    • G06F15/8007Architectures 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/8023Two dimensional arrays, e.g. mesh, torus

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
  • Complex Calculations (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はコンピュータ、詳細にい
えば、大規模並列アレイ・プロセッサに関する。
【0002】
【従来の技術】まず、本明細書で用いられる用語につい
て説明する。
【0003】・ALU ALUとはプロセッサの論理演算機構部分をいう。
【0004】・アレイ アレイとは1つまたは複数の次元での要素の配列をい
う。アレイ・プロセッサはアレイで処理を行うように、
多くの機能単位ないしPEが配列され、相互に接続され
ているコンピュータである。大規模並列機械はアレイ処
理要素ないしアレイ要素によるデータ・アレイの並列処
理のためにアレイ・プロセッサを使用する。アレイはFO
RTRANなどの言語では単一の名前によって識別されるデ
ータ項目(アレイ要素)の順序づけられたセットを含む
ことができるが、他の言語では、データ項目の順序づけ
られたセットのこのような名前は、データ要素の順序づ
けられた集合ないしセットを指すものであり、これらは
すべて同一の属性を有している。プログラム・アレイは
数値または次元属性によって一般に指定された次元を有
している。アレイの宣言子も何らかの言語のアレイの各
次元のサイズを指定することができる。言語によって
は、アレイはテーブル内の要素の配列となる。ハードウ
ェアの面でいえば、アレイは大規模な並列アーキテクチ
ャではほぼ同一のものである構造(機能エレメント)の
集合である。データ並列コンピューティングにおけるア
レイ要素は、演算を割り当てることができ、並列が独立
しており、並列である場合に、必要な演算を実行するこ
とができる要素である。一般に、アレイは処理要素のグ
リッドと考えることができる。アレイのセクションには
セクション・データを割り当てることができるので、セ
クション・データを規則グリッド・パターンで移動する
ことができる。ただし、データには索引を付けること
も、あるいはアレイ内の任意の位置を割り当てることも
できる。
【0005】・機能単位 機能単位はある目的を達成できるハードウェア、ソフト
ウェアまたはこれら両方のエンティティーである。
【0006】・MIMD アレイ内の各プロセッサがそれ自体の命令ストリームを
有しているプロセッサ・アレイ・アーキテクチャであ
り、したがって、複数命令ストリームが処理要素当たり
1つが配置されている複数データ・ストリームを処理で
きる。
【0007】・モジュール モジュールは離散しており、識別可能なプログラム単
位、または他のコンポーネントとともに使用するように
設計されたハードウェアの機能単位である。
【0008】・PE PEは処理要素に使用される語である。PEという用語
は、割り振られたメモリ、及び本発明の並列アレイ処理
要素の1つを形成する入出力可能システム要素ないし単
位を相互接続した単一のプロセッサを指すのに使用され
る。書込みの結果として、本システムにおいては、対称
的な再製可能な要素が相互接続パスを共用するために互
いに接続される。
【0009】・SIMD アレイ内のすべてのプロセッサが単一命令ストリームか
らのコマンドを受け、処理要素当たり1つが配置されて
いる複数データ・ストリームを実行するプロセッサ・ア
レイ・アーキテクチャである。
【0010】次に、本発明の背景について述べる。視覚
情報の処理は、3種類の処理ドメイン、すなわちイメー
ジ処理、パターン認識、及びコンピュータ・グラフィッ
クスからなるものと考えることができる。イメージ処
理、パターン認識及びコンピュータ・グラフィックスを
組み合わせることをイメージ・コンピューティングと呼
び、将来のマルチメディア・ワークステーションが必要
とする機能を表す。「マルチメディアとは、イメージ、
グラフィックス、ビデオ、オーディオ、及びテキストな
どによる2つ以上の方法で情報を表示し、情報の包含性
を強化し、人間とコンピュータの対話を改善する技法を
いう。」
【0011】より高速なコンピュータを絶えることなく
求める過程で、エンジニアたちは何百もの、場合によっ
ては数千もの低価格のマイクロプロセッサを並列につな
ぎ合わせ、今日の機械の悩みの種となっている複雑な問
題を解決するため分離するスーパコンピュータを作成し
ている。このような機械を大規模並列機械と呼ぶ。並列
に作動する多重コンピュータは何10年もの間存在して
きた。初期の並列機械としては、1960年代に始まっ
たILLIACが挙げられる。他の多重プロセッサとし
ては(米国特許第4975834号明細書抄録参照)、
シーダ、シグマ−1、バタフライ及びモナーク、インテ
ルipsc、コネクション・マシーン、カルテックCO
SMIC、Nキューブ、IBMのRP3、IBMのGF
11、NYUウルトラ・コンピュータ、インテル・デル
タ及びタッチストーンが挙げられる。
【0012】ILLIACから始まった大規模多重プロ
セッサはスーパコンピュータと考えられる。市場で大成
功を収めたスーパコンピュータはクレイ・リサーチY−
MPシステム、IBM3090、ならびにアムダール、
日立、富士通及びNECを始めとする他の製造業者の機
械に代表される多重ベクトル・プロセッサに基づくもの
である。
【0013】大規模並列プロセッサ(MPP)は今では
スーパコンピュータになれるものと考えられている。こ
れらのコンピュータ・システムは多数のマイクロプロセ
ッサを、相互接続ネットワーク及びこれらのプロセッサ
を並列に作動させるプログラムによって集積したもので
ある。これらのコンピュータには2つの作動モードがあ
る。これらの機械のあるものはMIMDモード機械であ
り、あるものはSIMDモード機械である。これらの機
械の内市場でもっとも成功を収めたものはおそらく、シ
ンキング・マシーンズ・インクのコネクション・マシー
ン・シリーズ1及び2である。これらは本質的にSIM
D機械である。大規模並列機械の多くは並列に接続され
たマイクロプロセッサを使用して、これらの並行性ない
し並列作動能力を得ている。i860などのインテルの
マイクロプロセッサがインテルその他によって使用され
ている。Nキューブはインテル^386マイクロプロセ
ッサを使用してこのような機械を作っている。その他の
機械は「トランスピュータ」チップと呼ばれるものを使
用して構築されている。インモス・トランスピュータI
MS T800はその一例である。インモス・トランス
ピュータT800は内蔵高速浮動小数点プロセッサを有
する32ビット・デバイスである。
【0014】構築されているこの種のシステムの例とし
ては、いくつかのインモス・トランスピュータT800
チップで、各々は32の通信リンク入力と32リンクの
出力を有している。各チップは単一のプロセッサ、小量
のメモリ、ならびにローカル・メモリ及び外部インタフ
ェースに対する通信リンクを有している。さらに、シス
テムを構成するために、IMS C011及びC012
などの通信リンク・アダプタが接続されている。さら
に、IMS C004などのスイッチを設け、32リン
クの入力と32リンクの出力の間に、たとえば、クロス
バー・スイッチを設け、付加的なトランスピュータ・チ
ップの間に2点間接続を行っている。さらに、特定の装
置、グラフィックスまたはディスク・コントローラの要
件に合わせて調整された特別な目的にトランスピュータ
を使用できるようにするトランスピュータ用の特別な回
路及びインタフェース・チップがある。インモスIMS
M212は16ビット・プロセスであり、オン・チッ
プ・メモリ及び通信リンクを備えている。これはディス
ク駆動機構を制御するためのハードウェア及び論理回路
を含んでおり、プログラム式ディスク・コントローラと
して、あるいは汎用インタフェースとして使用すること
ができる。並行性(並列操作)を使用するために、イン
モスはトランスピュータ用に特別な言語Occamを開
発した。プログラマはトランスピュータのネットワーク
を直接Occamプログラムで記述する必要がある。
【0015】これらの大規模並列プロセッサの中には、
異なるトポロジィで相互接続されているプロセッサ・チ
ップの並列プロセッサ・アレイを使用しているものがあ
る。トランスピュータはIMS C004チップを追加
することによって、クロスバー・ネットワークをもたら
す。他のシステムのなかには、ハイパーキューブ接続を
使用しているものもある。他のものはバスまたはメッシ
ュを使用して、マイクロプロセッサを接続しており、か
つ回路が関連づけられている。プロセッサ・アドレス可
能ネットワークとしてスイッチを使用する回路スイッチ
・プロセッサによって相互接続されているものもある。
一般に、機械を互いに結合することによって、昨秋ロー
レンス・リバモアで相互接続された14台のRISC/
6000などのように、プロセッサ・アドレス可能ネッ
トワークは粗粒(coarse-grained)マルチプロセッサと
みなされている。
【0016】いくつかの超大型機械がインテル及びNキ
ューブ、ならびにその他の会社によって、データ処理に
おいて「大命題(グランド・チャレンジ)」と呼ばれて
いるものを解決するために構築されている。しかしなが
ら、これらのコンピュータはきわめて高価なものであ
る。「大命題」を解決するため、その開発に米国政府が
資金を与えたコンピュータに対して最近予測されたコス
トは、3千万ドルから7千5百万ドルの範囲である(テ
ラ・コンピュータ)。これらの「大命題」としては、気
象モデリング、流体の乱流、汚染物の分散、人間のゲノ
ム及び海流のマッピング、量子クロモ力学、半導体及び
スーパコンピュータのモデリング、燃焼系、視覚ならび
に認識などの問題が挙げられる。
【0017】
【発明が解決しようとする課題】大規模並列アレイ・プ
ロセッサがイメージ・コンピューティングの問題を適切
に解くという問題が存在している。イメージ処理に使用
されている特定のアルゴリズムの1つは畳み込みであ
り、これは各イメージ・ピクセル値を定義された包囲領
域すなわちピクセルのウィンドウ内のピクセルの加重合
計と置き換える。M×M平方畳み込みウィンドウは各々
がウィンドウ内に配置されている関連したピクセルに対
応しているM×Mの重みの集合からなっている。N×N
のアレイのピクセルの場合、畳み込みアルゴリズムには
22の乗算が必要である。Nが1024、Mが3の単
一のイメージ・フレームを想定した場合、畳み込みは畳
み込み当たり9百万の乗算と積の合計計算を行い、1秒
当たり30フレームの速度で発生するビデオ・データに
対する処理の場合には、1秒当たり270百万の乗算と
積の合計計算が必要となる。各畳み込みウィンドウの重
み値を個別に取り出すことが必要であり、乗算と加算を
別の演算として取り扱い、その後、加重平均ピクセル結
果の書込みを行う、このデータを処理するユニプロセッ
サの場合、畳み込みはピクセル当たり27回の個別な計
算となり(9回の読取り、9回の乗算、8回の加算、及
び1回の書込み)、1秒当たり27百万×30回の演算
すなわち1秒当たり810百万回の演算となる。計算負
荷が高いため、システム・プロセッサをイメージ処理タ
スクから解除し、イメージ・コンピューティングに必要
な適切なスループットを提供する特殊プロセッサが提案
されている。このような特殊プロセッサの1つは最近隣
メッシュ接続コンピュータで、複数の処理要素(PE)
が東西南北の近隣PEと接続され、すべてのPEが同期
単一命令複数データ(SIMD)方式で作動するもので
ある。PEが近隣するPEのいずれとも通信できるが、
一度に通信できるのは近隣するPEのうちの1つだけで
あると想定する。たとえば、各PEは1通信サイクル
で、その東側のPEと通信できる。また、1同報通信期
間に、データ及び命令をすべてのPEに同時に通信でき
るようにする同報機構が存在しているものと想定する。
シンキング・マシーンズのCM−1ファミリーに存在し
ているようなビット・シリアル・インタフェースが典型
的なものである。
【0018】このように認識した場合、必要なものはイ
メージ処理を改善し、速度を上げ、大規模並列環境にお
いて並列アレイ・プロセッサの一部として複製すること
のできるPEである。微分方程式を解くために使用され
るシステム装置を改善する必要がある。この問題には新
しい種類のPEが必要と思われる。新しいPEの作成、
ならびに新しい考えによって構築されたシステム装置
は、マルチメディア・イメージ・コンピュータ分野にお
いて処理する必要のある複合処理を改善するものであ
る。
【0019】
【課題を解決するための手段】本発明で行われる改善は
新しい機械装置をもたらす。本発明を実施する機械をオ
ラクル機械と呼び、これを以下で説明する。本発明は大
規模並列コンピューティング・システムの作成を可能と
する装置に関する。並列アレイ・コンピュータ・システ
ムすなわち大規模並列アレイ・プロセッサに用いること
のできるコンピュータ・システムの新規なPE及び関連
した編成を提供する。
【0020】微分方程式を解くのに有限差分法を使用す
ることを含む、マルチメディア用及び汎用の大規模並列
コンピュータ・システムを提供する。本発明のプロセッ
サは三角プロセッサ・アレイ構造である。本発明のプロ
セッサ・アレイ構造は命令及びデータの記憶装置を含ん
でおり、命令とデータを受け取り、命令を実行する単一
及び2重処理要素、ならびにデータの初期化、並列機
能、折り返し、及び同報プロセッサ通信をサポートする
ためのプロセッサ相互接続編成及び方法を有している。
【0021】コンピュータは対角線に沿って折り畳ま
れ、折り返し相互接続構造を備えた最近隣のものによっ
て相互接続された単一プロセッサ対角ユニットと2重プ
ロセッサ汎用ユニットを構成しているN×Nのマトリッ
クスの形態で配置されたN2個の処理装置を有している
ことが好ましい。コンピュータにおいて、各処理要素す
なわちPEはマトリックスの単位である。各プロセッサ
を元のN×Nのマトリックスの参照符号によって識別し
てから、N×Nのマトリックス・アルゴリズムの三角ア
レイ・アルゴリズムへの移送をサポートする折り畳みを
行う。
【0022】折り畳み前に、各PEは4つのポートを有
しており、対角線に沿って折り畳まれており、北及び南
の入出力ポートの東及び西の入出力ポートとの共有を可
能とするN×Nのマトリックスの形で配置された、折り
返し通信によって最近隣のものに対して北、南、東及び
西の入出力ポートを各々が所有するN2個の処理装置が
ある。
【0023】N×Nのマトリックスを備えた本発明のプ
ロセッサの場合、プロセッサを接続する方法は、非競合
プロセッサ間通信の機構をもたらすプロセスによる。た
とえば、プロセッサの間の単一方向通信方式を利用する
機構を、オラクル・アレイ・プロセッサに利用する。非
競合プロセッサ間通信の機構は、すべてのプロセッサに
単一方向で、しかも同一方向の通信方式を利用するよう
要求することによって得られる。
【0024】本明細書の場合、上記の各処理要素は折り
畳み前の元のN×Nマトリックスに関する2つの添字を
付した表記PEcolumn,rowによって識別される。したが
って、計算機はK(N2)の相互接続線を有することに
なる。ただし、Kはプロセッサ間のワイヤの数であり、
ビット・シリアル・インタフェースの場合、Kは1にな
る(K=1)。本発明は単一プロセッサ対角ユニットを
サポートする。装置はデータ記憶要素、実行ユニット、
命令及びデータの通信のための同報インタフェース、初
期化をサポートするデータ記憶インタフェース、ならび
にプロセッサ間インタフェースと呼ばれる折り返しのあ
る最近隣インタフェースを含むPEi,jという単一プロ
セッサ対角ユニット、及び通信手段を有している。
【0025】本発明は以下で詳述する新規の計算機能も
提供する。
【0026】これら及びその他の改善について、以下で
詳細に説明する。本発明の利益及び特徴についてよりよ
く理解するには、以下の説明及び図面を参照されたい。
【0027】
【実施例】
<序>
【0028】図面において、メッシュ・コンピュータの
例が図1に示されている。配線の複雑度を最小限のもの
とするために、PE間にビット・シリアル・インタフェ
ースを想定する。図1において、処理要素にはPEij
いうラベルが付けられており、「i」はマトリックスの
列を示し、「j」はマトリックスの行を示している。各
処理要素PEijは北(N)、東(E)、南(S)及び西
(W)という4つのインタフェース・ポートを含んでい
る。折り返し接続、すなわちトーラス構成によって、各
行はN本の相互接続線を含んでおり、N個の行には、N
2本の水平相互接続線がある。各列はN本の相互接続線
を含んでおり、N個の列には、N2本の垂直相互接続線
がある。折り返し接続によるメッシュ接続コンピュータ
の線の総数は2N2(K)である。ただし、Kはプロセ
ッサ間相互接続線の数に等しく、ビット・シリアル・イ
ンタフェースの場合、Kは1になる。ここで折り返し接
続とは、互いに隣接するプロセッサ間でのみの接続をい
う。
【0029】本発明にしたがい、本発明をビット・シリ
アル・インタフェースに関して説明する。なお、他の手
段によって、効果的な並列インタフェースを得ることが
できることに留意すべきである。米国特許願第07/7
99602号はプロトコルを使用して、この出願に記載
されているマルチシステム環境でビット・シリアル通信
を並列通信とインタフェースする方法を開示している。
【0030】適切なネットワーク接続によって、米国特
許願第07/798788号に記載されているように、
MIMD、SIMD及びSISDモードの間の動的な切
換えを可能とするシステムに、本発明装置を用いること
ができる。本発明のPEは各ノードがそのPE及びメモ
リ、ならびに外部の他のノードと通信するためのポート
を有している、多くのノードで構成された並列アレイ・
プロセッサの一部を形成することができる。
【0031】図2はイメージ処理畳み込みアルゴリズム
を実施するのに使用される典型的なメッシュPEを示し
ており、N、S、E及びWの送受信ポートが明確に示さ
れている。PEは4つの内部レジスタWab、Pij、Rij
及びR^ijからなっている。PijレジスタはLSSDを
通るスキャン・パスであってもかまわないイメージ初期
化パスによって初期化された場合にij番目のピクセル
値を保持している。Wabレジスタには同報機構によって
畳み込みウィンドウの要素がロードされ、計算結果はR
^ijレジスタにロードされる。PE間で伝送される結果
はRijレジスタに受け取られる。PEは「*」で示され
るビット・シリアル乗算器、及び「+」で示されるビッ
ト・シリアル加算器も含んでいる。通信を行うため、各
PEは復号された同報コマンドに基づいて送信/受信方
向が「コマンド制御」論理によって制御される4つの入
出力ポートを含んでいる。「コマンド制御」論理によっ
て、1つだけのポートが送信を行い、1つのポートが受
信を行うことが同時にできるようになる。たとえば、ポ
ート「N」が送信している場合には、ポート「S」が受
信を行い、ポート「W」が送信している場合には、ポー
ト「E」が受信を行う。これはPE間の情報の単一方向
伝送の制約によるものである。
【0032】図1のメッシュ接続コンピュータの構成及
び図2のPEの内部構造において、構造内の任意の伝送
の際に、PE接続線の内50%が利用されるにすぎない
ことになる。接続線の半数で、メッシュ接続コンピュー
タと同じ機能と性能を達成することが望ましいが、これ
はN2線の節減がチップ面積の対応する節減によっても
たらされるからである。オラクル・コンピュータの構成
はこの能力を達成する。オラクル構成のPEを作成する
プロセスの第1段階は、PEij対角要素に沿ってメッシ
ュ接続コンピュータを折り畳む、すなわち「i=j」に
することである。たとえば、図1に示す8×8のメッシ
ュを折り畳むと、対称のPE、すなわちPEij及びPE
jiが重ねられた図3及び図4に示すオラクル・メッシュ
になる。対称のPEは図3及び図4に模式的に示すよう
に送信及び受信ポートを共用しており、頂部PEのPE
ijW、S、N及びEポートが底部PEのPEjiN、E、
W及びSポートのそれぞれと共用されている。対称PE
の入出力ポートのこの共用は、図5ないし図14のオラ
クル対称PE「セル」構造に詳細に示されている。図5
において、内部対称PE「セル」は内部PE両方に対す
る共通Wabレジスタ、Pij及びPjiという2つのピクセ
ル・レジスタ、マトリックスPまたはその転置PTの選
択を可能とするセレクタ、2つの結果レジスタR'ij
びR'ji、ならびに2つの受信レジスタRij及びRji
らなっている。PEは「*」で示されるビット・シリア
ル乗算器、及び「+」で示されるビット・シリアル加算
器も含んでいる。同報コマンドを復号する単一の「コマ
ンド制御」論理によって制御される4つの入出力ポート
だけが、対称2重PE「セル」に利用される。「コマン
ド制御」論理は入出力ポートの方向だけでなく、入出力
ポートを送信及び受信レジスタにリンクするスイッチの
設定も制御する。共用入出力ポートは(頂部PE方向ポ
ート・ラベル)/(底部PE方向ポート・ラベル)で示
されるが、ただし、PEijは頂部PEを表し、PEji
底部PEを表す。頂部及び底部PEの表記の選択は、検
討及び表示を容易とするためだけのものである。
【0033】図6ないし図9は4つの伝送モードをサポ
ートする内部スイッチの設定を示す。図6において、
「コマンド制御」はスイッチ及び送信機/受信機を、南
(S)から受信して、北(N)へ送信するように設定し
ている。頂部及び底部両方のPEは北へ送信するととも
に、両方とも南から情報を受信する。これは図6の矢印
の次の頂部PEijの送信に対する「N/ 」という表記
及び底部PEjiの送信に対する「 /N」という表記に
よって示されている。受信した情報は図6の矢印、なら
びに頂部PEijの受信ポートに対する「S/ 」という
表記及び底部PEjiの受信ポートに対する「 /S」と
いう表記によって示されている。対称PE「セル」の4
つの入出力ポートに対するこの表記を使用して、簡単な
記号体系を図15に示すように対称PEについて構成す
ることができるが、この図において、PEijは頂部PE
であり、PEjiは底部PEである。オラクル構成にこの
記号体系を利用すると、セル間の配線の規則性を示す簡
単な図16ないし図17が得られる。
【0034】2重プロセッサの内部スイッチは次の8つ
の接続点A、B、C、D、ならびにW、X、Y及びZか
らなっている。 ・点Aはプロセッサ間インタフェースからデータを受信
するプロセッサPi,jのレジスタRi,jに接続されてい
る。 ・点Bはプロセッサ間インタフェースにデータを供給す
るプロセッサPi,jのレジスタR^i,jに接続されてい
る。 ・点Cはプロセッサ間インタフェースにデータを供給す
るプロセッサPj,iのレジスタR^j,iに接続されてい
る。 ・点Dはプロセッサ間インタフェースからデータを受信
するプロセッサPj,iのレジスタRj,iに接続されてい
る。 ・点WはPEi,jの西及びPEj,iの北の近隣PEの間で
のデータの送信及び受信のための受信/送信機構に接続
されている。 ・点XはPEi,jの南及びPEj,iの東の近隣PEの間で
のデータの送信及び受信のための受信/送信機構に接続
されている。 ・点YはPEi,jの北及びPEj,iの西の近隣PEの間で
のデータの送信及び受信のための受信/送信機構に接続
されている。 ・点ZはPEi,jの東及びPEj,iの南の近隣PEの間で
のデータの送信及び受信のための受信/送信機構に接続
されている。
【0035】2重プロセッサ・スイッチはスイッチの状
態に応じて、点A、B、C、Dならびに点W、X、Y及
びZの間に接続/非接続パスをもたらす。スイッチの1
つの状態では、点AとW、BとZ、CとX、及びDとY
の間の接続パスが、東発信西受信に対するものとなる。
スイッチの第2の状態では、点AとX、BとY、Cと
W、及びDとZの間の接続パスが、北発信南受信に対す
るものとなる。スイッチの第3の状態では、点AとY、
BとX、CとZ、及びDとWの間の接続パスが、南発信
北受信に対するものとなり、スイッチの第4の状態で
は、点AとZ、BとW、CとY、及びDとXの間の接続
パスが、西発信東受信に対するものとなる。受信/発信
機構が、接続されている受信PEに対してPEからの信
号を駆動する1つの状態に各々が応じ、かつ接続されて
いる発信PEからPEへの信号を受信する他の状態に応
じる4つの双方向ドライバ/レシーバ機構からなってお
り、かつ4つの双方向ドライバ/レシーバ機構の内、東
発信西受信、北発信南受信、南発信北受信、及び西発信
東受信という4つのケースに関して、2つだけが同時に
データを送信し、2つが同時にデータを受信するように
する制御が与えられることに留意すべきである。
【0036】対角PE(図10)は西/北ポート及び南
/東ポートを共用しており、対角PE「セル」当たり2
つだけのポートを必要とする。図11ないし図14は4
つの伝送モードをサポートする内部スイッチの設定を示
す。対角プロセッサの内部スイッチ機構は4つの接続点
A、B、X及びYからなっており、点Aはデータ受信レ
ジスタRijに接続されており、点Bはデータをプロセッ
サ間インタフェースに供給するレジスタR'ijに接続さ
れており、点Xは対角PEの西及び北(W/N)の近隣
PEの間でのデータの送信及び受信のために受信/送信
機構に接続されており、点Yは対角PEの南及び東(S
/E)の近隣PEの間でのデータの送信及び受信のため
に受信/送信機構に接続されている。対角スイッチはス
イッチの状態に応じて、点A、Bと点X、Yの間に接続
/非接続パスをもたらす。スイッチの1つの状態におい
て、点AとXの間、及び点BとYの間の接続パスが2つ
の送信/受信ケース、すなわち点Yを通る南送信、点X
を通る北受信、ならびに点Yを通る東送信、点Xを通る
西受信に対してもたらされる。スイッチの第2の状態に
おいて、点AとYの間、及び点BとXの間の接続パスが
2つの送信/受信ケース、すなわち点Xを通る北送信、
点Yを通る南受信、ならびに点Xを通る西送信、点Yを
通る東受信に対してもたらされる。受信/送信機構が1
つの状態に応じて各々がPEから接続されている受信P
Eへの信号を駆動し、かつもう1つの状態に応じて各々
が接続されている送信PEからPEへの信号を受信する
2つの双方向ドライバ/レシーバ機構からなっており、
双方向ドライバ/レシーバ機構が両方とも同時にデータ
を駆動したり、あるいは両方とも同時にデータを受信し
たりすることがないようにするための制御が設けられて
いることに留意すべきである。
【0037】方形メッシュ構造を対角線に沿って折り畳
むと、方形メッシュの頂縁が西側の縁部に重なり、方形
メッシュの東側縁部が南側縁部と重なる。方形アレイの
北/南側縁部と東/西側縁部との間にある方形メッシュ
・コンピュータ構成の2N折り返し接続を、N折り返し
接続のみを必要とするオラクル・メッシュ構成で共用す
ることができる。オラクル水平相互接続線を計数し、折
り返し接続を水平ワイヤとみなすと、次のようになる。
【数1】
【0038】オラクル垂直相互接続線を計数すると次の
ようになる
【数2】 オラクル・ワイヤの総数=(1+2+・・・+N−1)
K=(N*(N−1)/2)K
【0039】オラクル・ワイヤの総数は次のようにな
る。
【数3】
【0040】ただし、Kはプロセッサ間相互接続線の数
であり、ビット・シリアル・インタフェースの場合、K
は1である。オラクル・ワイヤの総数が方形メッシュ構
成で必要とされるワイヤの数のちょうど半分であること
が実証された。
【0041】次いで、PE間の単一方向情報転送の制限
のもとで、2つのコンピュータ構成が機能的に同等であ
ることが実証された。次の4つの場合を検討する必要が
ある。 1.北発信南受信 2.南発信北受信 3.東発信西受信 4.西発信東受信
【0042】PE間で伝送される情報の宛先点がオラク
ルにおいて、メッシュ接続構成の場合と同じであること
が示されている。PEijの場合、次のようになる。 1.北発信PEij→PEij-1 2.南発信PEij→PEij+1 3.東発信PEij→PEi+1j 4.西発信PEij→PEi-1j
【0043】ただし、i−1=0またはj−1=0の場
合には、折り返し接続に対してi=Nまたはj=Nにセ
ットし、i+1>Nまたはj+1>Nの場合には、i=
1またはj=1にセットする。
【0044】オラクルにおいて、まず、iとjの値が交
換されるのであるから、頂部PE「セル」ではi<j、
底部PE「セル」ではi>jである対称2重PE「セ
ル」を考察する。この最初の考察は次に考察する対角セ
ル以外のすべてのPEを説明するものである。対称2重
PE「セル」について、i−1=0またはj−1=0の
場合には、折り返し接続に対してi=Nまたはj=Nに
セットし、i+1>Nまたはj+1>Nの場合には、i
=1またはj=1にセットする。
【0045】1.北発信南受信 ・PEijはN/Wワイヤ上でPEij-1に送信する ・PEijはS/Eワイヤ上でPEij+1から受信する ・PEjiはW/Nワイヤ上でPEji-1に送信する ・PEjiはE/Sワイヤ上でPEji+1から受信する
【0046】2.南発信北受信 ・PEijはS/Eワイヤ上でPEij+1に送信する ・PEijはN/Wワイヤ上でPEij-1から受信する ・PEjiはE/Sワイヤ上でPEji+1に送信する ・PEjiはW/Nワイヤ上でPEji-1から受信する
【0047】3.東発信西受信 ・PEijはE/Sワイヤ上でPEi+1jに送信する ・PEijはW/Nワイヤ上でPEi-1jから受信する ・PEjiはS/Eワイヤ上でPEji+1に送信する ・PEjiはN/Wワイヤ上でPEji-1から受信する
【0048】4.西発信東受信 ・PEijはW/Nワイヤ上でPEi-1jに送信する ・PEijはE/Sワイヤ上でPEi+1jから受信する ・PEjiはN/Wワイヤ上でPEji-1に送信する ・PEjiはS/Eワイヤ上でPEji+1から受信する
【0049】対角「セル」について、i=jの場合、次
の情報の転送が生じる。
【0050】1.北発信南受信 ・PEiiはW/Nワイヤ上でPEii-1に送信する ・PEiiはS/Eワイヤ上でPEii+1から受信する
【0051】2.南発信北受信 ・PEiiはS/Eワイヤ上でPEii+1に送信する ・PEiiはW/Nワイヤ上でPEii-1から受信する
【0052】3.東発信西受信 ・PEiiはE/Sワイヤ上でPEi+1iに送信する ・PEiiはW/Nワイヤ上でPEi-1iから受信する
【0053】4.西発信東受信 ・PEiiはW/Nワイヤ上でPEi-1iに送信する ・PEiiはE/Sワイヤ上でPEi+1iから受信する
【0054】すべての場合に、競合は生ぜず、かつ適正
な宛先点はPEの方形メッシュ接続構成のものと同じま
まである。
【0055】<マトリックスの転置>
【0056】マトリックス「P」の転置の際に、マトリ
ックスの行ベクトルが転置マトリックス「PT」の列ベ
クトルになる。マトリックス「P」の任意の要素Pab
転置マトリックス「PT」の要素Pbaになる。対角要素
に変化はない。オラクルにおいて、マトリックス「P」
及びその転置を簡単に選択することができるが、これは
要素Pabと対応する要素Pbaの両方が2重要素に存在し
ているからである。「p」レジスタの出力のセレクタは
指定の操作において「P」または「PT」の要素を使用
することを可能とする。たとえば、「P」マトリックス
は図18に示されており、図19に示すように、オラク
ルにロードされる。
【0057】マトリックスP及びPTの転置は図20に
示されており、図21に示すように、オラクルにロード
される。
【0058】図22は畳み込みウィンドウを示す。図2
3ないし図26は方形メッシュにおけるイメージ処理畳
み込みを示す。本明細書で検討するイメージ処理タスク
の場合、3×3の畳み込みウィンドウを備えた2−D畳
み込み(図22)を想定する。メッシュ構造に用いられ
る技法はS. Y. Lee及びJ. K. Aggarwalが提案したもの
である。処理要素の内部構造は図2に論理的に示されて
いるが、これはLeeを改変したものであって、N、S、
E、Wの送信/受信ポートが詳細に示されている。
【0059】N×NのイメージがN×NのメッシュPij
レジスタにロード済みであり、R'ijレジスタがゼロに
セットされているものと想定すると、畳み込みアルゴリ
ズムを最初のウィンドウ要素W11から開始することがで
きる。それ以降のステップはPij畳み込みパスにしたが
うものであり、パス内の各ステップは図23ないし図2
6に対応するステップ番号を付けて示されている。(す
べてのPEがそのピクセル値で同じ演算を計算し、小計
値を受け取ることに留意すべきである。)
【0060】1.同報W11及びPEi-1,j+1はR1=0
+W11i-1,j+1を計算し、R1北に転送する。 2.同報W12及びPEiー1j-1はR2=R1+W12
i-1,jを計算し、R2北に転送する。 3.同報W13及びPEiー1,j-1はR3=R2+W13
i-1,j-1を計算し、R3東に転送する。 4.同報W23及びPEi,j-1はR4=R3+W23i,j-1
を計算し、R3東に転送する。 5.同報W33及びPEi+1,j-1はR5=R4+W33
i+1,j-1を計算し、R5南に転送する。 6.同報W32及びPEi+1,jはR6=R5+W32i+1,j
を計算し、R6南に転送する。 7.同報W31及びPEi+1,j+1はR7=R6+W31
i+1,j+1を計算し、R7西に転送する。 8.同報W21及びPEi,j+1はR8=R7+W21i,j+1
を計算し、R8北に転送する。 9.同報W22及びPEijはR9=R8+W22ijを計算
し、停止する。
【0061】9つのステップの終了時に、各PEijは次
のものを含むようになる。
【数4】Pij=R9=W11i-1,j+1+ W12i-1,j+W13i-1,j-1+ W23i,j-1+W33i+1,j-1+ W32i+1,j+W31i+1,j+1+ W21i,j+1+W22ij
【0062】同様に、オラクルにおけるピクセルP45
対する典型的な畳み込み演算が、図27ないし図31に
示されている。N×NのイメージがオラクルのPijレジ
スタにロード済みであり、R^ijレジスタがゼロにセッ
トされているものと想定すると、畳み込みアルゴリズム
を最初のウィンドウ要素W11の同報から開始することが
できる。それ以降のステップはPij畳み込みパスにした
がうものであり、パス内の各ステップは図27ないし図
31に対応するステップ番号を付けて示されている。
(すべてのPEがそのピクセル値で同じ演算を計算し、
小計値を受け取ることに留意すべきである。)
【0063】1.同報W11及びPEiー1,j+1はR1=0
+W11i-1,j+1を計算し、N/Wワイヤ上でR1に転
送する。 2.同報W12及びPEi-1,jはR2=R1+W12i-1,j
を計算し、N/Wワイヤ上でR2に転送する。 3.同報W13及びPEiー1,j-1はR3=R2+W13
i-1,j-1を計算し、E/Sワイヤ上をR3に転送する。 4.同報W23及びPEi,j-1はR4=R3+W23i,j-1
を計算し、E/Sワイヤ上をR4に転送する。 5.同報W33及びPEi+1,j-1はR5=R4+W33
i+1,j-1を計算し、S/Eワイヤ上をR5に転送する。 6.同報W32及びPEi+1,jはR6=R5+W32i+1,j
を計算し、S/Eワイヤ上をR6に転送する。 7.同報W31及びPEi+1,j+1はR7=R6+W31
i+1,j+1を計算し、W/Nワイヤ上をR7に転送する。 8.同報W21及びPEi,j+1はR8=R7+W21i,j+1
を計算し、N/Wワイヤ上をR8に転送する。 9.同報W22及びPEijをR9=R8+W22ijを計算
し、停止する。
【0064】9つのステップの終了時に、各PEijは次
のものを含むようになる。
【数5】Pij=R9=W11i-1,j+1+ W12i-1,j+W13i-1,j-1+ W23i,j-1+W33i+1,j-1+ W32i+1,j+W31i+1,j+1+ W21i,j+1+W22ij
【0065】ピクセルP45の場合、これは次のように
なる。
【数6】G(P45)=W11P36+W12P35+
W13P34+W23P44+W33P54+W32P
55+W31P56+W21P46+W22P45
【0066】<有限差分法の例>
【0067】微分方程式を解くための有限差分法は物理
学、機械工学、及び電気工学などの多数の科学技術分野
で広く用いられている。このような方法において、微分
方程式の導関数は、切り捨てられたテイラー級数から得
られる差分商によって近似される。
【0068】有限差分法において、2次偏微分方程式、
式(1)を考える。
【数7】
【0069】ここで、A、B、C、D、E、F及びGは
x及びyの関数であり、領域Rで連続し、Sが境界とな
る。関数u(x,y)はR及びSで連続していなければ
ならない。
【0070】有限差分法において、メッシュは領域Rに
重ねられ(図32に示すように)、微分方程式(1)は
差分方程式に置換される。偏導関数は中心差分商方程式
2a−2d(図33)に置換される。
【数8】
【0071】
【数9】
【0072】
【数10】
【0073】
【数11】
【0074】ただし、hx及びhyはそれぞれx及びy軸
のメッシュ間隔である(図33)。通常、水平及び垂直
両方高のメッシュ間隔は同じである(式3)。
【数12】h=hx=hy (3)
【0075】=0として、式(2a)ないし(2d)を
式(1)に代入し、−h2を乗じると、次の式が得られ
る。
【数13】
【0076】ただし、
【数14】
【0077】
【数15】
【0078】
【数16】
【0079】
【数17】
【0080】
【数18】
【0081】
【数19】
【0082】ラプラスの方程式を考えると、次のように
なる。
【数20】
【0083】ただし、A=C=1及びB=D=E=F=
G=0である。
【0084】領域Rに境界条件Sを与えると、一意の解
が得られる。ラプラスの方程式を小さな差分として表す
ことができる。代入により、式(7a)が得られる。
【数21】
【0085】それ故、u(x,y)の値を式(7b)を
使用した反復法によって計算できる。
【数22】
【0086】ラプラスの方程式及びポアゾンの方程式
は、振動膜の解析などの多くの理論及び応用問題に広く
使用されている。
【0087】図5ないし図14の説明で提示したオラク
ルの表記を使用して、式(7a)を式8にマップするこ
とによって、式(7b)をオラクルについて計算するこ
とができる。
【数23】
【0088】この表記は連続性に合わせて連続するもの
であるが、PEの内部構造(図5)は有限差分法アルゴ
リズムに合わせて修正される。修正されたPEは図34
に示されている。対角PEも同様にして、図10に示す
形態から2重PE構造に修正される。対角PEは1つの
実行ユニットと、単一PEに適したレジスタを含んでい
るが、その構造は図34から推論されたものである。同
一の送受入出力ポート及び制御が新しいPE内部構造に
利用されているが、計算機能は修正されている。アキュ
ミュレータ/シフタを備えた加算器を利用して、式8に
必要な4回の演算によって加算及び除算を行う。Wab
ジスタは比較論理が使用する最大許容誤差値を格納す
る。新しいP(i,j)値を計算した後、以前のP
(i,j)値と比較し、いずれかのPEで差が最大許容
誤差よりも大きい場合には、計算を継続する必要があ
る。すべてのPEの誤差値が最大許容誤差よりも少なく
なければならないのであるから、制御システムはPEの
比較演算の状態を知っていなければならない。これは論
理値を各PEからメッシュ構造を介して、制御システム
へ大域解析のために送ることによって得られる。図35
ないし図38は北、南、東及び西の伝送モードのための
スイッチ及び入出力ポートの構成を示す。
【0089】Pijレジスタにロードされる初期値は問題
によって異なっている。アキュミュレータR^ijはゼロ
に初期設定され、最大許容誤差値がWabレジスタにロー
ドされる。初期設定後、以下のステップが行われるが、
これらのステップについては図39ないし図41のステ
ップ1ないしステップ5を参照されたい。
【0090】1.ステップ1。Pijの値を北へ送信し、
受信した値をR^ijの値に加える。 2.ステップ2。Pijの値を東へ送信し、受信した値を
R^ijの値に加える。 3.ステップ3。Pijの値を南へ送信し、受信した値を
R^ijの値に加える。 4.ステップ4。Pijの値を西へ送信し、受信した値を
R^ijの値に加える。 5.ステップ5。R^ijに蓄積した値を2ポジション右
へシフトし、4で除算し、シフトした蓄積値R^ijを元
の値Pijと比較して、2つの値が最大許容誤差内にある
かどうかを検証する。比較の結果をアレイの縁部へ送
り、収束の全体的な判断を行う。
【0091】全体的な収束にいたっていない場合には、
収束が全体的に達成されるまで、上記のプロセスを継続
する。
【0092】
【発明の効果】本発明により、並列アレイ・コンピュー
タ・システムすなわち大規模並列アレイ・プロセッサに
用いることのできるコンピュータ・システムの新規なP
E及び関連した編成を提供できる。さらに、微分方程式
を解くのに有限差分法を使用することを含む、マルチメ
ディア用及び汎用大規模並列コンピュータ・システムを
提供できる。
【図面の簡単な説明】
【図1】畳み込みイメージ処理用の8×8のメッシュを
示す図面である。
【図2】メッシュPE内部構造の図面である。
【図3】本発明の好ましい実施例による8×8のメッシ
ュを示す図面である。
【図4】本発明の好ましい実施例による8×8のメッシ
ュを示す図面である。
【図5】転置及び畳み込みをサポートする対称PE「セ
ル」構造の図面である。
【図6】転置及び畳み込みをサポートする対称PE「セ
ル」構造の図面である。
【図7】転置及び畳み込みをサポートする対称PE「セ
ル」構造の図面である。
【図8】転置及び畳み込みをサポートする対称PE「セ
ル」構造の図面である。
【図9】転置及び畳み込みをサポートする対称PE「セ
ル」構造の図面である。
【図10】転置及び畳み込みをサポートする対称PE
「セル」構造の図面である。
【図11】転置及び畳み込みをサポートする対称PE
「セル」構造の図面である。
【図12】転置及び畳み込みをサポートする対称PE
「セル」構造の図面である。
【図13】転置及び畳み込みをサポートする対称PE
「セル」構造の図面である。
【図14】転置及び畳み込みをサポートする対称PE
「セル」構造の図面である。
【図15】本発明の好ましいPEの記号体系を付した8
×8のメッシュの図面である。
【図16】本発明の好ましいPEの記号体系を付した8
×8のメッシュの図面である。
【図17】本発明の好ましいPEの記号体系を付した8
×8のメッシュの図面である。
【図18】方形メッシュにおける8×8のマトリックス
Pの図面である。
【図19】本発明の好ましい実施例における8×8のマ
トリックスPの図面である。
【図20】方形メッシュにおける8×8のマトリックス
と転置したマトリックスPの図面である。
【図21】本発明の好ましい実施例における8×8のマ
トリックスと転置したマトリックスPの図面である。
【図22】畳み込みウィンドウの図面である。
【図23】畳み込みイメージ処理のための一般化された
メッシュの図面である。
【図24】畳み込みイメージ処理のための一般化された
メッシュの図面である。
【図25】畳み込みイメージ処理のための一般化された
メッシュの図面である。
【図26】畳み込みイメージ処理のための一般化された
メッシュの図面である。
【図27】ピクセルP45の畳み込みのステップ1及び
3を示す図面である。
【図28】ピクセルP45の畳み込みのステップ2及び
4を示す図面である。
【図29】ピクセルP45の畳み込みのステップ5及び
7を示す図面である。
【図30】ピクセルP45の畳み込みのステップ6及び
8を示す図面である。
【図31】ピクセルP45の畳み込みのステップ9を示
す図面である。
【図32】領域Rに重ねられたメッシュを示す図面であ
る。
【図33】領域Rに重ねられたメッシュを示す図面であ
る。
【図34】有限差分法をサポートする本発明の対称PE
「セル」を示す図面である。
【図35】有限差分法をサポートする本発明の対称PE
「セル」を示す図面である。
【図36】有限差分法をサポートする本発明の対称PE
「セル」を示す図面である。
【図37】有限差分法をサポートする本発明の対称PE
「セル」を示す図面である。
【図38】有限差分法をサポートする本発明の対称PE
「セル」を示す図面である。
【図39】本発明の有限差分法のステップ1及び3を示
す図面である。
【図40】本発明の有限差分法のステップ2及び4を示
す図面である。
【図41】本発明の有限差分法のステップ5を示す図面
である。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ホセ・グァダループ・デルガード−フリ アス 13760ニューヨーク州エンドウェル、レ ーシィ・ドライブ 612 (56)参考文献 IEEE TRANSACTIONS ON NEURAL NETWORK S,VOL.3,NO.6,NOVEM BER 1992P.934−950 PROCEEDINGS.INTER NATIONAL CONFERENC E ON APPLICATION−S PECIFIC ARRAY PROC ESSORS 1993 P.140−3

Claims (14)

    (57)【特許請求の範囲】
  1. 【請求項1】N×Nマトリックスを構成する(Nは0よ
    り大きい正の整数)多次元アレイ内に配置され、データ
    をそれぞれ送信し、受信する複数の入出力(I/O)ポ
    ートをそれぞれ含む複数の処理要素(PE)を含むプロ
    セッサー・アレイにおいて、 PEがそれぞれ、前記複数のI/Oポートのうちの1つ
    のI/Oポートにおいてそれぞれ複数のPEのうちの隣
    接する4つのPEに結合され、アレイのエッジに沿った
    各PEが、アレイの隣接しないエッジに沿った複数のP
    Eのうちの別のPEに対角線で折り畳んだ位置に配置さ
    れるように折返し結合され、PEのうちの前記隣接する
    4つのPEが、北PE、南PE、東PEおよび西PEに
    指定され、 PEが、PEの対が前記複数の入出力ポートを共有する
    ように対角線で折り畳まれた折込メッシュの形で結合さ
    れ、 行の添字iおよび列の添字jをそれぞれ等しくない正の
    整数として、PEijで示されたPEがPEjiで示さ
    れたPEと入出力ポートを共有し、 i<jのPEが頂部PEに指定され、 i>jのPEが底部PEに指定され、 i=jのPEが対角線PEに指定され、 対角線PEがそれぞれ、前記複数のI/Oポートのうち
    の1つのI/OポートにおいてそれぞれPEのうちの隣
    接する2つのPEに結合され、アレイの1つの角にある
    各対角線PEが、アレイの別の角にある各非対角線PE
    に折返し結合されたプロセッサー・アレイ。
  2. 【請求項2】PEがそれぞれ a)データを前記I/Oポートのうちの1つのI/Oポ
    ートを介して東PEに送信し、データを前記I/Oポー
    トのうちの別のI/Oポートを介して西PEから受信す
    る東送信/西受信モード b)データを前記I/Oポートのうちの1つのI/Oポ
    ートを介して北PEに送信し、データを前記I/Oポー
    トのうちの別のI/Oポートを介して南PEから受信す
    る北送信/南受信モード c)データを前記I/Oポートのうちの1つのI/Oポ
    ートを介して南PEに送信し、データを前記I/Oポー
    トのうちの別のI/Oポートを介して北PEから受信す
    る南送信/北受信モード、および d)データを前記I/Oポートのうちの1つのI/Oポ
    ートを介して西PEに送信し、データを前記I/Oポー
    トのうちの別のI/Oポートを介して東PEから受信す
    る西送信/東受信モードにおいて、データを送信し、受
    信する手段をさらに含むことを特徴とする、請求項1に
    記載のプロセッサー・アレイ。
  3. 【請求項3】それぞれデータおよび命令を送信し、受信
    する複数のI/Oポートを有する複数の処理要素(P
    E)用の相互接続システムにおいて、 複数のPEを相互接続する結合手段であって、前記複数
    のPEを有する正方形マトリックス構成内に存在するす
    べての内部PE結合を含み、iおよびjをそれぞれマト
    リックス構成内の対応するPEの行および列の指示子と
    し、iおよびjが等しくない0でない正の整数であると
    して、各非対角線PE(PEij)のI/Oポートをそ
    の対角線に対して対称の位置にある対称PE(PEj
    i)と共有することによってマトリックス構成内で必要
    な数の内部PE結合の半分を実施し、それによりPEi
    jおよびPEjiを含む対称型PEを形成する結合手段
    を含み、 結合手段が a)データを前記I/Oポートのうちの1つの一部を介
    して東PEに送信し、データを前記I/Oポートのうち
    の別のI/Oポートを介して西PEから受信する東送信
    /西受信モード b)データを前記I/Oポートのうちの一部を介して北
    PEに送信し、データを前記I/Oポートのうちの別の
    I/Oポートを介して南PEから受信する北送信/南受
    信モード c)データを前記I/Oポートのうちの一部を介して南
    PEに送信し、データを前記I/Oポートのうちの残り
    の部分を介して北PEから受信する南送信/北受信モー
    ド、および d)データを前記I/Oポートのうちの一部を介して西
    PEに送信し、データを前記I/Oポートのうちの残り
    の部分を介して東PEから受信する西送信/東受信モー
    ドの4つの選択可能なモードのうちの1つのモードにお
    いて、データおよび命令を送信し、受信する手段をさら
    に含む相互接続システム。
  4. 【請求項4】PEに送信された第1のタイプのデータお
    よび第2のタイプのデータを受信する第1の入力ポート
    と、 第1の入力ポートに結合され、第1のタイプのデータに
    応答してコマンドを発行するコマンド制御回路と、 第1の入力ポートに結合され、第2のタイプのデータを
    記憶する第1のレジスタと、 PEに送信された第3のタイプのデータを受信する第2
    の入力ポートと、 コマンド制御回路に結合され、複数のデータ・ポートを
    含み、データ・ポートのうちの選択したデータ・ポート
    をデータ・ポートのうちの選択した他のデータ・ポート
    に接続し、コマンド制御回路からのコマンドに応答し
    て、データをデータ・ポートのうちの選択したデータ・
    ポートからデータ・ポートのうちの選択した他のデータ
    ・ポートに送信する制御スイッチと、 それぞれPEデータを対応する別個のPEに出力し、結
    合されたPEデータを前記対応する別個のPEから受信
    する複数のインターフェース・ポートと、 それぞれデータ・ポートのうちの1つのデータ・ポー
    ト、コマンド制御回路およびインターフェース・ポート
    のうちの1つのインターフェース・ポートに結合され、
    コマンド制御回路からのコマンドに応答して、PEデー
    タをデータ・ポートのうちの結合されたデータ・ポート
    からインターフェース・ポートのうちの結合されたイン
    ターフェース・ポートに選択的に送信し、結合されたP
    Eデータをインターフェース・ポートのうちの前記結合
    されたインターフェース・ポートからデータ・ポートの
    うちの前記結合されたデータ・ポートに選択的に送信す
    る複数の双方向スイッチと、 複数のデータ・ポートの一部を介して、第1のレジス
    タ、第2の入力ポートおよび制御スイッチに結合され、 第3のタイプのデータを記憶する初期設定レジスタと、 第1のレジスタおよび初期設定レジスタに結合され、第
    2のタイプのデータおよび第3のタイプのデータを用い
    て計算を実施する第1の計算回路と、 結合されたPEデータを記憶する受信レジスタと、 第1の計算回路および受信レジスタに結合され、第1の
    計算回路によって出力された結果および結合されたPE
    データを用いて計算を実施する第2の計算回路と、 第2の計算回路に結合され、第2の計算回路の結果を記
    憶し、第2の計算回路の結果を制御スイッチのデータ・
    ポートに送信する結果レジスタとを含む処理要素(P
    E)。
  5. 【請求項5】PEに送信された命令および重み値を受信
    する第1の入力ポートと、 第1の入力ポートに結合され、命令に応答してコマンド
    を発行するコマンド制御回路と、 第1の入力ポートに結合され、重み値を記憶する加重レ
    ジスタと、 PEに送信された初期設置値を受信する第2の入力ポー
    トと、 それぞれ第2の入力ポートに結合され、初期設定値を記
    憶する第1の初期設定レジスタおよび第2の初期設定レ
    ジスタと、 初期設定レジスタおよびコマンド制御回路に結合され、
    コマンド制御回路に応答して初期設定レジスタのうちの
    選択した初期設定レジスタから初期設定値を送信するセ
    レクタ回路と、 それぞれ加重レジスタおよびセレクタ回路に結合され、
    選択した初期設定値および重み値を用いて計算を実施す
    る複数の乗算器と、 それぞれ乗算器のうちの1つの乗算器に結合され、結合
    された乗算器の結果を用いて計算を実施する複数の加算
    器と、 それぞれ加算器のうちの1つの加算器に結合され、結合
    された加算器の結果を記憶する複数の結果レジスタと、 コマンド制御回路に結合され、それぞれコマンド制御回
    路に応答して、加算器の結果を送信し、他のPEの結果
    を受信する複数の双方向スイッチと、 コマンド制御回路、複数の結果レジスタおよび双方向ス
    イッチに結合され、加算器の結果を結果レジスタのうち
    の選択した結果レジスタから双方向スイッチのうちの選
    択した双方向スイッチに送信し、コマンド制御回路によ
    って発行されたコマンドに応答して、前記他のPEの結
    果を双方向スイッチのうちの選択した双方向スイッチか
    ら送信する制御スイッチと、 それぞれ双方向スイッチのうちの1つの双方向スイッチ
    に結合され、加算器の結果を出力し、かつそれぞれ別個
    のPEに結合され、前記他のPEの結果を結合された双
    方向スイッチに送信する複数のインターフェース・ポー
    トと、 それぞれ制御スイッチおよび加算器のうちの1つの加算
    器に結合され、制御スイッチによって送信された前記他
    のPEの結果を記憶し、加算器が結合された乗算器の結
    果を用いて前記計算を実施するように、前記他のPEの
    結果を結合された加算器に送信する複数の受信レジスタ
    とを含むデュアル処理要素。
  6. 【請求項6】コマンド制御回路が、前記加算器の結果を
    結果レジスタのうちの選択した結果レジスタからインタ
    ーフェース・ポートのうちの選択したインターフェース
    ・ポートに同時に送信し、前記他のPEの結果を選択し
    た他のデータ・ポートにおいて受信し、それらを受信レ
    ジスタのうちの選択した受信レジスタに送信するように
    制御スイッチおよび双方向スイッチを活動化させる手段
    を含むことを特徴とする、請求項5に記載のデュアル処
    理要素。
  7. 【請求項7】PEに送信された命令および基本データを
    受信する入力ポートと、 入力ポートに結合され、命令に応答してコマンドを発行
    するコマンド制御回路と、 入力ポートに結合され、基本データを用いて計算を実施
    する手段を含む計算回路と、 コマンド制御回路に結合され、複数のデータ・ポートを
    含み、データ・ポートのうちの選択したデータ・ポート
    をデータ・ポートのうちの選択した他のデータ・ポート
    に接続し、コマンド制御回路からのコマンドに応答し
    て、データをデータ・ポートのうちの選択したデータ・
    ポートからデータ・ポートのうちの選択した他のデータ
    ・ポートに送信する制御スイッチ回路と、 それぞれPEデータを対応する別個のPEに出力し、結
    合されたPEデータを前記対応する別個のPEから受信
    する複数のインターフェース・ポートと、 それぞれデータ・ポートのうちの1つのデータ・ポー
    ト、コマンド制御回路およびインターフェース・ポート
    のうちの1つのインターフェース・ポートに結合され、
    コマンド制御回路からのコマンドに応答して、PEデー
    タをデータ・ポートのうちの結合されたデータ・ポート
    からインターフェース・ポートのうちの結合されたイン
    ターフェース・ポートに選択的に送信し、結合されたP
    Eデータをインターフェース・ポートのうちの前記結合
    されたインターフェース・ポートからデータ・ポートの
    うちの前記結合されたデータ・ポートに選択的に送信す
    る複数の双方向スイッチとを含む処理要素(PE)。
  8. 【請求項8】計算回路が、 基本データを用いた計算の結果および前記対応する別個
    のPEの計算結果を用いて計算を実施する手段と、 基本データを用いた計算の結果を用いた計算の結果およ
    び前記対応する別個のPEの計算結果をスイッチ回路に
    送信する手段とをさらに含むことを特徴とする、請求項
    7に記載のPE。
  9. 【請求項9】スイッチ回路が、 コマンド制御回路によって発行されたコマンドに応答し
    て、PE計算結果を選択した送信データ・パスを介して
    出力し、前記対応する別個のPEの計算結果を選択した
    受信データ・パスを介して同時に受信する手段をさらに
    含むことを特徴とする、請求項8に記載のPE。
  10. 【請求項10】それぞれ入力ポートおよび計算回路に結
    合され、基本データを記憶する複数の基本データ・レジ
    スタと、 それぞれスイッチ回路および計算回路に結合され、その
    うちの第1の結果レジスタが送信データ・パスを介して
    出力すべきPE計算結果を記憶し、そのうちの第2の結
    果レジスタが計算回路に送信すべき前記対応する別個の
    PEの計算結果を記憶する複数の結果レジスタとをさら
    に含むことを特徴とする、請求項9に記載のPE。
  11. 【請求項11】基本データが 重み値および第1の初期設定値を有し、 入力ポートが コマンド制御回路に結合され、命令を基本データ・レジ
    スタのうちの第1の基本データ・レジスタに送信して重
    み値を送信する第1のデータ・パスと、 基本データ・レジスタのうちの第2の基本データ・レジ
    スタに結合され、第1の初期設定値を送信する第2のデ
    ータ・パスとを含むことを特徴とする、請求項10に記
    載のPE。
  12. 【請求項12】PEに送信された命令および第1のタイ
    プのデータを受信する第1の入力ポートと、 第1の入力ポートに結合され、命令に応答してコマンド
    を発行するコマンド制御回路と、 第1の入力ポートに結合され、第1のタイプのデータを
    記憶する第1のレジスタと、 PEに送信された第2のタイプのデータを受信する第2
    の入力ポートと、 第2の入力ポートに結合され、第2のタイプのデータを
    記憶する第2のレジスタと、 第1のレジスタおよび第2のレジスタに結合され、第1
    のタイプのデータおよび第2のタイプのデータを用いて
    計算を実施する第1の計算回路と、 PEに送信された第3のタイプのデータを記憶する受信
    レジスタと、 第1の計算回路および受信レジスタに結合され、第1の
    タイプのデータおよび第2のタイプのデータを用いた計
    算の結果および第3のタイプのデータを用いて計算を実
    施する第2の計算回路と、 第2の計算回路に結合され、第2の計算回路の計算の結
    果を記憶する結果レジスタと、 それぞれ受信データ・パスおよび送信データ・パスを有
    し、それぞれコマンド制御回路に結合され、コマンド制
    御回路によって発行されたコマンドに応答して、受信デ
    ータ・パスおよび送信データ・パスを選択的に開閉する
    2つの双方向スイッチと、 コマンド制御回路、計算レジスタおよび受信レジスタ、
    および双方向スイッチに結合され、コマンド制御回路に
    よって発行されたコマンドに応答して、結果レジスタお
    よび受信レジスタと2つの双方向スイッチとの間のデー
    タの流れを制御する制御スイッチと、 それぞれ2つの双方向スイッチのうちの一方の双方向ス
    イッチに結合され、送信パスを介して制御スイッチから
    送信されたデータを出力し、受信パスを介して制御スイ
    ッチに送信すべき第3のタイプのデータを受信する2つ
    のインターフェース・ポートとを含む処理要素(P
    E)。
  13. 【請求項13】コマンド制御回路が、命令に応答してコ
    マンドを発行して、制御スイッチが、双方向スイッチの
    うちの一方の双方向スイッチの送信データ・パスを介し
    てデータを送信し、他方の双方向スイッチの受信データ
    ・パスを介してデータを受信するように動作するように
    制御スイッチおよび双方向スイッチを選択的に活動化さ
    せる手段を含むことを特徴とする、請求項12に記載の
    処理要素。
  14. 【請求項14】PEに送信された第1のタイプのデータ
    および第2のタイプのデータを受信する第1の入力ポー
    トと、 第1の入力ポートに結合され、第1のタイプのデータに
    応答してコマンドを発行するコマンド制御回路と、 第1の入力ポートに結合され、第2のタイプのデータを
    記憶する第1のレジスタと、 PEに送信された第3のタイプのデータを受信する第2
    の入力ポートと、 コマンド制御回路に結合され、複数のデータ・ポートを
    含み、データ・ポートのうちの選択したデータ・ポート
    をデータ・ポートのうちの選択した他のデータ・ポート
    に接続し、コマンド制御回路からのコマンドに応答し
    て、データをデータ・ポートのうちの選択したデータ・
    ポートからデータ・ポートのうちの選択した他のデータ
    ・ポートに送信する制御スイッチと、 それぞれ別個のPEに結合され、PEデータを結合され
    たPEに出力し、それぞれ前記結合されたPEから結合
    されたPEデータを受信する複数のインターフェース・
    ポートと、 それぞれデータ・ポートのうちの1つのデータ・ポー
    ト、コマンド制御回路およびインターフェース・ポート
    のうちの1つのインターフェース・ポートに結合され、
    コマンド制御回路からのコマンドに応答して、PEデー
    タをデータ・ポートのうちの結合されたデータ・ポート
    からインターフェース・ポートのうちの結合されたイン
    ターフェース・ポートに選択的に送信し、結合されたP
    Eデータをインターフェース・ポートのうちの前記結合
    されたインターフェース・ポートからデータ・ポートの
    うちの前記結合されたデータ・ポートに選択的に送信す
    る複数の双方向スイッチと、 複数のデータ・ポート、第1のレジスタおよび第2の入
    力ポートの一部を介して制御スイッチに結合され、 制御スイッチを介して送信された選択した結合されたP
    Eデータを累積的に合計し、累積和をシフトする結果レ
    ジスタ手段と、 第3のタイプのデータを記憶する第2のレジスタと、 シフトされた累積和と第3のタイプのデータとの差を第
    2のタイプのデータと比較する比較手段と、 比較手段の出力に基づいて制御スイッチに論理値を送信
    する手段とを含む第1の実行回路とを含む処理要素(P
    E)。
JP5050603A 1992-04-06 1993-03-11 大規模並列コンピューティング・システム装置 Expired - Lifetime JP2647327B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US86411292A 1992-04-06 1992-04-06
US864112 1992-04-06

Publications (2)

Publication Number Publication Date
JPH0675986A JPH0675986A (ja) 1994-03-18
JP2647327B2 true JP2647327B2 (ja) 1997-08-27

Family

ID=25342557

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5050603A Expired - Lifetime JP2647327B2 (ja) 1992-04-06 1993-03-11 大規模並列コンピューティング・システム装置

Country Status (3)

Country Link
US (2) US5612908A (ja)
EP (1) EP0564847A3 (ja)
JP (1) JP2647327B2 (ja)

Families Citing this family (70)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7266725B2 (en) 2001-09-03 2007-09-04 Pact Xpp Technologies Ag Method for debugging reconfigurable architectures
DE19651075A1 (de) 1996-12-09 1998-06-10 Pact Inf Tech Gmbh Einheit zur Verarbeitung von numerischen und logischen Operationen, zum Einsatz in Prozessoren (CPU's), Mehrrechnersystemen, Datenflußprozessoren (DFP's), digitalen Signal Prozessoren (DSP's) oder dergleichen
DE19654595A1 (de) 1996-12-20 1998-07-02 Pact Inf Tech Gmbh I0- und Speicherbussystem für DFPs sowie Bausteinen mit zwei- oder mehrdimensionaler programmierbaren Zellstrukturen
JP3961028B2 (ja) 1996-12-27 2007-08-15 ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト データフロープロセッサ(dfp)の自動的なダイナミックアンロード方法並びに2次元または3次元のプログラミング可能なセルストラクチャを有するモジュール(fpga,dpga等)
US6542998B1 (en) 1997-02-08 2003-04-01 Pact Gmbh Method of self-synchronization of configurable elements of a programmable module
US6023753A (en) * 1997-06-30 2000-02-08 Billion Of Operations Per Second, Inc. Manifold array processor
US9092595B2 (en) 1997-10-08 2015-07-28 Pact Xpp Technologies Ag Multiprocessor having associated RAM units
US8686549B2 (en) 2001-09-03 2014-04-01 Martin Vorbach Reconfigurable elements
US6167502A (en) * 1997-10-10 2000-12-26 Billions Of Operations Per Second, Inc. Method and apparatus for manifold array processing
DE19861088A1 (de) 1997-12-22 2000-02-10 Pact Inf Tech Gmbh Verfahren zur Reparatur von integrierten Schaltkreisen
US6167501A (en) * 1998-06-05 2000-12-26 Billions Of Operations Per Second, Inc. Methods and apparatus for manarray PE-PE switch control
DE69927239T2 (de) 1998-09-15 2006-07-13 Phase One A/S System und verfahren zur verarbeitung von bildern
US7003660B2 (en) 2000-06-13 2006-02-21 Pact Xpp Technologies Ag Pipeline configuration unit protocols and communication
DE10081643D2 (de) 1999-06-10 2002-05-29 Pact Inf Tech Gmbh Sequenz-Partitionierung auf Zellstrukturen
US7023576B1 (en) * 2000-05-09 2006-04-04 Phase One A/S Method and an apparatus for elimination of color Moiré
US6728862B1 (en) 2000-05-22 2004-04-27 Gazelle Technology Corporation Processor array and parallel data processing methods
US8058899B2 (en) 2000-10-06 2011-11-15 Martin Vorbach Logic cell array and bus system
US6718428B2 (en) * 2000-12-18 2004-04-06 Sun Microsystems, Inc. Storage array interconnection fabric using a torus topology
US7401161B2 (en) * 2000-12-18 2008-07-15 Sun Microsystems, Inc. High performance storage array interconnection fabric using multiple independent paths
US7072976B2 (en) * 2001-01-04 2006-07-04 Sun Microsystems, Inc. Scalable routing scheme for a multi-path interconnection fabric
US9552047B2 (en) 2001-03-05 2017-01-24 Pact Xpp Technologies Ag Multiprocessor having runtime adjustable clock and clock dependent power supply
US9436631B2 (en) 2001-03-05 2016-09-06 Pact Xpp Technologies Ag Chip including memory element storing higher level memory data on a page by page basis
US7844796B2 (en) 2001-03-05 2010-11-30 Martin Vorbach Data processing device and method
US9141390B2 (en) 2001-03-05 2015-09-22 Pact Xpp Technologies Ag Method of processing data with an array of data processors according to application ID
US9037807B2 (en) 2001-03-05 2015-05-19 Pact Xpp Technologies Ag Processor arrangement on a chip including data processing, memory, and interface elements
US7444531B2 (en) 2001-03-05 2008-10-28 Pact Xpp Technologies Ag Methods and devices for treating and processing data
US9250908B2 (en) 2001-03-05 2016-02-02 Pact Xpp Technologies Ag Multi-processor bus and cache interconnection system
US10031733B2 (en) 2001-06-20 2018-07-24 Scientia Sol Mentis Ag Method for processing data
US7996827B2 (en) 2001-08-16 2011-08-09 Martin Vorbach Method for the translation of programs for reconfigurable architectures
US7434191B2 (en) 2001-09-03 2008-10-07 Pact Xpp Technologies Ag Router
US8686475B2 (en) * 2001-09-19 2014-04-01 Pact Xpp Technologies Ag Reconfigurable elements
JP4143302B2 (ja) * 2002-01-15 2008-09-03 キヤノン株式会社 画像処理装置、画像処理方法、制御プログラム及び記録媒体
EP1483682A2 (de) 2002-01-19 2004-12-08 PACT XPP Technologies AG Reconfigurierbarer prozessor
EP1514193B1 (de) 2002-02-18 2008-07-23 PACT XPP Technologies AG Bussysteme und rekonfigurationsverfahren
US8914590B2 (en) 2002-08-07 2014-12-16 Pact Xpp Technologies Ag Data processing method and device
US9170812B2 (en) 2002-03-21 2015-10-27 Pact Xpp Technologies Ag Data processing system having integrated pipelined array data processor
US7657861B2 (en) 2002-08-07 2010-02-02 Pact Xpp Technologies Ag Method and device for processing data
WO2004021176A2 (de) 2002-08-07 2004-03-11 Pact Xpp Technologies Ag Verfahren und vorrichtung zur datenverarbeitung
JP4388895B2 (ja) 2002-09-06 2009-12-24 ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト リコンフィギュアラブルなシーケンサ構造
US7564996B2 (en) * 2003-01-17 2009-07-21 Parimics, Inc. Method and apparatus for image processing
JP2006524850A (ja) * 2003-04-04 2006-11-02 ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト データ処理方法およびデータ処理装置
FI20030845A0 (fi) * 2003-06-05 2003-06-05 Nokia Corp Tiedonkäsittelymenetelmä, vastaanotin ja verkkolaite
US20050027880A1 (en) * 2003-08-01 2005-02-03 Darel Emmot System and method for routing information in a nodal computer network
JP4700611B2 (ja) 2003-08-28 2011-06-15 ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト データ処理装置およびデータ処理方法
US20060215929A1 (en) * 2005-03-23 2006-09-28 David Fresneau Methods and apparatus for image convolution
US8443169B2 (en) * 2005-03-28 2013-05-14 Gerald George Pechanek Interconnection network connecting operation-configurable nodes according to one or more levels of adjacency in multiple dimensions of communication in a multi-processor and a neural processor
US7478222B2 (en) * 2005-03-29 2009-01-13 Karl M. Fant Programmable pipeline array
US8250503B2 (en) * 2006-01-18 2012-08-21 Martin Vorbach Hardware definition method including determining whether to implement a function as hardware or software
US7599861B2 (en) 2006-03-02 2009-10-06 Convergys Customer Management Group, Inc. System and method for closed loop decisionmaking in an automated care system
EP2011018B1 (en) * 2006-04-12 2016-07-13 Soft Machines, Inc. Apparatus and method for processing an instruction matrix specifying parallel and dependent operations
US8379830B1 (en) 2006-05-22 2013-02-19 Convergys Customer Management Delaware Llc System and method for automated customer service with contingent live interaction
US7809663B1 (en) 2006-05-22 2010-10-05 Convergys Cmg Utah, Inc. System and method for supporting the utilization of machine language
WO2009110497A1 (ja) 2008-03-04 2009-09-11 日本電気株式会社 Simd型プロセッサアレイシステム及びそのデータ転送方法
US8755515B1 (en) 2008-09-29 2014-06-17 Wai Wu Parallel signal processing system and method
US8108585B2 (en) * 2009-02-13 2012-01-31 The Regents Of The Universtiy Of Michigan Crossbar circuitry and method of operation of such crossbar circuitry
US8150902B2 (en) 2009-06-19 2012-04-03 Singular Computing Llc Processing with compact arithmetic processing element
US8429107B2 (en) * 2009-11-04 2013-04-23 International Business Machines Corporation System for address-event-representation network simulation
EP2689326B1 (en) 2011-03-25 2022-11-16 Intel Corporation Memory fragments for supporting code block execution by using virtual cores instantiated by partitionable engines
CN105247484B (zh) 2013-03-15 2021-02-23 英特尔公司 利用本地分布式标志体系架构来仿真访客集中式标志体系架构的方法
US10268886B2 (en) 2015-03-11 2019-04-23 Microsoft Technology Licensing, Llc Context-awareness through biased on-device image classifiers
US10055672B2 (en) 2015-03-11 2018-08-21 Microsoft Technology Licensing, Llc Methods and systems for low-energy image classification
US10116557B2 (en) 2015-05-22 2018-10-30 Gray Research LLC Directional two-dimensional router and interconnection network for field programmable gate arrays, and other circuits and applications of the router and network
EP3400688B1 (en) * 2016-01-04 2020-05-20 Gray Research LLC Massively parallel computer, accelerated computing clusters, and two dimensional router and interconnection network for field programmable gate arrays, and applications
US10241972B2 (en) * 2017-03-16 2019-03-26 International Business Machines Corporation Matrix multiplication on a systolic array
US10587534B2 (en) 2017-04-04 2020-03-10 Gray Research LLC Composing cores and FPGAS at massive scale with directional, two dimensional routers and interconnection networks
US20220171829A1 (en) 2019-03-11 2022-06-02 Untether Ai Corporation Computational memory
EP3938921A4 (en) 2019-03-11 2022-12-14 Untether AI Corporation CALCULATION MEMORY
WO2021033125A1 (en) * 2019-08-16 2021-02-25 Untether Ai Corporation Computational memory with processing element row and bank communications
US11342944B2 (en) 2019-09-23 2022-05-24 Untether Ai Corporation Computational memory with zero disable and error detection
US11468002B2 (en) 2020-02-28 2022-10-11 Untether Ai Corporation Computational memory with cooperation among rows of processing elements and memory thereof

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4270170A (en) * 1978-05-03 1981-05-26 International Computers Limited Array processor
US4807183A (en) * 1985-09-27 1989-02-21 Carnegie-Mellon University Programmable interconnection chip for computer system functional modules
US4972361A (en) * 1988-05-13 1990-11-20 Massachusetts Institute Of Technology Folded linear systolic array
GB2219106B (en) * 1988-05-26 1992-04-15 Secr Defence Processor for constrained least squares computations
US5025407A (en) * 1989-07-28 1991-06-18 Texas Instruments Incorporated Graphics floating point coprocessor having matrix capabilities
US5138695A (en) * 1989-10-10 1992-08-11 Hnc, Inc. Systolic array image processing system
US5297289A (en) * 1989-10-31 1994-03-22 Rockwell International Corporation System which cooperatively uses a systolic array processor and auxiliary processor for pixel signal enhancement
US5170370A (en) * 1989-11-17 1992-12-08 Cray Research, Inc. Vector bit-matrix multiply functional unit
US5247613A (en) * 1990-05-08 1993-09-21 Thinking Machines Corporation Massively parallel processor including transpose arrangement for serially transmitting bits of data words stored in parallel
EP0486635A1 (en) * 1990-05-22 1992-05-27 International Business Machines Corporation Scalable flow virtual learning neurocomputer
US5148515A (en) * 1990-05-22 1992-09-15 International Business Machines Corp. Scalable neural array processor and method
US5274832A (en) * 1990-10-04 1993-12-28 National Semiconductor Corporation Systolic array for multidimensional matrix computations
US5204830A (en) * 1992-02-13 1993-04-20 Industrial Technology Research Institute Fast pipelined matrix multiplier

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
IEEE TRANSACTIONS ON NEURAL NETWORKS,VOL.3,NO.6,NOVEMBER 1992P.934−950
PROCEEDINGS.INTERNATIONAL CONFERENCE ON APPLICATION−SPECIFIC ARRAY PROCESSORS 1993 P.140−3

Also Published As

Publication number Publication date
JPH0675986A (ja) 1994-03-18
US6405185B1 (en) 2002-06-11
EP0564847A2 (en) 1993-10-13
EP0564847A3 (en) 1994-07-20
US5612908A (en) 1997-03-18

Similar Documents

Publication Publication Date Title
JP2647327B2 (ja) 大規模並列コンピューティング・システム装置
US6041398A (en) Massively parallel multiple-folded clustered processor mesh array
US5577262A (en) Parallel array processor interconnections
US5617577A (en) Advanced parallel array processor I/O connection
KR20010014381A (ko) 메니폴드 어레이 프로세서
EP0334943B1 (en) Enhanced input/ouput architecture for toroidally-connected distributed-memory parallel computers
US4493048A (en) Systolic array apparatuses for matrix computations
Feng A survey of interconnection networks
US5630162A (en) Array processor dotted communication network based on H-DOTs
US5247613A (en) Massively parallel processor including transpose arrangement for serially transmitting bits of data words stored in parallel
EP0570729A2 (en) Apap I/O programmable router
JPH0922404A (ja) 同報通信プロセッサ命令を備えたアレイ・プロセッサ通信アーキテクチャ
EP1384158B1 (en) An apparatus for controlling access in a data processor
KR100280854B1 (ko) 데이타 처리 장치 및 데이타 처리 방법
US20040133750A1 (en) Apparatus for controlling access in a data processor
JPH0619862A (ja) スケーラブル超並列グループ分割対角線折畳みスイッチング・ツリー型コンピューティング装置
JP2525117B2 (ja) アレイ・プロセッサ
JPH0675930A (ja) 並列プロセッサシステム
JP2549241B2 (ja) コンピュータ・システム
WO2022001454A1 (zh) 集成计算装置、集成电路芯片、板卡和计算方法
Pechanek et al. A massively parallel diagonal-fold array processor
Jain Parallel Processing With the TMS320C40 Parallel Digital Signal Processor
Andriessen Supermatrix, an interconnection network
Wilkinson Comparative performance of overlapping connectivity multiprocessor interconnection networks
JPH05324584A (ja) ハイパーキューブの割当方法