JP4455580B2 - プロセッサアレイにおける通信 - Google Patents

プロセッサアレイにおける通信 Download PDF

Info

Publication number
JP4455580B2
JP4455580B2 JP2006502302A JP2006502302A JP4455580B2 JP 4455580 B2 JP4455580 B2 JP 4455580B2 JP 2006502302 A JP2006502302 A JP 2006502302A JP 2006502302 A JP2006502302 A JP 2006502302A JP 4455580 B2 JP4455580 B2 JP 4455580B2
Authority
JP
Japan
Prior art keywords
data
processor
processors
transmitted
programmed
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 - Fee Related
Application number
JP2006502302A
Other languages
English (en)
Other versions
JP2006519429A (ja
Inventor
パネサール、ガジンダール
クレイドン、アンソニー、ピーター、ジョン
ロビンズ、ウィリアム、フィリップ
オール、アレックス
ドゥラー、アンドリュー
Original Assignee
ピコチップ デザインズ リミテッド
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 ピコチップ デザインズ リミテッド filed Critical ピコチップ デザインズ リミテッド
Publication of JP2006519429A publication Critical patent/JP2006519429A/ja
Application granted granted Critical
Publication of JP4455580B2 publication Critical patent/JP4455580B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4286Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a handshaking protocol, e.g. RS232C link
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/17393Indirect interconnection networks non hierarchical topologies having multistage networks, e.g. broadcasting scattering, gathering, hot spot contention, combining/decombining

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • Multi Processors (AREA)
  • Communication Control (AREA)
  • Radio Relay Systems (AREA)
  • Exchange Systems With Centralized Control (AREA)
  • Plural Heterocyclic Compounds (AREA)

Description

本発明は、ネットワークのプロセッサ間における情報通信の決定論的方法に関し、特に、プロセッサがその方法にしたがって通信するマルチプロセッサシステムに関する。
多数のプロセッサがバスとスイッチとからなるネットワークによって相互接続されるプロセッサアレイが国際特許公開第02/50624号に記載されている。国際特許公開第02/50624号には、また、そのアレイのプロセッサにデータを送信する方法が記載されている。
本発明によれば、1または複数の受信プロセッサがデータを受信することができなければ、データ再送のプロトコルにしたがってデータが第1のプロセッサから1または複数の受信プロセッサに送信されるシステムが提供される。
より具体的には、データは、割り当てられたスロットの際に、送信プロセッサから1または複数の受信プロセッサに順方向に転送される。また、肯定応答信号は、同じ割り当てスロットの際に、逆方向に送信される。その結果、スロットの継続時間は、データが一方向に移動するために必要な長さであればよい。
このことは、肯定応答信号がデータの受信後にのみ送信される方法およびスロット継続時間が往復の遅延を許容する長さである必要がある方法に比較して、バスの容量が効率的に倍になることを意味する。
さらに、受信プロセッサが次の割り当てスロットのデータを受信することができることを示す準備信号を用いる他の方法に比較して、スロットは、より効果的に使用され、単に受信プロセッサが次のスロットのデータを受信することができることを示す情報を転送するスロットは用いられない。むしろ、すべての使用可能なスロットの際にデータが送信され得る。
本発明は、再送の際に費やされる時間を最小化することができる利点を有する。
図1を参照すると、国際特許公開第02/50624号に記載されている一般的なプロセッサアレイは、行列に配列された複数のプロセッサ20から構成される。本発明は、この種のアレイを参照しつつ記載されているが、1つのプロセッサがネットワーク上の他の複数のプロセッサにデータを送信することができる他のシステムにも同様に適用することができる。
図1は、6つの列を含むアレイを示す。各列は10個のプロセッサから構成され、各列の各プロセッサにはP0,P1,P2,…,P8,P9のように番号が付され、アレイ内に合計60個のプロセッサが配置されている。本発明の好ましい一実施の形態は400個以上のプロセッサを含むが、本発明の動作を説明するには十分である。各プロセッサ20は、左から右に伝わる水平バスのセグメント32と右から左に伝わる水平バスのセグメント36とに、コネクタ50によって接続されている。図1に示すように、これらの水平バスセグメント32,36は、上方に伝わる垂直バスセグメント21,23と下方に伝わる垂直バスセグメント22,24とに、スイッチ55において接続されている。
図1のそれぞれのバスは、主として32個または64個のデータライン、データ有効信号ラインならびに肯定応答信号および再送肯定応答信号からなる2つの肯定応答信号ラインから構成される。
スイッチ55のそれぞれの構造は、図2を参照して説明されている。スイッチ55は、あらかじめデータが読み込まれたRAM61を含む。そのスイッチは、所定のシーケンスにおいてRAM61のアドレスを初めから終わりまでカウントするカウンタを備えるコントローラ60をさらに含む。この同一のシーケンスは無数に繰り返される。また、1回のシーケンスを完了するために要する時間は、システムクロックのサイクル数単位で測定され、シーケンス期間と呼ばれる。各クロックサイクルにおいて、RAM61からの出力データは、レジスタ62に読み込まれる。
スイッチ55は、左から右へ伝わる水平バス、右から左へ伝わる水平バス、上方に伝わる2つの垂直バスセグメントおよび下方に伝わる2つの垂直バスセグメントの6つの出力バスを備える。しかしながら、これらの出力バスの1つのみへの接続が、明確にする目的のために図2に示されている。6つの出力バスのそれぞれは、出力肯定応答信号Ackおよび再送肯定応答信号RAckのためのライン68に加えてバスセグメント66(32個または64個のラインデータバスおよびデータ品質信号線から構成される)から構成される。
マルチプレクサ65は、7つの入力ラインを備える。それらは、左から右へ伝わる水平バス、右から左へ伝わる水平バス、上方に伝わる2つの垂直バスセグメント、下方に伝わる2つの垂直バスセグメントおよび定数ゼロソースからの入力ラインである。マルチプレクサ65は、レジスタ62からの制御入力64を有する。レジスタ62の中身に応じて、そのサイクル中にこれらの入力のうちの選択された1つの入力上のデータは、出力ライン66に与えられる。定数ゼロの入力は、電力が不必要にバス上の値を変更しないように、出力バスが用いられない場合に優先的に選択される。
同時に、レジスタ62から与えられる値は、肯定応答選択ブロック67にも与えられる。ブロック67は、左から右に伝わる水平バス、右から左へ伝わる水平バス、上方に伝わる2つの垂直バスセグメント、下方に伝わる2つの垂直バスセグメントおよび定数ゼロソースからの肯定応答および再送肯定応答信号を受けとり、ライン68上の一組の出力肯定応答信号を選択する。
図3は、2つのプロセッサ20がそれぞれのコネクタ50において左から右へ伝わる水平バス32および右から左へ伝わる水平バス36のセグメントに接続される様子を示す、拡大ブロック概略図である。バスのセグメントは、2つのマルチプレクサ51間の部分として定義され、接続点25によってプロセッサの入力に接続される。プロセッサの出力は、出力バスセグメント26および他のマルチプレクサ51を介してバスのセグメントに接続される。また、プロセッサからの肯定応答信号は、肯定応答重ね合わせブロック27においてバス上の他の肯定応答信号と重ね合わされる。
マルチプレクサ51およびブロック27の選択入力は、関連するプロセッサ内の回路によって制御される。
アレイ内の全ての通信は、所定のシーケンスにおいて発生する。一実施の形態においては、シーケンス期間は1024クロックサイクルである。各スイッチおよび各プロセッサは、シーケンス周期をカウントするカウンタを含む。このシーケンスの各サイクルにおいて、各スイッチは、6つの出力バスのそれぞれに通じる入力バスの一つを選択する。シーケンスの所定のサイクルで、プロセッサは接続点25を経由して入力バスセグメントからデータを読み込み、マルチプレクサ51を用いて出力バスセグメントの方にデータを切り替える。
最低でも、各プロセッサは、関連するマルチプレクサおよび肯定応答重ね合わせブロックを制御し、シーケンスの正しい時間において接続されるバスセグメントからデータを読み込み、データに関する有効な機能を果たすことができることが必要である。この有効な機能は、データの記憶のみから構成されることもある。
図5は、1つの肯定応答制御ブロック27の半分の構造を詳細に示す。肯定応答制御ブロック27は、図3に示すように各プロセッサ20に関連しており、
各プロセッサ20の詳細は図5においては詳細に示されていていない。
肯定応答制御ブロック27は入力信号AckInを受け取る。この入力信号AckInは、ライン43上の入力としての、所定の肯定応答制御ブロック27からの出力信号である。プロセッサ20は、局所入力信号LocalAckを生成し、ライン45上の肯定応答制御ブロック27に他の入力としてこの信号を供給する。
入力信号AckInおよび局所入力信号LocalAckは、マルチプレクサ41に入力として与えられ、また、ANDゲート40に与えられる。ANDゲート40の出力は、ライン72上のマルチプレクサ41に第3の入力として与えられる。
プロセッサ20は、実際には3ビットでもかまわない選択信号Selectも生成し、入力信号AckIn、局所入力信号LocalAck、または、入力信号AckInおよび局所入力信号LocalAckの論理ANDのいずれかを選択するマルチプレクサ41に、制御入力としてライン46上の選択信号Selectを与える。これらの信号のうち選択された信号は、ライン44上の出力信号AckOutとして与えられる。出力信号AckOutは、同一のバス32,36に接続されたいずれかの次のプロセッサ20に関連するいずれかの次の肯定応答制御ブロック27にさらに与えられる。
図5は、肯定応答信号Ackまたは再送肯定応答信号RAckのいずれかを処理することができる肯定応答制御ブロック27の一部を示す。いずれの場合においても、肯定応答制御ブロック27は、これらの2つの信号とは別の信号を処理するための同様の回路を含む。
図6は、スイッチ55内の肯定応答選択ブロック67の一部の構造を詳細に示す。このスイッチ55は、図2において示され、図2を参照して簡潔に記載され、肯定応答信号を結合する。また、図6は、肯定応答信号Ackまたは再送肯定応答信号RAckを処理することができる肯定応答選択ブロック67の一部を示す。いずれの場合においても、肯定応答選択ブロック67は、また、これらの2つの信号以外の信号を処理するための同様の回路を含む。
右から左へ伝わる水平バスLeftAckIn、左から右へ伝わる水平バスRightAckIn、2つの上方向に伝わる垂直バスセグメントUpAck1InおよびUpAck2Inおよび2つの下方向に伝わる垂直セグメントDownAck1InおよびDownAck2In上の入力肯定応答信号、ならびに、定数ゼロソースZeroからの入力肯定応答信号のそれぞれは、各ANDゲート83の第1の入力に与えられる。
これらのADNゲート83の各第2の入力は、それぞれのケースにおいて、レジスタ62から受信された対応する選択信号の順序である信号を受け取る。したがって、選択信号が0である入力バスのいずれか1つにとって、かつ、そのような入力バスのみにとって、各ANDゲート83の出力は、肯定応答信号に等しい。
出力関数AckOutが、対応する選択信号が「low」になるためのすべての入力肯定応答信号の論理ANDになるように、ANDゲート83の出力はANDゲート84の各入力に接続されている。
データワードは、第1のプロセッサから第2のプロセッサにまたは第1のプロセッサから複数の第2のプロセッサに同時に送信されてもよい。デバイスの動作は、まず、データがあるプロセッサから他のプロセッサに送信される場合を参照して以下に記載されている。この記載においては、すべてのプロセッサおよびすべてのスイッチは、同期化されたカウンタを含み、各シーケンス周期で特定の演算を実行するようにプログラムされていることに留意しなければならない。
図3を参照すると、送信プロセッサは、選択された水平バスに出力データおよび有効信号が選択されるように、特定のマルチプレクサ51を選択する。ネットワーク内の適切なスイッチ55は、送信プロセッサから受信プロセッサにデータおよび有効信号を送るように設定される。有効信号は、バス上に有効データが存在することを指し示すための「High」に設定される。送信時間の最後に、受信プロセッサは、受信することができればデータを読み込む。
送信プロセッサがデータおよび有効信号をバスに対して選択すると同時に、受信プロセッサは、例えばデータ入力バッファがフルであるか否かに基づいて、データを受信できるか否かを決定する。受信プロセッサがデータを受信できると仮定した場合、受信プロセッサは、マルチプレクサ41を用いてLocalAck信号をHighに設定してその信号を図5を参照して述べたようなバスに対して
選択する。受信プロセッサがデータを受信できなければ、受信プロセッサは、LocalAck信号をlowに設定し、同様の方法でこの信号をバスに対して選択する。
いずれの場合においても、肯定応答信号は、受信プロセッサが送信されたデータを実際に受信する前に、その受信プロセッサによって送信される。
受信プロセッサによってバスに対して設定されたLocalAck信号は、適切なスイッチ55を介して送信プロセッサに送られる。各スイッチ内において、ライン64(図6に示されている)上の選択信号は、所望の肯定応答信号に対応してANDゲート83(図6に示されている)に対してlowに設定され、他のすべての肯定応答信号に対してHighに設定される。送信時間の最後に、送信プロセッサは、このように送られた肯定応答信号をサンプリングする。
送信プロセッサによってなされた作用は、サンプリングされた肯定応答信号AckがHighであったかlowであったかに依存する。サンプリングされた肯定応答信号AckがHighであった場合には、受信プロセッサはデータを受信することができたことになり、この特定の通信チャネル(スロット)に割り当てられた次のサイクルにおいて、送信プロセッサは新しいデータを送信することができる。サンプリングされた肯定応答信号がlowである場合、受信プロセッサはデータを受信することができなかったことになり、次のスロットにおいてデータを再送する。この際、送信プロセッサは前回と同様の方法でデータを送信するが、有効信号をlowに設定する。
受信プロセッサが前回のスロットにおいてデータを読み込まなかった場合、受信プロセッサは、データを受信できる場合にはデータを読み込み、同一のスロットの間に、再送肯定応答信号RAckをHighに設定する。HighであるRAck信号は、送信プロセッサに、データが受信されかつその送信が完了したことを送信プロセッサに通知する。受信プロセッサがデータをいまだに受信できなければ、受信プロセッサはRAck信号をlowに設定し、送信プロセッサはデータを次の割り当てスロットにおいて再送する。この処理は、受信プロセッサがデータを受信できるまで継続する。
この例の目的で、図4を参照して、プロセッサP24からプロセッサP16へのデータの送信について考える。データ転送が発生するスロットにおいて、プロセッサP24は、特定のマルチプレクサを用いて、出力データおよび有効信号をバスセグメント80に対して選択する。スイッチSW21は、左から右へ伝わる水平バスセグメント80からの入力RightBusIn上のデータが上方向へ伝わる垂直バスセグメント72への出力UpBus1Outに送られ、かつ、対応するAck信号が反対方向に送られるように、設定される。スイッチSW11は、対応するAck信号が反対方向に再度送られつつ、上方向に伝わる垂直バスセグメント72からの入力UpBus1In上のデータが左から右に伝わる水平バスセグメント76への出力RightBusOutに送られる。
プロセッサP15は、このスロットの際にこの後者のバスセグメントを用いることはできない(このスロットの際にデータを送信する必要があれば、右から左に伝わる適切なバスセグメントを用いることができることに留意すべきであるが)。プロセッサP15を左から右へ伝わるバスに接続するマルチプレクサ51は、バスセグメント76からバスセグメント77までのデータを送るように設定される。転送期間の最後には、受信プロセッサP16はデータおよび有効信号を読み込み、送信プロセッサP24はAck信号およびRack信号をサンプリングする。
データが複数の受信プロセッサに対して送信される場合を参照して本発明をさらに説明する。例えば、図4を再度参照して、送信プロセッサP24は、データを3つの受信プロセッサP16,P25およびP26に送信する。
スイッチS21およびS11は前述のように設定されるが、スイッチSW21は、左から右へ伝わる水平バスセグメント80からの入力RightBusInのデータを左から右へ伝わる水平バスセグメント81への出力RightBusOutに送るように付加的に設定される。プロセッサP25は、バスセグメント81からバスセグメント79へデータを送るように、左から右へ伝わるバス上の特定のマルチプレクサを制御する。スイッチSW11およびプロセッサP15,P16は前述のように作用し、転送期間の最後にプロセッサP16,P25およびP26はすべて、スロットのデータを受信することができるのであれば、データを読み込むとともに有効信号をサンプリングする。
左から右に伝わるバスセグメント81と左から右に伝わるバスセグメント79との間にあってプロセッサP25によって制御される肯定応答制御ブロックは、そのプロセッサP25からのLocalAcks(AckおよびRAck)のANDを選択するように設定される。バスセグメント79上の肯定応答制御ブロックに対する入力AckInとスイッチSW21の肯定応答選択信号とは、バスセグメント80上の肯定応答信号がバスセグメント72,81からの肯定応答信号の論理ANDとなるように、設定される。
このように、送信プロセッサP24によってサンプリングされた肯定応答信号は、受信プロセッサP16,P25,P26からの肯定応答信号の論理ANDである。特定のデータワードが送信される最初のスロットにおいて、3つの受信プロセッサすべてが信号を読み出すことができれば、送信プロセッサP24によってサンプリングされたAck信号は、Highでありかつ次に割り当てられたスロット上の新しいデータを転送することができる。一方、このサンプリングされたAck信号がlowである場合、送信プロセッサP24は、上述したように有効信号をlowとしつつ、次に割り当てられたスロットにおいてデータを再送する。
この場合、受信プロセッサP16,P25,P26のいずれかが前回割り当てられたスロットのデータを受信すれば、それらの受信プロセッサは、そのスロットにおいて新しいデータが送信されていないことを示すlowの有効信号をサンプリングする。しかしながら、データをまだ受信しておらずかつこのスロットにおいてそのデータを受信することができる受信プロセッサP16,P25,P26のいずれかは、そのデータを読み込む。
すべてのプロセッサは、再送肯定応答信号RAckを以下のように制御する。すべてのプロセッサは、前回の割り当てスロットにおいてデータを受け取れば、現在のスロットにおいてデータを受信できるか否かにかかわらず、再送肯定応答信号RAckをHighに設定する。それらのプロセッサは、前回の割り当てスロットにおいてデータを受信できなかった場合、現在の割り当てスロットにおいてデータを受信することができればRAckをHighに設定し、データを受信できなければRAckをlowに設定する。
本例においては、プロセッサP16,P25が最初のスロットにおいてデータを受信できかつプロセッサP26が最初のスロットにおいてデータを受信できなかった場合、プロセッサP24はAckのlowをサンプリングし、次の割り当てスロットにおいてデータを再送する。この次のスロットにおいて、プロセッサP16,P25はRAck信号をHighに設定する。プロセッサP26は、2番目のスロットにおいてデータを受信することができなければ、RAckをlowに設定する。送信プロセッサP24は、3番目のスロットにおいて、RAckのlowをサンプリングし、データを再送する。受信プロセッサP26は、3番目のスロットにおいてデータを受信することができれば、RAckをHighに設定する。すなわち、P16およびP25はRAck信号をHighに設定し、P24は、送信が完了したことを示すHighのRAckをサンプリングする。新しいデータは、次の割り当てスロットにおいて送信され得る。
本発明の実施例においては、プロセッサは入力バッファを備え、プロセッサは、入力バッファがフルであることによってデータを受信することができなくてもよい。この方法を用いることによって、受信プロセッサは、それらの受信プロセッサがスロットの最後にデータを読み込めるか否かを示すために、肯定応答信号Ackと再送肯定応答信号RAckを用いている。
本発明は、特定の実施例の観点から述べられているが、主としてあるプロセッサが1またはそれ以上の他のプロセッサにデータを送信する必要がある環境に適用することができる。これらのプロセッサは、例えば、あらかじめプログラムされたスイッチによって切り替えられたデータよりも、パケットヘッダーの情報によってアドレス指定されてもよい。あらゆる場合において、プロトコルの有利な実施例は受信プロセッサが一度以上同一のデータ(またはデータパケット)を受信しないことを保証できる一方で、本発明は、データが送信される同一のスロットの間にデータを受信することができることを受信プロセッサが確認できるという利点を提供することができる。
なお、添付図面は、本発明をよりよく理解し、かつ、本発明が実施される形態を説明するために、次に、一例としての目的のためだけに参照されるものである。
本発明に係るプロセッサアレイの概略ブロック図である。 図1のプロセッサアレイの一部の概略拡大ブロック図である。 図1のプロセッサアレイの一部の概略拡大ブロック図である。 図1のプロセッサアレイの一部の概略拡大ブロック図である。 図1のプロセッサアレイの一部の概略拡大ブロック図である。 図1のプロセッサアレイの一部の概略拡大ブロック図である。

Claims (10)

  1. 複数のプロセッサと、
    前記プロセッサを相互接続させるネットワークとを備え、
    少なくとも1つの第1のプロセッサは、所定の期間内に少なくとも1つの第2のプロセッサにデータを送るようにプログラムされ、
    1またはそれ以上の前記第2のプロセッサは、前記所定の期間内に送信された前記データを受信するようにプログラムされ、
    前記1またはそれ以上の第2のプロセッサは、送信された前記データを1またはそれ以上の前記第2のプロセッサが受信するようにプログラムされている前記所定の期間内に、送信された前記データを受け取ることができることを示す肯定応答信号を、前記1またはそれ以上の第2のプロセッサが送信された前記データを実際に受信する前に、それぞれの前記第1のプロセッサに送信するようにプログラムされ、
    各前記第1のプロセッサは、前記第2のプロセッサまたは各前記第2のプロセッサによって前記所定の期間内に送信された前記肯定応答信号を検出するようにプログラムされ、また、前記第2のプロセッサのそれぞれが送信された前記データを受信することができないことを1またはそれ以上の前記肯定応答信号が示す場合に、前記所定の期間の次の所定の期間内に前記データを再送信するようにプログラムされていることを特徴とするプロセッサシステム。
  2. 各前記プロセッサは、いずれかのデータとともに、前記データがこれまでに送信されたか否かを示すバイナリデータ有効信号を送信するようにプログラムされていることを特徴とする請求項1記載のシステム。
  3. 前記第2のプロセッサまたは各前記第2のプロセッサによって関連する前記第1のプロセッサに送信された前記肯定応答信号の論理ANDを形成するための、および、前記関連する第1のプロセッサに結果を与えるための論理回路を含むことを特徴とする請求項1または2記載のシステム。
  4. 各前記プロセッサは、データ入力バッファを備え、
    各前記第2のプロセッサは、前記各入力データバッファがフルである場合には、データを受信することができないことを示す肯定応答信号を送信することを特徴とする請求項1〜3のいずれかに記載のシステム。
  5. 前記第2のプロセッサまたは各前記第2のプロセッサは、送信された前記データを受信することができないことを示す肯定応答信号を前記第1のプロセッサのそれぞれに送信する場合に、再送信された前記データを受信することができるか否かを示す再送肯定応答信号を次の前記所定の期間内に前記第1のプロセッサに送信するようにプログラムされていることを特徴とする請求項2または3記載のシステム。
  6. 各前記第1のプロセッサは、前記第2のプロセッサまたは各前記第2のプロセッサによって送信された前記再送肯定応答信号を検出するようにプログラムされ、また、前記第2のプロセッサのそれぞれが再送された前記データを受信することができないことを1またはそれ以上の前記再送肯定応答信号が示す場合に、次の前記所定の期間内に前記データを再送するようにプログラムされていることを特徴とする請求項記載のシステム。
  7. 各プロセッサは、データ入力バッファを備え、
    各前記第2のプロセッサは、前記各入力データバッファがフルである場合に、再送信されたデータを受信することができないことを示す再送肯定応答信号を送信することを特徴とする請求項6記載のシステム。
  8. 各前記プロセッサは、連続するシーケンス期間において繰り返し所定の演算シーケンスを実行するようにプログラムされていることを特徴とする請求項1〜7のいずれかに記載のシステム。
  9. 前記ネットワークは、バスおよびスイッチを含むネットワークを備え、
    前記スイッチは、前記第1のプロセッサから1またはそれ以上の前記第2のプロセッサに前記データを送信するようにプログラムされ、前記所定の期間内に前記第2のプロセッサまたは各前記第2プロセッサから前記第1のプロセッサに各前記肯定応答信号を送信するようにプログラムされていることを特徴とする請求項1〜8のいずれかに記載のシステム。
  10. 各前記プロセッサは、これまでに送信されていないデータを送信する場合に第1の値となり、また、これまでに送信されたデータを送信する場合または有効データを送信しない場合に第2の値となる有効バイナリデータを送信するようにプログラムされていることを特徴とする請求項2記載のシステム。
JP2006502302A 2003-02-21 2004-02-19 プロセッサアレイにおける通信 Expired - Fee Related JP4455580B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB0304055A GB2398650B (en) 2003-02-21 2003-02-21 Communications in a processor array
PCT/GB2004/000673 WO2004074963A2 (en) 2003-02-21 2004-02-19 Communications in a processor array

Publications (2)

Publication Number Publication Date
JP2006519429A JP2006519429A (ja) 2006-08-24
JP4455580B2 true JP4455580B2 (ja) 2010-04-21

Family

ID=9953469

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006502302A Expired - Fee Related JP4455580B2 (ja) 2003-02-21 2004-02-19 プロセッサアレイにおける通信

Country Status (9)

Country Link
US (1) US7987340B2 (ja)
EP (1) EP1595216B1 (ja)
JP (1) JP4455580B2 (ja)
KR (1) KR101067593B1 (ja)
CN (1) CN100414534C (ja)
AT (1) ATE445188T1 (ja)
DE (1) DE602004023482D1 (ja)
GB (1) GB2398650B (ja)
WO (1) WO2004074963A2 (ja)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008049869A (ja) 2006-08-25 2008-03-06 Toyota Motor Corp レセプタクル
US11042211B2 (en) 2009-08-07 2021-06-22 Advanced Processor Architectures, Llc Serially connected computing nodes in a distributed computing system
US8554506B2 (en) * 2009-08-07 2013-10-08 Advanced Processor Srchitectures, LLC Distributed computing
US9429983B1 (en) 2013-09-12 2016-08-30 Advanced Processor Architectures, Llc System clock distribution in a distributed computing environment
US9645603B1 (en) 2013-09-12 2017-05-09 Advanced Processor Architectures, Llc System clock distribution in a distributed computing environment
US8260992B2 (en) * 2010-04-12 2012-09-04 Advanced Micro Devices, Inc. Reducing simultaneous switching outputs using data bus inversion signaling
US9071740B1 (en) 2011-10-28 2015-06-30 Google Inc. Modular camera system
US9537968B1 (en) 2012-01-06 2017-01-03 Google Inc. Communication of socket protocol based data over a storage protocol based interface
US9197686B1 (en) * 2012-01-06 2015-11-24 Google Inc. Backfill of video stream
WO2015135141A1 (zh) * 2014-03-11 2015-09-17 华为技术有限公司 一种应答消息传输装置与方法
WO2015140842A1 (ja) * 2014-03-20 2015-09-24 日本電気株式会社 システムを監視する情報処理装置及び監視方法
US9544485B2 (en) 2015-05-27 2017-01-10 Google Inc. Multi-mode LED illumination system
US9386230B1 (en) 2015-06-12 2016-07-05 Google Inc. Day and night detection based on one or more of illuminant detection, lux level detection, and tiling
US9554063B2 (en) 2015-06-12 2017-01-24 Google Inc. Using infrared images of a monitored scene to identify windows
US9613423B2 (en) 2015-06-12 2017-04-04 Google Inc. Using a depth map of a monitored scene to identify floors, walls, and ceilings
US9454820B1 (en) 2015-06-12 2016-09-27 Google Inc. Using a scene illuminating infrared emitter array in a video monitoring camera for depth determination
US9626849B2 (en) 2015-06-12 2017-04-18 Google Inc. Using scene information from a security camera to reduce false security alerts
US9235899B1 (en) 2015-06-12 2016-01-12 Google Inc. Simulating an infrared emitter array in a video monitoring camera to construct a lookup table for depth determination
US9886620B2 (en) 2015-06-12 2018-02-06 Google Llc Using a scene illuminating infrared emitter array in a video monitoring camera to estimate the position of the camera
US9489745B1 (en) 2015-06-12 2016-11-08 Google Inc. Using depth maps of a scene to identify movement of a video camera
US10180615B2 (en) 2016-10-31 2019-01-15 Google Llc Electrochromic filtering in a camera

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4698746A (en) * 1983-05-25 1987-10-06 Ramtek Corporation Multiprocessor communication method and apparatus
US4914653A (en) * 1986-12-22 1990-04-03 American Telephone And Telegraph Company Inter-processor communication protocol
DE58908974D1 (de) 1989-11-21 1995-03-16 Itt Ind Gmbh Deutsche Datengesteuerter Arrayprozessor.
JP2601591B2 (ja) * 1991-11-26 1997-04-16 富士通株式会社 並列計算機およびその全対全通信方法
JP3461520B2 (ja) * 1992-11-30 2003-10-27 富士通株式会社 マルチプロセッサシステム
US5754807A (en) * 1995-11-20 1998-05-19 Advanced Micro Devices, Inc. Computer system including a multimedia bus which utilizes a separate local expansion bus for addressing and control cycles
JP3715991B2 (ja) * 1996-02-09 2005-11-16 株式会社日立製作所 並列プロセッサ
US5959995A (en) * 1996-02-22 1999-09-28 Fujitsu, Ltd. Asynchronous packet switching
US5802561A (en) * 1996-06-28 1998-09-01 Digital Equipment Corporation Simultaneous, mirror write cache
GB2370380B (en) 2000-12-19 2003-12-31 Picochip Designs Ltd Processor architecture
US7161978B2 (en) * 2001-08-29 2007-01-09 Texas Instruments Incorporated Transmit and receive window synchronization

Also Published As

Publication number Publication date
WO2004074963A2 (en) 2004-09-02
CN1751305A (zh) 2006-03-22
GB2398650B (en) 2006-09-20
US7987340B2 (en) 2011-07-26
KR101067593B1 (ko) 2011-09-27
CN100414534C (zh) 2008-08-27
GB2398650A (en) 2004-08-25
EP1595216A2 (en) 2005-11-16
KR20050115865A (ko) 2005-12-08
ATE445188T1 (de) 2009-10-15
GB0304055D0 (en) 2003-03-26
US20070083791A1 (en) 2007-04-12
JP2006519429A (ja) 2006-08-24
DE602004023482D1 (de) 2009-11-19
WO2004074963A3 (en) 2005-01-27
EP1595216B1 (en) 2009-10-07

Similar Documents

Publication Publication Date Title
JP4455580B2 (ja) プロセッサアレイにおける通信
CA2056644C (en) Interprocessor switching network
US5948060A (en) Speeding-up communication rates on links transferring data structures by a method of handing scatter/gather of storage blocks in commanded computer systems
US5020020A (en) Computer interconnect system with transmit-abort function
KR940007903B1 (ko) 다중 클러스터 신호 처리기
US5187780A (en) Dual-path computer interconnect system with zone manager for packet memory
JP2503086B2 (ja) デ―タ・リンク制御方法
US7228373B2 (en) Serial digital communication system and method
EP0687985A2 (en) Multi-system interconnect facility
JPH0786863B2 (ja) マルチプロセツサシステムにおけるプロセツサアクセス制御装置
JPH08116348A (ja) 高速通信装置
JPH04297942A (ja) 待ち行列を使用してトランザクションを発生する装置及びその方法
KR20010091900A (ko) 비동기 및 동기 프로토콜을 갖는 멀티-포트로된 메모리
JPH04505993A (ja) 混成データ通信システム
JP2000244530A (ja) データ通信装置
SU798777A1 (ru) Система дл обмена информацией
JPS63136851A (ja) デ−タ通信装置
JPH04322538A (ja) パケット再送制御方式
JPS63316539A (ja) マルチキャスト通信装置における再送制御装置
KR19980037621A (ko) 전송 응답 처리 제어기 및 그 제어 방법
JPS5995629A (ja) デ−タ転送方式
JPH0294941A (ja) 通信制御装置
JPH03243038A (ja) パケット同報通信方式
JPH04182766A (ja) 分散処理システム
JPH0133981B2 (ja)

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061211

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071205

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071218

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20080317

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20080403

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080617

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090623

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091023

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20091029

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100112

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100203

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130212

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140212

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees