(57)【要約】  【課題】  レジスタファイルによって格納された、以前に復号されたベースアドレスオフセットビットを用いて、指定されたキャッシュラインにアクセスし、キャッシュアクセス経路において全アドレス復号を実行する必要性を無くし、アドレス発生加算器の多レベル論理を単一レベルの回転装置／マルチプレクサ論理によって置換するための方法およびシステムを提供する。  【解決手段】  復号ベースレジスタオフセットビットによって、指定されたキャッシュラインを直接選択することが可能となり、これによって、キャッシュメモリにアクセスするたびにベースレジスタオフセットビットの加算および復号を行う必要を排除する。他のキャッシュラインにアクセスするには、復号ベースアドレスオフセットビットを回転させることによって、別のキャッシュワードラインを選択する。【選択図】  図３
2004152291.tif 000002
【特許請求の範囲】
【請求項１】
キャッシュメモリにおいてキャッシュラインにアクセスするための方法であって、
キャッシュラインを識別する変位を復号するステップと、
復号変位をレジスタに格納するステップと、
前記復号変位に従って前記キャッシュラインを選択するステップと、
を具備する方法。
【請求項２】
前記復号変位を回転させて、別のキャッシュラインにアクセスする別の選択ラインを選択的にイネーブルするステップを更に具備する、請求項１の方法。
【請求項３】
前記復号変位は、復号行アドレス選択（ＲＡＳ）成分および列アドレス選択（ＣＡＳ）成分を含むことを特徴とする、請求項１の方法。
【請求項４】
前記キャッシュはレベル１キャッシュメモリである、請求項１の方法。
【請求項５】
キャッシュメモリを有するデータ処理システムであって、
キャッシュラインを識別する変位を復号するための手段と、
復号変位をレジスタに格納するための手段と、
前記復号変位に従って前記キャッシュラインを選択するための手段と、
を具備するデータ処理システム。
【請求項６】
前記復号変位を回転させて、別のキャッシュラインにアクセスする別の選択ラインを選択的にイネーブルするための手段を更に具備する、請求項５のデータ処理システム。
【請求項７】
前記復号変位は、復号行アドレス選択（ＲＡＳ）成分および列アドレス選択（ＣＡＳ）成分を含む、請求項５のデータ処理システム。
【請求項８】
前記キャッシュはレベル１キャッシュメモリである、請求項５のデータ処理システム。
【請求項９】
プロセッサのキャッシュメモリにおけるキャッシュラインにアクセスするためのコンピュータ使用可能媒体であって、
キャッシュラインを識別する変位を復号するためのコンピュータプログラムコードと、
復号変位をレジスタに格納するためのコンピュータプログラムコードと、
前記復号変位に従って前記キャッシュラインを選択するためのコンピュータプログラムコードと、
を具備するコンピュータ使用可能媒体。
【請求項１０】
前記復号変位を回転させて、別のキャッシュラインにアクセスする別の選択ラインを選択的にイネーブルするためのコンピュータプログラムコードを更に具備する、請求項９のコンピュータ使用可能媒体。
【請求項１１】
前記復号変位は、復号行アドレス選択（ＲＡＳ）成分および列アドレス選択（ＣＡＳ）成分を含む、請求項９のコンピュータ使用可能媒体。
【請求項１２】
前記キャッシュはレベル１キャッシュメモリである、請求項９のコンピュータ使用可能媒体。
【請求項１３】
キャッシュラインセレクタであって、
キャッシュラインを識別するための復号変位データを含むレジスタファイルと、
前記レジスタファイルからの複数の出力ラインと、
前記複数の出力ラインを介して前記レジスタファイルに結合されたキャッシュメモリと、
を具備し、前記複数の出力ラインを介して前記キャッシュメモリに前記復号変位データを送信することによって、前記変位データにより前記キャッシュラインのアクセスが選択的に行われるキャッシュラインセレクタ。
【請求項１４】
前記復号変位データは、ベースレジスタオフセットおよび回転データを含み、前記キャシュラインセレクタは、更に、前記レジスタファイルに結合された第１の回転装置を具備し、前記第１の回転装置は、前記回転データに従って前記ベースレジスタオフセットを回転させて、前記キャッシュメモリ内のキャッシュラインを選択する、請求項１３のキャッシュラインセレクタ。
【請求項１５】
前記復号変位は、復号行アドレス選択（ＲＡＳ）成分および列アドレス選択（ＣＡＳ）成分を含み、前記キャッシュラインセレクタは、更に、第２の回転装置を具備し、前記第１の回転装置は前記ＲＡＳ成分を回転させ、前記第２の回転装置は前記ＣＡＳ成分を回転させる、請求項１３のキャッシュラインセレクタ。
【請求項１６】
前記ＲＡＳおよびＣＡＳ成分を組み合わせて、前記復号変位に従ってキャッシュラインの選択を行うための論理を更に具備する、請求項１４のキャッシュラインセレクタ。
【請求項１７】
前記ＣＡＳ成分が、前記ＲＡＳ成分との論理積を取った場合、キャリーインを有するならば、前記ＣＡＳ成分を１つの追加の位置だけ投機的に回転させるための第３の回転装置と、
キャリーインが生じたか否かに従って、前記第１および第２の回転装置の出力または前記第１および第３の回転装置の出力を選択するためのセレクタと、
を更に具備する、請求項１４のキャッシュラインセレクタ。
【請求項１８】
前記ＲＡＳ成分が、前記ＣＡＳ成分との論理積を取った場合、キャリーインを有するならば、前記ＲＡＳ成分を１つの追加の位置だけ投機的に回転させるための第３の回転装置と、
キャリーインが生じたか否かに従って、前記第１および第２の回転装置の出力または前記第１および第３の回転装置の出力を選択するためのセレクタと、
を更に具備する、請求項１４のキャッシュラインセレクタ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般にコンピュータの分野に関し、具体的にはコンピュータシステムにおけるキャッシュメモリに関する。更に特定すれば、本発明は、格納された復号アドレスを用いてキャッシュにアクセスするための改良された方法およびシステムに関する。
【背景技術】
【０００２】
コンピューティングシステムにおいて性能向上のためにデータキャッシュを用いることは、周知であり、広く行われている。キャッシュは、システムメモリからの最近用いたデータ（命令を含む）を保持する高速のバッファである。
【０００３】
キャッシュ内のデータは、そのデータのためのシステムメモリアドレスを用いて識別され、位置が特定される。システムメモリアドレスは、アドレスの左部分に最上位ビット（ＭＳＢ）を含み、右部分に最下位ビット（ＬＳＢ）を含む。ＭＳＢは、論理的には、システムメモリ内の開始位置に対するポインタとして見ることができ、ＬＳＢは、ＭＳＢと連結されると、アドレスを完成させるためのオフセットを提供する。キャッシュメモリアドレッシングにおいて、ＭＳＢは「タグ」と呼ばれ、ＬＳＢは「インデックス」と呼ばれる。
【０００４】
各インデックスは、キャッシュメモリのライン（ブロック）を識別する。タグは、そのラインが、システムメモリにおける特定のアドレスからのデータを含むことを確認するために用いられる。すなわち、タグおよびインデックスを連結して、システムメモリアドレスとの比較を行い、キャッシュラインが、システムメモリアドレスを割り当てられたデータを含むことを確認する。
【０００５】
レベル１（Ｌ１）キャッシュは、典型的に６４から数百という比較的少ないキャッシュラインを有する。各キャッシュラインは、多くのワード（コンピュータが内部で処理可能なデータの最大ビット数で、通常６４ビットである）を含む。典型的に、各キャッシュラインは、３２ワード（１２８バイト）を含む。
【０００６】
特定のキャッシュラインにアクセスするために、アドレス発生論理が、一組のイネーブルされた信号を送信し、結果として、特定のキャッシュラインの内容が一組の出力ピンに送信される。キャッシュラインへの信号は、信号を発生させるためにキャッシュラインのインデックスを復号した結果として生じる。すなわち、予め復号した形態のインデックスを、多数（典型的に６４）のピンの出力を有するデコーダに入力する。一意の各インデックスによって、デコーダの出力ピンのうちただ１つのみがイネーブル信号を有することになる。
【０００７】
図１は、キャッシュラインを選択するための従来技術の論理の典型的な構成を示す。命令１００は、オペランドコード（ＯＰＣＤ）１０２および変位１０４を含む。レジスタファイル１０６は、レジスタＡ（ＲＡ）およびレジスタＢ（ＲＢ）を含む複数のレジスタを含む。ＲＡはベースアドレスを含み、ＲＢは、要求されたデータのベースアドレスに対するオフセットを含む。すなわち、ＲＡは、要求されたデータを含むシステムメモリのブロックに対するポインタを含み、ＲＢは、命令１００によって規定され、要求されたデータを含むメモリアドレスを完成させるオフセットを含む。あるいは、ＲＡがベースアドレスを含み、変位１０４が、要求されたデータのベースアドレスに対するオフセットを直接記述する。
【０００８】
加算器／ＡＬＵ１０８は、ＲＡからのベースアドレスと、ＲＢからのオフセットまたは変位１０６とを結合し、加算結果（アドレス）をターゲットレジスタ（ＲＴ）に送信する。Ｌ１キャッシュ１１６において正しいキャッシュラインのワードをオフセット１１２によって選択するため、ＲＴからインデックス１１０およびオフセット１１２が抽出される。デコーダ１１４は、キャッシュアドレスインデックス１１０の６ラインを復号し、出力６４ウェイラインセレクタ１２０のピンの１つに信号を出力する。オフセット１１２は、Ｌ１キャッシュ１１６内で復号されて、６４ウェイラインセレクタ１２０が選択したラインから所望のワードを選択する。
【発明の開示】
【発明が解決しようとする課題】
【０００９】
図１に示したシステムでは、キャッシュラインにアクセスするたびに、グループ１２２に示す論理を用いて、２つのオペランドを加算し、次いでキャッシュアドレスインデックス１１０を復号することによる遅延が負担となっている。従って、かかる遅延を回避するシステムが必要とされている。
【課題を解決するための手段】
【００１０】
本発明は、レジスタファイルによって格納された、以前に復号されたベースアドレスオフセットビットを用いて、指定されたキャッシュラインにアクセスし、キャッシュアクセス経路において全アドレス復号を実行する必要性を無くし、アドレス発生加算器の多レベル論理を１つのみのレベルの回転装置／マルチプレクサ論理によって置換するための方法およびシステムである。復号ベースレジスタオフセットビットは、指定されたキャッシュラインの直接選択を可能にし、これによって、キャッシュメモリにアクセスするたびにベースレジスタオフセットビットの加算および復号を行う必要を排除する。他のキャッシュラインにアクセスするには、復号ベースアドレスオフセットビットを回転させることによって、別のキャッシュラインを選択する。
【００１１】
符号化（２進）ベースアドレスオフセットビットではなく、復号ベースアドレスオフセットビットを格納することによって、本発明は、従来技術においてキャッシュアクセスごとに復号を行う論理によって生じた不可避の遅延を小さくすることができる。このため、従来技術の図１にグループ１２２で示す、加算器、ターゲットレジスタ、およびライン選択デコーダを含む多レベル論理は、図３にグループ３２２で示すような単一レベル論理のマルチプレクサ／回転装置によって置換される。この単一レベル論理によって、キャッシュアクセスに対する純遅延はゼロとなる。
【００１２】
本発明の、上述の、ならびにそれ以外の目的、特徴、および利点は、以下の詳細な説明から明らかになろう。
【発明を実施するための最良の形態】
【００１３】
ここで図２を参照すると、例示的なデータ処理システム２００が示されており、これは、プロセッサ２０５およびメモリシステム２３０を有し、本発明の実施のための適切な環境を提供する。図示のように、プロセッサ２０５は、インタフェースシステムバス２０２、Ｌ２キャッシュ２０４、およびシステムメモリ（メインメモリ）２２６を含むメモリシステム２３０に結合されている。プロセッサ２０５は、以下の機能ユニット、すなわち、固定小数点ユニット（ＦＸＵ）２０６、浮動小数点ユニット（ＦＰＵ）２０８、ロード／格納ユニット（ＬＳＵ）２１０、命令ユニット（ＩＵ）２１２、命令キャッシュユニット（ＩＣＵ）２１４、データキャッシュユニット（ＤＣＵ）２１６、Ｌ２キャッシュ制御ユニット２１８、プロセッサインタフェースユニット（ＰＩＵ）２２０、クロック分配および制御ユニット２２２、ならびにアドレス変換ユニット（ＡＴＵ）２２４を含む。当業者に周知のように、マルチプロセッサ環境では、いくつかのプロセッサおよびその関連するＬ２キャッシュがシステムバス２０２に接続して、Ｌ３メモリとしても知られるメインメモリ２２６に対する共有アクセスを可能とする。
【００１４】
プロセッサ２０５の様々な機能ユニットは、以下で詳細に説明するデータ、アドレス、および制御用のＩ／Ｏピン、ライン、バスなどを介して、相互に接続する。ここで「ライン」とは、単一の信号ラインまたは一組の信号ラインすなわちバスのいずれかを指す。一般に、プロセッサ２０５の機能ユニットは以下のように通信を行う。クロック分配および制御ユニット２２２が、プロセッサチップ２０５上の全ての機能ユニットにクロック信号を供給する。システムバス２０２は、双方向バス２０１を介してＰＩＵ２２０に接続し、更に、バス２０５を介してＣＣＵ２１８と接続する。Ｌ２キャッシュ２０４は、バス２０３を介してＣＣＵ２１８と通信し、ＣＣＵ２１８はバス２０９を介してＩＣＵ２１４と、バス２１１を介してＤＣＵ２１６と命令の伝達を行う。ＣＣＵ２１８は、バス２０７を介して、アドレス情報をＡＴＵ２２４に供給し、ミスインタフェース信号を受信する。ＬＳＵ２１０およびＩＵ２１２は、ライン２２９および２３１を介して、ＡＴＵ２２４に対する要求インタフェースを与え、変換状態情報を受信するために利用される。そして、ＡＴＵ２２４は、変換されたアドレス情報を、ライン２１５を介してＩＣＵ２１４に供給し、ライン２１３を介してＤＣＵ２１６に供給する。ＩＣＵ２１４は、バス２１９を介して命令ユニット２１２に接続する。ＤＣＵ２１６は、バス２２１を介して、ＦＸＵ２０６、ＦＰＵ２０８、およびＬＳＵ２１０にデータを供給し、一方、ＩＵ２１２は、バス２２３を介して、ＦＸＵ２０６、ＦＰＵ２０８、およびＬＳＵ２１０に命令を供給する。ＬＳＵ２１０は、バス２２５を介してＤＣＵ２１６にデータを供給し、ＦＰＵ２０８は、ＬＳＵ２１０へのバス２２７を介してＤＣＵ２１６との間でデータを供給および受信する。
【００１５】
ロード／格納ユニット２１０内のディスパッチャは、命令ユニット２１２からの命令を、様々な実行ユニットの復号ステージバッファに、更に、好ましくはロード／格納ユニット２１０と一体化しているロード／格納ユニットパイプラインバッファに、送出する。ロード／格納ユニット２１０の機能は、ロードおよび格納命令の有効アドレスを、例えば６４ビット幅のバス上に発生し、更に、汎用レジスタデータのためのソースおよびシンクとして機能することである。汎用レジスタ（図示せず）は、データ処理システム２００内のレジスタであり、プロセッサの設計またはオペレーティングシステムによっていかなる用途にも利用可能である。キャッシュに対する書き込みの間、レジスタはデータおよびアドレスを保持し、有効アドレスは、アドレス変換論理２１０Ａを用いて、アドレス発生ルーチン（ＡＧＥＮ）によって算出される。アドレス変換論理２１０Ａは、好適な実施形態では、回転装置３０８および３１０を備える。これらについては、図３を参照して以下で説明する。キャッシュの読み取りの間、キャッシュからのデータはレジスタにラッチされ、汎用レジスタまたは固定小数点ユニット２０６に送信される。パイプラインバッファの出力は、汎用レジスタおよびアドレス発生加算器を含む、ロード／格納ユニットの復号およびアドレス発生装置すなわちＡＧＥＮに供給される。デコーダからのデータ出力はデータレジスタおよびデータセレクタに供給される。次いで、ＡＧＥＮのアドレス出力は、実行ステージバッファに供給される。
【００１６】
ここで図３を参照すると、本発明の好適な実施形態による、特定のキャッシュラインを選択するためのキャッシュラインセレクタが示されている。レジスタファイル３０６は、復号列アドレス選択（ＣＡＳ）回転データ３１４、復号行アドレス選択（ＲＡＳ）データ３１２、復号ＲＡＳ回転データ３０４、および復号ＣＡＳデータ３１６を含む。
【００１７】
復号ＣＡＳデータ３１６およびＲＡＳデータ３１２は、共に、キャッシュラインを列および行として識別することによって、特定のキャッシュラインの位置を特定するためのインデックスを記述する。例えば、６４本のラインを有するキャッシュシステムについて考える。特定のキャッシュラインをプルするために論理の全てにわたって６４本のワイヤを張り巡らすのではなく、６４本のラインを、８列×８行の形で記述し、結果として６４の記述子が生じる。このように、各キャッシュラインは、そのＣＡＳ識別子およびＲＡＳ識別子によって識別される。
【００１８】
レジスタファイル３０６に示したＲＡＳ／ＣＡＳファイルの内容は、デコーダ５００の出力からのものであり、デコーダ５００は、既存のキャッシュレジスタから、または浮動小数点計算等の他の動作ユニットから、それらのユニットの動作遅延を増すことなく、ＲＡＳ／ＣＡＳラインを発生した以前の加算器／ＡＬＵの動作の結果を復号するものであることを注記しておく。デコーダ５００の動作の詳細は、以下で図５を参照して論じる。
【００１９】
特定のキャッシュラインを予め記述するために、レジスタファイル３０６にあるＲＡＳ／ＣＡＳデータを復号するので、特定のキャッシュラインを決定するための図１のグループ１２２の論理は、もはや必要ではなく、グループ３２２の単一レベルの論理によって置換される。これらの要素については、以下で詳細に論じる。
【００２０】
ここで図４を参照して、レジスタファイル３０６に示すデータの意味について検討する。図４において、ブロック４０２は、図１に示すシステムが利用するような、通常のレジスタファイルアドレス表現を示す。アドレスラインは、図１におけるレジスタＡ（ＲＡ）に格納されている符号化ベースアドレスを含む。符号化ＲＡＳおよび符号化ＣＡＳ、ならびにライン内バイトアドレス（図１のワードセレクタオフセット１１２）は、図１におけるレジスタＢ（ＲＢ）に格納されている。図１では、符号化ＲＡＳおよび符号化ＣＡＳは、インデックス１１０として合わせて示している。すなわち、符号化ＲＡＳが３ビットを含み、符号化ＣＡＳが３ビットを有すると仮定すると、ＲＡＳおよびＣＡＳ符号化ビットを合わせて、６の符号化ビットが生じる。
【００２１】
図４に戻ると、ブロック４０４は、本発明の好適な実施形態による変更レジスタファイルアドレスのイメージを示す。ベースアドレスおよびライン内バイトアドレスは符号化されたままであるが、ＲＡＳおよびＣＡＳビットは復号形態で格納され、それらは直接、図３に示す、単項加算器（ｕｎａｒｙ  ａｄｄｅｒ）として動作するＲＡＳ回転装置３０８およびＣＡＳ回転装置３１０に渡すことができる。ブロック４０４に示す復号ＲＡＳビットは、図３に示した復号ＲＡＳ回転データ３０４および復号ＲＡＳデータ３１２の双方を含み、ブロック４０４に示す復号ＣＡＳビットは、図３に示した復号ＣＡＳ回転データ３１４および復号ＣＡＳデータ３１６の双方を含む。
【００２２】
再び図３に戻ると、復号ＲＡＳ回転データ３０４および復号ＣＡＳ回転データ３１４は、８ウェイラッチマルチプレクサ／回転装置３０８および３１０をそれぞれ制御して、適切なキャッシュラインにＲＡＳおよびＣＡＳ信号を設定する。ＲＡＳおよびＣＡＳラインは、論理的にＡＮＤ論理３０２において組み合わされ、結果として６４ラインのキャッシュライン選択がＬ１キャッシュ１１６に出力される。６４ラインのうち１つだけが論理的に一意（ハイまたはロー）であり、所望のキャッシュラインを選択する。ワードセレクタ３１２は、図１のオフセット１１２について説明したのと同様に動作する。
【００２３】
復号ＲＡＳおよびＣＡＳデータ（３０４、３１２、３１４、３１６）は、図５に示すようなデコーダ５００の出力からのものである。例えば、ＲＡＳデータを記述する符号化２進数「０１１」がデコーダ５００に入力される。デコーダ５００からの出力は８ライン（０〜７）である。「０１１」が入力されると、ライン「３」上の信号が論理的に一意の値（好ましくはハイ）に変わるが、他の全てのライン（７、６、５、４、２、１、０）上の出力はローのままである。
【００２４】
回転装置のキャリーインが生じる場合があるが、かかる場合が発生するのは、通常、時間的に１０％未満である。このため、好適な実施形態では、ＲＡＳおよびＣＡＳのためのキャリーイン加算器は用いられない。しかしながら、代替的に、かかるキャリーイン加算器を組み込んで、回転装置３０８および３１０への入力のためのキャリーインを発生することができる。しかしながら、好適な実施形態では、図６に示す論理を用いてキャリーインを扱う。図６に示すように、６４ラインキャッシュライン選択は、図３を参照して上述したように発生する。しかしながら、ＣＡＳ’マルチクレプサ／回転装置６１０は、復号ＣＡＳ３１６を１つの追加の位置だけ回転させたＣＡＳマルチプレクサ／回転装置３１０である。この単一の追加の回転が、キャリーインに対応し、結果として適切なキャッシュライン信号が生じる。キャリーインがあるか無いかの判定は、好ましくは、６４ラインキャッシュライン選択の判定と同時に行う。従って、キャリーインがあると想定する場合には論理６００ａを用い、キャリーインが無いと想定する場合には論理６００ｂを用いる。キャリーインがあるか無いかの判定を行ったら、２ウェイ選択バッファ６０８が、６００ａからのＡＮＤ論理３０２ａまたは６００ｂからのＡＮＤ論理３０２ｂのどちらかの出力を選択する。この選択は、キャリーイン選択制御６３０または６３２によって制御される。キャリーインがある場合は、左側のキャリーイン選択制御６３０によりＡＮＤ論理３０２ａが選択され、キャリーインが無い場合は、右側のキャリーイン選択制御によりＡＮＤ論理３０２ｂが選択される。選択されたＡＮＤ論理出力は、Ｌ１キャッシュアレイ１１６に出力される。
【００２５】
図６において、２ウェイ選択バッファ６０８は、好ましくは、物理的にＡＮＤ論理とＬ１キャッシュアレイ１１６とのほぼ中間に位置し、ＡＮＤ論理３０２は、物理的に回転装置と２ウェイ選択バッファ６０８とのほぼ中間に配置することを注記しておく。回転装置とＬ１キャッシュアレイ１１６との間の距離は、必要な配線距離に固有の配線容量を駆動するためにいずれにしてもドライバが必要であり、これによってキャッシュアレイ１１６にアクセスする際にＡＮＤ論理３０２および２ウェイ選択バッファ６０８による追加の遅延時間が生じないようなものである。
【００２６】
従って、本発明は、Ｌ１キャッシュをインデックスするために用いる下位有効アドレス発生の性質を利用する。この性質は、有効アドレスを形成するためにベースレジスタに加えられるほとんど全ての変位がほとんどの商用の作業負荷では非常に短く、データキャッシュアクセスを開始するために必要なのは、典型的に５または６というごく少数の有効アドレスビットのみである、というポジションを支持するための履歴データを含む。更に、かかる変位は通常、一定であり、特にビットの下位（通常ゼロ）について、ベースレジスタ値は反復性が高く、下位８〜１２ビットの有効アドレス加算からのキャリーアウトは極めて予測可能性が高い。このように、（有効アドレスからの）復号キャッシュラインアクセスビットを、上述のように格納し操作して、これによってキャッシュラインにアクセスする際の遅延を小さくする。
【００２７】
本発明の態様について、コンピュータプロセッサおよびソフトウエアに関して説明したが、本発明の少なくとも一部の態様は、代替的に、データ格納システムまたはコンピュータシステムと共に用いるプログラムプロダクトとして実施可能であることは理解されよう。本発明の機能を規定するプログラムを、様々な信号担持媒体を介して、データ格納システムまたはコンピュータシステムに送出することができる。この信号担持媒体には、限定ではないが、書き込み不能格納媒体（例えばＣＤ−ＲＯＭ）、書き込み可能格納媒体（例えばフレキシブルディスク、ハードディスクドライブ、読み取り／書き込みＣＤ−ＲＯＭ、光学媒体）、ならびに、イーサネット（登録商標）を含むコンピュータおよび電話ネットワーク等の通信媒体が含まれる。従って、かかる信号担持媒体は、本発明の方法機能を指示するコンピュータ可読命令を担持または符号化している場合、本発明の代替的な実施形態を表すことは理解されよう。更に、本発明は、本明細書中に記載したような、ハードウエア、ソフトウエア、もしくはソフトウエアおよびハードウエアの組み合わせの形態の手段、またはそれらの均等物を有するシステムによって実施可能であることは理解されよう。
【００２８】
本発明について、好適な実施形態を参照して具体的に図示し説明したが、当業者には、本発明の精神および範囲から逸脱することなく、形態および詳細において様々な変更を加え得ることは理解されよう。
【図面の簡単な説明】
【００２９】
【図１】従来技術によって教示されるような、キャッシュラインを選択するためのシステムを示す。
【図２】本発明によって用いられるデータ処理システムを示す。
【図３】格納した復号情報を用いてキャッシュラインを選択するために本発明によって用いられる論理を示す。
【図４】本発明に従って復号変位ビットを格納するレジスタの例示的な内容を示す。
【図５】本発明によって用いられるデコーダを示す。
【図６】キャッシュアドレスを復号する場合にキャリーインを処理するために用いられる論理を示す。
【図１】
2004152291.tif 000003
【図２】
2004152291.tif 000004
【図３】
2004152291.tif 000005
【図４】
2004152291.tif 000006
【図５】
2004152291.tif 000007
【図６】
2004152291.tif 000008