(57)【要約】【課題】  BMC(ベースボード管理コントローラ)の形態で実施されるサーバ管理サービスは、従来技術ではメインシステムにおけるBMCへの依存性が高いため、特定障害のシナリオでは、単一障害点(single-point of failure)(SPF)の問題が発生し、システムが動作不能になる可能性がある。【解決手段】  サーバのハードウェアシステム(130)などを制御するための、制御信号（1125）を提供する制御回路（120）が開示される。制御回路(120)は、BMC(110)の状況に基づいて動作する。制御信号(1125)をアサートすることによってハードウェアシステムをオンに切替える。制御回路(120)がハートビートパルス（1105）をBMC(110)から所定時間よりも多い期間、受信していない場合に、制御回路(120)が制御信号(1125)をアサートする。更にＢＭＣ(110)は初期化を完了した時点で、そのハートビート信号(1105)の生成を無効にするようプログラムされる。BMC(110)はシステムへのAC電力の接続時にトリガされた所定の期間内で、ハートビート(1105)を確定的に生成するようプログラムされる。【選択図】図１
2004320780.tif 000002
【特許請求の範囲】
【請求項１】
第１の回路（１３０）を制御するための制御回路（１２０）であって、
第２の回路（１１０）からハートビート信号（１１０５）を受信するための入力と、
前記第１の回路（１３０）を制御する制御信号（１１２５）を提供するための出力
とを備え、
前記制御回路（１２０）は、前記ハートビート信号（１１０５）を監視し、前記第２の回路（１１０）が前記ハートビート信号（１１０５）を無効にした場合に、又は、前記第２の回路（１１０）が所定の時間窓内に前記ハートビート信号（１１０５）を生成しない場合に、前記制御信号（１１２５）に対して適切な信号をアサートすることからなる、制御回路。
【請求項２】
前記第２の回路（１１０）は、所定の期間が終了する前に、前記ハートビート信号（１１０５）を提供する、請求項１に記載の制御回路。
【請求項３】
前記期間は、前記制御回路（１２０）、前記第１の回路（１３０）、及び前記第２の回路（１１０）が、同時にスタンバイ電力を受け取った時に、開始される、請求項２に記載の制御回路。
【請求項４】
前記第２の回路（１１０）は、前記第２の回路の初期化完了時に、前記ハートビート信号（１１０５）を無効にする、請求項１に記載の制御回路。
【請求項５】
前記制御回路（１２０）は、スタンバイ電力を受け取った時に前記時間窓を開始し、前記時間窓の終了時に前記制御信号（１１２５）に対して前記適切な信号をアサートする、請求項１に記載の制御回路。
【請求項６】
前記第１の回路（１３０）は、サーバのハードウェアシステムであり、前記第２の回路（１１０）は、前記サーバにサービスを提供するサービスプロセッサである、請求項１に記載の制御回路。
【請求項７】
制御回路（１２０）を使用して、第１の回路（１３０）を制御するための方法であって、
前記制御回路（１２０）にハートビート信号（１１０５）を提供するために、第２の回路（１１０）を使用するステップと、
前記ハートビート信号（１１０５）に基づいて、前記第１の回路（１３０）を制御するために、前記制御回路（１２０）が制御信号（１１２５）をアサートするステップ
とを含み、
前記制御回路（１２０）は、前記ハートビート信号（１１０５）が前記制御回路（１２０）に対して、  前記第２の回路（１１０）が機能する準備ができたことを示した場合、又は、所定の時間窓が終了した場合、のいずれかの場合に、前記制御信号（１１２５）をアサートすることからなる方法。
【請求項８】
前記制御回路（１２０）は、
前記ハートビート信号（１１０５）が、ある論理レベルの状態のままであって、その後、前記第２の回路（１１０）が機能する準備ができた時にパルス信号になった場合、又は、
前記ハートビート信号（１１０５）が、パルス信号であって、その後、前記第２の回路（１１０）が    機能する準備ができた時に、１つの論理レベルに切り替った場合
に、前記制御信号（１１２５）をアサートする、請求項７に記載の方法。
【請求項９】
前記制御回路（１２０）は、ウォッチドッグタイマデバイス（３５０）を使用して実施され、
前記ハートビート信号（１１０５）は、前記ウォッチドッグタイマデバイス（３５０）の第２の入力から提供される時間に基づいて、前記ウォッチドッグタイマデバイスの第１の出力を制御するために、前記ウォッチドッグタイマデバイス（３５０）の第１の入力に提供され、
前記所定の時間窓は、前記ウォッチドッグタイマデバイス（３５０）の仕様に従ってプログラムされることからなる、請求項７に記載の方法。
【請求項１０】
前記ウォッチドッグタイマデバイスの前記第１の出力は、フリップフロップ（３４０）のクロック入力、プルアップされた抵抗器（Ｒ２２０）、又はプルダウンされた抵抗器（Ｒ２２０）に提供される、請求項９に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般には電気回路に関し、特に、別の回路、又は別のシステムを制御する回路に関する。
【背景技術】
【０００２】
今日、多くのサーバが、そのサーバのシステムハードウェアを監視及び制御する帯域外管理可能デバイス（out-of-band manageability device）を統合し、標準管理サービス及びカスタム管理サービスの双方を容易にし、且つ、制御する。この管理サービスには、例えばシステム診断、環境モニタリング、Ｉ２Ｃ／ＳＭバスマスタリング、外部接続されたシステム管理者への情報転送などが含まれる。このようなデバイスは、インテリジェント・プラットフォーム・マネジメント・インターフェース（Intelligent Platform Management Interface）（ＩＰＭＩ）業界標準に準拠していることが多く、ベースボード管理コントローラ（Baseboard Manageability Controller、又はBaseboard Management Controller）（ＢＭＣ）の形態で実施されることが多い。ＢＭＣは、典型的には、ＢＭＣ自体の処理要素、メモリ、及びファームウェアコードを含み、プログラマビリティと設計ニーズごとの特殊化とを可能にする。これらの強力なＢＭＣサービスを十分に活用するためには、ＢＭＣの初期化が完了するまで、制御されるコアシステムの電源投入を遅らせる必要がある。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ＢＭＣは通常、ＢＭＣがその初期化コード処理を完了するまでシステムに電源が投入されないことを保証するようなシステム電力制御ロジックを提供する「ヘルシー（healthy）」ステータス信号を利用する。この信号は、ＢＭＣが完全に初期化されて、その機能を実行する準備ができていることを示す。一手法では、ＢＭＣは、その電圧電力をスイッチがオフの状態のスタンバイ電力源から受け取り、ＢＭＣの初期化が完了するまで、コアシステムの電源のスイッチオンを遅らせ、したがって、パワーオンセルフテスト（power-on self-test）（ＰＯＳＴ）ブート起動を遅らせる。上記が意味するように、メインシステムの電源のスイッチオンを遅らせることにより、いくつかの利益が提供される。例えば、ＢＭＣによって可能になるログ記録機能、例えばＳＥＬ（システムイベントログ（system event log））及びＦＰＬ（フォワードプログレスログ（forward progress log））を初期システムブート中に動作可能にすることができる。この初期システムブート期間中は、エラーのログ記録にとって重要な時間であり、その間に数十ないし数百の診断テスト及びそのテスト結果が、ちょうどその何百ミリ秒以上もの時間中に発生し得る。これらのログを後のレビューのために保存し、及び／又は、外部に接続されたユーザにそれらのログのブート同時モニタを提供することによって、ＢＭＣは、主要な管理上の機能を有効にする際に重要な役割を果たす。上述したように、この設計方式では、メインシステムの電源がスイッチオンされる前に、ＢＭＣは、初期化される必要があり、且つ、入来するシステムメッセージを受け取れるよう健全（ヘルシー（healthy））である必要があり、且つ、リモート接続を可能にする必要がある。その結果、メインシステムは、通常動作中、ＢＭＣに、より多く依存することになり、この依存性は、特定の障害のシナリオでは、単一障害点（single-point of failure）（ＳＰＦ）を形成することがある。例えば、ＢＭＣが適切に初期化されなければ、コアシステムの機能とは無関係なＢＭＣの障害のために、システムはスイッチオンされず、動作不能になる。
【０００４】
システムの電源投入制御を提供する別の手法として、システムが、ＢＭＣのステータスを考慮せずにシステムブートを進めるものがある。しかしながら、この手法では、初期ブートプロセスで発生したＰＯＳＴエラーに対する解決が失われる。すなわち、ＢＭＣが初期化を行っている間、入来するメッセージのログを記録する機能が失われる。更に、初期システムブート中、リモートアクセスを介してブートコンソールを監視する機能が失われる。
【０００５】
１つの代替的な手法は、各ＡＣ電源サイクル／電源投入イベントと共にハード的なカウントダウンタイマをトリガするものである。この手法では、タイマが終了すると、ＢＭＣヘルシートラップ（BMC-healthy trap）が迂回されて、コアシステムの電源がスイッチオンされる。しかしながら、ＢＭＣに障害が発生すると、メインシステムの電源が投入される前に、タイマのカウントダウン時間に等しい遅延が、依然として続いて発生する。この手法ではまた、ファームウェアの検証の見落としが、不測の動作状況下で望ましくない結果につながる可能性のあるリスクを増大させる。ＢＭＣにおいて、仮に新しいモジュールが有効にされた場合、そのモジュールは、それ自身のセットアップのため、及び初期化のための処理時間を必要とするので、適切なタイマ機能を保証するために、カウンタ遅延時間の再評価が必要となる可能性がある。これは、フィールドファームウェアの更新の運用実施を複雑にする可能性があり、更には、カウントダウンタイマがソフト的にプログラム可能であることが必要である。アドインＰＣＩカードのような、ＢＭＣがコンフィギュレーションのオプションとして利用可能なシステムでは、ヘルシー信号をデフォルトでアサートされた状態にさせられないと、メインシステムが電源投入時において遅延する可能性があるので、設計が複雑化する。
【０００６】
前述に基づき、前述の欠点及び関連する問題を解決するための機構が提供されることが望まれている。
【課題を解決するための手段】
【０００７】
本発明は、第２の回路又は第２のシステムの状況に基づいて、第１の回路又は第１のシステムを制御するための制御信号を提供する制御回路に関する。一実施形態では、第１の回路は、サーバのハードウェアシステムであり、第２の回路は、ベースボード管理コントローラ（ＢＭＣ）システムである。ＢＭＣは、制御回路によって監視される「ハートビート」を生成する。このハートビートは、所定の設計調整された時間窓内に生成される周期的に繰り返すデジタルパルスである。制御信号をアサートすることによって、サーバシステムのコア電源をオンにすることが許可される。（１）ＢＭＣが初期化を完了し、且つ、ハートビート信号を無効にする状況、（２）ＢＭＣが１つ又は複数のエラーに直面し、所定の時間窓内でハートビート信号を生成できない状況、の２つの監視状況のうちの１つが発生した場合に、制御信号のアサートが実現する。
【０００８】
本発明は例によって説明されるが、それは本発明を限定するものではない。添付図面内において、同じ参照符号は、添付図面内における同様の構成要素を参照する。
【発明の効果】
【０００９】
本発明により、ＢＭＣに障害が発生した場合でも、単一障害点の問題が回避されて、システムをオンにすることが可能になると共に、ＢＭＣに障害が発生しない正常動作の場合においても、従来技術と同様に、ハートビートのステータスに基づいてシステムをオンにすることが可能となる。
【実施例】
【００１０】
以下の説明では、本発明の十分な理解を提供するために、説明の目的のための、多数の具体的な詳細が述べられる。しかしながら、本発明はこれらの具体的な詳細がなくても実践できることは、当業者には明らかであろう。それ以外の場合には、本発明を不明瞭にすることを避けるために、既知の構造及びデバイスがブロック図形式で示される。
【００１１】
図１は、本発明の実施形態を実施することができるシステム１００を示す。システム１００は、回路１１０、回路１２０、及び回路１３０を含む。回路１１０は、ベースボード管理コントローラ（ＢＭＣ）１１０と呼ぶことができ、回路１２０は、制御回路と呼ぶことができ、回路１３０は、サーバのハードウェアシステム１３０と呼ぶことができる。
【００１２】
ＢＭＣ１１０は、サーバ１３０にサービスを提供するサービスプロセッサであり、一実施形態では、サーバを監視し、及び制御するためのＩＰＭＩ標準に準拠する。ＢＭＣ１１０は、入力／出力（Ｉ／Ｏ）スロットを通じてシステム１００にプラグイン接続される。しかしながら、ＢＭＣ１１０をシステム１００内に組み込んで、所与のプロトコルの通信バスを通じて接続してもよい。あるいは、ＢＭＣ１１０をシステムの外部に置いて、ケーブルによって接続してもよい。ＢＭＣ１１０は、リモートコンソールアクセス、イベント及びエラーのログ記録などの機能を容易にする。通常、システム１００の電源が投入されると、続いて一連の診断テストがシステム１００上で行われ、問題がなければ、パワーオンセルフテスト（ＰＯＳＴ）のサクセスコードが生成される。診断テストの例には、プロセッサ及びメモリの組み込みセルフテスト（built-in self-test）（ＢＩＳＴ）、モジュール認識、Ｉ／Ｏの検知及びコンフィギュレーション、ビデオ初期化などが含まれる。イベントログは、起動中におけるシステムの作業の履歴を提供する。したがって、起動プロセス中に、もしも何らかの問題があれば、その問題を特定することを助ける。またＢＭＣ１１０は、外部コンソールアクセス用のインターフェースポートも提供する。このインターフェースポートにより、システム１００の遠隔からの帯域外システム管理（out-of-band system administration）が可能になる。これにより、システム管理者は、ブートプロセスの監視、基本Ｉ／Ｏシステム（ＢＩＯＳ）のセットアップパラメータの参照及び／又は変更、システム管理メッセージに対する応答、などのようなシステム管理をハードウェアシステムのリソース、及び／又は、オペレーティングシステムのリソースを利用することなく行うことができる。このような状況では、ＢＭＣ１１０は、イーサーネットを介したローカルエリアネットワーク（ＬＡＮ）といった外部ネットワークへのネットワークインタフェースを含むことがある。ＡＣ電源投入時に、ＢＭＣ１１０及び制御回路１２０は、同時にスタンバイ電力を受け取る。またスタンバイ電力は、必要に応じて、コアシステム１３０上のデバイスに送ることもでき、このような場合、回路１２０の制御を受けない。
【００１３】
ＢＭＣ１１０は、所定の期間が終了する前に、信号線１１０５に「ハートビート」を提供する。この期間は、ＢＭＣ１１０、制御回路１２０、及びコアシステム１３０がスタンバイ電力を受け取った時に開始する。一般に、ハートビートは、周期的に繰り返すパルスであり、一実施形態では、１Ｈｚ〜１００ＫＨｚの周波数レンジにある。ＢＭＣ１１０が問題に直面すると、回路１３０が、タイムアウト期間内に起動できるように、ハートビート信号は生成されず、信号線１１０５の信号は、論理的ロー状態のままとなる。一方、ＢＭＣ１１０が正常に動作すると、ＢＭＣ１１０は、機能する準備ができるまで、及び／又は、ＢＭＣ１１０の初期化を完了するまで、アクティブの状態のままのハートビート信号を生成する。その初期化の完了に続いて、ＢＭＣ１１０は、例えば信号線１１０５に論理的ローを提供することによって、そのハートビート信号を無効、すなわちデアサートする。
【００１４】
制御回路１２０は、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、プログラマブルロジックデバイス（ＰＬＤ）、ディスクリートな論理デバイスなど、又はそれらと等価なもので実施することができる。回路１２０は、ＢＭＣ１１０の信号線１１０５のハートビートを監視し、このハートビート信号によって回路１２０は、システム１３０を制御するために使用される信号線１１２５の制御信号に、適切な論理レベルを提供する。一実施形態では、信号線１１２５の制御信号をアサートすることによって、システム１３０がオンとなる。信号線１１２５の制御信号のアクティブな論理レベルは、システム１３０の要求に応じて変化する。例えば、システム１３０をオンにするのに、論理的ハイである必要がある場合には、制御回路１２０は、信号線１１２５に論理的ハイを提供する。これとは逆に、システム１３０をオンにするのに、論理的ローである必要がある場合には、制御回路１２０は、信号線１１２５に論理的ローを提供する。信号線１１２５の制御信号の論理状態を例えば論理的ローから論理的ハイへ切り換えるには、又は、それとは逆の方に切り換えるには、インバータが使用可能であることが、当業者であれば認識できるであろう。一般に、本発明の実施形態はまた、制御信号がパルス信号である場合にも適用可能である。例えば、制御信号は、回路１３０をオンにするためなどにパルスを提供する。
【００１５】
回路１３０は、サーバのハードウェアシステムであり、例えば、プロセッサ、メモリ、入力／出力（Ｉ／Ｏ）ブリッジなどを含む。しかしながら、本発明の様々な実施形態は、信号線１１２５の制御信号によって制御可能な他の回路、及び／又は、システムを網羅する。更に、制御信号は、ＢＭＣ１１０以外の回路又はシステムから生じたものであってもよい。例えば、回路１３０のための入力インターフェースは、様々なシステム電力変換器のイネーブル端子を駆動し、システムのための周期的な電力の状態を制御するＰＬＤにて実現させることができ、ＳｕｐｅｒＩＯ、システムのホットスワップコントローラ、及び他の同様のデバイスと対話する。通常、回路１３０は、自身のリセット機能を含む。したがって、回路１３０は信号線１１２５の制御信号によってオンにされると、回路１３０の動作機能を準備するための時間が十分にある。
【００１６】
ＡＣ電力がシステム１００のための電源コードに加えられるとすぐに、スタンバイ電力が、回路１１０、回路１２０、及び回路１３０に加えられる。このスタンバイ電力は、ＢＭＣ１１０のような管理デバイスと、ウェイクオンＬＡＮ（wake-on LAN）（ＷＯＬ）用の（１つ又は複数の）イーサーネットチップ、状況を報告する電力変換器、電圧、周波数、温度などのシステムセンサといったシステム１００内における他のデバイスとに、電力を提供する。
【００１７】
制御回路の第１の実施形態
【００１８】
図２Ａは、制御回路１２０の第１の実施形態である回路２００Ａを示す。この実施形態では、説明の目的のために、システム１３０をオンにするために信号線１１２５の制御信号が論理的ローでアサートされ、且つ、この制御信号は論理的ハイでデアサートされる。回路２００Ａは、カウンタ２１０と、スタンバイ電力に接続されたプルアップ抵抗器Ｒ２２０とによって実施される。
【００１９】
カウンタ２１０は、所定の期間にハートビートパルスを受信しない場合は、信号線１１２５の制御信号を論理的ローでアサートする。この所定の期間は、一実施形態では２ｍｓである。一般に、カウンタ２１０のプリセット端子が、信号線１１０５のハートビート信号を入力信号として受信する。この端子が、論理的ハイへのパルスの立ち上がりエッジを検出すると、カウンタ２１０は、カウントダウンを行うための所定の値、例えば２ｍｓに設定される。一方で、信号線１１２５の制御信号は、例えば論理的ハイを提供されることによってデアサートされる。カウンタ２１０がゼロへとカウントダウンされると、信号線１１２５の制御信号は、論理的ハイから論理的ローへと切り替る。カウンタ２１０はまた、そのカウント機能を実行するために、発振器からの信号をそのクロック入力端子において受信する。該発振器は、適切なクロック周波数を発生させる。
【００２０】
抵抗器Ｒ２２０の値は、信号線１１２５の制御信号がスタンバイ電力のレベルにどれだけ速く到達することが望まれているか、カウンタ２１０の電流シンク能力、などを含めた様々な要素に基づいて選択される。制御信号がスタンバイ電力に到達する時間が速いほど、抵抗器Ｒ２２０の値は、より小さなものが選択される。逆に、時間が遅くなるほど、大きな値が選択される。一実施形態では、抵抗器Ｒ２２０は１ＫΩである。
【００２１】
回路２００Ａを使用するシステム１００の動作を説明するタイミング図
【００２２】
図２Ｂは、一実施形態による、回路２００Ａを使用するシステム１００の動作を説明するタイミング図２００Ｂを示す。説明の目的のため、時刻ｔ１において、ＢＭＣ１１０、制御回路２００Ａ、及びシステム１３０は、有効なＶｓｔｄｂｙを受け取る。システム１３０は、時刻ｔ１でリセットされて、時刻ｔ２までリセット状態となり、時刻ｔ２まで信号線１１２５の制御信号を監視しない。５００ｍｓの期間Ｐは、時刻ｔ１とｔ２との間で継続する。時刻ｔ３で、ＢＭＣ１１０は、その初期化を完了する。更に、ＢＭＣ１１０がハートビート信号を生成すると、信号線１１０５の信号は、時刻ｔ２の前にパルス信号となる。
【００２３】
時刻ｔ２で、ハートビート信号が生成されていない場合、例えば信号線１１０５の信号がパルス信号になっていない場合、カウンタ２１０は、２ｍｓのカウントダウン周期ＴＣがもう１回経過した後、すなわち時刻ｔ’２において、信号線１１２５の制御信号をアサートし、システム１３０をオンにする。図２Ｂに示すように、時刻ｔ’２において、信号線１１２５の制御信号はローに切り替る。この例では、システム１３０は、ＰにＴＣを加えた所定の時間窓の後にオンにされる。
【００２４】
一方、時刻ｔ２で、ハートビート信号がパルス信号である場合、すなわち、ハートビート信号が既に生成されている場合、ＢＭＣ１１０は、その初期化を継続し、時刻ｔ３において、機能する準備ができて、及び／又は、その初期化を完了する。その時点で、ＢＭＣ１１０は、ハートビート信号をデアサートし、例えばハートビート信号をローレベルの状態にする。その結果、時刻ｔ３から２ｍｓのカウントダウン周期ＴＣの後、すなわち時刻ｔ’３において、カウンタ２１０は、信号線１１２５の制御信号をアサートする。図２Ｂに示すように、時刻ｔ’３で、信号線１１２５の制御信号はローに切り替る。
【００２５】
制御回路の第２の実施形態
【００２６】
図３Ａは、制御回路１２０の第２の実施形態である回路３００Ａを示す。回路３００Ａは、Ｄフリップフロップ３４０及びデバイス３５０を含む。デバイス３５０は、一実施形態では、ＵＣＣ３９４６であり、このＵＣＣ３９４６は、テキサス州ダラスのテキサス・インスツルメンツ社による、ウォッチドッグタイマを使用したマイクロプロセッサ管理に関するデバイスファミリに含まれる。デバイス３５０の等価物は、本発明の実施形態の範囲内に含まれる。実際には、デバイス３５０は、回路２１０の機能にいくつかの特徴を追加した機能を実行する。デバイス３５０は入力端子として、ＲＴＨ、ＷＰ、ＲＰ、及びＷＤＩを備え、出力端子として、ＷＤＯ＼及びＲＥＳ＼を備える。端子名の最後にある「＼」は、端子が負論理（すなわちアクティブロー）であることを示す。説明の目的のために、回路３００Ａは、システム１３０を制御するために、信号線１１２５上の信号を論理的ハイでアサートする。
【００２７】
Ｄフリップフロップ３４０は、信号線３３０５のクロック入力におけるクロックのアクティブエッジ時点で、信号線３４０５のＤ入力端子のデータを、信号線１１２５のＱ出力端子に渡す。実施に依存して、Ｄフリップフロップ３４０は、ポジティブエッジでトリガされるものであってもよいし、又はネガティブエッジでトリガされるものであってもよい。ポジティブエッジでトリガする場合、信号線３３０５の立ち上がりエッジが、フリップフロップをトリガして、データをＤ入力端子からＱ出力端子に転送する。一方、ネガティブエッジでトリガする場合は、クロック入力における立ち下がりエッジが、フリップフロップをトリガする。Ｄフリップフロップと同等の機能を実行する他の回路は、本発明の実施形態の範囲内に含まれる。図３では、Ｄ入力端子は、信号線３４０５のスタンバイ電力に接続され、したがって、一般に、論理的ハイである。その結果、信号線１１２５の出力信号Ｑは、一般に、論理的ローであり、信号線３３０５のクロックのアクティブエッジ時点で、信号線３４０５におけるスタンバイ電力の論理的ハイである信号によってハイに切り替る。
【００２８】
デバイス３５０の端子Ｒｔｈは、出力端子ＲＥＳ＼を制御するために、信号線３５０５の電圧Ｖｔｈを例えば１．２３５Ｖである内部参照電圧Ｖｒｅｆと比較する。すなわち、電圧Ｖｔｈが１．２３５Ｖよりも大きくなると、端子ＲＥＳ＼は、論理的ローに引き下げられて、端子ＲＰで提供されるリセット期間Ｔｒｅｓの間、ロー状態のままとなる。電圧Ｖｔｈが、デバイス３５０によって決定される期間、１．２３５Ｖよりも降下した場合もまた、端子ＲＥＳ＼は、ローになり、ロー状態のままとなる。
【００２９】
端子ＷＰには、「ウォッチドッグ」期間Ｔｗｐを規定するためにコンデンサＣｗｐが設けられる。一実施形態では、ウォッチドッグ期間は、Ｔｗｐ＝２５＊Ｃｗｐである。ここで、Ｔｗｐの単位はミリ秒であり、コンデンサＣｗｐの単位はナノファラッドである。値２５は、デバイス３５０の仕様に従って選択され、コンデンサＣｗｐの値は、所望のウォッチドッグ期間、例えば２ｍｓを達成するように選択される。すなわち、デバイス３５０が、所与の２ｍｓの時間窓内でＢＭＣ１１０からのハートビートを端子ＷＤＩにおいて受信しないと、デバイス３５０は、端子ＷＤＯ＼において適切な信号をアサートする。該適切な信号は、フリップフロップ３４０を制御し、したがって信号線１１２５の制御信号を制御する。
【００３０】
端子ＲＰには、出力端子ＲＥＳ＼のリセット期間Ｔｒｅｓを規定するためにコンデンサＣｒｐが設けられる。一実施形態では、リセット期間は、Ｔｒｅｓ＝３．１２５＊Ｃｒｐである。ここで、期間Ｔｒｅｓの単位はミリ秒であり、コンデンサＣｒｐの単位はナノファラッドである。値３．１２５は、デバイス３５０の仕様に従って選択される。
【００３１】
ＷＤＩ端子が、ウォッチドッグ期間Ｔｗｐ内において切り換えされず、又はストローブされない場合、端子ＷＤＯ＼は、論理的ローでアサートされる。一実施形態では、端子ＷＤＩは、ＢＭＣ１１０からハートビートを受信し、ウォッチドッグ期間Ｔｗｐは、２ｍｓに設定される。したがって、端子ＷＤＩが、２ｍｓの間にＢＭＣ１１０からハートビートを受信しないと、端子ＷＤＯ＼は、論理的ローを出力する。該ロー信号は、フリップフロップ３４０を制御し、したがって信号線１１２５の制御信号を制御する。
【００３２】
端子ＲＥＳ＼は、Ｄフリップフロップ３４０の「ＣＬＲ＼」端子に接続され、したがって、端子ＲＥＳ＼がローになると、フリップフロップ３４０の出力Ｑをクリアする、すなわち出力Ｑを論理的ローに引き下げる。上記に示したように、端子Ｒｔｈの電圧Ｖｔｈが１．２３５Ｖよりも大きくなると、端子ＲＥＳ＼は、論理的ローに引き下げられ、端子ＲＰで規定されるリセット期間Ｔｒｅｓの間、ロー状態のままとなる。端子ＲＥＳ＼の論理的ローにより、フリップフロップ３４０の出力Ｑは、デフォルトで論理的ローになることが確実になる。電圧Ｖｔｈが、デバイス３５０によって決定される期間、１．２３５Ｖより降下した場合もまた、端子ＲＥＳ＼は、ローになり、ロー状態のままとなる。端子Ｒｔｈは、スタンバイ電力Ｖｓｔｄｂｙに接続されているので、このスタンバイ電力が、１．２３５Ｖより降下した場合、それは電力障害を示すため、デバイス３５０によって決定されるリセット期間が終了すると、システム１３０はオフにされる可能性がある。
【００３３】
端子ＷＤＯ＼は、フリップフロップ３４０のクロック端子に接続されている。端子ＷＤＯ＼は、論理的ハイである間に論理的ローでアサートされると、フリップフロップ３４０をトリガし、それによって、Ｄ入力信号がＱ出力端子に渡される。したがって、システム１３０を制御するために、信号線１１２５の制御信号がアサートされる。
【００３４】
回路３００Ａを使用するシステム１００の動作を説明するタイミング図
【００３５】
図３Ｂは、一実施形態による、制御回路３００Ａを使用するシステム１００の動作を説明するタイミング図３００Ｂを示す。説明の目的として、時刻ｔ１において、ＢＭＣ１１０、制御回路３００Ａ、及びシステム１３０は、有効なＶｓｔｄｂｙを受け取る。リセット期間Ｔｒｅｓは、５００ｍｓに設定される。このリセット期間は、時刻ｔ１で開始し、時刻ｔ２で終了する。ウォッチドッグ期間Ｔｗｐは、２ｍｓに設定される。ＢＭＣ１１０は、時刻ｔ３でその初期化を完了する。時刻ｔ１と時刻ｔ２との間には、５００ｍｓという長い時間が経過するので、ＢＭＣ１１０は、時刻ｔ２までにハートビート信号を生成しているはずである。
【００３６】
時刻ｔ２において、ハートビート信号が生成されていない場合、例えばハートビート信号がパルス信号になっていない場合、デバイス３５０は、２ｍｓのウォッチドッグ期間Ｔｗｐがもう１回経過した後、すなわち時刻ｔ’２で、ＷＤＯ＼信号をアサートする。このＷＤＯ＼信号は、次に、信号線１１２５の制御信号をアサートして、システム１３０をオンにする。図３Ｂに示すように、時刻ｔ’２において、ＷＤＯ＼は、ローに切り替わり、信号線１１２５の制御信号をハイでアサートする。この例では、システム１３０は、ＴｒｅｓにＴｗｐを加えた所定の時間窓の後にオンにされる。
【００３７】
一方、時刻ｔ２において、ハートビート信号がパルス信号である場合、すなわち、ハートビート信号が既に生成されている場合、ＢＭＣ１１０は、その初期化作業を継続し、時刻ｔ３において、機能する準備ができて、及び／又は、その初期化を完了する。その時点で、ＢＭＣ１１０は、ハートビート信号をデアサートし、例えばハートビート信号をローレベルの定常状態とする。デバイス３５０の動作に従って、時刻ｔ３から２ｍｓのウォッチドッグ期間Ｔｗｐの後、すなわち時刻ｔ’３において、ＷＤＯ＼は、ローに切り替わり、信号線１１２５の制御信号をハイでアサートする。
【００３８】
リセット回路、及びＶｔｈ
【００３９】
図４は、一実施形態による、電圧Ｖｔｈを供給するために、且つ、回路１３０をリセットするために使用可能な回路４００を示す。この回路４００は、抵抗網４３０及びスイッチＳ１を含む。
【００４０】
抵抗器Ｒ１及びＲ２を備える抵抗網４３０は、電圧Ｖｓｔｄｂｙの関数として電圧Ｖｔｈを提供する。この関数は、Ｖｔｈ＝Ｖｓｔｄｂｙ（Ｒ２／（Ｒ１＋Ｒ２））である。一般に、スタンバイ電力Ｖｓｔｄｂｙがない場合、電圧Ｖｔｈは、論理的ローであり、電圧Ｖｓｔｄｂｙがアサートされると、電圧Ｖｔｈは、１．２３５Ｖの電圧Ｖｒｅｆよりも大きくなるまで上昇する。この電圧Ｖｒｅｆは、上記端子Ｒｔｈと協働して用いられる。
【００４１】
スイッチＳ１を閉じることで、電圧Ｖｔｈを論理的ローにさせ、その電圧はデバイス３５０のＶｒｅｆよりも小さくなる。したがって、端子ＲＥＳ＼をローにさせ、次に、Ｄフリップフロップの信号線１１２５の出力端子Ｑをローにさせ、上述したように、システム１３０に影響を与える。
【００４２】
図２の例及び図３の例では、まず最初にハートビート信号を供給して、後にハートビート信号を無効にすることによって、制御信号がアサートされる。しかしながら、本発明の実施形態は、ハートビート信号をアサートすることによって、制御信号をアサートする場合にも適用可能である。例えば、論理的ロー状態又はハイ状態のままのハートビート信号が、その後、ＢＭＣ１１０が立ち上がって実行中となった場合に、又は、所定の時間が終了した場合に、パルス信号になる。このような状況では、制御回路１２０は、そのようなロジックに適応するよう調整される。更に、様々な方法を、信号の論理状態を所望の論理状態に変換するために使用可能であるので、制御信号のアクティブレベルは、それぞれロー及びハイとして選択され、それによって、本発明の実施形態が、その論理レベル又は他の信号の論理レベルの、制限を受けずに適用可能であることが示される。例えば、図２の信号線１１２５の制御信号が、論理的ハイによってアサートされることが望ましい場合、抵抗器Ｒ２２０は、プルアップの代わりにプルダウンされる。あるいは、インバータを使用して、図２及び図３の信号線１１２５上の信号の論理状態を変換することもできる。更には、抵抗器Ｒ２２０及びスタンバイ電力の代わりに、他の機構を使用することもできる。例えば、図２の抵抗器Ｒ２２０の代わりに、図３のフリップフロップ３４０を使用することができる。この場合、信号線１１２５は、Ｄフリップフロップ３４０のクロック入力端子に提供され、信号線１１２５は適切なレベルに調整される。
【００４３】
同様に、例えばインバータを追加することにより、図３の信号線１１２５の論理レベルを所望どおりに選択することもでき、フリップフロップ３４０をスタンバイ電力に接続された抵抗器Ｒ２２０などといった他の回路に置き換えることもできる。
【００４４】
本発明の実施形態では、たとえＢＭＣ１１０が起動されない場合であっても、比較的迅速な所定の期間の後に、これまでどおり、システム１３０は起動されることが可能であるので、他の手法を上回る利点が得られ、したがって、単一障害点の問題が回避される。ＢＭＣ１１０が無い状態でオンになったシステム１３０は、ＢＭＣ１００によって提供されるユーティリティを除いて、これまでどおり正常に機能することができる。一方、ＢＭＣ１１０がオンになり、準備が完了すれば、ＢＭＣ１１０はまた、システム１３０もオンにする。システム１３０は、ＢＭＣ１１０内のファームウェアによる影響を直接受けることなく、ＢＭＣ１１０のハートビートの状態に基づいてオンにされることが可能なので、このファームウェアの変更は、システム１３０を制御するために回路１２０を使用することに対して透過（トランスペアレント）である。
【００４５】
本明細書において、本発明の特定の実施形態を参照して本発明を説明してきた。しかしながら、本発明のより広い思想及び範囲から逸脱することなく、様々な修正及び変更を本発明に対して成し得ることは明らかである。したがって、本明細書及び図面は、限定としてではなく、例示としてみなされるべきである。
【図面の簡単な説明】
【００４６】
【図１】本発明の実施形態を実施することが可能な回路を示す図である。
【図２Ａ】図１の制御回路の第１の実施形態を示す図である。
【図２Ｂ】図２Ａの制御回路の動作を説明するタイミング図である。
【図３Ａ】図１の制御回路の第２の実施形態を示す図である。
【図３Ｂ】図３Ａの制御回路の動作を説明するタイミング図である。
【図４】図３Ａの制御回路のための、入力電圧を提供し、及びリセット機構を提供するために使用可能な回路を示す図である。
【符号の説明】
【００４７】
１１０  第２の回路
１２０  制御回路
１３０  第１の回路
３５０  ウォッチドッグタイマデバイス
１１０５  ハートビート信号
１１２５  制御信号
Ｒ２２０  抵抗器
【図１】
2004320780.tif 000003
【図２Ａ】
2004320780.tif 000004
【図２Ｂ】
2004320780.tif 000005
【図３Ａ】
2004320780.tif 000006
【図３Ｂ】
2004320780.tif 000007
【図４】
2004320780.tif 000008