(57)【要約】【課題】  本発明は、実行命令を生成する装置、システム、及び方法を提供する。【解決手段】  本発明の実施例は、実行命令を生成する装置、システム、及び方法を提供する。いくつかの説明のための実施例は、所定の実行可能なフォーマットの実行命令を、メモリーアドレスを表すメモリーアクセス命令のメモリーアドレスデータに基づき生成する段階を有する。他の実施例も説明及び請求される。本発明のいくつかの説明のための実施例は、受信したメモリーアクセス命令のアドレスデータに基づき所定の実行可能なフォーマットの実行命令を生成する装置、システム、及び／又は方法を有する。本発明のいくつかの説明のための実施例では、メモリーアドレス命令は、少なくとも部分的に実行命令に変換されて良い。【選択図】  図２
2011134340.tif 000002
【特許請求の範囲】
【請求項１】
アドレスデータ及び非アドレスデータを有するメモリーアクセス命令を受信しフラグを設定し、該アドレスデータをベースポインタ値及び範囲値により定められるアドレス範囲と比較し、インデックス値を有するインデックス信号を、複数のインデックス値により識別される命令実行パラメータのセットを有するテーブル内に生成し、前記非アドレスデータと前記テーブルからの命令実行パラメータを結合して実行命令を生成する命令生成器、
該命令生成器に結合され、該命令生成器から前記実行命令又は前記メモリーアクセス命令を受信し、該受信した実行命令又はメモリーアクセス命令を実行するコア、
を有する装置。
【請求項２】
前記メモリーアクセス命令は、メモリーのメモリーアドレスにアクセスするために入力／出力に割り付けられた命令を有する、
ことを特徴とする請求項１に記載の装置。
【請求項３】
前記命令生成器は、
前記アドレスデータを前記アドレス範囲内の１又は複数のメモリーアドレスのセットと比較し、前記アドレスデータが前記メモリーアドレスのセットの１つと一致した場合に前記インデックス信号を生成する制御部であって、前記アドレス範囲内の１又は複数のメモリーアドレスのそれぞれは、１又は複数の低電力命令を表す、制御部、
前記インデックス信号を低電力命令の１又は複数のパラメータに変換するトランスレーター、
前記１又は複数のパラメータと前記メモリーアクセス命令の前記非アドレスデータとの組合せにより、前記低電力命令を生成する結合器、
を有する請求項1記載の装置。
【請求項４】
前記１又は複数のメモリーアドレスのセットは、一連のメモリーアドレスを有し、
少なくとも第１及び第２の値は、前記一連のメモリーアドレスを定める、
ことを特徴とする請求項３に記載の装置。
【請求項５】
前記第１の値は、前記一連のメモリーアドレスの第１のメモリーアドレスを示すベースポインタ値を有し、
前記第２の値は、前記一連のメモリーアドレス内のメモリーアドレスの数を示す範囲値を有する、
ことを特徴とする請求項４に記載の装置。 
【請求項６】
前記ベースポインタ値は、レベル２のベースポインタ値を有し、
前記範囲値は、Ｃ状態範囲値を有する、
ことを特徴とする請求項５に記載の装置。 
【請求項７】
前記低電力命令の前記１又は複数のパラメータは、前記アドレスデータに基づき決定される、
ことを特徴とする請求項３に記載の装置。
【請求項８】
前記命令生成器は、低電力状態を表すメモリーアドレスに対応する前記アドレスデータを有する前記メモリーアクセス命令を受信する、
ことを特徴とする請求項１に記載の装置。
【請求項９】
アドレスデータを有するメモリーアクセス命令を受信する段階、
前記アドレスデータがアドレス範囲内にある場合、前記メモリーアクセス命令の受信に応答して、前記メモリーアクセス命令の前記アドレスデータを低電力命令に変換する段階、
その他の場合に、前記メモリーアクセス命令を選択する段階、
を有し、
前記変換する段階は、
前記アドレスデータを１又は複数の低電力命令を表す１又は複数のメモリーアドレスのセットと比較する段階、
前記アドレスデータが前記メモリーアドレスのセットのうちの１つと一致した場合、前記１又は複数の低電力命令のパラメータのセットを有するテーブルに、インデックス信号を生成する段階、
前記テーブルを用いて、前記インデックス信号を前記低電力命令の１又は複数のパラメータに変換する段階、
前記１又は複数のパラメータと前記メモリーアクセス命令の非アドレスデータとの組合せにより、プロセッサーを低電力状態に入らせる前記低電力命令を生成する段階、
を有する、
ことを特徴とする方法。
【請求項１０】
前記メモリーアクセス命令を受信する段階は、メモリーのメモリーアドレスにアクセスするために入力／出力に割り付けられた命令を受信する段階を有する、
ことを特徴とする請求項9に記載の方法。
【請求項１１】
前記メモリーアドレスのセットは、一連のメモリーアドレスを有し、
少なくとも第１及び第２の値は、前記一連のメモリーアドレスを定める、
ことを特徴とする請求項9に記載の方法。 
【請求項１２】
前記第１の値は、前記一連のメモリーアドレスの第１のメモリーアドレスを有し、
前記第２の値は、前記一連のメモリーアドレス内のメモリーアドレスの数を有する、
ことを特徴とする請求項11に記載の方法。 
【請求項１３】
前記低電力命令の前記１又は複数のパラメータは、前記アドレスデータに基づき決定される、
ことを特徴とする請求項9に記載の方法。
【請求項１４】
前記アドレスデータは、所望の低電力状態を表すメモリーアドレスに対応する、
ことを特徴とする請求項９に記載の方法。
【請求項１５】
命令生成器と該命令生成器に結合されたコアとを有するプロセッサー、
前記プロセッサーに結合され、オペレーティングシステム命令を有するダイナミックランダムアクセスメモリ（ＤＲＡＭ）、
を有し、
前記命令生成器は、
アドレスデータと非アドレスデータとを有するメモリーアクセス命令を受信し、
前記アドレスデータがベースポインタ値と範囲値とにより定められるアドレス範囲内にある場合に、前記メモリーアクセス命令の受信に応答して、前記メモリーアクセス命令のアドレスデータを低電力命令に変換し、
その他の場合に、前記メモリーアクセス命令を選択し、
前記低電力命令は、前記プロセッサーを低電力状態に入らせ、
前記コアは、
前記命令生成器から前記低電力命令又は前記メモリーアクセス命令を受信し、
前記受信した低電力命令又はメモリーアクセス命令を実行する、
ことを特徴とするシステム。
【請求項１６】
前記命令生成器は、
前記アドレスデータを前記アドレス範囲内の1又は複数のメモリーアドレスのセットと比較し、前記アドレスデータが前記メモリーアドレスのセットの１つと一致した場合にインデックス信号を生成する制御部、
前記インデックス信号を有するインデックス値のセットにより定められる低電力命令のパラメータのセットを有するテーブルを有するトランスレーター、
低電力命令のパラメータのセットの１つと前記メモリーアクセス命令の前記非アドレスデータとの組合せにより、前記低電力命令を生成する結合器、
を有する、
ことを特徴とする請求項1５記載のシステム。
【請求項１７】
前記オペレーティングシステム命令の実行は、オペレーティングシステムアプリケーションに前記メモリーアクセス命令を生成させる、
ことを特徴とする請求項１５に記載のシステム。
【請求項１８】
前記メモリーアクセス命令は、電力管理動作に対応するアドレスデータを有する入力／出力読み出し命令である、
ことを特徴とする請求項15に記載のシステム。
【請求項１９】
前記１又は複数のメモリーアドレスのセットは、一連のメモリーアドレスを有し、
少なくとも第１及び第２の値は、前記一連のメモリーアドレスを定め、
前記第１の値は、前記一連のメモリーアドレスの第１のメモリーアドレスを示すベースポインタ値を有し、
前記第２の値は、前記一連のメモリーアドレス内のメモリーアドレスの数を示す範囲値を有する、
ことを特徴とする請求項１６に記載のシステム。 
【請求項２０】
前記命令生成器は、
前記メモリーアクセス命令に対応する第１の信号と、前記結合器から前記低電力命令に対応する第２の信号とを受信し、前記制御部の制御下で前記コアへの出力のために前記メモリーアクセス命令と前記低電力命令のうちの１つを選択する、セレクター、
を有する、
ことを特徴とする請求項１６に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、実行命令を生成する装置、方法、システムに関する。
【背景技術】
【０００２】
電力管理動作は、例えば、コアクロック制御、アクティブ状態動作、アイドル状態制御、及び／又は例えば電力制御インターフェース（ＡＣＰＩ）仕様により定義されるような熱制御と関連する。
【０００３】
従来の計算機プラットフォームは、オペレーティングシステムを実行する。オペレーティングシステムは、起動されるべき動作を表すメモリーアドレスを示し入力／出力を割り付けられたトランザクションを生成することにより電力管理動作を起動可能である。
【非特許文献１】アドバンスド・コンフィグレーション・アンド・パワー・インターフェース・スペシフィケーション第２版（Advanced  Configuration  and  Power  Interface  (ACPI)  specification,  Revision  2.0）、２０００年７月２７日
【非特許文献２】Ａ−３２  Ｉｎｔｅｌ（登録商標）アーキテクチャ・ソフトウェア・デベロッパーズ・マニュアル  ボリューム２Ａ（IA-３２  Intel（登録商標）  Architecture  Software  Developer’s  Manual,  Volume  ２A）、インストラクション・セット・リファレンス  Ａ−Ｍ（Instruction  Set  Reference  A-M）、２００５年４月
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明の主題は、本願明細書で説明され、添付の請求の範囲で明確に請求される。
【図面の簡単な説明】
【０００５】
【図１】本発明の説明のための実施例による実行命令生成器を有する計算機プラットフォームのブロック図である。
【図２】本発明の説明のための実施例による実行命令生成器のブロック図である。
【図３】本発明の別の説明のための実施例による実行命令生成器のブロック図である。
【図４】本発明の説明のための実施例による実行命令を生成する方法のフローチャート図である。
【発明を実施するための形態】
【０００６】
本発明は、装置、特徴及びその利点に加え、構成及び動作方法の両方に関連し、添付の図面と共に以下の詳細な説明を参照することにより理解される。
【０００７】
説明を簡単且つ明瞭にするため、図中に示される構成要素は縮尺通りに描かれる必要はないことが理解されるだろう。例えば、明瞭さのために、一部の構成要素の大きさは、他の構成要素に比較して強調され得る。更に、適切と見なされる参照符号は、複数の図で繰り返し利用され同一の又はアナログ構成要素を示し得る。
【０００８】
以下の詳細な説明では、本発明の完全な理解を提供するために、多くの詳細事項が説明される。しかしながら、当業者は、本発明がこれら詳細事項にかかわらず実施されて良いことを理解するだろう。他の例では、良く知られた方法、手順、構成要素及び回路は、本願明細書の理解を不必要に不明瞭にすることを避けるため、詳細に示されない。
【０００９】
特に明記されない限り、以下の説明から明らかなように、本願明細書を通じて「処理」、「演算」「計算」、「決定」等のような語を用いる議論は、コンピューターシステムのレジスタ及び／又はメモリー内の電子のような物理量として表されたデータを操作及び／又は同様にコンピューターシステムのメモリー、レジスタ又は他の類似の情報記憶、送信又は表示装置内の物理量として表される他のデータへ変換するコンピューター又はコンピューターシステム、又は類似の電子計算機装置の動作及び／又は処理に関連することが理解されるだろう。更に、「複数の」という語は、本願明細書を通じて２つ以上の部品、装置、要素、パラメータ等を記述するために利用され得る。
【００１０】
本願明細書で用いられる「メモリーアクセス命令」という表現は、指示、命令、指令、及び／又は例えば１つ以上のメモリーアドレスへの書き込み又は読み出しによる１つ以上のメモリーアドレスへアクセスする機能に関連する。本発明のいくつかの説明のための実施例では、メモリーアクセス命令は、例えば従来知られるような入力／出力（Ｉ／Ｏ）に割り付けられたトランザクション命令を有して良い。本発明のいくつかの説明のための実施例では、メモリーアクセス命令は、オペレーティングシステム（ＯＳ）及び／又は如何なる他の適切なモジュールにより生成されて良い。また、メモリーアクセス命令は、例えば、非特許文献１により定義されるようなＩ／Ｏを割り付けられた命令を有して良い。メモリーアクセス命令は、所望の動作、例えばコアクロック制御動作、アクティブ状態制御動作（「Ｐ状態動作」とも称される）、アイドル状態制御動作（「Ｃ状態動作」とも称される）、熱制御動作、及び／又は如何なる他の実行されるべき適切な動作、例えば電力管理制御体系のような制御体系の一部、及び／又はＡＣＰＩ仕様により定義されるような電力最適化制御体系を示して良い。例えば、メモリーアクセス命令は、所望の動作を表し得るメモリーアドレスに対応するアドレスデータを有して良い。
【００１１】
本願明細書で用いられる「実行命令」という表現は、指示、命令、指令、及び／又はプロセッサーにより、例えばプロセッサーの１つ以上の論理要素により実行可能な種類及び／又はフォーマットの機能に関連する。本発明のいくつかの説明のための実施例では、実行命令は、例えば非特許文献２により定義されるようなＭｏｎｉｔｏｒ  Ｗａｉｔ(ＭＷＡＩＴ)命令を有して良い。ＩＭＷＡＩＴ命令は、例えば所望のＣ状態動作と関連して良い。例えば、ＭＷＡＩＴ命令は、所望のＣ状態動作を表す目的のＣ状態パラメータを有して良い。例えば、ＡＣＰＩ仕様に定義されたように、Ｃ−１状態は実行可能な状態と関連し、Ｃ−２状態は低省電力状態と関連し、Ｃ−３状態は媒体省電力状態と関連し、Ｃ−４状態は高省電力状態と関連して良い。
【００１２】
本発明のいくつかの説明のための実施例は、以下に詳細に説明されるように、受信したメモリーアクセス命令のアドレスデータに基づき所定の実行可能なフォーマットの実行命令を生成する装置、システム、及び／又は方法を有する。本発明のいくつかの説明のための実施例では、例えば以下に説明されるように、メモリーアドレス命令は、少なくとも部分的に実行命令に変換されて良い。
【００１３】
図１を参照する。図１は、本発明のいくつかの説明のための実施例による計算機プラットフォーム１００のブロック図である。
【００１４】
本発明のいくつかの実施例では、計算機プラットフォーム１００は、例えばバッテリーのような携帯型電源により電力を供給される携帯型計算機プラットフォームを有するか又はそのような携帯型計算機プラットフォームであって良い。本発明の他の実施例では、計算機プラットフォーム１００は、非携帯型計算機プラットフォームを有するか又は非携帯型計算機プラットフォームであって良い。
【００１５】
本発明は、この態様に限定されない。プラットフォーム１００は、例えばパーソナルコンピューター、デスクトップコンピューター、モバイルコンピューター、ラップトップコンピューター、ノートブックコンピューター、端末、ワークステーション、サーバーコンピューター、パーソナルデジタルアシスタント（ＰＤＡ）機器、タブレットコンピューター、ネットワーク機器、マイクロコントローラー、携帯電話、カメラ、又は如何なる他の適切な計算及び／又は通信機器を有するか又はそれらであって良い。
【００１６】
本発明のいくつかの説明のための実施例では、プラットフォーム１００は、プロセッサー１０２を有して良い。プロセッサー１０２は、例えば中央演算処理装置（ＣＰＵ）、デジタルシグナルプロセッサー（ＤＳＰ）、マイクロプロセッサー、ホストプロセッサー、複数のプロセッサー、コントローラー、チップ、マイクロチップ、又は如何なる他の適切な多目的又は特定用途のプロセッサー又はコントローラーを有して良い。プロセッサー１０１は、従来知られるように、例えば１つ以上の算術演算処理ユニット（ＡＬＵ）を有するプロセッサーコア１０４を有して良い。
【００１７】
本発明のいくつかの説明のための実施例では、プラットフォーム１００はまた、入力装置１１８、出力装置１２０、メモリー装置１１４、及び／又は記憶装置１２２を有して良い。プラットフォーム１００は、他の適切なハードウェア構成要素及び／又はソフトウェア構成要素を更に有して良い。
【００１８】
入力装置１１８は、例えばキーボード、マウス、タッチパッド、又は他の適切な指示装置又は入力装置を有して良い。出力装置１２０は、例えば陰極線管（ＣＲＴ）モニター、液晶ディスプレイ（ＬＣＤ）モニター、又は他の適切なモニター又は表示装置を有して良い。
【００１９】
記憶装置１２２は、例えばハードディスクドライブ、フロッピー（登録商標）ディスクドライブ、コンパクトディスク（ＣＤ）ドライブ、データ書き込み可能なＣＤ（ＣＤ−Ｒ）ドライブ、又は他の適切な取り外し可能な及び／又は固定式の記憶装置を有して良い。
【００２０】
メモリー装置１１４は、例えばランダムアクセスメモリー（ＲＡＭ）、読み出し専用メモリー（ＲＯＭ）、ダイナミックＲＡＭ（ＤＲＡＭ）、同期ＤＲＡＭ（ＳＤ−ＲＡＭ）、フラッシュメモリー、揮発性メモリー、不揮発性メモリー、キャッシュメモリー、バッファ、短期記憶装置、長期記憶装置、又は他の適切なメモリー装置又は記憶装置を有して良い。
【００２１】
本発明のいくつかの説明のための実施例では、メモリー装置１１４は、例えば１つ以上のＯＳ命令１１６を格納して良い。プロセッサー１０２により実行されると、例えば従来知られるように、ＯＳ命令１１６は、結果としてＯＳアプリケーション１０８を実行して良い。ＯＳ１０８は、例えばＡＣＰＩ仕様に従う例えば電力管理制御体系として、少なくとも１つのメモリーアクセス命令１１０を生成して良い。メモリーアクセス命令１１０は、例えば、所定の動作を表し得る、例えばメモリー１１４のメモリーアドレスに対応するアドレスデータを有するＩ／Ｏ読み出し命令を有して良い。所定の動作は、例えば、Ｃ状態動作のような電力管理／最適化動作を有して良い。従って、アドレスデータは、実行されるべきＣ状態動作を表すメモリー１１４のアドレスデータに対応して良い。
【００２２】
本発明のいくつかの説明のための実施例では、プロセッサー１０２は、実行命令生成器１０６を有して良い。実行命令生成器１０６は、例えばプロセッサーコア１０４により実行可能な所定のフォーマットの実行命令１１２をメモリーアクセス命令１１０のアドレスデータに基づき生成する。例えば、命令生成器１０６は、例えば以下に説明されるように、メモリーアクセス命令１１０のアドレスデータに対応するＭＷＡＩＴ命令を生成して良い。
【００２３】
本発明の態様は、計算機プラットフォームの説明のための実施例を参照し本願明細書に説明される。例えば、計算機プラットフォーム１００のような計算機プラットフォームは、生成器１０６のような命令生成器を有し、命令生成器１０６はプロセッサー１０２のようなプロセッサーの一部である。しかしながら、当業者は、本発明の他の実施例により、命令生成器及びプロセッサーは計算機プラットフォームの別個の部品であって良いことを理解するだろう。
【００２４】
図２を参照する。図２は、本発明の説明のための実施例による命令生成器２００のブロック図である。本発明はこの態様に限定されず、命令生成器２００は命令生成器１０６（図１）の機能を実行して良い。
【００２５】
本発明のいくつかの説明のための実施例では、命令生成器２００は、命令キャプチャーモジュール２０４を有し、受信したメモリーアクセス命令信号２０２を取り込んで（「フラグを設定して」）良い。メモリーアクセス命令信号２０２は、例えば、メモリー１１４（図１）のアドレスに対応するアドレスデータを有して良い。メモリーアクセス命令信号２０２はまた、例えば命令データ、及び／又は従来知られた命令パラメータを有する如何なる適切な非アドレスデータを有して良い。命令キャプチャーモジュール２０４は、実質的にメモリーアクセス命令信号２０２と同一の信号２０６、及び命令信号２０２のアドレスデータを有する信号２２８を生成して良い。キャプチャーモジュール２０４はまた、命令信号２０２の非アドレスデータの少なくとも一部を有する信号２０８を生成して良い。
【００２６】
本発明のいくつかの説明のための実施例では、以下に説明されるように、命令生成器２００は、例えばプロセッサーコア１０４（図１）に提供されるべき命令信号２１０をメモリーアクセス命令信号２０２のアドレスデータに基づき生成して良い。
【００２７】
本発明のいくつかの説明のための実施例では、以下に説明されるように、命令生成器２００は、メモリーアクセス命令２０２、又はメモリーアクセス命令２０２のアドレスデータに対応する実行命令２１４の何れかを有する命令信号２１０を、メモリーアクセス命令２０２のアドレスデータに基づき選択的に生成して良い。
【００２８】
本発明のいくつかの説明のための実施例によると、以下に説明されるように、命令生成器２００はまた、制御部２２６、トランスレーター２２２、結合器２１８、及び／又はセレクター２１２を有して良い。
【００２９】
本発明のいくつかの例である実施例によると、以下に説明されるように、制御部２２６は、メモリーアクセス命令２０２のアドレスデータが１つ以上の所定の実行命令に対応するかを決定して良い。
【００３０】
本発明のいくつかの例である実施例によると、制御部２２６は、信号２２８のアドレスデータを１つ以上の所定の実行命令に対応する１つ以上のメモリーアドレスのセットの所定のアドレスデータと比較して良い。例えば、１つ以上の所定の実行命令は、例えばメモリー１１４（図１）の一連のメモリーアドレスにより表されて良い。一連のメモリーアドレスは、例えば一連のメモリーアドレスの第１のメモリーアドレスに対応するベースポインタ値２３０、及び一連の複数のアドレスに対応する範囲値２３２により決定されて良い。当業者は、本発明の他の実施例では、一連のメモリーアドレスは如何なる他の適切な方法により決定されて良いことを理解するだろう。例えば、一連のメモリーアドレスは、ベースポインタ値２３０及び一連のアドレスの最後のアドレスに対応するエンドポインタにより決定されて良い。
【００３１】
本願明細書では、本発明のいくつかの説明のための実施例は、一連のメモリーアドレスにより表される１つ以上の実行命令と関連して説明されるが、当業者は、本発明の他の実施例では１つ以上の実行命令がメモリーアドレスの如何なる他の所望の構成、例えばメモリーアドレスの不連続のセットにより表されて良いことを理解するだろう。
【００３２】
本発明のいくつかの説明のための実施例によると、制御部２２６は、信号２２８のアドレスデータをベースポインタ値２３０及び／又は範囲値２３２と比較して良い。制御部２２６は、メモリーアクセス命令２０２が所定の実行命令の１つに対応するかを、例えば信号２２８のメモリーアドレスデータとベースポインタ値２３０及び／又は範囲値２３２との間の比較に基づき決定して良い。例えば、信号２２８のアドレスデータが、ベースポインタ値２３０と等しい又は大きく、且つベースポインタ値２３０と範囲値２３２の和に等しい又は小さいアドレス値に対応する場合、制御部２２６は、メモリーアクセス命令２０２が所定の実行命令の１つに対応すると決定して良い。
【００３３】
本発明のいくつかの説明のための実施例によると、以下に説明されるように、例えば、制御部２２６がメモリーアクセス命令２０２は所定の実行命令の１つに対応すると決定した場合、命令生成器２００は、信号２２８のアドレスデータにより表される動作に対応する少なくとも１つの実行命令パラメータ２２７を決定可能であって良い。
【００３４】
本発明のいくつかの説明のための実施例によると、トランスレーター２２２は、メモリーアクセス信号２０２により表されるメモリーアドレスを実行命令パラメータ２２７へ変換して良い。例えば、トランスレーター２２２は、例えばＣ状態パラメータのような、インデックス値２２９のセットにより識別される所定の実行命令パラメータ２２７のセットを有する、例えばルックアップテーブル（ＬＵＴ）２２３のような表を有して良い。制御部２２６は、例えば信号２０２のメモリーアドレスに対応する、実行命令パラメータを示すインデックス値２２９の１つに対応する値を有するインデックス信号２２４を生成して良い。例えば、パラメータ２２７は、パラメータ２２７に対応する実行命令を表すメモリーアドレスの順序に従い配置されて良い。この例によると、インデックス値２２９は、所定の一連の値、例えば１、２、３、．．．のシーケンスを有して良い。従って、制御部２２６は、信号２２８のアドレス値とベースポインタ値２３０の差分に対応する値を有するインデックス信号２２４を生成して良い。
【００３５】
本発明の１つの説明のための実施例では、１つ以上の所定の実行命令は、一連のＮ個のメモリーアドレス、例えばそれぞれｎ、ｎ＋１、ｎ＋２、．．．、ｎ＋Ｎ−１により表されるＮ個の実行命令を有して良い。従って、表２２３は、値ｉ、ｉ＋１、ｉ＋２、．．．、ｉ＋Ｎ−１を有するＮ個の対応するインデックス値２２９により識別されるＮ個の命令パラメータ２２７を有して良い。ここで、ｉは、例えばｉ＝１又は如何なる他の所望の値である。従って、制御部２２６は、例えば値ｊ＝ｍ−ｂｐ＋ｉを有するインデックス信号２２４を生成して良い。ここでｍは信号２２８のメモリーアドレスを表し、ｂｐはベースポインタ値２３０を表す。
【００３６】
本発明のいくつかの説明のための実施例によると、結合器２１８は、実行命令パラメータ２２０を信号２０８の非アドレスデータと結合することにより、実行命令２１４を生成して良い。結合器２１８は、例えばパラメータ２２７の種類及び／又は信号２０８の非アドレスデータに従い、如何なる適切な結合方法を実施して良い。
【００３７】
本発明のいくつかの説明のための実施例によると、制御部２２６は、例えば制御信号２１６を用いセレクター２１２を制御し、実行命令２１４又は信号２０６のメモリーアクセス命令の何れかを有する命令信号２１０を選択的に生成して良い。例えば制御部２２６がメモリーアクセス命令２０２のメモリーアドレスデータは所定の実行命令の１つに対応すると決定した場合、例えば、制御信号２１６は、実行命令２１４を有する命令信号２１０を生成するようセレクター２１２を制御して良い。及び、例えば制御部２２６がメモリーアクセス命令２０２のメモリーアドレスデータは所定の実行命令の何れにも対応しないと決定した場合、制御信号２１６は、メモリーアクセス命令２０２を有する命令信号２１０を生成するようセレクター２１２を制御して良い。
【００３８】
再び図１を参照する。本発明のいくつかの説明のための実施例では、プロセッサーコア１０４は、例えば、対応するＣ状態動作を起動するために、１つ以上のＭＷＡＩＴ命令を実行可能であって良い。ＭＷＡＩＴ命令は、例えばＡＣＰＩ仕様に従い、目的のＣ状態に関連するＭＷＡＩＴ（Ｔａｒｇｅｔ  Ｃ状態）命令を有して良い。本発明のこれらの説明のための実施例では、例えば以下に説明されるように、命令生成器１０６は、メモリーアクセス命令１１０により表される目的のＣ状態に対応するＭＷＡＩＴ（Ｔａｒｇｅｔ  Ｃ状態）を有する実行命令１１２を生成可能であって良い。
【００３９】
図３を参照する。図３は、本発明の別の説明のための実施例による命令生成器３００のブロック図である。本発明はこの態様に限定されず、命令生成器３００は命令生成器１０６（図１）の機能を実行して良い。
【００４０】
本発明のいくつかの説明のための実施例によると、命令生成器３００は、例えばプロセッサーコア１０４（図１）に提供されるべき命令信号３１０をメモリーアクセス命令信号３０２のアドレスデータに基づき生成して良い。  本発明のいくつかの説明のための実施例では、以下に説明されるように、命令生成器３００は、メモリーアクセス命令３０２、又はメモリーアクセス命令３０２のアドレスデータに対応するＭＷＡＩＴ命令３１４の何れかを有する命令信号３１０をメモリーアクセス命令３０２のアドレスデータに基づき選択的に生成して良い。
【００４１】
本発明のいくつかの説明のための実施例では、命令生成器３００は、メモリーアクセス命令信号３０２のフラグを設定する命令キャプチャーモジュール３０４を有して良い。メモリーアクセス命令信号３０２は、例えばメモリー１１４（図１）のアドレスに対応するアドレスデータを有して良い。命令キャプチャーモジュール３０４は、実質的にメモリーアクセス命令信号３０２と同一の信号３０６、及び命令信号３０２のアドレスデータを有する信号３２８を生成して良い。
【００４２】
本発明のいくつかの説明のための実施例によると、以下に説明されるように、命令生成器３００はまた、制御部３２６、トランスレーター３２２、及び／又はセレクター３１２を有して良い。
【００４３】
本発明のいくつかの説明のための実施例によると、例えば以下に説明されるように、制御部３２６は、メモリーアクセス命令３０２のアドレスデータが１つ以上の所定のＭＷＡＩＴ命令にそれぞれ対応するかを決定して良い。
【００４４】
本発明のいくつかの例である実施例によると、制御部３２６は、信号３２８のアドレスデータを１つ以上のＭＷＡＩＴ命令に対応する１つ以上のメモリーアドレスのセットの所定のアドレスデータと比較して良い。ある説明のための実施例では、１つ以上のＭＷＡＩＴ命令は、例えばメモリー１１４（図１）の一連のメモリーアドレスにより表されて良い。一連のメモリーアドレスは、例えばＣ−２状態動作を表すメモリーアドレスに対応するレベル２のベースポインタ（「ＬＶＬ２Ｂ」）値３３０、及び一連のメモリーアドレスの複数のアドレスに対応するＣ状態範囲（「ＣＳＴ＿ＲＡＮＧＥ」）値３３２により決定されて良い。
【００４５】
本発明のいくつかの説明のための実施例によると、制御部３２６は、メモリーアクセス命令３０２がＭＷＡＩＴ命令の１つに対応するかを、例えば信号３２８のメモリーアドレスデータとＬＶＬ２Ｂ値３３０及び／又はＣＳＴ＿ＲＡＮＧＥ値３３２との間の比較に基づき決定して良い。例えば、信号３２８のアドレスデータがＬＶＬ２Ｂ値３３０と等しい又は大きく、且つＬＶＬ２Ｂ値３３０とＣＳＴ＿ＲＡＮＧＥ値３３２の和に等しい又は小さいアドレス値に対応する場合、制御部２２６は、メモリーアクセス命令３０２がＭＷＡＩＴ命令の１つに対応すると決定して良い。
【００４６】
本発明のいくつかの説明のための実施例によると、トランスレーター３２２は、メモリーアクセス命令３０２により表されるメモリーアドレスをＭＷＡＩＴ命令３１４へ変換して良い。例えば、制御信号３２６は、メモリーアクセス命令３０２のメモリーアドレスデータにより表されるＣ状態パラメータを示す値を有するインデックス信号３２４を生成して良い。またトランスレーター３２２は、ＭＷＡＩＴ命令３１４をインデックス信号３２４に基づき生成して良い。
【００４７】
本発明の１つの説明のための実施例では、１つ以上のＭＷＡＩＴ命令は、Ｎ’個のメモリーアドレス、例えばそれぞれｎ’、ｎ’＋１、ｎ’＋２、．．．、ｎ’＋Ｎ’−１のシーケンスにより表されるＮ’個のＭＷＡＩＴ命令を有して良い。例えば、ＭＷＡＩＴ命令は、それぞれ状態Ｃ−２、Ｃ−３、Ｃ−４に対応する３個のＭＷＡＩＴ命令を有して良い。従って、制御部３２６は、例えば値ｍ’−Ｌを有するインデックス信号３２４を生成して良い。ここでｍ’は信号３２８のメモリーアドレスを表し、ＬはＬＶＬ２Ｂ値３３０を表す。トランスレーター３２２は、状態ｊ’＋２に対応するＭＷＡＩＴ命令３１４を生成して良い。ここでｊ’はインデックス３２４の値を表す。
【００４８】
本発明のいくつかの説明のための実施例によると、制御部３２６は、例えば制御信号３１６を用い、ＭＷＡＩＴ命令３１４又は信号３０６のメモリーアクセス命令の何れかを有する命令信号３１０を選択的に生成するよう、セレクター３１２を制御して良い。例えば、制御部３２６がメモリーアクセス命令３０２のメモリーアドレスデータは所定のＭＷＡＩＴ命令の１つに対応すると決定した場合、例えば、制御部３２６は、実行命令３１４を有する命令信号３１０を生成するようセレクター３１２を制御して良い。及び、例えば制御部３２６がメモリーアクセス命令３０２のメモリーアドレスデータは所定の実行命令の何れにも対応しないと決定した場合、制御部３２６は、メモリーアクセス命令３０２を有する命令信号３１０を生成するようセレクター３１２を制御して良い。
【００４９】
本発明の範囲はこの態様に限定されない。本発明のいくつかの説明のための実施例は、例えば命令生成器３００のような命令生成器に関連し得る。命令生成器３００は、例えば電力最適化体系、及び／又は電力管理体系のような１つ以上の省エネルギー体系に従い実行命令を生成可能である。しかしながら、当業者には、本発明の他の実施例は、例えば従来知られた温度体系、周波数体系、及び／又は電圧スケーリング体系のような如何なる他の適切な体系に従う実行命令を生成可能である実行命令生成器を有し得ることが、明らかであろう。
【００５０】
図４を参照する。図４は、本発明のいくつかの説明のための実施例による実行命令を生成する方法の説明図である。
【００５１】
ブロック４０２に示されるように、本方法は、所定の実行可能なフォーマットの実行命令を、メモリーアドレスを表す受信したメモリーアクセス命令のアドレスデータに基づき生成する段階を有する。実行命令を受信したメモリーアクセス命令のアドレスデータに基づき生成する段階は、例えば、メモリーアドレスにアクセスするための受信した入力／出力に割り付けられた命令のアドレスデータに基づき、実行命令を生成する段階を有して良い。
【００５２】
ブロック４０４に示されるように、実行命令を生成する段階は、例えば、実行命令をアドレスデータに基づき選択的に生成する段階を有して良い。ブロック４０６に示されるように、例えば、本方法は、メモリーアクセス命令のアドレスデータを１つ以上の所定の実行命令に対応する１つ以上のメモリーアドレスのセットの所定のアドレスデータと比較する段階を有して良い。ブロック４０８に示されるように、本方法はまた、例えば、メモリーアクセス命令のアドレスデータがメモリーアドレスのセットの１つのアドレスデータと一致する場合、実行命令を生成する段階を有して良い。ブロック４１５に示されるように、本方法は、例えば、メモリーアクセス命令のアドレスデータがメモリーアドレスのセットの１つのアドレスデータと一致しない場合、メモリーアクセス命令を選択する段階を有して良い。
【００５３】
ブロック４１０に示されるように、実行命令を生成する段階は、実行命令の１つ以上のパラメータをアドレスデータに基づき決定する段階を有して良い。
【００５４】
ブロック４１２に示されるように、実行命令を生成する段階は、実行命令の１つ以上のパラメータをメモリーアクセス命令の非アドレスデータと結合する段階を有して良い。
【００５５】
本発明の実施例は、ソフトウェアにより、ハードウェアにより、ファームウェアにより、又は特定用途に適した又は特定の設計要件に従うソフトウェア、ハードウェア、及び／又はファームウェアの如何なる組み合わせにより、実施されて良い。本発明の実施例は、全部又は一部を互いに分離され又は共に結合され得る、又は特定用途の、多目的又は汎用プロセッサー、又は従来知られた装置を用いて実施され得る、装置及びサブユニットを有して良い。本発明のいくつかの実施例は、データの一時的又は長期記憶のための及び／又は特定の実施例の動作を実施するための、バッファ、レジスタ、記憶装置及び／又はメモリー装置を有して良い。
【００５６】
本願明細書は、本発明の特定の特徴を図示及び説明したが、多くの変形、置換、変更、及び同等のものがなされ得ることが当業者に明らかであろう。従って、添付の請求の範囲は、本発明の真の精神に含まれる全てのこのような変形及び変更を包含すると見なされる。
【符号の説明】
【００５７】
１００  計算機プラットフォーム
１０２  プロセッサー
１０４  プロセッサーコア
１０６  実行命令生成器
１０８  ＯＳアプリケーション
１１０  メモリーアクセス命令
１１２  実行命令
１１４  メモリー
１１６  ＯＳ命令
１１８  入力装置
１２０  出力装置
１２２  記憶装置
２００  命令生成器
２０２  メモリーアクセス命令信号
２０４  命令キャプチャーモジュール
２１２  セレクター
２１８  結合器
２２２  トランスレーター
２２６  制御部
３０４  命令キャプチャーモジュール
３１２  セレクター
３２２  トランスレーター
３２６  制御部
【図１】
2011134340.tif 000003
【図２】
2011134340.tif 000004
【図３】
2011134340.tif 000005
【図４】
2011134340.tif 000006