JP4576172B2 - 演算処理装置,情報処理装置及び演算処理装置の制御方法 - Google Patents
演算処理装置,情報処理装置及び演算処理装置の制御方法 Download PDFInfo
- Publication number
- JP4576172B2 JP4576172B2 JP2004222041A JP2004222041A JP4576172B2 JP 4576172 B2 JP4576172 B2 JP 4576172B2 JP 2004222041 A JP2004222041 A JP 2004222041A JP 2004222041 A JP2004222041 A JP 2004222041A JP 4576172 B2 JP4576172 B2 JP 4576172B2
- Authority
- JP
- Japan
- Prior art keywords
- address
- address translation
- unit
- thread
- entry
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1027—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
- G06F12/1036—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] for multiple virtual address spaces, e.g. segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1027—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
- G06F12/1045—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
TLBが保持するアドレス変換対は、情報処理装置のOS(Operating System)により登録されるが、まれにOSが同一のアドレス変換対を複数登録してしまうことがある。
図8は従来の情報処理装置110におけるマルチヒット検出方法を説明するための図である。従来の情報処理装置110では、仮想アドレスを変換すべく、TLB111内を検索して変換対象の仮想アドレスと同一の仮想アドレスのTLBエントリを検索する。そして、検索の結果、TLB111のWAY(ここでWAYとは、複数の区分に区切られたTLBの1区分のことをいう)0に保持されたTLBエントリA(図8中“entryA”と表記)と、WAY1にTLBエントリB(図8中“entryB”と表記)とがヒットした場合には、これらTLBエントリA,Bが同一であれば、情報処理装置110にそなえられたマルチヒット制御部112によりマルチヒットが出力される。
不要なマルチヒットとは、上述したOSのミスに起因するものではなく、変換すべき仮想アドレスがTLB上に存在しないことなどによるTLBミスの発生に起因するものである。つまり、不要なマルチヒットは、TLBミスの発生により、情報処理装置のメインメモリ等からページテーブルエントリを読み出してTLBに登録するというTLBミスハンドラと呼ばれる処理を、複数のスレッド0,1で同時に実行してしまうことによって生じるものである。
スレッド1のTLBミスハンドラが終了(TLBエントリ登録完了)した後、再度、スレッドの切り替えが行なわれて、スレッド1からスレッド0へと処理が切り替えられると、それまで休眠中であったスレッド0についてのTLBミスハンドラが再開され(ステップS15)、スレッド0もTLBミスハンドラを完了する。
本発明は、このような課題に鑑み創案されたもので、マルチスレッド方式で動作する情報処理装置において、不要なマルチヒットを発生させることなく、アドレス変換用バッファ(TLB:Translation Lookaside Buffer)を複数のスレッド間で共有できるようにすることを目的とする。
なお、上記演算処理装置において、前記エントリ制御部は、前記検索部が検索したアドレス変換対に対応するスレッド情報が示すスレッドと前記エントリ部が登録しようとするアドレス変換対が有する仮想アドレスを使用するスレッドとが同一の場合、前記エントリ部が登録しようとするアドレス変換対の前記アドレス変換用バッファのエントリへの登録を実行させることとしてもよい。
また、上記目的を達成するために、本情報処理装置は、データを記憶する記憶装置と、前記記憶装置に接続されるとともに前記データを用いて複数のスレッドを実行する演算処理装置とを有する情報処理装置において、前記演算処理装置は、前記複数のスレッドを実行する演算部と、仮想アドレスと物理アドレスとの対応を示すアドレス変換対と前記アドレス変換対を登録したスレッドを示すスレッド情報とを、複数保持するアドレス変換用バッファと、前記演算部が実行するスレッドが使用する仮想アドレスを含むアドレス変換対を、前記アドレス変換用バッファから検索することによりアドレス変換を実行する検索部と、前記検索部が、同一の仮想アドレスを含むアドレス変換対を複数検索した場合、同一のスレッド情報を有する複数のアドレス変換対が存在するか否かを判断する判断部と、前記判断部が、同一のスレッド情報を有する複数のアドレス変換対が存在しないと判断した場合、複数のアドレス変換対が検索された旨の出力を抑止するとともに、前記検索部にアドレス変換を実行させるマルチヒット制御部とを有する。
なお、上記情報処理装置において、前記演算処理装置が有する前記マルチヒット制御部は、前記判断部が、同一のスレッド情報を有する複数のアドレス変換対が存在すると判断した場合、複数のアドレス変換対が検索された旨を出力するとともに、前記アドレス変換用バッファが保持する全てのアドレス変換対を削除させることとしてもよい。
さらに上記目的を達成するために、本情報処理装置は、データを記憶する記憶装置と、前記記憶装置に接続されるとともに前記データを用いて複数のスレッドを実行する演算処理装置とを有する情報処理装置において、前記演算処理装置は、前記複数のスレッドを実行する演算部と、複数のエントリを有するアドレス変換用バッファと、仮想アドレスと物理アドレスとの対応を示すアドレス変換対と前記アドレス変換対に対応するスレッドを示すスレッド情報とを、前記アドレス変換用バッファのエントリに登録するエントリ部と、前記エントリ部がアドレス変換対を前記アドレス変換用バッファに登録する場合、前記エントリ部が登録しようとするアドレス変換対が有する仮想アドレスを含むアドレス変換対を、前記アドレス変換用バッファから検索する検索部と、前記検索部が検索したアドレス変換対に対応するスレッド情報が示すスレッドと前記エントリ部が登録しようとするアドレス変換対が有する仮想アドレスを使用するスレッドとが異なる場合、前記エントリ部が登録しようとするアドレス変換対の前記アドレス変換用バッファのエントリへの登録を中止させるエントリ制御部とを有する。
なお、上記情報処理装置において、前記演算処理装置が有する前記エントリ制御部は、前記検索部が検索したアドレス変換対に対応するスレッド情報が示すスレッドと前記エントリ部が登録しようとするアドレス変換対が有する仮想アドレスを使用するスレッドとが同一の場合、前記エントリ部が登録しようとするアドレス変換対の前記アドレス変換用バッファのエントリへの登録を実行させることとしてもよい。
なお、上記演算処理装置の制御方法において、前記マルチヒット制御部は、前記判断部が、同一のスレッド情報を有する複数のアドレス変換対が存在すると判断した場合、複数のアドレス変換対が検索された旨を出力するとともに、前記アドレス変換用バッファが保持する全てのアドレス変換対を削除させることとしてもよい。
また、上記目的を達成するために、本演算処理装置の制御方法は、複数のスレッドを実行する演算部と、複数のエントリを有するアドレス変換用バッファとを有する演算処理装置の制御方法において、前記演算処理装置が有するエントリ部が、仮想アドレスと物理アドレスとの対応を示すアドレス変換対と前記アドレス変換対に対応するスレッドを示すスレッド情報とを、前記アドレス変換用バッファのエントリに登録する場合、前記演算処理装置が有する検索部が、前記エントリ部が登録しようとするアドレス変換対が有する仮想アドレスを含むアドレス変換対を、前記アドレス変換用バッファから検索するステップと、前記検索部が検索したアドレス変換対に対応するスレッド情報が示すスレッドと前記エントリ部が登録しようとするアドレス変換対が有する仮想アドレスを使用するスレッドとが異なる場合、前記演算処理装置が有するエントリ制御部が、前記エントリ部が登録しようとするアドレス変換対の前記アドレス変換用バッファのエントリへの登録を中止させるステップと、を有する。
なお、上記演算処理装置の制御方法において、前記エントリ制御部は、前記検索部が検索したアドレス変換対に対応するスレッド情報が示すスレッドと前記エントリ部が登録しようとするアドレス変換対が有する仮想アドレスを使用するスレッドとが同一の場合、前記エントリ部が登録しようとするアドレス変換対の前記アドレス変換用バッファのエントリへの登録を実行させることとしてもよい。
また、本発明によれば、変換すべき仮想アドレスと同一の仮想アドレスについてのアドレス変換対がアドレス変換用バッファから複数検索された場合でも、検索された複数のアドレス変換対のスレッド情報と変換すべき仮想アドレスを使用するスレッドとが同一でなければ、マルチヒットの出力を抑止するため、情報処理装置がマルチスレッド方式で動作することにより生じる(つまり、TLBミスハンドラを複数のスレッドで実行してしまうことに起因する)、OSのミスに起因しない不要なマルチヒットの出力を確実に抑止することができる。
〔1〕本発明の第1実施形態について
まず、本発明の第1実施形態としての情報処理装置及びマルチヒット制御方法について説明する。
図1は本発明の第1実施形態としての情報処理装置1の構成を示すブロック図である。この図1に示すように、本発明の第1実施形態としての情報処理装置1は、演算部(CPU;Central Processing Unit)10内に、命令処理部20及びアドレス変換制御部(MMU;Memory Management Unit)30をそなえて構成されている。
アドレス変換制御部30は、命令処理部20より入力された仮想アドレスを物理アドレスに変換するためのものであり、アドレス変換用バッファ(TLB;Translation Lookaside Buffer)31,検索部32,スレッド比較部33,判断部34,マルチヒット制御部35をそなえて構成されている。
コンテキストは、アドレス空間(つまり、物理アドレスのメモリ空間)のローカル空間(個別空間)を識別するためのものであり、グローバルビットは、コンテキストを区別するか否かを示す情報である。ここでは、グローバルビットが“1”(有効)ならば、コンテキストを区別しコンテキストを参照する(メモリ空間の個別部分を使用する)ことを示す一方、グローバルビットが“0”(無効)ならば、コンテキストを区別せずコンテキストを参照しない(メモリ空間の共通部分を使用する)ことを示す。
コントロールビットは、制御用のビットであり、例えば、Cacheable−in−Physically−Indexed−Cacheビット,Cacheable−in−Virtually−Indexed−Cacheビット,Side Effectビット,Privilegedビット,Writableビットである。
図3は本発明の第1実施形態としての情報処理装置1における検索部32,スレッド比較部33,判断部34,及びマルチヒット制御部35を説明するための図である。
なお、コンテキスト比較部32bは、アドレス変換対のグローバルビットが“1”(有効)であり、且つ変換すべき仮想アドレスのコンテキストとアドレス変換対のコンテキストとが同一であれば一致とするとともに、アドレス変換対のグローバルビットが“0”(無効)であれば変換すべき仮想アドレスのコンテキストとアドレス変換対のコンテキストとを比較しない。
判断部34は、検索部32による検索結果を判断するとともに、スレッド比較部33による比較結果を判断するものである。つまり、検索部32により複数のアドレス変換対が検索されたか否かを判断するとともに、スレッド比較部33による比較結果が同一であるか否かを判断する。
次に、本発明の第2実施形態としての情報処理装置及びマルチヒット制御方法について説明する。
図5は本発明の第2実施形態としての情報処理装置100の構成を示すブロック図である。なお、図5において既述の符号と同一の符号は、同一の部分もしくはほぼ同一の部分を示している。
この図5に示すように、本発明の第2実施形態としての情報処理装置100は、演算部10内に、命令処理部20及びアドレス変換制御部30をそなえて構成されている。ここで、演算部10及び命令処理部20は、上記第1実施形態の演算部10及び命令処理部20とそれぞれ同一であるため、ここではこれらの詳細な説明は省略する。
図6は本発明の第2実施形態としての情報処理装置100における検索部37,スレッド比較部38,判断部39,及びエントリ制御部40を説明するための図である。
スレッド比較部38は、エントリ部36によって登録されるアドレス変換対の仮想アドレスを使用するスレッド(図6中“Entry Thread”と表記)と、アドレス変換用バッファ31に保持されたスレッド情報(図6中“Thread ID”と表記)とを比較するものであり、このスレッド比較部38も、上記第1実施形態におけるスレッド比較部33とは、検索する元となるスレッドが、新たに登録する仮想アドレスのスレッド(Entry Thread)か変換すべき仮想アドレスのスレッド(Access Thread;図3参照)かが異なるだけで、その機能は同様である。
エントリ制御部40は、判断部34による判断結果を参照し(つまり、検索部37による検索結果及びスレッド比較部38による比較結果に基づいて)、エントリ部36によるアドレス変換用バッファ31へのアドレス変換対の登録を制御するものであり、検索部37により、エントリ部36によって登録されるアドレス変換対の仮想アドレスがアドレス変換用バッファ31から検索されなければ、エントリ部36によるアドレス変換対の登録を実施させる。
一方、検索部37による検索の結果、アドレス変換用バッファ31内に、エントリ部36が登録する仮想アドレスと同一の仮想アドレスがあると(ステップS2のYesルート)、エントリ制御部40は、判断部39による判断結果を参照する。
なお、本発明は上述した実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で種々変形して実施することができる。
例えば、上述した第1実施形態では、スレッド比較部33による比較を、アドレス変換を実行する度に行なうように構成したが、本発明はこれに限定されるものではなく、スレッド比較部33による比較を、検索部32により変換すべき仮想アドレスがアドレス変換用バッファ31から複数検索された場合にのみ実行するように構成してもよく、この場合でも上述した第1実施形態と同様の効果を得ることができる。なお、この場合には、マルチヒット制御部35がスレッド比較部33による比較を実行させるようにしてもよい。
また、上述した第1実施形態では、情報処理装置1が、判断部34とマルチヒット制御部35とを個別にそなえて構成された例をあげて説明したが、本発明はこれに限定されるものではなく、マルチヒット制御部35が判断部34をそなえるように構成してもよい。
上述した命令処理部20、アドレス比較部32a,37a、コンテキスト比較部32b,37b、スレッド比較部33,38、判断部34,39、マルチヒット制御部35、エントリ部36、及びエントリ制御部40としての機能は、コンピュータ(CPU,情報処理装置,各種端末を含む)が所定のアプリケーションプログラム(マルチヒット制御プログラム)を実行することによって実現される。
(付記1)
マルチスレッド方式で動作する情報処理装置であって、
仮想アドレスと物理アドレスとの対応を示すアドレス変換対を保持するアドレス変換用バッファと、
スレッド毎に得られた仮想アドレスを物理アドレスに変換すべく前記アドレス変換用バッファに保持された当該仮想アドレスについてのアドレス変換対を検索する検索部と、
該検索部により同一のアドレス変換対が複数検索された場合に、所定の条件を満たすときには、マルチヒットの出力を抑止して、前記検索部によるアドレス変換を実行させるマルチヒット制御部とをそなえて構成されたことを特徴とする、情報処理装置。
マルチスレッド方式で動作する情報処理装置であって、
仮想アドレスと物理アドレスとの対応を示すアドレス変換対を保持するとともに、前記アドレス変換対を登録したスレッドを示すスレッド情報を保持するアドレス変換用バッファと、
スレッド毎に使用される仮想アドレスを物理アドレスに変換すべく当該仮想アドレスと同一の仮想アドレスについてのアドレス変換対を前記アドレス変換用バッファから検索する検索部と、
前記検索部により変換すべき仮想アドレスと同一の仮想アドレスについてのアドレス変換対が複数検索された場合に、前記検索部によって検索された複数のアドレス変換対に対応する複数のスレッド情報のうち2以上の前記スレッド情報が同一か否かを判断する判断部と、
該判断部によって前記複数のスレッド情報が異なっていると判断された場合には、マルチヒットの出力を抑止して前記検索部によるアドレス変換を実行させるマルチヒット制御部とをそなえて構成されたことを特徴とする、情報処理装置。
前記マルチヒット制御部が、前記判断部によって前記複数のスレッド情報のうち2以上の前記スレッド情報が同一であると判断された場合には、マルチヒットを出力することを特徴とする、付記2記載の情報処理装置。
(付記4)
マルチスレッド方式で動作する情報処理装置であって、
仮想アドレスと物理アドレスとの対応を示すアドレス変換対を保持するとともに、前記アドレス変換対を登録したスレッドを示すスレッド情報を保持するアドレス変換用バッファと、
スレッド毎に得られた仮想アドレスを物理アドレスに変換すべく当該仮想アドレスと同一の仮想アドレスについてのアドレス変換対を前記アドレス変換用バッファから検索する検索部と、
該検索部により同一のアドレス変換対が複数検索された場合に、検索された複数のアドレス変換対に対応する複数のスレッド情報を比較するスレッド比較部と、
該スレッド比較部による比較の結果、前記複数のスレッド情報のうち2以上の前記スレッド情報が同一であった場合にはマルチヒットを出力する一方、前記複数のスレッド情報が同一でなかった場合には前記検索部によるアドレス変換を実行させるマルチヒット制御部とをそなえて構成されたことを特徴とする、情報処理装置。
前記アドレス変換用バッファが、前記アドレス変換対とともにコンテキストを保持するように構成され、
前記検索部が、変換すべき仮想アドレスのコンテキストと前記アドレス変換用バッファに保持された前記アドレス変換対のコンテキストとを比較するコンテキスト比較部をそなえて構成されることを特徴とする、付記1〜4のいずれか1項に記載の情報処理装置。
前記アドレス変換用バッファが、前記アドレス変換対とともに保持された前記コンテキストの有効/無効を示すコンテキスト有効/無効情報を保持するように構成され、
前記コンテキスト比較部が、前記コンテキスト有効/無効情報を参照し、当該コンテキスト有効/無効情報が有効であれば前記コンテキストの比較を行なう一方、当該コンテキスト有効/無効情報が無効であれば前記コンテキストの比較を行なわないことを特徴とする、付記5記載の情報処理装置。
マルチスレッド方式で動作する情報処理装置であって、
仮想アドレスと物理アドレスとの対応を示すアドレス変換対を保持するアドレス変換用バッファと、
スレッド毎に使用される仮想アドレスと当該仮想アドレスに対応する物理アドレスとを前記アドレス変換対として前記アドレス変換用バッファに登録するエントリ部と、
該エントリ部により前記アドレス変換対を登録する際に、登録されるアドレス変換対の仮想アドレスと同一の仮想アドレスを前記アドレス変換用バッファから検索する検索部と、
該検索部により、前記エントリ部によって登録されるアドレス変換対の仮想アドレスと同一の仮想アドレスが検索された場合に、前記エントリ部による前記アドレス変換対の前記アドレス変換用バッファへの登録を中止させるエントリ制御部とをそなえて構成されたことを特徴とする、情報処理装置。
前記アドレス変換用バッファに保持された前記アドレス変換対に当該アドレス変換対を登録したスレッドを示すスレッド情報が付加されるとともに、
前記検索部により、前記エントリ部によって登録されるアドレス変換対の仮想アドレスと同一の仮想アドレスが前記アドレス変換用バッファから検索された場合に、前記検索部によって検索された前記アドレス変換対に付加された前記スレッド情報と、前記エントリ部によって登録されるアドレス変換対の仮想アドレスを使用するスレッドとを比較するスレッド比較部をさらにそなえ、
前記エントリ制御部が、
前記スレッド比較部による比較の結果、前記検索部によって検索された前記アドレス変換対に付加された前記スレッド情報と、前記エントリ部によって登録されるアドレス変換対の仮想アドレスを使用するスレッドとが同一であった場合には、前記エントリ部による前記アドレス変換対の前記アドレス変換用バッファへの登録を実行させる一方、
前記スレッド比較部による比較の結果、前記スレッド情報と前記スレッドとが同一でなかった場合には、前記エントリ部による前記アドレス変換対の前記アドレス変換用バッファへの登録を中止させることを特徴とする、付記7記載の情報処理装置。
マルチスレッド方式で動作する情報処理装置であって、
仮想アドレスと物理アドレスとの対応を示すアドレス変換対を保持するとともに、前記アドレス変換対を登録したスレッドを示すスレッド情報を保持するアドレス変換用バッファと、
スレッド毎に使用される仮想アドレスと当該仮想アドレスに対応する物理アドレスとを前記アドレス変換対として前記アドレス変換用バッファに登録するエントリ部と、
該エントリ部により前記アドレス変換対を登録する際に、登録されるアドレス変換対の仮想アドレスと同一の仮想アドレスを前記アドレス変換用バッファから検索する検索部と、
前記検索部により、前記エントリ部によって登録されるアドレス変換対の仮想アドレスと同一の仮想アドレスが前記アドレス変換用バッファから検索され、且つ前記検索部によって検索された前記アドレス変換対に対応するスレッド情報と前記エントリ部によって登録されるアドレス変換対の仮想アドレスを使用するスレッドとが同一でなかった場合には、前記エントリ部による前記アドレス変換対の前記アドレス変換用バッファへの登録を中止させるエントリ制御部とをそなえて構成されたことを特徴とする、情報処理装置。
前記エントリ制御部が、前記検索部により、前記エントリ部によって登録されるアドレス変換対の仮想アドレスと同一の仮想アドレスが前記アドレス変換用バッファから検索され、且つ前記検索部によって検索された前記アドレス変換対に対応するスレッド情報と前記エントリ部によって登録されるアドレス変換対の仮想アドレスを使用するスレッドとが同一であった場合には、前記エントリ部による前記アドレス変換対の前記アドレス変換用バッファへの登録を実行させることを特徴とする、付記8記載の情報処理装置。
前記アドレス変換用バッファに保持された前記アドレス変換対にコンテキストが付加されるとともに、
前記検索部が、前記エントリ部によって登録されるアドレス変換対のコンテキストと、前記アドレス変換用バッファに保持された前記アドレス変換対に付加されたコンテキストとを比較するコンテキスト比較部をそなえて構成されることを特徴とする、付記7〜10のいずれか1項に記載の情報処理装置。
前記アドレス変換用バッファに保持された前記アドレス変換対に付加された前記コンテキストに当該コンテキストの有効/無効を示すコンテキスト有効/無効情報が付加されるとともに、
前記コンテキスト比較部が、前記コンテキスト有効/無効情報を参照し、当該コンテキスト有効/無効情報が有効であれば前記コンテキストの比較を行なう一方、当該コンテキスト有効/無効情報が無効であれば前記コンテキストの比較を行なわないことを特徴とする、付記11記載の情報処理装置。
仮想アドレスと物理アドレスとの対応を示すアドレス変換対を保持するアドレス変換用バッファと、スレッド毎に得られた仮想アドレスを物理アドレスに変換すべく前記アドレス変換用バッファに保持された当該仮想アドレスに対応するアドレス変換対を検索する検索部とをそなえた、マルチスレッド方式で動作する情報処理装置におけるマルチヒット制御方法であって、
前記検索部により同一のアドレス変換対が複数検索された場合に、所定の条件を満たすときには、マルチヒットの出力を抑止して、前記検索部によるアドレス変換を実行させることを特徴とする、マルチヒット制御方法。
仮想アドレスと物理アドレスとの対応を示すアドレス変換対を保持するアドレス変換用バッファと、スレッド毎に使用される仮想アドレスを物理アドレスに変換すべく前記アドレス変換用バッファに保持された当該仮想アドレスに対応するアドレス変換対を検索する検索部とをそなえた、マルチスレッド方式で動作する情報処理装置におけるマルチヒット制御方法であって、
前記アドレス変換用バッファに保持された前記アドレス変換対に当該アドレス変換対を登録したスレッドを示すスレッド情報を付加するとともに、
前記検索部により、変換すべき仮想アドレスと同一の仮想アドレスについてのアドレス変換対が複数検索された場合に、前記検索部によって検索された複数のアドレス変換対に付加された複数のスレッド情報のうち2以上のスレッド情報が同一か否かを判断し、
前記判断の結果、前記複数のスレッド情報が異なっていると判断された場合には、マルチヒットの出力を抑止して前記検索部によるアドレス変換を実行することを特徴とする、マルチヒット制御方法。
前記判断の結果、前記複数のスレッド情報のうち2以上の前記スレッド情報が同一であると判断された場合には、マルチヒットを出力することを特徴とする、付記14記載のマルチヒット制御方法。
(付記16)
仮想アドレスと物理アドレスとの対応を示すアドレス変換対を保持するアドレス変換用バッファと、スレッド毎に得られた仮想アドレスを物理アドレスに変換すべく前記アドレス変換用バッファに保持された当該仮想アドレスに対応するアドレス変換対を検索する検索部とをそなえた、マルチスレッド方式で動作する情報処理装置におけるマルチヒット制御方法であって、
前記アドレス変換用バッファに保持された前記アドレス変換対に当該アドレス変換対を登録したスレッドを示すスレッド情報を付加するとともに、
変換すべき仮想アドレスと同一の仮想アドレスについてのアドレス変換対が複数検索された場合に、前記検索部によって検索された前記複数のアドレス変換対に付加された前記スレッド情報を比較し、
前記比較の結果、前記複数のアドレス変換対に付加された前記スレッド情報のうち少なくとも2つのスレッド情報が同一であった場合には、マルチヒットを出力する一方、
前記比較の結果、前記複数のアドレス変換対に付加された前記スレッド情報が同一でなかった場合には、マルチヒットを出力せずに前記検索部によるアドレス変換を実行することを特徴とする、マルチヒット制御方法。
仮想アドレスと物理アドレスとの対応を示すアドレス変換対を保持するアドレス変換用バッファと、スレッド毎に使用される仮想アドレスと当該仮想アドレスに対応する物理アドレスとを前記アドレス変換対として前記アドレス変換用バッファに登録するエントリ部と、該エントリ部により前記アドレス変換対を登録する際に、該エントリ部により登録されるアドレス変換対の仮想アドレスと同一の仮想アドレスを前記アドレス変換用バッファから検索する検索部とをそなえた、マルチスレッド方式で動作する情報処理装置におけるマルチヒット制御方法であって、
前記検索部により、前記エントリ部によって登録されるアドレス変換対の仮想アドレスと同一の仮想アドレスが検索された場合に、前記エントリ部による前記アドレス変換対の前記アドレス変換用バッファへの登録を中止することを特徴とする、マルチヒット制御方法。
前記アドレス変換用バッファに保持された前記アドレス変換対に当該アドレス変換対を登録したスレッドを示すスレッド情報を付加するとともに、
前記検索部により前記エントリ部によって登録されるアドレス変換対の仮想アドレスと同一の仮想アドレスが前記アドレス変換用バッファから検索された場合に、前記検索部によって検索された仮想アドレスについての前記アドレス変換対に付加された前記スレッド情報と、前記エントリ部によって登録されるアドレス変換対の仮想アドレスを使用するスレッドとを比較し、
前記比較の結果、前記検索部によって検索された仮想アドレスについての前記アドレス変換対に付加された前記スレッド情報と、前記エントリ部によって登録されるアドレス変換対の仮想アドレスを使用するスレッドとが同一であった場合には、前記エントリ部による前記アドレス変換対の前記アドレス変換用バッファへの登録を実行する一方、
前記比較の結果、前記スレッド情報と前記スレッドとが同一でなかった場合には、前記エントリ部による前記アドレス変換対の前記アドレス変換用バッファへの登録を中止することを特徴とする、付記17記載のマルチヒット制御方法。
仮想アドレスと物理アドレスとの対応を示すアドレス変換対を保持するアドレス変換用バッファと、スレッド毎に使用される仮想アドレスと当該仮想アドレスに対応する物理アドレスとを前記アドレス変換対として前記アドレス変換用バッファに登録するエントリ部と、該エントリ部により前記アドレス変換対を登録する際に、該エントリ部により登録されるアドレス変換対の仮想アドレスと同一の仮想アドレスを前記アドレス変換用バッファから検索する検索部とをそなえた、マルチスレッド方式で動作する情報処理装置におけるマルチヒット制御方法であって、
前記アドレス変換用バッファに保持された前記アドレス変換対に当該アドレス変換対を登録したスレッドを示すスレッド情報を付加するとともに、
前記検索部により、前記エントリ部によって登録されるアドレス変換対の仮想アドレスと同一の仮想アドレスが前記アドレス変換用バッファから検索され、且つ前記検索部によって検索された仮想アドレスについてのアドレス変換対に付加された前記スレッド情報と前記エントリ部によって登録されるアドレス変換対の仮想アドレスを使用するスレッドとが同一でなかった場合には、前記エントリ部による前記アドレス変換対の前記アドレス変換用バッファへの登録を中止することを特徴とする、マルチヒット制御方法。
前記検索部により、前記エントリ部によって登録されるアドレス変換対の仮想アドレスと同一の仮想アドレスが前記アドレス変換用バッファから検索され、且つ前記検索部によって検索された仮想アドレスについてのアドレス変換対に付加された前記スレッド情報と前記エントリ部によって登録されるアドレス変換対の仮想アドレスを使用するスレッドとが同一であった場合には、前記エントリ部による前記アドレス変換対の前記アドレス変換用バッファへの登録を実行することを特徴とする、付記18記載のマルチヒット制御方法。
仮想アドレスと物理アドレスとの対応を示すアドレス変換対を保持するとともに、前記アドレス変換対を登録したスレッドを示すスレッド情報を保持するアドレス変換用バッファをそなえた、マルチスレッド方式で動作する情報処理装置において、マルチヒットの出力を制御する機能をコンピュータに実現させるためのマルチヒット制御プログラムであって、
スレッド毎に使用される仮想アドレスを物理アドレスに変換すべく当該仮想アドレスと同一の仮想アドレスについてのアドレス変換対を前記アドレス変換用バッファから検索する検索部、
前記検索部により変換すべき仮想アドレスと同一の仮想アドレスについてのアドレス変換対が複数検索された場合に、前記検索部によって検索された複数のアドレス変換対に対応する複数のスレッド情報のうち2以上の前記スレッド情報が同一か否かを判断する判断部、及び、
該判断部によって前記複数のスレッド情報が異なっていると判断された場合には、マルチヒットの出力を抑止して前記検索部によるアドレス変換を実行させる一方、前記判断部によって前記複数のスレッド情報のうち2以上の前記スレッド情報が同一であると判断された場合には、マルチヒットを出力するマルチヒット制御部として、前記コンピュータを機能させることを特徴とする、マルチヒット制御プログラム。
仮想アドレスと物理アドレスとの対応を示すアドレス変換対を保持するとともに、前記アドレス変換対を登録したスレッドを示すスレッド情報を保持するアドレス変換用バッファをそなえた、マルチスレッド方式で動作する情報処理装置において、マルチヒットの出力を制御する機能をコンピュータに実現させるためのマルチヒット制御プログラムを記録したコンピュータ読取可能な記録媒体であって、
前記マルチヒット制御プログラムが、
スレッド毎に使用される仮想アドレスを物理アドレスに変換すべく当該仮想アドレスと同一の仮想アドレスについてのアドレス変換対を前記アドレス変換用バッファから検索する検索部、
前記検索部により変換すべき仮想アドレスと同一の仮想アドレスについてのアドレス変換対が複数検索された場合に、前記検索部によって検索された複数のアドレス変換対に対応する複数のスレッド情報のうち2以上の前記スレッド情報が同一か否かを判断する判断部、及び、
該判断部によって前記複数のスレッド情報が異なっていると判断された場合には、マルチヒットの出力を抑止して前記検索部によるアドレス変換を実行させる一方、前記判断部によって前記複数のスレッド情報のうち2以上の前記スレッド情報が同一であると判断された場合には、マルチヒットを出力するマルチヒット制御部として、前記コンピュータを機能させることを特徴とする、マルチヒット制御プログラムを記録したコンピュータ読取可能な記録媒体。
仮想アドレスと物理アドレスとの対応を示すアドレス変換対を保持するとともに、前記アドレス変換対を登録したスレッドを示すスレッド情報を保持するアドレス変換用バッファをそなえた、マルチスレッド方式で動作する情報処理装置において、マルチヒットの出力を制御する機能をコンピュータに実現させるためのマルチヒット制御プログラムであって、
スレッド毎に使用される仮想アドレスと当該仮想アドレスに対応する物理アドレスとを前記アドレス変換対として前記アドレス変換用バッファに登録するエントリ部、
該エントリ部により前記アドレス変換対を登録する際に、登録されるアドレス変換対の仮想アドレスと同一の仮想アドレスを前記アドレス変換用バッファから検索する検索部、及び、
前記検索部により、前記エントリ部によって登録されるアドレス変換対の仮想アドレスと同一の仮想アドレスが前記アドレス変換用バッファから検索され、且つ前記検索部によって検索された前記アドレス変換対に対応するスレッド情報と前記エントリ部によって登録されるアドレス変換対の仮想アドレスを使用するスレッドとが同一でなかった場合には、前記エントリ部による前記アドレス変換対の前記アドレス変換用バッファへの登録を中止させる一方、前記検索部により、前記エントリ部によって登録されるアドレス変換対の仮想アドレスと同一の仮想アドレスが前記アドレス変換用バッファから検索され、且つ前記検索部によって検索された前記アドレス変換対に対応するスレッド情報と前記エントリ部によって登録されるアドレス変換対の仮想アドレスを使用するスレッドとが同一であった場合には、前記エントリ部による前記アドレス変換対の前記アドレス変換用バッファへの登録を実行させるエントリ制御部として、前記コンピュータを機能させることを特徴とする、マルチヒット制御プログラム。
仮想アドレスと物理アドレスとの対応を示すアドレス変換対を保持するとともに、前記アドレス変換対を登録したスレッドを示すスレッド情報を保持するアドレス変換用バッファをそなえた、マルチスレッド方式で動作する情報処理装置において、マルチヒットの出力を制御する機能をコンピュータに実現させるためのマルチヒット制御プログラムを記録したコンピュータ読取可能な記録媒体であって、
前記マルチヒット制御プログラムが、
スレッド毎に使用される仮想アドレスと当該仮想アドレスに対応する物理アドレスとを前記アドレス変換対として前記アドレス変換用バッファに登録するエントリ部、
該エントリ部により前記アドレス変換対を登録する際に、登録されるアドレス変換対の仮想アドレスと同一の仮想アドレスを前記アドレス変換用バッファから検索する検索部、及び、
前記検索部により、前記エントリ部によって登録されるアドレス変換対の仮想アドレスと同一の仮想アドレスが前記アドレス変換用バッファから検索され、且つ前記検索部によって検索された前記アドレス変換対に対応するスレッド情報と前記エントリ部によって登録されるアドレス変換対の仮想アドレスを使用するスレッドとが同一でなかった場合には、前記エントリ部による前記アドレス変換対の前記アドレス変換用バッファへの登録を中止させる一方、前記検索部により、前記エントリ部によって登録されるアドレス変換対の仮想アドレスと同一の仮想アドレスが前記アドレス変換用バッファから検索され、且つ前記検索部によって検索された前記アドレス変換対に対応するスレッド情報と前記エントリ部によって登録されるアドレス変換対の仮想アドレスを使用するスレッドとが同一であった場合には、前記エントリ部による前記アドレス変換対の前記アドレス変換用バッファへの登録を実行させるエントリ制御部として、前記コンピュータを機能させることを特徴とする、マルチヒット制御プログラムを記録したコンピュータ読取可能な記録媒体。
10 演算部(CPU)
20 命令処理部
30 アドレス変換制御部(MMU)
31 アドレス変換用バッファ(TLB)
32,37 検索部
32a,37a アドレス比較部
32b,37b コンテキスト比較部
33,38 スレッド比較部
34,39 判断部
35 マルチヒット制御部
36 エントリ部
40 エントリ制御部
Claims (12)
- 複数のスレッドを実行する演算部と、
仮想アドレスと物理アドレスとの対応を示すアドレス変換対と前記アドレス変換対を登録したスレッドを示すスレッド情報とを、複数保持するアドレス変換用バッファと、
前記演算部が実行するスレッドが使用する仮想アドレスを含むアドレス変換対を、前記アドレス変換用バッファから検索することによりアドレス変換を実行する検索部と、
前記検索部が、同一の仮想アドレスを含むアドレス変換対を複数検索した場合、同一のスレッド情報を有する複数のアドレス変換対が存在するか否かを判断する判断部と、
前記判断部が、同一のスレッド情報を有する複数のアドレス変換対が存在しないと判断した場合、複数のアドレス変換対が検索された旨の出力を抑止するとともに、前記検索部にアドレス変換を実行させるマルチヒット制御部とを有することを特徴とする、演算処理装置。 - 前記演算処理装置において
前記マルチヒット制御部は、
前記判断部が、同一のスレッド情報を有する複数のアドレス変換対が存在すると判断した場合、複数のアドレス変換対が検索された旨を出力するとともに、前記アドレス変換用バッファが保持する全てのアドレス変換対を削除させることを特徴とする、請求項1記載の演算処理装置。 - 複数のスレッドを実行する演算部と、
複数のエントリを有するアドレス変換用バッファと、
仮想アドレスと物理アドレスとの対応を示すアドレス変換対と前記アドレス変換対に対応するスレッドを示すスレッド情報とを、前記アドレス変換用バッファのエントリに登録するエントリ部と、
前記エントリ部がアドレス変換対を前記アドレス変換用バッファに登録する場合、前記エントリ部が登録しようとするアドレス変換対が有する仮想アドレスを含むアドレス変換対を、前記アドレス変換用バッファから検索する検索部と、
前記検索部が検索したアドレス変換対に対応するスレッド情報が示すスレッドと前記エントリ部が登録しようとするアドレス変換対が有する仮想アドレスを使用するスレッドとが異なる場合、前記エントリ部が登録しようとするアドレス変換対の前記アドレス変換用バッファのエントリへの登録を中止させるエントリ制御部とを有することを特徴とする、演算処理装置。 - 前記演算処理装置において、
前記エントリ制御部は、
前記検索部が検索したアドレス変換対に対応するスレッド情報が示すスレッドと前記エントリ部が登録しようとするアドレス変換対が有する仮想アドレスを使用するスレッドとが同一の場合、前記エントリ部が登録しようとするアドレス変換対の前記アドレス変換用バッファのエントリへの登録を実行させることを特徴とする請求項3記載の演算処理装置。 - データを記憶する記憶装置と、前記記憶装置に接続されるとともに前記データを用いて複数のスレッドを実行する演算処理装置とを有する情報処理装置において、
前記演算処理装置は、
前記複数のスレッドを実行する演算部と、
仮想アドレスと物理アドレスとの対応を示すアドレス変換対と前記アドレス変換対を登録したスレッドを示すスレッド情報とを、複数保持するアドレス変換用バッファと、
前記演算部が実行するスレッドが使用する仮想アドレスを含むアドレス変換対を、前記アドレス変換用バッファから検索することによりアドレス変換を実行する検索部と、
前記検索部が、同一の仮想アドレスを含むアドレス変換対を複数検索した場合、同一のスレッド情報を有する複数のアドレス変換対が存在するか否かを判断する判断部と、
前記判断部が、同一のスレッド情報を有する複数のアドレス変換対が存在しないと判断した場合、複数のアドレス変換対が検索された旨の出力を抑止するとともに、前記検索部にアドレス変換を実行させるマルチヒット制御部とを有することを特徴とする情報処理装置。 - 前記情報処理装置において、
前記演算処理装置が有する前記マルチヒット制御部は、
前記判断部が、同一のスレッド情報を有する複数のアドレス変換対が存在すると判断した場合、複数のアドレス変換対が検索された旨を出力するとともに、前記アドレス変換用バッファが保持する全てのアドレス変換対を削除させることを特徴とする請求項5記載の情報処理装置。 - データを記憶する記憶装置と、前記記憶装置に接続されるとともに前記データを用いて複数のスレッドを実行する演算処理装置とを有する情報処理装置において、
前記演算処理装置は、
前記複数のスレッドを実行する演算部と、
複数のエントリを有するアドレス変換用バッファと、
仮想アドレスと物理アドレスとの対応を示すアドレス変換対と前記アドレス変換対に対応するスレッドを示すスレッド情報とを、前記アドレス変換用バッファのエントリに登録するエントリ部と、
前記エントリ部がアドレス変換対を前記アドレス変換用バッファに登録する場合、前記エントリ部が登録しようとするアドレス変換対が有する仮想アドレスを含むアドレス変換対を、前記アドレス変換用バッファから検索する検索部と、
前記検索部が検索したアドレス変換対に対応するスレッド情報が示すスレッドと前記エントリ部が登録しようとするアドレス変換対が有する仮想アドレスを使用するスレッドとが異なる場合、前記エントリ部が登録しようとするアドレス変換対の前記アドレス変換用バッファのエントリへの登録を中止させるエントリ制御部とを有することを特徴とする情報処理装置。 - 前記情報処理装置において、
前記演算処理装置が有する前記エントリ制御部は、
前記検索部が検索したアドレス変換対に対応するスレッド情報が示すスレッドと前記エントリ部が登録しようとするアドレス変換対が有する仮想アドレスを使用するスレッドとが同一の場合、前記エントリ部が登録しようとするアドレス変換対の前記アドレス変換用バッファのエントリへの登録を実行させることを特徴とする請求項7記載の情報処理装置。 - 複数のスレッドを実行する演算部と、仮想アドレスと物理アドレスとの対応を示すアドレス変換対と前記アドレス変換対を登録したスレッドを示すスレッド情報とを複数保持するアドレス変換用バッファとを有する演算処理装置の制御方法において、
前記演算部が実行するスレッドが使用する仮想アドレスを含むアドレス変換対を、前記演算処理装置が有する検索部が、前記アドレス変換用バッファから検索することによりアドレス変換を実行するステップと、
前記検索部が、同一の仮想アドレスを含むアドレス変換対を複数検索した場合、前記演算処理装置が有する判断部が、同一のスレッド情報を有する複数のアドレス変換対が存在するか否かを判断するステップと、
前記判断部が、同一のスレッド情報を有する複数のアドレス変換対が存在しないと判断した場合、前記演算処理装置が有するマルチヒット制御部が、複数のアドレス変換対が検索された旨の出力を抑止するとともに、前記検索部にアドレス変換を実行させるステップと、を有することを特徴とする演算処理装置の制御方法。 - 前記演算処理装置の制御方法において、
前記マルチヒット制御部は、
前記判断部が、同一のスレッド情報を有する複数のアドレス変換対が存在すると判断した場合、複数のアドレス変換対が検索された旨を出力するとともに、前記アドレス変換用バッファが保持する全てのアドレス変換対を削除させることを特徴とする、請求項9記載の演算処理装置の制御方法。 - 複数のスレッドを実行する演算部と、複数のエントリを有するアドレス変換用バッファとを有する演算処理装置の制御方法において、
前記演算処理装置が有するエントリ部が、仮想アドレスと物理アドレスとの対応を示すアドレス変換対と前記アドレス変換対に対応するスレッドを示すスレッド情報とを、前記アドレス変換用バッファのエントリに登録する場合、前記演算処理装置が有する検索部が、前記エントリ部が登録しようとするアドレス変換対が有する仮想アドレスを含むアドレス変換対を、前記アドレス変換用バッファから検索するステップと、
前記検索部が検索したアドレス変換対に対応するスレッド情報が示すスレッドと前記エントリ部が登録しようとするアドレス変換対が有する仮想アドレスを使用するスレッドとが異なる場合、前記演算処理装置が有するエントリ制御部が、前記エントリ部が登録しようとするアドレス変換対の前記アドレス変換用バッファのエントリへの登録を中止させるステップと、を有することを特徴とする演算処理装置の制御方法。 - 前記演算処理装置の制御方法において、
前記エントリ制御部は、
前記検索部が検索したアドレス変換対に対応するスレッド情報が示すスレッドと前記エントリ部が登録しようとするアドレス変換対が有する仮想アドレスを使用するスレッドとが同一の場合、前記エントリ部が登録しようとするアドレス変換対の前記アドレス変換用バッファのエントリへの登録を実行させることを特徴とする請求項11記載の演算処理装置の制御方法。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004222041A JP4576172B2 (ja) | 2004-07-29 | 2004-07-29 | 演算処理装置,情報処理装置及び演算処理装置の制御方法 |
US10/986,891 US7617379B2 (en) | 2004-07-29 | 2004-11-15 | Multi-hit control method for shared TLB in a multiprocessor system |
EP04257291A EP1622033B1 (en) | 2004-07-29 | 2004-11-24 | Information processor and multi-hit control method |
DE602004031104T DE602004031104D1 (de) | 2004-07-29 | 2004-11-24 | Informationsprozessor und Verfahren zur Multi-Hit Kontrolle |
EP06121920.0A EP1770530B1 (en) | 2004-07-29 | 2004-11-24 | Information processor and multi-hit control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004222041A JP4576172B2 (ja) | 2004-07-29 | 2004-07-29 | 演算処理装置,情報処理装置及び演算処理装置の制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2006040140A JP2006040140A (ja) | 2006-02-09 |
JP4576172B2 true JP4576172B2 (ja) | 2010-11-04 |
Family
ID=34930830
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004222041A Expired - Fee Related JP4576172B2 (ja) | 2004-07-29 | 2004-07-29 | 演算処理装置,情報処理装置及び演算処理装置の制御方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US7617379B2 (ja) |
EP (2) | EP1770530B1 (ja) |
JP (1) | JP4576172B2 (ja) |
DE (1) | DE602004031104D1 (ja) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6622267B1 (en) * | 1999-12-08 | 2003-09-16 | Intel Corporation | Method and apparatus for detecting multi-hit errors in cache |
US8166239B2 (en) * | 2007-06-21 | 2012-04-24 | International Business Machines Corporation | Translation lookaside buffer and related method and program product utilized for virtual addresses |
US8140823B2 (en) * | 2007-12-03 | 2012-03-20 | Qualcomm Incorporated | Multithreaded processor with lock indicator |
WO2013101104A1 (en) * | 2011-12-29 | 2013-07-04 | Intel Corporation | Sharing tlb mappings between contexts |
US9330017B2 (en) | 2012-11-02 | 2016-05-03 | International Business Machines Corporation | Suppressing virtual address translation utilizing bits and instruction tagging |
US9092382B2 (en) | 2012-11-02 | 2015-07-28 | International Business Machines Corporation | Reducing microprocessor performance loss due to translation table coherency in a multi-processor system |
US10564973B2 (en) * | 2015-11-20 | 2020-02-18 | Arm Limited | Apparatus and method for sharing branch information storage entries between threads that share an address translation regime |
US9892058B2 (en) * | 2015-12-16 | 2018-02-13 | Advanced Micro Devices, Inc. | Centrally managed unified shared virtual address space |
US10108554B2 (en) | 2016-12-05 | 2018-10-23 | Intel Corporation | Apparatuses, methods, and systems to share translation lookaside buffer entries |
US10970118B2 (en) | 2017-08-02 | 2021-04-06 | Advanced Micro Devices, Inc. | Shareable FPGA compute engine |
US10318435B2 (en) * | 2017-08-22 | 2019-06-11 | International Business Machines Corporation | Ensuring forward progress for nested translations in a memory management unit |
US11422812B2 (en) | 2019-06-25 | 2022-08-23 | Advanced Micro Devices, Inc. | Method and apparatus for efficient programmable instructions in computer systems |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002079998A1 (en) * | 2001-03-30 | 2002-10-10 | Mips Technologies, Inc. | Mechanism to extend computer memory protection schemes |
US20040064654A1 (en) * | 2001-03-30 | 2004-04-01 | Willis Thomas E. | Method and apparatus including heuristic for sharing TLB entries |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0614324B2 (ja) | 1986-05-02 | 1994-02-23 | エムアイピ−エス コンピユ−タ− システムズ、インコ−ポレイテイド | コンピユ−タシステム |
JPH02300951A (ja) | 1989-05-16 | 1990-12-13 | Mitsubishi Electric Corp | キャッシュメモリ装置 |
JP3168489B2 (ja) * | 1993-05-12 | 2001-05-21 | 富士通株式会社 | Tlb制御方法及び装置 |
JP3740195B2 (ja) * | 1994-09-09 | 2006-02-01 | 株式会社ルネサステクノロジ | データ処理装置 |
US5680566A (en) | 1995-03-03 | 1997-10-21 | Hal Computer Systems, Inc. | Lookaside buffer for inputting multiple address translations in a computer system |
-
2004
- 2004-07-29 JP JP2004222041A patent/JP4576172B2/ja not_active Expired - Fee Related
- 2004-11-15 US US10/986,891 patent/US7617379B2/en not_active Expired - Fee Related
- 2004-11-24 EP EP06121920.0A patent/EP1770530B1/en not_active Expired - Fee Related
- 2004-11-24 DE DE602004031104T patent/DE602004031104D1/de active Active
- 2004-11-24 EP EP04257291A patent/EP1622033B1/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002079998A1 (en) * | 2001-03-30 | 2002-10-10 | Mips Technologies, Inc. | Mechanism to extend computer memory protection schemes |
US20040064654A1 (en) * | 2001-03-30 | 2004-04-01 | Willis Thomas E. | Method and apparatus including heuristic for sharing TLB entries |
Also Published As
Publication number | Publication date |
---|---|
US20060026382A1 (en) | 2006-02-02 |
JP2006040140A (ja) | 2006-02-09 |
EP1770530A3 (en) | 2007-05-09 |
EP1622033A1 (en) | 2006-02-01 |
EP1770530B1 (en) | 2016-04-20 |
EP1622033B1 (en) | 2011-01-19 |
EP1770530A2 (en) | 2007-04-04 |
US7617379B2 (en) | 2009-11-10 |
DE602004031104D1 (de) | 2011-03-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1622007B1 (en) | Information processing apparatus and software pre-fetch control method | |
EP2275939B1 (en) | Processor and address translating method | |
US9465748B2 (en) | Instruction fetch translation lookaside buffer management to support host and guest O/S translations | |
TWI446166B (zh) | 判定快取策略的方法、處理器和設定快取策略的系統 | |
JP4576172B2 (ja) | 演算処理装置,情報処理装置及び演算処理装置の制御方法 | |
JPH0658650B2 (ja) | 仮想計算機システム | |
TW201042455A (en) | Method of providing extended memory protection | |
JP2009506434A (ja) | Tlbロックインジケータ | |
JP4574712B2 (ja) | 演算処理装置、情報処理装置及び制御方法 | |
JP2009512943A (ja) | 多階層の変換索引緩衝機構(TLBs)フィールドの更新 | |
US20120173843A1 (en) | Translation look-aside buffer including hazard state | |
JP3936672B2 (ja) | マイクロプロセッサ | |
CN112527395B (zh) | 数据预取方法和数据处理装置 | |
US8549232B2 (en) | Information processing device and cache memory control device | |
JP4867451B2 (ja) | キャッシュメモリ装置及びそれに用いるキャッシュメモリ制御方法並びにそのプログラム | |
JP7035787B2 (ja) | 演算処理装置および演算処理装置の制御方法 | |
JP2006039968A (ja) | アドレス変換バッファ制御装置およびアドレス変換バッファ制御方法 | |
JPH02254553A (ja) | 情報処理装置 | |
US20230161709A1 (en) | Processor, computer system, and method for flushing hierarchical cache structure based on a designated key identification code and a designated address | |
US20060005062A1 (en) | Buffer and method of diagnosing buffer failure | |
CN111274573A (zh) | 一种基于访存请求序列的处理器芯片假安全依赖冲突的识别方法 | |
JP2013205856A (ja) | キャッシュ診断装置、キャッシュ診断方法、及びプログラム | |
JPH02114346A (ja) | Tlbエントリ制御方式 | |
JPS63752A (ja) | メモリ保護方式 | |
US20160124859A1 (en) | Computing system with tiered fetch mechanism and method of operation thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20061218 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100323 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100521 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100608 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100721 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20100810 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100823 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130827 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |