JP7470112B2 - 持続性メモリクリーニング - Google Patents
持続性メモリクリーニング Download PDFInfo
- Publication number
- JP7470112B2 JP7470112B2 JP2021521981A JP2021521981A JP7470112B2 JP 7470112 B2 JP7470112 B2 JP 7470112B2 JP 2021521981 A JP2021521981 A JP 2021521981A JP 2021521981 A JP2021521981 A JP 2021521981A JP 7470112 B2 JP7470112 B2 JP 7470112B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- circuitry
- volatile storage
- subset
- circuit
- 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
- 230000002085 persistent effect Effects 0.000 title claims description 79
- 238000004140 cleaning Methods 0.000 title 1
- 238000012546 transfer Methods 0.000 claims description 59
- 238000012545 processing Methods 0.000 claims description 43
- 238000000034 method Methods 0.000 claims description 20
- 230000004044 response Effects 0.000 claims description 18
- 230000001419 dependent effect Effects 0.000 claims description 2
- 230000002688 persistence Effects 0.000 description 45
- 230000008569 process Effects 0.000 description 11
- 230000006870 function Effects 0.000 description 5
- 238000013519 translation Methods 0.000 description 5
- 230000009471 action Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 208000031339 Split cord malformation Diseases 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013479 data entry Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000009413 insulation Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000004645 scanning capacitance microscopy Methods 0.000 description 1
- 238000013068 supply chain management Methods 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1441—Resetting or repowering
-
- 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/0893—Caches characterised by their organisation or structure
- G06F12/0897—Caches characterised by their organisation or structure with two or more cache hierarchy levels
-
- 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/0804—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/30—Means for acting in the event of power-supply failure or interruption, e.g. power-supply fluctuations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/073—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a memory management context, e.g. virtual memory or cache management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
-
- 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/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0811—Multiuser, multiprocessor or multiprocessing cache systems with multilevel cache hierarchies
-
- 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
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/20—Employing a main memory using a specific memory technology
- G06F2212/202—Non-volatile memory
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Power Sources (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
Claims (16)
- データ処理装置であって、
電力が提供されている間にデータを記憶する揮発性記憶回路と、
電力の非存在下でデータを記憶する持続性記憶回路と、
前記揮発性記憶回路から前記持続性記憶回路にデータを転送する転送回路と、を備え、
前記転送回路が、一次電源が前記揮発性記憶回路に対して利用不可能となることに応じて、前記揮発性記憶回路から前記持続性記憶回路に前記データを転送するように構成されており、
前記転送回路が、前記データのサブセットのインジケーションを含む明示的な要求に応じて、前記揮発性記憶回路から前記持続性記憶回路に前記データの前記サブセットを転送するように構成され、
前記データの前記サブセットが、
仮想マシン識別子、
アプリケーション空間識別子、又は
メモリロケーションの使用モード、の少なくとも1つによって示されている、データ処理装置。 - 更なる揮発性記憶回路を備え、
前記転送回路が、前記更なる揮発性記憶回路を検索することなく、前記揮発性記憶回路からの前記データの前記サブセットを検索するように構成されている、請求項1に記載のデータ処理装置。 - 前記データの前記サブセットがアドレス識別子によって示されている、請求項1又は2に記載のデータ処理装置。
- 前記使用モードが、仮想メモリアドレスに関連して定義されている、請求項1~3のいずれか一項に記載のデータ処理装置。
- 前記使用モードが、少なくとも部分的な物理メモリアドレスに関連して定義されている、請求項1~4のいずれか一項に記載のデータ処理装置。
- 前記使用モードが、ページテーブルエントリ又は相互接続ルーティング回路によって定義されている、請求項1~5のいずれか一項に記載のデータ処理装置。
- 前記揮発性記憶回路及び前記持続性記憶回路が、メモリ階層の一部を含む、請求項1~6のいずれか一項に記載のデータ処理装置。
- 前記揮発性記憶回路が、前記メモリ階層内のラストレベルキャッシュである、請求項7に記載のデータ処理装置。
- 前記一次電源が前記揮発性記憶回路に対して利用不可能となることに応じて、前記揮発性記憶回路に電力を供給するバックアップエネルギー源を備える、請求項1~8のいずれか一項に記載のデータ処理装置。
- 命令ストリームを実行する処理回路、を備え、
前記処理回路が、処理回路信号を前記転送回路に送信して、前記データの前記サブセットを示すように構成されている、請求項1~9のいずれか一項に記載のデータ処理装置。 - 前記持続性記憶回路が、前記処理回路から前記処理回路信号を受信するように構成されており、データがアクセスされることになる前記持続性記憶回路内のロケーションを示す、請求項10に記載のデータ処理装置。
- 前記持続性記憶回路が、前記転送回路から転送回路信号を受信するように構成されており、データがアクセスされることになる前記持続性記憶回路内のロケーションを示す、請求項1~10のいずれか一項に記載のデータ処理装置。
- 前記転送回路信号が、データが書き込まれることになる前記持続性記憶回路内の前記ロケーションを示す、請求項12に記載のデータ処理装置。
- 前記処理回路が、前記データの前記サブセットが前記揮発性記憶回路から前記持続性記憶回路に転送されている間に、前記命令ストリームを実行し続けるように構成されている、請求項10若しくは請求項11に記載の、又は、請求項10に従属する場合の請求項12若しくは13に記載のデータ処理装置。
- 方法であって、
転送回路が、一次電源が揮発性記憶回路に対して利用不可能となることに応じて、前記揮発性記憶回路から持続性記憶回路にデータを転送することと、
前記転送回路が、前記揮発性記憶回路内の前記データのサブセットのインジケーションを含む明示的な要求を受信することと、
前記転送回路が、前記明示的な要求に応じて、前記揮発性記憶回路から前記持続性記憶回路に前記データの前記サブセットを転送することと、を含み、
前記データの前記サブセットが、
仮想マシン識別子、
アプリケーション空間識別子、又は
メモリロケーションの使用モード、の少なくとも1つによって示されている、方法。 - データ処理装置であって、
電力が提供されている間にデータを記憶する手段と、
電力の非存在下でデータを記憶する手段と、
前記電力の非存在下で前記データを記憶する手段に電力が提供されている間に、前記データを記憶する手段からデータを転送する手段と、を備え、
前記データを転送する手段が、一次電源が電力が供給されている間に前記データを記憶する手段に対して利用不可能となることに応じて、電力が供給されている間に前記データを記憶する手段から、前記電力の非存在下で前記データを記憶する手段にデータを転送するものであり、
前記データを転送する手段がまた、前記データのサブセットのインジケーションを含む明示的な要求に応じて、電力が供給されている間に前記データを記憶する手段から、前記電力の非存在下で前記データを記憶する手段に前記データの前記サブセットを転送するものであり、
前記データの前記サブセットが、
仮想マシン識別子、
アプリケーション空間識別子、又は
メモリロケーションの使用モード、の少なくとも1つによって示されている、データ処理装置。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/178,681 US10915404B2 (en) | 2018-11-02 | 2018-11-02 | Persistent memory cleaning |
US16/178,681 | 2018-11-02 | ||
PCT/GB2019/052947 WO2020089589A1 (en) | 2018-11-02 | 2019-10-16 | Persistent memory cleaning |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2022511405A JP2022511405A (ja) | 2022-01-31 |
JP7470112B2 true JP7470112B2 (ja) | 2024-04-17 |
Family
ID=68343165
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021521981A Active JP7470112B2 (ja) | 2018-11-02 | 2019-10-16 | 持続性メモリクリーニング |
Country Status (5)
Country | Link |
---|---|
US (1) | US10915404B2 (ja) |
JP (1) | JP7470112B2 (ja) |
KR (1) | KR20210084571A (ja) |
CN (1) | CN112889037A (ja) |
WO (1) | WO2020089589A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11455251B2 (en) * | 2020-11-11 | 2022-09-27 | Advanced Micro Devices, Inc. | Enhanced durability for systems on chip (SOCs) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001134490A (ja) | 1999-11-01 | 2001-05-18 | Fujitsu Ltd | キャッシュメモリの制御方法及びその方法を実現する計算機 |
JP2004531814A (ja) | 2001-04-19 | 2004-10-14 | インターナショナル・ビジネス・マシーンズ・コーポレーション | ライトバック・キャッシュ情報の信頼性を改善するための方法および装置 |
JP2007011580A (ja) | 2005-06-29 | 2007-01-18 | Toshiba Corp | 情報処理装置 |
JP2009187062A (ja) | 2008-02-01 | 2009-08-20 | Fujitsu Ltd | 情報処理装置、該情報処理装置で行われるデータ記憶を制御する制御部およびデータ記憶の制御方法 |
JP2014182836A (ja) | 2013-03-15 | 2014-09-29 | Intel Corp | 永続記憶装置へのライトバックを必要とする非トランザクションコード領域の先頭および終端を指し示す命令 |
US20150052299A1 (en) | 2013-08-14 | 2015-02-19 | Micron Technology, Inc. | Apparatuses and methods for providing data to a configurable storage area |
JP2017517040A (ja) | 2014-02-21 | 2017-06-22 | エイアールエム リミテッド | 格納されたアドレス変換の無効化 |
JP2017220237A (ja) | 2016-06-08 | 2017-12-14 | 三星電子株式会社Samsung Electronics Co.,Ltd. | メモリモジュール、これを含むシステム及びその動作方法 |
US20180032439A1 (en) | 2016-07-28 | 2018-02-01 | Dell Products L.P. | System and method for controlling cache flush size |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040148360A1 (en) * | 2003-01-24 | 2004-07-29 | Hewlett-Packard Development Company | Communication-link-attached persistent memory device |
JP5459006B2 (ja) | 2010-03-24 | 2014-04-02 | 富士通株式会社 | メモリ管理装置、メモリ管理方法及びメモリ管理プログラム |
US9208071B2 (en) * | 2010-12-13 | 2015-12-08 | SanDisk Technologies, Inc. | Apparatus, system, and method for accessing memory |
US9678863B2 (en) * | 2012-06-12 | 2017-06-13 | Sandisk Technologies, Llc | Hybrid checkpointed memory |
US10489158B2 (en) * | 2014-09-26 | 2019-11-26 | Intel Corporation | Processors, methods, systems, and instructions to selectively fence only persistent storage of given data relative to subsequent stores |
US9851990B2 (en) * | 2015-01-30 | 2017-12-26 | American Megatrends, Inc. | Method and system for performing on-demand data write through based on UPS power status |
US20180024768A1 (en) | 2015-02-13 | 2018-01-25 | Hewlett Packard Enterprise Development Lp | Partitioning memory modules into volatile and non-volatile portions |
US20160283145A1 (en) * | 2015-03-24 | 2016-09-29 | Lenovo (Beijing) Co., Ltd. | Electronic Device, Power Failure Protection Method and Data Recovery Method |
US10268612B1 (en) * | 2016-09-23 | 2019-04-23 | Amazon Technologies, Inc. | Hardware controller supporting memory page migration |
-
2018
- 2018-11-02 US US16/178,681 patent/US10915404B2/en active Active
-
2019
- 2019-10-16 KR KR1020217016153A patent/KR20210084571A/ko unknown
- 2019-10-16 WO PCT/GB2019/052947 patent/WO2020089589A1/en active Application Filing
- 2019-10-16 CN CN201980069606.1A patent/CN112889037A/zh active Pending
- 2019-10-16 JP JP2021521981A patent/JP7470112B2/ja active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001134490A (ja) | 1999-11-01 | 2001-05-18 | Fujitsu Ltd | キャッシュメモリの制御方法及びその方法を実現する計算機 |
JP2004531814A (ja) | 2001-04-19 | 2004-10-14 | インターナショナル・ビジネス・マシーンズ・コーポレーション | ライトバック・キャッシュ情報の信頼性を改善するための方法および装置 |
JP2007011580A (ja) | 2005-06-29 | 2007-01-18 | Toshiba Corp | 情報処理装置 |
JP2009187062A (ja) | 2008-02-01 | 2009-08-20 | Fujitsu Ltd | 情報処理装置、該情報処理装置で行われるデータ記憶を制御する制御部およびデータ記憶の制御方法 |
JP2014182836A (ja) | 2013-03-15 | 2014-09-29 | Intel Corp | 永続記憶装置へのライトバックを必要とする非トランザクションコード領域の先頭および終端を指し示す命令 |
US20150052299A1 (en) | 2013-08-14 | 2015-02-19 | Micron Technology, Inc. | Apparatuses and methods for providing data to a configurable storage area |
JP2017517040A (ja) | 2014-02-21 | 2017-06-22 | エイアールエム リミテッド | 格納されたアドレス変換の無効化 |
JP2017220237A (ja) | 2016-06-08 | 2017-12-14 | 三星電子株式会社Samsung Electronics Co.,Ltd. | メモリモジュール、これを含むシステム及びその動作方法 |
US20180032439A1 (en) | 2016-07-28 | 2018-02-01 | Dell Products L.P. | System and method for controlling cache flush size |
Also Published As
Publication number | Publication date |
---|---|
US20200142774A1 (en) | 2020-05-07 |
CN112889037A (zh) | 2021-06-01 |
US10915404B2 (en) | 2021-02-09 |
JP2022511405A (ja) | 2022-01-31 |
KR20210084571A (ko) | 2021-07-07 |
WO2020089589A1 (en) | 2020-05-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9910602B2 (en) | Device and memory system for storing and recovering page table data upon power loss | |
US20200264980A1 (en) | Apparatus and method of handling caching of persistent data | |
JP5265654B2 (ja) | システムにおけるメモリ冗長性の制御 | |
KR101713051B1 (ko) | 하이브리드 메모리 시스템, 및 그 관리 방법 | |
US11544093B2 (en) | Virtual machine replication and migration | |
US20090164715A1 (en) | Protecting Against Stale Page Overlays | |
US20060010354A1 (en) | Self-healing cache system | |
TW201502781A (zh) | 解決記憶體存取錯誤時重播記憶體交易 | |
KR20100132244A (ko) | 메모리 시스템 및 메모리 시스템 관리 방법 | |
US9916256B1 (en) | DDR storage adapter | |
US20100185831A1 (en) | Semiconductor integrated circuit and address translation method | |
US20140052924A1 (en) | Selective Memory Scrubbing Based on Data Type | |
US9081693B2 (en) | Data type dependent memory scrubbing | |
CN108694101B (zh) | 存储器侧高速缓存内容的持久性高速缓存 | |
JP2010152747A (ja) | ストレージシステム、ストレージのキャッシュ制御方法、及びキャッシュ制御プログラム | |
US9639467B2 (en) | Environment-aware cache flushing mechanism | |
JP7470112B2 (ja) | 持続性メモリクリーニング | |
US20180365183A1 (en) | Cooperative overlay | |
US8185699B2 (en) | Cache memory controller and cache memory controlling method | |
US20230409472A1 (en) | Snapshotting Pending Memory Writes Using Non-Volatile Memory | |
JP5795418B2 (ja) | キャッシュ装置、及び記憶システム | |
TW201418984A (zh) | 保護碟資料完整性的方法及實現其之電腦程式產品 | |
JP5627754B2 (ja) | 仮想記憶管理装置及び記憶管理装置 | |
TWI704454B (zh) | 固態儲存裝置的對應表管理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20210511 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20210820 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20221007 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20231019 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20231025 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240125 |
|
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: 20240313 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240405 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7470112 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |