JP2008226149A - ストレージシステム及びストレージシステムのライト性能低下防止方法 - Google Patents
ストレージシステム及びストレージシステムのライト性能低下防止方法 Download PDFInfo
- Publication number
- JP2008226149A JP2008226149A JP2007067142A JP2007067142A JP2008226149A JP 2008226149 A JP2008226149 A JP 2008226149A JP 2007067142 A JP2007067142 A JP 2007067142A JP 2007067142 A JP2007067142 A JP 2007067142A JP 2008226149 A JP2008226149 A JP 2008226149A
- Authority
- JP
- Japan
- Prior art keywords
- data
- flash memory
- storage system
- cache 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.)
- Granted
Links
Images
Classifications
-
- 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
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- 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/10—Providing a specific technical effect
- G06F2212/1032—Reliability improvement, data loss prevention, degraded operation etc
-
- 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
- G06F2212/2022—Flash memory
-
- 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/72—Details relating to flash memory management
- G06F2212/7205—Cleaning, compaction, garbage collection, erase control
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
- Memory System (AREA)
Abstract
【解決手段】フラッシュメモリと、キャッシュメモリと、フラッシュメモリのデータの読み出し、書き込み及び消去と、キャッシュメモリのデータの読み出し及び書き込みを制御し、フラッシュメモリ内に不良なブロックが発生したことを検出するコントローラと、データのライト処理を要求するコマンドを発行するホスト計算機とを含むストレージシステムにおいて、コントローラは、フラッシュメモリ内に不良ブロックが発生したことを検出すると、フラッシュメモリに格納された所定のデータをキャッシュメモリに移動し、その移動したデータを更新するためのコマンドをホスト計算機から受信しても、そのコマンドに基づくデータをフラッシュメモリへ書き込むことを禁止する。
【選択図】図15
Description
・状態=0…有効ページ
・状態=8…無効ページ
・状態=9…不良ページ
・状態=F…未書込ページ
・valid=on:使用中
・valid=off:空き
と定義される。キーレジスタ5004はそのエントリに格納しているキャッシュデータの論理ページを記録する。ダーティ(dirty)レジスタ5005はそのエントリのキャッシュデータがフラッシュメモリ320上のデータよりも新しいかどうか、あるいはそのエントリがフラッシュメモリ・チップ321の不良ブロック代替用に使用されているかを記録し、
・dirty=yes:フラッシュメモリ320のものより新しい更新データ保持
・dirty=no:フラッシュメモリ320のものと同じオリジナルデータ保持
・dirty=sub:代替先として使用状態
と定義される。dirty=yesのエントリは、別の論理ページのために使用する前にフラッシュメモリ320へライトバックして同期をとる必要がある。dirty=subのエントリは、フラッシュメモリ320上にライトバック先がないので別の論理ページのために使用しないように管理する必要がある。
・AがC−B*S以上のとき、R=(C−B*S)/A
・AがC−B*S未満のとき、R=1
と表される。そして、ホスト計算機100のライトアクセス処理時間の期待値Twは、
・AがC−B*S以上のとき、Tw=R*Tc+(1−R)Tf
・AがC−B*S未満のとき、Tw=Tc
と表される。以上より、ライト処理時間期待値TwはS、M、Nの関数Tw(S、M、N)となる。メモリコントローラ310は、ストレージコントローラ120の管理する「R」、「S」、「A」といった情報に基づいて、この関数Twが今回発生した不良ブロックの代替先によってどのように変化するかを評価する。
100…ホスト計算機
120…ストレージコントローラ
121,122…チャネルアダプタ
123、124…キャッシュメモリ
125,126…ストレージアダプタ
129…共有メモリ
151〜184…フラッシュメモリ・モジュール
310…メモリコントローラ
320…フラッシュメモリ
321…フラッシュメモリ・チップ
500…キャッシュ管理テーブル
510…アドレス管理テーブル
520…ページ情報テーブル
5001…インデックス
5002…ウェイ
5003…バリッドフラグ
5004…キーレジスタ
5005…ダーティレジスタ
5101…LPA(論理ページアドレス)
5102…PPA(物理ページアドレス)
5201…ブロック
5202…ステータス
Claims (17)
- ページ単位でデータを書き込み、複数の前記ページから構成されるブロックを単位として前記データを消去するとともに複数の前記ブロックを有し、前記データの更新に前記ページを含む前記ブロックの消去を必要とするフラッシュメモリと、
前記フラッシュメモリに書き込むべきデータを前記フラッシュメモリよりも高速に書き込むとともに一時的に記憶するキャッシュメモリと、
前記フラッシュメモリのデータの読み出し、書き込み及び消去と、前記キャッシュメモリのデータの読み出し及び書き込みを制御し、前記フラッシュメモリ内に不良な前記ブロックが発生したことを検出するコントローラと、
前記データのライト処理を要求するコマンドを発行するホスト計算機とを備え、
前記コントローラは、
前記フラッシュメモリ内に前記不良ブロックが発生したことを検出したときに、前記フラッシュメモリに格納された所定のデータを前記キャッシュメモリに移動し、その移動したデータを更新するためのコマンドを前記ホスト計算機から受信しても、そのコマンドに基づくデータを前記フラッシュメモリへ書き込むことを禁止する、
ことを特徴とするストレージシステム。 - 請求項1記載のストレージシステムであって、
前記移動したデータを更新するためのコマンドに基づいて、前記キャッシュメモリ内に移動したデータを更新する、
ことを特徴とするストレージシステム。 - 請求項1に記載のストレージシステムであって、
前記キャッシュメモリに記憶する前記データを管理するキャッシュ管理テーブルを備え、
前記キャッシュ管理テーブルは、前記データを前記フラッシュメモリへ書き込むことを禁止する禁止情報を保持する、
ことを特徴とするストレージシステム。 - 請求項1に記載のストレージシステムであって、
前記フラッシュメモリに記憶するデータの論理ページアドレスと物理ページアドレスとの対応関係を管理するアドレス変換テーブルを備え、
前記アドレス変換テーブルは、前記データの論理ページアドレスに対応する物理ページアドレスが存在しないことを表すアドレス不存在情報を保持する、
ことを特徴とする前記ストレージシステム。 - 請求項1に記載のストレージシステムであって、
前記コントローラは、
前記ホスト計算機のコマンドに基づいてデータを前記キャッシュメモリに書き込むときに前記データの論理ページアドレスと同じ論理ページアドレスの前記データが前記キャッシュメモリに存在する確率を示すヒット率を計算し、
前記不良ブロックが発生したことを検出したときに、その検出時までに計算した前記ヒット率に基づいて、前記不良ブロックの代替先として前記フラッシュメモリ内のその他のブロックを適用したときの前記ストレージシステムの第1のライト性能と、前記フラッシュメモリに格納された前記データの一部を前記キャッシュメモリに移動したときの前記ストレージシステムの第2のライト性能とを計算し、その計算結果に基づいて、前記第2のライト性能が前記第1のライト性能に勝ると判定したならば、前記フラッシュメモリに格納された前記データを前記キャッシュメモリに移動する、
ことを特徴とするストレージシステム。 - 請求項1に記載のストレージシステムであって、
前記キャッシュメモリは不揮発性のランダムアクセスメモリである、
ことを特徴とするストレージシステム。 - 請求項6に記載のストレージシステムであって、
前記不揮発性のランダムアクセスメモリは、相変化RAMである、
ことを特徴とするストレージシステム。 - 請求項1に記載のストレージシステムであって、
前記キャッシュメモリに移動した前記データを、前記キャッシュメモリが冗長的に保持する、
ことを特徴とするストレージシステム。 - 請求項8に記載のストレージシステムであって、
前記キャッシュメモリとは、異なるキャッシュメモリを備え、
前記冗長的な保持は、前記キャッシュメモリへ移動した前記データを、前記異なるキャッシュメモリへコピーして行なう、
ことを特徴とするストレージシステム。 - 請求項8に記載のストレージシステムであって、
前記キャッシュメモリとは、異なる複数のキャッシュメモリを備え、
前記冗長的な保持は、前記キャッシュメモリへ移動した前記データを、前記異なる複数のキャッシュメモリとRAIDグループを組んで行なう、
ことを特徴とするストレージシステム。 - ページ単位でデータを書き込み、複数の前記ページから構成されるブロックを単位として前記データを消去するとともに複数の前記ブロックを有し、前記データの更新に前記ページを含む前記ブロックの消去を必要とするフラッシュメモリと、
前記フラッシュメモリに書き込むべきデータを前記フラッシュメモリよりも高速に書き込むとともに一時的に記憶するキャッシュメモリと、
前記フラッシュメモリのデータの読み出し、書き込み及び消去と、前記キャッシュメモリのデータの読み出し及び書き込みを制御し、前記フラッシュメモリ内に不良な前記ブロックが発生したことを検出するコントローラと、
前記データのライト処理を要求するコマンドを発行するホスト計算機とを含むストレージシステムのライト性能低下防止方法において、
前記コントローラは、
前記フラッシュメモリ内に前記不良ブロックが発生したことを検出し、
前記フラッシュメモリに格納された所定のデータを前記キャッシュメモリに移動し、
その移動したデータを更新するためのコマンドを前記ホスト計算機から受信しても、そのコマンドに基づくデータを前記フラッシュメモリへ書き込むことを禁止する、
ことを特徴とするストレージシステムのライト性能低下防止方法。 - 請求項11に記載のストレージシステムのライト性能低下防止方法であって、
前記キャッシュメモリに記憶する前記データを管理するキャッシュ管理テーブルにより保持される禁止情報に基づいて前記データを前記フラッシュメモリへ書き込むことを禁止する、
ことを特徴とする方法。 - 請求項11記載のストレージシステムのライト性能低下防止方法であって、
前記コントローラは、
前記ホスト計算機のコマンドに基づいてデータを前記キャッシュメモリに書き込むときに前記データの論理ページアドレスと同じ論理ページアドレスの前記データが前記キャッシュメモリに存在する確率を示すヒット率を計算し、
前記不良ブロックが発生したことを検出したときに、その検出時までに計算した前記ヒット率に基づいて、前記不良ブロックの代替先として前記フラッシュメモリ内のその他のブロックを適用したときの前記ストレージシステムの第1のライト性能と、前記フラッシュメモリに格納された前記データの一部を前記キャッシュメモリに移動したときの前記ストレージシステムの第2のライト性能とを計算し、その計算結果に基づいて、前記第2のライト性能が前記第1のライト性能に勝ると判定したならば、前記フラッシュメモリに格納された前記データを前記キャッシュメモリに移動する、
ことを特徴とする方法。 - 請求項11記載のストレージシステムのライト性能低下防止方法であって、
前記キャッシュメモリは不揮発性のランダムアクセスメモリである、
ことを特徴とする方法。 - 請求項11記載のストレージシステムのライト性能低下防止方法であって、
前記キャッシュメモリに移動した前記データを、前記キャッシュメモリが冗長的に保持する、
ことを特徴とする方法。 - 請求項15に記載のストレージシステムのライト性能低下防止方法であって、
前記冗長的な保持は、前記キャッシュメモリへ移動した前記データを、前記キャッシュメモリとは、異なるキャッシュメモリへコピーして行なう、
ことを特徴とする方法。 - 請求項15に記載のストレージシステムのライト性能低下防止方法であって、
異なる複数のキャッシュメモリを備え、
前記冗長的な保持は、前記キャッシュメモリへ移動した前記データを、前記キャッシュメモリとは異なる複数のキャッシュメモリとRAIDグループを組んで行なう、
ことを特徴とする方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007067142A JP4897524B2 (ja) | 2007-03-15 | 2007-03-15 | ストレージシステム及びストレージシステムのライト性能低下防止方法 |
US11/968,218 US7761655B2 (en) | 2007-03-15 | 2008-01-02 | Storage system and method of preventing deterioration of write performance in storage system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007067142A JP4897524B2 (ja) | 2007-03-15 | 2007-03-15 | ストレージシステム及びストレージシステムのライト性能低下防止方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008226149A true JP2008226149A (ja) | 2008-09-25 |
JP4897524B2 JP4897524B2 (ja) | 2012-03-14 |
Family
ID=39763819
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007067142A Expired - Fee Related JP4897524B2 (ja) | 2007-03-15 | 2007-03-15 | ストレージシステム及びストレージシステムのライト性能低下防止方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7761655B2 (ja) |
JP (1) | JP4897524B2 (ja) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010102369A (ja) * | 2008-10-21 | 2010-05-06 | Hitachi Ltd | ストレージシステム |
JP2010287203A (ja) * | 2009-06-11 | 2010-12-24 | Sean Eilert | 階層メモリ・アーキテクチャのためのメモリ・デバイス |
JP2011165063A (ja) * | 2010-02-12 | 2011-08-25 | Toshiba Corp | 半導体記憶装置 |
JP2011180831A (ja) * | 2010-03-01 | 2011-09-15 | Toshiba Corp | 半導体記憶装置 |
JP2011232962A (ja) * | 2010-04-27 | 2011-11-17 | Toshiba Corp | ディスクアレイ装置およびミラードキャッシュ制御方法 |
JP2013229013A (ja) * | 2012-03-29 | 2013-11-07 | Semiconductor Energy Lab Co Ltd | アレイコントローラ及びストレージシステム |
KR20140088212A (ko) * | 2011-11-18 | 2014-07-09 | 마이크론 테크놀로지, 인크 | 장치들 및 유효 마스크들을 저장하고 장치들을 동작시키는 방법들 |
KR101467309B1 (ko) * | 2013-03-11 | 2014-12-02 | 전자부품연구원 | 에러 검출 테이블 생성에 의한 스토리지 관리 방법 및 이를 적용한 시스템 |
KR101467302B1 (ko) * | 2013-03-11 | 2014-12-02 | 전자부품연구원 | 에러 검출 테이블을 이용한 패스트 부팅 방법 및 이를 적용한 시스템 |
JP2015515678A (ja) * | 2012-03-23 | 2015-05-28 | ディ・エス・エス・ディ・インコーポレイテッドDssd, Inc. | テーブル・オブ・コンテンツエントリを使用してデータを格納するためのシステムおよび方法 |
JP2015135603A (ja) * | 2014-01-17 | 2015-07-27 | 株式会社東芝 | ストレージ装置及びデータを書き込む記憶領域を選択する方法 |
KR20160051530A (ko) * | 2014-10-30 | 2016-05-11 | 윈본드 일렉트로닉스 코포레이션 | Nand형 플래시 메모리 및 그의 프로그래밍 방법 |
Families Citing this family (111)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7934052B2 (en) | 2007-12-27 | 2011-04-26 | Pliant Technology, Inc. | System and method for performing host initiated mass storage commands using a hierarchy of data structures |
CN101334797B (zh) * | 2008-08-04 | 2010-06-02 | 中兴通讯股份有限公司 | 一种分布式文件系统及其数据块一致性管理的方法 |
US8327066B2 (en) * | 2008-09-30 | 2012-12-04 | Samsung Electronics Co., Ltd. | Method of managing a solid state drive, associated systems and implementations |
KR20100041313A (ko) * | 2008-10-14 | 2010-04-22 | 삼성전자주식회사 | 데이터 저장 방법, 데이터 저장 장치 및 그 시스템 |
US8050251B2 (en) * | 2009-04-10 | 2011-11-01 | Barracuda Networks, Inc. | VPN optimization by defragmentation and deduplication apparatus and method |
US8375162B2 (en) * | 2009-06-03 | 2013-02-12 | Ocz Technology Group Inc. | Method and apparatus for reducing write cycles in NAND-based flash memory devices |
WO2011021237A1 (en) * | 2009-08-20 | 2011-02-24 | Hitachi,Ltd. | Storage subsystem and its data processing method |
US20110119462A1 (en) * | 2009-11-19 | 2011-05-19 | Ocz Technology Group, Inc. | Method for restoring and maintaining solid-state drive performance |
US8090977B2 (en) | 2009-12-21 | 2012-01-03 | Intel Corporation | Performing redundant memory hopping |
JP2011145838A (ja) * | 2010-01-13 | 2011-07-28 | Toshiba Corp | 記憶装置管理装置および記憶装置の管理方法 |
US8365041B2 (en) * | 2010-03-17 | 2013-01-29 | Sandisk Enterprise Ip Llc | MLC self-raid flash data protection scheme |
JP5017407B2 (ja) * | 2010-03-24 | 2012-09-05 | 株式会社東芝 | 半導体記憶装置 |
JP5646633B2 (ja) | 2010-04-12 | 2014-12-24 | 株式会社日立製作所 | ストレージ装置 |
JP2012133655A (ja) * | 2010-12-22 | 2012-07-12 | Sony Corp | 管理装置、管理方法、およびプログラム |
US8972676B2 (en) * | 2011-01-28 | 2015-03-03 | International Business Machines Corporation | Assigning device adaptors and background tasks to use to copy source extents to target extents in a copy relationship |
US8862805B2 (en) * | 2011-06-07 | 2014-10-14 | Hitachi, Ltd. | Storage system and method for compressing stored data |
US8719531B2 (en) | 2011-06-14 | 2014-05-06 | Western Digital Technologies, Inc. | System and method for performing data retention that incorporates environmental conditions |
US8909982B2 (en) | 2011-06-19 | 2014-12-09 | Sandisk Enterprise Ip Llc | System and method for detecting copyback programming problems |
US8910020B2 (en) | 2011-06-19 | 2014-12-09 | Sandisk Enterprise Ip Llc | Intelligent bit recovery for flash memory |
WO2013016496A1 (en) * | 2011-07-27 | 2013-01-31 | Lsi Corporation | Techniques for secure storage hijacking protection |
EP2745203B1 (en) * | 2011-08-19 | 2016-09-21 | Kabushiki Kaisha Toshiba | Information processing apparatus |
US9122631B2 (en) | 2011-11-07 | 2015-09-01 | Peking University | Buffer management strategies for flash-based storage systems |
US8793543B2 (en) | 2011-11-07 | 2014-07-29 | Sandisk Enterprise Ip Llc | Adaptive read comparison signal generation for memory systems |
US8924815B2 (en) | 2011-11-18 | 2014-12-30 | Sandisk Enterprise Ip Llc | Systems, methods and devices for decoding codewords having multiple parity segments |
US9048876B2 (en) | 2011-11-18 | 2015-06-02 | Sandisk Enterprise Ip Llc | Systems, methods and devices for multi-tiered error correction |
US8954822B2 (en) | 2011-11-18 | 2015-02-10 | Sandisk Enterprise Ip Llc | Data encoder and decoder using memory-specific parity-check matrix |
CN104254841A (zh) | 2012-04-27 | 2014-12-31 | 惠普发展公司,有限责任合伙企业 | 屏蔽存储器设备 |
US9699263B1 (en) | 2012-08-17 | 2017-07-04 | Sandisk Technologies Llc. | Automatic read and write acceleration of data accessed by virtual machines |
US9501398B2 (en) | 2012-12-26 | 2016-11-22 | Sandisk Technologies Llc | Persistent storage device with NVRAM for staging writes |
US9612948B2 (en) | 2012-12-27 | 2017-04-04 | Sandisk Technologies Llc | Reads and writes between a contiguous data block and noncontiguous sets of logical address blocks in a persistent storage device |
US9239751B1 (en) | 2012-12-27 | 2016-01-19 | Sandisk Enterprise Ip Llc | Compressing data from multiple reads for error control management in memory systems |
US9454420B1 (en) | 2012-12-31 | 2016-09-27 | Sandisk Technologies Llc | Method and system of reading threshold voltage equalization |
US9003264B1 (en) | 2012-12-31 | 2015-04-07 | Sandisk Enterprise Ip Llc | Systems, methods, and devices for multi-dimensional flash RAID data protection |
US9424946B2 (en) | 2013-02-08 | 2016-08-23 | Seagate Technology Llc | Non-volatile buffering to enable sloppy writes and fast write verification |
US9214965B2 (en) | 2013-02-20 | 2015-12-15 | Sandisk Enterprise Ip Llc | Method and system for improving data integrity in non-volatile storage |
US9329928B2 (en) | 2013-02-20 | 2016-05-03 | Sandisk Enterprise IP LLC. | Bandwidth optimization in a non-volatile memory system |
US9870830B1 (en) | 2013-03-14 | 2018-01-16 | Sandisk Technologies Llc | Optimal multilevel sensing for reading data from a storage medium |
US9092350B1 (en) | 2013-03-15 | 2015-07-28 | Sandisk Enterprise Ip Llc | Detection and handling of unbalanced errors in interleaved codewords |
US9136877B1 (en) | 2013-03-15 | 2015-09-15 | Sandisk Enterprise Ip Llc | Syndrome layered decoding for LDPC codes |
US9009576B1 (en) | 2013-03-15 | 2015-04-14 | Sandisk Enterprise Ip Llc | Adaptive LLR based on syndrome weight |
US9367246B2 (en) | 2013-03-15 | 2016-06-14 | Sandisk Technologies Inc. | Performance optimization of data transfer for soft information generation |
US9236886B1 (en) | 2013-03-15 | 2016-01-12 | Sandisk Enterprise Ip Llc | Universal and reconfigurable QC-LDPC encoder |
US9244763B1 (en) | 2013-03-15 | 2016-01-26 | Sandisk Enterprise Ip Llc | System and method for updating a reading threshold voltage based on symbol transition information |
US9170941B2 (en) | 2013-04-05 | 2015-10-27 | Sandisk Enterprises IP LLC | Data hardening in a storage system |
US10049037B2 (en) | 2013-04-05 | 2018-08-14 | Sandisk Enterprise Ip Llc | Data management in a storage system |
US9159437B2 (en) | 2013-06-11 | 2015-10-13 | Sandisk Enterprise IP LLC. | Device and method for resolving an LM flag issue |
US9384126B1 (en) | 2013-07-25 | 2016-07-05 | Sandisk Technologies Inc. | Methods and systems to avoid false negative results in bloom filters implemented in non-volatile data storage systems |
US9524235B1 (en) | 2013-07-25 | 2016-12-20 | Sandisk Technologies Llc | Local hash value generation in non-volatile data storage systems |
US9043517B1 (en) | 2013-07-25 | 2015-05-26 | Sandisk Enterprise Ip Llc | Multipass programming in buffers implemented in non-volatile data storage systems |
CN106898381B (zh) * | 2013-08-09 | 2020-12-15 | 慧荣科技股份有限公司 | 数据储存装置及其电压保护方法 |
US9639463B1 (en) | 2013-08-26 | 2017-05-02 | Sandisk Technologies Llc | Heuristic aware garbage collection scheme in storage systems |
US9235509B1 (en) | 2013-08-26 | 2016-01-12 | Sandisk Enterprise Ip Llc | Write amplification reduction by delaying read access to data written during garbage collection |
US9519577B2 (en) | 2013-09-03 | 2016-12-13 | Sandisk Technologies Llc | Method and system for migrating data between flash memory devices |
US9442670B2 (en) | 2013-09-03 | 2016-09-13 | Sandisk Technologies Llc | Method and system for rebalancing data stored in flash memory devices |
US9158349B2 (en) | 2013-10-04 | 2015-10-13 | Sandisk Enterprise Ip Llc | System and method for heat dissipation |
US9323637B2 (en) | 2013-10-07 | 2016-04-26 | Sandisk Enterprise Ip Llc | Power sequencing and data hardening architecture |
US9298608B2 (en) | 2013-10-18 | 2016-03-29 | Sandisk Enterprise Ip Llc | Biasing for wear leveling in storage systems |
US9442662B2 (en) | 2013-10-18 | 2016-09-13 | Sandisk Technologies Llc | Device and method for managing die groups |
US9436831B2 (en) | 2013-10-30 | 2016-09-06 | Sandisk Technologies Llc | Secure erase in a memory device |
US9263156B2 (en) | 2013-11-07 | 2016-02-16 | Sandisk Enterprise Ip Llc | System and method for adjusting trip points within a storage device |
US9244785B2 (en) | 2013-11-13 | 2016-01-26 | Sandisk Enterprise Ip Llc | Simulated power failure and data hardening |
US9152555B2 (en) | 2013-11-15 | 2015-10-06 | Sandisk Enterprise IP LLC. | Data management with modular erase in a data storage system |
KR102116364B1 (ko) * | 2013-11-18 | 2020-05-28 | 삼성전자주식회사 | 메모리 시스템 및 그에 따른 반도체 메모리의 결함 메모리 셀 관리방법 |
US9703816B2 (en) | 2013-11-19 | 2017-07-11 | Sandisk Technologies Llc | Method and system for forward reference logging in a persistent datastore |
US9520197B2 (en) | 2013-11-22 | 2016-12-13 | Sandisk Technologies Llc | Adaptive erase of a storage device |
US9122636B2 (en) | 2013-11-27 | 2015-09-01 | Sandisk Enterprise Ip Llc | Hard power fail architecture |
US9520162B2 (en) | 2013-11-27 | 2016-12-13 | Sandisk Technologies Llc | DIMM device controller supervisor |
US9280429B2 (en) | 2013-11-27 | 2016-03-08 | Sandisk Enterprise Ip Llc | Power fail latching based on monitoring multiple power supply voltages in a storage device |
US9582058B2 (en) | 2013-11-29 | 2017-02-28 | Sandisk Technologies Llc | Power inrush management of storage devices |
US9250676B2 (en) | 2013-11-29 | 2016-02-02 | Sandisk Enterprise Ip Llc | Power failure architecture and verification |
KR20150062646A (ko) * | 2013-11-29 | 2015-06-08 | 삼성전자주식회사 | 전자 시스템 및 이의 동작 방법 |
US9092370B2 (en) | 2013-12-03 | 2015-07-28 | Sandisk Enterprise Ip Llc | Power failure tolerant cryptographic erase |
US9235245B2 (en) | 2013-12-04 | 2016-01-12 | Sandisk Enterprise Ip Llc | Startup performance and power isolation |
US9129665B2 (en) | 2013-12-17 | 2015-09-08 | Sandisk Enterprise Ip Llc | Dynamic brownout adjustment in a storage device |
US9549457B2 (en) | 2014-02-12 | 2017-01-17 | Sandisk Technologies Llc | System and method for redirecting airflow across an electronic assembly |
US9497889B2 (en) | 2014-02-27 | 2016-11-15 | Sandisk Technologies Llc | Heat dissipation for substrate assemblies |
US9703636B2 (en) | 2014-03-01 | 2017-07-11 | Sandisk Technologies Llc | Firmware reversion trigger and control |
JP6102800B2 (ja) * | 2014-03-04 | 2017-03-29 | ソニー株式会社 | メモリコントローラ、記憶装置、情報処理システム、および、それらにおける制御方法。 |
US9348377B2 (en) | 2014-03-14 | 2016-05-24 | Sandisk Enterprise Ip Llc | Thermal isolation techniques |
US9485851B2 (en) | 2014-03-14 | 2016-11-01 | Sandisk Technologies Llc | Thermal tube assembly structures |
US9519319B2 (en) | 2014-03-14 | 2016-12-13 | Sandisk Technologies Llc | Self-supporting thermal tube structure for electronic assemblies |
US9454448B2 (en) | 2014-03-19 | 2016-09-27 | Sandisk Technologies Llc | Fault testing in storage devices |
US9448876B2 (en) | 2014-03-19 | 2016-09-20 | Sandisk Technologies Llc | Fault detection and prediction in storage devices |
US9390814B2 (en) | 2014-03-19 | 2016-07-12 | Sandisk Technologies Llc | Fault detection and prediction for data storage elements |
US9390021B2 (en) | 2014-03-31 | 2016-07-12 | Sandisk Technologies Llc | Efficient cache utilization in a tiered data structure |
US9626400B2 (en) | 2014-03-31 | 2017-04-18 | Sandisk Technologies Llc | Compaction of information in tiered data structure |
US9626399B2 (en) | 2014-03-31 | 2017-04-18 | Sandisk Technologies Llc | Conditional updates for reducing frequency of data modification operations |
US9697267B2 (en) | 2014-04-03 | 2017-07-04 | Sandisk Technologies Llc | Methods and systems for performing efficient snapshots in tiered data structures |
US10656840B2 (en) | 2014-05-30 | 2020-05-19 | Sandisk Technologies Llc | Real-time I/O pattern recognition to enhance performance and endurance of a storage device |
US10656842B2 (en) | 2014-05-30 | 2020-05-19 | Sandisk Technologies Llc | Using history of I/O sizes and I/O sequences to trigger coalesced writes in a non-volatile storage device |
US9070481B1 (en) | 2014-05-30 | 2015-06-30 | Sandisk Technologies Inc. | Internal current measurement for age measurements |
US9093160B1 (en) | 2014-05-30 | 2015-07-28 | Sandisk Technologies Inc. | Methods and systems for staggered memory operations |
US9645749B2 (en) | 2014-05-30 | 2017-05-09 | Sandisk Technologies Llc | Method and system for recharacterizing the storage density of a memory device or a portion thereof |
US9703491B2 (en) | 2014-05-30 | 2017-07-11 | Sandisk Technologies Llc | Using history of unaligned writes to cache data and avoid read-modify-writes in a non-volatile storage device |
US8891303B1 (en) | 2014-05-30 | 2014-11-18 | Sandisk Technologies Inc. | Method and system for dynamic word line based configuration of a three-dimensional memory device |
US10372613B2 (en) | 2014-05-30 | 2019-08-06 | Sandisk Technologies Llc | Using sub-region I/O history to cache repeatedly accessed sub-regions in a non-volatile storage device |
US10146448B2 (en) | 2014-05-30 | 2018-12-04 | Sandisk Technologies Llc | Using history of I/O sequences to trigger cached read ahead in a non-volatile storage device |
US10162748B2 (en) | 2014-05-30 | 2018-12-25 | Sandisk Technologies Llc | Prioritizing garbage collection and block allocation based on I/O history for logical address regions |
US10114557B2 (en) | 2014-05-30 | 2018-10-30 | Sandisk Technologies Llc | Identification of hot regions to enhance performance and endurance of a non-volatile storage device |
US10078452B2 (en) * | 2014-06-12 | 2018-09-18 | Hitachi Ltd. | Performance information management system, management computer, and performance information management method |
US9652381B2 (en) | 2014-06-19 | 2017-05-16 | Sandisk Technologies Llc | Sub-block garbage collection |
US9378149B1 (en) | 2014-08-29 | 2016-06-28 | Emc Corporation | Method and system for tracking modification times of data in a storage system |
US9443601B2 (en) | 2014-09-08 | 2016-09-13 | Sandisk Technologies Llc | Holdup capacitor energy harvesting |
KR102368071B1 (ko) | 2014-12-29 | 2022-02-25 | 삼성전자주식회사 | 레이드 스토리지 시스템에서의 스트라이프 재구성 방법 및 이를 적용한 가비지 컬렉션 동작 방법 및 레이드 스토리지 시스템 |
CN106776362B (zh) * | 2015-11-24 | 2019-12-03 | 中芯国际集成电路制造(上海)有限公司 | 存储器的控制方法及装置 |
KR102671760B1 (ko) * | 2016-12-27 | 2024-06-05 | 에스케이하이닉스 주식회사 | 컨트롤러 및 컨트롤러의 동작 방법 |
KR20190082513A (ko) * | 2018-01-02 | 2019-07-10 | 에스케이하이닉스 주식회사 | 컨트롤러 및 그것의 동작방법 |
KR102663661B1 (ko) * | 2018-12-06 | 2024-05-10 | 에스케이하이닉스 주식회사 | 메모리 시스템 내 저장된 데이터를 제어하는 방법 및 장치 |
CN111078591A (zh) * | 2019-12-16 | 2020-04-28 | 深圳忆联信息系统有限公司 | 部分命中缓存读命令的处理方法、装置及计算机设备 |
KR20210155593A (ko) * | 2020-06-16 | 2021-12-23 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작방법 |
US11740821B2 (en) * | 2021-04-12 | 2023-08-29 | EMC IP Holding Company LLC | Cost-aware garbage collection for cloud storage |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03256147A (ja) * | 1990-03-07 | 1991-11-14 | Hitachi Ltd | 拡張記憶装置アクセス方法およびそれを利用した拡張記憶用アドレス変換装置 |
JPH08123725A (ja) * | 1994-10-20 | 1996-05-17 | Hitachi Ltd | ライトバック式キャッシュシステム |
JP2000149435A (ja) * | 1998-11-12 | 2000-05-30 | Nec Corp | 磁気ディスク装置及びこれを用いた映像記録再生装置 |
JP2000339869A (ja) * | 1999-05-28 | 2000-12-08 | Kenwood Corp | 光デイスク装置 |
JP2001005669A (ja) * | 1999-06-22 | 2001-01-12 | Mitsubishi Electric Corp | プログラム起動方式 |
JP2001160268A (ja) * | 1999-12-02 | 2001-06-12 | Nec Corp | 記録媒体の代替処理方法および装置 |
JP2004082592A (ja) * | 2002-08-28 | 2004-03-18 | Seiko Epson Corp | キャッシュメモリを有するプリンタ |
WO2006019700A2 (en) * | 2004-07-30 | 2006-02-23 | United Parcel Service Of America, Inc. | Systems, methods, computer readable medium and apparatus for memory management using nvram |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0675502B1 (en) | 1989-04-13 | 2005-05-25 | SanDisk Corporation | Multiple sector erase flash EEPROM system |
US5359569A (en) * | 1991-10-29 | 1994-10-25 | Hitachi Ltd. | Semiconductor memory |
JP3122201B2 (ja) * | 1991-11-30 | 2001-01-09 | 株式会社東芝 | メモリカード装置 |
JP4165990B2 (ja) * | 1999-12-20 | 2008-10-15 | Tdk株式会社 | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリへのデータの書き込み方法 |
JP4373615B2 (ja) * | 2001-01-25 | 2009-11-25 | 富士通マイクロエレクトロニクス株式会社 | 初期不良ブロックのマーキング方法 |
JP2004095001A (ja) * | 2002-08-29 | 2004-03-25 | Fujitsu Ltd | 不揮発性半導体記憶装置、不揮発性半導体記憶装置組込システムおよび不良ブロック検出方法 |
-
2007
- 2007-03-15 JP JP2007067142A patent/JP4897524B2/ja not_active Expired - Fee Related
-
2008
- 2008-01-02 US US11/968,218 patent/US7761655B2/en not_active Expired - Fee Related
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03256147A (ja) * | 1990-03-07 | 1991-11-14 | Hitachi Ltd | 拡張記憶装置アクセス方法およびそれを利用した拡張記憶用アドレス変換装置 |
JPH08123725A (ja) * | 1994-10-20 | 1996-05-17 | Hitachi Ltd | ライトバック式キャッシュシステム |
JP2000149435A (ja) * | 1998-11-12 | 2000-05-30 | Nec Corp | 磁気ディスク装置及びこれを用いた映像記録再生装置 |
JP2000339869A (ja) * | 1999-05-28 | 2000-12-08 | Kenwood Corp | 光デイスク装置 |
JP2001005669A (ja) * | 1999-06-22 | 2001-01-12 | Mitsubishi Electric Corp | プログラム起動方式 |
JP2001160268A (ja) * | 1999-12-02 | 2001-06-12 | Nec Corp | 記録媒体の代替処理方法および装置 |
JP2004082592A (ja) * | 2002-08-28 | 2004-03-18 | Seiko Epson Corp | キャッシュメモリを有するプリンタ |
WO2006019700A2 (en) * | 2004-07-30 | 2006-02-23 | United Parcel Service Of America, Inc. | Systems, methods, computer readable medium and apparatus for memory management using nvram |
JP2008508596A (ja) * | 2004-07-30 | 2008-03-21 | ユナイテッド パーセル サービス オブ アメリカ インコーポレイテッド | Nvramを使用するメモリ管理のためのシステム、方法、コンピュータ可読媒体、および装置 |
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010102369A (ja) * | 2008-10-21 | 2010-05-06 | Hitachi Ltd | ストレージシステム |
US9626327B2 (en) | 2009-06-11 | 2017-04-18 | Micron Technology, Inc. | Memory device for a hierarchical memory architecture |
JP2010287203A (ja) * | 2009-06-11 | 2010-12-24 | Sean Eilert | 階層メモリ・アーキテクチャのためのメモリ・デバイス |
US10725956B2 (en) | 2009-06-11 | 2020-07-28 | Micron Technology, Inc. | Memory device for a hierarchical memory architecture |
US10031879B2 (en) | 2009-06-11 | 2018-07-24 | Micron Technology, Inc. | Memory device for a hierarchical memory architecture |
US9123409B2 (en) | 2009-06-11 | 2015-09-01 | Micron Technology, Inc. | Memory device for a hierarchical memory architecture |
JP2011165063A (ja) * | 2010-02-12 | 2011-08-25 | Toshiba Corp | 半導体記憶装置 |
US9165685B2 (en) | 2010-02-12 | 2015-10-20 | Kabushiki Kaisha Toshiba | Semiconductor memory device |
US8448034B2 (en) | 2010-02-12 | 2013-05-21 | Kabushiki Kaisha Toshiba | Semiconductor memory device |
US9136020B2 (en) | 2010-02-12 | 2015-09-15 | Kabushiki Kaisha Toshiba | Semiconductor memory device |
US8788900B2 (en) | 2010-02-12 | 2014-07-22 | Kabushiki Kaisha Toshiba | Semiconductor memory device |
JP2011180831A (ja) * | 2010-03-01 | 2011-09-15 | Toshiba Corp | 半導体記憶装置 |
JP2011232962A (ja) * | 2010-04-27 | 2011-11-17 | Toshiba Corp | ディスクアレイ装置およびミラードキャッシュ制御方法 |
JP2014534539A (ja) * | 2011-11-18 | 2014-12-18 | マイクロン テクノロジー, インク. | 妥当性マスクを記憶する装置および方法ならびに操作装置 |
KR20140088212A (ko) * | 2011-11-18 | 2014-07-09 | 마이크론 테크놀로지, 인크 | 장치들 및 유효 마스크들을 저장하고 장치들을 동작시키는 방법들 |
KR101645829B1 (ko) * | 2011-11-18 | 2016-08-04 | 마이크론 테크놀로지, 인크 | 장치들 및 유효 마스크들을 저장하고 장치들을 동작시키는 방법들 |
US9274883B2 (en) | 2011-11-18 | 2016-03-01 | Micron Technology, Inc. | Apparatuses and methods for storing validity masks and operating apparatuses |
JP2015515678A (ja) * | 2012-03-23 | 2015-05-28 | ディ・エス・エス・ディ・インコーポレイテッドDssd, Inc. | テーブル・オブ・コンテンツエントリを使用してデータを格納するためのシステムおよび方法 |
JP2013229013A (ja) * | 2012-03-29 | 2013-11-07 | Semiconductor Energy Lab Co Ltd | アレイコントローラ及びストレージシステム |
KR101467302B1 (ko) * | 2013-03-11 | 2014-12-02 | 전자부품연구원 | 에러 검출 테이블을 이용한 패스트 부팅 방법 및 이를 적용한 시스템 |
KR101467309B1 (ko) * | 2013-03-11 | 2014-12-02 | 전자부품연구원 | 에러 검출 테이블 생성에 의한 스토리지 관리 방법 및 이를 적용한 시스템 |
JP2015135603A (ja) * | 2014-01-17 | 2015-07-27 | 株式会社東芝 | ストレージ装置及びデータを書き込む記憶領域を選択する方法 |
KR20160051530A (ko) * | 2014-10-30 | 2016-05-11 | 윈본드 일렉트로닉스 코포레이션 | Nand형 플래시 메모리 및 그의 프로그래밍 방법 |
KR101668340B1 (ko) | 2014-10-30 | 2016-10-21 | 윈본드 일렉트로닉스 코포레이션 | Nand형 플래시 메모리 및 그의 프로그래밍 방법 |
Also Published As
Publication number | Publication date |
---|---|
JP4897524B2 (ja) | 2012-03-14 |
US20080229003A1 (en) | 2008-09-18 |
US7761655B2 (en) | 2010-07-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4897524B2 (ja) | ストレージシステム及びストレージシステムのライト性能低下防止方法 | |
JP4932427B2 (ja) | 記憶装置及び記憶方法 | |
KR100389867B1 (ko) | 플래시 메모리 관리방법 | |
JP3977370B2 (ja) | フラッシュメモリのアドレスマッピング方法、マッピング情報管理方法及びこれらの方法を用いたフラッシュメモリ | |
JP5026213B2 (ja) | ストレージ装置及びデータ重複排除方法 | |
KR100526190B1 (ko) | 플래시 메모리의 재사상 방법 | |
JP4633802B2 (ja) | 不揮発性記憶装置及びデータ読み出し方法及び管理テーブル作成方法 | |
US7475185B2 (en) | Nonvolatile memory system, nonvolatile memory device, memory controller, access device, and method for controlling nonvolatile memory device | |
JP5612514B2 (ja) | 不揮発性メモリコントローラ及び不揮発性記憶装置 | |
KR101678868B1 (ko) | 플래시 주소 변환 장치 및 그 방법 | |
JP2008204041A (ja) | ストレージ装置及びデータ配置制御方法 | |
JP2008015769A (ja) | ストレージシステム及び書き込み分散方法 | |
KR20150083264A (ko) | 플래시 메모리 장치를 위한 주소변환 시스템 및 그 방법 | |
JP5073402B2 (ja) | メモリーコントローラ、及びこれを用いた不揮発性記憶装置並びに不揮発性記憶システム | |
JP2016503927A (ja) | ストレージシステム及びキャッシュコントロール方法 | |
US20100318726A1 (en) | Memory system and memory system managing method | |
JP5300496B2 (ja) | 半導体記憶装置、ホスト機器及び半導体記憶システム | |
JP4829202B2 (ja) | 記憶装置及びメモリ制御方法 | |
KR101369408B1 (ko) | 스토리지 시스템 및 이의 데이터 전송 방법 | |
WO2016194979A1 (ja) | ストレージシステム、ストレージ制御装置、ストレージ制御方法及びプログラム | |
JP3808842B2 (ja) | 書き換え可能な不揮発性メモリを備えた記憶装置及び記憶装置用不揮発性メモリの制御方法 | |
JP5180726B2 (ja) | 記憶装置およびデータ書き込み制御方法 | |
JP2012037971A (ja) | メモリコントローラ及びメモリコントローラを備える不揮発性メモリシステム、並びに不揮発性メモリの制御方法 | |
JP2018206415A (ja) | メモリシステムの制御方法 | |
TWI649652B (zh) | Fast and safe data storage device and method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20090224 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090626 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110728 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110823 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111021 |
|
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: 20111129 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20111222 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150106 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |