JP6285762B2 - エラー訂正コードの制御方法および大容量ストレージ - Google Patents
エラー訂正コードの制御方法および大容量ストレージ Download PDFInfo
- Publication number
- JP6285762B2 JP6285762B2 JP2014051958A JP2014051958A JP6285762B2 JP 6285762 B2 JP6285762 B2 JP 6285762B2 JP 2014051958 A JP2014051958 A JP 2014051958A JP 2014051958 A JP2014051958 A JP 2014051958A JP 6285762 B2 JP6285762 B2 JP 6285762B2
- Authority
- JP
- Japan
- Prior art keywords
- memory
- ecc
- host write
- host
- mass storage
- 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
- 238000003860 storage Methods 0.000 title claims description 70
- 238000000034 method Methods 0.000 title claims description 30
- 238000012937 correction Methods 0.000 title description 16
- 230000015654 memory Effects 0.000 claims description 117
- 238000004193 electrokinetic chromatography Methods 0.000 claims description 30
- 238000012795 verification Methods 0.000 claims description 2
- 230000004044 response Effects 0.000 claims 2
- 230000014759 maintenance of location Effects 0.000 description 5
- 239000007787 solid Substances 0.000 description 5
- 238000012217 deletion Methods 0.000 description 3
- 230000037430 deletion Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000000717 retained effect Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000001052 transient effect Effects 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000737 periodic effect Effects 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/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1044—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices with specific ECC/EDC distribution
-
- 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/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1666—Error detection or correction of the data by redundancy in hardware where the redundant component is memory or memory area
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
-
- 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/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
Claims (20)
- ホストから書き込まれた情報に基づき生成されるホスト書込ベースECC(host write-based ECC)および前記ホスト書込ベースECCに関連付けられたデータをメモリに保持することと、
前記ホストから書き込まれた情報であって前記ホスト書込ベースECCに関連付けられたデータが前記メモリとは異なる第2のメモリに書き込まれた後に、キャッシングポリシーに応答して前記ホスト書込ベースECCを前記メモリから前記第2のメモリとは異なる第3のメモリに退避することとを含む、方法。 - 前記キャッシングポリシーは、最長時間未使用(LRU)方式、最低頻度使用(LFU)方式、先入れ先出し(FIFO)方式のうちの1つである、請求項1に記載の方法。
- 内部信頼性動作のために前記ホスト書込ベースECCを使用することをさらに含む、請求項1または請求項2に記載の方法。
- 前記内部信頼性動作は、バックグラウンドメディアスキャン、パリティ生成、または書き込み後読み取り検証のうちの1つである、請求項3に記載の方法。
- 前記保持することは、前記ホスト書込ベースECCをキャッシュすることを含む、請求項1から請求項4のいずれか1項に記載の方法。
- 前記ホスト書込ベースECCを一時的に使用することをさらに含む、請求項1から請求項5のいずれか1項に記載の方法。
- 前記一時的な使用は、非単回使用である、請求項6に記載の方法。
- 前記一時的な使用は、単回使用である、請求項6に記載の方法。
- 他のECCとともに、他のECCに加えて、および他のECCの代替としてのうちの少なくとも1つで、前記ホスト書込ベースECCを使用することをさらに含む、請求項1から請求項8のいずれか1項に記載の方法。
- ホストから書き込まれた情報に基づき生成されるホスト書込ベースECCを計算することと、
揮発性メモリに前記ホスト書込ベースECCおよび前記ホスト書込ベースECCに関連付けられたデータを一時的に保持することと、
前記ホストから書き込まれた情報であって前記ホスト書込ベースECCに関連付けられたデータが前記揮発性メモリとは異なる第2のメモリに書き込まれた後に、キャッシングポリシーに応答して前記ホスト書込ベースECCを前記揮発性メモリから前記第2のメモリとは異なる第3のメモリに退避することとを含む、方法。 - 前記ホスト書込ベースECCを前記一時的に保持することは、キャッシングポリシーを使用する、請求項10に記載の方法。
- 前記キャッシングポリシーは退避ポリシーであって、前記退避ポリシーは、ホスト書込ベースECCの生成に基づいて変更される、請求項11に記載の方法。
- 前記ホスト書込ベースECCおよび対応のメタデータを不揮発性メモリに書き込むことをさらに含む、請求項10から請求項12のいずれか1項に記載の方法。
- 前記ホスト書込ベースECCを一時的に保持することは、あるアドレス範囲に対して優先される、請求項10から請求項13のいずれか1項に記載の方法。
- ユーザ読み取り用のデータの修復および内部動作中のデータの修復のうちの少なくとも一方を行うために前記ホスト書込ベースECCを使用することをさらに含む、請求項10から請求項14のいずれか1項に記載の方法。
- 前記一時的な保持は、非単回使用である、請求項10から請求項15のいずれか1項に記載の方法。
- 第1のメモリと、
第2のメモリと、
前記第1のメモリおよび前記第2のメモリに接続され、少なくとも前記第1のメモリにホストから書き込まれた情報に基づき生成されるホスト書込ベースECCおよび前記ホスト書込ベースECCに関連付けられたデータを一時的に保持するように構成されるコントローラとを備え、前記コントローラは、前記ホストから書き込まれた情報であって前記ホスト書込ベースECCに関連付けられたデータが前記第1のメモリとは異なる第2のメモリに書き込まれた後に、キャッシングポリシーに応答して前記ホスト書込ベースECCを前記第1のメモリから第2のメモリとは異なる第3のメモリに退避するようにさらに構成される大容量ストレージ。 - 前記第1のメモリは揮発性であり、前記第2のメモリは不揮発性である、請求項17に記載の大容量ストレージ。
- 前記コントローラは、前記ホスト書込ベースECCを一時的に保持するためにキャッシングポリシーを使用する、請求項17または請求項18に記載の大容量ストレージ。
- 前記ホスト書込ベースECCに関連付けられたデータは、前記第2のメモリに保存され、
前記ホスト書込ベースECCに関連付けられたデータの上書き、消去、または解放のうちの1つが行われる前に、前記ホスト書込ベースECCの解放、削除、および退避のうちの1つが行われる、請求項17から請求項19のいずれか1項に記載の大容量ストレージ。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/843,869 | 2013-03-15 | ||
US13/843,869 US9141484B2 (en) | 2013-03-15 | 2013-03-15 | Transiently maintaining ECC |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2014182834A JP2014182834A (ja) | 2014-09-29 |
JP2014182834A5 JP2014182834A5 (ja) | 2014-11-06 |
JP6285762B2 true JP6285762B2 (ja) | 2018-02-28 |
Family
ID=51502961
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014051958A Expired - Fee Related JP6285762B2 (ja) | 2013-03-15 | 2014-03-14 | エラー訂正コードの制御方法および大容量ストレージ |
Country Status (3)
Country | Link |
---|---|
US (1) | US9141484B2 (ja) |
JP (1) | JP6285762B2 (ja) |
CN (1) | CN104050073B (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10671531B2 (en) * | 2018-07-13 | 2020-06-02 | Seagate Technology Llc | Secondary memory configuration for data backup |
US10915400B1 (en) * | 2019-11-08 | 2021-02-09 | Micron Technology, Inc. | Dynamic over provisioning allocation for purposed blocks |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE69033262T2 (de) * | 1989-04-13 | 2000-02-24 | Sandisk Corp | EEPROM-Karte mit Austauch von fehlerhaften Speicherzellen und Zwischenspeicher |
US5255270A (en) | 1990-11-07 | 1993-10-19 | Emc Corporation | Method of assuring data write integrity on a data storage device |
JPH06266618A (ja) * | 1993-03-17 | 1994-09-22 | Toshiba Corp | エラー訂正・検出機能付きの主記憶コントローラを備えた情報処理装置 |
US5784390A (en) * | 1995-06-19 | 1998-07-21 | Seagate Technology, Inc. | Fast AtA-compatible drive interface with error detection and/or error correction |
US5860090A (en) * | 1995-10-20 | 1999-01-12 | Informix Software, Inc. | Append-only storage in a disk array using striping and parity caching |
JPH11203056A (ja) * | 1998-01-19 | 1999-07-30 | Fujitsu Ltd | 入出力制御装置及びアレイディスク装置 |
US6243827B1 (en) * | 1998-06-30 | 2001-06-05 | Digi-Data Corporation | Multiple-channel failure detection in raid systems |
JP2002023966A (ja) * | 2000-06-30 | 2002-01-25 | Toshiba Corp | 転送データを冗長化したディスクシステム |
US7380198B2 (en) | 2003-06-11 | 2008-05-27 | International Business Machines Corporation | System and method for detecting write errors in a storage device |
US7360112B2 (en) | 2005-02-07 | 2008-04-15 | International Business Machines Corporation | Detection and recovery of dropped writes in storage devices |
US20060294299A1 (en) | 2005-06-28 | 2006-12-28 | Intel Corporation | Techniques to verify storage of information |
US7650557B2 (en) * | 2005-09-19 | 2010-01-19 | Network Appliance, Inc. | Memory scrubbing of expanded memory |
US20070168754A1 (en) | 2005-12-19 | 2007-07-19 | Xiv Ltd. | Method and apparatus for ensuring writing integrity in mass storage systems |
JP2008217755A (ja) * | 2007-02-05 | 2008-09-18 | Seiko Epson Corp | 記憶装置 |
JP4358869B2 (ja) * | 2007-02-21 | 2009-11-04 | 富士通株式会社 | ストレージ制御装置、ストレージ制御方法 |
US20090006757A1 (en) * | 2007-06-29 | 2009-01-01 | Abhishek Singhal | Hierarchical cache tag architecture |
US8095851B2 (en) * | 2007-09-06 | 2012-01-10 | Siliconsystems, Inc. | Storage subsystem capable of adjusting ECC settings based on monitored conditions |
US7774540B2 (en) | 2007-12-26 | 2010-08-10 | Hitachi Global Storage Technologies Netherlands B.V. | Storage system and method for opportunistic write-verify |
US8140909B2 (en) | 2008-02-22 | 2012-03-20 | International Business Machines Corporation | Efficient method to detect disk write errors |
US9235530B2 (en) * | 2010-05-31 | 2016-01-12 | Sandisk Technologies Inc. | Method and system for binary cache cleanup |
WO2012116369A2 (en) * | 2011-02-25 | 2012-08-30 | Fusion-Io, Inc. | Apparatus, system, and method for managing contents of a cache |
US8560775B1 (en) * | 2012-09-28 | 2013-10-15 | Stec, Inc. | Methods for managing cache configuration |
-
2013
- 2013-03-15 US US13/843,869 patent/US9141484B2/en not_active Expired - Fee Related
-
2014
- 2014-03-14 JP JP2014051958A patent/JP6285762B2/ja not_active Expired - Fee Related
- 2014-03-14 CN CN201410095467.9A patent/CN104050073B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2014182834A (ja) | 2014-09-29 |
US20140281821A1 (en) | 2014-09-18 |
CN104050073B (zh) | 2018-02-27 |
US9141484B2 (en) | 2015-09-22 |
CN104050073A (zh) | 2014-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8738846B2 (en) | File system-aware solid-state storage management system | |
US9619158B2 (en) | Two-level hierarchical log structured array architecture with minimized write amplification | |
US8825941B2 (en) | SLC-MLC combination flash storage device | |
US9740406B2 (en) | Dynamic granule-based intermediate storage | |
JP5623239B2 (ja) | 書込みレコードの重複を排除する記憶装置、及びその書込み方法 | |
KR102357203B1 (ko) | 판독 캐시 관리 | |
US9798623B2 (en) | Using cache to manage errors in primary storage | |
US10474527B1 (en) | Host-assisted error recovery | |
JP2015201204A (ja) | データ記憶装置におけるデータ保全性管理 | |
JP2019502987A (ja) | 不揮発性メモリ・システムにおけるマルチページ障害の回復 | |
KR101369813B1 (ko) | 광 디스크 저장 시스템에 저장된 미디어에의 액세스, 압축 및 추적 | |
US7380198B2 (en) | System and method for detecting write errors in a storage device | |
US20200104047A1 (en) | Container key value store for data storage devices | |
US20150339058A1 (en) | Storage system and control method | |
JP6011153B2 (ja) | ストレージシステム、ストレージ制御方法およびストレージ制御プログラム | |
JP2019074897A (ja) | ストレージ制御装置、及びプログラム | |
US8938641B2 (en) | Method and apparatus for synchronizing storage volumes | |
WO2018188618A1 (zh) | 固态硬盘访问 | |
JP6285762B2 (ja) | エラー訂正コードの制御方法および大容量ストレージ | |
KR20230172394A (ko) | 캐시 일관된 상호 연결 저장 장치에서 raid 회로를 사용하는 중복 배열 독립 디스크 시스템 및 방법 | |
WO2016032955A2 (en) | Nvram enabled storage systems | |
JP2019023936A (ja) | 記憶装置及びメモリシステム | |
JP2017045177A (ja) | ストレージシステム、ホスト計算機、ストレージコントローラ及びデータ重複検出方法 | |
JP2005004733A (ja) | ストレージ・システムにおいて書込みエラーを検出するための配置構成および方法 | |
JP2004355040A (ja) | ディスク制御装置およびデータ先読み方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140826 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140826 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150821 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150915 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20151214 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20160114 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20160212 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20160607 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20161004 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20161013 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20161104 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20171025 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20171124 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180202 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6285762 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |