JPH11168392A - Data error correction device and data error correction method - Google Patents

Data error correction device and data error correction method

Info

Publication number
JPH11168392A
JPH11168392A JP33453997A JP33453997A JPH11168392A JP H11168392 A JPH11168392 A JP H11168392A JP 33453997 A JP33453997 A JP 33453997A JP 33453997 A JP33453997 A JP 33453997A JP H11168392 A JPH11168392 A JP H11168392A
Authority
JP
Japan
Prior art keywords
syndrome
sequence
error
data
error position
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
Application number
JP33453997A
Other languages
Japanese (ja)
Inventor
Hitoshi Osabe
均 長部
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP33453997A priority Critical patent/JPH11168392A/en
Publication of JPH11168392A publication Critical patent/JPH11168392A/en
Pending legal-status Critical Current

Links

Landscapes

  • Error Detection And Correction (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a data error correction device and a data error correction method capable of accelerating repetitive correction. SOLUTION: This data error correction device is provided with a syndrome calculation circuit 4 for calculating the syndrome of the Q sequence and P sequence of sector data, a syndrome storage device 5 for storing the calculated syndrome of the respective sequences and an error correction circuit 6 for calculating an error position on the sequence and the correction value of error data based on the syndrome of one sequence stored in the syndrome storage device 5, obtaining a vector number and the error position on the other sequence corresponding to the calculated error position on one sequence and correcting the syndrome of the vector number on the other sequence based on the correction value and the error position on the other sequence.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、CD−ROMデコ
ーダ等に用いられるデータ誤り訂正装置及びデータ誤り
訂正方法に関する。
The present invention relates to a data error correction device and a data error correction method used for a CD-ROM decoder or the like.

【0002】[0002]

【従来の技術】CD−ROMのセクタデータの誤り訂正
は「JIS X6281-1992付属書A(規定)RSPCによるエ
ラー訂正のための符号化」に基づき処理される。この従
来の誤り訂正では、セクタデータの符号化フォーマット
におけるP系列上の0〜42番目の各ベクトルのシンド
ロームとQ系列上の0〜23番目の各ベクトルのシンド
ロームをそれぞれ計算し、シンドロームの値S0、S1
がともに“0”の場合は誤りがないと判断し、シンドロ
ームS0、S1がいずれも“0”でない場合は誤り訂正
プロセスが実行される。誤り訂正プロセスでは、各系列
上の誤り位置とその誤りデータの訂正値を算出し、アド
レス変換器により変換されたセクタアドレスのバイトデ
ータの値を訂正する。そして、例えばシンドロームの値
S0、S1がともに“0”になるまで、Q訂正→P訂正
→Q訂正→P訂正・・・のようにQ系列とP系列の誤り
訂正プロセスが繰り返される。
2. Description of the Related Art Error correction of sector data of a CD-ROM is processed based on "JIS X6281-1992 Appendix A (Regulation) Encoding for Error Correction by RSPC". In this conventional error correction, the syndrome of each of the 0th to 42nd vectors on the P sequence and the syndrome of each of the 0th to 23rd vectors on the Q sequence in the sector data encoding format are calculated, and the syndrome value S0 is calculated. , S1
If both are "0", it is determined that there is no error. If both syndromes S0 and S1 are not "0", an error correction process is executed. In the error correction process, an error position on each stream and a correction value of the error data are calculated, and the value of the byte data of the sector address converted by the address converter is corrected. Until both of the syndrome values S0 and S1 become "0", the error correction process of the Q sequence and the P sequence is repeated, such as Q correction → P correction → Q correction → P correction.

【0003】[0003]

【発明が解決しようとする課題】しかしながら、上記の
従来のデータ誤り訂正方式では、繰り返し訂正を行う場
合に、訂正処理の繰り返し回数だけセクタバッファから
各系列のデータを交互にリードする必要があり、それだ
け訂正処理に時間がかかるという問題があった。本発明
はこのような課題を解決するためのもので、繰り返し訂
正の高速化を図ることのできるデータ誤り訂正装置及び
データ誤り訂正方法の提供を目的とする。
However, in the above-mentioned conventional data error correction method, when performing repetitive correction, it is necessary to alternately read the data of each series from the sector buffer by the number of repetitions of the correction processing. There has been a problem that the correction process takes much time. An object of the present invention is to solve such a problem, and an object of the present invention is to provide a data error correction device and a data error correction method capable of increasing the speed of repeated correction.

【0004】[0004]

【課題を解決するための手段】上記目的を達成するため
に、本発明のデータ誤り訂正装置は、入力されたセクタ
データのQ系列及びP系列のシンドロームを計算するシ
ンドローム計算手段と、前記計算された前記Q系列及び
P系列のシンドロームを記憶するシンドローム記憶手段
と、前記シンドローム記憶手段に記憶された一方の系列
のシンドロームに基づいて該系列上の誤り位置と誤りデ
ータの訂正値を計算する手段と、前記計算された一方の
系列上の誤り位置に対応する他方の系列上のベクトル番
号及び誤り位置を求める手段と、前記計算された訂正値
及び前記求められた他方の系列上の誤り位置に基づいて
該他方の系列上のベクトル番号のシンドロームを修正す
る手段とを具備することを特徴とする。
In order to achieve the above object, a data error correction apparatus according to the present invention comprises: syndrome calculating means for calculating a Q-sequence and a P-sequence of input sector data; A syndrome storage means for storing the syndromes of the Q and P sequences, and means for calculating an error position on the sequence and a correction value of error data based on the syndrome of one of the sequences stored in the syndrome storage means. Means for calculating a vector number and an error position on the other sequence corresponding to the calculated error position on one of the sequences, and based on the calculated correction value and the obtained error position on the other sequence. Means for correcting the syndrome of the vector number on the other series.

【0005】この発明のデータ誤り訂正装置では、シン
ドローム記憶手段へのアクセスを通して繰り返し訂正を
行うことによって、セクタバッファに対するアクセスが
データ訂正時以外に発生しなくなり、バンド幅の小さい
記憶装置でも高速な誤り訂正処理を行うことが可能にな
る。
In the data error correction device of the present invention, by repeatedly performing correction through access to the syndrome storage means, access to the sector buffer does not occur except during data correction, and high-speed error correction can be performed even in a storage device having a small bandwidth. Correction processing can be performed.

【0006】また、本発明のデータ誤り訂正装置は、入
力されたセクタデータのQ系列及びP系列のシンドロー
ムを計算するシンドローム計算手段と、前記計算された
前記Q系列及びP系列のシンドロームを記憶するシンド
ローム記憶手段と、前記シンドローム記憶手段に記憶さ
れた一方の系列のシンドロームに基づいて該系列上の誤
り位置と誤りデータの訂正値を計算する手段と、前記計
算された一方の系列上の誤り位置に対応する他方の系列
上のベクトル番号及び誤り位置を求める手段と、前記求
められた他方の系列上のベクトル番号のシンドロームの
値に基づいて誤り訂正を行うか否かを判定する手段と、
前記計算された訂正値及び前記求められた他方の系列上
の誤り位置に基づいて該他方の系列上のベクトル番号の
シンドロームを修正する手段とを具備することを特徴と
する。
Further, the data error correction device of the present invention stores a syndrome calculating means for calculating a Q-sequence and a P-sequence of the input sector data, and stores the calculated Q-sequence and the P-sequence syndrome. Syndrome storage means, means for calculating an error position on the sequence and a correction value of error data based on the syndrome of one of the sequences stored in the syndrome storage device, and an error position on the calculated one of the sequences Means for determining a vector number and an error position on the other sequence corresponding to, and means for determining whether to perform error correction based on the value of the syndrome of the obtained vector number on the other sequence,
Means for correcting a syndrome of a vector number on the other stream based on the calculated correction value and the obtained error position on the other stream.

【0007】この発明のデータ誤り訂正装置では、一方
の系列上の誤り位置に対応する他方の系列上のベクトル
番号のシンドロームの値に基づいて誤り訂正を行うか否
かを判定するので、無駄な繰り返し訂正が実行されない
ことからエラー訂正処理の高速化を図ることができると
ともに、訂正誤りが生じる確率が低くなって信頼性が向
上する。
In the data error correction apparatus of the present invention, whether to perform error correction is determined on the basis of the value of the syndrome of the vector number on the other stream corresponding to the error position on one stream. Since the repetitive correction is not performed, the speed of the error correction process can be increased, and the probability of occurrence of a correction error is reduced to improve reliability.

【0008】さらに、本発明のデータ誤り訂正装置は、
請求項1または2記載のデータ誤り訂正装置において、
前記シンドローム記憶手段はセクタデータを記憶可能な
複数の記憶領域を有し、前記シンドローム計算手段によ
ってセクタデータ毎のシンドローム計算結果を前記各記
憶領域に交互に転送する手段をさらに具備することを特
徴とする。この発明により、連続する複数のセクタデー
タに対するシンドローム計算とエラー訂正を並行して行
うことが可能となり、誤り訂正の高速化を図れる。
Further, the data error correction device of the present invention
The data error correction device according to claim 1 or 2,
The syndrome storage means has a plurality of storage areas capable of storing sector data, and further includes means for alternately transferring a syndrome calculation result for each sector data to the storage areas by the syndrome calculation means. I do. According to the present invention, syndrome calculation and error correction for a plurality of continuous sector data can be performed in parallel, and the speed of error correction can be increased.

【0009】[0009]

【発明の実施の形態】以下、本発明の実施の形態につい
て図面を参照しながら説明する。
Embodiments of the present invention will be described below with reference to the drawings.

【0010】図1に本発明の一実施形態であるデータ誤
り訂正装置の全体構成を示す。
FIG. 1 shows an overall configuration of a data error correction device according to an embodiment of the present invention.

【0011】同図において、1はディスクランブルされ
たセクタデータが入力される8ビット幅の入力ポートで
ある。2はセクタデータの開始タイミングを示す同期信
号である。3はセクタデ−タの書き込みタイミングを示
すデ−タライト要求信号である。4はセクタデ−タのシ
ンドロームを計算するシンドローム計算回路である。5
はシンドローム計算結果を記憶するシンドローム記憶装
置である。8はデータ入力、誤り訂正、ホストへのデー
タ転送等の各転送要求の調停並びに切替え、更にはDR
AM9の制御を行うメモリコントローラである。メモリ
コントローラ8はアドレスカウンタ7により生成された
アドレスに従ってDRAM9へセクタデータを書き込
む。6はシンドローム記憶装置5に記憶されたシンドロ
ームの値に基づいてデータの誤り訂正を行うエラー訂正
回路である。10はホストインターフェースへの出力デ
ータである。11はアドレスカウンタ7からシンドロー
ム記憶装置5に出力されるセクタデータの終りを信号で
ある。
In FIG. 1, reference numeral 1 denotes an 8-bit input port to which descrambled sector data is input. Reference numeral 2 denotes a synchronization signal indicating the start timing of sector data. A data write request signal 3 indicates the write timing of the sector data. Reference numeral 4 denotes a syndrome calculation circuit for calculating a syndrome of sector data. 5
Is a syndrome storage device for storing syndrome calculation results. Reference numeral 8 denotes arbitration and switching of transfer requests such as data input, error correction, data transfer to the host, and DR.
It is a memory controller that controls the AM9. The memory controller 8 writes sector data to the DRAM 9 according to the address generated by the address counter 7. Reference numeral 6 denotes an error correction circuit that corrects data errors based on the value of the syndrome stored in the syndrome storage device 5. Reference numeral 10 denotes output data to the host interface. A signal 11 indicates the end of the sector data output from the address counter 7 to the syndrome storage device 5.

【0012】次に、このデータ誤り訂正装置の要部の詳
細について説明する。
Next, the details of the main part of the data error correction device will be described.

【0013】シンドローム記憶装置5内のシンドローム
メモリは、16ビット幅256語の2つのSRAMによ
り構成つまり2バンクで構成されている。下記の表1に
示すように、2つのバンクは同期信号SYNCによって
切り換えられるNBANK信号に応じてシンドローム計
算用とエラー訂正用に切替えて使用される。
The syndrome memory in the syndrome storage device 5 is constituted by two SRAMs having a width of 256 words of 16 bits, ie, two banks. As shown in Table 1 below, the two banks are switched for syndrome calculation and error correction in accordance with the NBANK signal switched by the synchronization signal SYNC.

【0014】[0014]

【表1】 図2に、シンドローム記憶装置5の動作タイミングを示
す。
[Table 1] FIG. 2 shows the operation timing of the syndrome storage device 5.

【0015】シンドロ−ムメモリバンク選択レジスタの
値(NBANK)は、セクタ同期信号SYNCにより反
転する。NBANKの値が“1”の期間(セクタ時
間)、バンク0では入力デ−タに対してシンドロ−ム計
算が行われる。一方、バンク1では1つ前のセクタ時間
で計算された各ベクタのシンドロームS0、S1を用い
て繰り返し誤り訂正が行われる。次のセクタ同期信号S
YNCが入力されると、シンドロームメモリバンク選択
レジスタの値(NBANK)が反転し、バンク0では、
1つ前のセクタ時間で計算された各ベクタのシンドロー
ムS0、S1を用いて繰り返し訂正が行われ、バンク1
では入力データに対するシンドローム計算が行われる。
The value (NBANK) of the syndrome memory bank selection register is inverted by the sector synchronization signal SYNC. In the period when the value of NBANK is "1" (sector time), in bank 0, the syndrome calculation is performed on the input data. On the other hand, in the bank 1, the error correction is repeatedly performed using the syndromes S0 and S1 of each vector calculated in the previous sector time. Next sector synchronization signal S
When YNC is input, the value (NBANK) of the syndrome memory bank selection register is inverted, and in bank 0,
Iterative correction is performed using the syndromes S0 and S1 of each vector calculated in the immediately preceding sector time, and the bank 1
In, the syndrome calculation for the input data is performed.

【0016】図3に、シンドローム記憶装置5の構成を
示す。
FIG. 3 shows the structure of the syndrome storage device 5.

【0017】シンドローム記憶装置5内のメモリは2つ
のSRAMバンク0(11)、SRAMバンク1(1
2)から構成されている。各バンク(11)(12)
は、MSBバイト、LSBバイトの各々について、P系
列の43個のベクトルおよびQ系列の26個のベクトル
のシンドロームの値S0、S1を保持することができ
る。シンドロームメモリチップ選択回路13は、バンク
選択信号の値(NBANK)に従い、選択信号XSC
S、ライト信号XSWRをデコードし、デコード結果を
選択したバンク(11)(12)へ出力する。
The memories in the syndrome storage device 5 include two SRAM banks 0 (11) and 1 (1).
2). Each bank (11) (12)
Can hold the syndrome values S0 and S1 of 43 vectors of the P sequence and 26 vectors of the Q sequence for each of the MSB byte and the LSB byte. The syndrome memory chip selection circuit 13 selects the selection signal XSC in accordance with the value (NBANK) of the bank selection signal.
S, decodes the write signal XSWR and outputs the decoded result to the selected bank (11) (12).

