コンピュータプロセッサ上で論理演算を実行する方法であり、2以上のソースオペランドのそれぞれからデータを読み込む段階と、前記ソースオペランドから読み込んだ前記データを組み合わせ、命令と関連付けられた即値内のビットのサブセットを特定する指標値を生成する段階と、前記即値から、前記指標値により識別される前記ビットのサブセットを読み込む段階と、前記即値から読み込まれた前記ビットを宛先レジスタ内に格納し、前記命令の結果を生成する段階とを備える、方法。前記ソースオペランドから読み込んだ前記データを組み合わせ、命令と関連付けられた即値内のビットのサブセットを特定する指標値を生成する段階は、各ソースオペランドの対応するビット位置から読み込んだビットを連結し、前記指標値を生成する段階を有し、前記指標値は、前記即値内のビット位置を識別する対応するビット位置からの連結されたビットの各セットからなる、請求項1に記載の方法。前記即値の識別された前記ビット位置から前記ビットを読み込む段階と、各ソースオペランドから読み込んだ前記ビットの前記ビット位置に対応する前記宛先レジスタ内のビット位置に前記結果を格納する段階とをさらに備える、請求項2に記載の方法。前記ソースオペランドはNビットのソースレジスタに格納されており、前記宛先レジスタはNビットの宛先レジスタであり、前記ビットを連結し、前記指標値を生成する段階は、前記ソースオペランドから並行してN個のビットの全てを読み込み、前記即値のN個の指標を形成する段階と、前記N個の指標を用い、前記即値内のN個のビット位置を識別する段階と、前記即値から前記宛先レジスタへN個のインデックス付きのビットの全てを並行してコピーし、前記論理演算の前記結果を生成する段階とをさらに有する、請求項1から3のいずれか1項に記載の方法。Nは64に等しい、請求項4に記載の方法。前記ソースオペランドは3つあり、前記即値は8ビットであり、前記3つのソースオペランドのうちそれぞれの対応するビット位置から読み込んだビットを連結し、前記指標値を生成する段階をさらに備え、前記指標値は、8ビットの前記即値内のビット位置を識別する対応するビット位置からの3つの連結されたビットの各セットからなる、請求項1から5のいずれか1項に記載の方法。前記即値は、前記命令によって送信された8ビットの値である、請求項1から6のいずれか1項に記載の方法。前記8ビットの値はimm8値である、請求項7に記載の方法。前記即値は、前記命令によって送信された16ビットの値である、請求項1から8のいずれか1項に記載の方法。命令を処理する装置であり、命令を復号化し、前記命令によって実行される論理演算を識別する復号化ユニットと、動作を実行することにより、前記論理演算を実行する実行ユニットとを備え、前記動作は、2以上のソースオペランドのそれぞれからデータを読み込むことと、前記ソースオペランドから読み込んだ前記データを組み合わせ、命令と関連付けられた即値内のビットのサブセットを特定する指標値を生成することと、前記指標値により識別される前記即値から前記ビットのサブセットを読み込むことと、前記即値から読み込まれた前記ビットを宛先レジスタ内に格納し、前記命令の結果を生成することとを含む、装置。前記ソースオペランドから読み込んだ前記データを組み合わせ、命令と関連付けられた即値内のビットのサブセットを特定する指標値を生成することは、各ソースオペランドの対応するビット位置から読み込んだビットを連結し、前記指標値を生成することを含み、前記指標値は、前記即値内のビット位置を識別する対応するビット位置からの連結されたビットの各セットからなる、請求項10に記載の装置。前記実行ユニットが実行する前記動作は、前記即値の識別された前記ビット位置から前記ビットを読み込むことと、各ソースオペランドから読み込んだ前記ビットの前記ビット位置に対応する前記宛先レジスタ内のビット位置に前記結果を格納することとをさらに含む、請求項11に記載の装置。前記ソースオペランドはNビットのソースレジスタに格納されており、前記宛先レジスタはNビットの宛先レジスタであり、前記ビットを連結し、前記指標値を生成することは、前記ソースオペランドから並行してN個のビットの全てを読み込み、前記即値のN個の指標を形成することと、前記N個の指標を用い、前記即値内のN個のビット位置を識別することと、前記即値から前記宛先レジスタへN個のインデックス付きのビットの全てを並行してコピーし、前記論理演算の前記結果を生成することとをさらに含む、請求項10から12のいずれか1項に記載の装置。Nは64に等しい、請求項13に記載の装置。前記ソースオペランドは3つあり、前記即値は8ビットであり、前記実行ユニットが実行する前記動作は、前記3つのソースオペランドのうちそれぞれの対応するビット位置から読み込んだビットを連結し、前記指標値を生成することをさらに含み、前記指標値は、8ビットの前記即値内のビット位置を識別する対応するビット位置からの3つの連結されたビットの各セットからなる、請求項10から14のいずれか1項に記載の装置。前記即値は、前記命令によって送信された8ビットの値である、請求項10から15のいずれか1項に記載の装置。前記8ビットの値はimm8値である、請求項16に記載の装置。前記即値は、前記命令によって送信された16ビットの値である、請求項10から17のいずれか1項に記載の装置。コンピュータシステムであり、ディスプレイと、命令を格納するメモリと、前記命令を処理するプロセッサとを備え、前記プロセッサは、命令を復号化し、前記命令によって実行される論理演算を識別する復号化ユニットと、動作を実行することにより、前記論理演算を実行する実行ユニットとを有し、前記動作は、2以上のソースオペランドのそれぞれからデータを読み込むことと、前記ソースオペランドから読み込んだ前記データを組み合わせ、命令と関連付けられた即値内のビットのサブセットを特定する指標値を生成することと、前記指標値により識別される前記即値から前記ビットのサブセットを読み込むことと、前記即値から読み込まれた前記ビットを宛先レジスタ内に格納し、前記命令の結果を生成することと、を含むコンピュータシステム。前記ソースオペランドから読み込んだ前記データを組み合わせ、命令と関連付けられた即値内のビットのサブセットを特定する指標値を生成することは、各ソースオペランドの対応するビット位置から読み込んだビットを連結し、前記指標値を生成することを含み、前記指標値は、前記即値内のビット位置を識別する対応するビット位置からの連結されたビットの各セットからなる、請求項19に記載のコンピュータシステム。前記実行ユニットが実行する前記動作は、前記即値の識別された前記ビット位置から前記ビットを読み込むことと、各ソースオペランドから読み込んだ前記ビットの前記ビット位置に対応する前記宛先レジスタ内のビット位置に前記結果を格納することとをさらに含む、請求項20に記載のコンピュータシステム。前記ソースオペランドはNビットのソースレジスタに格納されており、前記宛先レジスタはNビットの宛先レジスタであり、前記ビットを連結し、前記指標値を生成することは、前記ソースオペランドから並行してN個のビットの全てを読み込み、前記即値のN個の指標を形成することと、前記N個の指標を用い、前記即値内のN個のビット位置を識別することと、前記即値から前記宛先レジスタへN個のインデックス付きのビットの全てを並行してコピーし、前記論理演算の前記結果を生成することとをさらに含む、請求項19から21のいずれか1項に記載のコンピュータシステム。Nは64に等しい、請求項22に記載のコンピュータシステム。前記ソースオペランドは3つあり、前記即値は8ビットであり、前記実行ユニットが実行する前記動作は、前記3つのソースオペランドのうちそれぞれの対応するビット位置から読み込んだビットを連結し、前記指標値を生成することをさらに含み、前記指標値は、8ビットの前記即値内のビット位置を識別する対応するビット位置からの3つの連結されたビットの各セットからなる、請求項19から23のいずれか1項に記載のコンピュータシステム。前記即値は、前記命令によって送信された8ビットの値である、請求項19から24のいずれか1項に記載のコンピュータシステム。前記8ビットの値はimm8値である、請求項25に記載のコンピュータシステム。前記即値は、前記命令によって送信された16ビットの値である、請求項19から26のいずれか1項に記載のコンピュータシステム。以下において、説明を目的とし、以下に説明される本願発明の実施形態がより良く理解されるように、様々な特定的な詳細が示される。しかし、当業者であれば、本願発明の実施形態が、それら特定的な詳細のうちいくつかがなくても実施されることを理解されよう。他の例においては、周知の構造およびデバイスが、本願発明の実施形態の基本的な原理を曖昧にすることを避けるべく、ブロック図の形態で示される。即値とは、命令に関連付けられた例えば、命令の一部として明示的に含まれている、若しくは命令と組み合わせられたバイナリ値である。x86命令セットに関連付けられた即値で周知のものとしては、imm8の符号が与えられる8ビットの即値がある。命令の即値は、命令と共にコンパイル時に生成される。以下に説明する本願発明の実施形態ではimm8またはimm16の即値を用いるが、本願発明の基本的な原理は、特定のタイプの即値に限定されない。実際、本願発明の基本的な原理は、命令に関連付けられたあらゆるタイプのバイナリコードを用いて実装することが出来る。本願発明の一実施形態において、例えば、AND、NAND、XOR、反転、選択、投票など異なる論理演算を識別するのに異なる即値が用いられる。本実施形態において、命令のソースオペランドからの特定のビットが組み合わせられ、当該命令の即値内のビット位置を識別する指標値が生成される。識別されたビット位置から読み込まれるビットはその後、宛先レジスタにおいて組み合わせられ、論理演算の結果が得られる。言い換えると、即値は、各論理演算の結果を得るべく、ルックアップテーブルとして用いられる。図1は、1つの特定的な例を示す。本例において、ソースレジスタ1src1102、ソースレジスタ2src2101および宛先レジスタdest100に格納される3つのオペランドからビットが読み込まれ、即値110内のビット位置を識別する指標105が生成される。識別されたビット位置にあるバイナリ値はその後、宛先レジスタ100へとコピーされる。説明を目的としてこの特定的なレジスタ構成を用いているが、本願発明の基本的な原理は特定の組のレジスタに限定されない。例えば、ソースオペランドの格納に宛先レジスタを用いるのではなく、例えば、ソースレジスタ3など専用の第3のソースレジスタを用いてもよい。図1に示す特定的な例において、宛先レジスタ100およびソースレジスタ101、102の第1ビット位置からのビットを最初に読み込み、実線矢印で示される指標010を生成する。一実施形態において、指標は、3つのソース値のビット毎の連結により生成される。指標010は、即値110のビット位置2を識別するつまり、バイナリ値010は、2に等しい。示されるように、ビット位置2からのビットをその後、即値から読み込み示される例においてはバイナリ値1、宛先レジスタの第1ビット位置に格納する。全てのビットが読み込まれ、指標付きのビット値が即値から宛先レジスタへコピーされるまで、同じ処理が、各ソースオペランドのそれぞれのビットに関して実行される。例えば図1に示すように、110という指標値が宛先レジスタおよびソースレジスタの第2ビット位置からのビットを用いて生成され、この指標値を用いてビット位置6における即値の指標付けをするつまり、バイナリ値110は6に等しい。ビット位置6からのビットがその後、即値バイナリ値0から読み込まれ、宛先レジスタの第2ビット位置に格納される。図2は、本願発明の一実施形態に係る方法を示す。201において、例えば、dest、src1、src2などのオペランドレジスタの指定されたビット位置から値が読み込まれる。複数の組の値を、同時に平行して複数の指標値から読み込んでよい。202において、それらの値を組み合わせて即値の指標を生成し、203において、その指標を用いて即値内のビット位置を識別する。上述したように、一実施形態において、ソースオペランドの対応するビット位置からのビットが連結され、即値の指標が生成される。204において、指標値によって識別されるビット位置における値を読み込み、205において、指標付けされたビット位置からの値を宛先レジスタへコピーする。上記の技術を用いることにより、異なる即値を指定し、異なる論理演算を実行することが出来る。例としてであり、限定を意味するわけではないが、以下のようなタイプの演算を、以下の即値を用いて実行することが出来る。1.全ての結果を1に設定即値=11111111本例において、即値から読み込んだ全てのビットが、宛先レジスタにおいてバイナリ値1となる。2.コピーしつつ反転即値=01010101例えば、現在のx86命令セット内で実行される現在のNOT命令が、オリジナルのデータを分解し、位置的に反転される。対照的に、上記の即値を用いる上述した技術は、異なるレジスタへのコピーを行う。この命令は、dest=NOTsrc1となる。3.既存の論理演算に倣う即値=10001000この即値によって、ソースレジスタ1およびソースレジスタ2内の値のAND演算となり、つまりdest=src1ANDsrc2となる。ビット0-3およびビット7-4は同じなので、宛先レジスタ内の値destは結果に影響を与えない。よって、一実施形態において、宛先レジスタは読み込まれず、電力消費量が減少する。以下の表表Aは、既存のx86論理演算と同等のimm8値を示す。4.既存の2つの論理演算を組み合わせる即値=01111000この即値は、ソースレジスタ1およびソースレジスタ2のAND演算となり、宛先レジスタ内の値のXORされた結果が得られる。命令は、dest=src1ANDsrc2XORdestとなる。上述したように、従来の技術ではこの演算を実行するには、複数の異なる命令を実行するしかなく、多大な時間および処理リソースを要した。対照的に、上記で特定した即値を用いることにより、本明細書で説明する他の演算と同じ時間内で結果を得ることが可能となる。5.選択即値=10101100この演算の目的は、宛先レジスタ内の対応するビットが設定される場合にソースレジスタ1を選択し、そうでなければソースレジスタ2を設定することにある。従来、この処理には多大な数の命令を要するdest=src1ANDdestORsrc2ANDNOTdestなどの論理が必要であった。対照的に、上記で特定した即値を用いることにより、本明細書で説明する他の即値演算と同程度の効率性で、結果を得ることが出来る。6.投票即値=11101000この演算を用い、3つの入力値のうち、最もポピュラーなものを選択する。例えば、宛先レジスタ内のビットが0であり、ソースレジスタ1内のビットが1であり、ソースレジスタ2内のビットが0であった場合、0が最もポピュラーな出力となる。よって、0が選択され、宛先レジスタ内に格納される。なお、上述した演算は、単に例示を目的として示されている。本願発明の基本的な原理は、特定の組の演算に限定されない。本願発明の基本的な原理によると、異なる即値を用いて、実質的に無限の数の論理演算を実行することが出来るただし、8ビットの即値を用いた場合には、256の論理演算のみが可能である。以下の擬似コードは、64ビットのオペランドを有し、imm8の即値を用いるプロセッサパイプラインにおいて実行される場合の、本願発明の一実施形態を表す。fori=0;i<64;i{index=dest[i]<<2|src2[i]<<1|src1[i];dest[i]=imm8[index];}この実行例において、指標値は、宛先レジスタdest、ソースレジスタ1src1およびソースレジスタ2src2の0~63の間のビット位置iにおけるビット値のそれぞれを連結することにより計算される。<<2および<<1の演算では、ビットが左へそれぞれ2および1だけシフトされ、適切に指標が生成されるようビットがアラインされる。例えば、各オペランドからのビット値が1である場合、dest[i]<<2の結果得られるのは100であり、src2[i]<<1の結果得られるのは010であり、src1[i]の結果得られるのは001である。その後、ビットごとのOR演算が演算子|で示されるようにそれら結果に対し実行される。最終的に、imm8内の特定のビットを識別する指標値が結果として得られる。なお、外側のforループは、擬似コードを例示する目的で示しており、一実施形態において、64の全ての演算が、並行して、ハードウェアの別個のコピーにおいて実行される。以下の擬似コードは、本願発明の他の実施形態を表し、32ビットの16のパックデータ要素をそれぞれ格納する512ビットのレジスタおよびimm8の即値を用いるプロセッサマイプラインにおいて実行される。forn=0;n<16;n{ifmask[n]=0{forj=0;j<32;j{i=32nj;index=dest[i]<<2|src2[i]<<1|src1[i];dest[i]=imm8[index];}}}本実施形態において、32ビットの16のパックデータ要素のそれぞれと関連付けられたビットを格納するマスクレジスタを用いる。マスク[n]=0テストは、データ要素に関連付けられたマスクビットが0に等しい場合、当該データ要素の宛先レジスタdest内に格納される現在の値が変更されないままとなることを示す。しかし、マスクビットが0以外である場合、次のFORループが実行され、当該データ要素の指標値が上述したように計算されることとなる。ここでも、forループが示されているが、一実施形態においては、512の演算の全てが並行して実行される。上述した本願発明の実施形態は、3つのソースオペランドを用いて実施されるが、本願発明の基本的な原理は、いかなる数のオペランドを用いても実施することが可能である。例えば、以下の擬似コードは、3つのソースおよび1つの宛先である4つのオペランドを用いて、16ビットの即値imm16の指標値を生成するかを示す。forn=0;n<16;n{forj=0;j<32;j{i=32nj;index=dest[i]<<3|src3[i]<<2|src2[i]<<1|src1[i];dest[i]=imm16[index];}}上記のコードが示すように、本実施形態においてマスクレジスタには、第4オペランドが格納されている。左へ3だけシフトされたマスクレジスタ、左へ2だけシフトされた宛先レジスタ、左へ1だけシフトされたソースレジスタ2、およびソースレジスタ1からの対応するビットに対し、ビット毎のOR演算を実行することにより、指標値が生成される。得られる4ビットの値をその後、16ビットの即値imm16のルックアップとして用いる。プロセッサアーキテクチャの例図3は、例示的な処理コア300を示し、本願発明の実施形態は、処理コア300上で実施することが出来る。汎用処理コア300は、ComplexInstructionSetCISC、ReducedInstructionSetRISCおよびVeryLongInstructionWordVLIWなどの異なる多くのタイプの処理コアアーキテクチャを表し得る。図3の汎用処理コア300は、1例えばキャッシュおよび/またはメモリから命令をフェッチするフェッチユニット303、2命令を復号化する復号ユニット304、3実行ユニット306への命令の発行のタイミングおよび/または順序を決定する任意選択的に含まれるスケジューリングユニット305、4命令を実行する実行ユニット306典型的な命令実行ユニットは、分岐実行ユニット、例えばALUなどの整数演算実行ユニット、例えばFPUなどの浮動小数点演算実行ユニット、メモリアクセス実行ユニットを含む、および5命令の実行成功を示すリタイヤユニット307を含む。なお、処理コア300は、マイクロコード308を用いても、用いなくてもよい。マスクレジスタ302は、上述した本願発明の実施形態に従い用いてもよい。コンピュータシステムの例以下に示すのは、本明細書で説明する命令を実行するのに適したシステムの例である。ラップトップ、デスクトップ、ハンドヘルドPC、携帯情報端末、エンジニアリングワークステーション、サーバ、ネットワークデバイス、ネットワークハブ、スイッチ、組み込みプロセッサ、デジタル信号プロセッサDSP、グラフィックデバイス、ビデオゲームデバイス、セットトップボックス、マイクロコントローラ、携帯電話、ポータブルメディアプレーヤ、ハンドヘルドデバイス、およびその他様々な電子デバイスなどの、当技術分野で公知の他のシステム設計および構成も適している。一般的に、本明細書で開示するプロセッサおよび/または他の実行論理を組み込むことの出来る、多様なシステムまたは電子デバイスが適している。図4は、本願発明の実施形態に係る、システム400のブロック図を示す。システム400は、グラフィックメモリコントローラハブGMCH420へ結合された1以上の処理要素410、415を含んでよい。追加的な処理要素415は任意選択的に用いられ、よって、それらは図4において破線で示されている。処理要素のそれぞれは、単一のコアであるか、または代替的に複数のコアを含んでよい。処理要素は、任意選択的に、集積メモリコントローラおよび/または集積I/O制御論理など他のオンダイの要素を処理コアに加えて含んでよい。また、少なくとも一実施形態において、処理要素のコアは、マルチスレッドであり、1つのコアあたり1以上のハードウェアスレッドコンテクストを含んでよい。図4は、GMCH420が、ダイナミックランダムアクセスメモリDRAMなどであってよいメモリ430に結合されてよいことを示す。DRAMは、少なくとも一実施形態において、不揮発性キャッシュに関連付けられる。GMCH420は、チップセットか、またはチップセットの一部であってよい。GMCH420は、プロセッサ410、415と通信を行い、プロセッサ410、415とメモリ430との間の相互作用を制御する。GMCH420は、プロセッサ410、415と、システム400の他の要素とのアクセラレーテッドバスインタフェースとして機能してもよい。少なくとも一実施形態において、GMCH420は、フロントサイドバスFSB495などのマルチドロップバスを介し、プロセッサ410、415と通信を行う。さらに、GMCH420は、フラットパネルディスプレイなどのディスプレイ440に結合される。GMCH420は、集積グラフィックアクセラレータを含んでよい。GMCH420はさらに、様々な周辺機器をシステム400へ結合するのに用いられる入力/出力I/OコントローラハブICH450へと結合される。図4の実施形態において例として示されるのは、ICH450に結合された独立したグラフィックデバイスであってよい外部グラフィックデバイス460および他の周辺機器470である。代替的に、追加的なまたは異なる処理要素をシステム400に設けてもよい。例えば、追加的な処理要素415は、プロセッサ410と同様の追加的なプロセッサ、プロセッサ410とは異種または非対称の追加的なプロセッサ、グラフィックアクセラレータまたはデジタル信号処理DSPユニットなどのアクセラレータ、フィールドプログラム可能ゲートアレイ、または任意の他の処理要素を含んでよい。物理的リソース410、415の間には、アーキテクチャ、マイクロアーキテクチャ、熱、電力消費などの関する特徴を含む利点に関する一連の判断基準面で、多種多様な違いがあり得る。処理要素410、415の間のこれらの差は、非対称性および異種性として効果的に表れる。少なくとも一実施形態において、様々な処理要素410、415が、同じダイパッケージ内に存在してよい。図5は、本願発明の実施形態に係る第2システム500のブロック図を示す。図5に示すように、マルチプロセッサシステム500は、ポイントツーポイント相互接続システムであり、ポイントツーポイント相互接続550で互いに結合された第1処理要素570および第2処理要素580を含む。図5に示すように処理要素570、580のそれぞれは、第1および第2プロセッサコアつまり、プロセッサコア574a、574b、およびプロセッサコア584a、584bを含んだマルチコアプロセッサであってよい。代替的に、1以上の処理要素570、580は、アクセラレータまたはフィールドプログラム可能ゲートアレイなどの、プロセッサ以外の要素であってよい。2つの処理要素570、580のみ示されているが、本願発明の態様は、それらを含む態様のみに限定されない。他の実施形態において、任意のプロセッサ内には、追加的な1以上の処理要素が存在してよい。第1処理要素570はさらに、メモリコントローラハブMCH572、およびポイントツーポイントP-Pインタフェース576、578を含んでよい。同様に、第2処理要素580は、MCH582およびP-Pインタフェース586、588を含んでよい。プロセッサ570、580は、PtPインタフェース回路578、588を用いて、ポイントツーポイントPtPインタフェース550を介してデータの交換を行ってよい。図5に示すように、MCH572、582は、プロセッサを各メモリと結合する。それらメモリは、それぞれのプロセッサにローカルに取り付けられた主メモリの部分であってよい、メモリ542およびメモリ544である。それぞれのプロセッサ570、580は、ポイントツーポイントインタフェース回路576、594、586、598を用いて個々のPtPインタフェース552、554を介してチップセット590とデータの交換を行ってよい。チップセット590もまた、高性能グラフィックインタフェース539を介して高性能グラフィック回路538とデータの交換を行ってよい。本願発明の実施形態は、任意の数の処理コアを有するプロセッサ内に存在してもよく、または図5の各PtPバスエージェント内に存在してもよい。一実施形態において、プロセッサコアは、ローカルキャッシュメモリ図示せずを含むか、またはローカルキャッシュメモリと関連付けられてよい。さらに、共有キャッシュ図示せずが、両方のプロセッサの外側でいずれかのプロセッサに含まれていてよく、しかしながら、当該プロセッサへp2p相互接続を介して接続される。この場合、いずれか、若しくは両方のプロセッサのローカルキャッシュ情報は、プロセッサが低消費電力モードになるとき、共有キャッシュに格納される。第1処理要素570および第2処理要素580は、それぞれ、P-P相互接続576、586、584を介し、チップセット590へ結合される。図5に示すように、チップセット590はP-Pインタフェース594、598を含む。さらにチップセット590は、チップセット590を高性能グラフィックエンジン548と結合するインタフェース592を含む。一実施形態において、バス549を用いて、グラフィックエンジン548をチップセット590へと結合する。代替的に、ポイントツーポイント相互接続549がこれらのコンポーネントを結合する。そしてチップセット590は、インタフェース596を介し、第1バス516に結合されてよい。一実施形態において、第1バス516は、ペリフェラルコンポーネントインターコネクトPCIバスであり、若しくは、PCIエクスプレスバスなどのバスまたは他の第3世代I/O相互接続バスである。しかし、本願発明の態様は、この態様に限定されない。図5に示すように、第1バス516を第2バス520へ結合するバスブリッジ518とともに、様々なI/Oデバイス514が第1バス516に結合される。一実施形態において、第2バス520は、lowpincountLPCバスである。一実施形態において、例えばキーボード/マウス522、通信デバイス527、並びに、コード530を含んでよいディスクドライブまたはその他の大容量記憶デバイスなどのデータ記憶ユニット528を含む、様々なデバイスが第2バス520に結合されてよい。さらに、オーディオI/O524が、第2バス520に結合されてよい。なお、他のアーキテクチャを採用することも可能である。例えば、図5のポイントツーポイントアーキテクチャの代わりに、システムは、マルチドロップバス、または同様の他のアーキテクチャを実装してよい。図6は、本願発明の実施形態に係る第3システム600のブロック図を示す。図5および6の同様な要素には同様の符号が付されている。図6の特定の態様を曖昧にすることを避けるべく、図5のそれら以外の態様は図6において省略されている。図6は、処理要素570、580が、それぞれ、集積メモリおよびI/O制御論理CL572、582を含んでよいことを示す。少なくとも一実施形態において、CL572、582は、図4および5に関連して上述したようなメモリコントローラハブ論理MCHを含んでよい。さらに、CL572、582は、I/O制御論理も含んでよい。図6は、メモリ542、544がCL572、582に結合されるだけでなく、I/Oデバイス614も制御論理572、582へ結合されることを示す。レガシーI/Oデバイス615は、チップセット590へ結合される。本明細書で開示する機構の実施形態は、ハードウェア、ソフトウェア、ファームウェア、またはそれら実施アプローチの組み合わせを用いて実施してよい。本願発明の実施形態は、少なくとも1つのプロセッサ、揮発性および不揮発性のメモリおよび/または記憶要素を含むデータ記憶システム、少なくとも1つの入力デバイスおよび少なくとも1つの出力デバイスを含む、プログラム可能システム上で実行されるコンピュータプログラムまたはプログラムコードとして実施してよい。図5に示すコード530のようなプログラムコードを入力データとして用い、本明細書で説明する機能を実行し、出力情報を生成してもよい。出力情報は、公知の方式で、1以上の出力デバイスへ提供される。この提供を行うべく、プロセシングシステムは、デジタル信号プロセッサDSP、マイクロコントローラ、特定用途向け集積回路ASIC、またはマイクロプロセッサなどのプロセッサを有する任意のシステムを含む。プログラムコードは、高レベルの手続き型プログラミング言語またはオブジェクト指向プログラム言語を用いて実施され、プロセシングシステムとの通信を行ってもよい。プログラムコードは、所望される場合、アセンブリ言語または機械言語を用いて実施してもよい。実際、本明細書で説明される機構の範囲は、特定のプログラム言語に限定されない。いずれの場合であっても、言語は、コンパイラ型言語かまたはインタープリタ型言語であってよい。1以上の実施形態の1以上の態様は、プロセッサ内の様々な論理を表す機械可読媒体に格納されるデータによって実装されてもよい。それら表現するデータは機械によって読み込まれると、当該機械に対し、本明細書で説明される技術を実行するよう論理を作成させる。IPコアとしても知られるそのような表現は、有形の機械可読媒体に格納され、様々な消費者へ、若しくは当該論理またはプロセッサを実際に作成する製造機械へとそれら表現をロードする製造設備へと供給される。そのような機械可読記憶媒体には、機械または装置により製造または形成される、粒子の非一時的かつ有形の構造が含まれ、またこれらに限定されない。その例としては、ハードディスク、他のタイプのディスク、半導体デバイス、磁気または光学カードおよび電子命令を格納するのに適した他のタイプの媒体などの記憶媒体が挙げられる。他のタイプのディスクの例としては、フロッピー登録商標ディスク、光学ディスク、CD-ROM、CD-RW、磁気光学ディスクなどが挙げられる。半導体デバイスの例としては、読み取り専用メモリROM、ダイナミックランダムアクセスメモリDRAMおよびスタティックランダムアクセスメモリSRAMなどのランダムアクセスメモリRAM、消去可能プログラム可能読み取り専用メモリEPROM、フラッシュメモリ、電子的消去可能プログラム可能読み取り専用メモリEEPROMなどが挙げられる。したがって、本願発明の実施形態は、本願発明の実施形態の演算の実行を指示する命令を含む、または本明細書で説明した構造、回路、装置、プロセッサ、および/またはシステムの特徴を定義づけるHDLなどの設計データを含む非一時的かつ有形の機械可読媒体も含む。それら実施形態は、プログラム製品とも呼ばれる。本明細書で説明する命令の演算のいくつかは、ハードウェアコンポーネントによっても実行することができ、また、それら命令がプログラムされた回路または他のハードウェアコンポーネントにそれら演算を実行させる、または当該回路または他のハードウェアコンポーネントがそれら演算を実行することとなるよう用いられる機械可読命令によって実施してもよい。回路には、わずかながら例を挙げると、汎用または特定用途向けプロセッサまたは論理回路が含まれる。演算は、任意選択的に、ハードウェアとソフトウェアとの組み合わせによって実行することも出来る。実行論理および/またはプロセッサには、機械命令、または機械命令から導き出される1以上の制御信号に応じて、命令により指定された結果としてのオペランドを格納する、特定の回路およびその他の論理が含まれる。例えば、本明細書で開示する命令の実施形態は、図4、5および6に示す1以上のシステムで実行されてもよく、また、命令の実施形態は、それらのシステムで実行されるプログラムコードに格納されてもよい。さらに、これらの図に示す処理要素は、本明細書で詳述するパイプラインおよび/または例えばインオーダーおよびアウトオブオーダーのアーキテクチャなどのアーキテクチャの1つを用いてもよい。例えば、インオーダーアーキテクチャの復号ユニットは、命令を復号化し、復号化された命令をベクトルユニットまたはスカラーユニットへ送信してよい。上記において、説明を目的とし、本願発明がより良く理解されるように、様々な特定的な詳細を示した。しかし、当業者であれば、本願発明が、それら特定的な詳細のうちいくつかがなくても実施されることを理解されよう。したがって、本願発明の態様および思想は、以下の請求項により判断されるべきである。