采用纠错码的数据处理方法和采用该方法的设备

申请号 CN01143559.3 申请日 2001-12-12 公开(公告)号 CN1359103A 公开(公告)日 2002-07-17
申请人 株式会社东芝; 发明人 小竹晃一; 石泽良之; 小岛正;
摘要 本 发明 提供一种采用纠错码的 数据处理 方法和采用该方法的设备。其中,当为 存储器 (2)中存储的数据生成并添加纠错码时,即使该存储器(2)上的数据中出现错误,仍可消除该错误的负面影响。在本发明中,当在存储器(2)中存储数据时,事先利用另一个存储器(1),例如SRAM,生成纠错码PI。把纠错码PI和数据一起写入到存储器(2)中。当存储16个区段的数据和PI后,为数据和PI生成并添加纠错码PO。当从存储器(2)读出该数据时,每次读出一个PI系列进行一次PI校正处理。这使得即使在存储器(2)上该数据被破坏(或出现错误)时仍有可能恢复原始数据。
权利要求

1.一种采用纠错码的数据处理方法,其特征在于包括下述步骤:
通过利用一个第一存储器(1)为M行×N列的由(M×N)字节组 成的数据中的每行生成P字节的纠错码PI并对该行添加该纠错码PI;
在一个第二存储器(2)中汇集K个M行×(N+P)列的由(M× (N+P))字节组成的添加了纠错码PI的数据块以生成含有(K×(M× (N+P)))字节的聚合数据块;
通过利用所述第二存储器为所述聚合数据块中的每列生成S字节的 纠错码PO并对该列添加该纠错码PO以生成纠错乘积码块(ECC块);
在从所述第二存储器读出所述ECC块并发送该ECC块之前利用添 加到各行的纠错码PI进行错误校正处理(3,10);以及
按行的次序顺序地发送经过了所述纠错处理的ECC块或者把该ECC 块记录在记录媒体上。
2.一种采用纠错码的数据处理方法,其特征在于包括下述步骤:
通过利用一个第一存储器(1)为M行×N列的由(M×N)字节组 成的数据块中的每行生成P字节的纠错码PI并对该行添加该纠错码PI;
在一个第二存储器(2)中汇集K个M行×(N+P)列的由(M× (N+P))字节组成的添加了纠错码PI的数据块以生成含有(K×(M× (N+P)))字节的聚合数据块;
通过利用所述第二存储器(2)为所述聚合数据块中的每列生成(S=K ×Q)字节的纠错码PO并对该列添加该纠错码PO;
以Q字节为单位把所述纠错码PO分布到K个添加了纠错码PI的 数据块中以使每个块构建成一个由数据和纠错码组成的并包含固定的 (M+Q)×(N+P)字节量的纠错乘积码块(ECC块);
在从所述第二存储器读出所述ECC块并发送该ECC块之前利用添 加到各行的纠错码PI进行错误校正处理(3,10);以及
按行的次序顺序地发送经过了所述纠错处理的ECC块或者把该ECC 块记录在记录媒体上。
3.一种采用纠错码的数据处理方法,其特征在于包括下述步骤:
当对M行×N列中(M×N)字节组成的数据块中的每行生成并添 加纠错码PI时,
包含着第一过程和第二过程,其中第一过程从主计算机按行(含有 N字节)地接收数据并顺序地在第二存储器(2)中存储所发送的N字节 数据,第二过程并行于第一过程基于所述发送的N字节数据为每个所述 行生成P字节的纠错码、顺序地把生成的P字节的纠错码PI存储到所述 第二存储器中并在M行×(N+P)列中生成由(M×(N+P))字节组成 的添加了纠错码PI的数据块;
在第二存储器(2)中汇集K个M行×(N+P)列中的由(M×(N+P)) 字节组成的添加了纠错码PI的数据块以生成含有(K×(M×(N+P))) 字节的聚合数据块;
通过利用所述第二存储器(2)为所述聚合数据块中的每列生成S字 节的纠错码PO并对该列添加该纠错码PO以生成纠错乘积码块(ECC 块);
在从所述第二存储器(2)读出所述ECC块并发送该ECC块之前利 用添加到各行的纠错码PI进行错误校正处理(3,10);以及
按行的次序顺序地发送经过了所述纠错处理的ECC块或者把该ECC 块记录在记录媒体上。
4.根据权利要求1、2或3的数据处理方法,其特征在于,当基于所 述纠错码PI在所述ECC块进行错误校正处理时,仅使纠错码PO的各 行进行错误校正处理。
5.依据权利要求1、2或3的数据处理方法,其特征在于:
从所述第二存储器(2)中顺序地读出所述ECC块的每行并存储在 一个第三存储器(3)中,
当基于纠错码PI对所述第三存储器中存储的单位块进行错误校正处 理时,对所述第三存储器中存储的数据块里的每一行或对纠错码PO的行 进行错误校正处理,以及
按行的次序顺序地发送经过了所述错误校正处理的单位块或把该单 位块记录到记录媒体上。
6.一种采用纠错码的数据处理方法,其特征在于包括下述步骤:
当发送或从记录媒体读出并且接收含有(K×M×(N+P))字节的 添加了纠错码PI的聚合数据块以及含有(S×(N+P))字节的纠错码PO 块时,其中,对汇集着K个由M行×N列中的(M×N)字节构成的从 而包含(K×(M×N))字节的聚合数据块的每行添加P字节的纠错码 PI,而所述纠错码PO块为对所述包含着纠错码PI块的聚合数据块的每 列生成S字节的纠错码PO,
通过利用一个第二存储器(2)基于所述纠错码PI和PO对所述聚 合数据块中的错误数据字节进行第一错误校正处理;以及
通过利用第一存储器(1)基于所述纠错码PI对受过所述第一错误 校正处理的数据进行行错误校正处理。
7.一种采用纠错码的数据处理方法,其特征在于包括下述步骤:
当发送或从记录媒体读出并接收纠错乘积码块(ECC块)时,其中 所述ECC块是这样构成的:对M行×N列中的由(M×N)字节组成的 数据块中的每行生成并添加P字节的纠错码PI;把K个M行×(N+P) 列中的由(M×(N+P))字节组成的添加了纠错码PI的数据块汇集在一 起以生成含有(K×(M×(N+P)))字节的聚合数据块;对所述聚合数 据块的每列生成并添加(S=K×Q)字节的纠错码PO;并以Q字节为单 位把所述纠错码PO分布到K个添加了纠错码PI的数据块从而使每个数 据块由数据和纠错码组成并包含固定的(M+Q)×(N+P)字节数量,
利用一个第二存储器(2)基于所述纠错码PI和PO对所述数据块 中的错误数据字节进行错误校正处理,并且然后
通过使用一个第一存储器(1)基于所述纠错码PI对经过了所述第 一错误校正处理的数据进行行错误校正处理。
8.依据权利要求6或7的数据处理方法,其特征在于,仅当从所述第 二存储器(2)读出数据的过程中从添加到所述数据块的错误检测码 (EDC)判断出在所述数据块中存在错误时才利用所述第一存储器(1) 进行错误校正处理。
9.一种采用纠错码的数据处理方法,其特征在于包括下述步骤:
通过利用一个第一存储器(1)为M行×N列中的由(M×N)字节 组成的数据块中的每行生成P字节的纠错码PI并对该行添加该纠错码PI 以形成一个数据块;
在一个第二存储器(2)中汇集K个M行×(N+P)列中的由(M ×(N+P))字节组成的所述添加了纠错码PI的数据块以生成一个含有 (K×(M×(N+P)))字节的聚合数据块并且利用所述第二存储器为所 述聚合数据块中的每列生成S字节的纠错码并对该列添加该纠错码PO 以生成一个纠错乘积码块(ECC块);
在从所述第二存储器读出并发送该ECC块之前利用添加到所述ECC 块的每行的纠错码PI进行错误校正处理,
按行的次序顺序地发送经受过所述纠错处理的ECC块或者把该ECC 块记录在记录媒体上;
当发送或从记录媒体读出并且接收该经受过所述错误校正处理的 ECC块时,通过利用所述第二存储器(2)基于所述纠错码PI和PO对 所述数据块中的错误数据字节进行第一错误校正处理;以及
通过利用第一存储器(1)基于所述纠错码PI对受过所述第一错误 校正处理的数据进行错误校正处理。
10.一种采用纠错码的数据处理方法,其特征在于包括下述步骤:
通过利用一个第一存储器(1)为M行×N列中的由(M×N)字节 组成的数据块中的每行生成P字节的纠错码PI并对该行添加该纠错码PI 以形成一个数据块;
在一个第二存储器(2)中汇集K个M行×(N+P)列中的由(M ×(N+P))字节组成的所述添加了纠错码PI数据块以生成一个含有(K ×(M×(N+P)))字节的聚合数据块并且通过利用所述第二存储器(2) 为所述聚合数据块中的每列生成(S=K×Q)字节的纠错码PO并对该列 添加该纠错码PO;
以Q字节为单位把所述纠错码PO分布到K个添加了纠错码PI的 数据块从而以每个数据块含有由数据块和纠错码组成的固定(M+Q)× (N+P)字节量的方式构建一个纠错乘积码块(ECC块);
在从所述第二存储器读出并发送该ECC块之前利用添加到所述ECC 块的每行的纠错码PI进行错误校正处理;
按行的次序顺序地发送经受过所述纠错处理的ECC块或者把该ECC 块记录在记录媒体上;
当发送或从记录媒体读出并且接收该经受过所述错误校正处理的 ECC块时,通过利用所述第二存储器(2)基于所述纠错码PI和PO对 所述数据块中的错误数据字节进行第一错误校正处理;以及
通过利用第一存储器(1)基于所述纠错码PI对经受过所述第一错 误校正处理的数据进行行错误校正处理。
11.依据权利要求9或10的处理方法,其特征在于,在通过利用所述 第二存储器(2)基于所述纠错码PI和PO对所述数据块中的错误数据字 节进行第一错误校正处理之前,通过利用所述第二存储器(2)基于纠错 码PI对包含记录中的存储错误的错误数据字节进行错误校正处理。
12.依据权利要求1、2、3、6、7、9和10中任一权利要求的数据处 理方法,其特征在于所述第一存储器(1)是SRAM(静态RAM)。
13.依据权利要求1、2、3、6、7、9和10中任一权利要求的数据处 理方法,其特征在于,利用所述纠错码PI进行的错误校正处理通过仅计 算从P字节纠错码PI得到的模式检测值(P字节)中的一部分(R字节, R<P)检测错误,仅当判断存在错误时,才进行校正处理。
14.一种数据处理设备,其在发送添加了纠错码的数据时或者在记录 媒体上记录该添加了纠错码的数据时利用依据权利要求1、2或3中任一 权利要求的数据处理方法获得该添加了纠错码的数据。
15.一种数据处理设备,其在发送添加了纠错码的数据或从记录媒体 读该添加了纠错码的数据并且接收时利用依据权利要求6或7的数据处 理方法获得纠错后的输出数据。
16.一种数据处理设备,其在发送添加了纠错码的数据或在记录媒体 上记录该添加了纠错码的数据时或者发送添加了纠错码的数据或从记录 媒体读该添加了纠错码的数据并且接收时,利用依据权利要求9或10的 数据处理方法获得该添加了纠错码的数据或纠错后的输出数据。
17.一种采用纠错码的数据处理设备,其特征在于包括:
装置(8),用于通过利用一个第一存储器(1)为M行×N列中的 由(M×N)字节组成的数据块中的每行生成P字节的纠错码PI并对该 行添加该纠错码PI;
装置(2),用于在一个第二存储器中汇集K个M行×(N+P)列中 的由(M×(N+P))字节组成的添加了纠错码PI的数据块以生成含有(K ×(M×(N+P)))字节的聚合数据块;
装置(9),用于通过利用所述第二存储器为所述聚合数据块中的每 列生成S字节的纠错码PO并对该列添加该纠错码PO以生成纠错乘积码 块(ECC块);
装置(2,10),用于在从所述第二存储器读出所述ECC块并发送该 ECC块之前利用添加到各行的纠错码PI进行错误校正处理;以及
装置(4),用于按行的次序顺序地发送经过了所述纠错处理的ECC 块或者把该ECC块记录在记录媒体上。
18.一种采用纠错码的数据处理设备,其特征在于包括:
装置(8),用于通过利用一个第一存储器(1)为M行×N列中的 由(M×N)字节组成的数据块中的每行生成P字节的纠错码PI并对该 行添加该纠错码PI;
装置(2),用于在一个第二存储器中汇集K个M行×(N+P)列中 的由(M×(N+P))字节组成的添加了纠错码PI的数据块以生成含有(K ×(M×(N+P)))字节的聚合数据块;
装置(2,9),用于通过利用所述第二存储器为所述聚合数据块中的 每列生成(S=K×Q)字节的纠错码PO并对该列添加该纠错码PO;
装置(2,9),用于以Q字节为单位把所述纠错码PO分布到K个 添加了纠错码PI的数据块中以使每个数据块构建成一个由数据和纠错码 组成的并包含固定的(M+Q)×(N+P)字节量的纠错乘积码块(ECC 块);
装置(3,10),用于在从所述第二存储器读出所述ECC块并发送该 ECC块之前利用添加到各行的纠错码PI进行错误校正处理;以及
装置(4),用于按行的次序顺序地发送经受过所述纠错处理的ECC 块或者把该ECC块记录在记录媒体上。
19.一种采用纠错码的数据处理设备,其特征在于包括:
当对M行×N列中(M×N)字节组成的数据块中的每行生成并添 加纠错码PI时,
装置(2,18),用于包含着第一过程和第二过程,其中第一过程从 一个主计算机按行(含有N字节)地接收数据并顺序地在第二存储器中 存储所发送的N字节数据,第二过程并行于第一过程基于所述发送的N 字节数据为每个所述行生成P字节的纠错码PI、顺序地把生成的P字节 的纠错码PI存储到所述第二存储器中并在M行×(N+P)列中生成由(M ×(N+P))字节组成的添加了纠错码PI的数据块;
装置(2),用于在一个第二存储器中汇集K个M行×(N+P)列中 的由(M×(N+P))字节组成的添加了纠错码PI的数据块以生成含有(K ×(M×(N+P)))字节的聚合数据块;
装置(9),用于通过利用所述第二存储器为所述聚合数据块中的每 列生成S字节的纠错码PO并对该列添加该纠错码PO以生成纠错乘积码 块(ECC块);
装置(3,10),用于在从所述第二存储器读出所述ECC块并发送该 ECC块之前利用添加到各行的纠错码PI进行错误校正处理;以及
装置(4),用于按行的次序顺序地发送经受过所述纠错处理的ECC 块或者把该ECC块记录在记录媒体上。
20.依据权利要求17、18或19的数据处理设备,其特征在于,当基 于所述纠错码PI在所述ECC块进行错误校正处理时,仅使纠错码PO 的各行受到错误校正处理。
21.依据权利要求17、18或19的数据处理设备,其特征在于还包括:
装置(3),用于从所述第二存储器中顺序地读出所述ECC块的每行 并存储在一个第三存储器中,
装置(10),用于当基于纠错码PI对所述第三存储器中存储的单位 块进行错误校正处理时,对所述第三存储器中存储的数据块里的每一行 或对纠错码PO的行进行错误校正处理,以及
装置(4),用于按行的次序顺序地发送经过了所述错误校正处理的 单位块或把该单位块记录到记录媒体上。
22.一种采用纠错码的数据处理设备,其特征在于包括:
当发送或从记录媒体读出并且接收含有(K×M×(N+P))字节的 添加了纠错码PI的聚合数据块以及含有(S×(N+P))字节的纠错码PO 块时,其中,对汇集着K个由M行×N列中的(M×N)字节构成的从 而包含(K×(M×N))字节的聚合数据块的每行添加P字节的纠错码 PI,而所述纠错码PO块为对所述聚合数据块的以及所述添加了纠错码PI 的块的每列生成S字节的纠错码PO,
装置(2,10,14),用于通过利用一个第二存储器基于所述纠错码 PI和PO对所述聚合数据块中的错误数据字节进行第一错误校正处理; 以及
装置(3,10),用于通过利用一个第一存储器基于所述纠错码PI对 经过了所述第一错误校正处理的数据进行行错误校正处理。
23.一种采用纠错码的数据处理设备,其特征在于包括:
当发送或从记录媒体读出并接收纠错乘积码块(ECC块)时,其中 所述ECC块是这样构成的:对M行×N列中的由(M×N)字节组成的 数据块中的每行生成并添加P字节的纠错码PI;把K个M行×(N+P) 列中的由(M×(N+P))字节组成的添加了纠错码PI的数据块汇集在一 起以生成含有(K×(M×(N+P)))字节的聚合数据块;对所述聚合数 据块的每列生成并添加(S=K×Q)字节的纠错码PO;并以Q字节为单 位把所述纠错码PO分布到K个添加了纠错码PI的数据块从而使每个数 据块由数据和纠错码组成并包含固定的(M+Q)×(N+P)字节数量,
装置(2,14),用于利用一个第二存储器基于所述纠错码PI和PO 对所述数据块中的错误数据字节进行错误校正处理,及
装置(1,10),用于通过使用第一存储器基于所述纠错码PI对受过 所述第一错误校正处理的数据进行行错误校正处理。
24.依据权利要求22或23的数据处理设备,其特征在于,仅当从所 述第二存储器读数据的过程中从添加到所述数据块的错误检测码(EDC) 判断出在所述数据块中存在错误时才利用所述第一存储器进行错误校正 处理。
25.一种采用纠错码的数据处理设备,其特征在于包括:
装置(1,8),用于通过利用第一存储器为M行×N列中的由(M ×N)字节组成的数据块中的每行生成P字节的纠错码PI并对该行添加 该纠错码PI以形成一个数据块;
装置(2,9),用于在第二存储器中汇集K个M行×(N+P)列中 的由(M×(N+P))字节组成的所述添加了纠错码PI的数据块以生成一 个含有(K×(M×(N+P)))字节的聚合数据块并且利用所述第二存储 器为所述聚合数据块中的每列生成S字节的纠错码并对该列添加该纠错 码PO以生成一个纠错乘积码块(ECC块);
装置(3,10),用于在从所述第二存储器读出并发送该ECC块之前 利用添加到所述ECC块的每行的纠错码PI进行错误校正处理,
装置(4),用于按行的次序顺序地发送经过了所述纠错处理的ECC 块或者把该ECC块记录在记录媒体上;
装置(2,14),用于当发送或从记录媒体读出并且接收该受过所述 错误校正处理的ECC块时,通过利用所述第二存储器基于所述纠错码PI 和PO对所述数据块中的错误数据字节进行第一错误校正处理;以及
装置(1,10),用于通过利用第一存储器基于所述纠错码PI对经过 了所述第一错误校正处理的数据进行错误校正处理。
26.一种采用纠错码的数据处理设备,其特征在于包括:
装置(1,8),用于通过利用第一存储器为M行×N列中的由(M ×N)字节组成的数据块中的每行生成P字节的纠错码PI并对该行添加 该纠错码PI以形成一个数据块;
装置(2),用于在第二存储器中汇集K个M行×(N+P)列中的由 (M×(N+P))字节组成的所述添加了纠错码PI数据块以生成一个含有 (K×(M×(N+P)))字节的聚合数据块;
装置(2,9),用于通过利用所述第二存储器为所述聚合数据块中的 每列生成(S=K×Q)字节的纠错码PO并对该列添加该纠错码PO;
装置(2),用于以Q字节为单位把所述纠错码PO分布到K个添加 了纠错码PI的数据块从而以每个数据块含有由数据块和纠错码组成的固 定(M+Q)×(N+P)字节量的方式构建一个纠错乘积码块(ECC块);
装置(2,10),用于在从所述第二存储器读出并发送该ECC块之前 利用添加到所述ECC块的每行的纠错码PI进行错误校正处理;
装置(4),用于按行的次序顺序地发送经过了所述纠错处理的ECC 块或者把该ECC块记录在记录媒体上;
装置(2,10,14),用于当发送或从记录媒体读出并且接收该经过 了所述错误校正处理的ECC块时,通过利用所述第二存储器基于所述纠 错码PI和PO对所述数据块中的错误数据字节进行第一错误校正处理; 以及
装置(3,10),用于通过利用第一存储器基于所述纠错码PI对经过 了所述第一错误校正处理的数据进行行错误校正处理。
27.依据权利要求25或26的处理方法,其特征在于还包括,在通过 利用所述第二存储器(2)基于所述纠错码PI和PO对所述数据块中的错 误数据字节进行第一错误校正处理之前,通过利用所述第二存储器基于 纠错码PI对包含记录中的存储错误的错误数据字节进行错误校正处理的 装置。
28.依据权利要求17、18、19、22、23、25或26中任一权利要求的 数据处理设备,其特征在于所述第一存储器是SRAM(静态RAM)。
29.依据权利要求17、18、19、22、23、25或26中任一权利要求的 数据处理设备,其特征在于,利用所述纠错码PI进行的错误校正处理通 过仅计算从P字节纠错码PI得到的模式检测值(P字节)中的一部分(R 字节,R<P)检测错误,仅当判断存在错误时,才进行校正处理。
30.一种数据处理设备,特征在于包括:
装置(1,2,8),用于为数据块的每行生成纠错码PI并把纠错码PI 和所述数据块都存储在一个存储器里;以及
装置(2,3,10),用于当在发送或记录系统中从所述存储器读出添 加了纠错码的数据块时基于所述纠错码PI对该数据块的各行进行错误校 正处理。
31.一种数据处理设备,其包括装置(2,10,3),用于当从存储器读 出利用纠错码PI进行了错误校正处理的聚合数据块时再次利用所述纠错 码PI对该聚合数据块的各行进行错误校正处理。
32.一种采用纠错码的数据处理设备,其特征在于包括:
PI生成和添加装置(8),用于对多行(每行含有N字节)数据中的 每行生成纠错码PI(含有P字节),并对该行添加该纠错码PI;
一个缓冲存储器(2),用于存储通过所述PI生成和添加装置得到的 每行包含N+P字节的添加了纠错码PI的数据;
PI错误校正装置(10),用于在从所述缓冲存储器读出所述数据并发 送该数据之前利用对每行添加的纠错码PI校正各行中的错误;以及
存储器控制装置(20),当该PI错误校正装置进行完错误校正时, 其记住有关所述缓冲存储器中的在其中存储检测出错误的数据的存储区 的信息并且用另一个存储区代替所述缓冲存储器中的其中存储了反复地 被检测出错误的数据的存储区。
33.一种采用纠错码的数据处理设备,其特征在于包括:
PI生成和添加装置(8),用于对从一个主计算机发送的多行(每行 含有N字节)数据中每行生成纠错码PI(含有P字节),并对该行添加 该纠错码PI;
一个缓冲存储器(2),用于存储通过所述PI生成和添加装置得到的 每行包含N+P字节的添加了纠错码PI的数据;
PO生成和添加装置(9),用于汇集K个M行×(N+P)列中的由 (M×(N+P))字节组成的添加了纠错码PI的数据块以生成含有(K× (M×(N+P)))字节的聚合数据块,并且用于为所述聚合数据块中的每 列生成S字节的纠错码PO并对该列添加该纠错码以生成纠错乘积码块 (ECC块);
PI错误校正装置(3,10),用于在从所述缓冲存储器读出所述数据 并发送该数据之前利用对每行添加的纠错码PI校正各行中的错误;以及
控制装置(20),用于:在该PI错误校正装置进行错误校正中检测 出超过可校正的错误数量的情况下在添加所述纠错码PI之前再次从所述 主计算机请求该数据并使该数据变成添加了纠错码PI的数据,并且当在 所述缓冲存储器中存储添加了纠错码PI的数据时指定一个不同于上次在 其中存储所述数据的第一存储区的第二存储区。
34.一种采用纠错码的数据处理设备,其特征在于包括:
PI生成和添加装置(8),用于对多行(每行含有N字节)数据中的 每行生成纠错码(含有P字节),并对该行添加该纠错码PI;
一个缓冲存储器(2),用于存储通过所述PI生成和添加装置得到的 每行包含N+P字节的添加了纠错码PI的数据;
PO生成和添加装置(9),用于汇集K个M行×(N+P)列中的由 (M×(N+P))字节组成的添加了纠错码PI的数据块以生成含有(K× (M×(N+P)))字节的聚合数据块,并且用于为所述聚合数据块中的每 列生成S字节的纠错码PO并对该列添加该纠错码以生成纠错乘积码块 (ECC块);
PI错误校正装置(3,10),用于在从所述缓冲存储器读出所述数据 并发送该数据之前利用对每行添加的纠错码PI校正各行中的错误;以及
控制装置(20),用于:当该PI错误校正装置校正其中存在所述纠 错码PO的行中的错误时检测出超过可校正的错误数量的情况下把所述缓 冲存储器里的第一区中存储的包含(K×(M×(N+P)))字节的所述聚 合数据块移到所述缓冲存储器里的第二区,并且通过所述PO生成和添加 装置为所述第二区中的包含(K×(M×(N+P)))字节的所述聚合数据 块的每列生成S字节的纠错码并对该列添加该纠错码PO。
35.一种采用纠错码的数据处理设备,其特征在于包括:
当从发送装置或记录媒体接收包含(K×M×(N+P))字节的添加 了纠错码PI的聚合数据块以及包含(S×(N+P))字节的纠错码PO块 时,其中对汇集着K个由M行×N列中的(M×N)字节构成的从而包 含(K×(M×N))字节的每行添加P字节的纠错码PI,而所述纠错码 块PO为对所述聚合数据块以及所述纠错码PI添加块的每列生成S字节 的纠错码,
第一装置(2,9,14),用于通过利用一个缓冲存储器基于所述纠错 码PI和PO对所述聚合数据块中的错误数据字节进行第一错误校正处理;
第二装置(10,3),用于通过利用一个容量小于所述缓冲存储器的 小存储器基于所述纠错码PI对受到所述第一错误校正处理的数据中的各 行进行第二错误校正处理;以及
存储器控制装置(20),当第二装置在PI系列中进行错误校正时, 用于记住有关所述缓冲存储器中的在其中存储检测出错误的数据的存储 区的信息并且用于用另一个存储区代替所述缓冲存储器中的其中存储反 复地检测出错误的数据的存储区。
36.一种采用纠错码的数据处理设备,其特征在于包括:
当从发送装置或记录媒体接收纠错乘积码块(ECC块)时,其中所 述ECC块是这样构成的:对M行×N列中的由(M×N)字节组成的数 据块中的每行生成并添加P字节的纠错码PI;把K个M行×(N+P) 列中的由(M×(N+P))字节组成的添加了纠错码PI的数据块汇集在一 起以生成含有(K×(M×(N+P)))字节的聚合数据块;对所述聚合数 据块的每列生成并添加(S=K×Q)字节的纠错码PO;并以Q字节为单 位把所述纠错码分布到K个添加了纠错码PI的数据块从而使每个块由数 据和纠错码组成并包含固定的(M+Q)×(N+P)字节数量,
第一装置(2,9,14),用于通过利用一个缓冲存储器基于所述纠错 码PI和PO对所述数据块中的错误数据字节进行第一错误校正处理;
第二装置(10,3),用于通过利用一个容量小于所述缓冲存储器的 小存储器基于所述纠错码PI对受到所述第一错误校正处理的数据中的各 行进行第二错误校正处理;以及
控制装置(20),用于:在第二装置进行PI校正中检测出超过可校 正的错误数量的情况下对所述发送装置或记录媒体再次请求添加了所述 纠错码PI的数据,并且当在所述缓冲存储器中存储该数据时指定一个不 同于上次在其中存储所述数据的第一存储区的第二存储区。

说明书全文

                       技术领域

发明涉及把视频数据、声频数据或者计算机数据记录到媒体(例 如光盘或磁盘)上的或者再现媒体上记录的数据时使用的一种有效的纠 错码生成方法。

本发明还涉及发送或接收视频数据等时的一种有效纠错码生成方 法。

本发明还涉及采用该纠错码生成方法的记录设备、再现设备和接收 设备。

本发明的特征尤其在于一种在实现纠错过程中使用缓冲存储器的纠 错方法。

                       技术背景

当把视频数据、声频数据、计算机数据等记录在光盘或磁盘上时, 对数据添加纠错码。在该纠错码添加过程中,数据块暂时存储在存储 器中并生成用于该数据块的各行和各列的纠错码。

添加到行中的纠错码通常称为内奇偶校验并简写为PI。添加到列中 的纠错码通常称为外奇偶校验并简写为PO。

在纠错码添加过程中,当生成纠错码之前数据块暂时存储在存储器 中时,可能会破坏该存储器上该数据的一部分(或者可能出现差错)。可 以把这种破坏归因于该存储器的数据模式或安装状态。另外,外部突发 噪声可能具有负面效应。

此刻出现的错误称为存储错误。

在这样的情况下,对已出现存储错误的数据块(以下称为变更的数 据块)生成纠错码。对该变更的数据块添加该纠错码并把结果块记录到 记录媒体上。

当从该记录媒体重现数据时,纠错电路利用该纠错码对该变更的数 据块进行纠错处理。即,其正确地再现该变更的数据块。这意味着包含 着存储错误的数据块又被正确地再现。然而对于原始数据,存储错误是 不需要的。

因此,在已出现存储错误时,不可能正确地恢复原始数据。

                       发明内容

从而,本发明的目的是提供一种采用纠错码并且即使在存储器上已 出现数据错误(存储错误)时仍能恢复原始数据的数据处理方法,并且 提供采用该方法的记录系统或再现系统部件和采用该方法的发送系统和 接收系统。

下面是依据本发明的纠错码处理方法的基本概念。

本发明的特征在于该发送或记录系统为具有矩阵结构的数据块中的 每行生成纠错码PI并且把该纠错码PI和该数据块都存储在存储器中, 当从该存储器读取添加着该纠错码PI的该数据块时,根据该纠错码PI 对数据块的各行进行纠错处理。

此外,本发明特征在于,当从存储器读取该利用纠错码PI进行了纠 错处理的矩阵结构式数据块时,该接收或再现系统再次利用该纠错码PI 对数据块的各行进行纠错处理。

具体地,当在一存储器(第一存储器)中存储数据时,本发明在生 成纠错码PI之前使用一个分立的第二存储器(一个带有不损害数据的结 构的存储器,例如SRAM)并且把结果数据以及该数据都写入到第一存 储器。

接着,在第一存储器中存储K段的数据和PI后,生成用于该数据和 PI的纠错码PO并添加给它们。当从第一存储器读数据时,每次取出PI 系列时进行PI校正处理。这使得即使在第一存储器上对数据产生损害(或 发生存储错误)下也能按其原始状态恢复数据。

在再现数据时,把再现数据暂时地存储在存储器中并且进行PI和PO 纠错处理。在这些纠错处理后发送该存储器上的数据时,再次对从第一 存储器读出的数据进行PI校正处理。这使得即使在该存储器上对数据产 生损害(或发生存储错误)下也能按其原始状态恢复数据。

此外,本发明的一个目的是提供一种数据处理设备,该设备通过改 进使用存储器的方法能正确地恢复原始数据(甚至存储器上出现数据错 误时)并且能保证操作的可靠性。

具体地,本发明的特征在于该发送或记录系统为具有矩阵结构的数 据块中的每行生成纠错码PI并把该纠错码PI和该数据块都存储在存储 器中,当从该存储器读取添加着该纠错码的该数据块时,根据该纠错码PI 对数据块的各行进行纠错处理。

接着,当在利用该纠错码PI进行纠错处理的过程中感测到不可能校 正的差错时,改变其中曾存储过相关行或数据块的存储器区段,从而避 免发生存储错误,另外,出现存储错误的区域被查明并且以后不再使用。

                       附图说明

图1是一个说明图,示出获得DVD中的物理段的数据处理过程;

图2是一个说明图,示出DVD中数据段的配置;

图3是用来生成杂乱数据的反馈移位寄存器的说明图;

图4是示出ECC块的说明图;

图5是示出记录段的说明图;

图6是一个说明图,示出其中插入纠错码PO的ECC块;

图7是一个方块图,用于帮助说明常规记录和再现部件的记录系统 中的纠错码生成方法;

图8是一个方块图,用于帮助说明常规记录和再现部件的再现系统 中的纠错码生成方法;

图9帮助说明常规记录和再现部件中出现DRAM存储错误时的纠错 码;

图10是一种记录系统的方块图,用于帮助说明依据本发明的纠错码 生成方法的一实施例

图11是一个说明图,示出通过依据本发明的纠错码生成方法得到的 ECC块的数据结构;

图12是一种再现系统的方块图,用于帮助说明对通过依据本发明的 纠错码生成方法得到的ECC块中的错误进行校正的实施例方法;

图13是一种记录系统的方块图,用于帮助说明依据本发明的纠错码 生成方法的另一实施例;

图14是一种记录系统的方块图,用于帮助说明依据本发明的纠错码 生成方法的又一实施例;

图15是一种再现系统的方块图,用于帮助说明对通过依据本发明的 纠错生成方法得到的ECC块中的错误进行校正的另一实施例方法;

图16是一种记录和再现系统的方块图,用于帮助说明一个采用依据 本发明的纠错码生成方法和利用纠错码校正错误的纠错方法的实施例;

图17是一种记录和再现系统的方块图,用于帮助说明另一个依据本 发明的纠错码生成方法的实施例;

图18A和18B是说明图,示出当通过依据本发明的纠错码生成方法 处理数据时的一包含着存储错误的ECC块的数据串例子和缓冲存储器的 存储变换例子;以及

图19是一个说明图,示出另一个通过依据本发明的纠错码生成方法 处理包含着存储错误的ECC块的例子。

                     具体实施方式

以下参照各附图说明本发明的各种实施例。

现利用DVD(数字通用盘)通过参照图1至图8说明数据记录和再 现部件中的纠错码添加电路和纠错电路的配置。

首先参照图1至图6说明DVD上被记录数据的结构。

图1示出为了得到DVD中的物理段的数据处理顺序。根据信号处理 的阶段各个段被称为“数据段”、“记录段”或“物理段”。如图2中所示, 一个数据段包括2048字节的主数据,4字节的标识数据(ID),2字节的 ID错误检测码(IED),(用于检测ID中的错误的代码)。6字节的版权 管理信息(CPR-MAI)以及4字节的错误检测信号(EDC),(用于检测 该数据段中的错误的信号)。添加ID、IDE、CPR-MAI和EDC的步骤 是图1中的步骤A1至步骤A3。在步骤A1,对主数据添加ID。在步骤 A2,进而添加IED。另外,在步骤A3,添加CPR-MAI。

接着,计算用于主数据的EDC。对该主数据添加该EDC。然后,对 该数据段中的主数据(含有2048个字节)添加杂乱数据(步骤A4、A5、 A6)。之后,把该杂乱数据后面的16个数据段装配在一起。对该16个数 据段生成并添加交叉Reed-Solomon纠错码(步骤A6)。记录段即添加了 ECC的段是对其添加纠错码PI和纠错码PO的数据段(步骤A7)。物理 段是被进行过8/16改进的段,从而记录段中每隔91字节的间隔对头部添 加一个同步码(SYNC码)(步骤A8)。

现利用图2说明DVD数据段的结构。

含有2064字节的数据段(其中包括2048字节长的主数据)由172 字节×12行构成。即,一个数据段包括2048字节的主数据,4字节的标 识数据(ID),2字节的ID错误检测码(IED),6字节的版权管理信息 (CPR-MAI)以及4字节的错误检测码(EDC)。

图3示出一个反馈移位寄存器,其产生用于在步骤A4杂乱主数据(含 有2048个字节)的杂乱数据Sk。例如,该数据段的一部分ID充当产生 杂乱数据Sk的初始值。杂乱数据Sk用于对该数据段的主数据(2048字节) 进行杂乱。从而,杂乱后的主数据Dk是Sk(k=0到2047)和Dk的“异” 运算结果。

现利用图4说明ECC块的结构。

形成一数据块以具有172列×192行,即16个各含有172字节×12 行的数据段的集合。对该172列×192行生成并添加Reed-Solomon纠错 码。首先,对172个列中的每个列生成并添加16字节的纠错码PO。该 PO序列中的每一列含有192字节+16字节,即208字节。接着对包含着 纠错码PO行的208个行中的每一行生成并添加10字节的纠错码PI。该 已添加纠错码PI和PO的182列×208行形成一个ECC块。即使颠倒生 成PO和PI的次序,仍得到相同的代码模式。

ECC块纵向上的一列称为一个PO系列,而横向上的一行称为一个 PI系列。一个PO系列含有192字节+16字节,即208字节。在一个PO 系列中可以校正长达8字节的错误,一个PI系列含有172字节+10字节, 即182字节。在一个PI系列中,可以校正多达5字节的错误。

接着,参照图5和6说明记录段的结构。

在由208行×182列组成的ECC块中,由纠错码PO构成的16行 一行一行地分立。按192行数据段中每12行的间隔一个一个地插入这些 分立的行,从而产生图6中示出的重新排列形式。这称为PO的行插入。 这样,行插入之后的ECC块是由16组13行×182字节(=添加了PI 后的数据(12行)+PO(一行))组成的。

如图5中所示,一个记录段是由添加了PI后的数据(12行)+PO(一 行),即(13行×182字节)构成的,如图6中所示,行插入之后的ECC 块是由16个记录段组成的。

一个物理段是这样的,在13行×182字节的记录段(2366字节)中, 从行0开始,在每行中按91字节的间隔对头部添加一个同步(SYNC) 码并且一行一行地实施调制。通过向91字节的数据的头部添加该SYNC 码而得到的称为一个SYNC。这样,一个物理段由16组×2SYNC帧 组成。

现参照图7和8说明数据记录部件中的纠错码添加电路。

在图7中,顺序地把从主机发送的用户数据存储到缓冲存储器201 中。当从该缓冲存储器201读出时,由段信息添加装置202、EDC生成 和添加装置203以及杂乱装置204处理该被存储的用户数据。按2048字 节主数据的间隔实施该处理,从而把这些数据转换到一个数据段中。

段信息添加装置202对主数据添加4字节的标识数据(ID),2字节 的ID错误检测码(IED)和6字节的版权管理信息(CPR-MAI)。EDC 生成和添加装置为总共2060字节的数据生成并添加4字节的错误检测码 (EDC),从而生成总共含有2064字节的数据段。杂乱装置204混杂数 据段中的主数据。

顺序地把杂乱后的数据段存储到ECC存储器205中。在该ECC存 储器205中,形成172列×192行的数据块,即16个172字节×12行的 数据段的集合。PI生成和添加装置206以及PO生成和添加装置207对 该172列×192行的数据块生成并且添加纠错码,从而生成一个ECC块。

如前面所说明,该ECC块受到行插入并且然后发送到调制/同步添 加装置208。调制/同步添加装置208在该输入的行插入后的ECC块中把 8位的输入数据转换成16位的码字。即,实现8/16调制。然后,按输入 数据每91字节的间隔对头部添加一个SYNC码,从而形成一个物理段。 把所形成的物理段作为记录数据发送并且记录在媒体上。

现在说明纠错码的作用。

包括着错误检测和校正装置的数据再现系统再现记录数据。当再现 过程中再现的物理段里的数据出现错误时,该错误检测和校正装置利用 纠错码校正含有错误的ECC块中的错误。该错误检测和校正装置可以在 其校正能范围内不带任何错误地恢复原始EEC块。

现参照图8说明数据再现侧上的纠错码生成方法。在由同步分离/解 调装置221把从记录媒体读出的回放数据与同步码分离后,解调8/16调 制数据,以提取记录段,由于因盘的缺陷、记录或再现记录数据过程中 的噪声、抖动、串音等出现错误(回放信号错误),回放数据含有错误。

顺序地把读出的记录段存储到ECC存储器205中,从而构建由16 个记录段组成的带有182列×192行的ECC块进行错误校正,从而校正 回放信号中的校正错误。

PI校正装置223对ECC块的每行计算错误模式检测值出错位组。 若检测出错误,它进行错误校正。在无错误下回现原始数据时,出错位 组的值为0。当在记录或发送信号过程中出现错误时,出错位组取由错误 位置和错误模式确定的值,其中该错误位置指示出现错误的位置而该错 误模式表示该错误的状态。

PO校正装置222从存储器205读出该PO系列中的208字节的数据 并对数据执行特定运算。当作为该运算的结果出错位组不为0时,PO校 正装置222对该PO系列进行错误校正。在该错误校正处理中,16字节 的纠错码PO能校正该系列中多达8字节的错误。当要校正的数据受到错 误校正从而恢复生成纠错码时刻的数据时,出错位组取等于O的值。对 ECC块的全部182个列执行上述操作。

当一个PO系列中出现8字节或更长的错误时,PO校正装置222不 能校正错误。然而,在这种情况下,因为PI校正装置223可以校正PI 系列中多达5字节的错误,若对该182列进行PO校正时一个PI系列中 包含的错误的长度为5字节或更短,可以校正这些错误。

另外,重复进行PO校正和PI校正有可能校正一次PO校正和一次 PI校正不能校正的错误。当所有的出错位组都具有为0的值时,结束ECC 块的校正。

校正错误后的ECC块被发送到取消杂乱装置224。取消杂乱装置224 向杂乱数据段中2048字节长的主数据添加杂乱数据(或者用杂乱数据对 主数据进行“异”运算)来取消主数据的杂乱并把结果数据存储在缓冲 存储器201中。

EDC错误检测装置225根据数据段中包含的4字节错误检测码 (EDC)检测数据段中的错误。当检测出错误时,再次重现该数据段。 按顺序地把缓冲存储器201中存储的数据段发送到主机。

价格低容量大的DRAM(动态RAM)充当缓冲存储器205、201。 由于DRAM的结构,取决于该存储器的数据模式或安装状态,可能发生 破坏该存储器上数据(或出现存储错误)。在存储器上的部分数据已被破 坏(或已出现存储错误)并且已改变该数据块的情况下,当生成并添加 纠错码PI、PO时,纠错码PI、PO变成用于因存储错误而改变的数据的 正确纠错码。当把带有为该改变过的数据生成的纠错码的ECC块作为 ECC块存储并接着再现时,即使在再现后进行纠错处理,所再现的是该 改变过的数据。

现参照图9说明一个其中大小为172字节×192行的数据块36的一 部分出现存储错误并从而改变该数据块的情况。

