JP4147909B2 - Data processing apparatus and method, recording medium, and program - Google Patents

Data processing apparatus and method, recording medium, and program Download PDF

Info

Publication number
JP4147909B2
JP4147909B2 JP2002327786A JP2002327786A JP4147909B2 JP 4147909 B2 JP4147909 B2 JP 4147909B2 JP 2002327786 A JP2002327786 A JP 2002327786A JP 2002327786 A JP2002327786 A JP 2002327786A JP 4147909 B2 JP4147909 B2 JP 4147909B2
Authority
JP
Japan
Prior art keywords
parallel
index number
data
code data
error pattern
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2002327786A
Other languages
Japanese (ja)
Other versions
JP2004165866A (en
Inventor
真紀子 菅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2002327786A priority Critical patent/JP4147909B2/en
Publication of JP2004165866A publication Critical patent/JP2004165866A/en
Application granted granted Critical
Publication of JP4147909B2 publication Critical patent/JP4147909B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

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

Description

【0001】
【発明の属する技術分野】
本発明は、データ処理装置および方法、記録媒体、並びにプログラムに関し、例えば、受信した符号データ、あるいは、情報記録媒体から読み出した符号データを復号する場合に用いて好適なデータ処理装置および方法、記録媒体、並びにプログラムに関する。
【0002】
【従来の技術】
一般に、ディジタルデータを通信する場合、図1に示すような通信システムが用いられる。この通信システムにおいて、送信側のエンコーダ1は、ディジタルデータであるソース信号に、誤り検出符号や誤り訂正符号等の冗長性を付加してエンコードし、符号データを生成する。
【0003】
生成された符号データは、通信路2を介してデコーダ3に送信される。ただし、通信路2を通過する符号データには、ノイズ等の影響によって誤り(エラー)が生じてしまうことがある。
【0004】
受信側のデコーダ3は、受信した符号データに生じているエラーを、誤り検出符号や誤り訂正符号に基づいて訂正してデコードし、復号データを生成する。
【0005】
図2は、デコーダ3の構成例を示している。受信された符号データは、デコーダ3のシンドローム発生部11、および遅延部13に入力される。
【0006】
シンドローム発生部11は、入力された符号データに対応するシンドローム多項式を算出して、誤り位置・誤り評価値多項式算出部12に出力する。誤り位置・誤り評価値多項式算出部12は、入力されたシンドローム多項式に基づき、誤り位置多項式係数および誤り評価値多項式係数を算出して、誤り訂正部14に出力する。遅延部13は、自己に入力された符号データと同一の符号データに対するシンドローム発生部11および誤り位置・誤り評価値多項式算出部12の処理が終了するまで、入力された符号データを遅延して誤り訂正部14に出力する。
【0007】
誤り訂正部14は、誤り位置・誤り評価値多項式算出部12から入力される誤り位置多項式係数および誤り評価値多項式係数を誤りパターンに変換し、その誤り位置を示す値とともメモリに保持する。さらに、誤り訂正部14は、遅延部13から入力される符号データの対応する位置に、保持していた誤りパターンを加算して、復号データを生成する。
【0008】
なお、上述したように構成されるデコーダ3について記載されている先行技術文献は存在していない。
【0009】
【発明が解決しようとする課題】
ところで、上述したデコーダ3は、シリアル入力される符号データをデコード処理の対象としているが、パラレル入力される符号データをデコードするようになれば、符号データが入力されてから対応する復号データが出力されるまでの遅延時間を短くすることが可能となる。しかしながら、上述したデコーダ3では、パラレル入力された符号データをデコードすることができない課題があった。
【0010】
本発明はこのような状況に鑑みてなされたものであり、パラレルの符号データをデコードするようにして、復号データを出力するまでに要する遅延時間をより短縮できるようにすることを目的とする。
【0011】
【課題を解決するための手段】
本発明のデータ処理装置は、パラレル入力されたパラレル符号データを分配する分配手段と、分配された一方のパラレル符号データを遅延させる遅延手段と、遅延手段によって遅延されたパラレル符号データに対する第1のインデックス番号を発生する第1の発生手段と、分配された他方のパラレル符号データに基づき、パラレル符号データに対応するパラレルの誤りパターンデータを算出する算出手段と、算出手段によって算出された誤りパターンデータに対する第2のインデックス番号を発生する第2の発生手段と、パラレル符号データの訂正数だけ、第2のインデックス番号が対応付けられた誤りパターンデータを記憶する記憶手段と、記憶手段から誤りパターンデータおよび第2のインデックス番号を取得する取得手段と、取得手段によって取得された第2のインデックス番号と、第1の発生手段によって発生された第1のインデックス番号が一致するか否かを判定する判定手段と、判定手段の判定結果に基づき、第1のインデックス番号に対応するパラレル符号データに、第2のインデックス番号に対応する誤りパターンデータを加算してパラレルの復号データを生成する生成手段とを含むことを特徴とする。
【0012】
前記算出手段は、パラレル符号データに対応するパラレルの誤りパターンデータを、パラレル符号データの入力の順序とは逆の順序で記憶手段に出力し、第1の発生手段は、第1のインデックス番号を、所定の値ずつインクリメントして発生し、第2の発生手段は、第2のインデックス番号を、所定の値ずつデクリメントして発生するようにすることができる。
【0013】
前記算出手段は、パラレル符号データに対応するシンドローム多項式を算出し、シンドローム多項式に基づいて少なくとも誤り位置多項式算出し、誤り位置多項式基づいて誤りパターンデータを算出するようにすることができる。
【0014】
前記記憶手段は、LIFOメモリとするようにすることができる。
【0015】
前記生成手段は、第2のインデックス番号と第1のインデックス番号が一致すると判定された場合、第1のインデックス番号に対応するパラレル符号データに、第2のインデックス番号に対応するパラレルの誤りパターンデータを加算して復号データを生成し、第2のインデックス番号と第1のインデックス番号が一致しないと判定された場合、第1のインデックス番号に対応するパラレル符号データを、そのまま復号データとするようにすることができる。
【0016】
本発明のデータ処理方法は、パラレル入力されたパラレル符号データを分配する分配ステップと、分配された一方のパラレル符号データを遅延させる遅延ステップと、
延されたパラレル符号データに対する第1のインデックス番号を発生する第1の発生ステップと、分配された他方のパラレル符号データに基づき、パラレル符号データに対応するパラレルの誤りパターンデータを算出する算出ステップと、算出ステップの処理で算出された誤りパターンデータに対する第2のインデックス番号を発生する第2の発生ステップと、パラレル符号データの訂正数だけ、第2のインデックス番号が対応付けられた誤りパターンデータをメモリに記憶させる記憶ステップと、メモリから誤りパターンデータおよび第2のインデックス番号を取得する取得ステップと、取得ステップの処理で取得された第2のインデックス番号と、第1の発生ステップの処理で発生された第1のインデックス番号が一致するか否かを判定する判定ステップと、判定ステップの処理での判定結果に基づき、第1のインデックス番号に対応するパラレル符号データに、第2のインデックス番号に対応するパラレルの誤りパターンデータを加算してパラレルの復号データを生成する生成ステップとを含むことを特徴とする。
【0017】
本発明の記録媒は、パラレル入力されたパラレル符号データを分配する分配ステップと、分配された一方のパラレル符号データを遅延させる遅延ステップと、延されたパラレル符号データに対する第1のインデックス番号を発生する第1の発生ステップと、分配された他方のパラレル符号データに基づき、パラレル符号データに対応するパラレルの誤りパターンデータを算出する算出ステップと、算出ステップの処理で算出された誤りパターンデータに対する第2のインデックス番号を発生する第2の発生ステップと、パラレル符号データの訂正数だけ、第2のインデックス番号が対応付けられた誤りパターンデータをメモリに記憶させる記憶ステップと、メモリから誤りパターンデータおよび第2のインデックス番号を取得する取得ステップと、取得ステップの処理で取得された第2のインデックス番号と、第1の発生ステップの処理で発生された第1のインデックス番号が一致するか否かを判定する判定ステップと、判定ステップの処理での判定結果に基づき、第1のインデックス番号に対応するパラレル符号データに、第2のインデックス番号に対応するパラレルの誤りパターンデータを加算してパラレルの復号データを生成する生成ステップとを含む処理をデータ処理装置のコンピュータに実行させるプログラムが記録されていることを特徴とする
【0018】
本発明のプログラムは、パラレル入力されたパラレル符号データを分配する分配ステップと、分配された一方のパラレル符号データを遅延させる遅延ステップと、延されたパラレル符号データに対する第1のインデックス番号を発生する第1の発生ステップと、分配された他方のパラレル符号データに基づき、パラレル符号データに対応するパラレルの誤りパターンデータを算出する算出ステップと、算出ステップの処理で算出された誤りパターンデータに対する第2のインデックス番号を発生する第2の発生ステップと、パラレル符号データの訂正数だけ、第2のインデックス番号が対応付けられた誤りパターンデータをメモリに記憶させる記憶ステップと、メモリから誤りパターンデータおよび第2のインデックス番号を取得する取得ステップと、取得ステップの処理で取得された第2のインデックス番号と、第1の発生ステップの処理で発生された第1のインデックス番号が一致するか否かを判定する判定ステップと、判定ステップの処理での判定結果に基づき、第1のインデックス番号に対応するパラレル符号データに、第2のインデックス番号に対応するパラレルの誤りパターンデータを加算してパラレルの復号データを生成する生成ステップとを含む処理をデータ処理装置のコンピュータに実行させることを特徴とする。
【0019】
本発明のデータ処理装置および方法、並びにプログラムにおいては、パラレル符号データに対応するパラレルの誤りパターンデータが算出され、算出された誤りパターンデータに対する第2のインデックス番号が発生され、パラレル符号データの訂正数だけ、第2のインデックス番号が対応付けられた誤りパターンデータがメモリに記憶される。さらに、メモリから誤りパターンデータおよび第2のインデックス番号が取得され、取得された第2のインデックス番号と、発生された第1のインデックス番号が一致するか否か判定され、その判定結果に基づき、第1のインデックス番号に対応するパラレル符号データに、第2のインデックス番号に対応するパラレルの誤りパターンデータが加算されてパラレルの復号データが生成される。
【0020】
【発明の実施の形態】
本発明を適用したデコーダの構成例について、図3を参照して説明する。このデコーダ21は、図1に示された通信システムのデコーダ3に代わるものであり、パラレル入力される符号データIDATAをデコードして、復号データODATAを生成する。
【0021】
デコーダ21に入力されたm次パラレルの符号データIDATAは、遅延部24および並列化シンドローム発生部25に分配される。以下、デコーダ21にm次パラレル入力される符号データIDATAの各種のパラメータを、符号長n=m×j、訂正数t、有限体F(qk)(q=ps、pは素数)とする。
【0022】
制御部22は、記録媒体23に記憶されている制御用プログラムに基づき、デコーダ21の全体を制御する。特に、制御部22は、並列化誤り訂正部27に誤りパターン算出開始信号を出力し、その後、所定のタイミングに、遅延部24および並列化誤り訂正部27に復号開始信号を出力する。
【0023】
遅延部24は、m次パラレル入力される符号データIDATAを、制御部22から復号開始信号が入力されるまで遅延して、並列化誤り訂正部27に出力する。なお、復号開始信号は、並列化シンドローム発生部25側に分配された、遅延部24に入力された符号データIDATAと同一の符号データIDATAに対する所定の処理が終了したことに対応して制御部22から出力される。
【0024】
並列化シンドローム発生部25は、m次パラレル入力される符号データIDATAに対応するシンドローム多項式を算出して、誤り位置・誤り評価値多項式算出部26に出力する。誤り位置・誤り評価値多項式算出部26は、入力されたシンドローム多項式に基づき、誤り位置多項式係数SGMおよび誤り評価値多項式係数OMGを算出して、並列化誤り訂正部27に出力する。
【0025】
並列化誤り訂正部27は、入力される誤り位置多項式係数SGMおよび誤り評価値多項式係数OMGに基づいて、m次パラレルの誤りパターンIPATを算出し、遅延部24から入力されるm次パラレルの符号データIDATAに加算して、復号データODATAを生成する。
【0026】
図4は、デコーダ21に順次入力されるm次パラレルの符号データIDATAを示している。すなわち、所定のタイミング0にm次パラレルの符号データIDATA(0)が、次のタイミング1にm次パラレルの符号データIDATA(1)が入力される。これ以降同様に、タイミングsにm次パラレルの符号データIDATA(s)が、m次パラレルのタイミング(j−1)に符号データIDATA(j−1)が入力される。
【0027】
したがって、デコーダ21の遅延部24は、復号開始信号が入力されたときを基準とするタイミング0にm次パラレルの符号データIDATA(0)を、次のタイミング1にm次パラレルの符号データIDATA(1)を並列化誤り訂正部27に出力することになる。これ以降同様に、タイミングsにm次パラレルの符号データIDATA(s)を、タイミング(j−1)にm次パラレルの符号データIDATA(j−1)を並列化誤り訂正部27に出力することになる。
【0028】
図5は、並列化誤り訂正部27の構成例を示している。並列化誤り訂正部27において、遅延部24から入力されるm次パラレルの符号データIDATAは、誤りパターン加算部37に供給される。誤り位置・誤り評価値多項式算出部26から入力される誤り位置多項式係数SGMおよび誤り評価値多項式係数OMGは、誤りパターン算出部31に入力される。制御部22から入力される誤りパターン算出開始信号は、誤りパターン算出部31に供給され、復号開始信号は、順方向カウンタ35および誤りパターン加算部37に供給される。
【0029】
誤りパターン算出部31は、誤り位置多項式係数SGMおよび誤り評価値多項式係数OMGに基づいて、m次パラレルの誤りパターンIPATを算出する。さらに、誤りパターン算出部31は、制御部22から入力される誤りパターン算出開始信号に従い、算出したm次パラレルの誤りパターンIPATを、例えば、図6に示すように、対応する符号データIDATAの入力順とは逆の順序で誤りパターン記憶部33に出力する。
【0030】
すなわち、制御部22から入力される誤りパターン算出開始信号が入力されたタイミングに、m次パラレルの符号データIDATA(j−1)に対応するm次パラレルの誤りパターンIPAT(j−1)を、次のタイミングに、m次パラレルの符号データIDATA(j−2)に対応するm次パラレルの誤りパターンIPAT(j−2)を誤りパターン記憶部33に出力する。これ以降同様に、m次パラレルの符号データIDATA(0)に対応するm次パラレルの誤りパターンIPAT(0)までを誤りパターン記憶部33に出力する。
【0031】
逆方向カウンタ32は、制御部22から誤りパターン算出開始信号が入力されることに対応して、カウント値CNT1として、j−1,j−2,…,s,…,1,0を所定の間隔でサイクリックに発生し、誤りパターン記憶部33に出力する。
【0032】
したがって、誤りパターン記憶部33には、m次パラレルの誤りパターンIPAT(j−1)とカウンタ値CNT1=(j−1)が同時に、次のタイミングには、m次パラレルの誤りパターンIPAT(j−2)とカウンタ値CNT1=(j−2)が同時に入力されることになる。これ以降同様に、m次パラレルの誤りパターンIPAT(1)とカウンタ値CNT1=(1)が同時に、m次パラレルの誤りパターンIPAT(0)とカウンタ値CNT1=(0)が同時に入力されることになる。
【0033】
誤りパターン記憶部33は、誤りパターン算出部31から入力されるm次パラレルの誤りパターンIPAT(s)(s=j−1,j−2,…,1,0)に基づき、それに対応するm次パラレルの符号データIDATA(s)に誤りがあるか否かを判定し、誤りがあると判定した場合、同時に入力されたカウンタ値CNT1=(s)に、m次パラレルの誤りパターンIPAT(s)を対応付けて、LIFO(last-In first-out)メモリ34に記憶させる。
【0034】
図7は、誤りパターン記憶部33に内蔵されたLIFOメモリ34の構造を示している。LIFOメモリ34は、カウンタ値CNT1とm次パラレルの誤りパターンIPATの組を、訂正数tと同じ組数だけ保持することができる。
【0035】
LIFOメモリ34は、カウンタ値CNT1をロケータLOCとして、対応するm次パラレルの誤りパターンIPATを記憶し、比較部36からの要求に対応し、後入れ先出しの順序で、カウンタ値CNT1とそれに対応するm次パラレルの誤りパターンIPATを比較部36に出力する。以下、LIFOメモリ34から比較部36に出力されるカウンタ値CNT1とm次パラレルの誤りパターンIPATを、それぞれ、ロケータLOC、または誤りパターンOPATと記述する。
【0036】
順方向カウンタ35は、制御部22から復号開始信号が入力されたことに対応して、カウント値CNT2として、0,1,…,s,…,j−2,j−1を所定の間隔でサイクリックに発生し、比較部36に出力する。
【0037】
比較部36は、誤りパターン記憶部33のLIFOメモリ34に記憶されているロケータLOCと誤りパターンOPATの組のうち、最も新たに記憶された1組を読み出し、読み出したロケータLOCと、順方向カウンタ35からのカウント値CNT2が一致するまで読み出した誤りパターンOPATを保持し、一致した場合、読み出した誤りパターンOPATを誤りパターン加算部37に出力する。誤りパターン加算部37に誤りパターンOPATを出力した後、比較部36は、LIFOメモリ34から、次に新しい1組を読み出して同様の動作を実行する。
【0038】
例えば、比較部36は、LIFOメモリ34から、ロケータLOC=sと誤りパターンOPAT(s)が読み出されている場合、カウント値CNT2=sであるとき、誤りパターンOPAT(s)を誤りパターン加算部37に出力する。
【0039】
誤りパターン加算部37は、制御部22から復号開始信号が入力されたことに対応して、遅延部24から入力されるm次パラレルの符号データIDATAに、その入力と同時に比較部36から入力されるm次パラレルの誤りパターンOPATを加算して復号データODATAを生成し、図4に示すような順番で後段に出力する。
【0040】
なお、遅延部24から入力されるm次パラレルの符号データIDATAに誤りが存在しない場合、比較部36からm次パラレルの誤りパターンOPATは入力されない。この場合、誤りが存在しないm次パラレルの符号データIDATAが、そのまま復号データODATAとされる。
【0041】
例えば、誤りパターン加算部37に入力されたm次パラレルの符号データIDATA(s)に誤りが存在している場合、その入力と同時に、比較部36からm次パラレルの誤りパターンOPAT(s)が入力されるので、符号データIDATA(s)に誤りパターンOPAT(s)が加算されて復号データODATA(s)が生成される。
【0042】
また、例えば、誤りパターン加算部37に入力されたm次パラレルの符号データIDATA(s)に誤りが存在していない場合、比較部36からの入力はないので、符号データIDATA(s)が、そのまま復号データODATA(s)とされる。
【0043】
次に、デコーダ21によるデコード処理について、図9のフローチャートを参照して説明する。ステップS1において、デコーダ21にm次パラレルの符号データIDATAが入力され、遅延部24および並列化シンドローム発生部25に分配される。遅延部24は、分配された一方の符号データIDATAを、制御部22から復号開始信号が入力されるまで遅延する。
【0044】
ステップS2において、並列化シンドローム発生部25は、分配された他方の符号データIDATAに対応するシンドローム多項式を算出して、誤り位置・誤り評価値多項式算出部26に出力する。ステップS3において、誤り位置・誤り評価値多項式算出部26は、入力されたシンドローム多項式に基づき、誤り位置多項式係数SGMおよび誤り評価値多項式係数OMGを算出して、並列化誤り訂正部27に出力する。並列化誤り訂正部27において、誤り位置・誤り評価値多項式算出部26から入力された誤り位置多項式係数SGMおよび誤り評価値多項式係数OMGは、誤りパターン算出部31に供給される。
【0045】
ステップS4において、誤りパターン算出部31は、誤り位置多項式係数SGMおよび誤り評価値多項式係数OMGに基づいて、m次パラレルの誤りパターンIPATを算出し、制御部22から入力された誤りパターン算出開始信号に従い、算出したm次パラレルの誤りパターンIPATを、図6に示すように、対応する符号データIDATAの入力順とは逆の順序で誤りパターン記憶部33に出力する。
【0046】
ステップS5において、誤りパターン記憶部33は、誤りパターン算出部31から入力されるm次パラレルの誤りパターンIPAT(s)(s=j−1,j−2,…,1,0)に基づき、それに対応するm次パラレルの符号データIDATA(s)に誤りがあるか否かを判定し、誤りがあると判定した場合、同時に逆方向カウンタ32から入力されたカウンタ値CNT1=(s)に、m次パラレルの誤りパターンIPAT(s)を対応付けて、LIFOメモリ34に記憶させる。
【0047】
誤りパターン算出部31によりm次パラレルの誤りパターンIPAT(0)が算出されて、誤りパターン記憶部33に入力され、対応する符号データIDATA(0)の誤りの有無が判断された後、制御部22により復号開始信号が出力される。この復号開始信号に対応して、遅延部24は、遅延していた符号データIDATAの出力を開始する。また、順方向カウンタ35は、カウントを開始して、カウント値CNT2を比較部36に出力する。
【0048】
ステップS6において、比較部36は、誤りパターン記憶部33のLIFOメモリ34に記憶されているロケータLOCと誤りパターンOPATの組のうち、最も後に記憶されたものを読み出す。ステップS7において、比較部36は、読み出したロケータLOCと、順方向カウンタ35から入力されたカウント値CNT2が一致するまで待機し、読み出したロケータLOCと、順方向カウンタ35から入力されたカウント値CNT2が一致すると判定した場合、ステップS8に進み、読み出した誤りパターンOPATを誤りパターン加算部37に出力する。
【0049】
ステップS9において、誤りパターン加算部37は、遅延部24から入力されたm次パラレルの符号データIDATAに、その入力と同時に比較部36から入力されたm次パラレルの誤りパターンOPATを加算して復号データODATAを生成する。
【0050】
ただし、遅延部24から入力されたm次パラレルの符号データIDATAに誤りが存在しない場合、比較部36からm次パラレルの誤りパターンOPATは入力されない。この場合、誤りが存在しないm次パラレルの符号データIDATAを、そのまま復号データODATAとする。以上で、デコーダ3によるデコード処理の説明を終了する。
【0051】
以上説明したように、デコーダ3は、m次パラレル入力される符号データをデコードすることができるので、シリアル入力される符号データをデコードする図2に示された従来のデコーダ3に比較して、復号データが出力されるまでの遅延時間を短縮することができる。
【0052】
なお、符号データの種類によっては、並列化誤り訂正部27において誤り評価多項式を算出しないようにしてもよい。この場合、誤り位置多項式に基づいて得られるm次パラレルの誤り位置パターン列を、誤りパターンIPATとする。
【0053】
また、符号データは、その符号長nが必ずしもmの倍数ではなくてもかまわない。例えば、符号長n=m(j−1)+a、0<a<mである場合、符号データIDATAのうち、r{m(j−1)+a+1},r{m(j−1)+a},…,r{mj−1}を全て0とすれば、デコーダ31によってデコードすることが可能となる。
【0054】
さらに、本発明は、通信システムの受信側のデコーダだけではなく、情報記録媒体から符号データを再生する再生装置にも適用することができる。
【0055】
上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ(例えば、図3の制御部22)、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、記録媒体(例えば、図3の記録媒体23)からインストールされる。
【0056】
この記録媒体は、コンピュータとは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc-Read Only Memory)、DVD(Digital Versatile Disc)を含む)、光磁気ディスク(MD(Mini Disc)を含む)、もしくは半導体メモリなどよりなるパッケージメディアにより構成されるだけでなく、コンピュータに予め組み込まれた状態でユーザに提供される、プログラムが記録されているROMや記憶部に含まれるハードディスクなどで構成される。
【0057】
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に従って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【0058】
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【0059】
【発明の効果】
以上のように、本発明によれば、パラレルの符号データをデコードすることができる。また、本発明によれば、符号データが入力されてから復号データを出力するまでに要する遅延時間をより短縮することが可能となる。
【図面の簡単な説明】
【図1】ディジタルデータを符号化して通信する通信システムの構成例を示すブロック図である。
【図2】図1のデコーダの構成例を示すブロック図である。
【図3】本発明の一実施の形態であるデコーダの構成例を示すブロック図である。
【図4】デコーダにm次パラレル入力される符号データIDATAの一例を示す図である。
【図5】図3の並列化誤り訂正部の構成例を示すブロック図である。
【図6】図5の誤りパターン算出部が算出する誤りパターンの一例を示す図である。
【図7】図5のLIFOメモリの構造を示す図である。
【図8】図5の誤りパターン加算部が出力する復号データの一例を示す図である。
【図9】図3のデコーダによるデコード処理を説明するフローチャートである。
【符号の説明】
21 デコーダ, 22 制御部, 23 記憶媒体, 24 遅延部, 25 並列化シンドローム発生部, 26 誤り位置・誤り評価多項式算出部, 27 並列化誤り訂正部, 31 誤りパターン算出部, 32 逆方向カウンタ, 33 誤りパターン記憶部, 34 LIFOメモリ, 35 順方向カウンタ, 36 比較部, 37 誤りパターン加算部
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a data processing apparatus and method, a recording medium, and a program, and, for example, a data processing apparatus and method suitable for use in decoding received code data or code data read from an information recording medium, and recording The present invention relates to a medium and a program.
[0002]
[Prior art]
In general, when communicating digital data, a communication system as shown in FIG. 1 is used. In this communication system, a transmission-side encoder 1 encodes a source signal, which is digital data, with redundancy such as an error detection code and an error correction code, and generates code data.
[0003]
The generated code data is transmitted to the decoder 3 via the communication path 2. However, an error may occur in the code data passing through the communication path 2 due to the influence of noise or the like.
[0004]
The decoder 3 on the receiving side corrects an error occurring in the received code data based on the error detection code or the error correction code, decodes it, and generates decoded data.
[0005]
FIG. 2 shows a configuration example of the decoder 3. The received code data is input to the syndrome generator 11 and the delay unit 13 of the decoder 3.
[0006]
The syndrome generator 11 calculates a syndrome polynomial corresponding to the input code data, and outputs it to the error position / error evaluation value polynomial calculator 12. The error position / error evaluation value polynomial calculation unit 12 calculates an error position polynomial coefficient and an error evaluation value polynomial coefficient based on the input syndrome polynomial, and outputs them to the error correction unit 14. The delay unit 13 delays the input code data until the processing of the syndrome generation unit 11 and the error position / error evaluation value polynomial calculation unit 12 with respect to the same code data as the code data input thereto is delayed. Output to the correction unit 14.
[0007]
The error correction unit 14 converts the error position polynomial coefficient and the error evaluation value polynomial coefficient input from the error position / error evaluation value polynomial calculation unit 12 into an error pattern, and holds the value indicating the error position in a memory. Further, the error correction unit 14 adds the held error pattern to the corresponding position of the code data input from the delay unit 13 to generate decoded data.
[0008]
There is no prior art document describing the decoder 3 configured as described above.
[0009]
[Problems to be solved by the invention]
By the way, the above-described decoder 3 is intended for decoding processing of serially input code data. However, if code data input in parallel is decoded, the corresponding decoded data is output after the code data is input. It is possible to shorten the delay time until the operation is performed. However, the decoder 3 described above has a problem that the code data input in parallel cannot be decoded.
[0010]
The present invention has been made in view of such a situation, and an object of the present invention is to decode parallel code data so as to further reduce the delay time required until the decoded data is output.
[0011]
[Means for Solving the Problems]
The data processing apparatus of the present invention is input in parallel. parallel Distribution means for distributing the code data and one of the distributed parallel Delay means for delaying code data and delayed by the delay means parallel First generating means for generating a first index number for the code data, and the other distributed parallel Based on the code data, parallel Calculation means for calculating parallel error pattern data corresponding to code data; second generation means for generating a second index number for the error pattern data calculated by the calculation means; As many parallel code data corrections as possible Second index number Error pattern data associated with Storage means for storing, acquisition means for acquiring error pattern data and a second index number from the storage means, a second index number acquired by the acquisition means, and a first generated by the first generation means Corresponding to the first index number based on the determination means for determining whether or not the index numbers match, and the determination result of the determination means parallel And generating means for generating parallel decoded data by adding error pattern data corresponding to the second index number to the code data.
[0012]
The calculating means includes parallel Corresponds to code data Parallel Error pattern data parallel The code data is output to the storage means in the reverse order of the input order of the code data, the first generating means is generated by incrementing the first index number by a predetermined value, and the second generating means is The index number of 2 can be generated by decrementing by a predetermined value.
[0013]
The calculating means includes parallel Calculate the syndrome polynomial corresponding to the code data, and based on the syndrome polynomial at least Error location polynomial The Calculate the error locator polynomial In Error pattern data can be calculated based on this.
[0014]
The storage means may be a LIFO memory.
[0015]
The generation unit corresponds to the first index number when it is determined that the second index number matches the first index number. parallel Corresponds to the second index number in the code data Parallel The decoded data is generated by adding the error pattern data, and when it is determined that the second index number and the first index number do not match, the first index number is corresponded parallel The code data can be used as decoded data as it is.
[0016]
In the data processing method of the present invention, parallel input is performed. parallel A distribution step for distributing the code data, and one of the distributed data parallel A delay step for delaying the code data;
Late Extended parallel A first generating step for generating a first index number for the code data, and the other distributed parallel Based on the code data, parallel A calculation step of calculating parallel error pattern data corresponding to the code data; a second generation step of generating a second index number for the error pattern data calculated in the processing of the calculation step; As many parallel code data corrections as possible Second index number Error pattern data associated with Memory Make A memory step; memory The acquisition step for acquiring the error pattern data and the second index number from the same, the second index number acquired in the processing of the acquisition step, and the first index number generated in the processing of the first generation step match Judgment step for determining whether or not to perform and processing of the determination step Judgment Based on the result, corresponding to the first index number parallel Corresponds to the second index number in the code data Parallel A generation step of adding error pattern data to generate parallel decoded data.
[0017]
Recording medium of the present invention body Was input in parallel parallel A distribution step for distributing the code data, and one of the distributed data parallel A delay step for delaying the code data; Late Extended parallel A first generating step for generating a first index number for the code data, and the other distributed parallel Based on the code data, parallel A calculation step of calculating parallel error pattern data corresponding to the code data; a second generation step of generating a second index number for the error pattern data calculated in the processing of the calculation step; As many parallel code data corrections as possible Second index number Error pattern data associated with Memory Make A memory step; memory The acquisition step for acquiring the error pattern data and the second index number from the same, the second index number acquired in the processing of the acquisition step, and the first index number generated in the processing of the first generation step match Judgment step for determining whether or not to perform and processing of the determination step Judgment Based on the result, corresponding to the first index number parallel Corresponds to the second index number in the code data Parallel A generation step of adding error pattern data to generate parallel decoded data; and A program for causing a computer of a data processing device to execute a process including: .
[0018]
The program of the present invention is input in parallel parallel A distribution step for distributing the code data, and one of the distributed data parallel A delay step for delaying the code data; Late Extended parallel A first generating step for generating a first index number for the code data, and the other distributed parallel Based on the code data, parallel A calculation step of calculating parallel error pattern data corresponding to the code data; a second generation step of generating a second index number for the error pattern data calculated in the processing of the calculation step; As many parallel code data corrections as possible Second index number Error pattern data associated with Memory Make A memory step; memory The acquisition step for acquiring the error pattern data and the second index number from the same, the second index number acquired in the processing of the acquisition step, and the first index number generated in the processing of the first generation step match Judgment step for determining whether or not to perform and processing of the determination step Judgment Based on the result, corresponding to the first index number parallel Corresponds to the second index number in the code data Parallel A generation step of adding error pattern data to generate parallel decoded data; and Data processing device computer It is made to perform.
[0019]
In the data processing apparatus and method, and the program of the present invention, parallel Parallel error pattern data corresponding to the code data is calculated, and a second index number for the calculated error pattern data is generated, As many parallel code data corrections as possible Second index number Error pattern data associated with Memory Is done. further, memory The error pattern data and the second index number are acquired from, and it is determined whether or not the acquired second index number and the generated first index number match. That judgment Based on the result, corresponding to the first index number parallel Corresponds to the second index number in the code data Parallel The error pattern data is added to generate parallel decoded data.
[0020]
DETAILED DESCRIPTION OF THE INVENTION
A configuration example of a decoder to which the present invention is applied will be described with reference to FIG. The decoder 21 is an alternative to the decoder 3 of the communication system shown in FIG. 1, and decodes code data IDATA input in parallel to generate decoded data ODATA.
[0021]
The m-th order parallel code data IDATA input to the decoder 21 is distributed to the delay unit 24 and the parallelized syndrome generation unit 25. Hereinafter, various parameters of the code data IDATA input to the decoder 21 in m-th order parallel are represented by code length n = m × j, correction number t, finite field F (q k ) (Q = p s , P is a prime number).
[0022]
The control unit 22 controls the entire decoder 21 based on a control program stored in the recording medium 23. In particular, the control unit 22 outputs an error pattern calculation start signal to the parallel error correction unit 27, and then outputs a decoding start signal to the delay unit 24 and the parallel error correction unit 27 at a predetermined timing.
[0023]
The delay unit 24 delays the code data IDATA input in m-th order parallel until the decoding start signal is input from the control unit 22, and outputs it to the parallel error correction unit 27. The decoding start signal is distributed to the parallel syndrome generation unit 25 side, and the control unit 22 corresponds to the completion of predetermined processing on the code data IDATA identical to the code data IDATA input to the delay unit 24. Is output from.
[0024]
The parallelization syndrome generator 25 calculates a syndrome polynomial corresponding to the m-th order parallel input code data IDATA, and outputs it to the error position / error evaluation value polynomial calculator 26. The error position / error evaluation value polynomial calculation unit 26 calculates an error position polynomial coefficient SGM and an error evaluation value polynomial coefficient OMG based on the input syndrome polynomial, and outputs the error position polynomial coefficient SMG and the error evaluation value polynomial coefficient OMG to the parallel error correction unit 27.
[0025]
The parallel error correction unit 27 calculates an m-th order parallel error pattern IPAT based on the input error position polynomial coefficient SGM and the error evaluation value polynomial coefficient OMG, and the m-order parallel code input from the delay unit 24. The decoded data ODATA is generated by adding to the data IDATA.
[0026]
FIG. 4 shows m-order parallel code data IDATA sequentially input to the decoder 21. That is, m-order parallel code data IDATA (0) is input at a predetermined timing 0, and m-order parallel code data IDATA (1) is input at the next timing 1. Thereafter, similarly, the m-order parallel code data IDATA (s) is input at timing s, and the code data IDATA (j-1) is input at m-th parallel timing (j-1).
[0027]
Therefore, the delay unit 24 of the decoder 21 outputs the m-order parallel code data IDATA (0) at the timing 0 based on the input of the decoding start signal, and the m-order parallel code data IDATA (at the next timing 1). 1) is output to the parallel error correction unit 27. Similarly, the m-order parallel code data IDATA (s) is output to the parallelization error correction unit 27 at the timing s and the m-order parallel code data IDATA (j-1) is output to the timing (j-1). become.
[0028]
FIG. 5 shows a configuration example of the parallel error correction unit 27. In the parallel error correction unit 27, the m-th order parallel code data IDATA input from the delay unit 24 is supplied to the error pattern addition unit 37. The error position polynomial coefficient SGM and the error evaluation value polynomial coefficient OMG input from the error position / error evaluation value polynomial calculation unit 26 are input to the error pattern calculation unit 31. The error pattern calculation start signal input from the control unit 22 is supplied to the error pattern calculation unit 31, and the decoding start signal is supplied to the forward counter 35 and the error pattern addition unit 37.
[0029]
The error pattern calculation unit 31 calculates an m-order parallel error pattern IPAT based on the error position polynomial coefficient SGM and the error evaluation value polynomial coefficient OMG. Furthermore, the error pattern calculation unit 31 inputs the calculated m-th order parallel error pattern IPAT according to the error pattern calculation start signal input from the control unit 22, for example, as shown in FIG. The data is output to the error pattern storage unit 33 in the reverse order.
[0030]
That is, at the timing when the error pattern calculation start signal input from the control unit 22 is input, the m-order parallel error pattern IPAT (j−1) corresponding to the m-order parallel code data IDATA (j−1) is At the next timing, the m-order parallel error pattern IPAT (j-2) corresponding to the m-order parallel code data IDATA (j-2) is output to the error pattern storage unit 33. Thereafter, up to the m-th order parallel error pattern IPAT (0) corresponding to the m-th order parallel code data IDATA (0) is output to the error pattern storage unit 33.
[0031]
In response to the input of the error pattern calculation start signal from the control unit 22, the reverse counter 32 sets j-1, j-2,..., S,. It occurs cyclically at intervals and is output to the error pattern storage unit 33.
[0032]
Therefore, the error pattern storage unit 33 stores the m-th order parallel error pattern IPAT (j−1) and the counter value CNT1 = (j−1) at the same time, and the m-th order parallel error pattern IPAT (j -2) and the counter value CNT1 = (j-2) are input simultaneously. Thereafter, similarly, the m-order parallel error pattern IPAT (1) and the counter value CNT1 = (1) are simultaneously input, and the m-order parallel error pattern IPAT (0) and the counter value CNT1 = (0) are simultaneously input. become.
[0033]
The error pattern storage unit 33 is based on the m-th order parallel error pattern IPAT (s) (s = j−1, j−2,..., 1, 0) input from the error pattern calculation unit 31 and m corresponding thereto. It is determined whether or not there is an error in the next parallel code data IDATA (s). If it is determined that there is an error, the counter value CNT1 = (s) input at the same time is added to the mth parallel error pattern IPAT (s). ) And are stored in a LIFO (last-in first-out) memory 34.
[0034]
FIG. 7 shows the structure of the LIFO memory 34 built in the error pattern storage unit 33. The LIFO memory 34 can hold the same number of sets of the counter value CNT1 and the m-th order parallel error pattern IPAT as the correction number t.
[0035]
The LIFO memory 34 stores the corresponding m-th order parallel error pattern IPAT using the counter value CNT1 as the locator LOC, corresponds to the request from the comparison unit 36, and corresponds to the counter value CNT1 in the last-in first-out order. The m-th order parallel error pattern IPAT is output to the comparison unit 36. Hereinafter, the counter value CNT1 and the m-th order parallel error pattern IPAT output from the LIFO memory 34 to the comparison unit 36 are described as a locator LOC or an error pattern OPAT, respectively.
[0036]
In response to the input of the decoding start signal from the control unit 22, the forward counter 35 sets 0, 1, ..., s, ..., j-2, j-1 as the count value CNT2 at a predetermined interval. It occurs cyclically and is output to the comparison unit 36.
[0037]
The comparison unit 36 reads out the most recently stored one of the sets of the locator LOC and the error pattern OPAT stored in the LIFO memory 34 of the error pattern storage unit 33, reads the read locator LOC, and the forward counter The read error pattern OPAT is held until the count value CNT2 from 35 matches, and if it matches, the read error pattern OPAT is output to the error pattern adder 37. After outputting the error pattern OPAT to the error pattern adder 37, the comparator 36 reads the next new set from the LIFO memory 34 and executes the same operation.
[0038]
For example, when the locator LOC = s and the error pattern OPAT (s) are read from the LIFO memory 34, the comparison unit 36 adds the error pattern OPAT (s) to the error pattern when the count value CNT2 = s. To the unit 37.
[0039]
In response to the input of the decoding start signal from the control unit 22, the error pattern addition unit 37 receives the m-order parallel code data IDATA input from the delay unit 24 from the comparison unit 36 simultaneously with the input. M-order parallel error patterns OPAT are added to generate decoded data ODATA, which are output to the subsequent stage in the order shown in FIG.
[0040]
When there is no error in the m-th order parallel code data IDATA input from the delay unit 24, the m-th order parallel error pattern OPAT is not input from the comparison unit 36. In this case, the m-th order parallel code data IDATA having no error is directly used as decoded data ODATA.
[0041]
For example, if there is an error in the m-order parallel code data IDATA (s) input to the error pattern adder 37, the m-order parallel error pattern OPAT (s) is simultaneously output from the comparator 36. Since it is input, the error pattern OPAT (s) is added to the code data IDATA (s) to generate decoded data ODATA (s).
[0042]
Further, for example, when there is no error in the m-th order parallel code data IDATA (s) input to the error pattern addition unit 37, there is no input from the comparison unit 36, so the code data IDATA (s) is The decoded data ODATA (s) is used as it is.
[0043]
Next, decoding processing by the decoder 21 will be described with reference to the flowchart of FIG. In step S <b> 1, m-order parallel code data IDATA is input to the decoder 21 and distributed to the delay unit 24 and the parallelized syndrome generation unit 25. The delay unit 24 delays one distributed code data IDATA until a decoding start signal is input from the control unit 22.
[0044]
In step S <b> 2, the parallelized syndrome generating unit 25 calculates a syndrome polynomial corresponding to the other distributed code data IDATA, and outputs it to the error position / error evaluation value polynomial calculating unit 26. In step S3, the error position / error evaluation value polynomial calculation unit 26 calculates an error position polynomial coefficient SGM and an error evaluation value polynomial coefficient OMG based on the input syndrome polynomial, and outputs the error position polynomial coefficient SMG and the error evaluation value polynomial coefficient OMG to the parallel error correction unit 27. . In the parallel error correction unit 27, the error position polynomial coefficient SGM and the error evaluation value polynomial coefficient OMG input from the error position / error evaluation value polynomial calculation unit 26 are supplied to the error pattern calculation unit 31.
[0045]
In step S4, the error pattern calculation unit 31 calculates an m-order parallel error pattern IPAT based on the error locator polynomial coefficient SGM and the error evaluation value polynomial coefficient OMG, and an error pattern calculation start signal input from the control unit 22 Accordingly, the calculated m-order parallel error pattern IPAT is output to the error pattern storage unit 33 in the reverse order of the input order of the corresponding code data IDATA as shown in FIG.
[0046]
In step S5, the error pattern storage unit 33 is based on the m-th order parallel error pattern IPAT (s) (s = j−1, j−2,..., 1, 0) input from the error pattern calculation unit 31. It is determined whether or not there is an error in the m-order parallel code data IDATA (s) corresponding thereto. If it is determined that there is an error, the counter value CNT1 = (s) input from the backward counter 32 is simultaneously set to The m-th order parallel error pattern IPAT (s) is associated and stored in the LIFO memory 34.
[0047]
After the m-th order parallel error pattern IPAT (0) is calculated by the error pattern calculation unit 31 and input to the error pattern storage unit 33, and the presence / absence of an error in the corresponding code data IDATA (0) is determined, the control unit 22 outputs a decoding start signal. In response to this decoding start signal, the delay unit 24 starts outputting the delayed code data IDATA. The forward counter 35 starts counting and outputs the count value CNT2 to the comparison unit 36.
[0048]
In step S <b> 6, the comparison unit 36 reads the last stored one of the set of the locator LOC and the error pattern OPAT stored in the LIFO memory 34 of the error pattern storage unit 33. In step S7, the comparison unit 36 waits until the read locator LOC matches the count value CNT2 input from the forward counter 35, and the read locator LOC and the count value CNT2 input from the forward counter 35. , The process proceeds to step S 8, and the read error pattern OPAT is output to the error pattern adder 37.
[0049]
In step S9, the error pattern addition unit 37 adds the m-th order parallel error pattern OPAT input from the comparison unit 36 to the m-th order parallel code data IDATA input from the delay unit 24 and decodes it. Generate data ODATA.
[0050]
However, when there is no error in the m-order parallel code data IDATA input from the delay unit 24, the m-order parallel error pattern OPAT is not input from the comparison unit 36. In this case, the m-th order parallel code data IDATA having no error is directly used as decoded data ODATA. Above, description of the decoding process by the decoder 3 is complete | finished.
[0051]
As described above, since the decoder 3 can decode the m-order parallel input code data, compared with the conventional decoder 3 shown in FIG. The delay time until the decoded data is output can be shortened.
[0052]
Note that, depending on the type of code data, the parallel error correction unit 27 may not calculate the error evaluation polynomial. In this case, an m-order parallel error position pattern sequence obtained based on the error position polynomial is defined as an error pattern IPAT.
[0053]
The code data does not necessarily have a code length n that is a multiple of m. For example, when the code length n = m (j−1) + a and 0 <a <m, r {m (j−1) + a + 1}, r {m (j−1) + a} of the code data IDATA ,..., R {mj−1} are all set to 0, the decoder 31 can perform decoding.
[0054]
Furthermore, the present invention can be applied not only to a decoder on the receiving side of a communication system but also to a reproducing apparatus that reproduces code data from an information recording medium.
[0055]
The series of processes described above can be executed by hardware, but can also be executed by software. When a series of processing is executed by software, a computer (for example, the control unit 22 in FIG. 3) in which the program constituting the software is incorporated in dedicated hardware or various programs are installed. Thus, it is installed from a recording medium (for example, the recording medium 23 in FIG. 3) into a general-purpose personal computer or the like capable of executing various functions.
[0056]
The recording medium is distributed to provide a program to the user separately from the computer, and includes a magnetic disk (including a flexible disk) on which the program is recorded, an optical disk (CD-ROM (Compact Disc-Read Only Memory)) , DVD (Digital Versatile Disc)), magneto-optical disc (MD (Mini Disc)), or package media consisting of semiconductor memory, etc. The program is composed of a ROM in which a program is recorded, a hard disk included in a storage unit, or the like.
[0057]
In the present specification, the step of describing the program recorded in the recording medium is not limited to the processing performed in time series according to the described order, but is not necessarily performed in time series, either in parallel or individually. The process to be executed is also included.
[0058]
Further, in this specification, the system represents the entire apparatus constituted by a plurality of apparatuses.
[0059]
【The invention's effect】
As described above, according to the present invention, parallel code data can be decoded. Further, according to the present invention, it is possible to further reduce the delay time required from the input of the code data to the output of the decoded data.
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating a configuration example of a communication system that performs communication by encoding digital data.
2 is a block diagram illustrating a configuration example of a decoder in FIG. 1. FIG.
FIG. 3 is a block diagram illustrating a configuration example of a decoder according to an embodiment of the present invention.
FIG. 4 is a diagram illustrating an example of code data IDATA input in m-th order parallel to a decoder.
5 is a block diagram illustrating a configuration example of a parallel error correction unit in FIG. 3;
6 is a diagram illustrating an example of an error pattern calculated by an error pattern calculation unit in FIG. 5. FIG.
7 is a diagram showing the structure of the LIFO memory of FIG. 5;
8 is a diagram illustrating an example of decoded data output by an error pattern adding unit in FIG. 5. FIG.
FIG. 9 is a flowchart for explaining decoding processing by the decoder of FIG. 3;
[Explanation of symbols]
21 decoder, 22 control unit, 23 storage medium, 24 delay unit, 25 parallelization syndrome generation unit, 26 error position / error evaluation polynomial calculation unit, 27 parallelization error correction unit, 31 error pattern calculation unit, 32 backward counter, 33 error pattern storage unit, 34 LIFO memory, 35 forward counter, 36 comparison unit, 37 error pattern addition unit

Claims (8)

パラレル入力されたパラレル符号データを復号するデータ処理装置において、
パラレル入力された前記パラレル符号データを分配する分配手段と、
分配された一方の前記パラレル符号データを遅延させる遅延手段と、
前記遅延手段によって遅延された前記パラレル符号データに対する第1のインデックス番号を発生する第1の発生手段と、
分配された他方の前記パラレル符号データに基づき、前記パラレル符号データに対応するパラレルの誤りパターンデータを算出する算出手段と、
前記算出手段によって算出された前記誤りパターンデータに対する第2のインデックス番号を発生する第2の発生手段と、
前記パラレル符号データの訂正数だけ、前記第2のインデックス番号が対応付けられた前記誤りパターンデータを記憶する記憶手段と、
前記記憶手段から前記誤りパターンデータおよび前記第2のインデックス番号を取得する取得手段と、
前記取得手段によって取得された前記第2のインデックス番号と、前記第1の発生手段によって発生された前記第1のインデックス番号が一致するか否かを判定する判定手段と、
前記判定手段の判定結果に基づき、前記第1のインデックス番号に対応する前記パラレル符号データに、前記第2のインデックス番号に対応する前記誤りパターンデータを加算してパラレルの復号データを生成する生成手段と
を含むことを特徴とするデータ処理装置。
In a data processing device for decoding parallel input parallel code data,
Distributing means for distributing the parallel code data inputted in parallel;
Delay means for delaying the distributed the parallel code data one has,
First generating means for generating a first index number for the parallel code data delayed by the delay means;
Based on Distributed other of the parallel code data, and calculating means for calculating an error pattern data of the parallel corresponding to the parallel code data,
Second generating means for generating a second index number for the error pattern data calculated by the calculating means;
Storage means for storing the error pattern data associated with the second index number by the number of corrections of the parallel code data ;
Obtaining means for obtaining the error pattern data and the second index number from the storage means;
Determining means for determining whether or not the second index number acquired by the acquiring means and the first index number generated by the first generating means match;
Generation means for generating parallel decoded data by adding the error pattern data corresponding to the second index number to the parallel code data corresponding to the first index number based on the determination result of the determination means A data processing device comprising:
前記算出手段は、前記パラレル符号データに対応するパラレルの前記誤りパターンデータを、前記パラレル符号データの入力の順序とは逆の順序で前記記憶手段に出力し、
前記第1の発生手段は、前記第1のインデックス番号を、所定の値ずつインクリメントして発生し、
前記第2の発生手段は、前記第2のインデックス番号を、所定の値ずつデクリメントして発生する
ことを特徴とする請求項1に記載のデータ処理装置。
The calculation means outputs the parallel error pattern data corresponding to the parallel code data to the storage means in an order reverse to the input order of the parallel code data,
The first generation means generates the first index number by incrementing a predetermined value,
The data processing apparatus according to claim 1, wherein the second generation unit generates the second index number by decrementing the second index number by a predetermined value.
前記算出手段は、前記パラレル符号データに対応するシンドローム多項式を算出し、前記シンドローム多項式に基づいて少なくとも誤り位置多項式算出し、前記誤り位置多項式基づいて前記誤りパターンデータを算出する
ことを特徴とする請求項1に記載のデータ処理装置。
It said calculating means includes a wherein calculating a corresponding syndrome polynomial in parallel the code data, based on said syndrome polynomial to calculate at least the error position polynomial, and calculates the error pattern data based on the error location polynomial The data processing apparatus according to claim 1.
前記記憶手段は、LIFOメモリである
ことを特徴とする請求項1に記載のデータ処理装置。
The data processing apparatus according to claim 1, wherein the storage unit is a LIFO memory.
前記生成手段は、
前記第2のインデックス番号と前記第1のインデックス番号が一致すると判定された場合、前記第1のインデックス番号に対応する前記パラレル符号データに、前記第2のインデックス番号に対応するパラレルの前記誤りパターンデータを加算して前記復号データを生成し、
前記第2のインデックス番号と前記第1のインデックス番号が一致しないと判定された場合、前記第1のインデックス番号に対応する前記パラレル符号データを、そのまま前記復号データとする
ことを特徴とする請求項1に記載のデータ処理装置。
The generating means includes
If the said second index number first index number is determined to match, the said parallel code data corresponding to the first index number, the parallel of the error pattern corresponding to the second index number Adding the data to generate the decoded data;
The parallel code data corresponding to the first index number is used as the decoded data as it is when it is determined that the second index number and the first index number do not match. The data processing apparatus according to 1.
パラレル入力されたパラレル符号データを復号するデータ処理装置のデータ処理方法において、
パラレル入力された前記パラレル符号データを分配する分配ステップと、
分配された一方の前記パラレル符号データを遅延させる遅延ステップと、
延された前記パラレル符号データに対する第1のインデックス番号を発生する第1の発生ステップと、
分配された他方の前記パラレル符号データに基づき、前記パラレル符号データに対応するパラレルの誤りパターンデータを算出する算出ステップと、
前記算出ステップの処理で算出された前記誤りパターンデータに対する第2のインデックス番号を発生する第2の発生ステップと、
前記パラレル符号データの訂正数だけ、前記第2のインデックス番号が対応付けられた前記誤りパターンデータをメモリに記憶させる記憶ステップと、
前記メモリから前記誤りパターンデータおよび前記第2のインデックス番号を取得する取得ステップと、
前記取得ステップの処理で取得された前記第2のインデックス番号と、前記第1の発生ステップの処理で発生された前記第1のインデックス番号が一致するか否かを判定する判定ステップと、
前記判定ステップの処理での判定結果に基づき、前記第1のインデックス番号に対応する前記パラレル符号データに、前記第2のインデックス番号に対応するパラレルの前記誤りパターンデータを加算してパラレルの復号データを生成する生成ステップと
を含むことを特徴とするデータ処理方法。
In a data processing method of a data processing apparatus for decoding parallel input parallel code data,
A distribution step of distributing the parallel code data input in parallel;
A delay step of delaying one of the distributed parallel code data;
A first generation step of generating a first index number for slow cast was the parallel code data,
Based on the distributed other of the parallel code data, a calculation step of calculating an error pattern data of the parallel corresponding to the parallel code data,
A second generation step of generating a second index number for the error pattern data calculated in the calculation step;
Only correction number of the parallel code data, a storage step of causing storing said error pattern data to which the second index number associated with the memory,
Obtaining the error pattern data and the second index number from the memory ;
A determination step of determining whether or not the second index number acquired in the processing of the acquisition step matches the first index number generated in the processing of the first generation step;
Wherein based on the determination result in the process of determination step, the said parallel code data corresponding to the first index number, the second parallel of the parallel decoded data by adding the error pattern data corresponding to the index number A data processing method, comprising: a generating step for generating.
パラレル入力されたパラレル符号データを復号するデータ処理装置の制御用のプログラムであって、
パラレル入力された前記パラレル符号データを分配する分配ステップと、
分配された一方の前記パラレル符号データを遅延させる遅延ステップと、
延された前記パラレル符号データに対する第1のインデックス番号を発生する第1の発生ステップと、
分配された他方の前記パラレル符号データに基づき、前記パラレル符号データに対応するパラレルの誤りパターンデータを算出する算出ステップと、
前記算出ステップの処理で算出された前記誤りパターンデータに対する第2のインデックス番号を発生する第2の発生ステップと、
前記パラレル符号データの訂正数だけ、前記第2のインデックス番号が対応付けられた前記誤りパターンデータをメモリに記憶させる記憶ステップと、
前記メモリから前記誤りパターンデータおよび前記第2のインデックス番号を取得する取得ステップと、
前記取得ステップの処理で取得された前記第2のインデックス番号と、前記第1の発生ステップの処理で発生された前記第1のインデックス番号が一致するか否かを判定する判定ステップと、
前記判定ステップの処理での判定結果に基づき、前記第1のインデックス番号に対応する前記パラレル符号データに、前記第2のインデックス番号に対応するパラレルの前記誤りパターンデータを加算してパラレルの復号データを生成する生成ステップと
を含む処理をデータ処理装置のコンピュータに実行させるプログラムが記録されていることを特徴とする記録媒体。
A program for controlling a data processing device for decoding parallel code data input in parallel ,
A distribution step of distributing the parallel code data input in parallel;
A delay step of delaying one of the distributed parallel code data;
A first generation step of generating a first index number for slow cast was the parallel code data,
Based on the distributed other of the parallel code data, a calculation step of calculating an error pattern data of the parallel corresponding to the parallel code data,
A second generation step of generating a second index number for the error pattern data calculated in the calculation step;
Only correction number of the parallel code data, a storage step of causing storing said error pattern data to which the second index number associated with the memory,
Obtaining the error pattern data and the second index number from the memory ;
A determination step of determining whether or not the second index number acquired in the processing of the acquisition step matches the first index number generated in the processing of the first generation step;
Wherein based on the determination result in the process of determination step, the said parallel code data corresponding to the first index number, the second parallel of the parallel decoded data by adding the error pattern data corresponding to the index number Generation step to generate and
A recording medium on which a program for causing a computer of a data processing apparatus to execute processing including the above is recorded .
パラレル入力されたパラレル符号データを復号するデータ処理装置の制御用のプログラムであって、
パラレル入力された前記パラレル符号データを分配する分配ステップと、
分配された一方の前記パラレル符号データを遅延させる遅延ステップと、
延された前記パラレル符号データに対する第1のインデックス番号を発生する第1の発生ステップと、
分配された他方の前記パラレル符号データに基づき、前記パラレル符号データに対応するパラレルの誤りパターンデータを算出する算出ステップと、
前記算出ステップの処理で算出された前記誤りパターンデータに対する第2のインデックス番号を発生する第2の発生ステップと、
前記パラレル符号データの訂正数だけ、前記第2のインデックス番号が対応付けられた前記誤りパターンデータをメモリに記憶させる記憶ステップと、
前記メモリから前記誤りパターンデータおよび前記第2のインデックス番号を取得する取得ステップと、
前記取得ステップの処理で取得された前記第2のインデックス番号と、前記第1の発生ステップの処理で発生された前記第1のインデックス番号が一致するか否かを判定する判定ステップと、
前記判定ステップの処理での判定結果に基づき、前記第1のインデックス番号に対応する前記パラレル符号データに、前記第2のインデックス番号に対応するパラレルの前記誤りパターンデータを加算してパラレルの復号データを生成する生成ステップと
を含む処理をデータ処理装置のコンピュータに実行させることを特徴とするプログラム。
A program for controlling a data processing device for decoding parallel code data input in parallel ,
A distribution step of distributing the parallel code data input in parallel;
A delay step of delaying one of the distributed parallel code data;
A first generation step of generating a first index number for slow cast was the parallel code data,
Based on the distributed other of the parallel code data, a calculation step of calculating an error pattern data of the parallel corresponding to the parallel code data,
A second generation step of generating a second index number for the error pattern data calculated in the calculation step;
Only correction number of the parallel code data, a storage step of causing storing said error pattern data to which the second index number associated with the memory,
Obtaining the error pattern data and the second index number from the memory ;
A determination step of determining whether or not the second index number acquired in the processing of the acquisition step matches the first index number generated in the processing of the first generation step;
Wherein based on the determination result in the process of determination step, the said parallel code data corresponding to the first index number, the second parallel of the parallel decoded data by adding the error pattern data corresponding to the index number Generation step to generate and
A program for causing a computer of a data processing apparatus to execute a process including:
JP2002327786A 2002-11-12 2002-11-12 Data processing apparatus and method, recording medium, and program Expired - Fee Related JP4147909B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002327786A JP4147909B2 (en) 2002-11-12 2002-11-12 Data processing apparatus and method, recording medium, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002327786A JP4147909B2 (en) 2002-11-12 2002-11-12 Data processing apparatus and method, recording medium, and program

Publications (2)

Publication Number Publication Date
JP2004165866A JP2004165866A (en) 2004-06-10
JP4147909B2 true JP4147909B2 (en) 2008-09-10

Family

ID=32806274

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002327786A Expired - Fee Related JP4147909B2 (en) 2002-11-12 2002-11-12 Data processing apparatus and method, recording medium, and program

Country Status (1)

Country Link
JP (1) JP4147909B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7583833B2 (en) * 2006-01-27 2009-09-01 Advanced Micro Devices, Inc. Method and apparatus for manufacturing data indexing
CN117081611B (en) * 2023-10-17 2024-03-26 北京融为科技有限公司 Decoding method and device based on parallel processing

Also Published As

Publication number Publication date
JP2004165866A (en) 2004-06-10

Similar Documents

Publication Publication Date Title
JP2821324B2 (en) Error correction circuit
EP0567148B1 (en) Operating circuit for galois field
EP0998791B1 (en) Concurrent row/column syndrome generator for a product code
US8284511B2 (en) Magnetic disk controller to process plural data sets for recording onto a medium
JPH11282701A (en) Ecc system for generating crc syndrome to random data in computer storage device
US20100031123A1 (en) Unified memory architecture for recording applications
US20100005364A1 (en) Encoding method, encoding apparatus, decoding method, and decoding apparatus using block code
EP0105499B1 (en) Method capable of simultaneously decoding two reproduced sequences
JP2002008325A (en) Information recording and reproducing method and information recording and reproducing circuit device using the same
JP7429223B2 (en) Turbo product code decoding method, device, decoder and computer storage medium
JP4147909B2 (en) Data processing apparatus and method, recording medium, and program
JP3345385B2 (en) Chain search device
US20100189130A1 (en) Data processing apparatus and method and encoding device
US7907362B2 (en) Magnetic disk controller and method
JPH10145238A (en) Error-correcting device and its method
JP2005216477A (en) Method and device for decoding dvd using selective po correction
Zhang et al. Novel interpolation and polynomial selection for low-complexity chase soft-decision Reed-Solomon decoding
JP3991905B2 (en) Data recording method and data recording apparatus
JP4147910B2 (en) Data processing apparatus and method
CN111798859B (en) Data processing method, device, computer equipment and storage medium
JP3740256B2 (en) Error correction code decoding apparatus and error correction code decoding method
JP2553571B2 (en) Galois field arithmetic unit
JP2007013806A (en) Error correction processor
JP3295537B2 (en) Multi-byte error detection and correction device
JP3178346B2 (en) Reed-Solomon error correction circuit

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20051026

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071206

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071210

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080121

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080616

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

Free format text: PAYMENT UNTIL: 20110704

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110704

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees