特許第6374004号(P6374004)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ インテル コーポレイションの特許一覧

特許6374004ローパワーモードに入るコントローラを有する電子デバイス
<>
  • 特許6374004-ローパワーモードに入るコントローラを有する電子デバイス 図000002
  • 特許6374004-ローパワーモードに入るコントローラを有する電子デバイス 図000003
  • 特許6374004-ローパワーモードに入るコントローラを有する電子デバイス 図000004
  • 特許6374004-ローパワーモードに入るコントローラを有する電子デバイス 図000005
  • 特許6374004-ローパワーモードに入るコントローラを有する電子デバイス 図000006
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6374004
(24)【登録日】2018年7月27日
(45)【発行日】2018年8月15日
(54)【発明の名称】ローパワーモードに入るコントローラを有する電子デバイス
(51)【国際特許分類】
   G06F 1/32 20060101AFI20180806BHJP
【FI】
   G06F1/32 Z
【請求項の数】23
【全頁数】17
(21)【出願番号】特願2016-543162(P2016-543162)
(86)(22)【出願日】2014年11月26日
(65)【公表番号】特表2017-507390(P2017-507390A)
(43)【公表日】2017年3月16日
(86)【国際出願番号】US2014067618
(87)【国際公開番号】WO2015099950
(87)【国際公開日】20150702
【審査請求日】2016年6月27日
(31)【優先権主張番号】14/142,791
(32)【優先日】2013年12月28日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】593096712
【氏名又は名称】インテル コーポレイション
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100091214
【弁理士】
【氏名又は名称】大貫 進介
(72)【発明者】
【氏名】ゴフ,ロバート イー.
(72)【発明者】
【氏名】ゲデオン,マゼン ジー.
(72)【発明者】
【氏名】クーパー,バーンズ
(72)【発明者】
【氏名】アステカル,バサヴァラジ ビー.
(72)【発明者】
【氏名】ダーディス,ショーン シー.
【審査官】 三橋 竜太郎
(56)【参考文献】
【文献】 特開2006−164232(JP,A)
【文献】 特開2001−296938(JP,A)
【文献】 特開2002−351436(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 1/26−13/42
(57)【特許請求の範囲】
【請求項1】
電子デバイスであって、
第1のコントローラと、
第2のコントローラと、
前記第1のコントローラと前記第2のコントローラとの間を結合するデータバスと、
前記第1のコントローラを前記第2のコントローラに結合する第1の信号ラインであって、前記第1のコントローラは前記第2のコントローラに前記第1の信号ラインで前記第2のコントローラをローパワーモードからウェイクアップさせる第1の信号を提供し、前記第1の信号ラインはマトリックスキーボードとポインティングデバイスに結合されるキーボードシステムコントローラインターフェースの一部である、第1の信号ラインと、
前記第1のコントローラと前記第2のコントローラとを結合する第2の信号ラインとを有し、
前記第2のコントローラは、前記第1のコントローラに前記第2の信号ラインで第2の信号を提供し、前記第2の信号はローパワーモードに入る命令を提供する、
電子デバイス。
【請求項2】
前記第2のコントローラは、前記第1のコントローラからの前記第1の信号に基づき、前記データバスへのインターフェースの状態を変更する、
請求項1に記載の電子デバイス。
【請求項3】
前記第2のコントローラがローパワーモードであるとき前記インターフェースはオフであり、前記第2のコントローラがノーマルモードであるとき前記インターフェースはオンである、
請求項2に記載の電子デバイス。
【請求項4】
前記第1のコントローラは入出力コントローラであり、前記第2のコントローラは組み込みコントローラである、請求項1に記載の電子デバイス。
【請求項5】
前記組み込みコントローラはキーボードシステムコントローラ及びシステム管理コントローラとのうち少なくとも1つを実装し、前記第2のコントローラは前記キーボードシステムコントローラまたは前記システム管理コントローラが関与する動作に基づき、ウェイクイベントを受け取る、
請求項4に記載の電子デバイス。
【請求項6】
前記第1の信号ラインの前記第1の信号により、前記第2のコントローラはローパワーモードを出る、
請求項1に記載の電子デバイス。
【請求項7】
前記第2のコントローラは、前記第1のコントローラに前記第2の信号ラインで第3の信号を提供し、前記第3の信号はローパワーモードを出る命令を提供する、請求項1に記載の電子デバイス。
【請求項8】
前記第2の信号の状態は前記データバスの状態を示し、前記第3の信号の状態は前記データバスの状態を示す、請求項7に記載の電子デバイス。
【請求項9】
第1のコントローラと第2のコントローラとを有する電子デバイスの作動方法であって、
前記第2のコントローラをローパワーモードにするステップと、
前記第1のコントローラから前記第2のコントローラに第1の信号ラインにより第1の信号を提供し、前記第2のコントローラをローパワーモードからウェイクアップするステップと、
前記第2のコントローラから前記第1のコントローラに第2の信号ラインで第2の信号を提供するステップであって、前記第2の信号はローパワーモードに入る命令を提供し、前記第1の信号ラインはマトリックスキーボードとポインティングデバイスに結合するキーボードシステムコントローラインターフェースの一部であるステップとを有する、
方法。
【請求項10】
データバスへのインターフェースの状態を前記第1のコントローラからの第1の信号に基づいて変更するステップをさらに含む、請求項9に記載の方法。
【請求項11】
前記第2のコントローラがローパワーモードであるとき前記インターフェースはオフであり、前記第2のコントローラがノーマルモードであるとき前記インターフェースはオンである、
請求項10に記載の方法。
【請求項12】
キーボードシステムコントローラまたはシステム管理コントローラを含む動作に基づき前記第2のコントローラでウェイクイベントを受け取るステップをさらに含む、
請求項9に記載の方法。
【請求項13】
前記第1の信号ラインの前記第1の信号により、前記第2のコントローラはローパワーモードを出る、
請求項9に記載の方法。
【請求項14】
前記第2のコントローラから前記第1のコントローラに前記第2の信号ラインで第3の信号を提供するステップであって、前記第3の信号はローパワーモードから出る命令を提供する、ステップをさらに含む、
請求項9に記載の方法。
【請求項15】
前記第2の信号の状態はデータバスの状態を示し、第3の信号の状態は前記データバスの状態を示す、請求項9に記載の方法。
【請求項16】
第1のコントローラまたは第2のコントローラで実行されると、前記第1のコントローラまたは第2のコントローラに、
前記第2のコントローラをローパワーモードにするステップと、
前記第1のコントローラから前記第2のコントローラに第1の信号ラインにより前記第2のコントローラをローパワーモードからウェイクアップする第1の信号を提供し、前記第1の信号ラインはマトリックスキーボードとポインティングデバイスに結合されるキーボードシステムコントローラインターフェースの一部である、ステップと、
前記第2のコントローラに、前記第1のコントローラに第2の信号ラインで第2の信号を提供するステップであって、前記第2の信号はローパワーモードに入る命令を提供する、ステップと
のうち一以上を実行させるコンピュータプログラム。
【請求項17】
前記第1のコントローラまたは第2のコントローラに、前記第1のコントローラからの第1の信号に基づいて、データバスへのインターフェースの状態を変更するステップをさらに実行させる、
請求項16に記載のコンピュータプログラム。
【請求項18】
前記第2のコントローラがローパワーモードであるとき前記インターフェースはオフであり、前記第2のコントローラがノーマルモードであるとき前記インターフェースはオンである、
請求項17に記載のコンピュータプログラム。
【請求項19】
前記第1のコントローラまたは第2のコントローラに、前記一以上の動作は、キーボードシステムコントローラまたはシステム管理コントローラを含む動作に基づき前記第2のコントローラでウェイクイベントを受け取るステップをさらに実行させる、
請求項16に記載のコンピュータプログラム。
【請求項20】
前記第1の信号ラインの前記第1の信号により、前記第2のコントローラはローパワーモードを出る、
請求項16に記載のコンピュータプログラム。
【請求項21】
前記第2のコントローラに、前記第1のコントローラに前記第2の信号ラインで第3の信号を提供するステップであって、前記第3の信号はローパワーモードから出る命令を提供する、ステップをさらに実行させる、
請求項16に記載のコンピュータプログラム。
【請求項22】
前記第2の信号の状態はデータバスの状態を示し、前記第3の信号の状態は前記データバスの状態を示す、
請求項21に記載のコンピュータプログラム。
【請求項23】
請求項16ないし22何れか一項に記載のコンピュータプログラムを格納した機械読み取り可能媒体。
【発明の詳細な説明】
【技術分野】
【0001】
実施形態は組み込みコントローラ(EC)との通信に関してもよい。
【背景技術】
【0002】
電子デバイスは、ノーマル状態とスリープ状態など異なる状態(またはモード)で動作し得る。異なる状態(またはモード)の利用はバッテリーパワーの節約のためであり得る。
【図面の簡単な説明】
【0003】
次の図面を参照して構成と実施形態を詳細に説明する。図中、同じ参照数字は同じ要素を指す。
図1】一実施形態による電子デバイスのコンポーネントを示す図である。
図2】一実施形態による、論理的状態、異なる状態間の移行パス及びイベントを示す状態図である。
図3】一実施形態による、ある状態から他の状態に移行する時に発生するイベントを処理する動作を示すフローチャートである。
図4】一実施形態による、ECにより駆動される信号の状態変化により起動されるハンドラーの動作を示すフローチャートである。
図5】一実施形態による、ECにオペレーティングシステム(OS)アクセスにより起動されるハンドラーの動作を示すフローチャートである。
【発明を実施するための形態】
【0004】
以下の詳細な説明では、同じ数字及び文字を用いて、複数の異なる図中の同じ、対応する、及び/又は類似したコンポーネントを示す。さらに、以下の詳細な説明では、サイズ/モデル/値/範囲の例を与えるが、実施形態はそれらに限定されない。実施例を説明するために具体的な詳細事項を記載するが、当業者には言うまでもなく、実施形態はこれらの具体的な詳細事項が無くても実施することができる。
【0005】
電子デバイスは多くの異なるモードで動作し得る。一動作モードはユーザ不在モード(User Absent Mode(UAM))である。ユーザ不在モードは、システム(またはデバイス)が起動されているが、ユーザインターフェース(例えば、ディスプレイ、入力デバイス)が使われていないモードである。ユーザ不在モードは、スリープモードやスタンバイモードよりも使われるかも知れない。
【0006】
ユーザ不在モードをサポートするため、電子デバイスは一定時間、ユーザ不在モードに留まり、利用可能である必要があり得る。しかし、これにより時間とともにバッテリーのパワーが減少する。これは、電子デバイスがこの時間に所定量未満のパワーを消費し得ることを意味する。ユーザ不在モードはローパワーモード(LPM)とも呼ばれることがある。
【0007】
電子デバイスは、モバイル端末、モバイルデバイス、モバイル計算プラットフォーム、モバイルプラットフォーム、ラップトップコンピュータ、タブレット、ウルトラモバイルパーソナルコンピュータ、モバイルインターネットデバイス、スマートフォン、パーソナルデジタルアシスタント、ディスプレイデバイス、テレビジョン(TV)などのうちどれであってもよい。
【0008】
電子デバイスは、メモリ、ディスプレイ、プロセッサ(または中央処理装置(CPU))、無線通信デバイス、(バッテリーポート内の)バッテリーなどの多くのコンポーネントを含み得る。コンポーネントは回路基板及び/又はシリコンチップなどの上に設けられても良い。
【0009】
電子デバイスは、データバス(またはデータインターフェース)を通してコアチップセットに接続された組み込みコントローラ(EC)を含んでいてもよい。少なくとも一実施形態では、データバスは、ローピンカウント(LPC)バスを含んでいても良い。ECは、例えばキーボードシステムコントローラ(KSC)とシステムマネジメントコントローラを含んでいてもよい。
【0010】
キーボードシステムコントローラの一例として、ユーザ不在モード(UAM)にあるとき、キーボードシステムコントローラはキーストロークを処理していないことがある。ユーザがいないことが仮定されているからである。キーストロークは、ウェイク(wake)イベントがOAに送られるUAMエグジット(exit)イベントとして用いられてもよい。しかし、キーストロークの内容は失われるかもしれない(すなわち、ウェイクイベントを生じるかも知れないが、どのキーが打たれたかKSCは知らず、それゆえキーはOSに送らない)。例えば、マシンがユーザ不在モード(UAM)に入る前にユーザがワードプロセッサアプリケーションをオープンし、「f」キーを打った場合、ワードプロセッサアプリケーションはそのキーについては通知されず、「f」は画面上や開かれた文書中には現れなくてもよい。
【0011】
一構成では、ECは(LPCインターフェースなどの)データインターフェースの入出力(I/O)チャンネルをオフにすることにより、パワーを大幅に節約してもよい。しかし、ECがデータインターフェース(またはLPCインターフェース)を再びオンにするには長い時間がかかることがある。この時間は現在使われているオペレーティングシステムにとっては長すぎるかも知れない。データインターフェースドライバ(またはECインターフェースドライバ)は、ECがレディ(ready)状態になる最大設定時間を待つだけかも知れない。データインターフェース(またはLPCインターフェース)がオフされると、ホストコントローラはECと通信して、帯域外(out−of−band mechanisms)を用いてローパワーモードを出るようにECに通知してもよい。
【0012】
実施形態では、ECローパワーモードを管理して省電力を可能とする。これは、少なくとも一実施形態では、既存のオペレーティングシステムコードを変更しなくても行い得る。
【0013】
実施形態では、一以上の汎用I/O(GPIO)信号ラインその他のメカニズムを用いて、ECファームウェアとBIOS(Basic Input/Output System)との間のサイドバンドまたは帯域外ハンドシェークを利用してもよい。2つの一方向GPIOを用いる少なくとも一実施形態では、第1の信号(または第1の信号ライン)はBIOS制御チップセット(すなわち、入出力ハブ(IOC))から出力され、ECをI/Oインターフェースローパワーモードからウェイクアップさせてもよい。第2の信号(または第2の信号ライン)は、ECがローパワーモードに入る又はそれから出るにつれ、ECによりロー及びハイに駆動され得る。BIOSは、ECへのオペレーティングシステム(OS)アクセスを検出し、ECをウェイクアップし、LPCインターフェースがウェイクアップして機能状態になるまで、OS要求を送らせてもよい。
【0014】
実施形態は、少なくとも3つの主要コンポーネント、すなわちBIOSソフトウェア、ECファームウェア、及び/又はボードロジックを含み得る。例えば、チップセット上のロジックは、システム管理インターラプト(SMI)トラップをサポートしてもよい。システム管理インターラプトトラップでは、ECへのOSアクセスがインターラプトされ、BIOS SMIハンドラーにより処理される。また、少なくとも一実施形態では、OSレイヤ、カーネルレベル、及び/又はユーザレベルのソフトウェアコンポーネントを含み得る。
【0015】
図1は、一実施形態による電子デバイスのコンポーネントを示す図である。他の実施形態及び構成を提供してもよい。
【0016】
より具体的に、図1は、電子デバイスのハードウェアコンポーネントとソフトウェアコンポーネントを示す。例えば、ハードウェアは組み込みコントローラ10と入出力(I/O)コントローラ50を含み得る。他のコンポーネントを設けてもよい。
【0017】
組み込みコントローラ10は、組み込みコントローラ10とI/Oコントローラ50との間に(ローピンカウントバス(LPC)などの)データバス20(またはその他のI/Oインターフェース)を含み得る。一例として、データバス20は、EC10とI/Oコントローラ50との間に9本の信号ラインを含んでも良い。設けられる信号ラインの数は異なっても良い。
【0018】
一実施形態は、EC10のピンとI/Oコントローラ50のピンとの間を結合する信号ライン30を含んでもよい。信号ライン30はEC10からの信号をI/Oコントローラ50に伝えてもよい。一例として、信号ライン30はEXTSMI信号を伝えても良い。この信号は、外部ソースから来るSMIである外部システム管理インターラプト(SMI)信号であってもよい。
【0019】
一実施形態は、I/Oコントローラ50のピンとEC10のピンとの間を結合する信号ライン40を含んでもよい。信号ライン40はI/Oコントローラ50からの信号をEC10に伝えてもよい。一例として、信号ライン40は、ECをユーザ不在モードからウェイクアップさせるI/Oウェイク(wake)信号を伝えても良い。
【0020】
一例として、EC10はキーボードシステムコントローラ(KSC)、システム管理コントローラ(SMC)、データインターフェース(またはLPCインターフェース)、及びEXTSMIハンドラーを含んでいてもよい。他のコンポーネントもEC10のコンポーネントとして設けられても良い。
【0021】
KSCは、PS/2スタイルキーボード/マウスとしてホストに対してエクスポーズされた、マトリックスキーボード(すなわち、ラップトップ/クラムシェルスタイルシステムの組み込みキーボード)及びタッチパッドのようなポインティングデバイスと通信してもよい。
【0022】
SMCは、熱管理(熱センサ、ファン制御)、バッテリー管理(充電、報告)、デバイス/システムまたは個別コンポーネントをオン/オフするパワーシーケンスを含むデバイス/システム内の他の機能の管理を行い得る。
【0023】
図1は、電子デバイスのソフトウェアコンポーネントも示す。ソフトウェアコンポーネントはBIOS及びオペレーティングシステム(OS)を含んでも良い。ソフトウェアコンポーネントはチップなどのメモリに設けられても良い。BIOSはOSとI/Oコントローラ50との間のパスである。
【0024】
OSはFOコントローラ50を通してECと通信してもよい。BIOSは、OSにより使われるパワーオンセルフテスト(POST)中に、EC(システム管理モード)のプロキシとして機能する、FOコントローラと(中央処理装置(CPU)などの)プロセッサ中のメカニズムを用いて、メモリ中にテーブルを設けて、OSと通信してもよい。FOコントローラ50は、OSアクセス(データまたはI/O読み書きトランザクション)に応答することによりOSと通信してもよく、FOコントローラ50は、OSアクセス(データまたはFO読み書きトランザクション)に応答することによりBIOSと通信してもよい。OSはEC10にアクセスするドライバを含んでもよい。
【0025】
図2は、一実施形態による、論理的状態、異なる状態間の移行パス及びイベントを示す状態図である。他の実施形態及び構成を提供してもよい。
【0026】
図2は、ユーザ在席モード、ユーザ不在モード(UAM)、ECノーマルモード、及びECローパワーモード(LPM)などの、電子デバイスの異なるモードまたは状態を示す。
【0027】
OSドメインは、ユーザ在席モードとユーザ不在モード(UAM)を含み得る。ECドメインはノーマルモードとローパワーモード(LPM)とを含み得る。より具体的に、状態102において、電子デバイスはユーザ在席モードとECノーマルモードであってもよい。この状態は、ユーザがデバイス/システム及び/又はキーボードを使っている時に提供され得る。OSからの通知に応じて、電子デバイスはユーザ不在モード(user absent mode、UAM)に入っても良い。一例として、ディスプレイがオフされたときに通知され得る。状態104は、ユーザ不在モード(UAM)とECノーマルモードにある電子デバイスを示す。
【0028】
BIOSがECにユーザ不在モード(UAM)に入るよう命令を送るとそれに応じて、状態106において、電子デバイスはECがローパワーモード(LPM)に入るのを待つ。状態106において、OSからの通知に応じて、電子デバイスはユーザ不在モードを出て、状態108に入っても良い。OSはユーザ在席モードであり、ECはローパワーモードである。状態108はOSとECの状態の組み合わせを示す疑似状態である。この状態では、OSはユーザ不在モード(UAM)ではないが、ECをローパワーモード(LPM)から出すコマンドはまだ処理されていない。これは単に、図5のボックス212などのBIOSステートマシンの状態であると考えてもよい。
【0029】
状態106と同様に状態108では、ECモードはローパワーモード(LPM)であるが、I/Oインターフェースはアクティブである。状態110と状態112では、ECモードはローパワーモード(LPM)でありI/Oインターフェースはオフ(すなわち非アクティブ)である。
【0030】
状態108において、BIOSはECにユーザ不在モード(UAM)に入るコマンドを送ってもよく、電子デバイスはその後、状態102に戻っても良い。
【0031】
他方、電子デバイスが状態106であるとき、ECは、BIOSに、ECがローパワーモード(LPM)に入ったこと、BIOSがLPMをウェイクさせ作動可能(arm)にしてもよい(すなわち、I/Oウェイク)こと、及びBIOSはI/Oトラップをイネーブルしてもよいことを命令する。例えば、図4は、必要な時にのみ、I/Oトラップが作動可能にされる(arm)ことを示している。I/Oトラップにより、ECがローパワーモード(LPM)にいる時、BIOSはECのプロキシとして機能する。これにより、必要でない時に(すなわち、ECがローパワーモード(LPM)ではなく、OS要求に対して直接サービスできる時)、OSがループに入ることを防止できる。
【0032】
電子デバイスは状態110に入っても良い。そこでは電子デバイスはユーザ不在モード(UAM)であり、ECはローパワーモード(LPM)である。
【0033】
状態110(ユーザ不在モード(UAM)であり、ECはローパワーモード(LPM)である)において、システム管理コントローラ(SMC)/キーボードシステムコントローラ(KSC)に対する直接OSアクセスにより、電子デバイスは状態112に入っても良く、そこでI/OトラップハンドラーとECがウェイクアップされてもよい。ECに対するノーマルアクセスにより、I/OコントローラはECエラー条件をOSに返してもよい。OSからの要求をインターセプトすることにより、BIOSはOSにアクセスを再試行するように要求してもよい。ECデータインターフェース(すなわち、I/Oインターフェース)がアクティブになると、BIOSは、自分自身をパスから取り除き、ECアクセスが通常通り行われるようにしてもよい。
【0034】
状態112において、ECは、BIOSが(信号ライン30のEXTSMI信号を用いて)ローパワーモード(LPM)を出て、I/Oトラップをディスエーブルするように命令を送っても良い。結果として、電子デバイスは状態106に戻ってもよい。
【0035】
あるいは、状態112において、BIOSは(信号ライン40のI/Oウェイク信号を用いて)ECに、ローパワーモード(LPM)を出るように命令を送っても良い。
【0036】
他の場合には、状態110において、ECは(信号ライン30のEXTSMI信号を用いて)BIOSにLPMをでるように命令してもよく、BIOSはI/Oトラップをディスエーブルしてもよく、BIOSはLPMウェイク(またはI/Oウェイク)を解除(disarm)してもよい。結果として、電子デバイスは状態106に戻ってもよい。
【0037】
図3は、一実施形態による、ある状態から他の状態に移行する時に発生するイベントを処理する動作を示すフローチャートである。他の動作、動作順序、及び実施形態も考えられるだろう。
【0038】
図3に示した動作はEC10の動作に関する。
【0039】
開始後、動作152において、ECはホストからのコマンドを待ち、及び他のサブシステムをモニターして、必要な警告を生成してホストに返しても良い(通常のEC動作)。
【0040】
動作154において、ユーザ不在モード(UAM)において、タイムアウトしたかの決定を行う。動作154での決定がNOであれば、ECは動作156で、送信されたコマンドを読む。動作158において、コマンドのタイプについて決定をする。
【0041】
動作154で決定がYESであれば、プロセスは動作166に進む。
【0042】
動作158において、コマンドタイプがユーザ不在モード(UAM)コマンドでない場合、ECは動作160において他のコマンドを処理し、次いでECは動作162において決定をしてもよい。動作162で決定がYESであれば、プロセスは動作166に進む。動作162で決定がNOであれば、プロセスは動作152に進む。
【0043】
動作158において、コマンドの決定がユーザ不在モード(UAM)に入るコマンドであるとき、プロセスは動作164に進み、ECが残りのトランザクションを終わらせても良い。動作158において、コマンドの決定がユーザ不在モード(UAM)を出るコマンドであるとき、プロセスは動作152に進む。動作166において、ECは、信号ライン30(信号EXTSMI)をロー状態にし、ローパワーモード(LPM)に入ることを示し、その後ECはローパワーモード(LPM)に入る。
【0044】
動作168において、ECはEXTSMIハンドラーを実行する命令を出しても良い。
【0045】
動作170において、ECはウェイクイベントの決定をしてもよい。
【0046】
動作170の決定がローパワーモード(LPM)ウェイクイベントであるとき、動作174において、ECはローパワーモード(LPM)を出ても良い。動作176において、ECは信号ライン30(信号EXTSMI)をハイ状態にして、ローパワーモード(LPM)から出ることを示しても良い。その後、動作178において、ECはEXTSMIハンドラーを実行する命令を出しても良い。プロセスはその後動作152に戻っても良い。
【0047】
動作170の決定が「その他」であるとき、動作172において、ECはウェイクイベントを処理してもよい。プロセスはその後動作152に戻っても良い。
【0048】
図4は、一実施形態による、ECにより駆動される(信号ライン30の)EXTSMI信号の状態変化により起動されるBIOS SMIハンドラーの動作を示すフローチャートである。他の動作及び実施形態を提供してもよい。
【0049】
このフローチャートは、ECのI/Oインターフェースの状態に基づき、ECへのアクセスのI/Oトラップをイネーブル/ディスエーブルするのに用いられるBIOS中のイベントハンドラーを記述している。開始後、動作202において、システム管理インターラプト(SMI)極性(polarity)が変わり、次のエッジによりSMI及びSMI状態がクリアされてもよい。
【0050】
動作204において、EXTSMIがLPMに入るか(LPM Entry)、LPMから出るか(LPM exit)決定してもよい。
【0051】
動作204においてEXTSMIがLPMに入るであると決定されると、プロセスは動作206に進む。動作206においてEXTSMIがLPMから出ると決定されると、プロセスは動作206に進む。
【0052】
動作206において、LPMから出てGPIOに入る(LPM exit GPIO entry)が作動可能(armed)になってもよく、I/Oトラップがイネーブルされてもよい。これにより、BIOSはOSからECへのアクセスをインターセプトでき、またI/Oコントローラ設定を変更して、I/Oインターフェースがアクティブ(またはオン)であるとのECからの通知を検出できる。
【0053】
動作208において、LPMから出てGPIOに入る(LPM exit GPIO entry)が解除(disarmed)され、I/Oトラップがディスエーブルされてもよい。これによりBIOSはI/Oコントローラ中のハードウェアをディスエーブルして、ECアクセス時にシステム管理モード(System Management Mode、SMM)に入らせ、I/Oコントローラ設定を変更して、I/Oインターフェースが非アクティブ(またはオフ)であるとのECからの通知を検出してもよい。図5は、一実施形態による、ECへのOSアクセスにより起動されるBIOS SMIハンドラーを示すフローチャートである。他の動作、動作順序、及び実施形態も考えられるだろう。
【0054】
このフローチャートは、OS ECアクセスを検出するに使え、I/Oインターフェースをアクティブ状態にするようECに要求するのに使えるBIOS中のイベントハンドラーを記述する。
【0055】
動作210において、I/Oトラップをトリガーしたパーツの決定がなされ得る。動作212において、BIOSは信号ライン40(信号I/Oウェイク)を用いて、ECにそのデータインターフェース(すなわち、I/Oインターフェース)をアクティブ状態にするよう命令してもよい。
【0056】
動作214において、BIOSは信号ライン30(信号EXTSMI)を用いて、ECがそのデータインターフェース(すなわち、I/Oインターフェース)をアクティブ状態にしたことをBIOSに通知するのを待つ。
【0057】
動作214において決定がYESであるとき、動作216において、トラップを起こしたEC IOポートがBIOSにより読まれる。
【0058】
動作218において、BIOSはECポートの値をEC戻り値で返すようにプロセッサ(またはCPU)を設定してもよい。これにより、OSはECから正しい値を読み出し得るが、読み出しアクセスが行われる時、ECのデータインターフェース(すなわち、IOインターフェース)が非アクティブであれば、OSにより調べられた(observe)であろうエラー条件がマスクされる。
【0059】
上記の動作は、ECがローパワーモード(LPM)にいる時、キーボードコントローラ状態ポート(I/Oポート64番)及びシステム管理コントローラ状態ポート(I/Oポート66番)などのECポートへのOSアクセス上のBIOSトラップに関する。
【0060】
少なくとも一実施形態では、コンピュータ読み取り可能媒体は、上記の動作を実行する制御回路のプログラムを記憶しても良い。プログラムはシステムメモリに記憶されてもよい。システムメモリは、例えば、電子デバイスの内部にあっても外部にあってもよい。少なくとも一実施形態では、プログラムは、組み込みコントローラ及び/又はI/Oコントローラの制御動作の制御アルゴリズムの一部であってもよい。組み込みコントローラまたはI/Oコントローラにより実行される命令またはコードは、機械読み取り可能媒体、または一以上の電子的にアクセス可能な媒体などへのアクセスを提供するリモート接続(例えば、アンテナ及び/又はネットワークインターフェースを介してネットワークにより)を介してアクセスできる外部ストレージデバイスからメモリに提供されてもよい。機械読み取り可能媒体には、機械(例えば、コンピュータ)による読み取りが可能な形式で情報を提供(すなわち、格納及び/又は伝送)する任意のメカニズムが含まれる。例えば、機械読み取り可能媒体には、ランダムアクセスメモリ(RAM)、読出専用メモリ(ROM)、磁気または光記憶媒体、フラッシュメモリデバイス、電子的、光学的、音響的その他の形式の伝送信号(例えば搬送波、赤外線信号、デジタル信号等)などが含まれる。別の実施形態では、命令またはコードの替わりに、またはそれと組み合わせてハードワイヤード回路を用いてもよく、このように実施形態はハードウェア回路とソフトウェア命令との特定の組み合わせには限定されない。
【0061】
プログラムは、前述の実施形態で実行される動作または機能のどれを実行するコードまたは命令を含み得る。
【0062】
上記の実施形態の要素はタスクを実行するコードセグメントまたは命令で提供されてもよい。コードセグメントまたはタスクは、プロセッサ読み取り可能媒体に記憶されても、または搬送波中の計算データ信号により伝送媒体または通信リンクを介して伝送されてもよい。プロセッサ読み取り可能媒体、機械読み取り可能媒体、又はコンピュータ読み取り可能媒体は、情報を格納または伝送できる任意の媒体を含み得る。プロセッサ読み取り可能媒体、機械読み取り可能媒体、又はコンピュータ読み取り可能媒体の例としては、電子回路、半導体メモリデバイス、ROM、フラッシュメモリ、イレーザブルROM(EROM)、フロッピーディスケット、CD−ROM、光ディスク、ハードディスク、光ファイバー媒体、無線周波数(RF)リンクなどが含まれる。データ信号は、電子的ネットワークチャネル、光ファイバー、空気、電磁波、RFリンクなどの伝送媒体により伝搬できる任意の信号を含み得る。コードセグメントまたは命令は、インターネット、イントラネットなどのコンピュータネットワークを介してダウンロードされ得る。
【0063】
以下の例はさらに別の実施形態に関する。
【0064】
実施例1は電子デバイスであって、該電子デバイスは、第1のコントローラと、第2のコントローラと、前記第1のコントローラと前記第2のコントローラとの間を結合するデータバスと、前記第1のコントローラを前記第2のコントローラに結合する第1の信号ラインとを有し、前記第1のコントローラは前記第2のコントローラに前記第1の信号ラインで第1の信号を提供して前記第2のコントローラをローパワーモードからウェイクアップさせる。
【0065】
実施例2では、実施例1の主題は任意的に、前記第2のコントローラは、前記第1のコントローラからの前記第1の信号に基づき、前記データバスへのインターフェースの状態を変更することができる。
【0066】
実施例3では、実施例1及び実施例2の主題は任意的に、前記第2のコントローラがローパワーモードであるとき前記インターフェースはオフであり、前記第2のコントローラがノーマルモードであるとき前記インターフェースはオンであってもよい。
【0067】
実施例4では、実施例1の主題は任意的に、前記第1のコントローラは入出力コントローラであってもよい。 実施例5では、実施例1の主題は任意的に、前記第1のコントローラは組み込みコントローラであってもよい。
【0068】
実施例6では、実施例1及び実施例5の主題は任意的に、前記組み込みコントローラはキーボードシステムコントローラ及びシステム管理コントローラのうち少なくとも一方を実装し得る。
【0069】
実施例7では、実施例1及び実施例6の主題は任意的に、前記第2のコントローラは、前記キーボードシステムコントローラまたは前記システム管理コントローラが関与する動作に基づきウェイクイベントを受け取り得る。
【0070】
実施例8では、実施例1の主題は任意的に、前記第1の信号ラインの前記第1の信号により、前記第2のコントローラはローパワーモードを出てもよい。
【0071】
実施例9では、実施例1の主題は任意的に、前記第1のコントローラを前記第2のコントローラに結合する第2の信号ラインを有し、前記第2のコントローラは前記第1のコントローラに前記第2の信号ラインで第2の信号を提供して、前記第2の信号はローパワーモードに入る命令を提供する。
【0072】
実施例10では、実施例1及び実施例9の主題は任意的に、第2の信号の状態は前記データバスの状態を示す。
【0073】
実施例11では、実施例1及び実施例9の主題は任意的に、前記第2のコントローラは、前記第1のコントローラに前記第2の信号ラインで第3の信号を提供し、前記第3の信号はローパワーモードを出る命令を提供する、
実施例12では、実施例1及び実施例11の主題は任意的に、第3の信号の状態は前記データバスの状態を示す。
【0074】
実施例13では、実施例1の主題は任意的に、前記データバスはローピンカウントバスである、
実施例14は装置であり、該装置は、第1の動作を提供する、その少なくとも一部はハードウェアである、第1のロジックと、第2の動作を提供する、その少なくとも一部はハードウェアである、第2のロジックと、前記第1のロジック及び前記第2のロジックに結合したデータバスと、前記第1のロジックに、及び前記第2のロジックに結合する第1の信号ラインとを有し、前記第1のロジックは前記第2のロジックに前記第1の信号ラインで第1の信号を提供して前記第2のロジックをローパワーモードからウェイクアップさせる。
【0075】
実施例15では、実施例14の主題は任意的に、前記第2のロジックは、前記第1のロジックからの前記第1の信号に基づき、前記データバスへのインターフェースの状態を変更することができる。
【0076】
実施例16では、実施例14及び実施例15の主題は任意的に、前記第2のロジックがローパワーモードであるとき前記インターフェースはオフであり、前記第2のロジックがノーマルモードであるとき前記インターフェースはオンであってもよい。
【0077】
実施例17では、実施例14の主題は任意的に、前記第1のロジックは入出力コントローラを含む。
【0078】
実施例18では、実施例14の主題は任意的に、前記第2のロジックは組み込みコントローラを含む。
【0079】
実施例19では、実施例14の主題は任意的に、前記第2のロジックはキーボードシステムコントローラ及びシステム管理コントローラのうち少なくとも一方を実装し得る。
【0080】
実施例20では、実施例14及び実施例19の主題は任意的に、前記第2のロジックは、前記キーボードシステムコントローラまたは前記システム管理コントローラが関与する動作に基づきウェイクイベントを受け取り得る。
【0081】
実施例21では、実施例14の主題は任意的に、前記第1の信号ラインの前記第1の信号により、前記第2のロジックはローパワーモードを出てもよい。
【0082】
実施例22では、実施例14の主題は任意的に、前記第1のロジックを前記第2のロジックに結合する第2の信号ラインを有し、前記第2のロジックは前記第1のロジックに前記第2の信号ラインで第2の信号を提供して、前記第2の信号はローパワーモードに入る命令を提供する。
【0083】
実施例23では、実施例14及び実施例22の主題は任意的に、第2の信号の状態は前記データバスの状態を示す。
【0084】
実施例24では、実施例14及び実施例22の主題は任意的に、前記第2のロジックは、前記第1のロジックに前記第2の信号ラインで第3の信号を提供し、前記第3の信号はローパワーモードを出る命令を提供する。
【0085】
実施例25では、実施例14及び実施例24の主題は任意的に、第3の信号の状態は前記データバスの状態を示す。
【0086】
実施例26では、実施例14の主題は任意的に、前記データバスはローピンカウントバスである。
【0087】
実施例27は、第1のコントローラと第2のコントローラとを有する電子デバイスの作動方法であって、前記第2のコントローラをローパワーモードにするステップと、前記第1のコントローラから前記第2のコントローラに第1の信号ラインにより第1の信号を提供し、前記第2のコントローラをローパワーモードからウェイクアップするステップとを含む。
【0088】
実施例28では、実施例27の主題は任意的に、データバスへのインターフェースの状態を前記第1のコントローラからの第1の信号に基づいて変更するステップを含む、
実施例29では、実施例27及び実施例28の主題は任意的に、前記第2のコントローラがローパワーモードであるとき前記インターフェースはオフであり、前記第2のコントローラがノーマルモードであるとき前記インターフェースはオンであってもよい。
【0089】
実施例30では、実施例27の主題は任意的に、前記第1のコントローラは入出力コントローラであってもよい。
【0090】
実施例31では、実施例27の主題は任意的に、前記第1のコントローラは組み込みコントローラであってもよい。
【0091】
実施例32では、実施例27及び実施例31の主題は任意的に、前記組み込みコントローラはキーボードシステムコントローラ及びシステム管理コントローラのうち少なくとも一方を実装し得る。
【0092】
実施例33では、実施例27及び実施例32の主題は任意的に、前記第2のコントローラにおいて、前記キーボードシステムコントローラまたは前記システム管理コントローラが関与する動作に基づきウェイクイベントを受け取るステップを含む。
【0093】
実施例34では、実施例27の主題は任意的に、前記第1の信号ラインの前記第1の信号により、前記第2のコントローラはローパワーモードを出てもよい。
【0094】
実施例35では、実施例27及び実施例34の主題は任意的に、前記第2のコントローラから前記第1のコントローラに前記第2の信号ラインで第2の信号を提供するステップであって、前記第2の信号はローパワーモードに入る命令を提供する、ステップを含む。
【0095】
実施例36では、実施例27及び実施例35の主題は任意的に、第2の信号の状態は前記データバスの状態を示す。
【0096】
実施例37では、実施例27及び実施例35の主題は任意的に、前記第2のコントローラから前記第1のコントローラに前記第2の信号ラインで第3の信号を提供するステップであって、前記第3の信号はローパワーモードから出る命令を提供する、ステップを含む。
【0097】
実施例38では、実施例27及び実施例35の主題は任意的に、第3の信号の状態は前記データバスの状態を示す。
【0098】
実施例39では、実施例27の主題は任意的に、前記データバスはローピンカウントバスである。
【0099】
実施例40は、第1のコントローラまたは第2のコントローラで実行されると、前記第2のコントローラをローパワーモードにするステップと、前記第1のコントローラから前記第2のコントローラに第1の信号ラインにより第1の信号を提供し、前記第2のコントローラをローパワーモードからウェイクアップするステップと、のうち一以上の動作を実行する一以上の命令を含む機械読み取り可能媒体である。
【0100】
実施例41では、実施例40の主題は任意的に、前記一以上の動作は、前記第1のコントローラからの第1の信号に基づいて、データバスへのインターフェースの状態を変更するステップをさらに含む。
【0101】
実施例42では、実施例40及び実施例41の主題は任意的に、前記第2のコントローラがローパワーモードであるとき前記インターフェースはオフであり、前記第2のコントローラがノーマルモードであるとき前記インターフェースはオンであってもよい。
【0102】
実施例43では、実施例40の主題は任意的に、前記第1のコントローラは入出力コントローラであってもよい。
【0103】
実施例44では、実施例40の主題は任意的に、前記第1のコントローラは組み込みコントローラであってもよい。
【0104】
実施例45では、実施例40及び実施例44の主題は任意的に、前記組み込みコントローラはキーボードシステムコントローラ及びシステム管理コントローラのうち少なくとも一方を実装し得る。
【0105】
実施例46では、実施例40及び実施例45の主題は任意的に、前記一以上の動作は、キーボードシステムコントローラまたはシステム管理コントローラを含む動作に基づき前記第2のコントローラでウェイクイベントを受け取るステップをさらに含む。
【0106】
実施例47では、実施例40の主題は任意的に、前記第1の信号ラインの前記第1の信号により、前記第2のコントローラはローパワーモードを出てもよい。
【0107】
実施例48では、実施例40及び実施例47の主題は任意的に、前記一以上の動作は、前記第2のコントローラは、前記第1のコントローラに前記第2の信号ラインで第2の信号を提供するステップであって、前記第2の信号はローパワーモードに入る命令を提供する、ステップをさらに含む。
【0108】
実施例49では、実施例40及び実施例48の主題は任意的に、第2の信号の状態は前記データバスの状態を示す。
【0109】
実施例50では、実施例40及び実施例48の主題は任意的に、前記一以上の動作は、前記第2のコントローラは、前記第1のコントローラに前記第2の信号ラインで第3の信号を提供するステップであって、前記第3の信号はローパワーモードから出る命令を提供する、ステップをさらに含む。
【0110】
実施例51では、実施例40及び実施例50の主題は任意的に、第3の信号の状態は前記ローピンカウントバスの状態を示す。
【0111】
実施例52では、実施例40の主題は任意的に、前記データバスはローピンカウントバスである。
【0112】
本明細書において「一実施形態」とは、その実施形態に関して説明する機能、構造、特徴が少なくとも1つの実施形態に含まれることを意味している。本明細書ではいろいろな箇所でかかるフレーズを記載するが、必ずしも同じ実施形態を指すものではない。さらに、ある機能、構造、または特徴をある実施形態について説明した場合、他の実施形態に関するそれらの機能、構造、または特徴に影響が及ぶことは、当業者には自明である。
【0113】
多くの例示を参照して実施形態を説明したが、言うまでもなく、当業者にはその他の多数の修正や実施形態を工夫でき、それらは本開示の原理の精神と範囲内に含まれる。より具体的には、本開示、図面、及び特許請求の範囲において、主題の組み合わせ構成のコンポーネントパーツ及び/又は構成においてさまざまなバリエーション及び修正が可能である。また、コンポーネントパーツ及び/又は構成におけるバリエーションと修正に加えて、代替的利用も当業者には明らかである。
図1
図2
図3
図4
図5