JP3745709B2 - 符号化装置、復号化装置、符号化方法、復号化方法、プログラム、プログラム記録媒体、及びデータ記録媒体 - Google Patents
符号化装置、復号化装置、符号化方法、復号化方法、プログラム、プログラム記録媒体、及びデータ記録媒体 Download PDFInfo
- Publication number
- JP3745709B2 JP3745709B2 JP2002190742A JP2002190742A JP3745709B2 JP 3745709 B2 JP3745709 B2 JP 3745709B2 JP 2002190742 A JP2002190742 A JP 2002190742A JP 2002190742 A JP2002190742 A JP 2002190742A JP 3745709 B2 JP3745709 B2 JP 3745709B2
- Authority
- JP
- Japan
- Prior art keywords
- error correction
- code
- symbol
- correction code
- unit
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/18—Error detection or correction; Testing, e.g. of drop-outs
- G11B20/1833—Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/29—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
- H03M13/2906—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
- Detection And Correction Of Errors (AREA)
Description
【発明の属する技術分野】
本発明は、符号化装置、復号化装置、符号化方法、復号化方法、プログラム、プログラム記録媒体、及びデータ記録媒体に関する。特に本発明は、リードソロモン符号を用いた符号化装置、復号化装置、符号化方法、復号化方法、プログラム、プログラム記録媒体、及びデータ記録媒体に関する。
【0002】
【従来の技術】
特許3272307号によると、高い信頼性を必要とする通信装置等に用いられるリードソロモン符号やBCH符号を、積符号として用い、繰り返し復号によりITU−T.G.709で標準化された方式よりも高い符号化利得で誤り訂正することができる。例えば、S.keeton、S.Sridharan、及びM.Jarchi著、National Fiber Optic Engineers Conference 2001 pp54掲載「Enabling Next Generation Optical Networks with Forward Error Correction」によると、BCH符号を積符号の形で用いて、繰り返し復号により誤り訂正を行う方法が提案されている。
【0003】
【発明が解決しようとする課題】
上記の方法によると、BER(ビットエラーレート)が10−5程度の、比較的誤り率が高い領域で見ると、符号化利得の大きい誤り訂正を行うことができる。しかしながら、近年の光通信等においては、通信のデータレートが高いため誤り訂正符号を付加した後のBERを10−15程度以上に抑えることが望ましい。このような場合において、上記の方法は、エスケープパターンによるエラーフロアの悪影響を受け、十分な符号化利得を得られない場合がある。また、繰り返し回数を多く必要とする方式は、回路サイズ、消費電力の観点から好ましくない。
そこで本発明は、上記の課題を解決することのできる符号化装置、復号化装置、符号化方法、復号化方法、プログラム、プログラム記録媒体、及びデータ記録媒体を提供することを目的とする。この目的は特許請求の範囲における独立項に記載の特徴の組み合わせにより達成される。また従属項は本発明の更なる有利な具体例を規定する。
【0004】
【課題を解決するための手段】
即ち、本発明の第1の形態によると、入力データ系列に誤り訂正符号を付加する符号化装置であって、入力データ系列を分割した複数の第1データブロックのそれぞれに、バイナリ誤り訂正符号を付加する第1符号追加部と、入力データ系列を、複数の第1データブロックとは異なる形態で分割した複数の第2データブロックのそれぞれに、予め定められた長さのシンボル単位で誤り訂正を行うシンボル誤り訂正符号を付加する第2符号追加部とを備え、バイナリ誤り訂正符号が付加された第1データブロックの総ビット数当たりの、バイナリ誤り訂正符号により訂正可能なビット誤り個数は、シンボル誤り訂正符号が付加された第2データブロックの総ビット数当たりの、シンボル誤り訂正符号により訂正可能なビット誤り個数より大きいことを特徴とする符号化装置、符号化方法、当該方法を実現するプログラム、及びプログラムを記録したプログラム記録媒体を提供する。
【0005】
また、本発明の第2の形態によると、誤り訂正符号が付加された符号化データ系列を誤り訂正する復号化装置であって、符号化データ系列を格納する格納部と、符号化データ系列を分割した複数の第1データブロックのそれぞれを、バイナリ誤り訂正符号の最小距離復号により誤り訂正を行う第1誤り訂正部と、符号化データ系列を、複数の第1データブロックとは異なる形態で分割した複数の第2データブロックのそれぞれを、予め定められた長さのシンボル単位で誤り訂正を行うシンボル誤り訂正符号の最小距離復号により誤り訂正を行う第2誤り訂正部と、バイナリ誤り訂正符号の誤り訂正限界能力より小さい距離の誤り訂正及びシンボル誤り訂正符号の訂正限界能力より小さい距離の誤り訂正を、第1誤り訂正部及び第2誤り訂正部により行わせる限界未満誤り訂正制御部と、限界未満誤り訂正制御部により誤りが訂正されないと判断した場合に、バイナリ誤り訂正符号の誤り訂正限界能力及びシンボル誤り訂正符号による誤り訂正限界能力を用いた誤り訂正を、第1誤り訂正部及び第2誤り訂正部により行わせる限界誤り訂正制御部とを備えることを特徴とする復号化装置、復号化方法、当該方法を実現するプログラム、及びプログラムを記録した記録媒体を提供する。
【0006】
また、本発明の第3の形態によると、誤り訂正符号が付加された符号化データ系列を誤り訂正する復号化装置であって、符号化データ系列を格納する格納部と、符号化データ系列を分割した複数の第1データブロックのそれぞれを、バイナリ誤り訂正符号の最小距離復号により誤り訂正を行う第1誤り訂正部と、符号化データ系列を、複数の第1データブロックとは異なる形態で分割した複数の第2データブロックのそれぞれを、予め定められた長さのシンボル単位で誤り訂正を行うシンボル誤り訂正符号の最小距離復号により誤り訂正を行う第2誤り訂正部と、バイナリ誤り訂正符号の誤り訂正限界能力より小さい距離の誤り訂正及びシンボル誤り訂正符号の訂正限界能力より小さい距離の誤り訂正を、第1誤り訂正部及び第2誤り訂正部により行わせる限界未満誤り訂正制御部と、限界未満誤り訂正制御部により誤りが訂正されないと判断した場合に、バイナリ誤り訂正符号の誤り訂正限界能力及びシンボル誤り訂正符号による誤り訂正限界能力を用いた誤り訂正を、第1誤り訂正部及び第2誤り訂正部により行わせる限界誤り訂正制御部とを備えることを特徴とする復号化装置、復号化方法、当該方法を実現するプログラム、及びプログラムを記録したプログラム記録媒体を提供する。
【0007】
また、本発明の第4の形態によると、入力データ系列及び当該入力データ系列に付加した誤り訂正符号を記録したデータ記録媒体であって、入力データ系列を記録したデータ系列記録領域と、入力データ系列を分割した複数の第1データブロックそれぞれに対応づけて記録され、複数の第1データブロックそれぞれの誤り訂正に用いられるバイナリ誤り訂正符号を記録した第1符号記録領域と、入力データ系列を、複数の第1データブロックとは異なる形態で分割した複数の第2データブロックのそれぞれに対応付けられて記録され、予め定められた長さのシンボル単位で複数の第2データブロックの誤り訂正を行うシンボル誤り訂正符号を記録した第2符号記録領域とを備え、バイナリ誤り訂正符号が付加された第1データブロックの総ビット数当たりの、バイナリ誤り訂正符号により訂正可能なビット誤り個数は、シンボル誤り訂正符号が付加された第2データブロックの総ビット数当たりの、シンボル誤り訂正符号により訂正可能なビット誤り個数より大きいことを特徴とするデータ記録媒体を提供する。
なお上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではなく、これらの特徴群のサブコンビネーションも又発明となりうる。
【0008】
【発明の実施の形態】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲に記載された発明を限定するものではなく、又実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【0009】
図1は、通信システム10の機能ブロック図を示す。通信システム10は、通信装置11Aと、通信装置11Bとを備え、入力データ系列を符号化し、誤り訂正を行う。すなわち、通信装置11Aは、入力データ系列を受け取り、誤り訂正に用いる符号を付加し、符号化データ系列として伝送路を介して通信装置11Bに送信する。通信装置11Bは、誤り訂正符号を用いることにより符号化データ系列を誤り訂正する。
【0010】
従って、通信システム10は、伝送路中に雑音等がある場合においても、元の入力データ系列に近いデータを送受信することができる。特に、通信システム10は、リードソロモン誤り訂正符号と、バイナリ誤り訂正符号を所定の条件で組み合わせることにより、小さなパリティオーバーヘッドで符号化利得が大きく、ランダム・バースト両方の誤りに効果的であり、かつ復号が比較的簡便な構成の誤り訂正符号を付加することができる。
【0011】
通信装置11Aは、符号化装置100と、送信部150とを備える。符号化装置100は、第1符号追加部110と、第2符号追加部120とを有する。第1符号追加部110は、入力データ系列を外部から受け取り、バイナリ誤り訂正符号を付加し、第2符号追加部120に送る。第2符号追加部120は、バイナリ誤り訂正符号が追加された入力データ系列に、シンボル誤り訂正符号であるリードソロモン誤り訂正符号を付加し、符号化データ系列として送信部150に送る。送信部150は、受け取った符号化データ系列を、伝送路を介して通信装置11Bに送信する。
【0012】
通信装置11Bは、受信部180と、復号化装置200とを備える。受信部180は、通信装置11Aから伝送路を介して符号化データ系列を受信すると、復号化装置200に送る。復号化装置200は、格納部210と、第1誤り訂正部220と、第2誤り訂正部230と、限界未満誤り訂正制御部240と、限界誤り訂正制御部250とを有する。格納部210は、受信部180から受け取った符号化データ系列を格納し、第1誤り訂正部220及び第2誤り訂正部230に参照させる。また、格納部210は、誤り訂正完了の通知を第1誤り訂正部220又は第2誤り訂正部230から受け取った場合に、格納している符号化データ系列を出力データ系列として外部に出力する。
【0013】
第1誤り訂正部220は、格納部210内の符号化データ系列を、バイナリ誤り訂正符号の最小距離復号により誤り訂正する。第2誤り訂正部230は、シンボル誤り訂正符号の最小距離復号により誤り訂正する。第1誤り訂正部220及び第2誤り訂正部230は、誤り訂正が完了した場合に、誤り訂正完了の通知を格納部210に送る。限界未満誤り訂正制御部240は、第1誤り訂正部220及び第2誤り訂正部230を用いて、第1誤り訂正部220及び第2誤り訂正部230の限界誤り訂正能力未満の誤り訂正を行い、誤り訂正が完了しない場合に、誤り訂正を継続する旨の指示を限界誤り訂正制御部250に送る。これを受けて、限界誤り訂正制御部250は、第1誤り訂正部220及び第2誤り訂正部230の限界訂正能力を用いて、格納部210内の符号化データ系列を誤り訂正する。
なお、通信装置11A及び通信装置11B双方の機能は、同一の通信装置内に設けられてもよい。
【0014】
このように、通信システム10は、入力データ系列を符号化することにより、伝送路にノイズがある場合等において、誤り訂正することができる。したがって、通信装置11Aは、通信装置11Bと適切に通信することができる。
【0015】
図2は、格納部210が格納する符号化データの一例を示す図である。格納部210は、本発明にかかるデータ記録媒体の一例であり、入力データ系列を記録するデータ系列記録領域500と、第1符号記録領域510と、第2符号記録領域520と、パリティオンパリティ530とを含む。
【0016】
データ系列記録領域500は、入力データ系列を予め定められた長さに分割することにより生成される第1データブロック502を記録する。本実施形態において、第1符号追加部110は、複数の第1データブロック502のそれぞれが入力データ系列の連続部分となるように入力データ系列を分割し、第1データブロック502−1から第1データブロック502―Pを順次生成する。他の例として、第1符号追加部110は、複数の第1データブロック502それぞれが入力データ系列の連続部分とならないように分割してもよい。
【0017】
第1符号記録領域510は、第1データブロック502−1〜Pそれぞれに対応づけて記録され、第1データブロック502−1〜Pそれぞれの誤り訂正に用いられるバイナリ誤り訂正符号パリティ512−1〜Pを記録する。すなわち、第1符号追加部110は、第1データブロック502−1〜Pそれぞれに、バイナリ誤り訂正符号パリティ512−1〜Pを付加し、連接符号の内符号であるバイナリ誤り訂正符号504を形成する。例えば、バイナリ誤り訂正符号パリティ512−1は、第1データブロック502−1に対応付けられ、バイナリ誤り訂正符号504−1を形成し、同様に、バイナリ誤り訂正符号パリティ512−2は、第1データブロック502−2に対応付けられ、バイナリ誤り訂正符号504−2を形成する。
【0018】
また、第2データブロック506−1〜Qは、第1データブロック502とは異なる形態による入力データ系列の分割であり、第1データブロック502−1〜Pのそれぞれから一部のデータを選択することによる構成される。例えば、第2データブロック506−1〜Qは、一部のデータとして、シンボル550の長さのデータを選択することにより構成されてもよいし、複数個のシンボル550等の、シンボル550とは異なる長さのデータを選択することにより構成されてもよい。
【0019】
第2符号記録領域520は、複数の第2データブロック506−1〜Qのそれぞれに対応付けられて記録され、第2データブロック506−1〜Qにシンボル550単位で誤り訂正を行うリードソロモン誤り訂正符号パリティ522−1〜Qを記録する。すなわち、第2符号追加部120は、第2データブロック506−1〜Qそれぞれに、リードソロモン誤り訂正符号パリティ522−1〜Qを付加し、連接符号の外符号であるリードソロモン誤り訂正符号508−1〜Qを形成する。例えば、リードソロモン誤り訂正符号パリティ522−1は、第2データブロック506−1に対応付けられ、リードソロモン誤り訂正符号508−1を形成する。同様に、リードソロモン誤り訂正符号パリティ522−2は、第2データブロック506−2に対応付けられ、リードソロモン誤り訂正符号508−2を形成する。
なお、通信システム10は、リードソロモン誤り訂正符号508及びバイナリ誤り訂正符号504の構成を入れ換えた構成の符号を付加してもよい。例えば、通信システム10は、外符号としてバイナリ誤り訂正符号を付加し、内符号としてリードソロモン誤り訂正符号を付加してもよい。
【0020】
このように、通信システム10は、入力データ系列を、第1データブロック502及び第2データブロック506の双方により異なる形態で分割し、それぞれの分割に対して誤り訂正符号を付加し、格納部210等の記録媒体に記録する。したがって、通信システム10は、第1データブロック502及び第2データブロック506の双方の性質を効果的に利用して、入力データ系列の誤りを訂正することができる。なお、通信システム10は、誤り訂正を効果的に行うために、リードソロモン誤り訂正符号パリティ522に対する誤り訂正符号であるバイナリ誤り訂正符号パリティ512である、パリティオンパリティ530を更に用いてもよい。また、他の例として、内符号及び外符号の構成要件に応じて、例えば、第1データブロックの総ビット数であるkがシンボルのビット数であるmの整数倍でない場合に、通信システム10は、パリティオンパリティ530として、バイナリ誤り訂正符号パリティ512と第1データブロック502の一部に対する誤り訂正符号であるリードソロモン誤り訂正符号パリティ522を更に用いてもよい。
続いて、以上で説明した誤り訂正符号の具体例を示す。
【0021】
例えば、バイナリ誤り訂正符号パリティ512が付加された第1データブロック502であるバイナリ誤り訂正符号504の総ビット数当たりの、バイナリ誤り訂正符号パリティ512により訂正可能なビット誤り個数は、リードソロモン誤り訂正符号パリティ522が付加された第2データブロック506であるリードソロモン誤り訂正符号508の総ビット数当たりの、リードソロモン誤り訂正符号パリティ522により訂正可能なビット誤り個数より大きい。
【0022】
より詳しくは、第1符号追加部110及び第2符号追加部120は、バイナリ誤り訂正符号504の総ビット数をnビット、複数のバイナリ誤り訂正符号504間の符号間の最小符号間距離(例えば、ハミング距離)をdとし、リードソロモン誤り訂正符号508の長さをNシンボル、第2データブロック506の符号間の最小符号間距離をDとし、シンボルの総ビット数をmビットとした場合に、以下の式
【数3】
を満たすバイナリ誤り訂正符号パリティ512及びリードソロモン誤り訂正符号パリティ522を入力データ系列に付加する。
ここで、nはmよりも2倍以上大きいことが効果的な誤り訂正の観点からは望ましい(例えば、nは、mに対して2以上の整数倍)。バイナリ誤り訂正符号504の総ビット数が典型的なリードソロモン誤り訂正符号508のシンボル550の長さ程度(m=8)では、1ビット誤りを訂正する為にも大きなパリティオ
ーバーヘッドが必要となってしまう。また、シンボル550の長さmが大きなリードソロモン誤り訂正符号508は、ランダム誤りを訂正する観点からは、効率が悪い。
第1誤り訂正部220及び第2誤り訂正部230は、同様に、上記の式を満たすバイナリ誤り訂正符号504及びリードソロモン誤り訂正符号508により入力データ系列の誤りを訂正する。
【0023】
リードソロモン誤り訂正符号508は、例えば、GF(28)で定義される、(N,K,D)=(255,239,17)である、8ビットをシンボルとするシンボル誤り訂正符号である。ただし、Nは符号長(リードソロモン誤り訂正符号508の長さ)、Kは符号化前のデータの信号長(第2データブロック506の長さ)、Dは最小符号間距離をそれぞれ示す。
本例のように、通信システム10は、最小符号間距離の大きなシンボル誤り訂正符号を用いることにより、エスケープパターンを生じにくくすることができる。
【0024】
バイナリ誤り訂正符号504は、例えば、(n,k,d)=(128,113,6)である、2ビット誤り訂正機能及び誤り訂正可能なビット数より大きい3ビットの誤り検出機能、もしくは4ビットバイト誤り訂正機能を有するバイナリ符号である。ただし、nは符号長(バイナリ誤り訂正符号504の総ビット数)、kは符号化前のデータの信号長(第1データブロック502の総ビット数)、dは最小符号間距離をそれぞれ示す。
このバイナリ誤り訂正符号パリティ512は、比較的小さいパリティオーバーヘッドでランダムなビット誤りを訂正可能である。また、バイナリ誤り訂正符号504は、誤り検出機能により誤りを検出した場合において、たとえ誤り訂正可能と判断されても、誤りを訂正しなくてもよい。この場合、特に、検出された誤りビット数がバイナリ誤り訂正符号504による誤り訂正能力の限界に近い場合において、バイナリ誤り訂正符号504は、誤訂正の可能性を抑えることができる。さらに、リードソロモン誤り訂正符号508は、バイナリ誤り訂正符号504による誤り検出の情報を用いて、効果的に誤りを訂正することができる。
また、通信システム10は、バイナリ誤り訂正符号504として、GF(28)上の元を128個用いて、(n,k,d)=(128,112,6)であるバイナリ符号を構成することも可能である。通信システム10は、例えば、odd parityの元のみを選択することにより最小符号間距離dを6とすることが可能である。
他の例として、バイナリ誤り訂正符号504は、バースト誤り検出機能やバースト誤り訂正機能を備えてもよい。この場合、バイナリ誤り訂正符号パリティ504は、バースト誤りがバイト境界を跨いだ場合においても、適切に誤りを訂正又は検出することができ、復号時の誤訂正を避ける可能性を高め、より効果的に誤り訂正させることができる。
【0025】
図3は、符号化装置100の動作フローを示す図である。第1符号追加部110は、入力データ系列にバイナリ誤り訂正符号パリティを付加する(S100)。そして、第2符号追加部120は、バイナリ誤り訂正符号が付加された入力データ系列にリードソロモン誤り訂正符号を付加する(S110)。
【0026】
バイナリ誤り訂正符号及びリードソロモン誤り訂正符号は、図2で説明したような性質を持ち、全体として比較的小さいオーバーヘッドで効果的な誤り訂正を行うことができる。なお、本図で説明した符号化の他の例として、符号化装置100は、バイナリ誤り訂正符号の付加より先に、リードソロモン誤り訂正符号を付加してもよい。
【0027】
図4は、復号化装置200の動作フロー例を示す図である。復号化装置200は、外部から受信した符号化データ系列に対して、以下に示す復号化を行う。まず、限界未満誤り訂正制御部240は、第1誤り訂正部220によるバイナリ誤り訂正符号504の限界訂正能力未満の訂正を硬判定方式により行わせる(S200)。例えば、図2で示した例の場合、バイナリ誤り訂正符号504が2ビット誤り訂正可能なので、限界未満誤り訂正制御部240は、2ビット未満である1ビット誤り訂正を第1誤り訂正部220により行わせる。
第1誤り訂正部220は、ランダム誤り訂正に加え、バースト誤り訂正を行ってもよい。この場合、復号化装置200は、バースト誤りを含むことの多い符号化データ系列を入力とした時に、繰り返し復号の最初のステップであるS200において、第1誤り訂正部220によりバースト誤りを効果的に訂正することができる。
さらに、第1誤り訂正部220は、符号化データ系列が大規模なバースト誤りを含むと判断された場合に、バースト誤り検出のみを行ってもよい。この場合、第1誤り訂正部220は、バースト誤り訂正による誤訂正を防止することができる。
【0028】
第1誤り訂正部220は、符号化データ系列の誤り訂正を完了したと判断した場合に(S210:YES)、処理を終了する。続いて、第1誤り訂正部220が符号化データ系列の誤り訂正を完了していないと判断した場合に(S210:NO)、限界未満誤り訂正制御部240は、第2誤り訂正部230によるリードソロモン誤り訂正符号508の限界訂正能力未満の訂正を硬判定方式により行わせる(S220)。第2誤り訂正部230は、誤り訂正を完了したと判断した場合に(S230:YES)、処理を終了する。
【0029】
第2誤り訂正部230が誤り訂正を完了していないと判断した場合に(S230:NO)、限界未満誤り訂正制御部240は、S200〜S230までの限界未満の訂正能力による誤り訂正の繰り返し回数が所定回数に達したか否かを判断する(S240)。限界未満誤り訂正制御部240が、S200〜S230までの限界未満の訂正能力による誤り訂正の繰り返し回数が所定回数に達していないと判断した場合に(S240:NO)、復号化装置200は、S200に戻り処理を継続する。
【0030】
限界未満誤り訂正制御部240が、S200〜S230までの限界未満の訂正能力による誤り訂正の繰り返し回数が所定回数に達したと判断した場合に(S240:YES)、限界誤り訂正制御部250は、第1誤り訂正部220によるバイナリ誤り訂正符号504の限界訂正能力の訂正を硬判定方式により行わせる(S250)。例えば、限界誤り訂正制御部250は、第1誤り訂正部220により、ランダム誤り訂正に加え、更にバースト誤り訂正を行ってもよい。第1誤り訂正部220は、S200においてバースト誤り検出のみを行った場合に、S250において、バースト誤り訂正を行ってもよい。続いて、第1誤り訂正部220は、符号化データ系列の誤り訂正を完了したと判断した場合に(S260:YES)、処理を終了する。
【0031】
第1誤り訂正部220が符号化データ系列の誤り訂正を完了していないと判断した場合に(S260:NO)、限界誤り訂正制御部250は、限界の訂正能力による誤り訂正の繰り返し回数が所定回数に達したか否かを判断する(S270)。限界誤り訂正制御部250が、限界の訂正能力による誤り訂正の繰り返し回数が所定回数に達したと判断した場合に(S270:YES)、第2誤り訂正部230は、バイナリ誤り訂正符号504を用いた誤り検出の結果に基づき、第2データブロック506を消失訂正復号することが可能である(S280)。
【0032】
限界誤り訂正制御部250は、限界の訂正能力による誤り訂正の繰り返し回数が所定回数に達していないと判断した場合に(S270:NO)、第2誤り訂正部230によるリードソロモン誤り訂正符号508の限界訂正能力の訂正を硬判定方式により行わせる(S290)。続いて、第2誤り訂正部230は、符号化データ系列の誤り訂正を完了していないと判断した場合に(S300:NO)、S250に戻り処理を継続し、符号化データ系列の誤り訂正を完了したと判断した場合に(S300:YES)、処理を終了する。なお、所定回数は、繰り返し復号による総演算量と、符号化利得のトレードオフにより決定される。すなわち、復号化装置200は、利用者の設定に応じた所定回数により、復号に要する時間と、符号化利得を調節してもよい。
【0033】
このように、通信システム10は、誤り訂正の前半部分においては、限界未満の誤り訂正能力を用いる。そして、通信システム10は、外符号及び内符号の双方による限界未満の誤り訂正能力により十分誤り訂正を行った後に、誤り訂正の限界能力を用いる。したがって、訂正能力以上の誤りを含む可能性がある符号化データ系列の誤りを訂正する場合に、通信システム10は、誤り訂正の前半部分における誤訂正を防ぎ、内符号及び外符号の特性を生かした効果的な誤り訂正を行うことができる。
なお、誤り訂正の他の例として、復号化装置200は、本図に示した後半部分のみを処理してもよい。すなわち、復号化装置200は、誤り訂正の限界能力を用いた誤り訂正のみを行ってもよい。このような形態においても、図2に示した連接符号を用いることで、復号化装置200は、硬判定方式の繰り返し復号により、効果的に誤り訂正を行うことができる。
【0034】
図5は、通信システム10のハードウェア構成の一例を示す図である。本実施形態に係る通信システム10は、ホストコントローラ1082により相互に接続されるCPU1000、RAM1020、グラフィックコントローラ1075、及び表示装置1080を有するCPU周辺部と、入出力コントローラ1084によりホストコントローラ1082に接続される通信インターフェイス1030、ハードディスクドライブ1040、及びCD−ROMドライブ1060を有する入出力部と、入出力コントローラ1084に接続されるROM1010、フレキシブルディスクドライブ1050、及び入出力チップ1070を有するレガシー入出力部とを備える。
【0035】
ホストコントローラ1082は、RAM1020と、高い転送レートでRAM1020をアクセスするCPU1000及びグラフィックコントローラ1075とを接続する。CPU1000は、ROM1010及びRAM1020に格納されたプログラムに基づいて動作し、各部の制御を行う。グラフィックコントローラ1075は、CPU1000等がRAM1020内に設けたフレームバッファ上に生成する画像データを取得し、表示装置1080上に表示させる。これに代えて、グラフィックコントローラ1075は、CPU1000等が生成する画像データを格納するフレームバッファを、内部に含んでもよい。
【0036】
入出力コントローラ1084は、ホストコントローラ1082と、比較的高速な入出力装置である通信インターフェイス1030、ハードディスクドライブ1040、及びCD−ROMドライブ1060を接続する。通信インターフェイス1030は、ネットワークを介して他の装置と通信する。ハードディスクドライブ1040は、通信システム10が使用するプログラム及びデータを格納する。CD−ROMドライブ1060は、CD−ROM1095からプログラム又はデータを読み取り、RAM1020を介して入出力チップ1070に提供する。
【0037】
また、入出力コントローラ1084には、ROM1010と、フレキシブルディスクドライブ1050や入出力チップ1070等の比較的低速な入出力装置とが接続される。ROM1010は、通信システム10の起動時にCPU1000が実行するブートプログラムや、通信システム10のハードウェアに依存するプログラム等を格納する。フレキシブルディスクドライブ1050は、フレキシブルディスク1090からプログラム又はデータを読み取り、RAM1020を介して入出力チップ1070に提供する。入出力チップ1070は、フレキシブルディスク1090や、例えばパラレルポート、シリアルポート、キーボードポート、マウスポート等を介して各種の入出力装置を接続する。また、入出力チップ1070は、使用者の入力に対応するデータを、入力装置から受信し、通信システム10で実行されるプログラムに与える。
【0038】
通信システム10に提供されるプログラムは、フレキシブルディスク1090、CD−ROM1095、又はICカード等の記録媒体に格納されて利用者によって提供される。プログラムは、記録媒体から読み出され、通信システム10にインストールされ、実行される。また、通信システム10は、符号化装置100により生成された符号化データ系列を、記録媒体に記録し、利用者に提供してもよい。
【0039】
通信システム10を実現するプログラムは、第1符号追加モジュールと、第2符号追加モジュールと、送信モジュールと、受信モジュールと、格納モジュールと、第1誤り訂正モジュールと、第2誤り訂正モジュールと、限界未満誤り訂正モジュールと、限界誤り訂正モジュールとを備える。これらのモジュールは、通信システム10を、第1符号追加部110、第2符号追加部120、送信部150、受信部180、格納部210、第1誤り訂正部220、第2誤り訂正部230、限界未満誤り訂正制御部240、及び限界誤り訂正制御部250として動作させるプログラムである。
【0040】
以上に示したプログラム又はモジュールは、外部の記憶媒体に格納されてもよい。記憶媒体としては、フレキシブルディスク1090、CD−ROM1095の他に、DVDやPD等の光学記録媒体、MD等の光磁気記録媒体、テープ媒体、ICカード等の半導体メモリ等を用いることができる。また、専用通信ネットワークやインターネットに接続されたサーバシステムに設けたハードディスク又はRAM等の記憶装置を記録媒体として使用し、ネットワークを介してプログラムを通信システム10に提供してもよい。また、これらのプログラム又はモジュールは、ASIC等の集積回路に実装されてもよいし、ファームウェアとして実装されてもよい。
【0041】
上記説明から明らかなように、通信システム10は、外符号及び内符号が相補的な性質を持つ連接符号を、入力データ系列に付加する。従って、通信システム10は、比較的小さなパリティオーバーヘッドで大きい符号化利得を得ることができ、誤り訂正を効果的に行うことができる。更に、通信システム10は、バースト誤りによる誤訂正の影響を抑えるとともに、硬判定方式の最小距離復号の繰り返しにより誤り訂正できるので、簡素な回路により高速に動作できる。さらに、通信システム10は、リードソロモン符号を用いる既存の装置や既存の規格との親和性の高い連接符号を用いるので、設計及び生産の容易な回路により実現できる。
【0042】
以上、本発明を実施形態を用いて説明したが、本発明の技術的範囲は上記実施形態に記載の範囲には限定されない。上記実施形態に、多様な変更または改良を加えることができる。そのような変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【0043】
【発明の効果】
上記説明から明らかなように、本発明によれば、BERが小さい領域においても、伝送路等のノイズによるランダムなビット誤りならびにバースト誤りを訂正可能であり、かつ少ない繰り返し回数でも十分な符号化利得が得られる通信装置等を提供することができる。
【図面の簡単な説明】
【図1】 図1は、通信システム10の機能ブロック図。
【図2】 図2は、格納部210が格納する符号化データの一例を示す図。
【図3】 図3は、符号化装置100の動作フローを示す図。
【図4】 図4は、復号化装置200の動作フローを示す図。
【図5】 図5は、通信システム10のハードウェア構成の一例を示す図。
【符号の説明】
10 通信システム
11A〜B 通信装置
100 符号化装置
110 第1符号追加部
120 第2符号追加部
150 送信部
180 受信部
200 復号化装置
210 格納部
220 第1誤り訂正部
230 第2誤り訂正部
240 限界未満誤り訂正制御部
250 限界誤り訂正制御部
500 データ系列記録領域
502 第1データブロック
502−1〜P 第1データブロック
504 バイナリ誤り訂正符号
504−1〜P バイナリ誤り訂正符号
506 第2データブロック
506−1〜Q 第2データブロック
508 リードソロモン誤り訂正符号
508−1〜Q リードソロモン誤り訂正符号
510 第1符号記録領域
512 バイナリ誤り訂正符号パリティ
512−1〜P バイナリ誤り訂正符号パリティ
520 第2符号記録領域
522 リードソロモン誤り訂正符号パリティ
522−1〜Q リードソロモン誤り訂正符号パリティ
530 パリティオンパリティ
550 シンボル
Claims (29)
- 入力データ系列に誤り訂正符号パリティを付加する符号化装置であって、
前記入力データ系列を分割した複数の第1データブロックのそれぞれに、バイナリ誤り訂正符号パリティを付加する第1符号追加部と、
前記入力データ系列を、前記複数の第1データブロックとは異なる形態で分割した複数の第2データブロックのそれぞれに、予め定められた長さのシンボル単位で誤り訂正を行うシンボル誤り訂正符号パリティを付加する第2符号追加部と
を備え、
前記バイナリ誤り訂正符号パリティが付加された前記第1データブロックの総ビット数当たりの、訂正可能なビット誤り個数は、前記シンボル誤り訂正符号パリティが付加された前記第2データブロックの総ビット数当たりの、訂正可能なビット誤り個数より大きく、
前記バイナリ誤り訂正符号パリティ及び前記シンボル誤り訂正符号パリティは、前記バイナリ誤り訂正符号パリティが付加された前記第1データブロックの総ビット数をnビット、当該第1データブロックの符号間の最小符号間距離をdとし、前記シンボル誤り訂正符号パリティが付加された前記第2データブロックの長さをNシンボル、当該第2データブロックの符号間の最小符号間距離をDとし、前記シンボルの総ビット数をmビットとした場合に、nはmの整数倍であり、かつ以下の式
- 前記第2符号追加部は、前記第2データブロックに対して、前記シンボル誤り訂正符号パリティとして、リードソロモン符号パリティを付加することを特徴とする請求項1記載の符号化装置。
- 前記第1符号追加部は、前記第1データブロックに対して、前記バイナリ誤り訂正符号パリティとして、バースト誤り検出機能を更に有する符号を付加することを特徴とする請求項1記載の符号化装置。
- 誤り訂正符号パリティが付加された符号化データ系列を誤り訂正する復号化装置であって、
前記符号化データ系列を格納する格納部と、
前記符号化データ系列を分割した複数の第1データブロックのそれぞれを、バイナリ誤り訂正符号の最小距離復号により誤り訂正を行う第1誤り訂正部と、
前記符号化データ系列を、前記複数の第1データブロックとは異なる形態で分割した複数の第2データブロックのそれぞれを、予め定められた長さのシンボル単位で誤り訂正を行うシンボル誤り訂正符号の最小距離復号により誤り訂正を行う第2誤り訂正部と
を備え、
前記第1データブロックの総ビット数当たりの、前記バイナリ誤り訂正符号により訂正可能なビット誤り個数は、前記第2データブロックの総ビット数当たりの、前記シンボル誤り訂正符号により訂正可能なビット誤り個数より大きく、
前記バイナリ誤り訂正符号及び前記シンボル誤り訂正符号は、前記第1データブロックの総ビット数をnビット、当該第1データブロックの符号間の最小符号間距離をdとし、前記第2データブロックの長さをNシンボル、当該第2データブロックの符号間の最小符号間距離をDとし、前記シンボルの総ビット数をmビットとした場合に、nはmの整数倍であり、かつ以下の式
- 前記第2誤り訂正部は、前記第2データブロックのそれぞれを、前記シンボル誤り訂正符号であるリードソロモン符号により誤り訂正を行うことを特徴とする請求項4記載の復号化装置。
- 前記第1誤り訂正部は、前記第1データブロックのそれぞれを、バースト誤り検出機能を更に有する前記バイナリ誤り訂正符号により誤り訂正を行うことを特徴とする請求項4記載の復号化装置。
- 前記第1誤り訂正部による前記符号化データ系列の誤り訂正を行わせ、前記第1誤り訂正部により誤り訂正が完了しなかったと判断した場合に、前記第2誤り訂正部による前記符号化データ系列の誤り訂正を更に行わせる誤り訂正制御部を更に備える請求項4記載の復号化装置。
- 誤り訂正符号が付加された符号化データ系列を誤り訂正する復号化装置であって、
前記符号化データ系列を格納する格納部と、
前記符号化データ系列を分割した複数の第1データブロックのそれぞれを、バイナリ誤り訂正符号の最小距離復号により誤り訂正を行う第1誤り訂正部と、
前記符号化データ系列を、前記複数の第1データブロックとは異なる形態で分割した複数の第2データブロックのそれぞれを、予め定められた長さのシンボル単位で誤り訂正を行うシンボル誤り訂正符号の最小距離復号により誤り訂正を行う第2誤り訂正部と、
前記バイナリ誤り訂正符号の誤り訂正限界能力より小さい距離の誤り訂正及び前記シンボル誤り訂正符号の訂正限界能力より小さい距離の誤り訂正を、前記第1誤り訂正部及び前記第2誤り訂正部により行わせる限界未満誤り訂正制御部と、
前記限界未満誤り訂正制御部により誤りが訂正されないと判断した場合に、前記バイナリ誤り訂正符号の誤り訂正限界能力及び前記シンボル誤り訂正符号による誤り訂正限界能力を用いた誤り訂正を、前記第1誤り訂正部及び前記第2誤り訂正部により行わせる限界誤り訂正制御部と
を備えることを特徴とする復号化装置。 - 前記バイナリ誤り訂正符号は、更に、バースト誤り検出機能及びバースト誤り訂正機能を有し、
前記限界未満誤り訂正制御部は、更に、バースト誤り検出を前記第1誤り訂正部に行わせ、
前記限界誤り訂正制御部は、更に、バースト誤り訂正を前記第1誤り訂正部に行わせることを特徴とする請求項8記載の復号化装置。 - 前記限界未満誤り訂正制御部は、前記訂正限界能力より小さい距離の誤り訂正を、予め定められた回数、前記第1誤り訂正部及び前記第2誤り訂正部により行わせ、
前記限界誤り訂正制御部は、前記予め定められた回数の前記訂正限界能力より小さい距離の誤り訂正により誤りが訂正されないと判断した場合に、前記誤り訂正限界能力を用いた誤り訂正を前記第1誤り訂正部及び前記第2誤り訂正部により行わせることを特徴とする請求項8記載の復号化装置。 - 入力データ系列に誤り訂正符号パリティを付加する符号化方法であって、
前記入力データ系列を分割した複数の第1データブロックのそれぞれに、バイナリ誤り訂正符号パリティを付加する第1符号追加ステップと、
前記入力データ系列を、前記複数の第1データブロックとは異なる形態で分割した複数の第2データブロックのそれぞれに、予め定められた長さのシンボル単位で誤り訂正を行うシンボル誤り訂正符号パリティを付加する第2符号追加ステップと
を備え、
前記バイナリ誤り訂正符号パリティが付加された前記第1データブロックの総ビット数当たりの、訂正可能なビット誤り個数は、前記シンボル誤り訂正符号パリティが付加された前記第2データブロックの総ビット数当たりの、訂正可能なビット誤り個数より大きく、
前記バイナリ誤り訂正符号パリティ及び前記シンボル誤り訂正符号パリティは、前記バイナリ誤り訂正符号パリティが付加された前記第1データブロックの総ビット数をnビット、当該第1データブロックの符号間の最小符号間距離をdとし、前記シンボル誤り訂正符号パリティが付加された前記第2データブロックの長さをNシンボル、当該第2データブロックの符号間の最小符号間距離をDとし、前記シンボルの総ビット数をmビットとした場合に、nはmの整数倍であり、かつ以下の式
- 誤り訂正符号パリティが付加された符号化データ系列を誤り訂正する復号化方法であって、
前記符号化データ系列を格納する格納ステップと、
前記符号化データ系列を分割した複数の第1データブロックのそれぞれを、バイナリ誤り訂正符号の最小距離復号により誤り訂正を行う第1誤り訂正ステップと、
前記符号化データ系列を、前記複数の第1データブロックとは異なる形態で分割した複数の第2データブロックのそれぞれを、予め定められた長さのシンボル単位で誤り訂正を行うシンボル誤り訂正符号の最小距離復号により誤り訂正を行う第2誤り訂正ステップとを備え、
前記第1データブロックの総ビット数当たりの、前記バイナリ誤り訂正符号により訂正可能なビット誤り個数は、前記第2データブロックの総ビット数当たりの、前記シンボル誤り訂正符号により訂正可能なビット誤り個数より大きく、
前記バイナリ誤り訂正符号及び前記シンボル誤り訂正符号は、前記第1データブロックの総ビット数をnビット、当該第1データブロックの符号間の最小符号間距離をdとし、前記第2データブロックの長さをNシンボル、当該第2データブロックの符号間の最小符号間距離をDとし、前記シンボルの総ビット数をmビットとした場合に、nはmの整数倍であり、かつ以下の式
- 誤り訂正符号が付加された符号化データ系列を誤り訂正する復号化方法であって、
前記符号化データ系列を格納する格納ステップと、
前記符号化データ系列を分割した複数の第1データブロックのそれぞれを、バイナリ誤り訂正符号の誤り訂正限界未満の能力により、最小距離復号の誤り訂正を行う第1限界未満誤り訂正ステップと、
前記符号化データ系列を、前記複数の第1データブロックとは異なる形態で分割した複数の第2データブロックのそれぞれを、予め定められた長さのシンボル単位で誤り訂正を行うシンボル誤り訂正符号の誤り訂正限界未満の能力により、最小距離復号の誤り訂正を行う第2限界未満誤り訂正ステップと、
前記第1限界未満誤り訂正ステップ及び前記第2限界未満誤り訂正ステップにより、前記符号化データ系列の誤りが訂正されたか否かを判断する判断ステップと、
前記符号化データ系列の誤りが訂正されていないと判断された場合に、前記符号化データ系列を、前記バイナリ誤り訂正符号及び前記シンボル誤り訂正符号それぞれの誤り訂正限界の能力により、最小距離復号の誤り訂正を行う限界誤り訂正ステップと
を備えることを特徴とする復号化方法。 - 入力データ系列に誤り訂正符号パリティをコンピュータにより付加させるプログラムであって、
前記入力データ系列を分割した複数の第1データブロックのそれぞれに、バイナリ誤り訂正符号パリティを付加する第1符号追加部と、
前記入力データ系列を、前記複数の第1データブロックとは異なる形態で分割した複数の第2データブロックのそれぞれに、予め定められた長さのシンボル単位で誤り訂正を行うシンボル誤り訂正符号パリティを付加する第2符号追加部と
を前記コンピュータにより実現し、
前記バイナリ誤り訂正符号パリティが付加された前記第1データブロックの総ビット数当たりの、訂正可能なビット誤り個数は、前記シンボル誤り訂正符号パリティが付加された前記第2データブロックの総ビット数当たりの、訂正可能なビット誤り個数より大きく、
前記バイナリ誤り訂正符号パリティ及び前記シンボル誤り訂正符号パリティは、前記バイナリ誤り訂正符号パリティが付加された前記第1データブロックの総ビット数をnビット、当該第1データブロックの符号間の最小符号間距離をdとし、前記シンボル誤り訂正符号パリティが付加された前記第2データブロックの長さをNシンボル、当該第2データブロックの符号間の最小符号間距離をDとし、前記シンボルの総ビット数をmビットとした場合に、nはmの整数倍であり、かつ以下の式
- 前記第2符号追加部は、前記第2データブロックに対して、前記シンボル誤り訂正符号パリティとして、リードソロモン符号パリティを付加することを特徴とする請求項14記載のプログラム。
- 前記第1符号追加部は、前記第1データブロックに対して、前記バイナリ誤り訂正符号パリティとして、バースト誤り検出機能を更に有する符号を付加することを特徴とする請求項14記載のプログラム。
- 誤り訂正符号が付加された符号化データ系列をコンピュータにより誤り訂正させるプログラムであって、
前記符号化データ系列を格納する格納部と、
前記符号化データ系列を分割した複数の第1データブロックのそれぞれを、バイナリ誤り訂正符号の最小距離復号により誤り訂正を行う第1誤り訂正部と、
前記符号化データ系列を、前記複数の第1データブロックとは異なる形態で分割した複数の第2データブロックのそれぞれを、予め定められた長さのシンボル単位で誤り訂正を行うシンボル誤り訂正符号の最小距離復号により誤り訂正を行う第2誤り訂正部と
を前記コンピュータにより実現し、
前記第1データブロックの総ビット数当たりの、前記バイナリ誤り訂正符号により訂正可能なビット誤り個数は、前記第2データブロックの総ビット数当たりの、前記シンボル誤り訂正符号により訂正可能なビット誤り個数より大きく、
前記バイナリ誤り訂正符号及び前記シンボル誤り訂正符号は、前記第1データブロックの総ビット数をnビット、当該第1データブロックの符号間の最小符号間距離をdとし、前記第2データブロックの長さをNシンボル、当該第2データブロックの符号間の最小符号間距離をDとし、前記シンボルの総ビット数をmビットとした場合に、nはmの整数倍であり、かつ以下の式
- 前記第2誤り訂正部は、前記第2データブロックのそれぞれを、前記シンボル誤り訂正符号であるリードソロモン符号により誤り訂正を行うことを特徴とする請求項17記載のプログラム。
- 前記第1誤り訂正部は、前記第1データブロックのそれぞれを、バースト誤り検出機能を更に有する前記バイナリ誤り訂正符号により誤り訂正を行うことを特徴とする請求項17記載のプログラム。
- 当該プログラムは、前記コンピュータを、前記第1誤り訂正部による前記符号化データ系列の誤り訂正を行わせ、前記第1誤り訂正部により誤り訂正が完了しなかったと判断した場合に、前記第2誤り訂正部による前記符号化データ系列の誤り訂正を更に行わせる誤り訂正制御部として更に機能させる請求項17記載のプログラム。
- 誤り訂正符号が付加された符号化データ系列をコンピュータにより誤り訂正させるプログラムであって、
前記符号化データ系列を格納する格納部と、
前記符号化データ系列を分割した複数の第1データブロックのそれぞれを、バイナリ誤り訂正符号の最小距離復号により誤り訂正を行う第1誤り訂正部と、
前記符号化データ系列を、前記複数の第1データブロックとは異なる形態で分割した複数の第2データブロックのそれぞれを、予め定められた長さのシンボル単位で誤り訂正を行うシンボル誤り訂正符号の最小距離復号により誤り訂正を行う第2誤り訂正部と、
前記バイナリ誤り訂正符号の誤り訂正限界能力より小さい距離の誤り訂正及び前記シンボル誤り訂正符号の訂正限界能力より小さい距離の誤り訂正を、前記第1誤り訂正部及び前記第2誤り訂正部により行わせる限界未満誤り訂正制御部と、
前記限界未満誤り訂正制御部により誤りが訂正されないと判断した場合に、前記バイナリ誤り訂正符号の誤り訂正限界能力及び前記シンボル誤り訂正符号による誤り訂正限界能力を用いた誤り訂正を、前記第1誤り訂正部及び前記第2誤り訂正部により行わせる限界誤り訂正制御部と
を前記コンピュータにより実現させることを特徴とするプログラム。 - 前記バイナリ誤り訂正符号は、更に、バースト誤り検出機能及びバースト誤り訂正機能を有し、
前記限界未満誤り訂正制御部は、更に、バースト誤り検出を前記第1誤り訂正部に行わせ、
前記限界誤り訂正制御部は、更に、バースト誤り訂正を前記第1誤り訂正部に行わせることを特徴とする請求項21記載のプログラム。 - 前記限界未満誤り訂正制御部は、前記訂正限界能力より小さい距離の誤り訂正を、予め定められた回数、前記第1誤り訂正部及び前記第2誤り訂正部により行わせ、
前記限界誤り訂正制御部は、前記予め定められた回数の前記訂正限界能力より小さい距離の誤り訂正により誤りが訂正されないと判断した場合に、前記誤り訂正限界能力を用いた誤り訂正を前記第1誤り訂正部及び前記第2誤り訂正部により行わせることを特徴とする請求項21記載のプログラム。 - 入力データ系列に誤り訂正符号パリティをコンピュータにより付加させるプログラムを記録したプログラム記録媒体であって、
前記プログラムは、
前記入力データ系列を分割した複数の第1データブロックのそれぞれに、バイナリ誤り訂正符号パリティを付加する第1符号追加部と、
前記入力データ系列を、前記複数の第1データブロックとは異なる形態で分割した複数の第2データブロックのそれぞれに、予め定められた長さのシンボル単位で誤り訂正を行うシンボル誤り訂正符号パリティを付加する第2符号追加部と
を前記コンピュータにより実現し、
前記バイナリ誤り訂正符号パリティが付加された前記第1データブロックの総ビット数当たりの、訂正可能なビット誤り個数は、前記シンボル誤り訂正符号パリティが付加された前記第2データブロックの総ビット数当たりの、訂正可能なビット誤り個数より大きく、
前記バイナリ誤り訂正符号パリティ及び前記シンボル誤り訂正符号パリティは、前記バイナリ誤り訂正符号パリティが付加された前記第1データブロックの総ビット数をnビット、当該第1データブロックの符号間の最小符号間距離をdとし、前記シンボル誤り訂正符号パリティが付加された前記第2データブロックの長さをNシンボル、当該第2データブロックの符号間の最小符号間距離をDとし、前記シンボルの総ビット数をmビットとした場合に、nはmの整数倍であり、かつ以下の式
- 誤り訂正符号が付加された符号化データ系列をコンピュータにより誤り訂正させるプログラムを記録したプログラム記録媒体であって、
前記プログラムは、
前記符号化データ系列を格納する格納部と、
前記符号化データ系列を分割した複数の第1データブロックのそれぞれを、バイナリ誤り訂正符号の最小距離復号により誤り訂正を行う第1誤り訂正部と、
前記符号化データ系列を、前記複数の第1データブロックとは異なる形態で分割した複数の第2データブロックのそれぞれを、予め定められた長さのシンボル単位で誤り訂正を行うシンボル誤り訂正符号の最小距離復号により誤り訂正を行う第2誤り訂正部と
を前記コンピュータにより実現し、
前記第1データブロックの総ビット数当たりの、前記バイナリ誤り訂正符号により訂正可能なビット誤り個数は、前記第2データブロックの総ビット数当たりの、前記シンボル誤り訂正符号により訂正可能なビット誤り個数より大きく、
前記バイナリ誤り訂正符号及び前記シンボル誤り訂正符号は、前記第1データブロックの総ビット数をnビット、当該第1データブロックの符号間の最小符号間距離をdとし、前記第2データブロックの長さをNシンボル、当該第2データブロックの符号間の最小符号間距離をDとし、前記シンボルの総ビット数をmビットとした場合に、nはmの整数倍であり、かつ以下の式
- 誤り訂正符号が付加された符号化データ系列をコンピュータにより誤り訂正させるプログラムを記録したプログラム記録媒体であって、
前記プログラムは、
前記符号化データ系列を格納する格納部と、
前記符号化データ系列を分割した複数の第1データブロックのそれぞれを、バイナリ誤り訂正符号の最小距離復号により誤り訂正を行う第1誤り訂正部と、
前記符号化データ系列を、前記複数の第1データブロックとは異なる形態で分割した複数の第2データブロックのそれぞれを、予め定められた長さのシンボル単位で誤り訂正を行うシンボル誤り訂正符号の最小距離復号により誤り訂正を行う第2誤り訂正部と、
前記バイナリ誤り訂正符号の誤り訂正限界能力より小さい距離の誤り訂正及び前記シンボル誤り訂正符号の訂正限界能力より小さい距離の誤り訂正を、前記第1誤り訂正部及び前記第2誤り訂正部により行わせる限界未満誤り訂正制御部と、
前記限界未満誤り訂正制御部により誤りが訂正されないと判断した場合に、前記バイナリ誤り訂正符号の誤り訂正限界能力及び前記シンボル誤り訂正符号による誤り訂正限界能力を用いた誤り訂正を、前記第1誤り訂正部及び前記第2誤り訂正部により行わせる限界誤り訂正制御部と
を前記コンピュータにより実現させることを特徴とするプログラム記録媒体。 - 入力データ系列及び当該入力データ系列に付加した誤り訂正符号を記録したデータ記録媒体であって、
前記入力データ系列を記録したデータ系列記録領域と、
前記入力データ系列を分割した複数の第1データブロックそれぞれに対応づけて記録され、前記複数の第1データブロックそれぞれの誤り訂正に用いられるバイナリ誤り訂正符号パリティを記録した第1符号記録領域と、
前記入力データ系列を、前記複数の第1データブロックとは異なる形態で分割した複数の第2データブロックのそれぞれに対応付けられて記録され、予め定められた長さのシンボル単位で前記複数の第2データブロックの誤り訂正を行うシンボル誤り訂正符号パリティを記録した第2符号記録領域と
を備え、
前記バイナリ誤り訂正符号パリティが付加された前記第1データブロックの総ビット数当たりの、訂正可能なビット誤り個数は、前記シンボル誤り訂正符号パリティが付加された前記第2データブロックの総ビット数当たりの、訂正可能なビット誤り個数より大きく、
前記バイナリ誤り訂正符号及び前記シンボル誤り訂正符号は、前記第1データブロックの総ビット数をnビット、当該第1データブロックの符号間の最小符号間距離をdとし、前記第2データブロックの長さをNシンボル、当該第2データブロックの符号間の最小符号間距離をDとし、前記シンボルの総ビット数をmビットとした場合に、nはmの整数倍であり、かつ以下の式
- 前記第2符号記録領域は、前記第2データブロックの誤り訂正を行う前記シンボル誤り訂正符号パリティとして、前記第2データブロックのリードソロモン符号パリティを記録することを特徴とする請求項27記載のデータ記録媒体。
- 前記第1符号記録領域は、前記第1データブロックの誤り訂正を行う前記バイナリ誤り訂正符号パリティとして、バースト誤り検出機能を更に有する符号を記録することを特徴とする請求項27記載のデータ記録媒体。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002190742A JP3745709B2 (ja) | 2002-06-28 | 2002-06-28 | 符号化装置、復号化装置、符号化方法、復号化方法、プログラム、プログラム記録媒体、及びデータ記録媒体 |
US10/608,464 US7296209B2 (en) | 2002-06-28 | 2003-06-27 | Apparatus for encoding and decoding |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002190742A JP3745709B2 (ja) | 2002-06-28 | 2002-06-28 | 符号化装置、復号化装置、符号化方法、復号化方法、プログラム、プログラム記録媒体、及びデータ記録媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004040199A JP2004040199A (ja) | 2004-02-05 |
JP3745709B2 true JP3745709B2 (ja) | 2006-02-15 |
Family
ID=31700583
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002190742A Expired - Fee Related JP3745709B2 (ja) | 2002-06-28 | 2002-06-28 | 符号化装置、復号化装置、符号化方法、復号化方法、プログラム、プログラム記録媒体、及びデータ記録媒体 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7296209B2 (ja) |
JP (1) | JP3745709B2 (ja) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001048927A1 (en) * | 1999-12-24 | 2001-07-05 | Ensemble Communications, Inc. | Method and apparatus for concatenated channel coding |
KR100497357B1 (ko) * | 2002-06-26 | 2005-06-23 | 삼성전자주식회사 | 인터넷 프로토콜 기반 네트워크 환경에 있어서 헤더 압축및 패킷 다중화 장치와 그 방법 |
US7590923B1 (en) * | 2004-10-27 | 2009-09-15 | Marvell International Ltd. | Architecture and control of Reed-Solomon error identification and evaluation |
US8209582B1 (en) * | 2006-11-07 | 2012-06-26 | Marvell International Ltd. | Systems and methods for optimizing a product code structure |
KR100852193B1 (ko) | 2007-05-02 | 2008-08-13 | 삼성전자주식회사 | 오류 제어 코드 장치 및 그 방법 |
KR20080100750A (ko) * | 2007-05-14 | 2008-11-19 | 삼성전자주식회사 | 데이터 읽기 장치 및 그 방법 |
CN101946230B (zh) * | 2008-02-14 | 2013-11-27 | 惠普开发有限公司 | 用于检测和校正所接收的符号串中的定相突发差错、删除、符号差错和位差错的方法和*** |
US8145975B2 (en) * | 2008-02-28 | 2012-03-27 | Ip Video Communications Corporation | Universal packet loss recovery system for delivery of real-time streaming multimedia content over packet-switched networks |
JP5628670B2 (ja) * | 2008-06-30 | 2014-11-19 | 国立大学法人愛媛大学 | 復号化装置、垂直磁気記録再生装置、受信装置、および、復号化方法 |
JP5309889B2 (ja) * | 2008-10-27 | 2013-10-09 | ソニー株式会社 | データ処理装置および方法、並びにプログラム |
US8307258B2 (en) * | 2009-05-18 | 2012-11-06 | Fusion-10, Inc | Apparatus, system, and method for reconfiguring an array to operate with less storage elements |
US8756473B1 (en) * | 2010-12-23 | 2014-06-17 | Sk Hynix Memory Solutions Inc. | Solid state device coding architecture for chipkill and endurance improvement |
JP5641982B2 (ja) * | 2011-03-03 | 2014-12-17 | 三菱電機株式会社 | 光通信システム |
US9088805B2 (en) * | 2012-02-08 | 2015-07-21 | Vixs Systems, Inc. | Encrypted memory device and methods for use therewith |
US9183095B1 (en) | 2013-06-28 | 2015-11-10 | Sk Hynix Memory Solutions Inc. | Recovering from a program failure by combining write data |
US9798620B2 (en) | 2014-02-06 | 2017-10-24 | Sandisk Technologies Llc | Systems and methods for non-blocking solid-state memory |
US10388400B2 (en) | 2015-05-18 | 2019-08-20 | SK Hynix Inc. | Generalized product codes for flash storage |
KR102473209B1 (ko) * | 2015-12-14 | 2022-12-02 | 삼성전자주식회사 | 스토리지 장치 및 스토리지 장치의 동작 방법 |
US10484020B2 (en) * | 2016-02-03 | 2019-11-19 | SK Hynix Inc. | System and method for parallel decoding of codewords sharing common data |
US10498366B2 (en) | 2016-06-23 | 2019-12-03 | SK Hynix Inc. | Data dependency mitigation in parallel decoders for flash storage |
US10439649B2 (en) * | 2016-02-03 | 2019-10-08 | SK Hynix Inc. | Data dependency mitigation in decoder architecture for generalized product codes for flash storage |
US10523245B2 (en) | 2016-03-23 | 2019-12-31 | SK Hynix Inc. | Soft decoder for generalized product codes |
US11005598B1 (en) * | 2019-09-16 | 2021-05-11 | Xilinx, Inc. | System and method for a forward error correction decoder with error reporting |
CN116757158B (zh) * | 2023-08-11 | 2024-01-23 | 深圳致赢科技有限公司 | 基于半导体存储的数据管理方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5638227A (en) * | 1993-12-17 | 1997-06-10 | Matsushita Electric Industrial Co., Ltd. | Digital data recording and reproducing apparatus |
TW301740B (ja) * | 1995-05-31 | 1997-04-01 | Sony Co Ltd | |
JP3169832B2 (ja) * | 1996-06-27 | 2001-05-28 | 日本電気アイシーマイコンシステム株式会社 | フレーム構成のデジタル信号のデータ誤り訂正方法及びそれに利用する装置 |
JP3310185B2 (ja) | 1996-11-21 | 2002-07-29 | 松下電器産業株式会社 | 誤り訂正装置 |
JP4126795B2 (ja) * | 1999-02-12 | 2008-07-30 | ソニー株式会社 | 疑似積符号復号装置及び方法 |
JP2001160761A (ja) | 1999-12-01 | 2001-06-12 | Ricoh Co Ltd | 誤り訂正装置及び誤り訂正方法 |
US7061936B2 (en) * | 2000-03-03 | 2006-06-13 | Ntt Docomo, Inc. | Method and apparatus for packet transmission with header compression |
-
2002
- 2002-06-28 JP JP2002190742A patent/JP3745709B2/ja not_active Expired - Fee Related
-
2003
- 2003-06-27 US US10/608,464 patent/US7296209B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20040054651A1 (en) | 2004-03-18 |
JP2004040199A (ja) | 2004-02-05 |
US7296209B2 (en) | 2007-11-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3745709B2 (ja) | 符号化装置、復号化装置、符号化方法、復号化方法、プログラム、プログラム記録媒体、及びデータ記録媒体 | |
US7406652B2 (en) | Method and circuit for reducing SATA transmission data errors by adjusting the period of sending ALIGN primitives | |
US8225148B2 (en) | Systems and methods for achieving higher coding rate using parity interleaving | |
US7392461B2 (en) | Decoding for algebraic geometric code associated with a fiber product | |
JP3549788B2 (ja) | 多段符号化方法、多段復号方法、多段符号化装置、多段復号装置およびこれらを用いた情報伝送システム | |
CN101312387B (zh) | 数据传输设备、数据发送和接收装置以及数据传输*** | |
US6397366B1 (en) | Data transmission system, data recording and reproducing apparatus and recording medium each having data structure of error correcting code | |
JP4648255B2 (ja) | 情報処理装置および情報処理方法 | |
JPH11508712A (ja) | ディスクドライブバッファ内のデータを保護するための方法および装置 | |
US8117526B2 (en) | Apparatus and method for generating a transmit signal and apparatus and method for extracting an original message from a received signal | |
JP2001175542A (ja) | 記録再生装置および半導体メモリ | |
CN1350369A (zh) | 存储装置、访问存储装置的方法和里德索罗门解码器 | |
JPS6354254B2 (ja) | ||
JP2008065969A (ja) | 符号化装置、復号化装置、符号化方法、復号化方法および記憶装置 | |
JPH10256921A (ja) | ディジタルデータの変調及び復調方法並びにディジタルデータの変調及び復調装置 | |
WO2006062607A1 (en) | Error detection and correction | |
US7461329B2 (en) | Channel encoding adapted to error bursts | |
JP6417937B2 (ja) | 復号化装置、プログラム及び情報伝送システム | |
US20090037796A1 (en) | Error correction device | |
US7392454B2 (en) | Error locating methods and devices for algebraic geometric codes | |
US7120850B2 (en) | Low-cost methods and devices for the decoding of product cases | |
JP5667408B2 (ja) | リードソロモン符号・復号化回路、リードソロモン符号・復号化方法、および、記憶装置 | |
JP2003273841A (ja) | 誤り訂正機能を有する伝送装置 | |
JPH10334620A (ja) | 記録媒体の再生装置、記憶媒体の記録再生装置、記録媒体の書き込み装置、エラー訂正回路、エラー訂正符号生成方法、データ転送のエラー訂正方法、記憶媒体および記録媒体 | |
JP4829376B2 (ja) | 情報処理装置および情報処理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040831 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20041013 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20041018 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050225 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050419 |
|
RD14 | Notification of resignation of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7434 Effective date: 20050512 |
|
RD14 | Notification of resignation of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7434 Effective date: 20050526 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20050712 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20050722 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051011 |
|
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: 20051108 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20051117 |
|
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: 20081202 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091202 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091202 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101202 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101202 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111202 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111202 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121202 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121202 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131202 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |