JP7133615B2 - アドレス変換キャッシュ - Google Patents
アドレス変換キャッシュ Download PDFInfo
- Publication number
- JP7133615B2 JP7133615B2 JP2020503733A JP2020503733A JP7133615B2 JP 7133615 B2 JP7133615 B2 JP 7133615B2 JP 2020503733 A JP2020503733 A JP 2020503733A JP 2020503733 A JP2020503733 A JP 2020503733A JP 7133615 B2 JP7133615 B2 JP 7133615B2
- Authority
- JP
- Japan
- Prior art keywords
- address
- cache
- invalidation
- page table
- page
- 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.)
- Active
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]
-
- 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/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0864—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using pseudo-associative means, e.g. set-associative or hashing
-
- 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/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0877—Cache access modes
- G06F12/0882—Page mode
-
- 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/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0891—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using clearing, invalidating or resetting means
-
- 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/1009—Address translation using page tables, e.g. page table structures
-
- 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
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
- G06F2212/1024—Latency reduction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/50—Control mechanisms for virtual memory, cache or TLB
- G06F2212/502—Control mechanisms for virtual memory, cache or TLB using adaptive policy
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/65—Details of virtual memory and virtual address translation
- G06F2212/651—Multi-level translation tables
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/65—Details of virtual memory and virtual address translation
- G06F2212/657—Virtual address space management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/68—Details of translation look-aside buffer [TLB]
- G06F2212/683—Invalidation
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
複数のキャッシュエントリを含むアドレス変換キャッシュであって、各キャッシュエントリは、メモリシステムに格納された1つまたは複数のページテーブルの1つまたは複数のページテーブルエントリに依存するアドレス変換データを格納する、アドレス変換キャッシュと、
少なくとも1つのターゲットページテーブルエントリに対応するアドレス情報を指定する無効化要求に応答して、無効化ルックアップ操作を実行して、アドレス変換データが前記少なくとも1つのターゲットページテーブルエントリに依存しているアドレス変換キャッシュの少なくとも1つのターゲットキャッシュエントリを識別して、前記少なくとも1つのターゲットキャッシュエントリに格納されているアドレス変換データの無効化をトリガする、制御回路と、
を備える装置が提供され、
制御回路は、前記少なくとも1つのターゲットページテーブルエントリのページサイズを示すページサイズ情報に応じて、無効化ルックアップ操作に使用する複数の無効化ルックアップモードのいずれかを選択するように構成され、複数の無効化ルックアップモードは、アドレス情報に応じて前記少なくとも1つのターゲットキャッシュエントリを識別するさまざまな方法に対応する。
少なくとも1つのターゲットページテーブルエントリに対応するアドレス情報を指定する無効化要求に応答して:
アドレス変換データが前記少なくとも1つのターゲットページテーブルエントリに依存するアドレス変換キャッシュの少なくとも1つのターゲットキャッシュエントリを識別するために、無効化ルックアップ操作を実行するステップであって、複数の無効化ルックアップモードのいずれが無効化ルックアップ操作に使用されるかは、前記少なくとも1つのターゲットページテーブルエントリのページサイズを示すページサイズ情報に応じて選択され、複数の無効化ルックアップモードは、アドレス情報に応じて前記少なくとも1つのターゲットキャッシュエントリを識別するさまざまな方法に対応する、ステップと、
前記少なくとも1つのターゲットエントリに格納されたアドレス変換データの無効化をトリガするステップと
を含む。
複数のキャッシュエントリを含むアドレス変換キャッシュであって、各キャッシュエントリは、メモリシステムに格納された1つまたは複数のページテーブルの1つまたは複数のページテーブルエントリに依存するアドレス変換データを格納し、
各ページテーブルエントリは、
次のレベルのページテーブルエントリのアドレスを指定する中間ページテーブルエントリ、および、
アドレス変換マッピングを指定するリーフページテーブルエントリ
のいずれかを備える、アドレス変換キャッシュと、
アドレス変換データが少なくとも1つのターゲットページテーブルエントリに依存するアドレス変換キャッシュの少なくとも1つのターゲットキャッシュエントリの無効化をトリガするために、アドレスの無効化範囲を示す範囲情報を識別するリーフおよび中間の排他的範囲指定無効化要求に応答する制御回路であって、前記少なくとも1つのターゲットページテーブルエントリは、完全に前記無効化範囲内にある所与のページテーブルの任意のリーフページテーブルエントリおよびアドレスグループに対応する前記所与のページテーブルの任意の中間ページテーブルエントリを含む、制御回路と
を備える装置が提供される。
複数のキャッシュエントリを含むアドレス変換キャッシュであって、各キャッシュエントリはアドレス変換データを格納する、アドレス変換キャッシュと、
無効化ルックアップ操作を実行して、単一アドレスとページサイズ情報に応じてアドレス変換キャッシュの少なくとも1つのターゲットキャッシュエントリを識別し、前記少なくとも1つのターゲットキャッシュエントリに格納されているアドレス変換データの無効化をトリガするために、単一アドレスと、前記単一アドレスに対応するページテーブルエントリに関連付けられたページサイズを示すページサイズ情報とを指定する無効化要求に応答する、制御回路と
を備える装置が提供される。
・ステージ1レベル0ページテーブルのベースアドレスの物理アドレスへのステージ2変換(ステージ1変換はオペレーティングシステムによって設定されるため、ステージ1レベル0ベースアドレスは通常、中間物理アドレスである)。ステージ2変換は、4回のルックアップ(ステージ2,レベル0;ステージ2,レベル1;ステージ2,レベル2;ステージ2,レベル3)を含む。
・ステージ1レベル1ベースアドレス(中間物理アドレス)を識別するための、ターゲット仮想アドレスのレベル0インデックス部分L0Iに基づくステージ1レベル0ルックアップ。
・ステージ1レベル1ベースアドレスの物理アドレスへのステージ2変換(これも、4回のルックアップを含む)。
・ステージ1レベル2ベースアドレス(中間物理アドレス)を識別するための、ターゲット仮想アドレスのレベル1インデックス部分L1Iに基づくステージ1レベル1ルックアップ。
・ステージ1レベル2ベースアドレスの物理アドレスへのステージ2変換(これも、4回のルックアップを含む)。
・ステージ1レベル3ベースアドレス(中間物理アドレス)を識別するための、ターゲット仮想アドレスのレベル2インデックス部分L2Iに基づくステージ1レベル2ルックアップ。
・ステージ1レベル3ベースアドレスの物理アドレスへのステージ2変換(これも、4回のルックアップを含む)。
・ターゲット仮想アドレスに対応するターゲット中間物理アドレスを識別するための、ターゲット仮想アドレスのレベル3インデックス部分L3Iに基づくステージ1レベル3ルックアップ。
・元のターゲット仮想アドレスに対応してアクセスするためにメモリ内の位置を表すターゲット物理アドレスへのターゲット中間物理アドレスのステージ2変換(これも、4回のルックアップを含む)。
・排他的範囲指定無効化要求は、指定された範囲内に完全に存在するエントリのみを対象とする場合があり、範囲内に部分的にのみ存在するエントリを対象としない場合がある;
・排他的範囲指定無効化要求は、範囲内に部分的または完全に存在するエントリを対象とする場合があり、範囲内に部分的にのみ存在するエントリでも無効化の対象となる;
・リーフ無効化要求は、リーフエントリのみを対象とする場合があり、ページテーブルの中間エントリには影響しない場合がある;
・リーフおよび中間の無効化は、リーフおよび非リーフ(中間)エントリの両方に影響する場合がある。
Claims (17)
- 複数のキャッシュエントリを含むアドレス変換キャッシュであって、各キャッシュエントリは、メモリシステムに格納された1つまたは複数のページテーブルの1つまたは複数のページテーブルエントリに依存するアドレス変換データを格納する、アドレス変換キャッシュと、
少なくとも1つのターゲットページテーブルエントリに対応するアドレス情報を指定する無効化要求に応答して、無効化ルックアップ操作を実行して、前記アドレス変換データが前記少なくとも1つのターゲットページテーブルエントリに依存している前記アドレス変換キャッシュの少なくとも1つのターゲットキャッシュエントリを識別して、前記少なくとも1つのターゲットキャッシュエントリに格納されている前記アドレス変換データの無効化をトリガする、制御回路と、
を備える装置であって、
前記制御回路は、前記少なくとも1つのターゲットページテーブルエントリのページサイズを示すページサイズ情報に応じて、前記無効化ルックアップ操作に使用する複数の無効化ルックアップモードのいずれかを選択するように構成され、前記複数の無効化ルックアップモードは、前記アドレス情報に応じて前記少なくとも1つのターゲットキャッシュエントリを識別するさまざまな方法に対応する、
装置。 - 前記無効化ルックアップモードが、
前記無効化ルックアップ操作が、前記アドレス情報に基づいて選択された前記アドレス変換キャッシュの少なくとも1つの選択されたキャッシュエントリにインデックスを付けること、および各選択されたキャッシュエントリが前記少なくとも1つのターゲットキャッシュエントリの1つであるかどうかの判断することを含む、キャッシュインデックスモードと、
前記無効化ルックアップ操作が、前記アドレス情報とは無関係に選択された前記アドレス変換キャッシュのキャッシュエントリの少なくともサブセットにアクセスすること、およびアクセスされた各キャッシュエントリが前記少なくとも1つのターゲットキャッシュエントリの1つであるかどうかを判断することを含む、キャッシュウォークモードと
を含む、請求項1に記載の装置。 - 前記制御回路は、前記ページサイズが閾値サイズよりも小さいことを前記ページサイズ情報が示すとき、前記キャッシュインデックスモードを選択し、前記ページサイズが前記閾値サイズよりも大きいことを前記ページサイズ情報が示すとき、前記キャッシュウォークモードを選択するように構成される、請求項2に記載の装置。
- 第1アドレスの第2アドレスへの変換を制御するためのステージ1ページテーブルを構成し、かつ前記第2アドレスの第3アドレスへの変換を制御するためのステージ2ページテーブルを構成する処理回路を備え、
前記アドレス変換キャッシュは、前記第1アドレスの前記第3アドレスへの直接変換を制御するための結合アドレス変換データを格納するように構成される、
請求項1から3のいずれか一項に記載の装置。 - 各キャッシュエントリが、前記アドレス変換キャッシュによってサポートされる複数の異なるブロックサイズの1つを有するアドレスのブロックを変換するためのアドレス変換データを格納するように構成される、請求項1から4のいずれか一項に記載の装置。
- 前記複数の無効化ルックアップモードが、前記無効化要求によって指定された前記アドレス情報に応じてアクセスされるキャッシュエントリを選択するための複数のキャッシュインデックスモードを含み、各インデックスモードは異なるブロックサイズに対応し、
前記無効化要求に応答して、前記制御回路は、前記ページサイズ情報に応じて前記複数のキャッシュインデックスモードのサブセットを選択し、かつ前記複数のキャッシュインデックスモードの前記選択されたサブセットに対応する1つまたは複数の無効化ルックアップ操作をトリガするように構成される、請求項5に記載の装置。 - 前記ページサイズ情報が、
前記ページサイズの明示的な表示、
前記ページサイズの上限、
前記ページサイズの下限、
前記ページサイズが閾値サイズより小さいかどうかの表示、
前記ページサイズが閾値サイズより大きいかどうかの表示、
前記アドレス情報で指定されたアドレス変換範囲の開始アドレスおよび終了アドレス、
複数のページサイズから選択された適用可能なページサイズのサブセットを識別する情報、および
前記無効化要求に関連付けられたアドレス変換の複数のステージのうちの1つの表示、
のうちの少なくとも1つを含む、請求項1から6のいずれか一項に記載の装置。 - 前記ページサイズ情報が、前記無効化要求によって指定される、請求項1から7のいずれか一項に記載の装置。
- 前記無効化要求は、前記アドレス情報が前記少なくとも1つのターゲットページテーブルエントリを識別するための単一アドレスを指定するアドレス指定無効化要求を含む、請求項1から8のいずれか一項に記載の装置。
- 前記無効化要求は、前記アドレス情報がアドレスの無効化範囲を指定する範囲指定無効化要求を含み、前記少なくとも1つのターゲットページテーブルエントリは、前記無効化範囲内に少なくとも部分的に存在するアドレスグループに対応する少なくとも1つのページテーブルエントリを含む、請求項1から8のいずれか一項に記載の装置。
- 包括的範囲指定無効化要求に応答して、前記少なくとも1つのターゲットページテーブルエントリが、前記アドレスグループのいずれかの部分が前記無効化範囲内にあるアドレスグループに対応する1つまたは複数のページテーブルエントリを含む、請求項10に記載の装置。
- 排他的範囲指定無効化要求に応答して、前記少なくとも1つのターゲットページテーブルエントリが、完全に前記無効化範囲内にあるアドレスグループに対応する1つまたは複数のページテーブルエントリを含む、請求項10または11に記載の装置。
- 各ページテーブルエントリが、
次のレベルのページテーブルエントリのアドレスを指定する中間ページテーブルエントリ、および、
アドレス変換マッピングを指定するリーフページテーブルエントリ、
のいずれかを含む、請求項1から12のいずれか一項に記載の装置。 - 各ページテーブルエントリが、
次のレベルのページテーブルエントリのアドレスを指定する中間ページテーブルエントリ、および、
アドレス変換マッピングを指定するリーフページテーブルエントリ
のいずれかを含み、
リーフおよび中間の排他的範囲指定無効化要求に応答して、前記少なくとも1つのターゲットページテーブルエントリは、完全に前記無効化範囲内にあるアドレスグループに対応する所与のページテーブルの任意のリーフページテーブルエントリおよび前記所与のページテーブルの任意の中間ページテーブルエントリを含む、
請求項12に記載の装置。 - 前記リーフおよび中間の排他的範囲指定無効化要求に応答して、前記少なくとも1つのターゲットページテーブルエントリが、少なくとも部分的に前記無効化範囲外にあるアドレスグループに対応する前記所与のページテーブルの中間ページテーブルエントリを除外する、請求項14に記載の装置。
- 複数のキャッシュエントリを含むアドレス変換キャッシュからのアドレス変換データを無効化するための方法であって、各キャッシュエントリは、メモリシステムに格納された1つまたは複数のページテーブルの1つまたは複数のページテーブルエントリに依存してアドレス変換データを格納し、前記方法は、
少なくとも1つのターゲットページテーブルエントリに対応するアドレス情報を指定する無効化要求に応答して、
前記アドレス変換データが前記少なくとも1つのターゲットページテーブルエントリに依存する前記アドレス変換キャッシュの少なくとも1つのターゲットキャッシュエントリを識別するために、無効化ルックアップ操作を実行するステップであって、複数の無効化ルックアップモードのいずれが前記無効化ルックアップ操作に使用されるかは、前記少なくとも1つのターゲットページテーブルエントリのページサイズを示すページサイズ情報に応じて選択され、前記複数の無効化ルックアップモードは、前記アドレス情報に応じて前記少なくとも1つのターゲットキャッシュエントリを識別するさまざまな方法に対応する、ステップと、
前記少なくとも1つのターゲットエントリに格納された前記アドレス変換データの無効化をトリガするステップと
を含む、方法。 - 複数のキャッシュエントリを含むアドレス変換キャッシュであって、各キャッシュエントリは、メモリシステムに格納された1つまたは複数のページテーブルの1つまたは複数のページテーブルエントリに依存するアドレス変換データを格納し、
各ページテーブルエントリは、
次のレベルのページテーブルエントリのアドレスを指定する中間ページテーブルエントリ、および、
アドレス変換マッピングを指定するリーフページテーブルエントリ
のいずれかを含む、アドレス変換キャッシュと、
前記アドレス変換データが少なくとも1つのターゲットページテーブルエントリに依存する前記アドレス変換キャッシュの少なくとも1つのターゲットキャッシュエントリの無効化をトリガするために、アドレスの無効化範囲を示す範囲情報を識別するリーフおよび中間の排他的範囲指定無効化要求に応答する制御回路であって、前記少なくとも1つのターゲットページテーブルエントリは、完全に前記無効化範囲内にあるアドレスグループに対応する、所与のページテーブルの任意のリーフページテーブルエントリ、および前記所与のページテーブルの任意の中間ページテーブルエントリを含む、制御回路と
を備える、装置。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1712251.6 | 2017-07-31 | ||
GB1712251.6A GB2565069B (en) | 2017-07-31 | 2017-07-31 | Address translation cache |
PCT/GB2018/051314 WO2019025748A1 (en) | 2017-07-31 | 2018-05-15 | ADDRESS TRANSLATION CACHE |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020529656A JP2020529656A (ja) | 2020-10-08 |
JP7133615B2 true JP7133615B2 (ja) | 2022-09-08 |
Family
ID=59778735
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020503733A Active JP7133615B2 (ja) | 2017-07-31 | 2018-05-15 | アドレス変換キャッシュ |
Country Status (7)
Country | Link |
---|---|
US (1) | US11853226B2 (ja) |
EP (1) | EP3662378B1 (ja) |
JP (1) | JP7133615B2 (ja) |
KR (1) | KR102663356B1 (ja) |
CN (1) | CN110998549B (ja) |
GB (1) | GB2565069B (ja) |
WO (1) | WO2019025748A1 (ja) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11379592B2 (en) * | 2018-12-20 | 2022-07-05 | Intel Corporation | Write-back invalidate by key identifier |
KR20200116372A (ko) * | 2019-04-01 | 2020-10-12 | 에스케이하이닉스 주식회사 | 저장 장치, 컨트롤러 및 컨트롤러의 동작 방법 |
US10817433B2 (en) * | 2019-06-28 | 2020-10-27 | Intel Corporation | Page tables for granular allocation of memory pages |
GB2586984B (en) | 2019-09-10 | 2021-12-29 | Advanced Risc Mach Ltd | Translation lookaside buffer invalidation |
US11200175B2 (en) * | 2020-03-20 | 2021-12-14 | Arm Limited | Memory accessor invailidation |
US11615033B2 (en) * | 2020-09-09 | 2023-03-28 | Apple Inc. | Reducing translation lookaside buffer searches for splintered pages |
US11675710B2 (en) * | 2020-09-09 | 2023-06-13 | Apple Inc. | Limiting translation lookaside buffer searches using active page size |
GB2603489B (en) * | 2021-02-04 | 2023-02-22 | Advanced Risc Mach Ltd | A data processing apparatus and method for address translation |
CN115237585A (zh) * | 2021-04-23 | 2022-10-25 | 超聚变数字技术有限公司 | 一种内存控制器、数据读取方法以及内存系统 |
CN113297105B (zh) * | 2021-05-08 | 2024-01-09 | 阿里巴巴新加坡控股有限公司 | 一种转换地址的缓存处理方法及装置 |
US20230169013A1 (en) * | 2021-12-01 | 2023-06-01 | Samsung Electronics Co., Ltd. | Address translation cache and system including the same |
CN114281720B (zh) * | 2021-12-14 | 2022-09-02 | 海光信息技术股份有限公司 | 处理器、用于处理器的地址翻译方法、电子设备 |
US11853228B1 (en) * | 2022-06-10 | 2023-12-26 | Arm Limited | Partial-address-translation-invalidation request |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130212313A1 (en) | 2003-09-30 | 2013-08-15 | Eric C. Cota-Robles | Invalidating translation lookaside buffer entries in a virtual machine system |
JP2017517040A (ja) | 2014-02-21 | 2017-06-22 | エイアールエム リミテッド | 格納されたアドレス変換の無効化 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06139149A (ja) | 1992-10-29 | 1994-05-20 | Mitsubishi Electric Corp | 多重仮想空間制御装置 |
US5764944A (en) * | 1995-09-08 | 1998-06-09 | United Microelectronics Corp. | Method and apparatus for TLB invalidation mechanism for protective page fault |
US6493812B1 (en) * | 1999-12-17 | 2002-12-10 | Hewlett-Packard Company | Apparatus and method for virtual address aliasing and multiple page size support in a computer system having a prevalidated cache |
US9454490B2 (en) * | 2003-05-12 | 2016-09-27 | International Business Machines Corporation | Invalidating a range of two or more translation table entries and instruction therefore |
US7116569B2 (en) * | 2005-02-11 | 2006-10-03 | International Business Machines Corporation | Method and apparatus for selecting operating characteristics of a content addressable memory by using a compare mask |
US7389400B2 (en) * | 2005-12-15 | 2008-06-17 | International Business Machines Corporation | Apparatus and method for selectively invalidating entries in an address translation cache |
US10380030B2 (en) * | 2012-12-05 | 2019-08-13 | Arm Limited | Caching of virtual to physical address translations |
KR101502827B1 (ko) * | 2014-03-20 | 2015-03-17 | 주식회사 에이디칩스 | 컴퓨터 시스템에서의 캐시 무효화 방법 |
US20160140042A1 (en) * | 2014-11-14 | 2016-05-19 | Cavium, Inc. | Instruction cache translation management |
US9836410B2 (en) | 2015-04-15 | 2017-12-05 | Qualcomm Incorporated | Burst translation look-aside buffer |
US9898418B2 (en) | 2015-05-21 | 2018-02-20 | Via Alliance Semiconductor Co., Ltd. | Processor including single invalidate page instruction |
US9892060B2 (en) * | 2015-12-02 | 2018-02-13 | International Business Machines Corporation | Identifying stale entries in address translation cache |
US10599569B2 (en) * | 2016-06-23 | 2020-03-24 | International Business Machines Corporation | Maintaining consistency between address translations in a data processing system |
-
2017
- 2017-07-31 GB GB1712251.6A patent/GB2565069B/en active Active
-
2018
- 2018-05-15 US US16/624,430 patent/US11853226B2/en active Active
- 2018-05-15 EP EP18727368.5A patent/EP3662378B1/en active Active
- 2018-05-15 JP JP2020503733A patent/JP7133615B2/ja active Active
- 2018-05-15 KR KR1020207004944A patent/KR102663356B1/ko active IP Right Grant
- 2018-05-15 WO PCT/GB2018/051314 patent/WO2019025748A1/en unknown
- 2018-05-15 CN CN201880049493.4A patent/CN110998549B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130212313A1 (en) | 2003-09-30 | 2013-08-15 | Eric C. Cota-Robles | Invalidating translation lookaside buffer entries in a virtual machine system |
JP2017517040A (ja) | 2014-02-21 | 2017-06-22 | エイアールエム リミテッド | 格納されたアドレス変換の無効化 |
Also Published As
Publication number | Publication date |
---|---|
EP3662378B1 (en) | 2022-04-06 |
KR102663356B1 (ko) | 2024-05-07 |
JP2020529656A (ja) | 2020-10-08 |
US20200218665A1 (en) | 2020-07-09 |
US11853226B2 (en) | 2023-12-26 |
GB2565069B (en) | 2021-01-06 |
EP3662378A1 (en) | 2020-06-10 |
KR20200035061A (ko) | 2020-04-01 |
GB2565069A (en) | 2019-02-06 |
GB201712251D0 (en) | 2017-09-13 |
CN110998549A (zh) | 2020-04-10 |
WO2019025748A1 (en) | 2019-02-07 |
CN110998549B (zh) | 2023-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7133615B2 (ja) | アドレス変換キャッシュ | |
US10042778B2 (en) | Collapsed address translation with multiple page sizes | |
US9208103B2 (en) | Translation bypass in multi-stage address translation | |
US9639476B2 (en) | Merged TLB structure for multiple sequential address translations | |
US9268694B2 (en) | Maintenance of cache and tags in a translation lookaside buffer | |
US7793070B2 (en) | Processing system implementing multiple page size memory organization with multiple translation lookaside buffers having differing characteristics | |
EP3857388B1 (en) | External memory based translation lookaside buffer | |
US10380030B2 (en) | Caching of virtual to physical address translations | |
CN108459975B (zh) | 用于有效使用地址转换缓存的技术 | |
US20160140042A1 (en) | Instruction cache translation management | |
CN105446898B (zh) | 用于数据处理的装置及方法 | |
US10489306B2 (en) | Apparatus and method for processing data, including cache entry replacement performed based upon content data read from candidates selected using victim selection | |
US20230102891A1 (en) | Re-reference interval prediction (rrip) with pseudo-lru supplemental age information | |
CN117349197A (zh) | 内存管理单元和内存访问方法 | |
US10102143B2 (en) | Eviction control for an address translation cache | |
JPS63284649A (ja) | キャッシュメモリ制御方法 | |
CN114365102A (zh) | 转译后备缓冲器失效 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210507 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220427 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220428 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220727 |
|
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: 20220805 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220829 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7133615 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |