JP3566843B2 - Data reproducing method and data reproducing apparatus - Google Patents

Data reproducing method and data reproducing apparatus Download PDF

Info

Publication number
JP3566843B2
JP3566843B2 JP30714797A JP30714797A JP3566843B2 JP 3566843 B2 JP3566843 B2 JP 3566843B2 JP 30714797 A JP30714797 A JP 30714797A JP 30714797 A JP30714797 A JP 30714797A JP 3566843 B2 JP3566843 B2 JP 3566843B2
Authority
JP
Japan
Prior art keywords
data
error
clock
excess
correction
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 - Fee Related
Application number
JP30714797A
Other languages
Japanese (ja)
Other versions
JPH11144396A (en
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.)
Fujitsu Ltd
Fujitsu Peripherals Ltd
Original Assignee
Fujitsu Ltd
Fujitsu Peripherals 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 Fujitsu Ltd, Fujitsu Peripherals Ltd filed Critical Fujitsu Ltd
Priority to JP30714797A priority Critical patent/JP3566843B2/en
Publication of JPH11144396A publication Critical patent/JPH11144396A/en
Application granted granted Critical
Publication of JP3566843B2 publication Critical patent/JP3566843B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Error Detection And Correction (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、データ記録再生方法および装置に係り、特に磁気テープ等記憶媒体上に書込まれたRLL(Run Length Limited) 符号データを読み取る時に発生するデータ重複やデータ抜けに起因するリードエラーの救済処置に関する。
【0002】
近年の記憶装置は、小型・大容量のために高記憶密度、高速データ転送等が要求されており、そのためにわずかな媒体上のキズやゴミ、ノイズ等の影響によってリードエラーをひき起こし、データの信頼性を高めることが非常に困難になってきている。
【0003】
特に高い信頼性が要求されるデータ再生装置の場合には、媒体記録データはコード変換(デコード) された後、ECC (Error Corection Code)等の手段によりデータエラーをリカバリー(エラー訂正)しているが、前述の理由により発生したリードエラーの場合には、ランダム誤りがバースト誤りになり、誤りが大きくなるためECC 等の手段でも救済できない場合がある。そのため、ECC 等の手段にデータを送出する前にリードデータを修復する必要がある。
【0004】
【従来の技術】
従来の記憶装置のECC では、記録媒体上にRLL 符号で書かれたデータをデコードした結果に対して訂正していた。媒体上に書かれたRLL 符号はいったんデコードされるため、その時点でリードビットに抜け等が発生した場合には、RLL 符号の性質上 ECCでも訂正不可能なデータにもなりかねない。
【0005】
例えば、1−7RLL符号の場合には、デコードするときに前データブロックの最終ビットと後データブロックの最前ビットとを参照してデコードするために、その参照すべき位置にずれが生じた場合、誤ったデコードを行なってしまうことになる。
【0006】
そのため、従来の装置においては、再リードを行なう(リトライ動作)等のリカバリー処置を行なうことによって信頼性の向上に努めていたが、それでも正常リードできない場合には、訂正不可能として、その部分を破棄していた。
【0007】
【発明が解決しようとする課題】
以上説明したように、従来は重要な書込みデータでも訂正が不可能であるために破棄されてしまうものがあり、データの信頼性を低下させるという問題点があった。
【0008】
本発明は、媒体上の書込みデータのリードミスを検出することによって、不適当なデータを修復し、それをデコードしECC 部に送出することでECC の訂正効率を向上させ、装置の信頼性を向上させることを目的としたものである。
【0009】
【課題を解決するための手段】
本発明は記録媒体から第1のデータを読み出し、該第1のデータからクロックを抽出すると共に該クロックに同期した第2のデータを作成し、該第2のデータから復号された第3のデータをエラー訂正するデータ再生方法において、前記第2のデータの数が前記第1のデータが記録されている記録領域より定められるデータの数より少ない場合であって、同一データブロック内で連続して複数ビットの抜けが発生した場合には、両者の差の数に対応するデータ長の所定の擬似データを、前記第2のデータの予め特定されたデータ抜け箇所に挿入して補正データを作成し、同一データブロック内の複数箇所で単一ビットの抜けが発生した場合には、1クロック分の擬似データを、前記第2のデータの予め特定された複数のデータ抜け箇所に挿入して補正データを作成し、前記第2のデータの数が前記第1のデータが記録されている記録領域より定められるデータの数より多い場合であって、同一データブロック内で連続して複数ビットのデータ過多が発生した場合には、両者の差の数に対応するデータ長の過多データを、前記第2のデータの予め特定されたデータ過多箇所から削除して補正データを作成し、同一データブロック内の複数箇所で単一ビットのデータ過多が発生した場合には、1クロック分の過多データを、前記第2のデータの予め特定された複数のデータ過多箇所から削除して補正データを作成し、前記補正データを復号して第3のデータとし、該第3のデータをエラー訂正することを特徴とする。以下、具体的に説明する。
以上
【0010】
図1は、磁気テープに於ける記録領域付近のデータフォーマットを示す図である。なお、磁気ディスク、光磁気ディスクも同様に扱えるため、それらの場合についての記載は省略する。IBG(Inter Block Gap)部はデータブロックとデータブロックとの間のギャップであり、テープ走行速度が一定になるまでの時間を保証するためのギャップである。データブロックには、 RLL符号化されたデータパターンが記録されている。
【0011】
図2は、本発明に係るデータ記録再生装置の構成図を示す。同構成の装置は磁気装置(または、磁気ディスク装置、光磁気ディスク装置)であり、ある記録媒体に対して、PLL クロック周波数とほぼ同周波数の基準クロック(書き込み時に使用するクロック) により記録領域を計測する手段(記録領域計測部1)を持ち、その記録領域計測部は、記録領域の先頭を検出する手段である記録領域検出部4(IBG 検出等)による先頭検出タイミングから動作を開始する。
【0012】
記録コードデータは、そのデータ自体から作られたPLL クロックにより、その記録コードデータを同期し(PLL2およびデータ同期部3) 、順次データ記憶送出手段(データ保持手段5) を経由して、その記録データ(復調対象データ)をデコードするためのデコーダ7に送り込み、デコーダでデコードされたデータをECCエラー訂正部6にてエラー訂正する。上記構成に、クロック抜け補正部8と、クロック過多補正部9とを追加し、データ保持手段5出力のデータを補正することによってデータ補正が実現可能となる。
【0013】
なお、クロック抜け検出およびクロック過多検出は、記録領域計測部1にて基準クロックを計測することにより得られた予定される記録領域の大きさと、クロック抜け補正部8またはクロック過多補正部9にてPLL クロックを計測することにより得られた実際のデータの大きさとを比較する(差分をとる) ことにより、行われる。その結果、その差分のデータが誤データの数となる。
【0014】
また、エラー位置特定手段10によりエラー発生位置を特定し、その特定した位置から上記差分のデータの数だけ、データ保持手段5を操作することによって疑似データに置き換える。なお、エラー発生位置の特定は、後述する如く既知の手段で行えばよい。
【0015】
図3は、図1に対するクロック抜け時のデータの一例を示す。図2中の記録領域計測部1にて記録領域中のビット数を計測し、その結果、計測予定数よりもビット数が少ない場合には、PLL のクロック抜けによるエラー信号(以下ビット抜けエラー信号) が発生したと認識される。エラー信号発生位置(矢印(1))は、RLL コードのデコードエラーにより特定される。次に、記録領域計測部1による計測予定数(範囲(2) で示す記録領域データ数のこと)から、その領域内にて発生したPLL クロック数(範囲(3) と範囲(4) からなる)を差し引いた値、すなわち、
クロック抜け数=範囲(2) −〔範囲(3) +範囲(4) 〕
を保持する。
【0016】
そのクロック抜け数分の疑似データを、上記のビット抜けエラー信号発生位置(矢印(1))に挿入することにより、ビット抜け位置部分より後のデータを救済できる可能性がある。当然、復調データのビット数と記録領域計測手段のビット数とを必ず一致させなければならない。
【0017】
上記説明が基本的なクロック抜け時のデータ補正方法であるが、以下のような事態のために任意に設定できる手段を使用し対応する。
第1は、PLL データ極性反転によってデータ保持手段内のデータを反転する場合である。この場合は、挿入する疑似データを任意に変更することにより対応する。
【0018】
第2は、ビット抜けエラー信号が正確に発生されない場合である。すなわち、エラー信号が発生するのはエラーが発生してからであるが、エラー信号が発生する位置(時間)がエラーが発生した丁度の時刻でない場合がある。その場合には以下の方法で対応する。
【0019】
例えば、エラー位置検出手段の特性が悪く、実際にエラーが発生した位置よりも後ろとしてエラー信号を発生した場合、その遅れてエラー検出した時間分、早めにデータを訂正する必要がある。エラー位置検出手段が実際にエラー信号として発生する時間(エラー信号発生の遅延時間)は、理論的に求めることができるし、実験でも調べることもできる。その決まっているエラー信号発生の遅延時間のデータ分だけ、エラー位置検出手段から発生されるエラー発生位置より早く疑似データを挿入することによって、データ補正の微調整ができる。
【0020】
第3は、あるデータ塊内に複数のエラー位置が存在する場合である。この場合は、エラー位置検出(RLL デコード時) を複数記憶しておく手段を持つことにより対応する。
【0021】
図4は、図1に対するクロック過多時のデータの一例を示す。図2中の記録領域計測部1にて記録領域中のビット数を計測し、その結果、計測予定数よりもビット数が多い場合には、PLL の外部ノイズ等の影響で発生するクロック過多に起因するエラー信号(以下ビット過多エラー信号と呼ぶ) が発生していると認識する。そのエラー位置の検出は、RLL コードのデコードエラーにより行なっている(矢印(5))。
【0022】
次に、記録領域計測部1による計測予定数(範囲(6) で示す記録領域データ数のこと)をその領域内にて発生したPLL クロック(範囲(7) で示される)から差し引いた値であるクロック過多数、すなわち、
クロック過多数=範囲(7) −範囲(6)
を保持する。
【0023】
そのクロック過多数分のデータ数を、エラー信号発生位置(矢印(5))以降のデータ(ビット過多位置部分のデータ)から差し引くことにより、ビット過多位置部分より後のデータを救済できる可能性がある。当然、復調データのビット数と記録領域計測手段のビット数とは必ず一致させなければならない。
【0024】
上記説明が基本的なクロック過多時のデータ補正方法であるが、以下のような事態のために任意に設定できる手段を使用し対応する。
第1は、ビット過多エラー信号が正確に発生されない場合である。すなわち、エラー信号が発生するのはエラーが発生してからであるが、エラー信号が発生する位置が、エラーが発生した丁度の時刻でない場合、以下の方法で対応する。
【0025】
例えば、エラー位置検出手段の特性が悪く、実際にエラーが発生した位置よりも後ろとしてエラー信号を発生した場合、その遅れてエラー検出した時間分、早めにデータを訂正する必要がある。エラー位置検出手段が実際にエラー信号として発生する時間(エラー信号発生の遅延時間) は、理論的に求めることができるし、実験等でも調べることができる。
【0026】
その決まっているエラー信号発生の遅延時間分のデータ分だけ、エラー位置検出手段から発生されるエラー発生位置より早く過多データを差し引くことによって、データ補正の微調整ができる。
【0027】
第2は、あるデータ塊内に複数のエラー位置が存在する場合であり、この場合には、エラー位置検出(RLL デコード時) を複数記憶しておく手段を設けることにより対応する。
【0028】
上記2方法、すなわち、クロック抜けのある場合の対応方法と、クロック過多の場合の対応方法は、記録領域計測手段による計測予定数(記録領域データ数範囲(2),または(6))と、その領域内にて発生したPLL クロック数とを比較することにより、ビット抜け用手段とビット過多用手段を切り換えられる。したがって、従来 ECCによる訂正が不可能であったデータが、訂正される可能性が高くなり、装置の信頼性を向上させることができる。
【0029】
【発明の実施の形態】
図5のブロック図Aは、本発明のクロック抜け補正部8の一構成例と周辺部よりなるブロック図である。図6のタイミングチャートA1は、同一データブロック内で連続して複数ビットの抜けが発生した場合の各部のデータの関係を示し、図7のタイミングチャートA2は、同一データブロック内の複数箇所で単一ビットの抜けが発生した場合について示す。
【0030】
PLL のクロック抜けに起因する RLLコードずれにより発生するビット抜けエラー信号(ア) の発生手段は既知の手段を用いて構成することができる。例えば、 PLL搬送周波数の数倍のクロックを使用し、 PLL周期を計る手段を用いても構わないし、デコーダから出力されるデータからエラーを判断する手段を用いても構わない。そのエラー信号発生位置は、記録領域計測部1中のカウンタ12(記録領域計測用)が、PLL とほぼ同周波数の基準クロックを用いて計測する。カウンタによる計測結果は、FF13にてラッチされ、位置把握に用いられる。
【0031】
カウンタ12は、 IBG(または記録領域の先頭) が検出されたとき(IBG検出信号(イ))、再ロードされる。エラー信号発生が複数回ある場合に対応し、そのFF13を複数種類 (例えばFF14 (図示しない), FF15 等を) 設けてもかまわない。また、FF16は次記録領域でも(すなわち、次のデータの読み出し中にも)、FF13が現在保持している値を保持するものである。
【0032】
次に、記録領域計測部1(カウンタ12) で定まったデータ計測予定数(記録領域データ数) に対応して、CMP19 が予定数分のイネーブルを作る。なお、予定数はMPU 等から任意に設定することができる。その領域内にて発生したPLL クロック数は、 PLLクロックを計測するカウンタ20を使用し、CMP19 のイネーブルが有効な時にPLL クロック数を計測する。そのイネーブルが有効な領域内にて発生したPLL クロック数と、データ計測予定数とを比較器等21を使用して比較し、PLL クロック数が少なければ当クロック抜け補正部が選択されるようにする。
【0033】
また、比較と同時に、 ALU22(減算器でもよい)を用い、データ計測予定数からカウンタ20にて計測されたPLL クロック数を差し引いた値(クロック抜け数) が求められ、その値は FF23 により保持される。そのFF23により保持されたクロック抜け数相当の疑似データを、上記のビット抜けエラー信号発生位置に挿入する。その手段として、MUX24 はデータ保持手段5からエラー訂正部にデータを出力するタイミングにおいて、 FF16 にて位置把握されていたエラー発生位置に対応する位置に、 FF23 によるクロック抜け数の疑似データを切替え挿入する。
【0034】
MUX24を切り替える疑似データ挿入用イネーブル対応のCMP25 は、FF16とFF23とデータ保持手段を管理するカウンタ26により管理される。このカウンタ26は、データ保持手段5からエラー訂正部へデータ送信するためのアドレスを管理する(アップ)カウンタであり、データ保持手段アドレスをデータ計測予定数までインクリメントしていくものである。 CMP25のイネーブル作成方法としては、カウンタ26出力とFF16が同じになった時に CMP25のイネーブルを有効として、FF23のデータ数をエラー訂正部に送った後 CMP25のイネーブルを無効にする。このFF23のデータ数分を計測する手段として、カウンタ35を設けているが、図5においては、カウンタ35のカウントアップにて CMP25のイネーブルは無効となる。このイネーブルが有効中は、カウンタ26は停止する。MUX24 において挿入する疑似データは、 MPUなどからプログラマブルに変更することができるよう、 RAM27に作成される。
【0035】
また、 MPUなどからプログラマブルに任意に変更できる値(設定値) を、FF16の出力から引くために、ALU28 (減算器でもよい) を設ける。このように構成することにより、エラー発生位置(FF16出力)に対して、設定値分少ないALU 出力である位置、即ちエラー発生位置より任意クロック分前の位置から、疑似データを挿入することができるようになる。
【0036】
さらに、エラーが複数箇所にある場合、FF17(図示せず)、FF18等を用いて、エラー位置検出をし、なおかつエラー箇所個数を計測するカウンタ29を持ち、そのカウンタ出力と、FF23にて保持されているクロック抜け数とを比較する。比較した結果、両者が等しい場合には、FF16がそれぞれ示す位置に1クロック分の疑似データを挿入する。等しくない場合には、補正不可能エラーとして、上位にエラー報告をする。その報告に基づいて、上位はリードのリトライ等の処理をする。各々のエラー箇所に1クロック分だけの疑似データを挿入する理由は、1箇所のエラーに対して1個のデータ抜けの可能性が高いからである。複数箇所のエラー発生位置に、各々1クロック分だけカウンタ26を止めるようにし、その時、MUX24 にて切替え、疑似データを挿入する。
【0037】
図8のブロック図Bは、本発明のクロック過多補正部9の一構成例と周辺部よりなるブロック図である。図9のタイミングチャートB1は、同一データブロック内で連続して複数ビットの過多が発生した場合の各部のデータの関係を示し、図10のタイミングチャートB2は、同一データブロック内の複数箇所で単一ビットの過多が発生した場合について示す。
【0038】
クロック過多に起因する RLLコードずれで発生するビット過多エラー信号(ウ) の発生手段も、図5の場合と同様に、公知の手段を用いて構成することが出来る。またクロック抜け時同様、そのエラー信号発生位置は、カウンタ12が PLLとほぼ同周波数の基準クロックを用いて計測するカウンタによる計測結果はFF13にてラッチされ、エラー発生位置の把握に用いられる。
【0039】
エラー信号発生が複数回ある場合も、クロック抜けの場合と同様に、IBG または記録領域の先頭が検出された時(IBG検出信号 (イ))、再ロードされる。エラー信号発生が複数回ある場合に対応し、そのFF13を複数種類 (例えばFF14 (図示しない), FF15 等を) もっても構わない。また、FF16は次記録領域でも(すなわち、次のデータの読み出し中にも)FF13の値を保持するものである。
【0040】
次に記録領域計測部1によるデータ計測予定数(記録領域データ数) は、カウンタ12を使用して、予定数分のイネーブルを CMP19に作る。その領域内にて発生したPLL クロック数は、PLL クロックを計測するカウンタ20を使用し、 CMP19のイネーブルが有効な時にPLL クロック数を計測する。そのイネーブルが有効な領域内にて発生したPLL クロック数と、データ計測予定数を CMP21を使用して比較し、PLL クロック数が多ければクロック過多補正部が選択されるようにする。また、比較と同時に、ALU30 (減算器でもよい、ALU22(ブロック図A) と共用する場合、ALU 出力は負の数となる) を用い、カウンタ20にて計測されたPLL クロック数からデータ計測予定数を差し引いた値(クロック過多数) が求められ、その値はFF23により保持される。
【0041】
そのFF23により保持されたクロック過多分のデータを、上記のビット過多エラー信号発生位置から削除する。そのために、データ保持手段からエラー訂正部にデータ出力するためのアドレスを管理する(アップ)カウンタ36の出力と、FF16にて位置把握されていたエラー発生位置が同じになった時、その時点からFF23にて保持されていたデータ数分のクロック分だけ、カウンタ36出力にALU31 (加算器でも構わない)にて加算し、その加算出力32が示す番地のデータをデータ保持手段5からエラー訂正部へ送出する。この加算を行うことにより、クロック過多部分のデータをエラー訂正部に出力しないようにできる。その後加算出力32はインクリメントされるが、その加算出力32はFF37の出力と同じになるまでインクリメントが続けられる。なお、FF37は、CMP19 でイネーブルが有効な時にカウンタ20にて計測された PLLクロック数の最大値を、次記録領域でも保持するものである。
【0042】
又、FF16の出力から、 MPUなどからプログラマブルに任意に変更できる値(設定値) を引くようにするための ALU28(減算器でもよい) を持つ。こうすることにより、エラー発生位置に対して(FF16 出力) 、設定値分少ないALU 出力である位置、即ちエラー発生位置より任意クロック分前の位置から、データ補正できるようになる。
【0043】
クロック抜け時とクロック過多時でエラー発生位置を別に設定できるよう、設定値保存用のRAM(図示せず) を各場合専用に2つに分けて構成してもよいが、共通して使用する構成にしてもよい。
【0044】
さらに、エラーが複数箇所にある場合、 FF17(図示せず) 、FF18等にてエラー位置検出し、なおかつエラー箇所個数を計測するカウンタ29を持ち、そのカウンタ出力と、FF23にて保持されているクロック過多数とを比較する。比較した結果、両者が等しければ、加算出力32が示す番地のデータをデータ保持手段5からエラー訂正部へ送出する。この動作をエラー箇所個数分だけ繰り返す。両者が等しくなければ、補正不可能エラーとして、上位にエラー報告する。上位はリードのリトライ等の処理をする。各々のエラー箇所に1クロック分だけのデータを削除する理由は、1箇所のエラーに対して1個のデータ過多の可能性が高いからである。
【0045】
【発明の効果】
以上説明したように、本発明によれば、従来ECC でもエラー訂正不可能であったRLL コードデータのビット抜けや、ビット重複によって起こるリードエラーに対して、適当なビットを挿入もしくは、削除することによって、ECC で訂正できる可能性が高くなり、記憶装置のデータ記憶の信頼性の向上に寄与するところが大きい。
【図面の簡単な説明】
【図1】データフォーマット
【図2】構成図
【図3】クロック抜けのデータ
【図4】クロック過多のデータ
【図5】ブロック図A
【図6】タイミングチャートA1
【図7】タイミングチャートA2
【図8】ブロック図B
【図9】タイミングチャートB1
【図10】タイミングチャートB2
【符号の説明】
1は記録領域計測部、
2はPLL、
3はデータ同期部、
4は記録領域検出部、
5はデータ保持手段、
6はECCエラー訂正部、
7はデコーダ、
8はクロック抜け補正部、
9はクロック過多補正部、
10はエラー位置特定手段、
11はエラー検出、
12、20、26、29、35、36はカウンタ、
13、15、16、18、23、37はFF、
19、21、25は比較器(CMP)、
22、28、30、31、38はALU、
24はMUX、
27はRAM、
32は加算出力。
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a data recording / reproducing method and apparatus, and more particularly to a method for relieving a read error caused by data duplication or data omission occurring when reading RLL (Run Length Limited) code data written on a storage medium such as a magnetic tape. Regarding treatment.
[0002]
Recent storage devices are required to have high storage density and high-speed data transfer due to their small size and large capacity.Therefore, a slight amount of scratches, dust, noise, etc. on the medium cause a read error and cause a data error. It is becoming very difficult to increase the reliability of the system.
[0003]
Particularly, in the case of a data reproducing apparatus that requires high reliability, the medium recording data is subjected to code conversion (decoding), and then data errors are recovered (error corrected) by means such as ECC (Error Correction Code). However, in the case of a read error generated for the above-described reason, a random error becomes a burst error, and the error becomes large, so that it may not be possible to relieve the error by means such as ECC. Therefore, it is necessary to restore the read data before sending the data to a means such as the ECC.
[0004]
[Prior art]
In the ECC of a conventional storage device, the result of decoding data written in RLL code on a recording medium is corrected. Since the RLL code written on the medium is once decoded, if a missing read bit or the like occurs at that time, even the ECC may become uncorrectable data due to the nature of the RLL code.
[0005]
For example, in the case of the 1-7 RLL code, when decoding is performed by referring to the last bit of the preceding data block and the foremost bit of the succeeding data block, when a position to be referred to is shifted, This will result in incorrect decoding.
[0006]
For this reason, in the conventional apparatus, an attempt has been made to improve the reliability by performing recovery measures such as re-reading (retry operation). Had been destroyed.
[0007]
[Problems to be solved by the invention]
As described above, in the related art, even important write data is discarded because it cannot be corrected, and there has been a problem in that data reliability is reduced.
[0008]
The present invention improves the ECC correction efficiency by detecting improper data by detecting a read error of write data on a medium, decoding it, and sending it to the ECC unit, thereby improving the reliability of the device. It is intended to make it happen.
[0009]
[Means for Solving the Problems]
The present invention reads out first data from a recording medium, extracts a clock from the first data, creates second data synchronized with the clock, and decodes third data from the second data. In the data reproducing method for correcting the error, when the number of the second data is smaller than the number of data defined from the recording area where the first data is recorded, and When a missing of a plurality of bits occurs, predetermined pseudo data having a data length corresponding to the number of differences between the two is inserted into a previously specified data missing portion of the second data to generate correction data. When a single bit is missing at a plurality of locations in the same data block, pseudo data for one clock is inserted into a plurality of previously specified missing locations of the second data. When the number of the second data is larger than the number of data determined from the recording area where the first data is recorded, and a plurality of bits are continuously formed in the same data block. When the data excess occurs, the excess data having the data length corresponding to the number of differences between the two is deleted from the previously specified data excess portion of the second data, and the correction data is created. When a single-bit data excess occurs at a plurality of locations in a block, excess data for one clock is deleted from a plurality of data excess locations specified in advance in the second data to generate correction data. Then, the correction data is decoded into third data, and the third data is subjected to error correction. Hereinafter, a specific description will be given.
[0010]
FIG. 1 is a diagram showing a data format near a recording area on a magnetic tape. Since a magnetic disk and a magneto-optical disk can be handled in the same manner, the description of those cases is omitted. An IBG (Inter Block Gap) portion is a gap between data blocks, and is a gap for guaranteeing a time until the tape running speed becomes constant. In the data block, an RLL-encoded data pattern is recorded.
[0011]
FIG. 2 shows a configuration diagram of a data recording / reproducing apparatus according to the present invention. The device having the same configuration is a magnetic device (or a magnetic disk device or a magneto-optical disk device), and a recording area is recorded on a certain recording medium by a reference clock (clock used for writing) having substantially the same frequency as the PLL clock frequency. It has a means for measuring (recording area measuring unit 1), and the recording area measuring unit starts its operation from the start detection timing by the recording area detecting unit 4 (IBG detection or the like) which is a means for detecting the head of the recording area.
[0012]
The recording code data is synchronized with the recording code data by a PLL clock generated from the data itself (the PLL 2 and the data synchronizing unit 3), and is sequentially recorded via the data storage and transmission means (data holding means 5). The data (data to be demodulated) is sent to a decoder 7 for decoding, and the data decoded by the decoder is error-corrected by an ECC error correction unit 6. Data correction can be realized by adding a clock loss correction unit 8 and an excessive clock correction unit 9 to the above configuration and correcting data output from the data holding unit 5.
[0013]
Note that the detection of the missing clock and the detection of the excessive clock are performed by the clock missing correction unit 8 or the excessive clock correction unit 9 and the size of the planned recording area obtained by measuring the reference clock by the recording area measuring unit 1. This is performed by comparing (taking a difference) with the actual data size obtained by measuring the PLL clock. As a result, the difference data becomes the number of erroneous data.
[0014]
Further, the error occurrence position is specified by the error position specifying means 10 and the data is replaced with the pseudo data by operating the data holding means 5 by the number of the difference data from the specified position. The error occurrence position may be specified by a known means as described later.
[0015]
FIG. 3 shows an example of data at the time of a clock drop in FIG. The number of bits in the recording area is measured by the recording area measuring unit 1 in FIG. 2, and as a result, if the number of bits is smaller than the expected number of measurements, an error signal due to a PLL clock loss (hereinafter, a bit loss error signal) ) Is recognized as having occurred. The error signal generation position (arrow (1)) is specified by a decoding error of the RLL code. Next, the number of PLL clocks generated in the area (range (3) and range (4)) is calculated from the number of measurements scheduled by the recording area measuring unit 1 (the number of recording area data indicated by the range (2)). ), That is,
Number of missing clocks = range (2) − [range (3) + range (4)]
Hold.
[0016]
By inserting the pseudo data corresponding to the number of missing clocks into the above-described bit missing error signal generation position (arrow (1)), there is a possibility that data after the bit missing position can be rescued. Naturally, the number of bits of the demodulated data must always match the number of bits of the recording area measuring means.
[0017]
The above description is a basic data correction method at the time of a clock dropout. However, the following method is used by using means that can be arbitrarily set for the following situations.
The first case is when the data in the data holding means is inverted by the PLL data polarity inversion. This case is dealt with by arbitrarily changing the pseudo data to be inserted.
[0018]
The second is a case where a bit missing error signal is not accurately generated. That is, the error signal is generated after the error occurs, but the position (time) at which the error signal occurs may not be the exact time at which the error occurred. In that case, the following method is used.
[0019]
For example, if the error position detecting means has poor characteristics and an error signal is generated after the position where the error actually occurred, it is necessary to correct the data earlier by the time when the error was detected later. The time during which the error position detection means actually generates an error signal (the delay time of error signal generation) can be theoretically obtained or can be checked by experiment. By inserting the pseudo data earlier than the error occurrence position generated by the error position detecting means by the data of the determined delay time of the error signal generation, the data correction can be finely adjusted.
[0020]
Third, there is a case where a plurality of error positions exist in a certain data block. This case is dealt with by providing a means for storing a plurality of error position detections (during RLL decoding).
[0021]
FIG. 4 shows an example of data at the time of excessive clock with respect to FIG. The number of bits in the recording area is measured by the recording area measuring unit 1 in FIG. 2, and as a result, if the number of bits is larger than the planned number, the clock generated by the influence of the external noise of the PLL or the like becomes excessive. It is recognized that the resulting error signal (hereinafter referred to as an excessive bit error signal) has occurred. The detection of the error position is performed by a decoding error of the RLL code (arrow (5)).
[0022]
Next, a value obtained by subtracting the expected number of measurements (the number of recording area data indicated by the range (6)) by the recording area measuring unit 1 from the PLL clock (indicated by the range (7)) generated in the area. A certain clock overload,
Clock excess = range (7)-range (6)
Hold.
[0023]
By subtracting the data number corresponding to the clock excess from the data (data in the bit excess position portion) subsequent to the error signal generation position (arrow (5)), there is a possibility that the data subsequent to the bit excess position portion can be rescued. is there. Of course, the number of bits of the demodulated data must always match the number of bits of the recording area measuring means.
[0024]
The above description is a basic data correction method when the clock is excessive, but a means that can be arbitrarily set for the following situations will be used.
The first is a case where the excessive bit error signal is not accurately generated. That is, the error signal is generated after the error has occurred. However, when the position where the error signal is generated is not the exact time when the error occurs, the following method is used.
[0025]
For example, if the error position detecting means has poor characteristics and an error signal is generated after the position where the error actually occurred, it is necessary to correct the data earlier by the time when the error was detected later. The time when the error position detecting means actually generates an error signal (delay time of error signal generation) can be theoretically obtained, and can also be checked by experiments or the like.
[0026]
Fine adjustment of data correction can be performed by subtracting excess data earlier than the error occurrence position generated by the error position detection means by the data corresponding to the determined error signal generation delay time.
[0027]
The second is a case where there are a plurality of error positions in a certain data block. In this case, this is dealt with by providing a means for storing a plurality of error position detections (during RLL decoding).
[0028]
The above two methods, namely, a method for coping with a missing clock and a method for coping with an excessive clock, include a planned number of recordings by the recording area measuring means (recording area data number range (2) or (6)); By comparing the number of PLL clocks generated in the area, the means for missing bits and the means for excess bits can be switched. Therefore, data that cannot be corrected by the ECC in the past becomes more likely to be corrected, and the reliability of the device can be improved.
[0029]
BEST MODE FOR CARRYING OUT THE INVENTION
A block diagram A in FIG. 5 is a block diagram including a configuration example of the clock loss correction unit 8 of the present invention and peripheral parts. The timing chart A1 in FIG. 6 shows the relationship between the data of each part when a plurality of bits are continuously missing in the same data block. The timing chart A2 in FIG. The case where one bit is missing will be described.
[0030]
A means for generating a bit missing error signal (A) generated by a RLL code shift due to a PLL clock missing can be configured using known means. For example, a means for measuring the PLL cycle using a clock several times the PLL carrier frequency may be used, or a means for judging an error from data output from the decoder may be used. The error signal generation position is measured by a counter 12 (for recording area measurement) in the recording area measuring unit 1 using a reference clock having substantially the same frequency as that of the PLL. The measurement result by the counter is latched by the FF 13 and used for grasping the position.
[0031]
The counter 12 is reloaded when IBG (or the head of the recording area) is detected (IBG detection signal (a)). To cope with the case where the error signal is generated a plurality of times, a plurality of types of FFs 13 (for example, FFs 14 (not shown), FFs 15 and the like) may be provided. The FF 16 holds the value currently held by the FF 13 even in the next recording area (that is, during reading of the next data).
[0032]
Next, the CMP 19 makes the enable for the planned number corresponding to the planned data measurement number (the number of recording area data) determined by the recording area measuring unit 1 (counter 12). Note that the scheduled number can be arbitrarily set from the MPU or the like. The number of PLL clocks generated in the area is measured by using a counter 20 that measures the PLL clock and when the enable of the CMP 19 is valid. The number of PLL clocks generated in the area where the enable is valid is compared with the expected number of data measurements using a comparator 21 or the like. If the number of PLL clocks is small, the clock missing correction unit is selected. I do.
[0033]
Simultaneously with the comparison, a value (the number of missing clocks) obtained by subtracting the number of PLL clocks measured by the counter 20 from the expected number of data measurement using the ALU 22 (may be a subtractor) is obtained, and the value is held by the FF 23. Is done. The pseudo data equivalent to the number of missing clocks held by the FF 23 is inserted into the above-mentioned bit missing error signal occurrence position. As a means for this, the MUX 24 switches and inserts the pseudo data of the number of missing clocks by the FF 23 into the position corresponding to the error occurrence position that was grasped by the FF 16 at the timing of outputting data from the data holding unit 5 to the error correction unit. I do.
[0034]
The CMP 25 corresponding to the pseudo data insertion enable for switching the MUX 24 is managed by the FF 16 and the FF 23 and a counter 26 which manages data holding means. The counter 26 is an (up) counter for managing an address for transmitting data from the data holding unit 5 to the error correction unit, and increments the data holding unit address up to the scheduled data measurement number. As a method of creating the enable of the CMP 25, the enable of the CMP 25 is enabled when the output of the counter 26 and the FF 16 become the same, and after the number of data of the FF 23 is sent to the error correction unit, the enable of the CMP 25 is disabled. A counter 35 is provided as a means for measuring the number of data of the FF 23. In FIG. 5, however, the enable of the CMP 25 is invalidated by counting up the counter 35 in FIG. While this enable is valid, the counter 26 stops. The pseudo data to be inserted in the MUX 24 is created in the RAM 27 so that it can be programmably changed from the MPU or the like.
[0035]
Also, an ALU 28 (a subtractor may be provided) is provided to subtract from the output of the FF 16 a value (set value) that can be arbitrarily changed from an MPU or the like. With this configuration, it is possible to insert the pseudo data from a position where the ALU output is smaller than the error occurrence position (FF16 output) by the set value, that is, a position that is an arbitrary clock before the error occurrence position. Become like
[0036]
Further, when an error is present at a plurality of locations, a counter 29 for detecting an error position using FF 17 (not shown), FF 18 and the like and counting the number of error locations is provided. The number of missing clocks is compared. As a result of the comparison, if the two are equal, one clock worth of pseudo data is inserted at the position indicated by each of the FFs 16. If they are not equal, an error is reported to an upper level as an uncorrectable error. Based on the report, the host performs processing such as read retry. The reason why pseudo data of only one clock is inserted into each error location is that there is a high possibility that one data is missing for one error. At a plurality of error occurrence positions, the counter 26 is stopped by one clock for each clock. At that time, switching is performed by the MUX 24 and pseudo data is inserted.
[0037]
A block diagram B of FIG. 8 is a block diagram including one configuration example of the excessive clock correction unit 9 of the present invention and peripheral parts. The timing chart B1 of FIG. 9 shows the relationship between the data of each part when the excess of a plurality of bits occurs continuously in the same data block, and the timing chart B2 of FIG. The case where an excess of one bit occurs will be described.
[0038]
Means for generating an excessive bit error signal (c) generated due to an RLL code shift due to excessive clocks can be configured using known means as in the case of FIG. As in the case where the clock is lost, the error signal generation position is measured by the counter 12 using the reference clock having substantially the same frequency as that of the PLL, and the measurement result is latched by the FF 13 to be used for grasping the error generation position.
[0039]
Even when the error signal is generated a plurality of times, similarly to the case of the missing clock, when the IBG or the head of the recording area is detected (IBG detection signal (a)), the data is reloaded. In response to a case where an error signal is generated a plurality of times, the FF 13 may be of a plurality of types (for example, FF14 (not shown), FF15, etc.). The FF 16 holds the value of the FF 13 even in the next recording area (that is, during reading of the next data).
[0040]
Next, the planned number of data measurements (the number of recording area data) by the recording area measuring unit 1 is enabled by the counter 12 using the counter 12 for the planned number. The number of PLL clocks generated in the area is measured by using a counter 20 that measures the PLL clock, and the number of PLL clocks is measured when the enable of the CMP 19 is enabled. The number of PLL clocks generated in the area where the enable is valid is compared with the planned number of data measurements using the CMP 21. If the number of PLL clocks is large, the clock excess correction unit is selected. At the same time as the comparison, the ALU 30 (which may be a subtractor, the ALU output is a negative number when shared with the ALU 22 (block diagram A)) is used to measure data from the number of PLL clocks measured by the counter 20. A value obtained by subtracting the number (too many clocks) is obtained, and the value is held by the FF 23.
[0041]
The excess clock data held by the FF 23 is deleted from the bit excess error signal occurrence position. Therefore, when the output of the (up) counter 36 that manages the address for outputting data from the data holding unit to the error correction unit and the error occurrence position that has been located by the FF 16 become the same, The ALU 31 (may be an adder) adds the number of clocks equal to the number of data held in the FF 23 to the output of the counter 36, and the data at the address indicated by the added output 32 is sent from the data holding unit 5 to the error correction unit. Send to By performing this addition, it is possible to prevent data in the clock excess part from being output to the error correction unit. Thereafter, the addition output 32 is incremented, but the addition output 32 continues to be incremented until it becomes the same as the output of the FF 37. The FF 37 holds the maximum value of the number of PLL clocks measured by the counter 20 when the enable is enabled by the CMP 19 in the next recording area.
[0042]
Further, it has an ALU 28 (a subtractor may be used) for subtracting a value (set value) that can be arbitrarily changed from the output of the FF 16 from an MPU or the like in a programmable manner. By doing so, the data can be corrected from the position where the ALU output is smaller by the set value than the error occurrence position (FF16 output), that is, the position before the error occurrence position by an arbitrary clock.
[0043]
A RAM (not shown) for storing set values may be divided into two dedicated to each case so that an error occurrence position can be set separately when the clock is lost and when the clock is excessive, but they are commonly used. It may be configured.
[0044]
Further, when an error is present in a plurality of locations, the FF 17 (not shown), the FF 18 and the like have a counter 29 for detecting an error position and counting the number of error locations, and the counter output and the FF 23 hold the counter output. Compare with too many clocks. As a result of the comparison, if they are equal, the data at the address indicated by the addition output 32 is sent from the data holding means 5 to the error correction unit. This operation is repeated by the number of error locations. If they are not equal, an error is reported to an upper-level as an uncorrectable error. The host performs processing such as read retry. The reason why data of only one clock is deleted at each error location is that there is a high possibility that one data is excessive for one error.
[0045]
【The invention's effect】
As described above, according to the present invention, it is possible to insert or delete appropriate bits with respect to read errors caused by bit omission or bit duplication of RLL code data, which cannot be corrected by the conventional ECC. This increases the possibility of correction by ECC, and greatly contributes to the improvement of the reliability of data storage of the storage device.
[Brief description of the drawings]
FIG. 1 Data format FIG. 2 Configuration diagram FIG. 3 Data with missing clocks FIG. 4 Data with excessive clocks FIG. 5 Block diagram A
FIG. 6 is a timing chart A1.
FIG. 7 is a timing chart A2.
FIG. 8 is a block diagram B.
FIG. 9 is a timing chart B1.
FIG. 10 is a timing chart B2.
[Explanation of symbols]
1 is a recording area measuring unit,
2 is PLL,
3 is a data synchronization unit,
4 is a recording area detection unit,
5 is data holding means,
6 is an ECC error correction unit,
7 is a decoder,
8 is a clock missing correction unit,
9 is a clock excess correction unit,
10 is an error position specifying means,
11 is error detection,
12, 20, 26, 29, 35, and 36 are counters,
13, 15, 16, 18, 23 and 37 are FF,
19, 21 and 25 are comparators (CMP),
22,28,30,31,38 are ALU,
24 is a MUX,
27 is RAM,
32 is an addition output.

Claims (2)

記録媒体から第1のデータを読み出し、該第1のデータからクロックを抽出すると共に該クロックに同期した第2のデータを作成し、該第2のデータから復号された第3のデータをエラー訂正するデータ再生方法において、
前記第2のデータの数が前記第1のデータが記録されている記録領域より定められるデータの数より少ない場合であって、
同一データブロック内で連続して複数ビットの抜けが発生した場合には、両者の差の数に対応するデータ長の所定の擬似データを、前記第2のデータの予め特定されたデータ抜け箇所に挿入して補正データを作成し、
同一データブロック内の複数箇所で単一ビットの抜けが発生した場合には、1クロック分の擬似データを、前記第2のデータの予め特定された複数のデータ抜け箇所に挿入して補正データを作成し、
前記第2のデータの数が前記第1のデータが記録されている記録領域より定められるデータの数より多い場合であって、
同一データブロック内で連続して複数ビットのデータ過多が発生した場合には、両者の差の数に対応するデータ長の過多データを、前記第2のデータの予め特定されたデータ過多箇所から削除して補正データを作成し、
同一データブロック内の複数箇所で単一ビットのデータ過多が発生した場合には、1クロック分の過多データを、前記第2のデータの予め特定された複数のデータ過多箇所から削除して補正データを作成し、
前記補正データを復号して第3のデータとし、該第3のデータをエラー訂正することを特徴とするデータ再生方法。
First data is read from a recording medium, a clock is extracted from the first data, second data is generated in synchronization with the clock, and third data decoded from the second data is subjected to error correction. The data playback method
A case where the number of the second data is smaller than the number of data determined from a recording area in which the first data is recorded,
When a plurality of missing bits occur consecutively in the same data block, predetermined pseudo data having a data length corresponding to the number of differences between the two bits is added to the previously specified data missing portion of the second data. Insert to create correction data,
When a single bit is missing at a plurality of locations in the same data block, pseudo data for one clock is inserted into a plurality of missing locations specified in advance of the second data to correct the correction data. make,
A case where the number of the second data is larger than the number of data determined from a recording area in which the first data is recorded,
If the excess data of a plurality of bits occurs consecutively in the same data block, the excess data having the data length corresponding to the number of differences between the two is deleted from the previously specified excess data portion of the second data. To create correction data,
In the case where single-bit data excess occurs at a plurality of locations in the same data block, excess data for one clock is deleted from the plurality of data excess locations specified in advance of the second data to correct the correction data. To create
A data reproducing method, wherein the correction data is decoded into third data, and the third data is subjected to error correction.
複数の記録領域を有する記録媒体の該記録領域を検出し、該記録領域内に記録されたデータ数を計測し計測予定数として出力する記録領域計測部と、
該記録媒体から該記録領域毎に読み出されたデータを保持するデータ保持手段と、
読み出された前記データのエラー発生位置を特定するエラー位置特定手段と、
前記エラー位置特定手段より特定されたエラー位置を複数記憶しておくエラー位置記憶手段と、
クロック抜け補正部又は/及びクロック過多補正部とを有し、
前記クロック抜け補正部は、
読み出された前記データの数が前記計測予定数より少ない場合であって、
同一データブロック内で連続して複数ビットの抜けが発生した場合には、両者の差の数に対応するデータ長の所定の擬似データを、前記エラー位置特定手段からの位置情報に従って、前記データ保持手段に保持されているデータに挿入し、
同一データブロック内の複数箇所で単一ビットの抜けが発生した場合には、1クロック分の擬似データを、前記エラー位置特定手段からの位置情報に従って、前記データ保持手段に保持されているデータに挿入するものであり、
前記クロック過多補正部は、
読み出された前記データの数が前記計測予定数より多い場合であって、
同一データブロック内で連続して複数ビットのデータ過多が発生した場合には、両者の差の数に対応するデータ長の過剰データを、前記エラー位置特定手段からの位置情報に従って、前記データ保持手段に保持されているデータから削除し、
同一データブロック内の複数箇所で単一ビットのデータ過多が発生した場合には、データ過多発生箇所毎に1クロック分の過剰データを、前記エラー位置特定手段からの位置情報に従って、前記データ保持手段に保持されているデータから削除するものであることを特徴とするデータ再生装置。
A recording area measuring unit that detects the recording area of the recording medium having a plurality of recording areas, measures the number of data recorded in the recording area, and outputs the measured number as a planned number;
Data holding means for holding data read from the recording medium for each recording area;
Error position specifying means for specifying an error occurrence position of the read data;
Error position storage means for storing a plurality of error positions identified by the error position identification means,
A clock missing correction unit or / and an excessive clock correction unit,
The clock omission correction unit,
In the case where the number of the read data is smaller than the planned number of measurements,
When a plurality of missing bits occur consecutively in the same data block, predetermined pseudo data having a data length corresponding to the number of differences between them is stored in accordance with the position information from the error position specifying means. Insert into the data held in the means,
When a single bit is missing at a plurality of locations in the same data block, the pseudo data for one clock is replaced with the data held in the data holding unit in accordance with the position information from the error position specifying unit. To be inserted,
The clock excess correction unit,
In the case where the number of the read data is larger than the planned number of measurements,
In the case where data excess of a plurality of bits occurs consecutively in the same data block, the excess data having a data length corresponding to the number of differences between the two is written to the data holding unit in accordance with the position information from the error position identification unit. From the data stored in
When a single-bit data excess occurs at a plurality of locations in the same data block, the excess data for one clock is transferred to the data holding unit in accordance with the position information from the error location identification unit for each data excess occurrence location. A data reproducing apparatus for deleting data stored in the data reproducing apparatus.
JP30714797A 1997-11-10 1997-11-10 Data reproducing method and data reproducing apparatus Expired - Fee Related JP3566843B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP30714797A JP3566843B2 (en) 1997-11-10 1997-11-10 Data reproducing method and data reproducing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP30714797A JP3566843B2 (en) 1997-11-10 1997-11-10 Data reproducing method and data reproducing apparatus

Publications (2)

Publication Number Publication Date
JPH11144396A JPH11144396A (en) 1999-05-28
JP3566843B2 true JP3566843B2 (en) 2004-09-15

Family

ID=17965602

Family Applications (1)

Application Number Title Priority Date Filing Date
JP30714797A Expired - Fee Related JP3566843B2 (en) 1997-11-10 1997-11-10 Data reproducing method and data reproducing apparatus

Country Status (1)

Country Link
JP (1) JP3566843B2 (en)

Also Published As

Publication number Publication date
JPH11144396A (en) 1999-05-28

Similar Documents

Publication Publication Date Title
US4275466A (en) Block sync signal extracting apparatus
KR960019110A (en) Copy protection method and apparatus of digital imaging system
JPS6412143B2 (en)
JPH0656694B2 (en) Signal transfer device
US3774154A (en) Error control circuits and methods
TW200400490A (en) Code correction device
JP3566843B2 (en) Data reproducing method and data reproducing apparatus
JPS6136306B2 (en)
JP4439826B2 (en) Synchronous code recovery circuit and method
JP2664267B2 (en) Code error correction device
KR100253809B1 (en) Synchronous pattern detector
JP3428358B2 (en) Time code signal reader
JP2643132B2 (en) Digital data recording device and recording / reproducing device
JP2600152B2 (en) Block address detection circuit
JP2734327B2 (en) Track address detection circuit
JPH10214462A (en) Reproducer and reproducing method for digital data
JPH11232797A (en) Disk reproducing device and reproducing method
JP3276700B2 (en) Disc data recording method and disc data recording / reproducing method
JPH03156775A (en) Method and device for information recording
JPH069107B2 (en) Time axis correction device
JPH04360070A (en) Magnetic recording and reproducing device
JPH02285563A (en) Synchronous detecting system
JP2005182937A (en) Digital signal reproducing apparatus
JPH0574060A (en) Optical recording and reproducing device
JPS62217747A (en) Synchronization detecting device

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040330

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040426

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: 20040608

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040611

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: 20090618

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100618

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110618

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120618

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120618

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130618

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140618

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees