JP2007265108A - バスブリッジ - Google Patents
バスブリッジ Download PDFInfo
- Publication number
- JP2007265108A JP2007265108A JP2006090271A JP2006090271A JP2007265108A JP 2007265108 A JP2007265108 A JP 2007265108A JP 2006090271 A JP2006090271 A JP 2006090271A JP 2006090271 A JP2006090271 A JP 2006090271A JP 2007265108 A JP2007265108 A JP 2007265108A
- Authority
- JP
- Japan
- Prior art keywords
- bus
- blade
- inter
- data
- enable information
- 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.)
- Withdrawn
Links
Images
Landscapes
- Bus Control (AREA)
- Information Transfer Systems (AREA)
Abstract
【課題】本発明はインターロックバスであるブレード内バスを備えたブレード同士をスプリットバスであるブレード間バスを介して接続するためのバスブリッジに関し,ブレード内バスの無効データを含むデータをブレード間バスに転送可能とし,その逆方向のデータ転送も可能にすることを目的とする。
【解決手段】ブレード間バスにイネーブル情報伝達手段を設け,ブレード内バスのバイトイネーブル情報からブレード間バスのイネーブル情報を生成してイネーブル情報伝達手段へ出力するバイトイネーブル生成情報手段を備えたブレード間バス用変換部と,ブレード間バスのイネーブル情報伝達手段からの情報に基づいてブレード内バスのバイトイネーブル情報を生成するバイトイネーブル情報生成手段を備えたブレード内バス用変換部とを備えるよう構成する。
【選択図】図1
【解決手段】ブレード間バスにイネーブル情報伝達手段を設け,ブレード内バスのバイトイネーブル情報からブレード間バスのイネーブル情報を生成してイネーブル情報伝達手段へ出力するバイトイネーブル生成情報手段を備えたブレード間バス用変換部と,ブレード間バスのイネーブル情報伝達手段からの情報に基づいてブレード内バスのバイトイネーブル情報を生成するバイトイネーブル情報生成手段を備えたブレード内バス用変換部とを備えるよう構成する。
【選択図】図1
Description
本発明はメモリ等の複数のIC回路間のバス制御をインターロック式で行うブレード内バスを備えたブレード同士がスプリット式のバス制御を行うブレード間バスを介してデータ転送を行うバスブリッジに関する。
メモリ等のICを含む制御部,インタフェース部等をインターロック式のバス制御により接続を行うブレード内バスを備えた複数のブレードを備え,各ブレード間のデータ転送をブレード間バスを用いて実行する装置は,交換機等の通信装置やワークステーション等の情報処理装置の技術において採用されている。
現在の高性能な通信装置やワークステーションでは,1つの装置の中に機能分割された複数枚のブレード(ボードと呼ぶ場合もある)を搭載し,これらを組み合わせることによって性能のスケーラビリティの向上や,機能のバリエーションを増やすことを実現している。これらの装置は,共通のバス(ブレード間バス)によってブレード間を接続してブレード同士がアクセスできるようにし,ブレードが持つそれぞれの機能の連携を図るような内部構造となっている。ブレード内では,それぞれのブレードごとに内部バス(ブレード内バス)を持っており,バスブリッジ(LSIで構成)によりこれらブレード内とブレード間のバスを接続している。バスブリッジでは,ブレード内バスからブレード間バスへ,またブレード間バスからブレード内バスへの通信において,それぞれのバスプロトコルに合うようパケットのプロトコル変換を行い,ブレード間の通信を可能としている。
図8は本発明が対象とする電子装置の構成例である。図8において,50は電子装置であり,具体的には交換機の制御装置等の通信装置や,ワークステーション等の情報処理装置として構成され,51−1〜51−4はブレード(またはボード),510はブレード内バスであり,図示省略された複数のIC回路(例えば,CPU,メモリ,インタフェース回路等)が接続され,インターロックバスによりブレード内バスのデータ転送を行う。このインターロックバスは,データのライト指示やリード要求などのバスアクセス開始から,アクセス先のデバイスからのライト完了通知やリードデータ返送などの完了応答までバスを占有する仕様であり,PCIバスなどはその代表例であり,様々な機能を持った汎用のデバイスやLSIが,このバスに直接接続される。
511はブレード内バス510とブレード間バス52の間でデータフォーマットの変換を行うバスブリッジ回路である。52はブレード間バスであり,ブレードとブレードの間でデータを転送するためのバスであり,ブレード間バスには,アクセス開始と,それに対するアクセス先からの応答の間でバスを一時開放する仕様であるスプリットバスが使われており,TOXバス(坂村編,TRON Standard System Bus TOXBUS Ver.1.00.00.00,(社) トロン協会, 1992) 等がある。スプリットバスでは,バスを開放している間は他のブレードがバスを使用することが可能であるため,データ転送可能な帯域を効率よく取ることができる。
ブレード内バスとブレード間バスのバスプロトコル変換はバスブリッジにより行っているため,ブレード内バスに接続される汎用デバイス(LSI)は,他のデバイスにアクセスする際,同一ブレード内であるか,他のブレードにあるデバイスであるかを意識することなしに,装置内のデバイスにアクセスすることができる。
ブレード内バス(インターロックバス)では,データをやりとりするデータバスの他に,データバスのバイトレーン(バイト(8ビット)単位のパス)ごとの有効/無効を示すバイトイネーブル信号を持っている。これを使用することにより,アドレスに連続性のないデータもパケットとして表現することが可能となるため,転送データについてはアクセスしたいデータを,メモリイメージのままバイト単位に指定して送受信することが可能となる。また,PCIバスでは,アドレスが連続した複数のアクセスを1つにまとめること,もしくは同一アドレスであり,有効バイトレーンの異なる複数のアクセスを1つにまとめることが可能であることが仕様上明記されているため,上記メモリイメージでの転送のほか,バスアクセスのタイミングにより,複数のアクセスが1つにまとまったことにより,バイトレーンに隙間のあるパケットが生成されることが起こり得る。
図9はブレード内バスのデータと有効データの関係を示す。図のAはデータ長が4バイト(32ビット)であり,第1バイト(データ0〜7ビット),第2バイト(データ8〜15ビット),第3バイト(データ16〜23ビット),第4バイト(データ24〜31ビット)で構成する。ブレード内バスでは,Aに示すデータの各バイト毎に,Bに示すようにバイトデータが有効(“1”)か無効(“0”)であるのかを表すビットからなるバイトイネーブル情報(この例では合計4ビット)がデータと並列に転送される。ブレード内バスにより転送元の回路からAとBのデータを受け取った相手側では,データAからバイトイネーブル情報Bを用いてCに示すような有効データを復元する。
図10はバスブリッジによる連続データのフォーマット変換の例を示す。図のAはブレード内バスのパケットフォーマットであり,ブレード内バスに接続された回路から発生し,この例は書き込みのためのアドレス,データを含むパケットであり,メモリのアドレスa1,コマンド(ライト,リード等を設定)a2,データ(この例は,先頭から3バイトの有効データで構成)a3,バイトイネーブル情報(先頭から3ビットが“1”で4バイト目は“0”)a4である。このブレード内バスのパケットが図10のBで示すバスブリッジ(図8の511)に入力すると,バスブリッジでフォーマットが変換され,Cに示すブレード間バスのパケットフォーマットとなる。Cのパケットはコマンドc1,バイト長(先頭データからのバイト長が設定され,この例では“3”)c2,アドレスc3,有効データc4とで構成され,ブレード間バスのパケットCにはバイトイネーブル情報を含まない。この図10の例では,バスブリッジによりブレード内バスのパケットAからブレード間バスのパケットCへの変換は,有効データが先頭バイトから3バイト連続しているため正常に転送することができる。なお,この例では,バスブリッジにおいてブレード間バスのパケットCからブレード内バスのパケットAへのフォーマット変換も可能となる。
ブレード間バス(TOXバスのようなスプリットバス)では,大半の通信プロトコルがそうであるように,アクセス先のアドレス(先頭アドレス)と,データ長のみを設定してパケットの送受信をする仕様となっているため,有効データが連続している場合には転送が可能であるが,ブレード内バスのようにメモリイメージをそのまま転送する場合など,連続しないデータは転送することができない仕様となっている。
図11はバスブリッジによる不連続データのフォーマット変換の例を示す。図のA,B,Cはそれぞれ上記図10と同様にそれぞれ,ブレード内バスのパケットフォーマット,バスブリッジ,ブレード間バスのパケットフォーマットを表す。この例では,ブレード内バスのパケットAは,アドレスa1,コマンドa2,データa3(この例ではが先頭から2バイト連続し,第3バイトが無効,第4バイトが有効),バイトイネーブル(“1101”)a4とで構成され,これがバスブリッジBに入力されてフォーマット変換されるが,この場合,コマンドc1の次のバイト長c2は先頭からの有効バイト長が2バイトであり,バイト長を“2”に設定すると,第4バイトが含まれないので,正常な転送が行えない。
このように従来のインターロックバスであるブレード内バスを備えたブレード同士がスプリットバスであるブレード間バスを介して相互にデータを転送するためのバスブリッジによると,フォーマット変換の際にブレード内バスから不連続データをブレード間バスのフォーマットに変換することはできなかった。
無効値を含むことが許されるPCIバスのような第1のバスの転送データから,有効なデータのみを取り出して第2のバスに転送するブリッジ回路の例が知られている(特許文献1参照)。その特許文献1のブリッジ回路では,第1のバスの転送データから無効値の部分を判断して,第2のバスで転送可能な全ての転送サイズ毎(1バイト,2バイト,4バイト,8バイト,16バイト,32バイト)に独立にデータバッファに格納されたデータを,その転送サイズで分割した各データ分について無効値を含むか否かを示すフラグを生成してフラグバッファに格納し,データバッファに第2のバスの最大転送サイズ分のデータが格納されると,フラグバッファ内の中からサイズが大きい転送サイズほど優先して参照して,最大転送サイズ分のデータから無効値を含まない,より転送サイズの大きいデータ部分を優先的に順次選択して第2のバスに転送するものである。
特開平9−212449号公報
上記図8乃至図11に示したようにブレード内バス(インターロックバス)とブレード間バス(スプリットバス)は上記に説明した仕様を備えるため,ブレード内バスを持ったブレード同士をブレード間バスで接続するシステムでは,ブレード間バスでの連続したデータしか扱えないという制限により,ブレード間バスを使用する際には,ブレード内では可能であったメモリイメージをそのまま転送することを不可とするようアクセスを制限するか,ブレード内バス全体においても連続したデータしか扱わないよう仕様を制限しなければならない。
連続したバイトレーンを使用することのできるアクセスの制限は,システムの自由度を奪うことになる。またブレード内に搭載するデバイスは多彩であり,割安で,かつ動作実績のある汎用デバイスも多く搭載しているため,ブレード内バス全体での仕様を制限することは,使用できる汎用デバイスを限定することにつながるため,開発を行う上で大きなデメリットとなる。
ブレード内バスの仕様を制限しない場合,ブレード内バスにて発生した不連続データをブレード間バスに送信する事象が生じるが,現状の仕様でこれを可能とさせるためには,ブレード間バスに送出する際,分割して複数回の転送動作を実行しなければならず,ブレード間バスの転送効率を落としたシステムとせざるを得ない。
また,上記特許文献1に紹介したブリッジ回路も,分割して転送する方法に属し,分割の際に有効データが連続する最大長のものから優先的に転送することで転送効率を上げるものであり,分割することにより複数回の転送を行う必要があり効率が低下するという問題があり,更にこのブリッジ回路は第1のバスから第2のバスへのデータ転送を行うという一方向の転送だけで,双方向の転送は想定していないという問題がある。
本発明は複数のデバイスがインターロックバスであるブレード内バスで接続されたブレード同士がスプリットバスであるブレード間バスを介して相互にデータを転送するためのバスブリッジにおいて,ブレード内バスの無効データを含むデータをブレード間バスに転送可能とし,その逆方向のデータ転送も可能にするバスブリッジを提供することを目的とする。
図1は本発明の原理構成を示す。図中,1はブレード内に設けられたバスブリッジ,10はブレード内バス制御部,11はブレード間バス用変換部,11aはブレード間バス3への各バイトのイネーブル(有効,無効)を表す情報を生成するブレード間用バイトイネーブル情報生成手段,11bはバイト長生成手段,12はブレード間バス制御部,13はブレード内バス用変換部,13aはブレード間バスのイネーブル情報伝達手段(後述する3a)の情報をブレード内バス2のバイトイネーブル情報として生成するブレード内用バイトイネーブル情報生成手段である。また,2はブレード内バス,3はブレード間バス,3aは新たに設けたイネーブル情報伝達手段であり,新たな信号線を設けるか,既存の制御線を時分割で使用してバイトイネーブル情報も伝送させるか,のいずれかにより実現される。なお,ブレード内バス2とブレード間バス3のデータ(制御信号を除く)のバイト幅は同じものとする。
図2はブレード内バスを使用した装置同士がブレード間バスで接続したシステム構成を示す。図中,2,3は上記図1の同じ符号の各部と同じであり,1−1,1−2はバスブリッジ,4−1,4−2はブレード内バス(インターロックバス)の仕様によりバスブリッジ1−1と接続するデバイス,5−1,5−2,5−3,5−4はブレード間バス(スプリットバス)3と接続されたブレード(接続装置ともいう)で5−1,5−2はバスブリッジ1−1,デバイス4−1とバスブリッジ1−2,デバイス4−2を内蔵したブレードであり,この説明ではブレード5−1をアクセス元,ブレード5−2をアクセス先とする。
図2のアクセス元のブレード(接続装置)5−1のデバイス4−1からアクセス先のブレード5−2にアクセスする場合,アクセス元のブレード5−1内のデバイス4−1からブレード内バス2に対して,従来のインターロックバスのフォーマットで,アドレス(先頭データのアドレス),データ(有効データ及び無効データを含む),コマンド(ライトまたはリード),及びバイトイネーブル情報を含むデータを出力すると,バスブリッジ1−1のブレード内バス制御部10の制御でブレード間バス用変換部11に入力される。
ブレード間バス用変換部11ではブレード間用バイトイネーブル情報生成手段11aでブレード間バス用のバイトイネーブル信号を生成し,バイト長生成手段11bで受け取ったデータ長(無効データを含むバイト数)を検出して,「バイト長」の信号を生成し,その他のブレード内バス2からのアドレス,データ,コマンド等はそのままブレード間バス用のデータとする。なお,「バイト長」は,後述の図4に示すirdy信号とtrdy信号の長さにより得ることができる。具体的には,irdy信号とtrdy信号がともにアサートされた状態でクロックが立ち上がると,そこで1ワード(4バイト)とカウントする。
ブレード間バス用変換部11で変換が行われると,ブレード間バス制御部12の制御によりブレード間バス3へ変換されたデータが出力される。この時,ブレード間用バイトイネーブル情報生成手段11aで生成したバイトイネーブル情報は,図1のイネーブル情報伝達手段3aを介してブレード5−2のバスブリッジ1に入力されている。
アクセス先のブレード5−2(図2)のバスブリッジ1−2では,上記のアクセス元のブレード5−1のバスブリッジ1−1からブレード間バス3(イネーブル情報伝達手段3aを含む)に出力されたデータがバスブリッジ1−2へ入力され,ブレード間バス制御部12の制御でブレード内バス用変換部13で,コマンド,バイト長,アドレス,データとイネーブル情報伝達手段3aからのバイトイネーブル情報を受け取る。この時,コマンド,アドレスは内容を変えることなく,バイトイネーブル情報はブレード内用バイトイネーブル情報生成手段13aによりブレード内バス2のバイトイネーブル情報の形式に変換され,また,ブレード間バス3からのデータは,ブレード間バス3に含まれたバイト長で指定されたバイト長のデータが選択される。ブレード内バス用変換部13の変換により生成された結果は,ブレード内バス制御部10の制御によりブレード内バス2に出力され,アクセス先のブレード5−2のデバイス4−2に供給されて,コマンドに従ってライト,リード等の処理が行われる。なお,アクセス先のブレード5−2における処理の結果として得られたデータ(例えば,リードコマンドにより得られた読み出しデータ)は,ブレード5−2からブレード5−1に対してブレード間バス3を介して上記したのと逆のルート(ブレード5−2のバスブリッジ1−2,ブレード間バス3,ブレード5−1のバスブリッジ1−1)を通って転送することかできる。
ブレード間バスにバイトイネーブル情報伝達用の信号線を追加した場合,従来のバスブリッジ(上記図8のバスブリッジ回路511)と本発明によるバスブリッジを混載した場合,従来のバスブリッジではバイトイネーブルの情報を送信しないので,バイトイネーブル情報の信号線が故障した場合,故障であるのか従来のバスブリッジからの送信であるのか見分けがつかなくなる。この対策として,バスブリッジにおいて,バイトイネーブル情報を送信できる他の装置のアドレスを登録するレジスタを持つことにより,送受信の相手先のバスブリッジが従来型か本発明によるものかを認識することにより,バイトイネーブル情報を受信できなかった場合に,それが故障による誤った情報であるか判断できるようにする。
また従来型の送信か故障かを見分ける別の手段として,バスブリッジにおいて,バイトイネーブル情報にて無効バイトレーンに指定されたバイトレーンについては意図的にパリティエラー情報を送信する方法が考えられる。これによりバイトイネーブル情報が故障した場合や,受信先がバイトイネーブル情報を受け取れない従来型であった場合には,受信側でパリティエラーを検出するため,誤ったデータを受信させないようにすることが可能となる。
また他のバイトイネーブル情報を付加する手段として,パケットフォーマットにバイトイネーブルのマッピング情報を付加する方法が考えられるが,その方法によれば,バスブリッジの部品交換のみで従来方式からの移行が可能となる。
本発明によれば,ブレード間バスで使用することができなかった無効バイトレーンを含んだデータの転送が,ブレード間バスを越えた先まで可能となるため,ブレード内のみで可能であったメモリアドレスを意識した,メモリイメージでの転送がブレード間でも可能となり,ブレード間での通信を,よりダイレクトに効率よく行うことができるようになる。
また不連続なデータの場合ブレード間バスではデータを分割して送出する方法と比べても,ブレード間バスの帯域を大きく使えるため,ブレード間バスの転送効率を向上させることができる。
図3はバスブリッジの実施例の構成である。図3において,1,2,3は上記図1の同一符号の各部と同じであり,1はバスブリッジ,2はブレード内バス,3はブレード間バスであり,30はバイトイネーブル情報信号線(図1のイネーブル情報伝達手段3aに対応)である。また,バスブリッジ1内の10はブレード内バス制御部であり,ブレード内バス2の各制御信号をバスプロトコルに基づいて制御し,他装置との信号のやりとりを行ったり,バッファ111,バッファ133の読み取り,書き込みを制御する。110〜114は図1のブレード間バス用変換部11に対応し,110はブレード内バス受信部,111はバッファ,112はブレード間用バイトイネーブル情報生成部(図1のブレード間用バイトイネーブル情報生成手段11aに対応),113はバイト長生成部(図1のバイト長生成手段11bに対応),114はブレード間バス送信部,115はデータ送信後に送信先装置から送られるステータス情報を受信し,ブレード間バス制御部12に通知するステータス受信部である。12はブレード間バス制御部であり,ブレード間バスの制御信号を制御し,他装置との信号のやりとりを行ったり,バッファ111,バッファ133の読み取り,書き込みを制御する。130〜134は図1のブレード内バス用変換部13に対応,130はデータ受信後にその受信状態に基づき,送信元装置に対してステータス情報を送るステータス送信部,131はブレード間バス受信部,132はブレード内用バイトイネーブル情報生成部(図1のブレード内用バイトイネーブル情報生成手段13aに対応),133はバッファ,134はブレード内バス送信部である。
図4はブレード内バスからブレード間バスへのライトアクセス時のタイムチャートである。
図4は,図3のブレード内バス2がPCIバス(インターロックバス),ブレード間バス3がTOXバス(スプリットバス)として,アクセス元装置(図2の5−1)のデバイス4−1からアクセス先装置(図2の5−2)にライトアクセスを行った場合のバスブリッジ(図2の4−1)におけるタイムチャートを示す。この実施例では,バイトイネーブル情報を付加する手段としてバイトイネーブル情報信号線30を使用し,このバイトイネーブル情報信号線30にバイトイネーブル情報信号sbeが出力される。
図4の(1) に示すようにクロック(CLK)信号の発生に対し,アクセス元装置(図2の5−1)のブレード内バスでは図4の(2) 〜(7) の各信号線に出力が発生し,図4の(2) のようにフレーム内バスのフレーム信号(frame)がクロック2のタイミングでアサートされるとアクセスが開始する。クロック2のタイミングにブレード内バスの(4) で示すA/D(アドレス/データ)の信号線に最初にアドレス(add)が出力され,その後のクロック3のタイミングでデータ(data)が出力される。また,ブレード内バスの図4の(5) に示すc/be(コマンド(comand)/バイトイネーブル(byte enable))の信号線にクロック2のタイミングでコマンドを出力し,クロック3のタイミングでデータ上の有効バイトに対応する有効ビットを表示してデータを送出する。
バスブリッジでは,図4の(6) に示すデバイス選択(devsel:device select) の信号線の信号が立下がることで,アクセス先装置(図2の5−2)宛のアクセスとして認識される。図4の(7) は相手側でデータを受け付けたことを表す送信レディ(trdy)の信号線であり,転送完了のタイミングで出力が発生する。
上記図4の(1) 〜(7) の信号が図3のバスブリッジに入力するとブレード内バス制御部10の制御によりブレード内バス受信部110で各信号が受信されてバッファ111に格納される。バッファ111の各信号はブレード間バス制御部12の制御により読み出され,その中のバイトイネーブル情報(図4の(5))はブレード間用バイトイネーブル情報生成部112に供給され,ブレード間用バイトイネーブル情報が生成され,コマンド,アドレス,データ(バイト長は図4では図示省略されているが,ブレード間バス3のコマンド信号に含まれて転送される)等の各信号が発生し,ブレード間バス送信部114からブレード間バス3及びバイトイネーブル情報信号線30へ図4の(8) 〜(13)に示すように各信号が出力される。
この各信号の動作タイミングについて説明すると,バスブリッジは,図4の(8) のバススタート(sbs)の信号がクロック6のタイミングで発生してアクセス先装置(図2の5−2)宛のアクセスを開始する。この時,図4の(9) のブロック転送モード通知の信号(sbk)も発生し,この信号はバスサイクルが2サイクル以上あることを表す。更に,同じタイミングで図4の(10)のコマンド/アドレス及びデータ(scad:comand/address data:コマンド/アドレス及びデータ)の信号線によりコマンド(バイト長情報を含む),アドレスが発生し,その後のタイミングでデータがアクセス先装置に対して通知される。
また,コマンド/アドレスの信号の発生に同期して,上記したブレード間用バイトイネーブル情報生成部(図3の112)で図4の(11)に示すブレード間バイトイネーブル(sbe) の信号が出力される。これによりデータ出力(図4の(10)のscad)のどのバイトレーンが有効であるかの情報が同時に通知される。なお,図4の(12)の信号(sst) はステータス(status)信号であり,(13)の信号(sstvld)はステータス信号の有効なタイミングを表す。
図4のブレード間バスの(8) 〜(13)の各信号に示すアクセスを受け付けるアクセス先装置(図2の5−2)のバスブリッジ(図2の1−2)のブレード内バス2では,図4の(14)〜(19)に示す各信号が発生する。
バスブリッジでこのアクセスを受け取ると,クロック11(図4の(1) 参照)のタイミングで図4の(14)のフレーム(frame) をアサートして,ブレード内バス2に接続されたアクセス先のデバイス(図2の4−2)に向けてアクセスを開始する。同じタイミングで,図4の(16)に示すA/D(アドレス/データ)線にアドレス,次のサイクルではデータが出力される。またブレード間バス受信部(図3の131)で,ブレード間バスのバイトイネーブル情報信号線(図3の30)から受け取った信号から,ブレード内用バイトイネーブル情報生成部(図3の132)でバイトイネーブル情報が生成される。このバイトイネーブル情報は図4の(17)に示すようにブレード内バス2のコマンド/ バイトイネーブル(c/be)の信号線にコマンドの出力の次のタイミングで出力される。なお,コマンド及びバイトイネーブルの信号はブレード間バス受信部(図3の131)でブレード間バス3とバイトイネーブル情報信号線(図3の30)から受け取った信号に基づいて,ブレード内用バイトイネーブル情報生成部(図3の132)で生成され,ブレード間バス制御部12の制御によりバッファ133に格納された後,ブレード内バス制御部10の制御によりブレード内バス送信部134からブレード内バス2の各信号線に決められたタイミングで出力される。なお,ブレード内バス2から受け取ったバイトイネーブル情報に基づいてブレード間バスへバイト長情報がバイト長生成部(図3の113)から生成され,上記図4の(10)のscad線によりコマンド(com)に含まれて伝達されるが,図3では図示省略されている。
アクセス先ブレード(図2の5−2)のデバイス(図2の4−2)では,上記図4の(14)〜(19)のブレード内バスからのコマンド,アドレス,データ,バイトイネーブル情報を受け取ることにより,有効なデータを全て受け取り,コマンド(リード/ライト等)に従った処理を実行する。
以上の通り,データのほかバイトイネーブル情報もアクセス元装置のデバイス,ブレード内バス,バスブリッジを介してブレード間バスへ出力され,アクセス先装置のバスブリッジ,ブレード内バスを通ってアクセス先のデバイスまで,切れることなく引継がれるため,バイトイネーブル情報の有効ビットが連続しなくても,アクセス先のデバイスまで正確に伝達できる。
図5は本発明によるブレード内バスとブレード間バスのフォーマット変換の例である。図中,Aはブレード内バスパケットフォーマット,Bはバスブリッジ,Cはブレード間バスパケットフォーマットである。ブレード内バスパケットのアドレス(図5のa1)に先頭データのアドレス,データ(図5のa2)に無効データを含むデータが設定され,コマンド(同a3)にライト,リード等を設定し,バイトイネーブル(同a4)にイネーブルのビット列(図の例は4バイト分の「1101」)が設定される。このフォーマットのパケットがバスブリッジBに入力すると,上記図3に示す構成によりフォーマットが変換され,図5のCに示すパケットフォーマットとなる。すなわち,コマンド(図5のc1),バイト長(同c2:先頭データからのバイト長であり,図の例は“4”),アドレス(同c3),データ(同c4),バイトイネーブル情報(同c5:バスブリッジで生成)とで構成される。
図6はブレード間バスのバイトイネーブル情報の転送方法の例を示す。バイトイネーブル情報は,図3に示すようにバイトイネーブル情報信号線30により伝送するようにしてもよいが,図6のようにブレード間バスのパケットフォーマットにバイトイネーブルのマッピング情報を付加することにより転送することができる。すなわち,図6の例は,データ(図6のc4)が4×3=12バイトであり,コマンド(同c1)に続くバイト長(同c2)として先頭データからのバイト長には無効バイトを含め“12”が設定される。バイト長の後,アドレス(図6のc3),データ(同c4)が4バイト×3が設定され,最後のバイトイネーブル情報として,12ビットの有効バイト位置を表す情報が設定され,図6の例は,バイナリ表示(B)が「1011 1111 1011」であり16進表示(H)では「DFB」となる。このようにブレード間バスパケットの情報としてブレード間バス上にアドレスやデータと異なるタイミングでバイトイネーブルのパターンを発生することにより,既存のブレード間バスの信号線をそのまま使用できることになるため,バスブリッジの部品交換のみで従来方式からの移行が可能となる。
図7は新・旧のバスブリッジが混在している場合の処理フローである。
図3に示す本発明によるバスブリッジを新型バスブリッジとすると,この新型バスブリッジを備えたブレードと従来の旧型のバスブリッジ(図8のバスブリッジ回路511等)とがブレード間バスに混在する場合,旧型のバスブリッジからブレード間バスにバイトイネーブル情報が出力されないため,このブレード間バスの信号を新型バスブリッジで受信すると誤動作する可能性がある。そのような誤動作を防止して,相手に対応してエラーとならないで適切に処理を行うために,図3に示すバスブリッジ1の中のブレード間バス受信部131にアドレス情報登録レジスタ130aを設け,ここに新型バスブリッジを備えたブレードのアドレスを登録し,更に全て有効としたバイトイネーブル情報(全ビットが“1”)を設定したレジスタ130bを設ける。また,図7内の132はブレード内用バイトイネーブル情報生成部(図3),133はバッファである。
図7において,ブリッジ間バスより受信のアドレス情報(図7の31)はバッファ133へ供給されると共に,アドレス情報登録レジスタ130aに登録された各アドレスと比較して一致するものがあるか検索する(図7のS1)。この検索結果は,ステップS2に入力され,検索で一致するアドレスがあった場合,ブリッジ間バスより受信のバイトイネーブル情報(図7の32)を選択し,一致するアドレスがなかった場合は全て有効としたバイトイネーブル情報(図7の130b)を選択する(図7のS2)。選択された結果はブレード内用バイトイネーブル情報生成部132に入力されて,ブレード内バスのイネーブル情報に変換され,その内容がバッファ133に格納される。バッファ133にはブレード間バスからの他の情報(コマンド,データ等)も格納されるが,図示省略されている。
(付記1) インターロックバスであるブレード内バスに接続したデバイスを備えたブレード同士をスプリットバスであるブレード間バスを介して接続するためにブレード内に設けたバスブリッジにおいて,前記ブレード間バスにイネーブル情報伝達手段を設け,前記ブレード内バスの信号が入力され,ブレード内バスのバイトイネーブル情報からブレード間バスのイネーブル情報を生成して前記イネーブル情報伝達手段へ出力するバイトイネーブル情報生成手段を備えたブレード間バス用変換部と,前記ブレード間バスからの信号入力に対し,前記イネーブル情報伝達手段からの情報に基づいてブレード内バスのバイトイネーブル情報を生成するバイトイネーブル情報生成手段を備えたブレード内バス用変換部とを備え,前記ブレード内バス上のデータにおいて有効バイトが連続していない場合でも,ブレード間バスを経由し,ブレード間バスに接続された他ブレードのブレード内バスにデータを伝達することを特徴とするバスブリッジ。
(付記2) 付記1において,前記イネーブル情報伝達手段として,前記ブレード間バスにバイトイネーブル情報を伝達するための信号線を設けることを特徴とするバスブリッジ。
(付記3) 付記1において,前記イネーブル情報伝達手段として,ブレード間バスへのパケットフォーマットにバイトイネーブルのマッピング情報を付加することにより伝達することを特徴とするバスブリッジ。
(付記4) 付記1において,前記ブレード間バス用変換部は,ブレード内バスからのデータに基づいてブレード間バスへ出力されるデータのバイト長を生成するバイト長生成手段を備え,前記ブレード内バス用変換部は,前記ブレード間バスのバイト長の情報からブレード内バスにデータを出力する手段を備える,ことを特徴とするバスブリッジ。
(付記5) 付記1において,前記ブレード内バス上の信号は,アドレス,コマンド,データ,及びバイトイネーブル情報とで構成し,前記ブレード間バス上の信号は,コマンド,バイト長,アドレス,データ及び前記イネーブル情報伝達手段を構成する信号線上のバイトイネーブル情報とで構成することを特徴とするバスブリッジ。
(付記6) 付記1において,前記ブレード内バス用変換部に,前記ブレード間バスへの前記イネーブル情報を送信できる他ブレードのアドレスを登録するアドレス登録レジスタを設け,ブレード間バスからのアドレス情報を受信すると前記アドレス登録レジスタを検索し,一致が検出されると前記ブレード間バスより受信したバイトイネーブル情報を選択し,一致が検出されないと全て有効としたバイトイネーブル情報を選択して,ブレード内用バイトイネーブル情報を生成することを特徴とするバスブリッジ。
1 バスブリッジ
10 ブレード内バス制御部
11 ブレード間バス用変換部
11a ブレード間用バイトイネーブル情報生成手段
11b バイト長生成手段
12 ブレード間バス制御部
13 ブレード内バス用変換部
13a ブレード内用バイトイネーブル情報生成手段
2 ブレード内バス
3 ブレード間バス
3a イネーブル情報伝達手段
10 ブレード内バス制御部
11 ブレード間バス用変換部
11a ブレード間用バイトイネーブル情報生成手段
11b バイト長生成手段
12 ブレード間バス制御部
13 ブレード内バス用変換部
13a ブレード内用バイトイネーブル情報生成手段
2 ブレード内バス
3 ブレード間バス
3a イネーブル情報伝達手段
Claims (4)
- インターロックバスであるブレード内バスに接続したデバイスを備えたブレード同士をスプリットバスであるブレード間バスを介して接続するためにブレード内に設けたバスブリッジにおいて,
前記ブレード間バスにイネーブル情報伝達手段を設け,
前記ブレード内バスの信号が入力され,ブレード内バスのバイトイネーブル情報からブレード間バスのイネーブル情報を生成して前記イネーブル情報伝達手段へ出力するバイトイネーブル情報生成手段を備えたブレード間バス用変換部と,
前記ブレード間バスからの信号入力に対し,前記イネーブル情報伝達手段からの情報に基づいてブレード内バスのバイトイネーブル情報を生成するバイトイネーブル情報生成手段を備えたブレード内バス用変換部とを備え,
前記ブレード内バス上のデータにおいて有効バイトが連続していない場合でも,ブレード間バスを経由し,ブレード間バスに接続された他ブレードのブレード内バスにデータを伝達することを特徴とするバスブリッジ。 - 請求項1において,
前記イネーブル情報伝達手段として,ブレード間バスへのパケットフォーマットにバイトイネーブルのマッピング情報を付加することにより伝達することを特徴とするバスブリッジ。 - 請求項1において,
前記ブレード間バス用変換部は,ブレード内バスからのデータに基づいてブレード間バスへ出力されるデータのバイト長を生成するバイト長生成手段を備え,
前記ブレード内バス用変換部は,前記ブレード間バスのバイト長の情報からブレード内バスにデータを出力する手段を備える,
ことを特徴とするバスブリッジ。 - 請求項1において,
前記ブレード内バス用変換部に,前記ブレード間バスへの前記イネーブル情報を送信できる他ブレードのアドレスを登録するアドレス登録レジスタを設け,
ブレード間バスからのアドレス情報を受信すると前記アドレス登録レジスタを検索し,一致が検出されると前記ブレード間バスより受信したバイトイネーブル情報を選択し,一致が検出されないと全て有効としたバイトイネーブル情報を選択して,ブレード内用バイトイネーブル情報を生成することを特徴とするバスブリッジ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006090271A JP2007265108A (ja) | 2006-03-29 | 2006-03-29 | バスブリッジ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006090271A JP2007265108A (ja) | 2006-03-29 | 2006-03-29 | バスブリッジ |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007265108A true JP2007265108A (ja) | 2007-10-11 |
Family
ID=38638019
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006090271A Withdrawn JP2007265108A (ja) | 2006-03-29 | 2006-03-29 | バスブリッジ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007265108A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012238158A (ja) * | 2011-05-11 | 2012-12-06 | Canon Inc | データ転送装置及びデータ転送方法 |
JP2022142776A (ja) * | 2021-03-16 | 2022-09-30 | インフィニオン テクノロジーズ アクチエンゲゼルシャフト | マスタ、スレーブ、マスタスレーブ通信システム、オンチップインターコネクトシステム、マスタを動作させる方法、スレーブを動作させる方法、マスタスレーブ通信システムを動作させる方法、およびオンチップインターコネクトシステムを動作させる方法 |
-
2006
- 2006-03-29 JP JP2006090271A patent/JP2007265108A/ja not_active Withdrawn
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012238158A (ja) * | 2011-05-11 | 2012-12-06 | Canon Inc | データ転送装置及びデータ転送方法 |
JP2022142776A (ja) * | 2021-03-16 | 2022-09-30 | インフィニオン テクノロジーズ アクチエンゲゼルシャフト | マスタ、スレーブ、マスタスレーブ通信システム、オンチップインターコネクトシステム、マスタを動作させる方法、スレーブを動作させる方法、マスタスレーブ通信システムを動作させる方法、およびオンチップインターコネクトシステムを動作させる方法 |
JP7309951B2 (ja) | 2021-03-16 | 2023-07-18 | インフィニオン テクノロジーズ アクチエンゲゼルシャフト | マスタ、スレーブ、マスタスレーブ通信システム、オンチップインターコネクトシステム、マスタを動作させる方法、スレーブを動作させる方法、マスタスレーブ通信システムを動作させる方法、およびオンチップインターコネクトシステムを動作させる方法 |
US11888618B2 (en) | 2021-03-16 | 2024-01-30 | Infineon Technologies Ag | Master, slave, master-slave-communication system, on-chip interconnect system, method for operating a master, method for operating a slave, method for operating a master-slave communication system and method for operating an on-chip interconnect system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8135873B2 (en) | Information processing device for performing information exchange between a PCI express bus and a non-PCI express bus interface | |
KR100611268B1 (ko) | 가상 채널 설정을 위한 강화된 일반 입출력 아키텍처 및관련 방법 | |
CN103490852B (zh) | 用于处理与点到点数据链路有关的数据的方法和装置 | |
JP4928732B2 (ja) | データ転送システム及び電子機器 | |
US7698484B2 (en) | Information processor configured to detect available space in a storage in another information processor | |
KR20210033996A (ko) | 전용 저 레이턴시 링크를 사용한 다수의 하드웨어 가속기에 대한 통합된 어드레스 공간 | |
US7821919B2 (en) | Data processing apparatus and data processing method | |
US7424565B2 (en) | Method and apparatus for providing efficient output buffering and bus speed matching | |
JP2006195871A (ja) | 通信装置、電子機器、及び画像形成装置 | |
CN101169771B (zh) | 一种axi内部总线的外部接口装置及其数据传输方法 | |
JP2006302250A (ja) | PCI−Express通信システム | |
CN114265872B (zh) | 一种用于总线的互联装置 | |
JP2007087082A (ja) | 情報処理装置およびオプションデバイス共有方法 | |
JP3584789B2 (ja) | データ転送制御装置及び電子機器 | |
KR20040041644A (ko) | 향상된 범용 입력/출력 아키텍쳐에서의 에러 포워딩 | |
JP5151176B2 (ja) | データ通信装置、画像処理システムおよびデータ通信方法 | |
US6442670B2 (en) | Data processing system including a shared memory resource circuit | |
EP1091301B1 (en) | Method and apparatus for transmitting operation packets between functional modules of a processor | |
US7028132B2 (en) | Distributed peer-to-peer communication for interconnect busses of a computer system | |
US6557060B1 (en) | Data transfer in host expansion bridge | |
JP4287325B2 (ja) | 画像システム | |
JP2007065847A (ja) | 情報処理システム、プログラムおよびデータ転送方法 | |
JP2007265108A (ja) | バスブリッジ | |
JP2007316755A (ja) | PCI−Express通信システム | |
EP0983554B1 (en) | Interfacing peripheral devices via a slave group interface device to a bus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20090602 |