(57)【要約】【解決手段】マスタープロセッサとパイプライン型スレーブプロセッサを有するマルチプロセッサシステムにおいて、前記マスタープロセッサにより制御されるスレーブプロセッサへの命令を伝達するための方法について記述する。その方法は、（ｉ）前記パイプライン型スレーブプロセッサにより理解されるコンピュータ言語を用いて符合化されるヘッダーブロックと（ｉｉ）宛先のスレーブプロセッサにより理解されるコンピュータ言語を用いて符合化される命令を含むペイロードブロックとを含むパススルーコマンドを用いる。前記パススルーコマンドは、最も外側のスレーブプロセッサに転送され、中間のスレーブプロセッサにより再符号化されることなしに、宛先のスレーブプロセッサに届くまで転送される。一例において、この方法は、ビデオデータやレンダリング画像の処理のために適用されるシステムに用いられる。【選択図】図１
2010522402.tif 000002
【特許請求の範囲】
【請求項１】
パイプライン型スレーブプロセッサと通信するように構成され、ヘッダーブロックとペイロードブロックとを含むパススルーコマンドを発行し、前記ヘッダーブロックはパイプライン型スレーブプロセッサにより理解されるコンピュータ言語を用いて符合化され；前記パイプライン型スレーブプロセッサのうちの宛先のスレーブプロセッサのために、前記宛先のスレーブプロセッサにより理解されるコンピュータ言語を用いて符合化される少なくとも一つの命令を発行し；前記少なくとも一つの命令を前記ペイロードバックブロックに含め；前記パススルーコマンドを、前記パイプライン型スレーブプロセッサのうちの最も外側のスレーブプロセッサに送信するように構成されるマスタープロセッサを具備し、
前記パススルーコマンドは、再符号化することなしに、前記パイプライン型スレーブプロセッサのうちの宛先でないスレーブプロセッサから前記パイプライン型スレーブプロセッサのうちの隣接する下流のスレーブプロセッサへ、前記パススルーコマンドが宛先のスレーブプロセッサに届くまで、転送される
集積回路（ＩＣ）。
【請求項２】
前記マスタープロセッサは、パススルーコマンドを示す情報，及びデコードすることなく前記パススルーコマンドを前記宛先のスレーブプロセッサに転送する要求を含むデータモジュールを発行すること，及び前記ヘッダーブロックに前記データモジュールを含めることにより、前記パススルーコマンドを発行するように構成される
請求項１の集積回路。
【請求項３】
前記マスタープロセッサは、前記宛先のスレーブプロセッサを示す情報を発行すること；前記スレーブプロセッサにより理解されるコンピュータ言語を用いて前記データモジュールを符号化すること；及び前記ヘッダーブロックに前記データモジュールを含めることにより、前記パススルーコマンドを発行するように構成される
請求項１の集積回路。
【請求項４】
前記マスタープロセッサは、前記ペイロードブロックのビット長を示す情報を含むデータモジュールを発行すること；前記スレーブプロセッサにより理解されるコンピュータ言語を用いて前記データモジュールを符号化すること；及び前記ヘッダーブロックに前記データモジュールを含めることにより、前記パススルーコマンドを発行するように構成される
請求項１の集積回路。
【請求項５】
前記マスタープロセッサは、前記パススルーコマンドを最も外側の前記パイプライン型のスレーブプロセッサのうちの一つに転送することにより、前記パススルーコマンドを送信するように構成される
請求項１の集積回路。
【請求項６】
前記宛先でないスレーブプロセッサは、前記宛先でないスレーブプロセッサの入力バッファから前記宛先でないスレーブプロセッサの出力バッファへ前記パススルーコマンドをコピーするように構成される
請求項１の集積回路。
【請求項７】
前記宛先のスレーブプロセッサは、前記パススルーコマンドの受信を知らせる、ように構成される
請求項１の集積回路。
【請求項８】
前記宛先のスレーブプロセッサは、前記マスタープロセッサにより理解されるコンピュータ言語を用いて事前に決定されるメッセージを発行する；返答パススルーコマンドのペイロードブロックに前記事前に決定されるメッセージを含める；前記マスタープロセッサへ、返答パススルーコマンドのペイロードブロック内の前記事前に決定されるメッセージのアドレスを指定する；前記返答パススルーコマンドを前記パイプライン型スレーブプロセッサの上流のスレーブプロセッサに転送する、ように構成される
請求項７の集積回路。
【請求項９】
前記マスタープロセッサ及びパイプライン型スレーブプロセッサは、少なくともビデオデータ処理又はレンダリング画像処理のいずれか一つを行う、ように構成される
請求項１の集積回路。
【請求項１０】
前記請求項１の集積回路は、携帯電話，ビデオゲーム機器，パーソナルデジタルアシスタント（ＰＤＡ），ラップトップコンピュータ，及びオーディオ／ビデオ機能デバイスからなるグループのうちから選択される無線通信装置の一部である。
【請求項１１】
ヘッダーブロックとペイロードブロックとを含むパススルーコマンドを発行し、前記ヘッダーブロックはパイプライン型スレーブプロセッサにより理解されるコンピュータ言語を用いて符合化され；前記パイプライン型スレーブプロセッサのうちの宛先のスレーブプロセッサのために、前記宛先のスレーブプロセッサにより理解されるコンピュータ言語を用いて符合化される少なくとも一つの命令を発行し；前記少なくとも一つの命令を前記ペイロードブロックに含め；前記パススルーコマンドを、前記パイプライン型スレーブプロセッサのうちの最も外側のスレーブプロセッサに送信する構成されるマスタープロセッサと通信するための複数のパイプライン型スレーブプロセッサを具備し、
前記パイプライン型スレーブプロセッサのうちの宛先でないスレーブプロセッサは、前記パススルーコマンドを、再符号化することなしに、前記パイプライン型スレーブプロセッサのうちの隣接する下流のスレーブプロセッサへ、前記パススルーコマンドが宛先のスレーブプロセッサに届くまで、転送する
集積回路（ＩＣ）。
【請求項１２】
前記マスタープロセッサは、パススルーコマンドを示す情報、及びデコードすることなく前記パススルーコマンドを前記宛先のスレーブプロセッサへ転送する要求を含むデータモジュールを発行すること；及び前記ヘッダーブロックに前記データモジュールを含めることにより、前記パススルーコマンドを発行するように構成される
請求項１１の集積回路。
【請求項１３】
前記マスタープロセッサは、前記宛先のスレーブプロセッサを示す情報を発行すること；前記パイプライン型スレーブプロセッサにより理解されるコンピュータ言語を用いて前記データモジュールを符号化すること；前記ヘッダーブロックに前記データモジュールを含めることにより、前記パススルーコマンドを発行するように構成される
請求項１１の集積回路。
【請求項１４】
前記マスタープロセッサは、前記ペイロードブロックのビット長を示す情報を含むデータモジュールを発行すること；前記パイプライン型スレーブプロセッサにより理解されるコンピュータ言語を用いて前記データモジュールを符号化すること；及び前記ヘッダーブロックに前記データモジュールを含めることにより、前記パススルーコマンドを発行するように構成される
請求項１１の集積回路。
【請求項１５】
前記マスタープロセッサは、前記パススルーコマンドを最も外側の前記スレーブプロセッサに転送することにより、前記パススルーコマンドを送信するように構成される
請求項１１の集積回路。
【請求項１６】
前記マスタープロセッサは、前記宛先でないスレーブプロセッサの入力バッファから前記宛先でないスレーブプロセッサの出力バッファへ前記パススルーコマンドをコピーするように更に構成される
請求項１１の集積回路。
【請求項１７】
前記マスタープロセッサは、前記パススルーコマンドの受信を知らせる、ように更に構成される
請求項１１の集積回路。
【請求項１８】
前記マスタープロセッサは、前記マスタープロセッサにより理解されるコンピュータ言語を用いて事前に決定されるメッセージを発行する；返答パススルーコマンドのペイロードブロックに前記事前に決定されるメッセージを含める；前記マスタープロセッサへ、返答パススルーコマンドのペイロードブロック内の前記事前に決定されるメッセージのアドレスを指定する；前記返答パススルーコマンドを前記パイプライン型スレーブプロセッサの上流のスレーブプロセッサに転送する、ように更に構成される
請求項１７の集積回路。
【請求項１９】
前記マスタープロセッサ及びパイプライン型スレーブプロセッサは、少なくともビデオデータ処理又はレンダリング画像処理のいずれか一つを行う、ように構成される
請求項１１の集積回路。
【請求項２０】
前記請求項１１の集積回路は、携帯電話，ビデオゲーム機器，パーソナルデジタルアシスタント（ＰＤＡ），ラップトップコンピュータ，及びオーディオ／ビデオ機能デバイスからなるグループのうちから選択される無線通信装置の一部である。
【請求項２１】
最も外側のスレーブプロセッサと、宛先のスレーブプロセッサと、宛先でないスレーブプロセッサと、を備える複数のパイプライン型スレーブプロセッサと、
ヘッダーブロックとペイロードブロックとを含むパススルーコマンドを発行し、前記ヘッダーブロックはパイプライン型スレーブプロセッサにより理解されるコンピュータ言語を用いて符合化し、前記宛先でないスレーブプロセッサは、前記パススルーコマンドを、再符号化することなしに隣接する下流のパイプライン型のスレーブプロセッサへ転送するように構成され；
前記宛先のスレーブプロセッサのために、前記宛先のスレーブプロセッサにより理解されるコンピュータ言語を用いて符合化される少なくとも一つの命令を発行し、宛先のスレーブプロセッサは前記少なくとも一つ１つの命令を実行するように構成され；
前記ペイロードブロック内に前記少なくとも一つの命令を含め；
前記パススルーコマンドを、前記パイプライン型スレーブプロセッサのうちの最も外側のスレーブプロセッサに送信する；
ように構成される前記最も外側のスレーブプロセッサに接続されるマスタープロセッサとを具備する
マルチプロセッサシステム。
【請求項２２】
前記マスタープロセッサは、パススルーコマンドを示す情報、及びデコードすることなく前記パススルーコマンドを前記宛先のスレーブプロセッサへ転送する要求を含むデータモジュールを発行し；前記ヘッダーブロックに前記データモジュールを含めるように、更に構成される
請求項２１のマルチプロセッサシステム。
【請求項２３】
前記マスタープロセッサは、前記宛先のスレーブを示す情報を発行し；前記パイプライン型スレーブプロセッサにより理解されるコンピュータ言語を用いて前記データモジュールを符号化し；前記ヘッダーブロックに前記データモジュールを含める、ように更に構成される
請求項２１のマルチプロセッサシステム。
【請求項２４】
前記マスタープロセッサは、前記ペイロードブロックのビット長を示す情報を含むデータモジュールを発行し；前記パイプライン型スレーブプロセッサにより理解されるコンピュータ言語を用いて前記データモジュールを符号化し；前記ヘッダーブロックに前記データモジュールを含める、ように更に構成される
請求項２１のマルチプロセッサシステム。
【請求項２５】
前記マスタープロセッサは、前記パススルーコマンドを最も外側の前記スレーブプロセッサに転送する
請求項２１のマルチプロセッサシステム。
【請求項２６】
前記宛先でないスレーブプロセッサは、前記宛先でないスレーブプロセッサの入力バッファから前記宛先でないスレーブプロセッサの出力バッファへ前記パススルーコマンドをコピーする
請求項２１のマルチプロセッサシステム。
【請求項２７】
前記宛先のスレーブプロセッサは、前記パススルーコマンドの受信を知らせるように更に構成される
請求項２１のマルチプロセッサシステム。
【請求項２８】
前記宛先のスレーブプロセッサは、前記マスタープロセッサにより理解されるコンピュータ言語を用いて事前に決定されるメッセージを発行する；返答パススルーコマンドのペイロードブロックに前記事前に決定されるメッセージを含める；前記マスタープロセッサへ、返答パススルーコマンドのペイロードブロック内の前記事前に決定されるメッセージのアドレスを指定する；前記返答パススルーコマンドを前記スレーブプロセッサの上流のスレーブプロセッサに転送する、ように更に構成される
請求項２７のマルチプロセッサシステム。
【請求項２９】
請求項２１のマルチプロセッサシステムは、少なくともビデオデータ処理又はレンダリング画像処理のいずれか一つを行う。
【請求項３０】
前記請求項２１のマルチプロセッサシステムは、携帯電話，ビデオゲーム機器，パーソナルデジタルアシスタント（ＰＤＡ），ラップトップコンピュータ，及びオーディオ／ビデオ機能デバイスからなるグループのうちから選択される無線通信装置の一部である。
【請求項３１】
マスタープロセッサとパイプライン型スレーブプロセッサとを備えるマルチプロセッサシステムであって、前記マルチプロセッサシステムは、
第１手段：
ヘッダーブロックとペイロードブロックとを含み前記パイプライン型スレーブプロセッサにより理解されるコンピュータ言語を用いて符合化されたパススルーコマンドを発行し；前記パイプライン型スレーブプロセッサのうちの宛先のスレーブプロセッサのために、前記宛先のスレーブプロセッサにより理解されるコンピュータ言語を用いて符合化される少なくとも一つの命令を発行し；前記少なくとも一つの命令を前記ペイロードブロックに含め；前記パススルーコマンドを、前記マスタープロセッサに接続されるスレーブプロセッサの一つへ送信する、と、
第２手段：
前記パススルーコマンドを、再符号化することなしに、前記パイプライン型スレーブプロセッサの宛先でないスレーブプロセッサから隣接する下流のパイプライン型のスレーブプロセッサへ転送し；宛先のスレーブプロセッサにおいて前記少なくとも一つの命令を実行する、と具備する
マルチプロセッサシステム。
【請求項３２】
前記第１手段は、前記マスタープロセッサにより実行されるコンピュータプログラムである
請求項３１のマルチプロセッサシステム。
【請求項３３】
前記第２手段は、前記パイプライン型スレーブプロセッサにより実行されるコンピュータプログラムである
請求項３１のマルチプロセッサシステム。
【請求項３４】
前記第１手段は、前記パススルーコマンドを示す情報、及びデコードすることなく前記パススルーコマンドを前記宛先のスレーブプロセッサへ転送する要求を含むデータモジュールを発行し、；前記ヘッダーブロックに前記データモジュールを含める、手段である
請求項３１のマルチプロセッサシステム。
【請求項３５】
前記第１手段は、前記宛先のスレーブプロセッサを示す情報を含むデータモジュールを発行し；前記スレーブプロセッサにより理解されるコンピュータ言語を用いて前記データモジュールを符号化し；前記ヘッダーブロックにデータモジュールに含める、手段である
請求項３１のマルチプロセッサシステム。
【請求項３６】
前記第１手段は、前記ペイロードブロックのビット長を示す情報を含むデータモジュールを発行し；前記スレーブプロセッサにより理解されるコンピュータ言語を用いて記データモジュールを符号化し；前記ヘッダーブロックに前記データモジュールを含める、手段である
請求項３１のマルチプロセッサシステム。
【請求項３７】
前記第２手段は、前記パススルーコマンドの受信を知らせる手段、を含む
請求項３１のマルチプロセッサシステム。
【請求項３８】
前記請求項３１のマルチプロセッサシステムは、少なくともビデオデータ処理又はレンダリング画像処理のいずれか一つを行う。
【請求項３９】
前記請求項３１のマルチプロセッサシステムは、携帯電話，ビデオゲーム機器，パーソナルデジタルアシスタント（ＰＤＡ），ラップトップコンピュータ，及びオーディオ／ビデオ機能デバイスからなるグループのうちから選択される無線通信装置の一部である。
【請求項４０】
マスタープロセッサとパイプライン型スレーブプロセッサとを備えるマルチプロセッサシステムは、
第１手段：
前記パイプライン型スレーブプロセッサにより理解される符合を用いてパススルーコマンドを発行し；前記パイプライン型スレーブプロセッサのうちの宛先のスレーブプロセッサにより理解される符号で少なくとも一つの命令を発行する、と、
第２手段：
前記パススルーコマンドを、再符号化することなしに、前記宛先のスレーブプロセッサに転送すると、を具備する
マルチプロセッサシステム。
【請求項４１】
前記第１手段は、前記マスタープロセッサにより実行されるコンピュータプログラムである
請求項４０のマルチプロセッサシステム。
【請求項４２】
前記第２手段は、前記パイプライン型スレーブプロセッサにより実行されるコンピュータプログラムである
請求項４０のマルチプロセッサシステム。
【請求項４３】
前記パススルーコマンドは、少なくとも前記パススルーコマンドの前記宛先のスレーブプロセッサへの転送を指示する命令である
請求項４０のマルチプロセッサシステム。
【請求項４４】
前記宛先のスレーブプロセッサは、前記少なくとも一つの命令を実行し、前記パススルーコマンドの転送を停止する
請求項４０のマルチプロセッサシステム。
【請求項４５】
前記宛先のスレーブプロセッサは、前記パイプライン型スレーブプロセッサにより理解される符合を用いて前記第１手段にアドレス指定され事前に決定される応答メッセージを発行する
請求項４０のマルチプロセッサシステム。
【請求項４６】
マスタープロセッサとパイプライン型スレーブプロセッサとを含むマルチプロセッサシステムを実行させるための命令を有するコンピュータ読取可能媒体を備えるコンピュータプログラムプロダクトは、
前記マスタープロセッサにおいて：ヘッダーブロックとペイロードブロックとを含み前記パイプライン型スレーブプロセッサにより理解されるコンピュータ言語を用いて符合化されたパススルーコマンドを発行させ；前記パイプライン型スレーブプロセッサのうちの宛先のスレーブプロセッサのために、前記宛先のスレーブプロセッサにより理解されるコンピュータ言語を用いて符合化される少なくとも一つの命令を発行させ；前記パススルーコマンドを、前記マスタープロセッサに接続される前記スレーブプロセッサへ送信させ、
前記パイプライン型スレーブプロセッサの宛先でないスレーブプロセッサにおいて：前記パススルーコマンドを、再符号化することなしに、前記パイプライン型スレーブプロセッサの隣接する下流のパイプライン型のスレーブプロセッサへ転送させ；宛先のスレーブプロセッサにおいて前記少なくとも一つの命令を実行させ、
宛先のスレーブプロセッサにおいて：少なくとも一つの命令を実行させる。
【請求項４７】
前記マスタープロセッサにおいて、パススルーコマンドを示す情報、及びデコードすることなく、前記パススルーコマンドを前記宛先のスレーブプロセッサへ転送する要求を含むデータモジュールを発行し；ヘッダーブロックに前記データモジュールを含めることにより、前記パススルーコマンドが発行される
請求項４６のコンピュータプログラムプロダクト。
【請求項４８】
前記マスタープロセッサにおいて、前記宛先のスレーブプロセッサを示す情報を含むデータモジュールを発行し前記パイプライン型スレーブプロセッサにより理解されるコンピュータ言語で前記データモジュールを符号化し；前記ヘッダーブロックに前記データモジュールを含めることにより、前記パススルーコマンドが発行される
請求項４６のコンピュータプログラムプロダクト。
【請求項４９】
前記マスタープロセッサにおいて、前記ペイロードブロックのビット長を示す情報を含むデータモジュールを発行し；前記パイプライン型スレーブプロセッサにより理解されるコンピュータ言語を用いて前記データモジュールを符号化すること；及び前記ヘッダーブロックに前記データモジュールを含めることにより、前記パススルーコマンドが発行される
請求項４６のコンピュータプログラムプロダクト。
【請求項５０】
前記マスタープロセッサにおいて、前記パススルーコマンドを前記パイプライン型スレーブプロセッサのうちの最も外側のスレーブプロセッサに転送することにより、前記パススルーコマンドが送信される
請求項４６のコンピュータプログラムプロダクト。
【請求項５１】
前記コンピュータ読取可能媒体は、前記宛先でないスレーブプロセッサに、前記宛先でない入力バッファから前記宛先でないスレーブプロセッサの出力バッファへ前記パススルーコマンドをコピーさせるための命令を更に備える
請求項４６のコンピュータプログラムプロダクト。
【請求項５２】
前記コンピュータ読取可能媒体は、前記宛先のスレーブプロセッサに、前記パススルーコマンドの返答を確認させるための命令を更に備える
請求項４６のコンピュータプログラムプロダクト。
【請求項５３】
前記コンピュータ読取可能媒体は、
前記宛先のスレーブプロセッサに：前記マスタープロセッサにより理解されるコンピュータ言語を用いて事前に決定されるメッセージを発行する；返答パススルーコマンドのペイロードブロック内に前記事前に決定されるメッセージを含める；前記返答パススルーコマンドのヘッダーブロック内の前記事前に決定されるメッセージのアドレスを指定する；前記返答パススルーコマンドを前記スレーブプロセッサの上流のパイプライン型スレーブプロセッサに転送する、命令を更に備える
請求項４６のコンピュータプログラムプロダクト。
【請求項５４】
前記マスタープロセッサ及び前記パイプライン型スレーブプロセッサは、携帯電話，ビデオゲーム機器，パーソナルデジタルアシスタント（ＰＤＡ），ラップトップコンピュータ，及びオーディオ／ビデオ機能デバイスからなるグループから選択される無線通信装置におけるビデオデータ処理又はレンダリング画像処理の少なくとも一つに適合される
請求項４６のコンピュータプログラムプロダクト。
【請求項５５】
マスタープロセッサとパイプライン型スレーブプロセッサとを含むマルチプロセッサシステムを実行させるための命令を有するコンピュータ読取可能媒体を備えるコンピュータプログラムプロダクトは、
前記マスタープロセッサにおいて：前記パイプライン型スレーブプロセッサにより理解される符合を用いてパススルーコマンドを発行させ、前記パススルーコマンドは、前記パイプライン型スレーブプロセッサのうちの宛先のスレーブプロセッサにより理解される符号での少なくとも一つの命令を含み、
前記パイプライン型スレーブプロセッサの宛先でないスレーブプロセッサにおいて：前記パススルーコマンドを、再符号化することなしに、前記パススルーコマンドが宛先のスレーブプロセッサに届くまで、前記パイプライン型スレーブプロセッサの隣接する下流のパイプライン型のスレーブプロセッサへ転送させる。
【請求項５６】
マスタープロセッサとパイプライン型スレーブプロセッサとを有するマルチプロセッサシステムにおいて、スレーブプロセッサへの命令伝達のための方法であって、前記方法は、
前記マスタープロセッサにおいて：ヘッダーブロックとペイロードブロックとを含み、前記ヘッダーブロックは前記パイプライン型スレーブプロセッサにより理解されるコンピュータ言語を用いて符合化され；前記パイプライン型スレーブプロセッサのうちの宛先のスレーブプロセッサのために、前記宛先のスレーブプロセッサにより理解されるコンピュータ言語を用いて符合化される少なくとも一つの命令を発行し；前記ペイロードブロックに前記少なくとも一つの命令を含め；前記パススルーコマンドを、前記マスタープロセッサとの接続に適合された前記パイプライン型スレーブプロセッサのスレーブプロセッサに送信し、
宛先でないスレーブプロセッサにおいて：前記パススルーコマンドを、再符号化することなしに、前記パイプライン型スレーブプロセッサの隣接する下流のパイプライン型のスレーブプロセッサに転送し、
前記宛先のスレーブプロセッサにおいて：前記少なくとも一つの命令を実行する
ことを具備する。
【請求項５７】
前記パススルーコマンドを発行するステップは：前記パススルーコマンドを示す情報、及びデコードすることなく、前記パススルーコマンドを前記宛先のスレーブプロセッサへ転送する要求を含むデータモジュールを発行すること；前記ヘッダーブロックに前記データモジュールを含めること、を備える
請求項５６の方法。
【請求項５８】
前記パススルーコマンドを発行するステップは：前記宛先のスレーブを示す情報を含むデータモジュールを発行すること；前記パイプライン型スレーブプロセッサにより理解されるコンピュータ言語で前記データモジュールを符号化すること；前記ヘッダーブロックに前記データモジュールを含めること、を備える
請求項５６の方法。
【請求項５９】
前記パススルーコマンドを発行するステップは：前記ペイロードブロックのビット長を示す情報を含むデータモジュールを発行すること；前記パイプライン型スレーブプロセッサにより理解されるコンピュータ言語を用いて前記データモジュールを符号化すること；前記ヘッダーブロックに前記データモジュールを含めること、を備える
請求項５６の方法。
【請求項６０】
前記パススルーコマンドを送信するステップは：前記パススルーコマンドを、前記パイプライン型スレーブプロセッサの最も外側の前記スレーブプロセッサに転送すること、を更に備える
請求項５６の方法。
【請求項６１】
前記宛先でないスレーブプロセッサにおいて、前記宛先でないスレーブプロセッサの入力バッファから前記宛先でないスレーブプロセッサの出力バッファへ前記パススルーコマンドをコピーすること、を更に備える
請求項５６の方法。
【請求項６２】
前記宛先のスレーブプロセッサにおいて、前記パススルーコマンドの受信を知らせること、を更に備える
請求項５６の方法。
【請求項６３】
前記宛先のスレーブプロセッサにおいて、前記マスタープロセッサにより理解されるコンピュータ言語を用いて事前に決定されるメッセージを発行する；返答パススルーコマンドのペイロードブロックに前記事前に決定されるメッセージを含める；前記マスタープロセッサへ、返答パススルーコマンドのペイロードブロック内の前記事前に決定されるメッセージのアドレスを指定する；前記返答パススルーコマンドを前記スレーブプロセッサの上流のスレーブプロセッサに転送すること、を更に備える
請求項６２の方法。
【請求項６４】
前記マスタープロセッサ及び前記スレーブプロセッサは、少なくともビデオデータ処理又はレンダリング画像処理のいずれか一つを行うように適合される
請求項５６の方法。
【請求項６５】
請求項５６の方法を実行するためにマスタープロセッサにより前記マスタープロセッサ及びスレーブプロセッサが制御される無線装置であって、前記無線装置は：
携帯電話，ビデオゲーム機器，パーソナルデジタルアシスタント（ＰＤＡ），ラップトップコンピュータ，及びオーディオ／ビデオ機能デバイスからなるグループから選択されるものである。
【請求項６６】
マスタープロセッサとパイプライン型スレーブプロセッサとを有するマルチプロセッサシステムにおいて、スレーブプロセッサへの命令伝達のための方法であって、前記方法は、
前記マスタープロセッサにおいて：前記パイプライン型スレーブプロセッサにより理解される符合を用いてパススルーコマンドを発行し、；前記パススルーコマンドは、前記パイプライン型スレーブプロセッサのうちの宛先のスレーブプロセッサにより理解される符合少なくとも一つの命令を少なくとも含み、
前記パイプライン型のうちの宛先のスレーブプロセッサにおいて：前記パススルーコマンドを、再符号化することなしに、前記パススルーコマンドが前記宛先のスレーブプロセッサに届くまで、前記パイプライン型スレーブプロセッサの隣接する下流のスレーブプロセッサへ転送する。
【請求項６７】
前記少なくとも一つの命令を実行すること；前記パススルーコマンドの転送を終了すること、を更に備える
請求項６６の方法。
【請求項６８】
前記宛先のスレーブプロセッサにおいて：前記パイプライン型スレーブプロセッサにより理解される符号を用いて、前記マスタープロセッサにアドレスが指定された、事前に決定される返答メッセージを発行し；
前記スレーブプロセッサにおいて：前記返答メッセージを、前記返答メッセージが前記マスタープロセッサに届くまで、再符号化することなく、前記パイプライン型スレーブプロセッサの隣接する下流のスレーブプロセッサへ転送すること、更に備える
請求項６６の方法。
【請求項６９】
請求項６６の方法を実行するためにマスタープロセッサにより前記マスタープロセッサ及びスレーブプロセッサが制御される無線装置であって、前記無線装置は：
携帯電話，ビデオゲーム機器，パーソナルデジタルアシスタント（ＰＤＡ），ラップトップコンピュータ，及びオーディオ／ビデオ機能デバイスからなるグループから選択されるものである。
【発明の詳細な説明】
【関連出願の表示】
【０００１】
この出願は、２００７年３月２３日に出願された米国仮特許出願番号60/896,497の利益を要求する。前述の出願の全体は、参照によって本明細書に組込まれる。
【技術分野】
【０００２】
以下の開示は、マルチプロセッサシステムの分野一般に関し、特に、マスタープロセッサとパイプライン型スレーブプロセッサを有するマルチプロセッサシステムにおいて、スレーブプロセッサへの命令を伝達するための方法に関する。
【背景技術】
【０００３】
複合的なコンピュータシステムにおいて、一般の作業量は、しばしば複数のプロセッサにより並行的にあちこちに割り当てられ、実行される。マルチプロセッサシステムは、一般的に複数のパイプライン型（即ち、直列に接続された）プロセッサ又は共同のプロセッサを管理するマスタープロセッサ含み、そしてそれはここでは集合的にスレーブプロセッサと称する。例えば、そのようなマルチプロセッサシステムは、特に計算量の多いアプリケーションで、大量のビデオデータやレンダリング画像の処理のために用いられ得る。
【０００４】
しかしながら、マルチプロセッサシステムにおいて、マスタープロセッサ及びそれぞれのスレーブプロセッサは、自身の、従って異なるプログラム言語によってフォーマットされた命令（即ち、コマンド）やデータを用いて動作し得る。従来、マスタープロセッサによりそれぞれのスレーブプロセッサへ転送された命令は、自身のプログラム言語でそれぞれの中間のスレーブプロセッサによりデコードされ、次の下流の中間のスレーブプロセッサにおいて再び符号化され、続いてプロセッサに転送される。
【０００５】
受けた命令をデコードし、下流の中間スレーブプロセッサのプログラム言語における再符号化の後にそれらを下流に転送するそのようなサイクルは、命令が意図された又は宛先のスレーブプロセッサに届くまで続けられる。宛先のスレーブプロセッサに命令が届いたとき、受けた命令は、そのプロセッサの自身のプログラム言語で符号化され、実行される。
【０００６】
スレーブプロセッサへ命令伝達のためのそのようなマルチステップルーチンの複雑さは、マルチプロセッサシステム全体のパフォーマンスに悪影響を与え、特に、システムのデザインの柔軟性やコマンド処理を制限する。マスタープロセッサからパイプライン型スレーブプロセッサへの効率を向上させることに当技術において相当の努力が払われているにもかかわらず、更なる改良が求められている。
【０００７】
従って、当技術において、マルチプロセッサのパイプライン型プロセッサへの命令の伝達を効率的に実行する技術に対する要求がある。
【発明の概要】
【０００８】
マスタープロセッサとパイプライン型スレーブプロセッサとを有するマルチプロセッサシステムにおいて、スレーブプロセッサへの命令の伝達のための方法について、以下に記述する。実施例において、マスタープロセッサは、ヘッダーブロック（a header block）及び宛先のスレーブプロセッサへの命令を含むペイロードブロック（a payloed block）を有するパススルーコマンドを発生する。ヘッダーブロックは、パイプライン型スレーブプロセッサにより理解されるコンピュータ言語を用いて符合化される。ペイロードブロックは、宛先のスレーブプロセッサにより理解されるコンピュータ言語で符号化される。マスタープロセッサは、パイプライン型スレーブプロセッサの最も外側の一つにパススルーコマンドを転送し、その後そのパススルーコマンドは、宛先のスレーブプロセッサにパススルーコマンドが届くまで中間（即ち、宛先でない）スレーブプロセッサにより、再符号化なしに、再送信され、宛先のスレーブプロセッサは命令を実行する。
【０００９】
一デザインにおいて、システムは、ビデオデータ又はレンダリング画像の少なくとも１つを処理する効果的な方法を用いる。
【００１０】
本発明の様々な側面及び実施例は、以下に更に詳細に記載される。
【００１１】
この概要は、本発明の全範囲及び範囲を表わすことを意図されたり、解釈されたりするべきではなく、これら及びさらなる側面は、特に添付した図面と共に参照すると、詳細な説明から容易に明らかとなるであろう。
【図面の簡単な説明】
【００１２】
【図１】見本的なマルチプロセッサシステムのブロックダイアグラムを示す。
【図２】図１中のマルチプロセッサシステムにおいて使用されるパススルーコマンドの構造の概略図を示す。
【図３】図１中のマルチプロセッサシステムにおけるパイプライン型スレーブプロセッサへの命令を伝達するための方法のフローダイアグラムを示す。
【００１３】
理解を容易にするために、可能であれば、図面に共通の同一の要素を指すために、適切な場合にそのような要素を区別するために添え字を付加する場合を除いて、同一の参照符号を用いる。図中のイメージは、図示の目的のため単純化されたものであり、実寸を描いたものではない。一実施例の特徴又はステップが更なる詳述なしに他の実施例において恩恵的に取り込まれ得る。
【００１４】
添付の図面は、本発明の見本的な実施例を図示しており、従って他の同等に効果的な実施例に適用され得る、本発明の範囲を限定するものと解釈されるべきではない。
【発明を実施するための形態】
【００１５】
ここで、”見本的に（exemplary）”の語は、ここでは”例示、事例、又は実例として働く”という意味に用いられる。”見本的に（exemplary）”本明細書において記述されたいずれの実施例又は図面も、必ずしも、望ましいもの、他の実施例又はデザインよりも効果的なものと考慮されるべきではない。
【００１６】
図面を参照すると、図１は、本発明の一実施例に従った例示的なマルチプロセッサシステム１００のブロックダイアグラムを描写するものである。例示的なアプリケーションにおいて、このシステム１００はビデオデータ及び／又はレンダリング画像の処理のために用いられ得、特に、計算量が多いデータ処理アプリケーションで用いられ得る。
【００１７】
一つの見本的な実施例において、このシステム１００は、例えば、携帯電話、ビデオゲーム器、パーソナルデジタルアシスタント（ＰＤＡ）、ラップトップコンピュータ、オーディオ／ビデオ機能デバイス等の無線通信装置の画像処理ユニット（ＧＰＵ：graphics processing unit）の一部である。
【００１８】
ＧＰＵは、例えば、２００５年７月２８日の文献”OpenVG Specification, Version 1.0”に準拠しており、この文献は公に利用可能である。この文献は、例えば、携帯電話やその他の上記無線通信装置等の手持ち式の又はモバイル機器に適する２−Ｄベクトルグラフィックについての規格である。
【００１９】
図示の実施例において、このシステム１００は、マスタープロセッサ１１０、及びシステムインターフェイス１２６１−１２６ｋをそれぞれ用いて接続された複数（１０１）のパイプライン型スレーブプロセッサ１２０１−１２０ｋを例として備える。ここで、Ｋは整数であって、２以上（Ｋ≧２）である。一実施例において、システムインターフェイス１２６１−１２６ｋのそれぞれは、データバス、アドレスバス、コマンドバス（ここでは図示せず）を含む。マスタープロセッサ１１０及びスレーブプロセッサ１２０１−１２０ｋのそれぞれは、サブプロセッサ、メモリ、周辺デバイス、サポート回路、そのような物を含み得、そしてそれらは、略して、集合的にモジュール１１１や１２１１−１２１ｋとして、ここではそれぞれ示されている。
【００２０】
マスタープロセッサ１１０及びパイプライン型スレーブプロセッサ１２０１−１２０ｋは、例えば、混載（ＳｏＣ）装置のような集積回路（ＩＣ）に形成され得る。あるいは、マスタープロセッサ１１０及びパイプライン型スレーブプロセッサ１２０１−１２０ｋの少なくとも一つは、別々の集積回路に形成され得る。
【００２１】
動作の際、マスタープロセッサ１１０は、パイプライン型スレーブプロセッサ１２０１−１２０ｋにおけるデータ処理を制御し、また、随意にモニターする。マスタープロセッサ１１０及びそれぞれのパイプライン型スレーブプロセッサ１２０１−１２０ｋは、内部命令生成のため又は内部データ交換実行のために、異なったフォーマット（即ち、コンピュータ言語）用いて動作し得る。
【００２２】
マスタープロセッサ１１０は、インプットバッファ（ＩＢ）１１２や出力バッファ（ＯＢ）１１４を含んだ入力／出力（Ｉ／Ｏ）モジュール１１８を備える。これと対応するように、スレーブプロセッサ１２０１−１２０ｋのそれぞれは、インプットバッファ１２２や出力バッファ１２４を有する入力／出力（Ｉ／Ｏ）モジュール１２８を備える。動作の際、Ｉ／Ｏモジュール１１８、１２８１−１２８ｋは、このシステム１００内部又はこのシステム１００へ／からの情報交換を容易にする。
【００２３】
インターフェイス１０２を用いて、マスタープロセッサ１１０の入力バッファ１１２は、集合的に手段１０４として図示される、リモートプロセッサ、ネットワーク、又はユーザ制御手段の少なくとも一つに接続され得る。同様に、インターフェイス１０７を用い、スレーブプロセッサ１２０ｋの出力バッファ１２４ｋは、集合的に手段１０６として図示される、他のリモートプロセッサ、ネットワーク、又はユーザ制御装置の少なくとも一つに接続され得る。
【００２４】
システム１００において、複数の双方向型インターフェイス１２６をそれぞれ介して、先行する（即ち、上流側の）スレーブプロセッサ１２０の入力バッファ１２２は、隣接する下流側のスレーブプロセッサ１２０の出力バッファ１２４に接続され、この結果、複数（１０１）のパイプライン型スレーブプロセッサ１２０１−１２０ｋを形成する。例えば、スレーブプロセッサ１２０２の入力バッファ１２２２は、システムインターフェイス１２６２を介して、スレーブプロセッサ１２０１の出力バッファ１２４１に接続され、スレーブプロセッサ１２０２の出力バッファ１２４２は、システムインターフェイス１２６３を介して、スレーブプロセッサ１２０３（図示せず）の入力バッファ１２２３に接続される。
【００２５】
一実施例において、マスタープロセッサ１１０の出力バッファ１１４は、システムインターフェイス１２６１を介し、複数１１０のパイプライン型スレーブプロセッサ１２０のうちの最も外側のスレーブプロセッサの入力バッファ、即ち、スレーブプロセッサ１２０１の入力バッファ１２２１に接続される。動作の際、マスタープロセッサ１１０は、それぞれのスレーブプロセッサへ命令発生及び命令送信することにより、スレーブプロセッサ１２０１−１２０ｋに対する制御を管理する。これらの命令の意図された受け取り手であるスレーブプロセッサは、以下、単に宛先のスレーブプロセッサとして記述する。この命令は、システムインターフェイス１２６１を介して、マスタープロセッサ１１０の出力バッファ１１４から最も外側のスレーブプロセッサ１２０１の入力バッファ１２２１へ、転送される。
【００２６】
宛先のスレーブプロセッサに到達するために、その命令は、一つ又は複数の中間の上流のスレーブプロセッサ、即ち、マスタープロセッサと宛先のスレーブプロセッサとの間に配置されるスレーブプロセッサにより、受信され、続いて下流に向けて再送信、即ち転送される。ここで、”転送すること”及び”再送信すること”の語は、交換可能であるように（interchangeably）として用いる。
【００２７】
より具体的には、それぞれのインターフェイスを介し、上流のスレーブプロセッサの出力バッファからの命令は、下流のスレーブプロセッサ（即ち、転送方向として矢印１０３を用いて図示された）の入力バッファに転送され、その後、スレーブプロセッサは、同様に、更に下流へ宛先のスレーブプロセッサに届くまで命令を転送する。
【００２８】
例えば、宛先のスレーブプロセッサがスレーブプロセッサ１２０３であるとき、スレーブプロセッサ１２０１は、システムインターフェイス１２６２を介して、下流のスレーブプロセッサ１２０２へ命令を転送し、そしてその後スレーブプロセッサ１２０２はその命令を宛先のスレーブプロセッサ１２０３に再送信し、そこで命令は実行される。
【００２９】
図２に示すように、宛先のスレーブプロセッサに命令を効率的に伝達するために、マスタープロセッサ１１０は、パススルーコマンド２００を発行する。一実施例において、このパススルーコマンド２００は、以下の（ｉ）及び（ｉｉ）を命令する：（ｉ）それぞれの宛先でないスレーブプロセッサに対して、パススルーコマンドを再符号化することなしにそれぞれの下流のスレーブプロセッサに転送すること（即ち、パススルーコマンドを矢印１０３の方向に再送信すること）、及び（ｉｉ）宛先のスレーブプロセッサに対して、パスルーコマンドに含まれる命令を実行すること。特に、パススルーコマンド２００は、宛先でないスレーブプロセッサ１２０に対して、スレーブプロセッサの入力バッファ１２２から出力バッファ１２４へ受信したパススルーコマンドをコピーすることを、命令し得る。
【００３０】
一実施例において、パススルーコマンド２００は、ヘッダーブロック２１０及びペイロードブロック２２０を含む。ヘッダーブロック２１０は、複数（１０１）の全てのパイプライン型スレーブプロセッサ１２０１−１２０ｋにより理解されるコンピュータ言語を用いて符合化される。ここで、”コンピュータ言語”の語は、プログラム言語、及びマスター及びスレーブプロセッサにより用いられる命令及びデータのためのフォーマットに関して集合的に用いられる。
【００３１】
一つの見本的な実施例において、ヘッダーブロック２１０は、データモジュール２０２，２０４，及び２０６を含む。別の実施例（図示せず）において、データモジュール２０２，２０４，及び２０６の内容は、１つのデータモジュールを形成するか、又はいずれか２つのデータモジュールの内容が１つのデータモジュール内に含まれ得る。
【００３２】
データモジュール２０２は、マスタープロセッサ１１０の他のコマンドのうちでパススルーコマンド２００を示す情報（即ち、パススルーコマンドのＩＤ）を含む。データモジュール２０４は、宛先のスレーブプロセッサを示す情報（即ち、宛先のスレーブプロセッサのアドレス）を含む。データモジュール２０６は、ペイロードブロック２２０のビット長（例えば、バイト単位で）を示す情報を含む。別の実施例（図示せず）において、ヘッダーブロック２１０では、データモジュール２０６は、データモジュール２０４を先行し得る。
【００３３】
ペイロードブロック２２０は、宛先のスレーブプロセッサにより理解されるコンピュータ言語を用いて符号化され、それぞれの宛先のスレーブプロセッサによる実行のため、マスタープロセッサ１１０により発行された命令を有する少なくとも一つのデータモジュール２２２（データモジュール２２２１−２２２ｋを示し、ここでＮは整数であって１以上（Ｎ≧１）である）を含む。
【００３４】
更なる実施例において、パススルーコマンド２００は、宛先のスレーブプロセッサに対し、予め決定されたメッセージを上流の（即ち、矢印１０５を用いた方向で）マスタープロセッサへ送信することによりコマンドの受信又は実行を確認することを命令し得る。例えば、そのようなメッセージをマスタープロセッサ１１０へ効果的に伝達するため、パススルーコマンド２００は、宛先のスレーブプロセッサに対して、以下の（ｉ）〜（ｉｉｉ）を命令し得る。
【００３５】
（ｉ）受信したパススルーコマンドのデータモジュール２０４において、宛先のスレーブプロセッサを示す情報をマスタープロセッサ１１０を示す情報で置き換えること、
（ｉｉ）ペイロードブロック２２０において予め決定されたメッセージを含むこと、及び
（ｉｉｉ）隣接する上流のスレーブプロセッサへ修正された（即ち、返答）パススルーコマンドを転送すること。
【００３６】
図３は、図１のマルチプロセッサシステム１００におけるパイプライン型スレーブプロセッサ１２０へ命令を伝達するための方法３００を示すフロー図を描写している。さまざまな実施例において、方法３００の方法ステップが図示した順序で実行され、又はこれらのステップの少なくとも２つまたはその一部（例えば、サブステップ３１２、３１４、３１６、３１８）は、同時に、並行に、若しくは異なった順序で、実行され得る。当業者は、他の後述のプロセスの少なくとも一部またはルーチンの順序も変更され得ることを容易に理解するであろう。この発明を最良に理解するために、読み手は同時に図１〜３を参照すべきである。
【００３７】
ステップ３１０の際、マスタープロセッサ１１０は、パススルーコマンド２００を発行する。例として、ステップ３１０は、サブステップ３１２、３１４、３１６、３１８を含む。図示の実施例において、サブステップ３１２、３１４、３１６、３１８の間、マスタープロセッサ１１０は、パススルーコマンド２００のヘッダーブロック２１０を発行し、サブステップ３１８の間、マスタープロセッサはそれぞれパススルーコマンドのペイロードブロック２２０を発行する。
【００３８】
サブステップ３１２の際、マスタープロセッサ１１０は、ヘッダーブロック２１０のデータモジュール２０２を発行する。データモジュール２０２は、パススルーコマンド２００を示す情報を含み、この情報はスレーブプロセッサ１２０１−１２０ｋのそれぞれの一つにより理解されるコンピュータ言語を用いて符合化される。
【００３９】
サブステップ３１４の際、マスタープロセッサ１１０は、ヘッダーブロック２１０のデータモジュール２０４を発行する。データモジュール２０４は、宛先のスレーブプロセッサ（例えば、スレーブプロセッサ１２０ｋ）を示す情報、およびマスタープロセッサと宛先のスレーブプロセッサとの間に配置される中間の宛先でないスレーブプロセッサのための命令、を含む。
【００４０】
特に、データモジュール２０４は、パススルーコマンド２００をデコードすることなく下流の宛先のスレーブプロセッサに転送することを宛先でないスレーブプロセッサに求める要求を含む。一実施例において、宛先でないスレーブプロセッサは、それぞれの宛先でない入力バッファからスレーブプロセッサの出力バッファへ、パススルーコマンドをコピーするように命令される。データモジュール２０４の内容は、スレーブプロセッサ１２０１−１２０ｋのそれぞれの一つにより理解されるコンピュータ言語を用いて符合化される。
【００４１】
サブステップ３１６の際、マスタープロセッサ１１０は、ヘッダーブロック２１０のデータモジュール２０６を発行する。データモジュール２０６は、パススルーコマンド２００のペイロードブロック２２０のビット長を示す情報を含む。データモジュール２０２、２０４の内容と同様に、この情報は、スレーブプロセッサ１２０１−１２０ｋのそれぞれの一つにより理解されるコンピュータ言語を用いて符合化される。
【００４２】
サブステップ３１８の際、マスタープロセッサ１１０は、パススルーコマンド２００のペイロードブロック２２０を発行する。ペイロードブロック２２０は、宛先のスレーブプロセッサのための指示２２２の一つを少なくとも含む。ペイロードブロック２２０の内容（即ち、命令２２２１−２２２ｋ）は、宛先のスレーブプロセッサ（即ち、スレーブプロセッサ１２０ｋ）により理解されるコンピュータ言語を用いて符合化される。
【００４３】
ステップ３２０の際、マスタープロセッサ１１０は、パススルーコマンド２００を組み立て、最も外側のスレーブプロセッサ（即ち、スレーブプロセッサ１２０１）にこのコマンドを送信する。
【００４４】
ステップ３３０の際、マスタープロセッサ１１０は、最も外側のスレーブプロセッサが宛先のスレーブプロセッサの場合、そのプロセッサは、コマンドのペイロードブロック２２０に含まれる命令を実行する。従って、最も外側のスレーブプロセッサが宛先のスレーブプロセッサでない場合、最も外側のスレーブプロセッサは、パススルーコマンド２００を下流に隣接するスレーブプロセッサ（即ち、スレーブプロセッサ１２０２）に転送（再送信）する。そして、スレーブプロセッサが宛先のスレーブプロセッサでない場合、次の下流のスレーブプロセッサ（即ち、スレーブプロセッサ１２０３）にこの命令を転送する。このようなパススルーコマンド２００を送信するサイクルは、宛先のスレーブプロセッサにコマンドが届くまで、続く。一実施例において、ステップ３３０の間、受信されたパススルーコマンド２００は、再デコードすることなく、受け取った宛先でないスレーブプロセッサの入力バッファからこのプロセッサの出力バッファへ、コピーされる。
【００４５】
ステップ３４０の際、宛先のスレーブプロセッサにパススルーコマンド２００が届くと、コマンドのペイロードブロック２２０に含まれる命令を実行する。一実施例において、このような命令は、マスタープロセッサ１１０にパススルーコマンドの受信または実行を確認する要求を含む。図２を参照して説明したように、宛先のスレーブプロセッサからの返答通信は、マスタープロセッサ１１０宛ての修正されたパススルーコマンドのペイロードブロック２２０に含まれるメッセージを含み得る。このようなコマンドは、コマンドがマスタープロセッサに届くまで、宛先のプロセッサとマスタープロセッサ１１０との間に配置されたスレーブプロセッサ１２０により、順次、再送信される。
【００４６】
見本的な実施例において、方法３００は、一又は複数のコンピュータの実行可能な命令を含むコンピュータプログラムプロダクトの形態で、ハードウェア、ソフトウェア、ファームウェア、若しくはこれらの組み合わせにより実施され得る。ソフトウェアにより実行される場合、このコンピュータプログラムプロダクトは、コンピュータストレージメディアやコンピュータ通信メディアなどを含む、コンピュータが読み取り可能な媒体（medium）を用いて記憶または送信され得る。
【００４７】
この”コンピュータストレージメディア（computer storage medium）”の語は、ここでは、コンピュータにこの方法を実行させる命令を記憶するために適応された何らかの媒体（medium）を言う。例として、また限定することなく、コンピュータストレージメディアは、固体メモリデバイスや、電気的なメモリデバイス（即ち、ＲＡＭ，ＲＯＭ，ＥＥＰＲＯＭ等）や、光学的メモリデバイス（即ち、コンパクトディスク（ＣＤ）、大容量光ディスク（ＤＶＤ）等）や、磁気的メモリデバイス（ハードドライブ、フラッシュドライブ、テープドライブ等）のコンピュータプログラムプロダクトを記憶するように適用されるその他のメモリデバイス若しくはこれらのメモリデバイスの組み合わせが、含まれ得る。
【００４８】
この”コンピュータ通信メディア（computer communication medium）”の語は、ここでは、コンピュータプログラムプロダクトを、ある場所から、例えば、変調された搬送波、光学信号、直流や交流等の手段を用いて別の場所に運ぶために適応された、何らかの物理インターフェイスを言う。例として、また限定することなく、コンピュータ通信メディアは、ツイストペアケーブル、プリント若しくはフラットケーブル、同軸ケーブル、光ファイバーケーブル、デジタル加入者線（ＤＳＬ）、若しくはその他の有線、無線、光学シリアル若しくはパラレルインターフェイス、又はこれらの組み合わせが、含まれ得る。
【００４９】
ここまでの開示により記述されたことは、あらゆる当業者がこの開示を構成し、又は用いることができるように与えられている。当業者によれば開示に対するさまざまな変形は明らかであり、ここで定義されている一般原理は、この開示の思想又は範囲から逸脱することなく、その他の変形に適用し得る。従って、この開示は、ここで記述した例に限定されるものでなく、原理や新規の特徴あるここで開示された最も広い範囲に一致すると認められるべきである。
【図１】
2010522402.tif 000003
【図２】
2010522402.tif 000004
【図３】
2010522402.tif 000005
【国際調査報告】
2010522402.tif 000006
2010522402.tif 000007
2010522402.tif 000008
2010522402.tif 000009