JP2006209456A - 複数の処理ノードをシリアルバスにより相互接続する装置 - Google Patents

複数の処理ノードをシリアルバスにより相互接続する装置 Download PDF

Info

Publication number
JP2006209456A
JP2006209456A JP2005020512A JP2005020512A JP2006209456A JP 2006209456 A JP2006209456 A JP 2006209456A JP 2005020512 A JP2005020512 A JP 2005020512A JP 2005020512 A JP2005020512 A JP 2005020512A JP 2006209456 A JP2006209456 A JP 2006209456A
Authority
JP
Japan
Prior art keywords
port
switch
cpu
upstream
ports
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
JP2005020512A
Other languages
English (en)
Other versions
JP4398386B2 (ja
Inventor
Seisuke Obara
成介 小原
Kazunori Masuyama
和則 増山
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2005020512A priority Critical patent/JP4398386B2/ja
Priority to KR1020050039339A priority patent/KR100708565B1/ko
Priority to US11/133,335 priority patent/US7461194B2/en
Priority to CNB2005100807401A priority patent/CN100405352C/zh
Publication of JP2006209456A publication Critical patent/JP2006209456A/ja
Application granted granted Critical
Publication of JP4398386B2 publication Critical patent/JP4398386B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • 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
    • 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
    • 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/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal

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)
  • Bus Control (AREA)
  • Multi Processors (AREA)
  • Small-Scale Networks (AREA)

Abstract

【課題】 PCI−Expressバスのようなシリアルバスにより複数のCPUノードを相互接続したコンピュータシステムにおいて、CPUノードの増減等の要因により構成が変化した場合でも、システム動作を可能にする。
【解決手段】 スイッチユニット202のコントローラ222は、スイッチ221の各ポートのリンクが確立する前にCPUユニット201−0〜201−3が実装されているか否かを確認し、実装されているCPUユニットの1つが接続されているポートをアップストリーム・ポートに設定し、他のポートをダウンストリーム・ポートに設定する制御を行う。
【選択図】図2

Description

本発明は、複数のCPU(中央処理装置)ノードから構成されるコンピュータシステムのノード間をシリアルバスにより相互接続する装置および方法に関する。より具体的には、高速シリアルバスであるPCI−Expressバスにより複数のCPUノードが相互接続される構成のコンピュータシステムにおいて、相互接続に用いられるPCI−Expressスイッチとその制御装置に関する。
近年、データの電子化の進展に伴い、コンピュータシステムが処理しなければならないデータの量が急激に増大し続けている。この要求に対応するために、コンピュータシステム内部を接続する相互接続技術も、高速かつ大容量のデータ転送を可能にすべく、進歩を続けている。
従来は、PCI(Peripheral Component Interconnect )バスがコンピュータシステム内部の相互接続機能として広く利用されてきたが、高速かつ大容量でありながら実装コストの低いシリアルタイプの相互接続機能が、近い将来、主流になると考えられている。特に、PCIバスの後継としてPCI−SIG(Special Interest Group)により策定されたシリアルタイプの相互接続機能であるPCI−Expressバスは、デスクトップPC(Personal Computer )から大規模サーバやストレージ装置まで、様々なタイプのコンピュータシステムで広く利用されることが期待されている。
図18は、従来のPCIバスを用いたコンピュータシステムを示している。図18のコンピュータシステムは、CPU11、メモリコントローラ(MCH)12、複数のメモリ13−1〜13−4、およびI/Oコントローラ(ICH)14より構成される。I/Oコントローラ14は、複数のPCIバスを有し、PCIスロット15−1〜15−4にはPCIデバイスが搭載されたカードを実装することができる。PCIバスの動作周波数は33〜133MHzであり、バス幅は32ビットと64ビットの2種類がある。スロット当たりのバスのバンド幅は最大で両方向の合計が1GB/sとなる。
図19は、図18のPCIバスがPCI−Expressバスで置き換えられた例を示している。図19のコンピュータシステムは、CPU11、メモリコントローラ12、およびメモリ13−1〜13−4より構成される。メモリコントローラ12は、複数のPCI−Expressバスを有し、PCI−Expressスロット16−1〜16−4にはPCI−Expressデバイスが搭載されたカードを実装することができる。スロット当たりのバンド幅は片方向当たり1GB/sとなる。
シリアルバスであるPCI−Expressバスは、パラレルバスであるPCIバスに比べて信号数が少ないため、ハードウェアのコストを削減する効果がある。例えば、チップセットを削減でき、ボード上のワイヤを削減でき、コネクタを小さくすることができる。また、同時にPCIバスの2倍以上のバンド幅を提供することができるため、高速かつ高性能化の要求を満たすことができる。
また、複数のコンピュータと複数の周辺デバイスからなるシステムにおいて、各コンピュータが使用する周辺デバイスを任意に選択するハブボックスも知られている(例えば、特許文献1参照)。
特開2001−229119号公報
上述したように、PCI−Expressバスは高性能かつ低コストの相互接続機能として広い分野での適用が期待されているが、PCI−Expressバスは論理的にはPCIバスのアーキテクチャを踏襲しているため、複数のCPUノードを接続する目的で使用する場合に次のような問題が生じる。
図20は、図19のような構成を有するCPUノード21−1〜21−8を、複数のポートを有するPCI−Expressスイッチ22で接続した、仮想的なコンピュータシステムを示している。PCI−Expressバスの規格では、スイッチ22の1つのポートはアップストリーム・ポートと呼ばれ、システム全体の初期化を行う等の特別な役割を果たす。したがって、スイッチ22のアップストリーム・ポートに接続された特定のCPUノードが特権的な地位を占め、このCPUノードがなければスイッチ22は動作することができない。
一方、複数のCPUノードより構成されるようなサーバやストレージ装置では、製品の柔軟性を高めるため、各CPUノードは製品構成により増減可能なユニットとして扱われることがある。この場合、特定のCPUノードがなければPCI−Expressスイッチが動作できず、結果としてシステムが動作できなくなる事態は避ける必要がある。
本発明の課題は、PCI−Expressバスのようなシリアルバスにより複数のCPUノードを相互接続したコンピュータシステムにおいて、CPUノードの増減等の要因により構成が変化した場合でも、システム動作を可能にすることである。
図1は、本発明の相互接続装置の原理図である。図1の相互接続装置は、スイッチ手段101および制御手段102を備え、複数の処理ノード103−0〜103−nをシリアルバスにより相互接続する。
スイッチ手段101は、処理ノード103−0〜103−nに接続される複数のポート104−0〜104−nを有し、それらのポートのうちの1つをアップストリーム・ポートに設定し、他のポートをダウンストリーム・ポートに設定して、ポート間でデータ転送経路の切り替えを行う。
制御手段102は、スイッチ手段101の各ポートのリンクが確立する前に処理ノード103−0〜103−nの各々が実装されているか否かを確認し、スイッチ手段101のポート104−0〜104−nのうち、実装されている処理ノードの1つが接続されているポートをアップストリーム・ポートに設定し、他のポートをダウンストリーム・ポートに設定するように、スイッチ手段101を制御する。
制御手段102は、スイッチ手段101のリンクが確立して切り替え動作が可能になる前に、処理ノード103−0〜103−nが実装されているか否か、すなわち、システム内に存在するか否かを確認する。そして、処理ノードの存在が確認できたポートの中からアップストリーム・ポートに設定すべきポートを選択し、そのポートがアップストリーム・ポートとして動作し、残りのポートがダウンストリーム・ポートとして動作するように、スイッチ手段101を制御する。
相互接続装置は、例えば、後述する図2のスイッチユニット202−0または202−1に対応し、処理ノード103−0〜103−nは、例えば、図2のCPUユニット201−0〜201−3に対応する。また、スイッチ手段101は、例えば、図2のPCI−Expressスイッチ221−0または221−1に対応し、制御手段102は、例えば、図2のBMC222−0または222−1に対応する。
本発明によれば、PCI−Expressスイッチを使って複数のCPUノードを相互接続したコンピュータシステムにおいて、CPUノードの増減の要因等によりシステム構成が変化した場合でも、アップストリーム・ポートのCPUノードを割り当ててシステムを動作させることができる。これにより、PCI−Express規格特有のアップストリーム・ポートの特殊性が隠蔽される。
以下、図面を参照しながら、本発明を実施するための最良の形態を詳細に説明する。
本実施形態では、複数のCPUノードがPCI−Expressスイッチで接続されるシステムを想定する。そして、各CPUノードのプリント基板ユニット(CPUユニット)およびPCI−Expressスイッチのプリント基板ユニット(スイッチユニット)に基板管理コントローラ(Board Management Controller ,BMC)を搭載する。
BMCは、プロセッサとBMC間通信機能を有する自律的に動作可能なモジュールであり、各プリント基板ユニットのリセットや各種の監視制御を行う。スイッチユニットに搭載されるBMCは、PCI−Expressスイッチのアップストリーム・ポートを切り替え、コンフィギュレーションを行う機能と、どのCPUユニットが実装されているかを確認する機能と、PCI−Expressスイッチの各ポートのリンクが確立したかどうかを確認する機能とを有する。
CPUユニット上には、PCI−Expressスイッチとの接続部にアドレス変換モジュールが搭載される。
CPUユニットとスイッチユニット上の各BMCは相互に通信を行い、電源投入後に動作可能なCPUユニットをアップストリーム・ポートのデバイスとして選択するように、スイッチのアップストリーム・ポートの切り替えとコンフィギュレーションを行い、CPUユニットのアドレス変換モジュールの設定を行う。これにより、システムを構成するCPUユニットの数が変化した場合でも、必ずアップストリーム・ポートのCPUユニットが割り当てられるので、システムが動作可能となる。
図2は、実施形態のコンピュータシステムの構成図である。ここでは、一例としてディスクアレイ装置が示されているが、本発明の適用分野はこれに限定されるわけではない。図2のディスクアレイ装置は、4つのCPUユニット201−0〜201−3、2つのスイッチユニット202−0、202−1、および4つのディスクアレイ203−0〜203−3から構成され、CPUユニット201−0〜201−3とスイッチユニット202−0および202−1の間は、PCI−Expressバスで接続されている。各ディスクアレイは、複数のディスク装置から構成される。
CPUユニット201−i(i=0,1,2,3)は、直接メモリアクセス(Direct Memory Access,DMA)コントローラ211−i、CPU212−i、メモリコントローラ213−i、メモリ214−i、ホストインタフェース(HI)215−i、ディスクインタフェース(DI)216−i、およびBMC217−iを備える。
メモリコントローラ213−iは、CPU212−iの制御に従って、DMAコントローラ211−iとメモリ214−iの間のデータ転送、および、メモリ214−iとホストインタフェース215−iまたはディスクインタフェース216−iの間のデータ転送を行う。
ホストインタフェース215−iおよびディスクインタフェース216−iは、それぞれ複数のポートを有する。ホストインタフェース215−iは、外部のホストコンピュータ204−iと通信し、ディスクインタフェース216−iは、ディスクアレイ203−0〜203−3へのリード/ライトアクセスを実行する。
ホストインタフェース215−iでは、接続されるホストコンピュータ204−iの種類とデータ転送用途に応じて、ファイバチャネル、iSCSI(Internet Small Computer Systems Interface )、ESCON(Enterprise System Connection)等の様々なプロトコルが使用される。ディスクインタフェース216−iでは、ディスクアレイとして利用されるディスク装置の種類に応じて、ファイバチャネルやシリアルATA(AT Attachment )等のプロトコルが使用される。
スイッチユニット202−j(j=0,1)は、PCI−Expressスイッチ221−jおよびBMC222−jを備える。スイッチ221−jは、DMAコントローラ211−0〜211−3とPCI−Expressバスで接続されており、ポートを切り替えることで任意のCPUユニット間でのデータ転送を実現する。
BMC217−0〜217−3、222−0、および222−1は、互いに独自の通信チャネルにより接続されている。この例では、100Base−TXのEthernet(登録商標)によりBMC間が接続され、通信が行われる。
なお、図2の構成では、4つのCPUユニットを設けているが、CPUユニットの数が増減しても同様の動作が可能である。また、システムの冗長化および高性能化のために2つのスイッチユニットを設けているが、1つのスイッチユニットのみでも任意のCPUユニット間でデータ転送を行うことが可能である。以下の説明では、主としてスイッチユニット202−0の動作について述べるが、スイッチユニット202−1の動作もこれと同様である。
各CPUユニット201−iは、ホストコンピュータ204−iから受け取ったライト要求に従ってユーザデータをディスクアレイ203−0〜203−3へ書き込んだり、ホストコンピュータ204−iから受け取ったリード要求に従ってユーザデータをディスクアレイ203−0〜203−3から読み出したりする。
その際、CPUユニット201−iはホストコンピュータ204−iに対して、ディスクキャッシュとしての役割を果たす。つまり、ホストコンピュータ204−iから受け取ったユーザデータをすぐにはディスク装置へ書き込まずにメモリ214−iに格納しておき、リード要求を受け取るとディスク装置からデータを読み出さずにメモリ214−iからデータを読み出して応答することで、ホストコンピュータ204−iから見た応答速度を高速化している。
このように、ディスク装置に保存すべきデータをメモリ214−i上にキャッシュしておくことで応答速度を高速化できるが、メモリ214−iはディスク装置に比べると信頼性の面ではるかに劣る記憶装置である。また、メモリ214−iの揮発性のために、電源故障等の際にはデータが失われてしまう危険性がある。
このリスクを回避するために、ディスクアレイ装置内ではキャッシュデータのミラーリングが行われる。1つのCPUユニット201−m(マスタと呼ぶ)が受け取ったユーザデータはそのCPUユニット201−m内のメモリ214−mに格納するだけではなく、別のCPUユニット201−n(スレーブと呼ぶ)のメモリ214−nにもコピーして格納しておくことで、マスタのメモリ214−m内のデータが消失した場合にもスレーブのメモリ214−n内のデータを使ってホストコンピュータ204−mからの要求に答えられるようになっている。
CPUユニット201−mは、他のCPUユニット201−nのメモリ214−nに対してデータをコピーする際に、DMAコントローラ211−mを使用してパケット化したデータをスイッチユニット202−0経由で転送する。DMAコントローラ211−mは、データを転送する際にデータとアドレスを1つのパケットとして送出するが、このアドレスには相手側のCPUユニット201−n内のメモリアドレスとスイッチユニット202−0内でのルーティングアドレスが含まれている。
ここで、CPUユニット201−1がCPUユニット201−3のメモリ214−3にデータを書き込む場合を例にとり、図3を参照しながら、DMAコントローラ211−1が扱う2つのアドレスについて説明する。
各CPUユニット内のメモリアドレスは、例えば、40ビットで指定される。40ビットで指定可能なアドレスは1TBであり、近い将来にこれ以上の容量のメモリがサポートされることはないと考えられる。
スイッチ221−0は、64ビットのアドレスを扱うことができ、その上位2ビットに相当するアドレス[63:62]で、受信パケットの転送先アドレスを決定するようにコンフィギュレーションされている。アドレス[63:62]が‘00’であればパケットはCPUユニット201−0へ、‘01’であればCPUユニット201−1へ、‘10’であればCPUユニット201−2へ、‘11’であればCPUユニット201−3へ転送される。
CPUユニット201−1のDMAコントローラ211−1は、CPUユニット201−3のメモリ214−3のアドレス‘0x12_3456_7800’へデータを書き込む場合、パケットに付加するアドレスとして‘0xC000_0012_3456_7800’を指定する。スイッチ221−0は、このパケットアドレスの上位2ビットをルーティング情報として使用し、CPUユニット201−3にパケットを転送する。
CPUユニット201−3のDMAコントローラ211−3は、パケットを受け取ると、アドレスの下位40ビットに相当する‘0x12_3456_7800’だけを切り出してメモリコントローラ213−3へ転送する。
図4は、各CPUユニットのDMAコントローラから見たアドレスマップを示している。上位2ビットがルーティングアドレスとして使用されるために、以下のようなアドレス範囲と転送先CPUユニットの組み合わせがDMAコントローラ内に設定される。

0x0000_0000_0000_0000
〜0x3FFF_FFFF_FFFF_FFFF: CPUユニット201−0
0x4000_0000_0000_0000
〜0x7FFF_FFFF_FFFF_FFFF: CPUユニット201−1
0x8000_0000_0000_0000
〜0xBFFF_FFFF_FFFF_FFFF: CPUユニット201−2
0xC000_0000_0000_0000
〜0xFFFF_FFFF_FFFF_FFFF: CPUユニット201−3

システムに電源が投入されると各ユニットのBMCが動作を開始し、互いに同期をとってユニットのリセットを解除する。このとき、スイッチユニット202−0のBMC222−0はスイッチ221−0のアップストリーム・ポートを選択してからスイッチ221−0のリセット解除を行う。初期状態では、例えば、CPUユニット201−0に接続されるポートがアップストリーム・ポートとして選択される。
CPUユニット201−0が正常に動作すれば、スイッチ221−0とCPUユニット201−0の間のPCI−Expressリンクに対して自動的に初期化シーケンスが行われ、リンクが確立されて動作可能な状態になる。続いて、スイッチ221−0のアップストリーム以外のポートに対しても初期化シーケンスが行われてリンクが確立され、システム全体として動作可能な状態になる。
もし、CPUユニット201−0が存在しないか、正常に動作しなかった場合は、スイッチ221−0とCPUユニット201−0の間のPCI−Expressリンクは確立せず、スイッチ221−0の残りのポートも初期化シーケンスを始めることができず、システム全体が動作できなくなってしまう。
そこで、スイッチユニット202−0のBMC222−0は、CPUユニット201−0〜201−3の実装状況を確認し、実装されているCPUユニットのうちの1つをアップストリーム・ポートとして選択する。
また、リセットを解除した後、スイッチ221−0のリンクが確立したかどうかを監視し、一定時間を経過してもリンクが確立されない場合は、別のポートをアップストリーム・ポートとして選択してスイッチ221−0をリセットする。新たにアップストリーム・デバイスとして選択されたCPUユニットが正常に動作しなければ、さらに次のポートを選択し、次々にアップストリーム・ポートを変更して、動作可能なCPUユニットが見つかるまで同じ手順を繰り返す。
しかし、このような手順でアップストリーム・ポートを変更すると、PCI−Expressスイッチの規格に従う限り、必然的にスイッチ221−0のアドレスマップが変化してしまう。この理由を図5を参照しながら説明する。
PCI−Expressスイッチの規格では、コンフィギュレーション・レジスタとして“Prefetchable memory base address register ”(以下では、ベースアドレスレジスタと記す)と“Prefetchable memory limit address register”(以下では、リミットアドレスレジスタと記す)という2つのレジスタがあり、これらによって各ポートのアドレス範囲を指定することができる。ところが、アップストリーム・ポートとそれ以外のポート(ダウンストリーム・ポート)では、これらのレジスタが保持するアドレスの意味合いが異なる。
ダウンストリーム・ポートでは、リミットアドレスレジスタ503とベースアドレスレジスタ504の2つの値に挟まれた範囲のアドレスを持つパケットは、そのポートに対してルーティングされる。これに対して、アップストリーム・ポートでは、リミットアドレスレジスタ501とベースアドレスレジスタ502の2つの値に挟まれた範囲のアドレスを持つパケットは、そのポートに対してルーティングされず、それ以外のアドレスを持ったパケットがそのポートに対してルーティングされる。
このため、アップストリーム・ポートにルーティングされるアドレス範囲として指定できるのは、アドレスマップ全体の一番上または一番下のアドレスを含む範囲だけであって、中間の範囲のみを指定することはできないことが分かる。例えば、図4のアドレスマップでは、「CPUユニット201−1にルーティングされる範囲」をアップストリーム・ポートに対して設定することができない。
したがって、スイッチ221−0のアドレスマップを図5に示したように常に固定しておくことはできないので、図6に示すように、選択されたアップストリーム・ポートに応じて4種類のアドレスマップを使い分ける必要がある。図6の例では、アドレスマップの一番下の‘0x0000_0000_0000_0000’〜‘0x3FFF_FFFF_FFFF_FFFF’の範囲がアップストリーム・ポートに割り当てられている。
この使い分けは、各CPUユニット201−iのDMAコントローラ211−iがパケットを作成する際に指定するアドレスの設定を変更することにより行われる。DMAコントローラ211−iに対するアドレス設定変更の指示は、CPUユニット201−iのBMC217−iが行う。
図7は、CPUユニット201−0〜201−3とスイッチユニット202−0および202−1を接続するバックパネルを示している。スイッチユニット202−jのBMC222−jには、各CPUユニット201−iが存在するか否かを検出するための信号線702−iがバックパネル701を介して接続されている。この信号線702−iは、スイッチユニット202−j内では抵抗703−jを介して一定電圧VDDにプルアップされており、一方、CPUユニット201−i内ではグランドレベルに接続されている。
したがって、BMC222−jは、信号線702−i上の信号が“L”レベルか“H”レベルかをチェックすることで、対応するCPUユニット201−iが実装されているか否かを確認することができる。図7の例では、CPUユニット201−0〜201−2は実装されているので信号線702−0〜702−2の信号は“L”になり、CPUユニット201−3は実装されていないので信号線702−3の信号は“H”になる。
図8は、各CPUユニット201−iとスイッチユニット202−0の電源投入時におけるBMC217−iおよび222−0の動作シーケンスを示している。この場合、BMC217−iおよび222−0は以下の手順で動作する。
1.システムに電源が投入され、CPU212−iおよびスイッチ221−0がリセットされる。
2.各ユニットのBMC217−iおよび222−0が起動する。BMC222−0は、CPUユニット201−0〜201−3が実装されていることを確認する。
3.BMC222−0がCPUユニット201−0をスイッチ221−0のアップストリーム・ポートに設定する。
4.BMC217−iとBMC222−0の間で同期をとり、CPU212−iおよびスイッチ221−0のリセットを解除する。
5.BMC222−0がスイッチ221−0のリンクの状態を監視し、リンクが確立すると、CPUユニット201−0がアップストリーム・ポートに設定されたことをBMC217−iに対して通知する。
6.BMC217−iは、BMC222−0からの通知を受け取ると、CPUユニット201−0をアップストリーム・ポートとしてDMAコントローラ211−iの設定を行う。
7.BMC217−iがCPU212−iを起動し、これによりCPUユニット201−iが起動する。
上記5において、リンクが確立せずにタイムアウトを検出した場合、BMC222−0はスイッチ221−0をリセットし、アップストリーム・ポートをCPUユニット201−1に設定してリセットを解除する。その後、CPUユニット201−0をCPUユニット201−1に置き換えて、上記5以降の動作が行われる。さらにタイムアウトが検出された場合は、BMC222−0がアップストリーム・ポートをCPUユニット201−2、201−3に順次変更して、同様の動作を行う。
また、上記2においていずれかのCPUユニットが実装されていない場合は、上記3以降においてはその次のCPUユニットが選択される。
図9は、各CPUユニット201−iのBMC217−iの動作を示すフローチャートである。システムに電源が投入されるとCPU212−iがリセットされ(ステップ801)、BMC217−iは、ブート動作によりプログラムのロード等を行う(ステップ802)。そして、ブート動作が終了すると、スイッチ221−0のBMC222−0へ一定間隔でブート終了通知を送信し(ステップ803)、BMC222−0からブート終了通知を受信したか否かをチェックする(ステップ804)。
BMC217−iは、ブート終了通知を受信していなければステップ804の動作を繰り返し、ブート終了通知を受信すると、すれ違いを防ぐためにもう一度ブート終了通知を送信する(ステップ805)。次に、CPU212−iのリセットを解除して(ステップ806)、BMC222−0からリンクアップ完了通知を受信したか否かをチェックする(ステップ807)。
リンクアップ完了通知を受信していなければステップ807の動作を繰り返し、リンクアップ完了通知を受信すると、その通知に含まれるアップストリーム・ポートの設定情報に従って、いずれかのCPUユニットをアップストリーム・ポートとしてDMAコントローラ211−iのアドレスマップを設定し、CPU212−iを起動する(ステップ808)。
図10および11は、スイッチユニット202−0のBMC222−0の動作を示すフローチャートである。システムに電源が投入されるとスイッチ221−0がリセットされ(図10のステップ901)、BMC222−0は、ブート動作を行う(ステップ902)。そして、ブート動作が終了すると、図7に示した方法によりCPUユニット201−0〜201−3のどれが実装されているかを確認する(ステップ903)。
次に、実装されている各CPUユニット201−iのBMC217−iへ一定間隔でブート終了通知を送信し(ステップ904)、BMC217−iからブート終了通知を受信したか否かをチェックする(ステップ905)。
BMC222−0は、実装されているいずれかのCPUユニットからブート終了通知を受信していなければステップ905の動作を繰り返し、すべてのCPUユニットからブート終了通知を受信すると、すれ違いを防ぐために各CPUユニットへもう一度ブート終了通知を送信する(ステップ906)。
次に、CPUユニット201−0が実装されているか否かをチェックし(ステップ907)、それが実装されていれば、CPUユニット201−0をスイッチ221−0のアップストリーム・ポートに設定する(ステップ908)。具体的には、図6の左端のアドレスマップが実現されるように、スイッチ221−0の各ポートのリミットアドレスレジスタおよびベースアドレスレジスタに、以下のようなアドレスが設定される。
(1)CPUユニット201−0に接続されたポート
・リミットアドレスレジスタ:0xFFFF_FFFF_FFFF_FFFF
・ベースアドレスレジスタ :0x4000_0000_0000_0000
(2)CPUユニット201−1に接続されたポート
・リミットアドレスレジスタ:0x7FFF_FFFF_FFFF_FFFF
・ベースアドレスレジスタ :0x4000_0000_0000_0000
(3)CPUユニット201−2に接続されたポート
・リミットアドレスレジスタ:0xBFFF_FFFF_FFFF_FFFF
・ベースアドレスレジスタ :0x8000_0000_0000_0000
(4)CPUユニット201−3に接続されたポート
・リミットアドレスレジスタ:0xFFFF_FFFF_FFFF_FFFF
・ベースアドレスレジスタ :0xC000_0000_0000_0000
ステップ907においてCPUユニット201−0が実装されていなければ、別のCPUユニットをアップストリーム・ポートに設定するために、ステップ912以降の動作を行う。
次に、BMC222−0は、スイッチ221−0のリセットを解除して(ステップ909)、スイッチ221−0のリンクアップを検出したか否かをチェックする(ステップ910)。
リンクアップが検出されなければ、次に、タイムアウトを検出したか否かをチェックする(ステップ911)。リンクアップが検出されず、タイムアウトも検出されなければ、ステップ910以降の動作を繰り返し、リンクアップが検出されれば、リンクアップ完了通知を各CPUユニット201−iのBMC217−iに送信する(図11のステップ931)。このリンクアップ完了通知には、アップストリーム・ポートに設定されたCPUユニットを示す情報が含まれる。
一方、リンクアップが検出されずにタイムアウトが検出された場合は、CPUユニット201−1が実装されているか否かをチェックする(ステップ912)。それが実装されていれば、スイッチ221−0をリセットして(ステップ913)、CPUユニット201−1をスイッチ221−0のアップストリーム・ポートに設定する(ステップ914)。具体的には、図6の左から2番目のアドレスマップが実現されるように、スイッチ221−0の各ポートのリミットアドレスレジスタおよびベースアドレスレジスタに、以下のようなアドレスが設定される。
(1)CPUユニット201−0に接続されたポート
・リミットアドレスレジスタ:0xFFFF_FFFF_FFFF_FFFF
・ベースアドレスレジスタ :0xC000_0000_0000_0000
(2)CPUユニット201−1に接続されたポート
・リミットアドレスレジスタ:0xFFFF_FFFF_FFFF_FFFF
・ベースアドレスレジスタ :0x4000_0000_0000_0000
(3)CPUユニット201−2に接続されたポート
・リミットアドレスレジスタ:0x7FFF_FFFF_FFFF_FFFF
・ベースアドレスレジスタ :0x4000_0000_0000_0000
(4)CPUユニット201−3に接続されたポート
・リミットアドレスレジスタ:0xBFFF_FFFF_FFFF_FFFF
・ベースアドレスレジスタ :0x8000_0000_0000_0000
ステップ912においてCPUユニット201−1が実装されていなければ、別のCPUユニットをアップストリーム・ポートに設定するために、図11のステップ918以降の動作を行う。
次に、BMC222−0は、ステップ909〜911と同様の動作を行う(ステップ915〜917)。
そして、ステップ917においてタイムアウトが検出されれば、CPUユニット201−2が実装されているか否かをチェックする(図11のステップ918)。それが実装されていれば、スイッチ221−0をリセットして(ステップ919)、CPUユニット201−2をスイッチ221−0のアップストリーム・ポートに設定する(ステップ920)。具体的には、図6の右から2番目のアドレスマップが実現されるように、スイッチ221−0の各ポートのリミットアドレスレジスタおよびベースアドレスレジスタに、以下のようなアドレスが設定される。
(1)CPUユニット201−0に接続されたポート
・リミットアドレスレジスタ:0xBFFF_FFFF_FFFF_FFFF
・ベースアドレスレジスタ :0x8000_0000_0000_0000
(2)CPUユニット201−1に接続されたポート
・リミットアドレスレジスタ:0xFFFF_FFFF_FFFF_FFFF
・ベースアドレスレジスタ :0xC000_0000_0000_0000
(3)CPUユニット201−2に接続されたポート
・リミットアドレスレジスタ:0xFFFF_FFFF_FFFF_FFFF
・ベースアドレスレジスタ :0x4000_0000_0000_0000
(4)CPUユニット201−3に接続されたポート
・リミットアドレスレジスタ:0x7FFF_FFFF_FFFF_FFFF
・ベースアドレスレジスタ :0x4000_0000_0000_0000
ステップ918においてCPUユニット201−2が実装されていなければ、別のCPUユニットをアップストリーム・ポートに設定するために、ステップ924以降の動作を行う。
次に、BMC222−0は、ステップ909〜911と同様の動作を行う(ステップ921〜923)。
そして、ステップ923においてタイムアウトが検出されれば、CPUユニット201−3が実装されているか否かをチェックする(ステップ924)。それが実装されていれば、スイッチ221−0をリセットして(ステップ925)、CPUユニット201−3をスイッチ221−0のアップストリーム・ポートに設定する(ステップ926)。具体的には、図6の右端のアドレスマップが実現されるように、スイッチ221−0の各ポートのリミットアドレスレジスタおよびベースアドレスレジスタに、以下のようなアドレスが設定される。
(1)CPUユニット201−0に接続されたポート
・リミットアドレスレジスタ:0x7FFF_FFFF_FFFF_FFFF
・ベースアドレスレジスタ :0x4000_0000_0000_0000
(2)CPUユニット201−1に接続されたポート
・リミットアドレスレジスタ:0xBFFF_FFFF_FFFF_FFFF
・ベースアドレスレジスタ :0x8000_0000_0000_0000
(3)CPUユニット201−2に接続されたポート
・リミットアドレスレジスタ:0xFFFF_FFFF_FFFF_FFFF
・ベースアドレスレジスタ :0xC000_0000_0000_0000
(4)CPUユニット201−3に接続されたポート
・リミットアドレスレジスタ:0xFFFF_FFFF_FFFF_FFFF
・ベースアドレスレジスタ :0x4000_0000_0000_0000
次に、BMC222−0は、ステップ909〜911と同様の動作を行う(ステップ927〜929)。
ステップ929においてタイムアウトが検出された場合、および、ステップ924においてCPUユニット201−3が実装されていない場合は、システムが動作不可能であることをユーザに通知する(ステップ930)。
上述したように、本発明を実現するためにはPCI−Expressスイッチのアップストリーム・ポートが自由に選択できる必要があるが、これはPCI−Expressスイッチの規格自体で定義された機能ではなく、選択方法もスイッチIC(Integrated Circuit)の実装によって異なる。
図12は、スイッチユニットの1つの構成例を示している。図12のPCI−Expressスイッチ1101は、外部のストラップピン(ストラップポート)UPSTREAM_SEL_0およびUPSTREAM_SEL_1によりアップストリーム・ポートの選択が可能であり、I2Cバスによって内部のレジスタを設定することができる。そこで、BMC1102のGPIO(General Purpose I/O )によりアップストリーム・ポートを選択した後、リセットを解除し、I2Cバスからスイッチ1101のアドレスマップを設定するために適当なレジスタの設定を行う。
図13は、図12のPCI−Expressスイッチ1101の構成図である。スイッチ1101のICは、クロスバスイッチ1201、I2C制御部1202、および外部に対する4つのPCI−Expressポート#0〜#3を備える。
各ポート#i(i=0,1,2,3)は、SERDES部(Serializer/De-serializer)1203−i、PCI−Expressプロトコル制御部1204−i、選択回路1205−i、およびPCI−Expressスイッチの規格に定められたコンフィギュレーション・レジスタセットからなる。
SERDES部1203−iは、IC外部に接続されるシリアルの高速信号とIC内部を接続するパラレルバスの信号の間の変換を行い、プロトコル制御部1204−iは、コンフィギュレーション・レジスタセットを参照しながら、PCI−Expressスイッチの規格に定められたプロトコル処理を行う。クロスバスイッチ1201は、これらの4つのポート間でデータ転送経路を切り替える。
コンフィギュレーション・レジスタは、アップストリーム・ポートとダウンストリーム・ポートとで構成が異なるため、アップストリーム・ポート用レジスタセット1206−iとダウンストリーム・ポート用レジスタセット1207−iの両方のレジスタセットが設けられる。レジスタセット1206−iおよび1207−iはともに、リミットアドレスレジスタおよびベースアドレスレジスタを含んでおり、選択回路1205−iは、これらの2種類のレジスタセットを排他的に選択する。
実際には、4つのポートのうちの1つだけがアップストリーム・ポートになるように、そのポートの選択回路はアップストリーム・ポート用レジスタセット1206−iを選択し、他のポートの選択回路はダウンストリーム・ポート用レジスタセット1207−iを選択する。
また、コンフィギュレーション・レジスタは、通常、アップストリームのPCI−Expressポートから設定されるが、本実施形態では、I2C等のインタフェースによりBMC1102から設定できるようになっていることが望ましい。この場合、I2C制御部1202は、外部のI2CマスタであるBMC1102からのアクセス要求を受信し、その要求に従ってコンフィギュレーション・レジスタの設定を行う。
このとき、BMC1102は、アップストリーム・ポートに設定されるポートのアップストリーム・ポート用レジスタセット1206−iとダウンストリーム・ポートに設定されるポートのダウンストリーム・ポート用レジスタセット1207−iのそれぞれに、上述したようなリミットアドレスレジスタおよびベースアドレスレジスタの値を書き込む。
BMC1102は、さらに選択回路1205−0〜1205−3を制御してレジスタセット1206−iまたは1207−iを選択させるために、2本のストラップピンUPSTREAM_SEL_0およびUPSTREAM_SEL_1から2値(HまたはL)の制御信号を入力する。この制御信号は、例えば、以下のように定義される。
“LL”:ポート#0をアップストリーム・ポートに指定し、それ以外のポートはダウンストリーム・ポートに指定する。
“LH”:ポート#1をアップストリーム・ポートに指定し、それ以外のポートはダウンストリーム・ポートに指定する。
“HL”:ポート#2をアップストリーム・ポートに指定し、それ以外のポートはダウンストリーム・ポートに指定する。
“HH”:ポート#3をアップストリーム・ポートに指定し、それ以外のポートはダウンストリーム・ポートに指定する。
アップストリーム・ポートの選択回路1205−iは、アップストリーム・ポート用レジスタセット1206−iを選択し、ダウンストリーム・ポートの選択回路1205−iは、ダウンストリーム・ポート用レジスタセット1207−iを選択する。これにより、スイッチ1101内におけるアップストリーム・ポートおよびダウンストリーム・ポートの設定が完了する。
また、BMC1102は、リセットポートを介してクロスバスイッチ1201、I2C制御部1202、SERDES部1203−i、PCI−Expressプロトコル制御部1204−i、およびレジスタセット1206−i、1207−iに制御信号を入力し、これらの要素のリセット/リセット解除を行う。
図14は、BMC1102の構成図である。BMC1102は、MPU(Micro Processing Unit )1301、Ether−PHY(物理層)回路1302−0、1302−1、温度・電圧監視素子1303、SDRAM(Synchronous Dynamic Random Access Memory)1304、フラッシュメモリ1305、およびPLD(Programmable Logic Device )1306を備える。
MPU1301は、組み込み用に開発されたプロセッサであり、複数のEthernet(登録商標)ポート、RS232Cポート、I2Cポート、CPUバス1307を持つ。1つのEthernet(登録商標)ポートは、Ether−PHY回路1302−1を介して他のBMCに接続される。もう一方のEthernet(登録商標)ポートは、Ether−PHY回路1302−0を介してパーソナルコンピュータ等に接続され、デバッグ用のインタフェースとして用いられる。また、RS232Cポートも同様にパーソナルコンピュータ等に接続され、デバッグ用に用いられる。
I2Cポートは温度・電圧監視素子1303に接続され、ユニット内の温度と電源電圧が正常か否かを監視する。また、I2Cポートはスイッチ1101にも接続されて、スイッチ1101内部のレジスタ設定に用いられる。
CPUバス1307には、SDRAM1304、フラッシュメモリ1305、およびPLD1306が接続される。SDRAM1304はBMC1102のメインメモリであり、ここにBMCプログラムがロードされる。フラッシュメモリ1305は、プログラムを格納するための不揮発性のメモリである。MPU1301は、SDRAM1304にロードされたプログラムを実行することにより、必要な処理を行う。
PLD1306は、レジスタセット1308を備える。MPU1301からレジスタセット1308の内容が設定されると、PLD1306はGPIOポートやリセットポートを制御することができる。PLD1306は、リセットポートを介してスイッチ1101のリセット/リセット解除を行い、GPIOポートを介してスイッチ1101のアップストリーム・ポートを設定する。さらに、GPIOポートには図7に示した信号線702−0〜702−3が接続されており、PLD1306は、どのCPUユニットが実装されているかを検出してMPU1301に通知する。
GPIOポートの2本のピンGPIO_0およびGPIO_1は、図13のストラップピンUPSTREAM_SEL_0およびUPSTREAM_SEL_1に接続される。MPU1301が上述した4通りの制御信号のうちのいずれかをレジスタセット1308に書き込むと、PLD1306は、書き込まれた制御信号をGPIOピンを介してスイッチ1101に転送する。これにより、制御信号で指定されたポートがアップストリーム・ポートとして選択される。
CPUユニット201−iのBMC217−iも、図14のBMC1102と同様の構成を有する。
ところで、PCI−Expressスイッチのコンフィギュレーション・レジスタセットを選択する方法として、スイッチがEEPROM(Electronically Erasable and Programmable Read Only Memory )制御部を持つことも考えられる。
図15は、このようなスイッチを用いたスイッチユニットの構成例を示している。図15のスイッチユニット上には、4つのEEPROM1403−0〜1403−3が搭載される。これらのEEPROMには、例えば、図6に示したようなそれぞれ異なるアドレスマップのデータが格納される。PCI−Expressスイッチ1401は、リセットが解除されると自動的にEEPROM1403−0〜1403−3のいずれかからデータを読み込み、そのデータに応じて対応するポートをアップストリーム・ポートに設定する。
BMC1102は、4本のピンGPIO_0〜GPIO_3を用いてOR回路1402−0〜1402−3を制御し、所望のEEPROMを選択することができる。これにより、スイッチ1401のどのポートでもアップストリーム・ポートとして設定できるようになる。
図16は、図15のPCI−Expressスイッチ1401の構成図である。図16のスイッチ1401は、図13のスイッチ1101からI2C制御部1202を削除し、EEPROM制御部1501を追加した構成を有する。
EEPROM制御部1501および各EEPROMは、SPI(Serial Peripheral Interface )バスをインタフェースとして持っている。このSPIバスは、EEPROM_SK、EEPROM_DO、EEPROM_DI、およびEEPROM_CS#(#は負論理を示す)の4本の信号線からなる。
EEPROM_CS#は、EEPROMへのチップセレクト信号であり、論理‘0’のときにそのEEPROMが選択され、データがスイッチ1401にロードされることを示す。スイッチ1401のEEPROM制御部1501はこの信号線を1本しか持たない。しかし、BMC1102がGPIO_0〜GPIO_3のいずれか1本を論理‘0’に設定し、残りの3本を論理‘1’に設定することで、OR回路1402−0〜1402−3のいずれか1つだけが‘0’を出力し、それに対応する1つのEEPROMに対してのみEEPROM_CS#が‘0’となる。
EEPROM_SKは、EEPROMへのクロック信号であり、このクロック信号に従ってEEPROM制御回路1501がアドレス信号を送出し、EEPROMがリードデータを送出する。
このとき、EEPROM制御部1501は、アドレス信号をEEPROM_SKに同期したシリアルデータとして、EEPROM_DOを介してEEPROMに送出する。EEPROM_CS#によって選択されたEEPROMは、アドレス信号を受け取ると、リードデータをEEPROM_SKに同期したシリアルデータとして、EEPROM_DIを介して送出する。一方、EEPROM_CS#によって選択されていないEEPROMは、EEPROM_DIの信号線をハイインピーダンス状態に保つ。
スイッチ1401は、EEPROMから送出されたデータに応じて各ポートのレジスタセット1206−iまたは1207−iにアドレスマップを設定し、選択回路1205−iを切り替える。これにより、スイッチ1401内におけるアップストリーム・ポートおよびダウンストリーム・ポートの設定が完了する。
図17は、図2のディスクアレイ装置のBMC217−iおよび222−jが処理に用いるプログラムおよびデータの提供方法を示している。情報処理装置等の外部装置1601や可搬記録媒体1603に格納されたプログラムおよびデータは、ディスクアレイ装置1602のメモリにロードされる。
外部装置1601は、そのプログラムおよびデータを搬送する搬送信号を生成し、通信ネットワーク上の任意の伝送媒体を介してディスクアレイ装置1602に送信する。可搬記録媒体1603は、メモリカード、フレキシブルディスク、光ディスク、光磁気ディスク等の任意のコンピュータ読み取り可能な記録媒体である。BMC217−iおよび222−jは、そのデータを用いてそのプログラムを実行し、必要な処理を行う。
(付記1) 複数の処理ノードをシリアルバスにより相互接続する相互接続装置であって、
前記複数の処理ノードに接続される複数のポートを有し、該複数のポートのうちの1つをアップストリーム・ポートに設定し、他のポートをダウンストリーム・ポートに設定して、ポート間でデータ転送経路の切り替えを行うスイッチ手段と、
前記スイッチ手段の各ポートのリンクが確立する前に前記複数の処理ノードの各々が実装されているか否かを確認し、前記スイッチ手段の複数のポートのうち、実装されている処理ノードの1つが接続されているポートを前記アップストリーム・ポートに設定し、他のポートを前記ダウンストリーム・ポートに設定するように、該スイッチ手段を制御する制御手段と
を備えることを特徴とする相互接続装置。
(付記2) 前記制御手段は、前記スイッチ手段のアップストリーム・ポートおよびダウンストリーム・ポートが設定された後、実装されている処理ノードが接続されている各ポートのリンクが確立したか否かを監視し、リンクが確立しなければ該スイッチ手段をリセットして、別のポートをアップストリーム・ポートに設定するように該スイッチ手段を制御することを特徴とする付記1記載の相互接続装置。
(付記3) 前記複数の処理ノードはそれぞれ直接メモリアクセス制御手段を含み、前記制御手段は、設定されたアップストリーム・ポートの情報を実装されている処理ノードに通知し、通知された処理ノードは、該アップストリーム・ポートの情報に従って該直接メモリアクセス制御手段のアドレスマップを設定することを特徴とする付記1または2記載の相互接続装置。
(付記4) 前記スイッチ手段の各ポートは、アップストリーム・ポートにルーティングされないデータの転送先アドレスの範囲を指定する第1のレジスタ手段と、ダウンストリーム・ポートにルーティングされるデータの転送先アドレスの範囲を指定する第2のレジスタ手段とを含み、前記アップストリーム・ポートに設定されたポートは該第1のレジスタ手段を参照しながら動作し、前記ダウンストリーム・ポートに設定されたポートは該第2のレジスタ手段を参照しながら動作することを特徴とする付記1または2記載の相互接続装置。
(付記5) 前記スイッチ手段の各ポートは、データ転送先アドレスのアドレスマップを格納するレジスタ手段を含み、前記制御手段は、アップストリーム・ポートに設定すべきポートの該レジスタ手段にアップストリーム・ポート用のアドレスマップの情報を書き込み、ダウンストリーム・ポートに設定すべきポートの該レジスタ手段にダウンストリーム・ポート用のアドレスマップの情報を書き込むことを特徴とする付記1または2記載の相互接続装置。
(付記6) 前記スイッチ手段の複数のポートのそれぞれをアップストリーム・ポートに設定した場合のそれぞれ異なる複数のアドレスマップの情報を格納するメモリ手段をさらに備え、前記スイッチ手段の各ポートは、データ転送先アドレスのアドレスマップを格納するレジスタ手段を含み、前記制御手段は、いずれのポートをアップストリーム・ポートに設定するかに応じて該メモリ手段内の対応するアドレスマップの情報が各ポートのレジスタ手段に設定されるように、該メモリ手段を制御することを特徴とする付記1または2記載の相互接続装置。
(付記7) 処理ユニットをそれぞれ有する複数の処理ノードと、
前記複数の処理ノードをシリアルバスにより相互接続するための複数のポートを有し、該複数のポートのうちの1つをアップストリーム・ポートに設定し、他のポートをダウンストリーム・ポートに設定して、ポート間でデータ転送経路の切り替えを行うスイッチ手段と、
前記スイッチ手段の各ポートのリンクが確立する前に前記複数の処理ノードの各々が実装されているか否かを確認し、前記スイッチ手段の複数のポートのうち、実装されている処理ノードの1つが接続されているポートを前記アップストリーム・ポートに設定し、他のポートを前記ダウンストリーム・ポートに設定するように、該スイッチ手段を制御する制御手段と
を備えることを特徴とするコンピュータシステム。
(付記8) 複数の処理ノードをシリアルバスにより相互接続するための複数のポートを有し、該複数のポートのうちの1つをアップストリーム・ポートに設定し、他のポートをダウンストリーム・ポートに設定して、ポート間でデータ転送経路の切り替えを行うスイッチを制御するプロセッサのためのプログラムであって、
前記スイッチの各ポートのリンクが確立する前に前記複数の処理ノードの各々が実装されているか否かを確認し、
前記スイッチの複数のポートのうち、実装されている処理ノードの1つが接続されているポートを前記アップストリーム・ポートに設定し、他のポートを前記ダウンストリーム・ポートに設定するように、該スイッチを制御する
処理を前記プロセッサに実行させることを特徴とするプログラム。
(付記9) 複数の処理ノードをシリアルバスにより相互接続するための複数のポートを有し、該複数のポートのうちの1つをアップストリーム・ポートに設定し、他のポートをダウンストリーム・ポートに設定して、ポート間でデータ転送経路の切り替えを行うスイッチを制御する制御方法であって、
前記スイッチの各ポートのリンクが確立する前に前記複数の処理ノードの各々が実装されているか否かを確認し、
前記スイッチの複数のポートのうち、実装されている処理ノードの1つが接続されているポートを前記アップストリーム・ポートに設定し、他のポートを前記ダウンストリーム・ポートに設定するように、該スイッチを制御する
ことを特徴とする制御方法。
本発明の相互接続装置の原理図である。 ディスクアレイ装置の構成図である。 データのコピーを示す図である。 アドレスマップを示す図である。 アドレス範囲を指示するレジスタを示す図である。 4種類のアドレスマップを示す図である。 バックパネルを示す図である。 BMCの動作シーケンスを示す図である。 CPUユニットのBMCの動作のフローチャートである。 スイッチユニットのBMCの動作のフローチャート(その1)である。 スイッチユニットのBMCの動作のフローチャート(その2)である。 第1のスイッチユニットの構成図である。 第1のPCI−Expressスイッチの構成図である。 BMCの構成図である。 第2のスイッチユニットの構成図である。 第2のPCI−Expressスイッチの構成図である。 プログラムおよびデータの提供方法を示す図である。 PCIバスを用いたコンピュータシステムを示す図である。 PCI−Expressバスを用いたコンピュータシステムを示す図である。 複数のCPUノードからなるコンピュータシステムを示す図である。
符号の説明
11、212−0、212−1、212−2、212−3 CPU
12、213−0、213−1、213−2、213−3 メモリコントローラ
13−1、13−2、13−3、13−4、214−0、214−1、214−2、214−3 メモリ
14 I/Oコントローラ
15−1、15−2、15−3、15−4、16−1、16−2、16−3、16−4 スロット
21−1、21−2、21−3、21−4、21−5、21−6、21−7、21−8 CPUノード
22、221−0、221−1、1101、1401 スイッチ
101 スイッチ手段
102 制御手段
103−0〜103−n 処理ノード
104−0〜104−n ポート
201−0、201−1、201−2、201−3 CPUユニット
202−0、202−1 スイッチユニット
203−0、203−1、203−2、203−3 ディスクアレイ
204−0、204−1、204−2、204−3 ホストコンピュータ
211−0、211−1、211−2、211−3 DMAコントローラ
215−0、215−1、215−2、215−3 ホストインタフェース
216−0、216−1、216−2、216−3 ディスクインタフェース
217−0、217−1、217−2、217−3、222−0、222−1、1102 BMC
501、503 リミットアドレスレジスタ
502、504 ベースアドレスレジスタ
701 バックパネル
702−0、702−1、702−2、702−3 信号線
703−0、703−1 抵抗
1201 クロスバスイッチ
1202 I2C制御部
1203−0、1203−1、1203−2、1203−3 SERDES部
1204−0、1204−1、1204−2、1204−3 PCI−Expressプロトコル制御部
1205−0、1205−1、1205−2、1205−3 選択回路
1206−0、1206−1、1206−2、1206−3 アップストリーム・ポート用レジスタセット
1207−0、1207−1、1207−2、1207−3 ダウンストリーム・ポート用レジスタセット
1301 MPU
1302−0、1302−1 Ether−PHY回路
1303 温度・電圧監視素子
1304 SDRAM
1305 フラッシュメモリ
1306 PLD
1307 CPUバス
1308 レジスタセット
1402−0、1402−1、1402−2、1402−3 OR回路
1403−0、1403−1、1403−2、1403−3 EEPROM
1501 EEPROM制御部
1601 外部装置
1602 ディスクアレイ装置
1603 可搬記録媒体

Claims (5)

  1. 複数の処理ノードをシリアルバスにより相互接続する相互接続装置であって、
    前記複数の処理ノードに接続される複数のポートを有し、該複数のポートのうちの1つをアップストリーム・ポートに設定し、他のポートをダウンストリーム・ポートに設定して、ポート間でデータ転送経路の切り替えを行うスイッチ手段と、
    前記スイッチ手段の各ポートのリンクが確立する前に前記複数の処理ノードの各々が実装されているか否かを確認し、前記スイッチ手段の複数のポートのうち、実装されている処理ノードの1つが接続されているポートを前記アップストリーム・ポートに設定し、他のポートを前記ダウンストリーム・ポートに設定するように、該スイッチ手段を制御する制御手段と
    を備えることを特徴とする相互接続装置。
  2. 前記制御手段は、前記スイッチ手段のアップストリーム・ポートおよびダウンストリーム・ポートが設定された後、実装されている処理ノードが接続されている各ポートのリンクが確立したか否かを監視し、リンクが確立しなければ該スイッチ手段をリセットして、別のポートをアップストリーム・ポートに設定するように該スイッチ手段を制御することを特徴とする請求項1記載の相互接続装置。
  3. 前記スイッチ手段の各ポートは、データ転送先アドレスのアドレスマップを格納するレジスタ手段を含み、前記制御手段は、アップストリーム・ポートに設定すべきポートの該レジスタ手段にアップストリーム・ポート用のアドレスマップの情報を書き込み、ダウンストリーム・ポートに設定すべきポートの該レジスタ手段にダウンストリーム・ポート用のアドレスマップの情報を書き込むことを特徴とする請求項1または2記載の相互接続装置。
  4. 前記スイッチ手段の複数のポートのそれぞれをアップストリーム・ポートに設定した場合のそれぞれ異なる複数のアドレスマップの情報を格納するメモリ手段をさらに備え、前記スイッチ手段の各ポートは、データ転送先アドレスのアドレスマップを格納するレジスタ手段を含み、前記制御手段は、いずれのポートをアップストリーム・ポートに設定するかに応じて該メモリ手段内の対応するアドレスマップの情報が各ポートのレジスタ手段に設定されるように、該メモリ手段を制御することを特徴とする請求項1または2記載の相互接続装置。
  5. 処理ユニットをそれぞれ有する複数の処理ノードと、
    前記複数の処理ノードをシリアルバスにより相互接続するための複数のポートを有し、該複数のポートのうちの1つをアップストリーム・ポートに設定し、他のポートをダウンストリーム・ポートに設定して、ポート間でデータ転送経路の切り替えを行うスイッチ手段と、
    前記スイッチ手段の各ポートのリンクが確立する前に前記複数の処理ノードの各々が実装されているか否かを確認し、前記スイッチ手段の複数のポートのうち、実装されている処理ノードの1つが接続されているポートを前記アップストリーム・ポートに設定し、他のポートを前記ダウンストリーム・ポートに設定するように、該スイッチ手段を制御する制御手段と
    を備えることを特徴とするコンピュータシステム。
JP2005020512A 2005-01-28 2005-01-28 複数の処理ノードをシリアルバスにより相互接続する装置 Expired - Fee Related JP4398386B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2005020512A JP4398386B2 (ja) 2005-01-28 2005-01-28 複数の処理ノードをシリアルバスにより相互接続する装置
KR1020050039339A KR100708565B1 (ko) 2005-01-28 2005-05-11 복수의 처리 노드를 시리얼 버스에 의해 상호 접속하는장치
US11/133,335 US7461194B2 (en) 2005-01-28 2005-05-20 Apparatus for interconnecting a plurality of process nodes by serial bus
CNB2005100807401A CN100405352C (zh) 2005-01-28 2005-06-30 通过串行总线互连多个处理节点的装置及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005020512A JP4398386B2 (ja) 2005-01-28 2005-01-28 複数の処理ノードをシリアルバスにより相互接続する装置

Publications (2)

Publication Number Publication Date
JP2006209456A true JP2006209456A (ja) 2006-08-10
JP4398386B2 JP4398386B2 (ja) 2010-01-13

Family

ID=36758004

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005020512A Expired - Fee Related JP4398386B2 (ja) 2005-01-28 2005-01-28 複数の処理ノードをシリアルバスにより相互接続する装置

Country Status (4)

