JP2006254434A - データスイッチとデータ伝送方法 - Google Patents

データスイッチとデータ伝送方法 Download PDF

Info

Publication number
JP2006254434A
JP2006254434A JP2006049931A JP2006049931A JP2006254434A JP 2006254434 A JP2006254434 A JP 2006254434A JP 2006049931 A JP2006049931 A JP 2006049931A JP 2006049931 A JP2006049931 A JP 2006049931A JP 2006254434 A JP2006254434 A JP 2006254434A
Authority
JP
Japan
Prior art keywords
data
bus
lamp
lamps
ring
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.)
Granted
Application number
JP2006049931A
Other languages
English (en)
Other versions
JP4346614B2 (ja
Inventor
Scott D Clark
スコット・ダグラス・クラーク
Charles Ray Johns
チャールズ・レイ・ジョンズ
David J Krolak
デビッド・ジョン・クロラック
Takeshi Yamazaki
剛 山崎
Jeffrey D Brown
ジェフリー・ダグラス・ブラウン
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.)
Sony Interactive Entertainment Inc
Original Assignee
Sony Computer Entertainment Inc
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 Sony Computer Entertainment Inc filed Critical Sony Computer Entertainment Inc
Publication of JP2006254434A publication Critical patent/JP2006254434A/ja
Application granted granted Critical
Publication of JP4346614B2 publication Critical patent/JP4346614B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3237Power saving characterised by the action undertaken by disabling clock generation or distribution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3253Power saving in bus
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Multi Processors (AREA)
  • Small-Scale Networks (AREA)

Abstract

【課題】N×Nのクロスバースイッチは実装面積、ワイヤパス、消費電力の面で不利で、ローカルバス共有型はデータコンフリクトと伝送レートの課題がある。
【解決手段】リングを基礎とするクロスバーデータスイッチが提供される。4個のリング102、104、106、108を設ける。これらのリングには複数のランプ0〜11が接続される。各ランプは対応するバスユニット0〜11にそれぞれ接続される。リングのうちふたつは時計回り、残りふたつは反時計回りにデータを伝送する。データ伝送元のバスユニットから目的のバスユニットへのデータ伝送のリクエストは中央アービタ112によって調停される。データ転送元から目的のユニットまで、途中に存在するランプはデータが単に通過する。
【選択図】図1

Description

