JPWO2019055164A5 - - Google Patents
Download PDFInfo
- Publication number
- JPWO2019055164A5 JPWO2019055164A5 JP2020514756A JP2020514756A JPWO2019055164A5 JP WO2019055164 A5 JPWO2019055164 A5 JP WO2019055164A5 JP 2020514756 A JP2020514756 A JP 2020514756A JP 2020514756 A JP2020514756 A JP 2020514756A JP WO2019055164 A5 JPWO2019055164 A5 JP WO2019055164A5
- Authority
- JP
- Japan
- Prior art keywords
- persistent
- nvdimm
- persistent write
- host
- write
- 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.)
- Granted
Links
- 230000002085 persistent Effects 0.000 claims 86
- 230000000875 corresponding Effects 0.000 claims 4
- 230000005540 biological transmission Effects 0.000 claims 1
Claims (30)
- 永続動作を実行する方法であって、
Persistent Writeをサポートするように構成された不揮発性デュアルインラインメモリモジュール(NVDIMM)によって、ホストからPersistent Writeコマンドおよび関連する書込みデータを受信するステップと、
前記Persistent Writeコマンドに基づいて、前記NVDIMM内の不揮発性メモリへの前記書込みデータのPersistent Writeを実行するステップと、
前記Persistent Writeの完了が成功すると、前記ホストから前記Persistent Writeコマンドに関連付けられた書込み識別情報(WID)を受信するステップと、
前記ホストから、複数のPersistent Writeのための送信要求ステータスを関連するWIDとともに受信するステップと、
前記NVDIMMによって、共通のWIDを有する2つ以上のPersistent Writeコマンドのグループを受信し、前記グループの最後のPersistent WriteコマンドのためのPersistent Write完了指示を提供するステップと
を含み、
前記最後のPersistent WriteコマンドがPersistビットを1に設定し、
残りのPersistent WriteコマンドがそれぞれのPersistビットを0に設定する、方法。 - 前記Persistent Writeの完了が成功すると、前記NVDIMMから、Persistent Write完了指示を前記関連するWIDとともに前記ホストに送信するステップをさらに含む、請求項1に記載の方法。
- 前記Persistent Write完了指示を送信するステップが、前記NVDIMMから、2つ以上のPersistent Write完了指示を、対応する2つ以上のPersistent Writeコマンドが前記ホストから受信された順序とは異なる順序で前記ホストに送信するステップを含む、請求項2に記載の方法。
- 前記NVDIMMから、ステータスパケットを前記ホストに送信するステップをさらに含み、
前記ステータスパケットが、実行が完了したPersistent WriteコマンドのためのWIDを含む、請求項1に記載の方法。 - 前記WIDが、Persistent Writeおよび有効ビットのマルチビット識別情報を含む、請求項1に記載の方法。
- 前記NVDIMMによって、前記ホストからFLUSHコマンドを受信するステップをさらに含み、
前記FLUSHコマンドが、揮発性媒体にバッファされたすべての以前の書込みが不揮発性または永続メモリにプッシュされるべきであることを示す、請求項1に記載の方法。 - 前記NVDIMMから、前記FLUSHコマンドの実行の完了時にFLUSH完了指示を前記ホストに送信するステップをさらに含む、請求項6に記載の方法。
- 前記NVDIMMによって、
1つまたは複数のPersistent Writeコマンドを受信するステップと、
完了した前記1つまたは複数のPersistent Writeコマンドのステータスを完了ビットマップにおいて維持し、保留中の前記1つまたは複数のPersistent Writeコマンドのステータスを保留中ビットマップにおいて維持するステップと、
前記ホストからのステータスの要求時に、訂正不可能なエラーがない場合は前記完了ビットマップを提供するか、または訂正不可能なエラーがある場合は前記保留中ビットマップを提供するステップと
をさらに含む、請求項1に記載の方法。 - 永続動作を実行する方法であって、
ホストから、Persistent Writeコマンドおよび関連する書込みデータをPersistent Writeをサポートするように構成された不揮発性デュアルインラインメモリモジュール(NVDIMM)に送信するステップと、
前記Persistent Writeの完了が成功すると、前記ホストから、前記Persistent Writeコマンドに関連付けられた書込み識別情報(WID)を前記NVDIMMに提供するステップと、
前記ホストから、複数のPersistent Writeのための送信要求ステータスを関連するWIDとともに前記NVDIMMに送信するステップと、
前記ホストから、共通のWIDを有する2つ以上のPersistent Writeコマンドのグループを前記NVDIMMに送信し、前記NVDIMMから、前記グループの最後のPersistent WriteコマンドのためのPersistent Write完了指示を受信するステップと
を含み、
前記最後のPersistent WriteコマンドがPersistビットを1に設定し、
残りのPersistent WriteコマンドがそれぞれのPersistビットを0に設定し、
前記Persistent Writeコマンドは、不揮発性メモリへの前記書込みデータのPersistent Writeを実行するように前記NVDIMMに示す、方法。 - 前記Persistent Writeの完了が成功すると、前記ホストにおいて、前記NVDIMMから、Persistent Write完了指示を前記関連するWIDとともに受信するステップをさらに含む、請求項9に記載の方法。
- 前記Persistent Write完了指示を受信するステップが、前記NVDIMMから、2つ以上のPersistent Write完了指示を、対応する2つ以上のPersistent Writeコマンドが前記ホストから前記NVDIMMに送信された順序とは異なる順序で受信するステップを含む、請求項10に記載の方法。
- 前記ホストによって、前記NVDIMMから、ステータスパケットを受信するステップをさらに含み、
前記ステータスパケットが、実行が完了したPersistent WriteコマンドのためのWIDを含む、請求項11に記載の方法。 - 前記WIDが、Persistent Writeおよび有効ビットのマルチビット識別情報を含む、請求項9に記載の方法。
- 前記ホストからFLUSHコマンドを前記NVDIMMに送信するステップをさらに含み、
前記FLUSHコマンドが、揮発性媒体にバッファされたすべての以前の書込みが不揮発性または永続メモリに前記NVDIMMによってプッシュされるべきであることを示す、請求項9に記載の方法。 - 前記NVDIMMによる前記FLUSHコマンドの実行の完了時にFLUSH完了指示を前記ホストにおいて受信するステップをさらに含む、請求項14に記載の方法。
- 装置であって、
ホストと、
Persistent Writeをサポートするように構成された不揮発性デュアルインラインメモリモジュール(NVDIMM)と
を備え、前記NVDIMMが、
前記ホストから前記Persistent Writeコマンドおよび関連する書込みデータを受信することと、
前記Persistent Writeコマンドに基づいて、前記NVDIMM内の不揮発性メモリへの前記書込みデータのPersistent Writeを実行することと、
前記Persistent Writeの完了が成功すると、前記ホストから前記Persistent Writeコマンドに関連付けられた書込み識別情報(WID)を受信することと、
前記ホストから、複数のPersistent Writeのための送信要求ステータスを関連するWIDとともに受信することと、
共通のWIDを有する2つ以上のPersistent Writeコマンドのグループを受信し、前記グループの最後のPersistent WriteコマンドのためのPersistent Write完了指示を提供すること
を行うように構成され、
前記最後のPersistent WriteコマンドがPersistビットを1に設定し、
残りのPersistent WriteコマンドがそれぞれのPersistビットを0に設定する、装置。 - 前記NVDIMMが、
前記Persistent Writeの完了が成功すると、Persistent Write完了指示を前記関連するWIDとともに前記ホストに提供することを行うようにさらに構成される、請求項16に記載の装置。 - 前記NVDIMMが、
2つ以上のPersistent Write完了指示を、対応する2つ以上のPersistent Writeコマンドが前記ホストから受信された順序とは異なる順序で前記ホストに提供することを行うようにさらに構成される、請求項17に記載の装置。 - 前記NVDIMMが、
ステータスパケットを前記ホストに提供することを行うようにさらに構成され、
前記ステータスパケットが、実行が完了したPersistent WriteコマンドのためのWIDを含む、請求項18に記載の装置。 - 前記WIDが、Persistent Writeおよび有効ビットのマルチビット識別情報を含む、請求項16に記載の装置。
- 前記NVDIMMが、
前記ホストからFLUSHコマンドを受信することを行うようにさらに構成され、
前記FLUSHコマンドが、揮発性媒体にバッファされたすべての以前の書込みが不揮発性または永続メモリにプッシュされるべきであることを示す、請求項16に記載の装置。 - 前記NVDIMMが、
前記FLUSHコマンドの実行の完了時にFLUSH完了指示を前記ホストに提供することを行うようにさらに構成される、請求項21に記載の装置。 - 前記NVDIMMが、
1つまたは複数のPersistent Writeコマンドを受信することと、
完了した前記1つまたは複数のPersistent Writeコマンドのステータスを完了ビットマップにおいて維持し、保留中の前記1つまたは複数のPersistent Writeコマンドのステータスを保留中ビットマップにおいて維持することと、
前記ホストからのステータスの要求時に、訂正不可能なエラーがない場合は前記完了ビットマップを提供するか、または訂正不可能なエラーがある場合は前記保留中ビットマップを提供することと
を行うようにさらに構成される、請求項16に記載の装置。 - 装置であって、
Persistent Writeコマンドおよび関連する書込みデータを送信するように構成されたホストと、
前記ホストから前記Persistent Writeコマンドおよび前記関連する書込みデータを受信するように構成された不揮発性デュアルインラインメモリモジュール(NVDIMM)と
を備え、
前記Persistent Writeコマンドは、前記NVDIMMの不揮発性メモリへの前記書込みデータのPersistent Writeを実行するように前記NVDIMMに示し、
前記ホストが、
前記Persistent Writeコマンドに関連付けられた書込み識別情報(WID)を前記NVDIMMに提供し、前記Persistent Writeの完了が成功すると、複数のPersistent Writeのための送信要求ステータスを関連するWIDとともに前記NVDIMMに送信することと、
共通のWIDを有する2つ以上のPersistent Writeコマンドのグループを前記NVDIMMに送信し、前記NVDIMMから、前記グループの最後のPersistent WriteコマンドのためのPersistent Write完了指示を受信すること
を行うようにさらに構成され、
前記最後のPersistent WriteコマンドがPersistビットを1に設定し、
残りのPersistent WriteコマンドがそれぞれのPersistビットを0に設定する、装置。 - 前記ホストが、
前記Persistent Writeの完了が成功すると、前記NVDIMMから、Persistent Write完了指示を前記関連するWIDとともに受信することを行うようにさらに構成される、請求項24に記載の装置。 - 前記ホストが、
前記NVDIMMから、2つ以上のPersistent Write完了指示を、対応する2つ以上のPersistent Writeコマンドが前記NVDIMMに送信された順序とは異なる順序で受信することを行うようにさらに構成される、請求項25に記載の装置。 - 前記ホストが、
前記NVDIMMから、ステータスパケットを受信することを行うようにさらに構成され、
前記ステータスパケットが、実行が完了したPersistent WriteコマンドのためのWIDを含む、請求項26に記載の装置。 - 前記WIDが、Persistent Writeおよび有効ビットのマルチビット識別情報を含む、請求項27に記載の装置。
- 前記ホストが、
FLUSHコマンドを前記NVDIMMに送信することを行うようにさらに構成され、
前記FLUSHコマンドが、揮発性媒体にバッファされたすべての以前の書込みが不揮発性または永続メモリに前記NVDIMMによってプッシュされるべきであることを示す、請求項24に記載の装置。 - 前記ホストが、
前記NVDIMMによる前記FLUSHコマンドの実行の完了時にFLUSH完了指示を受信することを行うようにさらに構成される、請求項29に記載の装置。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/706,530 US11194524B2 (en) | 2017-09-15 | 2017-09-15 | Apparatus and method for performing persistent write operations using a persistent write command |
US15/706,530 | 2017-09-15 | ||
PCT/US2018/046590 WO2019055164A1 (en) | 2017-09-15 | 2018-08-14 | PERSISTENT SCRIPTURES FOR NON-VOLATILE MEMORY |
Publications (4)
Publication Number | Publication Date |
---|---|
JP2020534598A JP2020534598A (ja) | 2020-11-26 |
JP2020534598A5 JP2020534598A5 (ja) | 2021-09-02 |
JPWO2019055164A5 true JPWO2019055164A5 (ja) | 2022-03-11 |
JP7123129B2 JP7123129B2 (ja) | 2022-08-22 |
Family
ID=63449690
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020514756A Active JP7123129B2 (ja) | 2017-09-15 | 2018-08-14 | 不揮発性メモリのためのPersistent Write |
Country Status (22)
Country | Link |
---|---|
US (2) | US11194524B2 (ja) |
EP (1) | EP3682331B1 (ja) |
JP (1) | JP7123129B2 (ja) |
KR (1) | KR102425287B1 (ja) |
CN (1) | CN111095224B (ja) |
AU (1) | AU2018334452B2 (ja) |
BR (1) | BR112020004936A2 (ja) |
CA (1) | CA3073686C (ja) |
CL (1) | CL2020000647A1 (ja) |
CO (1) | CO2020002863A2 (ja) |
DK (1) | DK3682331T3 (ja) |
FI (1) | FI3682331T3 (ja) |
IL (1) | IL272795B (ja) |
MX (1) | MX2020002897A (ja) |
NZ (1) | NZ761924A (ja) |
PH (1) | PH12020500384A1 (ja) |
PT (1) | PT3682331T (ja) |
SA (1) | SA520411521B1 (ja) |
SG (1) | SG11202001491YA (ja) |
SI (1) | SI3682331T1 (ja) |
TW (1) | TWI779082B (ja) |
WO (1) | WO2019055164A1 (ja) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10534540B2 (en) * | 2016-06-06 | 2020-01-14 | Micron Technology, Inc. | Memory protocol |
US11194524B2 (en) | 2017-09-15 | 2021-12-07 | Qualcomm Incorporated | Apparatus and method for performing persistent write operations using a persistent write command |
US10996888B2 (en) * | 2017-10-31 | 2021-05-04 | Qualcomm Incorporated | Write credits management for non-volatile memory |
KR102426107B1 (ko) * | 2017-12-20 | 2022-07-28 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작 방법 |
KR20190088790A (ko) * | 2018-01-19 | 2019-07-29 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작 방법 |
US11048645B2 (en) * | 2018-02-01 | 2021-06-29 | Samsung Electronics Co., Ltd. | Memory module, operation method therof, and operation method of host |
US11709774B2 (en) * | 2019-08-07 | 2023-07-25 | Intel Corporation | Data consistency and durability over distributed persistent memory systems |
US11656967B2 (en) * | 2020-02-13 | 2023-05-23 | MemRay Corporation | Method and apparatus for supporting persistence and computing device |
US11886744B2 (en) * | 2021-12-15 | 2024-01-30 | Nvidia Corporation | Systems, methods, and apparatuses for making writes to persistent memory |
Family Cites Families (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AP2001002117A0 (en) | 1998-10-02 | 2001-06-30 | Worldspace Man Corp | System for providing a user with active and passive access to cached content. |
US7139885B2 (en) | 2001-12-27 | 2006-11-21 | Hitachi, Ltd. | Method and apparatus for managing storage based replication |
US7139864B2 (en) | 2003-12-30 | 2006-11-21 | Sandisk Corporation | Non-volatile memory and method with block management system |
US8250329B2 (en) * | 2007-10-24 | 2012-08-21 | International Business Machines Corporation | Preemptive write-inhibition for thin provisioning storage subsystem |
US7930361B2 (en) | 2008-09-15 | 2011-04-19 | Dell Products L.P. | System and method for management of remotely shared data |
US8700842B2 (en) * | 2010-04-12 | 2014-04-15 | Sandisk Enterprise Ip Llc | Minimizing write operations to a flash memory-based object store |
WO2012020544A1 (ja) * | 2010-08-11 | 2012-02-16 | 日本電気株式会社 | データ処理システム、データ処理方法、およびプログラム |
US10817421B2 (en) * | 2010-12-13 | 2020-10-27 | Sandisk Technologies Llc | Persistent data structures |
US8656130B2 (en) * | 2011-12-23 | 2014-02-18 | International Business Machines Corporation | Low latency and persistent data storage |
US9122810B2 (en) * | 2012-05-18 | 2015-09-01 | Dell Products, Lp | System and method for providing input/output functionality to a processing node |
US9081606B2 (en) * | 2012-11-13 | 2015-07-14 | International Business Machines Corporation | Asynchronous persistent stores for transactions |
US9501398B2 (en) * | 2012-12-26 | 2016-11-22 | Sandisk Technologies Llc | Persistent storage device with NVRAM for staging writes |
WO2014142908A1 (en) | 2013-03-14 | 2014-09-18 | Hewlett-Packard Development Company, L.P. | Multiversioned nonvolatile memory hierarchy for persistent memory |
US9417974B2 (en) * | 2013-03-28 | 2016-08-16 | Microsoft Technology Licensing, Llc. | Transaction processing for database in persistent system |
JP6192192B2 (ja) | 2013-07-26 | 2017-09-06 | インテル・コーポレーション | 不揮発性メモリインターフェース |
US9389976B2 (en) | 2014-04-09 | 2016-07-12 | Intel Corporation | Distributed persistent memory using asynchronous streaming of log records |
US10061719B2 (en) * | 2014-12-25 | 2018-08-28 | Intel Corporation | Packed write completions |
US9886194B2 (en) * | 2015-07-13 | 2018-02-06 | Samsung Electronics Co., Ltd. | NVDIMM adaptive access mode and smart partition mechanism |
US9946492B2 (en) * | 2015-10-30 | 2018-04-17 | Arm Limited | Controlling persistent writes to non-volatile memory based on persist buffer data and a persist barrier within a sequence of program instructions |
US10719236B2 (en) | 2015-11-20 | 2020-07-21 | Arm Ltd. | Memory controller with non-volatile buffer for persistent memory operations |
US10691553B2 (en) | 2015-12-16 | 2020-06-23 | Netapp, Inc. | Persistent memory based distributed-journal file system |
US10970175B2 (en) * | 2016-06-15 | 2021-04-06 | Sap Se | Flexible per-request data durability in databases and other data stores |
US10127074B2 (en) * | 2017-01-27 | 2018-11-13 | Futurewei Technologies, Inc. | Transaction identification synchronization |
US11175853B2 (en) * | 2017-05-09 | 2021-11-16 | Samsung Electronics Co., Ltd. | Systems and methods for write and flush support in hybrid memory |
EP3663901B1 (en) * | 2017-08-31 | 2022-12-28 | Huawei Technologies Co., Ltd. | Information writing method and device |
US11194524B2 (en) | 2017-09-15 | 2021-12-07 | Qualcomm Incorporated | Apparatus and method for performing persistent write operations using a persistent write command |
US11016669B2 (en) * | 2018-05-01 | 2021-05-25 | Qualcomm Incorporated | Persistent write data for energy-backed memory |
-
2017
- 2017-09-15 US US15/706,530 patent/US11194524B2/en active Active
-
2018
- 2018-08-14 IL IL272795A patent/IL272795B/en unknown
- 2018-08-14 PT PT187627047T patent/PT3682331T/pt unknown
- 2018-08-14 SI SI201831049T patent/SI3682331T1/sl unknown
- 2018-08-14 JP JP2020514756A patent/JP7123129B2/ja active Active
- 2018-08-14 CN CN201880058881.9A patent/CN111095224B/zh active Active
- 2018-08-14 EP EP18762704.7A patent/EP3682331B1/en active Active
- 2018-08-14 SG SG11202001491YA patent/SG11202001491YA/en unknown
- 2018-08-14 KR KR1020207006858A patent/KR102425287B1/ko active IP Right Grant
- 2018-08-14 MX MX2020002897A patent/MX2020002897A/es unknown
- 2018-08-14 NZ NZ761924A patent/NZ761924A/en unknown
- 2018-08-14 AU AU2018334452A patent/AU2018334452B2/en active Active
- 2018-08-14 WO PCT/US2018/046590 patent/WO2019055164A1/en unknown
- 2018-08-14 FI FIEP18762704.7T patent/FI3682331T3/fi active
- 2018-08-14 BR BR112020004936-0A patent/BR112020004936A2/pt unknown
- 2018-08-14 CA CA3073686A patent/CA3073686C/en active Active
- 2018-08-14 DK DK18762704.7T patent/DK3682331T3/da active
- 2018-08-23 TW TW107129409A patent/TWI779082B/zh active
-
2020
- 2020-02-27 PH PH12020500384A patent/PH12020500384A1/en unknown
- 2020-03-11 CO CONC2020/0002863A patent/CO2020002863A2/es unknown
- 2020-03-12 CL CL2020000647A patent/CL2020000647A1/es unknown
- 2020-03-12 SA SA520411521A patent/SA520411521B1/ar unknown
-
2021
- 2021-10-29 US US17/515,111 patent/US11650765B2/en active Active
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2020534598A5 (ja) | ||
TWI408556B (zh) | 記憶體控制器及用於運作記憶體裝置之方法 | |
US10339079B2 (en) | System and method of interleaving data retrieved from first and second buffers | |
CN110770710A (zh) | 用于控制数据加速的装置和方法 | |
TWI443513B (zh) | 記憶體儲存裝置、記憶體控制器與資料寫入方法 | |
KR102281946B1 (ko) | 반도체 메모리 장치를 제어하는 컨트롤러 및 그것의 동작 방법 | |
KR102641107B1 (ko) | 스토리지 장치, 이를 포함하는 시스템 및 그 동작 방법 | |
TWI519953B (zh) | 資料儲存裝置以及快閃記憶體控制方法 | |
US20120254114A1 (en) | Method and system for replicating data | |
US20130067143A1 (en) | Memory device and method of controlling the same | |
TWI648742B (zh) | 重試讀取方法以及使用該方法的裝置 | |
TWI715248B (zh) | 主機輸出入命令的執行裝置及方法及電腦程式產品 | |
US10013373B1 (en) | Multi-level message passing descriptor | |
US20200226026A1 (en) | Data storage devices and methods for firmware failure prevention | |
CN109284241A (zh) | 存储等待时间信息的存储设备、处理器和计算系统 | |
US20190155765A1 (en) | Operation method of host system including storage device and operation method of storage device controller | |
JPWO2019055164A5 (ja) | ||
CN109213439A (zh) | 用于减少写入延时的系统和方法 | |
JP6649989B2 (ja) | ストレージシステム及びその制御方法 | |
US11205473B2 (en) | Dual SLC/QLC programming and resource releasing | |
TWI582599B (zh) | 資料傳輸方法、記憶體控制器、資料傳輸系統 | |
US8688898B2 (en) | Memory device configured to execute plural access commands in parallel and memory access method therefor | |
KR102327878B1 (ko) | 반도체 장치 및 반도체 시스템 | |
KR20210060867A (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
US20100325373A1 (en) | Duplexing Apparatus and Duplexing Control Method |