IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 廣逹電腦股▲ふん▼有限公司の特許一覧

特許7324906コプロセッサを用いたベースボード管理コントローラのメッセージの記録
<>
  • 特許-コプロセッサを用いたベースボード管理コントローラのメッセージの記録 図1
  • 特許-コプロセッサを用いたベースボード管理コントローラのメッセージの記録 図2
  • 特許-コプロセッサを用いたベースボード管理コントローラのメッセージの記録 図3
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-08-02
(45)【発行日】2023-08-10
(54)【発明の名称】コプロセッサを用いたベースボード管理コントローラのメッセージの記録
(51)【国際特許分類】
   G06F 11/34 20060101AFI20230803BHJP
【FI】
G06F11/34 176
【請求項の数】 10
(21)【出願番号】P 2022100057
(22)【出願日】2022-06-22
(65)【公開番号】P2023077376
(43)【公開日】2023-06-05
【審査請求日】2022-06-22
(31)【優先権主張番号】17/534,717
(32)【優先日】2021-11-24
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】508018934
【氏名又は名称】廣達電腦股▲ふん▼有限公司
【氏名又は名称原語表記】Quanta Computer Inc.
【住所又は居所原語表記】No.188,Wenhua 2nd Rd.,Guishan Dist.,Taoyuan City 333,Taiwan
(74)【代理人】
【識別番号】100108833
【弁理士】
【氏名又は名称】早川 裕司
(74)【代理人】
【識別番号】100162156
【弁理士】
【氏名又は名称】村雨 圭介
(72)【発明者】
【氏名】董 彦屏
【審査官】武田 広太郎
(56)【参考文献】
【文献】特開2013-088394(JP,A)
【文献】特開2008-176682(JP,A)
【文献】特開2007-265157(JP,A)
【文献】米国特許出願公開第2020/0319975(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 11/34
(57)【特許請求の範囲】
【請求項1】
ベースボード管理コントローラ(BMC)システムにメッセージを記録する方法であって、前記方法は、
前記BMCシステムの処理チップに電源投入するステップであって、前記処理チップは、メインプロセッサと、非一時的なプロセッサ可読メモリデバイスとスヌーピングインターフェースに通信可能に結合されたコプロセッサと、を有する、ステップと、
前記コプロセッサを起動するステップと、
前記非一時的なプロセッサ可読メモリデバイスの記憶部及び前記スヌーピングインターフェースを初期化するステップと、
前記メインプロセッサの起動をトリガーするステップと、
前記スヌーピングインターフェースを介して、前記BMCシステムの通信インターフェースからリダイレクトされた前記メッセージを受信するステップと、を含む、方法。
【請求項2】
受信した前記メッセージを前記非一時的なプロセッサ可読メモリデバイスに保存するステップをさらに含む、請求項1に記載の方法。
【請求項3】
前記コプロセッサを起動するステップは、前記コプロセッサが前記メインプロセッサの前に電源投入された場合に、前記メインプロセッサが電源投入される前に実行される、請求項1に記載の方法。
【請求項4】
前記コプロセッサを起動するステップは、前記メインプロセッサが前記コプロセッサの前に電源投入された場合に、前記メインプロセッサによって前記コプロセッサの起動をトリガーすることによって実行される、請求項1に記載の方法。
【請求項5】
受信した前記メッセージは、前記メインプロセッサの起動及び動作中に生成された起動メッセージ、エラーメッセージ及び例外メッセージを含み、
前記起動メッセージは、前記メインプロセッサの(i)起動イベント、(ii)オペレーティングシステムのロードイベント、(iii)ランダムアクセスメモリ(RAM)ディスクの解凍イベント、及び、(iv)ランタイムサービスに関連している、請求項1に記載の方法。
【請求項6】
ベースボード管理コントローラ(BMC)システムであって、
内蔵メインプロセッサと内蔵コプロセッサとを含む処理チップと、
前記内蔵メインプロセッサに通信可能に結合された少なくとも1つの通信インターフェースと、
前記内蔵コプロセッサに結合された少なくとも1つのスヌーピングインターフェースと、
前記コプロセッサに通信可能に結合され、記憶部を有する非一時的なプロセッサ可読メモリデバイスと、を備え、
前記プロセッサ可読メモリデバイスは、自身に保存されたマシン可読命令を有し、前記マシン可読命令が実行された場合に、前記コプロセッサが、
前記処理チップを電源投入することと、
前記コプロセッサを起動することと、
前記記憶部及び前記少なくとも1つのスヌーピングインターフェースを初期化することと、
前記少なくとも1つのスヌーピングインターフェースを介して前記少なくとも1つの通信インターフェースからリダイレクトされたメッセージを受信することと、を行うように前記コプロセッサを構成する、BMCシステム。
【請求項7】
前記コプロセッサは、前記受信したメッセージを前記非一時的なプロセッサ可読メモリデバイスに保存するようにさらに構成されている、請求項6に記載のBMCシステム。
【請求項8】
前記コプロセッサは、前記コプロセッサが前記メインプロセッサの前に電源投入された場合に、前記メインプロセッサが電源投入される前に起動されるようにさらに構成されている、請求項6に記載のBMCシステム。
【請求項9】
前記メインプロセッサは、前記メインプロセッサが前記コプロセッサの前に電源投入された場合に、前記コプロセッサの起動をトリガーするように構成されている、請求項6に記載のBMCシステム。
【請求項10】
前記受信したメッセージは、前記メインプロセッサの起動及び動作中に生成された起動メッセージ、エラーメッセージ及び例外メッセージを含み、
前記起動メッセージは、前記メインプロセッサの(i)起動イベント、(ii)オペレーティングシステムのロードイベント、(iii)ランダムアクセスメモリ(RAM)ディスクの解凍イベント、及び、(iv)ランタイムサービスに関連している、請求項6に記載のBMCシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、サーバーに用いられるベースボード管理コントローラ(BMC)に関し、特に、BMCのコプロセッサを用いてメッセージを記録(logging)するシステムおよび方法に関する。
【背景技術】
【0002】
サーバーは、ネットワークベースのシステム又はデータセンター等の需要の高いアプリケーションに多数用いられている。クラウドコンピューティングアプリケーションの出現により、データセンターの需要が高まっている。各サーバーは、通常、プロセッサ、メモリデバイス、ネットワークインターフェースカード、電源(power supplies)及び他の専用ハードウェア等のハードウェアコンポーネントを含む。サーバーは、通常、ハードウェアコンポーネントの動作を管理するベースボード管理コントローラ(BMC)、及び、電源やファン等のサポートコンポーネントも含む。BMCは、動作データをラックのサーバーを管理する中央管理局にも通信する。BMCは、サーバーの中央処理ユニット(CPU)サーバーの動作を監視する必要性を軽減する。従って、BMCの起動及び動作中に発生するメッセージ及びイベントの記録(log)を保存し、追跡することが望ましい。
【発明の概要】
【発明が解決しようとする課題】
【0003】
BMCのコプロセッサを用いてメッセージを記録するシステムおよび方法を提供する。
【課題を解決するための手段】
【0004】
実施形態及び同様の用語(例えば、実装、構成、態様、例、及び、オプション等)は、本開示及び以下の請求項の発明の全てを広く指すことを意図している。これらの用語を含む記載は、本明細書に記載された発明を限定するものではなく、以下の請求項の意味又は範囲を限定するものでもないことを理解されたい。本明細書でカバーされる本開示の実施形態は、本概要でなく、以下の請求項によって定義される。この概要は、本開示の様々な態様の高レベルの概要であり、以下の詳細な説明のセクションでさらに説明される概念のいくつかを紹介するものである。この概要は、請求された発明の重要な又は必須の特徴を特定することを意図していない。また、この概要は、請求された発明の範囲を決定するために単独で用いられることを意図していない。この発明は、本開示の全明細書の適切な部分、一部又は全ての図面、及び、各請求項を参照することによって理解されるべきである。
【0005】
本開示の特定の態様によれば、ベースボード管理コントローラ(BMC)システムにメッセージを記録する方法は、BMCシステムの処理チップに電源投入するステップを含み、処理チップは、メインプロセッサと、非一時的なプロセッサ可読メモリデバイスとスヌーピングインターフェースとに通信可能に結合されたコプロセッサと、を有する。この方法は、コプロセッサを起動するステップと、非一時的なプロセッサ可読メモリデバイスの記憶部及びスヌーピングインターフェースを初期化するステップと、をさらに含む。この方法は、メインプロセッサの起動をトリガーするステップと、スヌーピングインターフェースを介して、BMCシステムの通信インターフェースからリダイレクトされたメッセージを受信するステップと、をさらに含む。
【0006】
本開示の特定の態様によれば、この方法は、受信したメッセージを非一時的なプロセッサ可読メモリデバイスに保存するステップをさらに含む。
【0007】
本開示の特定の態様によれば、コプロセッサを起動するステップは、コプロセッサがメインプロセッサの前に電源投入された場合に、メインプロセッサが電源投入される前に実行される。
【0008】
本開示の特定の態様によれば、前記コプロセッサを起動するステップは、前記メインプロセッサが前記コプロセッサの前に電源投入された場合に、前記メインプロセッサによって前記コプロセッサの起動をトリガーすることによって実行される。
【0009】
本開示の特定の態様によれば、この方法は、BMCシステムが組み込まれたプリント回路基板(PCB)のトレースを介して、リダイレクトされたメッセージを外部にルーティングするステップをさらに含む。
【0010】
本開示の特定の態様によれば、この方法は、リダイレクトされたメッセージを処理チップの内部にルーティングするステップをさらに含み、このルーティングは、通信インターフェースの送信機とスヌーピングインターフェースの受信機との間のレジスタをプログラミングすることを含む。
【0011】
本開示の特定の態様によれば、ベースボード管理コントローラ(BMC)システムが開示される。BMCシステムは、内蔵メインプロセッサと内蔵コプロセッサとを有する処理チップと、メインプロセッサに通信可能に結合された少なくとも1つの通信インターフェースと、コプロセッサに結合された少なくとも1つのスヌーピングインターフェースと、コプロセッサに通信可能に結合された非一時的なプロセッサ可読メモリデバイスと、を含む。メモリデバイスは、記憶部を含む。メモリデバイスは、自身に保存されたマシン可読命令を有し、その命令が実行された場合に、コプロセッサがメッセージを記録する方法を実行するように構成されている。この方法は、BMCシステムの処理チップを電源投入することと、コプロセッサを起動することと、記憶部及び少なくとも1つのスヌーピングインターフェースを初期化することと、を含む。この方法は、メインプロセッサの起動をトリガーすることと、少なくとも1つのスヌーピングインターフェースを介してBMCシステムの少なくとも1つの通信インターフェースからリダイレクトされたメッセージを受信することと、をさらに含む。
【0012】
本開示の特定の態様によれば、コプロセッサは、受信したメッセージを前記非一時的なプロセッサ可読メモリデバイスに保存するようにさらに構成されている。
【0013】
本開示の特定の態様によれば、少なくとも1つの通信インターフェースは、ユニバーサル非同期受信機/送信機(UART)インターフェース、ユニバーサルシリアルバス(USB)インターフェース、汎用入力/出力(GPIO)インターフェース、集積回路間(I2C)インターフェース、管理コンソールインターフェース、又は、デバッグインターフェースである。
【0014】
本開示の特定の態様によれば、コプロセッサは、コプロセッサがメインプロセッサの前に電源投入された場合に、メインプロセッサが電源投入される前に起動されるようにさらに構成されている。
【0015】
本開示の特定の態様によれば、メインプロセッサは、メインプロセッサがコプロセッサの前に電源投入された場合に、コプロセッサの起動をトリガーするように構成されている。
【0016】
本開示の特定の態様によれば、受信したメッセージは、メインプロセッサの起動及び動作中に生成された起動メッセージ、エラーメッセージ及び例外メッセージを含む。
【0017】
本開示の特定の態様によれば、起動メッセージは、メインプロセッサの(i)起動イベント、(ii)オペレーティングシステムのロードイベント、(iii)ランダムアクセスメモリ(RAM)ディスクの解凍イベント、及び、(iv)ランタイムサービスに関連している。
【0018】
本開示の特定の態様によれば、BMCシステムは、処理チップが埋め込まれたプリント回路基板(PCB)上のトレースをさらに含み、トレースは、リダイレクトされたメッセージを処理チップの外部にルーティングするように構成されている。
【0019】
本開示の特定の態様によれば、前記処理チップは、前記メインプロセッサの少なくとも1つの通信インターフェースの送信機と前記コプロセッサの少なくとも1つのスヌーピングインターフェースの受信機との間のレジスタをさらに含み、レジスタは、リダイレクトされたメッセージを処理チップの内部にルーティングするようにプログラムされている。
【0020】
本開示の特定の態様によれば、コプロセッサに通信可能に結合された非一時的なプロセッサ可読メモリデバイスは、電子マルチメディアカード(eMMC)、シリアルアドバンストテクノロジーアタッチメント(SATA)デバイス、シリアルアタッチドSCSI(SAS)デバイス、マルチメディアカード(MMC)、ユニバーサルシリアルバス(USB)ディスク、ペリフェラルコネクトインターフェースエクスプレス(PCIe)ディスク、シリアルペリフェラルインターフェース(SPI)ディスク、拡張シリアルペリフェラルインターフェース(eSPI)ディスク、又は、セキュアデジタル入出力(SDIO)カードである。
【0021】
上述した概要は、本開示の各実施形態又は全ての態様を表すことを意図するものではない。むしろ、上述した概要は、本明細書に記載された新規な態様及び特徴のいくつかの例を提供するに過ぎない。本開示の上述した特徴及び利点、並びに、他の特徴及び利点は、添付の図面及び添付の特許請求の範囲と関連して、本発明を実施するための代表的な実施形態及び態様についての以下の詳細な説明から容易に明らかとなるであろう。本開示の追加の態様は、図面を参照してなされた様々な実施形態の詳細な説明を考慮すれば当業者には明らかであり、図面の簡単な説明が以下に提供される。
【0022】
本開示、並びに、その利点及び図面は、例示的な実施形態の以下の説明及び添付の図面からよりよく理解されるであろう。これらの図面は、例示的な実施形態のみを示しており、従って、様々な実施形態又は特許請求の範囲を限定するものと見なされるべきではない。
【図面の簡単な説明】
【0023】
図1】本開示の特定の態様による、BMCシステムのコプロセッサを用いてメッセージを記録するアーキテクチャを有するBMCシステムの概略図である。
図2】本開示の特定の態様による、図1のBMCシステムがコプロセッサを用いてどのようにメッセージを記録するかを説明しているフロー図である。
図3】本開示の特定の態様による、コプロセッサを用いてBMCシステムのメッセージを記録する方法のブロック図である。
【発明を実施するための形態】
【0024】
本開示は、様々な修正形式及び代替形式を受け入れることが可能であるが、具体的な実施形態が、例示的に図面に示され、本明細書において詳細に記載されることになる。しかしながら、この発明は、開示された特定の形態に限定されることを意図していないことを理解されたい。この発明は、特許請求の範囲に定義されるこの発明の趣旨及び範囲内に入る全ての修正物、均等物及び代替物を包含する。
【0025】
本開示の実施形態は、BMCシステム、及び、BMCのコプロセッサを用いてメッセージを記録する方法に関する。コプロセッサは、BMCシステムの処理チップのメインプロセッサの前に起動し、メインプロセッサの起動及び動作中に生成された起動メッセージ、エラーメッセージ及び例外メッセージは、スヌーピング(snooping)インターフェースを介してBMCシステムの通信インターフェースからコプロセッサにリダイレクトされる。次いで、メッセージは、将来の使用及び分析のために、コプロセッサに通信可能に結合されたメモリデバイスに保存される。実施の詳細については、以下に説明する。
【0026】
添付の図面を参照しながら様々な実施形態を説明するが、同様の参照番号は、全体を通して、類似又は同一の要素を示すのに用いられる。図面は、単に本開示の態様及び特徴を説明するためのものであり、縮尺通りに描かれているとは限らない。本開示の特定の態様及び特徴の完全な理解を提供するために、多数の特定の詳細、関係及び方法が示されているが、当業者には、これらの態様及び特徴が1つ以上の特定の詳細なしに、他の関係又は他の方法を用いて行い得ることを理解できるであろう。いくつかの例では、周知の構造又は動作は、説明のために詳細に記述されていない。本明細書に開示された様々な実施形態は、必ずしも図示された動作又はイベントの順序に限定されるものではなく、いくつかの動作は、異なる順序及び/又は他の動作若しくはイベントと同時に起こり得る。本開示の特定の態様及び特徴を実施するために、図示された全ての動作又はイベントが必ずしも必要とされるわけではない。
【0027】
詳細な説明の目的のために、特に断りのない限り、単数形は複数形を含み、複数形は単数形を含む。「含む」という語は、「制限なく含む」ことを意味する。さらに、「約」、「ほとんど」、「実質的に」、「おおよそ」等のような近似の語は、本明細書では、例えば「~で、~近くで、若しくは、ほとんど~で」、「~の3~5%内で」、「許容可能な製造公差内」、又は、それらの任意の論理的な組合せの意味において用いられ得る。同様に、「垂直」又は「水平」という用語は、それぞれ垂直又は水平方向の「3~5%以内」を追加的に含むことを意図している。また、「上」、「下」、「左」、「右」、「上方」及び「下方」等の方向の用語は、参照図に描かれているのと同等の方向、オブジェクト(複数可)若しくは要素(複数可)に一般的に用いられる位置等の参照されているオブジェクト若しくは要素から文脈的に理解される方向、又は、本明細書に別途記載される方向と関連付けられていることを意図している。
【0028】
図1は、BMCシステム100のコプロセッサを用いてメッセージを記録するアーキテクチャを有するBMCシステム100の概略図である。BMCシステム100は、サーバーの動作(例えば、電力管理及び熱管理等の動作)を管理する。BMCシステム100は、サーバーの電力センサ及び熱センサから受信したデータに従って、電源供給及びファンモジュールを効果的に制御する。また、BMCシステム100は、サーバーの様々なハードウェアコンポーネントから動作データを受信し、それらのハードウェアコンポーネントに設定を提供する。図1に示す非限定的な実施形態では、BMCシステム100は、プリント回路基板(PCB)110と、処理チップ120と、組み込みマルチメディアカード(eMMC)メモリデバイス130と、を含む。
【0029】
処理チップ120は、PCB110に組み込まれたCOM Portと呼ばれる外部バス112に電気的に接続された内蔵メインプロセッサ122と内蔵コプロセッサ126とを含むSOC(System on Chip)である。処理チップ120は、BMCシステム100の電子部品及びBMCシステム100が構成要素であるサーバーの電力データ及び他のサポートを定期的に監視するように構成されている。いくつかの実施形態では、処理チップ120の監視速度は、BMCシステム100及びサーバーの電子部品に関連する温度及び/又は電力データによって決まる。いくつかの実施形態では、処理チップ120は、ASPEED Technology(例えば、AST2500)、Nuvoton(例えば、NPCM730)、又は、Textan Instruments(例えば、Sitara)によって製造されてもよい。
【0030】
メインプロセッサ122は、これらに限定されないが、外部バス112等のデバイス又はバスからの入力を受信するように構成された受信機RXと、出力を送信するように構成された送信機TXとを有する通信インターフェース124に結合されている。図1に示す非限定的な例では、通信インターフェース124は、ローカルエリアネットワーク(LAN)を介したホストシリアル通信又はデバッグ用に構成されたユニバーサル非同期受信機/送信機(UART)インターフェースである。しかしながら、他の実施形態では、それぞれが異なる通信プロトコルを有する1つ以上の通信インターフェース124が用いられてもよい。通信インターフェース124は、ユニバーサルシリアルバス(USB)インターフェース、汎用入力/出力(GPIO)インターフェース、集積回路間(I2C)インターフェース、管理コンソールインターフェース、及び/又は、デバッグインターフェースであってもよい。非限定的な例として、GPIOインターフェースは、BMCシステムハートビート(heartbeat)、BMCシステムヘルス(health)、基本入出力システム(BIOS)電源投入時自己診断(Power-On Self-Test;POST)コード、電力状態(power status)、存在するデバイス(例えば、HDD、SSD等)、又は、処理チップ120が監視できる任意の他の状態(status)を示す、LED等の視覚インジケータを制御するように用いられてもよい。別の非限定的な例として、管理コンソールインターフェースは、BIOSファームウェア更新又はデバッグログストレージ(debug logging storage)に用いられてもよい。メインプロセッサ122は、コプロセッサ126よりも比較的強力なプログラム可能な制御装置である。
【0031】
コプロセッサ126は、eMMCメモリデバイス130に通信可能に結合されているが、任意の非一時的なプロセッサ可読メモリデバイス(例えば、シリアルアドバンストテクノロジーアタッチメント(Serial Advanced Technology Attachment;SATA)デバイス、シリアルアタッチドSCSI(SAS)デバイス、マルチメディアカード(MMC)、ユニバーサルシリアルバス(USB)ディスク、ペリフェラルコネクトインターフェースエクスプレス(Peripheral Connect Interface express;PCIe)ディスク、シリアルペリフェラルインターフェース(SPI)ディスク、拡張シリアルペリフェラルインターフェース(eSPI)ディスク、セキュアデジタル入出力(SDIO)カード等であるが、これらに限定されない)用いられてもよい。eMMCメモリデバイス130は、コプロセッサ126によって実行され、イベントの記録(logging event)、データ及びメッセージの記憶等の様々な機能を実行するファームウェアを格納する。eMMCメモリデバイス130は、実行可能なプログラムコード、データ及びメッセージを記憶する記憶部135を含む。コプロセッサ126は、コプロセッサ126をeMMCメモリデバイス130に接続するeMMCインターフェース129に結合されている。
【0032】
コプロセッサ126は、これらに限定されないが、例えば、UART通信インターフェース124又は別の通信インターフェース124等のように、デバイス又はバスから入力を受信するように構成された受信機RXと、デバイス又はバスに出力を送信するように構成された送信機TXと、を有するスヌーピングインターフェース128にも結合されている。いくつかの実施形態では、スヌーピングインターフェース128は、UART通信インターフェース124の送信機TXとコプロセッサ126のスヌーピングインターフェース128の受信機RXとの間のプログラム可能なレジスタの内部ルート125を介して、UART通信インターフェース124に通信可能に結合されている。他の実施形態では、スヌーピングインターフェース128は、PCB110上のトレースの外部ルート115を介してUART通信インターフェース124に通信可能に結合されている。
【0033】
図2は、BMCシステム100がコプロセッサ126を用いてどのようにメッセージを記録するかを説明しているフロー図200である。BMCシステム100は、ステップ205でプロセスを開始し、続いてステップ210で、処理チップ120が電源投入される。判定点(decision point)220では、BMCシステム100は、処理チップ120が最初にコプロセッサ126を電源投入するのをサポートできるかどうかを判定する。
【0034】
処理チップ120がコプロセッサ126を電源投入するのをサポートできない場合、メインプロセッサ122は、ステップ222でオンにされる。次いで、メインプロセッサ122は、ステップ224で、コプロセッサ126の電源投入及び起動(boot-up)をトリガーする。続いて、判定点226では、メインプロセッサ122は、コプロセッサ126が起動の準備ができているかどうかを判定するか、或いは、コプロセッサ126が起動の準備ができるまで待機する。
【0035】
一方、処理チップ120がコプロセッサ126の電源投入をサポートできる場合、ステップ230で、メインプロセッサ122が電源投入される前に、コプロセッサ126が電源投入されて起動される。次いで、ステップ240で、コプロセッサ126は、eMMCメモリデバイス130の記憶部135を初期化し、スヌーピングインターフェース128を有効にする。これは、ステップ250で、メインプロセッサ122が電源投入し、起動するようにトリガーする。
【0036】
ステップ252では、メインプロセッサ122は、起動イベント(u-ブート(u-boot))、オペレーティングシステムロードイベント(例えば、Linux(登録商標) kernel loading)、ランダムアクセスメモリ(RAM)ディスク解凍(disk decompression)イベント及びランタイムサービスを含む起動プロセスを受ける。次いで、ステップ254では、起動中に生成された任意の起動メッセージ、エラーメッセージ、例外メッセージ及びデータは、ダンプされるか又はUART通信インターフェース124にダイレクト(direct)される。
【0037】
同様に、メインプロセッサ122が起動されると、メインプロセッサ122は、ステップ256で動作状態に移行し、その間に、ランタイムサービス及びデーモン(daemons)が生成及び実行され得る。次いで、ステップ258では、メインプロセッサ122の動作中に生成された任意の起動メッセージ、エラーメッセージ、例外メッセージ及びデータは、ダンプされるか又はUART通信インターフェース124にダイレクトされる。
【0038】
次いで、ステップ254,258では、メインプロセッサ122の起動及び動作中に生成された起動メッセージ、エラーメッセージ、例外メッセージ及びデータは、スヌーピングインターフェース128にリダイレクトされる。判定点260では、コプロセッサ126は、スヌーピングインターフェース128を介してUART通信インターフェース124からリダイレクトされたメッセージ及びデータの受信を確認する。続いて、判定点270では、コプロセッサ126は、リダイレクトされたメッセージ及びデータを、eMMCインターフェース129を介してeMMCメモリデバイス130に格納するように進める。保存されたメッセージは、BMCシステム100のローカルエリアネットワーク(LAN)を介して取得されるか、又は、ポータブルセキュアデジタル(SD)カードに保存され得る。
【0039】
図3は、コプロセッサ(例えば、BMCシステム100のコプロセッサ126)を用いてBMCシステムにメッセージを記録する方法300のブロック図である。方法300は、BMCシステムの処理チップが電源投入されるブロック310で始まる。処理チップは、メインプロセッサ及びコプロセッサを含む。コプロセッサは、非一時的なプロセッサ可読メモリデバイス及びスヌーピングインターフェースに通信可能に結合されている。次いで、方法300はブロック320に進み、コプロセッサが起動される。いくつかの実施形態では、コプロセッサは、コプロセッサがメインプロセッサの前に電源投入された場合に、メインプロセッサが電源投入される前に起動されるようにさらに構成されている。他の実施形態では、メインプロセッサは、メインプロセッサがコプロセッサの前に電源投入された場合に、コプロセッサの起動をトリガーするように構成されている。
【0040】
ブロック330では、コプロセッサが起動された後に、非一時的なプロセッサ可読メモリデバイスの記憶部及びスヌーピングインターフェースが初期化される。いくつかの実施形態では、非一時的なプロセッサ可読メモリデバイスは、組み込みマルチメディアカード(eMMC)、シリアルアドバンストテクノロジーアタッチメント(Serial Advanced Technology Attachment;SATA)デバイス、シリアルアタッチドSCSI(SAS)デバイス、マルチメディアカード(MMC)、ユニバーサルシリアルバス(USB)ディスク、ペリフェラルコネクトインターフェースエクスプレス(PCIe)ディスク、シリアルペリフェラルインターフェース(SPI)ディスク、拡張シリアルペリフェラルインターフェース(eSPI)ディスク、セキュアデジタル入出力(SDIO)カード等であってもよい。ブロック340では、メインプロセッサの起動が、BMCシステムによってトリガーされる。
【0041】
ブロック350では、方法300は、スヌーピングインターフェースを介してBMCシステムの通信インターフェースからリダイレクトされたメッセージを受信するように進む。いくつかの実施形態では、通信インターフェースは、ユニバーサル非同期受信機/送信機(UART)インターフェース、ユニバーサルシリアルバス(USB)インターフェース、汎用入力/出力(GPIO)インターフェース、集積回路間(I2C)インターフェース、管理コンソールインターフェース、及び/又は、デバッグインターフェースであってもよい。
【0042】
いくつかの実施形態では、メッセージは、メインプロセッサの起動及び動作中に生成された起動メッセージ、エラーメッセージ及び例外メッセージを含む。いくつかの実施形態では、起動メッセージは、メインプロセッサの起動イベント(u-ブート(u-boot))、オペレーティングシステムロードイベント(例えば、Linux(登録商標) kernel loading)、RAMディスク解凍イベント及びランタイムサービスに関連している。いくつかの実施形態では、この方法は、受信したメッセージを、将来の使用及び分析のために非一時的なプロセッサ可読メモリデバイスに保存することをさらに含む。
【0043】
いくつかの実施形態では、この方法は、BMCシステムが組み込まれたプリント回路基板(PCB)のトレースを介して、リダイレクトされたメッセージを外部にルーティングすることをさらに含む。他の実施形態では、この方法は、リダイレクトされたメッセージを処理チップの内部にルーティングすることをさらに含み、通信インターフェースの送信機とスヌーピングインターフェースの受信機との間のレジスタが、ルーティング用にプログラムされることをさらに含む。
【0044】
有利なことに、本明細書に記載されたように、BMCのコプロセッサを用いてメッセージを記録するシステム及び方法は、BMCシステムの処理チップの突然のハングアップ、BMCシステムが正常に起動できない、BMCシステムのネットワーク切断、BMCシステムのウォッチドッグタイムアウトの再起動等のように、潜在的なシステムの問題に関連した起動メッセージ、エラーメッセージ、例外メッセージ及びデータを取得することにより、サーバーの開発者とエンドユーザーの両方に利益をもたらすことができる。上述した問題又は同様の問題の何れかを含むエラー及び/又は例外メッセージは、BMCシステムの通信インターフェースに送信されるが、BMCシステムが完全に機能していない場合、取得することができない。従って、本明細書に記載されたシステム及び方法は、通信システムからのメッセージを傍受するための追加のデバイスのコストをかけることなく、BMCシステムの処理チップ内の既存のコプロセッサを用いて、BMCシステムの起動及び動作中にメッセージを監視、保存及び分析することが可能である。
【0045】
本発明を1つ以上の実施形態に関して詳細に述べてきたが、本明細書及び図面式を読み理解すれば、他の当業者により同等の修正及び変更が生じ得る。また、本発明の特定の特徴は、複数の実施形態のうち1つのみに関連して述べられているが、このような特徴は、所定の又は特定の応用に必要で利点がある1つ以上の他の実施形態の他の特徴と組み合わせられてもよい。
【0046】
本発明の様々な実施形態について上述したが、それらは限定ではなく例として提示されたものであることを理解されたい。本発明の趣旨又は範囲から逸脱することなく、開示された実施形態に対する多数の変更を、本明細書の開示に従って行うことができる。従って、本発明の幅及び範囲は、上記の実施形態の何れかによって限定されるべきではない。むしろ、本発明の範囲は、添付の特許請求の範囲及びその均等物に従って定義されるべきである。
【符号の説明】
【0047】
100…BMCシステム
110…プリント回路基板(PCB)
112…外部バス
115…外部ルート
120…処理チップ
122…メインプロセッサ
124…通信インターフェース
125…内部ルート
126…コプロセッサ
128…スヌーピングインターフェース
129…eMMCインターフェース
130…組み込みマルチメディアカード(eMMC)メモリデバイス
135…記憶部
図1
図2
図3