JP6692448B2 - ストレージ装置及びストレージ装置の制御方法 - Google Patents
ストレージ装置及びストレージ装置の制御方法 Download PDFInfo
- Publication number
- JP6692448B2 JP6692448B2 JP2018549643A JP2018549643A JP6692448B2 JP 6692448 B2 JP6692448 B2 JP 6692448B2 JP 2018549643 A JP2018549643 A JP 2018549643A JP 2018549643 A JP2018549643 A JP 2018549643A JP 6692448 B2 JP6692448 B2 JP 6692448B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- compression method
- lossless compression
- storage area
- storage device
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- 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
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/04—Addressing variable-length words or parts of words
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0608—Saving storage space on storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0634—Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0661—Format or protocol conversion arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0688—Non-volatile semiconductor memory arrays
-
- 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/40—Specific encoding of data in memory or cache
- G06F2212/401—Compressed data
-
- 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/7204—Capacity control, e.g. partitioning, end-of-life degradation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Memory System (AREA)
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Description
図2は、計算機システムの構成例を示すブロック図である。計算機システムは、例えば、ストレージ装置900と、第1のホスト921と、第2のホスト922(以降、第1のホスト921及び第2のホスト922を総称して単にホストと呼ぶ。)と、管理端末920と、SAN(Storage Area Network)910と、を含む。
次に、FMモジュール100の記憶媒体であるフラッシュメモリの特徴と扱い方について説明する。フラッシュメモリは、データを書き込んでから長い時間が経つと、データ誤りが徐々に増加し、誤り訂正符号(ECC)を用いても訂正できなくなってしまう。そこで、データを書き込んでから一定時間が経過したページからデータを読み出して誤りを訂正し、別の未書き込みページに移動し、元のデータを記録しているページを無効化する。この動作はリフレッシュと呼ばれる。
図3は、FMモジュール100の構成例を示すブロック図である。FMモジュール100は、例えば、ストレージI/F102、メモリコントローラ103、複数のチップを含む1以上のNAND型フラッシュメモリ(以降、FMまたはフラッシュメモリとも称する。)107、及び揮発性のメモリであるDRAM(Dynamic Random Access Memory)106を含む。メモリコントローラ103は、例えば、第1圧縮伸張回路104と第2圧縮伸張回路105とを含む。
FMモジュール100の第2圧縮伸張回路105に適用されるLZ77方式(以下、第2方式とも呼ぶ)は、1977年にレンペル(Lempel)及びジフ(Ziv)によって開発された、最も基本的な可逆データ圧縮方式である。LZ77方式の原理はスライド辞書型圧縮である。LZ77方式は、圧縮対象の文字列ストリームの先頭から末尾に向かってポインタを移動させる。LZ77方式は、その際に、ポインタから先頭方向の所定範囲(スライド辞書)の中で、そのポインタから始まる文字列に最も長く一致するものを探す。そして、LZ77方式は、その文字列をコピー記号に変換することでデータ量を減らしていく。コピー記号とは、スライド辞書上の距離Jとコピー長さLを(L,J)と記号化したものである。
次に、図5を参照して、FMモジュール100が行うリクラメーション動作の例を示し、フラッシュメモリ107内の未書き込みページを増やす方法を示す。図5中のアルファベットは個々の論理データ、括弧内の数字は各論理データの世代番号を示す。例えば、A(1)はA(0)が1回更新されたデータを意味する。同一アルファベットのデータの中で、括弧内の数字が最大のものが最新データであり、それ以外は旧データ、つまり無効データである。例えば、C(3)は最新データであり、C(0)〜C(2)は無効データである。
本実施例のFMモジュール100は、DRAM106上のライトバッファの使用状態を監視し、当該使用状態に基づいてライト性能が目標以上になることを保証する。以下、その原理を説明する。
次に、図8を参照して、FMモジュール100が外部からのライト・リードコマンドを処理する手順の一例について説明する。この手順は、上記のライト性能保証処理を含む。
本実施例のFMモジュール100は、フラッシュメモリ107に格納された圧縮データのうち、第1方式で圧縮されたデータを第2方式で圧縮しなおすことによって、リード性能が目標以上になることを保証する。以下、図9A及び図9Bを参照してその原理を説明する。
上述したように、FMモジュール100のライト性能を保証するため、メモリコントローラ103は、一部のライトデータを第2方式で圧縮してフラッシュメモリ107に格納することがある。図4で示したように第2方式で圧縮されたデータを読み出して伸張する際のスループット性能は2.6GB/sである。
実施例1はFMモジュール100をストレージ装置900へ適用する例を説明したが、本実施例では、実施例1のFMモジュール100を一時的な記憶領域(キャッシュメモリ)として利用するサーバ装置などにも適用してもよい。キャッシュメモリのヒット率を向上してサーバ装置のデータアクセス時間を短縮するには、FMモジュール100の物理データ格納量を削減して、仮想的により多くの論理データを格納できるようにすることが重要であるため、実施例1のFMモジュール100を当該サーバ装置に適用することは効果的である。
Claims (13)
- 記憶領域を提供するフラッシュメモリと、前記記憶領域に対するデータの書き込み及び読み出しを制御するコントローラと、前記記憶領域に書き込むデータを一時的に記憶するバッファメモリと、を含むストレージ装置であって、
前記コントローラは、
前記フラッシュメモリへのアクセス性能に基づいて、第1可逆圧縮方式と第2可逆圧縮方式の一方を選択し、
前記選択した一方によってデータを圧縮して前記記憶領域に書き込むことを決定し、
前記第1可逆圧縮方式は、前記第2可逆圧縮方式より圧縮率が小さく、かつ前記第2可逆圧縮方式より圧縮速度が低く、
前記記憶領域へのデータの書き込み要求を受信し、
前記書き込み要求の受信時における前記バッファメモリの空き領域の大きさに基づいて、前記一方を選択する、ストレージ装置。 - 請求項1に記載のストレージ装置であって、
前記コントローラは、前記バッファメモリの空き領域が大きいほど、前記第1可逆圧縮方式を高い割合で前記一方として選択する、ストレージ装置。 - 請求項1に記載のストレージ装置であって、
前記コントローラは、
前記バッファメモリの空きエントリ数が所定値以上の場合、第1割合で前記第1可逆圧縮方式を前記一方として選択し、
前記第1割合に前記第1可逆圧縮方式の圧縮速度を掛けた積と、1から前記第1割合を引いた差に前記第2可逆圧縮方式の圧縮速度を掛けた積と、の和は、所定の目標書き込み速度を超えている、ストレージ装置。 - 記憶領域を提供するフラッシュメモリと、前記記憶領域に対するデータの書き込み及び読み出しを制御するコントローラと、前記記憶領域に書き込むデータを一時的に記憶するバッファメモリと、を含むストレージ装置であって、
前記コントローラは、
前記フラッシュメモリへのアクセス性能に基づいて、第1可逆圧縮方式と第2可逆圧縮方式の一方を選択し、
前記選択した一方によってデータを圧縮して前記記憶領域に書き込むことを決定し、
前記第1可逆圧縮方式は、前記第2可逆圧縮方式より圧縮率が小さく、かつ前記第2可逆圧縮方式より圧縮速度が低く、
前記記憶領域は、前記第1可逆圧縮方式又は前記第2可逆圧縮方式の一方で圧縮された第1データを保持し、
前記第1可逆圧縮方式は、前記第2可逆圧縮方式より伸張速度が低く、
前記コントローラは、
前記記憶領域に格納されたデータを読み出す速度に基づいて、前記第1データを前記記憶領域から読み出して伸張し他方で圧縮して前記記憶領域に格納する圧縮方式変更、を行うか否かを決定する、ストレージ装置。 - 請求項4に記載のストレージ装置であって、
前記コントローラは、
前記記憶領域に格納されたデータを読み出す平均速度が所定の目標読み出し速度以上であるか否かの判定を実行し、
前記判定の結果に基づいて、前記圧縮方式変更を行うか否かを決定する、ストレージ装置。 - 請求項5に記載のストレージ装置であって、
前記一方は、前記第2可逆圧縮方式であり、
前記コントローラは、前記判定において前記平均速度が前記目標読み出し速度以上であると判定した場合、前記圧縮方式変更を行う、ストレージ装置。 - 請求項5に記載のストレージ装置であって、
前記一方は、前記第1可逆圧縮方式であり、
前記コントローラは、前記判定において前記平均速度が前記目標読み出し速度未満であると判定した場合、
前記圧縮方式変更を行った場合における伸張速度の改善度及び圧縮率の悪化度に基づいて、前記圧縮方式変更を行うか否かを決定する、ストレージ装置。 - 請求項4に記載のストレージ装置であって、
前記コントローラは、
前記第1データの他の記憶領域への移動の際に前記圧縮方式変更を行うか否かを決定し、
前記圧縮方式変更を行うと決定した場合、前記移動の実行時に前記圧縮方式変更を行う、ストレージ装置。 - 請求項8に記載のストレージ装置であって、
前記コントローラは、
前記第1データが記憶された記憶領域に対するリフレッシュ又はリクラメーションが実行される際に、前記圧縮方式変更を行うか否かを決定し、
前記圧縮方式変更を行うと決定した場合、前記リフレッシュ又は前記リクラメーションの実行時に前記圧縮方式変更を行う、ストレージ装置。 - 記憶領域を提供するフラッシュメモリと、前記記憶領域に書き込むデータを一時的に記憶するバッファメモリと、を含むストレージ装置、の制御方法であって、
前記フラッシュメモリへのアクセス性能に基づいて、第1可逆圧縮方式と第2可逆圧縮方式の一方を選択し、
前記選択した一方によってデータを圧縮して前記記憶領域に書き込むことを決定し、
前記第1可逆圧縮方式は、前記第2可逆圧縮方式より圧縮率が小さく、かつ前記第2可逆圧縮方式より圧縮速度が低く、
前記記憶領域へのデータの書き込み要求を受信し、
前記書き込み要求の受信時における前記バッファメモリの空き領域の大きさに基づいて、前記一方を選択する、制御方法。 - 請求項10に記載の制御方法であって、
前記バッファメモリの空き領域が大きいほど、前記第1可逆圧縮方式を高い割合で前記一方として選択する、制御方法。 - 請求項10に記載の制御方法であって、
前記バッファメモリの空きエントリ数が所定値以上の場合、第1割合で前記第1可逆圧縮方式を前記一方として選択し、
前記第1割合に前記第1可逆圧縮方式の圧縮速度を掛けた積と、1から前記第1割合を引いた差に前記第2可逆圧縮方式の圧縮速度を掛けた積と、の和は、所定の目標書き込み速度を超えている、制御方法。 - 記憶領域を提供するフラッシュメモリと、前記記憶領域に書き込むデータを一時的に記憶するバッファメモリと、を含むストレージ装置、の制御方法であって、
前記フラッシュメモリへのアクセス性能に基づいて、第1可逆圧縮方式と第2可逆圧縮方式の一方を選択し、
前記選択した一方によってデータを圧縮して前記記憶領域に書き込むことを決定し、
前記第1可逆圧縮方式は、前記第2可逆圧縮方式より圧縮率が小さく、かつ前記第2可逆圧縮方式より圧縮速度が低く、
前記記憶領域は、前記第1可逆圧縮方式又は前記第2可逆圧縮方式の一方で圧縮された第1データを保持し、
前記第1可逆圧縮方式は、前記第2可逆圧縮方式より伸張速度が低く、
前記制御方法は、前記記憶領域に格納されたデータを読み出す速度に基づいて、前記第1データを前記記憶領域から読み出して伸張し他方で圧縮して前記記憶領域に格納する圧縮方式変更、を行うか否かを決定する、制御方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2016/083021 WO2018087795A1 (ja) | 2016-11-08 | 2016-11-08 | フラッシュメモリモジュール及びフラッシュメモリモジュールの制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2018087795A1 JPWO2018087795A1 (ja) | 2019-06-24 |
JP6692448B2 true JP6692448B2 (ja) | 2020-05-13 |
Family
ID=62109660
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018549643A Active JP6692448B2 (ja) | 2016-11-08 | 2016-11-08 | ストレージ装置及びストレージ装置の制御方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11481114B2 (ja) |
JP (1) | JP6692448B2 (ja) |
WO (1) | WO2018087795A1 (ja) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020071583A (ja) * | 2018-10-30 | 2020-05-07 | 株式会社日立製作所 | データ管理装置、データ管理方法、及びデータ管理プログラム |
KR102659832B1 (ko) | 2019-03-05 | 2024-04-22 | 삼성전자주식회사 | 데이터 저장 장치 및 시스템 |
CN112765047A (zh) * | 2019-10-21 | 2021-05-07 | 伊姆西Ip控股有限责任公司 | 用于重写数据的方法、设备和计算机程序产品 |
WO2021090866A1 (ja) * | 2019-11-08 | 2021-05-14 | 日本電気株式会社 | データ処理装置、データ処理方法、及びプログラム |
JP7390251B2 (ja) | 2020-04-30 | 2023-12-01 | 株式会社日立製作所 | ストレージシステム |
US20230004533A1 (en) * | 2021-07-01 | 2023-01-05 | Microsoft Technology Licensing, Llc | Hybrid intermediate stream format |
CN113886346A (zh) * | 2021-08-31 | 2022-01-04 | 联想(北京)有限公司 | 一种数据处理方法及电子设备 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0234038A (ja) * | 1988-07-23 | 1990-02-05 | Hitachi Ltd | データ圧縮装置 |
JPH07210324A (ja) * | 1994-01-13 | 1995-08-11 | Hitachi Ltd | 記憶装置 |
JP4185259B2 (ja) * | 2001-05-08 | 2008-11-26 | 富士フイルム株式会社 | デジタルカメラ、画像記録方法及び画像記録プログラム |
US10444992B2 (en) | 2014-02-26 | 2019-10-15 | Hitachi, Ltd. | Storage device, apparatus having storage device, and storage control method |
TWI534814B (zh) * | 2014-10-20 | 2016-05-21 | 群聯電子股份有限公司 | 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置 |
US9733854B2 (en) * | 2015-10-30 | 2017-08-15 | Hewlett Packard Enterprise Development Lp | Dynamic adaptive compression in network storage device |
-
2016
- 2016-11-08 WO PCT/JP2016/083021 patent/WO2018087795A1/ja active Application Filing
- 2016-11-08 US US16/325,942 patent/US11481114B2/en active Active
- 2016-11-08 JP JP2018549643A patent/JP6692448B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JPWO2018087795A1 (ja) | 2019-06-24 |
WO2018087795A1 (ja) | 2018-05-17 |
US20190205035A1 (en) | 2019-07-04 |
US11481114B2 (en) | 2022-10-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6692448B2 (ja) | ストレージ装置及びストレージ装置の制御方法 | |
US8799562B2 (en) | Storage apparatus and data control method for generating and storing format data and guarantee codes | |
JP6606039B2 (ja) | メモリシステムおよび制御方法 | |
US20170279460A1 (en) | Updating prefix codes for pseudo-dynamic data compression | |
JP6134857B2 (ja) | 記憶デバイス、記憶デバイスを有する装置、及び記憶制御方法 | |
US8364929B2 (en) | Enabling spanning for a storage device | |
US8214620B2 (en) | Computer-readable recording medium storing data storage program, computer, and method thereof | |
TWI455144B (zh) | 使用於快閃記憶體的控制方法與控制器 | |
CN110832590A (zh) | 在基于相变存储器的存储设备中减轻写入放大的方法和系统 | |
CN110795272B (zh) | 用于在可变大小的i/o上促进的原子性和延迟保证的方法和系统 | |
JP6608468B2 (ja) | ストレージ装置及びその制御方法 | |
US8706953B2 (en) | Data storage device and method performing background operation with selected data compression | |
KR20110113422A (ko) | 저장 매체에 데이터를 저장하는 방법, 그를 이용한 데이터 저장 장치, 및 그것을 포함한 시스템 | |
CN112486725B (zh) | 一种对压缩数据进行纠错编码的方法和装置 | |
KR20110138076A (ko) | 데이터 저장 장치 및 그것의 쓰기 방법 | |
US10303402B2 (en) | Data compression using partial statistics | |
JP2020149195A (ja) | メモリシステム | |
US10911064B1 (en) | Symbol pair encoding for data compression | |
JP7177338B2 (ja) | メモリコントローラ装置、メモリコントローラ装置を有するメモリ装置及びメモリコントロール方法 | |
WO2016051599A1 (ja) | メモリコントローラ及びデータ制御方法 | |
US10268537B2 (en) | Initializing a pseudo-dynamic data compression system with predetermined history data typical of actual data | |
US9513813B1 (en) | Determining prefix codes for pseudo-dynamic data compression utilizing clusters formed based on compression ratio | |
JP6760916B2 (ja) | ストレージコントローラ、ストレージアレイ装置、データ格納方法、およびプログラム | |
KR20220072398A (ko) | 메모리 장치 및 메모리 시스템 | |
KR20110030071A (ko) | 데이터를 압축하는 반도체 스토리지 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190109 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190109 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200218 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200324 |
|
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: 20200407 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200414 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6692448 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |