(57)【要約】【課題】記録媒体に記録する際のページデータのデータ配列を変更することなく、ページデータ内のデータ品質に応じて誤り訂正能力を設定し、データの信頼性を向上させる誤り訂正装置、誤り訂正方法及びそれを用いたデジタルデータ記録再生装置を提供する。【解決手段】データ入出力部１１と符号化部１２と誤り訂正部１３と制御部１４とバッファメモリ１５を備え、データ入出力部１１は記録時に外部機器４から送られてきたデータを制御部１４により設定された複数の領域に分割して格納し、符号化部１２は制御部１４が設定した領域ごとに異なる誤り訂正能力を用いて符号化を行う。再生時には領域ごとの誤り訂正能力の設定値に従って誤り訂正部１３により誤り訂正が行われる。【選択図】図１
2006260619.tif 000002
【特許請求の範囲】
【請求項１】
外部機器からの入力データを符号化し、記録再生装置を介して記録媒体に記録する、または前記記録媒体に記録されているデータを記録再生装置を介して再生し、誤り訂正処理を行った出力データを生成し、前記外部機器に出力する誤り訂正装置において、
前記入力データあるいは前記出力データあるいは前記記録媒体に記録再生するページデータを格納するメモリと、
前記外部機器と前記メモリ間の前記入力データと前記出力データの入出力を行うデータ入出力部と、
前記メモリに格納された前記入力データに対する第一の誤り訂正符号を生成する符号化部と、
前記記録媒体から再生し前記メモリに格納した前記ページデータから前記入力データおよび前記第一の誤り訂正符号を読み出し、第一の誤り訂正処理を行って前記出力データを生成する誤り訂正部と、
前記データ入出力部と前記符号化部と前記誤り訂正部を制御する制御部とを有し、
前記制御部は、前記メモリのデータ格納領域を前記ページデータに対応付けし、少なくとも二つ以上の領域に分割したメモリマップを生成するとともに、前記分割した領域ごとに第一の誤り訂正能力を決定し、
前記データ入出力部は、前記外部機器から入力した前記入力データを前記メモリ内の前記メモリマップによって定められた場所に格納し、
前記符号化部は、前記メモリの前記分割された領域の一つの領域から所定の数の前記入力データを読み出し、前記第一の誤り訂正能力に従って前記第一の誤り訂正符号を生成し、前記メモリに格納する、
ことを特徴とする誤り訂正装置。
【請求項２】
前記制御部は、第二の誤り訂正能力を決定し、
前記符号化部は、前記メモリの前記領域の少なくとも二つ以上の領域各々から所定の数の前記入力データまたは前記第一の誤り訂正符号を読み出し、前記読み出した前記入力データまたは前記第一の誤り訂正符号に対して前記第二の誤り訂正能力に従って第二の誤り訂正符号を生成し、前記第二の誤り訂正符号を前記メモリに格納する
ことを特徴とする請求項１記載の誤り訂正装置。
【請求項３】
前記符号化部は、前記第二の誤り訂正符号と、前記第二の誤り訂正符号以外のデータを前記メモリから読み出し、前記メモリに格納されている前記第二の誤り訂正符号の格納アドレスと、前記第二の誤り訂正符号以外のデータの格納アドレスを交換して前記メモリに格納する
ことを特徴とする請求項１記載の誤り訂正装置。
【請求項４】
前記誤り訂正部は、前記メモリに格納されている前記ページデータを読み出し、前記第一の誤り訂正符号を用いて前記第一の誤り訂正処理を行い、前記第一の誤り訂正処理の結果誤りが存在し、かつ訂正可能であれば、前記メモリに格納されている前記ページデータの前記誤りを正しい値に更新する
ことを特徴とする請求項１記載の誤り訂正装置。
【請求項５】
前記誤り訂正部は、前記メモリに格納されている前記ページデータを読み出し、前記第二の誤り訂正符号を用いて前記第二の誤り訂正処理を行い、前記第二の誤り訂正処理の結果誤りが存在し、かつ訂正可能であれば、前記メモリに格納されている前記ページデータの前記誤りを正しい値に更新する
ことを特徴とする請求項１または請求項３記載の誤り訂正装置。
【請求項６】
前記第二の誤り訂正符号の格納アドレスと、前記第二の誤り訂正符号以外のデータの格納アドレスを、前記第二の誤り訂正処理を行う前に、前記交換する前の格納アドレスに戻す
ことを特徴とする請求項５記載の誤り訂正装置。
【請求項７】
前記データ入出力部は、前記メモリに格納されている前記第一の誤り訂正処理または前記第二の誤り訂正処理後の前記ページデータを読み出し、前記第一の誤り訂正符号および前記第二の誤り訂正符号を除いた前記ページデータを所定の順序で前記外部機器に出力する
ことを特徴とする請求項１記載の誤り訂正装置。
【請求項８】
前記記録媒体がホログラフィックメモリである、
ことを特徴とする請求項１記載の誤り訂正装置。
【請求項９】
外部機器からの入力データを符号化し、記録再生装置を介して記録媒体に記録する、または前記記録媒体に記録されているデータを記録再生装置を介して再生し、誤り訂正処理を行うことで出力データを生成し、前記外部機器に出力する誤り訂正方法において、
前記入力データあるいは前記出力データあるいは前記記録媒体に記録再生するページデータをメモリに格納するステップと、
前記外部機器と前記メモリの間で前記入力データと前記出力データの入出力を行うデータ入出力ステップと、
前記メモリに格納された前記入力データに対する第一の誤り訂正符号を生成する符号化ステップと、
前記記録媒体から再生し前記メモリに格納した前記ページデータから前記入力データおよび前記第一の誤り訂正符号を読み出し、第一の誤り訂正処理を行う誤り訂正ステップと、
前記データ入出力ステップと前記符号化ステップと前記誤り訂正ステップを制御する制御ステップとからなり、
前記制御ステップは、前記メモリのデータ格納領域を前記ページデータに対応付けし、少なくとも二つ以上の領域に分割したメモリマップを生成するとともに、前記分割した領域ごとに第一の誤り訂正能力を決定し、
前記データ入出力ステップは、前記外部機器から入力した前記入力データを前記メモリ内の前記メモリマップによって定められた場所に格納し、
前記符号化ステップは、前記メモリの前記分割された領域の一つの領域から所定の数の前記入力データを読み出し、前記第一の誤り訂正能力に従って前記第一の誤り訂正符号を生成し、前記メモリに格納する、
ことを特徴とする誤り訂正方法。
【請求項１０】
前記制御ステップは、第二の誤り訂正能力を決定し、
前記符号化ステップは、前記メモリの前記領域の少なくとも二つ以上の領域各々から所定の数の前記入力データまたは前記第一の誤り訂正符号を読み出し、前記読み出した前記入力データまたは前記第一の誤り訂正符号に対して前記第二の誤り訂正能力に従って第二の誤り訂正符号を生成し、前記第二の誤り訂正符号を前記メモリに格納する
ことを特徴とする請求項９記載の誤り訂正方法。
【請求項１１】
前記符号化ステップは、前記第二の誤り訂正符号と、前記第二の誤り訂正符号以外のデータを前記メモリから読み出し、前記メモリに格納されている前記第二の誤り訂正符号の格納アドレスと、前記第二の誤り訂正符号以外のデータの格納アドレスを交換して前記メモリに格納する
ことを特徴とする請求項９記載の誤り訂正方法。
【請求項１２】
前記誤り訂正ステップは、前記メモリに格納されている前記ページデータを読み出し、前記第一の誤り訂正符号を用いて前記第一の誤り訂正処理を行い、前記第一の誤り訂正処理の結果誤りが存在し、かつ訂正可能であれば、前記メモリに格納されている前記ページデータの前記誤りを正しい値に更新する
ことを特徴とする請求項９記載の誤り訂正方法。
【請求項１３】
前記誤り訂正ステップは、前記メモリに格納されている前記ページデータを読み出し、前記第二の誤り訂正符号を用いて前記第二の誤り訂正処理を行い、前記第二の誤り訂正処理の結果誤りが存在し、かつ訂正可能であれば、前記メモリに格納されている前記ページデータの前記誤りを正しい値に更新する
ことを特徴とする請求項９または請求項１１記載の誤り訂正方法。
【請求項１４】
前記第二の誤り訂正符号の格納アドレスと、前記第二の誤り訂正符号以外のデータの格納アドレスを、前記第二の誤り訂正処理を行う前に、前記交換する前の格納アドレスに戻す
ことを特徴とする請求項１３記載の誤り訂正方法。
【請求項１５】
前記データ入出力ステップは、前記メモリに格納されている前記第一の誤り訂正処理または前記第二の誤り訂正処理後の前記ページデータを読み出し、前記第一の誤り訂正符号および前記第二の誤り訂正符号を除いた前記ページデータを所定の順序で前記外部機器に出力する
ことを特徴とする請求項９記載の誤り訂正方法。
【請求項１６】
前記記録媒体がホログラフィックメモリである、
ことを特徴とする請求項９記載の誤り訂正方法。
【請求項１７】
干渉縞によりデータが記録される記録媒体と、
前記記録媒体に光を照射して前記干渉縞を形成してデータを記録し、前記記録媒体に光を照射して得られる前記干渉縞の情報から前記記録媒体に記録されたデータを再生する記録再生部と、
外部機器から前記記録媒体に記録する入力データを受信し、前記入力データに誤り訂正符号化を行い前記記録再生部に前記干渉縞に対応するページデータを出力し、前記記録再生部が前記記録媒体から読み出した前記ページデータの誤り訂正を行い、前記外部機器に出力データとして出力する誤り訂正部とを備え、
前記誤り訂正部は、
前記入力データあるいは前記出力データあるいは前記記録媒体に記録再生するページデータを格納するメモリと、
前記外部機器と前記メモリ間の前記入力データと前記出力データの入出力を行うデータ入出力部と、
前記メモリに格納された前記入力データに対する第一の誤り訂正符号を生成する符号化部と、
前記記録媒体から再生し前記メモリに格納した前記ページデータから前記入力データおよび前記第一の誤り訂正符号を読み出し、第一の誤り訂正処理を行って前記出力データを生成する誤り訂正部と、
前記データ入出力部と前記符号化部と前記誤り訂正部を制御する制御部とを有し、
前記制御部は、前記メモリのデータ格納領域を前記ページデータに対応付けし、少なくとも二つ以上の領域に分割したメモリマップを生成するとともに、前記分割した領域ごとに第一の誤り訂正能力を決定し、
前記データ入出力部は、前記外部機器から入力した前記入力データを前記メモリ内の前記メモリマップによって定められた場所に格納し、
前記符号化部は、前記メモリの前記分割された領域の一つの領域から所定の数の前記入力データを読み出し、前記第一の誤り訂正能力に従って前記第一の誤り訂正符号を生成し、前記メモリに格納する、
ことを特徴とするデジタルデータ記録再生装置。
【請求項１８】
前記記録媒体がホログラフィックメモリである、
ことを特徴とする請求項１７記載のデジタルデータ記録再生装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタルデータ記録システムに関し、特にホログラフィックメモリに記録されているデータの再生時におけるデータ損失を低減することを目的とした誤り訂正装置および誤り訂正方法及び、該装置を備えたデジタルデータ記録再生装置に関する。
【背景技術】
【０００２】
近年、動画データやバックアップ対象データの増加に伴って、大容量かつ高転送レートを実現できるシステムの需要が高まっている。このような要望に答えるものの一つに、高密度の光学的記録を可能とするホログラフィックメモリシステムがある。
【０００３】
ホログラフィックメモリシステムは、情報を有する情報光と参照光を干渉させることによって干渉縞を生じさせ、光屈折性結晶などの記録媒体に記録する。この光屈折性結晶は、干渉縞の振幅や位相などによって別様に反応し得る物質である。参照光の入射角度や振幅、位相を変えることによって、大量のデータを同一の位置に二次元からなるページを単位として重ねて記録することができる。
【０００４】
また再生時には参照光のみを媒体の所定の位置に照射することで、その参照光の入射角や位相に対応したページのデータを、ＣＣＤなどの撮影素子を通して読み取ることができる。
【０００５】
ここでホログラフィックメモリシステムではレーザーやレンズを使用するが、レーザーのガウス分布特性やレンズの収差などの影響により、再生時に撮影素子が読み取ることのできるページデータの中央領域よりも周辺領域（特に四隅）のほうが非常に歪みやすくなり、ページデータの一部のデータを損失することがある。
【０００６】
それを解決する一つの従来技術として、記録媒体に記録する前にページデータの配列を変更するものが開示されている（例えば、特許文献１参照）。
【０００７】
図１０を用いて従来技術を簡単に説明する。図１０は従来のホログラフィックメモリシステムの構成図である。図１０において、１０１は記録しようとするデータを符号化し、再生したデータを復号化する符号化復号化回路、１０２は符号化されたページデータの配列を変更する入力変更回路、１０３は記録媒体にデータを記録したり、記録媒体に記録されているデータを読み出したりする記録再生回路、１０４は読み出されたデータの配列を変更する出力変更回路、１０５は記録媒体、１０６は符号化復号化回路１０１にデータを入出力する外部機器である。入力変更回路１０２は入力分割部１１１と入力周辺再配列部１１２、入力併合部１１３からなる。また出力変更回路１０４は出力分割部１１４と出力周辺再配列部１１５、出力併合部１１６からなる。
【０００８】
記録時には、符号化復号化回路１０１は外部機器１０６から入力データを入力し、符号化して矩形ページデータを生成し、これを入力変更回路１０２に出力する。ここで矩形ページデータはｍ×ｎ（ｍとｎは自然数）ピクセルのアレイからなり、各ピクセルはピクセルの輝度を表すためのバイナリ値を有する。入力分割部１１１は図１１（ａ）に示す入力された矩形ページデータを図１１（ｂ）のように中央領域と周辺領域に分割する。入力周辺再配列部１１２は所定の変更パターンにもとづいて周辺領域を再配列し、図１１（ｃ）のように再配列周辺領域を形成する。ここで変更パターンは円形であるとする。入力併合部１１３は中央領域と再配列周辺領域を併合し、変更ページデータを生成する。
【０００９】
記録再生回路１０３の詳しい構成に関してはここでの説明は省略するが、入力変更回路１０２で生成されたページデータを、空間光変調器を用いて情報光を生成し、参照光を用いて記録媒体１０５に記録する。
【００１０】
一方再生時には、参照光を記録媒体１０５に照射し、ＣＣＤなどの撮影素子を用いてページデータを読み取る。ここでこのページデータは入力変更回路１０２で生成された円形のページデータが読み取られることになる。
【００１１】
出力分割部１１４は再生された円形のページデータを図１２（ａ）に示すように中央領域と周辺変調領域とに分割する。出力周辺再配列部１１５は周辺変調領域を再配列して図１２（ｂ）に示すように再配列周辺変調領域を形成する。出力併合部１１６は中央変調領域を再配列周辺変調領域と併合して図１２（ｃ）に示すような矩形変調ページデータを再生する。矩形変調ページデータは符号化復号化回路１０１に出力され、誤りがあれば訂正し、出力データを外部機器１０６に出力する。
【特許文献１】特開２００３−７６２５６号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
しかしながら前記従来の構成では、変更後のページデータの配列を円形など複雑な形にするため、配置パターンを決めるためのアドレス生成などの処理が複雑化してしまう。また配置変換を行うための手段が必要で、システム全体の回路規模の増大を招くことになる。
【００１３】
本発明は、前記従来の課題を解決するもので、ページデータの配列を変更することなく、ページデータ内を領域分割し、データ品質に応じて誤り訂正能力を設定し、データの信頼性を向上させる誤り訂正装置および誤り訂正方法を提供することを目的とする。
【００１４】
また本発明は、前記誤り訂正装置を備えたデジタルデータ記録再生装置を提供することを目的とする。
【課題を解決するための手段】
【００１５】
前記従来の課題を解決するために、本発明の誤り訂正装置は、外部機器からの入力データを符号化し、記録再生装置を介して記録媒体に記録する、または前記記録媒体に記録されているデータを記録再生装置を介して再生し、誤り訂正処理を行った出力データを生成し、前記外部機器に出力する誤り訂正装置において、前記入力データあるいは前記出力データあるいは前記記録媒体に記録再生するページデータを格納するメモリと、前記外部機器と前記メモリ間の前記入力データと前記出力データの入出力を行うデータ入出力部と、前記メモリに格納された前記入力データに対する第一の誤り訂正符号を生成する符号化部と、前記記録媒体から再生し前記メモリに格納した前記ページデータから前記入力データおよび前記第一の誤り訂正符号を読み出し、第一の誤り訂正処理を行って前記出力データを生成する誤り訂正部と、前記データ入出力部と前記符号化部と前記誤り訂正部を制御する制御部とを有し、前記制御部は、前記メモリのデータ格納領域を前記ページデータに対応付けし、少なくとも二つ以上の領域に分割したメモリマップを生成するとともに、前記分割した領域ごとに第一の誤り訂正能力を決定し、前記データ入出力部は、前記外部機器から入力した前記入力データを前記メモリ内の前記メモリマップによって定められた場所に格納し、前記符号化部は、前記メモリの前記分割された領域の一つの領域から所定の数の前記入力データを読み出し、前記第一の誤り訂正能力に従って前記第一の誤り訂正符号を生成し、前記メモリに格納することを特徴としたものである。
【００１６】
さらに誤り訂正装置において、前記制御部は、第二の誤り訂正能力を決定し、前記符号化部は、前記メモリの前記領域の少なくとも二つ以上の領域各々から所定の数の前記入力データまたは前記第一の誤り訂正符号を読み出し、前記読み出した前記入力データまたは前記第一の誤り訂正符号に対して前記第二の誤り訂正能力に従って第二の誤り訂正符号を生成し、前記第二の誤り訂正符号を前記メモリに格納することを特徴としたものである。
【００１７】
さらに誤り訂正装置において、前記符号化部は、前記第二の誤り訂正符号と、前記第二の誤り訂正符号以外のデータを前記メモリから読み出し、前記メモリに格納されている前記第二の誤り訂正符号の格納アドレスと、前記第二の誤り訂正符号以外のデータの格納アドレスを交換して前記メモリに格納することを特徴としたものである。
【００１８】
さらに誤り訂正装置において、前記誤り訂正部は、前記メモリに格納されている前記ページデータを読み出し、前記第一の誤り訂正符号を用いて前記第一の誤り訂正処理を行い、前記第一の誤り訂正処理の結果誤りが存在し、かつ訂正可能であれば、前記メモリに格納されている前記ページデータの前記誤りを正しい値に更新することを特徴としたものである。
【００１９】
さらに誤り訂正装置において、前記誤り訂正部は、前記メモリに格納されている前記ページデータを読み出し、前記第二の誤り訂正符号を用いて前記第二の誤り訂正処理を行い、前記第二の誤り訂正処理の結果誤りが存在し、かつ訂正可能であれば、前記メモリに格納されている前記ページデータの前記誤りを正しい値に更新することを特徴としたものである。
【００２０】
さらに誤り訂正装置において、前記第二の誤り訂正符号の格納アドレスと、前記第二の誤り訂正符号以外のデータの格納アドレスを、前記第二の誤り訂正処理を行う前に、前記交換する前の格納アドレスに戻すことを特徴としたものである。
さらに誤り訂正装置において、前記データ入出力部は、前記メモリに格納されている前記第一の誤り訂正処理または前記第二の誤り訂正処理後の前記ページデータを読み出し、前記第一の誤り訂正符号および前記第二の誤り訂正符号を除いた前記ページデータを所定の順序で前記外部機器に出力することを特徴としたものである。
【００２１】
さらに誤り訂正装置において、前記記録媒体がホログラフィックメモリであることを特徴としたものである。
【００２２】
さらに本発明の誤り訂正方法において、外部機器からの入力データを符号化し、記録再生装置を介して記録媒体に記録する、または前記記録媒体に記録されているデータを記録再生装置を介して再生し、誤り訂正処理を行うことで出力データを生成し、前記外部機器に出力する誤り訂正方法において、前記入力データあるいは前記出力データあるいは前記記録媒体に記録再生するページデータをメモリに格納するステップと、前記外部機器と前記メモリの間で前記入力データと前記出力データの入出力を行うデータ入出力ステップと、前記メモリに格納された前記入力データに対する第一の誤り訂正符号を生成する符号化ステップと、前記記録媒体から再生し前記メモリに格納した前記ページデータから前記入力データおよび前記第一の誤り訂正符号を読み出し、第一の誤り訂正処理を行う誤り訂正ステップと、前記データ入出力ステップと前記符号化ステップと前記誤り訂正ステップを制御する制御ステップとからなり、前記制御ステップは、前記メモリのデータ格納領域を前記ページデータに対応付けし、少なくとも二つ以上の領域に分割したメモリマップを生成するとともに、前記分割した領域ごとに第一の誤り訂正能力を決定し、前記データ入出力ステップは、前記外部機器から入力した前記入力データを前記メモリ内の前記メモリマップによって定められた場所に格納し、前記符号化ステップは、前記メモリの前記分割された領域の一つの領域から所定の数の前記入力データを読み出し、前記第一の誤り訂正能力に従って前記第一の誤り訂正符号を生成し、前記メモリに格納することを特徴としたものである。
【００２３】
さらに誤り訂正方法は、前記制御ステップは、第二の誤り訂正能力を決定し、前記符号化ステップは、前記メモリの前記領域の少なくとも二つ以上の領域各々から所定の数の前記入力データまたは前記第一の誤り訂正符号を読み出し、前記読み出した前記入力データまたは前記第一の誤り訂正符号に対して前記第二の誤り訂正能力に従って第二の誤り訂正符号を生成し、前記第二の誤り訂正符号を前記メモリに格納することを特徴としたものである。
【００２４】
さらに誤り訂正方法は、前記符号化ステップは、前記第二の誤り訂正符号と、前記第二の誤り訂正符号以外のデータを前記メモリから読み出し、前記メモリに格納されている前記第二の誤り訂正符号の格納アドレスと、前記第二の誤り訂正符号以外のデータの格納アドレスを交換して前記メモリに格納することを特徴としたものである。
【００２５】
さらに誤り訂正方法は、前記誤り訂正ステップは、前記メモリに格納されている前記ページデータを読み出し、前記第一の誤り訂正符号を用いて前記第一の誤り訂正処理を行い、前記第一の誤り訂正処理の結果誤りが存在し、かつ訂正可能であれば、前記メモリに格納されている前記ページデータの前記誤りを正しい値に更新することを特徴としたものである。
【００２６】
さらに誤り訂正方法において、前記誤り訂正ステップは、前記メモリに格納されている前記ページデータを読み出し、前記第二の誤り訂正符号を用いて前記第二の誤り訂正処理を行い、前記第二の誤り訂正処理の結果誤りが存在し、かつ訂正可能であれば、前記メモリに格納されている前記ページデータの前記誤りを正しい値に更新することを特徴としたものである。
【００２７】
さらに誤り訂正方法において、前記第二の誤り訂正符号の格納アドレスと、前記第二の誤り訂正符号以外のデータの格納アドレスを、前記第二の誤り訂正処理を行う前に、前記交換する前の格納アドレスに戻すことを特徴としたものである。
【００２８】
さらに誤り訂正方法において、前記データ入出力ステップは、前記メモリに格納されている前記第一の誤り訂正処理または前記第二の誤り訂正処理後の前記ページデータを読み出し、前記第一の誤り訂正符号および前記第二の誤り訂正符号を除いた前記ページデータを所定の順序で前記外部機器に出力することを特徴としたものである。
【００２９】
さらに誤り訂正方法において、前記記録媒体がホログラフィックメモリであることを特徴としたものである。
【００３０】
さらに本発明のデータ記録再生装置において、干渉縞によりデータが記録される記録媒体と、前記記録媒体に光を照射して前記干渉縞を形成してデータを記録し、前記記録媒体に光を照射して得られる前記干渉縞の情報から前記記録媒体に記録されたデータを再生する記録再生部と、外部機器から前記記録媒体に記録する入力データを受信し、前記入力データに誤り訂正符号化を行い前記記録再生部に前記干渉縞に対応するページデータを出力し、前記記録再生部が前記記録媒体から読み出した前記ページデータの誤り訂正を行い、前記外部機器に出力データとして出力する誤り訂正部とを備え、前記誤り訂正部は、前記入力データあるいは前記出力データあるいは前記記録媒体に記録再生するページデータを格納するメモリと、前記外部機器と前記メモリ間の前記入力データと前記出力データの入出力を行うデータ入出力部と、前記メモリに格納された前記入力データに対する第一の誤り訂正符号を生成する符号化部と、前記記録媒体から再生し前記メモリに格納した前記ページデータから前記入力データおよび前記第一の誤り訂正符号を読み出し、第一の誤り訂正処理を行って前記出力データを生成する誤り訂正部と、前記データ入出力部と前記符号化部と前記誤り訂正部を制御する制御部とを有し、前記制御部は、前記メモリのデータ格納領域を前記ページデータに対応付けし、少なくとも二つ以上の領域に分割したメモリマップを生成するとともに、前記分割した領域ごとに第一の誤り訂正能力を決定し、前記データ入出力部は、前記外部機器から入力した前記入力データを前記メモリ内の前記メモリマップによって定められた場所に格納し、前記符号化部は、前記メモリの前記分割された領域の一つの領域から所定の数の前記入力データを読み出し、前記第一の誤り訂正能力に従って前記第一の誤り訂正符号を生成し、前記メモリに格納することを特徴としたものである。
【００３１】
さらにデジタルデータ記録再生装置において、前記記録媒体がホログラフィックメモリであることを特徴としたものである。
【発明の効果】
【００３２】
本発明の誤り訂正装置、誤り訂正方法及びデジタルデータ記録再生装置によれば、ページデータの配列を変えることなく、ページデータを領域分割し、データ品質に応じて誤り訂正能力を設定することで、データの信頼性を向上させることができる。
【発明を実施するための最良の形態】
【００３３】
以下に、本発明の誤り訂正装置の実施の形態を、図面とともに詳細に説明する。
【実施例１】
【００３４】
図１は、本発明の第１の実施例におけるデジタルデータ記録再生装置およびその周辺装置の構成を示した図である。
【００３５】
図１において、デジタルデータ記録再生装置は外部機器４から入力したデータを記録媒体２に記録したり、あるいは記録媒体２に記録されているデータを外部機器４に出力したりする。誤り訂正装置１は、外部機器４から入力されたデータに誤り訂正符号を付加して記録再生回路３に出力し、記録再生回路３が記録媒体２から再生したデータに誤り訂正を施したデータを外部機器４に出力するものである。ここで本実施例１では、具体的に記録媒体２がホログラフィックメモリである、ホログラフィックメモリシステムを構成するデジタルデータ記録再生装置について説明する。図１に示すデジタルデータ記録再生装置は、誤り訂正符号化や誤り訂正処理を行う誤り訂正装置１と、誤り訂正装置１が出力するページデータを空間光変調器を通すことで情報光を生成し、情報光とは別の参照光と呼ばれるものと情報光とを記録媒体２（ホログラフィックメモリ）上で干渉させて干渉縞を作ることでページデータを記録媒体２に記録し、参照光のみを記録媒体２の所定の位置に照射することでページデータを再生する記録再生回路３からなる。
【００３６】
ここで、誤り訂正装置１は、外部機器４や記録再生回路３に入出力するデータを一時的に記憶しておくバッファメモリ１５と、外部機器４から入力したデータをバッファメモリ１５に格納したり、バッファメモリ１５に記録されているデータを読み出し、外部機器４に出力したりするデータ入出力部１１と、バッファメモリ１５に記録されているデータに対して誤り訂正符号を生成し誤り訂正符号化を行う符号化部１２と、バッファメモリ１５に記録されているデータに対して誤り訂正処理を行う誤り訂正部１３と、外部機器４や記録再生回路３との間でデータ送受信の制御を行い、誤り訂正装置１全体を制御する制御部１４からなる。
【００３７】
はじめに記録媒体２にページデータを記録する場合の処理について、図２に示すフローチャートに沿って、具体的に説明する。
【００３８】
ステップ１では、外部機器４から制御部１４に対して出力される制御信号に基づいて、制御部１４が、外部機器４から転送されてきたデータをどのようにバッファメモリ１５に格納するか、記録再生回路３に出力するページデータの領域分割をどのように行うか、その領域ごとで符号化する際の誤り訂正能力をどのようにするか、などの設定を行う。この制御信号には、記録開始などを示すコマンドや、転送データ数が含まれている。本実施例１では外部機器４が１２３Ｋバイトのデータを誤り訂正装置１に送信するものとする。
【００３９】
誤り訂正装置１が外部機器４から送られてきた１２３Ｋバイトのデータに対して誤り訂正符号化を行い、最終的に記録再生回路３に出力するページデータのデータ配列を、図３（ａ）に示すように、１０２４ビット×１０２４ビットのアレイで構成する。記録再生回路３ではこのページデータに対して空間光変調などの処理を施して記録媒体２への記録動作を開始する。このとき記録再生回路３が使用するレンズやレーザーの性能によりページデータの周辺領域、特に四隅に歪みが生じることで、データ品質の良し悪しがページデータ内で分かれる。
【００４０】
そこで最初に制御部１４は、図３（ａ）に示すページデータのデータ配列において、データ品質の良し悪しに従って図３（ｂ）に示すような領域分割を行う。例えば、ページデータの中央に位置する７６８ビット×７６８ビットで構成される“Ａ”領域を、データ品質が良い領域と定義する。次に“Ａ”領域の四辺に隣接する７６８ビット×１２８ビットで構成される四つの“Ｂ”領域を、データ品質が平均レベルである領域と定義する。最後にページデータの四隅に位置する１２８ビット×１２８ビットで構成される四つの“Ｃ”領域を、データ品質が悪い領域と定義する。
【００４１】
次に制御部１４は、この分割後の各領域における誤り訂正能力を設定する。ここで、本実施例１の誤り訂正符号にはＧＦ（２＾８）のリードソロモン符号を用いる。これは８ビットのデータを１バイトとし、バイト単位でデータを訂正するものである。本実施例１では“Ａ”領域の誤り訂正能力を、データ品質が良いということを考慮して、データ１２８バイトのかたまりを１符号語とし、１符号語に対して１バイトまでの誤りを訂正できる１重誤り訂正とする。同様に“Ｂ”領域の誤り訂正能力を、データ品質が平均レベルということから、データ１２８バイトのかたまりを１符号語とし、１符号語に対して２バイトまでの誤りを訂正できる２重誤り訂正とする。最後に“Ｃ”領域の誤り訂正能力を、データ品質が悪いために、データ１２８バイトのかたまりを１符号語とし、１符号語に対して４バイトまでの誤りを訂正できる４重誤り訂正とする。
【００４２】
さらに制御部１４は、後に外部機器４が出力するデータをどのようにバッファメモリ１５に格納するか（つまりどのようなメモリマップにするか）を設定する。図４はそのメモリマップの構成を表した図である。このメモリマップの構成の仕方について説明する。
【００４３】
誤り訂正装置１が記録再生回路３に出力するページデータは図３（ａ）に示すように、１０２４ビット×１０２４ビット、つまり１２８Ｋバイト空間必要になる。よって図４に示すようにバッファメモリ１５に必要なメモリ空間は、バイトアドレスで０００００ｈ（“ｈ”は１６進数表記であることを示す）番地から１ＦＦＦＦｈ番地の１２８Ｋバイト空間となる。ここで外部機器４から送られてくるデータは１２３Ｋバイトであるので、残り５Ｋバイトは誤り訂正装置１によって生成される誤り訂正符号を格納できる空間となる。この図４に示すメモリマップは、縦方向の長さをバイトアドレス０００００ｈ番地から０００７Ｆｈ番地の１２８バイトとしている。
【００４４】
はじめに図３（ｂ）に示す“Ａ”領域は７６８ビット×７６８ビット、つまり７２Ｋバイトのメモリ空間が必要であり、図４に示すバッファメモリ１５のバイトアドレス０００００ｈ番地から１１ＦＦＦｈ番地の７２Ｋバイト空間を使用する。ここで、図３（ｂ）に示す“Ａ”領域には誤り訂正符号も含まれているため、このメモリ空間にも誤り訂正符号も含まれていることになる。ステップ１で“Ａ”領域の１符号語の符号長を１２８バイトとし、１重誤り訂正であると設定しているので、１符号語あたりの誤り訂正符号は２バイト必要となる。７２Ｋバイトメモリ空間の“Ａ”領域には符号長１２８バイトの符号語が５７６個存在することになるので、誤り訂正符号のデータは合計で１１５２（＝２×５７６）バイトとなる。７２Ｋバイトからこの１１５２バイトを引いた７２５７６バイト分だけ、外部機器４から送られてきたデータをこのバイトアドレス０００００ｈ番地から１１ＦＦＦｈ番地の空間に格納することができる。
【００４５】
ここで“Ａ”領域に存在する５７６個の符号語に関して、バイトアドレス０００００ｈ番地から０００７Ｆｈ番地の１２８バイトを１符号語とし、次のバイトアドレス０００８０ｈ番地から０００ＦＦｈ番地の１２８バイトを１符号語とし、以下同様にバイトアドレス０００００ｈ番地から１２８バイトごとに符号語を構成していく。図５（ａ）は“Ａ”領域の符号語の構成を表した図であるが、符号語の先頭から１２６バイトをデータ部とし、ここに外部機器４から送られてきたデータを格納し、残りの２バイトに誤り訂正符号を格納することにする。この各符号語に対して誤り訂正を行うが、以下、これをＣ１誤り訂正とし、この符号語をＣ１符号語、誤り訂正符号をＣ１誤り訂正符号と呼ぶ。つまり図４に示すメモリマップに対して、縦方向がちょうどＣ１符号語一つとなる。
【００４６】
以上より図４において、バイトアドレス０００００ｈ番地から１１ＦＦＦｈ番地のメモリ空間のうち、斜線領域に外部機器４から送られてきたデータを格納し、残りの白い領域にＣ１誤り訂正符号を格納することになる。
【００４７】
次に図３（ｂ）に示す“Ｂ”領域は７６８ビット×１２８ビットが４面、つまり４８Ｋバイトのメモリ空間が必要であり、図４に示すバッファメモリ１５のバイトアドレス１２０００ｈ番地から１ＤＦＦＦｈ番地の４８Ｋバイト空間を使用する。ここで、図３（ｂ）に示す“Ｂ”領域にはＣ１誤り訂正符号も含まれているため、このメモリ空間にもＣ１誤り訂正符号も含まれていることになる。ステップ１で“Ｂ”領域の１符号語の符号長を１２８バイトとし、２重誤り訂正であると設定しているので、１符号語あたりのＣ１誤り訂正符号は４バイト必要となる。４８Ｋバイト存在する“Ｂ”領域には符号長１２８バイトのＣ１符号語が３８４個存在することになるので、Ｃ１誤り訂正符号は合計で１５３６（４×３８４）バイトとなる。４８Ｋバイトからこの１５３６バイトを引いた４７６１６バイト分だけ、外部機器４から送られてきたデータをこのバイトアドレス１２０００ｈ番地から１ＤＦＦＦｈ番地の空間に格納することができる。
【００４８】
ここで“Ｂ”領域に存在する３８４個のＣ１符号語に関して、バイトアドレス１２０００ｈ番地から１２０７Ｆｈ番地の１２８バイトを１符号語とし、次のバイトアドレス１２０８０ｈ番地から１２０ＦＦｈ番地の１２８バイトを１符号語とし、以下同様にバイトアドレス１２０００ｈ番地から１２８バイトごとに符号語を構成していく。図５（ｂ）は“Ｂ”領域のＣ１符号語の構成を表した図であるが、符号語の先頭から１２４バイトをデータ部とし、ここに外部機器４から送られてきたデータを格納し、残りの４バイトにＣ１誤り訂正符号を格納することにする。
【００４９】
以上より図４において、バイトアドレス１２０００ｈ番地から１ＤＦＦＦｈ番地のメモリ空間のうち、斜線領域に外部機器４から送られてきたデータを格納し、残りの白い領域にＣ１誤り訂正符号を格納することになる。
【００５０】
最後に図３（ｂ）に示す“Ｃ”領域は１２８ビット×１２８ビットが４面、つまり８Ｋバイトのメモリ空間が必要であり、図４に示すバッファメモリ１５のバイトアドレス１Ｅ０００ｈ番地から１ＦＦＦＦｈ番地の８Ｋバイト空間を使用する。ここで、図３（ｂ）に示す“Ｃ”領域にはＣ１誤り訂正符号も含まれているため、このメモリ空間にもＣ１誤り訂正符号も含まれていることになる。ステップ１で“Ｃ”領域の１符号語の符号長を１２８バイトとし、４重誤り訂正であると設定しているので、１符号語あたりの誤り訂正符号は８バイト必要となる。よって１符号語あたりのデータ部は１２８バイトから８バイトを引いた１２０バイトとなる。ここで前述の説明および図４から明らかなように、外部機器４から送られてきたデータ１２３Ｋバイトの内、すでに１２０１９２バイトは“Ａ”領域と“Ｂ”領域に格納されており、残りの５７６０バイトが“Ｃ”領域に格納されることになる。前述したように、１符号語あたりのデータは１２０バイトであるので、“Ｃ”領域には４８個（５７６０÷１２０）のＣ１符号語が存在することになる。“Ａ”領域、“Ｂ”領域と同様にバイトアドレス１Ｅ０００ｈ番地から１２８バイト単位でＣ１符号語を構成する。図５（ｃ）は“Ｃ”領域のＣ１符号語の構成を表した図であるが、符号語の先頭から１２０バイトをデータ部とし、ここに外部機器４から送られてきたデータを格納し、残りの８バイトにＣ１誤り訂正符号を格納することになる。
【００５１】
以上より図４において、バイトアドレス１Ｅ０００ｈ番地から１Ｆ７ＦＦｈ番地のメモリ空間のうち、斜線領域に外部機器４から送られてきたデータを格納し、残りの白い領域にＣ１誤り訂正符号を格納することになる。
【００５２】
ここで図４のメモリマップにおいて、バイトアドレス１Ｆ８００ｈ番地から１ＦＦＦＦｈ番地の黒い領域のメモリ空間に関して説明する。図４に示すように各領域の中でＣ１符号語を構成し、各領域で設定された誤り訂正能力にもとづいて符号化や誤り訂正処理を行うが、これだけでは場合によってはデータ品質の劣化などにより、誤りを訂正できないおそれがある。そのため、符号化後のデータを各領域から所定の数ずつ抽出して、符号語を新たに構成し、２重に符号化するようにする。以下、これをＣ２誤り訂正とし、この符号語をＣ２符号語、誤り訂正符号をＣ２誤り訂正符号と呼ぶ。つまり図４に示すメモリマップに対して、横方向をＣ２符号語一つとする。各領域で生成されるＣ１誤り訂正符号語の領域に対しても、Ｃ２誤り訂正方向に符号化を行う。
【００５３】
このＣ２誤り訂正の誤り訂正能力に関して、図５（ｄ）に示すように符号長が１０２４バイトのかたまりを１符号語とし、１符号語に対して８バイトまでの誤りを訂正できる８重誤り訂正とする。よって１符号語あたりＣ２誤り訂正符号は１６バイト必要となるため、図４のメモリマップにおいて、バイトアドレス１Ｆ８００ｈ番地から１ＦＦＦＦｈ番地の黒い領域のメモリ空間にＣ２誤り訂正符号を格納する。
【００５４】
ステップ１では以上のような設定（領域分割方法や各領域における誤り訂正能力、またバッファメモリ１５のメモリマップ構成など）を、制御部１４が決定する。制御部１４はこれらの設定をもとに、誤り訂正装置１を構成する他のブロックを制御し、各ブロックは後述するステップで様々な処理を行っていく。制御部１４はこれらの設定が完了すれば、外部機器４に対してデータ転送を開始するよう要求する。
【００５５】
ステップ２では、データ入出力部１１が外部機器４からデータを入力し、バッファメモリ１５にデータを格納していく。ここでバッファメモリ１５における格納位置であるが、前述したようにステップ１で制御部１４により図４のようなメモリマップ構成が既に設定されているので、制御部１４がデータ入出力部１１に対してメモリマップを指示し、それに従ってデータを格納していく。本実施例１では、外部機器４から送られてきたデータを、図４のメモリマップのアドレスの小さい順に格納していくとする。格納を終えた時点でデータ入出力部１１は制御部１４に対して終了通知をする。
【００５６】
ステップ３では、バッファメモリ１５に格納されたデータに対してＣ１符号語単位で符号化を行う。制御部１４は符号化部１２に対してＣ１誤り訂正用の符号化を開始する指示を出力すると同時にバッファメモリ１５のメモリマップの構成や各領域における誤り訂正能力の設定も出力する。符号化部１２は、Ｃ１符号語をバッファメモリ１５から読み出し、符号化を行い、生成されたＣ１誤り訂正符号をバッファメモリ１５の所定の位置に格納する。この処理をＣ１符号語の数だけ繰り返す。本実施例１では、Ｃ１符号語の先頭データのバイトアドレスの昇順に、バッファメモリ１５から読み出すとする。以下、具体的に説明する。
【００５７】
符号化部１２はまず図４に示すメモリマップにおいて、“Ａ”領域のＣ１符号語から処理を開始する。バイトアドレス０００００ｈ番地から０００７Ｆｈ番地の１２８バイトで構成される第一のＣ１符号語の内、データ部（バイトアドレス０００００ｈ番地から０００７Ｄｈ番地）１２６バイトをバイトアドレス０００００ｈ番地から順に１バイト単位で読み出し、符号化部１２が順に入力していく。この符号化部１２は制御部１４から先に“Ａ”領域の誤り訂正能力の設定値を入力しているので、その設定に従って符号化を開始する。符号化部１２が１２６バイトすべてのデータを入力することにより、Ｃ１誤り訂正符号の生成が完了する。符号化部１２は生成された２バイトのＣ１誤り訂正符号を、バッファメモリ１５のバイトアドレス０００７Ｅｈ番地から０００７Ｆｈ番地に格納し、第一のＣ１符号語に対する符号化処理を終了する。
【００５８】
次に、バイトアドレス０００８０ｈ番地から０００ＦＦｈ番地の１２８バイトで構成される第二のＣ１符号語の処理に移行する。この第二のＣ１符号語のデータ部（バイトアドレス０００８０ｈ番地から０００ＦＤｈ番地）１２６バイトをバイトアドレス０００８０ｈ番地から順に１バイト単位で読み出し、第一のＣ１符号語の処理と同様にＣ１誤り訂正符号２バイトを符号化部１２が生成し、バッファメモリ１５のバイトアドレス０００ＦＥｈ番地から０００ＦＦｈ番地に格納し、第三のＣ１符号語の処理に移行する。
【００５９】
以下同様に“Ａ”領域を構成する５７６個のＣ１符号語すべての符号化が終了すれば、次は“Ｂ”領域を構成するＣ１符号語の符号化を開始する。“Ａ”領域同様にあらかじめ“Ｂ”領域の誤り訂正能力の設定値を制御部１４から入力しているので、その設定に従って符号化を開始する。バイトアドレス１２０００ｈ番地から１２０７Ｆｈ番地の１２８バイトで構成される第一のＣ１符号語のデータ部（バイトアドレス１２０００ｈ番地から１２０７Ｂｈ番地）１２４バイトをバイトアドレス１２０００ｈ番地から順に１バイト単位で読み出し、符号化部１２が順に入力していく。符号化部１２が１２４バイトすべてのデータを入力することにより、Ｃ１誤り訂正符号の生成が完了する。符号化部１２は生成された４バイトのＣ１誤り訂正符号を、バッファメモリ１５のバイトアドレス１２０７Ｃｈ番地から１２０７Ｆｈ番地に格納し、第一のＣ１符号語の処理を終了し、第二のＣ１符号語の処理に移行する。以下、“Ａ”領域と同様に“Ｂ”領域を構成する３８４個のＣ１符号語すべての符号化を行う。
【００６０】
“Ｃ”領域を構成するＣ１符号語に対しても同様に、制御部１４からあらかじめ設定されている“Ｃ”領域の誤り訂正能力の設定値に従って符号化を行っていく。ここで“Ｃ”領域のバイトアドレス１Ｆ８００ｈ番地から１ＦＦＦＦｈ番地の領域は、Ｃ２誤り訂正符号が格納される領域であり、この時点でＣ２誤り訂正用の符号化は行われていないためデータが存在しない。即ちこの領域に対するＣ１誤り訂正用の符号化は行わないことになる。よってＣ２誤り訂正符号の格納領域を除いたバイトアドレス１Ｅ０００ｈ番地から１Ｆ７ＦＦｈ番地までの４８個のＣ１符号語に対して符号化する。バイトアドレス１Ｅ０００ｈ番地から１Ｅ０７Ｆｈ番地の１２８バイトで構成される第一のＣ１符号語のデータ部（バイトアドレス１Ｅ０００ｈ番地から１Ｅ０７７ｈ番地）１２０バイトをバイトアドレス１Ｅ０００ｈ番地から順に１バイト単位で読み出し、符号化部１２が順に入力していく。符号化部１２が１２０バイトすべてのデータを入力することにより、Ｃ１誤り訂正符号の生成が完了する。符号化部１２は生成された８バイトのＣ１誤り訂正符号を、バッファメモリ１５のバイトアドレス１Ｅ０７８ｈ番地から１Ｅ０７Ｆｈ番地に格納し、第一のＣ１符号語の処理を終了し、第二のＣ１符号語の処理に移行する。以下、“Ｃ”領域を構成する４８個のＣ１符号語すべての符号化を行う。この時点で図４に示すメモリマップのバイトアドレス０００００ｈ番地から１Ｆ７ＦＦｈ番地までの領域が、外部機器４から送られてきたデータと、Ｃ１誤り訂正符号で埋め尽くされていることになる。その後、符号化部１２は制御部１４に対して終了通知を行う。
【００６１】
ステップ４では、バッファメモリ１５に格納されたデータに対してＣ２符号語単位で符号化を行う。制御部１４は符号化部１２に対してＣ２誤り訂正用の符号化を開始する指示を出力すると同時にＣ２誤り訂正能力の設定も出力する。符号化部１２は、図４に示すメモリマップにおいて、Ｃ２誤り訂正の方向にバッファメモリ１５からＣ２符号語を読み出し、符号化を行い、生成されたＣ２誤り訂正符号をバッファメモリ１５の所定の位置に格納する。この処理をＣ２符号語の数だけ繰り返す。本実施例１では、Ｃ２符号語の先頭データのバイトアドレスの昇順に、バッファメモリ１５から読み出すとする。以下、具体的に説明する。
【００６２】
符号化部１２はまず図４に示すメモリマップにおいて、バイトアドレス０００００ｈ番地を先頭データとする第一のＣ２符号語１０２４バイトの内のデータ部１００８バイトを、バイトアドレス０００００ｈ番地から順にＣ２誤り訂正方向に１バイト単位で読み出し、符号化部１２が順に入力していく。この符号化部１２は制御部１４から先にＣ２誤り訂正能力の設定値を入力しているので、その設定に従って符号化を開始する。符号化部１２が１００８バイトすべてのデータを入力することにより、Ｃ２誤り訂正符号の生成が完了する。符号化部１２は生成された１６バイトのＣ２誤り訂正符号を、バッファメモリ１５のバイトアドレス１Ｆ８００ｈ番地からＣ２誤り訂正方向に順に格納し、第一のＣ２符号語に対する符号化処理を終了する。
【００６３】
次にバイトアドレス００００１ｈ番地を先頭データとする第二のＣ２符号語の内のデータ部を、バイトアドレス００００１ｈ番地から順にＣ２誤り訂正方向に１バイト単位で読み出し、符号化部１２が順に入力していく。符号化部１２が１００８バイトすべてのデータを入力することにより、Ｃ２誤り訂正符号の生成が完了する。符号化部１２は生成された１６バイトのＣ２誤り訂正符号を、バッファメモリ１５のバイトアドレス１Ｆ８０１ｈ番地からＣ２誤り訂正方向に順に格納し、第二のＣ２符号語に対する符号化処理を終了する。
【００６４】
以下同様に、１２８個のＣ２符号語すべての符号化を行う。この時点で図４に示すメモリマップのバイトアドレス０００００ｈ番地から１ＦＦＦＦｈ番地までの１２８Ｋバイトすべてのメモリ空間が、外部機器４から送られてきたデータと、Ｃ１誤り訂正符号、Ｃ２誤り訂正符号で埋め尽くされていることになる。その後、符号化部１２は制御部１４に対して終了通知を行う。
【００６５】
ステップ５では、制御部１４が記録再生回路３に対して、ページデータを構成するすべてのデータがバッファメモリ１５にそろったことを通知すると同時にバッファメモリ１５のメモリマップの構成情報も出力する。この通知に対して記録再生回路３がバッファメモリ１５からページデータの読み出しを行う。
【００６６】
記録再生回路３は図４に示すメモリマップにもとづいてバッファメモリ１５からデータを読み出し、図３（ｂ）に示すページデータのデータ配列を構成する。図６は図３（ｂ）が示すページデータにおける領域ごとのデータ格納順を示した図である。本実施例１では、図４のメモリマップの“Ａ”領域を構成するデータのアドレスの小さいデータから順に読み出し、図６の（１）が示す順にビット単位で配列する。次に図４のメモリマップの“Ｂ”領域を構成するデータのアドレスの小さいデータから順に読み出し、図６の（２）、（３）、（４）、（５）が示す順にビット単位で配列する。最後にメモリマップの“Ｃ”領域を構成するデータのアドレスの小さいデータから順に読み出し、図６の（６）、（７）、（８）、（９）が示す順にビット単位で配列する。
【００６７】
以上のページデータ構成が完了した後、記録再生回路３が有する空間光変調器などを用いて情報光を生成し、参照光を用いて記録媒体２に記録する。
【００６８】
ところで、本実施例１では図４のメモリマップにおいて、データ品質の悪くなる可能性のある“Ｃ”領域にＣ２誤り訂正符号を格納したが、この“Ｃ”領域には再生時に誤ったデータが数多く存在する可能性がある。この場合Ｃ２誤り訂正符号が誤った値となり、それゆえＣ２誤り訂正符号を行った場合に、誤訂正を引き起こしてしまう可能性がある。この誤訂正とは符号語を本来の値に訂正するのではなく、まったく別の符号語に訂正してしまい、かつこの符号語には誤りがないと結論付けてしまうものである。こうなればデータ品質の良い領域のデータも間違った値に訂正してしまう。そこでステップ４とステップ５の間にステップ４＿２を設けて、これに対する対策処理を行うようにしても良い。
【００６９】
ステップ４＿２では、ステップ４で生成され図４のメモリマップの“Ｃ”領域に格納されているＣ２誤り訂正符号を、符号化部１２により“Ａ”領域あるいは“Ｂ”領域のデータと配置交換する処理を行う。どの位置のデータと交換するかは様々なパターンが考えられるが、本実施例１では、データ品質が良い“Ａ”領域で、かつアドレス生成が最も簡単である図７に示すような方法とする。
【００７０】
図７（ａ）はステップ４でＣ２誤り訂正符号が生成された直後のメモリマップである。図７（ａ）のバイトアドレス０００００ｈ番地から１Ｆ７ＦＦｈ番地までの斜線領域がＣ２符号語のデータ部に相当する領域で、バイトアドレス１Ｆ８００ｈ番地から１ＦＦＦＦｈ番地の黒い領域がＣ２誤り訂正符号が格納される領域である。図７（ｂ）はＣ２符号語の構成を表した図である。１０２４バイトの符号長に対しデータ部が前部１００８バイト、後部１６バイトがＣ２誤り訂正符号である。この“Ｃ”領域に配置されているＣ２誤り訂正符号を、図７（ｃ）に示すように“Ａ”領域のバイトアドレス０００００ｈ番地から００７ＦＦｈ番地のデータと配置交換する。図７（ｄ）は配置交換後のＣ２符号語の構成を表した図である。
【００７１】
ここでステップ３の動作説明でしたように、バイトアドレス１Ｆ８００ｈ番地から１ＦＦＦＦｈ番地のＣ２誤り訂正符号の格納領域は、Ｃ１誤り訂正用の符号化は行われていない。一方、バイトアドレス０００００ｈ番地から１Ｆ７ＦＦｈ番地はＣ１誤り訂正用の符号化、およびＣ２誤り訂正用の符号化の２重に符号化が施されている。つまりデータ品質の悪い“Ｃ”領域に、さらに符号化が強化されていないデータをおくことによって、データの信頼性が低下してしまう。よって２重に符号化されていないＣ２誤り訂正符号を少しでもデータ品質の良い領域に移動しておき、記録媒体２に記録しておいた方が、再生時のデータの信頼性を向上させることができる。以上の動作が終了すれば、制御部１４に終了通知を行う。
【００７２】
以上のステップで、１ページ分のデータの記録動作が終了する。実際は、複数のページデータを記録媒体２に記録することになるので、これらのステップを繰り返し、あるいはパイプライン処理で動作することになる。
【００７３】
次に記録媒体２のデータを再生する場合の処理について、図８に示すフローチャートに沿って、具体的に説明する。
【００７４】
まず外部機器４から制御部１４に対して再生指示が出力されることにより、制御部１４は記録再生回路３に記録媒体２からページデータを再生するよう指示する。これにより記録再生回路３は参照光を記録媒体２に照射し、その回折光をＣＣＤなどの撮影素子で読み取り、図３（ａ）に示すようなページデータを得る。
【００７５】
ステップ１１では、制御部１４はあらかじめ記録時に設定した図３（ｂ）に示すような領域分割パターンを記録再生回路３に通知し、記録再生回路３は記録媒体２から再生したページデータを、その領域分割パターンに従ってバッファメモリ１５に格納する。本実施例１では、記録再生回路３は図６に示すページデータの（１）の順にデータをビット単位で抽出し、図４のメモリマップの“Ａ”領域のバイトアドレスの小さい順にバイト単位で格納する。次に図６に示すページデータの（２）、（３）、（４）、（５）の順にデータを抽出し、図４のメモリマップの“Ｂ”領域のバイトアドレスの小さい順に格納する。最後に図６に示すページデータの（６）、（７）、（８）、（９）の順にデータを抽出し、図４のメモリマップの“Ｃ”領域のバイトアドレスの小さい順に格納する。
【００７６】
ページデータを構成する１２８Ｋバイトすべてのデータがバッファメモリ１５に格納し終わった時点で、記録再生回路３は制御部１４に対して終了通知を行う。
【００７７】
ステップ１２では、バッファメモリ１５に格納されたデータに対してＣ１符号語単位で誤り訂正を行う。制御部１４は誤り訂正部１３に対してＣ１誤り訂正を開始する指示を出力すると同時にバッファメモリ１５のメモリマップ構成や各領域における誤り訂正能力の設定も出力する。この設定値は記録時のステップ１で設定した値である。
【００７８】
誤り訂正部１３はまず図４のメモリマップに示す“Ａ”領域のＣ１符号語から処理を開始する。バイトアドレス０００００ｈ番地から０００７Ｆｈ番地の１２８バイトで構成される第一のＣ１符号語を、バイトアドレス０００００ｈ番地から順に１バイト単位で読み出し、誤り訂正部１３が順に入力していく。この誤り訂正部１３は制御部１４から先に“Ａ”領域の誤り訂正能力の設定値を入力しているので、その設定に従って誤り訂正を開始する。誤り訂正部１３が１２８バイトすべてのデータを入力することにより、誤りの有無を判断でき、もし誤りがあると判断し、訂正可能であれば、バッファメモリ１５に格納されている第一のＣ１符号語の誤っている値を正しい値に更新する。訂正不能であれば、どこに誤りが存在するか判断できないため、後のステップで処理するＣ２誤り訂正に委ねることになる。これで第一のＣ１符号語に対する符号化処理を終了する。
【００７９】
次に、バイトアドレス０００８０ｈ番地から０００ＦＦｈ番地の１２８バイトで構成される第二のＣ１符号語の処理に移行し、誤り訂正を行う。以下同様に、“Ａ”領域を構成する５７６個すべてのＣ１符号語に対する処理が終了すれば、次に“Ｂ”領域を構成するＣ１符号語の処理に移行する。
【００８０】
まず“Ｂ”領域のバイトアドレス１２０００ｈ番地から１２０７Ｆｈ番地の１２８バイトで構成される第一のＣ１符号語に対する処理を行う。ここで制御部１４からあらかじめ“Ｂ”領域の誤り訂正能力の設定値が通知されているので、誤り訂正部１３はそれに従って処理を行う。これ以降の動作は“Ａ”領域のＣ１符号語に対する処理と同様である。
【００８１】
“Ｂ”領域の処理が終了すれば、最後に“Ｃ”領域の処理に移行する。こちらも“Ａ”領域、“Ｂ”領域の処理と同様であるが、“Ｃ”領域のＣ１符号語はバイトアドレス１Ｅ０００ｈ番地から１Ｆ７ＦＦｈ番地までの４８個の符号語しか存在しない。バイトアドレス１Ｆ８００ｈ番地以降はＣ２符号語が格納されており、この領域はＣ１誤り訂正用の符号化はされていないためである。この４８個のＣ１符号語に対するＣ１誤り訂正が終了すれば、図４に示すメモリマップのバイトアドレス０００００ｈ番地から１Ｆ７ＦＦｈ番地に格納されているＣ１符号語すべての処理が終了したことになる。誤り訂正部１３は制御部１４に対して終了通知を行い、次のステップに移行する。
【００８２】
ステップ１３では、バッファメモリ１５に格納されたデータに対してＣ２符号語単位で誤り訂正を行う。制御部１４は誤り訂正部１３に対してＣ２誤り訂正を開始する指示を出力すると同時にバッファメモリ１５のメモリマップ構成や各領域における誤り訂正能力の設定も出力する。この設定値は記録時に採用した値である。
【００８３】
ここで、記録時に符号化部１２がステップ４で“Ｃ”領域に生成したＣ２誤り訂正符号を、ステップ４＿２において別の領域のデータと配置交換していた場合、誤り訂正部１３はもとの配置に戻した後にＣ２誤り訂正を開始する。例えば、記録時に符号化部１２がステップ４で生成したＣ２誤り訂正符号を図７（ａ）の黒い領域（バイトアドレス１Ｆ８００ｈ番地から１ＦＦＦＦｈ番地）に格納したとし、ステップ４＿２で図７（ｃ）のようにバイトアドレス０００００ｈ番地から００７ＦＦｈ番地のデータと配置交換していた場合、誤り訂正部１３はもとの図７（ａ）の配置に戻す。その後、以下で説明するＣ２誤り訂正を開始する。
【００８４】
誤り訂正部１３はまず図４に示すメモリマップにおいて、バイトアドレス０００００ｈ番地を先頭データとする第一のＣ２符号語１０２４バイトを、バイトアドレス０００００ｈ番地から順にＣ２誤り訂正方向に１バイト単位で読み出し、誤り訂正部１３が順に入力していく。この誤り訂正部１３は制御部１４から先にＣ２誤り訂正能力の設定値を入力しているので、その設定に従って誤り訂正を開始する。誤り訂正部１３が１０２４バイトすべてのデータを入力することにより、誤りの有無を判断でき、もし誤りがあると判断し、訂正可能であれば、バッファメモリ１５に格納されている第一のＣ２符号語の誤っている値を正しい値に更新する。訂正不能であれば、どこに誤りが存在するか判断できないため、この第一のＣ２符号語は誤りが存在したままになる。
【００８５】
次にバイトアドレス００００１ｈ番地を先頭データとする第二のＣ２符号語を、バイトアドレス００００１ｈ番地から順にＣ２誤り訂正方向に１バイト単位で読み出し、誤り訂正符号部２３が順に入力していく。誤り訂正部１３が１０２４バイトすべてのデータを入力することにより、誤りの有無を判断でき、第一のＣ２符号語と同様に誤りがあり、かつ訂正可能であれば、バッファメモリ１５に格納されている第二のＣ２符号語の誤っている値を正しい値に更新する。以下、同様に１２８個のＣ２符号語すべての誤り訂正を行い、誤り訂正部１３は制御部１４に対して、終了通知を行う。
【００８６】
しかし、１２８個のＣ２符号語のうち、訂正不能のＣ２符号語が一つ以上存在した場合、誤り訂正部１３が制御部１４に対してこの結果を通知し、制御部１４は記録再生回路３に対して、この訂正不能のＣ２符号語が存在するページデータを記録媒体２から再度再生するよう要求する。もしくはステップ１２に戻り、再度Ｃ１誤り訂正を行う。このようにＣ１誤り訂正とＣ２誤り訂正を交互に複数回行うことを、繰り返し訂正と呼ぶ。これにより、訂正不能となる符号語が徐々に減少し、いずれはすべてのＣ１符号語、Ｃ２符号語が正しい値に訂正できる可能性がある。
【００８７】
図９を用いて繰り返し訂正について簡単に説明する。図９はメモリマップを表した図であり、一マスが１バイトとする。Ｃ１符号語は図９（ａ）の縦一列が１符号語で、全部で８個（第１列、第２列、第３列、…、第８列）ある。Ｃ２符号語は図９（ａ）の横一行が１符号語で、全部で８個（第Ａ行、第Ｂ行、第Ｃ行、…、第Ｈ行）ある。そしてＣ１符号語、Ｃ２符号語ともに符号長８バイトのうち、１バイトまで訂正できる１重誤り訂正とする。
【００８８】
図９（ａ）の黒く塗られた位置のデータに誤りが存在するとする。最初にステップ１２のＣ１誤り訂正により、図９（ｂ）に示す斜線部分のデータの誤りが正しく訂正できる。つまり第４列から第８列までのＣ１符号語が訂正でき、第１列から第３列はＣ１符号語の中に２バイトの誤りが存在していたため、訂正不能となり、結局図９（ｂ）の黒い部分の誤りが残る。次にステップ１３のＣ２誤り訂正により、図９（ｃ）に示す斜線部分のデータの誤りが正しく訂正できる。つまり第Ｂ行と第Ｃ行はＣ２符号語の中に２バイトの誤りが存在していたため、訂正不能となり、それ以外のＣ２符号語は誤りがなかったか、あるいは１バイトの誤りであったため、正しい値に訂正できる。結局図９（ｃ）の黒い部分の誤りが残る。
【００８９】
次にステップ１２に戻り、Ｃ１誤り訂正をサイド行うことにより、図９（ｄ）に示す斜線部分のデータの誤りが正しい訂正できる。つまり第１列と第３列のＣ１符号語が訂正でき、第２列はＣ１符号語の中に２バイトの誤りが存在していたため、訂正不能となり、結局図９（ｄ）の黒い部分の誤りが残る。次にステップ１３のＣ２誤り訂正により、図９（ｅ）に示す斜線部分のデータの誤りが正しい訂正できる。これにより、すべてのＣ１符号語、Ｃ２符号語が正しい値に訂正できたことになる。
【００９０】
よってステップ１３のＣ２誤り訂正で訂正不能のＣ２符号語が存在した場合、記録再生回路３に再度再生要求を出力するのではなく、ステップ１２のＣ１誤り訂正、およびステップ１３のＣ２誤り訂正を複数回行う繰り返し訂正を行うことで、本来の正しい値に訂正できる可能性が高くなり、データの信頼性を向上させることができる。
【００９１】
以上により、バッファメモリ１５に外部機器４へ出力するデータの準備ができたことになり、ステップ１４に移行する。
【００９２】
ステップ１４では、データ入出力部１１がバッファメモリ１５に格納されたデータを外部機器４へ出力する。制御部１４がデータ入出力部１１に対してバッファメモリ１５から外部機器４に出力するデータを読み出すよう指示し、外部機器４はデータ入出力部１１からそのデータを受け取ることになる。ここで、バッファメモリ１５には図４に示すメモリマップに沿ったデータが格納されているが、斜線部分以外の領域はＣ１誤り訂正符号、もしくはＣ２誤り訂正符号である。これらの誤り訂正符号は再生時の誤り訂正に用いるために付加したものであるため、外部機器４に出力はしない。よって本実施例１では、データ入出力部１１はバッファメモリ１５から、図４のメモリマップの斜線部分に格納されている１２３Ｋバイトのデータをアドレスの小さい順に読み出し、外部機器４に出力する。すべて出力した時点で制御部１４に対し終了通知を行う。
【００９３】
以上のステップで、１ページ分のデータの再生動作が終了する。実際は、複数のページデータを記録媒体２から再生することになるので、これらのステップを繰り返し、あるいはパイプライン処理で動作することになる。
【００９４】
以上のように本実施例１においては、記録媒体２に記録する際のページデータのデータ配列を変更することなく、ページデータ内のデータ品質に応じて誤り訂正能力を設定し、データの信頼性を向上させる誤り訂正装置１および方法を提供することができる。
【００９５】
なお本実施例１では、記録媒体２をホログラフィックメモリとし、デジタルデータ記録システムをホログラフィックメモリシステムとして説明したが、記録媒体２はテープなど、記録媒体２の記録位置によりデータ品質が異なるものにも適用することができる。
【００９６】
さらに外部機器４が入出力する転送データ数や、記録媒体２に記録する際のデータ配列、ページデータのデータ品質の良し悪しによる領域分割方法、各領域における符号化する際の符号語の構成や誤り訂正能力など、本実施例１で説明した際に用いた設定値や設定方法は、具体的な数値を用いて説明したが、それに限るものではない。
【００９７】
さらに外部機器４に入出力するデータや記録再生回路３に入出力するデータと、バッファメモリ１５の格納位置との対応は、本実施例１で説明したものと異なってもよいが、記録時と再生時では一致しておかなければならない。
【００９８】
さらに符号化部１２が記録時に行うＣ１符号化やＣ２符号化、また誤り訂正部１３が再生時に行うＣ１誤り訂正やＣ２誤り訂正のそれぞれの順番は、本実施例１で説明した順番と逆でもよい。
【００９９】
さらに本実施例１では、記録時のステップ４＿２で符号化部１２が生成したＣ２誤り訂正符号をデータ品質の良い領域のデータと配置交換したが、その配置交換のパターンはこの限りではない。
【０１００】
さらに本実施例１では、記録時にはＣ１符号化およびＣ２符号化を行い、再生時にはＣ１誤り訂正およびＣ２誤り訂正を行ったが、Ｃ２符号化およびＣ２誤り訂正を省略してもよい。つまり、記録時は図２に示すフローチャートにおいて、符号化部１２がステップ３で行うＣ１符号化が終了すれば、ステップ４ならびにステップ４＿２を行わず、ステップ５に移行し、再生時には図８が示すフローチャートにおいて、誤り訂正部１３がステップ１２で行うＣ１誤り訂正処理が終了すれば、ステップ１３を行わず、ステップ１４に移行してもよい。この場合、図４に示すメモリマップのバイトアドレス１Ｆ８００ｈ番地から１ＦＦＦＦｈ番地のＣ２誤り訂正符号格納領域にはダミーデータを格納してもいいし、外部機器４から追加でデータを入力し、バイトアドレス１Ｅ０００ｈ番地から１Ｆ７ＦＦ番地の領域と同様にＣ１符号語を構成し、ステップ３によるＣ１符号化、およびステップ１２によるＣ１誤り訂正処理をしてもよい。あるいはデータではなく、誤り訂正装置１や外部機器４が記録時や再生時に必要とする情報を格納してもよい。また、図６に示すページデータのデータ格納順序および読み出し順序と、図４に示すメモリマップにおけるデータの読み出し順序および格納順序との対応は、Ｃ２誤り訂正符号が格納されていた場合と同様の対応でよい。
【０１０１】
さらに本実施例１では、外部機器４から入力されたデータをそのまま誤り訂正符号化して記録媒体２に記録し、記録媒体２から読み出されたデータをそのまま誤り訂正を行った後で外部機器４に出力する場合について説明を行ったが、ホログラフィックメモリ記録に適した符号として提案されている１−４符号や３−１６符号等を用いて、これらの符号化変調を行ったデータを記録媒体２に記録するようにしても良い。この場合には、例えば符号化部１２が誤り訂正符号化を行う前に前記符号化変調を行った後にＣ１符号化やＣ２符号化を行ってから記録媒体２に記録し、記録媒体２から読み出したデータにＣ１誤り訂正やＣ２誤り訂正を行った後に前記符号化変調の復号化を行っても良いし、誤り訂正装置１が出力したページデータを記録再生回路３で前記符号化変調を行った後に記録媒体２に記録し、記録媒体２から読み出したデータを記録再生回路３で前記符号化変調の復号化を行ったページデータを誤り訂正装置１に入力するようにしても良い。但し、この際には前記符号化変調の符号化効率に伴って記録媒体２に記録するデータ数が増えるため、ステップ１においてメモリマップを作成する際には、実際に記録媒体２に書き込まれるデータ数を考慮してマップの大きさを決定する必要がある。
【産業上の利用可能性】
【０１０２】
本発明にかかる誤り訂正装置、誤り訂正方法及びデジタルデータ記録再生装置は、データの信頼性を向上させることが出来、ホログラフィックメモリシステム記録再生装置等として有用である。
【図面の簡単な説明】
【０１０３】
【図１】本発明の実施例１におけるデジタルデータ記録再生装置および周辺装置の構成図
【図２】本発明の実施例１における記録時の処理の流れを示したフローチャート
【図３】本発明の実施例１におけるページデータの構成と、領域分割方法を示した図
【図４】本発明の実施例１におけるバッファメモリのメモリマップを示した図
【図５】本発明の実施例１におけるＣ１符号語、Ｃ２符号語の構成を示した図
【図６】本発明の実施例１におけるページデータの領域ごとのデータ格納順を示した図
【図７】本発明の実施例１におけるＣ２誤り訂正符号の配置交換方法を示した図
【図８】本発明の実施例１における再生時の処理の流れを示したフローチャート
【図９】本発明の実施例１における繰り返し訂正について示した図
【図１０】従来のホログラフィックメモリシステムの構成図
【図１１】従来のホログラフィックメモリシステムにおける記録時のページデータ変換方法を表した図
【図１２】従来のホログラフィックメモリシステムにおける再生時のページデータ変換方法を表した図
【符号の説明】
【０１０４】
１  誤り訂正装置
２  記録媒体
３  記録再生回路
４  外部機器
１１  データ入出力部
１２  符号化部
１３  誤り訂正部
１４  制御部
１５  バッファメモリ
１０１  符号化復号化回路
１０２  入力変更回路
１０３  記録再生回路
１０４  出力変更回路
１０５  記録媒体
１０６  外部機器
１１１  入力分割部
１１２  入力周辺再配列部
１１３  入力併合部
１１４  出力分割部
１１５  出力周辺再配列部
１１６  出力併合部
【図１】
2006260619.tif 000003
【図２】
2006260619.tif 000004
【図３】
2006260619.tif 000005
【図４】
2006260619.tif 000006
【図５】
2006260619.tif 000007
【図６】
2006260619.tif 000008
【図７】
2006260619.tif 000009
【図８】
2006260619.tif 000010
【図９】
2006260619.tif 000011
【図１０】
2006260619.tif 000012
【図１１】
2006260619.tif 000013
【図１２】
2006260619.tif 000014