Country Link
US (1) US7461194B2 (ja)
JP (1) JP4398386B2 (ja)
KR (1) KR100708565B1 (ja)
CN (1) CN100405352C (ja)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008041027A (ja) * 2006-08-10 2008-02-21 Sony Computer Entertainment Inc プロセッサノードシステムおよびプロセッサノードクラスタシステム
KR100846352B1 (ko) 2006-12-28 2008-07-15 전자부품연구원 4 x pci―express 프레임 변환 모듈 및 이를이용한 pci―express 프레임 변환 장치
JP2009151565A (ja) * 2007-12-20 2009-07-09 Hitachi Ltd サーバ装置及びそのリンク回復処理方法
JP2010061194A (ja) * 2008-09-01 2010-03-18 Hitachi Ltd データ転送装置
JP2010211739A (ja) * 2009-03-12 2010-09-24 Nec Corp 障害対応システムおよび障害対応方法
US8271712B2 (en) 2009-10-13 2012-09-18 Fuji Xerox Co., Ltd. Information processing apparatus, image forming apparatus and information processing method
WO2013027297A1 (ja) * 2011-08-25 2013-02-28 富士通株式会社 半導体装置、管理装置、及びデータ処理装置
JP2013182519A (ja) * 2012-03-02 2013-09-12 Nec Computertechno Ltd コンピュータ、ファームウェア管理方法、及びbmc
US8775712B2 (en) 2007-04-06 2014-07-08 Nec Corporation Bus connecting device for connecting host with external device
JP2017201517A (ja) * 2016-05-06 2017-11-09 廣達電腦股▲ふん▼有限公司 動的pcieスイッチ再配置システムおよびその方法

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050270988A1 (en) * 2004-06-04 2005-12-08 Dehaemer Eric Mechanism of dynamic upstream port selection in a PCI express switch
US20060200813A1 (en) * 2005-03-01 2006-09-07 Sea-Weng Young Firmware updating system
US7454554B1 (en) * 2006-03-31 2008-11-18 Integrated Device Technology, Inc. Binary base address search device and method
US7694025B1 (en) 2006-03-31 2010-04-06 Integrated Device Technology, Inc. Method and device for base address sorting and entry into base address registers
US7647438B1 (en) 2006-05-09 2010-01-12 Integrated Device Technology, Inc. Binary base address sorting method and device with shift vector
US7779197B1 (en) * 2006-05-09 2010-08-17 Integrated Device Technology, Inc. Device and method for address matching with post matching limit check and nullification
WO2009074406A1 (en) * 2007-12-12 2009-06-18 Nokia Corporation Address assignment protocol
WO2010021040A1 (ja) * 2008-08-21 2010-02-25 富士通株式会社 情報処理装置及び情報処理装置の制御方法
WO2010122896A1 (ja) * 2009-04-21 2010-10-28 京セラ株式会社 データ伝送システム、データ伝送方法およびデータ送信装置
US9130400B2 (en) * 2009-09-24 2015-09-08 Apple Inc. Multiport power converter with load detection capabilities
US8417867B2 (en) * 2010-11-17 2013-04-09 Xilinx, Inc. Multichip module for communications
US8706944B2 (en) 2010-12-22 2014-04-22 Intel Corporation Dual bus standard switching bus controller
CN102694719B (zh) * 2011-03-25 2017-08-15 研祥智能科技股份有限公司 微型电信计算架构系统、载板集线器模块及pci‑e交换器的端口配置方法
WO2012103705A1 (zh) 2011-06-24 2012-08-09 华为技术有限公司 计算机子系统和计算机系统
KR101934519B1 (ko) 2012-11-26 2019-01-02 삼성전자주식회사 저장 장치 및 그것의 데이터 전송 방법
KR102007368B1 (ko) 2012-12-17 2019-08-05 한국전자통신연구원 Pci 익스프레스 스위치 및 이를 이용한 컴퓨터 시스템
CN103746941A (zh) * 2014-01-18 2014-04-23 浪潮集团有限公司 一种板级互联大数据一体机
CN106063076B (zh) * 2014-11-11 2018-09-04 广东欧珀移动通信有限公司 电源适配器、终端和充电系统
CN105005545A (zh) * 2015-07-28 2015-10-28 武汉烽火网络有限责任公司 线卡串口切换装置及方法
US10872049B2 (en) * 2016-01-29 2020-12-22 Analog Devices, Inc. GPIO-to-GPIO communication on a multi-node daisy-chained network
CN105912275A (zh) * 2016-04-27 2016-08-31 华为技术有限公司 在非易失性存储系统中建立连接的方法和装置
WO2018051386A1 (ja) 2016-09-13 2018-03-22 株式会社日立製作所 ストレージシステム及びストレージシステムのシステム構築方法
KR20180043451A (ko) * 2016-10-19 2018-04-30 삼성전자주식회사 컴퓨팅 시스템 및 그것의 동작 방법
CN108108254B (zh) * 2016-11-24 2021-07-06 英业达科技有限公司 交换器错误排除方法
US10430225B1 (en) 2017-09-29 2019-10-01 Amazon Technologies, Inc. Traffic management on an interconnect
CN108021521B (zh) * 2017-12-01 2021-04-27 郑州云海信息技术有限公司 一种基于bmc更改系统拓扑配置的系统以及级联配置方法
US11573919B2 (en) * 2017-12-14 2023-02-07 Texas Instruments Incorporated Multi-slave serial communication
CN112711557B (zh) 2021-01-15 2022-11-18 飞腾信息技术有限公司 处理器的接口模块及其操作方法、处理器

Family Cites Families (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0821025B2 (ja) 1986-09-29 1996-03-04 株式会社東芝 マルチプロセッサシステムおよび同システムの初期化方法
US4891751A (en) * 1987-03-27 1990-01-02 Floating Point Systems, Inc. Massively parallel vector processing computer
JPH02130666A (ja) 1988-11-11 1990-05-18 Pfu Ltd マルチプロセッサシステムのシステム再構成方式
US5446915A (en) * 1993-05-25 1995-08-29 Intel Corporation Parallel processing system virtual connection method and apparatus with protection and flow control
US5701482A (en) * 1993-09-03 1997-12-23 Hughes Aircraft Company Modular array processor architecture having a plurality of interconnected load-balanced parallel processing nodes
JPH07219913A (ja) 1994-01-28 1995-08-18 Fujitsu Ltd マルチプロセッサシステムの制御方法及び装置
US6108722A (en) * 1996-09-13 2000-08-22 Silicon Grpahics, Inc. Direct memory access apparatus for transferring a block of data having discontinous addresses using an address calculating circuit
US5742587A (en) * 1997-02-28 1998-04-21 Lanart Corporation Load balancing port switching hub
US6055583A (en) * 1997-03-27 2000-04-25 Mitsubishi Semiconductor America, Inc. DMA controller with semaphore communication protocol
JPH11212687A (ja) * 1998-01-26 1999-08-06 Fujitsu Ltd バス制御装置
US6912651B1 (en) * 1998-03-31 2005-06-28 Hewlett-Packard Development Company, L.P. Wireless universal serial bus link for a computer system
US6961801B1 (en) * 1998-04-03 2005-11-01 Avid Technology, Inc. Method and apparatus for accessing video data in memory across flow-controlled interconnects
JP2000315186A (ja) * 1999-05-06 2000-11-14 Hitachi Ltd 半導体装置
US6600739B1 (en) * 1999-06-07 2003-07-29 Hughes Electronics Corporation Method and apparatus for switching among a plurality of universal serial bus host devices
US6265885B1 (en) * 1999-09-02 2001-07-24 International Business Machines Corporation Method, apparatus and computer program product for identifying electrostatic discharge damage to a thin film device
US6601126B1 (en) * 2000-01-20 2003-07-29 Palmchip Corporation Chip-core framework for systems-on-a-chip
JP2001229119A (ja) 2000-02-16 2001-08-24 Hitachi Ltd 複数コンピュータによるデバイス選択hubbox
US6856619B1 (en) * 2000-03-07 2005-02-15 Sun Microsystems, Inc. Computer network controller
US6654818B1 (en) * 2000-06-22 2003-11-25 International Business Machines Corporation DMA access authorization for 64-bit I/O adapters on PCI bus
US6845409B1 (en) * 2000-07-25 2005-01-18 Sun Microsystems, Inc. Data exchange methods for a switch which selectively forms a communication channel between a processing unit and multiple devices
US6892298B2 (en) * 2000-07-26 2005-05-10 Times N Systems, Inc. Load/store micropacket handling system
US20020063621A1 (en) * 2000-09-01 2002-05-30 Next Planet, Inc. Method and apparatus for device communications
US6941350B1 (en) * 2000-10-19 2005-09-06 International Business Machines Corporation Method and apparatus for reliably choosing a master network manager during initialization of a network computing system
US7002926B1 (en) * 2000-11-30 2006-02-21 Western Digital Ventures, Inc. Isochronous switched fabric network
US7065597B2 (en) * 2002-06-28 2006-06-20 Intel Corporation Method and apparatus for in-band signaling of runtime general purpose events
US6732218B2 (en) * 2002-07-26 2004-05-04 Motorola, Inc. Dual-role compatible USB hub device and method
US6760793B2 (en) 2002-07-29 2004-07-06 Isys Technologies, Inc. Transaction credit control for serial I/O systems
US20040030742A1 (en) * 2002-08-06 2004-02-12 Masayuki Kitagawa System and method for communicating data using a multiple-role entity
US7251704B2 (en) * 2002-08-23 2007-07-31 Intel Corporation Store and forward switch device, system and method
US6900664B2 (en) * 2002-12-12 2005-05-31 International Business Machines Corporation Method and system for intelligent bi-direction signal net with dynamically configurable input/output cell
US7046668B2 (en) * 2003-01-21 2006-05-16 Pettey Christopher J Method and apparatus for shared I/O in a load/store fabric
US7103064B2 (en) * 2003-01-21 2006-09-05 Nextio Inc. Method and apparatus for shared I/O in a load/store fabric
US7457906B2 (en) 2003-01-21 2008-11-25 Nextio, Inc. Method and apparatus for shared I/O in a load/store fabric
US7617333B2 (en) * 2003-01-21 2009-11-10 Nextio Inc. Fibre channel controller shareable by a plurality of operating system domains within a load-store architecture
US6959355B2 (en) * 2003-02-24 2005-10-25 Standard Microsystems Corporation Universal serial bus hub with shared high speed handler
JP3959374B2 (ja) * 2003-06-30 2007-08-15 Tdk株式会社 Usbインターフェースシステム
US7155553B2 (en) * 2003-08-14 2006-12-26 Texas Instruments Incorporated PCI express to PCI translation bridge
US7096308B2 (en) * 2003-08-29 2006-08-22 Texas Instruments Incorporated LPC transaction bridging across a PCI—express docking connection
US7167941B2 (en) * 2003-09-10 2007-01-23 Intel Corporation Multi-port device configuration
US7099969B2 (en) * 2003-11-06 2006-08-29 Dell Products L.P. Dynamic reconfiguration of PCI Express links
US20050125590A1 (en) * 2003-12-09 2005-06-09 Li Stephen H. PCI express switch
WO2005059713A2 (en) * 2003-12-12 2005-06-30 O2Micro, Inc. Express card power switch device with enhanced communications paths and security functions
CN1558305A (zh) * 2004-01-19 2004-12-29 中国科学院计算技术研究所 一种总线式通用串行总线复用器
US7152190B2 (en) * 2004-02-03 2006-12-19 Motorola Inc. USB OTG intelligent hub/router for debugging USB OTG devices
JP2005287278A (ja) * 2004-03-31 2005-10-13 Casio Comput Co Ltd 電子端末の充電制御装置及び電子端末の充電制御方法
KR20050100445A (ko) * 2004-04-14 2005-10-19 학교법인 영남학원 Pci 익스프레스의 데이터 연결계층에서 송신단 버퍼를이용한 데이터 전송방법
US20050235091A1 (en) * 2004-04-20 2005-10-20 Caph Chen USB hub with built-in storage device
US7058738B2 (en) * 2004-04-28 2006-06-06 Microsoft Corporation Configurable PCI express switch which allows multiple CPUs to be connected to multiple I/O devices
US20050270988A1 (en) * 2004-06-04 2005-12-08 Dehaemer Eric Mechanism of dynamic upstream port selection in a PCI express switch
US8291145B2 (en) * 2004-08-10 2012-10-16 Hewlett-Packard Development Company, L.P. Method and apparatus for setting a primary port on a PCI bridge
US20060059293A1 (en) * 2004-09-14 2006-03-16 Henry Wurzburg Universal serial bus switching hub
US8706942B2 (en) * 2004-12-29 2014-04-22 Intel Corporation Direct memory access (DMA) address translation between peer-to-peer input/output (I/O) devices
GB0508576D0 (en) * 2005-04-27 2005-06-01 Symbian Software Ltd Delegating universal serial bus functionality
EP1768398A1 (en) * 2005-09-26 2007-03-28 Topseed Technology Corp. Projector having built-in universal serial bus interface

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008041027A (ja) * 2006-08-10 2008-02-21 Sony Computer Entertainment Inc プロセッサノードシステムおよびプロセッサノードクラスタシステム
KR100846352B1 (ko) 2006-12-28 2008-07-15 전자부품연구원 4 x pci―express 프레임 변환 모듈 및 이를이용한 pci―express 프레임 변환 장치
US8775712B2 (en) 2007-04-06 2014-07-08 Nec Corporation Bus connecting device for connecting host with external device
JP2009151565A (ja) * 2007-12-20 2009-07-09 Hitachi Ltd サーバ装置及びそのリンク回復処理方法
JP2010061194A (ja) * 2008-09-01 2010-03-18 Hitachi Ltd データ転送装置
JP2010211739A (ja) * 2009-03-12 2010-09-24 Nec Corp 障害対応システムおよび障害対応方法
US8271712B2 (en) 2009-10-13 2012-09-18 Fuji Xerox Co., Ltd. Information processing apparatus, image forming apparatus and information processing method
WO2013027297A1 (ja) * 2011-08-25 2013-02-28 富士通株式会社 半導体装置、管理装置、及びデータ処理装置
JP2013182519A (ja) * 2012-03-02 2013-09-12 Nec Computertechno Ltd コンピュータ、ファームウェア管理方法、及びbmc
JP2017201517A (ja) * 2016-05-06 2017-11-09 廣達電腦股▲ふん▼有限公司 動的pcieスイッチ再配置システムおよびその方法
US10387346B2 (en) 2016-05-06 2019-08-20 Quanta Computer Inc. Dynamic PCIE switch reconfiguration mechanism

Also Published As

Publication number Publication date
KR100708565B1 (ko) 2007-04-19
US20060174048A1 (en) 2006-08-03
CN100405352C (zh) 2008-07-23
US7461194B2 (en) 2008-12-02
JP4398386B2 (ja) 2010-01-13
CN1811744A (zh) 2006-08-02
KR20060087364A (ko) 2006-08-02

Similar Documents

Publication Publication Date Title
JP4398386B2 (ja) 複数の処理ノードをシリアルバスにより相互接続する装置
JP7105710B2 (ja) マルチモード及び/又はマルチ速度NVMe-oFデバイスを支援するシステム及び方法
US11593292B2 (en) Many-to-many PCIe switch
US11741040B2 (en) SFF-TA-100X based multi-mode protocols solid state devices
TWI721319B (zh) 資料儲存系統中的多埠中介件架構
CN107643996B (zh) 包括单端口存储控制器的基于pci express的双端口存储盒
US11588261B2 (en) Multi-mode and/or multi-speed non-volatile memory (NVM) express (NVMe) over fabrics (NVMe-oF) device
US9720864B2 (en) Flexible server system
JP4509827B2 (ja) シリアルコネクトバスを使用したコンピュータシステム及び複数cpuユニットのシリアルコネクトバスによる接続方法
US11086813B1 (en) Modular non-volatile memory express storage appliance and method therefor
KR20210033996A (ko) 전용 저 레이턴시 링크를 사용한 다수의 하드웨어 가속기에 대한 통합된 어드레스 공간
US10606784B1 (en) Software filtering of redundant sideband device management bus communications
CN117561505A (zh) 用于动态地配置设备结构的系统、方法、装置和架构
US10579568B2 (en) Networked storage system with access to any attached storage device
TW202246976A (zh) 快速週邊元件互連裝置以及包括其的計算系統
WO2013027297A1 (ja) 半導体装置、管理装置、及びデータ処理装置
JP2019028513A (ja) データ転送システム、アダプタ、及びシステムホスト
US20240012770A1 (en) Interface device having plurality of ports and method of operating the same
WO2010061444A1 (ja) 情報処理装置、システム制御装置、情報処理装置の制御方法、及び割り込み中継プログラム
JPWO2013027297A1 (ja) 半導体装置、管理装置、及びデータ処理装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070713

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070807

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070927

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080701

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080822

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090901

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090924

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

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

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

Free format text: PAYMENT UNTIL: 20121030

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4398386

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20131030

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees