專利名稱:錯誤校正裝置、錯誤校正程序和錯誤校正方法
技術領域:
本發明涉及一種用于對在所接收的數據中出現的一個或更多個錯誤進行校正的錯誤校正裝置、錯誤校正程序以及錯誤校正方法。
背景技術:
在設備之間交換的數據由于噪音與數據混合而可能變成錯誤數據。因此,通過錯誤校正碼來校正錯誤。通過錯誤校正裝置進行的錯誤校正可分為涉及擦除(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相對應。
權利要求
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所述的方法,其中所述擦除校正步驟根據所述擦除信息和由所述校正子產生步驟產生的校正子進行錯誤位置多項式和錯誤評價多項式的計算。
全文摘要
本發明提供了錯誤校正裝置、程序和方法。它們通過適當而有效地使用軟件和硬件來減少對接收字中涉及擦除的錯誤的校正處理所需的處理時間。在對不涉及擦除的錯誤進行校正的錯誤校正電路(3a)從RDC(2)接收到涉及擦除的接收字時,擦除信息保存部分(3a1)保存擦除信息,而校正子產生部分(3a2)根據接收字產生校正子,從而擦除判定部分(3a3)將擦除信息和校正子發送到MPU(4)。在MPU(4)中,擦除錯誤值計算部分(4a3)和擦除校正部分(4a4)僅校正擦除,并將不涉及擦除的接收字存儲在RAM(3b)中。經由數據總線(6)和開關(5)再次將來自RAM(3b)的接收字輸入至對不涉及擦除的錯誤進行校正的錯誤校正電路(3a)。擦除判定部分(3a3)判定該接收字為不涉及擦除的接收字,并使Chien搜索部分(3a5)和錯誤校正部分(3a6)校正錯誤。
文檔編號G11B20/18GK1971525SQ200610146778
公開日2007年5月30日 申請日期2006年11月24日 優先權日2005年11月25日
發明者小野佳奈 申請人:富士通株式會社