控制器、信息處理系統(tǒng)、控制器的控制方法以及程序的制作方法
【專利摘要】本發(fā)明提供一種其中通過軟判決解碼算法提高糾錯(cuò)能力的控制器、信息處理系統(tǒng)、控制器的控制方法以及程序,所述控制器包括:低級糾錯(cuò)部,其用于執(zhí)行低級糾錯(cuò),在所述低級糾錯(cuò)中,碼字中的錯(cuò)誤采用預(yù)定解碼算法進(jìn)行糾正;以及高級軟判決糾錯(cuò)部,其用于執(zhí)行高級軟判決糾錯(cuò),在所述高級軟判決糾錯(cuò)中,當(dāng)所述低級糾錯(cuò)部執(zhí)行的糾錯(cuò)失敗時(shí),所述碼字中的錯(cuò)誤就采用高級算法進(jìn)行糾正,所述高級算法為軟判決解碼算法,所述軟判決解碼算法的糾錯(cuò)能力高于所述預(yù)定解碼算法的糾錯(cuò)能力。
【專利說明】控制器、信息處理系統(tǒng)、控制器的控制方法以及程序
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種控制器、信息處理系統(tǒng)、控制器的控制方法以及程序。更具體地,本發(fā)明涉及一種其中通過軟判決解碼算法進(jìn)行糾錯(cuò)的控制器、信息處理系統(tǒng)、控制器的控制方法以及程序。
【背景技術(shù)】
[0002]近年來,信息處理系統(tǒng)可采用非易失性存儲(chǔ)器(NVM)或HDD (硬盤驅(qū)動(dòng)器)作為儲(chǔ)存器。在這些儲(chǔ)存器中,儲(chǔ)存的數(shù)據(jù)可能會(huì)受到毀壞,因而不能正確讀取。因此,一種通常的信息處理系統(tǒng)基于待儲(chǔ)存的數(shù)據(jù)生成錯(cuò)誤檢測和糾正碼(ECC),并將ECC儲(chǔ)存在儲(chǔ)存器中。當(dāng)再現(xiàn)數(shù)據(jù)時(shí),信息處理系統(tǒng)可基于ECC檢測并糾正數(shù)據(jù)中的錯(cuò)誤。
[0003]當(dāng)基于ECC糾正錯(cuò)誤時(shí),便可采用軟判決解碼算法。軟判決解碼算法為基于軟判決值糾正錯(cuò)誤的算法,該軟判決值與數(shù)據(jù)中的位元為“I”的概率或?yàn)椤癘”的概率相對應(yīng)。另一方面,基于表明數(shù)據(jù)中的位元為“I”或“O”的硬判決值來糾正錯(cuò)誤的算法稱為硬判決算法。
[0004]盡管軟判決解碼算法的糾錯(cuò)能力高于硬判決解碼算法的糾錯(cuò)能力,但其處理比較復(fù)雜,從而增加了電路尺寸和處理時(shí)間。因此,已經(jīng)提出了一種部分軟判決解碼算法被簡化以便抑制電路尺寸等的增加的設(shè)備(例如,參照日本未經(jīng)審查的專利申請公開N0.2010-28408)。更具體地,該設(shè)備采用重復(fù)模式軟判決解碼算法,其中,將變量節(jié)點(diǎn)和校驗(yàn)節(jié)點(diǎn)之中的一個(gè)節(jié)點(diǎn)處所生成的軟判決值發(fā)送至另一節(jié)點(diǎn)來進(jìn)行糾錯(cuò)的步驟被重復(fù)執(zhí)行,以簡化校驗(yàn)節(jié)點(diǎn)中的處理。
[0005]然而,在上述技術(shù)中很難提高糾錯(cuò)能力。添加至數(shù)據(jù)的奇偶校驗(yàn)信息的量增加得越多,即碼率越小,糾錯(cuò)能力就越高,而儲(chǔ)存區(qū)域的利用率就越低。為了在不改變碼率的情況下提高糾錯(cuò)能力,可以使用采用具有更高糾錯(cuò)能力的算法的方法或者使用增加了重復(fù)模式軟判決解碼算法中的重復(fù)次數(shù)的方法。然而,在前者方法中,采用具有高糾錯(cuò)能力的算法進(jìn)行處理會(huì)更加復(fù)雜從而增加了電路尺寸和處理時(shí)間。而且,在后者方法中,即在增加重復(fù)次數(shù)的方法中,處理時(shí)間增加了。因此,在不改變碼率的情況下,在抑制電路尺寸和處理時(shí)間增加的同時(shí)提高糾錯(cuò)能力是很難的。
【發(fā)明內(nèi)容】
[0006]本發(fā)明期望在采用軟判決算法的信息處理系統(tǒng)中提高糾錯(cuò)能力。
[0007]根據(jù)本發(fā)明的實(shí)施例,提供了一種控制器,所述控制器包括:低級糾錯(cuò)部,其用于執(zhí)行低級糾錯(cuò),在所述低級糾錯(cuò)中,碼字中的錯(cuò)誤采用預(yù)定解碼算法進(jìn)行糾正;以及高級軟判決糾錯(cuò)部,其用于執(zhí)行高級軟判決糾錯(cuò),在所述高級軟判決糾錯(cuò)中,當(dāng)所述低級糾錯(cuò)部執(zhí)行的糾錯(cuò)失敗時(shí),所述碼字中的錯(cuò)誤采用高級算法進(jìn)行糾正,所述高級算法為軟判決解碼算法,所述軟判決解碼算法的糾錯(cuò)能力高于所述預(yù)定解碼算法的糾錯(cuò)能力。
[0008]根據(jù)本發(fā)明的實(shí)施例,提供了一種控制器的控制方法,所述方法包括:執(zhí)行低級糾錯(cuò),在低級糾錯(cuò)中,碼字中的錯(cuò)誤采用預(yù)定解碼算法糾正;以及執(zhí)行高級軟判決糾錯(cuò),在高級軟判決糾錯(cuò)中,當(dāng)所述低級糾錯(cuò)執(zhí)行的糾錯(cuò)失敗時(shí),所述碼字中的錯(cuò)誤采用高級算法糾正,所述高級算法為軟判決算法,所述軟判決算法的糾錯(cuò)能力高于所述預(yù)定解碼算法的糾韋昔倉泛力。
[0009]根據(jù)本發(fā)明的實(shí)施例,提供了一種嵌入有程序的非暫存性有形記錄介質(zhì),當(dāng)所述計(jì)算機(jī)可讀程序由計(jì)算機(jī)執(zhí)行時(shí),使得所述計(jì)算機(jī)實(shí)施一種方法,所述方法包括:執(zhí)行低級糾錯(cuò),在低級糾錯(cuò)中,碼字中的錯(cuò)誤采用預(yù)定解碼算法糾正;以及執(zhí)行高級軟判決糾錯(cuò),在高級軟判決糾錯(cuò)中,當(dāng)所述低級糾錯(cuò)執(zhí)行的糾錯(cuò)失敗時(shí),所述碼字中的錯(cuò)誤采用高級算法糾正,所述高級算法為軟判決算法,所述軟判決算法的糾錯(cuò)能力高于所述預(yù)定解碼算法的糾錯(cuò)能力。
[0010]因此,本發(fā)明實(shí)現(xiàn)了以下效果:當(dāng)所述低級糾錯(cuò)部執(zhí)行的糾錯(cuò)失敗時(shí),所述碼字中的錯(cuò)誤采用所述高級算法糾正。
[0011]而且,根據(jù)本發(fā)明的實(shí)施例的控制器可進(jìn)一步包括:讀取處理部,其用于從存儲(chǔ)器中讀取所述碼字并將所述碼字提供給所述低級糾錯(cuò)部,所述碼字包括多個(gè)碼元;碼字獲取部,其用于當(dāng)所述低級糾錯(cuò)部執(zhí)行的糾錯(cuò)失敗時(shí)多次執(zhí)行從所述存儲(chǔ)器中讀取所述碼字的碼字獲??;以及軟判決值生成部,其用于基于由所述碼字獲取部讀取的每一個(gè)所述碼字為每一個(gè)所述碼元生成軟判決值,所述軟判決值與每一個(gè)所述碼元的值為特定值的概率相對應(yīng),并將每一個(gè)所述碼元的值被替換為所述軟判決值的碼字提供給所述高級軟判決糾錯(cuò)部。因此,實(shí)現(xiàn)了以下效果:當(dāng)所述低級糾錯(cuò)部的糾錯(cuò)失敗時(shí),多次執(zhí)行讀取碼字的碼字獲取,且基于每一個(gè)讀取的碼字,生成了軟判決值。
[0012]而且,在根據(jù)本發(fā)明的實(shí)施例的控制器中,所述軟判決值生成部可為每一個(gè)所述碼元求取所述碼字獲取部讀取所述特定值的頻率,并可基于所述頻率生成所述軟判決值。因此,實(shí)現(xiàn)了以下效果:基于所述特定值被讀取的頻率來生成所述軟判決值。
[0013]而且,根據(jù)本發(fā)明的實(shí)施例的控制器可進(jìn)一步包括:閾值控制部,其用于每次執(zhí)行所述碼字獲取時(shí)在預(yù)定的范圍內(nèi)改變閾值,所述閾值為確定所述碼元的值的閾值;以及軟判決值生成部,所述軟判決值生產(chǎn)部可基于讀取具有所述特定值的碼元時(shí)所述閾值的最大值或最小值來生成所述軟判決值。因此,實(shí)現(xiàn)了以下效果:當(dāng)讀取具有所述特定值的所述碼元時(shí),基于所述閾值的最大值或最小值來生成所述判決值。
[0014]而且,在根據(jù)本發(fā)明的實(shí)施例的控制器中,所述軟判決值生成部可在執(zhí)行了多次所述碼字獲取之后生成所述軟判決值,當(dāng)生成所述軟判決值時(shí)所述高級軟判決糾錯(cuò)部可執(zhí)行所述高級軟判決糾錯(cuò)。因此,實(shí)現(xiàn)了以下效果:執(zhí)行了多次所述碼字獲取,然后生成所述軟判決值以執(zhí)行所述高級軟判決糾錯(cuò)。
[0015]而且,在根據(jù)本發(fā)明的實(shí)施例的控制器中,所述軟判決值生成部在每次執(zhí)行碼字獲取時(shí)可生成所述軟判決值,所述高級軟判決糾錯(cuò)部在每次生成軟判決值時(shí)執(zhí)行所述高級軟判決糾錯(cuò)。因此,實(shí)現(xiàn)了以下效果:每次執(zhí)行所述碼字獲取時(shí)便生成所述軟判決值,以執(zhí)行所述高級軟判決糾錯(cuò)。
[0016]在根據(jù)本發(fā)明的實(shí)施例的控制器中,所述碼字包括多個(gè)碼元,所述低級糾錯(cuò)部可為每一個(gè)所述碼元生成軟判決值,所述軟判決值與每一個(gè)所述碼元的值為特定值的概率相對應(yīng),并將每一個(gè)所述碼元的值被替換為所述軟判決值的碼字提供給所述高級軟判決糾錯(cuò)部。因此,實(shí)現(xiàn)了以下效果:由上述低級糾錯(cuò)部生成的所述軟判決值被提供給了上述高級軟判決糾錯(cuò)部。
[0017]根據(jù)本發(fā)明的實(shí)施例,提供了一種信息處理系統(tǒng),所述信息處理系統(tǒng)包括:主機(jī),其用于發(fā)出用于指令從存儲(chǔ)部中讀取碼字的讀取命令;讀取處理部,其用于響應(yīng)于所述讀取命令而從所述存儲(chǔ)部讀取所述碼字;低級糾錯(cuò)部,其用于執(zhí)行低級糾錯(cuò),在所述低級糾錯(cuò)中,所述碼字中的錯(cuò)誤采用預(yù)定解碼算法進(jìn)行糾正;以及高級軟判決糾錯(cuò)部,其用于執(zhí)行高級軟判決糾錯(cuò),在所述高級軟判決糾錯(cuò)中,當(dāng)所述低級糾錯(cuò)部執(zhí)行的糾錯(cuò)失敗時(shí),所述碼字中的錯(cuò)誤采用高級算法進(jìn)行糾正,所述高級算法為軟判決解碼算法,所述軟判決解碼算法的糾錯(cuò)能力高于所述預(yù)定解碼算法的糾錯(cuò)能力。因此,實(shí)現(xiàn)了以下效果:當(dāng)所述低級糾錯(cuò)部執(zhí)行的糾錯(cuò)失敗時(shí),所述碼字中的錯(cuò)誤采用所述高級算法進(jìn)行糾正。
[0018]在根據(jù)本發(fā)明的實(shí)施例的信息處理系統(tǒng)中,所述主機(jī)可基于所述高級軟判決糾錯(cuò)的處理時(shí)間確定包括糾正開始命令的一個(gè)以上命令的執(zhí)行順序,并可將所述一個(gè)以上命令按照所述執(zhí)行順序提供給所述高級軟判決糾錯(cuò)部,所述糾正開始命令用于當(dāng)所述低級糾錯(cuò)部執(zhí)行的糾錯(cuò)失敗時(shí)指令所述高級軟判決糾錯(cuò)的開始,當(dāng)所述低級糾錯(cuò)部執(zhí)行的糾錯(cuò)失敗且所述糾正開始命令已提供給所述高級軟判決糾錯(cuò)部時(shí),所述高級軟判決糾正部開始所述高級軟判決糾錯(cuò)。因此,實(shí)現(xiàn)了以下效果:當(dāng)所述低級糾錯(cuò)部執(zhí)行的糾錯(cuò)失敗時(shí)且所述糾正開始命令已提供時(shí),執(zhí)行所述高級軟判決糾錯(cuò)。
[0019]在根據(jù)本發(fā)明的實(shí)施例的信息處理系統(tǒng)中,當(dāng)所述低級糾錯(cuò)部執(zhí)行的糾錯(cuò)失敗且讀取所述碼字發(fā)生中斷時(shí),所述主機(jī)發(fā)出暫停所述高級軟判決糾錯(cuò)的中止命令,當(dāng)所述低級糾錯(cuò)部執(zhí)行的糾錯(cuò)失敗時(shí),所述高級軟判決糾錯(cuò)部響應(yīng)于所述中止命令暫停正在執(zhí)行的高級軟判決糾錯(cuò)。因此,實(shí)現(xiàn)了以下效果:當(dāng)讀取所述碼字發(fā)生中斷時(shí),暫停所述高級軟判決糾錯(cuò)。
[0020]而且,在根據(jù)本發(fā)明的實(shí)施例的信息處理系統(tǒng)中,所述主機(jī)可進(jìn)一步基于所述碼字的類型生成表明是否需要執(zhí)行所述高級軟判決糾錯(cuò)的使能命令,當(dāng)所述低級糾錯(cuò)部執(zhí)行的糾錯(cuò)失敗時(shí),所述高級軟判決糾錯(cuò)部可響應(yīng)于所述使能命令執(zhí)行所述高級軟判決糾錯(cuò)。因此,實(shí)現(xiàn)了以下效果:當(dāng)所述低級糾錯(cuò)部執(zhí)行的糾錯(cuò)失敗時(shí),響應(yīng)于所述使能信號執(zhí)行所述高級軟判決糾錯(cuò)。
[0021]進(jìn)一步地,在根據(jù)本發(fā)明的實(shí)施例的信息處理系統(tǒng)中,所述高級算法可包括多種高級算法,所述主機(jī)可基于所述碼字的類型指定所述多種高級算法中的一種,當(dāng)所述低級糾錯(cuò)部執(zhí)行的糾錯(cuò)失敗時(shí),所述高級軟判決糾錯(cuò)部可采用所述指定的高級算法糾正所述碼字中的錯(cuò)誤。因此,實(shí)現(xiàn)了以下效果:當(dāng)所述低級糾錯(cuò)部執(zhí)行的糾錯(cuò)失敗時(shí),所述碼字中的錯(cuò)誤采用所述指定的高級算法進(jìn)行糾正。
[0022]根據(jù)本發(fā)明的實(shí)施例,提供了一種信息處理系統(tǒng),所述信息處理系統(tǒng)包括:控制器,其用于從存儲(chǔ)部讀取碼字并執(zhí)行低級糾錯(cuò),在所述低級糾錯(cuò)中,所述碼字中的錯(cuò)誤采用預(yù)定解碼算法進(jìn)行糾正;以及主機(jī),其用于當(dāng)所述控制器執(zhí)行的糾錯(cuò)失敗時(shí)執(zhí)行高級軟判決糾錯(cuò),在所述高級軟判決糾正中,所述碼字中的錯(cuò)誤采用高級算法進(jìn)行糾正,所述高級算法為軟判決解碼算法,所述軟判決解碼算法的糾錯(cuò)能力高于所述預(yù)定解碼算法的糾錯(cuò)能力。
[0023]在根據(jù)本發(fā)明的實(shí)施例的信息處理系統(tǒng)中,當(dāng)所述控制器執(zhí)行的糾錯(cuò)失敗時(shí),所述主機(jī)可發(fā)出碼字輸出命令,所述碼字輸出命令指令所述控制器輸出所述碼字,所述控制器響應(yīng)于所述碼字輸出命令從所述存儲(chǔ)部讀取所述碼字并將所述碼字輸出至所述主機(jī),而不執(zhí)行所述低級糾錯(cuò)。因此,實(shí)現(xiàn)了以下效果:所述控制器響應(yīng)于所述碼字輸出命令從所述存儲(chǔ)部讀取所述碼字并將所述碼字輸出至所述主機(jī),而不執(zhí)行所述低級糾錯(cuò)。
[0024]上述控制器可在所述低級糾錯(cuò)中生成糾正成功/失敗信息,并可將所述糾正成功/失敗信息輸出至主機(jī),所述糾正成功/失敗信息表明對所述碼字的糾錯(cuò)是否成功,所述主機(jī)可基于所述糾正成功/錯(cuò)誤信息判斷所述控制器執(zhí)行的糾錯(cuò)是否失敗。因此,實(shí)現(xiàn)了以下效果:上述控制器執(zhí)行的糾錯(cuò)是否失敗由所述主機(jī)基于所述糾正成功/失敗信息來判斷。
[0025]在本發(fā)明的實(shí)施例中,實(shí)現(xiàn)了以下優(yōu)越效果,即糾錯(cuò)能力可在采用了軟判決算法的信息處理系統(tǒng)中得到提高。
[0026]應(yīng)理解,上述概述和接下來的詳細(xì)說明都是示例性的,旨在進(jìn)一步說明所要求保護(hù)的本發(fā)明。
【專利附圖】
【附圖說明】
[0027]附圖用于進(jìn)一步理解本發(fā)明,其包含在本說明書中并構(gòu)成本說明書的一部分。附圖與說明書一起對實(shí)施例進(jìn)行了說明并用于解釋本發(fā)明的原理。
[0028]圖1是圖示了根據(jù)第一實(shí)施例的信息處理系統(tǒng)的配置示例的方框圖。
[0029]圖2是圖示了根據(jù)第一實(shí)施例的主機(jī)的配置示例的方框圖。
[0030]圖3是圖示了根據(jù)第一實(shí)施例的存儲(chǔ)控制器的配置示例的方框圖。
[0031]圖4是圖示了根據(jù)第一實(shí)施例的存儲(chǔ)控制器的功能配置示例的方框圖。
[0032]圖5是圖示了根據(jù)第一實(shí)施例的糾錯(cuò)代碼的數(shù)據(jù)結(jié)構(gòu)示例的示意圖。
[0033]圖6A和6B是圖示了根據(jù)第一實(shí)施例的校驗(yàn)矩陣的示意圖。
[0034]圖7A和7B是描述了根據(jù)第一實(shí)施例的生成糾錯(cuò)代碼的方法的示例的示意圖。
[0035]圖8是圖示了根據(jù)第一實(shí)施例的糾錯(cuò)部的配置示例的方框圖。
[0036]圖9是圖示了根據(jù)第一實(shí)施例的低級糾錯(cuò)部的配置示例的方框圖。
[0037]圖10是圖示了根據(jù)第一實(shí)施例的低級糾錯(cuò)電路的配置示例的示意圖。
[0038]圖1lA和IlB是圖示了根據(jù)第一實(shí)施例的變量節(jié)點(diǎn)和校驗(yàn)節(jié)點(diǎn)之間的消息交換的示例的示意圖。
[0039]圖12是圖示了根據(jù)第一實(shí)施例的高級軟判決糾錯(cuò)部的配置示例的方框圖。
[0040]圖13是圖示了根據(jù)第一實(shí)施例的主機(jī)的操作示例的流程圖。
[0041]圖14是圖示了根據(jù)第一實(shí)施例的存儲(chǔ)控制器的操作示例的流程圖。
[0042]圖15是圖示了根據(jù)第一實(shí)施例的讀取處理的示例的流程圖。
[0043]圖16是圖示了根據(jù)第一實(shí)施例的低級糾錯(cuò)的示例的流程圖。
[0044]圖17是圖示了根據(jù)第一實(shí)施例的高級軟判決糾錯(cuò)的示例的流程圖。
[0045]圖18是圖示了根據(jù)第一實(shí)施例的第一變型例的糾錯(cuò)部的配置示例的方框圖。
[0046]圖19是圖示了根據(jù)第一實(shí)施例的第一變型例的低級糾錯(cuò)部的示例的方框圖。
[0047]圖20是圖示了根據(jù)第一實(shí)施例的第一變型例的高級軟判決糾錯(cuò)部的方框圖。
[0048]圖21是圖示了根據(jù)第一實(shí)施例的第二變型例的糾錯(cuò)部的配置示例的方框圖。[0049]圖22是圖示了根據(jù)第一實(shí)施例的第二變型例的主機(jī)的操作示例的流程圖。
[0050]圖23是圖示了根據(jù)第一實(shí)施例的第二變型例的讀取處理的示例的流程圖。
[0051]圖24是圖示了根據(jù)第二實(shí)施例的糾錯(cuò)部的配置示例的方框圖。
[0052]圖25是圖示了根據(jù)第二實(shí)施例的主機(jī)的操作示例的流程圖。
[0053]圖26是圖示了根據(jù)第二實(shí)施例的讀取處理的示例的流程圖。
[0054]圖27是圖示了根據(jù)第二實(shí)施例的第一變型例的糾錯(cuò)部的配置示例的方框圖。
[0055]圖28是圖示了根據(jù)第二實(shí)施例的第一變型例的主機(jī)的操作示例的流程圖。
[0056]圖29是圖示了根據(jù)第二實(shí)施例的第一變型例的高級軟判決糾錯(cuò)的示例的流程圖。
[0057]圖30是圖示了根據(jù)第二實(shí)施例的第二變型例的糾錯(cuò)部的配置示例的方框圖。
[0058]圖31是圖示了根據(jù)第二實(shí)施例的第二變型例的主機(jī)的操作示例的流程圖。
[0059]圖32是圖示了根據(jù)第二實(shí)施例的第二變型例的讀取處理的示例的流程圖。
[0060]圖33是圖示了根據(jù)第二實(shí)施例的第三變型例的主機(jī)的操作示例的流程圖。
[0061]圖34是圖示了根據(jù)第二實(shí)施例的第三變型例的高級軟判決糾錯(cuò)的示例的流程圖。
[0062]圖35是圖示了根據(jù)第三實(shí)施例的主機(jī)的配置示例的方框圖。
[0063]圖36是圖示了根據(jù)第三實(shí)施例的存儲(chǔ)控制器的配置示例的方框圖。
[0064]圖37是圖示了根據(jù)第三實(shí)施例的糾錯(cuò)部的配置示例的方框圖。
[0065]圖38是圖示了根據(jù)第三實(shí)施例的主機(jī)的操作示例的流程圖。
[0066]圖39是圖示了根據(jù)第三實(shí)施例的存儲(chǔ)控制器的操作示例的流程圖。
[0067]圖40是圖不了根據(jù)第二實(shí)施例的讀取處理的不例的流程圖。
[0068]圖41是圖示了根據(jù)第四實(shí)施例的主機(jī)的配置示例的方框圖。
[0069]圖42A?42D是圖示了根據(jù)第四實(shí)施例的讀取數(shù)據(jù)和軟判決值的示例的示意圖。
[0070]圖43是圖示了根據(jù)第四實(shí)施例的存儲(chǔ)控制器的配置示例的方框圖。
[0071]圖44是圖示了根據(jù)第四實(shí)施例的主機(jī)的操作示例的流程圖。
[0072]圖45是圖示了根據(jù)第四實(shí)施例的高級軟判決糾錯(cuò)的示例的流程圖。
[0073]圖46是圖示了根據(jù)第四實(shí)施例的存儲(chǔ)控制器的操作示例的流程圖。
[0074]圖47是圖示了根據(jù)第四實(shí)施例的讀取處理的示例的流程圖。
[0075]圖48是圖示了根據(jù)第四實(shí)施例的一個(gè)變型例的主機(jī)的操作示例的流程圖。
[0076]圖49是圖示了根據(jù)第五實(shí)施例的主機(jī)的配置示例的方框圖。
[0077]圖50是圖示了根據(jù)第五實(shí)施例的存儲(chǔ)控制器的配置示例的方框圖。
[0078]圖51是圖示了根據(jù)第五實(shí)施例的可變電阻器的電阻分布的示例的示意圖。
[0079]圖52是描述了根據(jù)第五實(shí)施例的生成軟判決值的方法的示意圖。
[0080]圖53是圖示了根據(jù)第五實(shí)施例的主機(jī)的操作示例的流程圖。
[0081]圖54是圖示了根據(jù)第五實(shí)施例的讀取處理的示例的流程圖。
[0082]圖55是圖示了根據(jù)第五實(shí)施例的一個(gè)變型例的主機(jī)的操作示例的流程圖。
【具體實(shí)施方式】
[0083]下面將對本發(fā)明的某些實(shí)施例進(jìn)行描述。描述順序如下:[0084]1.第一實(shí)施例(存儲(chǔ)控制器通過多種軟判決解碼算法執(zhí)行糾錯(cuò)的示例)
[0085]2.第二實(shí)施例(存儲(chǔ)控制器基于主機(jī)的控制執(zhí)行糾錯(cuò)的示例)
[0086]3.第三實(shí)施例(主機(jī)通過軟判決解碼算法執(zhí)行糾錯(cuò)的示例)
[0087]4.第四實(shí)施例(從采用相同閾值讀取的數(shù)據(jù)生成軟判決值并采用該軟判決值執(zhí)行糾錯(cuò)的示例)
[0088]5.第五實(shí)施例(從采用不同閾值讀取的數(shù)據(jù)生成軟判決值并采用該軟判決值執(zhí)行糾錯(cuò)的示例)
[0089](1、第一實(shí)施例)
[0090](信息處理系統(tǒng)的配置示例)
[0091]圖1是圖示了根據(jù)第一實(shí)施例的信息處理系統(tǒng)的配置示例的方框圖。信息處理系統(tǒng)包括主機(jī)100和儲(chǔ)存器200。
[0092]主機(jī)100用于控制整個(gè)信息處理系統(tǒng)。更具體地,主機(jī)100生成命令和寫入數(shù)據(jù),并通過信號線109將該命令和寫入數(shù)據(jù)提供給儲(chǔ)存器200。而且,主機(jī)100接收來自儲(chǔ)存器200的讀取數(shù)據(jù)。該命令可用于控制儲(chǔ)存器200,該命令的示例可包括用于將寫入數(shù)據(jù)寫入的寫入命令以及用于對讀取數(shù)據(jù)進(jìn)行讀取的讀取命令。
[0093]儲(chǔ)存器200包括存儲(chǔ)控制器300和非易失性存儲(chǔ)器400。存儲(chǔ)控制器300用于控制非易失性存儲(chǔ)器400。當(dāng)存儲(chǔ)控制器300從主機(jī)100接收寫入命令和寫入數(shù)據(jù)時(shí),存儲(chǔ)控制器300從該寫入數(shù)據(jù)生成錯(cuò)誤檢測和糾正代碼(ECC)。更具體地,存儲(chǔ)控制器300將寫入數(shù)據(jù)轉(zhuǎn)換(即編碼)為包含寫入數(shù)據(jù)和奇偶校驗(yàn)的碼字。存儲(chǔ)控制器300通過信號線309訪問非易失性存儲(chǔ)器400以將已編碼的數(shù)據(jù)寫入非易失性存儲(chǔ)器400。
[0094]而且,當(dāng)存儲(chǔ)控制器300接收來自主機(jī)100的讀取命令時(shí),存儲(chǔ)控制器300通過信號線309訪問非易失性存儲(chǔ)器400以讀取已編碼的數(shù)據(jù)。然后,存儲(chǔ)控制器300將已編碼的數(shù)據(jù)轉(zhuǎn)換(即解碼)為編碼前的原始數(shù)據(jù)。在解碼過程中,存儲(chǔ)控制器300基于ECC檢測并糾正數(shù)據(jù)中的錯(cuò)誤。存儲(chǔ)控制器300將糾正后的數(shù)據(jù)提供給主機(jī)100。
[0095]要注意的是,存儲(chǔ)控制器300與本發(fā)明的實(shí)施例中的“控制器”的具體示例相對應(yīng)。
[0096]非易失性存儲(chǔ)器400基于存儲(chǔ)控制器300的控制保持?jǐn)?shù)據(jù)。例如,可將ReRAM用作非易失性存儲(chǔ)器400。要注意的是,除了 ReRAM,快閃存儲(chǔ)器、PCRAM和MRAM等都可用作非易失性存儲(chǔ)器400。而且,存儲(chǔ)控制器300將數(shù)據(jù)儲(chǔ)存在非易失性存儲(chǔ)器400中;然而,除了非易失性存儲(chǔ)器400,數(shù)據(jù)也可儲(chǔ)存在任何能夠保持?jǐn)?shù)據(jù)的儲(chǔ)存介質(zhì)或儲(chǔ)存裝置中。這種儲(chǔ)存裝置的一個(gè)示例可為硬盤驅(qū)動(dòng)器(HDD)。
[0097](主機(jī)的配置示例)
[0098]圖2是圖示了根據(jù)第一實(shí)施例的主機(jī)100的配置示例的方框圖。主機(jī)100包括ROM (只讀存儲(chǔ)器)102、RAM (隨機(jī)存取存儲(chǔ)器)103和CPU (中央處理單元)104。而且,主機(jī)100包括用戶接口 101、總線105和儲(chǔ)存器接口 106。
[0099]用戶接口 101是在信息處理系統(tǒng)和信息處理系統(tǒng)的用戶之間進(jìn)行相互交換輸入數(shù)據(jù)和輸出數(shù)據(jù)的接口。R0M102對由CPU104等執(zhí)行的程序進(jìn)行保持。RAM103臨時(shí)保持CPU104執(zhí)行處理所需的數(shù)據(jù)。CPU104用于控制整個(gè)主機(jī)100。總線105是用于在用戶接口101、R0M102、RAM103和CPU104與儲(chǔ)存器接口 106之間相互交換數(shù)據(jù)的公共路徑。儲(chǔ)存器接口 106是用于在主機(jī)100與儲(chǔ)存器200之間相互交換數(shù)據(jù)和命令的接口。
[0100](存儲(chǔ)控制器的配置示例)
[0101]圖3是圖示了根據(jù)第一實(shí)施例的存儲(chǔ)控制器300的配置示例的方框圖。存儲(chǔ)控制器300包括主機(jī)接口 301、RAM302、CPU303、ECC處理部304、R0M305、總線306和非易失性存儲(chǔ)器接口 307。
[0102]主機(jī)接口 301使存儲(chǔ)控制器300與主機(jī)100相互交換數(shù)據(jù)和命令。RAM302臨時(shí)保持CPU303執(zhí)行處理所需的數(shù)據(jù)。
[0103]ECC處理部304用于對寫入數(shù)據(jù)編碼和對讀取數(shù)據(jù)解碼。在對寫入數(shù)據(jù)編碼時(shí),ECC處理部304通過對各個(gè)寫入數(shù)據(jù)添加奇偶校驗(yàn)以預(yù)定單位對多個(gè)寫入數(shù)據(jù)進(jìn)行編碼。采用能夠通過軟判決解碼算法糾正錯(cuò)誤的算法進(jìn)行編碼。而且,以預(yù)定單位編碼后的各個(gè)數(shù)據(jù)稱為“碼字”。然后,ECC處理部304通過總線306將已編碼的寫入數(shù)據(jù)提供給非易失性存儲(chǔ)器400。
[0104]進(jìn)一步地,ECC處理部304將已編碼的讀取數(shù)據(jù)解碼為原始數(shù)據(jù)。在該解碼過程中,ECC處理部304采用軟判決解碼算法糾正碼字中的錯(cuò)誤。ECC處理部304通過總線306將表明糾錯(cuò)是否失敗的糾正成功/失敗信息提供給CPU303。而且,當(dāng)糾錯(cuò)成功時(shí),ECC處理部304通過總線306將已解碼的數(shù)據(jù)提供給主機(jī)100。
[0105]CPU303用于控制整個(gè)存儲(chǔ)控制器300。而且,當(dāng)CPU303從ECC處理部304接收表明糾錯(cuò)失敗的糾正成功/失敗信息時(shí),CPU303采用軟判決解碼算法糾正碼字中的錯(cuò)誤,該軟判決解碼算法的糾錯(cuò)能力高于ECC處理部304采用的算法的糾錯(cuò)能力。
[0106]R0M305對由CPU303執(zhí)行的程序等進(jìn)行保持。例如,R0M305可保持用于通過軟判決解碼算法執(zhí)行糾錯(cuò)的步驟的程序。
[0107]總線306是用于主機(jī)接口 301、RAM302、CPU303、ECC處理部304、R0M305與非易失性存儲(chǔ)器接口 307之間相互交換數(shù)據(jù)的公共路徑。非易失性存儲(chǔ)器接口 307是用于使存儲(chǔ)控制器300和非易失性存儲(chǔ)器400之間相互交換數(shù)據(jù)和命令的接口。
[0108]圖4是圖示了根據(jù)第一實(shí)施例的存儲(chǔ)控制器300的功能配置示例的方框圖。存儲(chǔ)控制器300包括編碼部310、寫入處理部320、讀取處理部330和糾錯(cuò)部340。圖4中的編碼部310由圖3中的ECC處理部304實(shí)現(xiàn)。而且,圖4中的寫入處理部320和讀取處理部330由圖3中的主機(jī)接口 301、RAM302、CPU303、R0M305、總線306和非易失性存儲(chǔ)器接口 307等實(shí)現(xiàn)。圖4中的糾錯(cuò)部340由圖3中的RAM302、CPU303、ECC處理部304和R0M305等實(shí)現(xiàn)。
[0109]編碼部310用于將寫入數(shù)據(jù)編碼為碼字。在該編碼過程中,將寫入數(shù)據(jù)編碼為代碼,該代碼中的錯(cuò)誤將通過軟判決解碼算法進(jìn)行糾正。更具體地,寫入數(shù)據(jù)被編碼為LDPC(低密度奇偶檢驗(yàn))代碼等。編碼部310將生成的碼字提供給寫入處理部320。
[0110]要注意的是,編碼部310將寫入數(shù)據(jù)編碼為LDPC代碼;然而,除了 LDPC代碼,寫入數(shù)據(jù)也可被編碼為采用軟判決解碼算法能夠糾正錯(cuò)誤的任何代碼。例如,編碼部310可將寫入數(shù)據(jù)編碼為卷積碼或turbo碼。
[0111]寫入處理部320響應(yīng)于寫入命令執(zhí)行將已編碼的寫入數(shù)據(jù)寫入非易失性存儲(chǔ)器400的步驟。當(dāng)寫入處理部320從主機(jī)100接收寫入命令時(shí),寫入處理部320從編碼部310獲取被編碼為碼字的寫入數(shù)據(jù),并訪問非易失性存儲(chǔ)器400以將碼字寫入由命令指定的存儲(chǔ)地址。[0112]讀取處理部330用于響應(yīng)于讀取命令執(zhí)行從非易失性存儲(chǔ)器400讀取讀取數(shù)據(jù)的步驟。當(dāng)讀取處理部330從主機(jī)100接收讀取命令時(shí),讀取處理部330訪問非易失性存儲(chǔ)器400以讀取數(shù)據(jù),該數(shù)據(jù)與來自由該命令指定的存儲(chǔ)地址的作為讀取數(shù)據(jù)的碼字相對應(yīng)。碼字中各個(gè)位元的值可為“O”或“1”,即由硬判決值讀取的值。讀取處理部330將讀取數(shù)據(jù)提供給糾錯(cuò)部340。
[0113]糾錯(cuò)部340糾正讀取數(shù)據(jù)(相當(dāng)于碼字的數(shù)據(jù))中的錯(cuò)誤。糾錯(cuò)部340首先采用多個(gè)解碼算法中具有低糾錯(cuò)能力(以下稱為“低級算法”)的算法糾正讀取數(shù)據(jù)中的錯(cuò)誤。在采用低級算法進(jìn)行的糾錯(cuò)失敗的情況下,糾錯(cuò)部340采用比低級算法具有更高糾錯(cuò)能力的軟判決解碼算法(以下稱為“高級算法”)糾正讀取數(shù)據(jù)中的錯(cuò)誤。在采用高級算法進(jìn)行的糾錯(cuò)成功的情況下,糾錯(cuò)部340將原始數(shù)據(jù)(k位)輸出至主機(jī)100,該原始數(shù)據(jù)為糾正后的無奇偶校驗(yàn)的碼字。而且,糾錯(cuò)部340生成一種狀態(tài),該狀態(tài)被寫入表明糾正是否成功的信息,并且將該狀態(tài)輸出至主機(jī)100。
[0114]軟判決解碼算法的糾錯(cuò)能力等級可由諸如BER (比特誤碼率)等數(shù)據(jù)錯(cuò)誤率或諸如CNR (載波噪聲比)等通信質(zhì)量表示。例如,在采用軟判決解碼算法的情況下,將錯(cuò)誤率(t匕如BER)抑制至特定值或更低值所需的通信質(zhì)量(例如CNR)越低,軟判決解碼算法的糾錯(cuò)能力越高?;蛘撸哂泄潭ㄍㄐ刨|(zhì)量的錯(cuò)誤率越低,軟判決解碼算法的糾錯(cuò)能力越高。
[0115]圖5是圖示了根據(jù)第一實(shí)施例的碼字的數(shù)據(jù)結(jié)構(gòu)示例的示意圖。如圖5所示,編碼部310將各個(gè)k位數(shù)據(jù)編碼為η位碼字,其中k為整數(shù),η為比k大的整數(shù)。各個(gè)碼字包括k位數(shù)據(jù)和n-k位奇偶校驗(yàn)。各個(gè)碼字為錯(cuò)誤檢測和糾正代碼(ECC)。因此,碼字包含待編碼的原樣的數(shù)據(jù),能夠輕易將碼字分為數(shù)據(jù)和奇偶校驗(yàn)的代碼稱為“系統(tǒng)碼”。要注意的是,數(shù)據(jù)可被編碼為非系統(tǒng)碼。
[0116]圖6A和6B是圖示了根據(jù)第一實(shí)施例的糾錯(cuò)代碼的數(shù)據(jù)結(jié)構(gòu)示例的示意圖。在LDPC編碼系統(tǒng)中,校驗(yàn)矩陣H由糾錯(cuò)部340生成。校驗(yàn)矩陣H為其中的各行各列中的“I”(以下稱為“權(quán)重”)的數(shù)量是固定的校驗(yàn)矩陣。各行和各列的權(quán)重設(shè)定為使整個(gè)校驗(yàn)矩陣中“I”的數(shù)量是稀疏的。圖6A是圖示了校驗(yàn)矩陣H的權(quán)重的示例的示意圖。在該示例中,各列的權(quán)重為“3”,各行的權(quán)重為“6”。圖6B是圖示了具有圖6A所示權(quán)重的校驗(yàn)矩陣H的示例的示意圖。
[0117]圖7A和7B是描述了采用根據(jù)第一實(shí)施例的生成矩陣的方法的示意圖。圖7A是圖示了根據(jù)第一實(shí)施例的生成矩陣G的示例的示意圖。編碼部310采用以下表達(dá)式從圖6A和6B中示例的校驗(yàn)矩陣H生成圖7A所示的生成矩陣G。要注意的是,編碼不限于采用必須用到以下表達(dá)式的校驗(yàn)矩陣的編碼。例如,可采用具有LDGM (低密度生成矩陣)配置的校驗(yàn)矩陣進(jìn)行編碼。
[0118]GXHt=O
[0119]如圖7A所示,在校驗(yàn)矩陣H中列數(shù)和行數(shù)分別為η和n_k的情況下,由校驗(yàn)矩陣H生成具有η列和k行的生成矩陣G。圖7B圖示了用于從生成矩陣和數(shù)據(jù)生成碼字的表達(dá)式的示例。如圖7B所示,碼字由生成矩陣G和待編碼數(shù)據(jù)的乘積生成。碼字包含k位數(shù)據(jù)和n-k位奇偶校驗(yàn)。要注意的是,編碼部310用于生成生成矩陣G ;然而,編碼部310的配置并不限于此。編碼部310可用于將預(yù)先生成的生成矩陣G儲(chǔ)存在如ROM等生成矩陣存儲(chǔ)部中,然后從生成矩陣存儲(chǔ)部讀取該生成矩陣。[0120](糾錯(cuò)部的配置示例)
[0121]圖8是圖示了根據(jù)第一實(shí)施例的糾錯(cuò)部340的配置示例的方框圖。糾錯(cuò)部340包括讀取數(shù)據(jù)緩沖器350、低級糾錯(cuò)部360、糾錯(cuò)程序存儲(chǔ)部370和高級軟判決糾錯(cuò)部380。
[0122]讀取數(shù)據(jù)緩沖器350用于保持由讀取處理部330讀取的讀取數(shù)據(jù)。
[0123]低級糾錯(cuò)部360用于采用比在高級軟判決糾錯(cuò)部380中的算法具有更低糾錯(cuò)能力的解碼算法(低級算法)糾正讀取數(shù)據(jù)中的錯(cuò)誤。例如,可采用作為一種軟判決解碼算法的Min-Sum算法作為低級算法。要注意的是,低級算法不限于軟判決解碼算法。例如,還可采用除軟判決算法外的任何能夠糾正讀取數(shù)據(jù)中的錯(cuò)誤的解碼算法,比如采用位翻轉(zhuǎn)(Bit-flipping)算法。低級糾錯(cuò)部360從讀取數(shù)據(jù)緩沖器350中讀取出讀取數(shù)據(jù)并采用低級算法糾正讀取數(shù)據(jù)中的錯(cuò)誤。在糾錯(cuò)成功的情況下,低級糾錯(cuò)部360將原始數(shù)據(jù)(k位)輸出至主機(jī)100,該原始數(shù)據(jù)為糾正后的無奇偶校驗(yàn)的讀取數(shù)據(jù)。而且,低級糾錯(cuò)部360將表明糾正是否成功的糾正成功/失敗信息提供給高級軟判決糾錯(cuò)部380。
[0124]糾錯(cuò)程序存儲(chǔ)部370用于保持通過高級算法執(zhí)行糾錯(cuò)的步驟的糾錯(cuò)程序。
[0125]高級軟判決糾錯(cuò)部380用于采用比低級糾錯(cuò)部360中的算法具有更高糾錯(cuò)能力的軟判決解碼算法(高級算法)糾正讀取數(shù)據(jù)中的錯(cuò)誤。例如,可采用BP (置信傳播)算法作為該高級算法。BP算法也稱為“和-積算法”。當(dāng)高級軟判決糾錯(cuò)部380從低級糾錯(cuò)部360接收表明糾正失敗的糾正成功/失敗信息時(shí),高級軟判決糾錯(cuò)部380讀取糾錯(cuò)已經(jīng)失敗的讀取數(shù)據(jù)。高級軟判決糾錯(cuò)部380通過從糾錯(cuò)程序存儲(chǔ)部370讀取糾錯(cuò)程序然后執(zhí)行糾錯(cuò)程序,開始對讀取數(shù)據(jù)進(jìn)行糾錯(cuò)。在糾錯(cuò)成功的情況下,高級軟判決糾錯(cuò)部380將原始數(shù)據(jù)(k位)輸出至主機(jī)100,該原始數(shù)據(jù)為糾正后的無奇偶校驗(yàn)的讀取數(shù)據(jù)。而且,高級軟判決糾錯(cuò)部380生成一種狀態(tài),該狀態(tài)被寫入表明糾正是否成功的信息,并將該狀態(tài)輸出至主機(jī) 100。
[0126]如上所述,因?yàn)樽x取數(shù)據(jù)中的各個(gè)位元的值都為硬判決值,所以將硬判決值輸入低級糾錯(cuò)部360和高級軟判決糾錯(cuò)部380。
[0127]要注意的是,除了 Min-Sum算法,低級糾錯(cuò)部360允許采用任何比高級軟判決糾錯(cuò)部380中的算法具有更低糾錯(cuò)能力的軟判決解碼算法進(jìn)行糾錯(cuò)。而且,除了 BP算法,高級軟判決糾錯(cuò)部380允許采用任何比低級糾錯(cuò)部360中的算法具有更高糾錯(cuò)能力的軟判決解碼算法進(jìn)行糾錯(cuò)。
[0128](低級糾錯(cuò)部的配置示例)
[0129]圖9是圖示了根據(jù)第一實(shí)施例的低級糾錯(cuò)部360的配置示例的方框圖。低級糾錯(cuò)部360包括低級糾錯(cuò)電路361和糾正成功/失敗判定部366。
[0130]低級糾錯(cuò)電路361是用于采用軟判決解碼算法糾正讀取數(shù)據(jù)中的錯(cuò)誤的電路。例如,在低級糾錯(cuò)電路361中,可采用Min-Sum算法作為軟判決解碼算法。在采用Min-Sum算法的情況下,低級糾錯(cuò)電路361包括變量節(jié)點(diǎn)處理部362和校驗(yàn)節(jié)點(diǎn)處理部364。
[0131]變量節(jié)點(diǎn)處理部362用于基于校驗(yàn)節(jié)點(diǎn)處理部364中的奇偶校驗(yàn)結(jié)果對讀取數(shù)據(jù)中的錯(cuò)誤進(jìn)行檢測和糾正。而且,校驗(yàn)節(jié)點(diǎn)處理部364用于對讀取數(shù)據(jù)進(jìn)行奇偶校驗(yàn)。
[0132]更具體地,變量節(jié)點(diǎn)處理部362從讀取數(shù)據(jù)緩沖器350獲取讀取數(shù)據(jù)并基于該讀取數(shù)據(jù)生成消息消息Uti a為實(shí)數(shù)變量,其表示糾正前的碼字中的第i碼元(例如,位元)的值為“O”或“I”的似然值。而且,“i”為O至η-1之間的整數(shù),其中,η為碼字的碼長。碼元可為構(gòu)成碼字的最小單位,也稱為“符號”。
[0133]變量節(jié)點(diǎn)處理部362基于消息Utl和校驗(yàn)節(jié)點(diǎn)處理部364的奇偶校驗(yàn)結(jié)果生成消息να,并將消息輸出至校驗(yàn)節(jié)點(diǎn)處理部364。消息為實(shí)數(shù)變量,其表示糾正后的碼字中第iL碼元(例如,位元)的似然值。例如,對數(shù)似然比Λ0-α)可生成為消息U(l j。對數(shù)似然比Λ (riL)為碼字的第iL位元的值為“O”的概率與碼字的第iL位元的值為“I”的概率之比值的對數(shù),對數(shù)似然比可由以下表達(dá)式確定,例如:
[0134][數(shù)學(xué)式I]
[0135]
【權(quán)利要求】
1.一種控制器,其包括: 低級糾錯(cuò)部,其用于執(zhí)行低級糾錯(cuò),在所述低級糾錯(cuò)中,碼字中的錯(cuò)誤采用預(yù)定解碼算法進(jìn)行糾正;以及 高級軟判決糾錯(cuò)部,其用于執(zhí)行高級軟判決糾錯(cuò),在所述高級軟判決糾錯(cuò)中,當(dāng)所述低級糾錯(cuò)部執(zhí)行的糾錯(cuò)失敗時(shí),所述碼字中的錯(cuò)誤采用高級算法糾正,所述高級算法為軟判決解碼算法,所述軟判決解碼算法的糾錯(cuò)能力高于所述預(yù)定解碼算法的糾錯(cuò)能力。
2.如根據(jù)權(quán)利要求1所述的控制器,其還包括: 讀取處理部,其用于從存儲(chǔ)器中讀取所述碼字并將所述碼字提供給所述低級糾錯(cuò)部,所述碼字包括多個(gè)碼元; 碼字獲取部,其用于當(dāng)所述低級糾錯(cuò)部執(zhí)行的糾錯(cuò)失敗時(shí)多次執(zhí)行從所述存儲(chǔ)器中讀取所述碼字的碼字獲??;以及 軟判決值生成部,其用于基于由所述碼字獲取部讀取的每一個(gè)所述碼字而為每一個(gè)所述碼元生成軟判決值,所述軟判決值與每一個(gè)所述碼元的值為特定值的概率相對應(yīng),并將每一個(gè)所述碼元的值被替換為所述軟判決值的碼字提供給所述高級軟判決糾錯(cuò)部。
3.根據(jù)權(quán)利要求2所述的控制器,其中,所述軟判決值生成部為每一個(gè)所述碼元求取所述碼字獲取部讀取所述特定值的頻率,并基于所述頻率生成所述軟判決值。
4.根據(jù)權(quán)利要求2所 述的控制器,其還包括閾值控制部,所述閾值控制部用于在每次執(zhí)行所述碼字獲取時(shí)在預(yù)定的范圍內(nèi)改變閾值,所述閾值為判斷所述碼元的值的閾值, 其中,所述軟判決值生成部基于讀取具有所述特定值的所述碼元時(shí)所述閾值的最大值或最小值來生成所述軟判決值。
5.根據(jù)權(quán)利要求2所述的控制器,其中, 所述軟判決值生成部在執(zhí)行了多次所述碼字獲取之后生成所述軟判決值,以及 所述高級軟判決糾錯(cuò)部在生成所述軟判決值時(shí)執(zhí)行所述高級軟判決糾錯(cuò)。
6.根據(jù)權(quán)利要求2所述的控制器,其中, 所述軟判決值生成部在每次執(zhí)行所述碼字獲取時(shí)生成所述軟判決值,以及 所述高級軟判決糾錯(cuò)部在每次生成所述軟判決值時(shí)執(zhí)行所述高級軟判決糾錯(cuò)。
7.根據(jù)權(quán)利要求1所述的控制器,其中, 所述碼字包括多個(gè)碼元,以及 所述低級糾錯(cuò)部為每一個(gè)所述碼元生成軟判決值,所述軟判決值與每一個(gè)所述碼元的值為特定值的概率相對應(yīng),并將每一個(gè)所述碼元的值被替換為所述軟判決值的碼字提供給所述高級軟判決糾錯(cuò)部。
8.—種信息處理系統(tǒng),其包括: 主機(jī),其用于發(fā)出用于指令從存儲(chǔ)部讀取碼字的讀取命令; 讀取處理部,其用于響應(yīng)于所述讀取命令而從所述存儲(chǔ)部讀取所述碼字; 低級糾錯(cuò)部,其用于執(zhí)行低級糾錯(cuò),在所述低級糾錯(cuò)中,所述碼字中的錯(cuò)誤采用預(yù)定解碼算法進(jìn)行糾正;以及 高級軟判決糾錯(cuò)部,其用于執(zhí)行高級軟判決糾錯(cuò),在高級軟判決糾錯(cuò)中,當(dāng)所述低級糾錯(cuò)部執(zhí)行的糾錯(cuò)失敗時(shí),所述碼字中的錯(cuò)誤采用高級算法進(jìn)行糾正,所述高級算法為軟判決解碼算法,所述軟判決解碼算法的糾錯(cuò)能力高于所述預(yù)定解碼算法的糾錯(cuò)能力。
9.根據(jù)權(quán)利要求8所述的信息處理系統(tǒng),其中, 所述主機(jī)基于所述高級軟判決糾錯(cuò)的處理時(shí)間確定包括糾正開始命令的一個(gè)以上命令的執(zhí)行順序,并將所述一個(gè)以上命令按照所述執(zhí)行順序提供給所述高級軟判決糾錯(cuò)部,所述糾正開始命令用于當(dāng)所述低級糾錯(cuò)部執(zhí)行的糾錯(cuò)失敗時(shí)指令所述高級軟判決糾錯(cuò)的開始,以及, 當(dāng)所述低級糾錯(cuò)部執(zhí)行的糾錯(cuò)失敗且所述糾正開始命令已提供給所述高級軟判決糾錯(cuò)部時(shí),所述高級軟判決糾錯(cuò)部開始所述高級軟判決糾錯(cuò)。
10.根據(jù)權(quán)利要求8所述的信息處理系統(tǒng),其中, 當(dāng)所述低級糾錯(cuò)部執(zhí)行的糾錯(cuò)失敗且讀取所述碼字發(fā)生中斷時(shí),所述主機(jī)發(fā)出暫停所述高級軟判決糾錯(cuò)的中止命令,以及 當(dāng)所述低級糾錯(cuò)部執(zhí)行的糾錯(cuò)失敗時(shí),所述高級軟判決糾錯(cuò)部響應(yīng)于所述中止命令暫停正在執(zhí)行的所述高級軟判決糾錯(cuò)。
11.根據(jù)權(quán)利要求8所述的信息處理系統(tǒng),其中, 所述主機(jī)還基于所述碼字的類型生成表明是否執(zhí)行所述高級軟判決糾錯(cuò)的使能命令,以及, 當(dāng)所述低級糾錯(cuò)部執(zhí)行的糾錯(cuò)失敗時(shí),所述高級軟判決糾錯(cuò)部響應(yīng)于所述使能信號執(zhí)行所述高級軟判決糾錯(cuò)。
12.根據(jù)權(quán)利要求8所述的信息處理系統(tǒng),其中, 所述高級算法包括多種高級算法, 所述主機(jī)基于所述碼字的類型指定所述多種高級算法中的一種,以及 當(dāng)所述低級糾錯(cuò)部執(zhí)行的糾錯(cuò)失敗時(shí),所述高級軟判決糾錯(cuò)部采用所述指定的高級算法糾正所述碼字中的錯(cuò)誤。
13.—種信息處理系統(tǒng),其包括: 控制器,其用于從存儲(chǔ)部讀取碼字并執(zhí)行低級糾錯(cuò),在所述低級糾錯(cuò)中,所述碼字中的錯(cuò)誤采用預(yù)定解碼算法進(jìn)行糾正;以及, 主機(jī),其用于當(dāng)所述控制器執(zhí)行的糾錯(cuò)失敗時(shí)執(zhí)行高級軟判決糾錯(cuò),在所述高級軟判決糾錯(cuò)中,所述碼字中的錯(cuò)誤采用高級算法進(jìn)行糾正,所述高級算法為軟判決解碼算法,所述軟判決解碼算法的糾錯(cuò)能力高于所述預(yù)定解碼算法的糾錯(cuò)能力。
14.根據(jù)權(quán)利要求13所述的信息處理系統(tǒng),其中, 當(dāng)所述控制器執(zhí)行的糾錯(cuò)失敗時(shí),所述主機(jī)發(fā)出碼字輸出命令,所述碼字輸出命令用于指令所述控制器輸出所述碼字,以及 所述控制器響應(yīng)于所述碼字輸出命令從所述存儲(chǔ)部讀取所述碼字并將所述碼字輸出至所述主機(jī),而不執(zhí)行所述低級糾錯(cuò)。
15.根據(jù)權(quán)利要求13所述的信息處理系統(tǒng),其中, 所述控制器在所述低級糾錯(cuò)中生成糾正成功/失敗信息并將所述糾正成功/失敗信息輸出至所述主機(jī),所述糾正成功/失敗信息表明對所述碼字的糾錯(cuò)是否成功,以及 所述主機(jī)基于所述糾正成功/失敗信息判斷所述控制器執(zhí)行的糾錯(cuò)是否失敗。
16.—種控制器的控制方法,所述方法包括: 執(zhí)行低級糾錯(cuò),在所述低級糾錯(cuò)中,碼字中的錯(cuò)誤采用預(yù)定解碼算法進(jìn)行糾正;以及當(dāng)所述低級糾錯(cuò)中執(zhí)行的糾錯(cuò)失敗時(shí)執(zhí)行高級軟判決糾錯(cuò),在所述高級軟判決糾錯(cuò)中,所述碼字中的錯(cuò)誤采用高級算法進(jìn)行糾正,所述高級算法為軟判決算法,所述軟判決算法的糾錯(cuò)能力高于所述預(yù)定解碼算法的糾錯(cuò)能力。
17.—種嵌入有程序的非暫存性有形記錄介質(zhì),當(dāng)所述計(jì)算機(jī)可讀程序由計(jì)算機(jī)執(zhí)行時(shí),使得所述計(jì)算機(jī)實(shí)施一種方法,所述方法包括: 執(zhí)行低級糾錯(cuò),在所述低級糾錯(cuò)中,碼字中的錯(cuò)誤采用預(yù)定解碼算法進(jìn)行糾正;以及當(dāng)所述低級糾錯(cuò)中執(zhí)行的糾錯(cuò)失敗時(shí)執(zhí)行高級軟判決糾錯(cuò),在所述高級軟判決糾錯(cuò)中,所述碼字中的錯(cuò)誤采用高級算法進(jìn)行糾正,所述高級算法為軟判決算法,所述軟判決算法的糾錯(cuò)能 力高于所述預(yù)定解碼算法的糾錯(cuò)能力。
【文檔編號】G06F12/06GK103942154SQ201410016125
【公開日】2014年7月23日 申請日期:2014年1月14日 優(yōu)先權(quán)日:2013年1月21日
【發(fā)明者】阪井塁, 藤波靖, 池谷亮志 申請人:索尼公司