JP6254708B2 - メモリをデフラグするシステムおよび方法 - Google Patents
メモリをデフラグするシステムおよび方法 Download PDFInfo
- Publication number
- JP6254708B2 JP6254708B2 JP2016543649A JP2016543649A JP6254708B2 JP 6254708 B2 JP6254708 B2 JP 6254708B2 JP 2016543649 A JP2016543649 A JP 2016543649A JP 2016543649 A JP2016543649 A JP 2016543649A JP 6254708 B2 JP6254708 B2 JP 6254708B2
- Authority
- JP
- Japan
- Prior art keywords
- cache
- data
- memory address
- physical memory
- memory
- 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 OR CALCULATING; 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/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0815—Cache consistency protocols
- G06F12/0831—Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
- G06F12/0833—Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means in combination with broadcast means (e.g. for invalidation or updating)
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
- G06F12/0873—Mapping of cache memory to specific storage devices or parts thereof
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0893—Caches characterised by their organisation or structure
- G06F12/0895—Caches characterised by their organisation or structure of parts of caches, e.g. directory or tag array
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/12—Replacement control
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0608—Saving storage space on storage systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2206/00—Indexing scheme related to dedicated interfaces for computers
- G06F2206/10—Indexing scheme related to storage interfaces for computers, indexing schema related to group G06F3/06
- G06F2206/1004—Defragmentation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/62—Details of cache specific to multiprocessor cache arrangements
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
本出願は、その内容全体が参照により本明細書に明確に組み込まれる、同一出願人が所有する2014年1月2日に出願した米国非仮特許出願第14/146,576号の優先権を主張する。
102 データキャッシュ
104 データアレイ
106 タグアレイ
108 状態アレイ
112 デフラグ回路
121 キャッシュライン
122 キャッシュライン
123 キャッシュライン
124 キャッシュライン
130 物理メモリ
136 第1のページ
138 第2のページ
141 第5のアドレス
142 第6のアドレス
143 第7のアドレス
144 第8のアドレス
151 第1のアドレス
152 第2のアドレス
153 第3のアドレス
154 第4のアドレス
160 メモリ管理ユニット、MMU
162 ページテーブル
164 VA
166 ポインタ
171 第1の仮想メモリアドレス
172 第2の仮想メモリアドレス
173 第3の仮想メモリアドレス
174 第4の仮想メモリアドレス
180 中央処理ユニット、CPU
182 命令セット
184 ロードおよび再マップ命令
186 要求
188 応答
202 第3のメモリアドレス
203 第4のメモリアドレス
205 第1のメモリアドレス
206 第2のメモリアドレス
220 メモリ
222 キャッシュベースのデフラグ動作
300 システム
302 プロセッサ
304 第1のレベルキャッシュ
306 第2のレベルキャッシュ
308 第3のレベルキャッシュ
310 メインメモリ
312 デフラグ回路
320 要求
350 物理アドレス
352 ソースアドレス
354 宛先アドレス
402 タグアレイ
404 タグ情報
410 データアレイ
412 データロケーション
414 第1のセグメント
420 メインメモリ
422 宛先アドレス
424 ソースアドレス
606 タグ情報
616 キャッシュロケーション
618 第2のページセグメント
706 タグ情報
716 キャッシュロケーション
718 第2のセグメント
800 システム
802 プロセッサ
804 第1のレベルキャッシュ
806 第2のレベルキャッシュ
808 第3のレベルキャッシュ
810 メインメモリ
812 デフラグキャッシュ
814 デフラグ回路
850 物理アドレス
852 ソースアドレス
854 宛先アドレス
900 方法
1000 方法
1100 デバイス
1110 デジタル信号プロセッサ、DSP
1122 システムオンチップデバイス
1126 ディスプレイコントローラ
1128 ディスプレイ
1130 入力デバイス
1132 メモリ
1134 コーダ/デコーダ、コーデック
1136 スピーカ
1138 マイクロフォン
1140 ワイヤレスコントローラ
1142 アンテナ
1144 電源
1156 データおよびコンピュータ実行可能命令
1164 デフラグキャッシュ
1200 電子デバイス製造プロセス、製造プロセス、プロセス
1202 物理デバイス情報
1204 ユーザインターフェース
1206 研究コンピュータ
1208 プロセッサ
1210 メモリ
1212 ライブラリファイル
1214 設計コンピュータ
1216 プロセッサ
1218 メモリ
1220 電子設計自動化(EDA)ツール、EDAツール
1222 回路設計情報
1224 ユーザインターフェース
1226 GDSIIファイル
1228 製作プロセス
1230 マスク製造業者
1232 マスク
1234 ウエハ
1236 ダイ
1238 パッケージングプロセス
1240 パッケージ
1242 PCB設計情報
1244 ユーザインターフェース
1246 コンピュータ
1248 プロセッサ
1250 メモリ
1252 GERBERファイル
1254 基板アセンブリプロセス
1256 PCB
1258 プリント回路アセンブリ、PCA
1260 製品製造プロセス
1262 第1の典型的な電子デバイス
1264 第2の典型的な電子デバイス
A1 タグ情報
A2 セグメント情報
B1 タグ情報
B2 セグメント情報
Claims (29)
- データキャッシュによってメモリデフラグ動作を実行するための方法であって、
メモリの第1の物理メモリアドレスに記憶されたデータを前記メモリから前記データキャッシュのキャッシュラインにロードするステップであって、前記第1の物理メモリアドレスが第1の仮想メモリアドレスにマップされる、ステップと、
ページテーブルに記憶されたルックアップ情報の修正を開始するステップであって、前記ページテーブルが仮想メモリに関連付けられ、前記ルックアップ情報が前記第1の仮想メモリアドレスに関連付けられ、前記ルックアップ情報の前記修正が前記第1の仮想メモリアドレスを前記メモリの前記第1の物理メモリアドレスから第2の物理メモリアドレスに再マップする、ステップと、
前記キャッシュラインが前記第1の物理メモリアドレスではなく前記第2の物理メモリアドレスに対応することを示すように、前記データキャッシュにおいて、前記キャッシュラインに関連付けられた情報を修正するステップと
を備え、
前記メモリがページに編成され、前記メモリのページが前記データキャッシュの複数のセットにまたがり、前記データキャッシュが各ページについての複数のセグメントを含み、
前記方法が、
前記第1の物理メモリアドレスに関連付けられたキャッシュヒットに応答して、前記データを前記第1の物理メモリアドレスに対応する前記データキャッシュの第1のセグメントから前記第2の物理メモリアドレスに対応する前記データキャッシュの第2のセグメントにロードするステップと、
前記第1の物理メモリアドレスに関連付けられたキャッシュミスに基づいて、前記データを前記メモリから前記第2の物理メモリアドレスに対応する前記第2のセグメントにロードするステップと
をさらに備える、方法。 - 前記データキャッシュにおいて、デフラグ動作を実行するための要求をプロセッサから受信するステップと、
前記データが前記データキャッシュから追い出されることに応答して、前記修正された情報に基づいて、前記データを前記第2の物理メモリアドレスに書き込むステップと、
前記データを前記第2の物理メモリアドレスに書き込んだ後に応答を前記プロセッサに送るステップであって、前記応答が、前記デフラグ動作が完了したことを示す、ステップと
をさらに備える、請求項1に記載の方法。 - 前記要求が、ロードおよび再マップ命令に応答して受信され、前記プロセッサの命令セットが、前記ロードおよび再マップ命令を含む、請求項2に記載の方法。
- 前記キャッシュラインに関連付けられた前記情報を修正するステップが、前記キャッシュラインに関連付けられたタグアレイ中のタグ情報を修正するステップを備える、請求項1に記載の方法。
- 前記キャッシュラインに関連付けられた前記情報を修正するステップが、前記第1の物理メモリアドレスに対応するタグアレイ中の第1のタグ情報を前記第2の物理メモリアドレスに対応する第2のタグ情報で上書きするステップを備える、請求項1に記載の方法。
- 前記第2の物理メモリアドレスへの前記データの書込みをトリガするステップをさらに備える、請求項1に記載の方法。
- 前記第2の物理メモリアドレスへの前記データの前記書込みをトリガするステップが、前記キャッシュラインをダーティとしてマークするステップを備える、請求項6に記載の方法。
- 前記第1の物理メモリアドレスがメモリフラグメントに対応し、前記第2の物理メモリアドレスがデフラグ宛先に対応する、請求項1に記載の方法。
- 前記デフラグ宛先が、データを記憶する物理アドレスの間に配置された、前記メモリ中のフリー物理アドレスに対応する、請求項8に記載の方法。
- 前記データを前記キャッシュラインから第2のキャッシュラインにコピーするステップと、
前記キャッシュラインを無効化するステップであって、前記キャッシュラインが前記メモリの第1のセグメントに関連付けられ、前記第2のキャッシュラインが前記メモリの第2のセグメントに関連付けられる、ステップと
をさらに備える、請求項1に記載の方法。 - 電力を前記第1の物理メモリアドレスに対応するダイナミックランダムアクセス(DRAM)の一部分に低減することを含むパーシャルアレイセルフリフレッシュモードに入るステップをさらに備える、請求項1に記載の方法。
- 前記ページテーブルに含まれる前記ルックアップ情報を修正するステップであって、前記ルックアップ情報が前記ページテーブルのポインタを含む、ステップをさらに備える、請求項1に記載の方法。
- 前記メモリの第3の物理メモリアドレスに記憶された第2のデータを前記メモリから前記データキャッシュの第2のキャッシュラインにロードするステップであって、前記第3の物理メモリアドレスが第3の仮想メモリアドレスにマップされる、ステップと、
前記第2のキャッシュラインが前記第3の物理メモリアドレスではなく第4の物理メモリアドレスに対応することを示すように、前記データキャッシュにおいて、前記第2のキャッシュラインに関連付けられた第2の情報を修正するステップと、
前記修正された第2の情報に基づいて、前記第2のデータを前記第4の物理メモリアドレスに書き込むステップと
をさらに備える、請求項1に記載の方法。 - 前記メモリのページに対応する第1の複数の追加の物理メモリアドレスの各々に記憶された追加のデータを前記データキャッシュの追加のキャッシュラインにロードするステップと、
各追加のキャッシュラインが前記第1の複数の追加の物理メモリアドレスではなく第2の複数の追加の物理メモリアドレスのそれぞれの物理メモリアドレスに対応することを示すように、前記データキャッシュにおいて、前記追加のキャッシュラインの各々に関連付けられた追加の情報を修正するステップと、
前記修正された追加の情報に基づいて、前記追加のデータを前記第2の複数の追加の物理メモリアドレスに書き込むステップと
をさらに備える、請求項1に記載の方法。 - 前記データキャッシュに関連付けられた前記情報を修正するステップが、電子デバイスに統合されたプロセッサによって開始される、請求項1に記載の方法。
- 複数の物理メモリアドレスを備えるメモリと、
仮想メモリに関連付けられたページテーブルを記憶するように構成されたメモリ管理ユニット(MMU)であって、前記ページテーブルが第1の仮想メモリアドレスに関連付けられたルックアップ情報を含む、メモリ管理ユニット(MMU)と、
メモリデフラグ動作を実行するように構成されたデフラグ回路を含むデータキャッシュとを備え、前記メモリデフラグ動作が、
前記メモリの第1の物理メモリアドレスに記憶されたデータを前記メモリから前記データキャッシュのキャッシュラインにロードすることであって、前記第1の物理メモリアドレスが前記第1の仮想メモリアドレスにマップされる、ロードすることと、
前記ルックアップ情報の修正を開始することであって、前記ルックアップ情報の前記修正が前記第1の仮想メモリアドレスを前記メモリの前記第1の物理メモリアドレスから第2の物理メモリアドレスに再マップする、開始することと、
前記キャッシュラインが前記第1の物理メモリアドレスではなく前記第2の物理メモリアドレスに対応することを示すように、前記キャッシュラインに関連付けられた情報を修正することと
を含み、
前記メモリがページに編成され、前記メモリのページが前記データキャッシュの複数のセットにまたがり、前記データキャッシュが各ページについての複数のセグメントを含み、
前記メモリデフラグ動作が、
前記第1の物理メモリアドレスに関連付けられたキャッシュヒットに応答して、前記データを前記第1の物理メモリアドレスに対応する前記データキャッシュの第1のセグメントから前記第2の物理メモリアドレスに対応する前記データキャッシュの第2のセグメントにロードすることと、
前記第1の物理メモリアドレスに関連付けられたキャッシュミスに基づいて、前記データを前記メモリから前記第2の物理メモリアドレスに対応する前記第2のセグメントにロードすることと
をさらに含む、システム。 - プロセッサをさらに備え、前記データキャッシュが、前記メモリデフラグ動作を実行するための要求を前記プロセッサから受信し、前記メモリデフラグ動作が完了したことを示す応答を前記プロセッサに送るようにさらに構成される、請求項16に記載のシステム。
- 前記応答が割込み信号を含み、前記プロセッサが前記メモリデフラグ動作に無関係な動作を実行する間に、前記データキャッシュが前記メモリデフラグ動作を実行する、請求項17に記載のシステム。
- 前記デフラグ回路が前記要求に応答して前記メモリデフラグ動作を実行するように構成される、請求項17に記載のシステム。
- 前記デフラグ回路が前記プロセッサから受信されたデータ要求に応答して前記メモリデフラグ動作を実行するように構成される、請求項17に記載のシステム。
- 少なくとも1つの追加のキャッシュをさらに備え、前記データキャッシュがメインメモリと第2のレベルキャッシュとの間で結合されたラストレベルキャッシュであり、前記修正を開始することが前記MMUにコマンドを発行することを含み、前記MMUが前記コマンドに応答して前記修正を開始するように構成される、請求項16に記載のシステム。
- 前記データキャッシュが、メインメモリおよびプロセッサに結合された専用デフラグキャッシュを備える、請求項16に記載のシステム。
- 前記第1の物理メモリアドレスがメモリフラグメントに対応し、前記第2の物理メモリアドレスがデフラグ宛先に対応する、請求項16に記載のシステム。
- 前記メモリおよび前記データキャッシュが統合される、モバイルフォン、タブレット、コンピュータ、通信デバイス、セットトップボックス、音楽プレーヤ、ビデオプレーヤ、エンターテインメントユニット、ナビゲーションデバイス、携帯情報端末(PDA)、および固定ロケーションデータユニットから選択された電子デバイスをさらに備える、請求項16に記載のシステム。
- コンピュータ可読記憶媒体であって、
データキャッシュに結合されたメモリデフラグ動作を実行するためのプロセッサによって実行されると、前記プロセッサに、
メモリの第1の物理メモリアドレスに記憶されたデータを前記メモリから前記データキャッシュのキャッシュラインにロードするステップであって、前記第1の物理メモリアドレスが第1の仮想メモリアドレスにマップされる、ステップと、
ページテーブルに記憶されたルックアップ情報の修正を開始するステップであって、前記ページテーブルが仮想メモリに関連付けられ、前記ルックアップ情報が前記第1の仮想メモリアドレスに関連付けられ、前記ルックアップ情報の前記修正が前記第1の仮想メモリアドレスを前記メモリの前記第1の物理メモリアドレスから第2の物理メモリアドレスに再マップする、ステップと、
前記キャッシュラインが前記第1の物理メモリアドレスではなく前記第2の物理メモリアドレスに対応することを示すように、前記キャッシュラインに関連付けられた情報を修正するステップと
を備える動作を実行させる命令を備え、
前記メモリがページに編成され、前記メモリのページが前記データキャッシュの複数のセットにまたがり、前記データキャッシュが各ページについての複数のセグメントを含み、
前記コンピュータ可読記憶媒体が、前記プロセッサに、
前記第1の物理メモリアドレスに関連付けられたキャッシュヒットに応答して、前記データを前記第1の物理メモリアドレスに対応する前記データキャッシュの第1のセグメントから前記第2の物理メモリアドレスに対応する前記データキャッシュの第2のセグメントにロードするステップと、
前記第1の物理メモリアドレスに関連付けられたキャッシュミスに基づいて、前記データを前記メモリから前記第2の物理メモリアドレスに対応する前記第2のセグメントにロードするステップと
を備える動作を実行させる命令をさらに備える、コンピュータ可読記憶媒体。 - 前記第1の物理メモリアドレスがメモリフラグメントに対応し、前記第2の物理メモリアドレスがデフラグ宛先に対応する、請求項25に記載のコンピュータ可読記憶媒体。
- 複数の物理メモリアドレスを使用してデータを記憶するための手段と、
データをキャッシュするための手段とを備え、前記データをキャッシュするための前記手段が、
メモリの第1の物理メモリアドレスに記憶されたデータを前記メモリからデータキャッシュのキャッシュラインにロードすることであって、前記第1の物理メモリアドレスが第1の仮想メモリアドレスにマップされる、ロードすることと、
ページテーブルに記憶されたルックアップ情報の修正を開始することであって、前記ページテーブルが仮想メモリに関連付けられ、前記ルックアップ情報が前記第1の仮想メモリアドレスに関連付けられ、前記ルックアップ情報の前記修正が前記第1の仮想メモリアドレスを前記メモリの前記第1の物理メモリアドレスから第2の物理メモリアドレスに再マップする、開始することと、
前記キャッシュラインが前記第1の物理メモリアドレスではなく前記第2の物理メモリアドレスに対応することを示すように、前記キャッシュラインに関連付けられた情報を修正することと
を行うように構成されたデフラグ回路を含み、
前記メモリがページに編成され、前記メモリのページが前記データキャッシュの複数のセットにまたがり、前記データキャッシュが各ページについての複数のセグメントを含み、
前記デフラグ回路が、
前記第1の物理メモリアドレスに関連付けられたキャッシュヒットに応答して、前記データを前記第1の物理メモリアドレスに対応する前記データキャッシュの第1のセグメントから前記第2の物理メモリアドレスに対応する前記データキャッシュの第2のセグメントにロードすることと、
前記第1の物理メモリアドレスに関連付けられたキャッシュミスに基づいて、前記データを前記メモリから前記第2の物理メモリアドレスに対応する前記第2のセグメントにロードすることと
をさらに行うように構成される、システム。 - 少なくとも1つのダイに統合された、請求項27に記載のシステム。
- 前記第1の物理メモリアドレスがメモリフラグメントに対応し、前記第2の物理メモリアドレスがデフラグ宛先に対応する、請求項28に記載のシステム。
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US14/146,576 US9436606B2 (en) | 2014-01-02 | 2014-01-02 | System and method to defragment a memory |
| US14/146,576 | 2014-01-02 | ||
| PCT/US2014/069780 WO2015102841A1 (en) | 2014-01-02 | 2014-12-11 | System and method to defragment a memory |
Publications (3)
| Publication Number | Publication Date |
|---|---|
| JP2017501504A JP2017501504A (ja) | 2017-01-12 |
| JP2017501504A5 JP2017501504A5 (ja) | 2017-02-16 |
| JP6254708B2 true JP6254708B2 (ja) | 2017-12-27 |
Family
ID=52345521
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2016543649A Expired - Fee Related JP6254708B2 (ja) | 2014-01-02 | 2014-12-11 | メモリをデフラグするシステムおよび方法 |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US9436606B2 (ja) |
| EP (1) | EP3090346A1 (ja) |
| JP (1) | JP6254708B2 (ja) |
| KR (1) | KR101708402B1 (ja) |
| CN (1) | CN105874440B (ja) |
| WO (1) | WO2015102841A1 (ja) |
Families Citing this family (19)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9619155B2 (en) * | 2014-02-07 | 2017-04-11 | Coho Data Inc. | Methods, systems and devices relating to data storage interfaces for managing data address spaces in data storage devices |
| KR102373544B1 (ko) | 2015-11-06 | 2022-03-11 | 삼성전자주식회사 | 요청 기반의 리프레쉬를 수행하는 메모리 장치, 메모리 시스템 및 메모리 장치의 동작방법 |
| US20170255565A1 (en) * | 2016-03-02 | 2017-09-07 | Intel Corporation | Method and apparatus for providing a contiguously addressable memory region by remapping an address space |
| KR101842764B1 (ko) * | 2016-03-18 | 2018-03-28 | 연세대학교 산학협력단 | 하드웨어 가속기와 호스트 시스템 사이의 데이터 일관성 유지 장치 및 방법 |
| KR102525229B1 (ko) * | 2016-05-13 | 2023-04-25 | 에스케이하이닉스 주식회사 | 메모리 모듈 및 이를 포함하는 시스템 |
| US10229047B2 (en) * | 2016-08-06 | 2019-03-12 | Wolley Inc. | Apparatus and method of wear leveling for storage class memory using cache filtering |
| KR101882504B1 (ko) | 2016-08-18 | 2018-07-27 | 현대자동차주식회사 | 엔진마운트의 노즐판 |
| KR102646252B1 (ko) * | 2016-11-30 | 2024-03-11 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
| CN106936914B (zh) * | 2017-03-16 | 2020-06-19 | 宿州学院 | 一种基于节点位移和lfu记录的缓存更新方法及网络 |
| US20190065088A1 (en) * | 2017-08-30 | 2019-02-28 | Micron Technology, Inc. | Random access memory power savings |
| IT201800002644A1 (it) | 2018-02-13 | 2019-08-13 | St Microelectronics Srl | Procedimento per gestire carte a circuito integrato, corrispondente carta e apparecchiatura |
| CN109597683B (zh) * | 2018-08-23 | 2021-05-07 | 北京字节跳动网络技术有限公司 | 内存管理方法、装置、设备及存储介质 |
| US10628317B1 (en) * | 2018-09-13 | 2020-04-21 | Parallels International Gmbh | System and method for caching data in a virtual storage environment based on the clustering of related data blocks |
| CN109407993B (zh) * | 2018-10-31 | 2022-05-27 | 深圳市硅格半导体有限公司 | 数据访问方法、装置、计算机可读存储介质及系统 |
| CN109684238A (zh) * | 2018-12-19 | 2019-04-26 | 湖南国科微电子股份有限公司 | 一种固态硬盘映射关系的存储方法、读取方法及固态硬盘 |
| US10860491B2 (en) * | 2019-05-03 | 2020-12-08 | Mediate Inc. | Cache management method using object-oriented manner and associated microcontroller |
| US11803304B2 (en) * | 2022-01-19 | 2023-10-31 | Vmware, Inc. | Efficient bit compression for direct mapping of physical memory addresses |
| CN114595162B (zh) * | 2022-05-10 | 2022-08-19 | 紫光同芯微电子有限公司 | 用于java智能卡内存碎片整理的方法和装置 |
| CN115629716B (zh) * | 2022-12-07 | 2023-04-11 | 广东睿江云计算股份有限公司 | 基于磁盘镜像文件的碎片整理方法及碎片整理系统 |
Family Cites Families (18)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0661068B2 (ja) * | 1989-07-18 | 1994-08-10 | 株式会社日立製作所 | 記憶再配置方法および階層化記憶システム |
| US6073076A (en) | 1998-03-27 | 2000-06-06 | Navigation Technologies Corporation | Memory management for navigation system |
| JP4257834B2 (ja) * | 2003-05-06 | 2009-04-22 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 磁気ディスク装置、ファイル管理システム及びその方法 |
| US8417913B2 (en) * | 2003-11-13 | 2013-04-09 | International Business Machines Corporation | Superpage coalescing which supports read/write access to a new virtual superpage mapping during copying of physical pages |
| US7788460B2 (en) * | 2004-04-13 | 2010-08-31 | Intel Corporation | Defragmenting objects in a storage medium |
| US7644239B2 (en) | 2004-05-03 | 2010-01-05 | Microsoft Corporation | Non-volatile memory cache performance improvement |
| US7447869B2 (en) | 2005-04-07 | 2008-11-04 | Ati Technologies, Inc. | Method and apparatus for fragment processing in a virtual memory system |
| US8074031B2 (en) * | 2005-12-20 | 2011-12-06 | Nxp B.V. | Multi-processor circuit with shared memory banks |
| US7822941B2 (en) | 2006-06-05 | 2010-10-26 | Oracle America, Inc. | Function-based virtual-to-physical address translation |
| US7562203B2 (en) | 2006-09-27 | 2009-07-14 | Network Appliance, Inc. | Storage defragmentation based on modified physical address and unmodified logical address |
| US8443134B2 (en) * | 2006-12-06 | 2013-05-14 | Fusion-Io, Inc. | Apparatus, system, and method for graceful cache device degradation |
| US7975109B2 (en) * | 2007-05-30 | 2011-07-05 | Schooner Information Technology, Inc. | System including a fine-grained memory and a less-fine-grained memory |
| US8069299B2 (en) | 2008-06-30 | 2011-11-29 | Intel Corporation | Banded indirection for nonvolatile memory devices |
| US20100185806A1 (en) * | 2009-01-16 | 2010-07-22 | Arvind Pruthi | Caching systems and methods using a solid state disk |
| JP5337239B2 (ja) * | 2009-04-27 | 2013-11-06 | 株式会社日立製作所 | 半導体装置 |
| KR101717644B1 (ko) | 2009-09-08 | 2017-03-27 | 샌디스크 테크놀로지스 엘엘씨 | 고체-상태 저장 디바이스 상에서 데이터를 캐싱하는 장치, 시스템, 및 방법 |
| US9405700B2 (en) | 2010-11-04 | 2016-08-02 | Sonics, Inc. | Methods and apparatus for virtualization in an integrated circuit |
| US8930307B2 (en) * | 2011-09-30 | 2015-01-06 | Pure Storage, Inc. | Method for removing duplicate data from a storage array |
-
2014
- 2014-01-02 US US14/146,576 patent/US9436606B2/en not_active Expired - Fee Related
- 2014-12-11 EP EP14825507.8A patent/EP3090346A1/en not_active Withdrawn
- 2014-12-11 WO PCT/US2014/069780 patent/WO2015102841A1/en not_active Ceased
- 2014-12-11 CN CN201480072129.1A patent/CN105874440B/zh not_active Expired - Fee Related
- 2014-12-11 KR KR1020167020440A patent/KR101708402B1/ko not_active Expired - Fee Related
- 2014-12-11 JP JP2016543649A patent/JP6254708B2/ja not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2017501504A (ja) | 2017-01-12 |
| KR20160104658A (ko) | 2016-09-05 |
| KR101708402B1 (ko) | 2017-02-20 |
| US9436606B2 (en) | 2016-09-06 |
| EP3090346A1 (en) | 2016-11-09 |
| CN105874440A (zh) | 2016-08-17 |
| US20150186279A1 (en) | 2015-07-02 |
| CN105874440B (zh) | 2017-09-26 |
| WO2015102841A1 (en) | 2015-07-09 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6254708B2 (ja) | メモリをデフラグするシステムおよび方法 | |
| KR102683696B1 (ko) | 호스트 메모리 버퍼(Host Memory Buffer)를 관리하기 위한 NVMe(Non-Volatile Memory Express) 컨트롤러를 포함하는 솔리드 스테이트 저장 장치(solid state storage device), 이를 포함하는 시스템 및 호스트의 호스트 메모리 버퍼를 관리하는 방법 | |
| US9740621B2 (en) | Memory controllers employing memory capacity and/or bandwidth compression with next read address prefetching, and related processor-based systems and methods | |
| JP5752989B2 (ja) | プロセッサ・メインメモリのための持続性メモリ | |
| TWI545435B (zh) | 於階層式快取處理器中之協調預取 | |
| CN106462494B (zh) | 使用存储器容量压缩的存储器控制器,以及相关的基于处理器的系统和方法 | |
| US10572378B2 (en) | Dynamic memory expansion by data compression | |
| US9405703B2 (en) | Translation lookaside buffer | |
| EP3123338B1 (en) | Method, apparatus and system to cache sets of tags of an off-die cache memory | |
| JP2017501504A5 (ja) | ||
| EP3553665B1 (en) | Non-volatile memory access method, device, and system | |
| JP2011258193A (ja) | 持続性メモリのためのキャッシュコヒーレンスプロトコル | |
| US9892046B2 (en) | Cache allocation based on quality-of-service information | |
| CN106354664A (zh) | 一种固态硬盘数据传输方法及装置 | |
| JP5976225B2 (ja) | スティッキー抜去エンジンを伴うシステムキャッシュ | |
| CN114637700B (zh) | 针对目标虚拟地址的地址转换方法、处理器及电子设备 | |
| US8516194B2 (en) | Systems and methods for caching data with a nonvolatile memory cache | |
| JP2024510127A (ja) | ページ再マッピングおよびローテーションによるアドレス空間配置のランダム化エントロピーの増大 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160705 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20161114 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20161114 |
|
| A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20161114 |
|
| A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20161208 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20161226 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170323 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20170424 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170816 |
|
| A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20170825 |
|
| 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: 20171106 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20171130 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6254708 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| LAPS | Cancellation because of no payment of annual fees |