JP2020524839A5 - - Google Patents

Download PDF

Info

Publication number
JP2020524839A5
JP2020524839A5 JP2019566261A JP2019566261A JP2020524839A5 JP 2020524839 A5 JP2020524839 A5 JP 2020524839A5 JP 2019566261 A JP2019566261 A JP 2019566261A JP 2019566261 A JP2019566261 A JP 2019566261A JP 2020524839 A5 JP2020524839 A5 JP 2020524839A5
Authority
JP
Japan
Prior art keywords
chip
nand flash
future
writing
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
Application number
JP2019566261A
Other languages
English (en)
Other versions
JP7234144B2 (ja
JP2020524839A (ja
Filing date
Publication date
Priority claimed from US15/816,447 external-priority patent/US10606484B2/en
Application filed filed Critical
Publication of JP2020524839A publication Critical patent/JP2020524839A/ja
Publication of JP2020524839A5 publication Critical patent/JP2020524839A5/ja
Application granted granted Critical
Publication of JP7234144B2 publication Critical patent/JP7234144B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Claims (20)

  1. NANDフラッシュストレージデバイスであって、
    複数のNANDフラッシュチップと、
    コントローラとを備え、前記コントローラは、
    入力/出力(I/O)バスを介してデータを受信するように構成され、
    各NANDフラッシュチップへの書込動作が時間的に重ならないように、前記受信したデータを前記複数のNANDフラッシュチップのうちの第1のNANDフラッシュチップおよび前記複数のNANDフラッシュチップのうちの第2のNANDフラッシュチップに連続的に書き込むように構成され、
    前記I/Oバスを介して読取コマンドを受信するように構成され、
    前記読取コマンドを受信したことに応答して、読取動作が書込動作の後ろのキューに入れられないように、現在書込動作を実行していない前記第1のNANDフラッシュチップまたは前記第2のNANDフラッシュチップのいずれかからデータを読み取るように構成される、NANDフラッシュストレージデバイス。
  2. 前記コントローラは、
    前記第1のNANDフラッシュチップを二次書込チップとして指定し、前記第2のNANDフラッシュチップを将来的な二次書込チップとして指定し、第3のNANDフラッシュチップを一次書込チップとして指定し、第4のNANDフラッシュチップを将来的な一次書込チップとして指定し、残りのNANDフラッシュチップをリードオンリとして指定するように構成され、
    各チップへの書込動作が時間的に重ならないように、前記受信したデータを前記一次書込チップおよび前記二次書込チップに連続的に書き込むように構成され、
    有効データを前記将来的な一次書込チップから前記将来的な二次書込チップにコピーするように構成され、
    前記受信したデータの前記書き込みおよび前記有効データの前記コピーに続いて、前記第1のNANDフラッシュチップをリードオンリとして指定し、前記第2のNANDフラッシュチップを前記二次書込チップとして指定し、前記第3のNANDフラッシュチップを前記将来的な二次書込チップとして指定し、前記第4のNANDフラッシュチップを前記一次書込チップとして指定するように構成される、請求項1に記載のNANDフラッシュストレージデバイス。
  3. 前記コントローラは、
    前記受信したデータの前記書き込みおよび前記有効データの前記コピーに続いて、
    第5のNANDフラッシュチップを前記将来的な一次書込チップとして指定するように構成され、
    各チップへの書込動作が時間的に重ならないように、前記I/Oバスを介して受信した第2のデータを前記一次書込チップおよび前記二次書込チップに連続的に書き込むように構成され、
    第2の有効データを前記将来的な一次書込チップから前記将来的な二次書込チップにコピーするように構成され、
    前記第2の受信したデータの前記書き込みおよび前記第2の有効データの前記コピーに続いて、前記第2のNANDフラッシュチップをリードオンリとして指定し、前記第3のNANDフラッシュチップを前記二次書込チップとして指定し、前記第4のNANDフラッシュチップを前記将来的な二次書込チップとして指定し、前記第5のNANDフラッシュチップを前記一次書込チップとして指定するように構成される、請求項2に記載のNANDフラッシュストレージデバイス。
  4. 前記コピー動作は、
    前記有効データおよび空き空間がそれぞれ、前記将来的な二次書込チップの実質的に連続したそれぞれのメモリ空間を占めるように、前記有効データを前記将来的な一次書込チップから前記将来的な二次書込チップにコピーすることと、
    前記有効データおよび前記空き空間がそれぞれ、前記将来的な一次書込チップの実質的に連続したそれぞれのメモリ空間を占めるように、前記有効データを前記将来的な二次書込チップから前記将来的な一次書込チップにコピーバックすることと、
    前記空き空間が占める前記将来的な一次書込チップおよび前記将来的な二次書込チップの前記メモリ空間を消去することとを含む、請求項2または3に記載のNANDフラッシュストレージデバイス。
  5. 前記書込動作および前記コピー動作は、重なり合う期間中に実行される、請求項2〜4のいずれか1項に記載のNANDフラッシュストレージデバイス。
  6. NANDフラッシュストレージデバイスであって、
    複数のバッファNANDフラッシュチップと、
    複数のストレージNANDフラッシュチップと、
    コントローラとを備え、前記コントローラは、
    入力/出力(I/O)バスを介して入来データを受信するように構成され、
    各NANDフラッシュチップへの書込動作が時間的に重ならないように、前記受信した入来データを前記複数のストレージNANDフラッシュチップのうちの第1のバッファNANDフラッシュチップおよび前記複数のバッファNANDフラッシュチップのうちの第1のストレージNANDフラッシュチップに連続的に書き込むように構成され、
    前記I/Oバスを介して読取コマンドを受信するように構成され、
    前記読取コマンドを受信したことに応答して、読取動作が書込動作の後ろのキューに入れられないように、現在書込動作を実行していない前記第1のバッファNANDフラッシュチップまたは前記第1のストレージNANDフラッシュチップのいずれかからデータを読み取るように構成される、NANDフラッシュストレージデバイス。
  7. 前記コントローラは、
    前記第1のストレージNANDフラッシュチップを一次書込チップとして指定し、第2のストレージNANDフラッシュチップを将来的な一次書込チップとして指定し、前記第1のバッファNANDフラッシュチップを二次書込チップとして指定し、第2のバッファNANDフラッシュチップを将来的な二次書込チップとして指定し、残りのNANDフラッシュチップをリードオンリとして指定するように構成され、
    各チップへの書込動作が時間的に重ならないように、前記受信したデータを前記一次書込チップおよび前記二次書込チップに連続的に書き込むように構成され、
    有効データを前記将来的な一次書込チップから前記将来的な二次書込チップにコピーするように構成され、
    前記受信したデータの前記書き込みおよび前記有効データの前記コピーに続いて、前記第1のストレージNANDフラッシュチップをリードオンリとして指定し、前記第2のストレージNANDフラッシュチップを前記一次書込チップとして指定し、前記第1のバッファNANDフラッシュチップを前記将来的な二次書込チップとして指定し、前記第2のバッファNANDフラッシュチップを前記二次書込チップとして指定するように構成される、請求項6に記載のNANDフラッシュストレージデバイス。
  8. 前記コントローラは、
    前記受信したデータの前記書き込みおよび前記有効データの前記コピーに続いて、
    第3のストレージNANDフラッシュチップを前記将来的な一次書込チップとして指定するように構成され、
    各チップへの書込動作が時間的に重ならないように、前記I/Oバスを介して受信した第2のデータを前記一次書込チップおよび前記二次書込チップに連続的に書き込むように構成され、
    第2の有効データを前記将来的な一次書込チップから前記将来的な二次書込チップにコピーするように構成され、
    前記第2の受信したデータの前記書き込みおよび前記第2の有効データの前記コピーに続いて、前記第2のストレージNANDフラッシュチップをリードオンリとして指定し、前記第3のストレージNANDフラッシュチップを前記一次書込チップとして指定し、前記第1のバッファNANDフラッシュチップを前記二次書込チップとして指定し、前記第2のバッファNANDフラッシュチップを前記将来的な二次書込チップとして指定するように構成される、請求項7に記載のNANDフラッシュストレージデバイス。
  9. 前記コピー動作は、
    前記有効データおよび空き空間がそれぞれ、前記将来的な二次書込チップの実質的に連続したそれぞれのメモリ空間を占めるように、前記有効データを前記将来的な一次書込チップから前記将来的な二次書込チップにコピーすることと、
    前記有効データおよび前記空き空間がそれぞれ、前記将来的な一次書込チップの実質的に連続したそれぞれのメモリ空間を占めるように、前記有効データを前記将来的な二次書込チップから前記将来的な一次書込チップにコピーバックすることと、
    前記空き空間が占める前記将来的な一次書込チップおよび前記将来的な二次書込チップの前記メモリ空間を消去することとを含む、請求項7または8に記載のNANDフラッシュストレージデバイス。
  10. 前記バッファNANDフラッシュチップは、シングルレベルセル(SLC)NANDフラッシュチップであり、
    前記ストレージNANDフラッシュチップは、トリプルレベルセル(TLC)NANDフラッシュチップである、請求項6〜9のいずれか1項に記載のNANDフラッシュストレージデバイス。
  11. NANDフラッシュストレージデバイスをバッファリングする方法であって、
    入力/出力(I/O)バスを介してデータを受信するステップと、
    各NANDフラッシュチップへの書込動作が時間的に重ならないように、前記受信したデータを複数のNANDフラッシュチップのうちの第1のNANDフラッシュチップおよび複数のNANDフラッシュチップのうちの第2のNANDフラッシュチップに連続的に書き込むステップと、
    前記I/Oバスを介して読取コマンドを受信するステップと、
    前記読取コマンドを受信したことに応答して、読取動作が書込動作の後ろのキューに入れられないように、現在書込動作を実行していない前記第1のNANDフラッシュチップまたは前記第2のNANDフラッシュチップのいずれかからデータを読み取るステップとを備える、方法。
  12. 前記第1のNANDフラッシュチップを二次書込チップとして指定し、前記第2のNANDフラッシュチップを将来的な二次書込チップとして指定し、第3のNANDフラッシュチップを一次書込チップとして指定し、第4のNANDフラッシュチップを将来的な一次書込チップとして指定し、残りのNANDフラッシュチップをリードオンリとして指定するステップと、
    各チップへの書込動作が時間的に重ならないように、前記受信したデータを前記一次書込チップおよび前記二次書込チップに連続的に書き込むステップと、
    有効データを前記将来的な一次書込チップから前記将来的な二次書込チップにコピーするステップと、
    前記受信したデータの前記書き込みおよび前記有効データの前記コピーに続いて、前記第1のNANDフラッシュチップをリードオンリとして指定し、前記第2のNANDフラッシュチップを前記二次書込チップとして指定し、前記第3のNANDフラッシュチップを前記将来的な二次書込チップとして指定し、前記第4のNANDフラッシュチップを前記一次書込チップとして指定するステップとを備える、請求項11に記載の方法。
  13. 前記受信したデータの前記書き込みおよび前記有効データの前記コピーに続いて、
    第5のNANDフラッシュチップを前記将来的な一次書込チップとして指定するステップと、
    各チップへの書込動作が時間的に重ならないように、前記I/Oバスを介して受信した第2のデータを前記一次書込チップおよび前記二次書込チップに連続的に書き込むステップと、
    第2の有効データを前記将来的な一次書込チップから前記将来的な二次書込チップにコピーするステップと、
    前記第2の受信したデータの前記書き込みおよび前記第2の有効データの前記コピーに続いて、前記第2のNANDフラッシュチップをリードオンリとして指定し、前記第3のNANDフラッシュチップを前記二次書込チップとして指定し、前記第4のNANDフラッシュチップを前記将来的な二次書込チップとして指定し、前記第5のNANDフラッシュチップを前記一次書込チップとして指定するステップとを備える、請求項12に記載の方法。
  14. 前記コピー動作は、
    前記有効データおよび空き空間がそれぞれ、前記将来的な二次書込チップの実質的に連続したそれぞれのメモリ空間を占めるように、前記有効データを前記将来的な一次書込チップから前記将来的な二次書込チップにコピーすることと、
    前記有効データおよび前記空き空間がそれぞれ、前記将来的な一次書込チップの実質的に連続したそれぞれのメモリ空間を占めるように、前記有効データを前記将来的な二次書込チップから前記将来的な一次書込チップにコピーバックすることと、
    前記空き空間が占める前記将来的な一次書込チップおよび前記将来的な二次書込チップの前記メモリ空間を消去することとを含む、請求項12または13に記載の方法。
  15. 前記書込動作および前記コピー動作は、重なり合う期間中に実行される、請求項12〜14のいずれか1項に記載の方法。
  16. NANDフラッシュストレージデバイスをバッファリングする方法であって、
    入力/出力(I/O)バスを介してデータを受信するステップと、
    各NANDフラッシュチップへの書込動作が時間的に重ならないように、前記受信した入来データを複数のストレージNANDフラッシュチップのうちの第1のバッファNANDフラッシュチップおよび複数のバッファNANDフラッシュチップのうちの第1のストレージNANDフラッシュチップに連続的に書き込むステップと、
    前記I/Oバスを介して読取コマンドを受信するステップと、
    前記読取コマンドを受信したことに応答して、読取動作が書込動作の後ろのキューに入れられないように、現在書込動作を実行していない前記第1のバッファNANDフラッシュチップまたは前記第1のストレージNANDフラッシュチップのいずれかからデータを読み取るステップとを備える、方法。
  17. 前記第1のストレージNANDフラッシュチップを一次書込チップとして指定し、第2のストレージNANDフラッシュチップを将来的な一次書込チップとして指定し、前記第1のバッファNANDフラッシュチップを二次書込チップとして指定し、第2のバッファNANDフラッシュチップを将来的な二次書込チップとして指定し、残りのNANDフラッシュチップをリードオンリとして指定するステップと、
    各チップへの書込動作が時間的に重ならないように、前記受信したデータを前記一次書込チップおよび前記二次書込チップに連続的に書き込むステップと、
    有効データを前記将来的な一次書込チップから前記将来的な二次書込チップにコピーするステップと、
    前記受信したデータの前記書き込みおよび前記有効データの前記コピーに続いて、前記第1のストレージNANDフラッシュチップをリードオンリとして指定し、前記第2のストレージNANDフラッシュチップを前記一次書込チップとして指定し、前記第1のバッファNANDフラッシュチップを前記将来的な二次書込チップとして指定し、前記第2のバッファNANDフラッシュチップを前記二次書込チップとして指定するステップとを備える、請求項16に記載の方法。
  18. 前記受信したデータの前記書き込みおよび前記有効データの前記コピーに続いて、
    第3のストレージNANDフラッシュチップを前記将来的な一次書込チップとして指定するステップと、
    各チップへの書込動作が時間的に重ならないように、前記I/Oバスを介して受信した第2のデータを前記一次書込チップおよび前記二次書込チップに連続的に書き込むステップと、
    第2の有効データを前記将来的な一次書込チップから前記将来的な二次書込チップにコピーするステップと、
    前記第2の受信したデータの前記書き込みおよび前記第2の有効データの前記コピーに続いて、前記第2のストレージNANDフラッシュチップをリードオンリとして指定し、前記第3のストレージNANDフラッシュチップを前記一次書込チップとして指定し、前記第1のバッファNANDフラッシュチップを前記二次書込チップとして指定し、前記第2のバッファNANDフラッシュチップを前記将来的な二次書込チップとして指定するステップとを備える、請求項17に記載の方法。
  19. 前記コピー動作は、
    前記有効データおよび空き空間がそれぞれ、前記将来的な二次書込チップの実質的に連続したそれぞれのメモリ空間を占めるように、前記有効データを前記将来的な一次書込チップから前記将来的な二次書込チップにコピーすることと、
    前記有効データおよび前記空き空間がそれぞれ、前記将来的な一次書込チップの実質的に連続したそれぞれのメモリ空間を占めるように、前記有効データを前記将来的な二次書込チップから前記将来的な一次書込チップにコピーバックすることと、
    前記空き空間が占める前記将来的な一次書込チップおよび前記将来的な二次書込チップの前記メモリ空間を消去することとを含む、請求項17または18に記載の方法。
  20. 前記バッファNANDフラッシュチップは、シングルレベルセル(SLC)NANDフラッシュチップであり、
    前記ストレージNANDフラッシュチップは、トリプルレベルセル(TLC)NANDフラッシュチップである、請求項16〜19のいずれか1項に記載の方法。
JP2019566261A 2017-06-23 2018-03-15 Nandバッファを有するnandフラッシュストレージデバイス Active JP7234144B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201762524016P 2017-06-23 2017-06-23
US62/524,016 2017-06-23
US15/816,447 2017-11-17
US15/816,447 US10606484B2 (en) 2017-06-23 2017-11-17 NAND flash storage device with NAND buffer
PCT/US2018/022683 WO2018236440A1 (en) 2017-06-23 2018-03-15 NAND FLASH STORAGE DEVICE WITH NAND BUFFER

Publications (3)

Publication Number Publication Date
JP2020524839A JP2020524839A (ja) 2020-08-20
JP2020524839A5 true JP2020524839A5 (ja) 2020-10-01
JP7234144B2 JP7234144B2 (ja) 2023-03-07

Family

ID=61899381

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019566261A Active JP7234144B2 (ja) 2017-06-23 2018-03-15 Nandバッファを有するnandフラッシュストレージデバイス

Country Status (9)

Country Link
US (1) US10606484B2 (ja)
EP (1) EP3418897B1 (ja)
JP (1) JP7234144B2 (ja)
KR (1) KR102276350B1 (ja)
CN (1) CN109117085B (ja)
DE (2) DE102018109929A1 (ja)
GB (1) GB2563713B (ja)
TW (1) TWI727160B (ja)
WO (1) WO2018236440A1 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10481834B2 (en) * 2018-01-24 2019-11-19 Samsung Electronics Co., Ltd. Erasure code data protection across multiple NVME over fabrics storage devices
US11048430B2 (en) * 2019-04-12 2021-06-29 Netapp, Inc. Object store mirroring where during resync of two storage bucket, objects are transmitted to each of the two storage bucket
KR20200142219A (ko) 2019-06-12 2020-12-22 삼성전자주식회사 전자 장치 및 그의 저장 공간 이용 방법
JP2021043908A (ja) * 2019-09-13 2021-03-18 キオクシア株式会社 メモリシステムおよび制御方法
US11269779B2 (en) 2020-05-27 2022-03-08 Microsoft Technology Licensing, Llc Memory system with a predictable read latency from media with a long write latency
CN118093449A (zh) * 2022-11-25 2024-05-28 长江存储科技有限责任公司 一种存储器系统及其垃圾回收方法、电子设备

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5930167A (en) 1997-07-30 1999-07-27 Sandisk Corporation Multi-state non-volatile flash memory capable of being its own two state write cache
WO2010071655A1 (en) 2008-12-19 2010-06-24 Hewlett-Packard Development Company, L.P. Redundant data storage for uniform read latency
US8566507B2 (en) * 2009-04-08 2013-10-22 Google Inc. Data storage device capable of recognizing and controlling multiple types of memory chips
US8285946B2 (en) * 2009-12-15 2012-10-09 International Business Machines Corporation Reducing access contention in flash-based memory systems
CN106021147B (zh) * 2011-09-30 2020-04-28 英特尔公司 在逻辑驱动器模型下呈现直接存取的存储设备
EP2761481A4 (en) 2011-09-30 2015-06-17 Intel Corp PRESENTATION OF DIRECT ACCESS STORAGE DEVICE IN LOGIC READER MODEL
JP2013109404A (ja) * 2011-11-17 2013-06-06 Toshiba Corp 情報処理装置
US8301832B1 (en) 2012-03-23 2012-10-30 DSSD, Inc. Storage system with guaranteed read latency
KR102039537B1 (ko) * 2013-03-15 2019-11-01 삼성전자주식회사 불휘발성 저장 장치 및 그것의 운영체제 이미지 프로그램 방법
US20140304452A1 (en) 2013-04-03 2014-10-09 Violin Memory Inc. Method for increasing storage media performance
US9213634B2 (en) * 2013-11-22 2015-12-15 Apple Inc. Efficient reuse of segments in nonoverwrite storage systems
US9632729B2 (en) * 2014-05-07 2017-04-25 Seagate Technology Llc Storage compute device with tiered memory processing
KR20160075229A (ko) 2014-12-19 2016-06-29 삼성전자주식회사 가비지 컬렉션 동작 방법 및 이를 적용하는 레이드 스토리지 시스템
US10031670B2 (en) * 2015-09-04 2018-07-24 Toshiba Memory Corporation Control unit and control method for controlling writes and background operations of multiple semiconductor storage devices
US9880778B2 (en) 2015-11-09 2018-01-30 Google Inc. Memory devices and methods
US10318175B2 (en) * 2017-03-07 2019-06-11 Samsung Electronics Co., Ltd. SSD with heterogeneous NVM types

Similar Documents

Publication Publication Date Title
JP2020524839A5 (ja)
TWI782977B (zh) 記憶體系統及其操作方法
KR102190694B1 (ko) 불휘발성 메모리 시스템 및 그것의 동작 방법
JP5021220B2 (ja) 不揮発性メモリ装置及びそのマルチページコピーバック方法
US10168913B2 (en) Data storage device and data maintenance method thereof
US10126953B2 (en) Memory management method for buffer memory, and memory control circuit unit and memory storage device using the same
US10013210B2 (en) Data storage device and data maintenance method thereof
TW201535252A (zh) 半導體記憶裝置
KR102686380B1 (ko) 메모리 장치, 이를 포함하는 메모리 시스템 및 그것의 동작 방법
JP2008009942A (ja) メモリシステム
JP2018190483A5 (ja)
US10389380B2 (en) Efficient data path architecture for flash devices configured to perform multi-pass programming
JP2007087388A (ja) メモリコントローラ及びそれを含んだデータ処理システム
JP2008112285A (ja) 不揮発性メモリシステム
TWI512609B (zh) 讀取命令排程方法以及使用該方法的裝置
JP2009151865A5 (ja)
US11442664B2 (en) Memory system and method of operating the same
TW201443650A (zh) 在非揮發性記憶體中之失序命令執行
TW201320072A (zh) 記憶體儲存裝置、記憶體控制器與其資料傳輸方法
KR20200003055A (ko) Nand 버퍼를 갖는 nand 플래시 저장 디바이스
JP2013235531A5 (ja)
JPWO2011118114A1 (ja) 不揮発性記憶装置及びメモリコントローラ
US20210318953A1 (en) Method for managing flash memory module and associated flash memory controller and electronic device based on timing of dummy read operations
US20180113803A1 (en) Operation method of memory controller and operation method of storage device including the same
US20140075103A1 (en) Method capable of increasing performance of a memory and related memory system