【0018】マルチプレクサ14はシンドローム計算回
路4からのアドレス入力SA[7:0]とエラー訂正回路6
からのアドレス入力CA[7:0]を選択し、マルチプレク
サ16を経由してバンク0(11)のアドレスポートに
入力する。すなわち、バンク選択信号NBANKの値が
“0”のとき、バンク0(11)のアドレス入力として
シンドローム計算回路4からのアドレス入力SA[7:0]
を選択し、バンク選択信号NBANKがHのとき、バン
ク0(11)のアドレス入力としてエラー訂正回路6か
らのアドレス入力CA[7:0]を選択する。
The multiplexer 14 receives the address input SA [7: 0] from the syndrome calculation circuit 4 and the error correction circuit 6
Of the bank 0 (11) via the multiplexer 16 is selected. That is, when the value of the bank selection signal NBANK is “0”, the address input SA [7: 0] from the syndrome calculation circuit 4 is used as the address input of the bank 0 (11).
And when the bank selection signal NBANK is H, the address input CA [7: 0] from the error correction circuit 6 is selected as the address input of the bank 0 (11).

【0019】マルチプレクサ15はシンドローム計算回
路4からのアドレス入力SA[7:0]とエラー訂正回路6
からのアドレス入力CA[7:0]を選択して、マルチプレ
クサ17を経由してバンク1(12)のアドレスポート
に入力する。すなわち、バンク選択信号NBANKの値
が“1”のとき、SRAMバンク1(12)のアドレス
入力としてシンドローム計算回路4からのアドレス入力
SA[7:0]を選択し、バンク選択信号NBANKの値が
“0”のとき、SRAMバンク1(12)のアドレス入
力としてエラー訂正回路6からのアドレス入力CA[7:
0]を選択する。マルチプレクサ16は、バンク0診断用
のアドレス入力マルチプレクサであり、MTEST入力
が“1”のときマイクロプロセッサからのアドレス入力
MA[7:0]に切替えることができる。マルチプレクサ1
7は、バンク1診断用のアドレス入力マルチプレクサで
あり、MTEST入力が“1”のときマイクロプロセッ
サからのアドレス入力MA[7:0]に切替えることができ
る。
The multiplexer 15 receives the address input SA [7: 0] from the syndrome calculation circuit 4 and the error correction circuit 6
Of the bank 1 (12) via the multiplexer 17 is input to the address input CA [7: 0]. That is, when the value of the bank selection signal NBANK is “1”, the address input SA [7: 0] from the syndrome calculation circuit 4 is selected as the address input of the SRAM bank 1 (12), and the value of the bank selection signal NBANK is When "0", the address input CA [7: from the error correction circuit 6 as the address input of the SRAM bank 1 (12):
Select [0]. The multiplexer 16 is an address input multiplexer for bank 0 diagnosis, and can switch to the address input MA [7: 0] from the microprocessor when the MTEST input is “1”. Multiplexer 1
Reference numeral 7 denotes an address input multiplexer for bank 1 diagnosis, which can be switched to the address input MA [7: 0] from the microprocessor when the MTEST input is "1".

【0020】マルチプレクサ18はバンク0データ入力
選択用のマルチプレクサであり、バンク選択信号NBA
NKが“0”のときシンドローム計算回路4からの入力
SDI[7:0]を選択し、バンク選択信号NBANKが
“1”のときエラー訂正回路6からの入力CDI[7:0]
を選択してマルチプレクサ20に入力する。
The multiplexer 18 is a multiplexer for selecting bank 0 data input, and has a bank selection signal NBA.
When NK is "0", the input SDI [7: 0] from the syndrome calculation circuit 4 is selected, and when the bank selection signal NBANK is "1", the input CDI [7: 0] from the error correction circuit 6 is selected.
Is selected and input to the multiplexer 20.

【0021】マルチプレクサ19はバンク1データ入力
選択用のマルチプレクサであり、バンク選択信号NBA
NKの値が“1”のときシンドローム計算回路4からの
入力SDI[7:0]を選択し、バンク選択信号NBANK
の値が“1”のときエラー訂正回路6からの入力CDI
[7:0]を選択してマルチプレクサ21に入力する。
The multiplexer 19 is a multiplexer for selecting bank 1 data input, and has a bank selection signal NBA.
When the value of NK is "1", the input SDI [7: 0] from the syndrome calculation circuit 4 is selected, and the bank selection signal NBANK is selected.
Is "1", the input CDI from the error correction circuit 6
[7: 0] is selected and input to the multiplexer 21.

【0022】マルチプレクサ20はバンク0診断用のデ
−タ入力マルチプレクサであり、MTEST入力が
“1”のときマイクロプロセッサからのデ−タ入力MD
I[7:0]に切換えることができる。マルチプレクサ21
はバンク1診断用のデータ入力マルチプレクサであり、
MTEST入力が“1”のときマイクロプロセッサから
のデータ入力に切換えることができる。
The multiplexer 20 is a data input multiplexer for bank 0 diagnosis. When the MTEST input is "1", a data input MD from the microprocessor is provided.
It can be switched to I [7: 0]. Multiplexer 21
Is a data input multiplexer for bank 1 diagnosis,
When the MTEST input is "1", it is possible to switch to the data input from the microprocessor.

【0023】マルチプレクサ22はシンドローム計算回
路4のデータ出力選択用のマルチプレクサであり、バン
ク選択信号NBANKの値が“0”のときバンク0(1
1)のデータ出力を選択し、バンク選択信号NBANK
の値が“1”のときバンク1(12)のデータ出力を選
択する。
The multiplexer 22 is a multiplexer for selecting the data output of the syndrome calculation circuit 4. When the value of the bank selection signal NBANK is "0", the bank 0 (1
1) Data output is selected and the bank selection signal NBANK
Is "1", the data output of the bank 1 (12) is selected.

【0024】マルチプレクサ23はエラー訂正回路6へ
のデータ出力選択用のマルチプレクサであり、バンク選
択信号NBANKの値が“1”のときバンク0(11)
のデータ出力を選択し、バンク選択信号NBANKの値
が“0”のときバンク1(12)のデータ出力を選択す
る。
The multiplexer 23 is a multiplexer for selecting data output to the error correction circuit 6, and when the value of the bank selection signal NBANK is "1", the bank 0 (11)
And the data output of the bank 1 (12) is selected when the value of the bank selection signal NBANK is "0".

【0025】マルチプレクサ24はシンドロ−ムメモリ
からマイクロプロセッサへのデ−タ出力MDO[15:0]を
選択するマルチプレクサであり、信号MA[9] の値が
“0”のときバンク0(11)のデータ出力を選択し、
信号MA[9]の値が“1”のときバンク1(12)の
データ出力を選択する。
The multiplexer 24 is a multiplexer for selecting the data output MDO [15: 0] from the syndrome memory to the microprocessor. When the value of the signal MA [9] is "0", the multiplexer 24 is connected to the bank 0 (11). Select data output,
When the value of the signal MA [9] is "1", the data output of the bank 1 (12) is selected.

【0026】次に、シンドローム計算回路4の詳細を説
明する。
Next, the details of the syndrome calculation circuit 4 will be described.

【0027】図4にシンドローム計算のタイミングを、
図5にシンドローム計算回路4の構成を示す。
FIG. 4 shows the timing of syndrome calculation.
FIG. 5 shows the configuration of the syndrome calculation circuit 4.

【0028】図5において、31は入力されたセクタデ
ータに対応するシンドロームメモリのアドレスポインタ
を生成するシンドロームメモリ系列ポインタ生成回路で
ある。アドレスポインタはセクタ同期信号により初期化
され、データライトタイミングに従って更新される。3
2は入力されたセクタデータをライト信号(WRIT
E)のタイミングで保持するラッチである。
In FIG. 5, reference numeral 31 denotes a syndrome memory series pointer generation circuit for generating an address pointer of the syndrome memory corresponding to the input sector data. The address pointer is initialized by the sector synchronization signal, and is updated according to the data write timing. 3
2 is for writing the input sector data to a write signal (WRIT).
This is a latch held at the timing of E).