首先,PO生成和添加装置9为172列的每一列生成并添加PO。但 是,用于列31的纠错码PO33(16字节)是在因存储错误32而发生改 变的数据的基础上生成的。

接着,PI生成和添加电路8为包含着纠错码PO的208行的每一行 生成并添加PI。为行34生成的纠错码PI36(10字节)是在因存储错误 32而改变的数据的基础上生成的。

另外,为16行的纠错码PO生成的纠错码PI37是在包含着根据因 存储错误32而改变的数据生成的纠错码PO33的数据的基础上生成的。

结果,对因存储错误32而改变的数据块添加适当的纠错码。此刻, 所有用于包含着错误32的208个行的PI系列的以及用于182个列的PO 系列的错误模式检测值出错位组的值都取0,其结果是不认为该ECC块 具有错误。然而,实际上,该ECC块中的原始数据已被存储错误32改 变。

这里,将讨论把基于改变过的数据块建立的ECC块记录到记录媒体 上并接着从该媒体再现该块下的回放数据。

利用纠错码对回放数据进行纠错处理。这里,在校正能力的范围内 校正再现数据中出现的错误,从而恢复回放数据。然而,不能校正记录 之前所包含的存储错误。也就是说,即使利用纠错码PO33校正PO系列 中的错误,从而再现包含着存储错误32的数据并正确地完成错误校正, 但这不可能恢复原始的用户数据。

如果存储错误出现在再现侧的缓冲存储器中的数据里,有可能把该 含有存储错误的数据发送到主机。

(本发明的发明点)

如上面所描述,当存储器上的数据被破坏时(或出现错误时),即使 基于因存储错误而改变的数据生成纠错码并且在再现操作中读出该数据 和进行纠错处理以把该数据记录到记录媒体上,尽管恢复被错误改变了 的数据,但不可能正确地恢复原始数据。

当存储器上的受到错误校正的数据被破坏(或出现错误)时,有可 能把有错的数据发送到主机。

为了防止存储器上的数据被破坏(或出现错误),必须用带有防止数 据受到破坏的结构的存储器,例如S-RAM等,实现用来存储数据的存储 器。但是,这种结构在价格上是不受欢迎的。

从而,本发明的一个目的是提供一种在存储器上出现错误的情况下 仍能不丢失原始数据地生成纠错码的方法和设备,以及提供使用该方法 和该设备的记录设备、再现设备、发送设备和接收设备。

(本发明的基本概念)

依据本发明的纠错码生成系统包括:段存储器(例如由SRAM构成), 用于生成并添加PI的PI生成和添加装置,用于存储添加了PI的数据的 缓冲存储器,用于生成并添加PO的PO生成和添加装置,行存储器(例 如由SRAM构成),用于实现PI校正的PI校正装置以及用于实现PO 校正的PO校正装置。该系统利用该段存储器对数据添加纠错码PI,把 添加了PI后的数据存储在该缓冲存储器中,在发送该添加了PI的数据 或把它记录在记录媒体之前利用该行存储器进行PI校正,从而能够修正 存储错误。

在再现侧的上述处理中,在把数据发送到主机之前再次进行该PI校 正,这使得能够校正存储错误。

此外,依据本发明的一种纠错码生成系统包括段存储器,PI生成和 添加装置,缓冲存储器,PO生成和添加装置,PI校正装置以及PO校正 装置。该系统利用该段存储器对数据添加纠错码PI以生成数据块(添加 了PI的数据),把该添加了PI的数据存储在缓冲存储器中,在发送该添 加了PI的数据或把它记录在记录媒体上之前利用该缓冲存储器进行PI 校正,从而能够校正存储错误。

另外,依据本发明的一种纠错码生成系统包括PI生成和添加装置, 缓冲存储器,PO生成和添加装置,行存储器,PI校正装置以及PO校正 装置。该系统利用要存储到该缓冲存储器的数据生成纠错码PI,生成对 该数据添加纠错码PI的数据块(添加了PI的数据),在该缓冲存储器中 存储该块,在从该缓冲存储器发送或记录该添加了PI的数据之前利用该 行存储器进行PI校正,从而能够校正存储错误。

并且,依据本发明的一种纠错码生成系统包括段存储器,PI生成和 添加装置,PO生成和添加装置,PI校正装置以及PO校正装置。该系统 利用该段存储器对数据添加纠错码PI以便生成数据块(添加了PI的数 据),在该缓冲存储器中存储该添加了PI的数据,从该缓冲存储器发送 或记录添加了PI的数据,接着在再现侧于把数据发送到主计算机之前对 该添加了PI的数据进行PI校正,从而能够校正存储错误。

以下,通过参照附图利用各具体实施例说明本发明的特征。

现参照图10说明依据本发明的第一实施例的数据记录设备中的纠错 码添加电路,在段存储器1中顺序地存储从主机发送的用户数据(主数 据)。此刻,段信息添加装置5对2048字节的主数据添加4字节的标识 数据(ID),2字节的ID错误检测码(IED)以及6字节的版权管理信息 (CPR-MAI)。EDC生成和添加装置6对包含着ID、IED、CPR-MAI 总共为2060字节的数据生成4字节的错误检测码并对该2060字节的数 据添加该错误检测码。杂乱装置7对2048字节长的主数据添加杂乱数据 (或者对主数据和杂乱数据进行“异”运算),从而生成杂乱后的数据段。

PI生成和添加装置8为段存储器1中存储的杂乱后的数据段(或数 据块)中的每行(172字节)生成纠错码PI(10字节)并对该行添加该 PI,从而生成182字节×12行的添加了PI的数据段(数据块)。

段存储器1具有存储添加了PI的数据段(182字节×12行)的容量 并且例如由SRAM(静态RAM)。SRAM具有很少使存储的数据出现错 误的结构,这确保利用段存储器1生成的纠错码PI是为不带有任何错误 的用户数据生成的正确的码。

在缓冲存储器2中顺序地存储来自段存储器1的添加了PI的数据(或 称为具有182字节×12行的数据块)。在该缓冲存储器2中,16个182 字节×12行的数据段(添加了PI的数据)汇集在一起以便构182字节× 192行的聚合的添加了PI的数据(或者聚合数据块)。

此时,PO生成和添加装置9为缓冲存储器2中存储的聚合数据块(182 字节×192行)中的每列(192字节)生成纠错码PO(16字节)并把该 PO添加到该列上。从而,为缓冲存储器2中存储的聚合数据块构建已经 添加了纠错码PI、PO的ECC块。

缓冲存储器工具有足够的保持多个ECC块的容量,以确保在记录在 记录媒体之前存储从主计算机发送的数据的功能,它例如由DRAM构成。 取决于DRAM的数据模式或安装状态,该存储器上的数据可能发生破坏 或者出现存储错误。然而,如后面说明那样,依据本发明的数据处理方 法除去这些存储错误。

一行一行地(以182字节为单位)读出缓冲存储器2中的ECC块并 存储在行存储器3中,PI校正装置10利用行存储器3进行PI校正,以 校正存储错误,这恢复原始数据(或正确的ECC块)。行存储器3例如 由SRAM构成并具有存储PI系列的一行(182字节)的容量。

顺序地把从行存储器3输出的行数据发送到调制/同步添加装置4, 后者进行8/16调制和同步码添加并把结果数据作为记录数据输出到记录 媒体。

图11示出在从缓冲存储器2输出的ECC块中的一部分数据出现错 误(例如前面提到的存储错误或由外部噪声引起的错误42)的情况。

在本发明中,在把数据存储到缓冲存储器中之前利用数据存储器1 生成纠错码PI。从而,对于包括着行45的所有192个行,纠错码PI都 是在原始数据的基础上生成的纠错码。即,纠错码PI是用于不带有错误 42的数据的纠错码。

另一方面,PO生成和添加装置9和缓冲存储器2一起基于每列(192 字节)中的数据生成纠错码PO。从而,用于列41的纠错码PO44(16 字节)是基于包含着存储错误42的数据而生成的纠错码。

乘积码(Product code)是区域48(用圆圈标志)中的用于纠错码 的纠错码,不论首先生成并添加码PI再接着生成并添加码PO还是首先 生成并添加码PO再接着生成并添加码PI,会得到相同的码模式。

此时,纠错码PI是出现错误之前对原始数据添加的正确纠错码。这 样,对纠错码PI块生成并添加纠错码PO是用于原始数据的正确纠错码。 另外,添加到图11中示出的172列中除列41之外的其它列(717)的纠 错码PO是正确的纠错码。

当从缓冲存储器2顺序地读这样的ECC块并在行存储器3进行PI 校正时,行45中的错误42容易地受到PI校正。即,恢复数据正确的行 45。另外,为含有错误42的数据生成PO系列中的每一行也受到PI校 正,从而恢复正确的PO系列。即,行46受到PI校正,从而校正字节43。 类似地,其它行(用三符号标志)也受到PI校正,从而生成正确的PO 系列。

在上面的处理中,在行存储器3对ECC块中的所有的行进行PI校 正。PI校正不受限于是这样的并且可以只对用矩形符号标记的位置处的 各行进行以便缩短处理时间。这是因为如果该图中矩形符号位置处的PO 系列是正确的纠错码,可以晚些时候轻易地校正存储错误42。

在上面的解释中,使用了一个未在聚合数据块中逐行地分布PO块 的ECC块。然而,在实际的ECC块中,如图1和6说明的那样,纠错 码PO逐行地分布在聚合数据块中。

图12示出再现装置,用于对通过上面的处理(图10的电路所实现 的处理)得到的和从记录媒体再现的ECC块进行纠错处理。

光学头从记录媒体读出的回放数据被引入到同步分离/解调装置11。 同步分离/解调装置11从回放数据检测同步并对受到8/16调制的数据解 调,从而产生记录段。由于因盘中的缺陷或者因把数据记录到记录媒体 中的或从记录媒体再现数据中的噪声在数据中出现错误,记录段中的数 据中可能包含错误。

读出的记录段顺序地存储在缓冲存储器2中并把16个记录段汇集在 一起,从而在缓冲存储器2中形成182列×208行的ECC块。PO校正 装置14和PI校正装置10使182列×208行的ECC块受到错误校正。

此时,实际上在进行PO校正前先对PO块进行PI校正处理。这是 因为,如果在PO块中出现存储错误,PI校正能够恢复正确的纠错码PO。

按数据发送的顺序从缓冲存储器2一行一行地(以182字节为单位) 读出校正过错误的ECC块并存储在段存储器1中。PI校正装置10利用 段存储器1对每行中的172字节进行PI校正。这是因为,当在缓冲存储 器2中进行PO校正时出现存储错误,对于校正这样的错误PI校正是有 效的。

接着,取消杂乱装置对杂乱数据段中的主数据(2048字节)和杂乱 数据乘以杂乱数据(或对这二个数据进行“异”运算),从而生成杂乱之 前的数据段,接着,EDC错误检测装置12利用该数据段中包含的4字节 错误检测码(EDC)检测该数据段中的错误。若检测出该数据段中不存 在错误,把该数据段发送到主机。

在上面的说明中,当数据从缓冲存储器2存储到段存储器1中时,PI 校正装置10进行PI校正。替代地,可以仅在利用EDC检测出错误时进 行PI校正。

另外,在每行的错误模式的检测值出错位组中,可能只计算一部分 的出错位组以检测错误,仅当判断出存在错误时进行PI校正。即,在利 用纠错码PI的纠错处理中,仅计算从纠错码PI得到的错误模式检测值 (P字节)中的一部分(R字节,R<P)并进行出错检测。仅当判断出 存在错误时才进行错误校正。

图13示出本发明的另一实施例。

该实施例是通过去掉图10的实施例中的行存储器3得到的。在图13 的实施例中,PI校正装置10利用缓冲存储器2进行PI校正。由于其余 配置和图10的实施例相同,省略说明。当出现存储错误时,由PO生成 和添加装置9生成的纠错码PO变成基于含有存储错误的数据而生成的纠 错码。对纠错码PO的所有行进行PI校正能把基于含有存储错误的数据 生成的纠错码恢复成基于原始数据生成的纠错码PO。

在该实施例中,由于PI校正后的ECC块存在于缓冲存储器2里, 存在着它包含着存储错误的可能。然而,纠错码PO被恢复成基于原始数 据生成的纠错码。这样,即使ECC块含有错误,通过PO校正会校正该 错误。

图14示出本发明的又一实施例。

段信息添加装置15把来自主计算机的用户数据按2048字节主数据 为单位转换成一个数据段。段信息添加装置15对主数据添加4字节的标 识数据(ID),2字节的ID错误检测码(IED)以及6字节的版权管理信 息(CPR-MAI)。EDC生成和添加装置16对总共为2060字节的数据生 成并添加4字节的错误检测码(EDC),从而生成总共含有2064字节的 数据段。杂乱装置17杂乱该数据段中的主数据。

顺序地把杂乱后的数据段存储到缓冲存储器2中。在缓冲存储器2 中,把16个172字节×12行的数据段汇集到一起以形成172列×192行 的数据块。

PI生成和添加装置18从杂乱装置17接收数据段,接着为每行数据 (172字节)生成10字节的纠错码PI,并把PI提供给缓冲存储器2。从 而在缓冲存储器2中构建182字节×192行的添加加了PI的块。此刻的 纠错码是基于原始数据生成的纠错码,由于其余部分和前面说明的实施 例相同,省略掉说明。

图15是和该纠错码生成电路对应的错误校正电路。

除了把缓冲存储器2的输出给行存储器3之外,该实施例几乎和图12 的实施例相同。PI校正装置10利用缓冲存储器2对至少包含PO的行进 行错误校正,以便纠错码PO变为正确的纠错码。接着,PO校正装置10 进行PO校正处理。PO校正处理后的数据按发送次序提供给行存储器3。 PI校正装置10利用行存储器3进行PI校正。这使得即使PO校正期间 在缓冲存储器中出现存储错误仍可在行存储器3上校正存储错误。

通过取消杂乱装置取消从行存储器3输的数据的杂乱,从而产生数 据段。通过EDC错误检测装置12该数据段受到错误检测。

图16示出本发明的再一个实施例。

该实施例是通过利用图13的实施例中缓冲存储器2省去PI校正装 置10得到的。其余部分和图13的实施例相同。在该实施例中,当再现 系统对缓冲存储器2中构建的ECC块进行错误校正时,在PO校正之前 PI校正装置10进行PI校正。

如上面所说明,本发明有效于一种信号发送/记录和再现设备,即使 存储器上发生错误其仍能不丢失原始数据地进行纠错码生成处理。另外, 本发明有效地应用于低价格的能在不丢失原始数据下把数据记录到记录 媒体上的信号发送/记录和再现设备,其通过简化对有故障存储器的检查 允许发生更多的存储错误来替代提高合格率。本发明还应用于数据通信 领域中发送/接收系统的各种设备。它们包括无线电部件,例如蜂窝电话、 计算机之间的发送/接收终端和电视发射机/接收机。在记录和再现系统 中,本发明可用于DVD机、CD机以及其它采用通信功能的存储设备等 等。

如前面已说明那样,依据本发明,有可能提供一种采用纠错码的甚 至当出现数据错误(存储错误)时仍能恢复原始数据的数据处理方法, 并提供采用该方法的记录或再现系统设备和采用该方法的发送和接收系 统。

本发明不受限于上述各实施例。以下说明本发明的其它实施例。

在图17中,通过段信息添加装置15把来自主计算机的用户数据按 2048字节为单位转换成数据段。

段信息添加装置15对主数据(含2048字节)添加4字节的标识数 据(ID)、二字节的ID错误检测码(IED)和6字节的版权管理信息 (CPR-MAI)。EDC生成和添加装置16包含着ID、IED和CPR-MAI 总共2060字节的数据生成4字节的纠错码,从而生成总共含2064字节 的数据段。杂乱装置17对主数据(2048字节)添加杂乱数据(或者对主 数据和杂乱数据进行“异”运算),从而对主数据进行杂乱。

PI生成和添加装置8对杂乱后的数据段(或数据块,172字×12行 =2064字节)的每一行(172字节)生成纠错码PI(10字节)。接着,通 过存储器控制装置20顺序地把生成的纠错码PI存储在缓冲存储器2中。 通过该存储器控制装置20还顺序地把对应的172字节×12行的数据存储 到缓冲存储器2中,从而生成182字节×12行的添加了PI的数据(数据 块)。继续这样的数据处理,以在缓冲存储器2中构建16个添加了纠错 码PI的数据块。即,在缓冲存储器2中,16个182字节×12行的数据 段(添加了PI的数据)汇集在一起,以构建182字节×192行的聚合的 添加了PI的数据(或聚合数据块)。

上面的处理中生成的纠错码PI是基于原始数据生成的正确的纠错 码。

PO生成和添加装置9为缓冲存储器2中存储的聚合数据块(182字 节×192行)的每一列(192字节)生成纠错码PO(16字节)。从而, 为缓冲存储器2中存储的聚合数据块构建添加了纠错码PI和PO的ECC 块。

缓冲存储器2具有足够的保持多个ECC块的容量,以确保在记录到 记录媒体上之前存储从主计算机发送的数据的功能,它例如由DRAM构 成。取决于该存储器的数据模式或安装状态,该存储器上的数据可能发 生破坏或者出现存储错误。当在该状态下生成纠错码PO时,该纠错码PO 变成基于含有存储错误的数据而生成的纠错码。

一行一行地读出缓冲存储器2中的ECC块(以182字节为单位)并 存入行存储器3。PI校正装置10利用行存储器3进行PI校正,从而校 正存储错误,这恢复原始数据(或正确的ECC块)。行存储器3例如由 SRAM(静态RAM)构成并具有存储PI系列的一行(182字节)的容 量。

顺序地把从行存储器3输出的行数据发送到调制/同步添加装置4, 装置4进行8/16调制和同步码添加并把结果数据作为记录数据输出到记 录媒体。

这里,再次参照图11说明上面的该实施例的作用。

图11示出从缓冲存储器2输的ECC块中的一部分数据出现错误(例 如前面提供的存储错误或者外部噪声造成的错误42)的情况。

在本发明中,在把数据存储到缓冲存储器2中之前利用数据存储器1 生成纠错码PI。从而,对于包括着行45的所有192个行,纠错码PI都 是在原始数据的基础上生成的纠错码。即,纠错码PI是用于不带有错误 42的数据的纠错码。

另一方面,PO生成和添加装置9和缓冲存储器2一起基于每列(192 字节)中的数据生成纠错码PO。从而,用于列41的纠错码PO44(16 字节)是基本包含着存储错误42的数据而生成的纠错码。

乘积码是区域48中的用于纠错码的纠错码,不论首先生成并添加码 PI再接着生成并添加码PO还是首先生成并添加码PO再接着生成并添 加码PI,会得到相同的码模式。

此时,纠错码PI是出现错误之前对原始数据添加的正确纠错码。这 样,对纠错码PI块生成并添加的纠错码PO是用于原始数据的正确纠错 码。另外,添加到图11中示出的172列中除列41之外的其它列(171) 的纠错码PO是正确的纠错码。

当从缓冲存储器2顺序地读这样的ECC块并在行存储器3进行PI 校正时,行45中的错误42容易地受到PI校正。即,恢复数据正确的行 45。另外,为含有错误42的数据生成的PO系列中的每一行也受到PI 校正,从而恢复正确的PO系列。即,行46受到PI校正,从而校正字 节43。类似地,其它行(用三角符号标志)也受到PI校正,从而生成正 确的PO系列。

在上面的处理中,利用行存储器3对ECC块中的所有的行进行PI 校正。PI校正不受限于是这样的并且可以只对用矩形符号标记的位置处 的各行进行以便缩短处理时间。这是因为如果该图中矩形符号位置处的 PO系列是正确的纠错码,可以晚些时候轻易地校正存储错误42。

在上面的解释中,使用了一个未在聚合数据块中逐行地分布PO块 的ECC块。然而,在实际的ECC块中,如图1和6说明的那样,纠错 码PO逐行地分布在聚合数据块中。即,纠错码PO是按为12行的聚合 数据块存在一行纠错码PO的方式分布的。

后面说明图17的再现系统。

现说明存储器控制装置20的功能。存储器控制装置20接收从PI生 成和添加装置8、同步分离/解调装置11、PO生成和添加装置9、PO校 正装置9、PI校正装置10以及行存储器3存储或读数据的请求。根据请 求,存储器控制装置20把数据写入缓冲存储器2或从缓冲存储器2读出 数据。在这种情况下,存储器控制装置20控制数据存储位置,从而不使 用缓冲存储器2的有缺陷的存储区。

假定PI校正装置10请求存储器控制装置20读数据并把一行数据存 储到行存储器3中。接着,还假定PI校正装置10对行存储器3中的数 据进行错误校正。此刻,若检测出错误,PI校正装置把有关错误的位置 的信息发送到存储器控制装置20。

存储器控制装置20在出错地址寄存器21中存储该处存储过含有错 误的数据的地址。在出错地址寄存器21中,当同一地址出现多次错误时, 还记录该错误发生的次数。例如,当同一地址处二次出现存储错误时, 存储器控制装置20把该地址判断为一个有缺陷的地址。接着,存储器控 制装置20在有缺陷地址寄存器22中登记有缺陷地址的信息。在有缺陷 地址寄存器22中登记有缺陷地址信息的准则可以是三次重复或者更多次 的重复。

有缺陷地址寄存器22中登记的有缺陷地址信息由数据写地址和读地 址控制部分23查阅,后者防止使用有缺陷的地址。

例如,假定当从地址A开始存储图18A的ECC块中的数据列(BO, O)至(B207,181)时,地址(A+J)已在该有缺陷地址寄存器中登记。 则跳过地址(A+J)把(BO,J)存储在地址(A+J+1)处。此刻,可以 把(BO,J)存储在一预先准备的替代区中。另外,不仅可以按字节也 可以按行管理有缺陷的存储区。

下面说明PI校正失败(或不可能进行)时的数据再现。

当一个行中出现6个或更多的存储错误时,不可能实现PI校正。当 一个ECC块中的数据发生6个或更多的存储错误时,PO(16行)的PI 校正会失败。

当检测出PI校正处理中错误数量超过可校正的错误数量时,改变正 使用的存储区并且重新进行处理。在重新处理中,请求主计算机再次发 送数据。接着,通过存储器控制装置20把添加了纠错码的数据存储在缓 冲存储器20中。在此情况下,该正使用存储区是替代出现了错误的错误 区或者一个和该错误区不同的空白区。

当存储纠错码PO的区域中每行的错误数量超过可校正错误数量时, 通过下面的方法重新进行处理。

在进行重新处理中,存储在缓冲存储器2中第一存储区里的192行 ×182字节的聚合数据块(含有纠错码PI)被移到缓冲存储器2中的第 二存储区中。在每行受到PI校正处理后,利用缓冲存储器2中的第二存 储区再次进行PO生成和添加处理。在该情况下,可以在系统内部完成重 新处理,不必请求主计算机再次发送数据。

图19帮助说明缓冲存储器2上数据的移动。

数据移动装置24把从AO开始存储的ECC块(n)移动到以地址A3 作为其开头的空白区。在该情况中,被移动的数据包含地址AO区中含 有的存储错误。在每行上进行PI校正造成校正这些存储错误。利用受过 PI校正处理的数据进行PO生成和添加处理。

现利用图17说明数据再现中的操作。

光学头从记录媒体读出的回放数据被引入到同步分离/解调装置11。 同步分离/解调装置11从回放数据检测同步并对受到8/16调制的数据解 调,从而产生记录段。由于因盘中的缺陷或者因把数据记录到记录媒体 中的或从记录媒体再现数据中的噪声在数据中出现错误,记录段中的数 据中可能包含错误。

通过存储装置20把读出的记录段顺序地存储在缓冲存储器2中并把 16个记录段汇集在一起,从而在缓冲存储器2中形成182列×208行的 ECC块。PO校正装置14和PI校正装置10使182列×208行的ECC 块受到错误校正。

按数据发送的顺序从缓冲存储器2一行一行地(以172字节为单位) 读校正过错误的ECC块并存储在行存储器3中。PI校正装置10利用行 存储器3对每行中的172字节进行校正。结果是,即使在缓冲存储器2 中的杂乱后的数据段中出现存储错误,会通过该PI校正校正错误。

接着,取消杂乱装置对杂乱后的数据段中的主数据(2048字节)和 杂乱数据乘以杂乱数据(或对这二个数据进行“异”运算),从而生成杂 乱之前的数据段。接着,EDC错误检测装置12利用该数据段中包含的4 字节错误检测码(EDC)检测该数据段中的错误。若检测出该数据段中 不存在错误,把该数据段发送到主机。

如上面所说明,本发明可用于一种信号发送/记录和再现设备,即使 存储器上发生错误其仍能不丢失原始数据地进行到错码生成处理。另外, 本发明有效地应用于低价格的能在不丢失原始数据下把数据记录到记录 媒体上的信号发送/记录和再现设备,其通过对有故障存储器的检查允许 发生更多的存储错误来替代提高合格率。本发明还应用于数字通信领域 中发送/接收系统的各种设备。它们包括无线电部件,例如蜂窝电话、计 算机之间的发送/接收终端和电视发射机/接收机。在记录和再现系统中, 本发明有效于DVD机、CD机以及其它采用通信功能的存储设备等等。

如前面已说明那样,依据本发明,有可能提供一种采用纠错码的甚 至当出现数据错误(存储错误)时仍能恢复原始数据的数据处理方法, 并提供采用该方法的记录或再现系统以及采用该方法的发送和接收系 统。

QQ群二维码
意见反馈