JP3773740B2 - Decoding device - Google Patents
Decoding device Download PDFInfo
- Publication number
- JP3773740B2 JP3773740B2 JP2000042867A JP2000042867A JP3773740B2 JP 3773740 B2 JP3773740 B2 JP 3773740B2 JP 2000042867 A JP2000042867 A JP 2000042867A JP 2000042867 A JP2000042867 A JP 2000042867A JP 3773740 B2 JP3773740 B2 JP 3773740B2
- Authority
- JP
- Japan
- Prior art keywords
- error correction
- data
- storage element
- descrambling
- processing
- 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
Landscapes
- Error Detection And Correction (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、データ転送システムにおけるデスクランブル処理および誤り訂正処理のための復号装置および復号方法に関し、特に、積符号などの多次元の誤り訂正符号を含むデータのデスクランブル処理を処理するための復号装置および復号方法に関する。
【0002】
【従来の技術】
大量の情報量を有する映像情報等の記録再生や伝送がデジタル信号として行なわれるようになるのに伴い、記録された情報あるいは伝送される情報に対する信頼性を高めるために誤り訂正および誤り検査の重要度が増大する。特に、リアルタイムでの記録や再生が必要となる場合、このような大量の情報に対する誤り訂正や検査を行なうためには、高速な処理が必要となる。
【0003】
従来のデータ伝送システム、たとえば記録再生可能な光磁気ディスク装置は、受信したデータに積符号からなる誤り訂正符号を付加して、記録媒体にデータの格納を行なう。ここで、記録媒体に格納されるデータは、予めスクランブルされ、誤り訂正符号化されたものである。その後、格納されたデータは、必要に応じて誤り訂正装置へ呼出され、誤りの訂正がなされた後、デスクランブル処理され、外部に出力される。
【0004】
また、再生専用光ディスク装置においても同様に、格納されたデータは必要に応じて誤り訂正装置へ呼出され、誤り訂正がなされた後、デスクランブル処理され、外部に出力される。
【0005】
従来の誤り訂正システムにおいて、たとえば、DVD(Digital Video Disc)においては、ディスクから呼出されたデータは、一旦たとえば、SDRAM(Synchronous Dynamic Random Access Memory)等の外部半導体記憶素子のバッファに保存される。その後、誤り訂正装置によりデータが読み出され、誤りが訂正される。ここで、たとえば、DVDでは、データを長方形に並べ、縦方向(以下、PO方向とも呼ぶ)と横方向(以下、PI方向とも呼ぶ)の2方向の誤り訂正符号を付加した積符号が用いられる。
【0006】
図12は、上述したような誤り訂正計算を実現するための従来の誤り訂正装置2000の構成を示す概略ブロック図である。
【0007】
図12を参照して、誤り訂正装置2000においては、外部メモリ21に読込まれたデータは、まず誤り訂正回路22により、誤りの訂正が行なわれる。
【0008】
誤りの訂正回路22は、外部メモリ21からデータを読込み、誤りを訂正した後、外部メモリ21に再び誤り訂正後のデータを書込む。
【0009】
続いて、すべての誤りが訂正された後、次にデスクランブル回路23において、デスクランブル演算がなされる。
【0010】
デスクランブル回路23は、外部メモリ21からデータを読取り、デスクランブル変換をした後、再びデスクランブル後のデータを外部メモリ21に書込む。
【0011】
すなわち、復号を行なう基本的な処理パターンは、以下のような手順によることになる。
【0012】
1.外部メモリ(たとえば、SDRAM)21からPI方向のデータを読込みシンドロームを計算する。
【0013】
2.シンドロームの値より誤り量および誤り位置を算出し、外部メモリ21上で誤りを訂正する。
【0014】
3.次に、外部メモリ21からPO方向のデータを読込みシンドロームを計算する。
【0015】
4.シンドロームの値より誤り量および誤り位置を算出し、外部メモリ21上に記憶されたデータについて誤りを訂正する。
【0016】
これらの処理を繰返すことにより、誤りを訂正する。
5.これらの誤り訂正が終了後、再び、外部メモリ21よりデータ(D′k:データDkがスクランブル処理されたデータをD′kで表す)を読取り、デスクランブル処理回路23で下記に示す式に基づきデスクランブル処理を行なう。
【0017】
Dk=D′k Exor Sk(k=0〜2047) …(1)
ここで、S0は予め用意されたテーブルにより初期値として与えられる。さらに、次式により与えられるデータSkを用いて、データD′kがデスクランブル処理されることになる。
【0018】
ここで、式(2)において、“7′d0”は、データ“0”が7個並ぶことを意味し、式(2)は、この7個の“0”と、初期値として与えられるS0とをつなげて、第14ビット〜第0ビットまでの、15ビットのデータをT0とすることを意味する。
【0019】
また、式(3)は、第nステップ目で生成されるデータTn[14:0]のうちの第13ビット〜第0ビットまでのデータTn[13:0]と、データTn[14:0]のうちの第14ビットのデータTn[14]と第10ビットのデータTn[10]との排他的論理和演算結果とを並べることで、第(n+1)ステップ目において、第14ビット〜第0ビットまでの15ビットからなるデータTn+1[14:0]を生成することを意味する。
【0020】
さらに式(4)は、このようにして生成されるデータTn[14:0]のうち、8の倍数のステップで形成されるデータT8k[14:0]の第7ビット〜第0ビットまでのデータが、データSkに相当することを示す。
【0021】
【発明が解決しようとする課題】
ただし、図12に示したような回路構成では、外部メモリへのアクセス量が膨大となるため時間がかかり、誤り訂正およびデスクランブル処理を高速化することが困難であった。
【0022】
つぎに、このような問題点を解決するための従来技術についてさらに説明する。
【0023】
図13は、このような従来技術として、特開平10−126279号公報に開示された誤り訂正装置3000の構成を示す概略ブロック図である。
【0024】
図13を参照して、まず、外部メモリ31に読込まれたデータは、まず誤り訂正計算の一部であるシンドローム演算回路32において、シンドローム計算が行なわれる。
【0025】
そのとき、読込まれたデータは、同時にデスクランブル回路33に送り込まれ、デスクランブル処理が行なわれる。デスクランブル処理が終了したデータは、外部メモリ31に書込まれる。
【0026】
その後、シンドローム計算によって得られたシンドロームは、誤り量計算部34に送込まれ、誤り位置および誤り量が算出される。誤り量計算部34は、この誤り位置に対応したデータを、外部メモリ31から読込み、誤りを訂正した後、再び外部メモリ31に書込む。
【0027】
このような方法では、外部メモリへのアクセス量は2/3程度の減少されることになるが、まだ十分な減少量ではない。
【0028】
また、積符号特有の繰返し処理への配慮はなされておらず、実際のDVD等への誤り訂正/デスクランブル処理を効果的に行なうことは困難である。
【0029】
すなわち、積符号では誤り訂正を、各方向(PO方向およびPI方向)について、繰返して複数回実行するのが一般的である。ここで、誤り訂正を行なうためのシンドローム計算は、デスクランブル前のデータを用いて計算するため、図13に示したようにデスクランブル処理を行なってしまうと、繰り返して次の誤り訂正をするためには、外部メモリ31中に格納されているデータに対して再スクランブルを行なうことが必要となり、演算量、回路規模も結果として増大してしまうことになる。
【0030】
本発明は、上記のような問題点を解決するためになされたものであって、その目的は、積符号の誤り訂正およびデスクランブルを高速に処理することが可能な復号装置を提供することである。
【0031】
【課題を解決するための手段】
この発明の主たる局面に従うと、誤り訂正用積符号を含むデータの復号装置であって、復号装置の動作を制御するための制御手段と、転送されてきたデータを一時的に蓄えるための第1の記憶素子と、第1の記憶素子から読込んだデータに対する第1の方向の誤り訂正処理を行なう第1の誤り訂正手段と、データに対するデスクランブル処理を行なうデスクランブル手段と、第1の方向の誤り訂正処理結果を受けて、第2の方向に誤り訂正処理を行なうための第2の誤り訂正手段とを備え、制御手段は、i)第1の記憶素子から読込んだデータに対する第1の方向の誤り訂正処理を行なった後、デスクランブル手段に、第1の方向の誤り訂正後のデータに対するデスクランブル処理を行わせ、ii)デスクランブル処理後のデータを第1の記憶素子に書き戻し、iii)デスクランブル処理と並行して、第2の誤り訂正手段に、第1の記憶素子に格納されるデータに対する誤り訂正を行なわせて、第1の記憶素子に書き戻す。
【0034】
この発明のさらに他の局面に従うと、誤り訂正用積符号を含むデータに対して第1の方向の誤り訂正と第2の方向の誤り訂正を繰返し行なう復号装置であって、復号装置の動作を制御するための制御手段と、転送されてきたデータを一時的に蓄えるための第1の記憶素子と、第1の記憶素子から読込んだデータに対する第1の方向の誤り訂正処理を行なう第1の誤り訂正手段と、データに対するデスクランブル処理を行なった結果を第1の記憶素子に書き戻すデスクランブル手段と、第1の方向の誤り訂正処理結果を受けて、第2の方向に誤り訂正処理を行なうための第2の誤り訂正手段と、第1の誤り訂正手段からのデータを受けて、最後に行なう第1の方向の誤り訂正が行なわれた場合、デスクランブル手段にデータを与え、最後に行なう第1の方向の誤り訂正が行なわれていない場合、第1の記憶素子にデータを書き戻すための分岐手段とを備え、制御手段は、i)第1の記憶素子から読込んだデータに対する第1の方向の誤り訂正処理を行なった後、分岐手段に第1の誤り訂正処理データを与え、ii)最後に行なう第1の方向の誤り訂正が行なわれた場合、デスクランブル手段に、第1の方向の誤り訂正後のデータに対するデスクランブル処理を行わせ、デスクランブル処理後のデータを第1の記憶素子に書き戻し、デスクランブル処理と並行して、第2の誤り訂正手段に、第1の記憶素子に格納されるデータに対する誤り訂正を行なわせて、第1の記憶素子に書き戻し、iii)最後に行なう第1の方向の誤り訂正が行なわれていない場合、第1の方向の誤り訂正後のデータを第1の記憶素子に書き戻すとともに、第2の誤り訂正手段に、第1の記憶素子に格納されるデータに対する誤り訂正を行なわせて、第1の記憶素子に書き戻す。
【0035】
好ましくは、制御手段は、デスクランブル処理と並行して、第2の誤り訂正手段に、第1の記憶素子に格納されるデータに対する誤り訂正を行なわせる際に、第1の記憶素子に格納されるデータのうち、第2の誤り訂正処理において得られた誤り位置に相当するデータに対する誤り訂正を行なわせる。
【0036】
好ましくは、第2の誤り訂正手段は、第1の方向の誤り訂正処理結果を受けて、一時的に格納するための第2の記憶素子と、第1の誤り訂正手段から順次転送される第1の方向の誤り訂正後のデータと第2の記憶素子に格納されたデータとに基づいて、第2の方向に対する誤り訂正のためのシンドロームを計算し、第2の記憶素子に計算結果を上書きするシンドローム計算手段とを含む。
【0037】
【発明の実施の形態】
[実施の形態1]
以下、この発明の実施の形態1の誤り訂正およびデスクランブル回路について、図面を参照して説明する。
【0038】
図1は、この発明に係る誤り訂正およびデスクランブル回路を備えたディスク再生装置1000の構成を示す概略ブロック図である。
【0039】
図1を参照して、ドライブ駆動回路149により駆動されるドライブ141でディスクから読取られたデータは、制御回路144中の信号読取回路142で復調される。サーボ回路143は、信号読取回路142に読み取られる信号に基づいて、ドライブ駆動回路149を制御する。
【0040】
ディスクからのデータは、信号読取回路142で復調された後、復号回路1100中のデータバッファ11に転送される。転送されたデータは、誤り訂正回路12で誤りが訂正され、デスクランブル回路13でデスクランブル処理が施され、インターフェース148を介して情報データがホストPCへ転送される。
【0041】
なお、以下の説明では、DVDを例にとって、これに記録されたデータに対応する積符号の誤り訂正および並行検査装置ならびに方法について説明するが、本発明はこのような場合に限定されることなく、1ブロックのデータに対して誤り訂正積符号が配置される積符号の誤り訂正装置ならびに誤り訂正方法に適用可能なものである。
【0042】
図2は、図1に示したDVDにおける誤り訂正積符号のフォーマットを示す概念図である。二次元に配列された172×192バイトの情報データに横方向の10バイトのパリティPIと、縦方向の16バイトのパリティPOが付加したデータを1ブロックとしている。
【0043】
図3は、図1に示した復号回路1100の構成を説明するためのブロック図である。復号回路1100の動作は、復号処理コントローラ10により制御される。
【0044】
以下、この図3を用いて復号回路1100の構成および動作について説明を行なう。
【0045】
第1のステップでは、入力データがバッファメモリ11に転送される。ここでは、たとえば、SDRAMをデータバッファメモリ11として使用する。
【0046】
第2ステップでは、誤り訂正回路12が、誤り訂正のための単位となるデータ、たとえば1符号語分のデータをバッファメモリ11から読込み、誤り訂正処理を行なう。ここで、誤り訂正回路12は、訂正前の1符号語分のデータを一時保存するための記憶素子121と誤り訂正演算部122とを備えており、誤り訂正演算部122で得られた訂正量で、この記憶素子121に一時保存されたデータを訂正する。
【0047】
第3ステップでは、このようにして得られ、かつ一時保存されていた訂正後のデータをデスクランブル回路13に送り、デスクランブル処理を行なう。
【0048】
図4は、デスクランブル回路13の構成を説明するための概略ブロック図である。デスクランブル回路13に入力されたデータは、デスクランブルパターン発生器51より得られる値と排他的論理和演算回路52で排他的論理和が演算され、出力されることになる。ここで、デスクランブルパターン発生器51には、DVD上に予め格納されていたデータに基づいて、初期値S0が与えられる。
【0049】
再び、図3の復号回路1100の動作についての説明にもどって、第4ステップでは、デスクランブル処理後のデータをバッファメモリ11に書込む。
【0050】
このような回路構成を取ることにより、データバッファメモリ11へのアクセスを1/2程度まで減少させることが可能となる。したがって、積符号の誤り訂正およびデスクランブルを高速に処理することが可能である。
【0051】
[実施の形態2]
図5は、本発明の実施の形態2の積符号の誤り訂正およびデスクランブル回路を備える復号回路1200の構成を説明するための概略ブロック図である。
【0052】
復号回路1200の動作は、復号処理コントローラ10により制御されている。
【0053】
実施の形態2においては、積符号の処理における誤り訂正の特徴を考慮したものであり、以下に説明するように、図2に示したようなDVDの積符号を用いた誤り訂正およびデスクランブル処理等において、より高速な処理を可能とする。
【0054】
実施の形態2の復号回路1200における積符号の誤り訂正処理は、たとえば積符号の内符号(PI)を実行した後、外符号(PO)を実行する場合に適用される。
【0055】
図6は、図5に示した実施の形態2の復号回路1200の動作を説明するためのフローチャートである。
【0056】
以下、図5および図6を参照して、実施の形態2の復号回路1200の構成および動作を説明する。
【0057】
処理が開始されると、まず、第1ステップでは、入力データがバッファメモリ11に転送される(ステップS102)。ここでは、たとえばデータバッファメモリ11としてSDRAMが使用されている。
【0058】
第2のステップでは、バッファメモリ11より誤り訂正を行なうのに必要な、たとえば1符号語分のデータを読取り、データ用記憶素子41に一時保存する(ステップS104)。
【0059】
つづいて、第3ステップでは、一時保存されているデータをデータ用記憶素子41から読取り、第1のシンドローム計算回路42においてシンドロームの計算がなされる(ステップS106)。
【0060】
第4ステップでは、計算されたシンドロームの値は、第1の誤り量計算回路に送られ、誤り量が計算される(ステップS108)。
【0061】
ここで誤りが存在しない場合は、演算上は誤り量が“0”として取扱うものとする。
【0062】
第5ステップでは、こうして計算された誤り量とデータ用記憶素子41に一時保管されていたデータを排他的論理和演算回路47において排他的論理和演算を行なうことにより、誤り訂正がなされた全てのデータが得られる(ステップS110)。
【0063】
第6ステップでは、このようにして得られた訂正済みデータはデスクランブル回路13に送られる(ステップS112)。
【0064】
ここで、デスクランブル回路13の構成は、実施の形態1と同様である。
第7ステップでは、デスクランブル回路13において、デスクランブル処理がなされたデータが、バッファメモリ11に書き戻される(ステップS114)。
【0065】
一方、第8ステップでは、第6ステップにおいてデスクランブル回路13に送られるデータは、並行して第2のシンドローム計算回路45に送られる。さらに、シンドローム用記憶素子44でシンドロームの計算途中の値を保存することにより、シンドローム計算が第2のシンドローム計算回路45にて行なわれる(ステップS116)。
【0066】
第9ステップでは、このようにして計算されたシンドロームの値は、第2の誤り量計算回路46に送込まれ、誤り量の計算が行なわれる(ステップS118)。
【0067】
第10のステップでは、第7ステップでデスクランブル処理が行なわれたバッファメモリ内のデータを、第2の誤り検出された位置においてのみ読込み、排他的論理和演算回路48において排他的論理和が取られ、バッファメモリ11に書き戻される(ステップS120)。
【0068】
なお、以上の処理のうち、第3ステップ(ステップS106)において、第1のシンドローム計算回路42においてシンドロームの計算がなされる処理と、第8のステップ(ステップS116)において、シンドローム用記憶素子44を用いて第2のシンドローム計算回路45により行なわれる処理をさらに詳しく説明すると以下のようである。
【0069】
すなわち、まず、図7は、図2に示した1ブロック分のデータ中のデータ配列を示す概念図である。すなわち、列方向にはROW0〜ROW207までの208バイトのデータが配列されており、行方向にはCOL0〜COL181までの182バイトのデータが配列されている。
【0070】
つぎに、図8は、第1のシンドローム計算回路42の構成を示すブロック図を示している。
【0071】
周知のように、誤りを含んでいる符号列の受信多項式y(x)を、以下の式(5)のように表わした場合、シンドロームは式(6)で与えられる。
【0072】
y(x)=ym-1xm-1+ym-2xm-2+…+y1x+y0 … (5)
【0073】
【数1】
【0074】
但し、mは原始多項式の項数であり、図7に示す積符号ブロックでは、PI系列のライン符号に対して誤り訂正を行なう場合、m=182となり、PO系列のライン符号に対して誤り訂正を行なう場合、m=208となる。
【0075】
さらに、tは訂正可能な誤り数であり、αは原始多項式の根である。
このシンドロームの計算式を回路で実現したのが第1のシンドローム計算回路42である。但し、この場合単純な和演算ではなく排他的論理和演算を行なう。
【0076】
第1のシンドローム計算回路42は、排他的論理和回路412anとレジスタ412bnと乗算器412cnとからなる回路をn個備えている。
【0077】
たとえば、図2のようなDVDのフォーマットでは、10バイトのパリティPIを付加することが取り決められているため、n=10(0〜9)であり、式(6)におけるjに相当する。
【0078】
図9は、シンドローム用記憶素子44と第2のシンドローム計算回路45の構成を示すブロック図を示している。シンドローム用記憶素子44は、記憶素子413bm(m=0〜15)を備え、第2のシンドローム計算回路45は、排他的論理和演算回路413am(m=0〜15)と、乗算器413cm(m=0〜15)とを備える。
【0079】
第2のシンドローム計算回路45は、数式(6)のシンドローム計算を実現する上では、第1のシンドローム計算回路42と同じであるが、排他的論理和回路413amと記憶素子413bmと乗算器413cmとからなる回路をm個備えている。たとえば、図2のようなDVDフォーマットでは、16バイトのパリティPOを付加することが取り決められているため、m=16(0〜15)である。記憶素子13bmは、シンドロームの計算途中経過の値を逐次記憶するためのもので、特に限定されないが、たとえばSRAM(Static Random Access Memory)からなる。
【0080】
以上のような構成に基づき、シンドローム演算動作を、図5の矢印に示すステップに従って説明する。
【0081】
コントローラ10からデコード命令が復号回路1200に与えられると、復号回路1200が、積符号ブロック化された1ブロック分のデータに対して誤り訂正処理およびデスクランブル処理を開始する。
【0082】
まず、バッファメモリ11からデータ用記憶素子41に、図7におけるROW0のPI系列ラインデータが転送され、さらに第1のシンドローム計算回路42により、PI系列のラインの符号に対するシンドローム計算が行なわれ、第1の誤り量計算回路43および排他的論理和演算回路47により誤り訂正演算が実行される。
【0083】
すなわち、バッファメモリ11から、図7に示す積符号ブロックPI系列のライン毎にデータyi(i=181〜0)が順次排他的論理和回路412an(n=0〜9)に入力され、その演算結果が一旦レジスタ412bn(n=0〜9)に蓄積される。そして、レジスタ412bnで蓄積されたデータに対し、乗算器412cn(n=0〜9)によりαn(n=0〜9)が乗算され、その結果と次のデータy(i−1)とが排他的論理和回路412anで演算される。これを繰返すことによりシンドロームが計算される。
【0084】
シンドロームを計算した後は、第1の誤り量計算回路43および排他的論理和演算回路47により誤り訂正演算が行なわれ、これらPI系列のラインに対する誤り訂正演算が終了する。
【0085】
次に、排他的論理和演算回路47から、ライン毎に訂正されたデータは、デスクランブル回路13に転送されるともに、第2のシンドローム計算回路45に転送されて、PO方向についての誤り訂正が実行される。
【0086】
排他的論理和演算回路47からの訂正済みデータは、デスクランブル回路13においてデスクランブル処理を施された後、バッファメモリ11に転送されるとともに、第2のシンドローム計算回路13に転送される。
【0087】
ここでは、排他的論理和演算回路47から、訂正後のPI系列のラインデータyi(i=181〜10)が順次排他的論理和回路413an(n=0〜15)に入力され、その演算結果が記憶素子413bn(n=0〜15)に蓄積される。
【0088】
ただし、ROW0のPI系列ラインデータについては、それ以前に記憶素子413bn(n=0〜15)に蓄積されたデータが存在しないので、そのままの値が記憶素子413bnに蓄積されることになる。すなわち、この時点では、図7におけるROW0のPI系列ラインデータが第2のシンドローム計算回路45に入力され、172バイトのデータが記憶素子413bnに記憶される。
【0089】
次に、バッファメモリ11からROW1のPI系列ラインデータが転送され、第1のシンドローム計算回路42、第1の誤り量計算回路43および排他的論理和演算回路47により、PI系列のラインの符号に対する誤り訂正演算が実行され、訂正済みのROW1のデータが、デスクランブル回路13によりデスクランブルされ、バッファメモリ11に転送されて、バッファメモリ11上で誤りが訂正される。
【0090】
一方、排他的論理和演算回路47からの訂正済みデータが、デスクランブル回路13に転送されるのと同時に、第2のシンドローム計算回路45に転送される。ここで、図9に示す第2のシンドローム計算回路45は、まず、ROW1のPI系列ラインデータにおけるy(181)が入力されると、記憶素子413bnに記憶されているy(181)(ROW0のPI系列データ)を生み出して乗算器413cn(n=0〜15)に転送し、乗算器413bnにより、αn(n=0〜15)を乗算して、その結果と上記ROW1のPI系列ラインデータにおけるy(181)とを排他的論理和回路413anで演算し、その値を記憶素子413bnに記憶されているy(181)に上書きする。
【0091】
以下は、同様に、ROW1のPI系列ラインデータy(i)が入力される毎に、記憶素子413bnから対応するデータを読出して排他的論理和回路413anで演算し、その値を記憶素子413bnに記憶されているy(i)に上書きする。
【0092】
このように、記憶素子413bnにおいては、新しいデータを順次上書きするだけなので、172バイト(=182バイト−10バイト)×m(=16)のデータを記憶するだけの極めて少ない記憶容量を備えるだけでよい。
【0093】
以上の動作を図7におけるROW207まで繰返し行なうことにより、積符号ブロックにおけるPI系列の全ラインの符号に対する誤り訂正演算が終了するとともに、PO系列の全ラインの符号に対するシンドローム計算が終了することになる。
【0094】
その後は、第2の誤り量計算回路46において、誤り量の計算がなされ、排他的論理和演算回路48においてバッファメモリ11中のデータとの排他的論理和演算が行なわれることによりPO方向の誤り訂正がなされる。
【0095】
以上説明したような復号回路1200の構成にあっては、したがって、以下のとおりの作用効果を奏することができる。
【0096】
(1) 記憶素子413bnは、シンドロームの計算途中経過を記憶するものであり、新たなデータが入力される毎に順次上書きするように構成しているので、極めて少ない記憶容量を備えるだけでよく、回路面積および消費電力の増加を抑制することができる。
【0097】
(2) 排他的論理和演算回路47からの訂正済みデータを、デスクランブル回路13に転送するのと同時に、第2のシンドローム計算回路45に転送するよう構成したので、バッファメモリ11へのアクセス回数が減少しその分誤り訂正処理の高速化を実現することができる。
【0098】
[実施の形態3]
図10は、本発明の実施の形態3の復号回路1300の構成を説明するための概略ブロック図である。
【0099】
実施の形態3の復号回路1300の構成は、基本的に実施の形態2の復号回路1200の構成と同様であるが、図10に示すように、排他的論理和演算回路47の出力を受けてデスクランブル処理を行なうかどうかと、第2のシンドローム計算を行なうかどうかの2つの分岐処理を行なうための分岐回路50が設けられる構成となっている点で異なる。その他の点は、実施の形態2の復号回路1200の構成と同様であるので、同一部分には同一符号を付してその説明は繰り返さない。
【0100】
図11は、本発明の実施の形態3の復号回路1300の動作を説明するためのフローチャートである。
【0101】
実施の形態3の説明においては、積符号の内符号(PI)、外符号(PO)、内符号(PI)の順に誤り訂正が行なわれるものとする。
【0102】
この場合、上記実施の形態2において1回目の内符号の処理を行なう場合、デスクランブル処理を行なわずにデータをバッファメモリ11に書き戻し、2回目の内符号の処理のときにデスクランブル処理を行なうことにより、回路規模を増大させることなく高速な処理が実現できることになる。
【0103】
図10を参照して、まず処理が開始されると(ステップS400)、入力データをバッファメモリ11に転送する(ステップS402)。
【0104】
続いて、第1の方向の誤り訂正処理が行なわれ(ステップS404)、次に、分岐回路50において、第2の方向の誤り訂正を行なうかと最後の第1の方向の誤り訂正であるかの判断が行なわれる(ステップS406、ステップS408)。
【0105】
第2の方向の誤り訂正を行うと判断した場合は、第2の方向の誤り訂正処理が行なわれ(ステップS410)、続いて、第1の訂正処理後のバッファメモリのデータと誤り量を用いて誤り訂正が実行される(ステップS412)。
【0106】
一方、最後の第1の方向の誤り訂正であるかいなかの判断において(ステップS408)、最後の第1の方向の誤り訂正でない場合は、バッファメモリ11にメモリデータが書込まれ(ステップS414)、処理はステップS402に復帰する。
【0107】
一方、最後の第1の方向の誤り訂正である場合(ステップS408)、デスクランブル処理が実行され(ステップS416)、バッファメモリ11にデータの書込が行なわれ(ステップS418)、処理が終了する(ステップS420)。
【0108】
なお、積符号の処理順序として、内符号(PI)、外符号(PO)、内符号(PI)、外符号(PO)というように4回の訂正処理が行なわれる場合にも、同様に適用することが可能である。この場合は、上述したのと同様に、1回目の内符号の処理をする場合は、デスクランブル処理を行なわずにデータをバッファメモリに書き戻し、2回目の内符号の処理のときにデスクランブル処理を行なうことにより、回路規模を増大させることなく、高速な処理を実現することが可能となる。
【0109】
さらに、内符号または外符号についての訂正処理回数が増加しても、同様に処理することが可能である。
【0110】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【0111】
【発明の効果】
以上説明したように本発明は、データバッファから読込まれた誤り訂正後のデータを用い、デスクランブル処理を行なうため、バッファメモリに対するアクセスを1/2程度の減少させることができ、データの高速処理に対応することができる。
【0112】
また、さらに、積符号処理時には、デスクランブル処理前のデータで外符号のシンドロームを計算し、デスクランブル後のデータで誤り訂正を実行することにより、バッファメモリへのアクセスを最小限に抑えて処理を行なう構成となっているため、効果的に高速処理を行なうことが可能である。
【図面の簡単な説明】
【図1】 誤り訂正およびデスクランブル回路を備えたディスク再生装置1000の構成を示す概略ブロック図である。
【図2】 DVDにおける誤り訂正積符号のフォーマットを示す概念図である。
【図3】 復号回路1100の構成を説明するためのブロック図である。
【図4】 デスクランブル回路13の構成を説明するための概略ブロック図である。
【図5】 実施の形態2の積符号の誤り訂正およびデスクランブル回路を備える復号回路1200の構成を説明するための概略ブロック図である。
【図6】 実施の形態2の復号回路1200の動作を説明するためのフローチャートである。
【図7】 図2に示した1ブロック分のデータ中のデータ配列を示す概念図である。
【図8】 第1のシンドローム計算回路42の構成を示すブロック図を示している。
【図9】 シンドローム用記憶素子44と第2のシンドローム計算回路45の構成を示すブロック図を示している。
【図10】 本発明の実施の形態3の復号回路1300の構成を説明するための概略ブロック図である。
【図11】 本発明の実施の形態3の復号回路1300の動作を説明するためのフローチャートである。
【図12】 従来の誤り訂正装置2000の構成を示す概略ブロック図である。
【図13】 従来の誤り訂正装置3000の構成を示す概略ブロック図である。
【符号の説明】
11 バッファメモリ、12 誤り訂正回路、13 デスクランブル回路、41 データ用記憶素子、42 第1のシンドローム計算回路、43 第1の誤り量計算回路、44 シンドローム用記憶素子、45 第2のシンドローム計算回路、46 第2の誤り量計算回路、47 第1の誤り訂正用演算回路、48 第2の誤り訂正用演算回路、1000 ディスク再生装置、1100,1200,1300 復号回路。[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a decoding apparatus and decoding method for descrambling processing and error correction processing in a data transfer system, and in particular, decoding for processing data descrambling processing including a multidimensional error correction code such as a product code. The present invention relates to an apparatus and a decoding method.
[0002]
[Prior art]
The importance of error correction and error inspection is important in order to increase the reliability of recorded information or transmitted information as video information having a large amount of information is recorded and reproduced and transmitted as digital signals. The degree increases. In particular, when real-time recording or reproduction is required, high-speed processing is required to perform error correction and inspection on such a large amount of information.
[0003]
A conventional data transmission system, for example, a recordable / reproducible magneto-optical disk apparatus, adds an error correction code composed of a product code to received data and stores the data in a recording medium. Here, the data stored in the recording medium is previously scrambled and error correction encoded. Thereafter, the stored data is called to an error correction device as necessary, and after error correction is performed, descrambling is performed and the data is output to the outside.
[0004]
Similarly, in the read-only optical disk device, the stored data is called to an error correction device as necessary, and after error correction is performed, descrambling is performed and the data is output to the outside.
[0005]
In a conventional error correction system, for example, in a DVD (Digital Video Disc), data called from the disk is temporarily stored in a buffer of an external semiconductor memory element such as an SDRAM (Synchronous Dynamic Random Access Memory). Thereafter, the data is read out by the error correction device, and the error is corrected. Here, for example, in DVD, a product code in which data is arranged in a rectangle and error correction codes in two directions in the vertical direction (hereinafter also referred to as PO direction) and in the horizontal direction (hereinafter also referred to as PI direction) is added is used. .
[0006]
FIG. 12 is a schematic block diagram showing a configuration of a conventional
[0007]
Referring to FIG. 12, in
[0008]
The
[0009]
Subsequently, after all errors are corrected, the
[0010]
The descrambling
[0011]
That is, the basic processing pattern for decoding is based on the following procedure.
[0012]
1. The data in the PI direction is read from the external memory (for example, SDRAM) 21 and the syndrome is calculated.
[0013]
2. The error amount and error position are calculated from the syndrome value, and the error is corrected on the
[0014]
3. Next, the data in the PO direction is read from the
[0015]
4). The error amount and error position are calculated from the syndrome value, and the error is corrected for the data stored on the
[0016]
The error is corrected by repeating these processes.
5). After these error corrections are completed, the data (D 'k: Data DkScrambled data is represented by D′ k), and the
[0017]
Dk= D 'k Exor Sk(K = 0-2047) (1)
Here, S0 is given as an initial value by a table prepared in advance. Further, the data D′ k is descrambled using the data Sk given by the following equation.
[0018]
Here, in Expression (2), “7′d0” means that seven pieces of data “0” are arranged, and Expression (2) indicates that these seven “0” and S0 given as an initial value. To connect 15-bit data from the 14th bit to the 0th bit to T0Means that
[0019]
Further, the expression (3) is expressed as data T generated at the nth step.nThe data T from the 13th bit to the 0th bit of [14: 0]n[13: 0] and data Tn14th bit data T of [14: 0]n[14] and 10th bit data TnBy arranging the exclusive OR operation result with [10], in the (n + 1) th step, data T consisting of 15 bits from the 14th bit to the 0th bitn + 1[14: 0] is generated.
[0020]
Further, the expression (4) is obtained by the data T generated in this way.nData [T] formed in steps of multiples of 8 out of [14: 0]8kThe data from bit 7 to bit 0 of [14: 0] is data SkIt corresponds to.
[0021]
[Problems to be solved by the invention]
However, in the circuit configuration as shown in FIG. 12, the amount of access to the external memory becomes enormous and it takes time, and it is difficult to speed up error correction and descrambling processing.
[0022]
Next, the prior art for solving such problems will be further described.
[0023]
FIG. 13 is a schematic block diagram showing a configuration of an
[0024]
Referring to FIG. 13, first, data read into
[0025]
At that time, the read data is simultaneously sent to the descrambling circuit 33, and descrambling processing is performed. Data for which the descrambling process has been completed is written to the
[0026]
Thereafter, the syndrome obtained by the syndrome calculation is sent to the error
[0027]
In such a method, the access amount to the external memory is reduced by about 2/3, but it is not yet a sufficient reduction amount.
[0028]
In addition, no consideration is given to the repetition processing unique to the product code, and it is difficult to effectively perform error correction / descrambling processing on an actual DVD or the like.
[0029]
That is, in the product code, error correction is generally performed repeatedly in each direction (PO direction and PI direction) a plurality of times. Here, since syndrome calculation for error correction is performed using data before descrambling, if the descrambling process is performed as shown in FIG. 13, the next error correction is repeated. Therefore, it is necessary to re-scramble the data stored in the
[0030]
The present invention has been made to solve the above-described problems, and an object of the present invention is to provide a decoding apparatus capable of processing error correction and descrambling of product codes at high speed. is there.
[0031]
[Means for Solving the Problems]
According to the main aspects of this invention,An apparatus for decoding data including an error correction product code, comprising: control means for controlling the operation of the decoding apparatus; a first storage element for temporarily storing transferred data; In response to the first error correction means for performing error correction processing in the first direction for the data read from the storage element, descrambling means for performing descrambling processing for the data, and the error correction processing result in the first direction And a second error correction means for performing error correction processing in the second direction, and the control means performs i) error correction processing in the first direction for the data read from the first storage element. After that, the descrambling means performs descrambling processing on the error-corrected data in the first direction, ii) writing the descrambled data back to the first storage element, and iii) descrambling. In parallel with rumble processing, the second error correction means, and to perform error correction for the data stored in the first storage element, written back to the first memory element.
[0034]
According to yet another aspect of the inventionA decoding apparatus that repeatedly performs error correction in a first direction and error correction in a second direction on data including an error correction product code, the control means for controlling the operation of the decoding apparatus, and transfer A first storage element for temporarily storing the received data, a first error correction means for performing error correction processing in a first direction on the data read from the first storage element, and a data storage unit A descrambling means for writing back the result of the scramble process to the first storage element, and a second error correction for receiving the error correction process result in the first direction and performing the error correction process in the second direction When the error correction in the first direction performed last is received in response to the data from the first error correction means and the first error correction means, the data is supplied to the descrambling means and the error correction in the first direction performed last Is done If there is not, branching means for writing data back to the first storage element is provided, and the control means performs i) error correction processing in the first direction for the data read from the first storage element. The first error correction processing data is given to the branching means, and ii) when the error correction in the first direction to be performed last is performed, the descrambling means sends the descramble to the data after the error correction in the first direction. Processing, writing back the descrambled data to the first storage element, and in parallel with the descrambling process, the second error correction means causes the second error correction means to correct the data stored in the first storage element. And write back to the first memory element, and iii) if error correction in the first direction performed last is not performed, the data after error correction in the first direction is stored in the first memory element. Write back Both the second error correction means, and to perform error correction for the data stored in the first storage element, written back to the first memory element.
[0035]
PreferablyThe control unit causes the second error correction unit to perform error correction on the data stored in the first storage element in parallel with the descrambling process, and stores data stored in the first storage element. Of these, error correction is performed on data corresponding to the error position obtained in the second error correction processing.
[0036]
PreferablyThe second error correction means receives the error correction processing result in the first direction, the second storage element for temporary storage, and the first error correction means sequentially transferred from the first error correction means A syndrome for calculating a syndrome for error correction in the second direction based on data after error correction in the direction and data stored in the second storage element, and overwriting the calculation result in the second storage element And calculating means.
[0037]
DETAILED DESCRIPTION OF THE INVENTION
[Embodiment 1]
The error correction and descrambling circuit according to the first embodiment of the present invention will be described below with reference to the drawings.
[0038]
FIG. 1 is a schematic block diagram showing the configuration of a
[0039]
Referring to FIG. 1, data read from the disk by
[0040]
Data from the disk is demodulated by the
[0041]
In the following description, an example of a product code error correction and parallel check apparatus and method corresponding to data recorded on a DVD will be described as an example. However, the present invention is not limited to such a case. The present invention is applicable to a product code error correction apparatus and an error correction method in which an error correction product code is arranged for one block of data.
[0042]
FIG. 2 is a conceptual diagram showing a format of an error correction product code in the DVD shown in FIG. Data obtained by adding a 10-byte parity PI in the horizontal direction and a 16-byte parity PO in the vertical direction to information data of 172 × 192 bytes arranged two-dimensionally is taken as one block.
[0043]
FIG. 3 is a block diagram for explaining a configuration of
[0044]
Hereinafter, the configuration and operation of the
[0045]
In the first step, the input data is transferred to the
[0046]
In the second step, the
[0047]
In the third step, the corrected data obtained in this way and temporarily stored is sent to the
[0048]
FIG. 4 is a schematic block diagram for explaining the configuration of the
[0049]
Returning to the description of the operation of the
[0050]
By adopting such a circuit configuration, it becomes possible to reduce the access to the
[0051]
[Embodiment 2]
FIG. 5 is a schematic block diagram for explaining a configuration of
[0052]
The operation of the
[0053]
In the second embodiment, the feature of error correction in product code processing is taken into account, and as will be described below, error correction and descrambling processing using a DVD product code as shown in FIG. For example, it is possible to perform faster processing.
[0054]
The error correction processing of the product code in the
[0055]
FIG. 6 is a flowchart for explaining the operation of
[0056]
Hereinafter, the configuration and operation of the
[0057]
When the process is started, first, in the first step, input data is transferred to the buffer memory 11 (step S102). Here, for example, an SDRAM is used as the
[0058]
In the second step, for example, one code word of data necessary for error correction is read from the
[0059]
Subsequently, in the third step, the temporarily stored data is read from the
[0060]
In the fourth step, the calculated syndrome value is sent to the first error amount calculation circuit, and the error amount is calculated (step S108).
[0061]
Here, when there is no error, it is assumed that the error amount is “0” in the calculation.
[0062]
In the fifth step, the error amount calculated in this way and the data temporarily stored in the
[0063]
In the sixth step, the corrected data obtained in this way is sent to the descrambling circuit 13 (step S112).
[0064]
Here, the configuration of the
In the seventh step, the descrambled data is written back to the
[0065]
On the other hand, in the eighth step, the data sent to the
[0066]
In the ninth step, the syndrome value calculated in this way is sent to the second error
[0067]
In the tenth step, the data in the buffer memory that has been descrambled in the seventh step is read only at the position where the second error is detected, and the exclusive OR
[0068]
Of the above processing, the syndrome is calculated in the first
[0069]
That is, first, FIG. 7 is a conceptual diagram showing a data array in one block of data shown in FIG. That is, 208 bytes of data from ROW0 to ROW207 are arranged in the column direction, and 182 bytes of data from COL0 to COL181 are arranged in the row direction.
[0070]
Next, FIG. 8 is a block diagram showing the configuration of the first
[0071]
As is well known, when a reception polynomial y (x) of a code string including an error is expressed as the following equation (5), the syndrome is given by equation (6).
[0072]
y (x) = ym-1xm-1+ Ym-2xm-2+ ... + y1x + y0 (5)
[0073]
[Expression 1]
[0074]
However, m is the number of terms of the primitive polynomial. In the product code block shown in FIG. 7, when error correction is performed on the PI sequence line code, m = 182, and error correction is performed on the PO sequence line code. When m is performed, m = 208.
[0075]
Furthermore, t is the number of errors that can be corrected, and α is the root of the primitive polynomial.
The first
[0076]
The first
[0077]
For example, in the DVD format as shown in FIG. 2, since it is agreed to add a 10-byte parity PI, n = 10 (0 to 9), which corresponds to j in equation (6).
[0078]
FIG. 9 is a block diagram showing the configuration of the
[0079]
The second
[0080]
Based on the above configuration, the syndrome calculation operation will be described according to the steps indicated by the arrows in FIG.
[0081]
When a decoding instruction is given from the
[0082]
First, the PI series line data of ROW 0 in FIG. 7 is transferred from the
[0083]
That is, data yi (i = 181 to 0) is sequentially input to the exclusive OR circuit 412an (n = 0 to 9) for each line of the product code block PI series shown in FIG. The result is temporarily stored in the register 412bn (n = 0 to 9). Then, the data accumulated in the register 412bn is multiplied by α by the multiplier 412cn (n = 0 to 9).n(N = 0 to 9) is multiplied, and the result and the next data y (i−1) are calculated by the exclusive OR circuit 412an. By repeating this, the syndrome is calculated.
[0084]
After calculating the syndrome, an error correction operation is performed by the first error
[0085]
Next, the corrected data for each line is transferred from the exclusive OR
[0086]
The corrected data from the exclusive OR
[0087]
Here, the corrected PI series line data yi (i = 181 to 10) is sequentially input from the exclusive OR
[0088]
However, for the PI series line data of ROW0, since there is no data stored in the storage element 413bn (n = 0 to 15) before that, the value as it is is stored in the storage element 413bn. That is, at this time, the PI series line data of ROW0 in FIG. 7 is input to the second
[0089]
Next, the PI series line data of
[0090]
On the other hand, the corrected data from the exclusive OR
[0091]
Similarly, every time PI series line data y (i) of ROW1 is input, the corresponding data is read from the storage element 413bn and calculated by the exclusive OR circuit 413an, and the value is stored in the storage element 413bn. Overwrite the stored y (i).
[0092]
As described above, since the storage element 413bn only overwrites new data sequentially, it has only a very small storage capacity for storing 172 bytes (= 182 bytes-10 bytes) × m (= 16). Good.
[0093]
By repeating the above operations up to ROW 207 in FIG. 7, the error correction calculation for the codes of all the lines of the PI sequence in the product code block is completed, and the syndrome calculation for the codes of all the lines of the PO sequence is completed. .
[0094]
After that, the second error amount calculation circuit46The error amount is calculated, and the exclusive OR
[0095]
Therefore, with the configuration of the
[0096]
(1) The storage element 413bn stores the progress of the calculation of the syndrome, and is configured to be overwritten sequentially each time new data is input. An increase in circuit area and power consumption can be suppressed.
[0097]
(2) Since the corrected data from the exclusive OR
[0098]
[Embodiment 3]
FIG. 10 is a schematic block diagram for explaining the configuration of the
[0099]
The configuration of the
[0100]
FIG. 11 is a flowchart for explaining the operation of the
[0101]
In the description of the third embodiment, it is assumed that error correction is performed in the order of the inner code (PI), outer code (PO), and inner code (PI) of the product code.
[0102]
In this case, when the first inner code process is performed in the second embodiment, the data is written back to the
[0103]
Referring to FIG. 10, when processing is started (step S400), input data is transferred to buffer memory 11 (step S402).
[0104]
Subsequently, error correction processing in the first direction is performed (step S404). Next, in the
[0105]
If it is determined that error correction in the second direction is to be performed, error correction processing in the second direction is performed (step S410), and then the buffer memory data and error amount after the first correction processing are used. Then, error correction is executed (step S412).
[0106]
On the other hand, in determining whether the error correction is in the last first direction (step S408), if the error correction is not in the last first direction, the memory data is written in the buffer memory 11 (step S414). The processing returns to step S402.
[0107]
On the other hand, if it is the last error correction in the first direction (step S408), the descrambling process is executed (step S416), the data is written in the buffer memory 11 (step S418), and the process ends. (Step S420).
[0108]
The same applies to the case where the correction process is performed four times, such as inner code (PI), outer code (PO), inner code (PI), and outer code (PO), as the processing order of the product code. Is possible. In this case, as described above, when the first inner code is processed, the data is written back to the buffer memory without performing the descrambling process, and the descrambling is performed at the second inner code processing. By performing the processing, it is possible to realize high-speed processing without increasing the circuit scale.
[0109]
Furthermore, even if the number of correction processes for the inner code or the outer code increases, the same processing can be performed.
[0110]
The embodiment disclosed this time should be considered as illustrative in all points and not restrictive. The scope of the present invention is defined by the terms of the claims, rather than the description above, and is intended to include any modifications within the scope and meaning equivalent to the terms of the claims.
[0111]
【The invention's effect】
As described above, the present invention uses the error-corrected data read from the data buffer and performs descrambling processing, so that access to the buffer memory can be reduced by about ½, and high-speed data processing It can correspond to.
[0112]
In addition, during product code processing, the outer code syndrome is calculated from the data before descrambling, and error correction is performed on the data after descrambling, thereby minimizing access to the buffer memory. Therefore, high-speed processing can be effectively performed.
[Brief description of the drawings]
FIG. 1 is a schematic block diagram showing a configuration of a
FIG. 2 is a conceptual diagram showing a format of an error correction product code in a DVD.
3 is a block diagram for explaining the configuration of a
FIG. 4 is a schematic block diagram for explaining a configuration of a
5 is a schematic block diagram for explaining a configuration of a
FIG. 6 is a flowchart for explaining the operation of the
7 is a conceptual diagram showing a data arrangement in one block of data shown in FIG.
8 is a block diagram showing a configuration of the first
FIG. 9 is a block diagram showing a configuration of a
FIG. 10 is a schematic block diagram for explaining a configuration of a
FIG. 11 is a flowchart for explaining an operation of a
12 is a schematic block diagram showing a configuration of a conventional
13 is a schematic block diagram showing a configuration of a conventional
[Explanation of symbols]
DESCRIPTION OF
Claims (4)
前記復号装置の動作を制御するための制御手段と、
転送されてきたデータを一時的に蓄えるための第1の記憶素子と、
前記第1の記憶素子から読込んだデータに対する第1の方向の誤り訂正処理を行なう第1の誤り訂正手段と、
前記データに対するデスクランブル処理を行なうデスクランブル手段と、
前記第1の方向の誤り訂正処理結果を受けて、前記第2の方向に誤り訂正処理を行なうための第2の誤り訂正手段とを備え、
前記制御手段は、
i)前記第1の記憶素子から読込んだデータに対する第1の方向の誤り訂正処理を行なった後、前記デスクランブル手段に、第1の方向の誤り訂正後のデータに対するデスクランブル処理を行わせ、
ii)前記デスクランブル処理後のデータを前記第1の記憶素子に書き戻し、
iii)前記デスクランブル処理と並行して、前記第2の誤り訂正手段に、前記第1の記憶素子に格納されるデータに対する誤り訂正を行なわせて、前記第1の記憶素子に書き戻す、復号装置。A data decoding device including a product code for error correction,
Control means for controlling the operation of the decoding device;
A first storage element for temporarily storing transferred data;
First error correction means for performing error correction processing in a first direction for data read from the first storage element;
Descrambling means for performing descrambling processing on the data;
Second error correction means for receiving an error correction processing result in the first direction and performing error correction processing in the second direction;
The control means includes
i) After performing error correction processing in the first direction on the data read from the first storage element, the descrambling means performs descrambling processing on the data after error correction in the first direction. ,
ii) writing back the descrambled data to the first storage element;
iii) In parallel with the descrambling process, the second error correction unit performs error correction on the data stored in the first storage element and writes back to the first storage element. apparatus.
前記復号装置の動作を制御するための制御手段と、
転送されてきたデータを一時的に蓄えるための第1の記憶素子と、
前記第1の記憶素子から読込んだデータに対する前記第1の方向の誤り訂正処理を行なう第1の誤り訂正手段と、
前記データに対するデスクランブル処理を行なった結果を前記第1の記憶素子に書き戻すデスクランブル手段と、
前記第1の方向の誤り訂正処理結果を受けて、前記第2の方向に誤り訂正処理を行なうための第2の誤り訂正手段と、
前記第1の誤り訂正手段からのデータを受けて、最後に行なう第1の方向の誤り訂正が行なわれた場合、前記デスクランブル手段に前記データを与え、最後に行なう第1の方向の誤り訂正が行なわれていない場合、前記第1の記憶素子に前記データを書き戻すための分岐手段とを備え、
前記制御手段は、
i)前記第1の記憶素子から読込んだデータに対する第1の方向の誤り訂正処理を行なった後、前記分岐手段に前記第1の誤り訂正処理データを与え、
ii)最後に行なう第1の方向の誤り訂正が行なわれた場合、前記デスクランブル手段に、第1の方向の誤り訂正後のデータに対するデスクランブル処理を行わせ、前記デスクランブル処理後のデータを前記第1の記憶素子に書き戻し、前記デスクランブル処理と並行して、前記第2の誤り訂正手段に、前記第1の記憶素子に格納されるデータに対する誤り訂正を行なわせて、前記第1の記憶素子に書き戻し、
iii)最後に行なう第1の方向の誤り訂正が行なわれていない場合、第1の方向の誤り訂正後のデータを前記第1の記憶素子に書き戻すとともに、前記第2の誤り訂正手段に、前記第1の記憶素子に格納されるデータに対する誤り訂正を行なわせて、前記第1の記憶素子に書き戻す、復号装置。A decoding device that repeatedly performs error correction in a first direction and error correction in a second direction on data including a product code for error correction,
Control means for controlling the operation of the decoding device;
A first storage element for temporarily storing transferred data;
First error correction means for performing error correction processing in the first direction on data read from the first storage element;
Descrambling means for writing back the result of descrambling the data to the first storage element;
Second error correction means for receiving an error correction processing result in the first direction and performing error correction processing in the second direction;
When the last error correction in the first direction is performed after receiving the data from the first error correction means, the data is given to the descrambling means and the error correction in the first direction is performed last. Branching means for writing the data back to the first storage element,
The control means includes
i) after performing error correction processing in the first direction on the data read from the first storage element, giving the first error correction processing data to the branching means;
ii) When error correction in the first direction performed last is performed, the descrambling unit performs descrambling processing on the data after error correction in the first direction, and the data after the descrambling processing is performed. Write back to the first storage element, and in parallel with the descrambling process, cause the second error correction means to perform error correction on the data stored in the first storage element, and Write back to the storage element
iii) When error correction in the first direction performed last is not performed, the data after error correction in the first direction is written back to the first storage element, and the second error correction means A decoding apparatus that performs error correction on data stored in the first storage element and writes the data back to the first storage element.
前記デスクランブル処理と並行して、前記第2の誤り訂正手段に、前記第1の記憶素子に格納されるデータに対する誤り訂正を行なわせる際に、前記第1の記憶素子に格納されるデータのうち、前記第2の誤り訂正処理において得られた誤り位置に相当するデータに対する誤り訂正を行なわせる、請求項1または2記載の復号装置。The control means includes
In parallel with the descrambling process, when the second error correction means performs error correction on the data stored in the first storage element, the data stored in the first storage element 3. The decoding device according to claim 1 , wherein error correction is performed on data corresponding to an error position obtained in the second error correction processing.
前記第1の方向の誤り訂正処理結果を受けて、一時的に格納するための第2の記憶素子と、
前記第1の誤り訂正手段から順次転送される前記第1の方向の誤り訂正後のデータと前記第2の記憶素子に格納されたデータとに基づいて、前記第2の方向に対する誤り訂正のためのシンドロームを計算し、前記第2の記憶素子に計算結果を上書きするシンドローム計算手段とを含む、請求項1または2記載の復号装置。The second error correction means includes
Receiving a result of the error correction process in the first direction and temporarily storing the second storage element;
For error correction in the second direction based on the data after error correction in the first direction sequentially transferred from the first error correction means and the data stored in the second storage element The decoding apparatus according to claim 1 , further comprising: a syndrome calculation unit that calculates a syndrome of the second memory element and overwrites the calculation result in the second storage element.
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000042867A JP3773740B2 (en) | 2000-02-21 | 2000-02-21 | Decoding device |
US09/772,072 US6772385B2 (en) | 2000-01-31 | 2001-01-30 | Error-correcting device and decoder enabling fast error correction with reduced circuit scale |
KR1020010004290A KR100685360B1 (en) | 2000-01-31 | 2001-01-30 | Error-correcting device and decoder enabling fast error correction with reduced circuit scale |
CNB2005100095619A CN100380507C (en) | 2000-01-31 | 2001-01-31 | Error-correcting device and decoder enabling fast error correction with reduced circuit scale |
CNB011119756A CN1199177C (en) | 2000-01-31 | 2001-01-31 | Error correcting system capable of inhibiting scale of circuit and high-speed correcting error and decoding device |
US10/845,091 US7181483B2 (en) | 2000-01-31 | 2004-05-14 | Error-correcting device and decoder enabling fast error correction with reduced circuit scale |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000042867A JP3773740B2 (en) | 2000-02-21 | 2000-02-21 | Decoding device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001237715A JP2001237715A (en) | 2001-08-31 |
JP3773740B2 true JP3773740B2 (en) | 2006-05-10 |
Family
ID=18565880
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000042867A Expired - Fee Related JP3773740B2 (en) | 2000-01-31 | 2000-02-21 | Decoding device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3773740B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003338141A (en) * | 2002-05-17 | 2003-11-28 | Sanyo Electric Co Ltd | Data reproduction controller |
JP2004022130A (en) | 2002-06-19 | 2004-01-22 | Sanyo Electric Co Ltd | Coding error correcting device |
-
2000
- 2000-02-21 JP JP2000042867A patent/JP3773740B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2001237715A (en) | 2001-08-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100517482B1 (en) | Concurrent row/column syndrome generator for a product code | |
KR100415136B1 (en) | Meth0d and apparatus for c0rrecting data errors | |
JP2605271B2 (en) | Error correction and checking device | |
US5546409A (en) | Error correction encoding and decoding system | |
US6357030B1 (en) | ECC block format for storage device | |
US6772385B2 (en) | Error-correcting device and decoder enabling fast error correction with reduced circuit scale | |
JP2000165259A (en) | Data decoding processor and its method | |
US6167548A (en) | Data error correcting method and apparatus | |
EP0929037A1 (en) | Data transfer device and data transfer method | |
KR100738170B1 (en) | Error correction device | |
US8181075B2 (en) | Error correction device and recording and reproducing device | |
US7475324B2 (en) | Encoding apparatus for storing data to disk | |
JP3773740B2 (en) | Decoding device | |
JP3306413B2 (en) | Error correction device and error correction method | |
KR100361947B1 (en) | Error detection circuit applied to disk reproducing apparatus | |
JP3869598B2 (en) | Digital data encoding processing circuit, encoding processing method, and digital data recording apparatus including encoding processing circuit | |
JP2605270B2 (en) | Error correction and checking device | |
JP2009048713A (en) | Descramble circuit and error detection code calculating circuit | |
KR100215807B1 (en) | Error correcting apparatus and method for digital signal | |
JP3609714B2 (en) | Error correction device | |
JP3342422B2 (en) | Error correction method and device | |
JPH10154941A (en) | Error correction circuit | |
JPH0824269B2 (en) | Error correction method | |
JP2005332544A (en) | Data encoding circuit, data encoding method, and data recording apparatus | |
JP2008010064A (en) | Data coding circuit, data recorder, and pi/po arithmetic processing method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050427 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050510 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050617 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20051108 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051226 |
|
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: 20060124 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060215 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090224 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100224 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110224 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110224 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120224 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120224 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130224 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |