JP2004348824A - ECC encoding method and ECC encoding device - Google Patents
ECC encoding method and ECC encoding device Download PDFInfo
- Publication number
- JP2004348824A JP2004348824A JP2003143157A JP2003143157A JP2004348824A JP 2004348824 A JP2004348824 A JP 2004348824A JP 2003143157 A JP2003143157 A JP 2003143157A JP 2003143157 A JP2003143157 A JP 2003143157A JP 2004348824 A JP2004348824 A JP 2004348824A
- Authority
- JP
- Japan
- Prior art keywords
- parity
- data
- syndrome
- circuit
- calculation
- 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.)
- Abandoned
Links
Images
Landscapes
- Detection And Correction Of Errors (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Error Detection And Correction (AREA)
Abstract
【課題】ディジタルデータのエラーを訂正するためのECCを記録ディジタルデータに付加するECCエンコード方法および装置において、ECC生成・付加を高速に行なうこと。
【解決手段】横縦のブロック構造のデータについて横方向1行の第1のパリティを第1の計算回路で計算して横方向に付加し、これを各行についてそれぞれ行なう第1のステップと、第1のステップがなされる間に、第1のパリティが付加されたデータについて縦方向1列の第2のパリティを第2の計算回路で計算し、これを各列についてそれぞれ行なう第2のステップとを具備する。
【選択図】 図1An ECC encoding method and apparatus for adding an ECC for correcting an error in digital data to recorded digital data, in which ECC generation and addition are performed at high speed.
A first step of calculating a first parity of one row in a horizontal direction with respect to data having a horizontal and vertical block structure by a first calculation circuit and adding the same in a horizontal direction, and performing the first step for each row. While the first step is performed, the second parity of one column in the vertical direction is calculated by the second calculation circuit for the data to which the first parity is added, and the second step is performed for each column. Is provided.
[Selection diagram] Fig. 1
Description
【0001】
【発明の属する技術分野】
本発明は、ディジタルデータのエラーを訂正するためのエラー訂正符号(ECC:error correction code)を記録ディジタルデータに付加するECCエンコード方法および装置に係り、特に、ECC付加を高速に行なうのに適するECCエンコード方法および装置に関する。
【0002】
【従来の技術】
通信、コンピュータ、放送、映像メディアなどのディジタル化された各分野においては、データの信頼性の向上、さらには記録システムにおける高記録密度化のために一般にエラー訂正符号が用いられている。特に最近では、データ処理能力の向上に伴い高度な訂正能力を有するエラー訂正符号が用いられるようになってきている。
【0003】
高画質な映像を提供するDVD(digital versatile disc)再生装置においても、訂正能力の高いリードソロモン(RS)積符号と呼ばれるエラー訂正符号が用いられ、伝送系で発生したエラーが訂正できるようになっている。積符号は、縦横の異なる方向のエラー訂正符号を組み合わせたもので、情報データのブロックの横方向に対して付加された内符号のPI(parity inner)パリティと、情報データおよびPIパリティからなるブロックの縦方向に対して付加された外符号のPO(parity outer)パリティとからなる。このように構成された情報データ、PIパリティ、POパリティからなるブロックがECCブロックである。
【0004】
このようなECCブロックを利用して行われるDVD再生時のエラー訂正処理の構成および手順例としては、下記特許文献1に記載の方法がある。また、最近普及の目覚しい記録型DVD装置で必要となるECCエンコード処理、つまり情報データに対してPIおよびPOパリティを生成し付加するパリティ生成処理方法の例としては、下記特許文献2に記載のものがある。
【0005】
【特許文献1】
特開2002−74861号公報
【特許文献2】
特開2001−319431号公報
【0006】
【発明が解決しようとする課題】
上記のような記録型DVD装置は、AV(audio visual)用途を中心に普及し始めている。特に最近ではアクセス性に富み大容量なHDD(hard disc drive)と、保存・リムーバブル用途に特化した記録型DVDとの組み合わせによるハイブリッド型DVDレコーダーが人気を集めている。
【0007】
DVDはCD(compact disc)と比較して記憶容量が大きいことが特長の一つであるが、一方で、大容量であるためデータを等倍速(例えば映像でいえば通常の再生での速度)で記録する場合には、その書き込み処理に膨大な時間が必要となる。つまり、上記DVDレコーダーにおいて、HDDに記録された映像データのDVDへのダビングに、ユーザは長時間待たされることになる。
【0008】
このため、記録型DVD装置においても、現在主流の記録型CD装置のように、高速にディスク上へのデータ記録を行う「高倍速記録」対応が望まれている。こうした「高倍速記録」を装置側で対応するためには、書き込み処理時に行われるECCエンコード処理を高速処理化させる必要があり、例えば、特に高速化のボトルネックとなっているECC用データバッファ(一般的にはD−RAM(dynamic − random access memory )が用いられている)へのアクセス回数をいかに低減させるかが問題となる。
【0009】
本発明は、上記の状況を考慮してなされたもので、ディジタルデータのエラーを訂正するためのECCを記録ディジタルデータに付加するECCエンコード方法および装置において、ECC生成・付加を高速に行なうことが可能なECCエンコード方法および装置を提供することを目的とする。
【0010】
【課題を解決するための手段】
上記の課題を解決するため、本発明に係るECCエンコード方法は、横縦のブロック構造のデータについて横方向1行の第1のパリティを第1の計算回路で計算して横方向に付加し、これを各行についてそれぞれ行なう第1のステップと、前記第1のステップがなされる間に、前記第1のパリティが付加されたデータについて縦方向1列の第2のパリティを第2の計算回路で計算し、これを各列についてそれぞれ行なう第2のステップとを具備することを特徴とする。
【0011】
また、本発明に係る別のECCエンコード方法は、横縦のブロック構造のデータについて横方向1行の第1のパリティを第1の計算回路で計算して横方向に付加し、これを各行についてそれぞれ行なう第1のステップと、前記第1のステップがなされる間に、前記第1のパリティが付加されたデータについて縦方向1列のシンドロームを第2の計算回路で計算し、これを各列についてそれぞれ行なう第2のステップと、前記計算されたシンドロームから縦方向の第2のパリティを生成する第3のステップとを具備することを特徴とする。
【0012】
すなわち、いずれの方法も、横方向の第1のパリティの発生・付加と、縦方向の第2のパリティの発生・付加のための処理とが並行的になされる。よって、第1のパリティを付加してデータを一旦メモリに格納する、格納されたデータにアクセスして第2のパリティの発生・付加を行なう、という時間的に縦続の2段階の処理が必要ない。時間的に縦続の処理に要するメモリアクセスは処理速度を低下させる大きな原因になる。したがって、本発明によれば、ECC生成・付加を高速に行なうことが可能になる。
【0013】
なお、後者の方法では、第2のパリティを計算するのにシンドロームを計算し計算で得られたシンドロームからこれを生成するようにしている。シンドローム計算は再生回路(ECCデコード回路)で必須であり、記録再生を要する装置では回路の兼用化によりその規模を削減する効果が得られ整合性がよい。
【0014】
また、本発明に係るECCエンコード装置は、横縦のブロック構造のデータについて横方向1行の第1のパリティを計算して横方向に付加し、これを各行についてそれぞれ行なう第1のパリティ生成回路と、前記第1のパリティの計算を前記各行についてそれぞれ行なう間に、前記第1のパリティが付加されたデータについて縦方向1列の第2のパリティを計算し、これを各列についてそれぞれ行なう第2のパリティ生成回路とを具備することを特徴とする。
【0015】
また、本発明に係る別のECCエンコード装置は、横縦のブロック構造のデータについて横方向1行の第1のパリティを計算して横方向に付加し、これを各行についてそれぞれ行なうパリティ生成回路と、前記第1のパリティの計算を前記各行についてそれぞれ行なう間に、前記第1のパリティが付加されたデータについて縦方向1列のシンドロームを計算し、これを各列についてそれぞれ行なうシンドローム生成回路と、前記計算されたシンドロームから縦方向の第2のパリティを生成する回路とを具備することを特徴とする。
【0016】
これらの装置は、上記の各方法を実行するためのハードウエア構成を備えたものである。
【0017】
【発明の実施の形態】
本発明に係るECCエンコード方法の実施態様として、前記第2のステップは、前記第1のパリティが付加された前記データの横方向のアドレスごとに対応を有するメモリをバッファとして用い該バッファと前記第2の計算回路との間で途中結果を往復しながら行なうようにすると都合がよい。これは、第2の計算回路では縦方向のデータでパリティ計算(またはシンドローム計算)を行なうためである。すなわち、縦方向のデータは飛び飛びにしか得られないので、横方向のアドレスで管理されたメモリをバッファとして用いそれとのデータ出し入れで所定の計算を行なう。
【0018】
また、実施態様として、前記第1のパリティが付加された前記データをメモリに順次格納するステップをさらに具備するようにしてもよい。メモリに一時格納するものである。
【0019】
また、ここで、実施態様として、前記第2のステップで計算された第2のパリティを、前記メモリに格納された前記データに対してインターリーブするように前記メモリに格納するステップをさらに具備するようにしてもよい。一時格納のメモリを第2のパリティのインターリーブ処理に利用するものである。
【0020】
または、実施態様として、前記メモリに格納された前記第1のパリティが付加された前記データを該メモリから読み出しながら前記計算された第2のパリティをインターリーブするステップをさらに具備するようにしてもよい。一時格納のメモリからデータを順次出力するのと並行して第2のパリティのインターリーブを行なうものである。これによれば、メモリへのアクセスが増加せず高速化に一層都合がよい。
【0021】
また、実施態様として、前記第1のステップは、前記横縦のブロック構造のデータについて横方向1行のシンドロームを生成し、該生成されたシンドロームから横方向の前記第1のパリティを計算して横方向に付加し、これを各行についてそれぞれ行なうようにしてもよい。これは、第1のパリティの生成に、シンドロームの計算を利用するものである。
【0022】
また、本発明に係るECCエンコード装置の実施態様として、前記第1のパリティが付加された前記データの横方向のアドレスごとに対応を有するメモリをさらに具備し、前記第2のパリティ生成回路は、前記メモリをバッファとして用い該バッファとの間で途中結果を往復しながら前記第2のパリティの計算を行なうようにすると都合がよい。
【0023】
また、実施態様として、前記第1のパリティが付加されたデータを格納するメモリをさらに具備するようにしてもよい。
【0024】
また、ここで、実施態様として、前記メモリに格納された前記データを該メモリから読み出しながら前記計算された第2のパリティをインターリーブするためのセレクタをさらに具備するようにしてもよい。
【0025】
また、実施態様として、前記第1のパリティが付加された前記データの横方向のアドレスごとに対応を有するメモリをさらに具備し、前記シンドローム生成回路は、前記メモリをバッファとして用い該バッファとの間で途中結果を往復しながら前記シンドロームの計算を行なうようにすると都合がよい。
【0026】
また、実施態様として、前記パリティ生成回路は、前記横縦のブロック構造のデータについて横方向1行のシンドロームを生成し、該生成されたシンドロームから横方向の前記第1のパリティを計算して横方向に付加し、これを各行についてそれぞれ行なうようにしてもよい。
【0027】
以上のECCエンコード装置としての実施態様は、上記ECCエンコード方法としての実施態様を実現するためのハードウエアを備えたものである。
【0028】
以上を踏まえ、以下では本発明の実施形態を図面を参照しながら説明する。図1は、本発明の一実施形態に係るECCエンコード装置を記録型DVD装置に適用した場合の記録系構成を示すブロック図である。図1に示すように、この記録型DVD装置は、記録系構成として、ホスト201、(ID+IED+RSV)付加回路・スクランブル回路・EDC付加回路202、PIパリティ生成回路203、POパリティ生成回路204、POパリティ用バッファ205、RAM制御部206、RAM207、変調回路208、記録補償回路209、ピックアップヘッド(PUH)210、POパリティインターリーブ用セレクタ211、記録対応ディスク212を有する。
【0029】
ホスト201は、記録すべきユーザデータをバイト幅(8ビット幅)で(ID+IED+RSV)付加回路・スクランブル回路・EDC付加回路202に供給するものである。ここで、IDはidentification data、IEDはID error detection code、RSVはreserved、EDCはerror detection codeである。
【0030】
(ID+IED+RSV)付加回路・スクランブル回路・EDC付加回路202は、供給されたユーザデータのあるまとまりの先頭にID、IED、RSVを付加し、そのまとまりのユーザデータに対してはスクランブル処理を行ない、さらにその後尾にEDCを付加するものである。この一連の処理がされたデータは、IDからEDCまでで2064バイト(172バイト×12行 :セクタと呼ばれる。後述する図4参照)になり、行に沿って順にPIパリティ生成回路203に供給される。
【0031】
PIパリティ生成回路203は、供給されるデータの172バイトごとに10バイトの第1のパリティとしてのPIパリティを所定の手順により生成し付加するものである。10バイトのPIパリティの付加されたデータ(182バイト)はRAM制御部206を介してRAM207に格納される。RAM207へのこのような格納が192回(12行×16回)繰り返されると、ひとつの単位(POパリティなしのECCブロック)となる。RAM207は、したがって、少なくとも34944バイト(182バイト(182列)×192行)の容量がある(後述する図6参照)。
【0032】
10バイトのPIパリティの付加されたデータは、POパリティ生成回路204にも供給される。POパリティ生成回路204は、PIパリティ生成回路203の出力のRAM207への格納と並行して、所定の手順により第2のパリティとしてのPOパリティを生成するものである。並行してPOパリティを生成するので、RAM207に34944バイトのデータ格納が完了した時点で、これらのデータに付加すべきPOパリティも生成される。POパリティは、34944バイト(182×192)の縦方向192バイトに対して16バイトずつ生成され、上記ひとつの単位に対応して16行×182=2912バイトのデータサイズとなる。
【0033】
POパリティ用バッファ205は、POパリティ生成回路204がPOパリティを生成するために必要なバッファとして機能するメモリである。その容量はちょうど上記の16行×182=2912バイトである。すなわち、POパリティ生成回路204は、POパリティ用バッファ205をワークエリアとして用い、PIパリティ生成回路203の出力のRAM207への34944バイトのデータ格納が完了した時点で格納されたデータが、POパリティとなるようにデータを出し入れしながら計算を行なう。生成されたPOパリティは、その後POパリティ用バッファ205からPOパリティインターリーブ用セレクタ211に導かれる。
【0034】
RAM制御部206は、RAM207へのデータ書き込み、読み出しのアドレス制御を行ない、所定のアドレスに所定のデータを書き込み、所定のデータを所定のアドレスから読み出すものである。書き込みは、PIパリティ生成回路203からメモリとしてのRAM207へなされ、読み出しは、RAM207からPOパリティインターリーブ用セレクタ211に対してなされる。RAM207は、上記のように基本的に34944バイト(182バイト×192行)のデータを格納するものである。
【0035】
POパリティインターリーブ用セレクタ211は、POパリティ用バッファ205からおよびRAM制御部206を介してRAM207から接続され、RAM207に格納された横方向182バイトの12行ごとにPOパリティの1行分を付加して(インターリーブして)出力するものである。POパリティのこのようなインターリーブは規格として定められている。POパリティの付加されたデータは変調回路208に供給される。
【0036】
変調回路208は、供給されたデータに対して、DVD記録の規格として定められている8/16変換(8ビットから16ビットへの変換)を行ないさらにバイナリデータ(1ビット幅)として出力するものである。出力されたデータは記録補償回路209に供給される。記録補償回路209は、記録対応ディスク212への記録再生で生じる物理的な伝送特性を補償するため、供給されたバイナリデータ信号に記録補償処理を行なう。記録補償されたバイナリデータ信号はPUH210に供給される。
【0037】
PUH210は、供給されたバイナリデータ信号に従ってレーザドライバを駆動し、レーザ光により記録対応ディスク212にその信号を記録する。記録対応ディスク212は、PUH210によりバイナリデータが書き込まれるリムーバブルなメディアである。
【0038】
図2は、図1に示す記録系構成によりなされる処理手順を機能的に説明する機能ブロック図である。図3は、ひとつのECCブロックの構成を示す図である。図4は、図3に示すECCブロックにおけるPIおよびPOパリティを除いた部分(横縦のブロック構造の情報データ部分)を構成する単位であるセクタ(16セクタで図3に示す情報データになる)の内部構成を示す図である。
【0039】
また、図5は、図1中に示すPIパリティ生成回路203の具体的な構成例を示す図である。図6は、図1中に示すRAM207に格納されるデータの構成を示す図である。図7は、図1中に示すPOパリティ生成回路204の構成および動作をやや詳細に説明するブロック図である。図8は、図7に示すPOパリティ生成回路などの動作フローを示す流れ図である。
【0040】
以下、図1とともに、図2ないし図8をも必要に応じて参照し、本実施形態に係るECCエンコード装置の動作説明を行なう。
【0041】
図1において、ホスト201から転送されてきたユーザデータは、まず(ID+IED+RSV)付加回路・スクランブル回路・EDC付加回路202に入力される。上記回路202は、ユーザデータ2048バイト単位で動作し、図4に示される2064バイトのデータであるセクタデータ構成に、ユーザデータを変換して出力する。ただし、スクランブル処理だけはユーザデータに相当する図示のメインデータのみに施される。上記回路202では、図2に示す処理手順300から304まで処理されることになる。
【0042】
一方、上記回路202の出力データ単位は、動作データ単位2064バイトではなくその1/12であり、図4に示すセクタの1行分に相当する172バイト単位である。この172バイトのデータがPIパリティ生成回路203に順次転送される。PIパリティ生成回路203では、この172バイトのデータからPI方向のパリティデータ10バイトを計算して末尾に付加し、182バイトの符号語を生成する。
【0043】
ここでPIパリティの生成方法について説明する。DVD規格におけるガロア体による原始多項式は以下の式で定義されている。
P(x)=x8+x4+x3+x2+1
また、PIパリティの生成多項式は以下のような式となる。
これはα0〜α9までの連続する10個の成分が根となる符号系列を生成するための式である。PIパリティを付加するには、この生成多項式で172バイトからなる情報多項式を割り、その余りを情報多項式に付加すればよい。
【0044】
このような付加処理を回路的に行なうには、図5に示すような構成を有するPIパリティ生成回路(第1の計算回路)を用いることができる。このPIパリティ生成回路は、シフトレジスタによる除算回路を表しており、図中のDがシフトレジスタ54、…57を、×αnがガロア体の乗算回路51、…53(ガロア乗算器)を、それぞれを示している。符号58、59、60等は排他的論理和を求める演算回路(排他的論理和ゲート)である。なお、図5に示す構成による各部の演算やレジスト操作は、8ビット(1バイト)をひとつのデータ単位として行なう。
【0045】
動作としては、まず、SWaを閉じてSWbを1側に倒し、入力端子から情報データHx(x=0〜171)を順にシフトレジスタ54、…57に入力していく。また、同時に出力端子(SWbの共通端側)から入力データをそのまま出力させていく。172バイト全てのデータを入力および出力し終えたら、SWaを開放してSWbを2側に倒し、シフトレジスタ54、…57内に生成されたパリティデータ10バイトをさらに出力端子より順次出力していく。これによりパリティ付データIx(0〜181)が生成される。
【0046】
182バイトの出力データは、RAM制御部206を通過してRAM207に順次格納されていき、この動作を192回繰り返すことによって図6に示すようなPOパリティなしのECCブロック(182バイト×192行)が生成される。なお、メモリとしてのRAM207には大容量で安価なD−RAMを用いるのが通常は得策である。
【0047】
また一方、この182バイト×192行の出力データはRAM207への格納と並行してPOパリティ生成回路204にも転送されており、POパリティ生成回路204では、PO系列の182列におけるパリティ計算をリアルタイムで行なっている。ここでPOパリティの生成方法について説明する。
【0048】
POパリティの生成多項式はPIと同様に以下のような式で表すことができる。
【0049】
これは、α0〜α15までの連続する16個の成分が根となる符号系列を生成するための式であることを表している。POパリティ計算の原理自体はPIパリティの場合とほぼ同様であるが、POパリティ生成回路204の構成は、PIパリティ生成回路203と同様とするわけにはいかない。これは、PI系列がECCブロックの行方向、つまりデータストリーム方向の系列であり、10バイトのPIパリティ生成のために必要な情報データ172バイトが連続で転送されるのに対し、PO系列はECCブロックの列方向の系列であるので必要な情報データが連続では転送されないためである。
【0050】
すなわち、PIパリティ生成回路203は連続する172バイトからPIパリティを計算すればよいのに対し、POパリティ16バイトを生成するために必要な情報データ192バイトは、受信データ182バイトごとに1バイトしか得られない。さらに、他の181バイトは各々異なったPO列の情報データである。そこで、POパリティ生成回路204は、入力データJx(182バイト×192行)を用いて182列分のPOパリティ計算を、入力1バイトごとに随時切り替えながら計算するように構成する。
【0051】
ここで、POパリティ生成回路204の構成および動作について図7、図8を参照して説明する。図7は、図1中に示すPOパリティ生成回路204の構成および動作をやや詳細に説明するブロック図である。図8は、図7に示すPOパリティ生成回路などの動作フローを示す流れ図である。図7において、図1中に示した構成要素と同一のものには同一符号を付してある。
【0052】
入力データJx(182バイト×192行)は、1バイト単位でPOパリティ生成コントローラ701とPOパリティ計算回路702(第2の計算回路)に転送される。POパリティ生成コントローラ701は、182バイトカウンタを有し、入力された情報データがどのPO列であるか認識してPOパリティ計算回路702とPOパリティ用バッファ205の入出力とをコントロールしている。ここでPOパリティ用バッファ205の入出力のコントロールは、インターフェース703を介してなされる。
【0053】
POパリティ計算回路702は、内部にD0〜D15の16個のレジスタとガロア乗算器とを有し、図7中のPOパリティ計算回路702下に示した表のように除算計算を行なっている(図8のステップ801)。この除算計算は、図5に示したPIパリティ回路と同様の構成原理によるものである。図7中の表において、Dnaが計算後のDnの値である(n=0〜15)。
【0054】
計算すべきPO列は1バイトごとに切り替わるため、上記16個のレジスタの内部データも1バイトごとにPOパリティ用バッファ205に退避させる必要がある(ステップ804)。そして、182バイト後に同一PO列の情報データが転送されてきたら、上記バッファ205より途中結果を読み出し(ステップ802)、内部のレジスタD0〜D15へデータを移行させ、再度POパリティ計算を行う(ステップ803)。この動作を192回繰り返すことで(ステップ805のY)、PO系列の1列のPOパリティ計算が完成する。
【0055】
さらに同様の計算を残り181のPO列に対しても連続で行なっており、入力データJx(182バイト×192行)が全て入力された時点で、全てのPO列におけるPOパリティ計算が終了し、パリティデータはPOパリティ用バッファ205に格納された状態となる。これと同時にJxのRAM207への格納も終了している。すなわち、この時点で、図3に示すECCブロックのうち情報データおよびPIパリティの部分がRAM207に格納され、POパリティの部分がPOパリティ用バッファ205に格納された状態となる。
【0056】
なお、図3に示すECCブロックはDVD規格であり、そのPO方向の誤り訂正符号は、符号長208バイト、情報長192バイト、最小距離17であり、PI方向の誤り訂正符号は、符号長182バイト、情報長172バイト、最小距離11である。
【0057】
続いて、ECCエンコード処理が終了したECCブロックデータに対してPOパリティインターリーブ用セレクタ211によりインターリーブ処理を施し、これを変調回路208に転送する。インターリーブ処理は、PIパリティ付セクタデータ2184バイト(182バイト×12行)ごとにPOパリティ部のPI方向データ182バイトを付加していく処理で、16セクタ分行なう。この実施形態においては、RAM制御部206からの出力であるPIパリティ付セクタデータ2184バイトと、POパリティ用バッファ205からの出力182バイトをインターリーブ用セレクタ211で16セクタごとに切り替えて行なう。
【0058】
以上の処理で、図2における処理手順306までが終了する。すなわち、上記16セクタに対応して16の記録フレームが生成される。
【0059】
なお、インターリーブ処理の別の形態として、POパリティ用バッファ205内に完成されたPOパリティデータを一度RAM制御部206を介してRAM207内へインターリーブ処理を施すように格納してもよい。この場合には、RAM207の容量は、POパリティデータをも格納できるような大きさにしておく。これにより、RAM207に格納されたデータは、POパリティインターリーブ用セレクタ211を介することなく変調回路208へ出力することができる。ただし、上記セレクタ211を用いる場合よりもRAM207へのアクセス回数は増える。
【0060】
インターリーブの後、図2における処理手順307までの処理として、変調回路208において、転送されたデータに対して同期コード(ECCブロックひとつを26の同期フレームにする)を付加し、DVDの変調規則である8/16変調処理を行い、記録補償回路209へ転送する。記録補償回路209では、変調回路208からのバイナリ変調データ信号に記録補償を施す。PUH210では、記録補償されたバイナリ変調データ信号に基づきレーザードライバを駆動させ、記録対応ディスク212上に記録マークを形成していく。
【0061】
以上のように、本実施形態におけるECCエンコード装置では、PIパリティ生成計算およびPOパリティ生成計算を、ECC用データのRAM207へのデータ格納処理と並行して行なうことで、パリティ計算のためのRAM207からの情報データ読み出し/書き込み処理が全く省かれる。これにより、高倍速化を容易に可能とするECCエンコード処理が実現できる。
【0062】
次に、本発明の別の実施形態に係るECCエンコード装置について図9を参照して説明する。図9は、本発明の別の実施形態に係るECCエンコード装置を記録型DVD装置に適用した場合の記録系構成を示すブロック図である。図9において、すでに説明した構成要素と同一のものには同一符号を付してある。以下ではその部分の重複を避けて説明する。
【0063】
この実施形態では、PIパリティの生成と並行するPOパリティの生成に少なくとも「POシンドローム生成回路」および「ECCデコード回路」を用いる。これらの回路自体は、入出力される信号という観点では、DVD装置の再生回路で一般的に用いられているものと同一の機能である。さらに、「POシンドローム生成回路」を「POシンドローム用バッファ」と組み合わせることにより、RAM207へのデータ格納と並行して「POシンドローム生成回路」を動作させ、パリティ計算のためのRAM207へアクセスを省略できるようにしたものである。
【0064】
図9に示すように、この記録型DVD装置は、すでに説明した構成要素のほか、POシンドローム生成回路904、POシンドローム用バッファ905、ECCデコード回路906を有し、これらが図1に示した実施形態のPOパリティ生成回路204およびPOパリティ用バッファ205の代わりに設けられる。
【0065】
POシンドローム生成回路904は、PIパリティ生成回路203の出力のRAM207への格納と並行して、所定の手順によりPOシンドロームを生成するものである。並行してPOシンドロームを生成するので、RAM207に34944バイト(182バイト×192行)のデータ格納が完了した時点で、POシンドロームが生成される。POシンドロームは、34944バイトの縦方向192バイト(仮想的に加えた適当な16バイトを含めて208バイト)に対して16バイトずつ生成され、ひとつのECCブロックについて16行×182=2912バイトのデータサイズになる。
【0066】
POシンドローム用バッファ905は、RAM207へのデータ格納と並行して、POシンドローム生成回路904がPOシンドロームを上記のように生成するために必要なバッファとして機能するメモリである。そのサイズはちょうど上記の16行×182=2912バイトである。すなわち、POシンドローム生成回路204は、POシンドローム用バッファ905をワークエリアとして用い、PIパリティ生成回路203の出力のRAM207への34944バイトのデータ格納が完了した時点で格納されたデータが、POシンドロームとなるようにデータを出し入れしながら計算を行なう。
【0067】
ECCデコード回路906は、POシンドローム用バッファ905に格納されたPOシンドロームに基づきイレージャ訂正を行なうものである。このイレージャ訂正により、POシンドロームの生成時に適当に加えたデータの領域にPOパリティ(16行×182=2912バイト)が生成される。生成されたPOパリティは、POシンドローム用バッファ905に上書き格納される。上書き格納されたPOパリティは、その後POシンドローム用バッファ905からPOパリティインターリーブ用セレクタ211に導かれる。
【0068】
図10は、図9中に示すPOシンドローム生成回路904の構成および動作をやや詳細に説明するブロック図である。図11は、図10中に示すPOシンドローム計算回路1002の具体的な構成例を示す図である。図12は、図10に示すPOシンドローム生成回路などの動作フローを示す流れ図である。
【0069】
以下、図9とともに、図10ないし図12をも必要に応じて参照し、本実施形態に係るECCエンコード装置の動作説明を行なう。
【0070】
図9において、PIパリティ生成回路203の182バイト×192行の出力データはRAM207への格納と並行してPOシンドローム生成回路904にも転送されており、POシンドローム生成回路904では、PO系列の182列におけるシンドローム計算を1バイトごとに切り替えてリアルタイムで行なっている。PO系列の1データ列におけるシンドロームS0〜S15は以下に示す式で計算することができる。ただし、Ix(x=0〜207)はここではPO系列の符号データ列208バイトを表す。
S0=I0+I1+…+I206+I207
S2=I0α207+I1α206+…+I206α+I207
・
・
・
S15=I0α15×207+I1α15×206+…+I206α15+I207
【0071】
また、これらの計算式でもわかるようにシンドロームを計算するためには208バイトの符号データ列が必要であり、入力されてくる192バイトでは16バイト分足りない。不足分の16バイトのデータは後のECCデコード処理によって訂正されると結果としてPOパリティになるので当初は任意のデータで構わない。ここでは、これを0データで埋めることにより計算処理の効率的を図る。
【0072】
不足分の16バイトを0データとして処理するためのPOシンドローム計算回路1002(第2の計算回路:図10を参照)を図11を用いて説明する。図11において、破線で囲まれた部分は、シンドロームを生成するため再生回路で通常用いられている周知の部分である。
【0073】
すなわち、フリップフロップ(レジスタDx 、x=0〜15)112〜118それぞれの出力をガロア乗算器115〜119に導き(ただしフリップフロップ112についてはガロア乗算器は「1」に相当)、ガロア乗算器115〜119等の出力を排他的論理和ゲート111〜117の一方の入力とする。排他的論理和ゲート111〜117の他方の入力側には入力データIxが共通に入力され、排他的論理和ゲート111〜117の出力がフリップフロップ(レジスタDx)112〜118それぞれの入力とされる。なお、図11に示す構成による各部の演算や動作は、8ビット(1バイト)をデータ単位として行なう。
【0074】
図11中、破線で囲まれた、フリップフロップ(レジスタDx)112〜118とガロア乗算器115〜119と排他的論理和ゲート111〜117とからそれぞれがなる各回路に192バイトの入力データを順次入力すると、フリップフロップ(レジスタDx)112〜118にはこの192バイトによるシンドローム計算途中結果が以下の式S0a〜S15aのように生成される。
S0a=I0+I1+…+I190+I191
S2a=I0α191+I1α190+…+I190α+I191
・
・
・
S15a=I0α15×191+I1α15×190+…+I190α15+I191
【0075】
この式と上述のシンドローム計算式とを比較し、さらにI192〜I207が0とすると、シンドローム計算を成立させるためには各々のシンドローム計算途中結果に対してα16×m(m=0〜15:シンドローム番号)を乗じればよいことがわかる。このため、図11に示す回路(POシンドローム計算回路1002)においては、192クロック経過後にSW0〜SW15を閉じることで、シンドローム計算を完了させるようガロア乗算器116、…、120が置かれる仕組みとなっている。
【0076】
このような演算を行うPOシンドローム計算回路1002であるが、先に説明した実施形態と同じようにPOシンドローム生成回路904全体としてはPO182列のシンドローム計算を1バイトごとに切り替えて演算していかなければならない。このため、レジスタD0〜D15の内容をPOシンドローム用バッファ905に退避させながら実施する。
【0077】
図10は、図9中に示すPOシンドローム生成回路904の構成および動作をやや詳細に説明するブロック図である。図10中には、POシンドローム生成回路904に対応する部分のほかに、POシンドローム用バッファ905、ECCデコード回路906も示している。
【0078】
入力データJx(182バイト×192行)が1バイト単位でPOシンドローム生成コントローラ1001とPOシンドローム計算回路1002に転送される(図12のステップ1201)。POシンドローム生成コントローラ1001は182バイトカウンタを有し、入力された情報データがどのPO列であるか認識してPOシンドローム計算回路1002とPOシンドローム用バッファ905の入出力をコントロールしている。ここでPOシンドローム用バッファ905の入出力のコントロールは、インターフェース1003を介してなされる。
【0079】
また、計算すべきPO列は1バイトごとに切り替わるため、16個のレジスタDx(x=0〜15)の内部データも1バイトごとにPOシンドローム用バッファ905に退避させる必要がある(ステップ1204)。そして、182バイト後に同一PO列の情報データが転送されてきたら、上記バッファ905より途中結果を読み出し(ステップ1202)、内部のレジスタDx(x=0〜15)へデータを移行させ、再度POシンドローム計算を行う(ステップ1203)。この動作を192回繰り返し、最後に前述した図11のSW0〜SW15を閉じることにより、PO系列の1列のPOシンドローム計算が完成する(ステップ1205のY)。
【0080】
さらに、同様の計算を残りの181のPO列に対しても連続で行なっており、入力データJx(182バイト×192行)が全て入力された時点で、全てのPO列におけるPOシンドローム計算が終了し、シンドロームデータはPOシンドローム用バッファ905に格納された状態となる。これと同時にJxのRAM207への格納も終了している。
【0081】
続いて、作成されたPOシンドロームをバッファ905から読み出してECCデコード回路906に転送し(ステップ1206)、ECCデコード回路906によるエラー訂正処理を行なう(ステップ1207)。言い換えると上記処理(POシンドローム計算回路1002での処理)では0データとして埋めた16バイトを、生成すべきPOパリティ16バイトに変換する。なお、ECCデコード回路906は、周知のようにシンドローム修正回路、ユークリッド計算回路、チェーンサーチ回路などを有するものである。
【0082】
上記エラー訂正処理については、通常、PO系列の訂正能力が8バイトまでであり、8バイトを超えるエラーは訂正することはできないが、エラーの位置情報(イレージャポインタ)を用いれば16バイトまでのエラー訂正処理が可能である。これを消失訂正(イレージャ訂正)と一般的にはいう。この実施形態においては、生成すべきPOパリティの位置が符号列の末尾16バイトと確定しているため、エラー位置からイレージャポインタを生成しておけば訂正処理、つまりPOパリティ生成が可能である。
【0083】
より具体的には、POシンドローム用バッファ905より、所望のシンドロームデータをECCデコードコントローラ1004によって選択して、ECCデコード回路906へ送る。そして、ECCデコード回路906ではイレージャポインタによりシンドローム修正処理を行った後、チェーンサーチ処理によりエラー位置におけるエラーパターン(つまりはPOパリティ)を算出する。
【0084】
次に、ECCデコードコントローラ1004は、算出したPOパリティを、エラー位置に基づいてPOシンドローム用バッファ905上の呼び出してきたシンドローム領域に上書きしていく(ステップ1208)。この処理を全PO系列において実行することによりPOシンドローム用バッファ905には全PO系列のパリティデータが完成する。POシンドローム用バッファ905内に完成されたPOパリティデータは、先の実施形態におけるPOパリティ用バッファ205内に完成されるPOパリティデータと同様にその後の処理に用いられる。
【0085】
なお、ここでの説明では、生成されたPOパリティをシンドローム用バッファ905に書き込む場合について述べたが、RAM制御部206を介してRAM207を書き込んでも構わない。この場合には、RAM207の容量は、POパリティデータをも格納できるような大きさにしておく。RAMへの書き込みの際、POパリティのインターリーブ処理を施すように格納してもよい。
【0086】
以上説明のようにこの実施形態におけるECCエンコード装置では、PIパリティ生成計算とPOシンドローム計算を、ECC用データRAM207へのデータ格納処理と並行して行い、さらにPOパリティ生成のためのECCデコード処理に関してもRAM207へのアクセスが省かれる。これにより、高倍速化を容易に可能とするECCエンコード処理が実現できる。
【0087】
また、POシンドローム回路904やECCデコード回路906、POシンドローム用バッファ905は、再生系の回路として用いることもできる。したがって、記録再生系全体として回路規模を削減するのにも効果がある。
【0088】
また、上記実施形態では、POパリティの方を、シンドローム生成回路を用いてECCデコード回路により生成したが、PIパリティに関しても同様にシンドローム生成回路およびECCデコード回路を用いて生成することができる。この場合には別途PIシンドローム用バッファを設け、また、PIパリティ部のシンドローム計算およびECCデコード回路によるPIパリティ計算の処理手順が追加される。このため処理速度では上記各実施形態に劣るものの、再生系回路との更なる兼用を行なうことで回路規模の削減を図ることができる。
【0089】
【発明の効果】
以上詳述したように、本発明によれば、横方向の第1のパリティの発生・付加と、縦方向の第2のパリティの発生・付加のための処理とが並行的になされる。よって、第1のパリティを付加してデータを一旦メモリに格納する、格納されたデータにアクセスして第2のパリティの発生・付加を行なう、という2段階の処理の必要がないので、ECC生成・付加を高速に行なうことが可能になる。
【図面の簡単な説明】
【図1】本発明の一実施形態に係るECCエンコード装置を記録型DVD装置に適用した場合の記録系構成を示すブロック図。
【図2】図1に示す記録系構成によりなされる処理手順を機能的に説明する機能ブロック図。
【図3】ひとつのECCブロックの構成を示す図。
【図4】図3に示すECCブロックにおけるPIおよびPOパリティを除いた部分(情報データ部分)を構成する単位であるセクタ(16セクタで図3に示す情報データになる)の内部構成を示す図。
【図5】図1中に示すPIパリティ生成回路203の具体的な構成例を示す図。
【図6】図1中に示すRAM207に格納されるデータの構成を示す図。
【図7】図1中に示すPOパリティ生成回路204の構成および動作をやや詳細に説明するブロック図。
【図8】図7に示すPOパリティ生成回路などの動作フローを示す流れ図。
【図9】本発明の別の実施形態に係るECCエンコード装置を記録型DVD装置に適用した場合の記録系構成を示すブロック図。
【図10】図9中に示すPOシンドローム生成回路904の構成および動作をやや詳細に説明するブロック図。
【図11】図10中に示すPOシンドローム計算回路1002の具体的な構成例を示す図。
【図12】図10に示すPOシンドローム生成回路などの動作フローを示す流れ図。
【符号の説明】
51、52、53…ガロア乗算器 54、55、56、57…シフトレジスタ58、59、60…排他的論理和ゲート 111、113、117…排他的論理和ゲート 112、114、118…レジスタ 115、119…ガロア乗算器 116、120…ガロア乗算器 201…ホスト 202…(IE+IED+RSV)付加回路・スクランブル回路・EDC付加回路 203…PIパリティ生成回路 204…POパリティ生成回路 205…POパリティ用バッファ206…RAM制御部 207…RAM 208…変調回路 209…記録補償回路 210…ピックアップヘッド 211…POパリティインターリーブ用セレクタ 212…記録対応ディスク 701…POパリティ生成コントローラ702…POパリティ計算回路 703…インターフェース 904…POシンドローム生成回路 905…POシンドローム用バッファ 906…ECCデコード回路 1001…POシンドローム生成コントローラ 1002…POシンドローム計算回路 1003…インターフェース 1004…ECCデコードコントローラ[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to an ECC encoding method and apparatus for adding an error correction code (ECC) for correcting errors in digital data to recorded digital data, and more particularly to an ECC encoding method suitable for performing high-speed ECC addition. The present invention relates to an encoding method and apparatus.
[0002]
[Prior art]
2. Description of the Related Art In digital fields such as communication, computers, broadcasting, and video media, error correction codes are generally used for improving data reliability and increasing recording density in a recording system. In particular, recently, an error correction code having a high correction capability has been used with an improvement in data processing capability.
[0003]
Even in a DVD (digital versatile disc) reproducing apparatus that provides high-quality video, an error correction code called a Reed-Solomon (RS) product code having a high correction capability is used, and an error generated in a transmission system can be corrected. ing. The product code is a combination of error correction codes in different vertical and horizontal directions, and is a block composed of a PI (parity inner) parity of an inner code added in the horizontal direction of a block of information data, and information data and PI parity. And a PO (parity outer) parity of an outer code added in the vertical direction of the data. The block composed of the information data, the PI parity, and the PO parity thus configured is an ECC block.
[0004]
As a configuration and an example of an error correction process at the time of reproducing a DVD performed using such an ECC block, there is a method described in
[0005]
[Patent Document 1]
JP-A-2002-74861
[Patent Document 2]
JP 2001-319431 A
[0006]
[Problems to be solved by the invention]
The recordable DVD devices as described above have begun to spread mainly for AV (audio visual) applications. In particular, recently, a hybrid DVD recorder, which is a combination of a hard disk drive (HDD) with high accessibility and a large capacity, and a recordable DVD specialized for storage / removable use, has been gaining popularity.
[0007]
One of the features of the DVD is that it has a large storage capacity as compared with a CD (compact disc), but on the other hand, because of its large capacity, the data can be read at the same speed (for example, in the case of video, the speed of normal reproduction). In the case of recording by using, an enormous amount of time is required for the writing process. That is, in the DVD recorder, the user waits a long time for dubbing the video data recorded on the HDD to the DVD.
[0008]
For this reason, there is a demand for a recordable DVD device that is compatible with "high-speed recording" for recording data on a disk at a high speed, like a record-type CD device that is currently mainstream. In order to cope with such “high-speed recording” on the device side, it is necessary to speed up the ECC encoding process performed at the time of the writing process. For example, an ECC data buffer (which is a bottleneck in speeding up) is required. A problem is how to reduce the number of accesses to a D-RAM (dynamic-random access memory) in general.
[0009]
SUMMARY OF THE INVENTION The present invention has been made in consideration of the above situation, and an ECC encoding method and apparatus for adding an ECC for correcting an error in digital data to recorded digital data, in which ECC generation and addition are performed at high speed. It is an object to provide a possible ECC encoding method and device.
[0010]
[Means for Solving the Problems]
In order to solve the above problem, an ECC encoding method according to the present invention calculates a first parity of one row in a horizontal direction with respect to data having a horizontal and vertical block structure by a first calculation circuit and adds the first parity in a horizontal direction, A first step of performing this for each row, and during the first step, the second parity of one column in the vertical direction for the data to which the first parity is added is calculated by a second calculation circuit. And a second step of calculating and performing this for each column.
[0011]
In another ECC encoding method according to the present invention, a first parity of one row in a horizontal direction is calculated by a first calculation circuit for data having a horizontal and a vertical block structure, and the first parity is added in a horizontal direction. A first step to be performed, respectively, and while the first step is performed, a syndrome in one column in the vertical direction is calculated by the second calculation circuit for the data to which the first parity is added, and this is calculated by each column. , And a third step of generating a second vertical parity from the calculated syndrome.
[0012]
That is, in each method, the process for generating and adding the first parity in the horizontal direction and the process for generating and adding the second parity in the vertical direction are performed in parallel. Therefore, there is no need for a temporally cascaded two-stage process of adding the first parity and temporarily storing the data in the memory, and accessing the stored data to generate and add the second parity. . Memory access required for cascaded processing in terms of time is a major cause of lowering processing speed. Therefore, according to the present invention, it is possible to generate and add ECC at high speed.
[0013]
In the latter method, a syndrome is calculated to calculate the second parity, and the second parity is generated from the syndrome obtained by the calculation. Syndrome calculation is indispensable in a reproducing circuit (ECC decoding circuit), and in an apparatus requiring recording and reproducing, the effect of reducing the scale is obtained by using the circuit in common, and the consistency is good.
[0014]
Further, the ECC encoding device according to the present invention calculates a first parity in one row in the horizontal direction for data having a horizontal and vertical block structure, adds the first parity in the horizontal direction, and performs the first parity generation circuit for each row. And while calculating the first parity for each row, calculate a second parity in one column in the vertical direction for the data to which the first parity is added, and perform the calculation for each column. And two parity generating circuits.
[0015]
Further, another ECC encoding apparatus according to the present invention calculates a first parity of one row in the horizontal direction for data having a horizontal and vertical block structure, adds the first parity in the horizontal direction, and performs a parity generation circuit for each of the rows. A syndrome generation circuit that calculates a vertical column of syndromes for the data to which the first parity is added while performing the calculation of the first parity for each of the rows, A circuit for generating a second parity in the vertical direction from the calculated syndrome.
[0016]
These devices are provided with a hardware configuration for executing each of the above methods.
[0017]
BEST MODE FOR CARRYING OUT THE INVENTION
As an embodiment of the ECC encoding method according to the present invention, in the second step, a memory having a correspondence for each horizontal address of the data to which the first parity is added is used as a buffer, and the buffer and the second memory are used. It is convenient to carry out the results while going back and forth between the two calculation circuits. This is because the second calculation circuit performs parity calculation (or syndrome calculation) on data in the vertical direction. That is, since the data in the vertical direction can be obtained only in a discrete manner, a predetermined calculation is performed by using a memory managed by the addresses in the horizontal direction as a buffer and putting data in and out of the buffer.
[0018]
Further, as an embodiment, the method may further include a step of sequentially storing the data to which the first parity is added in a memory. It is temporarily stored in the memory.
[0019]
Here, as an embodiment, the method may further include a step of storing the second parity calculated in the second step in the memory so as to interleave the data stored in the memory. It may be. The temporary storage memory is used for the second parity interleave processing.
[0020]
Alternatively, as an embodiment, the method may further include a step of interleaving the calculated second parity while reading the data to which the first parity is added, stored in the memory, from the memory. . The second parity interleaving is performed in parallel with the sequential output of data from the temporarily stored memory. According to this, access to the memory does not increase, which is more convenient for speeding up.
[0021]
Further, as an embodiment, the first step is to generate a syndrome of one row in the horizontal direction with respect to the data of the horizontal and vertical block structure, and calculate the first parity in the horizontal direction from the generated syndrome. It may be added in the horizontal direction, and this may be performed for each row. This utilizes the calculation of the syndrome to generate the first parity.
[0022]
Further, as an embodiment of the ECC encoding apparatus according to the present invention, the ECC encoding apparatus further includes a memory having a correspondence for each horizontal address of the data to which the first parity is added, and the second parity generation circuit includes: It is convenient to use the memory as a buffer and calculate the second parity while reciprocating the intermediate result with the buffer.
[0023]
Further, as an embodiment, a memory for storing data to which the first parity is added may be further provided.
[0024]
Here, as an embodiment, a selector for interleaving the calculated second parity while reading the data stored in the memory from the memory may be further provided.
[0025]
Further, as an embodiment, the information processing apparatus further includes a memory having a correspondence for each horizontal address of the data to which the first parity is added, wherein the syndrome generation circuit uses the memory as a buffer and communicates with the buffer. It is convenient to calculate the syndrome while reciprocating the intermediate result.
[0026]
Further, as an embodiment, the parity generation circuit generates a syndrome of one row in the horizontal direction with respect to the data of the horizontal and vertical block structure, calculates the first parity in the horizontal direction from the generated syndrome, and calculates the horizontal parity. Alternatively, this may be performed for each row.
[0027]
The embodiment as the ECC encoding apparatus described above includes hardware for realizing the embodiment as the ECC encoding method.
[0028]
Based on the above, embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing a recording system configuration when an ECC encoding device according to an embodiment of the present invention is applied to a recordable DVD device. As shown in FIG. 1, this recording type DVD device has a
[0029]
The
[0030]
The (ID + IED + RSV) addition circuit / scramble circuit /
[0031]
The PI
[0032]
The data to which the 10-byte PI parity is added is also supplied to the PO
[0033]
The
[0034]
The
[0035]
The PO parity interleave
[0036]
The
[0037]
The
[0038]
FIG. 2 is a functional block diagram functionally illustrating a processing procedure performed by the recording system configuration shown in FIG. FIG. 3 is a diagram showing a configuration of one ECC block. FIG. 4 is a sector (unit of information data shown in FIG. 3 in 16 sectors) constituting a portion (information data portion having a horizontal and vertical block structure) in the ECC block shown in FIG. 3 excluding PI and PO parities. FIG. 3 is a diagram showing an internal configuration of the device.
[0039]
FIG. 5 is a diagram showing a specific configuration example of the PI
[0040]
Hereinafter, the operation of the ECC encoding device according to the present embodiment will be described with reference to FIGS.
[0041]
In FIG. 1, user data transferred from the
[0042]
On the other hand, the output data unit of the
[0043]
Here, a method of generating the PI parity will be described. A primitive polynomial in Galois field in the DVD standard is defined by the following equation.
P (x) = x8+ X4+ X3+ X2+1
Further, the generating polynomial of the PI parity is as follows.
This is α0~ Α9This is an equation for generating a code sequence in which ten consecutive components up to are the root. To add a PI parity, an information polynomial of 172 bytes may be divided by the generator polynomial, and the remainder may be added to the information polynomial.
[0044]
In order to perform such additional processing in a circuit, a PI parity generation circuit (first calculation circuit) having a configuration as shown in FIG. 5 can be used. This PI parity generation circuit represents a division circuit using a shift register, and D in the figure represents
[0045]
As an operation, first, SWa is closed, SWb is tilted to 1 side, and information data H is input from an input terminal.x(X = 0 to 171) are sequentially input to the shift registers 54,. At the same time, the input data is output directly from the output terminal (the common terminal side of SWb). When input and output of all 172 bytes of data are completed, SWa is released and SWb is tilted to the second side, and 10 bytes of parity data generated in the shift registers 54,. . As a result, the parity-added data Ix(0-181) are generated.
[0046]
The output data of 182 bytes passes through the
[0047]
On the other hand, the output data of 182 bytes × 192 rows is also transferred to the PO
[0048]
The PO parity generator polynomial can be represented by the following equation, similarly to PI.
[0049]
This is α0~
[0050]
That is, the PI
[0051]
Here, the configuration and operation of the PO
[0052]
Input data Jx(182 bytes × 192 rows) are transferred to the PO
[0053]
The PO
[0054]
Since the PO column to be calculated is switched every byte, the internal data of the 16 registers also need to be saved in the
[0055]
Further, the same calculation is continuously performed for the remaining 181 PO columns.xWhen all (182 bytes x 192 rows) are input, the PO parity calculation for all PO columns is completed, and the parity data is stored in the
[0056]
The ECC block shown in FIG. 3 conforms to the DVD standard. The error correction code in the PO direction has a code length of 208 bytes, the information length is 192 bytes, and the minimum distance is 17. Byte, information length 172 bytes,
[0057]
Subsequently, the ECC block data on which the ECC encoding process has been completed is subjected to an interleaving process by the PO
[0058]
With the above processing, the processing up to the
[0059]
As another form of the interleave processing, the completed PO parity data may be stored in the
[0060]
After the interleaving, as processing up to the
[0061]
As described above, in the ECC encoding device according to the present embodiment, the PI parity generation calculation and the PO parity generation calculation are performed in parallel with the data storage processing of the ECC data in the
[0062]
Next, an ECC encoding device according to another embodiment of the present invention will be described with reference to FIG. FIG. 9 is a block diagram showing a recording system configuration when an ECC encoding device according to another embodiment of the present invention is applied to a recordable DVD device. In FIG. 9, the same components as those already described are denoted by the same reference numerals. In the following, description will be made while avoiding duplication of such portions.
[0063]
In this embodiment, at least a “PO syndrome generation circuit” and an “ECC decode circuit” are used to generate a PO parity in parallel with the generation of a PI parity. These circuits themselves have the same functions as those generally used in the reproduction circuit of the DVD device in terms of input / output signals. Furthermore, by combining the “PO syndrome generation circuit” with the “PO syndrome buffer”, the “PO syndrome generation circuit” can be operated in parallel with the data storage in the
[0064]
As shown in FIG. 9, this recordable DVD device has a PO
[0065]
The PO
[0066]
The
[0067]
The
[0068]
FIG. 10 is a block diagram for explaining the configuration and operation of the PO
[0069]
Hereinafter, the operation of the ECC encoding apparatus according to the present embodiment will be described with reference to FIGS.
[0070]
In FIG. 9, the output data of 182 bytes × 192 rows of the PI
S0= I0+ I1+ ... + I206+ I207
S2= I0α207+ I1α206+ ... + I206α + I207
・
・
・
SFifteen= I0α15x207+ I1α15x206+ ... + I206αFifteen+ I207
[0071]
Also, as can be seen from these formulas, a code data string of 208 bytes is required to calculate the syndrome, and the input 192 bytes are not enough for 16 bytes. Since the insufficient 16-byte data becomes PO parity as a result when it is corrected by the subsequent ECC decoding process, any data may be used at first. Here, the efficiency of the calculation process is achieved by filling this with 0 data.
[0072]
A PO syndrome calculation circuit 1002 (second calculation circuit: see FIG. 10) for processing the insufficient 16 bytes as 0 data will be described with reference to FIG. In FIG. 11, a portion surrounded by a broken line is a well-known portion usually used in a reproducing circuit for generating a syndrome.
[0073]
That is, the flip-flop (register Dx , X = 0 to 15) The outputs of the respective 112 to 118 are guided to Galois multipliers 115 to 119 (however, the Galois multiplier is equivalent to “1” for the flip-flop 112), and the outputs of the Galois multipliers 115 to 119 are output. One of the inputs of exclusive OR gates 111 to 117. The other input side of the exclusive OR gates 111 to 117 has input data IxAre commonly input, and the outputs of the exclusive OR gates 111 to 117 are connected to a flip-flop (register D).x) 112 to 118 are input. The operation and operation of each unit according to the configuration shown in FIG. 11 are performed in units of 8 bits (1 byte).
[0074]
In FIG. 11, a flip-flop (register Dx) 112-118, Galois multipliers 115-119, and exclusive OR gates 111-117. When 192 bytes of input data are sequentially input to each circuit, a flip-flop (register Dx) 112 to 118 show the intermediate result of the syndrome calculation using the 192 bytes in the following equation S:0a to SFifteena.
S0a = I0+ I1+ ... + I190+ I191
S2a = I0α191+ I1α190+ ... + I190α + I191
・
・
・
SFifteena = I0α15x191+ I1α15 × 190+ ... + I190αFifteen+ I191
[0075]
This formula is compared with the above-mentioned syndrome calculation formula, and192~ I207Is 0, in order for the syndrome calculation to be established, α16 × m(M = 0 to 15: syndrome number). Therefore, in the circuit (PO syndrome calculation circuit 1002) shown in FIG. 11, the
[0076]
Although the PO syndrome calculation circuit 1002 performs such an operation, the PO
[0077]
FIG. 10 is a block diagram for explaining the configuration and operation of the PO
[0078]
Input data Jx(182 bytes × 192 lines) is transferred to the PO
[0079]
Also, since the PO column to be calculated is switched every byte, 16 registers DxIt is also necessary to save the internal data (x = 0 to 15) in the
[0080]
Further, the same calculation is continuously performed for the remaining 181 PO columns.xWhen all (182 bytes x 192 rows) have been input, the PO syndrome calculation for all PO columns is completed, and the syndrome data is stored in the
[0081]
Subsequently, the created PO syndrome is read from the
[0082]
In the above error correction processing, the correction capability of the PO series is usually up to 8 bytes, and an error exceeding 8 bytes cannot be corrected. However, if error position information (erasure pointer) is used, up to 16 bytes can be used. Error correction processing is possible. This is generally called erasure correction (erasure correction). In this embodiment, since the position of the PO parity to be generated is determined to be the last 16 bytes of the code string, if the erasure pointer is generated from the error position, the correction processing, that is, the PO parity can be generated. is there.
[0083]
More specifically, the desired syndrome data is selected by the
[0084]
Next, the
[0085]
Note that, in the description here, the case where the generated PO parity is written in the
[0086]
As described above, in the ECC encoding apparatus according to this embodiment, the PI parity generation calculation and the PO syndrome calculation are performed in parallel with the data storage processing in the
[0087]
Further, the
[0088]
In the above embodiment, the PO parity is generated by the ECC decoding circuit using the syndrome generation circuit. However, the PI parity can also be generated by using the syndrome generation circuit and the ECC decoding circuit. In this case, a PI syndrome buffer is separately provided, and a processing procedure of the syndrome calculation of the PI parity section and the PI parity calculation by the ECC decoding circuit is added. For this reason, although the processing speed is inferior to those of the above embodiments, the circuit scale can be reduced by further using the reproducing system circuit.
[0089]
【The invention's effect】
As described above in detail, according to the present invention, the process for generating and adding the first parity in the horizontal direction and the process for generating and adding the second parity in the vertical direction are performed in parallel. Therefore, there is no need to perform a two-step process of adding the first parity and temporarily storing the data in the memory, and accessing the stored data to generate and add the second parity.・ Addition can be performed at high speed.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a recording system configuration when an ECC encoding device according to an embodiment of the present invention is applied to a recordable DVD device.
FIG. 2 is a functional block diagram functionally explaining a processing procedure performed by the recording system configuration shown in FIG. 1;
FIG. 3 is a diagram showing a configuration of one ECC block.
FIG. 4 is a diagram showing an internal configuration of a sector (information data shown in FIG. 3 in 16 sectors), which is a unit constituting a portion (information data portion) in the ECC block shown in FIG. .
FIG. 5 is a diagram showing a specific configuration example of a PI
FIG. 6 is a diagram showing a configuration of data stored in a
FIG. 7 is a block diagram for explaining the configuration and operation of the PO
FIG. 8 is a flowchart showing an operation flow of the PO parity generation circuit and the like shown in FIG. 7;
FIG. 9 is a block diagram showing a recording system configuration when an ECC encoding device according to another embodiment of the present invention is applied to a recordable DVD device.
FIG. 10 is a block diagram for explaining the configuration and operation of the PO
11 is a diagram showing a specific configuration example of a PO syndrome calculation circuit 1002 shown in FIG.
FIG. 12 is a flowchart showing an operation flow of the PO syndrome generation circuit and the like shown in FIG. 10;
[Explanation of symbols]
51, 52, 53 ... Galois multipliers 54, 55, 56, 57 ... shift registers 58, 59, 60 ... exclusive OR
Claims (15)
前記第1のステップがなされる間に、前記第1のパリティが付加されたデータについて縦方向1列の第2のパリティを第2の計算回路で計算し、これを各列についてそれぞれ行なう第2のステップと
を具備することを特徴とするECCエンコード方法。A first step of calculating the first parity of one row in the horizontal direction with respect to the data of the horizontal and vertical block structure by the first calculation circuit and adding the parity in the horizontal direction, and performing the same for each row;
While the first step is performed, the second parity of one column in the vertical direction is calculated by the second calculation circuit for the data to which the first parity is added, and the second calculation is performed for each column. An ECC encoding method, comprising the steps of:
前記第1のステップがなされる間に、前記第1のパリティが付加されたデータについて縦方向1列のシンドロームを第2の計算回路で計算し、これを各列についてそれぞれ行なう第2のステップと、
前記計算されたシンドロームから縦方向の第2のパリティを生成する第3のステップと
を具備することを特徴とするECCエンコード方法。A first step of calculating the first parity of one row in the horizontal direction with respect to the data of the horizontal and vertical block structure by the first calculation circuit and adding the parity in the horizontal direction, and performing the same for each row;
While the first step is performed, the second calculation circuit calculates a syndrome in one column in the vertical direction for the data to which the first parity is added, and performs the calculation for each column. ,
And a third step of generating a second vertical parity from the calculated syndrome.
前記第1のパリティの計算を前記各行についてそれぞれ行なう間に、前記第1のパリティが付加されたデータについて縦方向1列の第2のパリティを計算し、これを各列についてそれぞれ行なう第2のパリティ生成回路と
を具備することを特徴とするECCエンコード装置。A first parity generation circuit that calculates a first parity of one row in the horizontal direction for data having a horizontal and vertical block structure, adds the first parity in the horizontal direction, and performs the same for each row;
While the calculation of the first parity is performed for each row, a second parity of one column in the vertical direction is calculated for the data to which the first parity is added, and the second parity is calculated for each column. An ECC encoding device comprising a parity generation circuit.
前記第2のパリティ生成回路は、前記メモリをバッファとして用い該バッファとの間で途中結果を往復しながら前記第2のパリティの計算を行なう
ことを特徴とする請求項9記載のECCエンコード装置。A memory having a correspondence for each horizontal address of the data to which the first parity is added;
10. The ECC encoding device according to claim 9, wherein the second parity generation circuit uses the memory as a buffer to calculate the second parity while reciprocating an intermediate result with the buffer.
前記第1のパリティの計算を前記各行についてそれぞれ行なう間に、前記第1のパリティが付加されたデータについて縦方向1列のシンドロームを計算し、これを各列についてそれぞれ行なうシンドローム生成回路と、
前記計算されたシンドロームから縦方向の第2のパリティを生成する回路と
を具備することを特徴とするECCエンコード装置。A parity generation circuit that calculates the first parity of one row in the horizontal direction and adds it in the horizontal direction for the data having the horizontal and vertical block structure, and performs the calculation for each row;
While performing the calculation of the first parity for each of the rows, a syndrome generation circuit that calculates a vertical one column syndrome for the data to which the first parity is added, and performs the calculation for each column,
A circuit for generating a second vertical parity from the calculated syndrome.
前記シンドローム生成回路は、前記メモリをバッファとして用い該バッファとの間で途中結果を往復しながら前記シンドロームの計算を行なう
ことを特徴とする請求項13記載のECCエンコード装置。A memory having a correspondence for each horizontal address of the data to which the first parity is added;
14. The ECC encoding device according to claim 13, wherein the syndrome generation circuit calculates the syndrome while reciprocating an intermediate result with the buffer using the memory as a buffer.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2003143157A JP2004348824A (en) | 2003-05-21 | 2003-05-21 | ECC encoding method and ECC encoding device |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2003143157A JP2004348824A (en) | 2003-05-21 | 2003-05-21 | ECC encoding method and ECC encoding device |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2004348824A true JP2004348824A (en) | 2004-12-09 |
| JP2004348824A5 JP2004348824A5 (en) | 2006-02-16 |
Family
ID=33531021
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2003143157A Abandoned JP2004348824A (en) | 2003-05-21 | 2003-05-21 | ECC encoding method and ECC encoding device |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2004348824A (en) |
Cited By (33)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2008084116A (en) * | 2006-09-28 | 2008-04-10 | Aisin Seiki Co Ltd | Data storage device and method for reading data from data storage device |
| CN1779833B (en) * | 2005-09-27 | 2011-05-18 | 威盛电子股份有限公司 | Method for Computing Error Detection Codes |
| US8438457B2 (en) | 2009-09-11 | 2013-05-07 | Sony Corporation | Nonvolatile memory apparatus, memory controller, and memory system |
| JP2014505450A (en) * | 2011-02-11 | 2014-02-27 | クアルコム,インコーポレイテッド | Encoding and decoding using elastic codes with flexible source block mapping |
| US8958375B2 (en) | 2011-02-11 | 2015-02-17 | Qualcomm Incorporated | Framing for an improved radio link protocol including FEC |
| US9136983B2 (en) | 2006-02-13 | 2015-09-15 | Digital Fountain, Inc. | Streaming and buffering using variable FEC overhead and protection periods |
| US9136878B2 (en) | 2004-05-07 | 2015-09-15 | Digital Fountain, Inc. | File download and streaming system |
| US9178535B2 (en) | 2006-06-09 | 2015-11-03 | Digital Fountain, Inc. | Dynamic stream interleaving and sub-stream based delivery |
| US9185439B2 (en) | 2010-07-15 | 2015-11-10 | Qualcomm Incorporated | Signaling data for multiplexing video components |
| US9191151B2 (en) | 2006-06-09 | 2015-11-17 | Qualcomm Incorporated | Enhanced block-request streaming using cooperative parallel HTTP and forward error correction |
| US9236885B2 (en) | 2002-10-05 | 2016-01-12 | Digital Fountain, Inc. | Systematic encoding and decoding of chain reaction codes |
| US9236976B2 (en) | 2001-12-21 | 2016-01-12 | Digital Fountain, Inc. | Multi stage code generator and decoder for communication systems |
| US9237101B2 (en) | 2007-09-12 | 2016-01-12 | Digital Fountain, Inc. | Generating and communicating source identification information to enable reliable communications |
| US9240810B2 (en) | 2002-06-11 | 2016-01-19 | Digital Fountain, Inc. | Systems and processes for decoding chain reaction codes through inactivation |
| US9246633B2 (en) | 1998-09-23 | 2016-01-26 | Digital Fountain, Inc. | Information additive code generator and decoder for communication systems |
| US9253233B2 (en) | 2011-08-31 | 2016-02-02 | Qualcomm Incorporated | Switch signaling methods providing improved switching between representations for adaptive HTTP streaming |
| US9264069B2 (en) | 2006-05-10 | 2016-02-16 | Digital Fountain, Inc. | Code generator and decoder for communications systems operating using hybrid codes to allow for multiple efficient uses of the communications systems |
| US9270414B2 (en) | 2006-02-21 | 2016-02-23 | Digital Fountain, Inc. | Multiple-field based code generator and decoder for communications systems |
| US9281847B2 (en) | 2009-02-27 | 2016-03-08 | Qualcomm Incorporated | Mobile reception of digital video broadcasting—terrestrial services |
| US9288010B2 (en) | 2009-08-19 | 2016-03-15 | Qualcomm Incorporated | Universal file delivery methods for providing unequal error protection and bundled file delivery services |
| US9294226B2 (en) | 2012-03-26 | 2016-03-22 | Qualcomm Incorporated | Universal object delivery and template-based file delivery |
| US9312885B2 (en) | 2012-08-15 | 2016-04-12 | Kabushiki Kaisha Toshiba | Nonvolatile semiconductor memory system error correction capability of which is improved |
| US9319448B2 (en) | 2010-08-10 | 2016-04-19 | Qualcomm Incorporated | Trick modes for network streaming of coded multimedia data |
| US9380096B2 (en) | 2006-06-09 | 2016-06-28 | Qualcomm Incorporated | Enhanced block-request streaming system for handling low-latency streaming |
| US9386064B2 (en) | 2006-06-09 | 2016-07-05 | Qualcomm Incorporated | Enhanced block-request streaming using URL templates and construction rules |
| US9419749B2 (en) | 2009-08-19 | 2016-08-16 | Qualcomm Incorporated | Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes |
| US9432433B2 (en) | 2006-06-09 | 2016-08-30 | Qualcomm Incorporated | Enhanced block-request streaming system using signaling or block creation |
| US9485546B2 (en) | 2010-06-29 | 2016-11-01 | Qualcomm Incorporated | Signaling video samples for trick mode video representations |
| US9596447B2 (en) | 2010-07-21 | 2017-03-14 | Qualcomm Incorporated | Providing frame packing type information for video coding |
| JP2017107390A (en) * | 2015-12-09 | 2017-06-15 | 株式会社東芝 | Video server apparatus and data writing / reading method |
| US9843844B2 (en) | 2011-10-05 | 2017-12-12 | Qualcomm Incorporated | Network streaming of media data |
| US9917874B2 (en) | 2009-09-22 | 2018-03-13 | Qualcomm Incorporated | Enhanced block-request streaming using block partitioning or request controls for improved client-side handling |
| US10090860B2 (en) | 2016-01-22 | 2018-10-02 | Toshiba Memory Corporation | Memory system using integrated parallel interleaved concatenation |
-
2003
- 2003-05-21 JP JP2003143157A patent/JP2004348824A/en not_active Abandoned
Cited By (47)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9246633B2 (en) | 1998-09-23 | 2016-01-26 | Digital Fountain, Inc. | Information additive code generator and decoder for communication systems |
| US9236976B2 (en) | 2001-12-21 | 2016-01-12 | Digital Fountain, Inc. | Multi stage code generator and decoder for communication systems |
| US9240810B2 (en) | 2002-06-11 | 2016-01-19 | Digital Fountain, Inc. | Systems and processes for decoding chain reaction codes through inactivation |
| US9236885B2 (en) | 2002-10-05 | 2016-01-12 | Digital Fountain, Inc. | Systematic encoding and decoding of chain reaction codes |
| US9236887B2 (en) | 2004-05-07 | 2016-01-12 | Digital Fountain, Inc. | File download and streaming system |
| US9136878B2 (en) | 2004-05-07 | 2015-09-15 | Digital Fountain, Inc. | File download and streaming system |
| CN1779833B (en) * | 2005-09-27 | 2011-05-18 | 威盛电子股份有限公司 | Method for Computing Error Detection Codes |
| US9136983B2 (en) | 2006-02-13 | 2015-09-15 | Digital Fountain, Inc. | Streaming and buffering using variable FEC overhead and protection periods |
| US9270414B2 (en) | 2006-02-21 | 2016-02-23 | Digital Fountain, Inc. | Multiple-field based code generator and decoder for communications systems |
| US9264069B2 (en) | 2006-05-10 | 2016-02-16 | Digital Fountain, Inc. | Code generator and decoder for communications systems operating using hybrid codes to allow for multiple efficient uses of the communications systems |
| US9380096B2 (en) | 2006-06-09 | 2016-06-28 | Qualcomm Incorporated | Enhanced block-request streaming system for handling low-latency streaming |
| US9178535B2 (en) | 2006-06-09 | 2015-11-03 | Digital Fountain, Inc. | Dynamic stream interleaving and sub-stream based delivery |
| US9432433B2 (en) | 2006-06-09 | 2016-08-30 | Qualcomm Incorporated | Enhanced block-request streaming system using signaling or block creation |
| US9628536B2 (en) | 2006-06-09 | 2017-04-18 | Qualcomm Incorporated | Enhanced block-request streaming using cooperative parallel HTTP and forward error correction |
| US11477253B2 (en) | 2006-06-09 | 2022-10-18 | Qualcomm Incorporated | Enhanced block-request streaming system using signaling or block creation |
| US9386064B2 (en) | 2006-06-09 | 2016-07-05 | Qualcomm Incorporated | Enhanced block-request streaming using URL templates and construction rules |
| US9209934B2 (en) | 2006-06-09 | 2015-12-08 | Qualcomm Incorporated | Enhanced block-request streaming using cooperative parallel HTTP and forward error correction |
| US9191151B2 (en) | 2006-06-09 | 2015-11-17 | Qualcomm Incorporated | Enhanced block-request streaming using cooperative parallel HTTP and forward error correction |
| JP2008084116A (en) * | 2006-09-28 | 2008-04-10 | Aisin Seiki Co Ltd | Data storage device and method for reading data from data storage device |
| US9237101B2 (en) | 2007-09-12 | 2016-01-12 | Digital Fountain, Inc. | Generating and communicating source identification information to enable reliable communications |
| US9281847B2 (en) | 2009-02-27 | 2016-03-08 | Qualcomm Incorporated | Mobile reception of digital video broadcasting—terrestrial services |
| US9288010B2 (en) | 2009-08-19 | 2016-03-15 | Qualcomm Incorporated | Universal file delivery methods for providing unequal error protection and bundled file delivery services |
| US9660763B2 (en) | 2009-08-19 | 2017-05-23 | Qualcomm Incorporated | Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes |
| US9419749B2 (en) | 2009-08-19 | 2016-08-16 | Qualcomm Incorporated | Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes |
| US9876607B2 (en) | 2009-08-19 | 2018-01-23 | Qualcomm Incorporated | Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes |
| US8438457B2 (en) | 2009-09-11 | 2013-05-07 | Sony Corporation | Nonvolatile memory apparatus, memory controller, and memory system |
| US12155715B2 (en) | 2009-09-22 | 2024-11-26 | Qualcomm Incorporated | Enhanced block-request streaming using block partitioning or request controls for improved client-side handling |
| US11770432B2 (en) | 2009-09-22 | 2023-09-26 | Qualcomm Incorporated | Enhanced block-request streaming system for handling low-latency streaming |
| US11743317B2 (en) | 2009-09-22 | 2023-08-29 | Qualcomm Incorporated | Enhanced block-request streaming using block partitioning or request controls for improved client-side handling |
| US10855736B2 (en) | 2009-09-22 | 2020-12-01 | Qualcomm Incorporated | Enhanced block-request streaming using block partitioning or request controls for improved client-side handling |
| US9917874B2 (en) | 2009-09-22 | 2018-03-13 | Qualcomm Incorporated | Enhanced block-request streaming using block partitioning or request controls for improved client-side handling |
| US9992555B2 (en) | 2010-06-29 | 2018-06-05 | Qualcomm Incorporated | Signaling random access points for streaming video data |
| US9485546B2 (en) | 2010-06-29 | 2016-11-01 | Qualcomm Incorporated | Signaling video samples for trick mode video representations |
| US9185439B2 (en) | 2010-07-15 | 2015-11-10 | Qualcomm Incorporated | Signaling data for multiplexing video components |
| US9596447B2 (en) | 2010-07-21 | 2017-03-14 | Qualcomm Incorporated | Providing frame packing type information for video coding |
| US9602802B2 (en) | 2010-07-21 | 2017-03-21 | Qualcomm Incorporated | Providing frame packing type information for video coding |
| US9456015B2 (en) | 2010-08-10 | 2016-09-27 | Qualcomm Incorporated | Representation groups for network streaming of coded multimedia data |
| US9319448B2 (en) | 2010-08-10 | 2016-04-19 | Qualcomm Incorporated | Trick modes for network streaming of coded multimedia data |
| US8958375B2 (en) | 2011-02-11 | 2015-02-17 | Qualcomm Incorporated | Framing for an improved radio link protocol including FEC |
| US9270299B2 (en) | 2011-02-11 | 2016-02-23 | Qualcomm Incorporated | Encoding and decoding using elastic codes with flexible source block mapping |
| JP2014505450A (en) * | 2011-02-11 | 2014-02-27 | クアルコム,インコーポレイテッド | Encoding and decoding using elastic codes with flexible source block mapping |
| US9253233B2 (en) | 2011-08-31 | 2016-02-02 | Qualcomm Incorporated | Switch signaling methods providing improved switching between representations for adaptive HTTP streaming |
| US9843844B2 (en) | 2011-10-05 | 2017-12-12 | Qualcomm Incorporated | Network streaming of media data |
| US9294226B2 (en) | 2012-03-26 | 2016-03-22 | Qualcomm Incorporated | Universal object delivery and template-based file delivery |
| US9312885B2 (en) | 2012-08-15 | 2016-04-12 | Kabushiki Kaisha Toshiba | Nonvolatile semiconductor memory system error correction capability of which is improved |
| JP2017107390A (en) * | 2015-12-09 | 2017-06-15 | 株式会社東芝 | Video server apparatus and data writing / reading method |
| US10090860B2 (en) | 2016-01-22 | 2018-10-02 | Toshiba Memory Corporation | Memory system using integrated parallel interleaved concatenation |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2004348824A (en) | ECC encoding method and ECC encoding device | |
| JP3896206B2 (en) | Encoding method and system for storage device using ECC block structure | |
| US8001447B2 (en) | Error correction method and apparatus for data storage device | |
| CN100431034C (en) | Method and device for data reproduction | |
| US8171373B2 (en) | Coding circuit for recording data on DVD disk | |
| KR100305973B1 (en) | Data error correcting method and apparatus | |
| US7500157B2 (en) | Error correction coding method for a high-density storage media | |
| US7836375B2 (en) | Scrambler circuit, encoding device, encoding method and recording apparatus | |
| EP1750264B1 (en) | Error detecting code calculation circuit, error detecting code calculation method, and recording apparatus | |
| US7225385B2 (en) | Optical recording method | |
| JP2005322394A (en) | Digital data encoding apparatus, DVD recording apparatus and method | |
| CN100590716C (en) | Optical storage medium recording device and method | |
| KR100412766B1 (en) | Write cache circuit, recording apparatus with write cache circuit, and write cache method | |
| JP2006526247A (en) | Error correction encoding method, data recording method and apparatus using the same | |
| TWI384463B (en) | Method for optical storage medium writing and apparatus thereof | |
| JP2001156649A (en) | Digital data encoding processing circuit, encoding processing method, and digital data recording device including encoding processing circuit | |
| JP3774423B2 (en) | memory | |
| JP4071789B2 (en) | Memory address generation apparatus and method | |
| US7334180B2 (en) | Optical encoding method | |
| JPH0737334A (en) | Information recording method | |
| JPH087496A (en) | Disk recording / reproducing method and device | |
| JPH10154941A (en) | Error correction circuit | |
| JP3384402B2 (en) | Information reproducing method and information reproducing apparatus | |
| JPS62275356A (en) | Identification signal forming method | |
| JPS63298776A (en) | Error correction processing system |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051227 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051227 |
|
| A762 | Written abandonment of application |
Free format text: JAPANESE INTERMEDIATE CODE: A762 Effective date: 20070312 |