米国特許情報 | 欧州特許情報 | 国際公開(PCT)情報 | Google の米国特許検索
 
     特許分類
A 農業
B 衣類
C 家具
D 医学
E スポ−ツ;娯楽
F 加工処理操作
G 机上付属具
H 装飾
I 車両
J 包装;運搬
L 化学;冶金
M 繊維;紙;印刷
N 固定構造物
O 機械工学
P 武器
Q 照明
R 測定; 光学
S 写真;映画
T 計算機;電気通信
U 核技術
V 電気素子
W 発電
X 楽器;音響


  ホーム -> 計算機;電気通信 -> ヒューレット・パッカード・カンパニー

発明の名称 稼働中のコンピュータシステムのコアI/0ハードウェアを取り外し及び交換するためのシステム
発行国 日本国特許庁(JP)
公報種別 公開特許公報(A)
公開番号 特開2003−132005(P2003−132005A)
公開日 平成15年5月9日(2003.5.9)
出願番号 特願2002−218159(P2002−218159)
出願日 平成14年7月26日(2002.7.26)
代理人 【識別番号】100063897
【弁理士】
【氏名又は名称】古谷 馨 (外3名)
【テーマコード(参考)】
5B014
【Fターム(参考)】
5B014 HC11 
発明者 マイケル・ジョン・エリクソン / ダニエル・ブイ・ジラビィ / ブラッドレイ・ディーン・ウィニック / ポール・ジェイ・マンテイ
要約 課題
コンヒ゜ュータシステムの電源が投入され動作している間にコアI/0テ゛ハ゛イス401/402/403の取り外し及び交換を行うシステムを提供すること。

解決手段
システムは、カート゛のI/O既納を管理するためのフ゜ロセッサを含む複数のI/Oテ゛ハ゛イス401/402/403を含む専用のフォームファクタコアI/Oカート゛400を含む。コアI/Oカート゛400上のハート゛ウェアの使用を停止して構成から外すことをシステに知らせるコマント゛が、コアI/Oカート゛400の外部のシステムフ゜ロセッ210上で実行されているオヘ゜レーティンク゛システム211に送られる。該通知をOSが受信すると、カート゛400を取り外す準備が整ったという指示がユーサ゛に送られる。次いでユーサ゛カート゛400をそのスロットから取り外して代わりのカート゛400を同一のスロットに挿入する。次いでシステムソフトウェアコアI/Oカート゛400上のI/O構成要素を検出して利用可能な構成要素を判定し、次いで該新たなI/Oテ゛ハ゛イス401/402/403を構成する。
特許請求の範囲
【請求項1】システムプロセッサ210を含む稼働中のコンピュータにおけるコアI/0ハードウェアの取り外し及び交換を行うシステムであって、前記システムプロセッサ210に関連するコアI/0機能を提供する複数のI/0デバイス401/402/403を各々が含む、第1のコアI/0カード400A及び第2のコアI/0カード400Bを備えており、該各カード400A/400B上の前記I/0デバイス401/402/403の内の少なくとも1つが、通信バス420を介して前記システムプロセッサ210に結合され、前記システムプロセッサ210から前記通信バス420を介して送信された信号に応じて、前記第1のI/0カード400Aが実行していた機能を前記第2のコアI/0カード400Bが実行すると共に、該第1のI/0カード400Aがそのカードスロットから取り外されて交換される、システム。
発明の詳細な説明
【0001】
【発明の属する技術分野】本発明は、一般にコンピュータシステムに関し、特にコンピュータシステムのコアI/0デバイス以外の部分が電源投入されて稼働している間における該コアI/0デバイスの取り外し及び交換を提供するサブシステムに関する。
【0002】
【従来の技術】多くのコンピュータ製品は、最小限の一組のI/0デバイス(「コアI/0」と呼ばれることが多い)を内蔵している。これらコアI/0デバイスは、周辺装置やバス管理のためのI/0コントローラを含む。ローエンドシステムでは、これらのデバイスはメインシステムボード上に配置される。ハイエンドシステムでは、コアI/0デバイスは別個のボード上に配置されることが多く、該ボードは、システムをシャットダウンしない限り取り外すことができないものであり、すなわち、コアI/0の「ホットスワップ」は不可能である。それ故、ハードウェアの障害やアップグレードのためにコアI/0デバイスを交換する場合にシステムのダウンタイムを招くことになる。コアI/0を提供するための既存の方法は、一般に次の3つに分類される。
【0003】(a)コアI/0機能をシステム(メイン)ボードに組み込む。
【0004】(b)コアI/0をメインボードとは別のカードに組み込む。該カードはホットスワップできないものであり、すなわち、システム全体をシャットダウンさせる(ひいては動作不能にする)ことなしに交換できないものである。
【0005】(c)コアI/0をPCI(Peripheral Computer Interface)スロットと互換性のあるカードに組み込む。
【0006】上記(a)の場合には、コアI/0がメインボードに組み込まれており、対象となる特定のI/0デバイスを交換し又は調整するにはシステムをシャットダウンさせてシステムボードを取り外す必要がある。この構成は、I/0ハードウェアの交換又はアップグレードしか必要ない場合にコストを要し過ぎるものとなる。
【0007】上記(b)のように、ホットスワップ不能な別個のカード上にコアI/0が組み込まれる場合には、それ以外のシステムボードを交換することなく、対象となるI/0デバイスを交換し又はアップグレードすることができる。しかし、システムを完全に停止させる必要があるため、システムの稼働時間が短縮され、可用性が低下することになる。
【0008】また上記(c)のように、コアI/0をPCIスロット互換のカードに組み込む場合には、PCI仕様に記載されているPCIに固有のホットプラグ機能を利用することができるが、カードのサイズやピンの制約によりシステムの残りの部分に対する接続性が厳しく制限されることになる。更に、既存のPCIカードは、1つのカードにつき1つのデバイスしか対応できないため、コアI/0カードの機能が更に制限されることになる。
【0009】
【発明が解決しようとする課題】ハイエンドコンピュータシステムの場合、メンテナンスのためのシステムのシャットダウンは極めて犠牲の大きなものとなる。このため、システムの「稼働時間」及び「高可用性」が重視される。システムの稼働中にコアI/0の取り外し、追加、及び交換を行うことが可能なシステムが必要とされている。更に、システムの残りの部分に対するコアI/0カードインタフェイスの設計上の柔軟性が必要とされている。
【0010】
【課題を解決するための手段】本システムは、コンピュータシステムの動作中にI/0コアハードウェアを取り外し及び交換する機構を提供することにより、上記問題を解決すると共に当該分野における進歩を達成させるものである。これにより、I/0ハードウェアの交換に通常伴うことになる犠牲の多いダウンタイムをなくすことが可能となる。このため、システムの機能拡張が大幅に容易となる。例えば、コンピュータシステムが1つ又は2つ以上の利用可能な(空き)コアI/0スロットを有する場合には、システムダウンタイムを生じさせることなく更なるI/0ハードウェアを追加することができる。更に、如何なるシステムダウンタイムを生じさせることなく、既存のハードウェアをアップグレードし、また障害の発生したハードウェアを交換することができる。
【0011】本システムは、カードのI/0機能を管理するプロセッサを含む複数のI/0デバイスを備えたカスタムフォームファクタのコアI/0カードを構成する。更に、本システムは、コアI/0ボードが、コンピュータシステムに対するあらゆる所望のタイプのインタフェイス(PCIスロット等の一般的な形式のインタフェイスや完全なカスタムインタフェイスを含む)を有することを可能にする。I/0カードとコンピュータシステムとの間で固有の信号セットを伝送することを必要とするシステム管理機能等の他の機能をコアI/0が含む場合には、カスタムインタフェイスが必要になることが多い。更に、本システムは、カードを挿入し又は取り外す際にカードスロットへの電源を切断する必要がない。
【0012】動作時に、システムのプロセッサ上で実行されているオペレーティングシステム(OS)コマンドが送信され、該コマンドが、コアI/0カード上のハードウェアの使用を中止して構成から外す(deconfigure)ことをシステムに通知する。該コマンドは、プッシュボタン、ソフトウェアルーチン、又は他の何らかの方法により発することが可能である。OSは、この通知を受信すると、ドライバを無効にし、バストラフィックを停止させ、及びスロットの電源を切断することが可能である。次いで、カードを取り外す準備が整ったという指示がユーザに送られる。この指示は、LED、ソフトウェア的な警報、又は他の何らかの機構により提供することが可能である。
【0013】次いでユーザは、該カードをスロットから取り外し、同じスロットに代わりのカードを挿入する。システム側の電流制限器は、スロットに最初にカードが挿入されて電源が投入されたときに電源電圧レールにスパイクが発生するのを防止する。カードに電源が投入されると(事前に電源が切断された場合)、システムソフトウェアが、コアI/0カード上のI/0構成要素に対して照会を行い、利用可能な構成要素を判定して、新しいI/0デバイスを構成することができる。
【0014】このため、ダウンタイムによる損害を被ることなくシステムのコアI/0を切り換えることができる。本システムの方法は、複数のコアI/0ボード及び複数のOSインスタンス又はパーティションを有するシステムに特に有用である。複数のパーティション(又はオペレーティングシステム)を有するシステムにおいて、そのうちの1つのパーティションにおける1つのI/0ボードを、他の残りのパーティション(又はオペレーティングシステム)を動作させたまま交換することが可能となる。更に、本システムは、標準的なPCIスロット等の既存のI/0スロットと、特定のコアI/0ボードのために専用設計されたカスタムスロットとの何れにも、コアI/0カードを設置することを可能にする。カスタムスロットを使用すると、システムの相互接続にもその機械的な設計にも大きな柔軟性を提供することが可能となる。
【0015】
【発明の実施の形態】図1は、本システムによるコアI/0カード100で使用する典型的な構成要素を示すブロック図である。図1に示す典型的な構成では、コアI/0カード100は、管理(manageability)プロセッサ102と3つのI/0デバイスを含む4つのデバイスを備え、該3つのI/0デバイスは、LANコントローラ103と2つのSCSIバスコントローラ104(1)/104(2)を含む。更に、該典型的な実施形態では、カード100はまた、4つの電源コントローラ106(1)〜(4)及びPCIバスアービタ105を含む。各電源コントローラ106*は、別々の電源レール(図示せず)に接続され、カード100上のデバイスに電力を供給する。なお本書では、複数の同様のデバイスが存在する場合に、その内の1つを符号の後にワイルドカード記号(*)を付けて示し(例えばコアI/0カード100*はカード100A又は100Bの何れか1つを示す)、該複数の同様のデバイスを包括的に符号のみで示すこととする。
【0016】各電源コントローラへの電源入力110〜113は、それぞれ異なる電圧を供給することができ、このため、カード100は様々な異なるタイプのデバイスに適応することが可能となる。電源コントローラ106は、OS211からの信号、又はOSからの信号を受信したMP102からの信号に応じて、関連する各デバイス401〜403の電源を投入し又は切断する。管理プロセッサ102は、無停電電源から入力114を介して供給される電力を受容する。
【0017】複数の通信バスが管理プロセッサ102に接続され、該通信バスは、4本のI2Cバス115(1)〜(4)、システム内の別のコアI/0カード100*に結合されたシリアルI/0リンク116、ネットワーク(図示せず)へのLAN接続、及びPCIバス120を含む。該PCIバス120はまた、LANコントローラ103及びSCSIコントローラ104(1)/104(2)に接続される。カード100上の他のデバイスに接続される更なる通信バスは、10/100/1000BT(122)と、SCSIコントローラ104(1)/104(2)に接続される4本のSCSIバス121(1)〜(4)とを含む。
【0018】管理プロセッサ102は、システム400の幾つかの基本的な機能を監視及び管理し、システムプロセッサ210(図2を参照)とは別個に動作する。かかる基本的な機能には、温度監視機能や、電源コントローラ106を介してカード100*上の各デバイスへの電力を制御する随意選択的な機能が含まれる。
【0019】本システムの典型的な実施形態では、OS211は、管理プロセッサ102をコンソールに関して使用することができるUART(Universal Asynchronous Receiver/Transmitter:汎用非同期送受信器)として認識する。次いで、該管理プロセッサが、例えばバス122を介してLAN経由でコンソールデータをリダイレクトできる。
【0020】図2は、典型的なシステム環境200における2枚のコアI/0カード100A,100Bを示すブロック図である。各カード100A,100Bは図1に示すI/0コアカード100と同じものであるが、分かり易くするためにその一部の要素を省略している。図2に示すように、システム200は、2枚の同一のI/0コアカード100A,100Bを備えている。以下で詳説するように、I/0コアカード100Bは、カード100Aを交換する間に該カード100Aのバックアップとして使用される。カード100A,100Bは、12Cリンク115*又はシリアルリンク116を介して通信する。カード100A,100B上の管理プロセッサ102A,102Bは、それぞれPCIバス120を介してシステムプロセッサ210に接続される。管理プロセッサ102はシリアルリンク416を介して相互に通信する。システムプロセッサ210は、OS(オペレーティングシステム)211とファームウェア212を備えている。ファームウェア212は、パーソナルコンピュータシステムで使用されるBIOSと同様の低レベルのシステムI/0機能を提供する。ファームウエア212は、システム200内の新しいハードウェアデバイスを検出してマッピングする(以下で説明する図3のステップ335を参照)。
【0021】バックプレーン201は、カード100A/100Bとシステムの周辺デバイス(図示せず)との間の(上述した)様々なバスを取りまわすために使用される。コントローラ205A,205Bは、カード100を挿入する際及び取り外す際の電力スパイクを防止するための電流制限器として機能する。典型的な実施形態では、コントローラ205A,205Bはまた、何れかのカードが取り外される前にカード100A,100Bへの電源を切断する。カード100*が(再)挿入された後に、適当なコントローラが電源を再投入する。
【0022】図3は、本システムによる方法を実施する際に実行される典型的な一連のステップを示すフローチャートである。図3に示すように、ステップ301で、コアI/0カード100Aを交換すべきことを示す「コアI/0カード交換」コマンドが、システムプロセッサ210上で実行中のOS211へ送られる。該コマンドは、プッシュボタン、ソフトウェアルーチン、又は他の何らかの方法で生成することができる。例えば、OS211下で実行されているソフトウェアユーティリティやシステムユーザが、カードが正しく動作していないことを見出して、適当な通知を生成することが可能である。
【0023】ステップ305で、システムプロセッサ210内のOS211が、コアI/0カード100Aの適当なリソースをコアI/0カード100Bへと再マッピングする。該リソースは、該カード100Aをシャットダウンする前に、該リソースを使用するアプリケーションへの影響が最小限になるように再マッピングされる。ステップ310で、OS211は、コアI/0カード100A上のハードウェアの使用を停止して該ハードウェアを構成の対象外にする。次いでOS211は、カード100Aに関する全てのI/0ドライバを無効にする。次いでOS211は、関連する各デバイス102〜104の電源を切断するようカード100A上の電源コントローラ106に通知することにより、カード100Aのためのスロットの電源を随意選択的に切断する。
【0024】ステップ315で、OS211は、カード100Aを取り外す準備が整ったというユーザへの通知を生成する。この通知は。LED、ソフトウェアにより生成された警報(例えばビデオディスプレイ上のメッセージ)、又は他の何らかの機構によって、提供することが可能である。次いでユーザが、ステップ320で、カード100Aをスロットから取り外し、それと同じスロットに代わりのカード(以下カード100Aと称す)を挿入する。コントローラ205A,205B内の電流制限器は、カードがスロットに挿入されて電源が投入された際に電源電圧レール上にスパイクが発生するのを防止する。なお、カード100Aのためのスロットは、上記手順を行う際に電源を投入したままにすることが可能であり、この場合には、後述するステップ330でスロットの電源を再投入する必要がなくなる、ということに留意されたい。コアI/0カード100Aを取り外してから同一カードスロットに再びカードを挿入するまでの間、システムプロセッサ210は稼働状態を継続し、カード100Bは以前にカード100Aが実行していたコアI/0機能の全てを実行する。
【0025】ステップ325で、再びカード100Aが挿入されたことがOS210に通知される。本システムの典型的な実施形態では、該通知は、カード100A上の回路により生成される「カード存在」信号によって提供される。代替的に、ユーザがスイッチ又はキーボード入力を介してOS211に通知することも可能である。ステップ330で、OS211が、該通知に応じて、カード100Aの入ったスロットの電源を投入する(但しステップ310で電源を切断した場合)。カード100Aに電源が投入されると、該カード用のI/0ドライバが再起動する。
【0026】次いでステップ335で、OS211の指示でファームウエア212がカード100A上のデバイスに照会し、どのデバイスが使用可能かを判断して、新しいI/0デバイスを構成する。ステップ340で、OS211が適当なリソースをカード100Aに再マッピングし、ステップ345で、該カード100AがコアI/0カード100Bに代わって動作を再開する。
【0027】上記カード交換プロセスの間もシステムプロセッサ210が動作を継続するので、ダウンタイムによる損害を被ることなくシステムコアI/0を交換することが可能となる。本方法は、複数のコアI/0ボード及び複数のOSインスタンス又は複数のパーティションを有するシステムには特に有用である。複数のパーティション(又はオペレーティングシステム)を有するシステムにおいて、その内の1つのパーティションのI/0ボードを、それ以外のパーティション(又はオペレーティングシステム)が稼働したままの状態で交換することが可能となる。
【0028】図4は、本システムの代替的な実施形態を示すブロック図である。コアI/0カード400は、上述したカード100に類似したものであるが、PCIカードのピンの制限がなく、該コアI/0カード400の寸法は、標準的なPCIカードの寸法に限定されないものである。
【0029】本システムのコアI/0カードの構成要素は、図1及び図2に示す特定のデバイスに限定されるものではない。図4に示すように、同一のコアI/0カード400A,400Bは、それぞれ、管理ファームウェア402、随意選択的なネットワークコントローラ403、複数の電源コントローラ106、随意選択的な複数の通信バス421、随意選択的な管理ファームウェア402とシステムプロセッサ210との間の通信専用バス420、及び複数のI/0デバイス401を備えている。カード400A,400B上の管理ファームウェア402は、I2Cリンク415*又はシリアルリンク416を介して相互に通信する(但しそれらリンクが存在する場合)。各電源コントローラ106*は、I/0デバイス401に(図示の明瞭化のため図示しないラインを介して)1つずつ接続され、及びネットワークコントローラ403(これもまた「デバイス」と見なされる)に接続する(但し該コントローラ403が存在する場合)。各電源コントローラがシステムプロセッサOS211に接続され、管理ファームウェア402との通信を介してカード400*上の個々のデバイスに供給する電力が制御される。
【0030】カード400A,400B上の管理ファームウェア402A,402Bは、それぞれPCIバス420を介してシステムプロセッサ210に接続される。ネットワークコントローラ403及びそれに対応するバス420が存在しない場合には、管理ファームウェア402とシステムプロセッサ210との間の通信はバス421*の何れかを介して行うことができる。
【0031】本システムの典型的な実施形態では、管理ファームウェア402が、カード100の基本機能を監視及び管理し、システムプロセッサ210とは無関係に動作する。
【0032】代替的に、管理ファームウェア402は、カード400*上のデバイス401,403に適したコアI/0管理ソフトウェアを実行するプロセッサを備えることが可能である。回線415は、I2Cバス又は他のシリアルバスとすることが可能である。回線421は、SCSIバス又は他のパラレルバスとすることが可能であり、代替的に1つ又は2つ以上のシリアルバスを含むことが可能である。回線420,423は、PCIバスとすることが可能であり、又は管理ファームウェア402、システムプロセッサ、及びデバイス401/403の間での通信に適した他のバスとすることが可能である。
【0033】本発明の好ましい実施形態の説明並びに図示を行ってきたが、本発明の様々な実施形態が考え得ることは当業者に明らかである。例えば、上記コアI/0カードの特定の構成や図3に示す特定の順序のステップは、本書に記載した特定の実施形態に限定して解釈されるべきではない。特許請求の範囲に規定する本発明の思想及び範囲を逸脱することなく本発明の上述その他の特定の構成要素に変更を加えることが可能である。
【0034】以下においては、本発明の種々の構成要件の組み合わせからなる例示的な実施形態を示す。
1.システムプロセッサ210を含む稼働中のコンピュータにおけるコアI/0ハードウェアの取り外し及び交換を行うシステムであって、前記システムプロセッサ210に関連するコアI/0機能を提供する複数のI/0デバイス401/402/403を各々が含む、第1のコアI/0カード400A及び第2のコアI/0カード400Bを備えており、該各カード400A/400B上の前記I/0デバイス401/402/403の内の少なくとも1つが、通信バス420を介して前記システムプロセッサ210に結合され、前記システムプロセッサ210から前記通信バス420を介して送信された信号に応じて、前記第1のI/0カード400Aが実行していた機能を前記第2のコアI/0カード400Bが実行すると共に、該第1のI/0カード400Aがそのカードスロットから取り外されて交換される、システム。
2.前記各カード400A/400B上に複数の電源コントローラ106を含み、前記各カード400A/400B上のデバイス401/402/403の各々が、前記電源コントローラ106に1つずつ接続され、該電源コントローラ106の各々が、前記第1のI/0カード400Aが前記スロットから取り外されることを示す前記システムプロセッサ210からの信号に応じて、前記第1のコアI/0カード400A上のI/0デバイス401/402/403のそれぞれの電源を切断し、電源コントローラ106の各々が、前記スロットに前記第1のI/0カード400Aが再挿入されたことを示す前記システムプロセッサ210からの信号に応じて、該第1のコアI/0カード400A上のI/0デバイス401/402/403のそれぞれに電源を投入する、前項1に記載のシステム。
3.前記各カード400A/400Bが管理プロセッサ402を備えており、該管理プロセッサ402がUARTコンソールとして機能して、通信バス420を介して前記システムプロセッサ210から受信したデータをリダイレクトする、前項2に記載のシステム。
4.前記システムプロセッサ210が、前記第1のコアI/0カード400Aに関連する全てのI/0ドライバを無効にした後、前記第1のコアI/0カード400A上のデバイス401/402/403の電源を切断するよう前記第1のコアI/0カード400A上の電源コントローラ106に通知する、前項1に記載のシステム。
5.前記第1のコアI/0カード400Aの電源が切断されたことを該システムのユーザに通知する手段315を含む、前項1に記載のシステム。
6.前記第1のコアI/0カード400Aがそのカードスロットから取り外されて交換される間に前記システムプロセッサ211が動作し続ける、前項1に記載のシステム。
7.前記各カード400上のデバイスの1つがLANコントローラ403であり、もう1つがSCSIバスコントローラ401である、前項1に記載のシステム。
8.前記各カード400A/400Bが、該カード400A/400B上の前記デバイス401/402/403の内の少なくとも1つと前記システムプロセッサ210との間に結合された複数の通信バス420/415/421を含む、前項1に記載のシステム。
9.コンピュータシステムが稼働中の状態で該コンピュータシステムのコアI/0ハードウェアの取り外し及び交換を行う方法であって、該コンピュータシステムがシステムプロセッサ210上で実行されるオペレーティングシステム211を含み、該方法が、(a) 第1のコアI/0カード400A上のコアI/0ハードウェアが交換されることをオペレーティングシステム211に通知し、(b) 前記システムプロセッサ210により使用されるI/0リソースを、前記第1のコアI/0カード400A上のコアI/0ハードウェアと同一機能のコアI/0ハードウェアを有する第2のコアI/0カード400Bへ再マッピングし、(c) 前記第1のコアI/0カード400Aに関する全てのI/0ドライバを無効にし、(d) 前記第1のコアI/0カード400Aの交換が完了したときをオペレーティングシステム211に通知し、(e) 前記第1のコアI/0カード400Aに関するI/0ドライバを再起動し、(f) 適当なリソースを前記第1のコアI/0カード400Aに再マッピングする、という各ステップ有する方法。
10.前記第1のコアI/0カード400Aを取り外す準備が完了したときをコンピュータシステムのユーザに通知する、前項9に記載の方法。




 

 


     NEWS
会社検索順位 特許の出願数の順位が発表

URL変更
平成6年
平成7年
平成8年
平成9年
平成10年
平成11年
平成12年
平成13年


 
   お問い合わせ info@patentjp.com patentjp.com   Copyright 2007-2013