JP2005086432A - 誤り訂正符号発生回路 - Google Patents
誤り訂正符号発生回路 Download PDFInfo
- Publication number
- JP2005086432A JP2005086432A JP2003315673A JP2003315673A JP2005086432A JP 2005086432 A JP2005086432 A JP 2005086432A JP 2003315673 A JP2003315673 A JP 2003315673A JP 2003315673 A JP2003315673 A JP 2003315673A JP 2005086432 A JP2005086432 A JP 2005086432A
- Authority
- JP
- Japan
- Prior art keywords
- error correction
- correction code
- symbol
- circuit
- data
- 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.)
- Pending
Links
Images
Landscapes
- Detection And Correction Of Errors (AREA)
- Error Detection And Correction (AREA)
Abstract
【課題】誤り訂正符号の算出にかかる処理速度をより高速化することのできる誤り訂正符号発生回路を提供する。
【解決手段】PO演算回路171は、DVDのブロックデータを8ビットからなるシンボルにて行列表記した際の各列のシンボルを順次取り込んで外パリティを算出するための演算を行う。また、PI演算回路172では、PO演算回路171に取り込まれる上記シンボルを順次取り込んで、各行の内パリティを算出するための演算を行う。このPI演算回路172の演算結果は、一時保持メモリ190に一時的に保持される。
【選択図】 図1
【解決手段】PO演算回路171は、DVDのブロックデータを8ビットからなるシンボルにて行列表記した際の各列のシンボルを順次取り込んで外パリティを算出するための演算を行う。また、PI演算回路172では、PO演算回路171に取り込まれる上記シンボルを順次取り込んで、各行の内パリティを算出するための演算を行う。このPI演算回路172の演算結果は、一時保持メモリ190に一時的に保持される。
【選択図】 図1
Description
本発明は、2系統の誤り訂正符号を発生する誤り訂正符号発生回路に関する。
図5に、DVD(Digital Versatile Disc)のデータ記録装置の全体構成を示す。同図5に示されるように、このデータ記録装置においては、ホストコンピュータから転送されるデータは、例えばSDRAM(Synchronous Dynamic Random Access Memory)からなるバッファメモリ300に一旦備蓄される。そして、このバッファメモリ300に備蓄されるデータに対し、ディジタル信号処理回路200により所定のディジタル処理が施される。また、ディジタル信号処理回路200から出力されるデータに対し、アナログ信号処理回路310により所定のアナログ処理が施される。そして、アナログ信号処理回路310の出力に基づきピックアップ320では、光ディスク(DVD)330にレーザを照射する。なお、これらディジタル信号処理回路200や、アナログ信号処理回路310、ピックアップ320は、マイクロコンピュータ340によって統括的に制御される。
ここで、上記ディジタル信号処理回路200内で行われる処理について更に説明する。
すなわち、ホストコンピュータから転送されるデータは、ホストインターフェース210を介して上記バッファメモリ300との間のアクセスを司るメモリインターフェース220へと転送される。そして、メモリインターフェース220では、アドレス発生回路230によって発生されるバッファメモリ300のアドレスデータに基づき対応する記憶領域にアクセスし、ホストインターフェース210から転送されるデータを同記憶領域に記憶する。
また、メモリインターフェース220では、アドレス発生回路230によって発生されるアドレスデータに基づき、バッファメモリ300の対応する記憶領域へアクセスすることで、ディジタル信号処理回路200内の各処理回路とバッファメモリ300との間のデータの授受を仲介する。そして、これにより、バッファメモリ300に備蓄されるデータに対して各種ディジタル処理が施されるようになる。
すなわち、IED処理回路240を通じて、バッファメモリ300に備蓄されるデータのDVDのデータフォーマットにおける各セクタ毎に2バイトのIED(ID Error Detection Code)データが付与される。また、EDC処理回路250を通じて、上記各セクタ毎に4バイトのEDC(Error Detection Code)データが付与される。また、スクランブル処理回路260を通じて、ホストコンピュータから転送されてきたデータに対して所定のスクランブル処理が施される。
こうして、IEDデータ及びEDCデータが付与されて且つスクランブル処理が施されたデータに対して、ECC処理回路270を通じて誤り訂正符号が付与される。更に、誤り訂正符号が付与されたデータには、8−16変調回路280を通じて、所定のインターリーブ処理、8−16変調処理、NRZI変調処理が施される。そして、8−16変調回路280により所定の処理が施されたデータは、アナログ信号処理回路310に転送される。
ここで、上記ECC処理回路270における処理について更に説明する。
図6に、DVDにおける誤り訂正符号を有する符号語である1ブロックのデータを示す。同図6には、誤り訂正符号による訂正対象となるデータである被訂正符号が、8ビットのデータからなるシンボル「Bi,j(i=0〜191、j=0171)」にて行列表記さ
れている。すなわち、上記被訂正符号は、172列192行のシンボルにて行列表記される。
れている。すなわち、上記被訂正符号は、172列192行のシンボルにて行列表記される。
そして、172列からなる各列「B0,0〜B191,0、B0,1〜B191,1、…、B0,171〜B191,171」のシンボル群に対して、それぞれ16バイトからなる外パリティ(PO:outer code parity)「B192,0〜B207,0、B192,1〜B207,1、…、B192,171〜B207,171」が付与されている。また、192行からなる各行「B0,0〜B0,171、B1,0〜B1,171、…、B191,0〜B191,171」のシンボル群に対して、それぞれ10バイトからなる内パリティ(PI:inner code parity)「B0,172〜B0,181、B1,172〜B1,181、…、B191,172〜B191,181」が付与されている。更に、上記外パリティの各行「B192,0〜B192,171、…、B207,0〜B207,171」に対しても、上記内パリティ「B192,172〜B192,181、…、B207,172〜B207,181」が付与されている。
このように、DVDにあっては、外パリティ及び内パリティの2系統の誤り訂正符号が付与されている。そして、こうした2系統の誤り訂正符号は、先の図5に示したECC処理回路270によって算出される。すなわち、ECC処理回路270は、演算部271とラッチ部272とを備えており、演算部271では、上記シンボル群等を構成する各シンボルとラッチ部272でラッチされたデータとに基づき誤り訂正符号を算出するための演算を行う。
例えば第0列目の外パリティ「B192,0〜B207,0」を算出する際には、ECC処理回路270において、同第0列目のシンボル群を構成する各シンボル「B0,0〜B191,0」を順に取り込み、演算を行う。この演算結果は、外パリティと同じ16バイトのデータ量を有し、この演算結果に関するデータがラッチ部272にラッチされる。そして、被訂正符号を構成する最後の行のシンボル「B191,0」を取り込んで演算を行った演算結果が、外パリティとなる。
また、例えば第0行目の内パリティ「B0,172〜B0,181」を算出する際には、ECC処理回路270では、同第0行目のシンボル群を構成する各シンボル「B0,0〜B0,171」を順に取り込み、演算を行う。この演算結果は、内パリティと同じ10バイトのデータ量を有し、この演算結果に関するデータがラッチ部272にラッチされる。そして、被訂正符号を構成する最後の列のシンボル「B0,171」を取り込んで演算を行った演算結果が、外パリティとなる。
ちなみに、この図5に示すディジタル信号処理回路200における処理は、図7に模式的に示すように時分割にて行われる。ここで、図7(a)、図7(b)は、上記ホストインターフェース210から上記バッファメモリ300へ転送されるデータがどのブロックに対応するかを示す。また、図7(c)〜図7(h)は、IEDが付与されるデータ、EDCが付与されるデータ、スクランブル処理されるデータ、外パリティが付与されるデータ、内パリティが付与されるデータ、上記8−16変調回路によって処理されるデータがそれぞれどのブロックのデータであるかをそれぞれ示している。
なお、従来の誤り訂正手法としてはこの他に、例えば下記特許文献1の段落[0042]〜[0043]に記載のものがある。
特開平10−63433号公報
ところで、上記ディジタル信号処理回路200では、図7に示したように、時分割でバ
ッファメモリ300へのアクセスを行うために、誤り訂正符号を算出する処理を行っているときには、ECC処理回路270によりバッファメモリ300へのアクセスが占有されることとなる。そして、他の処理回路からバッファメモリ300へのアクセスは待機状態となる。
ッファメモリ300へのアクセスを行うために、誤り訂正符号を算出する処理を行っているときには、ECC処理回路270によりバッファメモリ300へのアクセスが占有されることとなる。そして、他の処理回路からバッファメモリ300へのアクセスは待機状態となる。
特に、ECC処理回路270では、これら外パリティと内パリティとの2系統の誤り訂正符号を算出する処理を行うことなどから、その処理時間がディジタル信号処理回路200における一連の処理に占める割合は大きなものとなっている。したがって、例えば光ディスク330に倍速でデータを記録する等、ディジタル信号処理回路200の処理の高速化が要求されるときに、その要求を満たすことが困難なものとなっていた。
本発明はこうした実情に鑑みてなされたものであり、その目的は、誤り訂正符号の算出にかかる処理速度をより高速化することのできる誤り訂正符号発生回路を提供することにある。
この発明は、訂正対象となる所定のデータ量のデータである被訂正符号を所定のビット数からなるシンボルにて行列表記し、その各行及び各列の一方を第1のシンボル群とし、他方を第2のシンボル群としたとき、各第1のシンボル群にそれぞれ第1の誤り訂正符号を付与するとともに各第2のシンボル群にそれぞれ第2の誤り訂正符号を付与すべく、外部から各シンボルを取り込んで前記第1及び第2の誤り訂正符号を発生する誤り訂正符号発生回路において、前記第1のシンボル群を構成する各シンボルを順次取り込んで前記第1の誤り訂正符号を算出するための演算を連続的に行う第1の演算回路と、前記第1の演算回路に取り込まれる各シンボルを取り込んで前記第2の誤り訂正符号を算出するための演算を断続的に行う第2の演算回路と、前記第2の演算回路の第2の誤り訂正符号を算出するための演算の中間データを一時的に保持する一時保持メモリと、を備え前記第2の演算回路は、前記第1の演算回路に取り込まれる各シンボルとともに前記一時保持メモリから前記中間データを取り込んで所定の演算を実行した後、前記一時保持メモリに保持する中間データを更新することで、誤り訂正符号の算出にかかる処理速度をより高速化することを可能とする。
本発明によれば、誤り訂正符号の算出にかかる処理速度をより高速化することができるようになる。
以下、本発明にかかる誤り訂正符号発生回路をDVDのディジタル信号処理回路に適用した一実施形態について、図面を参照しつつ説明する。
図1に、本実施形態にかかるDVDのデータ記録装置のうち、ディジタル信号処理回路100及びバッファメモリ300の構成を示す。これらディジタル信号処理回路100やバッファメモリ300は、先の図5に示したディジタル信号処理回路200やバッファメモリ300と対応しており、また、これらの周囲には、先の図6に示したマイクロコンピュータ340やアナログ信号処理回路310、ピックアップ320等が備えられている。
図1に示すディジタル信号処理回路100においても、ホストインターフェース110や、メモリインターフェース120、アドレス発生回路130、IED処理回路140、EDC処理回路150、スクランブル処理回路160、ECC処理回路170、8−16変調回路180を備えている。これらのうち、ホストインターフェース110や、メモリインターフェース120、IED処理回路140、EDC処理回路150、スクランブル処理回路160については、先の図6に示した対応する処理回路と同一である。
ここで、本実施形態にかかるECC処理回路170について更に説明する。
このECC処理回路170は、先の図6に示した各列のシンボル群を構成する各シンボルを取り込んで外パリティを算出する演算を連続的に行うPO演算回路171と、このPO演算回路171に取り込まれる各シンボルを取り込んで内パリティを算出するための演算を断続的に行うPI演算回路172とを備えている。ここでPO演算回路171は、演算部171a及びラッチ部171bを備えており、演算部171aでは、ラッチ部171bによってラッチされる16バイトのデータと外部から取り込まれる上記各シンボルとに基づき外パリティの算出にかかる演算を行う。また、PI演算回路172は、演算部172a及びラッチ部172bを備えており、演算部172aでは、ラッチ部172bによってラッチされる10バイトのデータと上記各シンボルとに基づき内パリティの算出にかかる演算を行う。
更に、ECC処理回路170は、PI演算回路172に取り込まれるデータを、PO演算回路171に取り込まれる各シンボルとするか、同PO演算回路171から出力される外パリティを構成する各シンボルとするかを選択するセレクタ173を備えている。また、ECC処理回路170は、PO演算回路171で算出される外パリティやPI演算回路172で算出される内パリティを所定のタイミングで選択的にメモリインターフェース120に出力するセレクタ174を備えている。更に、ECC処理回路170は、PO演算回路171のラッチ部171bによってラッチされるデータが更新された回数をカウントするカウンタ175を備えており、このカウント値によりセレクタ173、174が制御される構成となっている。
また、PI演算回路172の演算結果(ラッチ部172bにラッチされる10バイトのデータ)は、例えばSRAM(Static Random Access Memory)からなる一時保持メモリ190に一時的に保持される。この一時保持メモリ190は、各内パリティ「B0,172〜B0,181、B1,172〜B1,181、…、B207,172〜B207,181」毎に、10バイトの記憶領域を有するものとなっている。
以下、こうした構成によって行われる内パリティ及び外パリティの算出にかかる処理について、図2、図3を参照しつつ説明する。
図2(a1)、図2(a2)、図3(a1)、図3(a2)は、上記バッファメモリ300に対するアクセスに関するデータを示している。ちなみに、バッファメモリ300へのアクセスは、先の図1に示したアドレス発生回路130によって発生されるアドレスに基づいて行われる。また、図2(b1)、図2(b2)、図3(b1)は、上記PO演算回路171の演算結果(ラッチ部171bにラッチされる16バイトのデータ)を、また、図2(c1)、図2(c2)、図3(c1)は、上記PI演算回路172の演算結果(ラッチ部172bにラッチされる10バイトのデータ)をそれぞれ示している。更に、図2(d1)、図2(d2)、図3(d1)、図3(d2)は、上記内パリティの各行に割り当てられた一時保持メモリ190の各記憶領域に記憶されるデータを示している。
上記DVDの各ブロックにおける内パリティ及び外パリティの算出が開始されると、上記バッファメモリ300に記憶されている該当するブロックを構成するシンボルのうち、外パリティの付与されるシンボル群を構成する各シンボルが順次読み出される。すなわち、図2(a1)に示す第0列目のシンボル群「B0,0〜B191,0」を構成する各シンボルが順次読みされた後、図2(a2)に示す第1列目のシンボル群「B0,1〜B191,1」を構成する各シンボルが順次読み出されるというように先の図6に示した行列の各列に沿ったシンボルが順次読み出される。
そして、上記PO演算回路171では、各シンボルが取り込まれる毎に、ラッチ部17
1bにラッチされるデータとこの新たに取り込まれたシンボルとから外パリティの算出にかかる演算を行う。そして、演算結果としてのデータは、上記ラッチ部171bに新たにラッチされることとなる。ちなみに、図2(b1)及び図2(b2)は、各シンボルを取り込んで新たに行われる演算結果についての16バイトのデータ(ラッチ部171bに新たにラッチされるデータ)を示している。例えば、第0列第0行のシンボル(B0,0)に基づいた演算結果を「0列(0)」と、また、第0列第1行のシンボル(B1,0)に基づいた演算結果を「0列(1)」とそれぞれ表記している。
1bにラッチされるデータとこの新たに取り込まれたシンボルとから外パリティの算出にかかる演算を行う。そして、演算結果としてのデータは、上記ラッチ部171bに新たにラッチされることとなる。ちなみに、図2(b1)及び図2(b2)は、各シンボルを取り込んで新たに行われる演算結果についての16バイトのデータ(ラッチ部171bに新たにラッチされるデータ)を示している。例えば、第0列第0行のシンボル(B0,0)に基づいた演算結果を「0列(0)」と、また、第0列第1行のシンボル(B1,0)に基づいた演算結果を「0列(1)」とそれぞれ表記している。
ここで、各列において第0行目のシンボル「B0,0、B0,1、…」を取り込む際には、上記ラッチ部171bは初期化されており、この初期化されたラッチ部171bから出力される初期データと第0行目のシンボルとに基づいて演算が行われる。そして、各列の第1行目から第191行目までの各シンボルを取り込んで演算を行う際には、上記ラッチ部171bにラッチされている16バイトのデータである中間データが、換言すれば前回の演算結果が用いられる。すなわち、例えば第0列第1行目のシンボル「B1,0」を取り込んだ際には中間データ「0列(0)」が、また例えば、第1列第1行目のシンボル「B1,1」を取り込んだ際には中間データ「1列(0)」がそれぞれ用いられる。
一方、こうした外パリティの付与される各列のシンボル群を構成するシンボルが上記PO演算回路171に取り込まれると同時に、これら各シンボルは、図2(c1)、図2(c2)に示すように上記PI演算回路172にも取り込まれる。ただし、こうしてPI演算回路172に取り込まれる各シンボルは、内パリティの演算のためのシンボルを取り込む順番とはなっていない。このため、PI演算回路172で演算された演算結果(ラッチ部172bでラッチされる10バイトのデータ)は、一時保持メモリ190の対応する記憶領域に逐次記憶される。
すなわち、例えば上記外パリティの付与される第0列目の各シンボル「B0,0〜B191,0」を取り込んで演算する毎に、その中間データ「0行(0)」、「1行(0)」、…「191行(0)」を一時保持メモリ190の対応する記憶領域にそれぞれ一旦記憶する。また例えば、上記外パリティの付与される第1列目の各シンボル「B0,1〜B191,1」を取り込んで演算する毎に、その中間データ「0行(1)」、「1行(1)」、…「191行(1)」を一時保持メモリ190の対応する記憶領域にそれぞれ一旦記憶する。
ここで、図2(c1)に示されるように、外パリティの付与される第0列目の各シンボルを用いて上記PI演算回路172による演算を行う際には、ラッチ部172bをそれぞれ初期化しておき、この初期化されたラッチ部172bから出力される初期データと第0列目のシンボルとに基づいて演算を行う。続いて、上記外パリティの付与される第1列目から第171列目までの各シンボルを演算部171aに取り込むタイミングに同期して、取り込まれるシンボルに対応する行の内パリティを算出するための演算結果(中間データ)であって一時保持メモリ190に記憶されている前回の演算結果がラッチ部172bに取り込まれる。これにより、例えば第1列第0行目のシンボル「B0,1」を取り込む際には中間データ「0行(0)」が、また、例えば第1列第1行目のシンボル「B1,1」を取り込む際には中間データ「1行(0)」が一時保持メモリ190から取り出されることとなる。なお、各内パリティを算出するための演算の中間データを一時保持メモリ190に記憶する際には、同内パリティに対応する中間データに上書きするようにする。すなわち、一時保持メモリ190に保持されている対応する前回の中間データが更新されるようにする。
そして、各列において第0行目から第191行目までのシンボルに基づいた演算が行われた時点で、ラッチ部171bには、各列の外パリティがラッチされることとなる。例えば第0列第191行目のシンボル「B191,0」を用いた演算結果「0列(191)」は第
0列目の外パリティ「B192,0〜B207,0」となり、また、例えば第1列第191行目のシンボル「B191,1」を用いた演算結果「1列(191)」は第1列目の外パリティ「B192,1〜B207,1」となる。そして、これら外パリティ「B192,0〜B207,0、B192,1〜B207,1、…」が上記バッファメモリ300に順次記憶される。これは、上記ラッチ部171bにてラッチされるデータの更新回数を上記カウンタ175によってカウントし、このカウント結果に基づいて上記セレクタ174が切り替え制御されることで行われる。
0列目の外パリティ「B192,0〜B207,0」となり、また、例えば第1列第191行目のシンボル「B191,1」を用いた演算結果「1列(191)」は第1列目の外パリティ「B192,1〜B207,1」となる。そして、これら外パリティ「B192,0〜B207,0、B192,1〜B207,1、…」が上記バッファメモリ300に順次記憶される。これは、上記ラッチ部171bにてラッチされるデータの更新回数を上記カウンタ175によってカウントし、このカウント結果に基づいて上記セレクタ174が切り替え制御されることで行われる。
更に、外パリティを構成する各シンボルをバッファメモリ300に転送する際、同シンボルをPI演算回路172に転送する。これは、上記ラッチ部171bにてラッチされるデータの更新回数を上記カウンタ175によってカウントし、このカウント結果に基づいて上記セレクタ173が切り替え制御されることで行われる。これにより、PI演算回路172では、第0行目から第191行目についての内パリティに加えて、外パリティを構成する第192行目から第207行目についての内パリティを算出する為の演算を行うことができる。
こうして図3(a1)〜図3(d1)に示すように、第171列目の外パリティの算出まで同様の処理を繰り返す。ちなみに、第171列目の被訂正符号及び外パリティを構成する各シンボルを用いて上記PI演算回路172にて行われる演算結果「0行(171)」、「1行(171)」、…「207行(171)」は、各行の内パリティとなっている。そして、第171列目の外パリティ「B192,171〜B207,171」がバッファメモリ300に転送されると、図3(a2)、図3(d2)に示されるように、一時保持メモリ190に保持されている内パリティを第0行目の内パリティから順に転送する。これは、上記カウンタ175によるカウント値に基づき、上記セレクタ174が切り替え制御されることで行われる。
このように、本実施形態では外パリティと内パリティとを算出する処理を同時に行うことで、図4に示すように、誤り訂正符号の算出にかかる処理時間を低減することができるようになる。ちなみに、図4(a)、図4(b)は、上記ホストインターフェースから上記バッファメモリ300へ転送されるデータがどのブロックに対応するかを示す。また、図4(c)〜図4(h)は、IEDが付与されるデータ、EDCが付与されるデータ、スクランブル処理されるデータ、外パリティが付与されるデータ、内パリティが付与されるデータ、上記8−16変調回路によって処理されるデータがそれぞれどのブロックのデータであるかをそれぞれ示している。また、同図4に示すように、外パリティの処理及び内パリティの処理のためにバッファメモリ300が占有される時間が短縮されるため、高倍速への追従性やデータの記録制御に際してバッファメモリ300への他のアクセス要求に迅速に対応することもできるようになる。
なお、本実施形態においては、PO演算回路171やPI演算回路172で一回の演算を行う周期を、バッファメモリ300との間でデータの授受を行う周期以下に設定している。すなわち本実施形態では、ディジタル信号処理回路100における動作クロックの1クロックでPO演算回路171やPI演算回路172での1回の演算を行う。
これに対し、上記バッファメモリ300が例えばSDRAMである場合、これへのアクセス周期は、例えば行アドレス指定に1クロック、列アドレス指定に1クロック、プリチャージ動作に1クロックの合計3クロック要することとなる。ただし、上記外パリティの算出のために読み出されるシンボルをバッファメモリの記憶領域の行方向に沿って記憶することで、行アドレスを一定としたまま列アドレスを指定していくページモードを利用したアクセスを行う場合には、列アドレスを指定するのみで記憶領域を指定するため、バッファメモリ300へのアクセス周期は、1クロックとなる。
以上説明した本実施形態によれば、以下の効果が得られるようになる。
(1)先の図6に示した各列のシンボルを順次取り込んで外パリティを算出するPO演算回路171と、同シンボルを取り込んで内パリティを演算するPI演算回路172と、PI演算回路172の演算結果を一時的に保持する一時保持メモリ190とを備えた。これにより、外パリティと内パリティとを算出する演算を同時に行うことができるようになり、ひいては、これら誤り訂正符号の算出にかかる処理速度をより高速化することができるようになる。
(2)外パリティをバッファメモリ300に転送する際、この転送される外パリティを構成する各シンボルをPI演算回路172で取り込んで内パリティを算出するための演算を行うようにした。これにより、バッファメモリ300に転送された外パリティを読み出して新たに内パリティを算出する場合と比較して、バッファメモリ300へのアクセス回数を低減することができる。
(3)第171列目の外パリティ(最後の外パリティ)を算出するに際し、対応する列の被訂正符号及び同第171列目の外パリティの各シンボルを用いたPI演算回路172の演算結果を一時保持メモリ190に一旦保持するようにした。これにより、第171列目の外パリティの算出にかかる処理や、同外パリティの転送にかかる処理を円滑に行うことができる。
(4)外パリティの全てをバッファメモリ300に転送した後に内パリティをバッファメモリ300に転送するために、こうした内パリティの転送にかかる処理とECC処理回路170内における他の処理との干渉を好適に回避することができるようになる。
(5)一時保持メモリ190を、各行に対応した内パリティ毎に、それぞれ内パリティのデータ量に等しい記憶領域を有する構成とした。そして、一時保持メモリ190に新たな演算結果を保持する際には、対応する記憶領域に上書きするようにした。これにより、内パリティと外パリティとを同時に算出する際に要求される必要最小限の記憶領域とすることができる。
(6)ECC処理回路170をハードウェア手段にて構成することで、外パリティや内パリティの演算をいっそう高速化することができるようになる。
なお、上記実施形態は、以下のように変更して実施してもよい。
・内パリティをバッファメモリ300に転送するタイミングが全ての外パリティをバッファメモリ300に転送した後でなくても、少なくとも先の実施形態の上記(1)の効果を得ることはできる。
・バッファメモリ300に外パリティを一旦備蓄した後、これを読み出すことで第192行目から第207行目までの内パリティを演算するようにしても、少なくとも先の実施形態の上記(1)の効果を得ることはできる。
・第1のシンボル群を構成する各シンボルを順次取り込んで第1の誤り訂正符号を算出するための演算を連続的に行う第1の演算回路と、第1の演算回路によって取り込まれる各シンボルを取り込んで第2の誤り訂正符号を算出するための演算を断続的に行う第2の演算回路とは、上記構成に限らない。すなわち、例えば第1の演算回路を内パリティを算出するものとし、第2の演算回路を外パリティを算出するものとしてもよい。この場合、一時保持メモリには、第2の演算回路の演算結果としての外パリティの演算結果を一時的に保持する。
・誤り訂正符号を有する符号語のフォーマットとしては、先の図6に例示したDVDのデータフォーマットに限らない。要は、訂正対象となる所定のデータ量のデータである被訂正符号を所定のビット数からなるシンボルにて行列表記し、その各行及び各列の一方を第1のシンボル群、他方を各第2のシンボル群としてそれぞれに第1の誤り訂正符号、第2の誤り訂正符号が付与されるものであればよい。
100…ディジタル信号処理回路、110…ホストインターフェース、120…メモリインターフェース、130…アドレス発生回路、140…IED処理回路、150…EDC処理回路、160…スクランブル処理回路、170…ECC処理回路、171…PO演算回路、171a…演算部、171b…ラッチ部、172…PI演算回路、172a…演算部、172b…ラッチ部、173、174…セレクタ、175…カウンタ、180…8−16変調回路、190…一時保持メモリ。
Claims (5)
- 訂正対象となる所定のデータ量のデータである被訂正符号を所定のビット数からなるシンボルにて行列表記し、その各行及び各列の一方を第1のシンボル群とし、他方を第2のシンボル群としたとき、各第1のシンボル群にそれぞれ第1の誤り訂正符号を付与するとともに各第2のシンボル群にそれぞれ第2の誤り訂正符号を付与すべく、外部から各シンボルを取り込んで前記第1及び第2の誤り訂正符号を発生する誤り訂正符号発生回路において、
前記第1のシンボル群を構成する各シンボルを順次取り込んで前記第1の誤り訂正符号を算出するための演算を連続的に行う第1の演算回路と、
前記第1の演算回路に取り込まれる各シンボルを取り込んで前記第2の誤り訂正符号を算出するための演算を断続的に行う第2の演算回路と、
前記第2の演算回路の第2の誤り訂正符号を算出するための演算の中間データを一時的に保持する一時保持メモリと、を備え
前記第2の演算回路は、前記第1の演算回路に取り込まれる各シンボルとともに前記一時保持メモリから前記中間データを取り込んで所定の演算を実行した後、前記一時保持メモリに保持する中間データを更新する
ことを特徴とする誤り訂正符号発生回路。 - 前記第2の演算回路は、最初の第1のシンボル群に対しては前記第1の演算回路に取り込まれる各シンボルとともに初期データを取り込んで前記第2の誤り訂正符号を算出するための所定の演算を実行し、2番目以降の第1のシンボル群に対しては前記第1の演算回路に取り込まれる各シンボルとともに前記一時保持メモリに保持された前記中間データを取り込んで前記第2の誤り訂正符号を算出するための所定の演算を実行する
ことを特徴とする請求項1記載の誤り訂正符号発生回路。 - 前記各第1の誤り訂正符号は、所定のシンボル数からなるものであるとともに、前記第2の誤り訂正符号は、これら各第1の誤り訂正符号からそれぞれ1つずつシンボルを集めたものに対しても付与されるものであり、
前記第1の演算回路により前記第1の誤り訂正符号が算出されるたびに、同算出される第1の誤り訂正符号を外部に転送するとともに、
前記第2の演算回路では、前記第1の誤り訂正符号が外部に転送される際に、同第1の誤り訂正符号を構成する各シンボルを取り込んで前記第2の誤り訂正符号を算出するための演算を行う
ことを特徴とする請求項1又は2記載の誤り訂正符号発生回路。 - 前記第1の演算回路により前記第1の誤り訂正符号のうちの最後の誤り訂正符号を算出するに際し、対応する第1のシンボル群及び前記最後の誤り訂正符号の各シンボルを用いた前記第2の演算回路による演算結果を一旦前記一時保持メモリに保持する
ことを特徴とする請求項3記載の誤り訂正符号発生回路。 - 前記第1の誤り訂正符号の全てを外部に転送した後、前記一時保持メモリに保持されている前記第2の誤り訂正符号を外部に転送する
ことを特徴とする請求項4記載の誤り訂正符号発生回路。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003315673A JP2005086432A (ja) | 2003-09-08 | 2003-09-08 | 誤り訂正符号発生回路 |
CNB2004100563440A CN100361222C (zh) | 2003-09-05 | 2004-08-06 | 纠错码产生电路及其方法 |
TW093126317A TWI277956B (en) | 2003-09-05 | 2004-09-01 | Error correction code generation method |
US10/932,398 US20050055622A1 (en) | 2003-09-05 | 2004-09-02 | Device and method for generating error correction code |
KR1020040070188A KR100561982B1 (ko) | 2003-09-05 | 2004-09-03 | 오류 정정 부호 발생 회로 및 그 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003315673A JP2005086432A (ja) | 2003-09-08 | 2003-09-08 | 誤り訂正符号発生回路 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005086432A true JP2005086432A (ja) | 2005-03-31 |
Family
ID=34415860
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003315673A Pending JP2005086432A (ja) | 2003-09-05 | 2003-09-08 | 誤り訂正符号発生回路 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005086432A (ja) |
-
2003
- 2003-09-08 JP JP2003315673A patent/JP2005086432A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102096609B (zh) | 可编程循环冗余校验(crc)计算的指令集架构 | |
JPS63197123A (ja) | エラ−訂正及びチエツク装置 | |
JP2006139911A (ja) | 誤り訂正装置、光ディスク制御装置、光ディスク読み取り装置ならびに誤り訂正方法 | |
JPH10207726A (ja) | 半導体ディスク装置 | |
US6449706B1 (en) | Method and apparatus for accessing unaligned data | |
CN100380507C (zh) | 可抑制电路规模能进行高速纠错的纠错装置和解码装置 | |
US6802040B1 (en) | Error correction device | |
JP4793741B2 (ja) | 誤り訂正回路、誤り訂正方法 | |
KR940011037B1 (ko) | 어드레스 발생회로 | |
JP3306413B2 (ja) | 誤り訂正装置および誤り訂正方法 | |
KR100561982B1 (ko) | 오류 정정 부호 발생 회로 및 그 방법 | |
JP2004206798A (ja) | 光ディスク装置のエンコードデータ符号回路 | |
KR100509137B1 (ko) | 에러 정정 장치 | |
JP4166129B2 (ja) | 誤り訂正符号発生方法及び誤り訂正符号発生回路 | |
JP2005086432A (ja) | 誤り訂正符号発生回路 | |
JP3272308B2 (ja) | 誤り訂正システム、誤り訂正方法および誤り訂正機能を有するデータ記憶システム | |
JP2015019276A (ja) | 記憶装置、crc生成装置およびcrc生成方法 | |
JP2005216477A (ja) | 選択的なpo補正を利用したdvdデコーディング方法及び装置 | |
JP2000010807A (ja) | ディジタルデータ再生装置 | |
US6321351B1 (en) | Method and apparatus for detecting errors in DVD data | |
JP2000137651A (ja) | データ誤り訂正装置およびその方法 | |
JP2009048713A (ja) | デスクランブル回路及びエラー検出コード計算回路 | |
JP4159896B2 (ja) | 連想メモリ | |
JP2001312371A (ja) | データ転送装置、およびデータ転送方法 | |
JP2011118968A (ja) | 記録装置及び記録方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20051226 |