(57)【要約】  一実施形態による方法は、ルータのポートのバッファの占有レベルを閾値と比較し、その比較に少なくとも部分的に基づいてポートが第1の電圧及び周波数で動作するように制御し、ルータの他のポートの少なくとも1つは第2の電圧及び周波数で動作するように制御される。他の形態も開示される。
2013528970.tif 000002
【特許請求の範囲】
【請求項１】
複数のルータ及び少なくとも1つのプロセッサに結合されたルータの第1のポート内の第1のバッファの占有度を判定するステップと、
前記第1のバッファの前記占有度を第1の閾値との比較を行うステップと、
前記比較の結果の少なくとも一部に基づいて前記第1のポートが第1の電圧及び周波数で動作するように制御するステップと
を有し、前記ルータの他のポートの少なくとも1つは第2の電圧及び周波数で動作するように制御される、方法。
【請求項２】
前記占有度の変化に基づいて異なる電圧及び周波数で動作するように前記第1のポートを動的に制御するステップを更に有する請求項1記載の方法。
【請求項３】
ルータを経由すると予想されるトラフィックパターンの経験的な情報に基づいて、ルータの第2のポートが前記第2の電圧及び周波数で動作するように静的に制御するステップを更に有する請求項1記載の方法。
【請求項４】
第1のパケットの仮想チャネル識別子に基づいて前記第1のパケットを前記第1のバッファにルーティングするステップを更に有する、請求項1記載の方法。
【請求項５】
前記第1のバッファに対応するクレジットが有効であった場合に、前記第1のバッファの出力に結合された出力マルチプレクサから前記第1のパケットを選択し、前記第1のパケットを第2のルータの所定のポートにルーティングするステップを更に有する請求項4記載の方法。
【請求項６】
前記第1のバッファが少なくとも1つのデータパケットを保存している場合、前記第1のポートの入出力リンク及び他のバッファの少なくとも1つを低電力状態にするステップを更に有する請求項1記載の方法。
【請求項７】
前記第1のポート内の複数のバッファの占有度と前記第1の閾値との比較を行うステップと、
前記比較の結果の少なくとも一部に基づいて前記第1の電圧及び周波数で動作するように前記複数のバッファを制御するステップと
を更に有する請求項1記載の方法。
【請求項８】
前記複数のバッファ各々に関するメッセージの重要度に基づいて個々の電圧及び周波数で動作するように前記第1のポート内の複数のバッファ各々を制御するステップを更に有する請求項1記載の方法。
【請求項９】
複数のポートを有する装置であって、
前記複数のポートの各々は、入力マルチプレクサ及び出力マルチプレクサの間に並列に結合された複数の仮想チャネルバッファを含み、
前記複数のポートの各々は選択された周波数及び電圧のペアで動作するように個別の制御が行われる、装置。
【請求項１０】
前記個別の制御は、対応するポートの少なくとも1つの仮想チャネルバッファの占有度に基づいている、請求項9記載の装置。
【請求項１１】
ポート内の前記複数の仮想チャネルバッファ各々は、パケット毎に異なる周波数及び電圧のペアで動作するように個別の制御が行われる、請求項10記載の装置。
【請求項１２】
前記複数のポートに属する第1のポート内で最高の優先度の仮想チャネルバッファが少なくとも1つのパケットを格納した場合、前記第1のポート内の他の仮想チャネルバッファは低電力状態になり、仮想チャネルバッファの各々は、対応する仮想チャネルバッファに保存されるパケットの優先度に関連付けられている、請求項9記載の装置。
【請求項１３】
前記複数のポートに結合され、前記第1のポートの占有度を判定し、前記占有度と閾値との比較を行う占有度監視論理装置を更に有し、前記選択された周波数及び電圧のペアは前記比較の結果の一部に少なくとも基づいている、請求項9記載の装置。
【請求項１４】
グローバルクロック信号を受信し、前記複数のポート各々に対する比率信号及び前記グローバルクロック信号に基づいて、前記複数のポート各々に異なるクロック信号を提供するコントローラと、
電圧信号を受信し、前記比率信号及び前記電圧信号に基づいて、前記複数のポート各々に異なる調整済み電圧を出力する電圧調整部と
を更に有する請求項13記載の装置。
【請求項１５】
前記コントローラは、第1の入力パケットから第1の比率信号を受信し、前記第1のポートの第1の仮想チャネルバッファに前記第1の入力パケットを保存するための書き込みクロック信号を生成し、前記書き込みクロック信号は前記第1の入力パケットのヘッダにより受信した前記第1の比率信号に応じている、請求項14記載の装置。
【請求項１６】
前記第1の仮想チャネルバッファに保存される前記第1の入力パケット及び第2の入力パケットが、各自対応する比率信号に従って異なる速度で処理される、請求項15記載の装置。
【請求項１７】
前記複数のポートの個別の制御が、ルータを経由する予想されるトラフィックパターンの経験的な情報に基づいて統計的に行われる、請求項9記載の装置。
【請求項１８】
複数の処理エンジンと、
少なくとも1つのメモリコントローラと、
前記複数の処理エンジン及び前記少なくとも1つのメモリコントローラに相互接続ネットワークを通じて結合された複数のルータと
を有するシステムであって、
複数のルータの各々は複数のポートを有し、前記複数のポートの各々は、入力マルチプレクサ及び出力マルチプレクサの間に並列に結合された複数の仮想チャネルバッファを含み、複数のルータの各々は、
前記出力マルチプレクサに結合されたクロスバーと、
前記出力マルチプレクサ及び前記クロスバーに結合され、前記出力マルチプレクサからパケットを選択する出力選択論理装置と、前記パケットを受信する前記複数のルータの内の他のルータのポートと、
前記並列に結合された複数の仮想チャネルバッファに結合され、前記並列的に結合された複数の仮想チャネルバッファ各々占有度を判定し、対応する占有度を閾値と比較し、比較の結果を出力する占有度監視論理装置と、
前記比較の結果、グローバルクロック信号及び電圧信号を受信し、前記比較の結果の一部に少なくとも基づいて、前記並列的に結合された複数の仮想チャネルバッファ各々に周波数及び電圧のペアを提供するコントローラと
を有し、前記並列的に結合された複数の仮想チャネルバッファの各々はヘテロジーニアスな周波数及び電圧のペアで動作し、前記複数の処理エンジン、前記少なくとも1つのメモリコントローラ及び前記複数のルータは単独の半導体チップ上に形成されている、システム。
【請求項１９】
前記複数のルータの各々が、パケット毎に、ヘテロジーニアスな周波数及び電圧のペアで動作するように制御される、請求項18記載のシステム。
【請求項２０】
前記複数のルータの１つにおける少なくとも1つのポートが、少なくとも1つのポートを経由すると予想されるトラフィックパターンの経験的な情報に基づく静的な電圧及び周波数で動作する、請求項18記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
開示される発明はネットワークで使用される方法、装置及びシステム等に関連する。
【背景技術】
【０００２】
多くのコンピュータシステムは、例えばシステムのマザーボード又はその他の回路基板に結合された集積回路(IC)のような個別素子から形成されている。単独のICに組み込むことが可能な処理ユニット数及び処理能力の増大により、システムオンチップ(system−on−chip：SoC)のような単独のICで形成されるシステムは、移動装置、内蔵システム等のような様々な装置に組み込まれることが可能である。
【０００３】
素子同士を接続するため、あるタイプの相互接続ネットワークが使用され、1つ以上のルータが存在してもよい。現在、システム内の複数のルータは非常に同質又は一様(homogeneous)であり、ルータの異なるポートが同じ速度で操作し、ポートの異なる仮想チャネル(virtual  channels：VC)や他の独立した経路(パスウェイ)についても同様である。これはSoCの用法の不整合又はミスマッチとなる(ポート間でトラフィックが釣り合っていることや仮想チャネル間の重要度又はクリティカリティ(criticality)が同じであることは、実際には希なケースである)。ポート及びVC間で一様な設計は、低速が許容可能な素子については電力消費を次善のものにし(最適ではないようにしてしまい)、重要なメッセージが非常に高い処理速度から恩恵を受ける素子についてはパフォーマンスのペナルティを被ってしまう。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】米国特許出願公開第2009-0063817号明細書(要約、請求項1、2、5、15)
【特許文献２】米国特許出願公開第2009-0254874号明細書(要約、請求項11、14、19、22)
【特許文献３】米国特許第7222147号明細書(要約、請求項1、15、23)
【発明の概要】
【発明が解決しようとする課題】
【０００５】
開示される発明の課題は、従来の問題を少なくとも軽減する方法、装置及びシステムを提供することである。
【課題を解決するための手段】
【０００６】
開示される発明による方法は、
複数のルータ及び少なくとも1つのプロセッサに結合されたルータの第1のポート内の第1のバッファの占有度を判定するステップと、
前記第1のバッファの前記占有度を第1の閾値との比較を行うステップと、
前記比較の結果の少なくとも一部に基づいて前記第1のポートが第1の電圧及び周波数で動作するように制御するステップと
を有し、前記ルータの他のポートの少なくとも1つは第2の電圧及び周波数で動作するように制御される、方法である。
【図面の簡単な説明】
【０００７】
【図１】本発明の実施の形態によるシステムのブロック図。
【図２】本発明の実施の形態によるルータのブロック図。
【図３】本発明の別の実施の形態によるルータのブロック図。
【図４】本発明の実施の形態によりパケットを制御するバッファのブロック図。
【発明を実施するための形態】
【０００８】
様々な実施の形態において、ヘテロジーニアスルータマイクロアーキテクチャ(heterogeneous  router  micro-architecture)が提供される。概して、ルータの様々なポート、ポートの様々な仮想チャネル及び/又は1つの仮想チャネルを共有する異なるパケットでさえ、処理要素及びパケットソフトウェア動作における固有の不均一性に対処するように、異なるクロック(又は周波数)及び電圧で動作できるようになる。ヘテロジーニアス制御(heterogeneous  control)を実現するため、ルータの1つ以上の電力コントローラを用いて、ポート、チャネル及び/又はパケットの各々において優れたパフォーマンス/電力消費を行うように、周波数-電圧のペア各々を提供する。
【０００９】
実施の形態は多種多様なシステムに使用可能である。一実施形態において、ネットワークオンチップ(network−on−a−chip：NoC)のようなシステムオンチップ(SoC)は、メッシュ型の相互接続システムを介して結合された多くのコアを含んでよい。図1を参照するに、本発明の実施の形態によるシステムのブロック図が示されている。図1に示されているように、システム100は複数の処理エンジン1100,0-110n,mを含むシステムオンチップであってもよい。様々な実施の形態において、これらの処理エンジンは、マルチコアプロセッサの比較的簡易な整列したマイクロアーキテクチャの汎用コアのようなコアであってもよい。或いは、処理エンジンは、デコード処理、パケット処理等のような特殊な機能又はその他の機能を備えたホモジーニアス又はヘテロジーニアス処理エンジンとすることもできる。図示されているように、複数の処理エンジン110はメッシュ状に相互に結合され、各々のプロセッサは、複数のルータ1200,0-120n,mの内の対応するルータに結合される。
【００１０】
そのようなルータの各々は複数のポートを含み、各々のポートは複数の仮想チャネルを有し、これらの点については後述する。これらの様々なルータは、例えば様々な電圧及び周波数レベルのような様々な動作パラメータを有するように制御され、ルータによる通信の相違を認識する。図1に示されているように、メモリコントローラ130も存在している。
【００１１】
図1の例に示されているように、ルータを通じて異なる方向に進む異なるタイプのトラフィックに起因して、ルータの個々のポートは、電力消費に対して重み付けされた必要な処理能力を実現するように独立に制御される。例えば、メモリコントローラ130からプロセッサP1へのトラフィックは、図中の太線で示されているように、ある1つの方向で支配的である。この状況はライトバックキャッシュ(write-back  caches)のメモリ優先順位(memory  hierarchy)の状況を表し、この場合、メインメモリから読み取るトラフィックはトラフィックをメモリに書き込むより何倍も多いのが通常的である。例えば、ルータR1の場合、メモリコントローラからの入力ポートは、ルータ1202,1からの入力ポートよりもかなり高いクロックの方が有用である。
【００１２】
更に、キャッシュコヒーレントシステムにおける或るパケットタイプは、様々なレベルのクリティカリティ(varying  levels  of  criticalities)に分類できる。それらのクリティカリティを用いてパケットが仮想チャネルにマッピング又は対応付けられる場合、全てのパケットについて1つのクロックしか使用しない設計は、次善又は準最適となる。以下の表1は、ある通信プロトコルのパケットに対する3つレベルのクリティカリティ又は重要度を示す。表1に示されているように、キャッシュコヒーレントマルチプロセッサのメッセージタイプは、アプリケーションのパフォーマンスに対して異なるクリティカリティ性又は重要性を有する。表1に示す例の場合、パケットクリティカリティ又はパケット重要度の3つのレベルはパケットの内容に基づいてもよい。一般に、最もクリティカルなパケット又は最重要パケットは、キャッシュコヒーレンシーメッセージタイプに関するものであり、様々なレスポンス(Rsp)、スヌープパケット(snoop  packet：Snp)及びコンフリクトのアクノリッジメント(acknowledgement  of  conflict：AckCnflt)を含む。次に、中程度の重要度のパケットは、データ転送の他のレスポンス、所定の読み取りリクエスト(Rd)及び無効メッセージ(Inv)等に関連する。そして、ライトバックレスポンス(Wb)タイプのメッセージは最低の優先度を有してもよい。例えば、RspIパケットを遅延させることは、通常、キャッシュヒットレイテンシを伸ばす一方、WbMtolを遅延させることはしばしば無害(harmless)である。
【００１３】
表1
【００１４】
【表１】
2013528970.tif 000003
図2を参照するに、本発明の実施の形態によるルータのブロック図が示されている。図2に示されているように、ルータ200は図1に示すSoCに属するルータの1つに対応する。ルータ200は複数のポート2201-220nを有し、各々のポートは複数の独立したバッファを有する。到来するパケットが何れのポートに与えられるかの制御は、クロスバー、他のルータの他の切替論理装置又はルータに結合された他のエージェントにより行われてもよい。図2に具体的に示されているように、ポート220の各々は複数のバッファ225(例えば、先入れ先出し(FIFO)方式のバッファ群)を有し、各々のバッファは異なる仮想チャネルに関連付けられている。図2に示されている図示のポートは一方の方向(すなわち、西から東への方向又は左から右への方向)に向いているが、ルータは異なる方向の複数のポートを含んでもよいことに、留意を要する。
【００１５】
図示されているように、到来するデータは、ポート内の入力マルチプレクサ222によりバッファに入力されるように到来するパケットが分配される。入力マルチプレクサ222は、到来するパケットの仮想チャネル識別子に基づいて、対応するバッファに与える出力を、到来する入力の中から選択する。同様に、バッファ225の出力は出力マルチプレクサ226に結合され、出力マルチプレクサは仮想チャネルアロケータ240により制御される。図示されているように、到来するクレジット(incoming  credits)が、例えばルータ200に結合されている他のルータから仮想チャネルアロケータ240に与えられる。そして、有効なクレジットを有していた場合、所与の仮想チャネルバッファは自身の出力を選択してもらう。スイッチアロケータ245は、他のルータの所与のポートに送信するパケットを、様々な入力の中から選択する。一実施形態において、これらのアロケータは単独の論理装置又はコントローラ内に統合されてもよい。この判定を行う際に様々なルータアルゴリズムを使用できる。例えば、ソースルーティングの場合、パケットのソースは経路全体を特定し、スイッチアロケータがパケットに含まれている経路情報を分析できるようにする。他のタイプのルーティングアルゴリズムはダイナミックルーティングであり、その場合、パケットは完全な経路の情報を有しておらず、宛先ノードの識別子(ID)を含んでいるだけである。その場合、スイッチアロケータはルーティングの仕方を決定するためにルーティングテーブルにアクセスする。同様に、ルータ200はパケットのプロバイダにクレジットを返す。すなわち、所与の仮想チャネルバッファからパケットが出力される場合、その仮想チャネルに対応するクレジットが、そのパケットをルータに与えたエンティティ又は機能要素に返される。様々なポートからの出力は、クロスバー230を通じて、ルータに結合されている選択されたエンティティ(例えば、他の同様なルータ、処理エンジン等)に、双方向ノード間リンク299を介して提供される。
【００１６】
様々なポートが動作する周波数を独立に制御するため、電力コントローラ210が設けられている。図示されているように、電力コントローラ210は、動作周波数に対応するグローバルクロック信号を受信するように結合される。更に、電力コントローラ210は、後述するように静的又は動的に設定される複数の分周比又は分周率(divide  ratio)を受信する。一実施形態において、ポートの各々には自身の分周率がある。電力コントローラ210は、SoCの動作電圧に対応するグローバル電圧信号を受信するように更に結合されている。そして、受信した分周率並びにグローバルクロック及び電圧に基づいて、電力コントローラ210は、各々のポートに与えるクロック-電圧信号ペアを生成する。図2に示す実施の形態では、ルータ1つに付き1つの電力コントローラ210が示されているが、本発明の範囲はこの例に限定されず、一実施形態では各々のポートに個別の電力コントローラが備わっていてもよい。
【００１７】
このように、図2に示す実施の形態は、ポート毎にクロック-電圧制御を実現できるヘテロジーニアスルータを示す。図2に示す形態における周波数及び電圧のペアの選択は、バッファ占有度に基づいて動的に制御されてもよいし又は静的に制御されてもよい。一実施形態において、1つ以上のポートが静的に制御され、1つ以上の他のポートが動的に制御されてもよい。静的な場合の実現手段は、トラフィックがルータを通じてどのように流れる傾向があるかについての経験的な予備知識に基づいていてもよい。例えば、メモリコントローラから出力されるトラフィックがメモリコントローラに入力されるトラフィックよりも多くなる傾向がある、ということが分かっていた場合、メモリコントローラからデータを出力するポートは、メモリコントローラに入る方向のポートよりも高い周波数で動作するように制御される。
【００１８】
一実施形態において、電力コントローラ210は、バッファ占有度監視論理装置250からの情報に基づいて、ポート各々に適切な周波数及び電圧のペアを選択してもよい。一実施形態において、バッファ占有度監視論理装置250は分周率を動的に制御するために分周率信号を提供する。別の実施の形態において、システムソフトウェアは、例えばポートを経由するトラフィックの予想トラフィックパターンに関する経験的な予備知識に基づいて、分周率を設定する。より具体的に言えば、一実施形態において、論理装置は、ポートのバッファエントリの数と閾値との比較を実行する。この比較は、ポート内の全てのバッファの占有度に基づいていてもよいし、或いは所定の1つ以上のバッファのみに基づいていてもよいことに留意を要する。この場合において、使用するバッファエントリの数がポートの所定のウォーターマーク(watermark)を超える場合、ポートのクロック/電圧が増やされる。逆に、ある拡張期間にわたってFIFOバッファが空又はエンプティであることは、アイドル状態を示し(占有度監視論理装置により検出される)、クロック/電圧は最低スタンバイ状態に制限/減らされ、実質的に電力を節約する。ランタイム制御(run  time  control)は、ルータが変動するトラフィックの要請に継続的に合わせるようにし、パフォーマンスと電力消費との間で適切なトレードオフを達成する。静的な制御の形態の場合、論理装置250は存在しなくてもよく、分周率信号は静的に制御されてもよいことに留意を要する。一実施形態において、例えばポート毎又はバッファ毎に、静的及び動的な制御の組み合わせが使用されてもよい。
【００１９】
図2の例では、クロックの粒度(granularity)及び電圧の適合性(adaptation)はポート毎に決定される。従って、電力コントローラ(及び占有度監視論理装置)はポート毎に構築されてもよいし、あるいは各々のポートが、これらの素子の1つの実現手段と通信するように構築されてもよい。理解されるように、ポート毎の電力制御に加えて、電力を節約するためにポート間のリンクも同様に制御されてもよい。更に別の実施の形態では、ヘテロジーニアスルータが電圧/周波数の優先度毎の制御と共に使用されてもよい。すなわち、ポート毎の制御以外の応用例において、制御はポート内の個々のバッファ各々に行われてもよく、例えば優先度毎に又は超精密電力管理(ultra  fine-grain  power  management)による仮想チャネル毎に行われてもよい。図3を参照するに、本発明の別の実施の形態によるルータのブロック図が示されている。図3に示されているように、ルータ200’は図2に示すルータと同様に構築されている。しかしながら、ポート毎の制御ではなく、ルータ200’の個々のバッファ225の各々が、個別に制御される周波数及び電圧のペアを有する。このような制御を行うため、電力コントローラ228及び占有度監視論理装置229が、ポート毎に設けられ、例えば、静的なソース(図3には図示せず)又は占有度監視論理装置229から提供されてもよい到来する選択信号に基づいて、個々のクロック-電圧制御信号を仮想チャネルバッファ225の各々に出力する。
【００２０】
一実施形態において、第1の仮想チャネルが最重要パケットに関連付けられ、第2の仮想チャネルが次に重要なパケットに関連付けられ、以下同様に関連付けられる静的な割り当てのように、システムは、メッセージの重要度に基づいて仮想チャネル各々が割り当てられるように構築されてもよい。その実施の形態の場合、第1の仮想チャネルバッファは他の仮想チャネルバッファよりも高速に動作する。重要度に基づく仮想チャネルを利用する更に別の実施の形態においては、最高優先度の仮想チャネル(1つのバッファに関連付けられている)を通じてデータが流れる場合、他のチャネル(及びそれらに関連付けられているバッファ)はディセーブルにされる、或いは低電力スタンバイ状態に入れられ、ワークロードに基づく制御を実現するように、ポート内の一群のバッファを制御することで、動的な制御が実現されてもよい。この制御を行うため、パケットの各々は、パケットの優先度を示すために、ビットフィールドのようなサービス品質(QoS)の手掛かりを含んでもよい。最高優先度のパケットが受信された場合は、バッファを通じてパケットを処理するために高い周波数が使用され、低優先度のパケットが受信された場合は、バッファリソースが低い周波数で制御されるように、バッファが制御されてもよい。第1の仮想チャネル(VC0)が最高の優先度のパケットを実際に高速に入力/出力すると仮定すると、残りのチャネル/バッファ(例えば、VC1ないしVCV)は低電力状態に置かれてもよい。この実施の形態の場合、クロック及び電圧を適応させるための基礎は、メッセージの優先度である。
【００２１】
クロック及び電圧の適応化は様々な方法で実行できる。ハイパフォーマンスメニーコアアーキテクチャ(high  performance  many  core  architecture)の場合、ソフトウェアトランスペアレントである設計時間判断法(design-time  decision)が使用されてもよい。QoS条件と共に多くの知財(Intellectual  Property：IP)ブロックを含むSoCの場合、ソフトウェアにより提供される手掛かりに基づくランタイム動的制御法が使用されてもよい。例えば、低優先度のダイレクトメモリアクセス(DMA)トランザクションは、メモリモジュール同士の間のルータを介する低電圧の低電力経路を通じて実行されてもよい。
【００２２】
更に別の実施の形態の場合、より繊細な制御が行われてもよい。図4を参照するに、例えば、パケット自身の優先度に従って、パケット毎に制御が行われている。この優先度は、仮想チャネル又はそのような他の識別子に属する優先度とは異なる。様々な実施の形態において、各々のフロー制御ユニット(例えば、フリット(flit)と言及される)は、ユニットのヘッダ(例えば、パケットヘッダ)の中に優先度のインジケータを優指定もよい。この情報に基づいて、バッファを共有するパケットが異なる速度で処理される。図4の実施の形態に具体的に示されているように、バッファ320は第1の位置320a及び第2の位置320bを有し、それら各々は例えば電力コントローラ310から取得した制御信号に基づいて異なる速度で制御されてもよい。図示されているように、電力コントローラ310は、パケットヘッダのフィールド内の情報により設定される分周率及び電圧信号及びグローバルクロックを受信する。この情報に基づいて、電力コントローラ310はバッファ320の特定の部分にデータを書き込み及びそこからデータを読み取るために、書き込みクロック及び読み取りクロックを生成する。図4には特定の形態が示されているが、電圧/周波数の繊細な又は緻密な制御を行う他の実施の形態も実現可能であることは理解されるであろう。一例として、プロセッサの既知の電力状態(例えば、アドバンストコンフィギュレーション及び電力インターフェース(ACPI)標準仕様におけるいわゆるP又はC状態)と同期するように機能するルータの中で、電力制御が行われてもよい。ここで、プロセッサに接続されているローカルルータ及びバッファ(そのポートにおけるバッファ)は、プロセッサの電力状態に基づいてスリープ状態(又は起動状態)で動作することができる。電力状態を認識するメモリコントローラに接続されたルータに適用可能な他の実施の形態も可能である。
【００２３】
実施の形態は、コードで実現され、命令を保存する記憶媒体に保存されてもよく、命令は命令を実行するようにシステムをプログラムするのに使用可能である。記憶媒体は、例えば、フロッピディスクや光ディスクを含むディスク、ソリッドステートドライブ(SSD)、コンパクトディスクリードオンリメモリ(CD-ROM)、コンパクトディスクリライタブル(CD-RW)、光磁気ディスク、半導体装置、磁気又は光カード、或いは電子命令を保存するのに相応しい他の任意のタイプの媒体のうちの任意のものであり、半導体装置は、例えば、リードオンリメモリ(ROM)、ランダムアクセスメモリ(RAM)(例えば、ダイナミックランダムアクセスメモリ(DRAM)、スタティックランダムアクセスメモリ(SRAM))、消去可能プログラム可能なリードオンリメモリ(EPROM)、フラッシュメモリ、電気的に消去可能プログラム可能なリードオンリメモリ(EEPROM)等であるが、これらに限定されない。
【００２４】
以上、本発明は限られた数の実施の形態に関連して説明されてきたが、当業者はそれらに対する数多くの修正例及び変形例を認識するであろう。従って添付の特許請求の範囲はそのような全ての修正例及び変形例を包含し、それらは本発明の真の精神及び範囲内にある。
【図１】
2013528970.tif 000004
【図２】
2013528970.tif 000005
【図３】
2013528970.tif 000006
【図４】
2013528970.tif 000007
【国際調査報告】
2013528970.tif 000008
2013528970.tif 000009
2013528970.tif 000010