本発明を具体的に説明する前に、まず概要を述べる。本発明の実施例は、光ディスク等の記録媒体に記録されている信号を再生し、再生した信号(以下、「再生信号」という)をパーシャルレスポンス方式にて等化するととともに、等化した信号(以下、「等化信号」という)を復号する再生装置に関する。前述のごとく、光ディスクの記録容量が高まるにつれ、線形波形等化器では除去しきれない非線形歪の影響が大きくなっている。非線形歪を除去するためには、非線形等化器としてのニューラルネットが有効であるが、トレーニング信号によって学習、収束させる必要がある。そこで、再生信号の非線形歪をトレーニング信号なしで低減するために、本実施例に係る再生装置は次の処理を実行する。
再生装置は、線形波形等化器と非線形波形等化器とを並列に配置し、いずれにも再生信号を入力する。また、再生装置は、線形波形等化器からの等化信号(以下、「線形等化信号」という)と非線形波形等化器からの等化信号(以下、「非線形等化信号」という)とを合成し、合成した信号(以下、「加算信号」という)をビタビ復号器に入力する。ここで、ビタビ復号器は、加算信号を順次仮判定する本発明の仮判定部として機能する。ビタビ復号器において仮判定された信号(以下、「仮判定信号」という)は、教師信号として、線形波形等化器と非線形波形等化器とに入力される。線形波形等化器と非線形波形等化器とは、教師信号をもとにタップ係数を導出して等化処理を実行する。例えば、非線形等化器には、ニューラルネットワークが使用されているので、トレーニング信号を使用せずにニューラルネットワークの学習がなされる。なお、タップ係数とは、後述するように等化部内部の係数であり以下、「係数」と呼ぶ場合もある。また、係数は、一般に重み係数と呼ばれる場合もあり、またニューラルネットワークの場合には、シナプス荷重と呼ばれることもある。
ここで、トランスバーサル型フィルタで構成される線形波形等化器と、ニューラルネットワークで構成される非線形波形等化器の両方を組み合わせても適応動作を可能にするために、再生装置は、さらに次の処理を実行する。一般的に、線形波形等化器よりも非線形波形等化器の方がタップ係数の収束までに要する期間が長い。ニューラルネットワークが収束する前の不安点な動作を解消するために、再生装置は、ニューラルネットワークの学習の収束状況を監視しており、収束が確認されなければ、加算信号ではなく、線形等化信号をビタビ復号器へ出力する。また、線形波形等化器と非線形波形等化器とにおけるタップ係数の導出には、線形等化信号、非線形等化信号、仮判定信号が使用されるが、線形等化信号や非線形信号と、仮判定信号とは、出力タイミングが異なる。そのため、これらのタイミングを合わせるために、再生装置は、線形等化信号と非線形等化信号とを遅延させる。
等化した信号の特性を向上させるため、ここでは、線形等化信号と非線形等化信号とを合成する際の加算比率を変更することによって、各等化器部分の寄与率を変化させて特性の向上を実現する。この操作により、例えば、非線形歪みに対する補正の能力を向上できるので特性が向上する。その際、各等化器部分の寄与率が変化することによって、係数変更または収束の安定性が低下することを抑制するために、ニューラルネットワークの学習の収束が確認されたタイミング以降に加算比率の変更を開始する。また、加算比率の変更は、信号特性のみを指標にすることなく、収束状況の監視の状況を勘案して制御される。以下、本発明の実施例を説明する。
(実施例1)
図1は、本発明の実施例1に係る再生装置100の構成を示す。再生装置100は、光ディスク10、光ディスク駆動装置12、光ピックアップ14、プリアンプ部16、AGC部18、PLL(Phase Locked Loop)部20、A/D変換部22、処理部24、制御部26を含む。
光ディスク10は、再生装置100に着脱可能に構成された記録媒体である。光ディスク10は、CD、DVD、BD、HD DVDのようなさまざまな種類に対応する。ここでは、特に光ディスク10として、非線形歪が再生に影響を及ぼす程度に大きい場合を対象にする。光ディスク駆動装置12は、所定の回転速度で光ディスク10を回転させるためのモータである。光ピックアップ14は、光ディスク10から処理対象となる信号を読み出すとともに、これに対して光電変換および増幅を実行する。その結果の信号が、前述の「再生信号」に相当する。光ピックアップ14は、再生信号をプリアンプ部16へ出力する。
プリアンプ部16は、再生信号を増幅し、AGC部18は、プリアンプ部16からの再生信号を所定の振幅に増幅する。AGC部18は、増幅した再生信号をPLL部20へ出力し、PLL部20は、再生信号からクロックを検出する。A/D変換部22は、PLL部20によって検出されたクロックをもとに、再生信号をアナログ/デジタル変換する。処理部24は、A/D変換部22においてアナログ/デジタル変換された再生信号(以下、これもまた「再生信号」という)に対して、等化処理および復号処理を実行する。処理部24の詳細は、後述する。
この構成は、ハードウエア的には、任意のコンピュータのCPU、メモリ、その他のLSIで実現でき、ソフトウエア的にはメモリにロードされたプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者には理解されるところである。
図2は、処理部24の構成を示す。処理部24は、等化処理部30、第1遅延部32、第2遅延部34、加算部36、ビタビ復号部38、等化誤差生成部40、判定部42を含む。また、等化処理部30は、線形等化部44、非線形等化部46を含み、加算部36は、可変ゲイン部62、実行部64を含む。また、等化誤差生成部40、非線形等化部46は、適応非線形等化部48とグループ化される。さらに、信号として、線形等化用誤差信号300、非線形等化用誤差信号302、仮判定信号306を含む。なお、本実施例では、ビタビ復号部38が加算部36によって加算された信号を順次仮判定する本発明の仮判定部として機能するが、ビタビ復号部38とは別に仮判定部を設けてもかまわない。
図1のA/D変換部22においてビットクロック毎にサンプリングされた再生信号は、線形等化部44と非線形等化部46とに順次入力される。線形等化部44は、入力した再生信号を順次線形等化する。線形等化部44は、トランスバーサルフィルタにて構成されており、多段タップで再生信号を遅延させるとともに、多段タップからの出力と複数のタップ係数とを乗算し、かつ乗算結果を加算する。ここで、加算結果が、前述の線形等化信号に相当する。また、線形等化部44は、後述の等化誤差生成部40から線形等化用誤差信号300を入力し、線形等化用誤差信号300をもとに、複数のタップ係数を導出する。ここで、複数のタップ係数の導出には、LMS(Least Mean Square)アルゴリズムのような適応アルゴリズムが使用される。線形等化部44は、線形等化信号を第1遅延部32を介して等化誤差生成部40へ出力するとともに、第1遅延部32を介さずに直接加算部36へ出力する。
非線形等化部46は、線形等化部44における線形等化に並行して、再生信号を順次非線形等化する。非線形等化部46は、ニューラルネットワークにて構成されている。非線形等化部46における非線形等化の結果が、前述の非線形等化信号に相当する。また、非線形等化部46は、後述の等化誤差生成部40から、非線形等化用誤差信号302を入力し、非線形等化用誤差信号302をもとに、ニューラルネットワークにおいて使用される複数のタップ係数を導出する。ここで、非線形等化用誤差信号302は、第1遅延部32からの遅延信号と第2遅延部34からの遅延信号との和と、仮判定信号との差異にて生成されているので、非線形等化部46は、仮判定信号を教師信号として複数の係数を導出するといえる。非線形等化部46は、非線形等化信号を、第2遅延部34を介して等化誤差生成部40と、第2遅延部34を介さずに直接に加算部36へ出力する。
第1遅延部32は、線形等化部44からの線形等化信号を入力する。第1遅延部32は、線形等化信号を遅延させた後、遅延した線形等化信号(以下、「線形等化信号」あるいは「遅延信号」という)を等化誤差生成部40へ出力する。ここで、第1遅延部32は、ビタビ復号部38における仮判定のための処理遅延に応じた期間にわたって遅延を実行する。つまり、第1遅延部32によって、線形等化部44からビタビ復号部38へ至った後にビタビ復号部38から出力された仮判定信号306と、線形等化部44からの線形等化信号とのタイミングが合わされる。第1遅延部32は、例えば、ビットクロックで駆動されるラッチ回路にて構成される。第2遅延部34は、非線形等化部46からの非線形等化信号を入力する。第2遅延部34は、非線形等化信号を遅延させた後、遅延した非線形等化信号(以下、「非線形等化信号」あるいは「遅延信号」という)を等化誤差生成部40へ出力する。ここで、第2遅延部34は、第1遅延部32と同様に、ビタビ復号部38における仮判定のための処理遅延に応じた期間にわたって遅延を実行する。
加算部36は、線形等化部44からの線形等化信号と、非線形等化部46からの非線形等化信号とを入力する。加算部36の内部には、可変ゲイン部62、実行部64が備えられている。可変ゲイン部62は、ゲインを1から0間で変更することによって、線形等化部44からの線形等化信号の大きさを変更する。実行部64は、線形等化信号と非線形等化信号とを加算することによって、加算信号を生成する。なお、可変ゲイン部62によって線形等化信号の大きさが変更されることによって、非線形等化信号と線形等化信号とが、変更可能な加算比率で加算される。加算部36は、加算信号をビタビ復号部38へ出力する。
ビタビ復号部38は、加算部36からの加算信号を入力し、加算信号に対してビタビ復号を実行する。ビタビ復号部38は、加算信号からブランチメトリックを計算するブランチメトリック演算回路と、ブランチメトリックを1クロック毎に累積加算してパスメトリックを計算するパスメトリック演算回路と、パスメトリックが最小となるデータ系列を最も確からしい候補系列として選択して記憶するパスメモリとを含む。パスメモリは、複数の候補系列を格納しており、パスメトリック演算回路からの選択信号にしたがって候補系列を選択する。また、選択された候補系列がデータ系列として出力される。
また、ビタビ復号部38は、パスメモリに記憶されているデータ系列に対して、パーシャルレスポンス規則にしたがって仮判定を実行することによって、加算信号を順次仮判定する。つまり、ビタビ復号部38は、パスメモリに記憶されている候補系列のうちのひとつに対して、所定ビット数を使ってパーシャルレスポンスの仮判定動作を実行する。具体的に説明すると、ビタビ復号部38は、パーシャルレスポンス等化が正常になされた場合に、所定の入力ビットに対する出力のレベルを仮判定し、入力ビットに対して仮判定したレベルを仮判定信号306として等化誤差生成部40へ出力する。仮判定はパスメモリの最終結果に限らず、パスメモリの途中の候補系列に対してなされてもよい。例えば、パスメモリ長が64ビットだとした場合、24ビット目や32ビット目の候補系列のひとつに対して仮判定がなされてもよい。
等化誤差生成部40は、第1遅延部32からの線形等化信号、第2遅延部34からの非線形等化信号、ビタビ復号部38からの仮判定信号306を入力する。前述のごとく、これらの信号のタイミングは合っている。等化誤差生成部40は、線形等化誤差と非線形等化信号との和と、仮判定信号306との差異をもとに、線形等化用誤差信号300を生成する。例えば、線形等化誤差と非線形等化信号との和が計算された後、和から仮判定信号306を減算することによって、線形等化用誤差信号300が導出される。また、等化誤差生成部40は、線形等化誤差と非線形等化信号との和と、仮判定信号306との差異をもとに、非線形等化用誤差信号302を生成する。例えば、線形等化誤差と非線形等化信号との和が計算された後、和から仮判定信号306を減算することによって、非線形等化用誤差信号302が導出される。等化誤差生成部40は、線形等化用誤差信号300を線形等化部44へ出力し、非線形等化用誤差信号302を非線形等化部46へ出力する。
非線形等化部46は、非線形等化用誤差信号302をもとに、ニューラルネットワークのタップ係数を更新しているが、タップ係数が収束するまでの間、非線形等化部46の動作が不安定になる。その結果、ビタビ復号部38から出力されるデータ系列が誤る可能性が高くなる。そのため、収束前から、加算信号をビタビ復号部38へ入力することは、好ましくない。これに対応するために、判定部42は、非線形等化部46における複数のタップ係数の収束を判定する。具体的に説明すると、判定部42は、非線形等化用誤差信号302の二乗値を所定期間にわたって加算することにより積算する。また、判定部42は、積算値としきい値とを比較し、積算値がしきい値以下になれば収束と判定する。一方、積算値がしきい値より大きければ、判定部42は、収束していないと判定する。判定部42は、加算部36、等化誤差生成部40へ判定結果を出力する。判定結果では、収束しているか否かが示されている。
加算部36は、判定部42において収束が判定されるまでの間、つまり収束していないと判定された場合、前述の加算信号をビタビ復号部38へ出力せずに、線形等化部44からの線形等化信号をビタビ復号部38へ出力する。その際、可変ゲイン部62は、ゲインを「1」に設定する。一方、加算部36は、判定部42において収束が判定された後、前述のごとく、加算信号をビタビ復号部38へ出力する。つまり、ニューラルネットが収束するまでの間は、線形等化信号がビタビ復号部38へ出力され、ニューラルネットが収束してからは、加算信号がビタビ復号部38へ出力される。これにより、非線形等化信号による悪影響が低減される。なお、判定部42において収束が判定された後、加算信号を生成する際に、可変ゲイン部62はゲインを調節する。この処理については、後述する。
等化誤差生成部40は、判定部42において収束が判定されるまでの間、非線形等化信号を使用せず、線形等化信号と仮判定信号306との差異をもとに、線形等化用誤差信号300を生成する。また、等化誤差生成部40は、線形等化部44に対して、線形等化用誤差信号300をもとに複数のタップ係数を導出させる。一方、等化誤差生成部40は、判定部42において収束が判定された後、前述のごとく動作する。さらに、等化誤差生成部40は、判定部42からの判定結果に関係なく、線形等化信号と非線形等化信号との和と、仮判定信号306との差異をもとに、非線形等化用誤差信号302を生成する。これによっても、非線形等化信号による悪影響が低減される。
また、判定部42は、収束を判定した後、非線形等化用誤差信号302の二乗値の総和である積算値がしきい値よりも再び大きくなった場合に、非線形等化部46の複数のタップ係数の発散と判定する。その際、判定部42は、非線形等化部46に対して、複数のタップ係数を新たに導出させる。なお、非線形等化部46は、所定の収束値以下となった場合には複数のタップ係数の更新を停止するだけでもよい。なお、ニューラルネットワークが最初から収束値に近いタップ係数で設定できれば当初から線形等化信号と非線形等化信号との加算信号をビタビ復号部38へ出力しても構わないし、非線形等化用誤差信号302の収束をしきい値以下となった時に収束したと判定するのではなく、所定の時間経過をもって収束していると判断しても構わない。
可変ゲイン部62における加算比率の変更は、どのタイミングで開始してもよいが、判定部42が収束と判定したタイミング以降に開始する方が、係数を収束させる動作を安定させるために好ましい。その場合、線形等化部44による補正がなされた後、線形等化部44による補正が不十分であった点に対して非線形等化部46による補正がなされる際に、加算比率が変化させられる。そのため、加算比率を変化することは、処理部24における線形等化部44の寄与率を変化させることに相当し、非線形等化部46が線形等化部44の機能の一部分を取り込んだといえる。
加算比率の調節によって、線形等化部44の寄与がある程度小さくなと、等化性能が向上する。これは、線形等化部44の寄与が小さくなると、非線形等化部46の寄与が大きくなるので、非線形歪に対する補正能力が向上するからである。さらに、加算比率が小さくなると、非線形歪の補正に対する改善の余地が小さくなるので、性能向上は飽和する。その一方で、非線形等化部46による係数変化の影響が大きくなるので、適応等化器としての安定性が低下しやすくなる。これに対応するため、安定性を観測して、加算比率の変更を制御することが望ましい。
判定部42は、収束を判定した後、可変ゲイン部62のゲインを下げていく。これは、収束の判定後、加算比率の調節を開始することに相当する。例えば、所定のゲインを設定してから一定期間経過したときに、非線形等化用誤差信号302の大きさを監視し、非線形等化用誤差信号302の大きさがしきい値αよりも大きければ、判定部42は、ゲインをさらに小さくするように、可変ゲイン部62に指示する。つまり、判定部42は、収束が判定されてからの期間が経過するほど、線形等化信号の加算比率が小さくなるように、ゲインを調節する。なお、非線形等化用誤差信号302が増加に転じた場合に、判定部42は、加算比率の変更を停止してもよい。可変ゲイン部62は、判定部42の指示に応じてゲインを設定する。
図3は、可変ゲイン部62の動作概要を示す図である。縦軸が、非線形等化用誤差信号302の大きさを「誤差」として示し、横軸が、時間を示す。時刻「0」が、収束のタイミングに相当する。時刻「0」から時刻「T1」にわたって、ゲインが「1」に設定される。時刻「T1」において、誤差がしきい値αよりも大きいので、ゲインは、「1」よりも小さくなるように更新される。時刻「T2」、「T3」においても、誤差がしきい値αよりも大きいので、ゲインは、それまで設定された値よりも小さくなるように更新される。時刻「T4」において、誤差がしきい値α以上になるので、ゲインは更新されない。
図4は、線形等化部44の構成を示す。線形等化部44は、多段タップ50、線形処理部52を含む。多段タップ50は、遅延タップ54と総称される第1遅延タップ54a、第2遅延タップ54b、第3遅延タップ54c、第N遅延タップ54nを含む。線形処理部52は、乗算部56と総称される第1乗算部56a、第2乗算部56b、第3乗算部56c、第N+1乗算部56n+1、タップ係数導出部58、積算部60を含む。
多段タップ50は、複数の遅延タップ54がシリアルに接続されることによって形成される。具体的に説明すると、第1遅延タップ54aは、再生信号を入力し、遅延後、再生信号を出力する。第2遅延タップ54bは、第1遅延タップ54aからの再生信号を入力し、遅延後、再生信号を出力する。第3遅延タップ54cから第N遅延タップ54nも、同様の処理を実行する。遅延タップ54への入力部分と出力部分が多段タップ50からの出力信号であり、例えば、4つの遅延タップ54が配置される場合、5つの出力信号が存在する。これらの出力信号は、乗算部56へ出力されている。
乗算部56は、遅延タップ54からの出力信号を入力するとともに、タップ係数導出部58からのタップ係数も入力する。ここで、タップ係数は、各出力信号に対応づけられて導出されている。乗算部56は、出力信号とタップ係数とを乗算する。乗算部56は、各乗算結果を積算部60へ出力する。積算部60は、乗算部56からの乗算結果を次々に加算して加算結果である積算値を求める。加算結果である積算値が、前述の線形等化信号に相当する。積算部60は、線形等化信号を出力する。タップ係数導出部58は、線形等化用誤差信号300を入力する。タップ係数導出部58は、再生信号がパーシャルレスポンス特性に適合するように、線形等化用誤差信号300、乗算部56での乗算結果を使用して、複数のタップ係数を制御する。なお、タップ係数の導出には、例えばLMSアルゴリズムのような適応アルゴリズムが使用されることによって、線形等化用誤差信号300が小さくなるように制御される。なお、LMSアルゴリズムは、公知の技術であるので、ここでは説明を省略する。
図5は、非線形等化部46の構成を示す。非線形等化部46は、多段タップ70、非線形処理部72を含む。多段タップ70は、遅延タップ74と総称される第1遅延タップ74a、第2遅延タップ74b、第N遅延タップ74nを含む。非線形処理部72は、乗算部76と総称される第11乗算部76aa、第12乗算部76ab、第1M乗算部76am、第21乗算部76ba、第22乗算部76bb、第2M乗算部76bm、第(N+1)1乗算部76(n+1)a、第(N+1)2乗算部76(n+1)b、第(N+1)M乗算部76(n+1)m、積算部78と総称される第1積算部78a、第2積算部78b、第M積算部78m、関数演算部80と総称される第1関数演算部80a、第2関数演算部80b、第M関数演算部80m、乗算部82と総称される第1乗算部82a、第2乗算部82b、第M乗算部82m、積算部84、関数演算部86、タップ係数導出部88を含む。
非線形等化部46は、図示のごとく、3層パーセプトロン型のニューラルネットワークにて構成される。ここで、入力層が多段タップ70に相当し、隠れ層が関数演算部80に相当し、出力層が関数演算部86に相当する。多段タップ70は、複数の遅延タップ74がシリアルに接続されることによって形成される。具体的に説明すると、第1遅延タップ74aは、再生信号を入力し、遅延後、再生信号を出力する。第2遅延タップ74bは、第1遅延タップ74aからの再生信号を入力し、遅延後、再生信号を出力する。第N遅延タップ74nも、同様の処理を実行する。遅延タップ74への入力部分と出力部分が多段タップ70からの出力信号である。これらの出力信号は、乗算部76へ出力されている。
乗算部76は、多段タップ70からの出力信号と、タップ係数導出部88からのタップ係数とを乗算する。具体的に説明すると、第IJ乗算部76ijは、多段タップ70の先頭からi番目の出力信号S(i)と、タップ係数W1(i,j)とを乗算することによって、乗算結果U(i,j)を生成する。積算部78は、乗算部76における乗算結果を次々に加算する積算を行う。具体的に説明すると、第J積算部78jは、乗算結果U(1,j)、U(2,j)、U(3,j)、・・・、U(n+1,j)を加算して積算することによって、積算結果V(j)を生成する。関数演算部80は、積算部78における積算結果V(j)にシグモイド関数を演算する。シグモイド関数は、次のように示される。
f(x)=(1−exp(−αx))/(1+exp(−αx))…(式1)
ここで、式1のxに積算結果V(j)が入力される。ここでは、第J関数演算部80jでの演算結果をX(j)と示し、当該演算結果が隠れ層からの出力に相当する。
乗算部82は、関数演算部80における演算結果とタップ係数導出部88からのタップ係数とを乗算する。具体的に説明すると、第J乗算部82jは、第J関数演算部80jにおける演算結果X(j)と、タップ係数W2(j)とを乗算することによって、乗算結果Y(j)を生成する。積算部84は、乗算部82における乗算結果を次々に加算する積算を行う。ここでは、すべての乗算部82における乗算結果が加算されて積算され。積算結果Zが生成される。関数演算部86は、積算部84における積算結果にシグモイド関数を演算する。ここでは、式1のxに積算結果Zが入力される。関数演算部86の演算結果が、出力層からの出力に相当し、前述の非線形等化信号に相当する。
タップ係数導出部88は、乗算部76および乗算部82において使用されるタップ係数W1(i,j)とW2(j)とを導出する。なお、W1(i,j)、W2(j)の初期値として、ランダムな値や収束後に近い値が設定される。また、タップ係数導出部88は、図4のタップ係数導出部58と同様にLMSアルゴリズムによって、W1(i,j)、W2(j)を更新する。ここで、W1(i,j)、W2(j)の学習は、バックプロパゲーションによってなされる。非線形等化用誤差信号302の二乗値は、次のように示される。
E=(A−D)2…(式2)
ここで、Aは、線形等化信号と非線形等化信号との和に相当し、Dは、仮判定信号306に相当する。つまり、A−Dは、非線形等化用誤差信号302に相当する。タップ係数導出部88は、Eが最小となるように、W1(i,j)、W2(j)を制御する。出力層でのバックプロパゲーションの結果は次のように示される。
(∂E)/(∂Y(j))=f’(Y(j))×2(A−D)…(式3)
タップ係数導出部88は、タップ係数W2(j)を次のように更新する。
W2(j)=W2(j)old−ε×(∂E)/(∂W2(j))…(式4)
ここで、W2(j)oldは、ひとつ前のタイミングにおけるタップ係数W2(j)を示す。一方、隠れ層でのバックプロパゲーションは次のように示される。
(∂E)/(∂U(i,j))=
f’(U(i,j))×(∂E)/(∂Y(j))×W2(j)…(式5)
タップ係数導出部88は、タップ係数W1(i,j)を次のように更新する。
W1(i,j)=
W1(i,j)old−ε×(∂E)/(∂W1(i,j))…(式6)
ここで、W1(i,j)oldは、ひとつ前のタイミングにおけるタップ係数W1(i,j)を示す。
図6は、ビタビ復号部38の構成を示す。ビタビ復号部38は、ブランチメトリック演算部90、パスメモリ部92、多数決部94、特定部96を含む。また、信号として、選択信号SEL、ビット信号304を含む。ブランチメトリック演算部90は、図示しない36からの線形等化信号あるいは加算信号(以下、「加算信号」と総称する)をもとに、ブランチメトリック演算およびパスメトリック演算を実行する。そのため、ブランチメトリック演算部90には、前述のブランチメトリック演算回路およびパスメトリック演算回路が含まれる。前述のごとく、本実施例では、パーシャルレスポンス方式が適用されているが、ビタビ復号部38の構成を説明する前に、ここでは、パーシャルレスポンス方式における状態遷移を説明する。
図7は、ビタビ復号部38がパーシャルレスポンス(1,2,2,2,1)に対応する場合の状態遷移を示す。パーシャルレスポンス(1,2,2,2,1)では、振幅が±4の範囲に収まる。4ビットをひとつの組合せとすれば、組合せに含まれる値に応じて、S0からS9までの10状態が規定されている。また、次に入力されるビット値に応じて図示のごとく、状態が遷移する。例えば、状態S0にビット値「1」が入力されると、状態S1への遷移がなされる。ここで、状態間を結ぶ矢印に「x/y」のような値が示されているが、xは、入力されるビット値を示し、yは、もとの状態に新たなビット値が加わった5ビットに対する仮判定値を示す。図8は、ビタビ復号部38がパーシャルレスポンス(1,2,2,2,1)に対応する場合の状態遷移を示す。図8は、連続したふたつのタイミングでの状態を示しており、各状態は、図7と同様である。
図9は、ブランチメトリック演算部90の構成を示す。ブランチメトリック演算部90は、加算部110と総称される第1加算部110a、第2加算部110b、第3加算部110c、第4加算部110d、第5加算部110e、第6加算部110f、第7加算部110g、第8加算部110h、第9加算部110i、第10加算部110j、第11加算部110k、第12加算部110l、第13加算部110m、第14加算部110n、第15加算部110o、第16加算部110p、二乗回路112と総称される第1二乗回路112a、第2二乗回路112b、第3二乗回路112c、第4二乗回路112d、第52二乗回路112e、第6二乗回路112f、第7二乗回路112g、第8二乗回路112h、第9二乗回路112i、第10二乗回路112j、第11二乗回路112k、第12二乗回路112l、第13二乗回路112m、第14二乗回路112n、第15二乗回路112o、第16二乗回路112p、ACS回路114と総称される第1ACS回路114a、第2ACS回路114b、第3ACS回路114c、第4ACS回路114d、第5ACS回路114e、第6ACS回路114f、加算部116と総称される第1加算部116a、第2加算部116b、第3加算部116c、第4加算部116dを含む。また、選択信号SELと総称される第0選択信号SEL0、第1選択信号SEL1、第2選択信号SEL2、第7選択信号SEL7、第8選択信号SEL8、第9選択信号SEL9を含む。
加算部110は、加算信号から所定の目標値を減じる。二乗回路112は、加算部110における減算結果の二乗値を計算する。ACS回路114は、二乗回路112からの二乗に対して、加算、比較、選択によるメトリック演算を実行する。また、ACS回路114は、メトリック演算の結果として、第0選択信号SEL0、第1選択信号SEL1、第2選択信号SEL2、第7選択信号SEL7、第8選択信号SEL8、第9選択信号SEL9を出力する。また、パーシャルレスポンス特性からACS回路114へ入力されない二乗値も存在する。そのような二乗値に対して、加算部116において加算がなされる。図6に戻る。
パスメモリ部92は、ブランチメトリック演算部90からの選択信号SELを入力し、選択信号SELに応じたパスを記憶する。図10は、パスメモリ部92の構成を示す。パスメモリ部92は、メモリ120と総称される第11メモリ120aa、第12メモリ120ab、第13メモリ120ac、第14メモリ120ad、第15メモリ120ae、第16メモリ120af、第17メモリ120ag、第18メモリ120ah、第19メモリ120ai、第110メモリ120aj、第21メモリ120ba、第22メモリ120bb、第23メモリ120bc、第24メモリ120bd、第25メモリ120be、第26メモリ120bf、第27メモリ120bg、第28メモリ120bh、第29メモリ120bi、第210メモリ120bj、第(L+1)1メモリ120(l+1)a、第(L+1)2メモリ120(l+1)b、第(L+1)3メモリ120(l+1)c、第(L+1)4メモリ120(l+1)d、第(L+1)5メモリ120(l+1)e、第(L+1)6メモリ120(l+1)f、第(L+1)7メモリ120(l+1)g、第(L+1)8メモリ120(l+1)h、第(L+1)9メモリ120(l+1)i、第(L+1)10メモリ120(l+1)j、選択部122と総称される第11選択部122aa、第12選択部122ab、第13選択部122ac、第14選択部122ad、第15選択部122ae、第16選択部122af、第L1選択部122la、第L2選択部122lb、第L3選択部122lc、第L4選択部122ld、第L5選択部122le、第6L6選択部122lf、多数決部124を含む。
ここでは、L+1のメモリ120によってひとつのパスが記憶され、かつ図7、8に示した10種類の状態のそれぞれに対応するように、10種類のパスが記憶される。選択部122は、選択信号SELに応じて、いずれかのパスを選択する。選択されたパスが、生き残りパス相当する。多数決部124は、第(L+1)1メモリ120(l+1)aから第(L+1)10メモリ120(l+1)jのそれぞれに記憶されたビット値を入力し、多数決を実行する。多数決によって選択されたビット値が、復号結果に相当する。多数決部124は、復号結果を出力する。なお、パスの途中のメモリ120に記憶されたビット値がビット信号304と出力される。ビット信号304には、10種類のパスのうち、同一のタイミングに対応した10のビット値が含まれる。図6に戻る。
多数決部94は、ビット信号304を入力し、ビット信号304に含まれた10のビット値に対して多数決を実行する。多数決部94は、多数決によって選択したビット値(以下、「選択値」という)を特定部96へ出力する。特定部96は、多数決部94からの選択値を入力し、ラッチにて選択値を保持する。ここで、特定部96は、過去の選択値を含めて、5つのタイミングに対応した選択値からひとつの組合せを選択する。なお、特定部96に新たな選択値が入力されると、組合せの中から最も過去の選択値が除外されることによって、組合せが更新される。
図11は、特定部96に記憶されたテーブルのデータ構造を示す。図示のごとく、メモリ値欄200、b(k)欄202、b(k−1)欄204、b(k−2)欄206、b(k−3)欄208、b(k−4)欄210、仮判定出力欄212が含まれる。ここで、b(k)は、最も新しく入力された選択値に相当し、b(k−1)は、ひとつ前のタイミングに入力された選択値に相当し、b(k−4)は、4つ前のタイミングに入力された選択値に相当する。前述のごとく、これらはラッチにて保持されている。b(k)欄202からb(k−4)欄210には、ラッチに保持された選択値が取り得る値の組合せが示されている。メモリ値欄200では、取り得る値に対応したメモリ値が示され、仮判定出力欄212では、取り得る値に対応した仮判定値が示されている。例えば、パスメモリの内容が「00000」であれば仮判定値「−4」、「00001」であれば仮判定値「−3」が対応づけられている。図6に戻る。特定部96は、図11に示したテーブルを参照しながら、組合せに対応した仮判定値を特定する。特定部96は、仮判定値を仮判定信号306として出力する。
以上の構成による再生装置100の動作を説明する。図12は、加算部36における加算手順を示すフローチャートである。判定部42は、非線形等化用誤差信号302を入力し、非線形等化用誤差信号302の大きさを導出する。非線形等化用誤差信号302の大きさがしきい値以内に収束していなければ(S10のN)、判定部42は、加算部36に線形等化信号を出力させる(S12)。一方、非線形等化用誤差信号302の大きさがしきい値以内に収束していれば(S10のY)、判定部42は、加算部36に加算信号を出力させる(S14)。この動作は、収束するまで繰り返し行われるのは言うまでもない。
図13は、加算部36における加算比率の変更手順を示すフローチャートである。ここでは、前述の説明とは異なった手順を説明する。判定部42は、非線形等化用誤差信号302を入力し、非線形等化用誤差信号302の大きさを導出する。係数更新がなされ(S50)、非線形等化用誤差信号302の大きさをもとに、判定部42が収束と判定しなければ(S52のN)、ステップ50に戻る。判定部42が収束と判定した場合(S52のY)、非線形等化用誤差信号302がE1として保存される(S54)。係数更新がなされ(S56)、その結果得られた非線形等化用誤差信号302がE2として保存される(S58)。E1とE2の差が、あらかじめ設定した評価量よりも大きい場合(S60のY)、改善ありとして、ステップ56に戻る。一方、E1とE2の差が、あらかじめ設定した評価量よりも大きくない場合(S60のN)、改善なしとして、処理が終了される。
この手順において、数回更新された非線形等化用誤差信号302の平均値をE2の値として使用してもよい。また、加算比率の変化範囲に上限下限が設定されてもよい。
図14は、等化誤差生成部40における生成手順を示すフローチャートである。判定部42は、非線形等化用誤差信号302を入力し、非線形等化用誤差信号302の大きさを導出する。非線形等化用誤差信号302の大きさがしきい値以内に収束していなければ(S20のN)、等化誤差生成部40は、第1遅延部32からの遅延信号と仮判定信号306との差を線形等化用誤差信号300として線形等化部44へ出力する(S22)。また、等化誤差生成部40は、第1遅延部32からの遅延信号と第2遅延部34からの遅延信号との和と、仮判定信号306との差を非線形等化用誤差信号302として非線形等化部46へ出力する(S24)。一方、非線形等化用誤差信号302の大きさがしきい値以内に収束していれば(S20のY)、等化誤差生成部40は、第1遅延部32からの遅延信号と第2遅延部34からの遅延信号との和と、仮判定信号306との差を線形等化用誤差信号300として線形等化部44へ出力する(S26)。また、等化誤差生成部40は、第1遅延部32からの遅延信号と第2遅延部34からの遅延信号との和と、仮判定信号306との差を非線形等化用誤差信号302として非線形等化部46へ出力する(S28)。
図15は、非線形等化部46における係数の導出手順を示すフローチャートである。判定部42は、非線形等化用誤差信号302の大きさが収束した後も、継続して非線形等化用誤差信号302の大きさを導出する。大きさがしきい値よりも大きくなった場合(S40のY)、線形等化部44は、非線形等化部46へ新たにタップ係数を導出させる(S42)。大きさがしきい値よりも大きくならなければ(S40のN)、処理は終了される。
図16(a)−(c)は、従来および再生装置100による出力信号のヒストグラムを示す。図16(a)は、従来の線形波形等化器で等化した信号のヒストグラムを示す。このときのビットエラーレートは、1.1×10−2である。一方、図16(b)は、再生装置100で加算比率の変化を行わなかった場合の信号のヒストグラムを示す。このときの目標値は、前述のごとく、パーシャルレスポンス(1,2,2,2,1)の9値としている。また、このときのビットエラーレートは、1.5×10−4である。さらにまた、図16(c)は、再生装置100で加算比率の変化を行なった場合の信号のヒストグラムを示す。あった。このときのビットエラーレートは、0.8×10−4であり、図16(b)の場合に比べてさらに改善されている。この場合の加算比率の変化率は、約20%前後である。従来の線形波形等化器における特性悪化は、波形に非線形成分が含まれているので、ビタビ目標値に収束がなされないためであると推定される。また、加算比率を変化させることで、さらに非線形成分の改善が進み特性が向上したと推定される。
本発明の実施例によれば、線形等化と非線形等化とを並列に実行するとともに、線形等化信号と非線形等化信号を加算し、加算信号を仮判定した結果を教師信号とするので、トレーニング信号の代わりに仮判定信号を教師信号に使用できる。また、トレーニング信号の代わりに仮判定信号を教師信号に使用するので、トレーニング信号を使用せずに、非線形等化のための係数を導出できる。また、トレーニング信号を使用せずに、非線形等化のための係数が導出されるので、トレーニング信号を使用せずに非線形等化を実行できる。また、トレーニング信号を使用せずに、非線形等化のための係数が導出されるので、記録密度の向上や記録パワー変動等によって生じる再生信号の非線形歪をトレーニング信号なしで低減できる。
また、パーシャルレスポンス規則にしたがった仮判定が実行されるので、パーシャルレスポンス処理に対応できる。また、非線形等化の係数が収束されるまで、非線形等化信号をビタビ復号部へ出力しないので、仮判定信号の精度の悪化を抑制できる。また、非線形等化の係数が収束されるまでの仮判定信号の精度の悪化が抑制されるので、処理の初期段階であっても、等化処理の精度の悪化を抑制できる。また、非線形等化の係数が収束されるまで、線形等化のための係数を導出するために、非線形等化信号を使用しないので、当該係数の導出精度の悪化を抑制できる。また、非線形等化の係数が収束されるまでの線形等化のための係数の導出精度の悪化が抑制されるので、処理の初期段階であっても、等化処理の精度の悪化を抑制できる。また、非線形等化用誤差信号の発散を検出した場合に複数の係数を新たに導出するので、等化特性の悪化を抑制できる。また、非線形等化部の出力と線形等化部の出力を最適な比率で混合することにより特性をさらに改善できる。また、非線形等化の係数が収束してから、加算比率の変更を開始するので、処理の安定性が損なわれることを抑制できる。また、処理の安定性が損なわれることが抑制されるので、安定な動作で特性を改善できる。
(実施例2)
本発明の実施例2は、実施例1と同様に、線形波形等化器と非線形波形等化器とを並列に配置した再生装置に関する。線形波形等化器と非線形波形等化器とは、いずれも多段タップを備える。実施例2に係る再生装置では、回路規模を減少させるために、線形波形等化器と非線形波形等化器とにおいて、多段タップが共通化される。実施例2に係る再生装置100、処理部24は、図1、図2と同様のタイプである。ここでは、実施例1との差異を中心に説明する。
図17は、本発明の実施例2に係る等化処理部30の構成を示す。等化処理部30は、線形処理部52、非線形処理部72、多段タップ130を含む。多段タップ130は、遅延タップ132と総称される第1遅延タップ132a、第2遅延タップ132b、第3遅延タップ132c、第N遅延タップ132nを含む。
多段タップ130は、図4の線形等化部44に含まれる多段タップ50、図5の非線形等化部46に含まれる多段タップ70と同様に構成されており、複数の遅延タップ132がシリアルに接続されている。つまり、多段タップ130は、線形等化部と非線形等化部とにおいて共通化されている。多段タップ130からの出力は、線形処理部52へ出力されるとともに非線形処理部72へも出力されている。線形処理部52は、図4に示された構成と同様であり、非線形処理部72は、図5に示された構成と同様である。ここでは、これらの説明を省略する。
本発明の実施例によれば、線形等化と非線形等化とにおいて、多段タップが共通化されるので、回路規模の増加を抑制できる。また、線形等化と非線形等化とにおいて同一の処理を実行している多段タップを共通化しているので、線形等化と非線形等化とに対する処理精度の悪化を抑制できる。また、等化処理の精度を抑制させながら、回路規模を低減できる。
以上、本発明を実施例をもとに説明した。この実施例は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
本発明の実施例1と2において、線形等化部44および非線形等化部46は、いずれも複数のタップ係数を使用しており、複数のタップ係数を適応的に導出している。しかしながらこれに限らず例えば、非線形等化部46は、複数のタップ係数を適応的に導出し、線形等化部44は、複数のタップ係数として固定値を使用してもよい。つまり、線形等化部44は、複数のタップ係数を適応的に導出しなくてもよい。図18は、本発明の変形例に係る処理部24の構成を示す。処理部24は、図2と比較して遅延部140を備える。ここでは、図2との差異を中心に説明する。加算部36は、線形等化部44からの線形等化信号と非線形等化部46からの非線形等化信号とを加算する。その際、可変ゲイン部62では、等化誤差生成部40において導出された非線形等化用誤差信号302をもとに、ゲインが調節される。遅延部140は、等化誤差生成部40から出力した信号を遅延させる。ここで、遅延部140は、ビタビ復号部38における処理遅延に応じた期間にわたって遅延を実行する。また、等化誤差生成部40は、遅延部140において遅延した信号と、ビタビ復号部38からの仮判定信号306との差異をもとに非線形等化用誤差信号302を生成し、非線形等化部46は、非線形等化用誤差信号302をもとに複数の係数を導出する。本変形例によれば、線形等化のための係数を固定値とするので、等化処理の安定性を向上できる。また、線形等化のための係数を固定値とするので、処理を簡易にできる。