この発明はデータスイッチに関し、実装されるユニットごとに単一ポートかつ複数リングを有し、データを部分的にブロックしない機能をもつデータスイッチに関する。
単一チップ内の複数処理ユニット間のデータ伝送は一般に困難である。チップに複数の処理ユニットが搭載されることが急増しているため、この問題は重要度を増している。同一チップの複数ユニット間のデータ伝送には特有の問題が多数存在する。データコヒーレンシー、チップ上で利用できる面積、消費電力などはそうした問題の一部である。より高い伝送レートの実現を図る場合、問題はより顕著となる。
信号がひとつのユニットを通過するために必要な時間が、問題としているデータバスのサイクルタイムに近づく程度に処理ユニットが大きくなると、伝送レートは非常に大きな問題となる。
これらの問題を解決するよう設計された従来の方法および/または装置には、実質的な欠点がある。プロセッサのローカルバスを共有する従来の解決策は、十分に高いバンド幅を実現できない。
この結果はチップ上の伝送レートには大きなマイナスとして作用する。別の従来の解決策は、フルクロスバースイッチである。
このタイプのスイッチクロスは、各ポートを他のすべてのポートへ接続する。このため、フルクロスバースイッチは、N×N通りの接続を必要とし、スイッチの複雑度が増す。
この解決策ではチップ上の面積を使いすぎ、ワイヤ(結線)リソースを消費しすぎる。そのため、高いデータ伝送レートを確保しつつ、同一チップ上の複数の処理ユニット間のデータ伝送を可能にする新たな方法または装置が否応なく必要となる。
本発明はメモリシステム内の複数のバスユニット間のデータ伝送のためのデータスイッチ、方法、およびコンピュータプログラムに関する。
このデータスイッチは、各バスユニットおよび複数のデータリングに対して単一のポートとなるよう構成されている。
このデータスイッチにおけるデータ伝送は中央アービタによって管理される。データスイッチにおける複数のデータ伝送は同時に操作され、高いバンド幅が確保される。さらに、データスイッチの未使用のセグメント(部分)に対するクロックの供給を止めることにより、低消費電力が実現する。各バスユニットは対応するデータランプ(データの出入口)と単一の制御インタフェイスで接続される。制御部は各データランプに存在し、データランプからバスユニットへのデータ伝送とデータランプ間のデータ伝送を制御する。
中央アービタはバスユニットからリクエストを受け、リクエストを調停し、制御信号は発行する。制御部は制御信号を解釈し、それにしたがってデータを伝送する。各データランプは隣接するふたつのデータランプとのみ直接接続され、これによってワイヤリソースが低減される。
データのリングはすべてのデータランプ間の接続を形成する。これにより、このデータスイッチでは、メモリシステム内のひとつのバスユニットから他の任意のバスユニットへのデータ伝送が可能になる。好ましい実施の形態では、4個のデータリングがあり、そのうちふたつがデータを時計回りに伝送し、残るふたつが反時計回りに伝送する。
なお、以上の構成要素の任意の組合せ、本発明の処理や表現、それらの組合せを方法、装置、システムなどの間で変換したもの、本発明の処理をコンピュータによって実行可能なプログラムとしたもの、そのプログラムを記録媒体に格納したものもまた、本発明の態様として有効である。
本発明によれば、以下のいずれか、またはそれらの複数の効果がある。第1に、単一チップ内の複数の処理ユニット間のデータ伝送が効率的に実行できる。第2に、その際、過度なワイヤリソースの消費が避けられる。第3に、チップ上の必要面積が抑えられる。第4に、広いデータ伝送バンド幅が確保できる。
以下の実施の形態において、いくつかの特定の詳細が示されるが、これらは本発明の理解のためのものである。しかし、当業者には、そのような特定の詳細がなくても本発明が実施可能であることは理解される。他の実例においては、不必要に詳細に説明することによって本発明の本質が不鮮明にならないよう、周知の要素はブロック図にて示す。
さらに、大部分において、ネットワーク通信、電磁的信号技術、その他について、本発明を完全に理解するためには不必要と思われるものであって、関連技術分野の当業者が理解できる範囲にあると考えられる詳細については省略している。
図1において、符号100はクロスバーデータスイッチの概要を示す。このクロスバーデータスイッチはハイブリッド型で、データを一部通過させる(すなわち一部のデータに対してブロックしない)機能をもつ。
ハイブリッド型クロスバースイッチは4個のリング、リング0−102、リング1−104、リング2−106、リング3−108を含む。4個のリングは12個のデータランプ装置、ランプ0−114、ランプ1−116、ランプ2−118、ランプ3−120、ランプ4−122、ランプ5−124、ランプ6−126、ランプ7−128、ランプ8−130、ランプ9−132、ランプ10−134、ランプ11−136を接続する。
各データランプ装置は、ひとつのバスユニット、すなわち、ユニット0−140、ユニット1−142、ユニット2−144、ユニット3−146、ユニット4−148、ユニット5−150、ユニット6−152、ユニット7−154、ユニット8−156、ユニット9−158、ユニット10−160、ユニット11−162にそれぞれ接続される。
中央アービタ112は制御信号110をデータランプ装置へ送出する。各データランプ装置は制御信号110を解釈し、それにしたがってデータランプ装置を制御する制御部を含む。
本願では装置としてデータランプおよびバスユニットを説明するが、本発明と同じ結果を達成するために、多くの他の同様の装置を用いうる。例えば、「バスユニット」はデータを他の論理装置と交換するどのような論理装置も含む広い用語である。実施の形態では、メモリ制御部、イーサネット制御部(イーサネットは登録商標)、中央処理装置(CPU)、周辺部品の相互接続(PCI)高速制御部、汎用シリアルバス制御部、およびグラフィックアダプタユニットなどは「バスユニット」となりうる。さらに、「データランプ」はデータスイッチ構造内でデータ伝送をなす装置を含む広い用語である。「ランプ」は高速道路のランプの類推で、データの昇降部分ないし入出力部分というような意味をもつ。
ふたつのリング0−102、リング2−106は時計回り、別のふたつのリング1−104、リング3−108は反時計周りにデータを伝送する。各データランプ装置は、隣接するデータランプ装置とのみ接続される。例えば、ランプ2−118はランプ1−116とランプ3−120とのみ接続される。ランプ1−116はリング0−102またはリング2−106を用いてランプ2−118へデータを伝送でき、リング1−104またはリング3−108を用いてランプ2−118からデータを受けることができる。逆に、ランプ3−120はリング1−104またはリング3−108を用いてランプ2−118へデータを伝送でき、リング0−102またはリング2−106を用いてランプ2−118からデータを受けることができる。それゆえ、各データランプ装置は、隣接するデータランプ装置との間でのみデータ伝送ができる。
中央アービタ112は、リングを巡るデータの流れを管理し、この管理により、バスユニットはデータランプ装置との間で単一のインタフェイスをもつ状態が実現される。例えば、ランプ2−118はユニット2−144とインタフェイスし、ランプ8−130はユニット8−156とインタフェイスする。この接続は、リクエスト(要求)/グラント(許可)/受信のハンドシェイクによる制御インタフェイスである。そのため、バスユニットはデータを送ることをリクエストするか、グラントされたときにデータを送るか、またはデータを受ける、のいずれかのみをする。バスユニットは、データスイッチ自体の構造を意識する必要はない。データ構造は予め同意されたデータパケットを動かすよう設計される。
例えば、ユニット10−160がデータをユニット1−142へ送りたい場合、まずリクエストを送出する。リクエストは中央アービタ112へ到達し、中央アービタ112は制御信号110を必要なデータランプ装置、すなわち、ランプ10−134、ランプ11−136、ランプ0−114、ランプ1−116へ送出しはじめる。中央アービタ112はまた、利用可能なデータリングを選択する。ここではリング0−102である。ユニット10−160は中央アービタ112からグラントを受け、リクエストされたデータをランプ10−134へ伝送する。ランプ10−134はリング0−102を使ってこのデータをランプ11−136へ伝送する。ランプ11−136はこのデータをランプ0−114まで渡すことを許可する。ランプ0−114はこのデータをランプ1−116まで渡すことを許可する。ランプ1−116はこのデータを受け入れ、リクエストされたデータをユニット1−142へ伝送する。
図1は本発明のひとつの実施の形態に過ぎない。データランプ装置の数、データリングの数は実装ごとに調整することができる。このハイブリッド型クロスバースイッチと従来のクロスバースイッチでは、接続の量が違う。従来のクロスバースイッチは各データランプ装置から他のすべてのデータランプ装置へ至る接続が含まれる。本発明では、各データランプ装置から隣接するふたつのデータランプ装置のみへ接続がなされる。
図2において、符号200はハイブリッド型クロスバースイッチのランプ構造の全体ブロック図である。各データランプ装置は、これらの構造ブロックを多数含む。データイン202とデータアウト204はデータランプ装置とバスユニット間の通信チャネルであるインタフェイスに対応する。データイン202はバスユニットから受けるデータ、データアウト204はバスユニットへ伝送されるデータを指す。マルチプレクサとランプラッチは各リングに専用である。ランプラッチ0−222とマルチプレクサ0−230はリング0−102上でデータを伝送する。同様に、ランプラッチ1−224とマルチプレクサ1−232はリング1−104上で、ランプラッチ2−226とマルチプレクサ2−234はリング2−106上で、ランプラッチ3−228とマルチプレクサ3−236はリング3−108上でデータを伝送する。
リング0イン206、リング1イン212、リング2イン214、リング3イン220はそれぞれマルチプレクサ0−230、マルチプレクサ1−232、マルチプレクサ2−234、マルチプレクサ3−236への入力である。リング0用のアウト信号208、リング1用のアウト信号210、リング2用のアウト信号216、リング3用のアウト信号218はそれぞれランプラッチ0−222、ランプラッチ1−224、ランプラッチ2−226、ランプラッチ3−228の出力である。データイン信号202はまた、4個のマルチプレクサ230、232、234、236への入力でもある。これらのマルチプレクサの入力は2系統である。マルチプレクサの上半分の入力系統はデータイン信号202を受け、下半分の入力系統はリングイン信号206、212、214、220を受ける。
制御部ラッチ0−240、制御部ラッチ1−242、制御部ラッチ2−244はランプ制御部側にある。制御部ラッチ0−240はバスユニットからのデータイン信号202を制御する。データがデータイン202によってバスユニットから来たものであるとき、制御部ラッチ0−240はマルチプレクサ0−230、マルチプレクサ1−232、マルチプレクサ2−234、マルチプレクサ3−236のうちの正しいものがデータを受け付けるよう命じる。
制御部ラッチ1−242はリングイン信号206、212、214、220を制御する。例えば、データがリング1イン212で来たとき、制御部ラッチ1−242はマルチプレクサ1−232がデータを受け付けるよう命じる。各マルチプレクサは同時には一方の入力からのデータのみを受け付ける。そのため、データがバスユニットからデータイン202を経てマルチプレクサ1−232へ来た場合、リング1−104上でデータの伝送を同時にすることはできない。このデータランプにおけるデータフローを制御するのは制御部ラッチ0−240と制御部ラッチ1−242である。
正しいデータチャネルが選ばれ次第、マルチプレクサはデータをランプラッチへ伝送する。例えば、リング1イン212が制御部ラッチ1−242によって選ばれると、このデータはマルチプレクサ1−232からランプラッチ1−224まで移動する。逆に、リング2−106へ伝送する対象として、バスユニットからデータイン202を経たデータが制御部ラッチ0−240によって選択された場合、このデータはマルチプレクサ2−234からランプラッチ2−226まで移動する。
ランプラッチの出力は、データアウト信号である。したがって、ランプラッチ0−222はリング0用のアウト信号208を出力する。ランプラッチの出力はまた、別のマルチプレクサ238へ接続される。マルチプレクサ238はデータアウト204を利用してデータをバスユニットへ伝送する。制御部ラッチ2−244はマルチプレクサ238を制御する。例えば、もしバスユニットがリング3−108からのデータを必要とするとき、制御部ラッチ2−244はランプラッチ3−228の出力を選択し、マルチプレクサ238はそのデータをバスユニットへ伝送する。バスユニットがデータを一切必要としないとき、制御部ラッチ2−244はランプラッチからのいずれの出力も選択しない。制御部ラッチ0−240、制御部ラッチ1−242、制御部ラッチ2−244はこうしたデータ授受を組織的に制御することにより、データランプ装置を制御する。
制御部ラッチ0−240は、いずれかひとつのラッチのみが任意の時刻においてオンになることができる。つまり、任意の時刻においてバスユニットからデータを受けることができるリングはひとつだけである。
制御部ラッチ1−242のラッチはすべて任意の時刻においてオンになることができる。その結果、データは同時にすべてのリングで伝送可能である。
制御部ラッチ2−244は、いずれかひとつのラッチのみが任意の時刻でオンになることができる。そのため、マルチプレクサ238は任意の時刻でひとつのデータリングからのデータのみを伝送することができる。制御部ラッチの組が複数のランプ構造ブロックを制御する。
図2に示すごとく、各バスユニットは送信ポートと受信ポートをもつ。これらのポートはそれぞれデータイン202、データアウト204として、データランプ装置へ接続される。以下の詳細は実装に固有で、本実施の形態のみを説明する。これらのポートはそれぞれ(データパケットを特定するための)タグバスとデータからなる。タグバスの幅は14ビットで、データバスの幅は16バイトである。データは128バイト(8×16)を一単位として伝送される。各バスユニットはバスサイクルごとに16バイトのデータをバスにドライブすることができ、同時にバスサイクルごとに16バイトのデータを受けることができる。そのため、16バイトを一単位とすると、各バスサイクルで同時に伝送可能な最大値は、バスに接続されたユニットごとに「1」となる。
データランプ装置はバス装置の複数リング構造に対して、単純な入出力ポートを提供する。データがバスユニットからそのランプへ移動するために1バスサイクルかかり、データがリング内のあるデータランプから次のデータランプへ移動するのに1バスサイクルかかり、一旦目的地のランプに到達すると、データがそのデータランプからデータを受信すべき装置へ移動するのにやはり1バスサイクルかかる。
図3において、符号300はデータをリクエストしたデータランプ装置へデータを伝送するタイミング全般を示す。以下の詳細は実装に固有で、本実施の形態のみを説明する。リクエスト元のランプ装置は、それが対応するバスユニットからのデータをリクエストするとき、目的地ユニットのIDとデータリクエスト信号を発行する。これは「データリクエスト」線と「目的地符号」線として描かれている。
中央アービタ112は調停の結果、このリクエスト元に「グラント(許可)パルス」を返すとともに、対応するデータランプ装置へ「リング個別グラント」を返す。グラントパルスはデータ伝送の開始許可を通知する。データリクエスト信号のアサートからグラント信号の反応までの最小ディレイ(tgrant)は6バスサイクルである。
グラントされた次のサイクルにおいて、リクエスト元の装置はそのランプにおいて「データタグ」を1バスサイクル間ドライブする。「データタグ」は次に続くデータパケットを特定するものである。
グラントされた3サイクル後(図中のtdata)、リクエスト元はランプにおいてデータバスを8バスサイクル間ドライブする。8バスサイクルにより、伝送単位である128バイト全体の伝送が終わる。
グラントから次のリクエストのでの最小ディレイ(treq)は2バスサイクルである。あるリクエストから次のリクエストまでの最小ディレイ(tr-r)は8バスサイクルである。バスユニットはデータランプ装置を介してデータを伝送する。全体動作として、バスユニットが中央アービタへリクエストを通知し、中央アービタがグラントを送り返し、バスユニットが「データタグ」信号を構成し、データを送信する。
この過程において、中央アービタ112はまた、下流のデータランプ装置へフロー制御信号を送る。データを受ける側のデータランプ装置のために、中央アービタは「早期のデータ有効」(アーリーデータバリッド:EDV)パルスを送る。EDVパルスはグラントパルスと同じ機能を有するが、受信側がデータを受け入れるために待機させる機能をもつ。データを受ける側は、リクエスト元のランプ出力から出た「データタグ」を1サイクルの間で取得する。すなわち、EDVパルスの1サイクル後、データを受ける側はタグバスから「データタグ」のデータを取得し、EDVパルスの3サイクル後、データを受ける側は8サイクル(一単位)にわたり、データを収集する。データランプ装置に内蔵された制御部はバス個別のEDVパルスを受け、同じタイミングの制約の中でランプ出力マルチプレクサを制御する。
データ伝送の間、データランプはデータを通過させる通過装置としても利用される。この機能により、あるデータランプ装置は単に次のデータランプへデータを通過させることができる。中央アービタ112は1以上のデータランプを横切るデータ伝送に対して「通過パルス」を送出する。通過パルスを受けたデータランプは、特定されたリングの入力から出力へ8サイクルにわたり、データを通過させる。この動作は、タグバスにおいてパルスが受け取られてから1サイクル後、データバスにおいては3サイクル後から開始する。
中央アービタ112は全体の処理を制御する。中央アービタ112はリクエストを収集し、それらを調停し、適切なリングを選択し、リクエストをグラントする。新たなデータ伝送が進行中の別の伝送と衝突するとき、中央アービタ112はリクエストをグラントしない。もしリングが伝送によって部分的に使われている場合、そのリングの別の部分を使う、重複のない伝送が同時に発生することは許可される。または、直前の伝送の終了エッジのあとに続いて新たな伝送が発生することが許可される。
この実施の形態では、データパケットとともに伝送されるエラービットと部分伝送ビットを設ける。エラービットはデータにエラーがあるか否かを示し、データとともにデータバスで伝送される。部分伝送ビットは、データ伝送が128バイト未満であるか否かを示し、タグバスにおいてデータとともに伝送される。
図4A〜Cはデータランプ装置内部のデータランプ制御部のサイクルに関するタイミングを示す。図4Aは、リクエスト元のデータランプ装置のためのデータ伝送を示す。グラント信号は1番目のサイクルで受け取られる。1サイクル後、タグバス上に「データタグ」パルスが1サイクルにわたってドライブされる。グラントパルスの3パルス期間後、データバス上にデータが8サイクルにわたってドライブされる。
9番目のサイクルは、いずれかのリングから別のグラントパルスを受け取ることのできる最も早いサイクルである。
図4Bは、通過されるデータランプ装置に対するデータ伝送を示す。通過パルスは1番目のサイクルで受け取られる。1サイクル後、「データタグ」パルスがタグバス上に1サイクルにわたってドライブされる。通過パルスの3パルス期間後、データバス上にデータが8サイクルにわたってドライブされる。
9番目のサイクルは、同一リングから別の通過パルスを受け取ることのできる最も早いサイクルである。
図4Cは、データを受ける側のデータランプ装置に対するデータ伝送を示す。EDVパルスは2番目のサイクルで受け取られる。1サイクル後、「データタグ」パルスがタグバス上に1サイクルにわたってドライブされる。EDVパルスの3パルス期間後、データバス上にデータが8サイクルにわたってドライブされる。10番目のサイクルは、いずれかのリングから別のEDVパルスを受け取ることのできる最も早いサイクルである。
図5において、符号500は実施の形態のハイブリッド型クロスバースイッチが9のデータ伝送を同時に実行する能力を示す全体ブロック図である。図5は図1同様であるが、全部の符号は付していない。データ経路502はリング0でユニット5からユニット7へのデータ伝送を示す。データ経路504はリング2でユニット4からユニット8へのデータ伝送を示す。データ経路506はリング3でユニット3からユニット10へのデータ伝送を示す。データ経路508はリング0でユニット2からユニット3へのデータ伝送を示す。データ経路510はリング1でユニット1からユニット11へのデータ伝送を示す。データ経路512はリング0でユニット11からユニット1へのデータ伝送を示す。データ経路514はリング2でユニット10からユニット0へのデータ伝送を示す。データ経路516はリング3でユニット9からユニット6へのデータ伝送を示す。データ経路518はリング1でユニット6からユニット2へのデータ伝送を示す。これら9のデータ伝送は一切衝突することなく同時に実行することができる。
以下の詳細は実装に固有であり、本実施の形態のみに適用される。データ伝送516はユニット9が目的地ユニットのIDとデータリクエストを発行することで始まる。
この場合、目的地ユニットのIDからそれがユニット6とわかる。中央アービタはこのリクエストを収集し、グラントをユニット9とユニット6へ送出する。つぎにユニット9はタグバスにデータタグのデータを送出し、つづいてデータバス上でデータをランプ9へ送出する。ランプ9はこのデータをリング3へ出力する。ランプ8、7、6は通過信号を受け、データをリング3上で通過せしめる。タグバス上のデータタグのデータとデータバス上のデータはリング3上でランプ8、ランプ7、ランプ6を通過する。
この処理の間、中央アービタはランプ6にEDVを送出する。データがランプ6まで通過した後、ランプ6の制御部は出力をユニット6へ移動させる。以上がリング3上でユニット9からユニット6へのデータパケットの伝送の様子である。バスユニットおよびランプ間のデータ入出力の手順は図2に示される。図2はまた、通過の仕組みも表している。
本発明は従来の技術に対して種々の優位性を提供する。このハイブリッド型クロスバースイッチはチップ上のシリコンの面積をあまり使わない。各ランプは他のふたつのランプとのみインタフェイスするため、データチップ上のロジックとバスの総量は低減される。バス(リング)は4組しか必要なく、対応するロジックが制限されるため、これによっても面積は少なくて済む。
本発明によれば、ワイヤトラックの総量も劇的に減る。従来のクロスバーデータスイッチでは、各ポートは他のすべてのポートとワイヤ接続される必要があったが、本発明による改良されたクロスバースイッチでは、各ランプは隣接するデータランプとのみ接続されれば済む。
さらに、この改良されたクロスバースイッチは高いピークバンド幅を達成する。図5に示すごとく、多量のデータを同時に伝送できる。この改良されたクロスバーは従来装置に比べて消費電力も小さい。中央アービタはデータリングの未使用のセグメント(たとえばデータ伝送に関与しないランプ装置)を遮断するよう構成することが望ましい。すなわち、未使用のセグメントにはクロックを供給しないことにより、消費電力が減る。この単一ポート/複数リング実装、かつ一部データをブロックしないハイブリッド型クロスバーデータスイッチは、従来の装置に対して大きな改良となる。
図6において、符号600はリクエスト元の装置から対応する装置へひとつのデータ伝送の単位を移動させる過程を示すフローチャートである。リクエスト元の装置は、データリクエストと目的地IDの信号を発行し、データ伝送を指示する(602)。中央アービタはデータリクエストを受け、リクエストを調停し、データリングを選択する(604)。中央アービタはリクエスト元へグラントを返し、対応する装置へもグラントを返し、通過信号を発行する(606)。グラントを受けた後、リクエスト元は1サイクル間、データタグをドライブする(608)。つづいて、リクエスト元は8サイクルにわたりデータバスをドライブする(610)。データタグのデータと伝送対象のデータは、対応するデータランプへ到達するまでデータランプを通過する(612)。データが対応するデータランプまで通過し終えると、そのデータは対応するバスユニットへ伝送される(614)。 なお、ここではデータ伝送のリクエスト元はデータを伝送する側とした。しかし、データを必要とする側がリクエスト元となってデータ伝送が開始されてもなんら差し支えはない。
以上、実施の形態を説明したが、この実施の形態は以下のように要約することができる。すなわち、実施の形態に係るデータ伝送方法は、複数のバスユニットのそれぞれにデータ入出力部としてデータランプを設け、それら複数のデータランプのうち任意の2個の間に生じる全経路のうち一部の経路のみを直接データバスで接続し、直接データバスで接続されたデータランプ間のデータ伝送は当該データバスにて直接的に実行する一方、直接データバスで接続されていないデータランプ間のデータ伝送は、それらのデータランプが直接データバスで接続された別のデータランプを経由して実行するものである。実施の形態では、このデータバスがリング状態であったが、必ずしもリングである必要はない。必要な条件は、任意のデータランプ間の伝送が必ず実現するよう、データバスに途切れがないことに過ぎない。
本発明は、いろいろな形式や実施の形態をとりうる。したがって、本発明の概念や範囲から離れることなく、前述の技術において種々の変形技術が存在する。ここで説明した技術的可能性の延長として、さまざまなプログラミングモデルの可能性がある。しかしながら、本開示はいずれか特定のプログラミングモデルを好んで採用するように読まれるべきではなく、そうしたプログラミングモデルが構築される背景となる概念を目的としているものと理解されるべきである。
以上、本発明をいくつかの好ましい実施の形態をもとに説明した。これらの実施の形態は、本来発明の内容を例示するものであって、限定するものではない。また、以上の開示内容から、変形例、修正例、変更または置換が考えられ、またいくつかの実施例においては、本発明のいくつかの構成要素が対応する他の構成要素を使用することなく実現可能であることも理解されるところである。そうした多くの変形例や修正例は、好ましい実施の形態の説明に鑑み、当業者によってなされることは望まれるところである。したがって、添付の特許請求の範囲は、広くかつ本発明の範囲と一貫する方法で解釈されるべきである。
実施の形態に係る、単一ポート/複数リングで実装されるハイブリッド型のクロスバーデータスイッチ(一部、データをブロックしないタイプ)のブロック図である。 ハイブリッド型クロスバーデータスイッチのランプ構造ブロックのブロック図である。 データをリクエストしたランプ装置のためのデータ伝送を示すタイミング図である。 図4A−Cは、データランプ装置内のデータランプ制御部のサイクルを示すタイミング図である。 ハイブリッド型クロスバーデータスイッチが同時に9のデータ伝送を達成する能力を示すブロック図である。 リクエスト元の装置から対応する装置へひとつのデータ伝送の単位を渡す過程を示すフローチャートである。
符号の説明
100 クロスバーデータスイッチ、 102,104,106,108 リング、 110 制御信号、 112 中央アービタ、 114,116,118,120,122,124,126,128,130,132,134,136 ランプ、 140,142,144,146,148,150,152,154,156,158,160,162 バスユニット。 222,224,226,228 ランプラッチ、 230,232,234,236,238 マルチプレクサ。

Claims (20)

  1. 複数のバスユニット間のデータの伝送を実行するデータスイッチであって、
    1以上の通信チャネルとインタフェイスする1以上のバスユニットと、
    1以上の通信チャネルを介して1以上のバスユニットとインタフェイスする1以上のデータランプと、
    各データランプを隣接するふたつのデータランプと接続し、前記1以上のデータランプ間におけるデータの接続を実現する1以上のデータリングと、
    前記1以上のデータランプとインタフェイスし、制御信号を送出することによって前記1以上のデータリング上のデータ伝送を管理する1以上の中央アービタと、
    を備えることを特徴とするデータスイッチ。
  2. 請求項1に記載のデータスイッチであって、前記1以上のバスユニットはそれぞれ、前記1以上のデータランプのうちのひとつとインタフェイスすることを特徴とするデータスイッチ。
  3. 請求項1または2に記載のデータスイッチにおいて、前記1以上のデータランプのそれぞれは、制御装置と、1以上のマルチプレクサと、1以上のランプラッチとを備えることを特徴とするデータスイッチ。
  4. 請求項3に記載のデータスイッチにおいて、前記制御装置は、前記1以上の中央アービタとインタフェイスし、当該中央アービタから制御信号を受けることを特徴とするデータスイッチ。
  5. 請求項4に記載のデータスイッチにおいて、前記制御装置は、前記制御信号へ応じ、少なくとも、データリング上のデータ伝送と、自身に対応するバスユニットに関連する通信チャネル上のデータ伝送とを管理するよう構成されたことを特徴とするデータスイッチ。
  6. 請求項1から5のいずれかに記載のデータスイッチにおいて、前記1以上のデータリングは前記1以上のデータランプ間において、一方向でデータを移動せしめることを特徴とするデータスイッチ。
  7. 請求項6に記載のデータスイッチにおいて、前記データリングの数は偶数であることを特徴とするデータスイッチ。
  8. 請求項7に記載のデータスイッチにおいて、複数のデータリングの半数はデータランプ間でデータを一方向に伝送し、残り半数のデータリングはデータランプ間でデータを前記一方向とは反対の方向へ伝送することを特徴とするデータスイッチ。
  9. データスイッチを用いて複数のバスユニット間でデータを伝送する方法であって、
    それぞれが複数のバスユニットのうち自身に対応するバスユニットにインタフェイスする複数のデータランプをバスユニットへ接続するステップと、
    各データランプが隣接するふたつのデータランプと接続される形で、前記複数のデータランプ間をデータリングで接続するステップと、
    制御信号を発行することによってデータリング上のデータ伝送を管理する1以上の中央アービタを動作せしめるステップと、
    を実行することを特徴とするデータ伝送方法。
  10. 請求項9に記載の方法において、前記接続するステップはさらに、複数の制御装置によって各データランプとそれに対応するバスユニット間のデータ伝送、および各データランプとそれに隣接するデータランプ間のデータ伝送を制御せしめることを特徴とするデータ伝送方法。
  11. 請求項9または10に記載の方法において、前記複数のデータランプ間をデータリングで接続するステップはさらに、複数のデータリングによって前記複数のデータランプ間のデータ伝送を実行せしめるステップを含むことを特徴とするデータ伝送方法。
  12. 請求項11に記載の方法において、前記複数のデータランプ間のデータ伝送を実行せしめるステップは、前記複数のデータリングの半数においてデータを一方向へ伝送せしめ、残り半数においてデータを前記一方向とは反対の方向へ伝送せしめることを特徴とするデータ伝送方法。
  13. 請求項10に記載の方法において、前記1以上の中央アービタを動作せしめるステップはさらに、当該中央アービタから前記複数の制御装置に制御信号を発行せしめることを特徴とするデータ伝送方法。
  14. データスイッチを用いて複数のバスユニット間でデータを伝送する方法をコンピュータに実行せしめるプログラムであって、
    それぞれが複数のバスユニットのうち自身に対応するバスユニットにインタフェイスする複数のデータランプをバスユニットへ接続するステップと、
    各データランプが隣接するふたつのデータランプと接続される形で、前記複数のデータランプ間をデータリングで接続するステップと、
    制御信号を発行することによってデータリング上のデータ伝送を管理する1以上の中央アービタを動作せしめるステップと、
    をコンピュータに実行せしめることを特徴とするコンピュータプログラム。
  15. 請求項14に記載のプログラムにおいて、前記接続するステップはさらに、複数の制御装置によって各データランプとそれに対応するバスユニット間のデータ伝送、および各データランプとそれに隣接するデータランプ間のデータ伝送を制御せしめることを特徴とするコンピュータプログラム。
  16. 請求項14または15に記載のプログラムにおいて、前記複数のデータランプ間をデータリングで接続するステップはさらに、複数のデータリングによって前記複数のデータランプ間のデータ伝送を実行せしめるステップを含むことを特徴とするコンピュータプログラム。
  17. 請求項16に記載のプログラムにおいて、前記複数のデータランプ間のデータ伝送を実行せしめるステップは、前記複数のデータリングの半数においてデータを一方向へ伝送せしめ、残り半数においてデータを前記一方向とは反対の方向へ伝送せしめることを特徴とするコンピュータプログラム。
  18. 請求項15に記載のプログラムにおいて、前記1以上の中央アービタを動作せしめるステップはさらに、当該中央アービタから前記複数の制御装置に制御信号を発行せしめることを特徴とするコンピュータプログラム。
  19. 請求項14から18のいずれかに記載のコンピュータプログラムをコンピュータから読み取り可能に記録したことを特徴とする記録媒体。
  20. 複数のバスユニットのそれぞれにデータ入出力部としてデータランプを設け、
    それら複数のデータランプのうち任意の2個の間に生じる全経路のうち一部の経路のみを直接データバスで接続し、
    直接データバスで接続されたデータランプ間のデータ伝送は、当該データバスにて直接的に実行する一方、直接データバスで接続されていないデータランプ間のデータ伝送は、それらのデータランプが直接データバスで接続された別のデータランプを経由して実行することを特徴とするデータ伝送方法。
JP2006049931A 2005-03-10 2006-02-27 データスイッチとデータ伝送方法 Expired - Fee Related JP4346614B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/077,330 US20060206657A1 (en) 2005-03-10 2005-03-10 Single port/multiple ring implementation of a hybrid crossbar partially non-blocking data switch

Publications (2)

Publication Number Publication Date
JP2006254434A true JP2006254434A (ja) 2006-09-21
JP4346614B2 JP4346614B2 (ja) 2009-10-21

Family

ID=36939111

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006049931A Expired - Fee Related JP4346614B2 (ja) 2005-03-10 2006-02-27 データスイッチとデータ伝送方法

Country Status (5)

Country Link
US (1) US20060206657A1 (ja)
EP (2) EP1856618B1 (ja)
JP (1) JP4346614B2 (ja)
TW (1) TWI319531B (ja)
WO (1) WO2006095838A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101830685B1 (ko) * 2013-06-29 2018-02-21 인텔 코포레이션 온칩 메시 상호접속부

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7917730B2 (en) * 2008-04-01 2011-03-29 International Business Machines Corporation Processor chip with multiple computing elements and external i/o interfaces connected to perpendicular interconnection trunks communicating coherency signals via intersection bus controller
US7865650B2 (en) * 2008-04-01 2011-01-04 International Business Machines Corporation Processor with coherent bus controller at perpendicularly intersecting axial bus layout for communication among SMP compute elements and off-chip I/O elements
US8429382B2 (en) 2008-04-30 2013-04-23 International Business Machines Corporation Information handling system including a multiple compute element processor with distributed data on-ramp data-off ramp topology
CN104348889B (zh) * 2013-08-09 2019-04-16 鸿富锦精密工业(深圳)有限公司 切换开关及电子装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3628299A1 (de) * 1986-08-21 1988-02-25 Licentia Gmbh Verfahren und anordnung zum signaltechnisch sicheren uebertragen von seriellen daten zwischen vorzugsweise zweikanaligen sicheren rechnern unter verwendung eines doppelringbussystems
US5041963A (en) * 1988-12-29 1991-08-20 Intel Corporation Local area network with an active star topology comprising ring controllers having ring monitor logic function
JPH04156741A (ja) * 1990-10-19 1992-05-29 Nec Corp ループ・バス転送方式
DE4041235C1 (en) 1990-12-19 1992-02-20 Aeg Westinghouse Transport-Systeme Gmbh, 1000 Berlin, De Double ring bus system - has two buses which normally operate in parallel or are cross-coupled for testing to identify failure
DE19922171B4 (de) * 1999-05-12 2009-08-27 Infineon Technologies Ag Kommunikationssystem mit einem Kommunikationsbus
US6496938B1 (en) * 2000-02-11 2002-12-17 Compaq Information Technologies Group Lp Enhanced PCI clock control architecture
US20040105453A1 (en) * 2001-08-14 2004-06-03 Shpak Dale John Capacity re-use in data communication networks
KR100477641B1 (ko) 2002-01-15 2005-03-23 삼성전자주식회사 버스 시스템 및 그 데이터 전송경로 결정방법
US6981082B2 (en) * 2003-05-16 2005-12-27 Agere Systems Inc. On chip streaming multiple bus protocol with dedicated arbiter

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101830685B1 (ko) * 2013-06-29 2018-02-21 인텔 코포레이션 온칩 메시 상호접속부

