CN1971525A - 错误校正装置、错误校正程序和错误校正方法 - Google Patents
错误校正装置、错误校正程序和错误校正方法 Download PDFInfo
- Publication number
- CN1971525A CN1971525A CNA2006101467789A CN200610146778A CN1971525A CN 1971525 A CN1971525 A CN 1971525A CN A2006101467789 A CNA2006101467789 A CN A2006101467789A CN 200610146778 A CN200610146778 A CN 200610146778A CN 1971525 A CN1971525 A CN 1971525A
- Authority
- CN
- China
- Prior art keywords
- syndrome
- error
- wiping
- erasure
- produces
- 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
- 238000012937 correction Methods 0.000 title claims abstract description 88
- 238000000034 method Methods 0.000 title claims abstract description 33
- 208000011580 syndromic disease Diseases 0.000 claims abstract description 128
- 238000011084 recovery Methods 0.000 claims description 29
- 238000011156 evaluation Methods 0.000 claims description 28
- 230000001915 proofreading effect Effects 0.000 claims description 24
- 238000012545 processing Methods 0.000 abstract description 11
- 101100247631 Metacordyceps chlamydosporia rdc2 gene Proteins 0.000 abstract 1
- 230000014509 gene expression Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 4
- 238000013500 data storage Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000004321 preservation Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/18—Error detection or correction; Testing, e.g. of drop-outs
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
- H03M13/1525—Determination and particular use of error location polynomials
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
- H03M13/154—Error and erasure correction, e.g. by using the error and erasure locator or Forney polynomial
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
- H03M13/1545—Determination of error locations, e.g. Chien search or other methods or arrangements for the determination of the roots of the error locator polynomial
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/65—Purpose and implementation aspects
- H03M13/6569—Implementation on processors, e.g. DSPs, or software implementations
Landscapes
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Engineering & Computer Science (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Signal Processing (AREA)
- Error Detection And Correction (AREA)
- Detection And Correction Of Errors (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
本发明提供了错误校正装置、程序和方法。它们通过适当而有效地使用软件和硬件来减少对接收字中涉及擦除的错误的校正处理所需的处理时间。在对不涉及擦除的错误进行校正的错误校正电路(3a)从RDC(2)接收到涉及擦除的接收字时,擦除信息保存部分(3a1)保存擦除信息,而校正子产生部分(3a2)根据接收字产生校正子,从而擦除判定部分(3a3)将擦除信息和校正子发送到MPU(4)。在MPU(4)中,擦除错误值计算部分(4a3)和擦除校正部分(4a4)仅校正擦除,并将不涉及擦除的接收字存储在RAM(3b)中。经由数据总线(6)和开关(5)再次将来自RAM(3b)的接收字输入至对不涉及擦除的错误进行校正的错误校正电路(3a)。擦除判定部分(3a3)判定该接收字为不涉及擦除的接收字,并使Chien搜索部分(3a5)和错误校正部分(3a6)校正错误。
Description
技术领域
本发明涉及一种用于对在所接收的数据中出现的一个或更多个错误进行校正的错误校正装置、错误校正程序以及错误校正方法。
背景技术
在设备之间交换的数据由于噪音与数据混合而可能变成错误数据。因此,通过错误校正码来校正错误。通过错误校正装置进行的错误校正可分为涉及擦除(erasure)的错误校正以及不涉及任何擦除的错误校正。
下面将以磁盘驱动器中的错误校正装置作为错误校正装置的示例来进行描述。擦除信息包括与TA(热粗糙峰(thermal asperity):由于温度而产生的错误信号)相关的信息、来自RDC(读取通道)的非法编码以及从MPU(微处理单元)给出的信息。在错误校正操作开始前给出擦除信息,并且在涉及擦除时,MPU等的软件干预错误校正操作。在错误校正操作中,如果错误校正代码在不涉及擦除时能够最多校正t个错误,则在涉及擦除时其能够最多校正t×2个错误。
首先,将描述不涉及擦除的错误校正。附图中的图4是针对不涉及擦除的错误的公知错误校正装置及该装置的操作流程的概念性示意图。如图4所示,通过针对不涉及擦除的错误的错误校正装置,RDC 22通过将来自数据存储盘21的模拟信号转换为10位的数字信号而产生接收字。此外,RDC 22将该接收字输入至针对不涉及硬盘控制器23的擦除的错误的错误校正电路23a,以进行错误校正。注意,针对不涉及擦除的错误的错误校正电路23a是由硬件构成的。
针对不涉及擦除的错误的错误校正电路23a按照以下顺序进行错误校正操作。首先,针对不涉及擦除的错误的错误校正电路23a产生校正子(syndrome)(步骤S21),该校正子根据从RDC 22接收的接收字给出错误校正的线索。然后,针对不涉及擦除的错误的错误校正电路23a根据所产生的校正子进行错误位置多项式以及错误评价多项式的计算(步骤S22)。此后,针对不涉及擦除的错误的错误校正电路23a利用包括错误位置多项式和错误评价多项式在内的两个多项式通过Chien搜索来计算地确定错误位置和错误值(步骤S23)。
然后,针对不涉及擦除的错误的错误校正电路23a根据计算确定的错误位置和错误值对接收字进行错误校正操作,并将操作的结果写入RAM(随机存取存储器)23b(步骤S24)。以上步骤S21至S24的所有操作通过硬件来执行。由于错误校正处理是通过硬件来执行的,所以错误校正所需的处理时间较短。
现在将在下面描述对涉及擦除的错误的校正。附图中的图5是针对涉及擦除的错误的公知错误校正装置及该装置的操作流程的概念性示意图。如图5所示,RDC 22使用针对涉及擦除的错误的错误校正装置,通过将来自数据存储盘21的模拟信号转换为10位的数字信号而产生接收字,同时,RDC 22检测接收字中的擦除从而产生擦除信息。然后,RDC22将所述接收字以及所述擦除信息输入到针对涉及硬盘控制器23的擦除的错误的错误校正电路23a中。图5所示的针对涉及擦除的错误的错误校正装置中采用与图4所示的针对不涉及擦除的错误的错误校正装置的针对不涉及擦除的错误的错误校正电路23a相同的电路。
在图5所示的针对涉及擦除的错误的错误校正装置中,当针对不涉及硬盘控制器23的擦除的错误的错误校正电路23a从RDC 22接收到擦除信息和接收字,并且产生校正子并保存擦除信息(步骤S31)时,该错误校正电路23a不具有以下功能特征:执行错误位置多项式和错误评价多项式的计算的步骤(对应于图4中的步骤S22)、通过Chien搜索来计算地确定错误位置和错误值的步骤(对应于图4中的步骤S23)以及对接收字进行错误校正操作的步骤(对应于图4中的步骤S24)。由于在通过硬件来执行对涉及擦除的错误的校正的情况下,涉及擦除的错误的校正需要非常大的电路,所以需要提供MPU 24,该MPU 24专用于执行仅为如图5所示的对涉及擦除的错误进行校正的错误校正处理而设计的程序。
因此,由针对涉及擦除的错误的错误校正装置对涉及擦除的错误进行校正的操作将按照以下顺序进行。首先,如上所述,针对不涉及硬盘控制器23的擦除的错误的错误校正电路23a从RDC 22接收擦除信息和接收字并保存擦除信息(步骤S31)。然后,专用于对不涉及擦除的错误进行校正的错误校正处理的MPU 24从针对不涉及擦除的错误的错误校正电路23a获取校正子和擦除信息(步骤S32),并根据所述校正子和所述擦除信息执行错误位置多项式和错误评价多项式的计算(步骤S33)。此外,MPU 24利用包括错误位置多项式和错误评价多项式在内的两个多项式,通过Chien搜索来计算确定涉及擦除的错误的错误位置和错误值(步骤S34)。然后,MPU 24对接收字执行错误校正操作,并将操作的结果写入RAM 13b中(步骤S35)。注意,步骤S34(通过Chien搜索来计算地确定错误位置和错误值)以及步骤S35(校正错误)不对涉及擦除的错误和其它错误进行区分,从而适用于所有的错误。
对于涉及擦除的错误的校正,针对不涉及擦除的错误的错误校正电路23a(其为硬件)仅负责产生校正子和保存擦除信息的步骤S31,而MPU 24(其为软件)负责从获取校正子和擦除信息的步骤S32至执行错误校正操作的步骤S35的步骤。这样,硬件和软件共同负责涉及擦除的错误的校正。
与本发明相关的现有技术包括在专利文献1[日本专利申请特开第2001-101020号公报(参见0137段至0138段以及图1)]中公开的技术。通过所公开的技术,通过利用MPU来校正所擦除数据的错误,可以高速执行对涉及擦除的错误进行校正的错误校正操作,同时使硬件的电路大小的增加最小。
然而,对于涉及擦除的错误的校正,当MPU 24(其为软件)在图5的步骤S34中通过Chien搜索来校正涉及擦除的错误时,MPU 24必须检查可能产生错误的所有数据位置来察看各个错误位置是否实际为错误位置。该检查操作需要较长的处理时间。换言之,因为通过软件对所有的数据位置进行Chien搜索操作(类似于循环事件),从而需要较长时间来执行Chien搜索操作和计算确定包括涉及擦除的错误在内的所有错误位置和所有错误值。结果,对涉及擦除的错误进行校正的处理需要较长的处理时间。
发明内容
鉴于上述问题,因此,本发明的目的在于提供一种错误校正装置、错误校正程序以及错误校正方法,其可以通过适当而有效地使用软件和硬件来减少对接收字中涉及擦除的错误进行校正处理所需的处理时间。
在本发明的一方面中,通过提供一种错误校正装置来实现上述目标,该错误校正装置用于根据其获取的码字和擦除信息来校正码字的错误,所述错误校正装置包括:擦除判定部分,其执行用于根据所述擦除信息来判定所述码字是否涉及擦除的软件;校正子产生部分,其为用于为所述码字产生校正子的硬件;擦除校正部分,其为软件,该软件在所述擦除判定部分判定所述码字涉及擦除时根据所述擦除信息以及所述校正子产生部分产生的校正子来针对擦除校正所述码字,并使所述校正子产生部分产生用于针对擦除进行了校正的码字的校正子;以及无擦除(erasure-free)错误校正部分,其为用于根据所述校正子产生部分产生的所述校正子对不涉及擦除的错误进行校正的硬件。
在根据本发明的错误校正装置中,优选的是,在所述擦除判定部分判定所述码字不涉及擦除时,所述校正子产生部分为所获取的码字产生校正子,并将结果发送到所述无擦除错误校正部分,而在所述擦除判定部分判定所述码字涉及擦除时,所述校正子产生部分首先为所获取的码字产生校正子,并将结果发送到所述擦除校正部分,并且还为所述擦除校正部分校正过的码字产生校正子,并将结果发送到所述无擦除错误校正部分。
在根据本发明的错误校正装置中,优选的是,所述无擦除错误校正部分根据所述校正子产生部分产生的校正子进行错误位置多项式和错误评价多项式的计算以及Chien搜索。
在根据本发明的错误校正装置中,优选的是,所述擦除校正部分根据所述擦除信息以及所述校正子产生部分产生的校正子进行错误位置多项式和错误评价多项式的计算。
在本发明的另一方面中,提供了一种错误校正程序,该错误校正程序用于使计算机根据其获取的码字和擦除信息对所述码字的错误进行校正,所述错误校正程序包括:校正子产生步骤,其使得用于产生校正子的硬件为所述码字产生校正子;擦除判定步骤,其根据所述擦除信息判定所述码字是否涉及擦除;擦除校正步骤,其在所述擦除判定步骤判定所述码字涉及擦除时根据所述擦除信息和根据所述码字产生的所述校正子来校正擦除;擦除校正后校正子产生步骤,其使所述用于产生校正子的硬件为所述擦除校正步骤校正过的所述码字产生校正子;以及擦除校正后错误校正步骤,其使得用于对不涉及擦除的错误进行校正的硬件根据所述擦除校正后校正子产生步骤产生的校正子对所述擦除校正步骤校正过的码字的错误进行校正。
优选的是,根据本发明的错误校正程序还包括:无擦除错误校正步骤,其在所述擦除判定步骤判定所述码字不涉及擦除时,使所述用于对不涉及擦除的错误进行校正的硬件根据所述校正子产生步骤产生的所述校正子对所述码字的错误进行校正。
优选的是,在根据本发明的错误校正程序中,所述用于对不涉及擦除的错误进行校正的硬件在所述擦除校正后错误校正步骤中根据所述校正子产生步骤产生的所述校正子进行错误位置多项式和错误评价多项式的计算以及Chien搜索。
优选的是,在根据本发明的错误校正程序中,所述用于对不涉及擦除的错误进行校正的硬件在所述无擦除错误校正步骤中根据所述校正子产生步骤或所述校正子重新产生步骤产生的校正子进行错误位置多项式和错误评价多项式的计算以及Chien搜索。
优选的是,在根据本发明的错误校正程序中,所述擦除校正步骤根据所述擦除信息和由所述校正子产生步骤产生的校正子进行错误位置多项式和错误评价多项式的计算。
在本发明的另一方面中,提供了一种错误校正方法,该错误校正方法用于根据其获取的码字和擦除信息对所述码字的错误进行校正,所述错误校正方法包括:校正子产生步骤,其使得用于产生校正子的硬件为所述码字产生校正子;擦除判定步骤,其根据所述擦除信息判定所述码字是否涉及擦除;擦除校正步骤,其在所述擦除判定步骤判定所述码字涉及擦除时基于所述擦除信息和根据所述码字产生的校正子来校正擦除;擦除校正后校正子产生步骤,其使所述用于产生校正子的硬件为所述擦除校正步骤校正过的所述码字产生校正子;以及擦除校正后错误校正步骤,其使得用于对不涉及擦除的错误进行校正的硬件根据所述擦除校正后校正子产生步骤产生的校正子对所述擦除校正步骤校正过的码字的错误进行校正。
优选的是,根据本发明的错误校正方法还包括:无擦除错误校正步骤,该无擦除错误校正步骤在所述擦除判定步骤判定所述码字不涉及擦除时,使所述用于对不涉及擦除的错误进行校正的硬件根据所述校正子产生步骤产生的所述校正子对所述码字的错误进行校正。
优选的是,在根据本发明的错误校正方法中,所述用于对不涉及擦除的错误进行校正的硬件在所述擦除校正后错误校正步骤中根据所述校正子产生步骤产生的所述校正子进行错误位置多项式和错误评价多项式的计算以及Chien搜索。
优选的是,在根据本发明的错误校正方法中,所述用于对不涉及擦除的错误进行校正的硬件在所述无擦除错误校正步骤中根据所述校正子产生步骤或所述校正子重新产生步骤产生的所述校正子进行错误位置多项式和错误评价多项式的计算以及Chien搜索。
优选的是,在根据本发明的错误校正方法中,所述擦除校正步骤根据所述擦除信息和由所述校正子产生步骤产生的所述校正子进行错误位置多项式和错误评价多项式的计算。
因此,根据本发明,可以在将错误校正电路的电路大小保持为现有技术的水平的同时,减少对涉及擦除的错误进行校正处理所需的处理时间。
附图说明
图1为根据本发明的错误校正装置的实施例的示意性框图,示出了该错误校正装置的结构;
图2为图1的错误校正装置的实施例的结构和操作流程的示意性概念图;
图3为作为示例示出的由图1的错误校正装置的实施例进行校正的数据的示意性概念图;
图4为现有技术的用于校正不涉及擦除的错误的错误校正装置的结构和操作流程的示意性概念图;以及
图5为现有技术的用于校正涉及擦除的错误的错误校正装置的结构和操作流程的示意性概念图。
具体实施方式
现在,将参照附图在下面描述根据本发明的错误校正装置的实施例。首先,将概述根据本发明的错误校正装置。在对涉及擦除的接收字(码字)的错误进行校正时,根据本发明的错误校正装置通过软件执行与擦除相关的计算以及校正擦除的操作,并通过硬件执行针对不涉及擦除的错误的计算以及校正错误的操作。换言之,其通过适当并有效地利用软件和硬件来校正涉及擦除的错误。通过这样的设置,因为硬件负责对错误数据的Chien搜索,从而可以显著地减少软件对涉及擦除的错误进行校正所需的处理时间。
现在,将更加详细地描述根据本发明的错误校正装置的优选实施例。图1为根据本发明的错误校正装置的实施例的示意性框图,示出了该错误校正装置的结构。参照图1,根据本发明的错误校正装置的实施例包括数据存储盘1、RDC(读取通道)2以及硬盘控制器3。硬盘控制器3进而包括用于对不涉及擦除的错误进行校正的错误校正电路3a、RAM 3b、MPU 4、开关(switch)5以及专用于本发明的数据总线6。
用于对不涉及擦除的错误进行校正的错误校正电路3a进而具有用于保存与接收字有关的擦除信息的擦除信息保存部分3a1、用于产生并保存接收字的校正子的校正子产生部分3a2、用于根据擦除信息判定接收字中是否涉及擦除的擦除判定部分3a3、用于计算错误位置多项式和错误评价多项式的多项式计算部分3a4、用于通过Chien搜索来检索错误位置并计算错误值的Chien搜索部分3a5、以及用于根据检索错误位置和计算错误值的结果来校正RAM 3b的错误的错误校正部分3a6。
用于对不涉及擦除的错误进行校正的错误校正电路3a在校正不涉及擦除的错误时通过利用上述所有的装置3a1至3a6进行错误校正。然而,在其校正涉及擦除的错误时,其不利用多项式计算部分3a4、Chien搜索部分3a5以及错误校正部分3a6的功能,而是从用于校正不涉及擦除的错误的错误校正电路3a将擦除信息和校正子发送到MPU 4。然后,MPU4根据擦除信息和校正子只对擦除进行校正。然后,MPU 4将校正的结果存储在RAM 3b中,并将该结果作为不涉及擦除的接收字转发至错误校正电路3a。结果,用于对不涉及擦除的错误进行校正的错误校正电路3a可以将该校正的结果作为不涉及擦除的接收字进行处理,并通过利用多项式计算部分3a4、Chien搜索部分3a5以及错误校正部分3a6的功能来执行错误校正处理。
因此,RAM 3b存储可从MPU 4和用于对不涉及擦除的错误进行校正的错误校正电路3a获取的接收字。此外,RAM 3b和开关5通过数据总线6相连接,从而将不涉及擦除且从RAM 3b输出的接收字发送到开关5。
开关5具有这样的功能,即,从经由RDC 2从数据存储盘1发送的接收字适当地切换为不涉及擦除的且从RAM 3b转发的接收字,或者相反,并将所选择的一个接收字发送到用于对不涉及擦除的错误进行校正的错误校正电路3a的校正子产生部分3a2。
MPU 4具有从用于对不涉及擦除的错误进行校正的错误校正电路3a获取校正子和擦除信息的功能、校正擦除并从RAM 3b读取数据以及将数据写入RAM 3b的功能。更具体地说,MPU 4包括:擦除信息/校正子获取部分4a1,其用于从对不涉及擦除的错误进行校正的错误校正电路3a获取与接收字相关的校正子和擦除信息;MPU多项式计算部分4a2,其用于根据校正子和擦除信息计算错误位置多项式和错误评价多项式;擦除错误值计算部分4a3,其用于根据错误位置多项式和错误评价多项式的计算结果来计算擦除的错误值;以及擦除校正部分4a4,其用于校正RAM 3b的擦除。
现在,将参照根据本发明的错误校正装置的实施例的流程图对其操作进行描述。图2为本发明的错误校正装置的结构和操作流程的示意性概念图。注意,因为对涉及擦除的错误进行校正的处理是在图1的错误校正装置的组件上执行的,所以按照相关的组件绘出图2的流程图,从而可以容易地理解该流程图。
对涉及擦除的错误进行校正的处理包括将由硬件执行的部分以及将由软件执行的部分,因而该处理依照以下描述的顺序。首先,用于对不涉及擦除的错误进行校正的错误校正电路3a保存与从RDC 2发送的接收字有关的擦除信息(步骤S1)。此外,用于对不涉及擦除的错误进行校正的错误校正电路3a接收经由开关5从RDC 2发送的接收字,并产生其保存的校正子(步骤S2)。
然后,用于对不涉及擦除的错误进行校正的错误校正电路3a根据擦除信息确定它是否在对涉及擦除的错误进行校正(步骤S3),如果它确定其不是对涉及擦除的错误进行校正(步骤S3,否),则它计算错误位置多项式和错误评价多项式(步骤S4),并通过Chien搜索来计算地确定错误位置和错误值(步骤S5)。此后,它存储作为对RAM 3b的错误位置和错误值的计算结果而获得的错误校正数据。
另一方面,如果错误校正电路3a在步骤S3中确定它对涉及擦除的错误进行校正(步骤S3,是)(这意味着,接收到的接收字伴随有擦除信息,或者添加了来自MPU 4的擦除信息以用于错误校正),则作为软件的MPU 4从作为硬件的用于对不涉及擦除的错误进行校正的错误校正电路3a获取校正子和与接收字有关的擦除信息(步骤S7),并根据所述擦除信息和所述校正子来计算错误位置多项式和错误评价多项式(步骤S8)。
此外,MPU 4根据错误位置多项式和错误评价多项式的计算结果以及所述擦除来计算擦除的错误值。使得需要计算的擦除的错误值的数量不小于从错误总数减去可通过硬件(用于对不涉及擦除的错误进行校正的错误校正电路3a)修正的数量
t而得到的差值(步骤S9)。然后,MPU4利用在步骤S9中确定的擦除值以及存储在RAM 3b中的用于这些擦除错误的数据对接收到的数据进行校正(步骤S10)。
然后,MPU 4通过数据总线6将存储在RAM 3b中的接收字(针对擦除错误对其进行了校正)发送到开关5。然而,开关5进行切换操作,将所述接收字(针对擦除错误对其进行了校正)从RAM 3b发送到错误校正电路3a,以校正不涉及擦除的错误。结果,用于对不涉及擦除的错误进行校正的错误校正电路3a针对接收到的数据(即对擦除错误进行了校正的接收字)校正不涉及擦除的错误。
这样,通过从RAM 3b接收不涉及擦除的接收字,用于对不涉及擦除的错误进行校正的错误校正电路3a在步骤S3中确定其校正了不涉及擦除的错误(步骤S3,否)。这样,如同在从RDC 2接收该接收字并且该接收字不涉及擦除的情况下的那样,用于对不涉及擦除的错误进行校正的错误校正电路3a计算错误位置多项式和错误评价多项式(步骤S4),并且还通过Chien搜索来计算地确定错误位置和错误值(步骤S5)。此后,其根据针对RAM 3b的错误位置和错误值的计算结果来校正RAM 3b的错误(步骤S6)。
换言之,为了对涉及擦除的错误进行校正,MPU 4只校正擦除,并且经由RAM 3b和数据总线6将接收字转发到用于对不涉及擦除的错误进行校正的错误校正电路3a,从而对其进行处理以校正不涉及擦除的错误。
因此,使得MPU 4(软件)仅负责校正擦除,而使得错误校正电路3a(硬件)负责校正不涉及擦除的错误。通过这种设置,用于对涉及擦除的错误进行校正的错误校正电路3a完全负责Chien搜索,从而Chien搜索以及对涉及擦除的错误进行校正需要花费的时间减少了。
图3为作为示例示出的由图1的错误校正装置的实施例进行校正的数据的示意性概念图。数据的概念图示出了如何通过3位的错误校正能力来针对不涉及擦除的错误对数据进行校正。
参照图3,在从RDC 2发送正确数据11时,将包含位于数据位置4、6、10和11处的四个错误数据的接收字12输入到用于对不涉及擦除的错误进行校正的错误校正电路3a中。此外,擦除信息13也被输入到用于对不涉及擦除的错误进行校正的错误校正电路3a中。擦除信息13中的“1”表示擦除。在所示实施例中,位于数据位置10和11处的数据被擦除。
因此,MPU 4仅校正擦除,并且仅针对擦除进行了校正的数据14实际上仅对数据位置10和11处的数据进行了校正。换言之,数据位置4和6处的两个数据仍为错误数据。然后从MPU 4将仅针对擦除进行了校正的数据14存储在RAM 3b中。然后,通过数据总线6和开关5将仅针对擦除校正了的数据14从RAM 3b发送到用于对不涉及擦除的错误进行校正的错误校正电路3a中。
因此,用于对不涉及擦除的错误进行校正的错误校正电路3a对只针对擦除进行了校正的数据14(其不涉及擦除)进行校正,并将对位于数据位置4和6处的两个数据进行了校正的针对错误进行了校正的数据15存储在RAM 3b中。因为用于对不涉及擦除的错误进行校正的错误校正电路3a的错误校正能力为3位,所以用于对不涉及擦除的错误进行校正的错误校正电路3a可以校正仅针对擦除进行了校正的数据14(其为2位数据),并输出该错误校正操作的结果作为针对错误进行了校正的数据15。这样,针对错误进行了校正的数据15显然与正确数据11相同。
在根据本发明的错误校正装置中,硬件(用于对不涉及擦除的错误进行校正的错误校正电路)接收回由软件(MPU)针对擦除进行了校正的数据以校正错误。换言之,该软件(MPU)不进行用于对涉及擦除的错误进行校正的Chien搜索,而是根据擦除信息来计算擦除值,并校正擦除。然后,它将数据转换为不涉及擦除的错误数据,并且随后该硬件(用于对不涉及擦除的错误进行校正的错误校正电路)通过Chien搜索而获取错误位置,并计算地确定错误值。通过这种设置,该软件(MPU)不进行任何Chien搜索,从而显著减少了错误校正时间。
这样,通过根据本发明的错误校正装置,可以在将错误校正电路的电路大小保持为现有技术的水平的同时,减少对涉及擦除的错误进行校正处理所需的时间。更具体地说,如果码长为N,并且用于码字的错误校正能力为
t,则搜索错误的处理所需的时间可以减少为现有技术的软件所需时间的t/N倍。
尽管以上针对磁盘装置描述了根据本发明的错误校正装置的优选实施例,但本发明绝不限于此,本发明可应用于任何类型的信息设备或通信设备所用的错误校正装置。
此外,根据本发明,提供了一种使作为错误校正装置运行的计算机执行上述步骤的错误校正程序。这种错误校正程序在存储在计算机可读记录介质中时可由作为错误校正装置运行的计算机执行。用于本发明目的的计算机可读记录介质包括内部存储装置(诸如可以安装在计算机中的ROM和RAM)、便携式记录介质(诸如CD-ROM、软盘、DVD磁光盘和IC卡)、用于保存计算机程序的数据库、外部计算机及其数据库以及传输线路上的传输介质。
以下将描述权利要求中的组成元件与上述实施例中的组成元件之间的对应关系。权利要求1中的擦除判定部分与图1的实施例的用于对不涉及擦除的错误进行校正的错误校正电路3a的擦除判定部分3a3相对应,并且权利要求1中的校正子产生部分与图1的实施例的用于对不涉及擦除的错误进行校正的错误校正电路3a中所包含的校正子产生部分3a2相对应。权利要求1中的擦除校正部分与图1的实施例的MPU 4的擦除信息/校正子获取部分4a1、MPU多项式计算部分4a2、擦除错误值计算部分4a3以及擦除校正部分4a4相对应。权利要求1的用于校正错误的无擦除错误校正部分与图1的实施例的用于对不涉及擦除的错误进行校正的错误校正电路3a中所包含的多项式计算部分3a4、Chien搜索部分3a5以及错误校正部分3a6相对应。
权利要求3和权利要求5中的校正子产生步骤与步骤S2相对应,其中如图2所示,该实施例的用于对不涉及擦除的错误进行校正的错误校正电路3a产生/保存校正子,并且权利要求3和权利要求5中的擦除判定步骤与步骤S3相对应,其中,如图2所示,该实施例的用于对不涉及擦除的错误进行校正的错误校正电路3a确定“其是否对涉及擦除的错误进行校正”。权利要求3和权利要求5中的擦除校正步骤与如图2所示的实施例的MPU 4的步骤S7至步骤S10相对应。权利要求3和权利要求5中的擦除校正后校正子产生步骤与步骤S2相对应,其中如图2所示,该实施例的用于对不涉及擦除的错误进行校正的错误校正电路3a产生/保存校正子,并且权利要求3和权利要求5中的擦除校正后错误校正步骤与如图2所示的实施例的用于对不涉及擦除的错误进行校正的错误校正电路3a的步骤S4至步骤S6相对应。
Claims (14)
1、一种错误校正装置,该错误校正装置用于根据其获取的码字和擦除信息来校正该码字的错误,所述错误校正装置包括:
擦除判定部分,其执行用于根据所述擦除信息判定所述码字是否涉及擦除的软件;
校正子产生部分,其是用于为所述码字产生校正子的硬件;
擦除校正部分,其在所述擦除判定部分判定所述码字涉及擦除时,根据所述擦除信息以及所述校正子产生部分产生的校正子针对擦除来校正所述码字,并使所述校正子产生部分为针对擦除进行了校正的码字产生校正子;以及
无擦除错误校正部分,其是用于根据所述校正子产生部分产生的校正子对不涉及擦除的错误进行校正的硬件。
2、根据权利要求1所述的装置,
在所述擦除判定部分判定所述码字不涉及擦除时,所述校正子产生部分为所获取的码字产生校正子,并将结果发送到所述无擦除错误校正部分,而在所述擦除判定部分判定所述码字涉及擦除时,所述校正子产生部分首先为所获取的码字产生校正子,并将结果发送到所述擦除校正部分,并且还为所述擦除校正部分校正过的码字产生校正子,并将结果发送到所述无擦除错误校正部分。
3、根据权利要求1所述的装置,其中
所述无擦除错误校正部分根据所述校正子产生部分产生的校正子进行错误位置多项式和错误评价多项式的计算以及Chien搜索。
4、根据权利要求1所述的装置,其中
所述擦除校正部分根据所述擦除信息以及所述校正子产生部分产生的校正子进行错误位置多项式和错误评价多项式的计算。
5、一种错误校正程序,该错误校正程序用于使计算机根据其获取的码字和擦除信息对所述码字的错误进行校正,所述错误校正程序包括:
校正子产生步骤,其使得用于产生校正子的硬件为所述码字产生校正子;
擦除判定步骤,其根据所述擦除信息判定所述码字是否涉及擦除;
擦除校正步骤,其在所述擦除判定步骤判定所述码字涉及擦除时,基于所述擦除信息和根据所述码字产生的校正子来校正擦除;
擦除校正后校正子产生步骤,其使所述用于产生校正子的硬件为所述擦除校正步骤校正过的所述码字产生校正子;以及
擦除校正后错误校正步骤,其使得用于对不涉及擦除的错误进行校正的硬件根据所述擦除校正后校正子产生步骤产生的校正子对所述擦除校正步骤校正过的码字的错误进行校正。
6、根据权利要求5所述的程序,该程序还包括:
无擦除错误校正步骤,其在所述擦除判定步骤判定所述码字不涉及擦除时,使所述用于对不涉及擦除的错误进行校正的硬件根据所述校正子产生步骤产生的所述校正子对所述码字的错误进行校正。
7、根据权利要求5所述的程序,其中
所述用于对不涉及擦除的错误进行校正的硬件在所述擦除校正后错误校正步骤中根据所述校正子产生步骤产生的校正子进行错误位置多项式和错误评价多项式的计算以及Chien搜索。
8、根据权利要求5所述的程序,其中
所述用于对不涉及擦除的错误进行校正的硬件在所述无擦除错误校正步骤中根据所述校正子产生步骤或校正子重新产生步骤产生的校正子进行错误位置多项式和错误评价多项式的计算以及Chien搜索。
9、根据权利要求5所述的程序,其中
所述擦除校正步骤根据所述擦除信息和由所述校正子产生步骤产生的校正子进行错误位置多项式和错误评价多项式的计算。
10、一种错误校正方法,该错误校正方法用于根据其获取的码字和擦除信息对所述码字的错误进行校正,所述错误校正方法包括:
校正子产生步骤,其使得用于产生校正子的硬件为所述码字产生校正子;
擦除判定步骤,其根据所述擦除信息判定所述码字是否涉及擦除;
擦除校正步骤,其在所述擦除判定步骤判定所述码字涉及擦除时,基于所述擦除信息和根据所述码字产生的校正子来校正擦除;
擦除校正后校正子产生步骤,其使所述用于产生校正子的硬件为所述擦除校正步骤校正过的所述码字产生校正子;以及
擦除校正后错误校正步骤,其使得用于对不涉及擦除的错误进行校正的硬件根据所述擦除校正后校正子产生步骤产生的校正子对所述擦除校正步骤校正过的码字的错误进行校正。
11、根据权利要求10所述的方法,该方法还包括:
无擦除错误校正步骤,其在所述擦除判定步骤判定所述码字不涉及擦除时,使所述用于对不涉及擦除的错误进行校正的硬件根据所述校正子产生步骤产生的校正子对所述码字的错误进行校正。
12、根据权利要求10所述的方法,其中
所述用于对不涉及擦除的错误进行校正的硬件在所述擦除校正后错误校正步骤中根据所述校正子产生步骤产生的校正子进行错误位置多项式和错误评价多项式的计算以及Chien搜索。
13、根据权利要求10所述的方法,其中
所述用于对不涉及擦除的错误进行校正的硬件在所述无擦除错误校正步骤中根据所述校正子产生步骤或校正子重新产生步骤产生的校正子进行错误位置多项式和错误评价多项式的计算以及Chien搜索。
14、根据权利要求10所述的方法,其中
所述擦除校正步骤根据所述擦除信息和由所述校正子产生步骤产生的校正子进行错误位置多项式和错误评价多项式的计算。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005339635A JP4583294B2 (ja) | 2005-11-25 | 2005-11-25 | 誤り訂正装置、誤り訂正プログラム、及び誤り訂正方法 |
JP2005339635 | 2005-11-25 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1971525A true CN1971525A (zh) | 2007-05-30 |
Family
ID=37943854
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2006101467789A Pending CN1971525A (zh) | 2005-11-25 | 2006-11-24 | 错误校正装置、错误校正程序和错误校正方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US7555702B2 (zh) |
EP (1) | EP1793503A3 (zh) |
JP (1) | JP4583294B2 (zh) |
KR (1) | KR20070055378A (zh) |
CN (1) | CN1971525A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101887738A (zh) * | 2009-05-14 | 2010-11-17 | 联发科技股份有限公司 | 错误校正装置及错误校正方法 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080282128A1 (en) * | 1999-08-04 | 2008-11-13 | Super Talent Electronics, Inc. | Method of Error Correction Code on Solid State Disk to Gain Data Security and Higher Performance |
US8286060B2 (en) * | 2008-07-30 | 2012-10-09 | Lsi Corporation | Scheme for erasure locator polynomial calculation in error-and-erasure decoder |
US9819365B2 (en) * | 2014-07-20 | 2017-11-14 | HGST, Inc. | Incremental error detection and correction for memories |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2999881B2 (ja) | 1992-05-12 | 2000-01-17 | シャープ株式会社 | リードソロモン符号の復号装置 |
JPH06203489A (ja) * | 1992-12-30 | 1994-07-22 | Sony Corp | 誤り訂正方法 |
KR950010768B1 (ko) * | 1993-10-20 | 1995-09-22 | 주식회사 Lg전자 | 에러 정정 코드 복호 장치 및 그 방법 |
JPH07202907A (ja) * | 1993-12-29 | 1995-08-04 | Toshiba Corp | Atmネットワークにおける誤り制御装置 |
US6704902B1 (en) * | 1998-09-07 | 2004-03-09 | Sony Corporation | Decoding system for error correction code |
US6347389B1 (en) | 1999-03-23 | 2002-02-12 | Storage Technology Corporation | Pipelined high speed reed-solomon error/erasure decoder |
JP2001101020A (ja) | 1999-09-27 | 2001-04-13 | Internatl Business Mach Corp <Ibm> | 誤り訂正装置およびディスク装置 |
JP3993035B2 (ja) * | 2001-07-19 | 2007-10-17 | 松下電器産業株式会社 | データ記録方法、記録媒体、および再生装置 |
KR100403634B1 (ko) * | 2001-10-17 | 2003-10-30 | 삼성전자주식회사 | 고속 파이프라인 리드-솔로몬 디코더에 적용하기 위한메모리 장치와 메모리 액세스 방법 및 그 메모리 장치를구비한 리드-솔로몬 디코더 |
JP2003168984A (ja) * | 2001-11-29 | 2003-06-13 | Mitsubishi Electric Corp | 復号装置、データ伝送システム及び復号方法 |
EP1370003A1 (en) | 2002-06-07 | 2003-12-10 | Deutsche Thomson-Brandt Gmbh | Reed-Solomon Decoder |
JP3843952B2 (ja) * | 2003-02-27 | 2006-11-08 | ソニー株式会社 | 復号装置、誤り位置多項式計算方法、プログラム |
-
2005
- 2005-11-25 JP JP2005339635A patent/JP4583294B2/ja not_active Expired - Fee Related
-
2006
- 2006-02-10 US US11/351,514 patent/US7555702B2/en not_active Expired - Fee Related
- 2006-11-07 EP EP06123634A patent/EP1793503A3/en not_active Withdrawn
- 2006-11-23 KR KR1020060116392A patent/KR20070055378A/ko active IP Right Grant
- 2006-11-24 CN CNA2006101467789A patent/CN1971525A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101887738A (zh) * | 2009-05-14 | 2010-11-17 | 联发科技股份有限公司 | 错误校正装置及错误校正方法 |
CN101887738B (zh) * | 2009-05-14 | 2012-10-03 | 联发科技股份有限公司 | 错误校正装置及错误校正方法 |
Also Published As
Publication number | Publication date |
---|---|
JP2007150488A (ja) | 2007-06-14 |
US7555702B2 (en) | 2009-06-30 |
JP4583294B2 (ja) | 2010-11-17 |
KR20070055378A (ko) | 2007-05-30 |
EP1793503A2 (en) | 2007-06-06 |
US20070136646A1 (en) | 2007-06-14 |
EP1793503A3 (en) | 2007-06-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101291525B1 (ko) | 에러 정정 디바이스 및 그 방법 | |
CN101853217B (zh) | 缓存控制装置、信息处理装置和计算机可读记录介质 | |
CN1971525A (zh) | 错误校正装置、错误校正程序和错误校正方法 | |
US8782592B2 (en) | System and method for designing digital circuitry with an activity sensor | |
US8274374B2 (en) | Synchronization method between reader and tag | |
US7124348B2 (en) | Data storage method with error correction | |
JP4609095B2 (ja) | 測位システム | |
CN107064964A (zh) | 一种gps接收机双模热启动快速定位方法 | |
CN114091383A (zh) | 测试序列生成方法、装置、系统及相关设备 | |
CN117689393A (zh) | 碳核算方法、系统和计算机可读存储介质 | |
US7207015B1 (en) | Translation of an electronic integrated circuit design into hardware | |
CN111451835B (zh) | 基于钻孔机的冷却方法、装置及钻孔机 | |
US20100251193A1 (en) | Computer-readable recording medium storing verification support program, verification support apparatus, and verification support method | |
CN113177020A (zh) | 数据处理方法及装置 | |
US6023387A (en) | Method and apparatus for determining sector addresses from media having data written in a headerless format | |
CN102414567A (zh) | 校正装置、概率密度函数测量装置、抖动测量装置、抖动分离装置、电子器件、校正方法、程序以及记录介质 | |
JP5076700B2 (ja) | データベース検証方法及び装置 | |
JP2006079298A (ja) | 販売量予測システム | |
CN112905396B (zh) | 信息显示方法、装置及设备、存储介质 | |
CN116360394A (zh) | 卫星控制系统在轨故障信息的获取方法及装置 | |
US20140336982A1 (en) | System and method for designing a digital circuit having an activity sensor, and corresponding digital circuit | |
CN115469344A (zh) | 车辆定位方法、装置、车辆、电子设备及存储介质 | |
US20070168896A1 (en) | Method and apparatus for verifying logic circuit | |
JP2000293358A (ja) | 演算装置 | |
CN113157568A (zh) | 一种检查Verilog时序模块驱动冲突的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20070530 |