【0029】33はα25-iを保持するP系列のシンドロ
ームS1を計算するための係数レジスタである。34は
α44-iを保持するQ系列のシンドロームS1を計算する
ための係数レジスタである。35はα-1を乗算するガロ
ア体乗算器である。36はP系列の係数とQ系列の係数
を切り替えるためのマルチプレクサである。37は入力
データと係数とを乗算するガロア体乗算器である。38
はシンドロームS0を計算するためのガロア体加算器で
ある。39はシンドロームS1を計算するためのガロア
体加算器である。
Reference numeral 33 denotes a coefficient register for calculating the syndrome S1 of the P series holding α 25-i . Numeral 34 denotes a coefficient register for calculating the syndrome S1 of the Q sequence holding α44-i . A Galois field multiplier 35 multiplies α −1 . Reference numeral 36 denotes a multiplexer for switching between a P-series coefficient and a Q-series coefficient. A Galois field multiplier 37 multiplies the input data by the coefficient. 38
Is a Galois field adder for calculating the syndrome S0. 39 is a Galois field adder for calculating the syndrome S1.

【0030】40はP系列、Q系列の各ベクトルの最後
のシンドローム計算のタイミング(SMEM LAS
T)でシンドロームメモリに計算結果を書き込むと同時
にシンドローム判定レジスタに判定結果を蓄積する処理
を行うシンドローム判定回路である。すなわち、このシ
ンドローム判定回路40は、すべての系列のシンドロー
ムS0、S1の値が“0”のとき信号FSDOKの値に
“1”をセットし、それ以外の場合は“0”をセットし
てシンドローム判定レジスタに蓄積する。また、いずれ
かの系列のシンドロームS0、S1の値が“0”でない
とき信号FSDRCの値に“1”をセットし、それ以外
の場合は“0”をセットしてシンドローム判定レジスタ
に蓄積する。
Reference numeral 40 denotes the timing of the last syndrome calculation of each vector of the P sequence and the Q sequence (SMEM LAS
This is a syndrome determination circuit that writes the calculation result in the syndrome memory at T) and simultaneously stores the determination result in the syndrome determination register. That is, the syndrome determination circuit 40 sets the value of the signal FSDOK to "1" when the values of the syndromes S0 and S1 of all the streams are "0", and sets "0" otherwise to set the syndrome to 0. Store it in the judgment register. If the value of any of the syndromes S0 and S1 is not "0", the value of the signal FSDRC is set to "1". Otherwise, the value is set to "0" and stored in the syndrome determination register.

【0031】次に、エラー訂正回路6の構成を説明す
る。図6にこのエラー訂正回路6の構成を示す。
Next, the configuration of the error correction circuit 6 will be described. FIG. 6 shows the configuration of the error correction circuit 6.

【0032】同図において、41はシンドロームメモリ
からのシンドロームS0が入力される8ビット幅の入力
ポートCDI[15:8]である。42はシンドロームメモリ
からのシンドロームS1が入力される8ビット幅の入力
ポートCDI[17:0]である。43はシンドロームS0、
S1の値から判定結果であるNOERROR(44)及
びCORRECT(45)を出力するシンドローム判定
回路である。判定条件を以下に示す。
In the figure, reference numeral 41 denotes an 8-bit input port CDI [15: 8] to which the syndrome S0 from the syndrome memory is input. Reference numeral 42 denotes an 8-bit wide input port CDI [17: 0] to which the syndrome S1 from the syndrome memory is input. 43 is syndrome S0,
This is a syndrome determination circuit that outputs NOERROR (44) and CORRECT (45) as determination results from the value of S1. The judgment conditions are shown below.

【0033】 NOERROR=(S0[7:0]==0)&&(S1[7:0]==0) CORRECT=(S0[7:0]!=0)&&(S1[7:0]!=0) ここで、NOERRORの値が“1”の場合、エラー訂
正が不要であることを示す。CORRECTの値が
“1”の場合、エラー訂正が必要であることを示す。N
OERRORの値が“0”で、CORRECTの値が
“0”の場合はS0、S1のいずれかが“0”である場
合であり、エラー訂正不能であることを示す。
NOERROR = (S0 [7: 0] == 0) && (S1 [7: 0] == 0) CORRECT = (S0 [7: 0]! = 0) && (S1 [7: 0]! = 0) Here, when the value of NOERROR is “1”, it indicates that error correction is unnecessary. When the value of CORRECT is “1”, it indicates that error correction is necessary. N
When the value of OERROR is “0” and the value of CORRECT is “0”, it means that either S0 or S1 is “0”, indicating that error correction is impossible.