Also Published As

Publication number Publication date
WO2006095838A2 (en) 2006-09-14
EP1856618B1 (en) 2014-10-22
EP1856618A2 (en) 2007-11-21
EP2816485A1 (en) 2014-12-24
EP2816485B1 (en) 2016-08-03
WO2006095838B1 (en) 2007-03-15
US20060206657A1 (en) 2006-09-14
TW200641626A (en) 2006-12-01
JP4346614B2 (ja) 2009-10-21
TWI319531B (en) 2010-01-11
WO2006095838A3 (en) 2007-02-15

Similar Documents

Publication Publication Date Title
US9652425B2 (en) Method, apparatus and system for a source-synchronous circuit-switched network on a chip (NOC)
KR101567371B1 (ko) 프로세서 내로의 지적 재산(ip) 블록들의 통합
CA2050129C (en) Dynamic bus arbitration with grant sharing each cycle
US7305510B2 (en) Multiple master buses and slave buses transmitting simultaneously
US7275119B2 (en) Early detection and grant, an arbitration scheme for single transfers on AMBA advanced high-performance bus
TWI399650B (zh) 於每一週期中藉由較高頻率仲裁器之複數匯流排仲裁之系統及在一以一匯流排頻率操作之匯流排中仲裁多個匯流排處理請求的方法
KR20000053380A (ko) 다양한 기능 모듈 접속용 포트 매니저 제어기
CN104583944B (zh) 在退出低功率部分宽度高速链路状态时的快速抗扭斜
US8285903B2 (en) Requests and data handling in a bus architecture
KR20050043426A (ko) 파이프라인 버스 시스템에서 커맨드 전송 방법 및 장치
JPH0218657A (ja) 複数バス・マイクロコンピユータ・システム
JP4182801B2 (ja) マルチプロセサシステム
CN103543954A (zh) 一种数据存储管理方法和装置
JP4346614B2 (ja) データスイッチとデータ伝送方法
US8838862B2 (en) Data transfer device, method of transferring data, and image forming apparatus
JP2013106166A (ja) クロックゲーティング回路およびバスシステム
TWI402688B (zh) 高速pci資料鏈結層傳輸器及其傳輸方法與操作方法、優先權分配方法以及優先權系統
JP2007220046A (ja) バス装置、バスシステムおよび情報転送方法
US6763415B1 (en) Speculative bus arbitrator and method of operation
KR100633773B1 (ko) 버스 시스템 및 버스 중재 방법
US20070156937A1 (en) Data transfer in multiprocessor system
KR20080030330A (ko) 온칩 네트워크의 병렬성을 높이기 위한 슬레이브 네트워크인터페이스 회로 및 그 시스템
US7979615B1 (en) Apparatus for masked arbitration between masters and requestors and method for operating the same
JP2010165175A (ja) バスの使用権を制御する装置および方法
KR102360214B1 (ko) 실시간 공유 인터페이스를 포함하는 시스템 온 칩의 스케쥴링 방법

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20060914

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061120

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080421

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080430

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080729

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090217

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090611

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

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20090622

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: 20090714

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: 20090714

R150 Certificate of patent or registration of utility model

Ref document number: 4346614

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120724

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120724

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130724

Year of fee payment: 4

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

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

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees