(57)【特許請求の範囲】
【請求項１】
２個のシンボルにより構成される符号系列の同一の前記シンボル間に連続して配置される他の前記シンボルの長さである連続長が、所定の規定長として予め規定されている符号であって、所定の伝送路を介して伝送された伝送符号を復号する符号復号装置であって、
前記伝送符号の同一の前記シンボルの連続長が、前記規定に違反している違反長の長さであることを検出する違反長検出手段と、
前記違反長のシンボルにより構成される違反ビット列の前のビット列のパターンと後のビット列のパターンのうち、前記違反ビット列の前のビット列または後のビット列の前記連続長が前記規定長となるビット列のパターンを検出するパターン検出手段と、
前記パターン検出手段により、前記違反ビット列の前のビット列が、前記規定長の同一のシンボルにより構成されていることが検出されたとき、前記違反ビット列の後のビット列のビットを前記補正位置として指定し、前記違反ビット列の後のビット列が、前記規定長の同一のシンボルにより構成されていることが検出されたとき、前記違反ビット列の前のビット列のビットを前記補正位置として指定する指定手段と、
前記違反長が前記規定長となるように、前記指定手段の指定する補正位置の前記伝送符号のビットを補正する補正手段と
を備えることを特徴とする符号復号装置。
【請求項２】
前記伝送路を介して伝送されてきた信号を少なくとも１つの基準レベルと比較して、前記伝送符号を出力する比較手段をさらに備える
ことを特徴とする請求項１に記載の符号復号装置。
【請求項３】
前記伝送符号は、所定の記録媒体から再生された符号である
ことを特徴とする請求項１に記載の符号復号装置。
【請求項４】
前記指定手段により指定された補正位置を、次に指定手段により指定されるまでの間、一時的に記憶する記憶手段をさらに備える
ことを特徴とする請求項１に記載の符号復号装置。
【請求項５】
前記違反長検出手段により前記違反長が検出され、かつ、前記パターン検出手段により、前記違反ビット列の前のパターンまたは後のビット列のパターンが、
前記違反ビット列の後または前のビットを補正位置として指定するパターンではないことが検出されたとき、前記指定手段は、直前の前記違反長の検出時の補正位置に対応して今回の補正位置を指定する
ことを特徴とする請求項１に記載の符号復号装置。
【請求項６】
前記違反長検出手段により前記違反長が検出され、かつ、前記パターン検出手段により、前記違反ビット列の前のパターンまたは後のビット列のパターンが、
前記違反ビット列の後または前のビットを補正位置として指定するパターンではないことが検出されたとき、前記指定手段は、前記違反ビット列の前または後のビットのうち、予め指定されている方を前記補正位置として指定する
ことを特徴とする請求項１に記載の符号復号装置。
【請求項７】
前記補正手段は、前記指定手段により指定された前記補正位置の前記ビットの論理レベルを反転させることにより前記補正を行う
ことを特徴とする請求項１に記載の符号復号装置。
【請求項８】
前記シンボルは、”１”と”０”であり、
前記規定長は、前記符号系列の”１”と”１”の間に連続して配置される”０”の最小連続長がｄである符号をＮＲＺＩ変調した後の、同一のシンボルの最小連続長ｄ’（＝ｄ＋１（ｄ≧１））であり、
前記違反長検出手段は、チャネルビットのビット列の同一のシンボルの連続長が（ｄ’−１）である連続長を前記違反長として検出し、
前記補正手段は、前記違反ビット列を含むビット列を、前記同一のシンボルの連続長がｄ’となるように補正する
ことを特徴とする請求項１に記載の符号復号装置。
【請求項９】
前記指定手段は、前記違反長の直前の１個のビット、または直後の１個のビットのうちの少なくとも一方を、前記補正位置として指定する
ことを特徴とする請求項８に記載の符号復号装置。
【請求項１０】
前記シンボルは、”１”と”０”であり、
前記規定長は、前記符号系列の”１”と”１”の間に連続して配置される”０”の最大連続長がｋである符号をＮＲＺＩ変調した後の、同一のシンボルの最大連続長ｋ’（＝ｋ＋１）であり、
前記違反長検出手段は、チャネルビットのビット列の同一のシンボルの連続長が（ｋ’＋１）である連続長を前記違反長として検出し、
前記補正手段は、前記違反ビット列を含むビット列を、前記同一のシンボルの連続長がｋ’となるように補正する
ことを特徴とする請求項１に記載の符号復号装置。
【請求項１１】
前記指定手段は、前記違反長の最前の１個のビット、または最後の１個のビットのうちの少なくとも一方を、前記補正位置として指定する
ことを特徴とする請求項１０に記載の符号復号装置。
【請求項１２】
前記シンボルは、”１”と”０”であり、
前記規定長は、前記符号系列の”１”と”１”の間に連続して配置される”０”の最小連続長がｄである符号の、”０”の連続長ｄ（ｄ≧１）であり、
前記違反長検出手段は、エッジデータからなる前記伝送符号から、チャネルビットのビット列の同一のシンボルの連続長が（ｄ−１）である連続長を前記違反長として検出し、
前記補正手段は、前記違反ビット列を含むビット列を、前記同一のシンボルの連続長がｄとなるように補正する
ことを特徴とする請求項１に記載の符号復号装置。
【請求項１３】
前記指定手段は、前記違反長の最前の１個のビットとその直前の１個のビット、または前記違反長の最後の１個のビットとその直後の１個のビットのうちの少なくとも一方を、前記補正位置として指定する
ことを特徴とする請求項１２に記載の符号復号装置。
【請求項１４】
前記シンボルは、”１”と”０”であり、
前記規定長は、前記符号系列の”１”と”１”の間に連続して配置される”０”の最大連続長がｋである符号の、”０”の連続長ｋであり、
前記違反長検出手段は、エッジデータからなる前記伝送符号から、チャネルビットのビット列の同一のシンボルの連続長が（ｋ＋１）である連続長を前記違反長として検出し、
前記補正手段は、前記違反ビット列を含むビット列を、前記同一のシンボルの連続長がｋとなるように補正する
ことを特徴とする請求項１に記載の符号復号装置。
【請求項１５】
前記指定手段は、前記違反長の最前の１個のビットとその直後の１個のビット、または前記違反長の最後の１個のビットとその直前の１個のビットのうちの少なくとも一方を、前記補正位置として指定する
ことを特徴とする請求項１４に記載の符号復号装置。
【請求項１６】
２個のシンボルにより構成される符号系列の同一の前記シンボル間に連続して配置される他の前記シンボルの長さである連続長が、所定の規定長として予め規定されている符号であって、所定の伝送路を介して伝送された伝送符号を復号する符号復号方法であって、
前記伝送符号の同一の前記シンボルの連続長が、前記規定に違反している違反長の長さであることを検出する違反長検出ステップと、
前記違反長のシンボルにより構成される違反ビット列の前のビット列のパターンと後のビット列のパターンのうち、前記違反ビット列の前のビット列または後のビット列の前記連続長が前記規定長となるビット列のパターンを検出するパターン検出ステップと、
前記パターン検出ステップにおいて、前記違反ビット列の前のビット列が、前記規定長の同一のシンボルにより構成されていることが検出されたとき、前記違反ビット列の後のビット列のビットを前記補正位置として指定し、前記違反ビット列の後のビット列が、前記規定長の同一のシンボルにより構成されていることが検出されたとき、前記違反ビット列の前のビット列のビットを前記補正位置として指定する指定ステップと、
前記違反長が前記規定長となるように、前記指定ステップの指定する補正位置の前記伝送符号のビットを補正する補正ステップと
を備えることを特徴とする符号復号方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、RLL（Run Length Limited）符号を用いて情報を記録した記録媒体から読み出した再生ＲＦ信号を、少なくとも１つの基準レベルに基づいて復号して、チャネルビットデータを出力する符号復号装置および方法に関し、特にチャネルビットデータ中に同一シンボルの最小連続長または最大連続長の条件を満足しない箇所がある場合は、付加された情報に基づいてビットエラーである確率の高いビットを選定し、選定したビットを補正して、同一シンボルの最小連続長または最大連続長の条件を満足するチャネルビットデータを出力するようにした符号復号装置および方法に関する。
【０００２】
【従来の技術】
データを所定の伝送路に伝送したり、例えば磁気ディスク、光ディスク、光磁気ディスク等の記録媒体に記録する際に、伝送や記録に適するようにデータの変調が行われる。このような変調方法の１つとしてブロック符号が知られている。このブロック符号は、データ列をｍ×ｉビットからなる単位（以下データ語という）にブロック化し、このデータ語を適当な符号則に従ってｎ×ｉビットからなる符号語に変換するものである。そしてこのブロック符号は、ｉ＝１のときには固定長符号となり、またｉが複数個選べるとき、すなわちｉを２以上で、最大のｉであるｉmax＝ｒとしたときには可変長符号となる。このブロック符号化された符号は可変長符号（ｄ，ｋ；ｍ，ｎ；ｒ）と表される。ここでｉは拘束長であり、ｒは最大拘束長である。また、ｄとｋは、それぞれ符号系列内の一方のシンボルである”１”と”１”の間に連続して配置される他方のシンボルである”０”の最小連続個数と最大連続個数である。
【０００３】
具体例としてコンパクトディスク（ＣＤ）の変調方式を説明する。コンパクトディスクでは、EFM（Eight to Fourteen Modulation）が用いられている。８ビットのデータ語は１４ビットの符号語（チャネルビット）へパターン変換された後に、ＥＦＭ変調後の直流成分を低減させるための３ビットのマージンビットが付加され、さらにＮＲＺＩ変調されてディスク上に記録されている。この場合、符号系列内の”１”と”１”の間に連続して配置される”０”の最小連続個数（規定長）が２、”０”の最大連続個数（規定長）が１０の条件を満足するように、８ビットから１４ビットへの変換、ならびに、マージンビットの付加が行われる。従って、このＥＦＭ変調による可変長符号（ｄ，ｋ；ｍ，ｎ；ｒ）のパラメータは、（２，１０；８，１７；１）となる。チャネルビット列（記録波形列）のビット間隔をＴとすると、最小反転間隔Ｔmin（規定長）は、３（＝２＋１）Ｔとなる。また、最大反転間隔Ｔmax（規定長）は、１１（＝１０＋１）Ｔとなる。さらに、データ列のデータ間隔をＴｄａｔａとすると、検出窓幅Ｔｗは、（ｍ／ｎ）×Ｔｄａｔａで表わされ、その値は０．４７（＝８／１７）Ｔｄａｔａとなる。
【０００４】
また、ＥＦＭのＮＲＺＩ変調後の同一シンボルの最小連続長ｄ’は３（＝ｄ＋１＝２＋１）となり、ＮＲＺＩ変調後の同一シンボルの最大連続長ｋ’は１１（＝ｋ＋１＝１０＋１）となる。
【０００５】
前記コンパクトディスクにおいて、ピットを線速方向に縮小すれば記録密度を高くすることができる。この場合、最小反転間隔Ｔminに対応した最小ピットの長さが短くなる。この最小ピットがこれを読み出すレーザービームのスポットサイズよりも小さくなり過ぎると、ピットの検出が困難になり、エラー発生の原因となる。
【０００６】
さらに、ディスクの再生において、ディスクの再生面に対してスキューが加わるとエラーレートが悪化する。ディスクのスキューは、ディスクと再生用のレーザービームの光軸の傾きが、ディスクの進行方向に平行な面内のタンジェンシャル（tangential）方向と、垂直な面内のラジアル（radial）方向に分けられる。このうちの特にタンジェンシャル方向にディスクのスキューが発生すると、比較的早めにエラーレートに悪影響が現れる。従って、このようなディスクのスキューは、システムの設計に当り、エラーレートに対するマージンを減少させる要因となる。
【０００７】
また、同一シンボルの連続の長さの誤りの分布を、スキューのそれぞれの方向に対して調べたところ、タンジェンシャル方向のスキューに起因するエラーは、主に同一シンボルの連続長が短い場合に発生していること、すなわち、Ｔmin（ｄ’）の長さがＴmin−１（ｄ’−１）の長さに復号されるために、エラーレートが悪化することがわかった。例えば、ＥＦＭ変調方式においては、タンジェンシャル方向にスキューが発生した場合、記録波形列のビット間隔をＴとすると、最小反転間隔Ｔminである３Ｔ（規定長）がさらに短い間隔２Ｔ（規定に違反する違反長）として復号されることによるエラーの発生が多いことになる。
【０００８】
一方、光ディスクにおいては、その製造においてディスクのアシンメトリのマージンがある程度許されており、センターレベルに対して再生波形が上下非対称になる場合も考慮する必要がある。
【０００９】
従来より、エラーレートの悪化を信号処理により補正する方法として、ビタビ復号法が知られている。ビタビ復号法は、符号誤りを小さくして幾何学的距離の最も短いパスを探索する最尤復号法の１つで、可能性のないパスを捨てることにより、確からしい値の探索を簡略化して復号する方法である。さらに、ビタビ復号法は、その内部に最小反転間隔Ｔminを補償するアルゴリズムを付加することができる。
【００１０】
しかしながら、ビタビ復号法は、その回路が複雑でハードウエアの規模が大きくなるという欠点を有している。また、ビタビ復号法で復号を行うには、アシンメトリを取り除く必要があり、光ディスクのようなアシンメトリの許容される系では、アシンメトリに対する最適化が必要となり、回路がさらに複雑になる。
【００１１】
そこで、本出願人は、例えば特願平８−２２５３０号において、より簡単な回路でエラーレートの悪化を信号処理により補正する方法として、Run-Detector法を提案した。
【００１２】
図２４は、この先の提案における符号復号装置の構成例を示している。図２４において、波形等化回路１は入力されたアナログ信号の波形を整形する。ＰＬＬ回路２は整形されたアナログ波形をもとにビットクロックを生成する。Ａ／Ｄ変換回路３は入力されたアナログ信号を所定の分解能でディジタル信号に変換する。Ａ／Ｄ変換されたディジタルデータは、コンパレータ４でセンター（ゼロ）レベルを基準として１または０のビット列（２値化データ）に変換される。
【００１３】
違反長検出回路５は規定長としての最小反転間隔Ｔminより短い間隔（違反長）があったときこれを検出する。例えば（ｄ，ｋ）符号がＥＦＭ変調符号であれば、記録波形列のビット間隔をＴとすると、Ｔminである３Ｔ（規定長）を誤って２Ｔ（違反長）のビット列（２値化データ）に変換された部分が検出されることになる。次に補正位置検出回路６では、違反長が検出された位置をもとに、違反長に対応する違反ビット列の直前のビットを補正するか、直後のビットを補正するかを判定する。すなわち、違反長２Ｔを有する違反ビット列の直前と直後のビットにおけるＡ／Ｄ変換回路３の出力する信号のレベルの大きさが比較され、ゼロレベルに近い大きさの信号に対応するビットが誤っているビットとして補正位置に指定される。そして補正処理回路７では、チャネルビット列における補正位置として指定されたビットの補正を行い、補正された後のチャネルビット列データを出力する。
【００１４】
【発明が解決しようとする課題】
しかしながら、図２４に示した先の提案においては、装置内にＡ／Ｄ変換回路３を設け、再生信号のレベル（振幅方向の情報）を用いることにより、補正を行うようにしている。従って、例えば、データストレージ機器のように、Ａ／Ｄ変換回路が基本的に不要なシステムにおいては、補正のために、Ａ／Ｄ変換回路を設けなければならず、構成が複雑となり、コスト高となる課題があった。
【００１５】
本発明はこのような状況に鑑みてなされたものであり、Ａ／Ｄ変換回路等の付加回路を用いずに、より簡単な構成で、エラーレートの悪化した信号を、信号処理により補正するようにするものである。
【００１６】
【課題を解決するための手段】
請求項１に記載の符号復号装置は、伝送符号の同一のシンボルの連続長が、規定に違反している違反長の長さであることを検出する違反長検出手段と、違反長のシンボルにより構成される違反ビット列の前のビット列のパターンと後のビット列のパターンのうち、違反ビット列の前のビット列または後のビット列の連続長が規定長となるビット列のパターンを検出するパターン検出手段と、パターン検出手段により、違反ビット列の前のビット列が、規定長の同一のシンボルにより構成されていることが検出されたとき、違反ビット列の後のビット列のビットを補正位置として指定し、違反ビット列の後のビット列が、規定長の同一のシンボルにより構成されていることが検出されたとき、違反ビット列の前のビット列のビットを補正位置として指定する指定手段と、違反長が規定長となるように、指定手段の指定する補正位置の伝送符号のビットを補正する補正手段とを備えることを特徴とする。
【００１７】
請求項１６に記載の符号復号方法は、伝送符号の同一のシンボルの連続長が、規定に違反している違反長の長さであることを検出する違反長検出ステップと、違反長のシンボルにより構成される違反ビット列の前のビット列のパターンと後のビット列のパターンのうち、違反ビット列の前のビット列または後のビット列の連続長が規定長となるビット列のパターンを検出するパターン検出ステップと、パターン検出ステップにおいて、違反ビット列の前のビット列が、規定長の同一のシンボルにより構成されていることが検出されたとき、違反ビット列の後のビット列のビットを補正位置として指定し、違反ビット列の後のビット列が、規定長の同一のシンボルにより構成されていることが検出されたとき、違反ビット列の前のビット列のビットを補正位置として指定する指定ステップと、違反長が規定長となるように、指定ステップの指定する補正位置の伝送符号のビットを補正する補正ステップとを備えることを特徴とする。
【００１８】
請求項１に記載の符号復号装置および請求項１６に記載の符号復号方法においては、伝送符号の同一のシンボルの連続長が、違反長の長さであることが検出されると、その違反長が規定長となるように、所定の補正位置のビットの補正が行われる。この補正位置は、違反ビット列の前のビット列が、規定長の同一のシンボルにより構成されていることが検出されたとき、違反ビット列の後のビット列のビットが補正位置として指定され、違反ビット列の後のビット列が、規定長の同一のシンボルにより構成されていることが検出されたとき、違反ビット列の前のビット列のビットが補正位置として指定される。
【００１９】
【発明の実施の形態】
以下、この発明の実施の形態について添付図面に基づいて説明する。なお、記録媒体として光ディスクを用い、記録符号としては、連続する”１”の間に入る”０”の最小連続長（最小連続個数）（規定長）ｄが２で、かつ連続する”１”の間に入る”０”の最大連続長（最大連続個数）（規定長）ｋが１０である２値レベルの（ｄ，ｋ）記録符号を用い、この２値レベルの（ｄ，ｋ）記録符号がＮＲＺＩ変調によって記録された光ディスクから、ＮＲＺＩ変調されたチャネルビットデータ列を再生する装置を代表例として、発明の実施の形態を説明する。ここで、（ｄ，ｋ）記録符号は、エッジを表す符号となり、ＮＲＺＩ変調後のチャネルビット列は、ピットの形に相当するレベルを表す符号になる。また、ＮＲＺＩ変調後の同一シンボルの最小連続長（規定長）ｄ’は３（＝ｄ＋１＝２＋１）であり、同一シンボルの最大連続長（規定長）ｋ’は１１（＝ｋ＋１＝１０＋１）である。
【００２０】
図１は、この発明に係る符号復号装置の構成を示すブロック図である。図１において、波形等化回路１には、符号系列内の”１”と”１”の間に連続して配置される”０”の最小連続長がｄである記録符号をＮＲＺＩ変調した後の、同一のシンボルの最小連続長がｄ’（＝ｄ＋１）（ｄ≧１）である記録符号が記録された、図示せぬ光ディスク（記録媒体）から読み出された再生ＲＦ信号が入力されるようになされている。波形等化回路１は、入力された再生ＲＦ信号を波形等化した後、ＰＬＬ回路２とコンパレータ４に出力している。ＰＬＬ回路２は、入力された波形等化後のＲＦ信号からビットクロックを生成し、コンパレータ４の他、各部に出力するようになされている。コンパレータ４（比較手段）は、ＰＬＬ回路２より入力されたビットクロックに対応して、波形等化回路１より入力された波形等化後のＲＦ信号を、所定の基準レベルと比較し、ＲＦ信号のレベルが基準レベルより大きいとき、論理１を、基準レベルより小さいとき、論理０を、復号判定結果（２値化データ）としてそれぞれ出力するようになされている。
【００２１】
コンパレータ４により２値化されたデータは、縦属接続された複数のレジスタ（図５を参照して後述する）により構成されるメモリ１２に供給され、記憶されるようになされている。メモリ１２より読み出されたデータは、補正処理回路７、違反長検出回路５、パターン検出回路１１、および補正位置検出回路６に供給されている。違反長検出回路５（違反長検出手段）は、メモリ１２より読み出されたデータに２Ｔおよび１Ｔの違反長（違反ビット列）が存在するとき、これを検出し、検出信号を、補正位置検出回路６に出力している。パターン検出回路１１（パターン検出手段）は、メモリ１２より読み出された２値化データのパターンを検出し、その検出結果に対応するフラグを補正位置検出回路６に出力している。
【００２２】
パターン検出回路１１は、メモリ１２より読み出された２値化データから、チャネルビット列のビット間隔をＴとすると、（３Ｔ−２Ｔ−ｘＴ）または（ｘＴ−２Ｔ−３Ｔ）（ｘ≧４）のパターンを検出する。すなわち、２Ｔの連続長（違反長）を有するビット列の前に、３Ｔの連続長を有するビット列が存在し、かつ、その後に、ｘＴの連続長が存在するとき、または、２Ｔの連続長（違反長）のビット列の前にｘＴの連続長が存在し、かつ、その後に３Ｔの連続長のビット列が存在するとき、それぞれ後方または前方のビット列を補正ビット列として指定するフラグを出力する。
【００２３】
メモリ６Ａを内蔵する補正位置検出回路６（指定手段）は、違反長検出回路５とパターン検出回路１１の出力の供給を受け、メモリ１２より読み出された２値化データのビットの補正位置に対応する信号（補正位置データ）を生成し、補正処理回路７に出力している。補正処理回路７（補正手段）は、メモリ１２より読み出された２値化データのうち、補正位置検出回路６により指定される補正位置のビットを補正し、補正後のデータをチャネルクロックに同期して出力するようになされている。
【００２４】
次に図２のフローチャート、並びに図３と図４のタイミングチャートを参照して、その動作について説明する。
【００２５】
最初にステップＳ１において、入力されるデータが終了したか否かが判定される。入力データが終了していない場合、ステップＳ２に進み、データ読み込み処理とコンパレート処理が実行される。すなわち、波形等化回路１は、図示せぬ光ディスクから再生された、再生ＲＦ信号の入力を受け、波形等化処理を施した後、コンパレータ４とＰＬＬ回路２に出力する。ＰＬＬ回路２は、入力された波形等化回路１の出力するＲＦ信号（図３（Ａ））に同期したチャネルクロック（図３（Ｂ））を生成し、コンパレータ４に出力する。コンパレータ４は、このチャネルクロックに同期して、波形等化回路１より供給される再生ＲＦ信号（図３（Ａ））を所定の基準レベルＲ（例えばゼロレベル）と比較し、ＲＦ信号のレベルが基準レベルＲより大きいとき、論理１を出力し、小さいとき、論理０を出力する（図３（Ｃ））。
【００２６】
次に、ステップＳ３に進み、データ記憶処理が実行される。すなわち、コンパレータ４の出力（図３（Ｃ））は、少なくとも１０チャネルクロック分のデータを保持する（利用可能とする）メモリ１２に供給され、記憶される。
【００２７】
さらにステップＳ４に進み、メモリ１２に記憶されたビット列中に２Ｔ（違反長）の長さの連続長があるか否かが判定される。すなわち、違反長検出回路５は、メモリ１２に記憶されたデータを読み出し、２Ｔの違反長の有無を判定する。２Ｔの違反長（図３（Ｇ））が検出されたとき、違反長検出回路５は、検出信号を、補正位置検出回路６に出力する。
【００２８】
いまの場合、規定されている最小連続長（規定値）は３Ｔであるから、それより短い２Ｔの連続長は、規定に違反している違反長となる。本来、このような違反長のデータは存在しないはずであり、このような違反長のビット列を有する違反ビット列が存在するということは、エラーが発生したことを意味する。そこで、この場合においては、エラーを補正する処理を行うのであるが、補正を行うビットを指定する処理が、ステップＳ５乃至Ｓ９において行われる。
【００２９】
ステップＳ４において、２Ｔの違反長が検出されたとき、ステップＳ５に進み、パターン検出回路１１は、３Ｔ−２Ｔ−ｘＴ（ｘ≧４）のパターンがあるか否かを判定する。すなわち、違反長検出回路５で検出された違反長２Ｔを有する違反ビット列の、時間的に前側のビット列の連続長が３Ｔであり、後ろ側の連続長が４Ｔか、それ以上の長さのパターンの有無を判定する。図３の例の場合、符号が３Ｔ−２Ｔ−４Ｔの連続長のパターンを有するため、これがパターン検出回路１１で検出される（図３（Ｅ））。このとき、ステップＳ６に進み、パターン検出回路１１は、違反ビット列の後ろ側のビット列（４Ｔの連続長を有するビット列）に対応してフラグ（図３（Ｆ））を補正位置検出回路６に出力する。すなわち、違反ビット列の直後のビット列を補正ビット列として指定するフラグを、補正位置検出回路６に出力する。
【００３０】
一方、ステップＳ５において、３Ｔ−２Ｔ−ｘＴ（ｘ≧４）のパターンが検出されなかったと判定された場合、ステップＳ７に進み、ｘＴ（ｘ≧４）−２Ｔ−３Ｔのパターンが存在するか否かが、パターン検出回路１１により検出される。パターン検出回路１１は、違反長検出回路５で検出された２Ｔの違反長を有する違反ビット列の時間的に前に４Ｔ以上の連続長を有するビット列が存在し、かつ、後ろ側に連続長が３Ｔであるビット列が存在するパターンが検出された場合、ステップＳ８において、違反ビット列の前側のビット列（ｘＴの連続長を有するビット列）に対応して、フラグを補正位置検出回路６に出力する。すなわち、違反ビット列の直前のビット列を補正ビット列として指定するフラグを補正位置検出回路６に出力する。
【００３１】
なお、パターン検出回路１１により検出するパターンを、３Ｔ−２Ｔ−ｘＴ，ｘＴ−２Ｔ−３Ｔとしたのは、タンジェンシャルスキュー発生時、このエラーのパターンが最も多く発生するからである。
【００３２】
ステップＳ６またはＳ８において、フラグが設定されたとき、補正位置検出回路６は、メモリ１２に記憶されているビット列データを読み出し、フラグに対応するビット列のビットのうち、違反ビット列に最も近いビットに対応して”１”の補正位置を表す補正位置データ（図３（Ｈ））を生成し、補正処理回路７に出力する。すなわち、図３に示すように、違反ビット列の後ろ側のビット列が、補正ビット列として指定された場合、そのビット列の最初のビット（違反ビット列の直後のビット）が補正位置として指定される（図３（Ｈ））。これに対して、違反ビット列の前側のビット列が補正ビット列して指定されたとき、そのビット列の最後のビット（違反ビット列の直前のビット）が、補正位置として指定される。
【００３３】
ステップＳ６またはＳ８において、このようにしてフラグが生成されたとき、次にステップＳ１０に進み、ステップＳ４で違反長検出回路５により検出された違反長２Ｔを規定長３Ｔに補正する処理が、補正処理回路７において行われる。すなわち、補正処理回路７は、メモリ１２より読み出されたデータ（図３（Ｉ））と、補正位置検出回路６より供給された補正位置データ（図３（Ｈ））の排他的論理和を演算し、その演算結果（図３（Ｊ））を、補正後のデータとする。補正位置データが論理０であるとき、メモリ１２より読み出されたデータは、実質的にそのままとされる（補正されない）。これに対して、補正位置データが論理１であるとき、メモリ１２より読み出されたデータが、実質的に反転される。図３の例においては、２Ｔの違反長の違反ビット列の直後の４Ｔの連続長のビット列のうちの最初のビットが、論理１から論理０に反転される。このため、３Ｔ−２Ｔ−４Ｔのパターンが、３Ｔ−３Ｔ−３Ｔのパターンに補正されることになる。
【００３４】
ステップＳ１０の補正処理が行われた後、ステップＳ１１に進み、補正位置検出回路６は、内蔵するメモリ６Ａに、パターン検出回路１１より供給を受けたフラグを記憶させる。そして、補正位置検出回路６は、違反長検出回路５により違反長が検出された場合において、パターン検出回路１１よりフラグが供給されない場合においては、メモリ６Ａに記憶されているフラグ（直前の違反長検出時におけるフラグ）に対応する補正位置データを生成し、補正処理回路７に出力する。
【００３５】
すなわち、ステップＳ４において、２Ｔの違反長が検出されたが、ステップＳ５において、３Ｔ−２Ｔ−ｘＴのパターンが検出されず、かつ、ステップＳ７において、ｘＴ−２Ｔ−３Ｔのパターンも検出されないと判定された場合、パターン検出回路１１はフラグを出力しない。このときステップＳ９に進み、補正位置検出回路６は、内蔵するメモリ６Ａに記憶されているフラグに対応して補正位置データを生成する。例えば、直前のフラグが後方のビット列を補正ビット列として指定している場合には、後方のビット列を補正ビット列として指定するフラグが入力されたものとして補正位置データを生成し、また、そのフラグが違反ビット列の前方のビット列を補正ビット列として指定するフラグである場合においては、前方のビット列を補正ビット列として補正位置データを生成する。そして、そのフラグに対応する補正位置データが、補正位置検出回路６から補正処理回路７に出力される。
【００３６】
そして、補正処理回路７においては、ステップＳ１０において、その補正位置データに対応する補正処理が行われる。さらにステップＳ１１において、ステップＳ９で使用されたフラグが、再びメモリ６Ａに記憶される。
【００３７】
なお、ステップＳ９では、予め定められている方のフラグを常に出力するようにしてもよい。
【００３８】
図４のタイミングチャートはこの場合の例を表している。この例のビット列は、４Ｔ−２Ｔ−４Ｔのパターン（図４（Ｃ））を有している。このようなパターンは、ステップＳ５，Ｓ７のいずれにおいても検出されないので、このときパターン検出回路１１はフラグを出力しない。しかしながら、違反長検出回路５は、２Ｔ（図４（Ｇ））の違反長を検出している。このような場合、補正位置検出回路６は、メモリ６Ａに記憶されているフラグに対応して、補正位置データ（図４（Ｈ））を生成し、補正処理回路７に出力する。図４の例の場合、違反ビット列の直後のビットが補正位置として指定されている。
【００３９】
補正処理回路７は、メモリ１２より読み出されたデータ（図４（Ｉ））と、補正位置検出回路６より供給された補正位置データ（図４（Ｈ））との排他的論理和を演算し、その演算結果を補正データとする（図４（Ｊ））。
【００４０】
一方、ステップＳ４において、２Ｔの違反長が検出されなかったと判定された場合、ステップＳ１２に進み、違反長検出回路５は、１Ｔの違反長が存在するか否かを判定する。違反長検出回路５は、１Ｔの違反長を検出した場合、その検出結果を補正位置検出回路６とパターン検出回路１１に出力する。１Ｔの違反長が検出されたとき、パターン検出回路１１は、ステップＳ１３において、違反ビット列の前側と後ろ側の両方のビット列を、補正ビット列とするフラグを生成し、補正位置検出回路６に出力する。補正位置検出回路６は、このとき、１Ｔの違反ビット列の直前のビット列と直後のビット列の両方を補正位置として指定する補正位置データを生成し、補正処理回路７に出力する。補正処理回路７は、ステップＳ１４において、補正処理を実行する。これにより、補正ビット列の直前のビットと直後のビットの両方が論理０に反転される。
【００４１】
すなわち、このように違反長が２Ｔよりさらに悪化した１Ｔになった場合においては、違反ビット列の前後のパターンに拘らず、直ちに、その前後のビットを補正し、連続長が３Ｔとなるように補正する。
【００４２】
ステップＳ１２において、１Ｔの違反長が検出されなかったと判定された場合、ステップＳ１５に進み、データ出力処理が行われる。すなわち、この場合においては、実際にはエラーが発生していたとしても、補正処理回路７において、実質的に補正処理が行われず、メモリ１２より読み出されたデータが、そのまま出力される。また、ステップＳ１１またはステップＳ１４の処理の次に、ステップＳ１５に進み、データ出力処理が行われる場合においては、２Ｔまたは１Ｔの違反長を、規定長３Ｔに補正したデータが、補正処理回路７から出力される。
【００４３】
次にステップＳ１６に進み、データ順送り処理が、メモリ１２において行われる。すなわち、新たに入力される１チャネルクロック分のデータのために、データの順送り処理が行われる。そしてステップＳ１に戻り、再生データが終了すると判定されるまで、同様の処理が繰り返し実行される。
【００４４】
図５は、メモリ１２と違反長検出回路５の構成例を表している。図５に示すように、メモリ１２においては、９個のレジスタ１２−１乃至１２−９が縦属接続されている。これらのレジスタ１２−１乃至１２−９が、入力された１ビットのデータを順次チャネルクロックに同期して後段に転送するので、このメモリ１２に合計１０ビットのデータｄｔ［０］乃至ｄｔ［９］が保持される（利用可能な状態とされる）（図３（Ｄ）、図４（Ｄ））。
【００４５】
違反長検出回路５は、排他的論理和回路５−１，５−２，５−４と、アンド回路５−３，５−５により構成されている。排他的論理和回路５−１は、レジスタ１２−６の入出力のデータｄｔ［５］とｄｔ［６］の排他的論理和を演算し、演算結果をアンド回路５−３に出力している。また、排他的論理和回路５−２は、レジスタ１２−４の入出力のデータｄｔ［３］とｄｔ［４］の排他的論理和を演算し、演算結果をアンド回路５−３に出力している。この排他的論理和回路５−１，５−２とアンド回路５−３により、違反長２Ｔが検出されるようになされている。
【００４６】
また、レジスタ１２−５の入出力のデータｄｔ［４］とｄｔ［５］の排他的論理和が、排他的論理和回路５−４により演算され、演算結果がアンド回路５−５に供給されている。アンド回路５−５の他方の入力には、排他的論理和回路５−２の出力が供給されている。排他的論理和回路５−２，５−４とアンド回路５−５により、違反長１Ｔが検出されるようになされている。
【００４７】
排他的論理和回路５−２は、データｄｔ［３］とｄｔ［４］の一方が０であり他方が１であるときだけ、論理１を出力する。同様に、排他的論理和回路５−１は、データｄｔ［５］とｄｔ［６］の一方が論理１であり他方が論理０であるときにおいてのみ、論理１を出力する。従って、アンド回路５−３の出力は、ｄｔ［６］，ｄｔ［５］，ｄｔ［４］，ｄｔ［３］が、”０１１０”または”１００１”であるときに論理１を出力する。”０１０１”や”１０１０”の場合にも、アンド回路５−３の出力は論理１となるが、規定上、このようなビット列は存在しないことになっている。従って、排他的論理和回路５−１，５−２とアンド回路５−３により、２Ｔの違反長を検出することができる。
【００４８】
同様に、アンド回路５−５は、データｄｔ［５］，ｄｔ［４］，ｄｔ［３］が、”１０１”または”０１０”のときにおいてのみ、論理１を出力する。これにより、１Ｔの違反長が検出されることになる。
【００４９】
図６は、パターン検出回路１１の構成例を示している。この構成例においては、アンド回路１１−１が、データｄｔ［０］乃至ｄｔ［３］の論理積を演算し、演算結果をオア回路１１−７に入力している。同様に、データｄｔ［０］乃至ｄｔ［３］を、それぞれインバータ１１−２乃至１１−５で反転したデータの論理積をアンド回路１１−６が演算し、オア回路１１−７に出力している。従って、オア回路１１−７は、データｄｔ［３］，ｄｔ［２］，ｄｔ［１］，ｄｔ［０］が、”１１１１”であるか、または”００００”であるとき、論理１を出力する。
【００５０】
アンド回路１１−９は、データｄｔ［９］をインバータ１１−８で反転したデータと、データｄｔ［８］，ｄｔ［７］，ｄｔ［６］の論理積を演算し、オア回路１１−１０に出力している。また、アンド回路１１−１５は、データｄｔ［６］，ｄｔ［７］，ｄｔ［８］の論理を、インバータ１１−１１，１１−１２，１１−１３で、それぞれ反転した結果と、インバータ１１−８の出力をインバータ１１−１４で反転したデータ（すなわちデータｄｔ［９］と同一のデータ）の論理積を演算し、演算結果をオア回路１１−１０に出力している。従って、オア回路１１−１０は、データｄｔ［９］，ｄｔ［８］，ｄｔ［７］，ｄｔ［６］が、”０１１１”または”１０００”であるとき、論理１を出力する。
【００５１】
図６の実施の形態の場合、アンド回路１１−１６には、図５の違反長検出回路５のアンド回路５−３の出力する２Ｔ検出信号も入力されている。アンド回路１１−１６は、オア回路１１−７、オア回路１１−１０、およびアンド回路５−３の出力の論理積を演算している。すなわち、アンド回路１１−１６の出力は、データｄｔ［９］乃至ｄｔ［０］が、”０１１１００１１１１”であるとき、または、”１０００１１００００”であるとき、論理１を出力する。従って、アンド回路１１−１６は、３Ｔ−２Ｔ−ｘＴ（ｘ≧４）のパターンが検出されたとき、論理１（違反ビット列の後のビット列を補正ビット列として指定するフラグ）を出力することになる。
【００５２】
一方、アンド回路１１−２２は、データｄｔ［０］をインバータ１１−２１で反転したデータと、データｄｔ［３］，ｄｔ［２］，ｄｔ［１］の論理積を演算し、演算結果をオア回路１１−２３に出力している。アンド回路１１−２５は、データｄｔ［１］，ｄｔ［２］，ｄｔ［３］を、インバータ１１−３，１１−４，１１−５で反転したデータと、インバータ１１−２の出力をインバータ１１−２４で反転したデータ（すなわちデータｄｔ［０］と同一のデータ）の論理積を演算し、演算結果をオア回路１１−２３に出力している。従って、オア回路１１−７は、データｄｔ［３］，ｄｔ［２］，ｄｔ［１］，ｄｔ［０］が、”１１１０”または”０００１”であるとき、論理１を出力する。
【００５３】
アンド回路１１−２６は、データｄｔ［９］乃至ｄｔ［６］の論理積を演算し、演算結果をオア回路１１−２７に出力している。これらのデータｄｔ［６］乃至ｄｔ［９］は、インバータ１１−１１，１１−１２，１１−１３，１１−２８により、それぞれ反転された後、アンド回路１１−２９に入力されている。アンド回路１１−２９は、これらの入力の論理積を演算し、演算結果をオア回路１１−２７に出力している。従って、オア回路１１−２７は、データｄｔ［９］，ｄｔ［８］，ｄｔ［７］，ｄｔ［６］が、”１１１１”または”００００”であるとき、論理１を出力する。
【００５４】
アンド回路１１−３０には、アンド回路１１−１６と同様に、図５の違反長検出回路５のアンド回路５−３の出力する２Ｔ検出信号が入力されている。アンド回路１１−３０は、オア回路１１−２３の出力、オア回路１１−２７の出力、およびアンド回路５−３の出力の論理積を演算している。従って、アンド回路１１−３０は、データｄｔ［９］乃至ｄｔ［０］が、”１１１１００１１１０”または”００００１１０００１”のとき、すなわち、ｘＴ−２Ｔ−３Ｔ（ｘ≧４）のパターンを検出したとき、論理１（違反ビット列の前のビット列を補正ビット列として指定するフラグ）を出力することになる。
【００５５】
図６にはまた、補正位置検出回路６内のメモリ６Ａ（記憶手段）の構成例が示されている。この実施の形態においては、ラッチ６Ａ−１またはラッチ６Ａ−２が、３Ｔ−２Ｔ−ｘＴまたはｘＴ−２Ｔ−３Ｔが検出された区間において、それぞれアンド回路１１−１６またはアンド回路１１−３０の出力する信号をラッチする。オア回路６Ａ−３は、アンド回路１１−１６とアンド回路１１−３０の出力の論理和を演算し、ラッチクロックとしてラッチ６Ａ−１とラッチ６Ａ−２に出力している。こうすることによって、ラッチ６Ａ−１の出力信号はフラグ後方を指示する前情報記憶信号となり、ラッチ６Ａ−２の出力信号はフラグ前方を指示する前情報記憶信号となる。
【００５６】
３Ｔ−２Ｔ−ｘＴが検出されたときは、ラッチ６Ａ−１の出力は論理１となり、次のクロックからは論理１を出力する。またこのときラッチ６Ａ−２の出力は論理０となっている。ラッチ６Ａ−１の出力はフラグ後方指示信号となる。また、ｘＴ−２Ｔ−３Ｔが検出されたとき、ラッチ６Ａ−２の出力は論理１となり、次のクロックからは論理１を出力する。このときラッチ６Ａ−１の出力は論理０となっている。ラッチ６Ａ−２の出力はフラグ前方指示信号となる。ラッチ６Ａ−１とラッチ６Ａ−２の出力は互いに背反な関係となる。
【００５７】
２Ｔ検出時でも上記パターン以外の時には、ラッチ６Ａ−１とラッチ６Ａ−２は、ともにラッチされていないので、論理レベルは変化しない。すなわち、前情報としてどちらかのフラグ方向が記憶されていることになる。この結果、ラッチ６Ａ−１とラッチ６Ａ−２を用いれば、予め定められているパターン以外の２Ｔの補正が、直前に行われた補正方向を用いて行われることになる。
【００５８】
図７は、補正位置検出回路６と補正処理回路７の構成例を表している。この実施の形態においては、排他的論理和回路６−３の一方の入力に、メモリ１２のレジスタ１２−４の出力するデータｄｔ［４］が入力されている。アンド回路６−１５は、違反長検出回路５のアンド回路５−３が出力する２Ｔの検出信号と、ラッチ６Ａ−１が出力するフラグ後方指示信号の論理積を演算している。オア回路６−１は、アンド回路６−１５の出力と、違反長検出回路５のアンド回路５−５が出力する１Ｔの検出信号（違反ビット列の後のビット列を補正ビット列として指定するフラグ）の論理和を演算している。オア回路６−１の出力はレジスタ６−２を介して排他的論理和回路６−３の他方の入力に供給されている。
【００５９】
排他的論理和回路６−３の出力は、レジスタ６−４を介して排他的論理和回路６−５の一方に入力され、排他的論理和回路６−５の他方の入力には、違反長検出回路５のアンド回路５−５が出力する１Ｔ検出信号（違反ビット列の前のビット列を補正ビット列として指定するフラグ）が入力されている。
【００６０】
排他的論理和回路６−５の出力は、２段のレジスタ６−６，６−７を介して排他的論理和回路６−８の一方の入力に入力されている。違反長検出回路５のアンド回路５−３が出力する２Ｔの検出信号と、ラッチ６Ａ−２が出力するフラグ前方指示信号の論理積がアンド回路６−１６により演算され、この演算結果が、レジスタ６−１０を介して排他的論理和回路６−８の他方の入力に入力されている。排他的論理和回路６−８の出力は、レジスタ６−９を介して出力されるようになされている。
【００６１】
図８は、レジスタ６−２にオア回路６−１の出力が保持されるタイミングを表している。すなわち、例えば、アンド回路１１−１６により、３Ｔ−２Ｔ−ｘＴのパターンが検出されたとすると、アンド回路５−３は、そのパターンの中央に含まれる２Ｔの検出信号を出力する。ラッチ６Ａ−１は、アンド回路１１−１６の出力する３Ｔ−２Ｔ−ｘＴの検出信号に同期して、高レベルの信号をラッチし、出力する。これに対して、ラッチ６Ａ−２は、アンド回路１１−３０が、ｘＴ−２Ｔ−３Ｔの検出信号を出力していないので、３Ｔ−２Ｔ−ｘＴの検出信号のエッジに同期して、低レベルの信号をラッチし、出力する。
【００６２】
アンド回路６−１５は、ラッチ６Ａ−１の出力と、アンド回路５−３の出力する２Ｔの検出信号の論理積を演算するので、その演算結果が、オア回路６−１を介して、レジスタ６−２に供給される。しかしながら、レジスタ６−２は、クロックＣＬＫの立ち上がりエッジに同期して動作するので、このアンド回路６−１５の出力は、そのレベルが高レベルに反転した直後に発生するクロックＣＬＫの立ち上がりエッジに同期して、保持される。
【００６３】
次に、図９を参照して、より具体的なその動作について説明する。上述したように、データｄｔ［６］乃至ｄｔ［３］が、”１００１”または”０１１０”であるとき、データｄｔ［５］，ｄｔ［４］が違反長２Ｔ（（ｄ’−１）＝２）として検出される（図９（Ａ）または（Ｂ））。そして、この違反ビット列の時間的に前のデータｄｔ［９］乃至ｄｔ［６］が、”０１１１”または”１０００”であるとき、３Ｔ（ｄ’＝３）の連続長が検出され、違反ビット列の後のデータｄｔ［３］乃至ｄｔ［０］が、”１１１１”または”００００”であるとき、短くとも４Ｔ（（ｄ’＋１）＝４）の連続長が検出される。そしてこのとき、３Ｔ−２Ｔ−４Ｔのパターン検出信号が出力される（図９（Ａ））。
【００６４】
３Ｔ−２Ｔ−４Ｔのパターン検出信号が出力されたとき、ラッチ６Ａ−１を介して、アンド回路６−１５から信号が出力される。そしてこの信号がオア回路６−１を介してレジスタ６−２に出力されたとき、レジスタ１２−４からデータｄｔ［４］が出力され、排他的論理和回路６−３を介してレジスタ６−４にデータｄｔｏｕｔ［４］として供給されている。このときレジスタ６−４は、直前に供給されていたデータｄｔｏｕｔ［５］を排他的論理和回路６−５を介してレジスタ６−６に出力し、レジスタ６−６は、データｄｔｏｕｔ［６］を出力し、レジスタ６−７は、データｄｔｏｕｔ［７］を排他的論理和回路６−８を介してレジスタ６−９に出力し、レジスタ６−９は、データｄｔｏｕｔ［８］を出力している。
【００６５】
この状態において、次のクロックが入力されると、メモリ１２のレジスタ１２−４は、次のデータｄｔ［３］を保持し、出力する。また、レジスタ６−２は、３Ｔ−２Ｔ−ｘＴの検出信号を出力する。その結果、排他的論理和回路６−３により、データｄｔ［３］が反転され、データｄｔｏｕｔ［３］としてレジスタ６−４に供給される。
【００６６】
そして以後、クロックが供給されるごとに、レジスタ６−４乃至６−９に保持されたデータが、順次、後段に出力される。このようにして、違反長２Ｔの直後の１ビット（ｄｔ［３］）の論理が反転されて補正処理が行われ、補正後のデータがレジスタ６−９から出力される。すなわち、図９（Ａ）に示すように、データ”０１１１００１１１１”または”１０００１１００００”が入力されたとき、データ”０１１１０００１１１”または”１０００１１１０００”が出力される。
【００６７】
一方、違反ビット列の前方のデータｄｔ［９］乃至ｄｔ［６］が、”１１１１”または”００００”であるとき、短くとも４Ｔ（（ｄ’＋１）＝４）の連続長が検出され、違反ビット列の後方のデータｄｔ［３］乃至ｄｔ［０］が、”１１１０”または”０００１”であるとき、３Ｔ（ｄ’＝３）の連続長が検出される。そしてこのとき、４Ｔ−２Ｔ−３Ｔのパターン検出信号が出力される（図９（Ｂ））。
【００６８】
この４Ｔ−２Ｔ−３Ｔのパターン検出信号が出力されたとき、ラッチ６Ａ−２を介して、アンド回路６−１６から信号が出力される。そしてこの信号がレジスタ６−１０に供給されているとき、レジスタ６−７は、データｄｔｏｕｔ［７］を出力している。従って、次のクロック供給されたとき、レジスタ６−７は、データｄｔｏｕｔ［６］を保持、出力し、レジスタ６−１０は、４Ｔ−２Ｔ−３Ｔのパターン検出信号を出力する。その結果、排他的論理和回路６−８が、レジスタ６−７から供給されるデータｄｔｏｕｔ［６］の論理を反転し、レジスタ６−９に出力する。このように、この場合、データｄｔ［６］の論理が反転されて補正処理が行われる。すなわち、図９（Ｂ）に示すように、データ”１１１１００１１１０”または”００００１１０００１”が入力されたとき、データ”１１１０００１１１０”または”０００１１１０００１”が出力される。
【００６９】
また、データｄｔ［５］乃至ｄｔ［３］のビット列が、”１０１”または”０１０”であるとき、データｄｔ［４］が１Ｔ（（ｄ’−２）＝１）の違反長のビット列として検出される（図９（Ｃ））。違反長１Ｔの検出信号が、オア回路６−１と排他的論理和回路６−５に入力されたとき、レジスタ６−４は、データｄｔｏｕｔ［５］を出力し、レジスタ１２−４は、データｄｔ［４］を出力している。従って、レジスタ６−４の出力するデータｄｔｏｕｔ［５］は、その論理が排他的論理和回路６−５により反転され、レジスタ６−６に供給される。
【００７０】
そして、次のクロックが入力されると、レジスタ６−６は、論理の反転されたデータｄｔｏｕｔ［５］を保持し、後段のレジスタ６−７に出力する。また、このとき、レジスタ６−２はオア回路６−１より入力されていた１Ｔの検出信号を保持し、排他的論理和回路６−３に出力する。
【００７１】
さらに、レジスタ６−４は、データｄｔｏｕｔ［５］を出力している状態において、次のクロックが入力されると、排他的論理和回路６−３を介してレジスタ１２−４より供給されているデータｄｔ［４］をデータｄｔｏｕｔ［４］として保持し、排他的論理和回路６−５を介してレジスタ６−６に出力する。
【００７２】
そしてこのとき、レジスタ１２−４は、次のデータｄｔ［３］を保持し、排他的論理和回路６−３の一方の入力に供給するとともに、レジスタ６−２は、１Ｔの違反検出信号を排他的論理和回路６−３に出力する。従って、排他的論理和回路６−３は、このとき、データｄｔ［３］の論理を反転し、データｄｔｏｕｔ［３］としてレジスタ６−４に供給する。従って、さらに次のクロックが入力されると、この論理の反転されたデータｄｔｏｕｔ［３］がレジスタ６−４に保持され、排他的論理和回路６−５を介してレジスタ６−６に供給される。
【００７３】
各レジスタに保持されたデータは、クロックが供給されるごとに、順次、後段に転送される。このようにして、この場合、データｄｔ［３］，ｄｔ［５］の論理が反転され、補正処理が行われる。すなわち、図９（Ｃ）に示すように、データ”１１１１１０１１１１”または”０００００１００００”が入力されたとき、データ”１１１１０００１１１”または”００００１１１０００”が出力される。
【００７４】
なお、図９において、○印は補正ビットを示している。
【００７５】
図１０は、補正位置検出回路６および補正処理回路７の他の構成例を表している。この構成例においては、違反長検出回路５のアンド回路５−３が出力する２Ｔの検出信号と、ラッチ６Ａ−１が出力するフラグ後方指示信号の論理積を演算するアンド回路６−１５の出力が、レジスタ６−２に入力され、その出力がオア回路６−１の一方の入力に供給されている。オア回路６−１の他方の入力には、１Ｔの検出信号がレジスタ６−１１を介して入力されている。オア回路６−１の出力は、排他的論理和回路６−３の一方に入力され、排他的論理和回路６−３の他方の入力には、メモリ１２のレジスタ１２−４の出力が供給されている。
【００７６】
排他的論理和回路６−３の出力は、レジスタ６−４，６−６を介して、排他的論理和回路６−５の一方の入力に供給されている。排他的論理和回路６−５の他方の入力には、レジスタ６−１１を介して１Ｔの検出信号が入力されている。排他的論理和回路６−５の出力は、レジスタ６−７を介して排他的論理和回路６−８の一方の入力に供給され、排他的論理和回路６−８の他方の入力には、違反長検出回路５のアンド回路５−３が出力する２Ｔの検出信号と、ラッチ６Ａ−２が出力するフラグ前方指示信号の論理積を演算するアンド回路６−１６の出力が、レジスタ６−１０を介して、入力されている。排他的論理和回路６−８の出力は、レジスタ６−９を介して出力されている。
【００７７】
次に、その動作について説明する。３Ｔ−２Ｔ−ｘＴのパターン検出信号が出力されたとき、ラッチ６Ａ−１を介して、アンド回路６−１５から信号が出力される。そしてこの信号がレジスタ６−２に入力されたとき、メモリ１２のレジスタ１２−４は、データｄｔ［４］を出力し、排他的論理和回路６−３を介してデータｄｔｏｕｔ［４］として、レジスタ６−４に供給している。この状態において、次のクロックが入力されると、レジスタ６−２は、アンド回路６−１５の出力する検出信号を保持し、オア回路６−１を介して排他的論理和回路６−３の一方の入力に供給する。また、このとき、排他的論理和回路６−３の他方の入力には、レジスタ１２−４により保持された次のデータｄｔ［３］が入力されている。その結果、排他的論理和回路６−３は、このデータｄｔ［３］を、その論理を反転してデータｄｔｏｕｔ［３］としてレジスタ６−４に出力する。
【００７８】
そして、次のクロックが入力されると、排他的論理和回路６−３の出力していたデータｄｔｏｕｔ［３］が、レジスタ６−４に保持され、後段のレジスタ６−６に出力される。このようにして、図９（Ａ）に示すような補正処理が行われる。
【００７９】
一方、アンド回路１１−３０よりｘＴ−２Ｔ−３Ｔのパターン検出信号が出力されたとき、この信号は、ラッチ６Ａ−２を介して、アンド回路６−１６に出力される。そしてこのときレジスタ６−７は、データｄｔｏｕｔ［７］を出力している。そして、次のクロックが入力されたとき、レジスタ６−１０は、アンド回路６−１６の出力信号を保持し、排他的論理和回路６−８の一方の入力に供給する。排他的論理和回路６−８の他方の入力には、レジスタ６−７により保持された、次のデータｄｔｏｕｔ［６］が入力される。その結果、排他的論理和回路６−８により、データｄｔｏｕｔ［６］の論理が反転されて、レジスタ６−９に出力される。このようにして、図９（Ｂ）に示すような補正が行われる。
【００８０】
さらに１Ｔの検出信号がレジスタ６−１１に入力されたとき、レジスタ６−６は、データｄｔｏｕｔ［６］を出力している。また、レジスタ１２−４は、データｄｔ［４］を出力している。この状態において、次のクロックが入力されると、レジスタ６−１１は、１Ｔの検出信号を保持し、排他的論理和回路６−５の一方の入力に供給するとともに、オア回路６−１を介して排他的論理和回路６−３の他方の入力に供給する。このとき、レジスタ６−６は、次のデータｄｔｏｕｔ［５］を保持し、排他的論理和回路６−５の他方の入力に供給するので、その論理が反転され、レジスタ６−７に供給される。また、レジスタ１２−４は、次のデータｄｔ［３］を保持し、出力するので、排他的論理和回路６−３は、このデータｄｔ［３］の論理を反転して、データｄｔｏｕｔ［３］として、レジスタ６−４に出力する。このようにして、図９（Ｃ）に示すような補正処理が行われる。
【００８１】
図１１は、補正位置検出回路６内のメモリ６Ａの他の構成例を示している。この構成例においては、アンド回路１１−１６の出力する３Ｔ−２Ｔ−ｘＴの検出信号がオア回路６Ａ−１２の一方の入力に供給されているとともに、インバータ６Ａ−１３を介してアンド回路６Ａ−１５の１つの入力に供給されている。アンド回路６Ａ−１５にはまた、アンド回路１１−３０の出力するｘＴ−２Ｔ−３Ｔの検出信号がインバータ６Ａ−１４を介して入力されている。さらに、このアンド回路６Ａ−１５には、アンド回路５−３の出力する２Ｔ検出信号が入力されているとともに、ラッチ６Ａ−１１の出力Ｒｃ１が入力されている。そして、アンド回路６Ａ−１５の出力が、オア回路６Ａ−１２の他方の入力に供給されている。
【００８２】
オア回路６Ａ−１２の出力は、ラッチ６Ａ−１１に供給されるとともに、オア回路６−１の一方の入力に供給されている。オア回路６−１の他方の入力には、アンド回路５−５の出力する１Ｔ検出信号が入力されている。オア回路６−１の出力は、レジスタ６−２を介して図７の排他的論理和回路６−３の一方の入力に供給されるようになされている。
【００８３】
オア回路６Ａ−２２の一方の入力には、アンド回路１１−３０の出力するｘＴ−２Ｔ−３Ｔの検出信号が入力されている。このｘＴ−２Ｔ−３Ｔの検出信号はまた、インバータ６Ａ−２３を介してアンド回路６Ａ−２５に入力されている。アンド回路６Ａ−２５にはまた、アンド回路１１−１６の出力する３Ｔ−２Ｔ−ｘＴの検出信号がインバータ６Ａ−２４を介して入力されている。アンド回路６Ａ−２５にはさらに、アンド回路５−３の出力する２Ｔ検出信号とラッチ６Ａ−２１の出力Ｒｃ２が入力されている。アンド回路６Ａ−２５の出力は、オア回路６Ａ−２２の他方の入力に供給されている。オア回路６Ａ−２２の出力は、ラッチ６Ａ−２１に入力されるとともに、レジスタ６−１０を介して図７の排他的論理和回路６−８の一方の入力に供給されている。
【００８４】
次に、その動作について、図１２のタイミングチャートを参照して説明する。例えば、３Ｔ−２Ｔ−４Ｔのパターン、４Ｔ−２Ｔ−４Ｔのパターン、または４Ｔ−２Ｔ−３Ｔのパターンが所定の間隔で出現したとすると、アンド回路５−３は、それぞれのパターンの中央の２Ｔを検出し、その検出信号を出力する。アンド回路１１−１６は、これらのパターンのうち、３Ｔ−２Ｔ−ｘＴのパターンが発生したとき、検出信号を出力する。アンド回路１１−３０は、ｘＴ−２Ｔ−３Ｔのパターンが発生したとき、検出信号を出力する。
【００８５】
３Ｔ−２Ｔ−ｘＴの検出信号と、ｘＴ−２Ｔ−３Ｔの検出信号がいずれも低レベルであるとき、インバータ６Ａ−１３と６Ａ−１４の出力は高レベルとなる。従って、ラッチ６Ａ−１１が高レベルの出力Ｒｃ１を出力している場合において、アンド回路５−３が２Ｔの検出信号を出力すると、アンド回路６Ａ−１５は、高レベルを出力する。
【００８６】
また、アンド回路１１−１６が、３Ｔ−２Ｔ−ｘＴの検出信号を出力したとき、この検出信号が入力されるので、その間、オア回路６Ａ−１２の出力は、高レベルになる。
【００８７】
３Ｔ−２Ｔ−４Ｔのパターン検出時においては、ラッチ６Ａ−２１の出力Ｒｃ２が低レベルであるので、アンド回路６Ａ−２５の出力は、２Ｔが検出された場合にも、低レベルのままとなる。このとき、ｘＴ−２Ｔ−３Ｔは検出されないので、オア回路６Ａ−２２の出力は、低レベルのままとなる。
【００８８】
ラッチ６Ａ−１１とラッチ６Ａ−２１には、２Ｔの検出信号が発生されている期間に発生されたクロックＣＬＫが供給され、その立ち上がりエッジに同期して、入力がラッチされる。従って、ラッチ６Ａ−１１では高レベルが、ラッチ６Ａ−２１では低レベルが、それぞれラッチされる。
【００８９】
このことは、４Ｔ−２Ｔ−４Ｔのパターンが発生した場合にも同様である。
【００９０】
これに対して、４Ｔ−２Ｔ−３Ｔのパターンがアンド回路１１−３０で検出された場合には、インバータ６Ａ−１４の出力が低レベルとなるため、アンド回路６Ａ−１５、従ってオア回路６Ａ−１２の出力は、低レベルになっている。その結果、ラッチ６Ａ−１１は、低レベルをラッチし、その出力Ｒｃ１は、高レベルから低レベルに遷移する。
【００９１】
また、４Ｔ−２Ｔ−３Ｔの検出信号が発生されたとき、オア回路６Ａ−２２の出力は高レベルとなるので、ラッチ６Ａ−２１は、この高レベルをラッチし、その出力Ｒｃ２は、低レベルから高レベルに遷移する。
【００９２】
以上の原理は、同一のシンボルの最大連続長がｋ’として規定されている場合に、（ｋ’＋１）の連続長のチャネルビットデータを補正する場合にも適用することができる。この場合における処理は、図１３のフローチャートに示すようになる。その基本的な処理は、図２における場合と同様であるが、ステップＳ２４，Ｓ２５，Ｓ２７，Ｓ３０，Ｓ３２，Ｓ３４における処理が、図２におけるステップＳ４，Ｓ５，Ｓ７，Ｓ１０，Ｓ１２，Ｓ１４の処理と異なっている。
【００９３】
すなわち、ステップＳ２４においては、１２Ｔ（（ｋ’＋１）＝１２）の違反長が、またステップＳ３２においては、１３Ｔ（（ｋ’＋２）＝１３）の違反長が、それぞれ違反長検出回路５で検出される。これに対応して、ステップＳ３０とステップＳ３４においては、補正処理回路７により、１２Ｔのデータまたは１３Ｔのデータが、１１Ｔ（ｋ’＝１１）の規定長のデータに補正される。
【００９４】
ステップＳ２５とＳ２７においては、パターン検出回路１１により、１１Ｔ−１２Ｔ−ｘＴのパターン、または、ｘＴ−１２Ｔ−１１Ｔのパターンが検出される。そして、ここにおけるｘは、１０以下の値とされる。
【００９５】
また、メモリ１２には、ｘ＝１０とするとき、データｄｔ［０］乃至ｄｔ［３５］が利用できるように、少なくとも３４個のレジスタが設けられる。
【００９６】
図１４は、図１３のフローチャートの違反長検出、パターン検出、および補正の例を表している。図１４（Ａ）に示すように、データｄｔ［２４］乃至ｄｔ［１１］が、”１００００００００００００１”または”０１１１１１１１１１１１１０”であるとき、データｄｔ［２３］乃至ｄｔ［１２］が、１２Ｔ（（ｋ’＋１）＝１２）の違反長として検出される。そして、この違反ビット列の前方のデータｄｔ［３４］乃至ｄｔ［２３］が、”１１１１１１１１１１１０”の否定、または”０００００００００００１”の否定の出力を取るとき、１０Ｔ（（ｋ’−１）＝１０）以下の連続長が検出され、違反ビット列の後方のデータｄｔ［１２］乃至ｄｔ［０］が、”０１１１１１１１１１１１０”または”１０００００００００００１”であるとき、１１Ｔ（ｋ’＝１１）の連続長が検出される。そしてこのとき、１０Ｔ以下−１２Ｔ−１１Ｔのパターンが検出される。この場合、ｄｔ［２３］の論理が反転されて、補正が行われる。
【００９７】
同様に、図１４（Ｂ）に示すように、違反ビット列の前方のデータｄｔ［３５］乃至ｄｔ［２３］が、”０１１１１１１１１１１１０”または”１０００００００００００１”であるとき、１１Ｔ（ｋ’＝１１）の連続長が検出され、違反ビット列の後方のデータｄｔ［１２］乃至ｄｔ［１］が、”０１１１１１１１１１１１”の否定、または”１０００００００００００”の否定の出力を取るとき、１０Ｔ（（ｋ’−１）＝１０）以下の連続長が検出される。そしてこのとき、１１Ｔ−１２Ｔ−１０Ｔ以下のパターンが検出される。この場合、ｄｔ［１２］の論理が反転されて、補正が行われる。
【００９８】
さらに、図１４（Ｃ）に示すように、データｄｔ［２５］乃至ｄｔ［１１］が、”１０００００００００００００１”または”０１１１１１１１１１１１１１０”であるとき、データｄｔ［２４］乃至ｄｔ［１２］が１３Ｔ（（ｋ’＋２）＝１３）の違反長として検出される。この場合、ｄｔ［２４］，ｄｔ［１２］の論理が反転されて、補正が行われる。
【００９９】
さらに、上記発明の実施の形態においては、コンパレータ４において、再生ＲＦ信号を１つの基準レベルＲと比較して”１”と”０”の２値化データに変換するようにしたが、例えば図１５に示すように、２つの基準レベルＨ，Ｌを設け、再生ＲＦ信号のレベルが２つの基準レベルＨとＬの間の大きさであるとき、論理１を出力するようにし、より大きい方の基準レベルＨより大きいとき、またはより小さい方の基準レベルＬより小さいとき、論理０を出力することで、再生ＲＦ信号を２値化することができる。本明細書においては、この２値化処理を逆ＮＲＺＩ変調と称し、そのデータをエッジデータと称する。そして、これと対比するために、１つの基準レベルＲと再生ＲＦ信号を比較して得たデータを、レベルデータと称する。なお、エッジデータは、再生ＲＦ信号を基準レベルＲで２値化した結果を、さらに、１から０、または０から１へ変化するとき１、変化しないとき０に符号変換することでも得ることができる。
【０１００】
図２に示す、同一シンボルの連続長が（ｄ’−１）であるチャネルビットデータを補正する処理を、コンパレータ４で逆ＮＲＺＩ変調した符号に対して行うときは、図１６に示すような処理が行われる。
【０１０１】
図１６に示す処理は、基本的に、図２に示す処理と同様であるが、ステップＳ４２，Ｓ４４，Ｓ４５，Ｓ４７，Ｓ５２の検出処理、およびステップＳ５０，Ｓ５４の補正処理が、図２におけるステップＳ２，Ｓ４，Ｓ５，Ｓ７，Ｓ１２における検出処理、およびステップＳ１０，Ｓ１４の補正処理と異なっている。
【０１０２】
すなわち、図２に示す処理の場合と、図１６に示す逆ＮＲＺＩ変調による処理の場合のいずれにおいても、ステップＳ４，Ｓ１２またはステップＳ４４，Ｓ５２における違反長は、２Ｔまたは１Ｔと規定され、ステップＳ５，Ｓ７またはステップＳ４５，Ｓ４７におけるパターンは、３Ｔ−２Ｔ−ｘＴまたはｘＴ−２Ｔ−３Ｔと表される（ｘ≧４）。しかしながら、図２の処理における２Ｔ，１Ｔの検出は、（ｄ’−１）＝２，（ｄ’−２）＝１の検出となるのに対し、図１６の２Ｔの検出は、（ｄ−１）＝１，（ｄ−２）＝０の検出となる。
【０１０３】
また、図２の処理における３Ｔ−２Ｔ−ｘＴ、またはｘＴ−２Ｔ−３Ｔのパターン検出は、（ｄ’＝３）−（（ｄ’−１）＝２）−（（ｄ’＋（ｘ−３））＝３＋（ｘ−３））または（（ｄ’＋（ｘ−３））＝３＋（ｘ−３））−（（ｄ’−１）＝２）−（ｄ’＝３）の検出となるのに対して、図１６のパターン検出は、（ｄ＝２）−（（ｄ−１）＝１）−（（ｄ＋（ｘ−３））＝２＋（ｘ−３））または（（ｄ＋（ｘ−３））＝２＋（ｘ−３））−（（ｄ−１）＝１）−（ｄ＝２）の検出となる。
【０１０４】
さらに図２のステップＳ１０，Ｓ１４における違反長２Ｔ，１Ｔの規定長３Ｔへの補正は、（ｄ’−１）＝２，（ｄ’−２）＝１のｄ’＝３への補正であるが、図１６のステップＳ５０，Ｓ５４における違反長２Ｔ，１Ｔの規定長３Ｔへの補正は、（ｄ−１）＝１，（ｄ−２）＝０のｄ＝２への補正となる。
【０１０５】
ステップＳ４４，Ｓ５２における違反長２Ｔ，１Ｔの検出は、図１７に示す違反長検出回路５により、次のように行われる。
【０１０６】
すなわち、違反長検出回路５においては、データｄｔ［３］，ｄｔ［５］と、インバータ５−１１によりデータｄｔ［４］を反転したデータの論理積が、アンド回路５−１２により演算される。アンド回路５−１２は、データｄｔ［５］，ｄｔ［３］が論理１であり、かつ、データｄｔ［４］が論理０であるとき、すなわち、データｄｔ［５］，ｄｔ［４］，ｄｔ［３］が”１０１”であるとき論理１を２Ｔ検出信号として出力する（なお、レジスタ１２−４の出力はアンド回路５−１２でモニタしないようにしても、２Ｔの違反長を検出することが可能である）。また、アンド回路５−１３は、データｄｔ［３］とデータｄｔ［４］の論理積を演算し、演算結果を１Ｔ検出信号として出力する。アンド回路５−１３の出力は、データｄｔ［４］，ｄｔ［３］が”１１”であるとき、論理１となる。
【０１０７】
ステップＳ４５とステップＳ４７の３Ｔ−２Ｔ−ｘＴまたはｘＴ−２Ｔ−３Ｔ（ｘ≧４）のパターンは、図１８に示すパターン検出回路１１により検出される。
【０１０８】
すなわち、このパターン検出回路１１においては、アンド回路１１−４２が、データｄｔ［０］の論理をインバータ１１−４１で反転したデータと、データｄｔ［３］，ｄｔ［５］，ｄｔ［８］の論理積を演算している。また、データｄｔ［８］の論理をインバータ１１−４３で反転したデータと、データｄｔ［０］，ｄｔ［３］，ｄｔ［５］が、アンド回路１１−４４に入力されている。アンド回路１１−４４は、これらの入力の論理積を演算している。
【０１０９】
エラーが発生していない限り、”０”は最小でも２個連続しているので、アンド回路１１−４２の出力は、データｄｔ［８］＝ｄｔ［５］＝ｄｔ［３］＝１であり、かつ、ｄｔ［７］＝ｄｔ［６］＝ｄｔ［４］＝ｄｔ［２］＝ｄｔ［１］＝ｄｔ［０］＝０であるとき、パターン３Ｔ−２Ｔ−ｘＴが検出されたものとして、論理１となる。一方、アンド回路１１−４４は、ｄｔ［５］＝ｄｔ［３］＝ｄｔ［０］＝１であり、かつ、ｄｔ［８］＝ｄｔ［７］＝ｄｔ［６］＝ｄｔ［４］＝ｄｔ［２］＝ｄｔ［１］＝０のとき、ｘＴ−２Ｔ−３Ｔのパターンを検出したものとして、論理１を出力する。
【０１１０】
図１８にはまた、メモリ６Ａの構成例が示されている。この構成例においては、ラッチ６Ａ−４１がアンド回路１１−４２の出力をラッチし、ラッチ６Ａ−４２がアンド回路１１−４４の出力をラッチするようになされている。そして、オア回路６Ａ−４３は、アンド回路１１−４２と１１−４４の出力の論理和を演算し、その演算結果をラッチ６Ａ−４１とラッチ６Ａ−４２にクロックとして供給し、そのラッチを制御するようになされている。すなわち、この場合においても、図６のメモリ６Ａにおける場合と同様の処理を行うことができる。
【０１１１】
図１９は、図１６のステップＳ５０，Ｓ５４において、エッジデータを処理する場合の補正位置検出回路６と補正処理回路７の構成例を表している。排他的論理和回路６−２１には、メモリ１２のレジスタ１２−３より出力されたデータｄｔ［３］が、データｄｔｏｕｔ［３］として入力されている。排他的論理和回路６−２１の他方の入力には、パターン検出回路１１のアンド回路１１−４２が出力する３Ｔ−２Ｔ−ｘＴのパターン検出信号をラッチ６Ａ−４１でラッチした信号と、アンド回路５−１２からの２Ｔ検出信号との論理積を演算するアンド回路６Ａ−４４からの出力信号、または図１７の違反長検出回路５のアンド回路５−１３が出力する１Ｔ検出信号が、オア回路６−２２とレジスタ６−２３を介して入力されている。排他的論理和回路６−２１の出力は、レジスタ６−２４に入力され、レジスタ６−２４の出力は、排他的論理和回路６−２５に入力されている。排他的論理和回路６−２５の他方の入力には、レジスタ６−２３の出力が供給されている。
【０１１２】
排他的論理和回路６−２５の出力は、レジスタ６−２６に、レジスタ６−２６の出力はレジスタ６−２７に、レジスタ６−２７の出力は排他的論理和回路６−２８に、それぞれ入力されている。排他的論理和回路６−２８の他方の入力には、オア回路６−３０の出力が、レジスタ６−３１を介して供給されている。
【０１１３】
オア回路６−３０の一方の入力には、パターン検出回路１１のアンド回路１１−４４が出力するｘＴ−２Ｔ−３Ｔのパターン検出信号をラッチ６Ａ−４２でラッチした信号と、アンド回路５−１２からの２Ｔ検出信号との論理積を演算するアンド回路６Ａ−４５からの出力信号が供給されており、他方の入力には、図１７の違反長検出回路５のアンド回路５−１３が出力する１Ｔ検出信号が、レジスタ６−２９を介して供給されている。
【０１１４】
排他的論理和回路６−２８の出力は、レジスタ６−３２に入力され、レジスタ６−３２の出力が排他的論理和回路６−３３に入力されている。排他的論理和回路６−３３の他方の入力には、レジスタ６−３１の出力が供給されている。排他的論理和回路６−３３の出力は、レジスタ６−３４を介して出力されるようなされている。
【０１１５】
次に、その動作について説明する。アンド回路１１−４２より３Ｔ−２Ｔ−ｘＴのパターン検出信号が出力されたとき、ラッチ６Ａ−４１とアンド回路６Ａ−４４を介して検出信号が出力される。そして、オア回路６−２２を介してレジスタ６−２３に入力されたとき、メモリ１２のレジスタ１２−３は、データｄｔ［３］を出力している。従って、データｄｔ［３］が排他的論理和回路６−２１を介してデータｄｔｏｕｔ［３］として、レジスタ６−２４に供給されている。そしてこのとき、レジスタ６−２４は、データｄｔｏｕｔ［４］を保持しており、このデータを排他的論理和回路６−２５を介してレジスタ６−２６に出力している。レジスタ６−２６と６−２７は、それぞれデータｄｔｏｕｔ［５］またはｄｔｏｕｔ［６］を出力している。また、レジスタ６−３２と６−３４は、それぞれデータｄｔｏｕｔ［７］とｄｔｏｕｔ［８］を出力している。
【０１１６】
このような状態においてクロックが入力されると、各レジスタには前段のレジスタからのデータが転送される。すなわち、メモリ１２のレジスタ１２−３は、データｄｔ［２］を保持、出力し、このデータｄｔ［２］は排他的論理和回路６−２１に出力され、レジスタ６−２４は、それまで供給されていたデータｄｔｏｕｔ［３］を保持し、排他的論理和回路６−２５に出力する。また、レジスタ６−２３は、オア回路６−２２より供給されていた後ろフラグ検出信号を排他的論理和回路６−２１と６−２５に出力する。その結果、排他的論理和回路６−２１は、レジスタ１２−３より供給されるデータｄｔ［２］を、その論理を反転してデータｄｔｏｕｔ［２］として、レジスタ６−２４に出力する。また、排他的論理和回路６−２５は、レジスタ６−２４から出力されているデータｄｔｏｕｔ［３］の論理を反転してレジスタ６−２６に出力する。
【０１１７】
次のクロックが入力されると、レジスタ６−２６は、それまで供給されていたデータｄｔ［３］の論理を反転したデータｄｔｏｕｔ［３］を保持し、レジスタ６−２７に出力する。また、レジスタ６−２４は、それまで供給されていたデータｄｔ［２］の論理を反転したデータｄｔｏｕｔ［２］を保持し、排他的論理和回路６−２５を介してレジスタ６−２６に出力する。
【０１１８】
これらのデータは、以後、クロックが入力されるごとに、順次、後段のレジスタに転送され、出力される。このようにして、３Ｔ−２Ｔ−ｘＴのパターンが検出されたとき、データｄｔ［３］，ｄｔ［２］の論理が反転されて、補正処理が行われる。
【０１１９】
また、パターン検出回路１１のアンド回路１１−４４が、ｘＴ−２Ｔ−３Ｔのパターン検出信号を出力し、この検出信号を、ラッチ６Ａ−４２とアンド回路６Ａ−４５、さらにオア回路６−３０を介してレジスタ６−３１に出力したとき、レジスタ６−２７には、データｄｔ［６］がデータｄｔｏｕｔ［６］として保持され、出力されている。レジスタ６−３２は、データｄｔｏｕｔ［７］を保持し、出力している。
【０１２０】
このような状態においてクロックが入力されると、レジスタ６−２７は、それまでレジスタ６−２６から供給されていたデータｄｔｏｕｔ［５］を保持し、排他的論理和回路６−２８に出力する。また、レジスタ６−３１は、それまでオア回路６−３０より供給されていた前フラグ検出信号を保持し、排他的論理和回路６−２８と排他的論理和回路６−３３に出力する。レジスタ６−３２は、それまで供給されていたデータｄｔｏｕｔ［６］を保持し、排他的論理和回路６−３３に出力する。
【０１２１】
従って、排他的論理和回路６−２８は、レジスタ６−２７より供給されるデータｄｔｏｕｔ［５］の論理を反転して、レジスタ６−３２に供給する。また、排他的論理和回路６−３３は、レジスタ６−３２に保持され、出力されたデータｄｔｏｕｔ［６］を、その論理を反転して、レジスタ６−３４に出力する。これらのデータは、次のクロックが入力されると、それぞれ後段のレジスタに、順次、転送される。このようにして、ｘＴ−２Ｔ−３Ｔのパターンが検出されたとき、データｄｔ［６］，ｄｔ［５］の論理が反転されて補正処理が行われる。
【０１２２】
一方、図１７の違反長検出回路５のアンド回路５−１３が、１Ｔの検出信号を出力し、オア回路６−２２を介してレジスタ６−２３に供給されるとともに、レジスタ６−２９に供給したとき、メモリ１２のレジスタ１２−３は、データｄｔ［３］を保持し、排他的論理和回路６−２１に出力している。レジスタ６−２４は、データｄｔｏｕｔ［４］を保持し、出力している。同様に、レジスタ６−２７は、データｄｔｏｕｔ［６］を保持し、レジスタ６−３２は、データｄｔｏｕｔ［７］を保持している。
【０１２３】
このような状態において、次にクロックが入力されると、レジスタ６−２３は、オア回路６−２２が出力していた１Ｔの検出信号を保持し、排他的論理和回路６−２１と６−２５に出力する。また、このとき、排他的論理和回路６−２１には、レジスタ１２−３から、データｄｔ［２］が供給される。さらに、レジスタ６−２４は、それまで供給されていたデータｄｔｏｕｔ［３］を保持し、排他的論理和回路６−２５に出力する。従って、排他的論理和回路６−２１は、データｄｔ［２］の論理を反転して、レジスタ６−２４に出力し、排他的論理和回路６−２５は、レジスタ６−２４から供給されているデータｄｔｏｕｔ［３］の論理を反転して、レジスタ６−２６に出力する。
【０１２４】
同様に、レジスタ６−２９が、アンド回路５−１３より供給される１Ｔの検出信号を保持し、オア回路６−３０を介してレジスタ６−３１に出力したとき、レジスタ６−２７は、それまで供給されていたデータｄｔｏｕｔ［５］を出力し、レジスタ６−３２は、それまで供給されていたデータｄｔｏｕｔ［６］を保持し、出力する。
【０１２５】
このような状態において、さらに次のクロックが入力されると、すでに論理が反転されて入力されているデータｄｔｏｕｔ［３］が、レジスタ６−２６に保持され、出力されるとともに、レジスタ６−２４にデータｄｔｏｕｔ［２］が保持され、出力される。また、このとき、レジスタ６−３１が、オア回路６−３０より供給されていた１Ｔの検出信号を、排他的論理和回路６−２８と６−３３に出力する。従って、排他的論理和回路６−２８は、レジスタ６−２７より供給されるデータｄｔｏｕｔ［４］の論理を反転して、レジスタ６−３２に出力する。また、排他的論理和回路６−３３は、レジスタ６−３２より供給されるデータｄｔｏｕｔ［５］の論理を反転して、レジスタ６−３４に出力する。
【０１２６】
これらのレジスタに保持されたデータは、その後クロックが入力されるごとに、順次、後段のレジスタに伝送される。このようにして、１Ｔの違反長が検出された場合においては、データｄｔ［５］乃至ｄｔ［２］の論理が反転されて補正処理が行われる。
【０１２７】
図２０は、エッジデータを処理する補正位置検出回路６と補正処理回路７の他の構成例を示している。この例においては、パターン検出回路１１のアンド回路１１−４２が出力する３Ｔ−２Ｔ−ｘＴの検出信号が、ラッチ６Ａ−４１を介してアンド回路６Ａ−４４に入力され２Ｔ検出信号と論理積されるようになされている。アンド回路６Ａ−４４の出力は、レジスタ６−２３を介してオア回路６−２２の一方の入力に供給されている。オア回路６−２２の他方の入力には、１Ｔの検出信号がレジスタ６−３５を介して入力されている。オア回路６−２２の出力は、排他的論理和回路６−２１と６−２５の一方の入力にそれぞれ供給されている。排他的論理和回路６−２１の他方の入力には、メモリ１２のレジスタ１２−３の出力が供給されている。
【０１２８】
排他的論理和回路６−２１の出力は、レジスタ６−２４を介して排他的論理和回路６−２５の他方の入力に供給されている。排他的論理和回路６−２５の出力は、レジスタ６−２６，６−２７を介して、排他的論理和回路６−２８の一方の入力に供給されている。
【０１２９】
排他的論理和回路６−２８の他方の入力には、パターン検出回路１１のアンド回路１１−４４が出力するｘＴ−２Ｔ−３Ｔの検出信号をラッチ６Ａ−４２でラッチした信号と、アンド回路５−１２からの２Ｔ検出信号との論理積をアンド回路６Ａ−４５で演算した結果が、レジスタ６−３６とオア回路６−３０を介して入力されている。また、１Ｔの検出信号がレジスタ６−３５，６−２９とオア回路６−３０を介して排他的論理和回路６−２８の他方の入力に入力されている。
【０１３０】
排他的論理和回路６−２８の出力は、レジスタ６−３２を介して排他的論理和回路６−３３の一方の入力に供給されており、排他的論理和回路６−３３の他方の入力には、オア回路６−３０の出力が供給されている。排他的論理和回路６−３３の出力は、レジスタ６−３４を介して出力されている。
【０１３１】
次に、その動作について説明する。パターン検出回路１１のアンド回路１１−４２が、３Ｔ−２Ｔ−ｘＴの検出信号を出力したとき、ラッチ６Ａ−４１によるそのラッチ信号が、アンド回路５−１２からの２Ｔ検出信号と、アンド回路６Ａ−４４で論理積演算される。その演算結果は、レジスタ６−２３に保持された後、さらにオア回路６−２２を介して排他的論理和回路６−２１と６−２５に供給される。このとき、排他的論理和回路６−２１の他方の入力には、レジスタ１２−３からデータｄｔ［２］が入力されているので、排他的論理和回路６−２１は、その論理を反転して、データｄｔｏｕｔ［２］として、レジスタ６−２４に出力する。また、このとき、レジスタ６−２４は、データｄｔｏｕｔ［３］を排他的論理和回路６−２５の他方の入力に供給しているので、排他的論理和回路６−２５は、このデータｄｔｏｕｔ［３］の論理を反転して、レジスタ６−２６に出力する。このようにして、３Ｔ−２Ｔ−ｘＴのパターンが検出されたとき、ｄｔ［３］，ｄｔ［２］の論理が反転され、補正処理が行われる。
【０１３２】
一方、パターン検出回路１１のアンド回路１１−４４が、ｘＴ−２Ｔ−３Ｔのパターン検出信号を出力すると、ラッチ６Ａ−４２でこれがラッチされ、アンド回路５−１２からの２Ｔ検出信号と、アンド回路６Ａ−４５で論理積される。この論理積がレジスタ６−３６とオア回路６−３０を介して排他的論理和回路６−２８と６−３３に入力されたとき、レジスタ６−２７は、データｄｔｏｕｔ［５］を保持し、レジスタ６−３２は、データｄｔｏｕｔ［６］を保持している。従って、排他的論理和回路６−２８は、データｄｔｏｕｔ［５］の論理を反転してレジスタ６−３２に出力し、排他的論理和回路６−３３は、データｄｔｏｕｔ［６］を、その論理を反転してレジスタ６−３４に出力する。このように、ｘＴ−２Ｔ−３Ｔのパターンが検出された場合には、データｄｔ［６］，ｄｔ［５］の論理が反転されて補正処理が行われる。
【０１３３】
さらに、１Ｔの検出信号が、レジスタ６−３５に保持され、オア回路６−２２を介して排他的論理和回路６−２１と６−２５に入力されたとき、レジスタ１２−３は、データｄｔ［２］を保持し、レジスタ６−２４は、データｄｔｏｕｔ［３］を保持している。従って、排他的論理和回路６−２１は、データｄｔｏｕｔ［２］の論理を反転して、レジスタ６−２４に出力し、排他的論理和回路６−２５は、データｄｔｏｕｔ［３］の論理を反転して、レジスタ６−２６に出力する。
【０１３４】
そして、次のクロックが入力されると、レジスタ６−２９は、レジスタ６−３５より供給されている１Ｔの検出信号を保持し、オア回路６−３０を介して、排他的論理和回路６−２８と６−３３に出力する。このとき、レジスタ６−２７は、データｄｔｏｕｔ［４］を保持し、レジスタ６−３２は、データｄｔｏｕｔ［５］を保持している。従って、排他的論理和回路６−２８は、データｄｔｏｕｔ［４］の論理を反転して、レジスタ６−３２に出力し、排他的論理和回路６−３３は、データｄｔｏｕｔ［５］の論理を反転して、レジスタ６−３４に出力する。このようにして、１Ｔの検出信号が検出されたとき、データｄｔ［５］乃至ｄｔ［２］の論理が反転されて補正処理が行われる。
【０１３５】
図２１は、図１６のフローチャートにおける違反長検出、パターン検出、および補正処理の例を表している。図２１（Ａ）に示すように、データｄｔ［５］乃至ｄｔ［３］が”１０１”であるとき、データｄｔ［４］が違反長２Ｔ（（ｄ−１）＝１）として検出される。そして、この違反ビット列の前方のデータｄｔ［８］乃至ｄｔ［５］が”１００１”であるとき、３Ｔ（ｄ＝２）の連続長が検出され、また、データｄｔ［３］乃至ｄｔ［０］が”１０００”であるとき、短くとも４Ｔ（（ｄ＋１）＝３）の連続長が検出される。これにより、３Ｔ−２Ｔ−４Ｔのパターンが検出される。この場合、ｄｔ［３］，ｄｔ［２］の論理が反転されて、補正が行われる。
【０１３６】
また、図２１（Ｂ）に示すように、データｄｔ［８］乃至ｄｔ［５］が”０００１”であるとき、短くとも４Ｔ（（ｄ＋１）＝３）の連続長が検出され、また、データｄｔ［３］乃至ｄｔ［０］が”１００１”であるとき、３Ｔ（ｄ＝２）の連続長が検出される。従って、このとき、４Ｔ−２Ｔ−３Ｔのパターンが検出される。この場合、ｄｔ［６］，ｄｔ［５］の論理が反転されて、補正が行われる。
【０１３７】
さらに、図２１（Ｃ）に示すように、データｄｔ［４］＝ｄｔ［３］＝１であるとき、１Ｔ（（ｄ−２）＝０）の違反長が検出される。この場合、ｄｔ［５］，ｄｔ［４］，ｄｔ［３］，ｄｔ［２］の論理が反転されて、補正が行われる。
【０１３８】
コンパレータ４により逆ＮＲＺＩ変調を行った場合において、同一シンボルの最大連続長がｋより大きい（ｋ＋１）であるチャネルビットデータを補正する場合の処理は、図２２のフローチャートに示すようになる。
【０１３９】
その基本的処理は、図１３に示した場合と同様であるが、ステップＳ６４，Ｓ６５，Ｓ６７，Ｓ７２，における検出処理、およびステップＳ７０，Ｓ７４の補正処理が、図１３におけるステップＳ２４，Ｓ２５，Ｓ２７，Ｓ３２における検出処理、およびステップＳ３０，Ｓ３４の補正処理と異なっている。
【０１４０】
すなわち、図２２の処理の場合、データが逆ＮＲＺＩ変調されているため、ステップＳ６４，Ｓ７２における１２Ｔ，１３Ｔの違反長の検出処理が、（ｋ＋１）＝１１または（ｋ＋２）＝１２の検出処理として行われる。ステップＳ６５，Ｓ６７における１１Ｔ−１２Ｔ−ｘＴのパターンまたはｘＴ−１２Ｔ−１１Ｔのパターンの検出処理は、（ｋ＝１０）−（（ｋ＋１）＝１１）−（（ｋ−（ｘ−９））＝１０−（ｘ−９））、または（（ｋ−（ｘ−９））＝１０−（ｘ−９））−（（ｋ＋１）＝１１）−（ｋ＝１０）の検出処理とされる。ステップＳ７０，Ｓ７４における補正は、（ｋ＋１）＝１１，（ｋ＋２）＝１２のｋ＝１０への補正となる。
【０１４１】
すなわち、図１６の処理を図２の処理と比較して説明した場合と同様に、エッジデータを処理する場合には、違反長またはパターンの検出対象となるビットが、レベルデータを処理する場合に較べて、１ビット分少なくなる。
【０１４２】
図２３は、図２２のフローチャートにおける違反長とパターンの検出、および補正の例を表している。図２３（Ａ）に示すように、データｄｔ［２３］乃至ｄｔ［１１］が”１０００００００００００１”であるとき、データｄｔ［２２］乃至ｄｔ［１２］が１２Ｔ（（ｋ＋１）＝１１）の違反長として検出される。また、この違反長の前方のデータｄｔ［３３］乃至ｄｔ［２３］が、”００００００００００１”以外であるとき、１０Ｔ（（ｋ−１）＝９）以下の連続長が検出され、違反長の後方のデータｄｔ［１１］乃至ｄｔ［０］が、”１００００００００００１”であるとき、１１Ｔ（ｋ＝１０）の連続長が検出される。すなわち、これにより、１０Ｔ以下−１２Ｔ−１１Ｔのパターンが検出される。この場合、ｄｔ［２２］，ｄｔ［２３］の論理が反転されて、補正が行われる。
【０１４３】
また、図２３（Ｂ）に示すように、１２Ｔの違反長の前方のデータｄｔ［３４］乃至ｄｔ［２３］が”１００００００００００１”であるとき、１１Ｔ（ｋ＝１０）の連続長が検出され、違反長の後方のデータｄｔ［１１］乃至ｄｔ［１］が”１００００００００００”以外であるとき、１０Ｔ（（ｋ−１）＝９）以下の連続長が検出される。従って、これにより、１１Ｔ−１２Ｔ−１０Ｔ以下のパターンが検出される。この場合、ｄｔ［１２］，ｄｔ［１１］の論理が反転されて、補正が行われる。
【０１４４】
さらに、図２３（Ｃ）に示すように、データｄｔ［２４］乃至ｄｔ［１１］が”１００００００００００００１”であるとき、１３Ｔ（（ｋ＋２）＝１２）の違反長が検出される。この場合、ｄｔ［２４］，ｄｔ［２３］とｄｔ［１２］，ｄｔ［１１］の論理が反転されて、補正が行われる。
【０１４５】
なお、最小ランｄ＝２であり、最小連続長が３Ｔの可変長符号には、ＥＦＭ変調方式の他、例えばＥＦＭプラス変調方式、ＲＬＬ（２−７）方式などがある。
【０１４６】
次に、図２のフローチャートに基づいて行ったテストの結果について説明する。スキューがゼロの時はエラーがゼロであった光ディスクを再生し、その再生ＲＦ信号を、所定の基準レベルで２値化したものをオリジナルのデータと比較して、タンジェンシャル方向にスキューを加えていったとき発生するエラーを観察した。
【０１４７】
補正処理回路７を設けない場合、タンジェンシャルスキュー角度を約０．４７度としたとき、テストを行った装置での誤り訂正可能な最大のビットエラーレートとなった。このタンジェンシャルスキュー角度が約０．４７度の時、エラーは約１００個発生し、そのエラーは全て３Ｔを２Ｔに誤ったものであった。スキュー角度をさらに増やしていくと、例えば３Ｔが１Ｔとなるエラーなど、それ以外のパターンのエラーが多数発生した。タンジェンシャルスキュー角度が、約０．６６度になると、ＰＬＬをロックするのが困難になった。
【０１４８】
エラー改善の効果をエラー減少の割合で示すと、次のようになる。すなわち、従来の補正処理回路７を設けない場合のエラーの数である１００個に対するパーセントで表すと、図２による１Ｔ，２Ｔエラー補正を行った場合、タンジェンシャルスキュー角度が＋０．４７度のとき、エラーは２％に減った。また−０．４７度の角度ではエラーは１％に減った。タンジェンシャルスキュー角度が＋０．６６度の場合においては、エラーは４７％に減り、−０．６６度の角度では４９％に減った。このように、本発明の方法によりエラーは著しく減少し、スキューマージンが従来の場合よりも大きくなった。
【０１４９】
なお、図７、図１９、図２０の例では、メモリ１２に、比較のためのデータｄｔ［ｉ］を保持し、補正処理回路７に、出力のために、データｄｔ［ｉ］とは別のデータｄｔｏｕｔ［ｉ］を保持するようにした。これはデータの比較と補正を１箇所の２Ｔに対し１回のみ行うようにするためであるが、保持するデータをｄｔ［ｉ］のみにし、比較と出力を同一のｄｔ［ｉ］で行うようにすることもできる。この場合、例えば３Ｔ−２Ｔ−３Ｔ−３Ｔ−４Ｔのパターンのデータが入力され、さらに補正位置指定が後ろであったとき、このデータは、３Ｔ−３Ｔ−２Ｔ−３Ｔ−４Ｔのパターンに変換され、次に、３Ｔ−３Ｔ−３Ｔ−２Ｔ−４Ｔのパターンに変換され、さらに３Ｔ−３Ｔ−３Ｔ−３Ｔ−３Ｔのパターンに変換されて、出力される。このような伝搬したエラーの発生は、タンジェンシャルスキューの大きいとき実際に起こりうる。
【０１５０】
また、補正処理におけるビットの論理の反転は、ビットシフトの操作により行うこともできる。例えば図１４（Ａ）のｄｔ［２３］は、データｄｔ［２４］とビットを入れ替えることでその論理を反転するようにしてもよい。要は、実質的に論理が反転すればよいのであって、その手段、方法は、任意である。
【０１５１】
また、この発明に係る符号復号装置の記録媒体は、光ディスクだけでなく、（ｄ，ｋ）符号を用いて記録された光磁気ディスク等の各種のディスクとすることができる。
【０１５２】
さらに、この発明に係る符号復号装置は、スキューマージンの確保だけでなく、線記録密度の向上に伴う最小反転間隔Ｔminの読み取りエラーの低減にも有効である。記録媒体は、一種の伝送路と考えることができるから、結局、本発明は、所定の伝送路から伝送されてきた伝送信号を復号する場合に適用することができることになる。
【０１５３】
【発明の効果】
以上の如く、請求項１に記載の符号復号装置および請求項１６に記載の符号復号方法によれば、違反ビット列の前のビット列が規定長を有するとき、違反ビット列の後のビット列のビットを補正するようにし、違反ビット列の後のビット列が規定長を有するとき、違反ビット列の前のビット列のビットを補正するようにしているので、Ａ／Ｄ変換回路を設けることなく、迅速かつ確実に、エラー補正処理を行うことができ、もって、低コストの装置でビットエラーレートを向上させることが可能となる。特に記録媒体のタンジェンシャルスキューに対応して発生するエラーを、簡単な構成で、確実に補正することができる。
【０１５４】
請求項２に記載の符号復号装置によれば、基準レベルと比較して、伝送符号を出力するようにしたので、補正処理すべき伝送符号を、簡単かつ確実に、生成することができる。
【０１５５】
請求項３に記載の符号復号装置によれば、記録媒体から再生された符号を伝送符号とするようにしたので、特に、記録媒体に対するスキューマージンやデフォーカスのマージンを増やすことが可能となる。
【０１５９】
請求項４に記載の符号復号装置によれば、補正位置を一時的に記憶するようにしたので、補正位置をより確実に指定することが可能となる。
【０１６０】
請求項５に記載の符号復号装置によれば、直前の違反長の検出時の補正位置に対応して補正位置を指定するようにしたので、所定のパターンが検出されない場合においても、補正処理を確実に実行することが可能となる。
【０１６１】
請求項６に記載の符号復号装置によれば、予め指定されている補正位置を補正位置として指定するようにしたので、所定のパターンが検出されない場合においても、確実に補正を実行することが可能となる。
【０１６２】
請求項７に記載の符号復号装置によれば、論理レベルを反転させることで補正をするようにしたので、簡単かつ確実に、補正を行うことが可能となる。
【０１６３】
請求項８に記載の符号復号装置によれば、同一のシンボルの連続長が（ｄ’−１）である連続長を違反長として検出し、連続長がｄ’となるように補正するようにしたので、最小連続長に対するエラーを、確実に補正することができる。
【０１６４】
請求項９に記載の符号復号装置によれば、違反長の直前または直後のビットを補正するようにしたので、最小連続長に対するエラーを、簡単かつ確実に補正することができる。
【０１６５】
請求項１０に記載の符号復号装置によれば、（ｋ’＋１）の連続長を違反長として検出し、連続長がｋ’となるように補正するようにしたので、最大連続長がｋ’である符号に対するエラーを確実に補正することができる。
【０１６６】
請求項１１に記載の符号復号装置によれば、違反長の最前または最後のビットを補正するようにしたので、最大連続長に対するエラーを、簡単かつ確実に補正することができる。
【０１６７】
請求項１２に記載の符号復号装置によれば、逆ＮＲＺＩ変調した後の伝送符号から、違反長を検出し、同一のシンボルの連続長がｄとなるように補正するようにしたので、エッジデータからなる伝送符号を、確実に補正することが可能となる。
【０１６８】
請求項１３に記載の符号復号装置によれば、違反長の最前のビットとその前のビット、または、最後のビットとその後のビットを補正するようにしたので、最大連続長に対するエラーを、確実に補正することができる。
【０１６９】
請求項１４に記載の符号復号装置によれば、エッジデータからなる伝送符号から、（ｋ＋１）の連続長を違反長として検出し、連続長がｋとなるように補正するようにしたので、最大連続長がｋである符号をＮＲＺＩ変調した場合のエラーを、確実に補正することが可能となる。
【０１７０】
請求項１５に記載の符号復号装置によれば、違反長の最前のビットとその後のビット、または、最後のビットとその前のビットを補正するようにしたので、最大連続長に対するエラーを、確実に補正することができる。
【図面の簡単な説明】
【図１】  本発明の符号復号装置の構成例を示すブロック図である。
【図２】  図１の実施の形態における最小連続長に対する補正動作を説明するフローチャートである。
【図３】  図１の実施の形態の動作を説明するタイミングチャートである。
【図４】  図１の実施の形態の他の動作を説明するタイミングチャートである。
【図５】  図１のメモリと違反長検出回路の構成例を示すブロック図である。
【図６】  図１のメモリとパターン検出回路の構成例を示すブロック図である。
【図７】  図１の補正位置検出回路と補正処理回路の構成例を示すブロック図である。
【図８】  図７の構成例の動作を説明するタイミングチャートである。
【図９】  図２のフローチャートの処理を説明する図である。
【図１０】  図１の補正位置検出回路と補正処理回路の他の構成例を示すブロック図である。
【図１１】  図１の補正位置検出回路のメモリの構成例を示すブロック図である。
【図１２】  図１１の構成例の動作を説明するタイミングチャートである。
【図１３】  図１の実施の形態における最大連続長に対する補正動作を説明するフローチャートである。
【図１４】  図１３のフローチャートの処理を説明する図である。
【図１５】  エッジデータを検出するコンパレータの動作を説明する図である。
【図１６】  図１の実施の形態における逆ＮＲＺＩ変調時の最小連続長に対する補正動作を説明するフローチャートである。
【図１７】  図１の違反長検出回路の他の構成例を示すブロック図である。
【図１８】  図１のパターン検出回路の他の構成例を示すブロック図である。
【図１９】  図１の補正位置検出回路と補正処理回路の他の構成例を示すブロック図である。
【図２０】  図１の補正位置検出回路と補正処理回路のさらに他の構成例を示すブロック図である。
【図２１】  図１６のフローチャートの処理を説明する図である。
【図２２】  図１の実施の形態における逆ＮＲＺＩ変調時の最大連続長に対する補正動作を説明するフローチャートである。
【図２３】  図２２のフローチャートの処理を説明する図である。
【図２４】  従来の符号復号装置の構成例を示すブロック図である。
【図１】
0003882953.tif 000002
【図２】
0003882953.tif 000003
【図３】
0003882953.tif 000004
【図４】
0003882953.tif 000005
【図５】
0003882953.tif 000006
【図６】
0003882953.tif 000007
【図７】
0003882953.tif 000008
【図８】
0003882953.tif 000009
【図９】
0003882953.tif 000010
【図１０】
0003882953.tif 000011
【図１１】
0003882953.tif 000012
【図１２】
0003882953.tif 000013
【図１３】
0003882953.tif 000014
【図１４】
0003882953.tif 000015
【図１５】
0003882953.tif 000016
【図１６】
0003882953.tif 000017
【図１７】
0003882953.tif 000018
【図１８】
0003882953.tif 000019
【図１９】
0003882953.tif 000020
【図２０】
0003882953.tif 000021
【図２１】
0003882953.tif 000022
【図２２】
0003882953.tif 000023
【図２３】
0003882953.tif 000024
【図２４】
0003882953.tif 000025