JP2004362530A - 最良の圧縮管理メカニズムを具えたストレージデバイス - Google Patents

最良の圧縮管理メカニズムを具えたストレージデバイス Download PDF

Info

Publication number
JP2004362530A
JP2004362530A JP2003282464A JP2003282464A JP2004362530A JP 2004362530 A JP2004362530 A JP 2004362530A JP 2003282464 A JP2003282464 A JP 2003282464A JP 2003282464 A JP2003282464 A JP 2003282464A JP 2004362530 A JP2004362530 A JP 2004362530A
Authority
JP
Japan
Prior art keywords
data
compression
storage device
microprocessor
storage medium
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.)
Pending
Application number
JP2003282464A
Other languages
English (en)
Inventor
Chia-Li Chen
加立 陳
Shoan Sha
祥安 謝
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Carry Computer Engineering Co Ltd
Original Assignee
Carry Computer Engineering Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Carry Computer Engineering Co Ltd filed Critical Carry Computer Engineering Co Ltd
Publication of JP2004362530A publication Critical patent/JP2004362530A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/08Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers from or to individual record carriers, e.g. punched card, memory card, integrated circuit [IC] card or smart card
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/40Specific encoding of data in memory or cache
    • G06F2212/401Compressed data

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)
  • Microelectronics & Electronic Packaging (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Memory System (AREA)

Abstract

【課題】 最良の圧縮管理メカニズムを具えたストレージデバイスを提供する。
【解決手段】 主にコントローラ、少なくとも1個のソリッドステートストレージメディアにより構成する。該コントローラ内にはシステムエンドに接続するシステムインターフェース、処理システム指令のマイクロプロセッサ、該ソリッドステートストレージメディアとデータ交換が可能なメモリインターフェースを具える。該コントローラは保存しようとするオリジナルデータの類型に対して判読を行い、オリジナルデータに最適なデータ圧縮演算法とそれに対応するパラメータリストを自ら選択する。こうして、該外部システムエンドより伝送されるオリジナルデータは最良の比率で圧縮され、最小保存単位の極めて微小なデータと成り、ソリッドステートストレージメディアに書き込まれる。
【選択図】図1

Description

本発明は一種の最良の圧縮管理メカニズムを具えたストレージデバイスに関し、特に一種の最適の圧縮演算法を自ら選択し、保存しようとするデータに最良の圧縮を行うストレージデバイスに関する。
現在、半導体メモリはフラッシュメモリなどのソリッドステートメディアとして日増しに普及している。半導体メモリは消費電力が少なく、信頼性が高く、容量が大きく、読出し書込み速度が速いなどのメリットを具えるため、CF(Compact Flash Card)、MS(登録商標Memory Stick Card)、SD(登録商標Secure Digital Card)、MMC(登録商標Multi Media Card)、SM(登録商標Memory Stick Card)などの小型メモリカード、及び、USBモバイルディスクなどのストレージデバイスとして幅広く応用され、例えば、特許文献1として知られている。
これらストレージデバイスAは、図7に示すように、内部にソリッドステートストレージメディアA2を内蔵する他、コントローラA1を設置する。該コントローラA1は外部システムエンド2と接続するシステムインターフェースA11、処理システム指令のマイクロプロセッサA12、該ソリッドステートストレージメディアA2とデータ交換が可能なメモリインターフェースA13を具える。さらに、外部システムエンド2により、保存しようとするデータを該ソリッドステートストレージメディアA2に書込み、或いは該ソリッドステートストレージメディアA2より必要なデータを読み出す。
しかし、小型メモリカード、及び、USBモバイルディスクなどのストレージメディアは、その生産コストと販売価格により、内蔵するソリッドステートストレージメディアの容量の多寡が決まってしまう。現在普及しているソリッドステートストレージメディアの保存容量は、64MB、128MB、256MBなどがあり、コスト及び販売価格とその容量は正比例の関係にある。即ち、該ソリッドステートストレージメディアの容量が大きければ大きいほど、価格は高くなる。
しかし、ハードウエアの製造技術が一定のレベルに達している現在、ソリッドステートストレージメディアのサイズ及び規格に大きな発展は望めず、CD−R同様の困難に直面している。即ち、その保存容量が今後、大幅に増加する見こみは薄い。
ナノテクノロジーにより保存空間を微小化し、保存容量を増大させる技術も存在するが、該技術は未だ萌芽段階で、保存容量増大のニーズを満たすまでには到っていない。
一方、保存容量不足を解消するため、小型メモリカード、及び、USBモバイルディスクなどのストレージメディア本体上の適当な位置にスロットを設置し、該スロットに外部メモリカードを挿接しメモリ容量を拡充する方法もある。しかし、この方法では外部メモリカードを購入しなければならないという欠点が存する。
もし、外部メモリカードやソリッドステートストレージメディアを購入しないとすれば、データを圧縮する必要が生じる。データ圧縮により、そのデータ量を縮小し、ソリッドステートストレージメディアの保存容量を増大させるのであるが、現在、データ圧縮作業はコンピュータシステムによってのみ実施可能である。この際には、保存空間を拡充し良好な伝送率を得るために、Winrar、Winzipなどの適当な圧縮ソフトを利用し、ファイルのデータを圧縮後、ハードディスクなどの内部ストレージデバイス、或いは光ディスク、フレキシブル磁気ディスク、USBモバイルディスク、電子メモリカードなどの外部ストレージメディアに保存する。
特許第3389186号公報
本発明は、上記公知構造の欠点を解決するため、その課題は、ソリッドステートストレージメディアはより多くのデータを保存可能とし、コストを低下させることができ、読出し書込み速度を高速化することができ、、自ら最良の圧縮技術を選択し、データを圧縮し極めて微小化することができ、ソリッドステートストレージメディアのデータ保存量を増大することができる最良の圧縮管理メカニズムを具えたストレージデバイスを提供することである。
上記課題を解決するため、本発明は 主にコントローラ、少なくとも1個のソリッドステートストレージメディアにより構成し、該コントローラ内には外部システムエンドに接続するシステムインターフェース、処理システム指令のマイクロプロセッサ、該ソリッドステートストレージメディアとデータ交換が可能なメモリインターフェースを具え、該システムインターフェースと該メモリインターフェース間にはデータ圧縮/解凍モジュールを配置し、保存しようとするオリジナルデータを一定の圧縮比率で圧縮し、該ソリッドステートストレージメディアに記録保存するもので、最良の圧縮技術を達成するため、該データ圧縮/解凍モジュール内にはデータ圧縮回路及び該データ圧縮回路と対応し使用する複数の演算法ディスクリプタを具え、該マイクロプロセッサは該システムインターフェースを通して伝送するオリジナルデータの類型に対して判読を行い、自ら該データの類型に最適な演算法ディスクリプタを選択する。これにより、該データ圧縮回路は該最適な演算法ディスクリプタに基づき、該オリジナルデータを圧縮し、最小保存単位の極めて微小なデータと成り、ソリッドステートストレージメディアに書き込まれる。該微小なデータは該メモリインターフェースの伝送を通して、該ソリッドステートストレージメディアに記録保存される。
即ち、請求項1の発明は、ストレージデバイスはコントローラ、少なくとも1個のソリッドステートストレージメディアにより構成し、前記コントローラ内には外部に予め設置するシステムエンドに接続するシステムインターフェース、処理システム指令のマイクロプロセッサ、該ソリッドステートストレージメディアとデータ交換が可能なメモリインターフェースを具え、前記システムインターフェースと該メモリインターフェース間には電気的に接続するマイクロプロセッサを配置し、しかもデータ圧縮回路及び該データ圧縮回路と組合せ使用される複数の演算法ディスクリプタ及びパラメータリストのデータ圧縮/解凍モジュールを具え、前記マイクロプロセッサにより、システムインターフェースが伝送するオリジナルデータの類型を判読し、該演算法ディスクリプタ及びパラメータリストの配列組合せ中より該オリジナルデータの類型に最適な圧縮機能の組合せを選択し、前記データ圧縮回路は該最適な圧縮組合せに基づき、該オリジナルデータを圧縮し、最小保存単位を具える縮小化データと成し、前記メモリインターフェースの伝送を通して最小保存単位を具えた縮小化データを該ソリッドステートストレージメディアに記録し保存することを特徴とする最良の圧縮管理メカニズムを具えたストレージデバイスである。
請求項2の発明は、前記ソリッドステートストレージメディアは前記縮小化データに対応する最適な演算法ディスクリプタ及びパラメータリストの索引指標を保存することを特徴とする請求項1記載の最良の圧縮管理メカニズムを具えたストレージデバイスである。
請求項3の発明は、前記データ圧縮/解凍モジュールはデータ解凍回路を具え、前記マイクロプロセッサの触発を経て、前記ソリッドステートストレージメディア中から前記索引指標を読み取り、これによりそれが対応保存する縮小化データを前期指標が示す演算法ディスクリプタ及びパラメータリストに基づき、解凍しオリジナルデータに戻すことを特徴とする請求項2記載の最良の圧縮管理メカニズムを具えたストレージデバイスである。
請求項4の発明は、前記ストレージデバイスは第一データバッファを具え、該第一データバッファはシステムインターフェース、マイクロプロセッサ、データ圧縮/解凍モジュールと電気的に接続することを特徴とする請求項1記載の最良の圧縮管理メカニズムを具えたストレージデバイスである。
請求項5の発明は、前記コントローラ内には第二データバッファを具え、該第二データバッファはメモリインターフェース、マイクロプロセッサ、データ圧縮/解凍モジュールと電気的に接続することを特徴とする請求項1記載の最良の圧縮管理メカニズムを具えたストレージデバイスである。
請求項6の発明は、前記データ圧縮/解凍モジュールは前記コントローラ内に配置することを特徴とする請求項1記載の最良の圧縮管理メカニズムを具えたストレージデバイスである。
請求項7の発明は、前記マイクロプロセッサは前記オリジナルデータを構成する二進法分布形態を判読の依拠とすることを特徴とする請求項1記載の最良の圧縮管理メカニズムを具えたストレージデバイスである。
本発明は最良の圧縮管理メカニズムを具えたストレージデバイスで、内部の圧縮システムを通してデータを大幅に圧縮することにより、ソリッドステートストレージメディアはより多くのデータを保存可能となる。こうしてデータ保存量増大の目的を達成し、同時にコストを低下させ、書込み読出し速度を高速化すことができる。また、自ら最良の圧縮技術を選択し、データを圧縮し極めて微小化することができ、ソリッドステートストレージメディアのデータ保存量を増大することができる。
本発明は、最適の圧縮演算法を自ら選択し、保存しようとするデータに最良の圧縮を行うが、最良の圧縮管理メカニズムを具えたストレージデバイスで、内部の圧縮システムを通してデータを大幅に圧縮することにより、ソリッドステートストレージメディアはより多くのデータを保存可能となり、データ保存量増大の目的を達成し、同時にコストを低下させ、書込み読出し速度を高速化すことができ、自ら最良の圧縮技術を選択し、データを圧縮し極めて微小化することができ、ソリッドステートストレージメディアのデータ保存量を増大することができる。
次に、本発明の好適な実施例を図に沿って説明する。
ストレージデバイス1の大凡の構成は、図1に示すように、現在、各種携帯式デジタル製品に広く応用されているメモリカード形態、或いはPCに応用されているUSBモバイルディスク、或いは現在なお研究開発段階であるソリッドステートストレージメディア(即ち、フラッシュメモリ)である。
前記ストレージデバイス1はコントローラ10、少なくとも1個のソリッドステートストレージメディア20により構成され、該コントローラ10内にはシステムインターフェース104、マイクロプロセッサ102、メモリインターフェース106が含まれる。そして、前記システムインターフェース104は外部に予め設置するシステムエンド2(前記各種携帯式デジタル製品とPCシステムなどの応用設備)に接続される。
前記メモリインターフェース106は前記ソリッドステートストレージメディア20とデータのやり取りを行うことができ、前記マイクロプロセッサ102は前記システムインターフェース104及び前記メモリインターフェース106と接続する。
さらに、図1に示すように、本発明の実施例においては、前記ソリッドステートストレージメディア20の保存容量を拡充するため、前記ストレージデバイス1内にデータ圧縮/解凍モジュール108を設置する。該データ圧縮/解凍モジュール108はシステムインターフェース104とメモリインターフェース106間に対応し、前記マイクロプロセッサ102と電気的に接続する。
また、各インターフェース間の伝送速度の違いに対応するため、コントローラ内には第一データバッファ110と第二データバッファ120を設置し、該第一データバッファ110は該データ圧縮/解凍モジュール108及び該システムインターフェース104と電気的に接続し、該データ圧縮/解凍モジュール108のフロントエンドバッファとなる。
前記第二データバッファ120はデータ圧縮/解凍モジュール108及びメモリインターフェース106と電気的に接続し、該データ圧縮/解凍モジュール108のバックエンドバッファとなり、該第一、第二データバッファ110、120はデータの一時保存を行う。
オリジナルデータを前記ストレージデバイス1のソリッドステートストレージメディア20に保存しようとする時には、該システムインターフェース104は該外部システムエンド2が伝送するオリジナルデータを受取り、続いて、該マイクロプロセッサ102は本発明の特徴である独自の設計のデータ圧縮/解凍モジュール108中の圧縮メカニズムを用い、該オリジナルデータを適当な比率で圧縮する。こうして、データを縮小し、次に該メモリインターフェース106により、該ソリッドステートストレージメディア20に記録、保存する。
このように、本発明の実施例は、圧縮メカニズムの設計を用いることにより、前記ソリッドステートストレージメディア20は圧縮前の数倍の容量のデータを保存することが可能となる。
本発明の実施例の設計において、該システムインターフェース104は伝送するオリジナルデータを圧縮する前に、該オリジナルデータを該第一データバッファ110に一時的に保存する。次に、該システムインターフェース104により一定の伝送速度で該第一データバッファ110からオリジナルデータを読出し圧縮を行う。さらに、圧縮後の縮小データを該第二データバッファ120に伝送し一時保存する。
この時、該マイクロプロセッサ102のコントロールにより、該第二データバッファ120に一時保存される縮小データは、該メモリインターフェース106を通して、該ソリッドステートストレージメディア20に記録、保存される。
反対に、解凍モードにおいては、前記データ圧縮/解凍モジュール108中の解凍メカニズムを利用し、該メモリインターフェース106を通して該ソリッドステートストレージメディア20中から縮小データを読出し、解凍処理を施す。
この時、該第二データバッファ120は解凍しようとする縮小データを一時保存し、該第一データバッファ110は既に解凍され、原状を回復したオリジナルデータを一時保存する。次に、該システムインターフェース104を通して、既に解凍処理が完了し、原状を回復したオリジナルデータを該外部システムエンド2に伝送する。
次に、圧縮・解凍の構成作用を説明すると、図2に示すように、該外部システムエンド2により伝送し、該ソリッドステートストレージメディア20に保存、記録しようとするデータは、オリジナルデータの他に、該オリジナルデータのコントロールデータも同時に保存する必要がある。
一方、該ソリッドステートストレージメディア20は若干のデータ記録ブロック4により構成される。本実施例においては、各データ記録ブロック4は保存空間の528バイトを占める。その内、各データ記録ブロック4は保存データのデータ記録エリア42(512バイトを占め、ハードディスクセクタと同じ大きさ)、及びコントロールデータを保存するコントロール情報記録エリア44(16バイトを占める)を具える。該コントロール情報記録エリア44中に保存するコントロール情報はステータスフラッグ441、エラー修正コード442、ロジックアドレス記録443などのコントロール関連の情報を含む他に、未使用の保留空間444(図2中参照)を含む。本発明は圧縮/解凍の最良の過程において、該保留空間444を利用し、圧縮記録の保存空間とする。
図1に示すデータ圧縮/解凍モジュール108内の詳細は、図3に示すように、データ圧縮回路1082、及び、該データ圧縮回路1082と対応し使用される複数の演算法ディスクリプタ1083a〜1083n、及びパラメータリスト1084a〜1084nを設置する。
前記演算法ディスクリプタ1083a〜1083nは1種の圧縮/解凍演算法を定義し、各一種の圧縮/解凍演算法は多種のパラメータリストを組合せることができ、組成される圧縮の組合せは、オリジナルデータを最小保存単位に圧縮し縮小化データとすることができる。
先ず、図1でのマイクロプロセッサ102により、システムインターフェース104が伝送するオリジナルデータの類型を判断し、最適な圧縮組合せを決定するが、このマイクロプロセッサ102がデータ類型を判読する方式は、オリジナルデータを構成する二進法分布形態に基づき判別する。即ち、オリジナルデータを構成する“0”と“1”バイトがそれぞれ占有する比率と集中、或いは分散の程度、及び特定分布形態の重複現象などの要素に基づき、最適な演算法規則を決定する。
そして、データ類型を判読後は、マイクロプロセッサ102により該演算法ディスクリプタ1083群と該パラメータリスト1084群の配列組合せ中より、データ類型に最適な圧縮演算の組合せを選択し、更に、マイクロプロセッサ102によりデータ圧縮回路1082を通して該最適な圧縮組合せを執行し、オリジナルデータを圧縮する。
これにより、最小保存単位を具える縮小化データとなり、該第二データバッファ120に一時保存され、さらに、該メモリインターフェース106は触発を受け、該縮小化データを該ソリッドステートストレージメディア20に記録、保存し、同時に、該縮小化データの最適演算法ディスクリプタ及びパラメータの索引指標に対応し、該ソリッドステートストレージメディア20中に保存する。
図2において、前記縮小化データは、前記データ記録ブロック4のデータ記録区42中に保存され、本発明の実施例では、圧縮により生じた索引指標を該データ記録ブロック4の保留空間444中に保存する。
前記データ圧縮/解凍モジュール108内にはデータ解凍回路1085を具え、外部システムエンド2においてストレージメディア1のデータを読出し/保存する時、前記マイクロプロセッサ102の触発を通して、該メモリインターフェース106は該ソリッドステートストレージメディア20の保留空間444中より保存済みの索引指標を読み出す。
前記索引指標が指示する演算法ディスクリプタとパラメータリストは、それが対応し保存する縮小化データを解凍し、オリジナルデータに戻し、続いて、前記システムインターフェース104を通して該オリジナルデータを該外部システムエンドに伝送する。
図4、5に示すように、外部から伝送されてきたオリジナルデータが、前記第一データバッファ110に入る時、マイクロプロセッサ102を通してオリジナルデータの二進法分布形態に対して判読を執行する。続いて、該演算法ディスクリプタ1083群と該パラメータリスト1084群中から該分布形態に最適な圧縮組合せを選定する。
本実施例中では、第一演算法ディスクリプタ1083aとそれに組合せ使用される第二パラメータリスト1084bを選定し、図5中フォーマットの圧縮組合せ(1,2)とする。
次に、前記データ圧縮/解凍モジュール108内のデータ圧縮回路1082を起動し、該圧縮組合せ(1,2)を該データ圧縮回路1082によりオリジナルデータ圧縮の依拠とする。
本実施例中では、該圧縮組合せ(1,2)は該オリジナルデータを1/2の比率に圧縮する(仮にオリジナルデータが512バイトの空間を占めるとするなら、圧縮後は256バイトとなる)。これにより、図4でのデータ記録ブロック4において、元は一件のオリジナルデータしか保存できなかったデータ記録区42は、圧縮作業を経過後は、同一のデータ記録区42中において2件の縮小化データを保存することが可能となる。
圧縮後のオリジナルデータを保存する時には同時に、コントロール情報記録エリア44中のステータスフラッグ441、エラー修正コード442、ロジックアドレス記録443は変化しないほかに、保留空間444中において二組の索引指標(1,2)を新たに生じる。この索引指標(1,2)中の第一の数値と第二の数値はそれぞれ縮小化データが適用する第一演算法ディスクリプタと第二パラメータリストを示し、前記索引指標(1,2)によりデータ解読処理を行うことができる。
図4、6に示すように、コントローラがシステムエンドが読み取りを要求するデータを受取った時、該データのロジックアドレス記録443に基づき、該データが対応するロジックアドレスを探し出し、前記ソリッドステートストレージメディア20内に対応し保存する該データ記録ブロック4を決定する。さらに、該ソリッドステートストレージメディア20中より該データ記録ブロック4が保存する内容を読み取り、該第二データバッファ120に送り、続いて、マイクロプロセッサはデータ解凍回路1085を起動する。
この時、前記データ解凍回路1085は同一のデータ記録ブロック4の保留空間444に保存する索引指標(1,2)を読み取り記録し、該索引指標の指示に基づき、第一演算法ディスクリプタと第二パラメータリストを読み取り、該オリジナルデータを正確に解凍する。次に、解凍し原状を回復したオリジナルデータを該第一データバッファ110に伝送し、該外部システムエンド2に伝送する。
本発明の実施例の回路概略図である。 図1中の未圧縮状態のソリッドステートストレージメディアが具えるフォーマットの内容を示す説明図である。 本発明の実施例の作動を説明する回路概略図である。 図3中の圧縮完了後のソリッドステートストレージメディアが具えるフォーマットの内容を示す説明図である。 本発明の実施例の図3における圧縮動態図である。 本発明の実施例の図3における解凍動態図である。 公知の回路概略図である。
符号の説明
1 ストレージデバイス
10 コントローラ
102 マイクロプロセッサ
104 システムインターフェース
106 メモリインターフェース
108 データ圧縮/解凍モジュール
1082 データ圧縮回路
1083a〜n 演算法ディスクリプタ
1083a 第一演算法ディスクリプタ
1083b 第二演算法ディスクリプタ
1083n 第N演算法ディスクリプタ
1084a〜n パラメータリスト
1084a 第一パラメータリスト
1084b 第二パラメータリスト
1084n 第Nパラメータリスト
1085 データ解凍回路
110 第一データバッファ
120 第二データバッファ
20 ソリッドステートストレージメディア
2 外部システムエンド
4 データ記録ブロック
42 データ記録エリア、第一圧縮データ、第二圧縮データ
44 コントロール情報記録エリア
441 ステータスフラッグ
442 エラー修正コード
443 ロジックアドレス記録
444 保留空間
第一組指標(1,2)
第二組指標(1,2)
A ストレージデバイス
A1 コントローラ
A11 システムインターフェース
A12 マイクロプロセッサ
A13 メモリインターフェース
A14 データバッファ
A2 ストレージメディア

Claims (7)

  1. ストレージデバイスはコントローラ、少なくとも1個のソリッドステートストレージメディアにより構成し、
    前記コントローラ内には外部に予め設置するシステムエンドに接続するシステムインターフェース、処理システム指令のマイクロプロセッサ、該ソリッドステートストレージメディアとデータ交換が可能なメモリインターフェースを具え、
    前記システムインターフェースと該メモリインターフェース間には電気的に接続するマイクロプロセッサを配置し、しかもデータ圧縮回路及び該データ圧縮回路と組合せ使用される複数の演算法ディスクリプタ及びパラメータリストのデータ圧縮/解凍モジュールを具え、
    前記マイクロプロセッサにより、システムインターフェースが伝送するオリジナルデータの類型を判読し、該演算法ディスクリプタ及びパラメータリストの配列組合せ中より該オリジナルデータの類型に最適な圧縮機能の組合せを選択し、前記データ圧縮回路は該最適な圧縮組合せに基づき、該オリジナルデータを圧縮し、最小保存単位を具える縮小化データと成し、前記メモリインターフェースの伝送を通して最小保存単位を具えた縮小化データを該ソリッドステートストレージメディアに記録し保存することを特徴とする最良の圧縮管理メカニズムを具えたストレージデバイス。
  2. 前記ソリッドステートストレージメディアは前記縮小化データに対応する最適な演算法ディスクリプタ及びパラメータリストの索引指標を保存することを特徴とする請求項1記載の最良の圧縮管理メカニズムを具えたストレージデバイス。
  3. 前記データ圧縮/解凍モジュールはデータ解凍回路を具え、前記マイクロプロセッサの触発を経て、前記ソリッドステートストレージメディア中から前記索引指標を読み取り、これによりそれが対応保存する縮小化データを前期指標が示す演算法ディスクリプタ及びパラメータリストに基づき、解凍しオリジナルデータに戻すことを特徴とする請求項2記載の最良の圧縮管理メカニズムを具えたストレージデバイス。
  4. 前記ストレージデバイスは第一データバッファを具え、該第一データバッファはシステムインターフェース、マイクロプロセッサ、データ圧縮/解凍モジュールと電気的に接続することを特徴とする請求項1記載の最良の圧縮管理メカニズムを具えたストレージデバイス。
  5. 前記コントローラ内には第二データバッファを具え、該第二データバッファはメモリインターフェース、マイクロプロセッサ、データ圧縮/解凍モジュールと電気的に接続することを特徴とする請求項1記載の最良の圧縮管理メカニズムを具えたストレージデバイス。
  6. 前記データ圧縮/解凍モジュールは前記コントローラ内に配置することを特徴とする請求項1記載の最良の圧縮管理メカニズムを具えたストレージデバイス。
  7. 前記マイクロプロセッサは前記オリジナルデータを構成する二進法分布形態を判読の依拠とすることを特徴とする請求項1記載の最良の圧縮管理メカニズムを具えたストレージデバイス。
JP2003282464A 2003-06-05 2003-07-30 最良の圧縮管理メカニズムを具えたストレージデバイス Pending JP2004362530A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW092115319A TWI220959B (en) 2003-06-05 2003-06-05 Storage device with optimized compression management mechanism

Publications (1)

Publication Number Publication Date
JP2004362530A true JP2004362530A (ja) 2004-12-24

Family

ID=33488669

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003282464A Pending JP2004362530A (ja) 2003-06-05 2003-07-30 最良の圧縮管理メカニズムを具えたストレージデバイス

Country Status (5)

Country Link
US (1) US20040250009A1 (ja)
JP (1) JP2004362530A (ja)
KR (1) KR20040105529A (ja)
DE (1) DE10339225A1 (ja)
TW (1) TWI220959B (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010518491A (ja) * 2007-01-31 2010-05-27 マイクロソフト コーポレーション フラッシュドライブの寿命の延長
JP2014116015A (ja) * 2012-12-11 2014-06-26 Samsung Electronics Co Ltd メモリ制御器及びそれを含むメモリシステム
US9535625B2 (en) 2007-03-06 2017-01-03 Bohdan Raciborski Selectively utilizing a plurality of disparate solid state storage locations

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3981066B2 (ja) * 2003-11-07 2007-09-26 株式会社東芝 ホスト機器、メモリカード、メモリ容量変更方法及びメモリ容量変更プログラム
US7162583B2 (en) * 2003-12-29 2007-01-09 Intel Corporation Mechanism to store reordered data with compression
US7860749B2 (en) * 2004-04-16 2010-12-28 Sap Ag Method, medium and system for customizable homepages for network-based auctions
US7877313B2 (en) * 2004-04-16 2011-01-25 Sap Ag Method and system for a failure recovery framework for interfacing with network-based auctions
US7627500B2 (en) * 2004-04-16 2009-12-01 Sap Ag Method and system for verifying quantities for enhanced network-based auctions
US7788160B2 (en) * 2004-04-16 2010-08-31 Sap Ag Method and system for configurable options in enhanced network-based auctions
US7783520B2 (en) * 2004-04-16 2010-08-24 Sap Ag Methods of accessing information for listing a product on a network based auction service
TWI228257B (en) * 2004-05-06 2005-02-21 Carry Computer Eng Co Ltd Silicon storage media, controller, and access method thereof
US8095428B2 (en) 2005-10-31 2012-01-10 Sap Ag Method, system, and medium for winning bid evaluation in an auction
US7895115B2 (en) 2005-10-31 2011-02-22 Sap Ag Method and system for implementing multiple auctions for a product on a seller's E-commerce site
US8095449B2 (en) 2005-11-03 2012-01-10 Sap Ag Method and system for generating an auction using a product catalog in an integrated internal auction system
US7835977B2 (en) * 2005-11-03 2010-11-16 Sap Ag Method and system for generating an auction using a template in an integrated internal auction system
US8155315B2 (en) * 2006-01-26 2012-04-10 Rovi Solutions Corporation Apparatus for and a method of downloading media content
US7692975B2 (en) 2008-05-09 2010-04-06 Micron Technology, Inc. System and method for mitigating reverse bias leakage
US9772936B2 (en) 2008-07-10 2017-09-26 Micron Technology, Inc. Data collection and compression in a solid state storage device
US9135168B2 (en) * 2010-07-07 2015-09-15 Marvell World Trade Ltd. Apparatus and method for generating descriptors to reaccess a non-volatile semiconductor memory of a storage drive due to an error
US8868852B2 (en) * 2010-07-07 2014-10-21 Marvell World Trade Ltd. Interface management control systems and methods for non-volatile semiconductor memory
US9141538B2 (en) * 2010-07-07 2015-09-22 Marvell World Trade Ltd. Apparatus and method for generating descriptors to transfer data to and from non-volatile semiconductor memory of a storage drive
US8725933B2 (en) * 2011-07-01 2014-05-13 Intel Corporation Method to detect uncompressible data in mass storage device
WO2012113206A1 (zh) * 2011-08-15 2012-08-30 展讯通信(上海)有限公司 移动终端中请求页面调度方法、控制器以及移动终端
US9053018B2 (en) * 2012-06-29 2015-06-09 International Business Machines Corporation Compressed memory page selection based on a population count of a dataset
CN103051341B (zh) * 2012-12-31 2016-01-27 华为技术有限公司 数据编码装置及方法、数据解码装置及方法
KR101992274B1 (ko) * 2013-01-02 2019-09-30 삼성전자주식회사 데이터 압축 방법과 상기 방법을 수행할 수 있는 장치들
TWI493446B (zh) * 2013-09-23 2015-07-21 Mstar Semiconductor Inc 記憶體管理方法及記憶體管理裝置
KR102078853B1 (ko) * 2013-11-27 2020-02-18 삼성전자 주식회사 메모리 시스템, 호스트 시스템 및 메모리 시스템에서의 라이트 동작 수행 방법
TWI534814B (zh) * 2014-10-20 2016-05-21 群聯電子股份有限公司 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置
CN105630687B (zh) * 2014-10-27 2019-01-08 群联电子股份有限公司 数据写入方法、存储器控制电路单元与存储器存储装置
US9552384B2 (en) 2015-06-19 2017-01-24 HGST Netherlands B.V. Apparatus and method for single pass entropy detection on data transfer
US10152389B2 (en) 2015-06-19 2018-12-11 Western Digital Technologies, Inc. Apparatus and method for inline compression and deduplication
CN111984192A (zh) * 2020-08-10 2020-11-24 杭州电子科技大学 一种带数据压缩解压的sd卡及其数据存储方法
US11928346B2 (en) 2021-10-05 2024-03-12 International Business Machines Corporation Storage optimization based on references

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5357614A (en) * 1992-09-17 1994-10-18 Rexon/Tecmar, Inc. Data compression controller
US5374916A (en) * 1992-12-18 1994-12-20 Apple Computer, Inc. Automatic electronic data type identification process
US7538694B2 (en) * 1999-01-29 2009-05-26 Mossman Holdings Llc Network device with improved storage density and access speed using compression techniques
US6145069A (en) * 1999-01-29 2000-11-07 Interactive Silicon, Inc. Parallel decompression and compression system and method for improving storage density and access speed for non-volatile memory and embedded memory devices
US6577254B2 (en) * 2001-11-14 2003-06-10 Hewlett-Packard Development Company, L.P. Data compression/decompression system
US6847315B2 (en) * 2003-04-17 2005-01-25 International Business Machines Corporation Nonuniform compression span

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010518491A (ja) * 2007-01-31 2010-05-27 マイクロソフト コーポレーション フラッシュドライブの寿命の延長
US8560760B2 (en) 2007-01-31 2013-10-15 Microsoft Corporation Extending flash drive lifespan
US9535625B2 (en) 2007-03-06 2017-01-03 Bohdan Raciborski Selectively utilizing a plurality of disparate solid state storage locations
JP2014116015A (ja) * 2012-12-11 2014-06-26 Samsung Electronics Co Ltd メモリ制御器及びそれを含むメモリシステム

Also Published As

Publication number Publication date
KR20040105529A (ko) 2004-12-16
TW200428269A (en) 2004-12-16
DE10339225A1 (de) 2004-12-23
US20040250009A1 (en) 2004-12-09
TWI220959B (en) 2004-09-11

Similar Documents

Publication Publication Date Title
JP2004362530A (ja) 最良の圧縮管理メカニズムを具えたストレージデバイス
US5627783A (en) Semiconductor disk device
JP4551217B2 (ja) データ格納システムにおけるシンボル頻度の同レベル化
US7039754B2 (en) Detachably mounted removable data storage device
US20130073816A1 (en) Method of storing data in a storage medium and data storage device including the storage medium
US10838854B2 (en) Data storage device and operating method thereof
US20070168603A1 (en) Information recording apparatus and control method thereof
KR20200025184A (ko) 불휘발성 메모리 장치, 이를 포함하는 데이터 저장 장치 및 그 동작 방법
US20180239557A1 (en) Nonvolatile memory device, data storage device including the same, and operating method of data storage device
US20070168602A1 (en) Information storage device and its control method
JP2007193449A (ja) 情報記録装置及びその制御方法
JP2004362534A (ja) 伝送レートを高速化可能なストレージデバイス
KR20200129863A (ko) 컨트롤러, 메모리 시스템 및 그것의 동작 방법
US20070168604A1 (en) Information recording apparatus and method for controlling the same
JP2007193439A (ja) 不揮発性キャッシュメモリを用いる記憶装置とその制御方法
US20060095660A1 (en) Media storage apparatus, cache segment switching method of media storage apparatus, and media storage system
CN102591737B (zh) 数据写入与读取方法、存储器控制器与存储器储存装置
US20190213075A1 (en) Memory system
US7062603B2 (en) External storage device for selectively storing data between first and second recording media
KR102270103B1 (ko) 데이터 저장 장치 및 그것의 동작 방법
US7716412B2 (en) Data storage apparatus and data access method for controlling address information for data writing using a free area control table
JP3100146U (ja) 圧縮管理メカニズムを具えたストレージデバイス
US20070250661A1 (en) Data recording apparatus and method of controlling the same
JP2004362531A (ja) 保存容量を拡張可能なストレージデバイス
JP3100145U (ja) 拡張可能なストレージデバイス

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20051115

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080123

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080205

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080627