JP6151362B2 - 自動化された選択的パワーサイクリングを介した計算サブシステムハードウェアリカバリ - Google Patents

自動化された選択的パワーサイクリングを介した計算サブシステムハードウェアリカバリ Download PDF

Info

Publication number
JP6151362B2
JP6151362B2 JP2015534457A JP2015534457A JP6151362B2 JP 6151362 B2 JP6151362 B2 JP 6151362B2 JP 2015534457 A JP2015534457 A JP 2015534457A JP 2015534457 A JP2015534457 A JP 2015534457A JP 6151362 B2 JP6151362 B2 JP 6151362B2
Authority
JP
Japan
Prior art keywords
component
power
processor circuit
controller
inoperable
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.)
Active
Application number
JP2015534457A
Other languages
English (en)
Other versions
JP2016500166A (ja
Inventor
ピー. テーヴァル,バラケサン
ピー. テーヴァル,バラケサン
エス. パンガム,アーシシュ
エス. パンガム,アーシシュ
Original Assignee
インテル コーポレイション
インテル コーポレイション
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 インテル コーポレイション, インテル コーポレイション filed Critical インテル コーポレイション
Publication of JP2016500166A publication Critical patent/JP2016500166A/ja
Application granted granted Critical
Publication of JP6151362B2 publication Critical patent/JP6151362B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/28Supervision thereof, e.g. detecting power-supply failure by out of limits supervision
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/24Resetting means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/266Arrangements to supply power to external peripherals either directly from the computer or under computer control, e.g. supply of power through the communication port, computer controlled power-strips
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Power Sources (AREA)
  • Debugging And Monitoring (AREA)

Description

大部分の計算装置は、それぞれが複雑なサポートソフトウェアと連係する複雑なデジタルロジックを搭載した各種ハードウェアベースサブシステムから構成される。計算装置の能力の範囲が増大し続けてきたため、これらのサブシステムの多くのデジタルロジックの複雑さもまた増大してきた。独立した命令シーケンスを実行する状態マシーン及び/又は処理コンポーネントをこれらのサブシステムの多くに搭載することが一般的になり、これらのサブシステムが自らの機能を実行し続けることを不可にする動作不能状態に入るインスタンスを増大させている。
予期しない、不整合な及び/又はタイミングの悪い入力がこのような複雑なデジタルロジックに提供された場合、このような動作不能状態が生じる可能性がある。未定義状態に入る可能性があり、デジタルロジック自体又はそれが実行する何れの命令シーケンスもそこからリターンすることができない。このような状況はしばしば、“ロックアップ(lock up)”又は“ハング(hang)”と呼ばれる。このような状態では、このようなデジタルロジックは、デジタルロジックをその後に通常の機能にリターンさせる既知の初期状態に当該デジタルロジックの“リセット”させることを意図した新たな入力に応答しなくなるかもしれない。
それのサブシステム(グラフィカルディスプレイ、オーディオ出力、ネットワーク通信、データストレージ、ユーザ入力などのためのサブシステムなど)の1つに関してこのようなイベントが発生する計算装置のユーザについて、当該イベントと、これに伴って通常の機能を取り戻すために当該部分のみに対して動作するソフトウェア又は他の機構を利用することができなくなることとは(何が起こったかユーザが認識できる場合でさえ)、フラストレーションのあるユーザ体感を提供することになる。このような場合、ユーザはしばしば、サブシステムの通常の機能を利用することなく計算装置を更に利用しようとするか、又は計算装置全体をリセットするよう行動するかの厳しい選択に直面し、後者の選択はしばしば時間のかかるものであると判明し、及び/又はデータの消失を伴う。
図1は、計算装置をブートする第1実施例を示す。 図2は、可能性のある各種実現形態の詳細を示す図1の実施例の一部を示す。 図3は、可能性のある各種実現形態の詳細を示す図1の実施例の一部を示す。 図4は、可能性のある各種実現形態の詳細を示す図1の実施例の一部を示す。 図5は、第1ロジックフローの実施例を示す。 図6は、第2ロジックフローの実施例を示す。 図7は、第3ロジックフローの実施例を示す。 図8は、第4ロジックフローの実施例を示す。 図9は、第5ロジックフローの実施例を示す。 図10は、処理アーキテクチャの実施例を示す。
各種実施例は、一般に計算装置のハードウェアベースサブシステムが動作不能になったことの検出に応答して、計算装置の他のコンポーネントをパワーサイクリングせず、動作不能なハードウェアベースサブシステムの自動化された選択的パワーサイクリングに関する。より詳細には、計算装置のコントローラは、計算装置のサブシステムが動作不能状態に入ったことを検出し、当該動作不能状態の検出に応答して、当該サブシステムに電力を供給する1以上のパワーコンダクタへの電力を選択的に除去及び再印加する。
コントローラは、計算装置のプロセッサ回路からの各種の可能な独立性の程度によって当該検出及び/又は当該パワーサイクルを実行してもよい。コントローラは、サブシステムに関連し、当該動作不能状態を検出し、及び/又はサブシステムを既知の初期状態に置くためのパワーサイクルの後に通常の機能に戻すためプロセッサ回路によって実行されるデバイスドライバと各種方法により連係してもよい。
このような連係は、サブシステムに関連するデバイスドライバを実行するプロセッサ回路及びコントローラの一方又は双方にアクセス可能なサブシステムの1以上のレジスタを介し実現されてもよい。あるいは又はさらに、このような連係は、コントローラに関連し、またプロセッサ回路によって実行されるデバイスドライバと当該サブシステムに関連するデバイスドライバとの間の通信を介して実現されてもよい。
サブシステムのパワーサイクリングの後、コントローラは更に、サブシステムを既知の初期状態に置くためのパワーサイクリング後にサブシステムを通常の機能にリターンさせるため、プロセッサ回路により実行されるオペレーティングシステムを通知するために、サブシステムに関連するデバイスドライバと連係してもよい。
一実施例では、例えば、コントローラプロセッサ回路を有する装置、デジタルロジックを有し、コントローラプロセッサ回路により制御される電力が提供される第1コンポーネント、デジタルロジックを有し、コントローラプロセッサ回路により制御される電力が提供される第2コンポーネント、及びコントローラプロセッサ回路に通信接続され、命令を格納するよう構成されるコントローラストレージなどである。当該命令は、第1コンポーネントが動作不能であることを示す信号を受信し、当該信号に基づき第2コンポーネントに電力を提供し続けながら、第1コンポーネントへの電力をサイクルするようにコントローラプロセッサ回路上で実行される。
ここで用いられる記号及び用語を全体的に参照して、以下の詳細な説明の各部分はコンピュータ又はコンピュータのネットワーク上で実行されるプログラム手順に関して提供されてもよい。これらの手順の説明及び表現は、当業者が自らの研究の本質を最も効果的に他の当業者に伝えるのに用いられる。手順はここでは一般に、所望の結果を導く自己完結した処理シーケンスであると想定される。これらの処理は、物理量の物理的な操作を求めるものである。通常、必ずしも必要ではないが、これらの量は格納、転送、合成、比較及び操作可能な電気、磁気又は光信号の形態をとる。主として通常の利用のため、これらの信号をビット、値、要素、シンボル、文字、項、数などと参照することがときに便利であると分かる。しかしながら、上記及び同様の用語の全てが適切な物理量に関連付けされ、当該量に付与された単なる便宜上のラベルであることに留意すべきである。
さらに、これらの操作はしばしば、人であるオペレータによって実行される精神的処理に通常関連する加算又は比較などの用語により参照される。しかしながら、人であるオペレータのこのような能力は、1以上の実施例の一部を構成するここに説明される処理の何れかにおいて大部分の場合に必ずしも必要でないか、又は所望されない。むしろ、これらの処理はマシーンの処理である。各種実施例の処理を実行するのに有用なマシーンは、ここでの教示に従って記述された内部に格納されるコンピュータプログラムによって選択的に起動又は設定されるような汎用デジタルコンピュータを含み、及び/又は要求される目的のために特別に構成された装置を含む。各種実施例はまた、これらの処理を実行するための装置又はシステムに関する。これらの装置は、要求された目的のために特別に構成されるか、又は汎用コンピュータから構成されてもよい。これらの各種マシーンのために求められる構成は、与えられた説明から明らかになるであろう。
ここで、同様の参照番号が全体を通じて同様の要素を参照するのに用いられる図面が参照される。以下の記載では、説明のため、多数の具体的な詳細がそれの完全な理解を提供するために与えられる。しかしながら、これらの具体的な詳細なしに新規な実施例が実施可能であることが明らかになるかもしれない。他の具体例では、周知の構成及び装置は、それの説明を容易にするためにブロック図の形式により示される。その意図は、請求項の範囲内の全ての改良、等価及び代替をカバーすることである。
図1は、サーバ400と任意的に接続される計算装置1000のブロック図を示す。各計算装置400,1000は、限定することなく、デスクトップコンピュータシステム、データ入力端末、ラップトップコンピュータ、ネットブックコンピュータ、ウルトラブックコンピュータ、タブレットコンピュータ、携帯PDA(Personal Data Assistant)、スマートフォン、衣服に搭載された装着型計算装置、車両(自動車、自転車、車いすなど)に一体化された計算装置、サーバ、サーバのクラスタ、サーバファームなどを含む各種計算装置の何れかであってもよい。図示されるように、計算装置400,1000は、各種データの何れかを伝送する信号を交換する。各種実施例では、ネットワーク999は、単一の建物又は他のやや限定されたエリア内の拡張におそらく限定される単一のネットワーク、かなりの距離におそらく拡張された接続されたネットワークの組み合わせ及び/又はインターネットであってもよい。従って、ネットワーク999は、限定することなく、電気的及び/又は光学的な導通するケーブルを利用した有線技術及び赤外線、ラジオ周波数又は他の形態の無線送信を利用した無線技術を含む、信号を交換可能にする各種(又は組み合わせの)通信技術の何れかであってよい。
各種実施例では、計算装置1000は、プロセッサ回路150(計算装置1000のメインプロセッサ回路の役割における)、制御ルーチン140を格納するストレージ160、電源110、ストレージコントローラ165c、ディスプレイインタフェース185及びインタフェースコントローラ195a〜bの1以上を有する。図示されるように、ストレージコントローラ165c、ディスプレイインタフェース185及びインタフェースコントローラ195aは、記憶媒体169、ディスプレイ180及びコントロール120のコンテンツへのアクセスを提供する記憶装置163にそれぞれ接続されるように示される。計算装置1000は更に、記憶装置163、ディスプレイ180及びコントロール120の1以上を有してもよい。インタフェースコントローラ195bは、計算装置1000をネットワーク999に接続し、これを介しサーバ400などの他の計算装置に接続する。
図示されるように、計算装置1000はまたコントローラ200を有してもよい。コントローラ200は、プロセッサ回路250(コントローラプロセッサ回路の役割における)及び制御ルーチン240を格納するストレージ260の1以上を有する。コントローラ200は、プロセッサ回路250が少なくとも制御ルーチン240を実行することによって計算装置1000の残りの多くの内部で定義されるメインオペレーティング環境から意図的に隔離されたコントローラ200のオペレーティング環境を定義する。より詳細には、プロセッサ回路150には、ストレージ260及び/又はコントローラ200の他のコンポーネントへの限定的なアクセス又は非アクセスが与えられ、これにより、プロセッサ150による少なくとも制御ルーチン(ストレージ260に格納されるか、又はプロセッサ回路によって実行される)への未許可のアクセスを防ぐ。他方、プロセッサ回路250は、コントローラ200を超える計算装置1000の残りのハードウェア及び/又はソフトウェアコンポーネントへの更により大きなアクセスを有してもよい。より詳細に説明されるように、これは、動作不能状態にあるコンポーネントを検出するため、計算装置1000の他の各種コンポーネントの状態を繰り返しチェックするのにコントローラ200の動作環境が利用されることを可能にする。
コントローラ200はここでは、コントローラ200にここに開示される各種機能を実行させるための制御ルーチンを実行するプロセッサ回路を搭載するものとして図示及び説明されるが、これは、コントローラ200が実現されうる方法の単なる一例にすぎないことに留意すべきである。何れの形態のルーチンの命令も実行されないハードウェアベースデジタルロジックによりコントローラ200が実質的に又は完全に実現される他の実施例もまた可能である。このような実現形態では、1以上の離散的ロジックコンポーネント及び/又はプログラマブルロジックデバイスが利用されてもよい。換言すると、コントローラ200は、ここに説明される各種機能をコントローラに実行させる各種方法の何れかにより実現されるロジックを有する。
また図示されるように、計算装置1000は更に、プロセッサ回路150及びコントローラ200の一方又は双方をストレージ160、ストレージコントローラ165c、ディスプレイインタフェース185及びインタフェースコントローラ195a〜bの1以上に接続するカップリング155を有する。カップリング155は、1以上のバス、ポイント・ツー・ポイントインターコネクト、送受信機、バッファ、クロスポイントスイッチ及び/又は他の電気/光コンダクタ及び/又はロジックから構成される。プロセッサ回路150及びコントローラ200がカップリング155に接続されることによって、それぞれは詳細に説明されるタスクの様々なものを実行することが可能である。
さらに示されるように、電源110はコントローラ200に接続され、次に、コントローラ200は更にストレージコントローラ165c、ディスプレイインタフェース185、インタフェースコントローラ195a及びインタフェースコントローラ195の1以上に1以上のパワーコンダクタ116,117,118,119をそれぞれ介して接続される。パワーコンダクタ116〜119を介し、コントローラ200は、説明されるように、ストレージコントローラ165c、ディスプレイインタフェース185及びインタフェースコントローラ195a〜bのそれぞれに電力を選択的に供給するか、又は供給するのを止める。これを実行する際、コントローラ200は、各パワーコンダクタ116〜119に電力を選択的に供給するための各種タイプのパワートランジスタ又はシリコンスイッチの何れかを有してもよい(例えば、何れかの個数の複数のパワースイッチコンポーネント、具体的には、図1に示されるパワースイッチコンポーネント215a〜215xなど)。
いくつかの実施例では、計算装置1000は、プロセッサ150、ストレージ160、ストレージコントローラ165c、ディスプレイインタフェース185、インタフェースコントローラ195a〜b及びコントローラ200の少なくとも一部が単一のIC(Integrated Circuit)内で組み合わせ可能なSOC(System On−a−Chip)として少なくとも部分的に実現されてもよい。このような実施例では、パワーコンダクタ116〜199の1以上は、コンポーネント165c、185及び195a〜bの少なくとも一部が配置される単一のシリコンダイの各部分をトラバースする導電性トレースとして形成されてもよい。あるいは、これらのコンポーネントは、MCM(Multi−Chip Module)に搭載される複数のシリコンダイにわたって拡散されてもよく、この場合、パワーコンダクタ116〜119のサブセットは、少なくとも部分的にゴールド配線又は他の形態の電気/光コンダクタとしてMCMパッケージ内の別々のシリコンダイ間に拡張されてもよい。更なる他の代替として、別々のチップパッケージ内に配置された複数のシリコンダイにわたって拡散されてもよく(ピングリッドアレイ、ボールグリッドアレイ、ランドグリッドアレイ、デュアルインラインパッケージなど)、この場合、パワーコンダクタ116〜119のサブセットは、少なくとも部分的に各チップパッケージが配置される1以上の回路板上に形成されるトレースとしてダイ間に拡張されてもよい。
いくつかの実施例では、パワーコンダクタ116〜119の1以上は複数のコンダクタを有してもよく、各コンダクタは、コンポーネント165c,185,195a〜bの1つの異なる部分に電力を伝える。例えば、図1に示されるように、ディスプレイインタフェース185には、単一のコンダクタ118でなく複数のコンダクタ118a,118b,118cを介し電力が供給されてもよい。当業者に精通されているように、単一のIC内のデジタル回路の異なる部分は、異なる電圧で提供される電力を必要とするものであってもよい。例えば、ICの入出力ドライバは、当該ICのコアにおける処理回路より高い電圧の電力を要求する可能性がある。例えば、単一のICは2つの異なるバスに接続されてもよく、各バスは大きく異なる電圧レベルで動作する。更なる具体例として、ICのデジタルロジックの一部は、データを保持するため処理機能において利用されるデジタルロジックに搭載されるラッチと異なる電圧を要求するDRAMセルを有してもよい。このようなICに対する不具合及び/又は損傷を防ぐため、電力のサイクル処理が、単一のICに電力を伝える複数のコンダクタのそれぞれにおける電力の提供が特定の順序で切断され、その後に特定の順序で再開されるように実行されることが求められてもよい。例えば、ICの入出力ドライバへの電力の供給は、当該ICのコアデジタルロジックへの電力の供給が切断される前に切断される必要があり、その後に、電力の再開は入出力ドライバに供給可能になる前にコアデジタルロジックに電力を供給することによって開始される必要があるかもしれない。コントローラ200がパワースイッチデバイス215a〜xを搭載する場合、これらパワースイッチデバイス215a〜xのそれぞれは、コンダクタ118a〜cの対応するものを介した電力の供給を制御してもよい。
少なくとも制御ルーチン140を実行する際、プロセッサ回路150は、計算装置1000を用いて各種の可能な機能の何れかを実行する計算装置1000のユーザから受信した入力によって指示されるような各種機能を実行するため、ストレージコントローラ165c、ディスプレイインタフェース185及びインタフェースコントローラ195a〜bの1以上にアクセス及び実行させる。しかしながら、これらのコンポーネント165c、185又は195a〜bの1以上は、競合する入力の受信、予期しない論理的な行き詰まりの発生などのために、それの機能をもはや実行できないような動作不能になることがときどきありうる、
少なくとも制御ルーチン240を実行する際、プロセッサ回路250は、動作不能になったコンポーネントのインスタンスを検出するため、ストレージコントローラ165c、ディスプレイインタフェース185及びインタフェースコントローラ195a〜bのそれぞれを繰り返しモニタさせる。対応して、プロセッサ回路250は、パワーコンダクタ116〜119の関連するものにおけるコントローラ200によって電源110からこれらのコンポーネントに1つに供給される電力を、これらのコンポーネントのその他への電力の供給を維持しながらサイクル処理させる(例えば、電力の供給を一時的に止め、その後に電力の供給を再開するなど)。各コンポーネント165c,185,195a〜bは、“オン”又は“電源オン”されると(例えば、電力が供給されるなど)、自らを既知の初期状態に初期化するロジックを搭載する。従って、パワーコンダクタ116〜119の関連するものにおける電力の供給のサイクル処理は、動作不能状態になったとして検出されるコンポーネントの1つを既知の初期状態に配置させる。その後、これらのコンポーネントの1つに関連するデバイスドライバは、計算装置1000のユーザにより指示された機能を実行する際に利用するコンポーネントの1つをプロセッサ回路150に完全にリターンさせるため通知される。
いくつかの実施例では、電源110は、計算装置1000がある形態のポータブル計算装置である実施例と同様に、バッテリ、燃料電池、スーパーキャパシタなどの限定量の電力を格納するタイプのものであってもよい。このような実施例では、コントローラ200は、電力がパワーコンダクタ116〜119の1以上を介しコンポーネント165c,185,195a〜bに供給されることを止める1以上のパワーセービングモードに計算装置1000を選択的に配置するパワーコントローラとして機能してもよい。このようなパワーセービング技術の分野の当業者に精通されるように、プロセッサ回路250は、計算装置1000の機能が何れか所与の時点でそれのユーザにより利用されている(おそらくプロセッサ回路150によってコントローラ200に通知されるような)ことを考慮してもよい各種アルゴリズムの何れかに基づき電力が供給される又は供給されないコンポーネントを制御ルーチン140によって選択させてもよい。従って、コントローラ200は、動作不能になったハードウェアコンポーネントのパワーセービングとリカバリとの双方の二重の役割を実行してもよい。
各種実施例では、各プロセッサ回路150,250は、限定することなく、AMD(登録商標)、Athlon(登録商標)、Duron(登録商標)若しくはOpteron(登録商標)プロセッサ、ARM(登録商標)アプリケーション、埋め込み若しくはセキュアプロセッサ、IBM(登録商標)及び/若しくはMotorola(登録商標)のDragonBall(登録商標)若しくはPowerPC(登録商標)プロセッサ、IBM及び/若しくはSony(登録商標)Cellプロセッサ、又はIntel(登録商標)Celeron(登録商標)、Core(2)Duo(登録商標)、Core(2)Quad(登録商標)、Core i3(登録商標)、Core i5(登録商標)、Core i7(登録商標)、Atom(登録商標)、Itanium(登録商標)、Pentium(登録商標)、Xeon(登録商標)若しくはXScale(登録商標)プロセッサを含む、広範な商用プロセッサの何れかを有してもよい。さらに、これらのプロセッサ回路の1以上は、マルチコアプロセッサ(複数のコアが同一の又は別々のダイ上に共置されるかに関わらず)及び/又は複数の物理的に別々のプロセッサがある方法によりリンクされる他の各種マルチプロセッサアーキテクチャを有してもよい。
各種実施例では、各ストレージ160,260は、記憶装置163及び記憶媒体169の組み合わせと共に、おそらく電力の中断のない供給を求める揮発性技術と、着脱可能又は不可なマシーン可読記憶媒体の利用を伴う技術とを含む広範な情報ストレージ技術の何れかに基づくものであってもよい。従って、各ストレージは、限定することなく、ROM(Read−Only Memory)、RAM(Random−Access Memory)、ダイナミックRAM(DRAM)、DDR(Double−Data−Rate)−DRAM、シンクロナスDRAM(SDRAM)、スタティックRAM(SRAM)、プログラマブルROM(PROM)、消去可能プログラマブルROM(EPROM)、電子的消去可能プログラマブルROM(EEPROM)、フラッシュメモリ、ポリマメモリ(強誘電ポリマメモリ)、オボニックメモリ、相変化若しくは強誘電メモリ、SONOS(Silicon−Oxide−Nitride−Oxide−Silicon)メモリ、磁気若しくは光カード、1以上の個別の強誘電ディスクドライブ、又は1以上のアレイに構成される複数の記憶装置(例えば、RAID(Redundant Array of Independent Disk)アレイに構成される複数の強誘電ディスクドライブなど)を含む広範なタイプ(又はタイプの組み合わせ)の記憶装置の何れかを有してもよい。これらのストレージのそれぞれは単一のブロックとして示されているが、これらの1以上は異なるストレージ技術に基づくものであってもよい複数の記憶装置を有してもよいことに留意すべきである。従って、例えば、図示された各ストレージの1以上は、プログラム及び/又はデータがある形態のマシーン可読記憶媒体に格納及び運搬される光ドライブ又はフラッシュメモリカードリーダ、相対的に長時間ローカルにプログラム及び/又はデータを格納するための強誘電ディスクドライブ、並びにプログラム及び/又はデータへの相対的に迅速なアクセスを可能にする1以上の揮発性ソリッドステートメモリデバイス(SRAM又はDRAMなど)の組み合わせを表すものであってもよい。また、各ストレージは同一のストレージ技術に基づくが、使用中の特化の結果として別々に維持されうる複数のストレージコンポーネントから構成されてもよいことに留意すべきである(例えば、あるDRAMデバイスはメインのストレージとして利用され、他のDRAMデバイスはグラフィックスコントローラの別のフレームバッファとして利用される)。
各種実施例では、インタフェースコントローラ195a〜bは、ストレージコントローラ165cと共に、計算装置1000がネットワーク999及び/又は説明されたような各種ハードウェアデバイスを介し接続されることを可能にする広範なシグナリング技術の何れかを利用してもよい。各インタフェースは、このような接続を可能にするための必須の機能の少なくとも一部を提供する回路を有する。しかしながら、これらのインタフェースはまた、プロセッサ回路150及び/又は250により実行される命令シーケンスにより少なくとも部分的に実現されてもよい(例えば、プロトコルスタック又は他の機能を実現するためなど)。電子的及び/又は光学的に電導性のケーブルが利用される場合、これらのインタフェースは、限定することなく、RS−232C、RS−422、USB、イーサネット(登録商標)(IEEE−802.3)若しくはIEEE−1394を含む各種工業規格の何れかに準拠するシグナリング及び/又はプロトコルを利用してもよい。無線信号送信の利用を伴う場合、これらのインタフェースは、限定することなく、IEEE802.11a、802.11b、802.16、802.20(“モバイルブロードバンド無線アクセス”と通常呼ばれる)、ブルートゥース(登録商標)、ZigBee、又はGSM/GPRS(GSM with General Packet Radio Service)、CDMA/1xRTT、EDGE(Enhanced Data Rates for Global Evolution)、EV−DO(Evolution Data Only/Optimized)、EV−DV(Evolution For Data and Voice)、HSDPA(High Speed Downlink Packet Access)、HSUPA(High Speed Uplink Packet Access)、4G LTEなどのセルラ無線通信サービスを含む各種工業規格の何れかに準拠するシグナリング及び/又はプロトコルを利用してもよい。
各種実施例では、コントロール120(インタフェースコントローラ195aを介しアクセス可能な)は、限定することなく、レバー、ロッカ、プッシュボタン若しくは他のタイプのスイッチ、回転、スライド若しくは他のタイプの可変的コントロール、タッチセンサ、近傍センサ、熱センサ若しくは生体電気センサなどを含む各種タイプの手動による操作可能なコントロールの何れかを有してもよい。これらのコントロールは、計算装置1000のケーシングに配置された手動により操作可能なコントロールを有し、及び/又は計算装置1000の物理的に分離したコンポーネントの分離したケーシングに配置された手動により操作可能なコントロールを有してもよい(例えば、赤外線シグナリングを介し他のコンポーネントに接続されるリモコンなど)。あるいは、又はさらに、これらのコントロールは、限定することなく、音声が口頭による命令の認識を可能にするため検出するマイクロフォン、顔若しくは顔の表情が認識可能なカメラ、移動の方向、速度、勢い、加速度及び/又は他の特性がジェスチャなどの認識を可能にするため検出する加速度計などを含む各種非触覚ユーザ入力コンポーネントの何れかを有してもよい。
各種実施例では、ディスプレイ180(ディスプレイインタフェース185を介しアクセス可能な)は、限定することなく、タッチセンシティブなカラー薄膜トランジスタ(TFT)LCDを含む液晶ディスプレイ(LCD)、プラズマディスプレイ、発光ダイオード(LED)ディスプレイ、有機発光ダイオード(OLED)ディスプレイ、CRT(Cathode Ray Tube)ディスプレイなどを含む各種ディスプレイ技術の何れかに基づくものであってもよい。各ディスプレイは、計算装置1000の対応するものケーシングに配置されてもよいし、あるいは、計算装置1000の物理的に分離したコンポーネントの別のケーシングに配置されてもよい(例えば、ケーブリングを介し他のコンポーネントに接続されるフラットパネルモニタなど)。
図2〜4のそれぞれは、計算装置1000の同じ部分であるが、動作不能状態の検出とコントローラ200とコンポーネントに関連するデバイスドライバとの間の連係がやや異なって行われる実施例の異なる変形としてより詳細に説明する。説明の簡単化のため、電源110及びパワーコンダクタ116〜119の図示は、コントロール120、記憶装置163、記憶媒体169、ディスプレイ180及びサーバ400の図示と共に、図2〜5において省略された。
各種実施例では、制御ルーチン140は、オペレーティングシステム141、コントローラドライバ145、ストレージコントローラドライバ146、インタフェースコントローラドライバ147、ディスプレイインタフェースドライバ148及びインタフェースコントローラドライバ149の1以上を有する。オペレーティングシステム141は、限定することなく、Windows(登録商標)、OS XTM、Linux(登録商標)、iOS又はAndroid OSTMを含むプロセッサ回路150により実行するのに適した各種の利用可能なオペレーティングシステムの何れかであってもよい。
ストレージコントローラドライバ146、インタフェースコントローラドライバ147、ディスプレイインタフェースドライバ148及びインタフェースコントローラドライバ149はそれぞれ、ストレージコントローラ165c、インタフェースコントローラ195a、ディスプレイインタフェース185及びインタフェースコントローラ195bに関連付けされる。各デバイスドライバ146〜149は、プロセッサ回路150(オペレーティングシステム141を実行する際)がこれらのデバイスの関連するものの各種側面とやりとりし実行するためのサポートを提供する。
コントローラドライバ145(存在する場合)は、コントローラ200に関連付けされ、計算装置1000を1以上のパワーセービングモードの1つにするため、プロセッサ回路150(オペレーティングシステム141を実行する際)がコントローラ200とやりとりするためのサポートを提供してもよい。また、コントローラドライバ145が存在する場合、コントローラドライバ145は、より詳細に説明されるように、コントローラ200とデバイスドライバ146〜149の1以上との間の連係のためのサポートを提供してもよい。
各種実施例では、ストレージコントローラ165c、インタフェースコントローラ195a、ディスプレイインタフェース185及びインタフェースコントローラ195bのそれぞれは、レジスタ136〜139を有する。より詳細に説明されるように、各レジスタ136〜139は、搭載されたデバイスの関連するものが動作不能になった及び/又はコントローラ200によるパワーサイクリングの結果として既知の初期状態に戻ったか判断するために繰り返しアクセス可能な1以上のビットを有する。
動作不能状態を検出するためアクセスされることのサポートにおいて、1以上のレジスタ136〜139は、デバイス165c,195a,185又は195bの関連するものによって定期的に0と1との間で変更されるビットを有してもよい。従って、これらのデバイスの関連するものが正常に動作している間、当該ビットは定期的に予測可能な間隔により変更され、予想されるときに当該ビットが変更されないインスタンスは、これらのデバイスの関連するものが動作不能になったという通知であってもよい。あるいは、1以上のレジスタ136〜139は、リードまではこれらのデバイスの関連するものによって0又は1に初期的に設定されたビットを有し、リード時点でリードする処理はその設定を0又は1の他方に変更し、当該変更がリード前に当初の値に設定が戻されるまで続く。従って、これらのデバイスの関連するものが正常に動作する間、当該ビットは、リードされてから選択された期間内に当該初期値に戻されるべきである。さらなる他の代替では、1以上のレジスタ136〜139は、これらのデバイスの関連するものが動作可能である限り、定期的な間隔でこれらのデバイスの関連するものによってインクリメントされるカウンタ値を表す複数のビットを有してもよい。従って、動作不能状態は、予想されるものでないカウンタ値を明らかにする当該レジスタのリード処理によって検出可能であってもよい。
図2に戻って、いくつかの実施例では、プロセッサ回路150は、動作不能状態に入ったことを通知するためデバイス165c、185及び195a〜bの対応するものをモニタするため、デバイスドライバ146〜149のそれぞれを実行することによって、カップリング155を介し各レジスタ136〜139の対応するものを繰り返しリードさせる。これらのデバイスの対応するものが動作不能になったことをレジスタ136〜139の1つを介し検出すると、プロセッサ回路150はまず、おそらくリセットするため動作不能なデバイスのレジスタ又は他の部分にアクセスすることによって、動作不能状態を訂正することを試行させてもよい。あるいは又はさらに(おそらくリセット時の不成功な試行に応答して)、プロセッサ回路150は、動作不能デバイスに提供される電力をサイクル処理するようにコントローラドライバ145を介しコントローラ200に通知させてもよい(また、パワーサイクリングを受ける動作不能デバイスの識別情報をコントローラ200に通知しながら)。これに応答して、コントローラ200は、パワーコンダクタ上で電力を提供するのをまず止めて、その後にそれを提供することを再開することによって、パワーコンダクタ116〜119の対応するものを介し動作不能デバイスに提供する電力をサイクル処理する(図1に閲覧可能)。そうする間、コントローラ200は、中断することなくこれらのデバイスのその他への電力の提供を維持する。この電力のサイクル処理の後、コントローラ200は、デバイスドライバ146〜149の関連するものにコントローラドライバ145を介し当該デバイスの電力がサイクル処理されたことを通知してもよい。あるいは、当該パワーサイクリング後、プロセッサ回路150は、デバイスがもはや動作不能状態にない、及び/又は既知の初期状態に戻るようにそれの電力をサイクル処理されたことをレジスタ136〜139の対応するものの継続的な繰り返しのリード処理を介し検出させてもよい。これに応答して、プロセッサ回路150はさらに、当該デバイスを再び使用状態にすると設定させてもよい。
図2に続いて、あるいは、いくつかの実施例では、コントローラ200のプロセッサ回路250は、動作不能状態に入ったことを通知するため、デバイス165c、185及び195a〜bの対応するものをモニタするため、制御ルーチン240を実行することによって、カップリング155を介し各レジスタ136〜139を繰り返しリードさせる。これを実行する際、プロセッサ回路250は、カップリング155の少なくとも一部にバスマスタの役割を繰り返し想定させ、これにより、少なくとも当該部分におけるバスマスタとしてプロセッサ回路150を移す。これらのデバイスの対応するものが動作不能になったことをレジスタ136〜139の1つを介し検出すると、プロセッサ回路250は、おそらくプロセッサ回路150に動作不能デバイスのリセットを開始することに関連する動作不能デバイスの部分にアクセスさせることによって、デバイスドライバ146〜149の対応するものがプロセッサ回路150に動作不能状態を訂正することを試みさせることを可能にするため、デバイスドライバ146〜149の対応するものにまず通知させてもよい。あるいは又はさらに、プロセッサ回路250は、パワーコンダクタ116〜119の対応するものを介しコントローラ200によって当該デバイスに提供される電力をサイクル処理してもよい。当該パワーサイクル処理後、プロセッサ回路250は、当該デバイスの電力がサイクル処理されたことを通知するため、コントローラドライバ145を介しデバイスドライバ146〜149の対応するものに通知してもよい。あるいは、このパワーサイクリング後、プロセッサ回路250は単にプロセッサ回路150がデバイスがもはや動作不能状態にないことを検出させることを可能にしてもよい。これに応答して、電力の再開後に当該デバイスが現在既知の初期状態にあることによって、プロセッサ回路150は更に当該デバイスを再び使用状態に設定させる。
従って、図2を参照して図示及び説明されたように、可能な各種実施例では、プロセッサ回路150及び250のアクションはコントローラドライバ145(存在する場合)を介し調整されてもよく、プロセッサ回路150,250の一方又は双方は、これらのデバイスの対応するものの何れかの動作不能状態を検出するため、レジスタ136〜139を繰り返しリードさせてもよい。
図3は、図2に提示されるような計算装置1000の一変形のブロック図を示す。図3に示される当該変形は、多くの方法により図2に示されるものと類似し、従って、同様の参照番号は全体を通じて同様の要素を参照するのに用いられる。しかしながら、図2の計算装置1000の変形と異なって、図3の計算装置1000の変形では、コントローラ200は更に、信号コンダクタ236,237,238,239をそれぞれ介しデバイス165c,195a,185,195bに接続される。従って、コントローラ200は、カップリング155を利用を伴うことなく、これらのデバイスのそれぞれと信号を交換することができる。各コンダクタ236〜239は、各デバイスを動作状態に維持しながら、各デバイスによってコントローラ200に提供されるややシンプルな繰り返し信号(クロックパルスなど)を導通してもよい。従って、このような定期的な信号のデバイスの1つからの停止は、動作不能状態に入ったことを示すかもしれない。あるいは、コンダクタ236〜239は、例えば、これらのデバイスの全てに延長したコンダクタを有する単一の共通バス、又は図示されるようなこれらのデバイスのそれぞれにコントローラ200と分離して延長した1以上のコンダクタを有する分離したポイント・ツー・ポイントバスなどの1以上のバスを有してもよい。コンダクタ236〜239が1以上のバスを有する場合、コントローラは、動作不能状態に入ることについてこれらのデバイスをモニタするため、バス処理(レジスタ136〜139を繰り返しリード139のリード処理など)を実行してもよい。
従って、いくつかの実施例では、プロセッサ回路250は、動作不能状態に入ったことを通知するため、制御ルーチン240を実行することによって、デバイス165c、185及び195a〜bの対応するものをモニタするためコンダクタ236〜239を繰り返し利用させてもよい。再び、これは、プロセッサ回路250がこれらのデバイスの対応するものから期待される信号の有無のため各コンダクタ236〜239をモニタすることによって実行されてもよいし(おそらく、定期的な間隔によりクロックパルスなどの繰り返し信号)、あるいは、プロセッサ回路250が動作状態を継続することを示すように応答する毎に各デバイスに実行させるバス処理に従事するため繰り返し各コンダクタ236〜239を実行することによって実行されてもよい。デバイスの対応するものが動作不能状態になったことをコンダクタ236〜239の1つを介し検出すると、プロセッサ回路250はまず、おそらくプロセッサ回路150に動作不能デバイスのリセットを開始させることに関連する動作不能デバイスの部分にアクセスさせることによって、動作不能状態を訂正することを試みるようにデバイスドライバ146〜149の対応するものに通知させてもよい(コントローラドライバ145を介し)。あるいは又はさらに、プロセッサ回路250は、パワーコンダクタ116〜119の対応するものを介し当該デバイスにコントローラ200により提供される電力をサイクル処理させてもよい。プロセッサ回路250がこれを実行するとき、それは中断することなく他のコンダクタ116〜119を介し他のデバイス165c、185及び195a〜bへの電力の供給を維持する。このパワーサイクリング後、プロセッサ回路250は、当該デバイスの電力がサイクル処理されたことを通知するため、コントローラドライバ145を介しデバイスドライバ146〜149の対応するものに通知してもよい。あるいは、このパワーサイクリング後、プロセッサ回路250は、デバイスが動作不能状態にもはやないことをプロセッサ回路150が独立に検出することを単に可能にしてもよい。これに応答して、当該デバイスが電力の再開後に現在既知の初期状態にあることによって、対応するデバイスドライバの更なる実行は、プロセッサ回路150に当該デバイスを再び使用状態に設定させる。
上述されたように、コンポーネント165c、185及び195a〜bの1以上は、電力供給の停止及び/又は提供におけるステージ化された方法で実行される電力のサイクル処理がシーケンス化又はステージ化されて実行される必要があることを要求してもよい。当該説明は、コンポーネントの異なる部分への電力が特定の順序により削除及び/又は再開されることを可能にするため複数のパワーコンダクタ(具体的には、図1のディスプレイインタフェース185に電力を伝えるコンダクタ118a〜cの具体例)の利用に着目したが、あるいは又はさらに、このような電力の供給又は削除のステージ化は、少なくとも部分的に当該コンポーネント内の1以上のレジスタの利用により実行されてもよい。具体的には、例えば、図3は、電力の供給及び/又は削除のステージ化の少なくとも一部を制御するためアクセス可能な更なるレジスタ135を有するものとしてディスプレイインタフェース185を示す。より詳細には、計算装置1000がディスプレイ180に電力を供給するようディスプレイ180を搭載する場合、ディスプレイ180上のピクセルのバックライト及び/又はビジュアルプレゼンテーションのための電力はディスプレイインタフェース185を介し提供されてもよく、ディスプレイインタフェース185からの電力の削除はディスプレイ180への電力がまず削除されることを要求する。従って、本例では、コントローラ200がディスプレイインタフェース185に電力を提供することを停止するよう動作する場合、コントローラ200はまず、イメージのピクセルを視覚的に提供するため、ディスプレイ180内のバックライト及びロジックに電力を提供することをディスプレイインタフェース185に最初に停止させるため、レジスタ135にまずアクセスしてもよい(カップリング155を介し及び/又は信号コンダクタ238を介し)。その後、コントローラ200は、おそらくディスプレイインタフェース185内のコアデジタルロジックから電力を削除する前にディスプレイインタフェース185の入出力ドライバから電力を削除するため、おそらく複数のコンダクタ118a〜c(図1を参照)を介しディスプレイインタフェース185への電力供給を削除するよう動作する。コントローラ200はその後、電力供給を再開する際に当該ステージ化を反転してもよく、まずディスプレイインタフェース185のコア内のデジタルロジックに電力を供給し、その後に電力をディスプレイインタフェース185の入出力ドライバに提供し、その後にディスプレイインタフェース185を介しディスプレイ180に電力を提供するためレジスタ135にアクセスする。
図4は、図3に提供される計算装置1000の一変形のブロック図を示す。図4に示される当該変形は、多くの方法により図3に示されるものと類似し、同様の参照番号は全体を通じて同様の要素を参照するのに利用される。しかしながら、図3の計算装置1000の変形と異なって、図4の計算装置1000の変形では、レジスタ136〜139はデバイス165c、185及び195a〜bに存在しない。従って、動作不能状態の通知のためのモニタリングは、コントローラ200がコンダクタ236〜239を介し各デバイスと信号をやりとりすることによって実行される。
従って、いくつかの実施例では、プロセッサ回路250は、動作不能状態に入ったことを通知するため、制御ルーチン240の実行によって、コンダクタ236〜239を繰り返し利用してデバイス165c,185及び195a〜bの対応するものをモニタさせてもよい。デバイスの対応するものが動作不能状態になったことをコンダクタ236〜239の1つを介し検出すると、プロセッサ回路250は、おそらくプロセッサ回路150に動作不能デバイスのリセットの開始に関連する動作不能デバイスの部分にアクセスすることによって、動作不能状態を訂正することを試みるようデバイスドライバ146〜149の対応するもにまず通知させてもよい(コントローラドライバ145を介し)。あるいは又はさらに、プロセッサ回路250は、パワーコンダクタ116〜119の対応するものを介し当該デバイスにコントローラ200により提供される電力をサイクル処理させてもよい。当該パワーサイクリング後、プロセッサ回路250は、当該デバイスの電力がサイクル処理されたことを通知するため、コントローラドライバ145を介しデバイスドライバ146〜149の対応するものに通知してもよい。これに応答して、当該デバイスが電力の再開後に現在既知の初期状態にあることによって、当該対応するデバイスドライバの更なる実行は、プロセッサ回路150に当該デバイスを再び使用状態に設定させる。
図5は、ロジックフロー2100の実施例を示す。ロジックフロー2100は、ここで説明される1以上の実施例により実行される処理の一部又は全てを表すものであってもよい。より詳細には、ロジックフロー2100は、少なくともブートルーチン240を実行する際に計算装置1000の少なくともプロセッサ回路250によって実行される処理を示すものであってもよい。
2110において、計算装置のコントローラ(例えば、計算装置1000のコントローラ200など)は、コンポーネントが動作不能になったことを通知するためコンポーネントをモニタする。上述されるように、コントローラは、クロック信号、コンポーネントのレジスタからリードされる1以上のビットの値を伝える信号などの信号をコンポーネントから受信してもよい。
2120において、コントローラは、コンポーネントが動作不能状態になったことを検出する。上述されるように、コントローラは、予想される間隔による信号の受信を停止してもよいし、又はコントローラは、予想されたものでないビットの値を伝える信号を受信してもよい。
2130において、コントローラは、コンポーネントへの電力供給をサイクル処理する。上述されるように、それは、動作不能になったと検出されたコンポーネントへの電力供給がサイクル処理される一方、他のコンポーネントに供給される電力が中断なく継続されることが可能とされる。
2140において、コントローラは、計算装置のメインプロセッサ回路(計算装置1000のプロセッサ回路150など)にコンポーネントへの電力がサイクル処理されたことを通知し、これにより、メインプロセッサ回路がコンポーネントを使用のために設定することを可能にする。上述されたように、計算装置のプロセッサ回路は、コンポーネントに関連するデバイスドライバを実行してもよく、コンポーネントへの電力がサイクル処理された(従って、既知の初期状態に配置された)という通知を受信すると、プロセッサ回路は、コンポーネントを使用のため設定させてもよい。
図6は、ロジックフロー2200の実施例を示す。ロジックフロー2200は、ここで説明される1以上の実施例により実行される処理の一部又は全てを表すものであってもよい。より詳細には、ロジックフロー2200は、少なくともブートルーチン240を実行する際に計算装置1000の少なくともプロセッサ回路250により実行される処理を示すものであってもよい。
2210において、計算装置のコントローラ(例えば、計算装置1000のコントローラ200など)は、コンポーネントが動作不能になったことを通知するためコンポーネントから受信した信号をモニタする。
2220において、コントローラは、コンポーネントが動作不能状態に入ったことを検出する。再び、コンポーネントが動作不能になったという通知は、予想される信号の受信の欠如であってもよい。
2230において、コントローラは、計算装置のメインプロセッサ回路(例えば、計算装置1000のプロセッサ回路150など)にコンポーネントが動作不能であることを通知し、これにより、メインプロセッサ回路は(コンポーネントに関連するデバイスドライバを実行する際)がコンポーネントをリセットすることを試みることを可能にする。
2240において、コンポーネントのリセットの試みが成功しなかった場合、2242において、コントローラは、(中断することなく他のコンポーネントへの電力供給を維持しながら)コンポーネントに提供される電力をサイクル処理する。また、コントローラは、2244においてメインプロセッサ回路(コンポーネントに関連するデバイスドライバを実行する際)がコンポーネントを使用のため設定することを可能にするため、コンポーネントの電力がサイクル処理されたことをメインプロセッサ回路に通知する。
図7は、ロジックフロー2300の実施例を示す。ロジックフロー2300は、ここで説明される1以上の実施例により実行される処理の一部又は全てを表すものであってもよい。より詳細には、ロジックフロー2300は、少なくともブートルーチン240を実行する際に計算装置1000の少なくともプロセッサ回路250によって実行される処理を示すものであってもよい。
2310において、計算装置のコントローラ(例えば、計算装置1000のコントローラ200など)は、バスマスタとして計算装置の他の形態のカップリング(カップリング155の一部など)のバス及び/又は一部にアクセスする。
2320において、コントローラは、コンポーネントのレジスタを読み出す。上述されたように、レジスタは、リード時及び/又はリード後の特定の期間内に特定のバイナリ値を有すると予想される1以上のビットを有する。
2330において、コントローラは、他の形態のカップリングの一部又は当該バスを放棄する。
2340において、コントローラがレジスタから読み出したものに基づきコンポーネントが動作不能になったことを検出した場合、コントローラは、2350において、コンポーネントへの電力供給をサイクル処理する。そうでない場合、コントローラは再び、2320においてレジスタをリード処理するための準備において、2310においてバス又は他の形態のカップリングにアクセスする。
図8は、ロジックフロー2400の実施例を示す。ロジックフロー2400は、ここに説明される1以上の実施例により実行される処理の一部又は全てを表すものであってもよい。より詳細には、ロジックフロー2400は、少なくともブートルーチン140を実行する際に計算装置1000の少なくともプロセッサ回路150により実行される処理を示すものであってもよい。
2410において、計算装置のメインプロセッサ回路(例えば、計算装置1000のプロセッサ回路150など)は、計算装置のコンポーネントが動作不能であるという信号を計算装置のコントローラから受信する。
2420において、メインプロセッサ回路は、コンポーネントをリセットすることを試みる。上述されたように、メインプロセッサ回路は、リセットを実行することに関連するコンポーネントのレジスタにアクセスすることを試みてもよい。
2430において、コンポーネントをリセットする試みが成功した場合、2432において、メインプロセッサ回路は、コントローラにリセットが成功したことを通知する。
そうでない場合、リセットの試みが成功しなかった場合、メインプロセッサ回路は、2440において、コンポーネントに提供される電力をサイクル処理するようコントローラに通知する。また、メインプロセッサ回路は、2450において、コンポーネントの電力がサイクル処理されたという信号をコントローラから受信し、2460において、コンポーネントを使用のため設定する。
図9は、ロジックフロー2500の実施例を示す。ロジックフロー2500は、ここに説明される1以上の実施例により実行される処理の一部又は全てを表すものであってもよい。より詳細には、ロジックフロー2500は、少なくともブートルーチン140を実行する際に計算装置1000の少なくともプロセッサ回路150により実行される処理を示すものであってもよい。
2510において、計算装置のメインプロセッサ回路(例えば、計算装置1000のプロセッサ回路150など)は、コンポーネントが動作不能状態に入ったという通知を待機するコンポーネントのレジスタを繰り返し読み出す。
2520において、メインプロセッサ回路は、コンポーネントがレジスタの読み出しの結果として動作不能であることを検出する。
2530において、メインプロセッサ回路は、コンポーネントをリセットすることを試みる。
2540において、コンポーネントをリセットする試みが成功した場合、2546において、メインプロセッサ回路は、コンポーネントを使用のため設定する。
そうでない場合、リセットの試みが成功しなかった場合、メインプロセッサ回路は、2542において、コンポーネントに提供される電力をサイクル処理するよう計算装置のコントローラ(例えば、計算装置1000のコントローラ200など)に通知する。また、メインプロセッサ回路は、2544において、コンポーネントの電力がサイクル処理されたという信号をコントローラから受信し、メインプロセッサ回路は、2546において、コンポーネントを使用のため設定する。
図10は、上述された各種実施例を実現するのに適した一例となる処理アーキテクチャ3100の実施例を示す。より詳細には、処理アーキテクチャ3100(又はその変形)は、計算装置1000及び400の1以上の一部として及び/又はコントローラ200内に実現されてもよい。処理アーキテクチャ3100のコンポーネントには参照番号が与えられ、ここで、最後の2桁が計算装置1000及びコントローラ200のそれぞれの一部として以前に図示及び説明されたコンポーネントの参照番号の最後の2桁に対応することに留意すべきである。これは、計算装置1000及びコントローラ200の何れもが各種実施例において一例となる処理アーキテクチャを利用可能なコンポーネントを相関させるための一助として実行される。
処理アーキテクチャ3100は、限定することなく、1以上のプロセッサ、マルチコアプロセッサ、コプロセッサ、メモリユニット、チップセット、コントローラ、周辺装置、インタフェース、オシレータ、タイミングデバイス、ビデオカード、オーディオカード、マルチメディア入出力(I/O)コンポーネント、電源などを含むデジタル処理に通常利用される各種要素を含む。本出願に用いられる“システム”及び“コンポーネント”という用語は、デジタル処理が実行される計算装置のエンティティを表すことを意図するものであり、当該エンティティはハードウェア、ハードウェアとソフトウェアとの組み合わせ、ソフトウェア又は実行におけるソフトウェアであり、その具体例は図示された当該処理アーキテクチャにより提供される。例えば、コンポーネントは、限定することなく、プロセッサ回路上で実行されるプロセス、プロセッサ回路自体、光及び/又は磁気記憶媒体を利用する記憶装置(例えば、ハードディスクドライブ、アレイにおける複数のストレージドライブなど)、ソフトウェアオブジェクト、実行可能な命令シーケンス、実行スレッド、プログラム及び/又は計算装置全体(コンピュータ全体など)とすることができる。例えば、サーバ上で実行されるアプリケーションとサーバとの双方がコンポーネントすることができる。1以上のコンポーネントは、プロセス及び/又は実行スレッド内にあってもよく、コンポーネントは2以上の計算装置の間に分散され、及び/又は1つの計算装置にローカライズすることが可能である。さらに、コンポーネントは、処理を調整するため各種通信媒体により互いに通信接続されてもよい。当該調整は、情報の一方向又は双方向の交換に関するものであってもよい。例えば、コンポーネントは、通信媒体を介し通信される信号の形態により情報を通信してもよい。当該情報は、1以上の信号ラインに割り当てられた信号として実現可能である。メッセージ(命令、状態、アドレス又はデータメッセージを含む)は、このような信号の1つであるか、又はこのような信号の複数であってもよく、各種接続及び/又はインタフェースの何れかを介し順次的又は実質的に並列的に送信されてもよい。
図示されるように、処理アーキテクチャ3100を実現する際、計算装置は、少なくともプロセッサ回路950、ストレージ960、コントローラ900、他のデバイスとのインタフェース990及びカップリング955を有する。説明されるように、意図された使用及び/又は使用状態を含む処理アーキテクチャ3100を実現する計算装置の各種態様に依存して、このような計算装置は更に、限定することなく、ディスプレイインタフェース985などの更なるコンポーネントを有してもよい。
コントローラ900はコントローラ200に対応する。上述されたように、コントローラ200は、処理アーキテクチャ3100を実現してもよい。従って、本質的には、コントローラ200は、計算装置1000内に埋め込まれた計算装置として少なくともある程度みなすことができる。また、コントローラ200は、各種機能を実行する計算装置1000のサポートにおいて、ここで詳細に説明したものを含む各種機能を実行してもよい。
カップリング955は、1以上のバス、ポイント・ツー・ポイントインターコネクト、送受信機、バッファ、クロスポイントスイッチ及び/又は少なくともプロセッサ回路950とストレージ960とを通信接続する他のコンダクタ及び/又はロジックから構成される。カップリング955は更に、プロセッサ回路950とインタフェース990及びディスプレイインタフェース985の1以上とを接続してもよい(上記及び/又は他のコンポーネントの何れがまた存在するかに依存して)。プロセッサ回路950がカップリング955に接続されることによって、プロセッサ回路950は、計算装置1000とコントローラ200との何れが処理アーキテクチャ3100を実現しても、上述されたタスクの各種タスクを実行可能である。カップリング955は、信号が光学的及び/又は電気的に伝搬される各種技術又は技術の組み合わせの何れかによって実現されてもよい。さらに、カップリング955の少なくとも一部は、限定することなく、AGP(Accelerated Graphics Port)、CardBus、Extended Industry Standard Architecture(E−ISA)、Micro Channel Architecture(MCA)、NuBus、Peripheral Component Interconnect(Extended)(PCI−X)、PCI Express(PCI−E)、Personal Computer Memory Card International Association(PCMCIA)バス、HyperTransportTM、QuickPathなどを含む広範な工業規格の何れかに準拠したタイミング及び/又はプロトコルを利用してもよい。
上述されたように、プロセッサ回路950(プロセッサ回路150,250の1以上に対応する)は、広範な市販のプロセッサの何れかを有してもよく、広範な技術の何れかを利用し、複数の方法の何れにより物理的に組み合わされた1以上のコアにより実現される。
上述されたように、ストレージ960(ストレージ160,260の1以上に対応する)は、広範な技術又は技術の組み合わせの何れかに基づき1以上の個別の記憶装置を有してもよい。より詳細には、図示されるように、ストレージ960は、揮発性ストレージ961(1以上の形態のRAM技術に基づきソリッドステートストレージなど)、不揮発性ストレージ962(コンテンツを保持するため電力のコンスタントな供給を必要としないソリッドステート、強誘電又は他のストレージなど)、及び着脱可能なメディアストレージ963(情報が計算装置間で伝搬される着脱可能なディスク又はソリッドステートメモリカードストレージなど)の1以上を有してもよい。おそらく複数のタイプのストレージを有するものとしてストレージ960を示すことは、1つのタイプが相対的に迅速なリード及びライト機能を提供し、プロセッサ回路950によりデータのより迅速な操作を可能にする(しかしながら、おそらく電力をコンスタントに必要とする“揮発性”技術を利用する)一方、他のタイプは相対的に高密度な不揮発性ストレージを提供する(しなしながら、相対的に低速なリード及びライト機能を提供する)計算装置における複数タイプの記憶装置の通常の利用の認識にある。
異なる技術を利用する異なる記憶装置のしばしば異なる特性が与えられると、このような異なる記憶装置が異なるインタフェースを介し異なる記憶装置に接続される異なるストレージコントローラを介し計算装置の他の部分に接続されることが一般的である。例えば、揮発性ストレージ961があって、RAM技術に基づく場合、揮発性ストレージ961は、ローカラムアドレッシングをおそらく利用する揮発性ストレージ961との適切なインタフェースを提供するストレージコントローラ965aを介しカップリング955に通信接続されてもよく、ストレージコントローラ965aは、揮発性ストレージ961内に格納される情報を保存するのに資するためローリフレッシング及び/又は他のメンテナンスタスクを実行してもよい。他の例として、不揮発性ストレージ962があって、1以上の強誘電及び/又はソリッドステートディスクドライブを有する場合、不揮発性ストレージ962は、情報ブロック及び/又はシリンダ及びセクタのアドレッシングをおそらく利用する不揮発性ストレージ962との適切なインタフェースを提供するストレージコントローラ965bを介しカップリング955に通信接続されてもよい。更なる他の例として、着脱可能なメディアストレージ963があって、マシーン可読記憶媒体969(おそらく記憶媒体169に対応する)の1以上の部分を利用する1以上の光及び/又はソリッドステートディスクドライブを有する場合、着脱可能なメディアストレージ963は、おそらく情報ブロックのアドレッシングを利用する着脱可能なメディアストレージ963との適切なインタフェースを提供するストレージコントローラ965cを介しカップリング955に通信接続されてもよく、ここで、ストレージコントローラ965cは、マシーン可読記憶媒体969のライフスパンの延長に固有の方法によりリード、イレース及びライト処理を調整してもよい。
揮発性ストレージ961又は不揮発性ストレージ962の一方又は他方は、各自が基礎とする技術に依存してプロセッサ回路950により実行可能な命令シーケンスを有するルーチンが格納可能なマシーン可読記憶媒体の形態による製造物を有してもよい。例えば、不揮発性ストレージ962が強誘電ベースのディスクドライブ(いわゆる、“ハードドライブ”など)を有する場合、このようなディスクドライブは、典型的には、磁気反応する粒子のコーティングが堆積し、フロッピー(登録商標)ディスクなどの記憶媒体に類似した方法により命令シーケンスなどの情報を格納するための各種パターンにより磁気的に向き付けされた1以上の回転プラッタを利用する。他の例として、不揮発性ストレージ962は、コンパクトフラッシュ(登録商標)カードに類似した方法により命令シーケンスなどの情報を格納するためのソリッドステートストレージデバイスのバンクを有してもよい。再び、計算装置において異なる時点に異なるタイプのストレージデバイスを利用して実行可能なルーチン及び/又はデータを格納することが一般的である。従って、プロセッサ回路950により実行される命令シーケンスを有するルーチンは、まずマシーン可読記憶媒体969に格納され、着脱可能なメディアストレージ963が、ルーチンが実行されるとき、プロセッサ回路950によるより迅速なアクセスを可能にするため、マシーン可読記憶媒体969及び/又は揮発性ストレージ961の継続的な存在を要求しない長期のストレージのための不揮発性ストレージ962に当該ルーチンをコピーするのに以降に利用されてもよい。
上述されたように、インタフェース990(おそらくインタフェース190に対応する)は、計算装置を1以上の他のデバイスに通信接続するのに利用可能な各種通信技術の何れかに対応する各種シグナリング技術の何れかを利用してもよい。再び、各種形態の有線又は無線シグナリングの一方又は双方が、プロセッサ回路950がおそらくネットワーク(ネットワーク999など)又は相互接続されたネットワーク群を介し入出力デバイス(例えば、図示された一例となるキーボード920又はプリンタ970など)及び/又は他の計算装置とやりとりすることを可能にするのに利用されてもよい。何れか1つの計算装置によってしばしばサポートされる必要がある複数タイプのシグナリング及び/又はプロトコルのしばしば大きく異なるキャラクタの認識の際、インタフェース990は、複数の異なるインタフェースコントローラ995a、995b及び995cを有するよう示される。インタフェースコントローラ995aは、各種タイプの有線デジタルシリアルインタフェース又はラジオ周波数無線インタフェースの何れかを利用して、図示されたキーボード920(おそらくコントロール120に対応する)などのユーザ入力デバイスから順次送信されたメッセージを受信してもよい。インタフェースコントローラ995bは、各種ケーブリングベース又は無線シグナリング、タイミング及び/又はプロトコルの何れかを利用して、図示されたネットワーク999(おそらく1以上のリンク、より小さなネットワーク又はインターネットからなるネットワーク)を介し他の計算装置にアクセスしてもよい。インタフェース995cは、シリアル又はパラレル信号送信の利用を可能にする各種電導性のケーブリングの何れかを利用して、図示されたプリンタ970にデータを伝送してもよい。インタフェース990の1以上のインタフェースコントローラを介し通信接続可能な他の例となるデバイスは、限定することなく、マイクロフォン、リモコン、スタイラスペン、カードリーダ、フィンガープリントリーダ、バーチャルリアリティインタラクショングローブ、グラフィカル入力タブレット、ジョイスティック、他のキーボード、瞳孔スキャナ、タッチ画面のタッチ入力コンポーネント、トラックボール、各種センサ、レーザプリンタ、インクジェットプリンタ、メカニカルロボット、ミリングマシーンなどを含む。
計算装置がディスプレイ(ディスプレイ180に対応する図示された一例となるディスプレイ980など)に通信接続される(又はおそらく実際に有する)場合、このような処理アーキテクチャ3100を実現する計算装置はまたディスプレイインタフェース985を有してもよい。より一般化されたタイプのインタフェースがディスプレイへの通信接続において利用されてもよいが、ディスプレイ上で各種形態のコンテンツを視覚的に表示するのにしばしば要求されるやや特殊な追加的な処理が、利用されるケーブリングベースインタフェースのやや特殊な性質と共に、しばしば個別のディスプレイインタフェースの用意を望ましいものにする。ディスプレイ980の通信接続においてディスプレイインタフェース985により利用可能な有線及び/又は無線シグナリング技術は、限定することなく、各種のアナログビデオインタフェース、DVI(Digital Video Interface)、DisplayPortなどの何れかを含む各種工業規格の何れかに準拠したシグナリング及び/又はプロトコルを利用してもよい。
より一般的には、計算装置1000の各種要素は、各種ハードウェア要素、ソフトウェア要素又は双方の組み合わせを有してもよい。ハードウェア要素の具体例は、デバイス、ロジックデバイス、コンポーネント、プロセッサ、マイクロプロセッサ、回路、プロセッサ回路、回路素子(トランジスタ、レジスタ、キャパシタ、インダクタなど)、集積回路、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)、DSP(Digital Signal Processor)、FPGA(Field Programmable Gate Array)、メモリユニット、ロジックゲート、レジスタ、半導体デバイス、チップ、マイクロチップ、チップセットなどを含むものであってもよい。ソフトウェア要素の具体例は、ソフトウェアコンポーネント、プログラム、アプリケーション、コンピュータプログラム、アプリケーションプログラム、システムプログラム、ソフトウェア開発プログラム、マシーンプログラム、オペレーティングシステムソフトウェア、ミドルウェア、ファームウェア、ソフトウェアモジュール、ルーチン、サブルーチン、ファンクション、メソッド、プロシージャ、ソフトウェアインタフェース、API(Application Program Interface)、命令セット、計算コード、コンピュータコード、コードセグメント、コンピュータコードセグメント、ワード、値、シンボル又はこれらの何れかの組み合わせを含むものであってもよい。しかしながら、ハードウェア要素及び/又はソフトウェア要素を用いて実施例が実現されるかの判断は、所与の実現形態について所望されるように、所望の計算レート、パワーレベル、熱耐性、処理サイクルバジェット、入力データレート、出力データレート、メモリリソース、データバススピード及び他の設計又はパフォーマンス制約などの任意数のファクタに従って変更されてもよい。
いくつかの実施例は、派生語と共に“一実施例”又は“実施例”という表現を用いて説明されてもよい。これらの用語は、実施例に関して説明される特定の特徴、構成又は特性が少なくとも1つの実施例に含まれることを意味する。明細書の各所における“一実施例では”というフレーズの出現は、必ずしも全てが同一の実施例を参照しているとは限らない。さらに、一部の実施例は、派生語と共に“カップリング”及び“接続”という表現を用いて説明されるかもしれない。これらの用語は、必ずしも互いに同義的であることを意図しているとは限らない。例えば、一部の実施例は、“接続”及び/又は“カップリング”という用語を用いて2以上の要素が互いの直接的で物理的な又は電気的な接触状態にあることを示すことによって説明されるかもしれない。しかしながら、“カップリング”という用語はまた、2以上の要素が互いに直接的に接触しないが、依然として互いに連係又はやりとりすることを意味するかもしれない。
開示の概要は読者が技術的開示の性質を迅速に確認することを可能にするために提供されていることが強調される。それが請求項の範囲又は意味を解釈又は限定するのに利用されるものでないという理解により提出されている。さらに、上記の詳細な説明では、開示を簡略化するため、各種特徴が単一の実施例に一緒にグループ化されていることが理解できる。この開示の方法は、請求される実施例が各請求項において明示的に記載される更なる特徴を要求する意図を反映するものとして解釈されるべきでない。むしろ、以下の請求項が反映するように、発明の主題は開示された単一の実施例の全ての特徴より少なくものある。従って、以下の請求項は詳細な説明に含まれ、各請求項はそれ自体別の実施例として成立する。添付した請求項では、“含む”及び“そこで”という用語はそれぞれ、“有する”及び“そこで”という各用語の平易な英語の等価として用いられる。さらに、“第1”、“第2”、“第3”などの用語は単なるラベルとして用いられ、対象に対して数値的な要求を課すことを意図するものでない。
上述したものは、開示されたアーキテクチャの具体例を含む。もちろん、全ての想定できるコンポーネント及び/又は方法の組み合わせを説明することは可能でないが、当業者は、多くの更なる組み合わせ及び並び替えが可能であることを認識してもよい。従って、新規なアーキテクチャは、添付した請求項の趣旨及び範囲内に属するこのような全ての変更、改良及び変形を含むことが意図さえる。詳細な開示は、ここでは更なる実施例に関する具体例を提供する。以下に与えられる具体例は、限定的であることを意図するものでない。
一例となる装置は、コントローラプロセッサ回路と、デジタルロジックを有し、前記コントローラプロセッサ回路により制御される電力が供給される第1コンポーネントと、デジタルロジックを有し、コントローラプロセッサ回路により制御される電力が供給される第2コンポーネントと、コントローラプロセッサ回路に通信接続され、命令を格納するよう構成されるコントローラストレージとを有する。当該命令は、第1コンポーネントが動作不能であることを示す信号を受信するステップと、信号に基づき第2コンポーネントに電力を供給することを継続しながら第1コンポーネントへの電力をサイクル処理するステップとコントローラプロセッサ回路が実行するためのものである。
上記の一例となる装置であって、コントローラプロセッサ回路は、第1コンポーネント及び第2コンポーネントに接続され、命令は、第1コンポーネント又は第2コンポーネントの何れかが動作不能であることを通知するため、第1及び第2コンポーネントから受信した信号を繰り返しモニタするステップを実行するためのものである。
上記の一例となる装置の何れかであって、第1コンポーネントが動作不能であることを示す信号は、第1コンポーネントから受信され、第1コンポーネントのレジスタのビットの値の通知を含む。
上記の一例となる装置の何れかであって、コントローラプロセッサ回路は、バスを介し第1コンポーネントに接続され、命令は、バス上のバスマスタの役割を想定するステップと、前記第1コンポーネントのレジスタを読み出すステップとをコントローラプロセッサ回路が実行するためのものであり、第1コンポーネントが動作不能であることを示す信号は、レジスタの読み出しを介し受信され、レジスタのビットの値の通知を含む。
上記の一例となる装置の何れかであって、当該装置は、メインプロセッサ回路を有し、命令は、第1コンポーネントが動作不能であることを示す信号を前記メインプロセッサ回路から受信するステップをコントローラプロセッサ回路が実行するためのものである。
上記の一例となる装置の何れかであって、当該装置は、第1コンポーネントに電力を供給する第1及び第2パワーコンダクタを有し、命令は、第1パワーコンダクタを介し第1コンポーネントへの電力の供給を停止するステップと、第1パワーコンダクタを介した電力の供給の停止後、第2パワーコンダクタを介し第1コンポーネントへの電力の供給を停止するステップと、第1パワーコンダクタと第2パワーコンダクタとの双方を介した電力の供給の停止後、第2パワーコンダクタを介した第1コンポーネントへの電力の供給を再開するステップと、第2パワーコンダクタを介した電力の供給の再開後、第1パワーコンダクタを介した第1コンポーネントへの電力の供給を再開するステップとをコントローラプロセッサ回路が実行するためのものである。
上記の一例となる装置の何れかであって、命令は、第1コンポーネントに供給される電力のサイクル処理前、第1コンポーネントに供給される電力をデバイスに供給することを第1コンポーネントに停止させるため、第1コンポーネントのレジスタにアクセスするステップと、第1コンポーネントに提供される電力のサイクル処理後、第1コンポーネントに供給される電力のデバイスへの供給を第1コンポーネントに再開させるため、第1コンポーネントのレジスタにアクセスするステップとをコントローラプロセッサ回路が実行するためのものである。
上記の一例となる装置の何れかであって、当該装置は、メインプロセッサ回路を有し、命令は、第1コンポーネントが動作不能であるという通知をメインプロセッサ回路に提供するステップと、第1コンポーネントをリセットするためのメインプロセッサ回路による試みが成功しなかったという通知をメインプロセッサ回路から受信するステップとをコントローラプロセッサ回路が実行するためのものである。
上記の一例となる装置の何れかであって、当該装置は、メインプロセッサ回路を有し、命令は、第1コンポーネントに供給される電力がサイクル処理されたという通知をメインプロセッサ回路に提供するステップをコントローラプロセッサ回路が実行するためのものである。
他の例となる装置は、メインプロセッサ回路と、コントローラと、デジタルロジックを有し、前記コントローラプロセッサ回路により制御される電力が供給される第1コンポーネントと、デジタルロジックを有し、コントローラプロセッサ回路により制御される電力が供給される第2コンポーネントと、メインプロセッサ回路に通信接続され、命令を格納するよう構成されるメインストレージとを有する。当該命令は、第1コンポーネントが動作不能であるという通知を受信するステップと、通知に基づき第2コンポーネントに電力を供給することを継続しながら、第1コンポーネントに供給される電力をサイクル処理するための信号をコントローラに送信するステップとをメインプロセッサ回路が実行するためのものである。
上記の他の例となる装置であって、メインプロセッサ回路は、第1コンポーネント及び第2コンポーネントに接続され、命令は、第1コンポーネント又は第2コンポーネントの何れかが動作不能であることを通知するため、第1及び第2コンポーネントから受信した信号を繰り返しモニタするステップをメインプロセッサ回路が実行するためのものである。
上記の他の例となる装置の何れかであって、第1コンポーネントが動作不能であるという通知は、第1コンポーネントのレジスタのビットの値の通知を有する。
上記の他の例となる装置の何れかであって、第1コンポーネントが動作不能であるという通知は、コントローラから受信される。
上記の他の例となる装置の何れかであって、命令は、第1コンポーネントのレジスタにアクセスすることによって、第1コンポーネントをリセットすることを試みるステップをメインプロセッサ回路が実行するためのものである。
上記の他の例となる装置の何れかであって、命令は、第1コンポーネントをリセットするための試みの失敗に応答して、第1コンポーネントに供給される電力をサイクル処理するための信号を送信するステップをメインプロセッサ回路が実行するためのものである。
上記の他の例となる装置の何れかであって、命令は、第1コンポーネントに供給される電力がサイクル処理されたという通知をコントローラから受信するステップと、第1コンポーネントに供給される電力がサイクル処理されたという通知の受信に応答して、第1コンポーネントを使用に設定するステップとをメインプロセッサ回路が実行するためのものである。
一例となるコンピュータにより実現される方法は、計算装置の第1コンポーネントが動作不能であることを示す信号を受信するステップと、計算装置の第2コンポーネントに電力を供給することを継続しながら、第1コンポーネントに供給される電力をサイクル処理するステップとを有する。
上記の一例となるコンピュータにより実現される方法であって、第1コンポーネント又は第2コンポーネントの何れかが動作不能であることを通知するため、第1及び第2コンポーネントから受信される信号を繰り返しモニタするステップを有する。
上記の一例となるコンピュータにより実現される方法の何れかであって、第1コンポーネントが動作不能であることを通知する信号は、第1コンポーネントから受信され、第1コンポーネントのレジスタのビットの値の通知を有する。
上記の一例となるコンピュータにより実現される方法の何れかであって、本方法は、第1コンポーネントが動作不能であることを通知する信号を計算装置のメインプロセッサ回路から受信するステップを有する。
上記の一例となるコンピュータにより実現される方法の何れかであって、本方法は、第1パワーコンダクタを介し第1コンポーネントへの電力の供給を停止し、第1パワーコンダクタを介した電力の供給の停止後、第2パワーコンダクタを介し第1コンポーネントへの電力の供給を停止し、第1パワーコンダクタと第2パワーコンダクタとの双方を介した電力の供給の停止後、第2パワーコンダクタを介した第1コンポーネントへの電力の供給を再開し、第2パワーコンダクタを介した電力の供給の再開後、第1パワーコンダクタを介した第1コンポーネントへの電力の供給を再開することによって、第1コンポーネントに供給される電力をサイクル処理するステップを有する。
上記の一例となるコンピュータにより実現される方法の何れかであって、本方法は、第1コンポーネントに供給される電力のサイクル処理前、第1コンポーネントに供給される電力をデバイスに供給することを第1コンポーネントに停止させるため、第1コンポーネントのレジスタにアクセスするステップと、第1コンポーネントに提供される電力のサイクル処理後、第1コンポーネントに供給される電力のデバイスへの供給を第1コンポーネントに再開させるため、第1コンポーネントのレジスタにアクセスするステップとを有する。
上記の一例となるコンピュータにより実現される方法の何れかであって、本方法は、第1コンポーネントが動作不能であるという通知を計算装置のメインプロセッサ回路に提供するステップと、第1コンポーネントをリセットするためのメインプロセッサ回路による試みが成功しなかったという通知をメインプロセッサ回路から受信するステップとを有する。
上記の一例となるコンピュータにより実現される方法の何れかであって、本方法は、第1コンポーネントに供給される電力がサイクル処理されたという通知を計算装置のメインプロセッサ回路に提供するステップを有する。
計算装置により実行されると、計算装置の第1コンポーネントが動作不能であることを示す信号を受信するステップと、計算装置の第2コンポーネントに電力を供給することを継続しながら、第1コンポーネントに供給される電力をサイクル処理するステップとを計算装置に実行させる命令を有する少なくとも1つの一例となるマシーン可読記憶媒体。
上記の一例となる少なくとも1つのマシーン可読記憶媒体であって、計算装置は、第1コンポーネント又は第2コンポーネントの何れかが動作不能であることを通知するため、第1及び第2コンポーネントから受信した信号を繰り返しモニタする。
上記の一例となる少なくとも1つのマシーン可読記憶媒体の何れかであって、第1コンポーネントが動作不能であることを示す信号は、第1コンポーネントから受信され、第1コンポーネントのレジスタのビットの値の通知を有する。
上記の一例となる少なくとも1つのマシーン可読記憶媒体の何れかであって、計算装置は、第1コンポーネントが動作不能であることを示す信号を計算装置のメインプロセッサ回路から受信する。
上記の一例となる少なくとも1つのマシーン可読記憶媒体の何れかであって、計算装置は、第1コンポーネントが動作不能であるという通知を計算装置のメインプロセッサ回路に提供するステップと、第1コンポーネントをリセットするためのメインプロセッサ回路による試みが成功しなかったという通知をメインプロセッサ回路から受信するステップとを実行する。
上記の一例となる少なくとも1つのマシーン可読記憶媒体の何れかであって、計算装置は、第1コンポーネントに供給される電力がサイクル処理されたという通知を計算装置のメインプロセッサ回路に提供する。
更なる他の例となる装置は、ロジックを有するコントローラを有し、当該ロジックは、第1コンポーネントが動作不能であることを通知する信号を受信するステップであって、第1コンポーネントはデジタルロジックを有し、少なくとも第1パワースイッチデバイスを介しコントローラにより制御される電力が供給される、受信するステップと、信号に基づき第2コンポーネントに電力を供給することを継続しながら、第1コンポーネントへの電力をサイクル処理するステップであって、第2コンポーネントはデジタルロジックを有し、少なくとも第2パワースイッチデバイスを介しコントローラにより制御される電力が供給される、サイクル処理するステップとを前記コントローラに実行させる。
上記の更なる他の例となる装置であって、コントローラは、第1コンポーネント及び第2コンポーネントに接続され、コントローラは、第1コンポーネント又は第2コンポーネントの何れかが動作不能であることを通知するため、第1及び第2コンポーネントから受信される信号を繰り返しモニタするステップを実行する。
上記の更なる他の例となる装置の何れかであって、コントローラは、バスを介し第1コンポーネントに接続され、バス上のバスマスタの役割を想定するステップと、第1コンポーネントのレジスタを読み出すステップであって、第1コンポーネントが動作不能であることを示す信号がレジスタを読み出すことを介し受信され、レジスタのビットの値の通知を有する、読み出すステップとを実行する。
上記の更なる他の例となる装置の何れかであって、当該装置はメインプロセッサ回路を有し、コントローラは、第1コンポーネントが動作不能であることを示す信号をメインプロセッサ回路から受信するステップを実行する。
上記の更なる他の例となる装置の何れかであって、少なくとも第1パワースイッチデバイスは、第1パワーコンダクタを介し第1コンポーネントに電力を供給するよう動作する第1スイッチデバイスと、第2パワーコンダクタを介し第1コンポーネントに電力を供給するよう動作する第2スイッチデバイスとを有し、コントローラは、第1パワーコンダクタを介した第1コンポーネントへの電力の供給を停止するよう第1パワースイッチデバイスを動作させるステップと、第1パワーコンダクタを介した電力の供給の停止後、第2パワーコンダクタを介した第1コンポーネントへの電力の供給を停止するよう第2パワースイッチデバイスを動作させるステップと、第1パワーコンダクタと第2パワーコンダクタとの双方を介した電力の供給の停止後、第2パワーコンダクタを介した第1コンポーネントへの電力の供給を再開するよう第2パワースイッチデバイスを動作させるステップと、第2パワーコンダクタを介した電力の供給の再開後、第1パワーコンダクタを介した第1コンポーネントへの電力の供給を再開するよう第1パワースイッチデバイスを動作させるステップとを実行する。
上記の更なる他の例となる装置の何れかであって、コントローラは、少なくとも第1パワースイッチデバイスと少なくとも第2パワースイッチデバイスとを有する。

Claims (30)

  1. コントローラプロセッサ回路と、
    デジタルロジックを有し、前記コントローラプロセッサ回路により制御される電力が供給される第1コンポーネントと、
    デジタルロジックを有し、前記コントローラプロセッサ回路により制御される電力が供給される第2コンポーネントと、
    前記コントローラプロセッサ回路に通信接続され、前記コントローラプロセッサ回路上で実行される命令を格納するよう構成されるコントローラストレージと、
    を有する装置であって、
    前記命令は、
    前記第1コンポーネントが動作不能であることを示す信号を受信するステップと、
    前記信号に基づき前記第2のコンポーネントに電力を供給することを継続しながら前記第1コンポーネントへの電力をサイクル処理するステップと、
    を実行するためのものであり、
    前記電力のサイクル処理は、複数のコンポーネントへの電力の提供が特定の順序で切断され、その後に前記特定の順序を反転することによって再開され、前記複数のコンポーネントを初期状態に配置するよう実行される装置。
  2. 前記コントローラプロセッサ回路は、前記第1コンポーネント及び前記第2コンポーネントに接続され、
    前記コントローラプロセッサ回路上で実行される命令は、前記第1コンポーネント又は前記第2コンポーネントの何れかが動作不能であることを通知するため、前記第1及び第2コンポーネントから受信した信号を繰り返しモニタするステップを実行するためのものである、請求項1記載の装置。
  3. 前記第1コンポーネントが動作不能であることを示す信号は、前記第1コンポーネントから受信され、前記第1コンポーネントのレジスタのビットの値の通知を含む、請求項2記載の装置。
  4. 前記コントローラプロセッサ回路は、バスを介し前記第1コンポーネントに接続され、
    前記コントローラプロセッサ回路上で実行される命令は、
    前記バス上のバスマスタの役割を想定するステップと、
    前記第1コンポーネントのレジスタを読み出すステップと、
    を実行するためのものであり、
    前記第1コンポーネントが動作不能であることを示す信号は、前記レジスタの読み出しを介し受信され、前記レジスタのビットの値の通知を含む、請求項1記載の装置。
  5. メインプロセッサ回路を有し、
    前記コントローラプロセッサ回路上で実行される命令は、前記第1コンポーネントが動作不能であることを示す信号を前記メインプロセッサ回路から受信するステップを実行するためのものである、請求項1記載の装置。
  6. 前記第1コンポーネントに電力を供給する第1及び第2パワーコンダクタを有し、
    前記コントローラプロセッサ回路上で実行される命令は、
    前記第1パワーコンダクタを介し前記第1コンポーネントへの電力の供給を停止するステップと、
    前記第1パワーコンダクタを介した電力の供給の停止後、前記第2パワーコンダクタを介し前記第1コンポーネントへの電力の供給を停止するステップと、
    前記第1パワーコンダクタと前記第2パワーコンダクタとの双方を介した電力の供給の停止後、前記第2パワーコンダクタを介した前記第1コンポーネントへの電力の供給を再開するステップと、
    前記第2パワーコンダクタを介した電力の供給の再開後、前記第1パワーコンダクタを介した前記第1コンポーネントへの電力の供給を再開するステップと、
    を実行するためのものである、請求項1記載の装置。
  7. 前記コントローラプロセッサ回路上で実行される命令は、
    前記第1コンポーネントに供給される電力のサイクル処理前、前記第1コンポーネントに供給される電力をデバイスに供給することを前記第1コンポーネントに停止させるため、前記第1コンポーネントのレジスタにアクセスするステップと、
    前記第1コンポーネントに提供される電力のサイクル処理後、前記第1コンポーネントに供給される電力の前記デバイスへの供給を前記第1コンポーネントに再開させるため、前記第1コンポーネントのレジスタにアクセスするステップと、
    を実行するためのものである、請求項1記載の装置。
  8. メインプロセッサ回路を有し、
    前記コントローラプロセッサ回路上で実行される命令は、
    前記第1コンポーネントが動作不能であるという通知を前記メインプロセッサ回路に提供するステップと、
    前記第1コンポーネントをリセットするための前記メインプロセッサ回路による試みが成功しなかったという通知を前記メインプロセッサ回路から受信するステップと、
    を実行するためのものである、請求項1記載の装置。
  9. メインプロセッサ回路を有し、
    前記コントローラプロセッサ回路上で実行される命令は、前記第1コンポーネントに供給される電力がサイクル処理されたという通知を前記メインプロセッサ回路に提供するステップを実行するためのものである、請求項1記載の装置。
  10. メインプロセッサ回路と、
    コントローラと、
    前記メインプロセッサ回路に通信接続され、前記メインプロセッサ回路上で実行される命令を格納するよう構成されるメインストレージと、
    を有する装置であって、
    前記命令は、
    第1コンポーネントが動作不能であるという通知を受信するステップであって、前記第1コンポーネントはデジタルロジックを有し、前記コントローラにより制御される電力が供給される、受信するステップと、
    前記通知に基づき第2コンポーネントに電力を供給することを継続しながら、前記第1コンポーネントに供給される電力をサイクル処理するための信号を前記コントローラに送信するステップであって、前記第2コンポーネントはデジタルロジックを有し、前記コントローラにより制御される電力が供給される、送信するステップと、
    を実行するためのものであり、
    前記電力のサイクル処理は、複数のコンポーネントへの電力の提供が特定の順序で切断され、その後に前記特定の順序を反転することによって再開され、前記複数のコンポーネントを初期状態に配置するよう実行される装置。
  11. 前記メインプロセッサ回路は、前記第1コンポーネント及び前記第2コンポーネントに接続され、
    前記メインプロセッサ回路上で実行される命令は、前記第1コンポーネント又は前記第2コンポーネントの何れかが動作不能であることを通知するため、前記第1及び第2コンポーネントから受信した信号を繰り返しモニタするステップを実行するためのものである、請求項10記載の装置。
  12. 前記第1コンポーネントが動作不能であるという通知は、前記第1コンポーネントのレジスタのビットの値の通知を有する、請求項11記載の装置。
  13. 前記第1コンポーネントが動作不能であるという通知は、前記コントローラから受信される、請求項10記載の装置。
  14. 前記メインプロセッサ回路上で実行される命令は、前記第1コンポーネントのレジスタにアクセスすることによって、前記第1コンポーネントをリセットすることを試みるステップを実行するためのものである、請求項10記載の装置。
  15. 前記メインプロセッサ回路上で実行される命令は、前記第1コンポーネントをリセットするための試みの失敗に応答して、前記第1コンポーネントに供給される電力をサイクル処理するための信号を送信するステップを実行するためのものである、請求項14記載の装置。
  16. 前記メインプロセッサ回路上で実行される命令は、
    前記第1コンポーネントに供給される電力がサイクル処理されたという通知を前記コントローラから受信するステップと、
    前記第1コンポーネントに供給される電力がサイクル処理されたという通知の受信に応答して、前記第1コンポーネントを使用に設定するステップと、
    を実行するためのものである、請求項10記載の装置。
  17. コンピュータにより実現される方法であって、
    計算装置の第1コンポーネントが動作不能であることを示す信号を受信するステップと、
    前記計算装置の第2コンポーネントに電力を供給することを継続しながら、前記第1コンポーネントに供給される電力をサイクル処理するステップと、
    を有し、
    前記電力のサイクル処理は、複数のコンポーネントへの電力の提供が特定の順序で切断され、その後に前記特定の順序を反転することによって再開され、前記複数のコンポーネントを初期状態に配置するよう実行される方法。
  18. 前記第1コンポーネント又は前記第2コンポーネントの何れかが動作不能であることを通知するため、前記第1及び第2コンポーネントから受信される信号を繰り返しモニタするステップを有する、請求項17記載の方法。
  19. 前記第1コンポーネントが動作不能であることを通知する信号は、前記第1コンポーネントから受信され、前記第1コンポーネントのレジスタのビットの値の通知を有する、請求項18記載の方法。
  20. 前記第1コンポーネントが動作不能であることを通知する信号を前記計算装置のメインプロセッサ回路から受信するステップを有する、請求項17記載の方法。
  21. 第1パワーコンダクタを介し前記第1コンポーネントへの電力の供給を停止し、
    前記第1パワーコンダクタを介した電力の供給の停止後、第2パワーコンダクタを介し前記第1コンポーネントへの電力の供給を停止し、
    前記第1パワーコンダクタと前記第2パワーコンダクタとの双方を介した電力の供給の停止後、前記第2パワーコンダクタを介した前記第1コンポーネントへの電力の供給を再開し、
    前記第2パワーコンダクタを介した電力の供給の再開後、前記第1パワーコンダクタを介した前記第1コンポーネントへの電力の供給を再開することによって、
    前記第1コンポーネントに供給される電力をサイクル処理するステップを有する、請求項17記載の方法。
  22. 前記第1コンポーネントに供給される電力のサイクル処理前、前記第1コンポーネントに供給される電力をデバイスに供給することを前記第1コンポーネントに停止させるため、前記第1コンポーネントのレジスタにアクセスするステップと、
    前記第1コンポーネントに提供される電力のサイクル処理後、前記第1コンポーネントに供給される電力の前記デバイスへの供給を前記第1コンポーネントに再開させるため、前記第1コンポーネントのレジスタにアクセスするステップと、
    を有する、請求項17記載の方法。
  23. 前記第1コンポーネントが動作不能であるという通知を前記計算装置のメインプロセッサ回路に提供するステップと、
    前記第1コンポーネントをリセットするための前記メインプロセッサ回路による試みが成功しなかったという通知を前記メインプロセッサ回路から受信するステップと、
    を有する、請求項17記載の方法。
  24. 前記第1コンポーネントに供給される電力がサイクル処理されたという通知を前記計算装置のメインプロセッサ回路に提供するステップを有する、請求項17記載の方法。
  25. ロジックを有するコントローラを有する装置であって、
    前記ロジックは、
    第1コンポーネントが動作不能であることを通知する信号を受信するステップであって、前記第1コンポーネントはデジタルロジックを有し、少なくとも第1パワースイッチデバイスを介し前記コントローラにより制御される電力が供給される、受信するステップと、
    前記信号に基づき第2コンポーネントに電力を供給することを継続しながら、前記第1コンポーネントへの電力をサイクル処理するステップであって、前記第2コンポーネントはデジタルロジックを有し、少なくとも第2パワースイッチデバイスを介し前記コントローラにより制御される電力が供給される、サイクル処理するステップと、
    を前記コントローラに実行させ、
    前記電力のサイクル処理は、複数のコンポーネントへの電力の提供が特定の順序で切断され、その後に前記特定の順序を反転することによって再開され、前記複数のコンポーネントを初期状態に配置するよう実行される装置。
  26. 前記コントローラは、前記第1コンポーネント及び前記第2コンポーネントに接続され、
    前記コントローラは、前記第1コンポーネント又は前記第2コンポーネントの何れかが動作不能であることを通知するため、前記第1及び第2コンポーネントから受信される信号を繰り返しモニタするステップを実行する、請求項25記載の装置。
  27. 前記コントローラは、バスを介し前記第1コンポーネントに接続され、
    前記バス上のバスマスタの役割を想定するステップと、
    前記第1コンポーネントのレジスタを読み出すステップであって、前記第1コンポーネントが動作不能であることを示す信号が前記レジスタを読み出すことを介し受信され、前記レジスタのビットの値の通知を有する、読み出すステップと、
    を実行する、請求項25記載の装置。
  28. メインプロセッサ回路を有し、
    前記コントローラは、前記第1コンポーネントが動作不能であることを示す信号を前記メインプロセッサ回路から受信するステップを実行する、請求項25記載の装置。
  29. 前記少なくとも第1パワースイッチデバイスは、第1パワーコンダクタを介し前記第1コンポーネントに電力を供給するよう動作する第1スイッチデバイスと、第2パワーコンダクタを介し前記第1コンポーネントに電力を供給するよう動作する第2スイッチデバイスとを有し、
    前記コントローラは、
    前記第1パワーコンダクタを介した前記第1コンポーネントへの電力の供給を停止するよう前記第1パワースイッチデバイスを動作させるステップと、
    前記第1パワーコンダクタを介した電力の供給の停止後、前記第2パワーコンダクタを介した前記第1コンポーネントへの電力の供給を停止するよう前記第2パワースイッチデバイスを動作させるステップと、
    前記第1パワーコンダクタと前記第2パワーコンダクタとの双方を介した電力の供給の停止後、前記第2パワーコンダクタを介した前記第1コンポーネントへの電力の供給を再開するよう前記第2パワースイッチデバイスを動作させるステップと、
    前記第2パワーコンダクタを介した電力の供給の再開後、前記第1パワーコンダクタを介した前記第1コンポーネントへの電力の供給を再開するよう前記第1パワースイッチデバイスを動作させるステップと、
    を実行する、請求項25記載の装置。
  30. 前記コントローラプロセッサ回路は、第1パワースイッチデバイスと第2パワースイッチデバイスとを有する、請求項1記載の装置。
JP2015534457A 2012-10-26 2012-12-28 自動化された選択的パワーサイクリングを介した計算サブシステムハードウェアリカバリ Active JP6151362B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
IN4471/CHE/2012 2012-10-26
IN4471CH2012 2012-10-26
PCT/US2012/072085 WO2014065841A1 (en) 2012-10-26 2012-12-28 Computing subsystem hardware recoveryvia automated selective power cycling

Publications (2)

Publication Number Publication Date
JP2016500166A JP2016500166A (ja) 2016-01-07
JP6151362B2 true JP6151362B2 (ja) 2017-06-21

Family

ID=50545047

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015534457A Active JP6151362B2 (ja) 2012-10-26 2012-12-28 自動化された選択的パワーサイクリングを介した計算サブシステムハードウェアリカバリ

Country Status (5)

Country Link
US (1) US9766676B2 (ja)
JP (1) JP6151362B2 (ja)
KR (1) KR101764657B1 (ja)
CN (1) CN104641312B (ja)
WO (1) WO2014065841A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9939865B2 (en) 2014-06-13 2018-04-10 Seagate Technology Llc Selective storage resource powering for data transfer management
US9396070B2 (en) 2014-09-11 2016-07-19 Qualcomm Incorporated System and method for system-on-a-chip subsystem external access detection and recovery
US10467172B2 (en) 2016-06-01 2019-11-05 Seagate Technology Llc Interconnect for shared control electronics
US10725851B2 (en) 2018-04-27 2020-07-28 Seagate Technology Llc Storage device self-recovery exception engine

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5398265A (en) * 1988-11-10 1995-03-14 Hughes Aircraft Company Computer subsystem reset by address dependent RC discharge
JPH04153810A (ja) 1990-10-18 1992-05-27 Fujitsu Ltd 異常処理方式
JP4068277B2 (ja) 1999-12-24 2008-03-26 株式会社東芝 ハードウェアシステム
US6625740B1 (en) * 2000-01-13 2003-09-23 Cirrus Logic, Inc. Dynamically activating and deactivating selected circuit blocks of a data processing integrated circuit during execution of instructions according to power code bits appended to selected instructions
JP2001202162A (ja) 2000-01-19 2001-07-27 Pfu Ltd 端末装置のリモート電源制御の2重化方法およびリモート電源制御が2重化された端末装置ならびに記録媒体
JP3696471B2 (ja) * 2000-03-09 2005-09-21 株式会社オートネットワーク技術研究所 情報電源管理装置
US7111201B2 (en) 2000-05-19 2006-09-19 Self Repairing Computers, Inc. Self repairing computer detecting need for repair and having switched protected storage
US7502817B2 (en) * 2001-10-26 2009-03-10 Qualcomm Incorporated Method and apparatus for partitioning memory in a telecommunication device
JP4028811B2 (ja) * 2003-03-03 2007-12-26 株式会社リコー 画像形成装置
US7350087B2 (en) * 2003-03-31 2008-03-25 Intel Corporation System and method of message-based power management
JP2006309317A (ja) 2005-04-26 2006-11-09 Hitachi Ltd ストレージシステム及びその制御方法
US20070006294A1 (en) * 2005-06-30 2007-01-04 Hunter G K Secure flow control for a data flow in a computer and data flow in a computer network
US7774633B1 (en) * 2006-12-21 2010-08-10 Google Inc. Controlled power cycling in computing devices
TW200947204A (en) 2008-05-02 2009-11-16 Inventec Corp A power recovery server device and method thereof
US8954977B2 (en) * 2008-12-09 2015-02-10 Intel Corporation Software-based thread remapping for power savings
US8053925B2 (en) * 2009-02-04 2011-11-08 Astronics Advanced Electronic Systems Corp. Modulation monitor and control
US8719613B2 (en) * 2010-01-28 2014-05-06 Futurewei Technologies, Inc. Single-wire serial interface with delay module for full clock rate data communication between master and slave devices
JP5875782B2 (ja) * 2010-05-07 2016-03-02 三星電子株式会社Samsung Electronics Co.,Ltd. システムオンチップ並びにこれを含む電子装置及び携帯用通信装置

Also Published As

Publication number Publication date
CN104641312B (zh) 2018-10-19
KR101764657B1 (ko) 2017-08-03
JP2016500166A (ja) 2016-01-07
KR20150048811A (ko) 2015-05-07
US20150220126A1 (en) 2015-08-06
US9766676B2 (en) 2017-09-19
WO2014065841A1 (en) 2014-05-01
CN104641312A (zh) 2015-05-20

Similar Documents

Publication Publication Date Title
EP3238077B1 (en) Fault tolerant automatic dual in-line memory module refresh
US8433833B2 (en) Dynamic reassignment for I/O transfers using a completion queue
JP6333965B2 (ja) ウェイクロック使用を追跡する技術
KR102649324B1 (ko) 적응 인터럽트 제어를 수행하는 컴퓨터 시스템 및 그것의 인터럽트 제어 방법
US7478187B2 (en) System and method for information handling system hot insertion of external graphics
TWI505282B (zh) 用於非揮發性儲存器件之電源關閉預測
US10049423B2 (en) Graphics processing unit failure recovery
EP2778840B1 (en) Techniques for power saving on graphics-related workloads
JP6151362B2 (ja) 自動化された選択的パワーサイクリングを介した計算サブシステムハードウェアリカバリ
WO2014105611A1 (en) Mixed cell type battery module and uses thereof
KR20170013882A (ko) 플래시 메모리 기반 저장 디바이스의 멀티 호스트 전력 제어기(mhpc)
EP3836145A1 (en) System approach to reduce stable threshold voltage (vt) read disturb degradation
US9891846B2 (en) System and method for preventing solid state drive corruption after dirty shutdown power loss
US20170371785A1 (en) Techniques for Write Commands to a Storage Device
US9792989B2 (en) Memory system including nonvolatile memory
EP4004791A1 (en) Identification of susceptibility to induced charge leakage
US9342134B2 (en) Power consumption reduction in a computing device
WO2021026868A1 (en) Methods and apparatus to recover a mobile device when a command-mode panel timing synchronization signal is lost
JP2016522502A (ja) クイックレスポンス静電容量方式タッチスクリーンデバイス
CN106815008A (zh) 系统暂停方法、系统回复方法及应用其的计算机系统
US20190385567A1 (en) Display processing blinking operation
US8605565B2 (en) Information processing apparatus and operation control method of an information processing apparatus
KR20240063607A (ko) 데이터 및 데이터 블록을 제공하는 스왑 메모리 장치, 이의 동작하는 방법, 및 이를 포함하는 전자 장치의 동작하는 방법

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160427

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160510

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160809

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20161129

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170329

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20170404

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170524

R150 Certificate of patent or registration of utility model

Ref document number: 6151362

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250