JP3022688B2 - 補助記憶装置 - Google Patents

補助記憶装置

Info

Publication number
JP3022688B2
JP3022688B2 JP4228858A JP22885892A JP3022688B2 JP 3022688 B2 JP3022688 B2 JP 3022688B2 JP 4228858 A JP4228858 A JP 4228858A JP 22885892 A JP22885892 A JP 22885892A JP 3022688 B2 JP3022688 B2 JP 3022688B2
Authority
JP
Japan
Prior art keywords
data
parity
control circuit
storage
track
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP4228858A
Other languages
English (en)
Other versions
JPH0675716A (ja
Inventor
利一 高井
可奈美 鮫島
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP4228858A priority Critical patent/JP3022688B2/ja
Publication of JPH0675716A publication Critical patent/JPH0675716A/ja
Application granted granted Critical
Publication of JP3022688B2 publication Critical patent/JP3022688B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、補助記憶装置のデータ
訂正に利用する。本発明は、セクタあるいはトラック単
位でデータ訂正を行う補助記憶装置に関する。
【0002】
【従来の技術】従来、補助記憶装置のデータ訂正は、任
意データ毎に誤り検出符号を付加し、読み出し時にその
誤り検出符号を用いて誤りを検出することによりデータ
訂正を行っていた。
【0003】また、データを複数の補助記憶装置に分割
し、分割したデータのパリティデータを別の補助記憶装
置に記憶することにより、元のデータを記憶している補
助記憶装置に不都合が生じてもデータ訂正を行えるよう
にしていた(RAID LEVEL3)。
【0004】
【発明が解決しようとする課題】このような従来の誤り
訂正符号を用いたデータ訂正方式では、誤り訂正符号を
付加した一連のデータ中の数個に対してのみ訂正が可能
であり、媒体の傷などにより近接領域に多数の誤りが生
じた場合には訂正を行うことが不可能であった。また、
特定セクタやトラックのデータが全て読み出し不能にな
った場合、シンドロームを含む全てのデータを読むこと
ができないため訂正を行うことができない問題があっ
た。
【0005】また、RAID leve13を用いた場
合、データの分割数が少ないときは全記憶容量に対する
パリティデータの割合が多くなり通常動作時に使用しな
い記憶装置領域が多くなり、分割数を多くしたときはR
AIDの最小構成単位が大きくなり使用するシステムに
よっては必要とする記憶容量よりも補助記憶装置の記憶
容量がかなり大きくなってしまい、そのために分割数の
多少に関わらず小規模な情報処理システムでのRAID
の採用はむずしくなる問題があった。
【0006】本発明はこのような問題を解決するもの
で、誤り訂正符号では処理不能な広範囲にわたり発生し
た誤りデータの訂正を行うことができる装置を提供する
ことを目的とする。
【0007】
【課題を解決するための手段】本発明は、データを保持
する記憶手段と、パリティデータを用いてデータ訂正を
行う手段を含むパリティ制御回路とを備えた補助記憶装
置において、記パリティ制御回路は、記記憶手段の
記憶領域を分割した複数個のブロックにそれぞれ含まれ
るデータ毎にパリティデータを生成する手段を含み、こ
のパリティ制御回路で生成されたパリティデータを保持
するパリティ記憶回路と、誤りが生じたデータを含むブ
ロック内のこの誤りが生じたデータを除くデータに基づ
き作成したパリティデータを記憶するサブパリティ記憶
回路とを備えたことを特徴とする。
【0008】記パリティ制御回路は、全記憶領域に同
一データを書き込む初期化を行う際に全記憶領域に書き
込まれる所定のデータに応じて得られる特定のパリティ
データ値を記パリティ記憶回路に書き込む手段を備え
ることが望ましい。
【0009】
【作用】データの書き込みに際して、制御回路は、新た
なデータD1、…、Dzが書き込まれるセクタを含むト
ラックnのデータを読み出してパリティ制御回路に転送
する。一方、パリティ記憶回路上の古いデータd1、
…、dzに基づき生成されたパリティデータp1、…、
pzもパリティ制御回路に転送される。次に、書き込み
実行し、この書き込みデータをパリティ制御回路に転送
する。パリティ制御回路は、データd1、…、dzと、
パリティデータp1、…、pzおよびデータ1、…、
zとを用いて新たにパリティデータP1、…、Pzを
生成する。
【0010】磁気ディスクの初期化に際して、パリティ
制御回路は、書き込みディスクが特定値である場合に、
パリティ記憶回路に対して特定初期値を書き込み、書き
込みデータが特定値でない場合に、データを書き込んだ
ブロックに属するデータをデータバッファに書き込み、
その値からパリティトラックを作成する。
【0011】データの読み出しに際しては、読み出し異
常時に、CPUはパリティトラックを用いた読み出しを
パリティ制御回路に指示する。パリティ制御回路は、こ
の指示に応じて、修復すべきデータトラックの属するデ
ータブロックの他のデータトラック上のデータを読み出
し、データバッファに保存する。また、パリティ制御回
路は、データバッファに保存された他のデータトラック
上のデータと、パリティ記憶回路上の修復すべきデータ
トラックの属するデータブロックからサブパリティトラ
ックを作成し、このサブパリティトラックをサブパリテ
ィ記憶回路に保存し、このサブパリティトラックのデー
タを用いて正しいデータを演算する。
【0012】これにより、誤り発生データトラックから
の正常データ読み出しは2回目のアクセス以後、他のデ
ータトラック上のデータを読み出さずに行うことができ
る。
【0013】
【実施例】次に、本発明実施例を図面に基づいて説明す
る。図1は本発明実施例の構成を示すブロック図であ
る。
【0014】本発明実施例は、制御回路6と、データバ
ッファ9と、データを保持する記憶手段としての磁気デ
ィスク装置7と、パリティデータを用いてデータ訂正を
行う手段を含むパリティ制御回路8とを備え、このパリ
ティ制御回路8には、磁気ディスク装置7の記憶領域を
分割した複数個のブロックにそれぞれ含まれるデータ毎
にパリティデータを生成する手段を含み、このパリティ
制御回路8で生成されたパリティデータを保持するパリ
ティ記憶回路10を備え、さらに、パリティ制御回路8
には、全記憶領域に同一データを書き込む初期化を行う
際にあらかじめ用意したパリティデータ値をパリティ記
憶回路10に書き込む手段を含む。
【0015】(第一実施例) 本発明第一実施例は、パリティデータ記憶用の磁気ディ
スク装置7のヘッド数と同数のパリティトラックを有
し、CPU2とインタフェース3を介して接続され、そ
の内部にてインタフェース3は制御信号線400とデー
タバス5とに分岐し、制御信号線400は制御回路6に
接続され、データバス5は磁気データ装置7、パリティ
制御回路8、およびデータバッファ9に接続される。さ
らに、パリティ制御回路8はメモリバス11を介してパ
リティ記憶回路10に接続され、制御回路6は制御信号
線401を介して磁気ディスク装置7に接続され、制御
信号線402を介してパリティ制御回路8に接続され、
制御信号線403を介してデータバッファ9に接続さ
れ、各動作が制御される。
【0016】なお、パリティ記憶回路10内のデータは
補助記憶装置1の電源が未投入状態でも保持される必要
がある。図2は磁気ディスク装置7のデータ分割状態を
示す概略図であるが、この磁気ディスク装置7はx個の
シリンダを持ち、各々のシリンダはy個のヘッドを有し
1つのシリンダは1ヘッド当たり(1ヘッド当たりの1
シリンダを1トラックと呼ぶ)z個のセクタから構成さ
れる。この磁気ディスク装置7の全記憶領域は任意個の
ブロックに分割され、各々のブロック当たり1つのパリ
ティトラックを生成する。各々のパリティトラックは磁
気ディスク装置7のトラック長と同一データ長を有す
る。
【0017】ここで、パリティトラックに保存すべきパ
リティデータの作成例を図3を用いて説明する。この例
では全記憶領域をヘッド数と同数個のブロックに分ける
場合を示している。パリティトラックをヘッド数zと同
数用意する場合、1つのパリティトラックはシリンダ数
xと同数のトラックT1、T2、…、Txから生成され
る。また、各々のトラックはz個のセクタから構成さ
れ、任意のトラックT1のn番目のセクタのデータはD
1nと表記することにすると、パリティトラックのn番
目のセクタのデータPnはそのパリティトラックに割り
当てられているトラックT1、T2、…、Txのn番目
のセクタを構成するデータの排他的論理和となる。つま
り、
【0018】
【数1】 を保存する必要がある。
【0019】なお、このとき図3に示すように同一ヘッ
ドを用いたトラックをブロック化するのではなく、ヘッ
ドの位置が1つずれるにつれてブロックに含まれる複数
のトラックが1つずつずれるように、ヘッドをずらして
ブロック化することがよいこれは、シリンダ方向に傷
があった場合には複数のセクタから情報が読み出せなく
なることがあるため、振動などによるシリンダ方向の媒
体の傷の影響を無くすには好ましいからである
【0020】次に、このようなパリティトラックを有す
る補助記憶装置1の回路的な動作について説明する。C
PU2からデータを磁気ディスク装置7上の任意セクタ
に書き込む場合、制御回路6はデータを磁気ディスク装
置7に書き込む前に、磁気ディスク装置7から任意セク
タを含むトラックnのデータを読み出しパリティ制御回
路8にデータを転送する。また、同時にパリティ記憶回
路10からトラックnのデータにより生成されたパリテ
ィトラックPnのデータp1、p2、…、pzもパリテ
ィ制御回路8に送られている。データ転送完了後に制御
回路6はCPU2に対し書き込みデータを要求し、送ら
れてきた書き込みデータは磁気ディスク装置7上に書き
込まれるとともにパリティ制御回路8に対しても送出さ
れる。
【0021】パリティ制御回路8は予め書き込まれてい
たトラックnの古いデータd1、d2、…dz、および
このd1、d2、…dzによって生成されたパリティデ
ータのp1、p2、…、pz、新たに書き込まれるデー
タD1、D2、…Dzを用いて、次にパリティトラック
Pnに書き込むべきデータであるP1、P2、…、Pz
を生成し、パリティ記憶回路10に書き戻す。この際、
新たなパリティデータであるP1、P2、…、Pzは以
下に示す式により生成することが可能である。
【0022】
【数2】 なお、通常記憶領域に不具合が発生した場合の代替用に
代替セクタおよび代替トラックが用意されているが、こ
の代替処理が発生した場合、代替された領域のデータは
用いることができなくなるので、代替された領域内の全
てのデータが“1”であるとみなし処理をする必要があ
る。また、使用されていない代替エリアのデータは全て
“0”とみなす。磁気ディスク装置7の初期化を行う場
合、実際に書き込んだデータによりパリティトラックの
データを作成する必要はない。つまり、初期化において
は全記憶領域にある規定値を書き込むため、パリティト
ラックのデータはある特定値の繰り返しとなる。このた
め初期化作業時にはパリティ記憶回路10に対し、パリ
ティ制御回路8が直接特定初期値を書き込めばよいこと
になる。なお、代替処理が行われたエリアに対してのみ
パリティトラックデータの書き換えは必要となる。
【0023】書き込むデータが特定値ではない初期化を
行う場合は、一度全記憶領域にデータを書いた後同一ブ
ロックに属するデータをデータバッファ9に書き込み、
その値からパリティトラックを作成する作業が必要とな
る。
【0024】次にデータの読み出し方法について説明す
る。通常状態において読み出しデータは、CPU2から
の命令に従い制御回路6が磁気ディスク装置7に対しア
クセスを行い、データはデータバス5およびインタフェ
ース3を介しCPU2に送られる。しかし、読み出し動
作が異常であった場合や多ビットのデータ誤りが発生し
た場合、CPU2は制御回路6に対しパリティトラック
を用いたデータ訂正を指示する。制御回路6はCPU2
よりパリティトラックを用いた読み出しを指示された場
合、修復すべきデータトラックと同じブロックに存在す
る他のデータトラックを全て読み出し、データバッファ
9に保存しておく。
【0025】パリティ制御回路8はデータバッファ9に
書き込まれた他のデータトラックのデータと、パリティ
記憶回路10より読み出した修正すべきデータトラック
を含むデータブロックから生成したパリティトラック内
の不具合データトラックのデータとを生成する。
【0026】なお、この読み出し方法では誤りの発生し
たデータトラック内のデータを生成するためには、同一
ブロックに存在する他のデータトラックのデータを全て
読み出す必要があるため1トラックのデータを読み出す
のに時間を要する。
【0027】(第二実施例) 本発明第二実施例は、第一実施例における誤りデータト
ラックの読み出しの高速化をはかるもので、一つのパリ
ティトラック内のデータを生成するのに複数のトラック
のデータが用いられる。そのため任意データトラックの
データをパリティトラックにて訂正するには、訂正すべ
きデータトラックと同じパリティトラックの生成に用い
たデータトラックを全て読み出す必要があり、これを防
ぐために本第二実施例では、図4に示すようにデータト
ラックを修正するために用いる他のデータトラック内の
データのパリティをメモリに保持し、パリティ制御回路
8はメモリバス11を介しサブパリティ記憶回路12に
接続さる。CPU2からのデータ書き込みおよび初期
化動作は第一実施例同様に行われるが、誤り発生時の読
み出し動作は次のように行うことにより高速化を図るこ
とができる。
【0028】CPU2から誤りの発生している任意デー
タトラックの読み出しを制御回路6が命じられた場合、
制御回路6は誤りの発生しているデータトラックと同一
ブロックに位置する全てのデータブロックを読み出し、
誤りの発生しているデータトラック以外のデータトラッ
クによる新たなパリティトラックを生成しサブパリティ
トラックとする。サブパリティトラックはパリティ制御
回路8によりサブパリティ記憶回路12に記憶される。
サブパリティトラックのデータをS1、S2、…、Sz
とした場合、誤りが発生しているデータトラックに書き
込まれているはずの正しいデータDt1、Dt2、…、
Dtzは下記の演算をパリティ制御回路8内部にて行う
ことにより求めることができる。
【0029】
【数3】 これにより、誤りの発生したデータトラックに対応する
サブパリティトラックを生成しサブパリティ記憶回路1
2に保存することができ、誤り発生データトラックから
の正常データの読み出し作業は2回目のアクセス以降他
のデータトラックの読み出しを行うことなく高速に行う
ことがが可能となる。
【0030】
【発明の効果】以上説明したように本発明によれば、全
記憶領域を任意のブロックに分割し各々のブロックに含
まれるデータのパリティを別途記憶することができ、ま
た、単一の補助記憶装置におていも誤り訂正符号では処
理しきれない広範囲のデータの訂正を行うことができ、
これにより補助記憶装置のデータ信頼性の向上を図るこ
とができる効果がある。
【図面の簡単な説明】
【図1】本発明第一実施例の構成を示すブロック図。
【図2】本発明第一実施例における記憶領域形態の一例
を示す概念図。
【図3】本発明第一実施例におけるパリティトラック生
成の一例を示す概念図
【図4】本発明第二実施例の構成を示すブロック図。
【符号の説明】
1 補助記憶装置 2 CPU 3 インタフェース 5 データバス 6 制御回路 7 磁気ディスク装置 8 パリティ制御回路 9 データバッファ 10 パリティ記憶回路 11 メモリバス 12 サブパリティ記憶回路 400、401、402、403 制御信号線
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平3−105521(JP,A) 特開 平4−38515(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 3/06

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】 データを保持する記憶手段と、パリティ
    データを用いてデータ訂正を行う手段を含むパリティ制
    御回路とを備えた補助記憶装置において、 記パリティ制御回路は、記記憶手段の記憶領域を分
    割した複数個のブロックにそれぞれ含まれるデータ毎に
    パリティデータを生成する手段を含み、 このパリティ制御回路で生成されたパリティデータを保
    持するパリティ記憶回路と、 誤りが生じたデータを含むブロック内のこの誤りが生じ
    たデータを除くデータに基づき作成したパリティデータ
    を記憶するサブパリティ記憶回路と を備えたことを特徴
    とする補助記憶装置。
  2. 【請求項2】 記パリティ制御回路は、全記憶領域に
    同一データを書き込む初期化を行う際に全記憶領域に書
    き込まれる所定のデータに応じて得られる特定のパリテ
    ィデータ値を記パリティ記憶回路に書き込む手段を備
    えた請求項1記載の補助記憶装置。
  3. 【請求項3】 複数のヘッドによりデータの書き込みま
    たは読み出しを行う記憶手段と、パリティデータを用い
    てデータ訂正を行う手段を含むパリティ制御回路とを備
    えた補助記憶装置において、 前記パリティ制御回路は、前記記憶手段の記憶領域を分
    割した複数個のブロックにそれぞれ含まれるデータごと
    にパリティデータを生成する手段を含み、 前記パリティ制御回路で生成されたパリティデータを保
    持するパリティ記憶回路を備え、 前記複数のブロックの各々は、前記複数のヘッドのうち
    それぞれ異なるものによりアクセスされる複数トラック
    からなることを特徴とする補助記憶装置。
JP4228858A 1992-08-27 1992-08-27 補助記憶装置 Expired - Lifetime JP3022688B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4228858A JP3022688B2 (ja) 1992-08-27 1992-08-27 補助記憶装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4228858A JP3022688B2 (ja) 1992-08-27 1992-08-27 補助記憶装置

Publications (2)

Publication Number Publication Date
JPH0675716A JPH0675716A (ja) 1994-03-18
JP3022688B2 true JP3022688B2 (ja) 2000-03-21

Family

ID=16882991

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4228858A Expired - Lifetime JP3022688B2 (ja) 1992-08-27 1992-08-27 補助記憶装置

Country Status (1)

Country Link
JP (1) JP3022688B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011233186A (ja) 2010-04-23 2011-11-17 Toshiba Corp ディスク記憶装置及びデータ復元方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03105521A (ja) * 1989-09-20 1991-05-02 Fujitsu Ltd アレイ・ディスク制御装置
JPH0438515A (ja) * 1990-06-05 1992-02-07 Toshiba Corp 故障検出機能を有する記憶制御装置

Also Published As

Publication number Publication date
JPH0675716A (ja) 1994-03-18

Similar Documents

Publication Publication Date Title
US6687850B1 (en) Disk drive for storing sector-reconstruction sectors and for storing a sector-reconstruction status in sectors distributed around a disk
US6661591B1 (en) Disk drive employing sector-reconstruction-interleave sectors each storing redundancy data generated in response to an interleave of data sectors
US5613088A (en) Raid system including first and second read/write heads for each disk drive
US7464322B2 (en) System and method for detecting write errors in a storage device
US4558446A (en) Memory system
US5396620A (en) Method for writing specific values last into data storage groups containing redundancy
US7389466B1 (en) ECC in computer system with associated mass storage device, and method for operating same
KR0162121B1 (ko) 개선된 데이터 기억장치 및 이 기억장치에 데이터를 기억시키는 방법
JPH0792896B2 (ja) 誤り位置決めされたヘッドを位置決めする装置および方法
US5748885A (en) Method and apparatus for reduction of I/O operations in persistent storage system
US5734815A (en) Method and apparatus for efficient cyclical redundancy check (CRC) maintenance for sub-sector writes
JP3022688B2 (ja) 補助記憶装置
JPH1097471A (ja) メモリデータのエラー訂正方法、及びエラー訂正方式
JP3341745B2 (ja) 電子ディスク装置の書き込み/読み出し制御方法及びその装置
JP2570614B2 (ja) デイスクアレイ装置
JP2856054B2 (ja) ディスクアレイ装置
GB2402803A (en) Arrangement and method for detection of write errors in a storage system
JP3128033B2 (ja) ディスクアレイ装置
JPH0535416A (ja) フアイル制御装置
JPH01307063A (ja) 光デイスク記録再生装置
JPH04311218A (ja) 外部記憶制御装置
JP3597550B2 (ja) ディスクアレイ装置
JP2868003B1 (ja) 磁気ディスク装置
JPS6013360A (ja) 記憶装置
JPH07211016A (ja) ディスク記憶装置およびそのデータ記録方法