JP2009059346A - 複数のマルチモードプロセッサに接続するための方法および装置 - Google Patents

複数のマルチモードプロセッサに接続するための方法および装置 Download PDF

Info

Publication number
JP2009059346A
JP2009059346A JP2008139702A JP2008139702A JP2009059346A JP 2009059346 A JP2009059346 A JP 2009059346A JP 2008139702 A JP2008139702 A JP 2008139702A JP 2008139702 A JP2008139702 A JP 2008139702A JP 2009059346 A JP2009059346 A JP 2009059346A
Authority
JP
Japan
Prior art keywords
processor
mode
processors
array
routing
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
Application number
JP2008139702A
Other languages
English (en)
Inventor
Lonnie C Goff
シー.ゴフ ロニー
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.)
VNS Portfolio LLC
Original Assignee
VNS Portfolio LLC
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 VNS Portfolio LLC filed Critical VNS Portfolio LLC
Publication of JP2009059346A publication Critical patent/JP2009059346A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations 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/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17337Direct connection machines, e.g. completely connected computers, point to point communication networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations 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/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17356Indirect interconnection networks
    • G06F15/17368Indirect interconnection networks non hierarchical topologies
    • G06F15/17381Two dimensional, e.g. mesh, torus
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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

Landscapes

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

Abstract

【課題】複数のマルチモードプロセッサに接続するための方法および装置を提供する。
【解決手段】各プロセッサが個別のメモリを有するプロセッサ(101−124)のフィールドを含むコンピュータアレイ(100)。それらのプロセッサ(101−124)は、リンク(200)を用いてそれらに直接隣接するプロセッサに接続される。いくつかのリンクの配置は、プロセッサ間(101−124)のデータ回線(210)および制御回線(215)の異なる様式を含んで説明される。PCW(Process Command Words)は、回線(215)に沿って転送されて処理のタスクを開始する。RCW(Routing Connection Words)は、回線(215)に沿って転送されて経路指定のタスクを開始する。これにより、アレイのハイブリッドプロセッサ(107−118)のモード動作を変更する方法を提供する。
【選択図】図1

Description

本発明は、コンピュータおよびコンピュータプロセッサの分野に関し、より詳細には、コンピュータを互いに接続するための方法および装置に関する。
複数のプロセッサまたはコンピュータを使用して演算を高速化することは、コンピュータの多数の情報処理アプリケーションにおいて効果的である。タスクを分配し、複数の処理とコンピュータ演算を同時に並行して行うことは、多数のシステムと構造を用いてそれらを行う公知の技術である。一例として、シストリックアレイの処理では、大規模の情報ストリームは、列による逐次計算を行い、その結果を次の列に渡すプロセッサの行の中で分配される。他の例は、スーパーコンピュータの分野で見られ、そこでは複数のプロセッサを相互接続することができ、いくつかの異なる方法でそれらに割り当てられたタスク、プロセッサと新しいデータとの間の中間結果の通信、およびそれらの命令は、クロスバースイッチ、ルータ付きまたはルータ無しのバス相互接続のネットワーク、大型コンピュータに使用されるMPICH等のメッセージを受け渡すプロトコルを有するプロセッサ間の直接相互接続を介して提供できる。
半導体技術における継続的な進歩のおかげで、情報量と処理速度が向上した回路を、マイクロチップの領域に設置できる。家庭用および業務用電気製品にある埋め込み式システムとして新しい機能および最適化を提供する単一チップのマイクロプロセッサアレイおよびマイクロコアプロセッサは、非常に高速で計算を行うことにより、大きな経済利益を生む改善例である。従って、複数のプロセッサおよびそれらの相互接続のさらなる改良は、特に単一マイクロチップにおいてきわめて望ましい。
本発明の一態様では、複数のプロセッサを備えたコンピュータアレイを提供する。各プロセッサは、各リンクが2つのプロセッサのみに接続されているリンクによって、少なくとも2つの隣接プロセッサに接続され、前記複数のプロセッサは、前記リンクの命令を受信すると待機モードとアクティブモードとの間で切り替えが可能である。
一実施形態では、リンクは、少なくとも1つのデータ回線および好ましくは複数のデータ回線を備える。一実施形態では、そのリンクは、少なくとも1つの制御回線および好ましくは複数の制御回線も備える。それらの制御回線は、一方向性とすることができる。
コンピュータアレイの一実施形態では、前記アレイの端部の複数のプロセッサは、3つの隣接プロセッサに接続している3つのリンクを有し、前記アレイの各角の前記4つのプロセッサは、前記アレイの端部の前記2つのプロセッサに接続している2つの付随リンクを有し、前記アレイの端部でも角でもないプロセッサに接続された前記端部のプロセッサの前記リンクが1つのハイブリッドプロセッサに接続されている、4つのプロセッサにつながる4つリンクによって接続された複数のハイブリッドプロセッサを有する。前記アレイの角の複数のプロセッサは、メモリ、入力装置、ディスプレイ装置、および処理装置のグループから選択された外部装置に接続するように適用できる。前記アレイの端部の複数のプロセッサは、メモリ、入力装置、ディスプレイ装置、および処理装置のグループから選択された外部装置に接続するように適用できる。
一実施形態では、前記ハイブリッドプロセッサは、それらに接続されたリンクから命令を受信すると経路指定モード、処理モード、および待機モードの間で切り替えができる。その実施形態では、前記各リンクは、データ回線および制御回線を備えることができ、前記命令は、前記データ回線上を通るデジタルワードである。前記デジタルワードを経路指定ワードにして、前記プロセッサに経路指定モードに切り替えさせることができる。前記デジタルワードを処理ワードにして、前記プロセッサに処理モードに切り替えさせることができる。
本発明のもう一つの態様では、前記プロセッサを2つの直接隣接したプロセッサに接続する少なくとも2つのリンクに接続するように適用された中央処理装置と、前記リンクのいずれかの命令により、前記中央処理装置を待機モードからアクティブモードにシフトさせる前記中央処理装置に接続されたメモリ装置を備えたコンピュータアレイで使用するプロセッサを提供する。
前記中央処理装置を、4つの直接隣接したプロセッサに接続する全部で4つのリンクに対して、前記プロセッサを2つの付加的な直接隣接したプロセッサに接続する少なくとも2つの付加的なリンクに接続するようにさらに適用できる。それらのメモリ装置は、ROMメモリおよびRAMメモリを備えることができる。一実施形態では、前記各リンクは、データ回線および制御回線をさらに備え、前記命令は、前記データ回線上を通るデジタルワードである。それらの制御回線を、一方向性にできる。
コンピュータアレイで使用するプロセッサの一実施形態では、前記中央処理装置は、3つのモードである電力を節約するための待機モードである第一モードと、経路指定タスクを行うための経路指定モードである第二モードと、処理タスクを行うための処理モードである第三モードを有し、前記リンクのうちの1つから命令を受信すると前記処理装置のモードの切り替えが起きる。
前記中央処理装置は、経路指定接続ワードを受信すると待機モードから経路指定モードにシフトし、経路指定タスクが終了するまで経路指定モードの状態のままであり、その後で待機モードに戻る。
前記中央処理装置は、処理コマンドワードを受信すると待機モードから処理モードにシフトし、処理のタスクが終了するまで処理モードの状態のままであり、その後で待機モードに戻る。
本発明のさらなる態様では、前記アレイの一部のプロセッサを、少なくとも待機モードとタスクを実行する別のモードを有するマルチモードプロセッサとして指定するステップと、コマンドワードを受信すると前記指定されたプロセッサが前記他のモードに切り替わるステップと、前記コマンドワードを受信するとタスクを実行するステップと、前記タスクが終了すると再び待機モードに切り替わるステップを備えたマルチプロセッサアレイを操作する方法を提供する。それらの方法は、経路指定ワードまたは処理コマンドワードを受信すると前記指定されたプロセッサが経路指定モードまたは処理モードに切り替わるステップと、前記受信のあとで経路指定タスクまたは処理タスクを実行するステップと、前記経路指定タスクまたは処理タスクが終了すると待機モードに戻るステップをさらに備えることができる。
本発明のマルチプロセッサアレイおよび方法は、マルチプロセッサアレイが、特にオペレーティングシステムのプログラム命令の実質的な大部分を占めるローカルメモリを有する複数のフォンノイマン型計算機として動作するように適用されている大型のアプリケーションで使用することができる。
本発明は、各コンピュータアレイがプロセッサの領域を含み、各プロセッサが別個のメモリを含むいくつかのコンピュータアレイを含むことができる。それらのプロセッサは、リンクを用いて直接隣接するプロセッサに接続される。本発明の実施形態では、異なるタイプのデータ回線および制御回線を含むいくつかのリンクの構成が使用される。PCW(Process Command Words)およびRCW(Routing Connection Words)が、プロセッサ間のそれらのリンクを通って、アレイの中の少なくとも1または複数のプロセッサのモードを変更する方法を提供する。
これらの方法の利用により、電力消費を最小限にすると同時に演算資源のより効果的な配分を確実にする。これらの方法により、演算資源の効果的な配分と外部メモリ、周辺機器等のアレイの外部からの資源に接続することがさらに可能である。
本発明を適用して単一マイクロチップ上で複数のコンピュータの組み合わせを用いて直接実行することができる。ここでの演算効率は、演算スピードを増加させる要望のためだけでなく、結果として大幅に効率が上がる節電と発熱を削減するためにも重要である。
図1に、一つのマイクロチップに載せることができる4×6のアレイに配置された24個のプロセッサ101−124を備えるマルチプロセッサアレイ100を示す。プロセッサの他の数および他の配置が、発明の範囲内で選択的に可能であることは、当業者には明らかである。具体例では、各プロセッサは、18ビットのワードサイズ、512ワードのRAMおよび512ワードのROMを含むローカルメモリを有することも可能である。これらのパラメータは、発明に制限を与えるものでなく、演算は、その装置の作動が十分可能なメモリの量で動作できる。具体的な目的のために記載されたこの特殊なプロセッサは、32−命令RISC第4版のコンピュータ言語のみを機械語として用いる。本発明では、適応するプロセッサを用いて2進数形式にコンパイル化されたC言語を含む任意の適応する機械語を用いて実施できることがわかる。図1に示すように、101、102、103−124の各プロセッサは、リンク200を相互接続することによってそれぞれが最も近接するプロセッサに接続される。アレイの中央のプロセッサ108−111および114−117は、4つの相互接続リンク200を有する。
角のプロセッサ101、106、119、および124は、2つのみの相互接続リンク200を有する。この具体例では、角のプロセッサ101および106は、入力/出力ポート131と132のそれぞれに接続された西側のポートを有する。アレイに接続された外部入力/出力(i/o)接続131および132は、外部装置133および134と通信を行う汎用のためのものである。外部入力および外部出力は、データおよびある命令のためのものである。以下でさらに説明するように、これらの命令およびデータは、アレイのプロセッサによって共有され、一般的にプロセッサの個別の制御によって動作する。101および106以外のアレイのプロセッサは、中間のプロセッサおよびそれらの相互接続リンク200を介して情報を経路指定することにより通信を行う。外部装置133および134ならびにアレイの他のプロセッサ間の情報の配信は、プロセッサ101および106の主要なタスクである。従ってプロセッサ101および106は、サーバプロセッサと見なされる。ポート131および132は、センサ、外部メモリ装置、ディスプレイ装置、入力装置、または典型的にプロセッサに接続される任意の装置から選択できる外部装置133および134に接続できる。このような発明の実施形態では、前記入力/出力接続は、プロセッサ101から外部メモリ装置133までのポート220へつなぐ制御回線、データ回線、およびアドレス回線と、公知の標準に従い実装される。また、当該技術分野で周知のように、プロセッサ106を外部のSPI(serial peripheral interface)装置134に接続するポート132を介したイネーブル回線、クロック回線、データイン回線、およびデータアウト回線によって実施できる。代わりの実施形態において、サーバプロセッサと同数で提供される外部入力/出力(i/o)装置および接続が1または2以上あり得ることは、当業者には明らかである。外部装置133、134は、マルチプロセッサアレイとして同じマイクロチップ上に配置でき、それらはメモリ装置とデータ通信のインタフェース装置の任意の組み合わせを選択的に備えることができる。さらなる実施形態では、1以上のマルチプロセッサアレイ、および用途に応じて必要とする任意の付加的な回路は、1つのマイクロチップ上に配置できる。
端部の102−105、107、112、113、118、および120−123の各プロセッサは、3つの接続リンク200を有する。マルチプロセッサアレイ100は、主にアレイの周辺にあるこれらのプロセッサを用いて、特に現行のアプリケーションの情報処理要求が低い場合には、プロセッサ102−105および119−124を用いて計算を行うために適用される。プロセッサ102−105および119−124を、クライアントプロセッサと呼ぶこともできる。他の用途では、プロセッサ102−105および119−124は、適応するポート(図示せず)を用いてアナログ・デジタル変換機、高速フーリエ変換、およびデジタル・アナログ変換を含むアクティブポートとして機能することによって入力/出力プロセッサとしても作動できる。
アレイの内側の2つのカラムであるプロセッサ107−118は、本明細書ではRモードと呼ばれる、任意の時点でアレイの別のプロセッサへの経路指定情報であるか、本明細書ではPモードと呼ばれる、計算および情報処理タスクを行うか、または本明細書ではIモードと呼ばれる、待機状態であるハイブリッドプロセッサに適用される。Iモードは、演算電力を低減させるデフォルト条件であり、ハイブリッドプロセッサは、演算または他の2つのモードにおける一連の演算の終了後、自動的にIモードに戻る。それは節電機能であり、特にバッテリ電源式システムの用途において有効である。情報処理要求が低い状態では、ハイブリッドプロセッサ107−118は、一般的にIモードであり、入力および出力動作がクライアントプロセッサ102−105および119−124によって要求された場合、適宜Rモードに切り替わる。ハイブリッドプロセッサ107−118は、相互接続リンクの任意の1つである複数のデータ回線200上でRCW(Routing Connection Word)のアサーションに応じてRモードに切り替わるように適用される。周知の技術を使用して、各クライアントプロセッサおよびサーバプロセッサの往復の経路指定パスは、アレイの作成中または後のアレイの再構成の間のコンパイル時間に、メモリに格納されたファームウェアで、あらかじめ決められている。
図2に、プロセッサ103と104との間のより詳細なリンク200を示し、各リンク200は、複数の相互接続回線であり、当該技術分野において時々ワンドロップ・バスネットと呼ばれる。この例で、各リンク200は、18本のデータ回線210および2本の制御回線215を複数含み、双方向および非同期的に動作するように適用される。ハイブリッドプロセッサ107−118は、それぞれの制御回線215で対応する信号に従属した他のプロセッサを有する相互接続リンクの任意の1つである複数のデータ回線210上でRCW(Routing Connection Word)のアサーションに応じてRモードに切り替わるように適用される。第2の実施形態に従って、複数の200は、同期的および一方向に動作するように適用された36本のデータ回線および4本のデータ回線を備えることができ、それらの回線の半分は一方向であり、もう半分は逆方向である。発明の他の実施形態ではさらに、ワードサイズ、メモリサイズ、コンピュータ言語、および相互接続回線の数を含む様々な共通のプロセッサの特性を使用できる。本明細書の回線は、マルチレイヤマイクロチップと同じおよび異なる階層に配置することができるバイアスと電気的な直列を交互に用いた1または複数の導電性材料片を備えるマイクロチップの表面にある電気的に導電性の線であると考えられる。前記プロセッサおよびリンクを、半導体集積回路以外の技術において、例えば集積光学または、分子および科学の情報処理装置を、当該技術に従って作成された適応する改良を用いて選択的に実施できることが本発明に従ってさらに予想される。
図3に、アレイ100のあらかじめ決められた経路の1セットを、クライアントプロセッサ102―105および119−124からサーバプロセッサ101および106までの書き込み命令の方向を示した白抜き矢印250および黒矢印252によって示す。読み取り命令の場合、経路指定パスは、最初はコマンドを渡すための所定の方向になり、次にその情報を戻すために逆方向になる。特殊な例として、プロセッサ105による書き込み操作に対する、入力/出力接続220およびサーバ101上のメモリ装置320までの経路指定パスは、情報伝送の間Rモードで動作するハイブリッドプロセッサ111、117、116、115、114、113および107を介して進むようにあらかじめ決めることができ、この経路は、黒矢印252によって示される。
図4に、各行が、最も左の列で標示または指定されたように、RCWの代表を示すために用いられたRCWのフォーマットを示す。プロセッサワードのビット位置は、図4の行の最上位にあり、ビットで表されたRCWの情報フィールドは、2番目の行に記されている。各ビット位置は、周知の技術として図2を参照して上記に説明された第一の実施形態で、特定の双方向および非同期的に動作する複数の210のデータ回線に対応し、第2の実施形態で、特定のペアである同期的および一方向に動作する複数の210のデータ回線に対応する。特に最下位の8つのビット(ビット位置0から7)は、経路指定される情報のCW(word count)を含む。最上位のビット(ビット17)は、情報伝送の方向を特定する読み取りまたは書き込み指示子RWであり、例えば外部装置への読み取り動作に対して1および書き込み動作に対して0である。ビット15および16は、SA(server address)を保持し、本実施例ではサーバプロセッサ101または106を識別する00または01にできる。ビット8から14は、アプリケーション専用の情報Xを含むことができ、図4の3番目の行および続く行を参照して以下でより詳細に説明される。RCWを受信するハイブリッドプロセッサ111、117、116、115、114、113および107の中の1つは、相互接続リンクの1つにアサートされたこのRCWを有することにより、RCWのコピーを格納し、SAによって識別されたサーバプロセッサ101および106に対するあらかじめ決められたパスに沿って、それを変更されていない次のプロセッサに渡す。書き込みの場合、経路指定される情報のCWワードは、直ちにRCWの後に続き、読み取りの場合、RCWがサーバプロセッサ101および106ならびに関連した外部装置131および133に到達した後、情報のCWワードは、あらかじめ決められた同じパスに沿って反対方向で戻ることができる。ハイブリッドプロセッサ111、117、116、115、114、113および107は、CWのよって特定された数のワードが経路指定された後、自動的にIモードに戻るように適用される。
フィールドXは、図4の3番目の行に示すような下位フィールドに分割でき、ビット8−12をクライアントプロセッサのアドレスCAに指定し、ビット13および14を切り替え命令AおよびBに指定して、プライベートブロック(ビット値1)かまたはメモリ(ビット値0)の共用領域を特定する。
図5は、マイクロプロセッサアレイ100の外部RAM装置133の図である。メモリのいくつかの区分を特定できる。RCWのアプリケーション専用の情報フィールドXを使用してアレイのクライアントプロセッサによって共用される外部RAM装置133と通信できる。外部RAMは、各クライアントプロセッサに対して2つのプライベートの情報ブロックを有することができ、それらはブロックA、ブロックBと呼ばれ、一般に図中点線の列によって示されるメモリの共用領域420である。ブロックAを読み取り制御のために使用して、情報が読み取られるRAMの一般領域にあるアドレスを特定でき、ブロックBを書き込み制御のために使用して、情報が書き込まれる前記一般領域にあるアドレスを特定できる。特にプライベートブロックは、各クライアントプロセッサのRAMの一般領域への次のアクセスのための開始アドレスを保持し、前記ブロックを、サーバプロセッサによって各アクセスで自動的に増やすことができる。
クライアントプロセッサによって行うことができるいくつかの異なる外部RAM動作に対する標示されたRCW−1からRCW−6までのRCWの例は、各特定のRCWに対して図5のメモリブロックを参照して図4の他の行に示される。上記で説明したようにRWビット17は、読み取り動作に対して1および書き込み動作に対して0とする。本目的のために、外部RAM装置133に接続するサーバプロセッサ101のアドレスSAは、00とすることができ、クライアントプロセッサは、CAアドレス00101を用いてプロセッサ105とすることができる。発明方法は、特殊な実施形態およびプロセッサを参照して本明細書で説明されるが、説明されたRCWの発明の使用が、アドレスおよび経路指定パスに適応する改良を用いて他のプロセッサおよび実施形態にも等しく効果的であることは当業者には明らかである。
経路指定接続ワードRCW−1は、読み取り動作を指定するRWフィールドに1を有し、切り替えフィールドAおよびBの両方に0、CWフィールド(CW=7)に00000111を有し、クライアントプロセッサ105に対するプライベートの読み取り制御ブロックAの最上位のメモリ配置510で特定されるRAMの共用領域にあるアドレスから読み取られる情報の7ワードを呼び出す。それらのアドレスは例えば、図中点線の矢印で示されるようにメモリ配置520を特定する。従ってRCW−1は、クライアントプロセッサ105(に転送されること)によって読み取られる外部RAMの共用領域にある情報の7ワードのブロック525の内容を呼び出す。この動作の後、ブロックAの最上位を配置511に増分させ、RAMの共用領域からのクライアントプロセッサ105による次の読み取り動作は、511で特定されたアドレスによって起きる。
図4のRCW−2は、RWフィールドに1、ブロックの切り替えフィールドAに1、およびCW=1を有し、RCW−2はRCW−1の後に続くと仮定して、ブロックAの最上位、つまり配置511から読み取られる情報の1ワードを呼び出す。これにより、クライアントプロセッサ105に外部RAMの共用領域から次の読み取りのアドレスを伝えることができる。
次の行のRCW−3もRWフィールドに1、ブロックの切り替えフィールドBに1、およびCW=6を有し、配置610から開始するブロックBの最上位から読み取られる情報の6ワードのブロック655を呼び出す。これにより、クライアントプロセッサに共用領域に対する次の6つの書き込み動作のアドレスを伝えることができる。
次の行のRCW−4は、RWフィールドに0、切り替えフィールドAおよびBの両方に0、およびCW=4を有し、書き込まれる(プロセッサ105から転送される)情報の4ワードのブロックの情報を、現行の書き込み制御ブロックBの最上位に位置する配置610で特定されるアドレスから開始する共用のメモリ領域に導く。それらのアドレスは、図5に点線の矢印で示すようにメモリ配置620を特定する。従って620から開始する4つのメモリ配置のブロック625は、クライアントプロセッサ105からの新しい情報で埋められる。
RCW−5もRWフィールドに0、切り替えフィールドAに1、およびCW=255を有し、現行の最上位の配置から開始するプロセッサ105に対する読み取り制御ブロックAに書き込まれる情報の255ワードのブロックを呼び出す。このため、共用領域からの105によって次の255の読み取り動作のアドレスをアップデートするのに効果がある。
RCW−6もRWフィールドに0、切り替えフィールドBに1、およびCW=2を有し、例えばRCW−3によって読み取られる情報に基づいて、共用領域への次の2つの書き込み動作の手順を逆にするために、アップデートされる書き込み制御ブロックBの最上位の2つの配置を呼び出す。
図4のRCW−7に、図1を参照して以上で説明した外部SPI(serial peripheral interface)に対するクライアントプロセッサによる外部出力または外部入力について、アプリケーション専用のフィールドXをどのように使用するかを示す。図4のRCW−7に、RWフィールドに1、SAフィールドに01、SPIに接続するサーバプロセッサのアドレスに対してCAフィールドのクライアントプロセッサ105のアドレス00101、およびCW=128を有し、SPIから105までのデータ等の情報の次の128ワードの入力を呼び出すSPI通信の例を与える。フィールドAおよびBは使用されない。
図6に、全てに0を備えるPCW(Process Command Word)のフォーマットを示す。マルチプロセッサアレイから要求された高速処理により、ハイブリッドプロセッサは、クライアントプロセッサの制御のもと、それらに隣接したクライアントプロセッサから計算負荷の一部を受け取るように適用される。ハイブリッドプロセッサ111、117、116、115、114、113および107の各々は、PCW(Process Command Word)のアサーションに応じてPモードに切り替わるように適用される。PCWは、それらに最も近接するクライアントプロセッサを用いて相互接続リンクのデータ回線210上で受信される。PCWは、それぞれの制御回線215の適切な信号を条件に、所与のハイブリッドプロセッサがIモードの間に受信される。PCWが受信されると、それらのハイブリッドプロセッサは、割り当てられた処理タスクが終了するまでPモードの状態のままであり、その後元のIモードに戻る。その処理タスクは、アプリケーション依存型であり、101および106から選択されたクライアントプロセッサならびに隣接するハイブリッドプロセッサの両方で知られ、それぞれのメモリにタスクの命令を有し、任意のコンテンツを有する任意の情報量を、それらのハイブリッドプロセッサがPモードである間、プロセッサ間で交換することができる。
隣接の、及び最も近接する条件を、プロセッサを機能的にできるが必ずしも物理的に隣接していない本発明の代替の実施形態において、物理的配置およびスペースの参照だけでなく機能的にも本明細書で理解されたい。クライアントプロセッサとサーバプロセッサとの間のあらかじめ決められた経路指定の接続パスにおいて、クライアントプロセッサを有するハイブリッドプロセッサとの相互接続リンクは共用されず、特定のクライアントとハイブリッドプロセッサとの組の間でのみ、通信を行うことは図3を参照して明らかである。相互接続リンクは、ハイブリッドおよびクライアントの組の専用とすることができ、ハイブリッドプロセッサに隣接するクライアントプロセッサのみが、PCWをそのハイブリッドプロセッサに出せる。
発明の実施形態によって、Pモードは、非専用の、隣接するクライアントプロセッサとの相互接続リンク以外のハイブリッドプロセッサの他の相互接続リンクを介し、RCWがハイブリッドプロセッサの非専用の相互接続リンクでアサートされるたびにPモードに対するRモードに与えられた優先を用いた経路指定動作に対して割り込むように適用することができる。例えば図3を参照して、ハイブリッドプロセッサ115が、隣接するクライアントプロセッサ121の制御のもとにPモードであり、クライアントプロセッサ105からのRCWがプロセッサ116との相互接続リンクに表示される場合、Rモードに切り替えることができ、RCWで特定された経路指定動作の終了後にPモードに戻る。
図7は、本発明の方法の図である。ハイブリッドプロセッサ111、117、116、115、114、113および107は、3区分の状態で動作する。それらは待機モード、経路指定モード、および処理モードである。一実施形態では、ハイブリッドプロセッサ107と102のそれぞれに直接接続されたクライアントプロセッサ101と106のみ、処理コマンドワードを出すことによって待機モードから処理モードへの移行が可能になる。しかし任意のポートで表示される経路指定コマンドワードは、待機モードから経路指定モードへの移行をもたらす。処理モードまたは経路指定モードから待機モードへ戻るための移行は、ハイブリッドプロセッサの厳格な制御下にある。
以上で説明された発明の実施形態に従って、RCWとPCWの1ワードを使用した方法により、クライアントプロセッサと外部メモリ装置または直列のインタフェース間、クライアントプロセッサとハイブリッドプロセッサのペア間の通信ができる。代替の実施形態で、2つの連続して組み合わされた経路指定のコマンドワードおよび処理のコマンドワードを使用した改良方法により、マルチプロセッサアレイのすべてのプロセッサ間で互いに外部装置とインタフェースを用いて通信ができ、送受信プロセッサのアドレス、経路指定のワードカウント、処理のワードカウントを含むためのフォーマットに適応する改良を用いて、RモードとPモードの切り替えができることが当業者によって認識されるだろう。さらに代替の実施形態では、組み合わされた経路指定コマンドおよび処理のコマンドは、18ビットより大きい1ワードを使用できるか、またはその組み合わされたコマンドは、2ワード以上備えることができる。
各種改良は、その値または範囲を変えることなく本発明に対して行うことができる。この発明は例えば、本明細書で特定のプロセッサ101−124の例を用いて説明したが、多数のまたはすべての発明の態様は、他のコンピュータ設計、他の種類のコンピュータアレイ等に容易に適応できる。
同様に本発明では、主に1つのダイ上のアレイ100でプロセッサ101-124間の通信に関して本明細書で説明したが、同じ方式および方法または改良を用いて、プロセッサ101−124と外部メモリ131との間、またはアレイ100のプロセッサ101−124と外部装置133との間の通信等の他のデバイス間通信を行うことができる。
発明のアレイ100の具体例、プロセッサ101−124、関連装置、および方法を本明細書で説明したが、これらに対するまだ計画されていない用途が数多くあることが予想される。実際、発明の方法および装置を多種多様の用途に適用できることは、本発明の利点の一つである。
上記の全ては、本発明の利用可能な実施形態の一部にすぎない。発明の精神と範囲から逸脱することなく、多数の他の改良および代替を行うことができることを当業者は容易に推察するだろう。よって本明細書の開示は、限定を意図するものではなく、添付の請求は本発明の全範囲を網羅するものとして解釈される。
発明したコンピュータアレイ100、プロセッサ101−124、リンク200、データ回線210、制御回線215、PCW(Process Command Words)、RCW(Routing Connection Words)、およびそれらの方法は、多種多様のコンピュータ用途に幅広く使用されることを目的としている。それらは、かなりの演算能力を必要とし、その上消費電力および熱発生量が重視される用途で特に役立つことが予想される。
本明細書で上記に説明したように、本発明の適用性は、アレイのコンピュータ間の情報および資源の共用によりスピードと多様性の両方が非常に強化されたことである。コンピュータアレイと他の装置間の通信もまた、説明された方法と手段に従って強化された。コンピュータアレイ100、プロセッサ101−124、リンク200、データ回線210、制御回線215、PCW(Process Command Words)、RCW(Routing Connection Words)、および本発明の方法は、容易に作成でき、従来のタスク、入力/出力装置等と統合でき、本明細書で説明した利点が提供されことで、産業で容易に認められることが予想される。これらと他の理由により、発明の実用性および産業上の利用性はその範囲において重要であり、その期間において長続きすることが予想される。
本発明の実施形態にかかる24個のプロセッサアレイ100を示す図である。 プロセッサ間の相互接続リンク200の第一の実施形態をより詳細に示す図である。 マルチプロセッサアレイ100の所定の経路指定パスを示す図である。 RCW(Routing Connection Word)および外部RAM動作を示す図である。 アレイのプロセッサによって使用されるメモリの一部を図表で示したマルチプロセッサアレイ100に接続された外部メモリ装置320の拡大された部分を示す図である。 PCW(Process Command Word)の形式を示す図である。 本発明にかかる具体的な方法のチャートである。
符号の説明
100 マルチプロセッサアレイ
101−124 プロセッサ
131,132 外部入力/出力(i/o)接続
133,134 外部装置
200 リンク
210 データ回線
215 制御回線

Claims (17)

  1. 複数のプロセッサからなるコンピュータアレイであって、
    各プロセッサは、2つのみのプロセッサに接続されているリンクによって、少なくとも2つの隣接プロセッサに接続され、
    前記複数のプロセッサは、前記リンクの命令を受信すると待機モードとアクティブモードとの間で切り替え可能であることを特徴とするコンピュータアレイ。
  2. 前記リンクは、少なくとも1つのデータ回線を備えたことを特徴とする請求項1に記載のコンピュータアレイ。
  3. 前記リンクは、少なくとも1つの制御回線を備えたことを特徴とする請求項2に記載のコンピュータアレイ。
  4. 前記データ回線および/または前記制御回線は、一方向性であることを特徴とする請求項2または3に記載のコンピュータアレイ。
  5. 前記アレイの端部の複数のプロセッサは、3つの隣接プロセッサに接続している3つのリンクを有し、
    前記アレイの各角の前記プロセッサは、前記アレイの端部の前記2つのプロセッサに接続している2つの付随リンクを有し、
    4つのプロセッサにつながる4つのリンクによって接続された複数のハイブリッドプロセッサをさらに備え、
    前記アレイの端部でも角でもないプロセッサに接続された前記端部のプロセッサの前記リンクは、1つのハイブリッドプロセッサに接続されている、ことを特徴とする請求項1ないし4のいずれかに記載のコンピュータアレイ。
  6. 前記アレイの角の少なくとも1つのプロセッサは、メモリ、入力装置、ディスプレイ装置、および処理装置のグループから選択された外部装置に接続するように適用されることを特徴とする請求項5に記載のコンピュータアレイ。
  7. 前記アレイの端部の少なくとも1つのプロセッサは、メモリ、入力装置、ディスプレイ装置、および処理装置のグループから選択された外部装置に接続するように適用されることを特徴とする請求項5または6に記載のコンピュータアレイ。
  8. 前記ハイブリッドプロセッサは、前記ハイブリッドプロセッサに接続されたリンクから命令を受信すると、経路指定モード、処理モード、および待機モードの間で切り替わることを特徴とする請求項5、6、または7に記載のコンピュータアレイ。
  9. 前記命令が経路指定ワードである場合、前記プロセッサは、経路指定モードに切り替わることを特徴とする請求項8に記載のコンピュータアレイ。
  10. 前記命令が処理ワードである場合、前記プロセッサは、処理モードに切り替わることを特徴とする請求項8または9に記載のコンピュータアレイ。
  11. コンピュータアレイで使用するプロセッサであって、
    前記プロセッサを2つの直接隣接するプロセッサに接続するために少なくとも2つのリンクに接続するように適用された中央処理装置と、
    前記中央処理装置に接続されたメモリ装置とを備え、
    前記リンクのどちらかの命令により、前記中央処理装置を待機モードからアクティブモードにシフトさせることを特徴とするコンピュータアレイで使用するプロセッサ。
  12. 前記中央処理装置は、4つの直接隣接するプロセッサに接続する全部で4つのリンクに対して、前記プロセッサを2つの付加的な直接隣接するプロセッサに接続する少なくとも2つの付加的なリンクに接続するようにさらに適用されることを特徴とする請求項11に記載のコンピュータアレイで使用するプロセッサ。
  13. 前記各リンクは、少なくとも1つのデータ回線および少なくとも1つの制御回線を備えたことを特徴とする請求項12に記載のコンピュータアレイで使用するプロセッサ。
  14. 前記中央処理装置は、3つのモードである電力を節約するための待機モードである第一モードと、経路指定タスクを行うための経路指定モードである第二モードと、処理タスクを行うための処理モードである第三モードを有し、前記リンクのうちの1つからの命令を受信すると、前記処理装置のモードの切り替えが起きることを特徴とする請求項12または13に記載のコンピュータアレイで使用するプロセッサ。
  15. 前記中央処理装置は、経路指定接続ワードまたは処理コマンドワードを受信すると、前記待機モードから前記経路指定モードまたは前記処理モードにシフトし、前記経路指定タスクまたは前記処理タスクが終了するまで前記経路指定モードまたは前記処理モードの状態のままであり、その後に前記待機モードに戻ることを特徴とする請求項14に記載のコンピュータアレイで使用するプロセッサ。
  16. マルチプロセッサアレイを動作させる方法であって、
    前記アレイの一部のプロセッサを、少なくとも待機モードおよびタスクを実行する別のモードを有するマルチモードプロセッサとして指定するステップと、
    コマンドワードを受信すると前記指定されたプロセッサを前記他のモードに切り替えるステップと、
    前記コマンドワードを受信するとタスクを行うステップと、
    前記タスクが終了すると再び待機モードに切り替わるステップと
    を備えたことを特徴とするマルチプロセッサアレイを動作させる方法。
  17. 経路指定ワードまたは処理コマンドワードを受信すると前記指定されたプロセッサを経路指定モードまたは処理モードに切り替えるステップと、
    経路指定タスクまたは処理タスクを行うステップと、
    前記タスクが終了すると待機モードに戻るステップと
    を備えたことを特徴とする請求項16に記載のマルチプロセッサアレイを動作させる方法。
JP2008139702A 2007-05-31 2008-05-28 複数のマルチモードプロセッサに接続するための方法および装置 Pending JP2009059346A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/809,197 US7840826B2 (en) 2007-05-31 2007-05-31 Method and apparatus for using port communications to switch processor modes

Publications (1)

Publication Number Publication Date
JP2009059346A true JP2009059346A (ja) 2009-03-19

Family

ID=39628784

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008139702A Pending JP2009059346A (ja) 2007-05-31 2008-05-28 複数のマルチモードプロセッサに接続するための方法および装置

Country Status (7)

Country Link
US (1) US7840826B2 (ja)
EP (1) EP1998258A1 (ja)
JP (1) JP2009059346A (ja)
KR (1) KR20080106129A (ja)
CN (1) CN101320363A (ja)
TW (1) TW200846923A (ja)
WO (1) WO2008153817A2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8407805B2 (en) 2009-03-04 2013-03-26 Titus Inc. Method and system for classifying and redacting segments of electronic documents
US8869299B2 (en) * 2009-03-04 2014-10-21 Titus Inc. Method and system for generating trusted security labels for electronic documents
US8332350B2 (en) 2009-04-08 2012-12-11 Titus Inc. Method and system for automated security access policy for a document management system
JP5406287B2 (ja) * 2009-05-25 2014-02-05 パナソニック株式会社 マルチプロセッサシステム、マルチプロセッサ制御方法、及びマルチプロセッサ集積回路
US9553762B1 (en) * 2014-06-26 2017-01-24 Altera Corporation Network-on-chip with fixed and configurable functions
US11960438B2 (en) 2020-09-08 2024-04-16 Rambus Inc. Methods and circuits for streaming data to processing elements in stacked processor-plus-memory architecture

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5251299A (en) * 1985-12-28 1993-10-05 Fujitsu Limited System for switching between processors in a multiprocessor system
US5396635A (en) * 1990-06-01 1995-03-07 Vadem Corporation Power conservation apparatus having multiple power reduction levels dependent upon the activity of the computer system
US5367636A (en) * 1990-09-24 1994-11-22 Ncube Corporation Hypercube processor network in which the processor indentification numbers of two processors connected to each other through port number n, vary only in the nth bit
CA2073516A1 (en) * 1991-11-27 1993-05-28 Peter Michael Kogge Dynamic multi-mode parallel processor array architecture computer system
US6898721B2 (en) * 2001-06-22 2005-05-24 Gallitzin Allegheny Llc Clock generation systems and methods
AU2002360469A1 (en) 2001-12-06 2003-06-23 University Of Georgia Research Foundation, Inc. Floating point intensive reconfigurable computing system for iterative applications
US7505413B2 (en) * 2004-09-09 2009-03-17 Cariden Technologies, Inc. Methods and systems to perform traffic engineering in a metric-routed network
US7152169B2 (en) * 2002-11-29 2006-12-19 Intel Corporation Method for providing power management on multi-threaded processor by using SMM mode to place a physical processor into lower power state
US7496915B2 (en) * 2003-04-24 2009-02-24 International Business Machines Corporation Dynamic switching of multithreaded processor between single threaded and simultaneous multithreaded modes
US7937557B2 (en) * 2004-03-16 2011-05-03 Vns Portfolio Llc System and method for intercommunication between computers in an array
US20050262278A1 (en) * 2004-05-20 2005-11-24 Schmidt Dominik J Integrated circuit with a plurality of host processor family types
US7752422B2 (en) * 2006-02-16 2010-07-06 Vns Portfolio Llc Execution of instructions directly from input source
US7904615B2 (en) * 2006-02-16 2011-03-08 Vns Portfolio Llc Asynchronous computer communication

Also Published As

Publication number Publication date
WO2008153817A2 (en) 2008-12-18
EP1998258A1 (en) 2008-12-03
KR20080106129A (ko) 2008-12-04
TW200846923A (en) 2008-12-01
US20080301482A1 (en) 2008-12-04
CN101320363A (zh) 2008-12-10
US7840826B2 (en) 2010-11-23
WO2008153817A3 (en) 2009-02-26

Similar Documents

Publication Publication Date Title
US8045546B1 (en) Configuring routing in mesh networks
US8737392B1 (en) Configuring routing in mesh networks
US8058899B2 (en) Logic cell array and bus system
EP0726532B1 (en) Array processor communication architecture with broadcast instructions
US8832413B2 (en) Processing system with interspersed processors and communication elements having improved wormhole routing
US8151088B1 (en) Configuring routing in mesh networks
US5682491A (en) Selective processing and routing of results among processors controlled by decoding instructions using mask value derived from instruction tag and processor identifier
CN101882127B (zh) 一种多核心处理器
EP0539595A1 (en) Data processor and data processing method
JPH07152722A (ja) Simdマルチプロセッサ用動的再構成可能スイッチ装置
JPH08171537A (ja) メッシュ・アレイ・プロセッサ
JPH0675986A (ja) 大規模並列コンピューティング・システム装置
JP2009059346A (ja) 複数のマルチモードプロセッサに接続するための方法および装置
US7383419B2 (en) Address generation unit for a processor
CN1849598A (zh) 具有多个可编程处理器的集成数据处理电路
US6754801B1 (en) Method and apparatus for a shift register based interconnection for a massively parallel processor array
US8024549B2 (en) Two-dimensional processor array of processing elements
CN112486905A (zh) 可重构异构化pea互连方法
CN121501743B (zh) 人工智能芯片、人工智能处理器核心以及电子设备
JP2655243B2 (ja) 複合化ベクトル並列計算機
CN121501743A (zh) 人工智能芯片、人工智能处理器核心以及电子设备
CN121900723A (zh) 一种支持原生转置的存内计算架构
WO2011105408A1 (ja) Simdプロセッサ
JPH09179840A (ja) 並列計算機におけるプロセッサ間結合網
JPH02240765A (ja) 計算機のデータ通信システム