【0034】46はシンドロームS0の値を保持するレ
ジスタFS0 T0[7:0]である。47はステートT0
でシンドロームS1の値を保持するレジスタFS1 T
0[7:0]である。48はレジスタ46及びレジスタ47
の値からベクトル内の誤り位置を計算するエラー計算回
路である。49はエラー計算回路48により求められた
ベクトル内の誤り位置が有効な範囲に入っているか否か
を判定するエラー位置判定回路である。判定結果は出力
ポートIRANGEOK(50)に出力される。 51
は信号QMODEで指定された現在訂正を行っている系
列のベクトル番号及びエラー位置から他系列のベクトル
番号及びエラー位置を計算する系列間ベクトル番号及び
エラー位置変換回路である。同変換回路51は信号QM
ODEの値が“0”のときはP系列の訂正を、信号QM
ODEの値が“1”のときはQ系列の訂正を行う。52
は信号QMODEの値に従ってベクトル番号、エラー位
置からセクタ内のアドレスを生成する訂正データセクタ
アドレス生成回路である。
Reference numeral 46 denotes a register FS0 T0 [7: 0] that holds the value of the syndrome S0. 47 is state T0
Register FS1 T holding the value of syndrome S1
0 [7: 0]. 48 is a register 46 and a register 47
Is an error calculation circuit that calculates an error position in a vector from the value of. An error position determination circuit 49 determines whether or not the error position in the vector obtained by the error calculation circuit 48 falls within a valid range. The determination result is output to the output port IRANGOK (50). 51
Is an inter-sequence vector number and error position conversion circuit for calculating a vector number and an error position of another sequence from a vector number and an error position of a sequence currently being corrected specified by the signal QMODE. The conversion circuit 51 outputs the signal QM
When the value of ODE is "0", the correction of the P sequence
When the value of ODE is "1", the Q sequence is corrected. 52
Is a corrected data sector address generation circuit for generating an address in a sector from a vector number and an error position according to the value of the signal QMODE.

【0035】53は他系列のベクトル番号を保持するレ
ジスタである。54は他系列のエラー位置を保持するレ
ジスタである。56は訂正データセクタアドレスを保持
するレジスタである。57は訂正データセクタアドレス
の出力ポートBAD[10:0]である。58は系列間ベクト
ル番号を出力する出力ポートKK[5:0]である。
Reference numeral 53 denotes a register for holding a vector number of another system. Reference numeral 54 denotes a register for holding an error position of another system. 56 is a register for holding a correction data sector address. 57 is an output port BAD [10: 0] for the correction data sector address. Reference numeral 58 denotes an output port KK [5: 0] for outputting an inter-sequence vector number.

【0036】59はガロア体の指数表現をベクトル表現
に変換する変換器である。同変換器59は他系列の誤り
位置IIから、QMODEの値が“0”の場合、α
25-II を出力する。QMODEが“1”の場合はα
44-II を出力する。60はガロア体乗算器であり、シン
ドロームS0とαN-IIのガロア体との乗算を行う。
Reference numeral 59 denotes a converter for converting an exponential expression of a Galois field into a vector expression. When the value of QMODE is “0”, the converter 59 calculates α
Outputs 25-II . Α when QMODE is “1”
Outputs 44-II . A Galois field multiplier 60 multiplies the syndrome S0 by the Galois field of α N-II .

【0037】出力ポートKK[5:0](58)から出力さ
れた他系列のベクトル番号をアドレスとして、シンドロ
ームメモリから他系列のシンドロームS0、S1が入力
ポートCDI[15:8](41)、入力ポートCDI[7:0]
(42)に入力される。
Using the vector numbers of the other series output from the output ports KK [5: 0] (58) as addresses, the syndromes S0 and S1 of the other series are stored in the input port CDI [15: 8] (41) from the syndrome memory. Input port CDI [7: 0]
(42) is input.

【0038】61は他系列のシンドロームS0を保持す
るレジスタである。62は他系列のシンドロームS1を
保持するレジスタである。63は他系列のシンドローム
S0を修正するためのガロア体加算器である。64は他
系列のシンドロームS1を修正するためのガロア体加算
器である。ガロア体加算器63から修正されたシンドロ
ームの値S0′が、ガロア体加算器64から修正された
シンドロームの値S1′が出力される。QMODEの値
が“0”の場合に生成される修正シンドロームの値S
0′、S1′を以下に示す。
Reference numeral 61 denotes a register for holding another series of syndromes S0. Reference numeral 62 denotes a register for holding another series of syndromes S1. Reference numeral 63 denotes a Galois field adder for correcting the syndrome S0 of another system. Reference numeral 64 denotes a Galois field adder for correcting the syndrome S1 of another series. The corrected value S0 'of the syndrome is output from the Galois field adder 63, and the corrected value S1' of the syndrome is output from the Galois field adder 64. Modified syndrome value S generated when the value of QMODE is "0"
0 'and S1' are shown below.

【0039】S0q ′=S0′q +δp S1q ′=S1′q +δp α44-iq ここでδp はP系列の誤り訂正で加算する値である。iq
は系列間ベクトル番号及びエラー位置変換回路51から
出力されるP系列のベクトル番号、エラー位置に対応し
たQ系列のエラー位置である。
[0039] S0 q '= S0' q + δ p S1 q '= S1' q + δ p α 44-iq where [delta] p is the value to be added by the error correction of P sequence. iq
Is the inter-sequence vector number, the vector number of the P sequence output from the error position conversion circuit 51, and the error position of the Q sequence corresponding to the error position.

【0040】65はシンドロームメモリに対する出力ポ
ートCDI[15:8](67)への出力を切替えるマルチプ
レクサである。66はシンドロームメモリに対する出力
ポートCDI[7:0](68)への出力を切替えるマルチ
プレクサである。これらマルチプレクサ65、66は各
々、入力ポートT5(69)からの入力信号が“1”の
とき、修正シンドロームの値S0′、S1′を出力ポー
ト[15:8](67)、出力ポートCDI[7:0](68)か
ら各々出力する。これにより、誤り位置に対応した他系
列のベクトル番号の修正されたシンドロームの値S
0′、S1′がシンドロームメモリに書き戻される。
A multiplexer 65 switches the output to the output port CDI [15: 8] (67) for the syndrome memory. Reference numeral 66 denotes a multiplexer for switching the output to the output port CDI [7: 0] (68) for the syndrome memory. When the input signal from the input port T5 (69) is "1", the multiplexers 65 and 66 respectively output the modified syndrome values S0 'and S1' to the output ports [15: 8] (67) and the output port CDI [ 7: 0] (68). Thereby, the value S of the syndrome in which the vector number of the other series corresponding to the error position is corrected
0 'and S1' are written back to the syndrome memory.

【0041】次に、系列間ベクトル番号及びエラー位置
変換回路51の詳細を説明する。
Next, the details of the inter-sequence vector number and error position conversion circuit 51 will be described.

【0042】CD−ROMにおけるリードソロモン積符
号(RSPC)において、PベクトルとQベクトルの間
には図7に示す幾何学的関係から、P系列の系列番号を
p、誤り位置をip 、Q系列の系列番号をkQ 、誤り
位置をiQ とすると、(kp,ip )と(kQ ,iQ
の間には以下の関係が成り立つ。
In the Reed-Solomon product code (RSPC) on a CD-ROM, the sequence number of the P sequence is k p , the error position is i p , Assuming that the sequence number of the Q sequence is k Q and the error position is i Q , (k p , i p ) and (k Q , i Q )
The following relationship holds between.

【0043】・P系列からQ系列への変換 kQ =mod26(52−kp +ip ) iQ =kp ・・・・・・(2) ・Q系列からP系列への変換 kp =iQp =mod26(kQ +iQ ) ・・・・・・(3) 図8に系列間ベクトル番号及び誤り位置変換回路51の
構成例を示す。入力ポートQMODE(73)に“0”
の値が設定されている場合、P系列のベクトル番号及び
ベクトル内誤り位置からQ系列のベクトル番号及びベク
トル内誤り位置への変換が行われる。
[0043] - conversion from P series to the Q series k Q = mod 26 (52- k p + i p) i Q = k conversion from p ······ (2) · Q series to the P series k p = illustrating a configuration example of a i Q i p = mod 26 ( k Q + i Q) ······ (3) between sequences in Figure 8 vector number and the error position conversion circuit 51. "0" is applied to input port QMODE (73).
Is set, the conversion from the vector number and the error position in the vector of the P sequence to the vector number and the error position in the vector of the Q sequence is performed.

【0044】71はシンドロームのベクトル番号が入力
される入力ポートK[5:0]である。72はベクトル内の
誤り位置が入力される入力ポートI[5:0]である。入力
ポートQMODE(73)に“0”が入力されたときP
系列からQ系列へのベクトル番号及び誤り位置の変換が
行われ、“1”が入力されたときQ系列からP系列への
ベクトル番号及び誤り位置の変換が行われる。そして出
力ポートKK[5:0](74)には変換後のベクトル番号
が出力され、出力ポートII[5:0](75)には変換後
のベクトル内の誤り位置が出力される。
Reference numeral 71 denotes an input port K [5: 0] to which the vector number of the syndrome is input. Reference numeral 72 denotes an input port I [5: 0] to which an error position in the vector is input. When "0" is input to the input port QMODE (73), P
Conversion of the vector number and error position from the sequence to the Q sequence is performed, and when "1" is input, conversion of the vector number and error position from the Q sequence to the P sequence is performed. The converted vector number is output to the output port KK [5: 0] (74), and the error position in the converted vector is output to the output port II [5: 0] (75).

【0045】76は52−Kp を計算するための減算器
である。77はセレクタであり、QMODE(73)の
値が“0”の場合、減算器76の出力(52−Kp )を
選択し、QMODE(73)の値が“1”の場合はK
[5:0]を選択する。78は加算器であり、QMODEの
値が“0”の場合、加算器78からは52−Kp +Ip
が出力され、QMODEの値が“1”の場合、KQ +I
Q が出力される。
[0045] 76 is a subtractor for calculating the 52-K p. 77 is a selector, if QMODE value is "0" (73), selects the output of the subtractor 76 (52-K p), if the value of QMODE (73) is "1" K
Select [5: 0]. 78 denote adders, if the value of QMODE is "0", 52-K p + I p from the adder 78
Is output, and when the value of QMODE is “1”, K Q + I
Q is output.

【0046】79は26の剰余を計算する演算器であ
り、QMODEの値が“0”の場合、演算器79からは
Q =mod26(52−kp +ip )が出力され、QM
UDEの値が“1”の場合、ip =mod26(KQ +I
Q )が出力される。
[0046] 79 is a calculator for calculating a remainder of 26, when the value of QMODE is "0", k Q = mod 26 (52-k p + i p) is output from the arithmetic unit 79, QM
If the value of UDE is "1", i p = mod 26 (K Q + I
Q ) is output.

【0047】80のセレクタの出力KK[5:0]は、QM
ODEの値が“0”の場合はkQ =mod26(52−k
p +ip )となり、QMODEの値が“1”の場合はk
p =iQ となる。81のセレクタの出力II[5:0]は、
QMODEの値が“0”の場合はiQ =kp となり、Q
MODEの値が“1”の場合はip =mod26(KQ
Q )となる。
The output KK [5: 0] of the selector 80 is QM
When the value of the ODE is “0”, k Q = mod 26 (52−k
p + i p) next, if the value of QMODE is "1" k
p = i Q. The output II [5: 0] of the selector 81 is
When the value of QMODE is “0”, i Q = k p and Q
If the value of MODE is "1" i p = mod 26 (K Q +
IQ ).

【0048】次に、エラー訂正シーケンスについて説明
する。
Next, the error correction sequence will be described.

【0049】まず、シンドロームメモリに記憶されてい
る各系列のシンドロームをスキャンし、エラー訂正の実
行が必要かどうかを判定する。この判定の結果、エラー
が有りかつエラー訂正が可能な場合はエラー訂正プロセ
スを実行する。また、エラーが無い場合またはエラー訂
正不能の場合はエラー訂正プロセスを実行しない。
First, each series of syndromes stored in the syndrome memory is scanned to determine whether or not it is necessary to execute error correction. If the result of this determination is that there is an error and error correction is possible, an error correction process is performed. If there is no error or the error cannot be corrected, the error correction process is not executed.

【0050】図9はエラー訂正シーケンスのタイミング
チャートである。
FIG. 9 is a timing chart of the error correction sequence.

【0051】CLKはシステムクロック、QMODEは
処理するシンドロームの系列を示す信号、K[5:0]はシ
ンドロームのベクトル番号である。MSBはセクタデー
タの偶数アドレスプレーン、奇数アドレスプレーンを選
択する信号で、MSBの値が“0”の場合は偶数アドレ
スプレーンのシンドロームが選択され、MSBの値が
“1”の場合は奇数アドレスプレーンのシンドロームが
選択される。KK[5:0]は図6に示した系列間ベクトル
番号及び誤り位置変換回路51から出力される他系列の
ベクトル番号である。CA[7:0]はシンドロームメモリ
に入力されるアドレスである。
CLK is a system clock, QMODE is a signal indicating a series of syndromes to be processed, and K [5: 0] is a vector number of the syndrome. The MSB is a signal for selecting an even address plane and an odd address plane of sector data. When the value of the MSB is "0", the syndrome of the even address plane is selected. When the value of the MSB is "1", the odd address plane is selected. Is selected. KK [5: 0] is the inter-sequence vector number and the vector number of the other series output from the error position conversion circuit 51 shown in FIG. CA [7: 0] is an address input to the syndrome memory.

【0052】以下に示すように、シンドロームメモリヘ
は、訂正プロセスのステートに応じて以下のアドレスが
出力される。
As shown below, the following addresses are output to the syndrome memory according to the state of the correction process.

【0053】ステートT0,T1,T2,T5の場合 CA[7:0]={QMODE,K[5:0],MSB} ステートT3,T4の場合 CA[7:0]={!QMODE,KK[5:0]、MSB} XCCSはシンドロームメモリの選択信号であり、その
値が“0”のときシンドロームメモリが選択される。X
CWRはシンドロームメモリのライト信号である。CD
O[15: 8] はシンドロームメモリからのデータ出力の上
位8bitで指定されたアドレスのシンドロームS0で
ある。CDO[7:0]はシンドロームメモリからのデータ
出力の下位8bitで指定されたアドレスのシンドロー
ムS1である。これらのシンドロームS0、S1は図6
のシンドローム判定回路40に入力される。CDI[15:
8]はシンドロームメモリへのデータ出力ポートであり、
修正されたシンドロームS0が書き込まれる。CDI
[7:0]はシンドロームメモリヘのデータ出力ポートであ
り、修正されたシンドロームS1が書き込まれる。NO
ERRORはシンドローム判定回路40の出力で、シン
ドロームS0、S1がともに“0”で誤りがないことを
示す。CORRECTはシンドローム判定回路40の出
力で、シンドロームS0、S1がともに“0”でなく1
個訂正が可能であることを示す。
CA [7: 0] = {QMODE, K [5: 0], MSB} for states T0, T1, T2, T5 CA [7: 0] = {! QMODE, KK [5: 0], MSB} XCCS are syndrome memory selection signals. When the value is “0”, the syndrome memory is selected. X
CWR is a write signal of the syndrome memory. CD
O [15: 8] is the syndrome S0 of the address specified by the upper 8 bits of the data output from the syndrome memory. CDO [7: 0] is the syndrome S1 of the address specified by the lower 8 bits of the data output from the syndrome memory. These syndromes S0 and S1 are shown in FIG.
Is input to the syndrome determination circuit 40. CDI [15:
8] is a data output port to the syndrome memory,
The corrected syndrome S0 is written. CDI
[7: 0] is a data output port to the syndrome memory, in which the corrected syndrome S1 is written. NO
ERROR is an output of the syndrome determination circuit 40, and both the syndromes S0 and S1 are "0", indicating that there is no error. CORRECT is an output of the syndrome judging circuit 40, and both syndromes S0 and S1 are not "0" but 1;
Indicates that individual correction is possible.

【0054】この図では、Q系列のシンドロームチェッ
クのベクトル番号1(KK[5:0]=1)、奇数プレーン
(MSB=1)でシンドロームエラーが発生している。
CORRECTの値が“1”の場合、システムクロック
の立上りでステートT1に遷移する。
In this figure, a syndrome error has occurred in the vector number 1 (KK [5: 0] = 1) of the syndrome check of the Q sequence and the odd-numbered plane (MSB = 1).
When the value of CORRECT is “1”, the state transits to the state T1 at the rise of the system clock.

【0055】以下に、各ステートの動作を説明する。The operation of each state will be described below.

【0056】ステートT0:シンドロームメモリからシ
ンドロームS0[K]、S1[K]を読み出す。S0
[K]、S1[K]がともに“0”でない場合は、ステ
ートT1に進む。
State T0: The syndromes S0 [K] and S1 [K] are read from the syndrome memory. S0
If both [K] and S1 [K] are not “0”, the process proceeds to state T1.

【0057】ステートT1:系列K上のエラー位置Iと
訂正値δを計算する。エラー位置Iが、RSPC符号化
フォーマットの範囲内に入っている場合、ステートT2
に進む。エラー位置Iが範囲外の場合は系列カウンタを
更新する。
State T1: An error position I on the series K and a correction value δ are calculated. If the error position I is within the range of the RSPC encoding format, the state T2
Proceed to. If the error position I is out of the range, the sequence counter is updated.

【0058】ステートT2:系列K上のエラー位置Iに
対応する他系列KK上のベクトル番号とエラー位置II
を計算する。
State T2: Vector number and error position II on other series KK corresponding to error position I on series K
Is calculated.

【0059】ステートT3:他系列KK上のベクトル番
号のシンドロームの値S0、S1を読み出す。S0、S
1がともに“0”の場合は系列カウンタを更新し、それ
以外の場合はステートT4に進む。
State T3: The values S0 and S1 of the syndrome of the vector number on the other series KK are read. S0, S
If both 1 are "0", the sequence counter is updated; otherwise, the process proceeds to state T4.

【0060】ステートT4:(1)他系列KK上のシン
ドロームS0、S1をステートT1て求めた訂正値δに
より訂正する。訂正されたシンドロームの値をS0′、
S1′とすると、 S0′=S0[KK]+δ S1′=S1[KK]+α**(N−II)δ 但し、δ=S0[K] となる。 (2)セクタデータを訂正するためのサブシーケンスを
起動する。
State T4: (1) The syndromes S0 and S1 on the other series KK are corrected by the correction value δ obtained in the state T1. The corrected syndrome value is S0 ',
S1 '= S0 [KK] + δ S1' = S1 [KK] + α ** (N-II) δ where δ = S0 [K]. (2) Activate a sub-sequence for correcting sector data.

【0061】ステートT5:系列KのシンドロームS0
[K]、S1[K]に“0”をライトし、系列カウンタ
を更新する。
State T5: Syndrome S0 of series K
"0" is written to [K] and S1 [K], and the sequence counter is updated.

【0062】以上のエラー訂正は、すべてのシンドロー
ムS0、S1の値が“0”になるか、もしくは所定回数
MAX のエラー訂正が完了するまで繰り返される。
[0062] The above error correction, whether the value of all of the syndromes S0, S1 becomes "0", or the error correction of a predetermined number of times N MAX is repeated until completion.

【0063】実際にエラー訂正をQ系列から開始した場
合の動作を図10のフローチャートを参照して以下に説
明する。
The operation when error correction is actually started from the Q sequence will be described below with reference to the flowchart of FIG.

【0064】まず、Q系列の各ベクトルのシンドローム
S0Q 、S1Q をシンドロームメモリよりリードし(ス
テップS1)、S0Q 、S1Q がともに“0”であるか
どうかを調べる(ステップS2)。あるベクトル番号の
シンドロームS0Q 、S1Qがともに“0”でない場
合、図6のエラー位置計算回路48にて、Q系列上での
そのベクトル内のエラー位置とその訂正値を計算する
(ステップS3)。
First, the syndromes S0 Q and S1 Q of each vector of the Q sequence are read from the syndrome memory (step S1), and it is checked whether both S0 Q and S1 Q are “0” (step S2). If both the syndromes S0 Q and S1 Q of a certain vector number are not “0”, the error position calculation circuit 48 of FIG. 6 calculates an error position in the vector on the Q sequence and its correction value (step S3). ).

