(57)【特許請求の範囲】
【請求項１】
メモリデバイスにおける書き込みタイミングを調節するための方法であって、
データ信号、書き込みクロック信号、及び参照信号を受信することと、
サンプリングされた参照信号の位相測定をある期間にわたって計算することと、
前記サンプリングされた参照信号の前記計算された位相測定を、前記期間にわたって比較することと、
前記比較された位相測定に基づいて、位相シフトを前記期間にわたって生成することと、
前記位相シフトに基づいて位相誤差信号を生成することと、
前記位相誤差信号に基づいて、前記データ信号と前記書き込みクロック信号との間の位相差を調節することと、を備え、
前記メモリデバイスは、前記データ信号及び前記書き込みクロック信号の調節された書き込みタイミングに基づいて前記データ信号からデータを回復する方法。
【請求項２】
前記データ信号、書き込みクロック信号、及び参照信号を受信することは、前記データ信号に対して単位間隔の半分の位相シフトを伴う前記参照信号を受信することを備える請求項１の方法。
【請求項３】
前記位相シフトを生成することは、時間経過に伴いシフトした位相を伴う前記参照信号を受信することを備える請求項１の方法。
【請求項４】
前記位相シフトを生成することは、
前記参照信号における１つ以上のエッジ遷移を検出することと、
前記１つ以上のエッジ遷移の検出に基づいて前記参照信号の位相測定を計算することと、を備える請求項１の方法。
【請求項５】
前記位相測定を計算することは、
時間経過に伴い前記参照信号の位相測定を計算することと、
時間経過に伴い前記参照信号の位相を比較して前記位相シフトを生成することと、を備える請求項４の方法。
【請求項６】
前記位相差を調節することは、前記データ信号及び前記書き込みクロック信号の少なくとも一方に位相遅延を導入することを備える請求項１の方法。
【請求項７】
前記位相遅延を導入することは、前記書き込みクロック信号を前記データ信号に対して中心にアラインすることを備える請求項６の方法。
【請求項８】
前記位相遅延を導入することは、時間経過に伴う前記参照信号における前記位相シフトに基づいて前記位相遅延を修正することを備える請求項６の方法。
【請求項９】
メモリデバイスにおける書き込みタイミングを調節するための方法であって、
データ信号、書き込みクロック信号、及び参照信号をメモリデバイスへ送ることと、
サンプリングされた参照信号の位相測定をある期間にわたって計算することと、
前記サンプリングされた参照信号の前記計算された位相測定を、前記期間にわたって比較することと、
前記比較された位相測定に基づいて、位相誤差信号を計算することと、
前記位相誤差信号に基づいて、前記データ信号と前記書き込みクロック信号との間の位相差を調節することと、を備える方法。
【請求項１０】
前記データ信号、書き込みクロック信号、及び参照信号を送ることは、前記データ信号に対して単位間隔の半分の位相シフトを伴う前記参照信号を送ることを備える請求項９の方法。
【請求項１１】
前記位相差を調節することは、
前記参照信号のサンプリングされたバージョンを前記メモリデバイスから受信することと、
前記サンプリングされた参照信号をサンプリングすることと、
前記サンプリングされた参照信号の位相を生成することと、
前記サンプリングされた参照信号の前記位相を時間経過に伴い比較して位相誤差信号を生成することと、を備える請求項９の方法。
【請求項１２】
前記サンプリングされた参照信号の前記位相を生成することは、前記参照信号における１つ以上のエッジ遷移を検出することを備える請求項１１の方法。
【請求項１３】
前記サンプリングされた参照信号の前記位相を比較することは、前記１つ以上のエッジ遷移の検出に基づいて前記参照信号の位相計測を計算することを備える請求項１２の方法。
【請求項１４】
前記位相差を調節することは、前記参照信号における前記位相シフトに基づいて前記データ信号及び前記書き込みクロック信号の少なくとも一方に位相遅延を導入することを備える請求項１０の方法。
【請求項１５】
メモリデバイスにおける書き込みタイミングを調節するように構成されるシステムであって、
データ信号、書き込みクロック信号、及び参照信号を送信するように構成される処理ユニットと、
メモリデバイスとを備え、
前記メモリデバイスは、
前記データ信号及び前記書き込みクロック信号の書き込みタイミングに基づいて前記データ信号からデータを回復し、
サンプリングされた参照信号の位相測定をある期間にわたって計算し、
前記サンプリングされた参照信号の前記計算された位相測定を、前記期間にわたって比較し、
前記比較された位相測定に基づいて、位相誤差信号を前記期間にわたって生成し、
前記位相誤差信号に基づいて、前記データ信号と前記書き込みクロック信号との間の位相差を調節する、ように構成されている、
システム。
【請求項１６】
前記処理ユニットは中央処理ユニット、グラフィックス処理ユニット、及びメモリ制御器の少なくとも１つを備える請求項１５のシステム。
【請求項１７】
前記処理ユニットは前記データ信号に対して単位間隔の半分の位相オフセットを伴う前記参照信号を送信するように構成される請求項１５のシステム。
【請求項１８】
前記処理ユニットは前記メモリデバイスへの信号パスに沿って前記参照信号を駆動するように構成されるバッファを備える請求項１５のシステム。
【請求項１９】
前記メモリデバイスはダイナミックランダムアクセスメモリデバイスを備える請求項１５のシステム。
【請求項２０】
前記メモリデバイスは、
前記参照信号を前記処理ユニットから受信するように構成されるバッファと、
前記書き込みクロック信号を用いて前記バッファの出力をサンプリングすると共に前記出力の位相を検出するように構成される第１の位相補間器と、
前記サンプリングされた出力を時間経過に伴い比較すると共に位相誤差信号を計算するように構成されるフィルタと、
前記位相誤差信号を受信すると共に前記位相誤差信号に基づいて前記データ信号と前記書き込みクロック信号との間の相対的な位相を調節するように構成される第２の位相補間器と、を備える請求項１５のシステム。
【請求項２１】
前記第１の位相補間器は前記位相誤差信号を受信すると共に前記位相誤差信号に基づいて前記書き込みクロック信号の位相を調節することにより前記書き込みクロック信号を前記データ信号にアラインするように構成される請求項２０のシステム。
【請求項２２】
前記第２の位相補間器は前記データ信号及び前記書き込みクロック信号の少なくとも一方に位相遅延を導入するように構成される請求項２０のシステム。
【請求項２３】
メモリデバイスにおける書き込みタイミングを調節するように構成されるシステムであって、
データ信号、書き込みクロック信号、及び参照信号を受信すると共に前記データ信号及び前記書き込みクロック信号の書き込みタイミングに基づいて前記データ信号からデータを回復するように構成されるメモリデバイスと、
処理ユニットとを備え、
前記処理ユニットは、
前記データ信号、書き込みクロック信号、及び参照信号を前記メモリデバイスへ送信し、
サンプリングされた参照信号の位相測定をある期間にわたって計算し、
前記サンプリングされた参照信号の前記計算された位相測定を、前記期間にわたって比較し、
前記比較された位相測定に基づいて、位相誤差信号を前記期間にわたって生成し、
前記位相誤差信号に基づいて、前記データ信号と前記書き込みクロック信号との間の位相差を調節する、ように構成されている、
システム。
【請求項２４】
前記メモリデバイスは、
前記参照信号を前記処理ユニットから受信するように構成される第１のバッファと、
前記書き込みクロック信号を用いて前記第１のバッファの出力をサンプリングするように構成されるサンプリングデバイスと、
前記サンプリングされた出力を前記メモリデバイスから前記処理ユニットへ送信する第２のバッファと、を備える請求項２３のシステム。
【請求項２５】
前記処理ユニットは、
前記参照信号を前記メモリデバイスへ送信するように構成される第１のバッファと、
前記参照信号のサンプリングされたバージョンを前記メモリデバイスから受信するように構成される第２のバッファと、
前記サンプリングされた参照信号をサンプリングすると共に前記サンプリングされた参照信号の位相を検出するように構成される第１の位相補間器と、
前記サンプリングされた参照信号の前記位相を時間経過に伴い比較すると共に位相誤差信号を計算するように構成されるフィルタと、
前記位相誤差信号を受信すると共に前記位相誤差信号に基づいて前記データ信号と前記書き込みクロック信号の間での相対的な位相を調節するように構成される第２の位相補間器と、を備える請求項２３のシステム。
【請求項２６】
前記第２の位相補間器は前記データ信号及び前記書き込みクロック信号の少なくとも一方に位相遅延を導入するように構成される請求項２５のシステム。
【請求項２７】
前記位相遅延は、前記書き込みクロック信号及び前記データ信号が前記メモリデバイスに到達するときに前記書き込みクロック信号及び前記データ信号が互いに対して中心でアラインされるように前記書き込みクロック信号における位相遅延を備える請求項２６のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、概してメモリデバイスにおける書き込みタイミングの調節に関する。より特定的には、本発明の実施形態は、参照信号に基づいてメモリデバイスの書き込みタイミングを調節することに言及する。
【背景技術】
【０００２】
処理ユニットとメモリデバイスの間でのデータ通信は、典型的には、例えばワイヤ及びトレース等の信号パスに沿ってデータを送信することを伴う。同期インタフェースを伴うメモリデバイスにおいては、処理ユニットは、クロック信号をデータ信号と共にメモリデバイスへ送信することがある。クロック信号は、データ信号がいつメモリデバイスによってラッチされるべきかを決定するために用いられ、このようにしてメモリデバイスを処理ユニットに同期させる。正確なデータ回復のために、メモリデバイスは、クロック信号がデータ信号をサンプリングすることが可能な時間周期内でクロック信号を受信する必要がある（例えばクロック信号は、データ信号のデータアイに対応する時間の周期内でデータ信号をサンプリングする必要がある）。さもなければ、メモリデバイスは正確なデータ値を回復することができないであろう。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
温度やジッタ(jitter)等の実体的なばらつきは、処理ユニットからメモリデバイスへ伝送されるデータ信号及びクロック信号の減衰の原因となり得るので、データ信号の完全性における損失を引き起こす可能性がある。その結果、メモリデバイスによる貧弱な又は不正確なデータ回復がもたらされ得る。コンピュータシステムにおける動作周波数が高くなるに従って、処理ユニットからメモリデバイスへより高速にデータを伝送する必要性が生じている。従って、メモリデバイスは、より高速にデータをサンプリングすることを必要とするだけでなく、適切なタイミングでデータをサンプリングすることを必要とする。
【課題を解決するための手段】
【０００４】
本発明の実施形態は、メモリデバイスにおける書き込みタイミングを調節するための方法を含む。方法は、データ信号、書き込みクロック信号、及び参照信号を受信することを含むことができる。参照信号は、データ信号に対して単位間隔の半分の位相シフトを有することができる。方法はまた、参照信号における位相シフトを検出することを含むことができ、位相シフトは参照信号のエッジ遷移に基づいて検出され得る。参照信号の位相は、１つ以上のエッジ遷移の検出に基づいて計算されることができ、参照信号の位相は時間経過に伴いシフトし得る。更に、方法はまた、参照信号の位相シフトに基づいてデータ信号と書き込みクロック信号の間での位相差を調節することを含むことができ、メモリデバイスは、データ信号及び書き込みクロックの調節された書き込みタイミングに基づいてデータ信号からデータを回復する。
【０００５】
本発明の実施形態は、メモリデバイスにおける書き込みタイミングを調節するための別の方法を更に含む。方法は、データ信号、書き込みクロック信号、及び参照信号をメモリデバイスへ送ることと、参照信号における位相シフトに基づいてデータ信号と書き込みクロック信号の間での位相差を調節することと、を含むことができる。
【０００６】
本発明の実施形態はまた、メモリデバイスにおける書き込みタイミングを調節するように構成されるシステムを含む。システムは、データ信号、書き込みクロック信号、及び参照信号を送信するように構成される処理ユニットと、データ信号及び書き込みクロック信号の書き込みタイミングに基づいてデータ信号からデータを回復すると共に参照信号における位相シフトに基づいてデータ信号と書き込みクロック信号の間での位相差を調節するように構成されるメモリデバイスと、を含むことができる。
【０００７】
本発明の実施形態は、メモリデバイスにおける書き込みタイミングを調節するように構成される別のシステムを更に含む。システムは、データ信号、書き込みクロック信号、及び参照信号を受信すると共にデータ信号及び書き込みクロック信号の書き込みタイミングに基づいてデータ信号からデータを回復するように構成されるメモリデバイスと、データ信号、書き込みクロック信号、及び参照信号をメモリデバイスへ送信すると共に参照信号における位相シフトに基づいてデータ信号と書き込みクロック信号の間での位相差を調節するように構成される処理ユニットと、を含むことができる。
【０００８】
本発明の実施形態は、メモリデバイスにおける書き込みタイミングを調節するように構成される別のシステムを更に含む。システムは、データ信号、書き込みクロック信号、及び参照信号を送信するように構成される処理ユニットと、データ信号及び書き込みクロック信号の書き込みタイミングに基づいてデータ信号からデータを回復すると共に参照信号における位相シフトに基づいてデータ信号と書き込みクロック信号の間での位相差に対応する情報を処理ユニットへ送信するように構成されるメモリデバイスと、を含むことができる。処理ユニットはまた、メモリデバイスから送信された情報に基づいてデータ信号と書き込みクロック信号の間での位相差を調節するように構成され得る。
【０００９】
本発明の更なる特徴及び利点の他、本発明の種々の実施形態の構成及び動作は、添付の図面を参照して以下に詳細に説明される。本発明はここに説明される特定の実施形態に限定されないことに留意されたい。そのような実施形態は例示のみを目的としてここに提示されている。ここに含まれる教示に基づいて追加の実施形態が関連分野を含めた当業者にとって明らかであろう。
【図面の簡単な説明】
【００１０】
ここに組み込まれ且つ出願書類の一部をなす添付の図面は、本発明の実施形態を示し、そして明細書と共に、本発明の原理を説明し関連分野を含めた当業者が本発明を作りまた用いることを可能にするのに更に役に立つ。
【００１１】
【図１】図１は処理ユニット及びメモリデバイスを伴う例示的なコンピュータシステムを示す図である。
【００１２】
【図２】図２はメモリデバイスによる適切なデータ回復を代表する例示的な書き込みタイミング図を示す図である。
【００１３】
【図３】図３はメモリデバイスによる適切なデータ回復を代表しない例示的な書き込みタイミング図を示す図である。
【００１４】
【図４】図４はメモリデバイスにおける書き込みタイミングを調節するように構成されるコンピュータシステムの実施形態を示す図である。
【００１５】
【図５】図５はデータ信号、参照信号、及び書き込みクロックのための書き込みタイミング図の実施形態を示す図である。
【００１６】
【図６】図６はメモリデバイスにおける書き込みタイミングを調節するように構成されるコンピュータシステムの別の実施形態を示す図である。
【００１７】
【図７】図７はメモリデバイスにおける書き込みタイミングを調節するように構成されるコンピュータシステムの別の実施形態を示す図である。
【００１８】
【図８】図８はメモリデバイスにおける書き込みタイミングを調節するための方法の実施形態を示す図である。
【００１９】
【図９】図９は本発明の実施形態が実装され得る例示的なコンピュータシステムを示す図である。
【発明を実施するための形態】
【００２０】
以下の詳細な説明は、本発明に従う例示的な実施形態を示す添付の図面を参照する。他の実施形態も可能であり、また本発明の精神及び範囲内で実施形態に対して修正がなされ得る。従って、詳細な説明は本発明を限定することを意図されていない。むしろ、本発明の範囲は添付の特許請求の範囲によって画定される。
【００２１】
以下に説明されるように、本発明は、ソフトウエア、ハードウエア、ファームウエア、及び／又は図面に示される構成要素の多くの異なる実施形態において実装され得ることが当業者には明らかであろう。従って、本発明の実施形態の動作的な挙動は、ここに提示されるレベルの詳細を与えられて実施形態の修正及び変形が可能であるという理解の下で説明されることになる。
【００２２】
図１は処理ユニット及びメモリデバイスを伴う例示的なコンピュータシステム１００を示す図である。コンピュータシステム１００は、処理ユニット１１０、メモリデバイス１２０、データバス１３０７〜１３００、及びクロック１４０（例えば書き込みクロック）を含む。
【００２３】
処理ユニット１１０は、データバス１３０７〜１３００を介してメモリデバイス１２０へデータを送信する。処理ユニット１１０は、例えば、中央処理ユニット（ＣＰＵ）、グラフィックス処理ユニット（ＧＰＵ）、又はメモリ制御器であり得る。例示の目的で、データバス１３０７〜１３００は８ビットデータバスとして示されている。ここでの説明に基づいて、関連分野を含めた当業者であれば、データバス１３０７〜１３００のバス幅が変化し得る（例えば１６ビット、３２ビット等）ことを認識するであろう。
【００２４】
メモリデバイス１２０は、処理ユニット１１０から伝送されたデータを記憶する。データ（処理ユニット１１０から伝送されたデータ）の受信及び記憶は、メモリデバイス１２０への「書き込み(writing)」として知られている。メモリデバイス１２０は同期インタフェースを伴って構成されてよく、メモリデバイス１２０は、データバス１３０７〜１３００上のデータを処理する前に同期インタフェースにおいて書き込みクロック１４０を待つ。例えば、メモリデバイス１２０は、データバス１３０７〜１３００からのデータを抽出するために、受信した書き込みクロック１４０にアラインされた内部クロック信号を生成することができる。
【００２５】
図２は、メモリデバイス１２０による適切なデータ回復を代表する、コンピュータシステム１００のための例示的な書き込みタイミング図２００を示す図である。書き込みタイミング図２００は、データ信号１３００に対するデータアイ及び書き込みクロック１４０のためのタイミングを含み、データアイは、書き込みクロック１４０がデータ信号１３００をサンプリングするために用いられ得る時間の周期２１０を定義する（例えば、メモリデバイス１２０による適切なデータ回復は時間の周期２１０内で起こり得る）。データアイは、例えば、有効バイナリ値を伴うデータ信号１３００の部分を参照する。ここで、書き込みクロック１４０は、データ信号１３００に対して中央にアラインされており、そして書き込みクロック１４０がＨＩＧＨの場合（又は論理値の「１」を有している場合）にデータアイ内でデータ信号１３００をサンプリングする。
【００２６】
図３は、メモリデバイス１２０による適切なデータ回復を代表していない、コンピュータシステム１００のための例示的な書き込みタイミング図３００を示す図である。書き込みタイミング図２００と同様、書き込みタイミング図３００は、データ信号１３００に対するデータアイ及び書き込みクロック１４０のためのタイミングを含む。しかし、書き込みクロック１４０はデータ信号１３００に対して相対的な位相差３１０（又はタイミングスキュー(timing skew)）を有しており、位相差３１０は、データ信号１３００をサンプリングするのに十分な時間（例えばメモリデバイス１２０がデータ信号１３００をラッチするのに十分な時間）をメモリデバイス１２０に提供しないであろう。データ信号１３００と書き込みクロック１４０の間での相対的な位相差３１０における変動は、例えばコンピュータシステム１００における温度及びジッタのような種々の因子に起因し得る。例示的な書き込みタイミング図３００においては、相対的な位相差３１０は、データアイ２１０の中心と、書き込みクロック１４０がデータ信号１３００をサンプリングする場合（例えば書き込みクロック１４０がＨＩＧＨである場合又は論理値の「１」を有している場合）の書き込みクロック１４０の中心との間の差によって定義され得る。
【００２７】
コンピュータシステム１００の動作周波数が高くなるに従って、メモリデバイス１２０は、より高速な周波数でデータバス１３０７〜１３００をサンプリングすることが必要なだけでなく、適切なタイミングでデータをサンプリングする必要がある。データの適切なサンプリングを確実にするために、書き込みクロック１４０はデータバス１３０７〜１３００に対して最適にアラインされるべきである。データバス１３０７〜１３００に対して書き込みクロック１４０をアラインするために、付加的な信号がコンピュータシステム１００内に実装されて、処理ユニット１１０から伝送されるデータをメモリデバイス１２０が適切に回復するように、データバス１３０７〜１３００と書き込みクロック１４０の間での相対的な位相差（又はタイミングスキュー）が調節され得る。
【００２８】
図４はメモリデバイスにおける書き込みタイミングを調節するように構成されるコンピュータシステム４００の実施形態を示す図である。コンピュータシステム４００は、処理ユニット４１０（例えばＣＰＵ、ＧＰＵ、ノースブリッジデバイス等）、メモリデバイス４２０、参照信号４３０、データバス１３０７〜１３００、及び書き込みクロック１４０を含む。実施形態においては、処理ユニット４１０及びメモリデバイス４２０は回路基板上の集積回路（ＩＣ）デバイスであり、これら２つのＩＣデバイスは、参照信号４３０、データバス１３０７〜１３００、及び書き込みクロック１４０によって通信可能に結合され、参照信号４３０、データバス１３０７〜１３００、及び書き込みクロック１４０は、ワイヤ、相互接続、又は回路基板トレースであり得る。別の実施形態においては、処理ユニット４１０及びメモリデバイス４２０は単一のＩＣデバイス上に集積化されており、参照信号４３０、データバス１３０７〜１３００、及び書き込みクロック１４０が処理ユニット４１０をメモリデバイス４２０に通信可能に結合している。
【００２９】
データバス１３０７〜１３００及び書き込みクロック１４０は、メモリデバイス４２０へデータを書き込むために用いられる処理ユニット４１０及びメモリデバイス４２０の入力／出力（Ｉ／Ｏ）ポートに接続される。処理ユニットをメモリデバイスに接続するＩ／Ｏポート（例えばＤＱピン及び書き込みクロックピン）は、関連分野を含めた当業者に知られている。実施形態においては、参照信号４３０は、以下に説明される機能を実行するために、処理ユニット４１０における新規のＩ／Ｏポート又は既存のＩ／Ｏポートのいずれかに接続され得ると共にメモリデバイス４２０における対応する新規のＩ／Ｏポート又は既存のＩ／Ｏポートのいずれかに接続され得る。以下に更に説明されるように、参照信号４３０は、本発明の実施形態に従い単方向信号又は双方向信号であり得る。
【００３０】
更なる実施形態においては、参照信号４３０は、処理ユニット４１０における既存のＩ／Ｏポートに接続され得ると共にメモリデバイス４２０における既存の対応するＩ／Ｏポートに接続され得、処理ユニット４１０及びメモリデバイス４２０の既存のＩ／Ｏポートは２つ以上の機能のために用いられ得る。例えば、非書き込みモードの動作においては、これら既存のＩ／Ｏポートは、処理ユニット４１０及びメモリデバイス４２０の既存の機能を実装するために用いられ得る。書き込みモードの動作においては、これらのＩ／Ｏポートは、以下に更に説明されるように、処理ユニット４１０とメモリデバイス４２０の間で参照信号４３０を通信するために用いられ得る。ここでの説明に基づいて、関連分野を含めた当業者であれば、参照信号４３０は処理ユニット４１０及びメモリデバイス４２０における新規のＩ／Ｏポート又は既存のＩ／Ｏポートの任意の組み合わせに接続され得ることを認識するであろう。
【００３１】
実施形態においては、処理ユニット４１０はＧＰＵである。代替的に別の実施形態においては、処理ユニットはＣＰＵ又はメモリ制御器であり得る。処理ユニット４１０は、位相補間器４１１及び４１３、データバッファ４１２７〜４１２０、信号バッファ４１４、クロックバッファ４１６、並びに位相ロックループ（ＰＬＬ）４１５を含む。位相補間器４１１及び４１３は、ＰＬＬ４１５からのクロック出力に基づいてそれぞれデータバス１３０７〜１３００及び参照信号４３０へと予め定められた位相を導入する。ＰＬＬ４１５のクロック出力は、書き込みクロック１４０を生成するためにも用いられる。加えて、データバッファ４１２７〜４１２０、信号バッファ４１４、及びクロックバッファ４１６は、処理ユニット４１０からメモリデバイス４２０へのそれぞれデータバス１３０７〜１３００、参照信号４３０、及び書き込みクロック１４０を駆動する。位相補間器、ＰＬＬ、及びバッファは関連分野を含めた当業者に知られている。
【００３２】
ここでの説明に基づいて、関連分野を含めた当業者であれば、本発明の実施形態は本発明の範囲及び精神に含まれる他の種類の処理ユニットと共に実装され得ることを認識するであろう。更に、関連分野を含めた当業者であれば、データバッファ４１２７〜４１２０の数はデータバスのサイズに基づいており、データバッファの数はデータバスのサイズに従って変化し得ることを認識するであろう。
【００３３】
図４を参照すると、実施形態においては、メモリデバイス４２０はダイナミックランダムアクセスメモリ（ＤＲＡＭ）デバイスである。メモリデバイス４２０は、位相補間器４２１及び４２４、データバッファ４２２７〜４２２０、信号バッファ４２５、クロックバッファ４２６、フィルタ４２３、並びにバッファ４２７を含む。データバッファ４２２７〜４２２０、信号バッファ４２５、及びクロックバッファ４２６は、処理ユニット４１０からのそれぞれデータバス１３０７〜１３００、参照信号４３０、及び書き込みクロック１４０を受信し、そして受信した信号を有効な電圧ポテンシャルへと再生（例えば増幅）する。受信された信号は、処理ユニット４１０からメモリデバイス４２０へのそれらのそれぞれの信号経路に沿って進行するときに、信号の減衰及びデータ完全性の損失を受けるであろう。バッファ４２７は、クロックバッファ４２６から位相補間器４２１及び４２４へのバッファされた出力を駆動する。データバッファ４２２７〜４２２０及び信号バッファ４２５からのバッファされた出力もまた、それぞれ位相補間器４２１及び４２４へと送り込まれる。
【００３４】
ここでの説明に基づいて、関連分野を含めた当業者であれば、本発明の実施形態は他の種類のメモリデバイスと共に実装され得ることを認識するであろう。これらの他の種類のメモリデバイスは本発明の範囲及び精神に含まれる。
【００３５】
実施形態においては、書き込み動作の間、データバス１３０７〜１３００がメモリデバイス４２０に書き込まれるべきデータを搬送する一方で、書き込みクロック１４０及び参照信号４３０は、データバス１３０７〜１３００のサンプリングを同期するためにメモリデバイス４２０によって用いられる。メモリデバイス４２０における書き込みタイミングの説明を容易にするために、データバス１３０７〜１３００、書き込みクロック１４０、及び参照信号４３０が定義されることになる。更に、説明を簡略化するために、データバス１３０７〜１３００全部よりはむしろデータ信号１３００が用いられることになる。以下の説明に基づいて、関連分野を含めた当業者であれば、本発明の実施形態が同じようにデータバス１３０７〜１３００に適用可能であることを理解するであろう。
【００３６】
図５はデータ信号１３００、参照信号４３０、及び書き込みクロック１４０のための書き込みタイミング図の実施形態を示す図である。実施形態においては、参照信号４３０は、データ信号１３００にエッジをアラインされており、そして単方向信号である。更に、実施形態においては、参照信号４３０はデータ信号１３００と実質的に同じデータパターンを有しているので、参照信号４３０はデータ信号１３００における位相シフトを検出するために用いられ得る。別の実施形態においては、参照信号４３０は、コンピュータシステム４００における位相シフトを検出するために用いられ得るデータサンプルの数（例えば参照信号４３０における検出可能なエッジ遷移の数）を最大にするために、クロック状パターンを有している。参照信号４３０におけるエッジ遷移の検出は以下で更に説明される。ここでの説明に基づいて、関連分野を含めた当業者であれば、参照信号４３０のデータパターンはコンピュータシステム４００の設計に基づいて変化し得ることを認識するであろう。
【００３７】
データ信号１３００に関しては、参照信号４３０は、本発明の実施形態に従い単位間隔(unit interval)（ＵＩ）の半分だけデータ信号１３００から位相シフトされており、ここでＵＩはデータ信号１３００における遷移（例えばＨＩＧＨからＬＯＷへの遷移又はＬＯＷからＨＩＧＨへの遷移）の間の最小の時間間隔を参照する。例えば参照信号４３０がデータ信号１３００に対してエッジにアラインされていない場合（例えば参照信号４３０がデータ信号１３００に対して中央にアラインされている場合）、データ信号１３００は、データ信号１３００における位相シフトを検出するために参照信号４３０が用いられ得る前に、ＵＩの半分までシフトすることができる。従って、データ信号１３００に対して参照信号を相対的にＵＩの半分シフトさせる場合、データ信号１３００における位相シフトはより高い感度で検出され得る（例えば参照信号４３０における最小の位相シフトで）。更に、実施形態においては、書き込みクロック１４０はデータ信号１３００に対して中央にアラインされている。データ信号１３００、参照信号４３０、及び書き込みクロック１４０の間の相対的な位相シフトは、関連分野を含めた当業者に知られているように、ＰＬＬ４１５並びに位相補間器４１１及び４１３によって生成され得る。このようにして、データ信号１３００、参照信号４３０、及び書き込みクロック１４０の間の相対的な位相シフトが、処理ユニット４１０からメモリデバイス４２０への信号の伝送に先立ち各信号に導入される。
【００３８】
図４を参照すると、メモリデバイス４２０は、参照信号４３０における１つ以上のエッジ遷移の検出に基づいて参照信号４３０における位相シフトを検出する。特に、位相補間器４２４は、信号バッファ４２５からのバッファされた出力をサンプリングすると共にバッファされた出力の位相を検出し、この場合、書き込みクロック１４０（バッファ４２７の出力を介しての）が参照信号４３０をサンプリングするためのクロックとして用いられる。参照信号４３０の位相は、参照信号４３０における１つ以上のエッジ遷移の検出によって計算され得る。時間経過に伴い、フィルタ４２３は、位相補間器４２４からの位相測定（参照信号４３０の）を比較し、そして位相誤差信号を計算する。時間経過に伴い、信号のエッジ遷移を検出し、信号の位相を測定し、そして信号における位相誤差を計算するための方法及び技術は、関連分野を含めた当業者に知られている。
【００３９】
フィルタ４２３からの位相誤差信号は、時間経過に伴いデータ信号１３００と書き込みクロック１４０の間での相対的な位相差を調節するために用いられ得る。実施形態においては、位相誤差信号は、位相補間器４２１及び４２４の両方に送り込まれる。位相補間器４２１に関しては、位相誤差信号は、データ信号１３００若しくは書き込みクロック１４０のいずれか又はデータ信号１３００及び書き込みクロック１４０の両方において位相遅延を導入するために用いられ得る。例えば図３を参照すると、位相誤差信号は、書き込みクロック１４０がデータ信号１３００に対して中心にアラインされるように（図２の書き込みタイミング図２００と同様に）、書き込みクロック１４０に位相遅延を導入するために用いられ得る。代替案においては、位相誤差信号は、データ信号１３００が書き込みクロック１４０に対して中心にアラインされるように、データ信号１３００に位相遅延を導入するために用いられ得る。位相補間器４２４に関しては、実施形態において、位相誤差信号は、書き込みクロック１４０に位相遅延を導入して参照信号４３０のサンプリングを調節するために用いることができ、結果として位相補間器４２４とフィルタ４２３の間にフィードバックメカニズムを作り出して時間経過に伴い位相誤差を更新することができる。更に別の代替案においては、位相誤差信号は、上述したようなタイミングアラインメント目的に対して、データ信号１３００及び書き込みクロック１４０の両方に位相遅延を導入するために用いられ得る。書き込みクロック１４０及びデータ信号１３００に位相遅延を導入する方法及び技術は、関連分野を含めた当業者に知られている。
【００４０】
要約すると、図４に関しては、メモリデバイス４２０が、参照信号４３０をサンプリングすると共に時間経過に伴い参照信号４３０における位相シフトに基づいて位相誤差信号を生成する。この位相誤差信号は、データ信号１３００若しくは書き込みクロック１４０のいずれか又はデータ信号１３００及び書き込みクロック１４０の両方を遅延させるために位相補間器４２１によって用いられ得る結果、書き込みクロック１４０は、データ信号１３００をサンプリングするために位相補間器４２１によって用いられるときに、データ信号１３００に対して最適にアラインされ得る。
【００４１】
本発明の別の実施形態においては、位相誤差信号は、処理ユニットによって計算され得るし、そしてデータ信号１３００又は書き込みクロック１４０が書き込み動作のためにメモリデバイスへ送信される前に、データ信号１３００若しくは書き込みクロック１４０のいずれか又はデータ信号１３００及び書き込みクロック１４０の両方に適用され得る。図６はメモリデバイスにおける書き込みタイミングを調節するように構成される別の実施形態のコンピュータシステム６００を示す図である。コンピュータシステム６００は、処理ユニット６１０、メモリデバイス６２０、参照信号４３０、データバス１３０７〜１３００、及び書き込みクロック１４０を含む。
【００４２】
図４のコンピュータシステム４００と同様、実施形態においては、処理ユニット６１０及びメモリデバイス６２０は回路基板上のＩＣデバイスであり、これら２つのＩＣデバイスは、参照信号４３０、データバス１３０７〜１３００、及び書き込みクロック１４０によって通信可能に結合され、参照信号４３０、データバス１３０７〜１３００、及び書き込みクロック１４０は、ワイヤ、相互接続、又は回路基板トレースであり得る。別の実施形態においては、処理ユニット６１０及びメモリデバイス６２０は単一のＩＣデバイス上に集積化されており、参照信号４３０、データバス１３０７〜１３００、及び書き込みクロック１４０が処理ユニット６１０をメモリデバイス６２０に通信可能に結合している。
【００４３】
実施形態においては、メモリデバイス６２０は、データバッファ４２２７〜４２２０、信号バッファ４２５及び６８０、クロックバッファ４２６、サンプリング器(samplers)６６０及び６７０、並びにバッファ４２７を含む。サンプリング器６６０及び６７０は、それぞれデータバス１３０７〜１３００及び参照信号４３０をサンプリングし、この場合、信号をサンプリングするためのクロックとして書き込みクロック１４０（バッファ４２７の出力を介した）が用いられる。サンプリング器６６０及び６７０の例はラッチであり、ラッチは関連分野を含めた当業者に知られている。一旦サンプリング器６７０が参照信号４３０をサンプリングしたら、サンプリングされた信号は信号バッファ６８０を介して処理ユニット６１０へ送り戻される。
【００４４】
サンプリングされた信号は、本発明の実施形態に従い、参照信号４３０を処理ユニット６１０からメモリデバイス６２０へ伝送するために用いられたのと同じＩ／Ｏポートを介してメモリデバイス６２０から処理ユニット６１０へと伝送され得る。サンプリングされた信号をメモリデバイス６２０から処理ユニット６１０へと伝送するために同じＩ／Ｏポートが用いられる場合には、参照信号４３０は双方向信号と考えられる。代替的に別の実施形態においては、サンプリングされた信号は、参照信号４３０を処理ユニット６１０からメモリデバイス６２０へ伝送するために用いられたＩ／Ｏポートとは異なる処理ユニット６１０及びメモリデバイス６２０内のＩ／Ｏポートを介してメモリデバイス６２０から処理ユニット６１０へと伝送され得る。
【００４５】
サンプリングされた信号をメモリデバイス６２０から受信すると、処理ユニット６１０は、図４に関して上述したのと同様にして、サンプリングされた信号を処理する。実施形態においては、処理ユニット６１０は、フィルタ６３０、位相補間器４１１及び６４０、データバッファ４１２７〜４１２０、信号バッファ４１４及び６５０、クロックバッファ４１６、並びにＰＬＬ４１５を含む。処理ユニット６１０は、メモリデバイス６２０からのサンプリングされた参照信号における位相シフトを検出する。特に、位相補間器６４０は、サンプリングされ（サンプリング器６７０から）そしてバッファリングされた参照信号を信号バッファ６５０から受信する。このバッファリングされた信号から、位相補間器６４０はバッファリングされた信号の位相を検出し、この場合、バッファリングされた信号をサンプリングするためにＰＬＬ４１５のクロック出力がクロックとして用いられる。図４と同様、バッファリングされた信号の位相は、バッファリングされた信号における１つ以上のエッジ遷移の検出によって計算され得る。時間経過に伴い、フィルタ６３０は、位相補間器６４０からの位相測定を比較し、そして位相誤差信号を計算する。
【００４６】
フィルタ６３０からの位相誤差信号は、データ信号１３００と書き込みクロック１４０の間での相対的な位相を調節するために用いられ得る。実施形態においては、位相誤差信号は、位相補間器４１１に送り込まれる。位相誤差信号は、データ信号１３００若しくは書き込みクロック１４０のいずれか又はデータ信号１３００及び書き込みクロック１４０の両方において位相遅延を導入するために用いられ得る。例えば、位相誤差信号は、書き込みクロック１４０及びデータ信号１３００がメモリデバイス６２０に到達するときに書き込みクロック１４０がデータ信号１３００に対して中心にアラインされるように、書き込みクロック１４０に位相遅延を導入するために用いられ得る。代替案においては、位相誤差信号は、書き込みクロック１４０及びデータ信号１３００がメモリデバイス６２０に到達する際にデータ信号１３００が書き込みクロック１４０に対して中心にアラインされるように、データ信号１３００に位相遅延を導入するために用いられ得る。更に別の代替案においては、位相誤差信号は、上述したようなタイミングアラインメント目的に対して、データ信号１３００及び書き込みクロック１４０の両方に位相遅延を導入するために用いられ得る。
【００４７】
要約すると、図６に関しては、参照信号４３０がメモリデバイス６２０へ及びメモリデバイス６２０から信号パスを往復した後に、処理ユニット６１０が参照信号４３０をサンプリングする。実施形態においては、フィルタ６３０からの位相誤差信号は、データ信号１３００若しくは書き込みクロック１４０のいずれか又はデータ信号１３００及び書き込みクロック１４０の両方に位相遅延を導入するときに、参照信号４３０の完全な信号パスを考慮に入れる。位相誤差信号は、データ信号１３００若しくは書き込みクロック１４０のいずれか又はデータ信号１３００及び書き込みクロック１４０の両方を遅延させるために位相補間器４１１によって用いられ得る結果、書き込みクロック１４０は、データ信号１３００をサンプリングするためにメモリデバイス６２０で用いられるときに、データ信号１３００に対して最適にアラインされ得る。
【００４８】
本発明の更に別の実施形態においては、書き込み動作のためにデータ信号１３００又は書き込みクロック１４０が処理ユニットからメモリデバイスへと伝送されるよりも先に、位相誤差信号が、メモリデバイスによって計算され得ると共にデータ信号１３００若しくは書き込みクロック１４０のいずれか又はデータ信号１３００及び書き込みクロック１４０の両方に適用され得る。図７はメモリデバイスにおける書き込みタイミングを調節するように構成される別の実施形態のコンピュータシステム７００を示す図である。コンピュータシステム７００は、処理ユニット７１０、メモリデバイス７２０、参照信号４３０、データバス１３０７〜１３００、及び書き込みクロック１４０を含む。
【００４９】
図４のメモリデバイス４２０と同様、メモリデバイス７２０は、参照信号４３０における１つ以上のエッジ遷移の検出に基づいて参照信号４３０における位相シフトを検出する。メモリデバイス７２０は、位相補間器４２１及び４２４、データバッファ４２２７〜４２２０、信号バッファ４２５及び６８０、クロックバッファ４２６、フィルタ４２３、並びにバッファ４２７を含む。位相補間器４２１及び４２４、データバッファ４２２７〜４２２０、信号バッファ４２５、クロックバッファ４２６、フィルタ４２３、並びにバッファ４２７は、図４に関して上述したのと同様に動作する。更に、バッファ６８０は、図６に関して上述したのと同様に動作する。
【００５０】
位相補間器４２４は、信号バッファ４２５からのバッファリングされた入力をサンプリングすると共にバッファリングされた出力の位相を検出し、この場合、書き込みクロック１４０（バッファ４２７の出力を介した）が参照信号４３０をサンプリングするためのクロックとして用いられる。参照信号４３０の位相は、参照信号４３０における１つ以上のエッジ遷移の検出によって計算され得る。時間経過に伴い、フィルタ４２３は、位相補間器４２４からの位相測定（参照信号４３０の）を比較し、そして位相誤差信号を計算する。
【００５１】
本発明の実施形態においては、フィルタ４２３からの位相誤差信号は、信号バッファ６８０を介してメモリデバイス７２０から処理ユニット７１０へと伝送される。メモリデバイス７２０からの位相誤差信号を受信すると、処理ユニット７１０は、データ信号１３００と書き込みクロック１４０の間での相対的な位相差を調節する。実施形態においては、処理ユニット７１０は、位相補間器４１１及び６４０、データバッファ４１２７〜４１２０、信号バッファ４１４及び６５０、クロックバッファ４１６、並びにＰＬＬ４１５を含む。位相補間器４２１、データバッファ４１２７〜４１２０、信号バッファ４１４、クロックバッファ４１６、並びにＰＬＬ４１５は、図４に関して上述したのと同様に動作する。更に、位相補間器６４０及び信号バッファ６５０は、図６に関して上述したのと同様に動作する。
【００５２】
実施形態においては、位相補間器４１１及び６４０は、信号バッファ６５０を介してメモリデバイス７２０からの位相誤差信号を受信する。位相誤差信号は、データ信号１３００若しくは書き込みクロック１４０のいずれか又はデータ信号１３００及び書き込みクロック１４０の両方において位相遅延を導入するために用いられ得る。例えば、位相誤差信号は、書き込みクロック１４０及びデータ信号１３００がメモリデバイス７２０に到達するときに書き込みクロック１４０がデータ信号１３００に対して中心にアラインされるように、書き込みクロック１４０に位相遅延を導入するために用いられ得る。代替案においては、位相誤差信号は、書き込みクロック１４０及びデータ信号１３００がメモリデバイス７２０に到達する際にデータ信号１３００が書き込みクロックに対して中心にアラインされるように、データ信号１３００に位相遅延を導入するために用いられ得る。更に別の代替案においては、位相誤差信号は、上述したようなタイミングアラインメント目的に対して、データ信号１３００及び書き込みクロック１４０の両方に位相遅延を導入するために用いられ得る。
【００５３】
要約すると、図７に関しては、メモリデバイス７２０が、参照信号４３０をサンプリングすると共に時間経過に伴い参照信号４３０における位相シフトに基づいて位相誤差信号を生成する。この位相誤差信号は、位相補間器４１１及び６４０（処理ユニット７１０内の）がデータ信号１３００若しくは書き込みクロック１４０のいずれか又はデータ信号１３００及び書き込みクロック１４０の両方を遅延させるために位相誤差信号を用いることができるようにメモリデバイス７２０から処理ユニット７１０へと伝送され得る結果、書き込みクロック１４０は、データ信号１３００をサンプリングするためにメモリデバイス７２０で用いられるときに、データ信号１３００に対して最適にアラインされ得る。
【００５４】
図８はメモリデバイスにおいて書き込みタイミングを調節するための方法８００の実施形態を示す図である。方法８００は、例えば、コンピュータシステム４００、コンピュータシステム６００、又はコンピュータシステム７００を用いて起こり得る。ステップ８１０では、データ信号、書き込みクロック信号、及び参照信号がメモリデバイス、例えばそれぞれ図４及び６におけるメモリデバイス４２０及びメモリデバイス６２０によって受信される。実施形態においては、参照信号のデータパターンはデータ信号のデータパターンと実質的に同等である。更に、実施形態においては、参照信号はデータ信号に対してＵＩの半分の位相シフトを有している。
【００５５】
ステップ８２０では、参照信号の位相シフトが検出される。実施形態においては、図４に関して上述した方法と同様に、位相シフトは参照信号におけるエッジ遷移に基づいて検出され得る。参照信号の位相は参照信号における１つ以上のエッジ遷移の検出に基づいて計算することができ、ここでは参照信号の位相は時間経過に伴いシフトし得る。実施形態においては、時間経過に伴う参照信号の位相シフトは、参照信号の位相差又は位相誤差信号を生成するために用いられ得る。
【００５６】
ステップ８３０では、ステップ８２０で検出された位相シフトに基づいて、データ信号と書き込みクロック信号の間での位相差が調節される。データ信号と書き込みクロック信号の間での位相差を調節するに際して、これらの信号が互いに中央にアラインされるように、データ信号又は書き込みクロック信号のいずれかの位相遅延が調節され得る。実施形態においては、データ信号と書き込みクロック信号が互いに中央にアラインされるように、ステップ８２０で検出された位相シフトに基づいて書き込みクロック信号の位相遅延が調節され得る。代替的に別の実施形態においては、データ信号と書き込みクロック信号が互いに中央にアラインされるように、ステップ８２０で検出された位相シフトに基づいてデータ信号の位相遅延が調節され得る。更に別の実施形態においては、データ信号と書き込みクロック信号が互いに中央にアラインされるように、ステップ８２０で検出された位相シフトに基づいて、データ信号及び書き込みクロック信号の両方の位相遅延が調節され得る。参照信号の位相シフトは時間経過に伴い変化するので、データ信号と書き込みクロック信号の間での位相遅延もまた時間経過に伴い変化する。
【００５７】
本発明の種々の態様がソフトウエア、ファームウエア、ハードウエア、又はそれらの組み合わせにおいて実装されてよい。図９は例示的なコンピュータシステム９００を示す図であり、システム９００においては、本発明の実施形態又はその部分がコンピュータ可読コードとして実装され得る。例えば、図８のフローチャート８００によって示される方法がシステム９００内に実装され得る。本発明の種々の実施形態が、この例示的なコンピュータシステム９００に関して説明される。この明細書を読んだ後に、他のコンピュータシステム及び／又はコンピュータアーキテクチャを用いて本発明の実施形態をどのように実装するかは、関連分野を含めた当業者に明らかになろう。
【００５８】
尚、この発明の種々の実施形態のシミュレーション、合成及び／又は製造は、一つには、一般的なプログラミング言語（例えばＣ又はＣ＋＋）、例えばＶｅｒｉｌｏｇＨＤＬ、ＶＨＤＬ、ＡｌｔｅｒａＨＤＬ（ＡＨＤＬ）等のハードウエア記述言語（ＨＤＬ）、若しくは他の利用可能なプログラミングを含むコンピュータ可読コード、及び／又は回路等キャプチュアツール（例えば回路キャプチュアツール）の使用を通して達成され得る。このコンピュータ可読コードは、半導体、磁気ディスク、光学ディスク（例えばＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ）を含むあらゆる既知のコンピュータ使用可能媒体内に配置され得る。従って、コードは、インターネットを含む通信ネットワークを介して伝送され得る。上述したシステム及び技術により達成される機能及び／又は提供される構造は、プログラムコードにおいて具現化されるコア（例えばＧＰＵコア）内に表現することができ、また集積回路の生産の一部としてハードウエアに変換され得ることが理解される。
【００５９】
コンピュータシステム９００は１つ以上のプロセッサ、例えばプロセッサ９０４を含む。プロセッサ９０４は特定用途のあるいは汎用のプロセッサであってよい。プロセッサ９０４は通信基盤(communication infrastructure)９０６（例えばバス又はネットワーク）に接続される。
【００６０】
コンピュータシステム９００はまた、主メモリ９０８、望ましくはランダムアクセスメモリ（ＲＡＭ）を含み、そして補助メモリ９１０を含んでいてもよい。補助メモリ９１０は例えば、ハードディスクドライブ９１２、リムーバブル記憶ドライブ９１４、及び／又はメモリスティックを含み得る。リムーバブル記憶ドライブ９１４はフロッピー（登録商標）ディスクドライブ、磁気テープドライブ、光学ディスクドライブ、フラッシュメモリ等を含み得る。リムーバブル記憶ドライブ９１４は周知の方法によりリムーバブル記憶ユニット９１８から読み出し及び／又はリムーバブル記憶ユニット９１８へ書き込みする。リムーバブル記憶ユニット９１８はフロッピー（登録商標）ディスク、磁気テープ、光学ディスク等を備えていてよく、リムーバブル記憶ドライブ９１４によって読み出され且つ書き込まれる。関連分野を含めた当業者に理解されるであろうように、リムーバブル記憶ユニット９１８はコンピュータソフトウエア及び／又はデータが既に記憶されたコンピュータ使用可能記憶媒体を含む。
【００６１】
代替的な実装においては、補助メモリ９１０は、コンピュータプログラム又は他の命令がコンピュータシステム９００に読み込まれることを可能にする他の同様のデバイスを含むことができる。そのようなデバイスは例えばリムーバブル記憶ユニット９２２及びインタフェース９２０を含み得る。そのようなデバイスの例は、プログラムカートリッジ及びカートリッジインタフェース（ビデオゲームデバイスにおいて見られるようなもの）、リムーバブルメモリチップ（例えばＥＰＲＯＭ又はＰＲＯＭ）及び関連するソケット、並びにソフトウエア及びデータをリムーバブル記憶ユニット９２２からコンピュータシステム９００へ転送することを可能にする他のリムーバブル記憶ユニット９２２及びインタフェース９２０を含み得る。
【００６２】
コンピュータシステム９００はまた通信インタフェース９２４を含むことができる。通信インタフェース９２４はソフトウエア及びデータがコンピュータシステム９００と外部デバイスの間で転送されることを可能にする。通信インタフェース９２４はモデム、ネットワークインタフェース（例えばイーサネット（登録商標）カード）、通信ポート、ＰＣＭＣＩＡスロット及びカード等を含み得る。通信インタフェース９２４を介して転送されるソフトウエア及びデータは、電子的、電磁気的、光学的であってよい信号、又は通信インタフェース９２４によって受け取られることが可能な他の信号の形態にある。これらの信号は通信パス９２６を介して通信インタフェース９２４へ供給される。通信パス９２６は信号を伝え、ワイヤ若しくはケーブル、光ファイバ、電話線、携帯電話リンク、ＲＦリンク又は他の通信チャネルを用いて実装され得る。
【００６３】
この文書では、「コンピュータプログラム媒体」及び「コンピュータ使用可能媒体」という用語は、リムーバブル記憶ユニット９１８、リムーバブル記憶ユニット９２２、及びハードディスクドライブ９１２に組み込まれるハードディスクを一般的には参照して用いられる。コンピュータプログラム媒体及びコンピュータ使用可能媒体はまた、主メモリ９０８及び補助メモリ９１０等のメモリ半導体（例えばＤＲＡＭ等）であり得るメモリを参照してよい。これらのコンピュータプログラム製品はコンピュータシステム９００にソフトウエアを提供する。
【００６４】
コンピュータプログラム（コンピュータ制御論理とも称される）は主メモリ９０８及び／又は補助メモリ９１０内に記憶される。コンピュータプログラムはまた、通信インタフェース９２４を介して受信されてもよい。そのようなコンピュータプログラムは、実行されるときに、ここで論じられる本発明の実施形態をコンピュータシステム９００が実施又は実装することを可能にする。特に、コンピュータプログラムは、実行されるときに、上述した図８のフローチャート８００で示される方法におけるステップのような本発明の実施形態のプロセスをプロセッサ９０４が実施又は実装することを可能にする。従って、そのようなコンピュータプログラムはコンピュータシステム９００の制御器を代表する。ソフトウエアを用いて本発明の実施形態が実施又は実装される場合、ソフトウエアは、コンピュータプログラム製品内に記憶され得ると共に、リムーバブル記憶ドライブ９１４、インタフェース９２０、ハードドライブ９１２、又は通信インタフェース９２４を用いてコンピュータシステム９００内にロードされ得る。
【００６５】
本発明の実施形態はまた、任意のコンピュータ使用可能媒体上に記憶されるソフトウエアを含むコンピュータプログラム製品に向けられている。そのようなソフトウエアは、１つ以上のデータ処理デバイス内で実行されるときに、データ処理デバイスにここで説明されているように動作させる。本発明の実施形態は、現在知られている又は将来知られることになる任意のコンピュータ使用可能又はコンピュータ可読の媒体を採用する。コンピュータ使用可能媒体の例は、限定はされないが、主記憶デバイス（例えば任意の種類のランダムアクセスメモリ）、補助記憶デバイス（例えばハードドライブ、フロッピー（登録商標）ディスク、ＣＤ＿ＲＯＭ、ＺＩＰディスク、テープ、磁気記憶デバイス、光学記憶デバイス、ＭＥＭＳ、ナノテクノロジー記憶デバイス等）、及び通信媒体（例えば有線及び無線通信ネットワーク、ローカルエリアネットワーク、広域ネットワーク、イントラネット等）を含む。
【００６６】
本発明の種々の実施形態が上に説明されてきたが、それらは例示のみを目的として提示されたものであり、限定を目的とはしていないことが理解されるべきである。添付の特許請求の範囲において画定されるような本発明の精神及び範囲から逸脱することなしに、形態及び詳細における種々の変更がここになされ得ることが関連分野を含めた当業者によって理解されるであろう。本発明はこれらの例示に限定されないことが理解されるべきである。本発明はここに説明されるように動作する任意の要素に適用可能である。従って、本発明の広さ及び範囲は上述のいかなる例示的実施形態によっても限定されるべきではなく、後述の特許請求の範囲及びそれらの均等なものに従ってのみ画定されるべきである。
【図１】
0005666575.tif 000002
【図２】
0005666575.tif 000003
【図３】
0005666575.tif 000004
【図４】
0005666575.tif 000005
【図５】
0005666575.tif 000006
【図６】
0005666575.tif 000007
【図７】
0005666575.tif 000008
【図８】
0005666575.tif 000009
【図９】
0005666575.tif 000010