JPH0855063A - 記憶装置のデータ保証方法 - Google Patents

記憶装置のデータ保証方法

Info

Publication number
JPH0855063A
JPH0855063A JP18808294A JP18808294A JPH0855063A JP H0855063 A JPH0855063 A JP H0855063A JP 18808294 A JP18808294 A JP 18808294A JP 18808294 A JP18808294 A JP 18808294A JP H0855063 A JPH0855063 A JP H0855063A
Authority
JP
Japan
Prior art keywords
data
redundant
write
compressed
compression
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
JP18808294A
Other languages
English (en)
Inventor
Kiyousuke Achiwa
恭介 阿知和
Akira Yamamoto
山本  彰
Hirotake Yamagata
博健 山形
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP18808294A priority Critical patent/JPH0855063A/ja
Publication of JPH0855063A publication Critical patent/JPH0855063A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

(57)【要約】 【目的】 圧縮機能付フラッシュディスクにおいて、ホ
ストコンピュータからのライトデータがフラッシュメモ
リに正しく格納できていることを保証できるようにす
る。 【構成】 ホストコンピュータ1000からのライトデータ
に冗長データを付加して圧縮し、それを伸長して元のデ
ータと比較することで、圧縮処理が正しく行なわれてい
ることを保証し、更に、圧縮したデータに冗長データを
付加してフラッシュメモリ1050に書き込み、それをリー
ドして書き込み前のデータと比較することで、フラッシ
ュメモリ1050に正しくライトされていることを保証す
る。以上の2つの保証により、ホストコンピュータ1000
からのライトデータが正しく圧縮され、正しくフラッシ
ュメモリに書き込まれたことを保証できる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、圧縮機能付記憶装置に
おけるデータ保証方法に係り、特に記憶媒体に格納され
たデータが、ホストコンピュータからのライトデータを
正しく圧縮されて格納されたものであることを保証する
データ保証方法に関する。
【0002】
【従来の技術】コンピュータシステムにおいて、ホスト
コンピュータから受けとった書き込みデータが正しく格
納できていることを保証しなくてはならない。
【0003】日経エレクトロニクス、1987.6.15,pp.77
(以下〔日経〕と略す)には、 DAT (Digital Audio Tap
e-recorder)の磁気テープを外部記憶用に使った記憶装
置が記載されており、この記憶装置では、書き込みにリ
ードアフターライトが適用されている。リードアフター
ライトとは、いったん書き込んだデータを読み出して、
リードが失敗しなければ、正しく格納されたと判定する
方法である。ただし、この方法では、ホストコンピュー
タから受けとった書き込みデータが正しく媒体上に格納
されたかどうかはチェックされない。
【0004】一方、ディスクでは、書き込みの度に媒体
上に格納した書き込みデータを読み出してチェックする
ことは行なわず、パリティやECC(Error Correcting Co
de)等の冗長データを付加してデータを格納し、次にデ
ータを読みだしたときに冗長データによるエラーチェッ
クや誤り訂正を行なう。これらの場合、ホストコンピュ
ータから受けとった書き込みデータが正しく格納されて
いることを保証できない。また、リードしたデータがEC
Cによるデータ訂正能力を越えてデータ化けを起こして
いたときには、正しいデータが得られない。
【0005】日立製作所の操作マニュアルHITAC H-6581
-C3 形 ディスク制御装置 H-6587形 ディスク制御装置
H-6586形ディスク制御装置 H-6585 形 ディスク制御装
置H-8598 形 ディスク制御装置,pp.72-77 (以下〔日
立〕と略す)には、ECCを利用したデータフォーマット例
が示されている。
【0006】また、コンピュータシステムにおいて、ビ
ットコスト軽減のために、データを圧縮して、記憶装置
に格納することがある。PCT/US90/00728 には、データ
を圧縮して格納する磁気テープ装置において、いったん
圧縮したデータを伸長し、圧縮する前のデータと比較す
ることでデータが正しく圧縮されたことを保証する方法
が開示されている。
【0007】
【発明が解決しようとする課題】上記従来技術〔日経〕
では、記憶媒体に格納した書き込みデータがリードでき
るかどうかのチェックしか行なっておらず、データ化け
については考慮していないため、記憶媒体に書き込まれ
たデータが正しく格納されたかどうかを厳密に保証する
ことはできないという問題があった。
【0008】上記従来技術〔日立〕では、記憶媒体に格
納した書き込みデータが正しく格納されたかどうかのチ
ェックを行なっていないため、記憶媒体に書き込まれた
データが正しく格納されたかどうかを保証できないとい
う問題があった。
【0009】上記従来技術〔日経〕、〔日立〕、及び
〔PCT/US90/00728〕では、データを圧縮して記憶媒体に
格納する圧縮機能付記憶装置において、ホストコンピュ
ーターからのライトデータが正しく圧縮されて記憶媒体
に格納されていることを保証できないという問題があっ
た。また、上記従来技術〔PCT/US90/00728〕では、デー
タを全て比較するため、比較に時間がかかるという問題
があった。
【0010】本発明の第1の目的は、記憶媒体に書き込
んだデータが正しいことを保証できるデータ保証方法を
提供することである。さらに、本発明はデータを圧縮し
て記憶媒体に格納する圧縮機能付記憶装置においても、
ホストコンピュータからのライトデータが正しく圧縮さ
れて記憶媒体に格納されていることを保証できるデータ
保証方法を提供する。
【0011】本発明の第2の目的は、データを圧縮して
記憶媒体に格納する圧縮機能付記憶装置において、ホス
トコンピュータからのライトデータが正しく圧縮されて
記憶媒体に格納されていることを高速に保証できるデー
タ保証方法を提供することである。
【0012】
【課題を解決するための手段】上記第1の目的を達成す
るために、本発明のデータ保証方法では、記憶媒体へホ
ストコンピュータから受けとったライトデータを格納す
るステップと、格納したライトデータを読み出すステッ
プと、ホストコンピュータから受けとったデータの内容
と読みだしたデータの内容を直接比較するステップを設
ける。上記従来技術〔PCT/US90/00728〕には、ホストコ
ンピュータから受けとったデータの内容と読みだしたデ
ータの内容を直接比較するステップはなかった。また、
〔日経〕は記憶媒体に格納したデータを保証するわけで
はなく、圧縮処理が正しく行なわれていることを保証す
るだけである。さらに、データを圧縮して記憶媒体に格
納する圧縮機能付記憶装置では、ホストコンピュータか
ら受けとったライトデータを圧縮するステップ、記憶媒
体に圧縮したデータを格納するステップ、格納したデー
タを読み出すステップ、読み出したデータを伸長するス
テップ、及び伸長したデータとホストコンピュータから
受けとったライトデータを比較するステップを設ける。
【0013】上記第2の目的を達成するために、本発明
のデータ保証方法では、圧縮したいデータから冗長デー
タを生成するステップ、データを圧縮するステップ、記
憶媒体にデータを書き込むステップ、書き込んだデータ
を読み出すステップ、読み出したデータを伸長するステ
ップ、伸長したデータから冗長データを生成するステッ
プ、及び圧縮したいデータから生成した冗長データと圧
縮前のデータから生成した冗長データとを比較するステ
ップを設ける。
【0014】
【作用】上記第1の目的を達成するために、本発明で
は、データ書き込み手段が記憶媒体にデータを書き込
み、データ読みだし手段が書き込んだデータを読み出
し、データ比較手段が書き込む前のデータと読みだした
データを比較する。その結果、記憶媒体に書き込んだデ
ータが正しくなければ、それをリードしたデータも正し
くないので、これを書き込む前のデータと比較した時に
異常を検出できる。逆に、双方のデータを比較した結
果、同じになれば、記憶媒体内のデータが正しく格納さ
れたことを保証できる。また、圧縮機能付の記憶装置で
は、データ圧縮手段がデータを圧縮し、データ書き込み
手段が記憶媒体にデータを書き込み、データ読みだし手
段が書き込んだデータを読みだし、データ伸長手段が読
みだしたデータを伸長する。そして、データ比較手段が
伸長したデータと圧縮する前のデータを比較する。双方
のデータを比較した比較した結果、同じであれば、記憶
媒体内のデータが正しく圧縮され、かつ、正しく格納さ
れたことを保証できる。
【0015】上記第2の目的を達成するために、本発明
では、まず、冗長データ生成手段が圧縮したいデータよ
り冗長データを生成する。そして、データ圧縮手段がデ
ータを圧縮して、書き込み手段が圧縮したデータを記憶
媒体に書き込む。さらに、読みだし手段が書き込んだデ
ータを読みだし、データ伸長手段が読みだしたデータを
伸長する。冗長データ生成手段が伸長したデータより冗
長データを生成する。本発明では、冗長データの生成と
データの伸長とが並行して行なわれるため、処理時間が
短縮される。そして、伸長したデータの冗長データと、
圧縮前のデータの冗長データとの比較が行なわれる。双
方の冗長データを比較した結果、同じであれば、記憶媒
体内のデータが正しく圧縮され、かつ、正しく格納され
ていることを保証できる。なお、データの冗長データ部
分は、データ部分と較べてかなり小さいので、比較に要
する時間も短縮される。
【0016】
【実施例】
第1の実施例 図1は、本発明を適用した圧縮機能付フラッシュディス
ク1010の構成例、及びそこで実施される処理の概要であ
る。圧縮機能付フラッシュディスク1010は、ホストコン
ピュータ1000よりアクセスできる外部記憶装置であり、
CPU1030、データの圧縮及び伸長の機能を持つ圧縮伸長
装置1040、データを格納するフラッシュメモリ1050、メ
モリ1060、及びデータから冗長データを生成して元のデ
ータに付加する冗長データ生成装置1080より構成され
る。
【0017】次に、図2〜図7を用いて、ホストコンピ
ュータ1000からライト要求があったときに、圧縮機能付
フラッシュディスク1010で生成されるデータを説明す
る。まず、図2は、圧縮機能付フラッシュディスク1010
がホストコンピュータ1000から受けとったライトデータ
1105と、ライトデータ1105から生成された圧縮元冗長デ
ータ1110からなる圧縮元データ1100を示す。
【0018】図3は、圧縮元データ1100を圧縮したデー
タである圧縮データ1120と、圧縮データ1120から生成さ
れる圧縮冗長データ1130からなるフラッシュライトデー
タ1140を示す。図4は、フラッシュライトデータ1140を
フラッシュメモリ1050に格納した格納データ1150を示
す。
【0019】図5は、フラッシュメモリ1050上の格納デ
ータ1150である比較リードデータ1160を示す。比較リー
ドデータ1160はデータ化けを起こしていなければフラッ
シュライトデータ1140と同じになる。比較リードデータ
1160の内、圧縮データ1120に相当する部分を比較圧縮デ
ータ1175と呼び、圧縮冗長データ1130に相当する部分を
比較リード冗長データ1170と呼ぶ。また、比較圧縮デー
タ1120から生成される冗長データを新比較リード冗長デ
ータ1171と呼ぶ。
【0020】図6は、圧縮データ1120を伸長した比較伸
長データ1180を示す。比較伸長データ1180は、データ化
けを起こしていなければ圧縮元データ1100と同じにな
る。比較伸長データ1180の内、ライトデータ1105に相当
する部分を比較ライトデータ1181と呼び、圧縮元冗長デ
ータ1110に相当する部分を比較伸長冗長データ1190と呼
ぶ。また、比較ライトデータ1181から生成される冗長デ
ータを新比較伸長冗長データ1191と呼ぶ。
【0021】図7は、比較圧縮データ1175を伸長した比
較伸長データA1185を示す。比較伸長データA1185は、デ
ータ化けを起こしていなければ圧縮元データ1100と同じ
になる。比較伸長データA1185の内、ライトデータ1105
に相当する部分を比較ライトデータA1186と呼び、圧縮
元冗長データ1110に相当する部分を比較伸長冗長データ
1190Aと呼ぶ。また、比較ライトデータA1186から生成さ
れる冗長データを新比較伸長冗長データA1196と呼ぶ。
【0022】次に、図1を用いて、本発明の処理の概要
を説明する。CPU1030上の圧縮ライト処理3000は、冗長
データ生成装置1080を用いてホストコンピュータ1000か
ら受けとったライトデータ1105に冗長データを付加して
圧縮元データ1100を生成する。圧縮ライト処理3000は、
さらに、圧縮伸長装置1040を用いて圧縮元データ1100を
圧縮して圧縮データ1120を生成し、冗長データ生成装置
1080を用いて圧縮データ1120に冗長データを付加し、そ
の結果をフラッシュメモリ1050に格納する。データが正
しくライトされた場合、格納データ1150はフラッシュラ
イトデータ1140と同じになる。
【0023】ここで、圧縮機能付フラッシュディスク10
10としては、圧縮元データ1100が正しく圧縮されて、正
しくフラッシュメモリ1050に格納されていること、つま
り、格納データ1150をリードして、リードした比較リー
ドデータ1160の圧縮データ1120に相当する部分を伸長す
ると、ホストコンピュータ1000から受けとったライトデ
ータ1105と同じデータが得られることを保証したい。そ
のために、格納データ1150をリードし、その内の比較圧
縮データ1120を伸長して比較伸長データA1185を生成
し、圧縮元データ1100と比較すればよい。つまり、比較
伸長データA1185は格納データ1150から生成されたデー
タであるため、比較伸長データA1185と圧縮元データ110
0が同じであると判定されれば、フラッシュメモリ1050
に格納されているデータが正しく圧縮され、格納されて
いると保証できる。
【0024】そこで、圧縮ライト処理3000は、格納デー
タ1150を読みだし、圧縮伸長装置1040を用いて伸長して
比較伸長データA1185を生成し、これとライトデータ110
5に冗長データを付加した圧縮元データ1100とを比較す
る。双方のデータの比較の結果、同じであれば、圧縮及
びフラッシュメモリ1050へのライトは正常であると判定
される。
【0025】次に、図8、及び図9を用いて、圧縮機能
付フラッシュディスク1010における圧縮ライト処理3000
を詳細に説明する。圧縮ライト処理3000には、データ圧
縮処理、フラッシュメモリ1050へのライト処理、及びデ
ータ保証処理が含まれる。図8は、本実施例の圧縮ライ
ト処理3000のフローチャートである。まず、ステップ22
00では、ホストコンピュータ1000からのライトデータ11
05に圧縮元冗長データ1110を付加して圧縮元データ1100
を生成するための要求が、冗長データ生成装置1080に発
行され、圧縮元データ1100生成後、それを圧縮するため
の要求が、圧縮伸長装置1040に発行される。ステップ22
10は、圧縮完了を待つ状態である。もちろん、圧縮完了
時には冗長データの生成はすでに終っている。ステップ
2220では、圧縮データ1120に圧縮冗長データ1130を付加
してフラッシュライトデータ1140を生成するための要求
が、冗長データ生成装置1080に発行され、フラッシュラ
イトデータ1140生成後、それを格納するための要求が、
フラッシュメモリ1050に発行される。ステップ2230は、
フラッシュメモリ1050のライト完了を待つ状態である。
ステップ2240では、フラッシュメモリ1050上の格納デー
タ1150をリードするための要求が、フラッシュメモリ10
50に発行され、ステップ2250では、リード完了を待つ状
態となる。さらに、ステップ2260では、比較圧縮データ
1120を伸長するための要求が、圧縮伸長装置1040に発行
される。ステップ2270では、比較伸長データA1185の伸
長された部分と、それに対応する圧縮元データ1100とが
比較される。ステップ2280では、上記の比較の結果、双
方のデータが同じでなければ、ステップ2200にジャンプ
して、圧縮ライト処理3000をやり直す。双方のデータが
同じであると判定されれば、ステップ2290で、比較伸長
データA1185と圧縮元データ1100との比較が全て完了し
たかどうかが判定され、まだであれば、ステップ2270に
ジャンプする。比較が全て完了していれば、フラッシュ
メモリ1050にデータが正しく格納できたと判断されるの
で、圧縮ライト処理3000は終了する。
【0026】図9は、本実施例における、データ保証を
行う圧縮処理およびライト処理のタイミングチャートで
ある。まず、Te部分では、ホストコンピュータ1000から
のライトデータに冗長データが付加されて(ステップ40
00)、圧縮される(ステップ4010)。Tf部分では、圧縮
されたデータに冗長データが付加されて(ステップ402
0)、フラッシュメモリ1050へライトされる(ステップ4
030)。Tg部分では、データ保証を行なうために、フラ
ッシュメモリ1050に格納されたデータがリードされて
(ステップ4040)、伸長され(ステップ4050)、その結
果が圧縮元データ1100と比較される(ステップ4060)。
【0027】ここで、伸長されたデータと圧縮元データ
1100との比較処理(ステップ4060)は、伸長処理(ステ
ップ4050)が全て終るまで待つ必要は無く、伸長処理
(ステップ4050)の終了した部分のデータから行なえば
よいので、これらの処理は並行して行なうことができ
る。このため、図9に示すように、Tgはフラッシュメモ
リ1050のリード時間(ステップ4040)と比較時間(ステ
ップ4060)からなり、伸長時間(ステップ4050)は比較
時間(ステップ4060)に隠蔽される。
【0028】第2の実施例 第1の実施例では、図8のステップ2270でデータを比較
するとき、データ全体の比較を行なっていた。第1の実
施例の方法は、データ保証がより正確に行なえる一方
で、データ比較処理に多くの時間がかかる恐れがある。
第2の実施例では、データ比較のときに、データ全体を
比較するのではなく、データから生成される冗長データ
のみが比較される。第2の実施例の方法は、第1の実施
例の方法に較べて、データ保証の正確さは減るが、より
高速な処理が可能である。
【0029】以下、第1の実施例と異なる点のみを説明
する。図10は、第2の実施例における圧縮機能付フラ
ッシュディスク1010の構成例、及びそこで実施される処
理の概要である。図10では、データを圧縮して、フラ
ッシュメモリ1050から格納データ1150を読みだし、デー
タを伸長して比較伸長データA1185を生成するまでの処
理は、第1の実施例と同じである。その後、CPU1030上
の圧縮ライト処理Aは、冗長データ生成装置1080を用い
て、比較伸長データA1185から新比較伸長冗長データA11
96を生成する。圧縮ライト処理A3001は、ライトデータ1
105から生成した圧縮元冗長データ1110と新比較伸長冗
長データA1196とを比較して、双方のデータが同じであ
れば、フラッシュメモリ1050上に正しいデータが格納で
きたと判定する。
【0030】圧縮ライト処理A3001の詳細を示す図11
では、ステップ2260で比較圧縮データ1120を伸長するた
めの要求を発行するまでの処理は第1の実施例と同じで
ある。ステップ2300は伸長完了までの待ち状態であり、
ステップ2310では、CPU1030は、冗長データ生成装置108
0に対して、新比較伸長冗長データA1196を生成するため
の要求を発行し、ステップ2320は生成完了までの待ち状
態となる。ステップ2330では、CPU1030は、比較伸長冗
長データA1195と圧縮元冗長データ1110とを比較する。
ステップ2340での比較の結果、双方のデータが同じでな
ければステップ2200にジャンプして、圧縮ライト処理A
をやり直す。双方のデータが同じであれば、フラッシュ
メモリ1050にデータが正しく格納されているので、圧縮
ライト処理A3001は終了する。
【0031】図11の処理に対応するタイミングチャー
トを示した図12を図9と比較すると、最後のデータ比
較の部分が、新比較伸長冗長データA1196の生成(ステ
ップ4110)+圧縮元冗長データ1110と比較伸長冗長デー
タ1190の比較(ステップ4120)になり、Tgが短くなって
TgAとなる。データを圧縮してライトする処理のトータ
ル時間は、データ保証を入れることにより、TgA分だけ
長くなる。
【0032】第3の実施例 第1の実施例では、圧縮処理とライト処理分まとめて1
回の比較を行っているが、本実施例では、圧縮部分とフ
ラッシュメモリ1050へのライト部分とでそれぞれ別々に
比較を行なって、データ保証の処理と通常のライト処理
とをできるだけ並行に処理することで、データ保証のた
めに余計にかかる時間を短縮する。
【0033】本実施例における圧縮+ライト処理は大ま
かに、次の4つの部分に分かれる。 (1)冗長データを付加して圧縮するステップ (2)圧縮したデータを伸長し、それを圧縮前のデータ
と比較するステップ (3)圧縮したデータに冗長データを付加してフラッシ
ュメモリ1050に書き込むステップ (4)フラッシュメモリ1050から格納されているデータ
を読みだし、書き込む前のデータと比較するステップ 本実施例では、上記のステップの内、(2)と(3)のステッ
プが並行に行なわれる。本実施例においても、図1の圧
縮機能付フラッシュディスク1010のハードウエア構成を
使用できる。
【0034】図13を用いて、本実施例における発明の
概要を説明する。CPU1030の圧縮ライト処理B3002は、冗
長データ生成装置1080を用いて、ホストコンピュータ10
00からのライトデータ1105に冗長データを付加し、圧縮
伸長装置1040を用いて、圧縮元データ1100を圧縮して圧
縮データ1120を生成する。圧縮ライト処理B3002は、圧
縮伸長装置1040を用いて、圧縮データ1120を伸長して比
較伸長データ1180を生成し、これとライトデータ1105に
冗長データを付加した圧縮元データ1100とを比較する。
比較の結果、双方のデータが同じであれば、データ圧縮
が正しく行なわれたと判定される。
【0035】圧縮元データ1100と比較伸長データ1180と
の比較動作と並行して、CPU1030の圧縮ライト処理B3002
は、冗長データ生成装置1080を用いて、圧縮データ1120
に冗長データを付加してフラッシュメモリ1050に格納す
る。正しくデータが格納された場合、フラッシュメモリ
1050に格納されているデータである格納データ1150は、
圧縮データ1120に冗長データに付加したフラッシュライ
トデータ1140と同じになる。その後、圧縮ライト処理B3
002は、フラッシュメモリ1050から格納データ1150を読
みだし、これと圧縮データ1120に圧縮冗長データ1130を
付加したフラッシュライトデータ1140とを比較する。比
較の結果、双方のデータが同じであれば、フラッシュメ
モリ1050へのライトが正しく行なわれたと判定される。
【0036】上記の処理により、圧縮データ1120は圧縮
元データ1100を正しく圧縮したものであり、格納データ
1150はフラッシュライトデータ1140を正しく格納したも
のであることがわかる。つまり、格納データ1150はライ
トデータ1105を正しく圧縮し、正しくフラッシュメモリ
1050に格納されたものであると保証できる。
【0037】次に、図14及び図15を用いて、圧縮機
能付フラッシュディスク1010の圧縮ライト処理B3002の
詳細を説明する。圧縮ライト処理B3002には、圧縮処
理、フラッシュメモリ1050へのライト処理、及びデータ
保証処理が含まれる。
【0038】図14は、圧縮ライト処理B3002のフロー
チャートである。まず、ステップ2000では、ホストコン
ピュータ1000からのライトデータ1105に圧縮元冗長デー
タ1110を付加して圧縮元データ1100を生成するための要
求が、冗長データ生成装置1080に発行され、圧縮元デー
タ1100生成後、それを圧縮するための要求が、圧縮伸長
装置1040に発行される。ステップ2010は、圧縮完了を待
つ状態である。もちろん、圧縮完了時には冗長データの
生成はすでに終っている。ステップ2020では、圧縮デー
タ1120に圧縮冗長データ1130を付加してフラッシュライ
トデータ1140を生成するための要求が、冗長データ生成
装置1080に発行され、フラッシュライトデータ1140生成
後、それを格納するための要求が、フラッシュメモリ10
50に発行される。ステップ2030では、ライト完了を待た
ずに、圧縮伸長装置1040に対して圧縮データを伸長する
ための要求が発行される。圧縮元データ1100と比較伸長
データ1180とを比較して(ステップ2040)、双方のデー
タが異なっていればステップ2000にジャンプして圧縮ラ
イト処理B3002をリトライし、双方が同じデータと判定
されればステップ2060に進む(ステップ2050)。その
後、ステップ2060では、フラッシュメモリ1050へのライ
ト完了を待つ状態となる。ステップ2070では、フラッシ
ュメモリ1050に対し、格納データ1150のリード要求が発
行され、ステップ2080では、フラッシュライトデータ11
40と比較伸長データ1180とが比較される。判定の結果、
双方のデータが同じと判定されなければ、ステップ2000
にジャンプして圧縮ライト処理B3002をリトライし、双
方のデータが同じと判定されれば、圧縮ライト処理は終
了する(ステップ2090)。
【0039】図15は、データ保証を含む圧縮ライト処
理B3002のタイミングチャートである。ただし、このタ
イミングチャートでは、フラッシュメモリ1050へのライ
ト時間が比較伸長データ1180と圧縮元データ1100の比較
時間よりも長いものとしている。
【0040】まず、Ta部分では、ホストコンピュータ10
00からのライトデータに冗長データを付加して圧縮元デ
ータ1100が生成され(ステップ4000)、データが圧縮
(ステップ4010)された後、冗長データの付加によるフ
ラッシュライトデータ1140の生成(ステップ4020)とフ
ラッシュメモリ1050へのライト(Tb部分+Tc部分、ステ
ップ4030)との処理と並行して、圧縮データ1120の伸長
による比較伸長データ1180の生成(ステップ4050)、及
び、圧縮元データ1100と比較伸長データ1180との比較が
行なわれる(Tb部分、ステップ4060)。ただし、圧縮元
データ1100と比較伸長データ1180との比較処理(ステッ
プ4060)は、伸長処理(ステップ4050)と並行に行なう
ことができる。フラッシュメモリ1050へのライト(ステ
ップ4030)の終了後、格納データ1150がリードされて
(ステップ4040)、圧縮データと比較リードデータ1160
とが比較される(Td部分、ステップ4200)。ただし、比
較処理(ステップ4200)は、リード処理(ステップ404
0)と並行に行なうことができる。上記の処理により、
第1の実施例と比較して、データ保証も含めたライト処
理全体で必要な時間は、フラッシュメモリ1050のリード
時間(ステップ4040)と、圧縮したデータの比較に要す
る比較時間(ステップ4060)の短縮分だけ短くなる。
【0041】また、本実施例では、フラッシュメモリ10
50へのライトのデータ保証が行なわれず、データの圧縮
の前後のみを比較するので、図9のTdの部分が不要とな
るため、データ保証をしない場合と処理時間が同じにな
る。
【0042】第4の実施例 第3の実施例では、図14のステップ2040とステップ20
80でデータを比較する時に、データ全体の比較を行なっ
ていた。図14の方法は、データ保証がより正確に行な
える一方で、データ比較処理に多くの時間がかかる恐れ
がある。第4の実施例では、データ比較のときに、デー
タ全体を比較するのではなく、データから生成した冗長
データのみが比較される。第4の実施例の方法は、第3
の実施例の方法に較べて、データ保証の正確さは減る
が、高速な処理が可能である。
【0043】次に、図16を用いて、第4の実施例にお
ける発明の概要を説明する。CPU1030の圧縮ライト処理C
3003は、冗長データ生成装置1080を用いて、ホストコン
ピュータ1000からのライトデータ1105に冗長データを付
加し、圧縮伸長装置1040を用いて、圧縮元データ1100を
圧縮して圧縮データ1120を生成する。圧縮ライト処理C3
003は、圧縮伸長装置1040を用いて、圧縮データ1120を
伸長して比較伸長データ1180を生成し、冗長データ生成
装置1080を用いて、比較伸長データ1180より新比較伸長
冗長データ1191を生成する。圧縮ライト処理C3003は、
ライトデータ1105から生成された圧縮元冗長データ1110
と新比較伸長冗長データ1191とを比較する。比較の結
果、双方のデータが同じであれば、圧縮が正しく行なわ
れたと判定される。
【0044】一方、圧縮データ1120の伸長処理、及び圧
縮元冗長データ1110と新比較伸長冗長データ1191との比
較処理と並行して、CPU1030の圧縮ライト処理C3003は、
冗長データ生成装置1080を用いて、圧縮データ1120に冗
長データを付加してフラッシュメモリ1050に格納する。
データが正しく格納された場合、フラッシュメモリ1050
に格納されているデータである格納データ1150は、圧縮
データ1120に冗長データに付加したフラッシュライトデ
ータ1140と同じになる。その後、圧縮ライト処理C3003
は、フラッシュメモリ1050より格納データ1150を読みだ
し、読みだした比較リードデータ1160から、冗長データ
生成装置1080を用いて、新比較リード冗長データ1171を
生成する。圧縮データから生成された圧縮冗長データ11
30と新比較リード冗長データ1171とが比較される。比較
の結果、双方のデータが同じであれば、フラッシュメモ
リ1050へのライトが正しく行なわれたと判定される。
【0045】上記の処理により、圧縮データ1120は圧縮
元データ1100を正しく圧縮したものであり、格納データ
1150はフラッシュライトデータ1140を正しく格納したも
のであることがわかる。つまり、格納データ1150は、ラ
イトデータ1105を正しく圧縮し、正しくフラッシュメモ
リ1050に格納したものであると保証される。
【0046】図17は、圧縮ライト処理C3003のフロー
チャートである。まず、ステップ2000では、ホストコン
ピュータ1000からのライトデータ1105に圧縮元冗長デー
タ1110を付加して圧縮元データ1100を生成するための要
求が、冗長データ生成装置1080に発行され、圧縮元デー
タ1100の生成後、それを圧縮するための要求が、圧縮伸
長装置1040に発行される。ステップ2010は、圧縮完了を
待つ状態となる。もちろん、データの圧縮完了時には冗
長データの生成はすでに終っている。ステップ2020で
は、圧縮データ1120に圧縮冗長データ1130を付加してフ
ラッシュライトデータ1140を生成するための要求が、冗
長データ生成装置1080に発行され、フラッシュライトデ
ータ1140の生成後、それを格納するための要求が、フラ
ッシュメモリ1050に発行される。ステップ2030では、ラ
イト完了を待たずに、圧縮伸長装置1040に対して、圧縮
データを伸長するための要求が発行され、ステップ2100
では、伸長完了まで待つ状態となる。
【0047】ステップ2100では、冗長データ生成装置10
80を用いて、比較リードデータ1160から新比較リード冗
長データ1171が生成される。その後、圧縮データ1120か
ら生成された圧縮冗長データ1130と、新比較リードデー
タ1160とが比較され(ステップ2120)、双方のデータが
異なっていれば、ステップ2000にジャンプして圧縮ライ
ト処理C3003をリトライし、双方のデータが同じであれ
ばステップ2060に進む(ステップ2130)。
【0048】その後、ステップ2060では、フラッシュメ
モリ1050へのライト完了を待つ状態となる。ステップ20
70では、フラッシュメモリ1050に対して、格納データ11
50のリード要求が発行され、ステップ2140では、リード
完了を待つ状態となる。ステップ2150では、冗長データ
生成装置1080を用いて、比較リードデータ1160から新比
較リード冗長データ1171が生成され、ステップ2160で
は、圧縮データ1120から生成された圧縮冗長データ1130
と新比較リード冗長データ1171とが比較され、双方のデ
ータが異なっていれば、ステップ2000にジャンプして圧
縮ライト処理C3003をリトライし、双方のデータが同じ
であれば圧縮ライト処理C3003は終了する(ステップ213
0)。
【0049】図18は、圧縮ライト処理C3003のタイミ
ングチャートである。図18には、2ヶ所のデータ比較
の部分があり、それぞれ、新比較伸長冗長データ1191の
生成(ステップ4300)+圧縮元冗長データ1110と新比較
伸長冗長データ1191の比較(ステップ4310)、及び、新
比較リード冗長データの生成(ステップ4100)+圧縮冗
長データ1130と新比較リード冗長データ1171の比較(ス
テップ4110)が行なわれる。また、冗長データ生成時間
の分だけ、TbとTdが長くなるが、TbとTdのそれぞれに占
めるデータ比較の時間がそれ以上に短くなるので、結果
的にTbとTdは短くなり、それぞれ、TbAとTdAとなる。Tc
は、Tbが短くなった分長くなり、TcAとなる。つまり、
ライト処理全体で必要となる時間は短くなる。
【0050】
【発明の効果】本発明によれば、データ書き込み手段が
記憶媒体にデータを書き込み、データ読みだし手段が書
き込んだデータを読み出し、データ比較手段が書き込む
前のデータと読みだしたデータを比較しているので、も
し、記憶媒体に書き込んだデータが正しくなければ、そ
れをリードしたデータも正しくないので、書き込む前の
データと比較した時に異なることが検出できる。逆に、
比較した結果、双方のデータが同じになれば、記憶媒体
内のデータが正しく格納されていることを保証できる。
【0051】本発明によれば、データ圧縮手段がデータ
を圧縮し、データ書き込み手段が記憶媒体にデータを書
き込み、データ読みだし手段が書き込んだデータを読み
だし、データ伸長手段が読みだしたデータを伸長し、さ
らに、データ比較手段が伸長したデータと圧縮する前の
データを比較しているので、比較の結果、双方のデータ
が同じであれば、記憶媒体内のデータが正しく圧縮さ
れ、かつ、正しく格納されていることを保証できる。
【0052】また、本発明では、冗長データ生成手段が
圧縮したいデータより冗長データを生成し、データ圧縮
手段がデータを圧縮して、書き込み手段が圧縮したデー
タを記憶媒体に書き込む。さらに、読みだし手段が書き
込んだデータを読みだし、データ伸長手段が読みだした
データを伸長する。冗長データ生成手段が伸長したデー
タから冗長データが生成される。その際、データの伸長
と冗長データの生成とが並行して行なわれるため、処理
時間が短縮される。されに、本発明では、伸長したデー
タの冗長データと、圧縮前のデータの冗長データの比較
が行なわれる。比較の結果、双方のデータが同じであれ
ば、記憶媒体内のデータが正しく圧縮され、かつ、正し
く格納されていることを保証できる。その際、データの
冗長データ部分は、データ部分と較べてかなり小さいの
で、比較に要する時間が短縮される。
【図面の簡単な説明】
【図1】本発明を適用した圧縮機能付フラッシュディス
クの構成例と第1の実施例における発明の概要を示す。
【図2】圧縮元データを示す。
【図3】フラッシュライトデータを示す。
【図4】格納データを示す。
【図5】比較リードデータを示す。
【図6】比較伸長データを示す。
【図7】比較伸長データAを示す。
【図8】第1の実施例の圧縮ライト処理のフローチャー
トを示す。
【図9】第1の実施例の圧縮処理及びライト処理のタイ
ミングチャートを示す。
【図10】第2の実施例における発明の概要を示す。
【図11】第2の実施例の圧縮ライト処理のフローチャ
ートを示す。
【図12】第2の実施例の圧縮処理及びライト処理のタ
イミングチャートを示す。
【図13】第3の実施例における発明の概要を示す。
【図14】第3の実施例の圧縮ライト処理のフローチャ
ートを示す。
【図15】第3の実施例の圧縮処理及びライト処理のタ
イミングチャートを示す。
【図16】第4の実施例における発明の概要を示す。
【図17】第4の実施例の圧縮ライト処理のフローチャ
ートを示す。
【図18】第4の実施例の圧縮処理及びライト処理のタ
イミングチャートを示す。

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】ホストコンピュータに接続され、データを
    格納する記憶媒体を有する記憶装置における書き込みデ
    ータの保証方法において、 前記ホストコンピュータから受けとったライトデータを
    前記記憶媒体に書き込むステップと、 前記記憶媒体に書かれたデータを読み出すステップと、 前記読みだしたデータを前記ホストコンピュータから受
    けとったライトデータと比較するステップを有すること
    を特徴とする記憶装置のデータ保証方法。
  2. 【請求項2】ホストコンピュータに接続され、データを
    格納する記憶媒体を有し、データに冗長データを付加し
    て前記記憶媒体に格納する記憶装置における書き込みデ
    ータ保証方法において、 前記ホストコンピュータから受けとったライトデータよ
    り冗長データを生成して、前記ライトデータに付加する
    ステップと、 前記冗長データを付加した前記ライトデータを前記記憶
    媒体に書き込むステップと、 前記記憶媒体に書かれたデータを読み出すステップと、 前記読み出したデータの内、前記ライトデータに相当す
    る部分から新たに冗長データを生成するステップと、 前記新たに生成した冗長データと、前記ホストコンピュ
    ータからの前記ライトデータより生成した前記冗長デー
    タとを比較するステップを有することを特徴とする記憶
    装置のデータ保証方法。
  3. 【請求項3】ホストコンピュータに接続され、データを
    圧縮して記憶媒体に格納する記憶装置におけるデータ保
    証方法において、 前記ホストコンピューターからのライトデータを圧縮す
    るステップと、 前記圧縮されたデータを伸長するステップと、 伸長したデータと前記ライトデータを比較するステップ
    と、 前記圧縮されたデータを前記記憶媒体に格納するステッ
    プと、 前記格納されたデータを読み出すステップと、 前記読み出したデータと前記圧縮されたデータを比較す
    るステップを有することを特徴とする記憶装置のデータ
    保証方法。
  4. 【請求項4】ホストコンピュータに接続され、データに
    冗長データを付加して圧縮し、さらに冗長データを付加
    して記憶媒体に格納する記憶装置におけるデータ保証方
    法において、 前記ホストコンピュータからのライトデータより冗長デ
    ータを生成して、前記ライトデータに付加し、圧縮する
    ステップと、 前記圧縮されたデータを伸長するステップと、 前記伸長したデータの内、前記圧縮されたデータに相当
    する部分より、新たに冗長データを生成するステップ
    と、 前記新たに生成した冗長データと前記ライトデータより
    生成した冗長データを比較するステップと、 前記圧縮されたデータより冗長データを生成して、前記
    圧縮されたデータに付加し、前記記憶媒体に格納するス
    テップと、 前記格納されたデータを読み出すステップと、 前記読み出したデータの内、前記圧縮されたデータに相
    当する部分より新たに冗長データを生成するステップ
    と、 前記新たに生成した冗長データと前記圧縮されたデータ
    より生成した冗長データを比較するステップを有するこ
    とを特徴とする記憶装置のデータ保証方法。
  5. 【請求項5】ホストコンピュータに接続され、データを
    圧縮して記憶媒体に格納する記憶装置におけるデータ保
    証方法において、 前記ホストコンピュータからのライトデータを圧縮する
    ステップと、 前記圧縮されたデータを前記記憶媒体に格納するステッ
    プと、 前記格納されたデータを読み出すステップと、 前記読み出したデータを伸長するステップと、 前記伸長したデータと前記ライトデータを比較するステ
    ップを有することを特徴とする記憶装置のデータ保証方
    法。
  6. 【請求項6】ホストコンピュータに接続され、データに
    冗長データを付加して圧縮し、さらに冗長データを付加
    して記憶媒体に格納する記憶装置におけるデータ保証方
    法において、 前記ホストコンピューターからのライトデータより冗長
    データを生成して、前記ライトデータに付加し、圧縮す
    るステップと、 前記圧縮されたデータより冗長データを生成して、前記
    圧縮されたデータに付加し、前記記憶媒体に格納するス
    テップと、 前記格納されたデータを読み出すステップと、 前記読み出したデータの内、前記圧縮されたデータに相
    当する部分を伸長するステップと、 前記伸長したデータの内、前記圧縮されたデータに相当
    する部分より、新たに冗長データを生成するステップ
    と、 前記新たに生成した冗長データと前記ライトデータより
    生成した冗長データを比較するステップを有することを
    特徴とする記憶装置のデータ保証方法。
JP18808294A 1994-08-10 1994-08-10 記憶装置のデータ保証方法 Pending JPH0855063A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP18808294A JPH0855063A (ja) 1994-08-10 1994-08-10 記憶装置のデータ保証方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP18808294A JPH0855063A (ja) 1994-08-10 1994-08-10 記憶装置のデータ保証方法

Publications (1)

Publication Number Publication Date
JPH0855063A true JPH0855063A (ja) 1996-02-27

Family

ID=16217393

Family Applications (1)

Application Number Title Priority Date Filing Date
JP18808294A Pending JPH0855063A (ja) 1994-08-10 1994-08-10 記憶装置のデータ保証方法

Country Status (1)

Country Link
JP (1) JPH0855063A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015528159A (ja) * 2012-07-05 2015-09-24 ブランコ オサケユイチア リミティド 記憶装置に格納されたデータを消去する装置、システム、方法及びコンピュータプログラム
WO2016151831A1 (ja) * 2015-03-26 2016-09-29 株式会社日立製作所 ストレージシステム
US12073080B2 (en) 2021-11-16 2024-08-27 Hitachi, Ltd. System and method for improving reliability of a data storage system

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015528159A (ja) * 2012-07-05 2015-09-24 ブランコ オサケユイチア リミティド 記憶装置に格納されたデータを消去する装置、システム、方法及びコンピュータプログラム
JP2017126348A (ja) * 2012-07-05 2017-07-20 ブランコ オサケユイチア リミティド 記憶装置に格納されたデータを消去する装置、システム、方法及びコンピュータプログラム
WO2016151831A1 (ja) * 2015-03-26 2016-09-29 株式会社日立製作所 ストレージシステム
US12073080B2 (en) 2021-11-16 2024-08-27 Hitachi, Ltd. System and method for improving reliability of a data storage system

Similar Documents

Publication Publication Date Title
US8010879B2 (en) Error correction method and apparatus for data storage device
US6009547A (en) ECC in memory arrays having subsequent insertion of content
US20020124129A1 (en) Method for using RAM buffers with multiple accesses in flash-based storage systems
US7418645B2 (en) Error correction/detection code adjustment for known data pattern substitution
JP2003249029A (ja) データ書き込み装置及びdvdフォーマットデータ生成方法
JP4300462B2 (ja) 情報記録再生方法及び装置
JPH1040122A (ja) 計算機
JP2672916B2 (ja) アレイディスク装置のデータチェック方法
JPH0855063A (ja) 記憶装置のデータ保証方法
JPS63197122A (ja) エラ−訂正及びチエツク装置
JP3098363B2 (ja) 記憶装置
JPH10145238A (ja) 誤り訂正装置及び方法
JPS604497B2 (ja) 記憶装置
JP2622953B2 (ja) ディジタル記録・再生装置における誤動作検出方式
JPH043525A (ja) 符号誤り訂正装置
JP2003177973A (ja) データ処理装置
JP2779540B2 (ja) 磁気テープ装置
JPH1021656A (ja) 誤り判定装置
JPH076100A (ja) 信号処理装置
JP3237916B2 (ja) ディスク制御装置とそれを備えたディスク装置
JPS5953640B2 (ja) 記憶装置
JPH038176A (ja) デジタルデータ記録用ベリファイ方法および装置
KR100200052B1 (ko) 고밀도 컴팩트 디스크용 오류정정 복호기
JPH04368673A (ja) デジタル情報記録再生装置
JP3345997B2 (ja) 誤り訂正符号化復号装置および誤り訂正符号化復号装置を備えたディスクアレイシステムコントローラ