【0065】ここで誤り位置をiQ 、修正値をδとす
る。誤り位置iQ が、セクタデータの符号化フォーマッ
トの範囲内(0〜44)にある場合は以下のエラー訂正
処理を行い、範囲外の場合は誤訂正による誤り位置と判
断して訂正処理をスキップする(ステップS4)。
Here, it is assumed that the error position is i Q and the correction value is δ. When the error position i Q is within the range (0 to 44) of the encoding format of the sector data, the following error correction processing is performed. When the error position i Q is out of the range, the error processing is determined as an error position due to erroneous correction and the correction processing is skipped. (Step S4).

【0066】エラー訂正工程では、まず、系列間ベクト
ル番号及び誤り位置変換回路51にて、Q系列の誤り位
置iQ からこれに対応するP系列のベクトル番号kP
よび誤り位置iP を求める(ステップS5)。
In the error correction step, first, the inter-sequence vector number and error position conversion circuit 51 determines the vector number k P and error position i P of the P sequence corresponding to the error position i Q of the Q sequence ( Step S5).

【0067】次に、P系列のベクトル番号kP のシンド
ロームS0P 、S1P をシンドロームメモリよりリード
し(ステップS6)、S0P 、S1P がともに“0”で
あるかどうかを判定する(ステップS7)。
Next, the syndromes S0 P and S1 P of the P series vector number k P are read from the syndrome memory (step S6), and it is determined whether both S0 P and S1 P are “0” (step S6). S7).

【0068】S0P 、S1P がともに“0”である場
合、Q系列のシンドロームS0Q 、S1Q から求めた誤
り位置iQ は誤訂正によるものと判断し、訂正を行わな
い。一方、S0P 、S1P のいずれかが“0”でない揚
合は、図6に示す訂正データセクタアドレス生成回路5
2により、P系列上のベクトル番号kP 、誤り位置iQ
に相当するセクタアドレスを計算し、このセクタアドレ
スに基づいてセクタバッファから該当するバイトデータ
を読み込み、このバイトデータを修正値δにより訂正し
てシンドロームメモリに書き戻すことにより、P系列の
ベクトル番号kPのシンドロームS0P 、S1P を修正
する(ステップS8)。
When both S0 P and S1 P are “0”, the error position i Q obtained from the syndromes S0 Q and S1 Q of the Q sequence is determined to be due to erroneous correction, and no correction is performed. On the other hand, Agego either S0 P, S1 P is not "0", the corrected data sector address generation circuit 5 shown in FIG. 6
2, the vector number k P on the P sequence and the error position i Q
, The corresponding byte data is read from the sector buffer based on the sector address, the byte data is corrected by the correction value δ, and written back to the syndrome memory, thereby obtaining the vector number k of the P sequence. modifying the syndromes S0 P, S1 P in P (step S8).

【0069】この後、P系列の各ベクトルのシンドロー
ムをシンドロームメモリよりリードして、P系列からの
誤り訂正を先のQ系列からの誤り訂正と同様に行う。
Thereafter, the syndrome of each vector of the P sequence is read from the syndrome memory, and the error correction from the P sequence is performed in the same manner as the error correction from the Q sequence.

【0070】以下に、Q系列の誤り訂正において、ぺク
トル番号kQ =2のシンドロームS0、S1が“0”で
なかった場合について説明する。
The case where the syndromes S0 and S1 of the vector number k Q = 2 are not “0” in the error correction of the Q sequence will be described below.

【0071】図11にCD−ROMセクタデータのRS
PCによる符号化フォーマットを示す。Q系列のベクト
ル番号kQ =2のベクトルのシンドロームS0(kQ
2)、S1(kQ =2)からエラー位置計算回路によ
り、誤り位置iQ =14、訂正値δQ が出力される。こ
の誤り位置iQ はセクタアドレスでは702番地に相当
する。セクタデータの702番地のバイトデータがδQ
だけ訂正されたため、P系列のベクトル番号kP =14
のシンドロームS0(kP =14)、S1(kP=1
4)は以下の値に修正される。
FIG. 11 shows the RS of the CD-ROM sector data.
2 shows an encoding format by a PC. Q series vector number k Q = 2 vector syndrome S0 (k Q =
2), an error position calculation circuit from S1 (k Q = 2), the error location i Q = 14, correction value [delta] Q is output. This error position i Q corresponds to address 702 in the sector address. The byte data at address 702 of the sector data is δ Q
, The P-sequence vector number k P = 14
Syndrome S0 (k P = 14), S1 (k P = 1
4) is modified to the following value.

【0072】ここでdi (i=0,1,2...,2
5)はP系列のベクトル番号kP =14のベクトルデー
タで、d16はセクタデータの702番地のバイトデータ
に相当する。
[0072] where d i (i = 0,1,2 ..., 2
5) is vector data of a P -sequence vector number k P = 14, and d 16 is equivalent to byte data at address 702 of sector data.

【0073】S0′(kP =14)=d0 +d1 +・・
・+d15+d16′+d17+・・・+d24+d25 S1′(kP =14)=α250 +α241 +・・・+
α1015+α9 d′16+α8 d′17+・・・+α1 24
+d25 d′16=d16+δQ であるから、誤り訂正を行った後の
シンドロームの値S0′(kP =14)、S1′(kP
=14)は以下の値になる。
S0 '(k P = 14) = d 0 + d 1 +...
· + D 15 + d 16 ' + d 17 + ··· + d 24 + d 25 S1' (k P = 14) = α 25 d 0 + α 24 d 1 + ··· +
α 10 d 15 + α 9 d '16 + α 8 d' 17 + ··· + α 1 d 24
'Because it is 16 = d 16 + δ Q, the value S0 syndrome after the error correction' + d 25 d (k P = 14), S1 '(k P
= 14) becomes the following value.

【0074】 S0′(kP =14)=S0(kP =14)+δQ S1′(kP =14)=S1(kP =14)+α9 δQ したがって、ベクトル番号kP =14のシンドロームS
0(kP =14)、S1(kP =14)の修正値はそれ
ぞれδQ 、α9 δQ になる。
S 0 ′ (k P = 14) = S 0 (k P = 14) + δ Q S 1 ′ (k P = 14) = S 1 (k P = 14) + α 9 δ Q Therefore, the vector number k P = 14 Syndrome S
The corrected values of 0 (k P = 14) and S1 (k P = 14) are δ Q and α 9 δ Q , respectively.

【0075】次に、図12を参照して、本実施形態のデ
ータ誤り訂正装置を用いたCD−ROMデコーダを有す
る情報処理装置の構成について説明する。
Next, the configuration of an information processing apparatus having a CD-ROM decoder using the data error correction device of this embodiment will be described with reference to FIG.

【0076】同図において、CDプロセッサ101で処
理された信号は、CD−ROMデコーダ102のCDプ
ロセッサインターフェース103に入力される。CDブ
ロセッサインターフェース103は、入力した信号に対
して、同期検出、ディスクランブル、シリアルパラレル
変換等の処理を行い、バイトデータ、セクタ同期信号、
バイトデータライトイネーブル信号を出力する。
In the figure, a signal processed by a CD processor 101 is input to a CD processor interface 103 of a CD-ROM decoder 102. The CD processor interface 103 performs processing such as synchronization detection, descrambling, and serial-to-parallel conversion on the input signal, and outputs byte data, a sector synchronization signal,
Outputs a byte data write enable signal.

【0077】CD−ROMデコーダ102内には、シン
ドローム計算回路105、シンドローム記憶装置10
6、エラー訂正回路107等から構成される前記実施形
態のデータ誤り訂正装置が設けられている。また、10
8はセクタ内のアドレスをカウントするアドレスカウン
タである。
In the CD-ROM decoder 102, the syndrome calculation circuit 105 and the syndrome storage device 10
6. The data error correction device according to the above-described embodiment, which includes the error correction circuit 107 and the like, is provided. Also, 10
Reference numeral 8 denotes an address counter for counting addresses in the sector.

【0078】CDプロセッサインターフェース103か
ら出力されたバイトデータはIOバスコントローラ10
9により、IOバス110およびメモリーコントローラ
/バスブリッジ111を経由して主記憶装置112上の
バッファに転送される。
The byte data output from the CD processor interface 103 is stored in the IO bus controller 10.
9, the data is transferred to a buffer on the main storage device 112 via the IO bus 110 and the memory controller / bus bridge 111.

【0079】113は情報処理装置を制御するマイクロ
プロセッサ、114は入出力装置である。また、115
はデコード完了割り込み信号であり、1セクタまたは指
定されたセクタ数のデコードが完了したときにエラー訂
正回路107より発生してメモリーコントローラ/バス
ブリッジ111を通じてマイクロプロセッサ113に送
られる。マイクロプロセッサ113はこの割り込みに同
期して主記憶装置112上のセクタデータをアクセスす
ることにより、デコード済みのセクタデータをリードす
ることができる。
Reference numeral 113 denotes a microprocessor for controlling the information processing device, and reference numeral 114 denotes an input / output device. Also, 115
Is a decode completion interrupt signal, which is generated by the error correction circuit 107 when decoding of one sector or a designated number of sectors is completed, and sent to the microprocessor 113 through the memory controller / bus bridge 111. The microprocessor 113 can read the decoded sector data by accessing the sector data on the main storage device 112 in synchronization with this interrupt.

【0080】セクタデータはシンドローム計算回路10
5でP系列およびQ系列の各ベクトルのシンドロームを
計算し、その結果をシンドローム記憶装置106に出力
する。シンドロームが“0”でない場合はシンドローム
判定レジスタの値が“1”にセットされる。エラー訂正
回路107はシンドローム記憶装置106に記憶された
情報に基づいて誤り訂正を行う。セクタデータは主記憶
装置112上のセクタバッファに存在するため、エラー
訂正の処理はIOバスコントローラ109を経由した主
記憶装置112上のセクタバッファの誤り位置に対する
リードサイクルおよびライトサイクルとして実現され
る。
The sector data is stored in the syndrome calculation circuit 10.
In step 5, the syndrome of each vector of the P sequence and the Q sequence is calculated, and the result is output to the syndrome storage device 106. If the syndrome is not "0", the value of the syndrome determination register is set to "1". The error correction circuit 107 performs error correction based on the information stored in the syndrome storage device 106. Since the sector data exists in the sector buffer on the main storage device 112, the error correction processing is realized as a read cycle and a write cycle for the error position of the sector buffer on the main storage device 112 via the IO bus controller 109.

【0081】本実施形態によれば、系列間での繰り返し
訂正を行う場合のセクタバッファのアクセス回数を従来
に比べて低減することができ、訂正処理速度の向上を図
ることができる。また、データの誤り訂正処理がセクタ
バッファを含む主記憶装置をアクセスすることによる主
記憶装置やI/Oバスの占有率が低減することで、従来
必要とされたCDーROMデコーダ専用のDRAM等が
不要になり、CD−ROMデコーダのコストの低下を図
ることができる。
According to the present embodiment, the number of times of access to the sector buffer when performing repetitive correction between streams can be reduced as compared with the related art, and the correction processing speed can be improved. In addition, since the occupancy of the main storage device and the I / O bus is reduced by accessing the main storage device including the sector buffer in the data error correction processing, a DRAM or the like dedicated to a CD-ROM decoder conventionally required is used. Is unnecessary, and the cost of the CD-ROM decoder can be reduced.

【0082】[0082]

【発明の効果】以上説明したように本発明によれば、シ
ンドローム記憶手段へのアクセスを通して繰り返し訂正
を行うことによって、セクタバッファに対するアクセス
がデータ訂正時以外に発生しなくなり、バンド幅の小さ
い記憶装置でも高速な誤り訂正処理を行うことが可能に
なる。また、本発明では、一方の系列上の誤り位置に対
応する他方の系列上のベクトル番号のシンドロームの値
に基づいて誤り訂正を行うか否かを判定するので、無駄
な繰り返し訂正が実行されないことからエラー訂正処理
の高速化を図ることができるとともに、訂正誤りが生じ
る確率が低くなって信頼性が向上する。
As described above, according to the present invention, by repeatedly performing correction through access to the syndrome storage means, access to the sector buffer does not occur except during data correction, and a storage device having a small bandwidth. However, high-speed error correction processing can be performed. Further, in the present invention, it is determined whether or not to perform error correction based on the value of the syndrome of the vector number on the other stream corresponding to the error position on the other stream, so that unnecessary repetitive correction is not performed. Therefore, the speed of the error correction process can be increased, and the probability of occurrence of a correction error is reduced, thereby improving the reliability.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の一実施形態であるデータ誤り訂正装置
の全体構成を示す図である。
FIG. 1 is a diagram illustrating an overall configuration of a data error correction device according to an embodiment of the present invention.

【図2】本実施形態のシンドローム記憶装置5の動作タ
イミングを示す図である。
FIG. 2 is a diagram showing operation timings of the syndrome storage device 5 of the present embodiment.

【図3】そのシンドローム記憶装置5の構成を示す図で
ある。
FIG. 3 is a diagram showing a configuration of the syndrome storage device 5;

【図4】本実施形態のシンドローム計算回路4によるシ
ンドローム計算タイミングを示す図である。
FIG. 4 is a diagram showing a syndrome calculation timing by the syndrome calculation circuit 4 of the present embodiment.

【図5】そのシンドローム計算回路4の構成を示す図で
ある。
FIG. 5 is a diagram showing a configuration of the syndrome calculation circuit 4.

【図6】本実施形態のエラー訂正回路6の構成を示す図
である。
FIG. 6 is a diagram illustrating a configuration of an error correction circuit 6 of the present embodiment.

【図7】CD−ROMリードソロモン積符号(RSP
C)におけるPベクトルとQベクトルとの幾何学的関係
を示す図である。
FIG. 7: CD-ROM Reed-Solomon product code (RSP)
It is a figure which shows the geometric relationship of P vector and Q vector in C).

【図8】本実施形態の系列間ベクトル番号及び誤り位置
変換回路51の構成を示す図である。
FIG. 8 is a diagram illustrating a configuration of an inter-sequence vector number and error position conversion circuit 51 according to the present embodiment.

【図9】本実施形態のエラー訂正のタイミングを示す図
である。
FIG. 9 is a diagram showing an error correction timing according to the embodiment.

【図10】そのエラー訂正の手順を示すフローチャート
である。
FIG. 10 is a flowchart showing a procedure of the error correction.

【図11】CD−ROMセクタデータのRSPC符号化
フォーマットを示す図である。
FIG. 11 is a diagram showing an RSPC encoding format of CD-ROM sector data.

【図12】本実施形態のデータ誤り訂正装置を用いたC
D−ROMデコーダを有する情報処理装置の構成を示す
図である。
FIG. 12 illustrates C using the data error correction device of the present embodiment.
FIG. 2 is a diagram illustrating a configuration of an information processing apparatus having a D-ROM decoder.

【符号の説明】[Explanation of symbols]

4 ……シンドローム計算回路 5 ……シンドローム記憶装置 6 ……エラー訂正回路 40……シンドローム判定回路 48……エラー位置計算回路 51……系列間ベクトル番号及び誤り位置変換回路 4 Syndrome calculation circuit 5 Syndrome storage device 6 Error correction circuit 40 Syndrome determination circuit 48 Error position calculation circuit 51 Inter-sequence vector number and error position conversion circuit

フロントページの続き (51)Int.Cl.6 識別記号 FI G11B 20/18 572 G11B 20/18 572F Continued on the front page (51) Int.Cl. 6 Identification code FI G11B 20/18 572 G11B 20/18 572F

Claims (6)

【特許請求の範囲】[Claims] 【請求項1】 入力されたセクタデータのQ系列及びP
系列のシンドロームを計算するシンドローム計算手段
と、 前記計算された前記各系列のシンドロームを記憶するシ
ンドローム記憶手段と、 前記シンドローム記憶手段に記憶された一方の系列のシ
ンドロームに基づいて該系列上の誤り位置と誤りデータ
の訂正値を計算する手段と、 前記計算された一方の系列上の誤り位置に対応する他方
の系列上のベクトル番号及び誤り位置を求める手段と、 前記計算された訂正値及び前記求められた他方の系列上
の誤り位置に基づいて該他方の系列上のベクトル番号の
シンドロームを修正する手段とを具備することを特徴と
するデータ誤り訂正装置。
1. A method for inputting a Q sequence and P
Syndrome calculation means for calculating a syndrome of a series; syndrome storage means for storing the calculated syndromes of each series; and error positions on the series based on the syndromes of one of the series stored in the syndrome storage means. Means for calculating a correction value of the error data, and means for calculating a vector number and an error position on the other sequence corresponding to the calculated error position on the one sequence, and the calculated correction value and the calculation Means for correcting a syndrome of a vector number on the other stream based on the obtained error position on the other stream.
【請求項2】 入力されたセクタデータのQ系列及びP
系列のシンドロームを計算するシンドローム計算手段
と、 前記計算された前記各系列のシンドロームを記憶するシ
ンドローム記憶手段と、 前記シンドローム記憶手段に記憶された一方の系列のシ
ンドロームに基づいて該系列上の誤り位置と誤りデータ
の訂正値を計算する手段と、 前記計算された一方の系列上の誤り位置に対応する他方
の系列上のベクトル番号及び誤り位置を求める手段と、 前記求められた他方の系列上のベクトル番号のシンドロ
ームの値に基づいて誤り訂正を行うか否かを判定する手
段と、 前記計算された訂正値及び前記求められた他方の系列上
の誤り位置に基づいて該他方の系列上のベクトル番号の
シンドロームを修正する手段とを具備することを特徴と
するデータ誤り訂正装置。
2. The system according to claim 1, further comprising:
Syndrome calculation means for calculating a syndrome of a series; syndrome storage means for storing the calculated syndromes of the respective series; and an error position on the series based on the syndrome of one of the series stored in the syndrome storage means. Means for calculating a correction value of error data, and means for calculating a vector number and an error position on the other sequence corresponding to the calculated error position on one of the sequences, and Means for determining whether or not to perform error correction based on the value of the syndrome of the vector number; and a vector on the other sequence based on the calculated correction value and the obtained error position on the other sequence. Means for correcting a syndrome of a number.
【請求項3】 請求項1または2記載のデータ誤り訂正
装置において、 前記シンドローム記憶手段はセクタデータを記憶可能な
複数の記憶領域を有し、前記シンドローム計算手段によ
ってセクタデータ毎のシンドローム計算結果を前記各記
憶領域に交互に転送する手段をさらに具備することを特
徴とするデータ誤り訂正装置。
3. The data error correction device according to claim 1, wherein said syndrome storage means has a plurality of storage areas capable of storing sector data, and said syndrome calculation means stores a syndrome calculation result for each sector data. A data error correction device, further comprising means for alternately transferring data to each of the storage areas.
【請求項4】 入力されたセクタデータのQ系列及びP
系列のシンドロームを計算して計算結果をメモリに書き
込む工程と、 前記メモリに記憶された一方の系列のシンドロームに基
づいて該系列上の誤り位置と誤りデータの訂正値を計算
する工程と、 前記計算された一方の系列上の誤り位置に対応する他方
の系列上のベクトル番号及び誤り位置を求める工程と、 前記計算された訂正値及び前記求められた他方の系列上
の誤り位置に基づいて該他方の系列上のベクトル番号の
シンドロームを修正する工程とを有することを特徴とす
るデータ誤り訂正方法。
4. The Q sequence and P of input sector data
Calculating a sequence syndrome and writing a calculation result to a memory; calculating an error position on the sequence and a correction value of error data on the basis of the syndrome of one of the sequences stored in the memory; Obtaining a vector number and an error position on the other sequence corresponding to the error position on one of the obtained sequences, based on the calculated correction value and the obtained error position on the other sequence. Correcting the syndrome of the vector number on the sequence of (i).
【請求項5】 入力されたセクタデータのQ系列及びP
系列のシンドロームを計算して計算結果をメモリに書き
込む工程と、 前記メモリに記憶された一方の系列のシンドロームに基
づいて該系列上の誤り位置と誤りデータの訂正値を計算
する工程と、 前記計算された一方の系列上の誤り位置に対応する他方
の系列上のベクトル番号及び誤り位置を求める工程と、 前記求められた他方の系列上のベクトル番号のシンドロ
ームの値に基づいて誤り訂正を行うか否かを判定する工
程と、 前記計算された訂正値及び前記求められた他方の系列上
の誤り位置に基づいて該他方の系列上のベクトル番号の
シンドロームを修正する工程とを有することを特徴とす
るデータ誤り訂正方法。
5. The system according to claim 5, wherein the Q sequence and P
Calculating a sequence syndrome and writing a calculation result to a memory; calculating an error position on the sequence and a correction value of error data on the basis of the syndrome of one of the sequences stored in the memory; Obtaining a vector number and an error position on the other sequence corresponding to the error position on one of the obtained sequences, and performing error correction based on the syndrome value of the obtained vector number on the other sequence. Judging whether or not, comprising a step of correcting the syndrome of the vector number on the other series based on the calculated correction value and the obtained error position on the other series, Data error correction method.
【請求項6】 請求項4または5記載のデータ誤り訂正
方法において、 前記メモリは少なくともセクタデータを記憶する複数の
記憶領域を有し、 前記計算されたセクタ毎のシンドローム計算結果を前記
各記憶領域に交互に転送することを特徴とするデータ誤
り訂正方法。
6. The data error correction method according to claim 4, wherein the memory has a plurality of storage areas for storing at least sector data, and stores the calculated syndrome calculation result for each sector in each of the storage areas. A data error correction method characterized by alternately transferring data.
JP33453997A 1997-12-04 1997-12-04 Data error correction device and data error correction method Pending JPH11168392A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP33453997A JPH11168392A (en) 1997-12-04 1997-12-04 Data error correction device and data error correction method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP33453997A JPH11168392A (en) 1997-12-04 1997-12-04 Data error correction device and data error correction method

Publications (1)

Publication Number Publication Date
JPH11168392A true JPH11168392A (en) 1999-06-22

Family

ID=18278550

Family Applications (1)

Application Number Title Priority Date Filing Date
JP33453997A Pending JPH11168392A (en) 1997-12-04 1997-12-04 Data error correction device and data error correction method

Country Status (1)

Country Link
JP (1) JPH11168392A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001020607A1 (en) * 1999-09-10 2001-03-22 Matsushita Electric Industrial Co., Ltd. Signal processor for correcting and detecting errors
SG88766A1 (en) * 1999-01-21 2002-05-21 Ibm Error-detecting device and method thereof
JP2008525898A (en) * 2004-12-23 2008-07-17 インテル・コーポレーション Method and system for syndrome generation and data recovery

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SG88766A1 (en) * 1999-01-21 2002-05-21 Ibm Error-detecting device and method thereof
WO2001020607A1 (en) * 1999-09-10 2001-03-22 Matsushita Electric Industrial Co., Ltd. Signal processor for correcting and detecting errors
US6912682B1 (en) 1999-09-10 2005-06-28 Matsushita Electric Industrial Co., Ltd. Signal processor for correcting and detecting errors
JP2008525898A (en) * 2004-12-23 2008-07-17 インテル・コーポレーション Method and system for syndrome generation and data recovery
JP4664988B2 (en) * 2004-12-23 2011-04-06 インテル・コーポレーション Method and system for syndrome generation and data recovery

Similar Documents

Publication Publication Date Title
JPH11249920A (en) Ecc system using data buffer for storage of code word data and syndrome buffer for storage of error syndrome
GB2369215A (en) Memory device and Reed Solomon decoder including the memory device
JPH10117148A (en) System for correcting error in data frame having vertical and lateral parity codes
JPH0681058B2 (en) Data transmission / reception method
US20070050663A1 (en) Error correction apparatus for performing consecutive reading of multiple code words
JPH0421944B2 (en)
JPH0713786A (en) Method and apparatus for correciton of error
JP2001075865A (en) Method for controlling cache tag and information processor using the controlling method
JPH10508988A (en) CRC / EDC checker system
JP2001203587A (en) Chain search unit
JPH11168392A (en) Data error correction device and data error correction method
JPH11259238A (en) Signal processor
US6564352B1 (en) Error detection circuit applicable to a disk reproduction apparatus
JP3310186B2 (en) Reed-Solomon decoding circuit
JP2000010807A (en) Digital data reproducing device
JPH1083356A (en) Method and device for hiding error in stored digital data
JPH03501659A (en) Pipeline address check bit stack controller
JP3259688B2 (en) Data processing circuit
JP3295537B2 (en) Multi-byte error detection and correction device
JPH10107648A (en) Error correction processing circuit
JP2594563B2 (en) Error correction circuit
JPH10336157A (en) Received data processing circuit
JPS63214840A (en) Error detecting and correcting circuit
JP2565590B2 (en) Data processing device
JPH02235154A (en) Memory control unit

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040616

A977 Report on retrieval

Effective date: 20061116

Free format text: JAPANESE INTERMEDIATE CODE: A971007

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061121

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070327