本公開涉及存儲控制器、存儲設(shè)備、信息處理系統(tǒng)以及存儲控制方法。更具體地,本公開涉及能夠基于糾錯碼執(zhí)行錯誤校正的存儲控制器、存儲設(shè)備、信息處理系統(tǒng)以及存儲控制方法。
背景技術(shù):當使用存儲器時,為了檢測在存儲器中存儲的數(shù)據(jù)中是否產(chǎn)生了錯誤并且在存儲器中存儲的數(shù)據(jù)中產(chǎn)生錯誤時校正該錯誤,糾錯碼(ECC)在某些情況下被添加到該數(shù)據(jù)。特別地,ECC通常被用在諸如與非門(NAND)閃速存儲器之類的非易失性存儲器中。因此,對先前確定的每個數(shù)據(jù)單位添加ECC并且在這種狀態(tài)下,數(shù)據(jù)被記錄。結(jié)果,加強了數(shù)據(jù)保持特性。例如,提出了一種非易失性存儲器系統(tǒng),其中對于在數(shù)據(jù)區(qū)域中以字的增量方式記錄的數(shù)據(jù),ECC被存儲在ECC區(qū)域中。例如,在日本專利特開No.2011-039585中描述了這種非易失性存儲器系統(tǒng)。
技術(shù)實現(xiàn)要素:在日本專利特開No.2011-039585中描述的相關(guān)技術(shù)中,對于物理地址連續(xù)的數(shù)據(jù)生成了ECC。然而,當主機計算機基于邏輯地址來指定期望其保持特性被加強的數(shù)據(jù)時,數(shù)據(jù)未必被記錄在與邏輯地址相對應(yīng)的、在物理地址空間上連續(xù)的非易失性存儲器的區(qū)域中。為此,必需在期望其保持特性被加強的數(shù)據(jù)已經(jīng)被拷貝到物理地址空間中的連續(xù)區(qū)域之后執(zhí)行用于保持特性的加強命令。也就是說,擔心的是存儲器系統(tǒng)性能被由于拷貝而引起的開銷降低了。利用在日本專利特開No.2011-081776中描述的相關(guān)技術(shù),通過使用兩種糾錯碼,改進了長期保持特性,并且抑制了糾錯碼的增加帶來的影響。在這樣的相關(guān)技術(shù)中,當僅在變成糾錯碼的對象的數(shù)據(jù)的一部分中產(chǎn)生改變時,在已經(jīng)讀出變成糾錯碼的對象的全體數(shù)據(jù)之后重計算糾錯碼是必要的。特別地,當提供了多個種類的糾錯碼時,因為變成糾錯碼的對象的數(shù)據(jù)變得很大,所以用于數(shù)據(jù)的讀出以及糾錯碼的重計算所需的時間變得很長。因此,每當數(shù)據(jù)的一部分被更新時重復(fù)糾錯碼的重計算變成造成顯著的性能降低的因素并且因此是長遠的。本公開已經(jīng)被做出以便解決上文中所描述的問題,并且因此希望在不用知道關(guān)于物理地址空間的布置的情況下加強數(shù)據(jù)的保持特性。為了達到上文中所描述的期望,根據(jù)本公開的實施例,提供了一種存儲控制器,包括:被配置成在以數(shù)據(jù)和該數(shù)據(jù)的第一糾錯碼作為單位數(shù)據(jù)(unitdata)而將多個單位數(shù)據(jù)存儲在存儲部中,并且將預(yù)定的多個單位數(shù)據(jù)的第二糾錯碼存儲在存儲部中以便對應(yīng)于多個單位數(shù)據(jù)中的預(yù)定的多個單位數(shù)據(jù)時,以每個條目來管理預(yù)定的多個單位數(shù)據(jù)與對應(yīng)于預(yù)定的多個單位數(shù)據(jù)的第二糾錯碼之間的對應(yīng)關(guān)系;地址管理部,被配置成管理邏輯地址與糾錯碼管理部中的條目之間的對應(yīng)關(guān)系;以及糾錯部,被配置成獲取糾錯碼管理部中的與作為從地址管理部進行讀取的對象的邏輯地址相對應(yīng)的條目,并且基于在所關(guān)心的條目中管理的預(yù)定的多個單位數(shù)據(jù)和第二糾錯碼來執(zhí)行糾錯。因此,提供了一種操作,該操作使得利用與物理地址空間上的任意的多個單位數(shù)據(jù)相對應(yīng)的第二糾錯碼來執(zhí)行糾錯。優(yōu)選地,預(yù)定的多個單位數(shù)據(jù)可以被存儲在存儲部中的不連的續(xù)物理地址中。因此,提供了一種操作使得利用與在不連續(xù)的物理地址中存儲的多個單位數(shù)據(jù)相對應(yīng)的第二糾錯碼來執(zhí)行糾錯。優(yōu)選地,地址管理部可以管理表示與邏輯地址相對應(yīng)的第二糾錯碼是否被存儲的糾錯碼標志,并且糾錯部可以僅在糾錯碼標志表示第二糾錯碼被存儲的結(jié)果時執(zhí)行糾錯。因此,提供了一種操作使得通過參照糾錯碼來跳過無用的糾錯處理。優(yōu)選地,糾錯碼管理部可以調(diào)控預(yù)定的多個單位數(shù)據(jù)的耦接順序;并且糾錯部可以根據(jù)該偶接順序來偶接預(yù)定的多個單位數(shù)據(jù),從而執(zhí)行糾錯。因此,提供了一種操作使得利用與預(yù)定個數(shù)據(jù)相對應(yīng)的第二糾錯碼來執(zhí)行糾錯,物理地址空間上的任意的多個單位數(shù)據(jù)以任意順序被偶接到預(yù)定個數(shù)據(jù)中。優(yōu)選地,糾錯碼管理部可以保持與預(yù)定的多個單位數(shù)據(jù)相對應(yīng)的第二糾錯碼在存儲部中的物理地址;并且糾錯部可以根據(jù)第二糾錯碼的物理地址從存儲部獲取第二糾錯碼。因此,提供了一種操作使得根據(jù)在物理地址空間上的任意的多個單位數(shù)據(jù)的物理地址來利用對應(yīng)的第二糾錯碼執(zhí)行糾錯。優(yōu)選地,糾錯碼管理部可以進一步將與預(yù)定的多個單位數(shù)據(jù)相對應(yīng)的第二糾錯碼在存儲部中的物理地址內(nèi)偏移;并且糾錯部可以根據(jù)第二糾錯碼的物理地址和物理地址內(nèi)偏移從存儲部獲取第二糾錯碼。因此,提供了一種操作使得預(yù)定的第二糾錯碼從在同一物理地址中存儲的多個第二糾錯碼(ECC)中被選擇,從而執(zhí)行糾錯。優(yōu)選地,存儲控制器可以進一步包括:糾錯碼生成部,被配置成在接收到數(shù)據(jù)保持特性加強命令時針對在該數(shù)據(jù)保持特性加強命令所指定的邏輯地址的范圍內(nèi)存儲的數(shù)據(jù)來生成第二糾錯碼;以及條目管理部,被配置成被配置成在接收到數(shù)據(jù)保持特性加強命令時,針對數(shù)據(jù)保持特性加強命令所指定的邏輯地址的范圍內(nèi)存儲的數(shù)據(jù),在糾錯碼管理部中新確保在其中保持與對應(yīng)的第二糾錯碼的對應(yīng)關(guān)系的條目,并且將新確保的條目與指定的邏輯地址之間的對應(yīng)關(guān)系登記在地址管理部中。因此,提供了種操作使得數(shù)據(jù)保持特性加強處理利用數(shù)據(jù)保持特性加強命令作為觸發(fā)被執(zhí)行。優(yōu)選地,條目管理部可以在接收到數(shù)據(jù)保持特性加強解除命令時,釋放在糾錯碼管理部中針對在數(shù)據(jù)保持特性加強解除命令中指定的邏輯地址的范圍內(nèi)存儲的數(shù)據(jù),保持與對應(yīng)的第二糾錯碼的對應(yīng)關(guān)系的條目,并且可以刪除地址管理部中的釋放的條目與指定的邏輯地址之間的對應(yīng)關(guān)系。因此,提供了一種操作使得數(shù)據(jù)保持特性加強解除處理利用數(shù)據(jù)保持特性加強解除命令作為觸發(fā)來執(zhí)行。優(yōu)選地,糾錯碼管理部可以對于每個條目保持與第二糾錯碼相對應(yīng)的單位數(shù)據(jù)的數(shù)目;并且條目管理部可以在新確保條目時以其中單位數(shù)據(jù)的數(shù)目表示零的條目為目標。因此,提供了一種操作使得在數(shù)據(jù)保持特性被新加強時,糾錯碼管理部中的空條目被利用。優(yōu)選地,糾錯碼管理部可以對于每個條目都保持了與第二糾錯碼相對應(yīng)的單位數(shù)據(jù)的數(shù)目;并且條目管理部可以在新確保條目時以其中單位數(shù)據(jù)的數(shù)目小于預(yù)定數(shù)目的條目為目標。因此,提供了一種操作使得在數(shù)據(jù)保持特性被新加強時,糾錯碼管理部中具有對象數(shù)據(jù)的一個或多個空物理地址的條目被利用。優(yōu)選地,地址管理部可以將針對邏輯地址進行最后存取的時間保持為最后存取時間,其中存儲控制器可以進一步包括:糾錯碼生成部,被配置成在從最后存取時間起經(jīng)過預(yù)定的時間段時針對在邏輯地址中存儲的數(shù)據(jù)來生成第二糾錯碼;以及條目管理部,被配置成在從最后存取時間起經(jīng)過預(yù)定的時間段時,針對在邏輯地址中存儲的數(shù)據(jù),在糾錯碼管理部中新確保在其中保持與對應(yīng)的第二糾錯碼的對應(yīng)關(guān)系的條目,并且將新確保的條目與指定的邏輯地址之間的對應(yīng)關(guān)系登記在地址管理部中。因此,提供了一種操作使得長時間未被重寫的數(shù)據(jù)經(jīng)歷數(shù)據(jù)保存特性來作為加強,因為擔心這樣的數(shù)據(jù)逐漸消失。優(yōu)選地,在這種情況下,條目管理部可以在第二糾錯碼從最后存取時間起經(jīng)過預(yù)定的時間段為止的期間被存儲時,釋放糾錯碼管理部中的針對在邏輯地址中存儲的數(shù)據(jù)保持了與對應(yīng)的第二糾錯碼的對應(yīng)關(guān)系的該條目,并且可以刪除地址管理部中的釋放的條目與指定的邏輯地址之間的對應(yīng)關(guān)系。因此,提供了一種操作使得因為具有高的存取頻率的數(shù)據(jù)逐漸消失的可能性很低,所以數(shù)據(jù)保持特性加強被解除。根據(jù)本公開的另一實施例,提供了一種存儲設(shè)備,包括:單位數(shù)據(jù)存儲部,被配置成以數(shù)據(jù)和數(shù)據(jù)的第一糾錯碼作為單位數(shù)據(jù)而在其中存儲多個單位數(shù)據(jù);糾錯碼存儲部,被配置成在其中存儲預(yù)定的多個單位數(shù)據(jù)的第二糾錯碼以便對應(yīng)于多個單位數(shù)據(jù)中的預(yù)定的多個單位數(shù)據(jù);糾錯碼管理部,被配置成以每個條目來管理預(yù)定的多個單位數(shù)據(jù)與對應(yīng)于預(yù)定的多個單位數(shù)據(jù)的第二糾錯碼之間的對應(yīng)關(guān)系;地址管理部,被配置成管理邏輯地址與糾錯碼管理部中的條目之間的對應(yīng)關(guān)系;以及糾錯部,被配置成獲取糾錯碼管理部中的與作為從地址管理部進行讀取的對象的邏輯地址相對應(yīng)的條目,從而基于在所關(guān)心的條目中管理的預(yù)定的多個單位數(shù)據(jù)和第二糾錯碼來執(zhí)行糾錯。因此,提供了一種操作使得利用與存儲設(shè)備中的物理地址空間上的任意的多個單位數(shù)據(jù)相對應(yīng)的第二糾錯碼來執(zhí)行該糾錯。優(yōu)選地,單位數(shù)據(jù)存儲部和糾錯碼存儲部的每個可以是非易失性存儲器。根據(jù)本公開的又一個實施例,提供了一種信息處理系統(tǒng),包括:單位數(shù)據(jù)存儲部,被配置成以數(shù)據(jù)和數(shù)據(jù)的第一糾錯碼作為單位而在其中存儲多個單位數(shù)據(jù);糾錯碼存儲部,被配置成在其中存儲預(yù)定的多個單位數(shù)據(jù)的第二糾錯碼以便對應(yīng)于多個單位數(shù)據(jù)中的預(yù)定的多個單位數(shù)據(jù);糾錯碼管理部,被配置成以每個條目來管理預(yù)定的多個單位數(shù)據(jù)與對應(yīng)于預(yù)定的多個單位數(shù)據(jù)的第二糾錯碼之間的對應(yīng)關(guān)系;地址管理部,被配置成管理邏輯地址與糾錯碼管理部中的條目之間的對應(yīng)關(guān)系;糾錯部,被配置成獲取糾錯碼管理部中的與作為從地址管理部進行讀取的對象的邏輯地址相對應(yīng)的條目,從而基于在所關(guān)心的條目中管理的預(yù)定的多個單位數(shù)據(jù)和第二糾錯碼來執(zhí)行糾錯;以及主機計算機,被配置成發(fā)出請求以請求訪問單位數(shù)據(jù)存儲部。因此,提供了種操作使得在信息處理系統(tǒng)中利用與物理地址空間上的任意的多個單位數(shù)據(jù)相對應(yīng)的第二糾錯碼來執(zhí)行該糾錯。根據(jù)本公開的又一個實施例,提供了一種在存儲設(shè)備中使用的存儲控制方法,存儲設(shè)備包括:單位數(shù)據(jù)存儲部,以數(shù)據(jù)和數(shù)據(jù)的第一糾錯碼作為單位在其中存儲多個單位數(shù)據(jù);糾錯碼存儲部,在其中存儲預(yù)定的多個單位數(shù)據(jù)的第二糾錯碼以便對應(yīng)于多個單位數(shù)據(jù)中的預(yù)定的多個單位數(shù)據(jù);糾錯碼管理部,以每個條目來管理預(yù)定的多個單位數(shù)據(jù)與對應(yīng)于預(yù)定的多個單位數(shù)據(jù)的第二糾錯碼之間的對應(yīng)關(guān)系;以及地址管理部,管理邏輯地址與糾錯碼管理部中的條目之間的對應(yīng)關(guān)系,存儲控制方法包括:獲取糾錯碼管理部中的與作為從地址管理部進行讀取的對象的邏輯地址相對應(yīng)的條目;并且基于在所獲取的條目中管理的預(yù)定的多個單位數(shù)據(jù)和第二糾錯碼來執(zhí)行糾錯。利用在日本專利特開No.2011-081776中描述的相關(guān)技術(shù),通過使用兩種糾錯碼,改進了長期保持特性,并且抑制了糾錯碼的增加帶來的影響。在這樣的相關(guān)技術(shù)中,當僅在變成糾錯碼的對象的數(shù)據(jù)的一部分中產(chǎn)生改變時,在已經(jīng)讀出變成糾錯碼的對象的全體數(shù)據(jù)之后重計算糾錯碼是必要的。特別地,當提供了多個種類的糾錯碼時,因為變成糾錯碼的對象的數(shù)據(jù)變得很大,所以用于數(shù)據(jù)的讀出以及糾錯碼的重計算所需的時間變得很長。因此,每當數(shù)據(jù)的一部分被更新時重復(fù)糾錯碼的重計算變成造成顯著的性能降低的因素并且因此是長遠的。此外,進一步希望抑制當在作為糾錯碼的對象的數(shù)據(jù)的一部分中產(chǎn)生變化時的糾錯碼的重計算。為了獲得上文中所描述的期望,根據(jù)本公開的進一步的實施例,提供了一種存儲控制器和存儲控制方法。該存儲控制器包括:地址管理部,被配置成在多個數(shù)據(jù)和與多個數(shù)據(jù)相對應(yīng)的糾錯碼被存儲在存儲器的第一存儲區(qū)域,與每預(yù)定數(shù)目的多個數(shù)據(jù)對應(yīng)地將糾錯碼存儲在存儲器的第二存儲區(qū)域,并且將針對多個數(shù)據(jù)的任一個的附加數(shù)據(jù)和針對附加數(shù)據(jù)的糾錯碼存儲在存儲器的第三存儲區(qū)域時,針對多個數(shù)據(jù)來管理邏輯地址與存儲器的第一存儲區(qū)域或第三存儲區(qū)域中的物理地址之間的對應(yīng)關(guān)系;控制部,被配置成在與和寫入請求相關(guān)的邏輯地址相對應(yīng)的物理地址對應(yīng)于第一存儲區(qū)域時,將寫入請求相關(guān)的數(shù)據(jù)作為附加數(shù)據(jù)來將附加數(shù)據(jù)和針對附加數(shù)據(jù)的糾錯碼附加到第三存儲區(qū)域而不用對第一存儲區(qū)域和第二存儲區(qū)域執(zhí)行重寫,并且將第三存儲區(qū)域中的附加了附加數(shù)據(jù)和針對附加數(shù)據(jù)的糾錯碼的物理地址登記在地址管理部中;以及糾錯處理部,被配置成在與和讀取請求相關(guān)的邏輯地址相對應(yīng)的物理地址對應(yīng)于第三存儲區(qū)域時,利用第三存儲區(qū)域中的附加數(shù)據(jù)和針對附加數(shù)據(jù)的糾錯碼來執(zhí)行第三存儲區(qū)域中的附加數(shù)據(jù)中的糾錯,并且在與和讀取請求相關(guān)的邏輯地址相對應(yīng)的物理地址不對應(yīng)于第三存儲區(qū)域時,利用在其中包含了第一存儲區(qū)域中的數(shù)據(jù)的預(yù)定數(shù)目的多個數(shù)據(jù)和第二存儲區(qū)域中的糾錯碼來執(zhí)行第一存儲區(qū)域中的糾錯。因此,提供了一種操作使得當變成糾錯碼的對象的數(shù)據(jù)的一部分被更新時糾錯碼的重計算成為不必要的。優(yōu)選地,控制部可以在預(yù)定定時針對附加數(shù)據(jù)將附加數(shù)據(jù)覆寫(overwrite)到附加之前的第一存儲區(qū)域;并且在預(yù)定定時根據(jù)在其中包含了被覆寫的數(shù)據(jù)的預(yù)定數(shù)目的多個數(shù)據(jù)來生成糾錯碼,并且可以將糾錯碼存儲在第二存儲區(qū)域中。根據(jù)本公開的再進一步的實施例,提供了一種存儲設(shè)備和該存儲設(shè)備的控制方法。該存儲設(shè)備包括:存儲器,被配置成將多個數(shù)據(jù)和針對多個數(shù)據(jù)的糾錯碼存儲在第一存儲區(qū)域中,并且與每預(yù)定數(shù)目的多個數(shù)據(jù)對應(yīng)地將糾錯碼存儲在第二存儲區(qū)域中,以及將針對多個數(shù)據(jù)中的任何一個的附加數(shù)據(jù)和針對附加數(shù)據(jù)的糾錯碼存儲在第三存儲區(qū)域中;地址管理部,被配置成針對多個數(shù)據(jù)來管理邏輯地址與第一存儲區(qū)域或第三存儲區(qū)域中的物理地址之間的對應(yīng)關(guān)系;控制部,被配置成在與和寫入請求相關(guān)的邏輯地址相對應(yīng)的物理地址對應(yīng)于第一存儲區(qū)域時,將和寫入請求相關(guān)的數(shù)據(jù)作為附加數(shù)據(jù)來將附加數(shù)據(jù)和針對附加數(shù)據(jù)的糾錯碼附加到第三存儲區(qū)域而不用對第一存儲區(qū)域和第二存儲區(qū)域執(zhí)行重寫,并且將第三存儲區(qū)域中的附加了附加數(shù)據(jù)和針對附加數(shù)據(jù)的糾錯碼的物理地址登記在地址管理部中;以及糾錯處理部,被配置成在與和讀取請求相關(guān)的邏輯地址相對應(yīng)的物理地址對應(yīng)于第三存儲區(qū)域時,利用第三存儲區(qū)域中的附加數(shù)據(jù)和針對附加數(shù)據(jù)的糾錯碼來執(zhí)行第三存儲區(qū)域中的附加數(shù)據(jù)中的糾錯,并且在與和讀取請求相關(guān)的邏輯地址相對應(yīng)的物理地址不對應(yīng)于第三存儲區(qū)域時,利用在其中包含了第一存儲區(qū)域中的數(shù)據(jù)的預(yù)定數(shù)目的多個數(shù)據(jù)和第二存儲區(qū)域中的糾錯碼來執(zhí)行第一存儲區(qū)域中的糾錯。因此,提供了一種操作使得當在存儲器中變成糾錯碼的對象的數(shù)據(jù)的一部分被更新時糾錯碼的重計算成為不必要的。優(yōu)選地,存儲器可以將第一存儲區(qū)域存儲在閃速存儲器中,并且可以將第三存儲區(qū)域存儲在非易失性RAM中。因此,提供了一種操作使得存儲器存取被加速。根據(jù)本公開的再進一步的實施例,提供了一種信息處理系統(tǒng)和該信息處理系統(tǒng)的控制方法。該信息處理系統(tǒng)包括:存儲器,被配置成將多個數(shù)據(jù)和針對多個數(shù)據(jù)的糾錯碼存儲在第一存儲區(qū)域中,并且與每預(yù)定數(shù)目的多個數(shù)據(jù)對應(yīng)地將糾錯碼存儲在第二存儲區(qū)域中,以及將針對多個數(shù)據(jù)中的任何一個的附加數(shù)據(jù)和針對附加數(shù)據(jù)的糾錯碼存儲在第三存儲區(qū)域中;地址管理部,被配置成針對多個數(shù)據(jù)來管理邏輯地址與第一存儲區(qū)域或第三存儲區(qū)域中的物理地址之間的對應(yīng)關(guān)系;控制部,被配置成在與和寫入請求相關(guān)的邏輯地址相對應(yīng)的物理地址對應(yīng)于第一存儲區(qū)域時,將和寫入請求相關(guān)的數(shù)據(jù)作為附加數(shù)據(jù)來將附加數(shù)據(jù)和針對附加數(shù)據(jù)的糾錯碼附加到第三存儲區(qū)域而不用對第一存儲區(qū)域和第二存儲區(qū)域執(zhí)行重寫,并且將第三存儲區(qū)域中的附加了附加數(shù)據(jù)和針對附加數(shù)據(jù)的糾錯碼的物理地址登記在地址管理部中;糾錯處理部,被配置成在與和讀取請求相關(guān)的邏輯地址相對應(yīng)的物理地址對應(yīng)于第三存儲區(qū)域時,利用第三存儲區(qū)域中的附加數(shù)據(jù)和針對附加數(shù)據(jù)的糾錯碼來執(zhí)行第三存儲區(qū)域中的附加數(shù)據(jù)中的糾錯,并且在與和讀取請求相關(guān)的邏輯地址相對應(yīng)的物理地址不對應(yīng)于第三存儲區(qū)域時,利用在其中包含了第一存儲區(qū)域中的數(shù)據(jù)的預(yù)定數(shù)目的多個數(shù)據(jù)和第二存儲區(qū)域中的糾錯碼來執(zhí)行第一存儲區(qū)域中的糾錯;以及主機計算機,被配置成向該存儲器發(fā)出或讀取請求或?qū)懭胝埱?。因此,提供了一種操作使得當根據(jù)從主機計算機發(fā)出的指令在存儲器中更新變成糾錯碼的對象的數(shù)據(jù)的一部分時,糾錯碼的重計算成為不必要的。如在上文中所陳述的,根據(jù)本公開的實施例,提供了一種優(yōu)異的效果使得可以在不用知道有關(guān)道物理地址空間的布置的情況下加強數(shù)據(jù)保持特性。附圖說明圖1是示出了根據(jù)本公開的第一實施例的信息處理系統(tǒng)的配置的方框圖;圖2是示出了在根據(jù)本公開的第一實施例的信息處理系統(tǒng)中的非易失性存儲區(qū)域的存儲內(nèi)容的圖;圖3是示出了在根據(jù)本公開的第一實施例的信息處理系統(tǒng)中的非易失性存儲區(qū)域的管理形式的圖;圖4是示出了在根據(jù)本公開的第一實施例的信息處理系統(tǒng)中的地址映射表的結(jié)構(gòu)的圖;圖5是示出了在根據(jù)本公開的第一實施例的信息處理系統(tǒng)中的第二ECC管理表的結(jié)構(gòu)的圖;圖6是說明了在根據(jù)本公開的第一實施例的信息處理系統(tǒng)中的寫入處理的處理過程的流程圖;圖7是說明了在根據(jù)本公開的第一實施例的信息處理系統(tǒng)中的讀取處理的處理過程的流程圖;圖8是說明了在根據(jù)本公開的第一實施例的信息處理系統(tǒng)中的數(shù)據(jù)保持特性加強處理的處理過程的流程圖;圖9是示出了在本公開的第一實施例中的地址映射表的第一數(shù)值示例的圖;圖10是示出了在本公開的第一實施例中的地址映射表的第二數(shù)值示例的圖;圖11是示出了在本公開的第一實施例中的第二ECC管理表的第一數(shù)值示例的圖;圖12是示出了在本公開的第一實施例中的第二ECC管理表的第二數(shù)值示例的圖;圖13是說明了在本公開的第一實施例中的數(shù)據(jù)保持特性加強解除處理的處理過程的流程圖;圖14是示出了在本公開的第一實施例中的第二ECC管理表的第三數(shù)值示例的圖;圖15是示出了在本公開的第一實施例中的地址映射表的第三數(shù)值示例的圖;圖16是示出了在本公開的第一實施例中的第二ECC管理表的修改變化(第二ECC物理地址內(nèi)偏移)的圖;圖17是示出了在本公開的第一實施例中的地址映射表的修改變化(邏輯地址上不相關(guān)的數(shù)據(jù))的更新之前的數(shù)值示例的圖;圖18是示出了在本公開的第一實施例中的第二ECC管理表的修改變化(邏輯地址上不相關(guān)的數(shù)據(jù))的更新之前的數(shù)值示例的圖;圖19是示出了在本公開的第一實施例中的地址映射表的修改變化(邏輯地址上不相關(guān)的數(shù)據(jù))的更新之后的數(shù)值示例的圖;圖20是示出了在本公開的第一實施例中的地址映射表的修改變化(邏輯地址上不相關(guān)的數(shù)據(jù))的更新之后的數(shù)值示例的圖;圖21是示出了在本公開的第一實施例中的地址映射表的修改變化(最后存取時間)的數(shù)值示例的圖;圖22是示出了在本公開的第一實施例中的非易失性存儲區(qū)域的修改變化(多個邏輯地址)的存儲內(nèi)容的圖;圖23是示出了在本公開的第一實施例中的地址映射表的修改變化(多個邏輯地址)的數(shù)值示例的圖;圖24是示出了在本公開的第一實施例中的第二ECC管理表的修改變化(多個邏輯地址)的數(shù)值示例的圖;圖25是示出了根據(jù)本公開的第二實施例的信息處理系統(tǒng)的配置的方框圖;圖26是示出了根據(jù)本公開的第二實施例的信息處理系統(tǒng)的功能性配置的方框圖;圖27是示出了在根據(jù)本公開的第二實施例的信息處理系統(tǒng)中的存儲器內(nèi)的存儲區(qū)域的分割的圖;圖28是示出了在根據(jù)本公開的第二實施例的信息處理系統(tǒng)中的正常存取區(qū)域中的數(shù)據(jù)與第二ECC存儲區(qū)域中的第二ECC的存儲位置之間的關(guān)系的圖;圖29是示出了在根據(jù)本公開的第二實施例的信息處理系統(tǒng)中的地址管理部的地址映射表的結(jié)構(gòu)的圖;圖30是說明了在根據(jù)本公開的第二實施例的信息處理系統(tǒng)中的寫入處理的處理過程的流程圖;圖31是說明了在根據(jù)本公開的第二實施例的信息處理系統(tǒng)中的讀取處理的處理過程的流程圖;圖32是說明了在根據(jù)本公開的第二實施例的信息處理系統(tǒng)中的聚合處理(aggregationprocessing)的處理過程的流程圖;圖33是示出了在根據(jù)本公開的第三實施例的信息處理系統(tǒng)中的存儲器的管理形式的圖;圖34是示出了在根據(jù)本公開的第三實施例的信息處理系統(tǒng)中的地址映射表的結(jié)構(gòu)的圖;圖35是示出了在根據(jù)本公開的第三實施例的信息處理系統(tǒng)中的第二ECC管理表的結(jié)構(gòu)的圖;圖36是說明了在根據(jù)本公開的第三實施例的信息處理系統(tǒng)中的寫入處理的處理過程的流程圖;圖37是說明了在根據(jù)本公開的第三實施例的信息處理系統(tǒng)中的讀取處理的處理過程的流程圖;圖38是說明了在根據(jù)本公開的第三實施例的信息處理系統(tǒng)中的聚合處理的處理過程的流程圖。具體實施方式將參照附圖在下文中對本公開的實施例進行詳細的描述。要注意的是,將根據(jù)以下順序在下文給出描述。1.第一實施例2.第一實施例的修改變化3.第二實施例(第二ECC存儲區(qū)域位置被固定的情況)4.第三實施例(使第二ECC存儲區(qū)域位置可變的情況)5.第三實施例的修改變化<1.第一實施例>【信息處理系統(tǒng)的配置】圖1是示出了根據(jù)本公開的第一實施例的信息處理系統(tǒng)的配置的方框圖。信息處理系統(tǒng)包括主機計算機100和存儲器系統(tǒng)400。主機計算機100向存儲器系統(tǒng)400發(fā)出諸如讀取命令或?qū)懭朊钪惖恼埱?命令),并且從存儲器系統(tǒng)400接收對該請求(命令)的響應(yīng)。存儲器系統(tǒng)400通過從主機計算機100接收向其發(fā)出的讀取命令來讀出數(shù)據(jù)。此外,存儲器系統(tǒng)400通過從主機計算機100接收向其發(fā)出的寫入命令來寫入數(shù)據(jù)。此外,存儲器系統(tǒng)400通過從主機計算機100接收向其發(fā)出的數(shù)據(jù)保持特性加強命令(dataholdingcharacteristicsreinforcementcommand)來給出用于加強數(shù)據(jù)保持特性的糾錯碼(ECC)。在讀取命令的情況下,作為讀取的對象的首邏輯地址(headlogicaladdress)以及數(shù)據(jù)大小兩者都被主機計算機100指定為參數(shù)。在寫入命令的情況下,作為寫入的對象的首邏輯地址以及數(shù)據(jù)大小兩者都被主機計算機100指定為參數(shù),并且作為寫入的對象的數(shù)據(jù)被發(fā)送。同樣地,在數(shù)據(jù)保持特性加強命令的情況下,作為數(shù)據(jù)保持特性加強的對象的首地址以及邏輯地址的數(shù)據(jù)大小兩者都被主機計算機100指定為參數(shù)。存儲器系統(tǒng)400包括非易失性存儲器300和存儲器控制器200。非易失性存儲器300包括用于連接到存儲器控制器200的外部接口302以及非易失性存儲區(qū)域303。非易失性存儲區(qū)域303包括數(shù)據(jù)存儲區(qū)域310、第一ECC存儲區(qū)域320、第二ECC存儲區(qū)域330以及表存儲區(qū)域340。稍后將描述被相應(yīng)地存儲在數(shù)據(jù)存儲區(qū)域310、第一ECC存儲區(qū)域320、第二ECC存儲區(qū)域330以及表存儲區(qū)域340中的內(nèi)容。存儲器控制器200是用于控制非易失性存儲器300的控制器。存儲器控制器200包括第一ECC生成部210、第二ECC生成部220、表管理部230以及數(shù)據(jù)寫入處理部240。此外,存儲器控制器200包括數(shù)據(jù)讀取處理部250、第一ECC校正部260、第二ECC校正部270以及ECC切換處理部280。此外,存儲器控制器200包括用于連接到主機計算機100的主機接口201以及用于連接到非易失性存儲器300的存儲器接口203。第一ECC生成部210生成糾錯碼(第一ECC),該糾錯碼被添加到根據(jù)從主機計算機100發(fā)出的寫入命令而接收到的數(shù)據(jù)。第二ECC生成部220生成被用來加強數(shù)據(jù)保持特性的糾錯碼(第二ECC)。表管理部230用來管理稍后將描述的地址映射表、第二ECC管理表等等。數(shù)據(jù)寫入處理部240執(zhí)行用于將數(shù)據(jù)寫入到非易失性存儲器300的處理。數(shù)據(jù)讀取處理部250執(zhí)行用于從非易失性存儲器300讀取數(shù)據(jù)的處理。第一ECC校正部260通過使用第一ECC來執(zhí)行數(shù)據(jù)的錯誤檢測和校正。第二ECC校正部270通過使用第二ECC來執(zhí)行數(shù)據(jù)的錯誤檢測和校正。ECC切換處理部280在其不能夠通過第一ECC執(zhí)行錯誤校正時執(zhí)行用于通過使用第二ECC來執(zhí)行數(shù)據(jù)的錯誤檢測和校正的切換處理。注意的是,第二ECC校正部270是在所附權(quán)利要求中描述的糾錯部的示例。此外,第二ECC生成部220是在所附權(quán)利要求中描述的糾錯碼生成部的示例。此外,表管理部230是在所附權(quán)利要求中描述的條目管理部的示例。此外,數(shù)據(jù)存儲區(qū)域310和第一ECC存儲區(qū)域320中的每一個是在所附權(quán)利要求中描述的單位數(shù)據(jù)存儲部的示例。而且,第二ECC存儲區(qū)域330是在所附權(quán)利中描述的糾錯碼存儲部的示例。【非易失性存儲區(qū)域303的存儲形式】圖2是示出了在第一實施例的信息處理系統(tǒng)中的非易失性存儲區(qū)域303的存儲內(nèi)容的圖。假定了非易失性存儲區(qū)域303例如可以利用34個字節(jié)作為單位數(shù)據(jù)來讀取和寫入數(shù)據(jù),并且每34個字節(jié)分配一個物理地址。具有34個字節(jié)的單位數(shù)據(jù)例如由32個字節(jié)的數(shù)據(jù)和用于具有32個字節(jié)的數(shù)據(jù)的2個字節(jié)的糾錯碼(第一ECC)組成。也就是說,具有2個字節(jié)的第一ECC被給予數(shù)據(jù)存儲區(qū)域310中的具有32個字節(jié)的數(shù)據(jù),并且得到的34個字節(jié)的單位數(shù)據(jù)被存儲在第一ECC存儲區(qū)域320中。注意的是,一般地,表達式(1)成立:A+B≤N(1)其中,N是表示非易失性區(qū)域303的單位數(shù)據(jù)寬度的字節(jié),A是表示其數(shù)據(jù)大小的字節(jié),以及B是表示給出的第一ECC的大小的字節(jié)。除此之外,假定例如具有34個字節(jié)的另一糾錯碼(第二ECC)被給予了四個單位數(shù)據(jù)。第二ECC被存儲在第二ECC存儲區(qū)域330中。變成第二ECC的給予的對象的單位數(shù)據(jù)可以被存儲在物理地址空間上不連續(xù)的物理地址中。注意的是一般而言,表達式(2)成立:C≤N(2)其中,C是表示給出的第二ECC的大小的字節(jié)。這些單位數(shù)據(jù)和第二ECC在非易失性存儲區(qū)域303上的存儲地址通過將在下文描述的表來管理。注意的是在這種情況下,特別地,非易失性存儲器優(yōu)選地適用于可以采用小的單位對其執(zhí)行高速隨機存取的非易失性隨機存取存儲器(NVRAM:非易失性RAM)。NVRAM例如包括相變RAM(PCRAM)、磁阻RAM(MRAM)以及電阻式RAM(ReRAM)。此外,非易失性存儲器也可以適用于閃速存儲器。圖3是示出了在第一實施例的信息處理系統(tǒng)中的非易失性存儲區(qū)域303的管理形式的圖。單位數(shù)據(jù)和第二ECC在非易失性存儲區(qū)域303上的存儲地址通過地址映射表341和第二ECC管理表342兩者來管理。地址映射表341是用于管理邏輯地址與物理地址之間的對應(yīng)關(guān)系的表。在這種情況下,地址映射表341保持與邏輯地址相對應(yīng)的第二ECC管理表342的索引。注意的是,地址映射表341是在所附權(quán)利要求中描述的地址管理部的示例。第二ECC管理表342是用于管理第二ECC的表。在這種情況下,第二ECC管理表342對于每個條目在其中保存第二ECC的物理地址以及與第二ECC相對應(yīng)的單位數(shù)據(jù)的物理地址。索引(第二ECC索引)被相應(yīng)地賦予這些條目。注意的是,第二ECC管理表342是在所附權(quán)利要求中描述的糾錯碼管理部的示例。地址映射表341和第二ECC管理表342兩者都被存儲在表存儲區(qū)域340中?!镜刂酚成浔淼慕Y(jié)構(gòu)】圖4是示出了在第一實施例的信息處理系統(tǒng)中的地址映射表341的結(jié)構(gòu)的圖。地址映射表341在其中保存了邏輯地址、物理地址、數(shù)據(jù)標志、第二ECC標志以及第二ECC索引,使得邏輯地址、物理地址、數(shù)據(jù)標志、第二ECC標志以及第二ECC索引彼此相關(guān)聯(lián)。邏輯地址是在主機計算機100中指定的非易失性存儲區(qū)域303中的地址。物理地址是在非易失性存儲區(qū)域303中的物理地址。注意的是在這種情況下,邏輯地址和物理地址的每個都通過描述以“0x”開始的十六進制數(shù)的方法來表示。數(shù)據(jù)標志是表示數(shù)據(jù)和第一ECC兩者是否被相應(yīng)地存儲在對應(yīng)的物理地址中的標志。當數(shù)據(jù)標志表示“真”時,該數(shù)據(jù)標志表示數(shù)據(jù)和第一ECC兩者被相應(yīng)地寫入到對應(yīng)的物理地址。另一方面,當數(shù)據(jù)標志表示“假”時,該數(shù)據(jù)標志表示數(shù)據(jù)和第一ECC均未被寫入到對應(yīng)的物理地址。從數(shù)據(jù)標志表示“假”的物理地址讀出的數(shù)據(jù)變成存儲器中的初始值。注意的是,在NAND閃存的情況下,在存儲器的初始值中所有的比特變成“1”。第二ECC標志是表示第二ECC是否被給予在對應(yīng)的物理地址中存儲的數(shù)據(jù)的標志。當?shù)诙﨓CC標志表示“真”時,第二ECC標志表示第二ECC被給予在對應(yīng)的物理地址中存儲的數(shù)據(jù)以加強數(shù)據(jù)保持特性。另一方面,當?shù)诙﨓CC標志表示“假”時,第二ECC標志表示無第二ECC被給予在對應(yīng)的物理地址中存儲的數(shù)據(jù)。第二ECC索引在第二ECC標志表示“真”時是有效值,并且被相應(yīng)地給予第二管理表342的條目的第二ECC索引被保存。在圖4中所示出的情況下,“zi”被保存為地址映射表341的條目710、711、712以及713的每個中的第二ECC索引。【第二ECC管理表的結(jié)構(gòu)】圖5是示出了在第一實施例的信息處理系統(tǒng)中的第二ECC管理表342的結(jié)構(gòu)的圖。在第二ECC管理表342中,第二ECC索引、數(shù)據(jù)的數(shù)目、第二ECC物理地址以及第0至第三個數(shù)據(jù)的物理地址被保存在條目中的每一個條目中。第二ECC索引用來保存用于識別第二ECC管理表342的條目的索引。第二ECC索引的值被保存在地址映射表341的對應(yīng)條目中,從而地址映射表341和第二ECC管理表342被彼此相關(guān)聯(lián)。數(shù)據(jù)的數(shù)目表示在對應(yīng)條目中包含的數(shù)據(jù)的數(shù)目。第二ECC物理地址被用來在其中保存物理地址,在對應(yīng)條目中包含的數(shù)據(jù)的第二ECC被存儲在該物理地址中。第0個至第三個數(shù)據(jù)的物理地址被用來順次在其中保存在對應(yīng)條目中包含的數(shù)據(jù)的物理地址。在第0個至第三個數(shù)據(jù)的物理地址中,僅與上文中描述的數(shù)據(jù)的數(shù)目所表示的數(shù)目相對應(yīng)的(一個或多個)物理地址是有效的。在這種情況下,因為在第二ECC索引為“001”的條目中,數(shù)據(jù)的數(shù)目表示“2”,所以僅第0個和第一個數(shù)據(jù)的兩個物理地址是有效的。此外,因為在第二ECC索引為“000”的條目中,數(shù)據(jù)的數(shù)目表示“0”,所以第0個至第三個數(shù)據(jù)的全部物理地址都是無效的?!緦懭胩幚淼奶幚磉^程】圖6是說明了在本公開的第一實施例的信息處理系統(tǒng)中的寫入處理的處理過程的流程圖。存儲器系統(tǒng)400通過主機接口210從主機計算機100接收寫入命令和寫入數(shù)據(jù)。寫入命令具有作為參數(shù)的作為寫入的對象的首邏輯地址和數(shù)據(jù)大小。在本文中描述的數(shù)據(jù)大小利用以邏輯地址所指定的區(qū)域作為單位的數(shù)值形式來表示。例如,在邏輯地址所指定的區(qū)域大小為32個字節(jié)的存儲器系統(tǒng)中在“2”被指定為數(shù)據(jù)大小的情況下,從主機計算機100接收到的待寫入的數(shù)據(jù)的大小變成32×2=64個字節(jié)。存儲器控制器200基于作為寫入命令的參數(shù)所接收到的作為寫入的對象的首邏輯地址和數(shù)據(jù)大小,以邏輯地址為單位來劃分寫入命令(步驟S911)。在一個處理中執(zhí)行一個邏輯地址,并且待寫入的數(shù)據(jù)的大小變成由該單位邏輯地址指定的區(qū)域的大小。例如,當“xi1”和“1”被分別指定為作為寫入的對象的首邏輯地址和數(shù)據(jù)大小時,一個處理被執(zhí)行。此外,當“xi1”和“2”被分別指定為作為寫入的對象的首邏輯地址和數(shù)據(jù)大小時,則該處理被劃分成兩個處理。此外,確定變成寫入處理的對象的邏輯地址(步驟S912)。根據(jù)作為寫入的對象的首邏輯地址來順次確定變成對象的每個邏輯地址。當“xi1”和“2”被分別指定為作為寫入的對象的首邏輯地址和數(shù)據(jù)大小時,利用其來首先執(zhí)行處理的邏輯地址被確定為“xi1”。此外,下次變成對象的邏輯地址被確定為“xi1+1”。此外,從地址映射表341中獲取與每個作為對象的邏輯地址相對應(yīng)的地址轉(zhuǎn)換信息(步驟S913)。地址轉(zhuǎn)換信息是已經(jīng)參照圖4描述的物理地址、數(shù)據(jù)標志、第二ECC標志以及第二ECC索引。例如,在圖4中所示出的情況下,當變成對象的邏輯地址是“xi1”時,“yi1”、“真”、“真”以及“zi”被分別獲取作為物理地址、數(shù)據(jù)標志、第二ECC標志以及第二ECC索引。此外,根據(jù)從主機計算機100接收到的數(shù)據(jù)來計算第一ECC(步驟S914)。用于計算第一ECC的數(shù)據(jù)的大小是由1個邏輯地址指定的區(qū)域的大小(例如,32個字節(jié))。當在步驟S913的處理中獲取到的數(shù)據(jù)標志表示“假”時(步驟S915:否),數(shù)據(jù)在這個寫入處理中被寫入。因此,所關(guān)注的條目的數(shù)據(jù)標志被更新為“真”(步驟S916)。然后,操作進行到步驟S918中的處理。另一方面,當在步驟S913中的處理中獲取到的數(shù)據(jù)標志表示“真”(步驟S915:是)時并且當?shù)诙﨓CC標志表示“真”(步驟S917:是)時,執(zhí)行步驟S921中的處理中的和之后的預(yù)定數(shù)目個處理。在除該情況以外的情況下,操作進行到步驟S918中的處理。在第二ECC標志表示“真”時的處理中,獲取用來通過使用與數(shù)據(jù)相對應(yīng)的第二ECC執(zhí)行錯誤校正的物理地址信息(步驟S921)。該物理地址信息是由上文中所描述的第二ECC管理表342管理的數(shù)據(jù)的數(shù)目、第二ECC物理地址以及第0個至第三個數(shù)據(jù)的物理地址。從第二ECC管理表342的如下條目中獲取在本文中所獲取的物理地址信息,該條目具有與在步驟S913的處理中獲取到的第二ECC索引一致的值。例如,假定地址映射表341在其中保存了圖4中所示出的值,并且第二ECC管理表342在其中保存了圖5中所示出的值的情況。當在邏輯地址“xi1”中產(chǎn)生了寫入時所獲取到的物理地址信息被從第二ECC管理表342的如下條目中獲取,在該條目中第二ECC索引變成“zi”。也就是說,數(shù)據(jù)的數(shù)目變成“4”,第二ECC物理地址變成“ei”,第0個數(shù)據(jù)的物理地址變成“yi0”,第一個數(shù)據(jù)的物理地址變成“yi1”,第二個數(shù)據(jù)的物理地址變成“yi2”以及第三個數(shù)據(jù)的物理地址變成“yi3”。此外,第二ECC、該數(shù)據(jù)以及第一ECC被基于在步驟S921的處理中獲取到的物理地址信息從非易失性存儲區(qū)域303中讀出(步驟S922)。例如,假定從第二ECC管理表342中獲取到的第二ECC物理地址、數(shù)據(jù)的數(shù)目以及第0個至第三個數(shù)據(jù)的物理地址分別是“ei”、“4”和“yi0”、“yi1”、“yi2”以及“yi3”的情況。在這種情況下,第二ECC被從物理地址“ei”讀出,并且數(shù)據(jù)和第一ECC被從物理地址“yi0”、“yi1”、“yi2”以及“yi3”讀出。對數(shù)據(jù)和第一ECC的錯誤校正通過使用在步驟S922的處理中讀出的第二ECC來執(zhí)行,并且處理過程取決于錯誤校正執(zhí)行的成功和失敗而進行分支(步驟S923)。此時,當在步驟S921的處理中獲取到的數(shù)據(jù)的數(shù)目小于“4”時,關(guān)于缺乏的數(shù)據(jù),在利用非易失性存儲器300的初始值執(zhí)行了填補(padding)之后,執(zhí)行錯誤校正。當使用第二ECC的錯誤校正成功時(步驟S923:是),則執(zhí)行步驟S924的處理中的和之后的預(yù)定數(shù)目個處理。另一方面,當使用第二ECC的錯誤校正失敗時(步驟S923:否),主機計算機100被通知寫入命令的錯誤結(jié)束(errorend)(步驟S927)。在主機計算機100被通知寫入命令的錯誤結(jié)束之后,寫入命令變成錯誤結(jié)束。當在步驟S923的處理中錯誤校正成功時,被存儲在所關(guān)心的物理地址中的數(shù)據(jù)和第一ECC被分別利用從主機計算機100接收的數(shù)據(jù)和在步驟S914的處理中計算的第一ECC代替(步驟S924)。例如,假定在地址映射表341在其中保存了圖4中所示出的值并且第二ECC管理表342在其中保存了圖5中所示出的值時,在邏輯地址“xi1”中產(chǎn)生了寫入的情況。在這種情況下,被存儲在第一個數(shù)據(jù)的物理地址“yi1”中的數(shù)據(jù)和第一ECC被分別利用從主機計算機100接收到的數(shù)據(jù)和從所關(guān)心的數(shù)據(jù)計算出的第一ECC代替。接下來,關(guān)于在步驟S924的處理中分別用其代替了在物理地址中存儲的數(shù)據(jù)和第一ECC的數(shù)據(jù)和第一ECC,計算其第二ECC(步驟S925)。例如,假定當?shù)刂酚成浔?41在其中保存了圖4中所示出的值并且第二ECC管理表342在其中保存了圖5中所示出的值時,在邏輯地址“xi1”中產(chǎn)生了寫入的情況。在這種情況下,第一ECC和從物理地址“yi0”讀出的數(shù)據(jù)兩者變成第0個數(shù)據(jù),第一ECC和從物理地址“yi2”讀出的數(shù)據(jù)兩者變成第二個數(shù)據(jù),以及第一ECC和從物理地址“yi3”讀出的數(shù)據(jù)兩者變成第三個數(shù)據(jù)。此外,從主機計算機100接收到的數(shù)據(jù)以及從所關(guān)心的數(shù)據(jù)計算出的第一ECC兩者變成第一個數(shù)據(jù)。第0個至第三個數(shù)據(jù)被彼此耦接,從而計算第二ECC。以這樣的方式計算出的第二ECC被寫入到在步驟S921的處理中獲取的第二ECC的物理地址(步驟S926)。當?shù)诙﨓CC的寫入已經(jīng)完成時,執(zhí)行步驟S918的處理中的和之后的預(yù)定數(shù)目個處理。在完成步驟S916、S917或S926中的處理之后,數(shù)據(jù)和在步驟S914的處理中計算出的第一ECC兩者都被寫入到非易失性存儲區(qū)域303(步驟S918)。作為寫入的對象的物理地址是在步驟S913的處理中獲取的物理地址。此外,判斷在步驟S911的處理中通過劃分獲得的所有個處理是否已經(jīng)結(jié)束(步驟S919)。當在步驟S919中確定處理仍然存在時(步驟S919:是),則重復(fù)地執(zhí)行步驟S912的處理中的和之后的預(yù)定數(shù)目個處理。另一方面,當在步驟S919中確定所有個處理已經(jīng)結(jié)束時(步驟S919:否),主機計算機100被通知寫入命令已經(jīng)被正常地執(zhí)行的結(jié)果(步驟S929)。在該結(jié)果向主機計算機100的通知結(jié)束時,所關(guān)心的寫入命令的處理正常地結(jié)束?!咀x取處理的處理過程】圖7是說明了在根據(jù)本公開的第一實施例的信息處理系統(tǒng)中的讀取處理的處理過程的流程圖。存儲器系統(tǒng)400通過主機接口201從主機計算機100接收讀取命令。讀取命令具有作為參數(shù)的作為讀取的對象的首邏輯地址以及數(shù)據(jù)大小。類似于寫入命令的情況,數(shù)據(jù)大小利用以邏輯地址所指定的區(qū)域為單位的數(shù)值的形式來表示。存儲器控制器200基于作為讀取命令的參數(shù)接收到的作為讀取的對象的首邏輯地址以及數(shù)據(jù)大小,以邏輯地址為單位來劃分該處理(步驟S931)。一個邏輯地址經(jīng)歷一個處理中的執(zhí)行,并且待讀出的數(shù)據(jù)的大小變成單位邏輯地址所指定的區(qū)域的大小。例如,當“xi1”被指定為作為讀取的對象的首邏輯地址并且“1”被指定為數(shù)據(jù)大小時,處理被劃分成一個處理。此外,當“xi1”被指定為作為讀取的對象的首邏輯地址并且“2”被指定為數(shù)據(jù)大小時,處理被劃分成兩個處理。此外,確定每個變成讀取的對象的邏輯地址(步驟S932)。從作為讀取的對象的首邏輯地址來順次確定每個變成讀取的對象的邏輯地址。當“xi1”被指定為作為讀取的對象的首邏輯地址并且“2”被指定為數(shù)據(jù)大小時,處理首先被執(zhí)行時所利用的邏輯地址被確定為“xi1”。此外,下次變成對象的邏輯地址被確定為“xi1+1”。此外,從地址映射表341中獲取與變成對象的邏輯地址相對應(yīng)的地址轉(zhuǎn)換信息(步驟S933)。地址轉(zhuǎn)換信息是已參照圖4描述的物理地址、數(shù)據(jù)標志、第二ECC標志以及第二ECC索引。例如,在圖4中所示出的情況下,當變成對象的邏輯地址是“xi1”時,“yi1”、“真”、“真”以及“zi”被分別獲取作為物理地址、數(shù)據(jù)標志、第二ECC標志以及第二ECC索引。當在步驟S933的處理中獲取的數(shù)據(jù)標志表示“假”時(步驟S934:否),僅在步驟S933的處理中獲取的物理地址被讀出(步驟S935)。此時,由此讀出的值是非易失性存儲器300中的初始值。在完成數(shù)據(jù)的讀取之后,執(zhí)行步驟S938中的處理。另一方面,當數(shù)據(jù)標志表示“真”時(步驟S934:是),數(shù)據(jù)和第一ECC兩者都被從在步驟S933的處理中獲取到的物理地址讀出(步驟S936)。此外,通過使用由此讀出的第一ECC執(zhí)行對數(shù)據(jù)的錯誤校正,并且處理取決于對數(shù)據(jù)的錯誤校正的成功和失敗進行分支(步驟S937)。也就是說,當錯誤校正成功時(步驟S937:是),執(zhí)行步驟S938的處理,當錯誤校正失敗時(步驟S937:否),執(zhí)行步驟S941的處理中的和之后的預(yù)定個處理。當使用第一ECC的錯誤校正失敗時(步驟S937:否),處理取決于在步驟S933的處理中獲取到的第二ECC標志的值進行分支(步驟S941)。也就是說,當?shù)诙﨓CC標志表示“假”時(步驟S941:否),因為不可能執(zhí)行進一步的錯誤校正,所以主機計算機100被通知讀取命令的錯誤結(jié)束(步驟S947)。在讀取命令的錯誤結(jié)束的通知到主機計算機100之后,所關(guān)心的讀取命令變成錯誤結(jié)束。另一方面,當?shù)诙﨓CC標志表示“真”時(步驟S941:是),獲取用來通過使用與數(shù)據(jù)相對應(yīng)的第二ECC執(zhí)行錯誤校正的物理地址信息(步驟S942)。物理地址信息是全部通過上文中所描述的第二ECC管理表342來管理的數(shù)據(jù)的數(shù)目、第二ECC物理地址以及第0個至第三個數(shù)據(jù)的物理地址。從第二ECC管理表342的如下條目中獲取在此處所獲取的物理地址信息,該條目具有與在步驟S913的處理中獲取到的第二ECC索引一致的值。例如,假定地址映射表341在其中保存了圖4中所示出的值并且第二ECC管理表342在其中保存了圖5中所示出的值的情況。當在邏輯地址“xi1”中產(chǎn)生了寫入時獲取到的物理地址信息被從第二ECC管理表342的如下條目中獲取,在該條目中第二ECC索引變成“zi”。也就是說,數(shù)據(jù)的數(shù)目變成“4”,第二ECC物理地址變成“ei”,第0個數(shù)據(jù)的物理地址變成“yi0”,第一個數(shù)據(jù)的物理地址變成“yi1”,第二個數(shù)據(jù)的物理地址變成“yi2”以及第三個數(shù)據(jù)的物理地址變成“yi3”。此外,第二ECC、數(shù)據(jù)以及第一ECC基于在步驟S942的處理中獲取到的物理地址信息從非易失性存儲區(qū)域303中全部被讀出(步驟S943)。例如,假定全部從第二ECC管理表342中獲取到的第二ECC物理地址、數(shù)據(jù)的數(shù)目以及第0個至第三個數(shù)據(jù)的物理地址分別是“ei”、“4”和“yi0”、“yi1”、“yi2”以及“yi3”。在這種情況下,第二ECC被從物理地址“ei”讀出,并且數(shù)據(jù)和第一ECC被從物理地址“yi0”、“yi1”以及“yi2”讀出。然而,因為物理地址“yi1”中存儲的第一個數(shù)據(jù)在步驟S936的處理中被預(yù)先讀出,所以可以省略其中的數(shù)據(jù)讀取。此外,通過使用在步驟S943的處理中讀出的第二ECC來執(zhí)行對在步驟S943的處理中讀出的數(shù)據(jù)和第一ECC的錯誤校正,并且處理取決于對數(shù)據(jù)和第一ECC的錯誤校正的成功和失敗進行分支(步驟S944)。此時,當在步驟S942的處理中獲取到的數(shù)據(jù)的數(shù)目小于“4”時,關(guān)于缺乏的數(shù)據(jù),在利用非易失性存儲器300的初始值執(zhí)行了填補之后,執(zhí)行錯誤校正。當使用第二ECC的錯誤校正成功時(步驟S944:是),執(zhí)行步驟S938的處理中的和之后的預(yù)定個處理。另一方面,當使用第二ECC的錯誤校正失敗時(步驟S944:否),主機計算機100被通知寫入命令的錯誤結(jié)束(步驟S947)。在主機計算機100被通知讀取命令的錯誤結(jié)束之后,讀取命令變成錯誤結(jié)束。在完成步驟S935、S937或S944的處理之后,已通過使用第一ECC或第二ECC對其進行了成功的錯誤校正處理的數(shù)據(jù)被傳送到主機計算機100(步驟S938)。此外,判斷在步驟S931的處理中通過劃分所獲得的所有個處理是否已經(jīng)結(jié)束(步驟S939)。當在步驟S939中確定處理仍然存在時(步驟S939:是),重復(fù)地執(zhí)行步驟S932的處理中的和之后的預(yù)定個處理。另一方面,當在步驟S939中確定所有個處理已經(jīng)結(jié)束時(步驟S939:否),主機計算機100被通知讀取命令已經(jīng)被正常地執(zhí)行的結(jié)果(步驟S949)。在該結(jié)果向主機計算機100的通知結(jié)束時,所關(guān)心的讀取命令的處理正常地結(jié)束?!緮?shù)據(jù)保持特性加強處理的處理過程】圖8是說明了在根據(jù)本公開的第一實施例的信息處理系統(tǒng)中的數(shù)據(jù)保持特性加強處理的處理過程的流程圖。存儲器系統(tǒng)400通過主機接口201從主機計算機100接收數(shù)據(jù)保持特性加強命令。數(shù)據(jù)保持特性加強命令具有作為參數(shù)的作為數(shù)據(jù)保持特性加強的對象的首邏輯地址以及數(shù)據(jù)大小。類似于寫入命令的情況,數(shù)據(jù)大小利用以邏輯地址所指定的區(qū)域為單位的數(shù)值的形式來表示。存儲器控制器200基于作為數(shù)據(jù)保持特性加強命令的參數(shù)接收到的作為數(shù)據(jù)保持特性加強的對象的首邏輯地址以及數(shù)據(jù)大小,以邏輯地址為單位來劃分該處理(步驟S951)。給予第二ECC的數(shù)據(jù)大小經(jīng)歷一個處理中的執(zhí)行。在這種情況下,四個邏輯地址被設(shè)置為一個單位。然而,當由數(shù)據(jù)大小指定的值不被“4”除時,從首邏輯地址起每四個邏輯地址地執(zhí)行該處理,并且小于四的邏輯地址的數(shù)目最后被作為一個單位來處理。例如,當“4”被指定為數(shù)據(jù)大小時,針對四個邏輯地址的處理被執(zhí)行一次。此外,當“10”被指定為數(shù)據(jù)大小時,針對四個邏輯地址的處理被執(zhí)行兩次,并且針對兩個邏輯地址的處理被在最后的處理中被執(zhí)行一次。此外,確定每個變成數(shù)據(jù)保持特性加強的對象的邏輯地址(步驟S952)。從作為數(shù)據(jù)保持特性加強的對象的首邏輯地址起,采用通過步驟S951的處理中的劃分獲得的單位來確定變成數(shù)據(jù)保持特性加強的對象的每個邏輯地址。此外,從地址映射表341中獲取與變成對象的一個單位的邏輯地址相對應(yīng)的地址轉(zhuǎn)換信息(步驟S953)。地址轉(zhuǎn)換信息是已全部參照圖4描述了的物理地址、數(shù)據(jù)標志、第二ECC標志以及第二ECC索引。在這個處理中獲取了多達四個邏輯地址的物理地址、數(shù)據(jù)標志、第二ECC標志以及第二ECC。例如,關(guān)于地址映射表341中的值,假定了圖9中所示出的情況。當每次變成處理對象的邏輯地址是從“xj”起的四個邏輯地址時,“yj0”、“真”以及“假”被分別獲取作為邏輯地址“xj”中的物理地址、數(shù)據(jù)標志的值以及第二ECC標志的值。此外,“yj1”、“假”以及“假”被分別獲取作為邏輯地址“xj+1”中的物理地址、數(shù)據(jù)標志的值以及第二ECC標志的值。此外,“yj2”、“真”以及“假”被分別獲取作為邏輯地址“xj+2”中的物理地址、數(shù)據(jù)標志的值以及第二ECC標志的值。此外,“yj3”、“真”以及“假”被分別獲取作為邏輯地址“xj+3”中的物理地址、數(shù)據(jù)標志的值以及第二ECC標志的值。另一方面,當變成處理對象的邏輯地址是從“xj+4”起的一個邏輯地址時,“yj4”、“假”以及“假”被分別獲取作為邏輯地址“xj+4”中的物理地址、數(shù)據(jù)標志的值以及第二ECC標志的值。注意的是,在這種情況下獲取到的第二ECC索引的值變成無效值,因為第二ECC標志表示“假”。數(shù)據(jù)和第一ECC兩者都被從在非易失性存儲區(qū)域303中的、在步驟S953的處理中獲取到的物理地址讀出(步驟S954)。從下述物理地址讀出的數(shù)據(jù)和第一ECC兩者變成存儲器中的初始值,在上述物理地址的每一個中在步驟S953的處理中獲取到的數(shù)據(jù)標志表示“假”。例如,關(guān)于地址映射表341中的值,假定了圖10中所示出的情況。當每次變成處理的對象的邏輯地址是從“xj”起的四個邏輯地址時,數(shù)據(jù)和第一ECC被從物理地址“yj0”、“yj1”、“yj2”以及“yj3”讀出。另一方面,當變成處理的對象的邏輯地址是從“xj+4”起的一個邏輯地址時,數(shù)據(jù)和第一ECC被從物理地址“yj4”讀出。此時,因為與該物理地址“yj4”相對應(yīng)的數(shù)據(jù)標志表示“假”,所以從物理地址“yj4”讀出的數(shù)據(jù)變成非易失性存儲器300的初始值。對數(shù)據(jù)的錯誤校正通過使用在步驟S954的處理中讀出的第一ECC來執(zhí)行,并且處理取決于對數(shù)據(jù)的錯誤校正的成功和失敗進行分支(步驟S955)。僅對從在步驟S953的處理中獲取的其數(shù)據(jù)標志表示“真”的物理地址讀出的數(shù)據(jù)執(zhí)行錯誤校正。對從在步驟S953的處理中獲取的其數(shù)據(jù)標志表示“假”的物理地址讀出的數(shù)據(jù)的錯誤校正被視為成功。當對所有數(shù)據(jù)的錯誤校正成功時,操作進行到步驟S956的處理,并且在除這種情況以外的任何一種情況中,操作進行到步驟S969的處理。當使用第一ECC的對數(shù)據(jù)的錯誤校正失敗時(步驟S955:否),主機計算機100被通知數(shù)據(jù)保持特性加強命令的錯誤結(jié)束(步驟S969)。在完成主機計算機100的通知之后,數(shù)據(jù)保持特性加強命令變成錯誤結(jié)束。另一方面,當使用第一ECC的對數(shù)據(jù)的錯誤校正成功時(步驟S955:是),執(zhí)行在第二ECC管理表342中對空條目的檢索(步驟S956)。在第二ECC管理表342中檢索空條目的期間,在第二ECC管理表342中數(shù)據(jù)的數(shù)目表示“0”的條目被檢索,并且該條目中的第二ECC索引的值被獲取。此外,在步驟S956的處理中檢索到的條目中獲取第二ECC物理地址(步驟S957)。此外,在步驟S954的處理中讀出的數(shù)據(jù)和第一ECC的值以邏輯地址的升序被彼此耦接起來,從而計算第二ECC(步驟S958)。在對于數(shù)目小于四的邏輯地址的處理中,關(guān)于具有不足大小的數(shù)據(jù)以及第一ECC,利用非易失性存儲器300中的初始值執(zhí)行填補。例如,關(guān)于地址映射表341中的值,假定了圖9中所示出的情況。當每次變成處理的對象的邏輯地址是從“xj”起的四個邏輯地址時,數(shù)據(jù)和第一ECC被從物理地址“yj0”、“yj1”、“yj2”以及“yj3”讀出。此時,因為與物理地址“yj1”相對應(yīng)的數(shù)據(jù)標志表示“假”,所以都從物理地址“yj1”讀出的數(shù)據(jù)和第一ECC兩者變成非易失性存儲器300的初始值。由此讀出的預(yù)定個數(shù)據(jù)以如下順序被彼此偶接起來從而計算出第二ECC:物理地址“yj0”中的數(shù)據(jù)、第一ECC、物理地址“yj1”中的數(shù)據(jù)、第一ECC、物理地址“yj2”中的數(shù)據(jù)、第一ECC、物理地址“yj3”中的數(shù)據(jù)以及第一ECC。另一方面,當用于執(zhí)行處理的邏輯地址是從“xj+4”起的一個邏輯地址時,數(shù)據(jù)和第一ECC被從物理地址“yj4”讀出,并且從后續(xù)三個物理地址讀出的數(shù)據(jù)經(jīng)歷利用非易失性存儲器300中的初始值進行的填補,從而計算第二ECC。在這種情況下,所有的數(shù)據(jù)變成非易失性存儲器300中的初始值。在步驟S958的處理中計算出的第二ECC被寫入到在步驟S957的處理中獲取的物理地址(步驟S959)。此外,數(shù)據(jù)的數(shù)目以及第0個至第三個數(shù)據(jù)的物理地址的值在步驟S956的處理中檢索到的條目中被更新(步驟S961)。存儲了在計算第二ECC時所使用的數(shù)據(jù)的物理地址的數(shù)目被設(shè)置在數(shù)據(jù)的數(shù)目中。經(jīng)耦接的數(shù)據(jù)以及第一ECC的頭部數(shù)據(jù)的物理地址被設(shè)置在第0個數(shù)據(jù)的物理地址中。此外,數(shù)據(jù)和第一ECC的物理地址被按耦接順序設(shè)置在第一個至第三個數(shù)據(jù)的物理地址中。例如,假定了使圖9中所示出的值作為地址映射表341中的值的情況,以及使圖11中所示出的值作為第二ECC管理表342中的值的情況。當每次變成處理的對象的邏輯地址是從“xj”起的四個邏輯地址并且在步驟S956的處理中獲取的第二ECC索引是“zj0”時的更新之后的條目的值在圖12的上部中被示出。另一方面,當變成處理的對象的邏輯地址是從“xj+4”起的一個邏輯地址并且在步驟S956的處理中獲取的第二ECC索引是“zj4”時的更新之后的條目的值在圖12的下部中被示出。此外,在地址映射表341中的值之中,第二ECC標志和第二ECC索引的值被更新,從而更新了非易失性存儲器300的內(nèi)容(步驟S962)。同時,“真”被設(shè)置在第二ECC中,并且在步驟S956的處理中獲取的第二ECC索引被設(shè)置在第二ECC索引中。例如,假定了使圖9中所示出的值作為地址映射表341中的值的情況,以及使圖11中所示出的值作為第二ECC管理表342中的值的情況。當每次變成處理的對象的邏輯地址是從“xj”起的四個邏輯地址并且在步驟S956的處理中獲取的第二ECC索引是“zj0”時的更新之后的地址映射表341的值在圖10的條目730至733中被示出。另一方面,當變成處理的對象的邏輯地址是從“xj+4”起的一個邏輯地址并且在步驟S956的處理中獲取到的第二ECC索引是“zj4”時的更新之后的地址映射表341的值在圖10的條目734中被示出。此外,判斷在步驟S951的處理中通過劃分所獲得的所有個處理是否已經(jīng)結(jié)束(步驟S963)。當在步驟S963中確定處理仍然存在時(步驟S963:是),重復(fù)地執(zhí)行步驟S952的處理中的和之后的預(yù)定個處理。另一方面,當在步驟S963中確定所有個處理已經(jīng)結(jié)束時(步驟S963:否),主機計算機100被通知數(shù)據(jù)保持特性加強命令已經(jīng)被正常地執(zhí)行的結(jié)果(步驟S964)。在該結(jié)果向主機計算機100的通知已經(jīng)結(jié)束時,所關(guān)心的數(shù)據(jù)保持特性加強命令的處理正常地結(jié)束。【數(shù)據(jù)保持特性加強處理的解除的處理過程】圖13是說明了在根據(jù)本公開的第一實施例的信息處理系統(tǒng)中的數(shù)據(jù)保持特性加強處理的解除的處理過程的流程圖。存儲器系統(tǒng)400通過主機接口201從主機計算機100接收數(shù)據(jù)保持特性加強解除命令。數(shù)據(jù)保持特性加強解除命令具有作為參數(shù)的作為數(shù)據(jù)保持特性加強的解除對象的首邏輯地址以及數(shù)據(jù)大小。類似于寫入命令的情況,數(shù)據(jù)大小利用以邏輯地址所指定的區(qū)域作為單位的數(shù)值的形式來表示。存儲器控制器200基于作為數(shù)據(jù)保持特性加強解除命令的參數(shù)接收到的作為數(shù)據(jù)保持特性加強的解除對象的首邏輯地址以及數(shù)據(jù)大小,以邏輯地址為單位來劃分該處理(步驟S971)。操作在對于第一邏輯地址的處理經(jīng)歷一個處理中的執(zhí)行的假設(shè)下開始。然而,當確定為了處理的有效性可以同時解除多個邏輯地址時,對于多個邏輯地址的處理在一個處理中執(zhí)行。將在以下描述中的對應(yīng)部分中對細節(jié)進行描述。此外,確定變成數(shù)據(jù)保持特性加強的解除的對象的邏輯地址(步驟S972)。利用其開始該處理的邏輯地址是在步驟S971的處理中通過從頭部起進行劃分所獲得的一個邏輯地址,并且還是對于其不執(zhí)行解除處理的邏輯地址。此外,從地址映射表341中獲取與變成對象的邏輯地址相對應(yīng)的地址轉(zhuǎn)換信息(步驟S973)。地址轉(zhuǎn)換信息是已參照圖4描述的物理地址、數(shù)據(jù)標志、第二ECC標志以及第二ECC索引。例如,假定使圖10中所示出的值作為地址映射表341的值的情況。當作為處理的對象的邏輯地址是“xj”時,“yj0”、“真”、“真”以及“zj0”被分別獲取作為邏輯地址“xj”的物理地址、數(shù)據(jù)標志的值、第二ECC標志的值以及第二ECC索引的值。另一方面,當變成處理的對象的邏輯地址是從“xj+4”起的一個邏輯地址時,“yj4”、“假”以及“真”被分別獲取作為邏輯地址“xj+4”中的物理地址、數(shù)據(jù)標志的值以及第二ECC標志的值。此外,“zj4”被獲取為第二ECC索引的值。此外,獲取用于計算將被給予在步驟S973的處理中獲取的物理地址中所存儲的數(shù)據(jù)的第二ECC的物理地址信息(步驟S974)。用于計算第二ECC的物理地址信息是全部在第二ECC管理表342中被管理的數(shù)據(jù)的數(shù)目、第二ECC物理地址以及第0個至第三個數(shù)據(jù)的物理地址。從第二ECC管理表342的如下條目中獲取該物理地址信息,該條目具有與在步驟S973的處理中獲取到的第二ECC索引一致的值。例如,假定了地址映射表341在其中保存了圖10中所示出的值并且第二ECC管理表342在其中保存了圖12中所示出的值的情況。在邏輯地址“xj”是處理的對象時所獲得的物理地址信息被從第二ECC管理表342中第二ECC索引變成“zj0”的條目中獲取。也就是說,數(shù)據(jù)的數(shù)目變成“4”,第二ECC物理地址變成“ei”,第0個數(shù)據(jù)的物理地址變成“yi0”,第一個數(shù)據(jù)的物理地址變成“yi1”,第二個數(shù)據(jù)的物理地址變成“yi2”以及第三個數(shù)據(jù)的物理地址變成“yi3”。此外,確定在步驟S974的處理中獲取的第0個至第三個數(shù)據(jù)的物理地址中數(shù)據(jù)保持特性加強被解除了的邏輯地址(步驟S975)。也就是說,當與數(shù)據(jù)保持特性加強解除命令所指定的邏輯地址相對應(yīng)的物理地址存在于已在步驟S974的處理中獲取的第0個至第三個數(shù)據(jù)的物理地址中時,這樣的物理地址被確定為數(shù)據(jù)保持特性加強在這次相同被解除了的物理地址。例如,假定了當?shù)刂酚成浔?41在其中保存了圖10中所示出的值并且第二ECC管理表342在其中保存了圖12中所示出的值時,從邏輯地址“xj”起的三個邏輯地址被指定為該數(shù)據(jù)保持特性加強解除命令的范圍的情況。此時,當作為處理的對象的邏輯地址在步驟S972的處理中被確定為“xj”時,在步驟S975的處理中,邏輯地址“xj+1”和“xj+2”被確定為在其中與邏輯地址“xj”的處理的執(zhí)行同時地執(zhí)行數(shù)據(jù)保持特性的解除的邏輯地址。此外,基于在步驟S974的處理中獲取到的物理地址信息從非易失性存儲區(qū)域303中讀出第二ECC、數(shù)據(jù)以及第一ECC(步驟S976)。例如,假定了地址映射表341在其中保存了圖10中所示出的值并且第二ECC管理表342在其中保存了圖12中所示出的值的情況。當每次變成數(shù)據(jù)保持特性加強的解除的對象的邏輯地址“xj”、“xj+1”以及“xj+2”在步驟S975的處理中被確定時,第二ECC被從物理地址“ej0”讀出。此外,第0個至第三個數(shù)據(jù)被分別從物理地址“yj0”至“yj3”讀出。同時,第0個至第三個數(shù)據(jù)的每一個都由數(shù)據(jù)和第一ECC組成。此外,對數(shù)據(jù)和第一ECC的錯誤檢測處理通過使用在步驟S976的處理中讀出的第二ECC來執(zhí)行,并且該處理取決于對數(shù)據(jù)和第一ECC的錯誤檢測處理的成功和失敗進行分支(步驟S977)。也就是說,當檢測到錯誤時,執(zhí)行步驟S978的處理中的和之后的預(yù)定個處理。另一方面,當未檢測到錯誤時,執(zhí)行步驟S981的處理中的和之后的預(yù)定個處理。注意的是,當在步驟S974的處理中獲取的數(shù)據(jù)的數(shù)目小于“4”時,關(guān)于缺乏的數(shù)據(jù),利用非易失性存儲器300中的初始值來執(zhí)行填補,從而執(zhí)行錯誤檢測。當檢測到錯誤時(步驟S977:是),通過使用在步驟S976的處理中讀出的第二ECC來執(zhí)行錯誤校正處理,并且該處理取決于錯誤校正處理的成功和失敗進行分支(步驟S978)。也就是說,當對于所有個數(shù)據(jù)以及第一ECC的錯誤校正成功時,執(zhí)行步驟S979的處理中的和之后的預(yù)定個處理,而當對于所有個數(shù)據(jù)和第一ECC的錯誤校正處理失敗時,執(zhí)行步驟S989的處理。注意的是,當在步驟S974的處理中獲取到的數(shù)據(jù)的數(shù)目小于“4”時,關(guān)于缺乏的數(shù)據(jù),利用非易失性存儲器300中的初始值來執(zhí)行填補,從而執(zhí)行錯誤檢測。當使用第二ECC的錯誤校正處理成功時(步驟S978:是),其中產(chǎn)生了錯誤的數(shù)據(jù)和第一ECC被重寫為錯誤被校正了的數(shù)據(jù)和第一ECC(步驟S979)。對于在這個處理中被重寫的數(shù)據(jù)和第一ECC,在步驟S978的處理中被校正的數(shù)據(jù)和第一ECC都變成重寫的對象,而不管所關(guān)心的邏輯地址是否是數(shù)據(jù)保持特性的加強被解除了的邏輯地址。在甚至當使用了第二ECC時錯誤校正處理仍不成功的情況下(步驟S978:否),主機計算機100被通知數(shù)據(jù)保持特性加強解除命令的錯誤結(jié)束(步驟S989)。在完成到主機計算機100的通知之后,數(shù)據(jù)保持特性加強解除命令變成錯誤結(jié)束。在完成步驟S977(否)或步驟S979的處理之后,判斷是否需要重計算第二ECC(步驟S981)。也就是說,判斷與在步驟S975的處理中確定的變成數(shù)據(jù)保持特性加強的解除對象的每個邏輯地址以外的邏輯地址相對應(yīng)的物理地址中的任何一個物理地址是否存在于在步驟S974的處理中獲取的第二ECC物理地址信息中。當在步驟S981的處理中確定與變成數(shù)據(jù)保持特性加強的解除對象的每個邏輯地址以外的邏輯地址相對應(yīng)的物理地址中的任何一個存在時(步驟S981:是),第二ECC被重計算(步驟S982)并且然后被存儲在非易失性存儲區(qū)域303的第二ECC存儲區(qū)域330中(步驟S983)。在這種情況下,當在步驟S977的處理中檢測到錯誤時,根據(jù)錯誤校正被預(yù)先執(zhí)行了的數(shù)據(jù)和第一ECC來計算第二ECC。另一方面,當在步驟S977的處理中未檢測到錯誤時,根據(jù)剛讀出的數(shù)據(jù)和第一ECC兩者來計算第二ECC。例如,假定了地址映射表341在其中保存了圖10中所示出的值并且第二ECC管理表342在其中保存了圖12中所示出的值的情況。此時,當每個變成數(shù)據(jù)保持特性加強的解除對象的邏輯地址“xj”、“xj+1”以及“xj+2”在步驟S975的處理中被確定時,未變成數(shù)據(jù)保持特性加強的解除對象的邏輯地址是“xj+3”。用來在步驟S982的處理中計算第二ECC的數(shù)據(jù)從物理地址“yj3”被讀出以變成錯誤校正被預(yù)先執(zhí)行了的數(shù)據(jù)和第一ECC。其數(shù)據(jù)大小小于計算第二ECC所需要的數(shù)據(jù)大小的部分經(jīng)歷利用存儲器中的初始值進行的填補。注意的是,在步驟S983的處理中存儲了第二ECC的物理地址是在步驟S974的處理中獲取到的第二ECC物理地址。在完成步驟S981(否)或步驟S983的處理之后,在步驟S974的處理中獲取到的物理地址信息被更新,并且第二ECC管理表342被存儲在非易失性存儲區(qū)域303的表存儲區(qū)域340中(步驟S984)。例如,假定了地址映射表341在其中保存了圖10中所示出的值并且第二ECC管理表342在其中保存了圖12中所示出的值的情況。此時,當每個變成數(shù)據(jù)保持特性加強的解除對象的邏輯地址“xj”、“xj+1”以及“xj+2”在步驟S975的處理中被確定時,第二ECC物理地址信息的數(shù)據(jù)的數(shù)目被更新為“1”,并且第0個數(shù)據(jù)的物理地址被更新為“yj3”。第0個至第三個數(shù)據(jù)的物理地址的每一個都被視為有效值,因為數(shù)據(jù)的數(shù)目是“1”。在這種情況下完成更新之后的第二ECC管理表342的內(nèi)容在圖14的上部中被示出。此外,數(shù)據(jù)保持特性加強被解除了的邏輯地址的第二ECC標志在地址映射表341中被設(shè)置為“假”(步驟S985)。例如,假定了地址映射表341在其中保存了圖10中所示出的值并且第二ECC管理表342在其中保存了圖12中所示出的值的情況。此時,當每個變成數(shù)據(jù)保持特性加強的解除對象的邏輯地址“xj”、“xj+1”以及“xj+2”在步驟S975的處理中被確定時,與邏輯地址“xj”、“xj+1”以及“xj+2”相對應(yīng)的第二ECC標志被設(shè)置為“假”。第二ECC標志被設(shè)置為“假”的邏輯地址的第二ECC索引被視為無效值。在這種情況下完成更新之后的地址映射表341在條目740、741以及742中被示出。此外,判斷在步驟S971的處理中通過劃分所獲得的預(yù)定個處理是否已經(jīng)全部結(jié)束(步驟S986)。當在步驟S986的處理中確定處理仍然存在時(步驟S986:是),重復(fù)地執(zhí)行步驟S972的處理中的和之后的預(yù)定個處理。另一方面,當在步驟S971的處理中通過劃分所獲得的預(yù)定個處理已經(jīng)全部結(jié)束時(步驟S986:否),主機計算機100被通知數(shù)據(jù)保持特性加強解除命令已經(jīng)被正常地執(zhí)行的結(jié)果(步驟S987)。在完成了將該結(jié)果通知給主機計算機100之后,用于數(shù)據(jù)保持特性加強解除命令的處理變成正常結(jié)束?!镜谝粚嵤├男Ч咳缟衔乃觯鶕?jù)本公開的第一實施例,第二ECC及作為其對象數(shù)據(jù)的物理地址在第二ECC管理表342中被管理,借此數(shù)據(jù)的保持特性可以被加強而不用知道有關(guān)物理地址空間的布置。<2.第一實施例的修改變化>【應(yīng)用于未伴隨覆寫的非易失性存儲器】盡管已經(jīng)根據(jù)可以在非易失性存儲器300中執(zhí)行數(shù)據(jù)的覆寫的假設(shè)對本公開的第一實施例進行了描述,但是例如,還存在像NAND閃速存儲器一樣不能夠執(zhí)行覆寫的存儲器。在不能夠執(zhí)行覆寫的存儲器的情況下,需要在數(shù)據(jù)被寫入到非易失性存儲器之前執(zhí)行用于擦除數(shù)據(jù)的處理。關(guān)于這個方面以外的任何一個方面,能夠采用和上文中所描述的第一實施例相同的技術(shù)。因此,能夠管理寫入到不連續(xù)地址的數(shù)據(jù)以及向其添加的第二ECC的物理地址兩者?!径鄠€第二ECC被存儲在同一物理地址中的情況】盡管在上文中所描述的第一實施例中,一個第二ECC被存儲在一個物理地址的區(qū)域中,但是本公開絕不限于此,并且因此多個第二ECC還可以被存儲在同一物理地址中。在這種情況下,如圖16中所示,第二ECC物理地址內(nèi)偏移(intra-secondECCphysicaladdressoffset)被新保存在第二ECC管理表342中。此外,第二ECC物理地址內(nèi)偏移表示所關(guān)心的條目的第二ECC被存儲在第二ECC物理地址中的位置中的哪一個位置。結(jié)果,該結(jié)構(gòu)可以使得多個第二ECC被存儲在同一物理地址中。注意的是,當多個數(shù)據(jù)利用邏輯地址來管理時,不必引入第二ECC物理地址內(nèi)偏移。然而,根據(jù)第一實施例的該修改變化,提供了使得多個數(shù)據(jù)被利用物理地址來管理的優(yōu)點,從而使得單獨的地址轉(zhuǎn)換成為不必要的,從而使得能夠以高速度來執(zhí)行存取。注意,一般而言,表達式(3)成立:n×C≤N(3)其中,N是非易失性存儲區(qū)域303的單位數(shù)據(jù)寬度的字節(jié),并且C是所給出的第二ECC的大小的字節(jié)。此外,落入表達式(3)的范圍內(nèi)的n是在同一物理地址中的第二ECC的數(shù)目。此時,第二ECC物理地址內(nèi)偏移i是滿足表達式(4)的整數(shù):0≤i≤(n-1)(4)【結(jié)合邏輯地址上的不相關(guān)數(shù)據(jù)來生成第二ECC的情況】盡管在上文中所描述的第一實施例中,通過偶接在邏輯地址空間上連續(xù)的多個數(shù)據(jù)來生成第二ECC,但是本公開絕不限于此并且因此還可以結(jié)合邏輯地址上的不相關(guān)數(shù)據(jù)來生成第二ECC。在這種情況下,在數(shù)據(jù)保持特性加強處理期間檢索空條目的方法受到影響。也就是說,在上文中所描述的第一實施例中,當確定存儲了第二ECC的物理地址時,在步驟S956的處理中檢索空條目。然而,在這種情況下,僅需要檢索一個或多個空位存在于每個變成對象數(shù)據(jù)的物理地址中的條目。例如,假定了當?shù)刂酚成浔?41在其中保存了圖17中所示出的值并且第二ECC管理表342在其中保存了圖18中所示出的值時,“xj”以及“5”根據(jù)數(shù)據(jù)保持特性加強命令分別被指定為首邏輯地址和數(shù)據(jù)大小的情況。此時,關(guān)于邏輯地址“xj”、“xj+1”、“xj+2”以及“xj+3”,用于加強數(shù)據(jù)保持特性的處理通過利用和在上文中所描述的第一實施例中的技術(shù)相同的技術(shù)來執(zhí)行。此外,關(guān)于邏輯地址“xj+4”,在步驟S956的處理中檢索到一個或多個空位存在于每個變成對象數(shù)據(jù)的物理地址中的條目(參照圖8)??傊?,僅需要檢索數(shù)據(jù)的數(shù)目等于或小于“3”的條目。在這種情況下,在圖18中所示出的第二ECC管理表342的情況下,具有第二ECC索引“zh0”的條目也適合于該檢索條件。此外,在步驟S958的處理中(參照圖8),當邏輯地址“xj+4”中的第二ECC被計算時存儲在圖18中所示出的物理地址“yh0”中的數(shù)據(jù)和第一ECC兩者被讀出。此外,已從與邏輯地址“xj+4”相對應(yīng)的物理地址“yj4+4”讀出并且然后經(jīng)歷錯誤校正的數(shù)據(jù)和第一ECC被彼此偶接,從而執(zhí)行第二ECC的計算。在以這樣的方式進行更新之后的地址映射表341的示例被在圖19中示出。此外,第二ECC管理表342的示例被在圖20中示出?!纠媒?jīng)過的存取時間作為觸發(fā)來執(zhí)行數(shù)據(jù)保持特性加強處理的情況】盡管在上文中所描述的第一實施例中,數(shù)據(jù)保持特性的加強及其解除是根據(jù)從主機計算機100發(fā)出的相應(yīng)命令來執(zhí)行的,但是數(shù)據(jù)保持特性加強等的觸發(fā)絕不限于此。例如,可以在存儲器控制器200內(nèi)設(shè)置定時器并且存儲器控制器200可以自發(fā)地執(zhí)行數(shù)據(jù)保持特性加強及其解除。在這種情況下,針對根據(jù)從主機計算機100發(fā)出的讀取命令或?qū)懭朊畋淮嫒〉拿總€邏輯地址來管理最后存取的時間(最后存取時間)。最后存取時間是通過讀取命令或?qū)懭朊畹膱?zhí)行來更新的。圖21示出了具有最后存取時間來作為參數(shù)的地址映射表341的示例。當從最后存取時間起已經(jīng)經(jīng)過的時間比預(yù)定時間長并且第二ECC標志表示“假”時,存儲器控制器200自發(fā)地執(zhí)行數(shù)據(jù)保持特性加強處理。此外,當從最后存取時間起已經(jīng)經(jīng)過的時間不比預(yù)定時間長并且第二ECC標志表示“真”時,存儲器控制器200可以自發(fā)地執(zhí)行數(shù)據(jù)保持特性加強處理的解除?!径鄠€邏輯地址對應(yīng)于由一個物理地址指定的區(qū)域的情況】盡管在上文中所描述的第一實施例中,具有由一個邏輯地址指定的大小的數(shù)據(jù)被存儲在由一個物理地址指定的區(qū)域中,但是本公開絕不限于此。例如,具有由多個邏輯地址指定的大小的數(shù)據(jù)也可以被存儲在由一個物理地址指定的區(qū)域中。圖22示出了m組數(shù)據(jù)和第一ECC被存儲在存儲器中的示例,在該存儲器中具有由多個邏輯地址指定的大小的數(shù)據(jù)能夠被存儲在由一個邏輯地址指定的區(qū)域中。在這種情況下,為了指定存儲數(shù)據(jù)和第一ECC的位置,不僅物理地址而且物理地址內(nèi)偏移都是需要的。圖23示出了在引入物理地址內(nèi)偏移時的地址映射表341的示例,并且圖24示出了在引入物理地址內(nèi)偏移時的第二ECC管理表342的示例。注意的是,這樣的示例優(yōu)選地適用于非易失性存儲器,尤其是利用大尺寸作為單位對數(shù)據(jù)存取進行響應(yīng)的閃速存儲器。閃速存儲器的典型示例包括NAND型閃速存儲器。此外,這樣的示例還可以適用于NVRAM?!緫?yīng)用于NVMExpress】現(xiàn)將相對于作為上文中所描述的第一實施例的應(yīng)用示例的“NVMExpress”應(yīng)用示例給出描述?!癗VMExpress”是指用于使用閃速存儲器的固態(tài)驅(qū)動器(SSD)的接口,該接口由非易失性存儲器主機控制器接口(NVMHCI)工作組制定。首先,當在數(shù)據(jù)集管理命令中,存取頻率的值落在“LBA范圍的非頻繁寫入和非頻繁讀取”(InfrequentwritesandinfrequentreadstotheLBArange)內(nèi)時,執(zhí)行數(shù)據(jù)保持特性加強處理。此外,當存取頻率的值落在“LBA范圍的頻繁寫入和頻繁讀取”(FrequentwritesandfrequentreadstotheLBArange)內(nèi)時,執(zhí)行數(shù)據(jù)保持特性加強的解除。注意的是,數(shù)據(jù)集管理命令是設(shè)備根據(jù)其來優(yōu)化所記錄的數(shù)據(jù)的命令。此外,當在讀取命令中,存取頻率的值落在“LBA范圍的非頻繁寫入和非頻繁讀取”內(nèi)時,在執(zhí)行讀取處理之后執(zhí)行數(shù)據(jù)保持特性加強處理。此外,當存取頻率的值落在“LBA范圍的頻繁寫入和頻繁讀取”內(nèi)時,在執(zhí)行了讀取處理之后執(zhí)行數(shù)據(jù)保持特性加強的解除。此外,當在寫入命令中,存取頻率的值落在“LBA范圍的非頻繁寫入和非頻繁讀取”內(nèi)時,在寫入處理的執(zhí)行之后執(zhí)行數(shù)據(jù)保持特性加強處理。此外,當存取頻率的值落在“LBAA范圍的頻繁寫入和頻繁讀取”內(nèi)時,在寫入處理的執(zhí)行之后執(zhí)行數(shù)據(jù)保持特性加強的解除。因此,本公開的第一實施例可以適用于“NVMExpress”。<3.第二實施例>【信息處理系統(tǒng)的配置】圖25是示出了根據(jù)本公開的第二實施例的信息處理系統(tǒng)的配置的方框圖。根據(jù)本公開的第二實施例的信息處理系統(tǒng)包括主機計算機100、存儲器600以及存儲器控制部500。存儲器控制部500和存儲器600組成存儲器系統(tǒng)401。主機計算機100發(fā)出請求以請求存儲器系統(tǒng)401讀取或者寫入數(shù)據(jù)。除了常規(guī)的易失性存儲器603之外,存儲器600還包括非易失性存儲器。非易失性存儲器大體上被分類成利用大尺寸作為單位對數(shù)據(jù)存取進行響應(yīng)的閃速存儲器602,以及可以利用小單位對其執(zhí)行高速隨機存取的非易失性隨機存取存儲器(NVRAM)601。在這里,閃速存儲器602的典型示例包括NAND型閃速存儲器。另一方面,NVRAM601的示例包括PCRAM、MRAM、ReRAM等等。易失性存儲器603被用作工作區(qū)域,并且還被用來在其中存儲用于管理的數(shù)據(jù)。此外,易失性存儲器603還可以被用作高速緩沖存儲器。易失性存儲器603可以通過DRAM、SRAM等等來實現(xiàn)。在易失性存儲器603中存儲的數(shù)據(jù)可以被保存在NVRAM601中或者閃速存儲器602中(當該數(shù)據(jù)可能是為電源中斷作準備所必需的時),并且可以在下次電源被接通時被再利用。存儲器控制部500包括處理器510、內(nèi)置存儲器520、第一ECC處理部530、第二ECC處理部540、外圍電路550、主機接口501以及存儲器接口591至593。處理器510、內(nèi)置存儲器520、第一ECC處理部530、第二ECC處理部540、外圍電路550、主機接口501以及存儲器接口591至593通過總線580被連接到彼此。處理器510是用于解釋并且執(zhí)行從主機計算機100發(fā)出的控制命令的處理單元。處理器510通過使用內(nèi)置存儲器520中的存儲區(qū)域作為程序存儲區(qū)域和工作區(qū)域來執(zhí)行程序。內(nèi)置存儲器520是包括內(nèi)置ROM和內(nèi)置RAM(兩者都未示出)的存儲器。程序可以被存儲在內(nèi)置ROM中或者可以在激活階段被從存儲器600轉(zhuǎn)移到內(nèi)置RAM。內(nèi)置RAM被用在諸如工作區(qū)域或用于管理的數(shù)據(jù)的臨時存儲等各種用途應(yīng)用中。第一ECC處理部530用于生成作為糾錯碼(ECC)的第一ECC,第一ECC被添加以便對應(yīng)于各個數(shù)據(jù),并且用于使用所關(guān)心的第一ECC來執(zhí)行錯誤校正。第二ECC處理部540用于生成第二ECC,第二ECC被添加以便對應(yīng)于將多組數(shù)據(jù)和第一ECC收集到其中的數(shù)據(jù)組,并且用于使用第一ECC來執(zhí)行錯誤校正。第一ECC處理部530和第二ECC處理部540中的每一個可以以硬件的形式來實現(xiàn),或者可以以軟件的形式通過在處理器510中執(zhí)行程序來實現(xiàn)。外圍電路550是處理器510的外圍電路,并且例如包括內(nèi)置定時器、通用輸入/輸出(GPIO)等等。主機接口501是通過其來執(zhí)行與主機計算機100的交互的接口。存儲器系統(tǒng)401通過主機接口501連接到主機計算機100。此外,存儲器系統(tǒng)401接收根據(jù)其來控制存儲器600的控制命令,并且根據(jù)該控制命令被控制以被操作為存儲器系統(tǒng)。串行ATA(SATA)、外圍組件互連(PCI)、Express、嵌入式多媒體卡(eMMC)、通用串行總線(USB)等等例如可以被用作主機接口501。存儲器接口590是通過其來執(zhí)行與NVRAM601的交互的接口。存儲器接口592是通過其來執(zhí)行與閃速存儲器602的交互的接口。此外,存儲器接口593是通過其來執(zhí)行與易失性存儲器603的交互的接口。存儲器系統(tǒng)401根據(jù)寫入命令將數(shù)據(jù)寫入到存儲器600,并且根據(jù)讀取命令從存儲器600讀取數(shù)據(jù)。寫入命令和讀取命令中的每一個都指定其中存在對象數(shù)據(jù)的首邏輯地址以及數(shù)據(jù)大小作為參數(shù)。當存儲器系統(tǒng)401已經(jīng)接收到關(guān)于寫入命令的數(shù)據(jù)時,第一ECC被添加到所關(guān)心的數(shù)據(jù)并且得到的數(shù)據(jù)被添加以被寫入到非易失性存儲器(NVRAM601或閃速存儲器602)。被寫入的數(shù)據(jù)的大小可以達到給定的大小,或者在給定時間中沒有被訪問的數(shù)據(jù)可以通過使用外圍電路550中的內(nèi)置定時器來檢測,從而第二ECC的生成和寫入可以獨立于從主機計算機100發(fā)出的指令被執(zhí)行。可替換地,可以根據(jù)諸如從主機計算機100發(fā)出的數(shù)據(jù)保持特性加強命令的之類指令來生成待寫入到非易失性存儲器的第二ECC。第二ECC所應(yīng)用于的數(shù)據(jù)可以是其中物理地址連續(xù)的多個數(shù)據(jù),或者可以是其中物理地址不連續(xù)的多個數(shù)據(jù)。在以下描述中,在本公開的第二實施例中假定了物理地址是連續(xù)的情況,并且在本公開的第三實施例中假定了物理地址是不連續(xù)的情況。圖26是示出了根據(jù)本公開的第二實施例的信息處理系統(tǒng)的功能性配置的方框圖。在這種情況下,如上文所述,示出了其中主機計算機100和存儲器600通過存儲器控制部500彼此連接的情形。此外,就存儲器控制部500的功能而言,示出了控制部511、地址管理部521以及錯誤校正處理部534。地址管理部521管理在主機計算機100中使用的存儲器600中的邏輯地址與存儲器600中的物理地址之間的對應(yīng)關(guān)系。此外,地址管理部521進一步管理第二ECC標志,該第二ECC標志表示是否相對于在邏輯地址中包含的數(shù)據(jù)來生成該第二ECC。此外,當對于在所關(guān)心的邏輯地址中包含的數(shù)據(jù)執(zhí)行了附加(appendant)時,地址管理部521進一步管理該附加之前的物理地址。地址管理部521例如被保存為內(nèi)置存儲器520中的地址映射表。錯誤校正處理部534或者相對于存儲器600中存儲的數(shù)據(jù)來生成糾錯碼,或者基于該糾錯碼來執(zhí)行錯誤校正。也就是說,錯誤校正處理部534在寫入階段中生成寫入數(shù)據(jù)的第一ECC,并且還相對于在其中包含了所關(guān)心的寫入數(shù)據(jù)的多個數(shù)據(jù)來生成第二ECC。此外,錯誤校正處理部534基于在讀取階段中讀取到的數(shù)據(jù)及其第一ECC兩者來執(zhí)行錯誤校正,并且在校正失敗時基于在其中包含了讀取到的數(shù)據(jù)的多個數(shù)據(jù)及其第二ECC來執(zhí)行錯誤校正。然而,當錯誤校正伴隨有附加時,如將稍后描述的,錯誤校正變成例外的處理內(nèi)容。錯誤校正處理部534對應(yīng)于第一ECC處理部530和第二ECC處理部540兩者??刂撇?11控制主機計算機100與存儲器600之間的交互。也就是說,控制部511根據(jù)從主機計算機100做出的讀取請求來從存儲器600讀出數(shù)據(jù),并且將由此讀出的數(shù)據(jù)返回給主機計算機100。此外,控制部511根據(jù)從主機計算機100做出的寫入請求將寫入數(shù)據(jù)從主機計算機100寫入到存儲器600??刂撇?11通過參照第一映射管理部521的地址映射表來在讀取或?qū)懭氩僮髌陂g執(zhí)行用于將邏輯地址轉(zhuǎn)換為物理地址的處理。盡管假定了控制部511以處理器510的功能的形式實現(xiàn),但是本公開絕不限于此并且因此控制部511還可以通過硬件電路實現(xiàn)?!敬鎯ζ?00內(nèi)的存儲區(qū)域】圖27是示出了在根據(jù)本公開的第二實施例的信息處理系統(tǒng)中的存儲器600內(nèi)的存儲區(qū)域的分割的圖。存儲器600內(nèi)的存儲區(qū)域大體上被分類成三個區(qū)域:正常存取區(qū)域610;附加區(qū)域620;以及第二ECC存儲區(qū)域630。正常存取區(qū)域610是變成來自主機計算機100的直接存取的對象的正常數(shù)據(jù)區(qū)域。在正常存取區(qū)域610中,例如,具有2個字節(jié)的第一ECC被添加到具有32個字節(jié)的數(shù)據(jù)。該數(shù)據(jù)和第一ECC或者可以被存儲為物理上彼此鄰近或者可以被分別存儲在彼此遠離的位置中。在這種情況下,一個數(shù)據(jù)及其第一ECC被收集到其中的數(shù)據(jù)被視為具有N個字節(jié)的單位數(shù)據(jù),并且四個單位數(shù)據(jù)被收集到其中的4N字節(jié)數(shù)據(jù)被視為第二ECC的生成單位。然而,本公開絕不限于此并且因此只需要第二ECC的生成單位是單位數(shù)據(jù)的整數(shù)倍。注意的是,正常存取區(qū)域610是在所附權(quán)利要求中描述的第一存儲區(qū)域的示例。附加區(qū)域620是在其中未對正常存取區(qū)域610中的數(shù)據(jù)執(zhí)行覆寫并且數(shù)據(jù)被特別地存儲為該附加區(qū)域620中的附加數(shù)據(jù)的區(qū)域。此外,在附加區(qū)域620中,數(shù)據(jù)和第一ECC或者可以被存儲為物理上彼此鄰近或者可以被分別存儲在彼此遠離的位置中。在這種情況下,第一ECC被添加到一個附加數(shù)據(jù)并且得到的數(shù)據(jù)在附加區(qū)域620中被存儲為N個字節(jié)數(shù)據(jù)。當對于附加區(qū)域620執(zhí)行該附加時,地址映射部521的物理地址指定該附加區(qū)域620中的地址。注意的是,附加區(qū)域620是在所附權(quán)利要求中描述的第三存儲區(qū)域的示例。第二ECC存儲區(qū)域630是其中存儲了與正常存取區(qū)域610中存儲的數(shù)據(jù)相對應(yīng)的第二ECC的存儲區(qū)域。在這種情況下,具有N個字節(jié)的第二ECC針對正常存取區(qū)域610中的具有4N個字節(jié)的數(shù)據(jù)被生成并且然后被存儲在第二ECC存儲區(qū)域630中。注意的是,第二ECC存儲區(qū)域630是在所附權(quán)利要求中描述的第二存儲區(qū)域的示例。附加區(qū)域620和第二ECC存儲區(qū)域630兩者都可以被存儲在和正常存取區(qū)域610的種類相同種類的存儲器中。然而,為了以高速執(zhí)行稍后將描述的聚合處理,附加區(qū)域620和第二ECC存儲區(qū)域630還可以都被存儲在另一類型的存儲器中。至于所關(guān)心的組合,例如,期望正常存取區(qū)域610被存儲在閃速存儲器602中,而附加區(qū)域620和第二ECC存儲區(qū)域630都被存儲在更高速度的NVRAM601中。圖28是示出了在本公開的第二實施例中的第二ECC存儲區(qū)域630中的、在正常存取區(qū)域610中的數(shù)據(jù)與第二ECC分別被存儲的位置之間的關(guān)系的圖。如上文所述,假定能夠以34個字節(jié)作為單位數(shù)據(jù)來從NVRAM601或者閃速存儲器602的正常存取區(qū)域610讀出數(shù)據(jù)并且將數(shù)據(jù)寫入到NVRAM601或者閃速存儲器602的正常存取區(qū)域610,并且因此物理地址每34個字節(jié)被分配給NVRAM601或者閃速存儲器602的正常存取區(qū)域610。具有34個字節(jié)的單位數(shù)據(jù)例如由具有32個字節(jié)的數(shù)據(jù)311和所關(guān)心的數(shù)據(jù)的第一ECC312組成。也就是說,具有2個字節(jié)的第一ECC被添加到的正常存取區(qū)域610中的具有32個字節(jié)的數(shù)據(jù)。注意,一般而言,表達式(5)成立:A+B≤N(5)其中,N是正常存取區(qū)域610的單位數(shù)據(jù)寬度的字節(jié),A是數(shù)據(jù)大小的字節(jié),以及B是給定的第一ECC的大小的字節(jié)。此外,例如,假定具有34個字節(jié)的第二ECC331被賦予四個單位數(shù)據(jù)。具有34個字節(jié)的第二ECC331被存儲在第二ECC存儲區(qū)域630中。注意,是一般而言,表達式(6)成立:C≤N(6)其中,C是給定的第二ECC的大小的字節(jié)。在本公開的第二實施例中,假定第二ECC存儲區(qū)域630中的第二ECC331的存儲位置相對于正常存取區(qū)域610中的物理地址被唯一地固定。例如,如下的四個單位數(shù)據(jù)對應(yīng)于一個第二ECC,在上述四個單位數(shù)據(jù)中,由二進制記法所表示的物理地址的最后2個比特分別是“00”、“01”、“10”以及“11”并且其它物理地址部分彼此一致。此外,物理地址中除了最后2個比特之外的部分被視為偏移并且在這個條件下,從第二ECC存儲區(qū)域630的開頭被添加了偏移的值的位置變成第二ECC331的存儲位置。也就是說,第二ECC存儲區(qū)域630中的第二ECC331的存儲位置相對于正常存取區(qū)域610中的數(shù)據(jù)的物理地址被唯一地固定?!镜刂酚成浔怼繄D29是示出了在根據(jù)本公開的第二實施例的信息處理系統(tǒng)中的地址管理部521的地址映射表的結(jié)構(gòu)的圖。地址管理部521存儲邏輯地址、物理地址、第二ECC標志以及舊的物理地址,使得邏輯地址、物理地址、第二ECC標志以及舊的物理地址相對于多個單位數(shù)據(jù)而彼此對應(yīng)。邏輯地址是被用在主機計算機100中的邏輯地址。物理地址是存儲器600中的單位數(shù)據(jù)的物理地址。第二ECC標志是表示與單位數(shù)據(jù)相對應(yīng)的第二ECC是否被存儲在第二ECC存儲區(qū)域630中的標志。例如,當與單位數(shù)據(jù)相對應(yīng)的第二ECC被存儲在第二ECC存儲區(qū)域630中時,第二ECC標志表示“真”。另一方面,當與單位數(shù)據(jù)相對應(yīng)的第二ECC未被存儲在第二ECC存儲區(qū)域630中時,第二ECC標志表示“假”。當存儲了第二ECC時,第二ECC存儲區(qū)域630中的第二ECC331的存儲位置,如上文所述,相對于正常存取區(qū)域610中的數(shù)據(jù)的物理地址被唯一地固定。當與邏輯地址相對應(yīng)的數(shù)據(jù)被附加到附加區(qū)域620時,舊的物理地址表示在正常存取地址區(qū)域610中附加之前的數(shù)據(jù)的物理地址。因此,附加之前的單位數(shù)據(jù)的存儲位置可以被指定為用于第二ECC的重新生成。【寫入處理的處理過程】圖30是說明在本公開的第二實施例中的寫入處理的處理過程的流程圖。當存儲器控制部500已經(jīng)從主機計算機100接收到寫入命令時,存儲器控制部500開始寫入處理。寫入命令在其中包含了每個變成寫入的對象的邏輯地址。此外,寫入命令后面是寫入數(shù)據(jù)。錯誤校正處理部534對于寫入數(shù)據(jù)生成第一ECC(步驟S911)??刂撇?11基于寫入命令的(一個或多個)邏輯地址通過參照地址管理部521的地址映射表來獲取地址轉(zhuǎn)換信息(步驟S912)。地址轉(zhuǎn)換信息是由先前參照圖29所描述的邏輯地址、物理地址、第二ECC標志以及舊的物理地址組成的信息。在這里,當?shù)诙﨓CC標志表示“假”(即,未給出第二ECC)時(步驟S913:否),寫入數(shù)據(jù)和第一ECC兩者都被寫入到正常存取區(qū)域610(步驟S914)。此時,如果正常存取區(qū)域610例如由像ReRAM、PCRAM或MRAM那樣的可以對其執(zhí)行覆寫的非易失性存儲器組成,則可以對更新之前的數(shù)據(jù)的區(qū)域執(zhí)行覆寫。另一方面,如果正常存取區(qū)域610例如由像NAND閃速存儲器那樣的、不能夠執(zhí)行覆寫的類型的非易失性存儲器組成,則可以對附加區(qū)域620執(zhí)行附加。當對附加區(qū)域620執(zhí)行了附加時,作為附加的目的地的物理地址被登記在地址管理部521中,從而更新地址映射表的內(nèi)容(步驟S919)。因為第二ECC標志表示“真”(即,給出了第二ECC)(步驟S913:是),所以對附加區(qū)域620執(zhí)行附加來防止第二ECC在寫入處理完成之后變得不能夠被利用。在這種情況下,當在地址轉(zhuǎn)換信息中物理地址表示附加區(qū)域620時(步驟S915:是),因為已證明附加被預(yù)先執(zhí)行,所以對附加區(qū)域620的物理地址執(zhí)行覆寫(步驟S916)。然而,此時,可以對附加區(qū)域620的其它(一個或多個)區(qū)域進一步執(zhí)行附加。在這種情況下,附加的目的地的物理地址被登記在地址管理部521中,從而更新地址映射表的內(nèi)容(步驟S919)。當在地址轉(zhuǎn)換信息中物理地址不表示附加區(qū)域620時(步驟S915:否),對該附加區(qū)域620新執(zhí)行附加(步驟S917)。此外,附加的目的地的物理地址被登記在地址管理部521中,從而更新地址映射表的內(nèi)容(步驟S919)。為了以這樣的方式連續(xù)地使用第二ECC存儲區(qū)域630中的第二ECC,舊的數(shù)據(jù)被留在正常存取區(qū)域610中并且新的數(shù)據(jù)被附加到附加區(qū)域620。盡管附加的部分僅適用于第一ECC并且沒有給出第二ECC,但是第二ECC能夠適用于附加部分之外的部分連同未被擦除而留下的數(shù)據(jù)。因為附加的部分是與其它部分中的任何一個相比相對最新添加和寫入的部分,所以預(yù)期引起問題的可能性是低的,這是因為附加的部分在數(shù)據(jù)保持特性上是相對出色的?!咀x取處理的處理過程】圖31是說明在根據(jù)本公開的第二實施例的信息處理系統(tǒng)中的讀取處理的處理過程的流程圖。當存儲器控制部500已從主機計算機100接收到讀取命令時,存儲器控制部500開始讀取處理。讀取命令在其中包含了每個變成讀取的對象的邏輯地址。控制部511基于讀取命令的(一個或多個)邏輯地址通過參照地址管理部521的地址映射表來獲取地址轉(zhuǎn)換信息(步驟S921)。地址轉(zhuǎn)換信息是由先前參照圖29描述的邏輯地址、物理地址、第二ECC標志以及舊的物理地址組成的信息。此外,控制部511基于地址轉(zhuǎn)換信息的物理地址從存儲器600讀出單位數(shù)據(jù)(步驟S922)。作為讀取的對象的數(shù)據(jù)及其第一ECC都被包含在單位數(shù)據(jù)中。錯誤檢測和校正都基于讀出的數(shù)據(jù)和第一ECC來執(zhí)行。在這種情況下,當未檢測到錯誤或者所檢測到的錯誤的校正成功時(步驟S923:是),這個讀取處理正常地結(jié)束。另一方面,當基于第一ECC的對檢測到的錯誤的校正失敗時(步驟S923:否),嘗試基于第二ECC的錯誤校正。此時,當?shù)刂忿D(zhuǎn)換信息的第二ECC標志表示“假”時(步驟S924:否),因為不能夠執(zhí)行基于第二ECC的錯誤校正,所以這個讀取處理變成錯誤結(jié)束。此外,甚至當?shù)刂忿D(zhuǎn)換信息的第二ECC標志表示“真”時(步驟S925:是),如果地址轉(zhuǎn)換信息的物理地址對應(yīng)于附加區(qū)域620(步驟S925:是),則因為不能夠利用第二ECC,所以讀取處理變成錯誤結(jié)束。在錯誤結(jié)束期間,主機計算機100被通知讀取錯誤的產(chǎn)生,從而停止讀取處理。當能夠利用第二ECC時,變成第二EEC的對象的數(shù)據(jù)組(例如,上文中所描述的4N字節(jié)數(shù)據(jù))以及第二ECC的存儲區(qū)域兩者根據(jù)地址轉(zhuǎn)換信息的舊的物理地址被識別(步驟S926)。結(jié)果,變成第二ECC的對象的數(shù)據(jù)組從正常存取區(qū)域610被讀出,并且對應(yīng)的第二ECC從第二ECC存儲區(qū)域630被讀出(步驟S927)。對于數(shù)據(jù)組的錯誤校正基于由此讀出的第二ECC來執(zhí)行。當對于數(shù)據(jù)組的錯誤校正成功時(步驟S928:是),從完成校正之后的該數(shù)據(jù)組中選擇作為讀取的對象的數(shù)據(jù)(步驟S929)。另一方面,當對于數(shù)據(jù)組的錯誤校正失敗時(步驟S928:否),讀取處理變成錯誤結(jié)束?!揪酆咸幚淼奶幚磉^程】直到現(xiàn)在給出的描述示出了寫入和讀取可以在不用每次通過部分地更新由于附加而導(dǎo)致的數(shù)據(jù)來重計算第二ECC的情況下實現(xiàn)。然而,如果重復(fù)地執(zhí)行數(shù)據(jù)的部分更新,則附加的數(shù)據(jù)、用于計算第二ECC而留下的數(shù)據(jù)以及用于管理的信息被累積。結(jié)果,存儲容量不必要地被消耗。為了抑制這個,需要執(zhí)行聚合處理,以使得舊的數(shù)據(jù)在某個定時處被丟棄,第二ECC被重計算,并且管理信息被更新。關(guān)于聚合處理開始被執(zhí)行的定時,考慮以下各種種類的定時。首先,考慮主機計算機100發(fā)出添加第二ECC的明確指令的時間。這種情況根據(jù)從主機計算機100發(fā)出的控制命令來實現(xiàn)。此外,考慮所附加的數(shù)據(jù)的個數(shù)的總和達到預(yù)定大小時的時間。在這里,預(yù)定大小或者可以是存儲器系統(tǒng)401中的固定大小,或者可以是來自主機計算機100的被指定為參數(shù)的大小。此外,可以根據(jù)被使用的存儲器的總使用量(包括其它因素)來動態(tài)地改變該預(yù)定大小。至于所關(guān)心的另一個定時,考慮完成附加之后經(jīng)過給定時間時的時間。給定時間可以被外圍電路550的內(nèi)置定時器等等檢測到。此外,可以在讀取期間基于第一ECC的校正變得不可能并且因此需要基于第二ECC執(zhí)行校正時執(zhí)行聚合處理。如上文所述,考慮在各種定時處執(zhí)行聚合處理。圖32是說明在根據(jù)本公開的第二實施例的信息處理系統(tǒng)中的聚合處理的處理過程的流程圖。當聚合處理在如上文中所描述的定時處開始時,控制部511檢索正通過參照地址映射部521的地址映射表在其中執(zhí)行附加的區(qū)域(步驟S931)。當在地址管理部521中舊的物理地址表示有效值時,這表示附加正在被執(zhí)行。此外,能夠識別包括被檢索的區(qū)域的、變成第二ECC的對象的數(shù)據(jù)組(例如,上文中所描述的4N個字節(jié)數(shù)據(jù))及其第二ECC的存儲位置。此外,在由此識別的數(shù)據(jù)組之中,未對其執(zhí)行附加的單位數(shù)據(jù)被從正常存取區(qū)域610讀出,而所附加的單位數(shù)據(jù)被從附加區(qū)域620讀出(步驟S932)。此時,在相對于單位數(shù)據(jù)執(zhí)行基于第一ECC的對于數(shù)據(jù)的錯誤檢測,并且未檢測到錯誤或者即使在檢測到錯誤時基于第一ECC的錯誤校正成功的情況下(步驟S933:是),操作進行到下一個步驟S941的處理。另一方面,當錯誤校正失敗時(步驟S933:否),嘗試基于第二ECC的錯誤校正。此時,當?shù)刂忿D(zhuǎn)換信息的第二ECC標志表示“假”時(步驟S934:否),因為不能夠執(zhí)行基于第二ECC的錯誤校正,所以聚合處理變成錯誤結(jié)束。此外,即使在第二ECC標志表示“真”的情況下(步驟S934:是),當?shù)刂忿D(zhuǎn)換信息的物理地址對應(yīng)于附加區(qū)域620時(步驟S935:是),因為不能夠利用第二ECC,所以聚合處理變成錯誤結(jié)束。在錯誤結(jié)束期間,主機計算機100被通知聚合處理錯誤的產(chǎn)生,從而停止聚合處理。當利用第二ECC時,變成第二ECC的對象的數(shù)據(jù)組(例如,上文中所描述的4N個字節(jié)數(shù)據(jù))和第二ECC的存儲區(qū)域從地址轉(zhuǎn)換信息的舊物理地址被識別(步驟S936)。結(jié)果,變成第二ECC的對象的數(shù)據(jù)組從正常存取區(qū)域610被讀出,而對應(yīng)的第二ECC從第二ECC存儲區(qū)域630被讀出(步驟S937)。然后,對于數(shù)據(jù)組的錯誤校正基于由此讀出的第二ECC來執(zhí)行。當對于數(shù)據(jù)組的錯誤校正成功時(步驟S938:是),操作進行到下一個步驟S941的處理。另一方面,當對于數(shù)據(jù)組的錯誤校正失敗時(步驟S938:否),聚合處理變成錯誤結(jié)束。當基于第一ECC或第二ECC的錯誤校正成功時(步驟S933或S938:是),正常存取區(qū)域610的舊的數(shù)據(jù)區(qū)域被利用附加區(qū)域620中的附加的數(shù)據(jù)來覆寫(步驟S941)。此外,附加區(qū)域620中的附加數(shù)據(jù)被擦除或者被無效,從而釋放附加區(qū)域620的使用過的區(qū)域。此外,第二ECC基于變成正常存取區(qū)域610中存儲的新的第二ECC的對象的數(shù)據(jù)組被重計算并且然后被覆寫到第二ECC存儲區(qū)域630(步驟S942)。此外,與這個處理一道,地址管理部521的地址映射表的內(nèi)容被更新(步驟S943)。如上文所述,根據(jù)本公開的第二實施例,當存儲在正常存取區(qū)域610中的并且變成第二ECC的對象的數(shù)據(jù)的一部分中產(chǎn)生更新時,可以對附加區(qū)域620執(zhí)行附加,同時第二ECC被維持在第二ECC存儲區(qū)域630的固定位置中。結(jié)果,對于第二ECC的重計算可以成為不必要的,并且可以基于更新之前的數(shù)據(jù)來執(zhí)行錯誤校正。此外,盡管相對于附加區(qū)域620中的附加數(shù)據(jù)僅使用了第一ECC,但是因為附加區(qū)域620中的附加數(shù)據(jù)是相對新地寫入的數(shù)據(jù),所以預(yù)期需要第二ECC的情況是極少的。<4.第三實施例>【信息處理系統(tǒng)的配置】圖33是示出在根據(jù)本公開的第三實施例的信息處理系統(tǒng)中的存儲器600的配置的方框圖。盡管在第二實施例中假定了變成第二ECC的對象的數(shù)據(jù)組與第二ECC的存儲位置示出了固定的關(guān)系,但是在第三實施例中假定了數(shù)據(jù)組與存儲位置之間的關(guān)系可以被適當?shù)卦O(shè)置。注意的是,假定本存儲器系統(tǒng)的配置與參照圖25和圖26所描述的第二實施例中的配置相同。同樣地,在這種情況下,通過將數(shù)據(jù)311的第一ECC添加到數(shù)據(jù)311而獲得的數(shù)據(jù)被視為單位數(shù)據(jù)。正常存取區(qū)域610中的單位數(shù)據(jù)的物理地址和第二ECC存儲區(qū)域630中的第二ECC的物理地址兩者都通過地址映射表522和第二ECC管理表523來管理。地址映射表522和第二ECC管理表523兩者都被存儲在地址管理部521中。地址映射表522是用于管理邏輯地址與物理地址之間的對應(yīng)關(guān)系的表。在這種情況下,地址映射表522在其中保存了與邏輯地址相對應(yīng)的第二ECC管理表523的索引。第二ECC管理表523是用于管理第二ECC的表。在這種情況下,第二ECC管理表523以每個條目在其中保存了第二ECC的物理地址和與所關(guān)心的第二ECC相對應(yīng)的單位數(shù)據(jù)的物理地址。此外,索引(第二ECC索引)被分別給予各條目?!镜刂酚成浔淼慕Y(jié)構(gòu)】圖34是示出了在根據(jù)本公開的第三實施例的信息處理系統(tǒng)中的存儲器600的地址映射表522的結(jié)構(gòu)的圖。地址映射表522在其中保存了邏輯地址、物理地址、數(shù)據(jù)標志、第二ECC標志以及第二ECC索引,使得邏輯地址、物理地址、數(shù)據(jù)標志、第二ECC標志以及第二ECC索引彼此相關(guān)聯(lián)。邏輯地址是在主機計算機100中指定的存儲器600中的地址。物理地址是存儲器600中的物理地址。注意的是在這種情況下,邏輯地址和物理地址中的每一個都通過用于描述以“0x”開始的十六進制數(shù)的方法來表示。數(shù)據(jù)標志是表示數(shù)據(jù)和第一ECC兩者是否都被存儲在對應(yīng)的物理地址中的標志。當數(shù)據(jù)標志表示“真”時,數(shù)據(jù)標志表示數(shù)據(jù)和第一ECC兩者都被寫入到對應(yīng)的物理地址。另一方面,當數(shù)據(jù)標志表示“假”時,數(shù)據(jù)標志表示數(shù)據(jù)和第一ECC未被寫入到對應(yīng)的物理地址。從數(shù)據(jù)標志表示“假”的物理地址讀出的數(shù)據(jù)變成存儲器中的初始值。注意的是在NAND閃速存儲器的情況下,在存儲器的初始值中所有的比特變成“1”。第二ECC標志是表示第二ECC是否被給予在對應(yīng)的物理地址中存儲的數(shù)據(jù)的標志。當?shù)诙﨓CC標志表示“真”時,第二ECC標志表示第二ECC被給予在對應(yīng)的物理地址中存儲的數(shù)據(jù)以便加強數(shù)據(jù)保持特性。另一方面,當?shù)诙﨓CC標志表示“假”時,第二ECC標志表示無第二ECC被給予在對應(yīng)的物理地址中存儲的數(shù)據(jù)。第二ECC索引在第二ECC標志表示“真”時是有效值,并且分別被給予第二管理表342的各條目的第二ECC索引被保存。在圖34中所示出的情況下,“zi”被保存為地址映射表341的條目710、711、712以及713的每個中的第二ECC索引?!镜诙﨓CC管理表的結(jié)構(gòu)】圖35是示出了在根據(jù)本公開的第三實施例的信息處理系統(tǒng)中的存儲器600的地址映射表523的結(jié)構(gòu)的圖。在第二ECC管理表342中,第二ECC索引、數(shù)據(jù)的數(shù)目、第二ECC物理地址以及第0個至第三個數(shù)據(jù)的物理地址被保存在每個條目中。第二ECC索引用來保存用于識別第二ECC管理表523的條目的索引。第二ECC索引的值被保存在地址映射表522的對應(yīng)條目中,從而地址映射表522和第二ECC管理表523彼此相關(guān)聯(lián)。數(shù)據(jù)的數(shù)目表示在對應(yīng)條目中包含的數(shù)據(jù)的數(shù)目。第二ECC物理地址用于在其中保存物理地址,在該物理地址中存儲了對應(yīng)條目中包含的數(shù)據(jù)的第二ECC。第0個至第三個數(shù)據(jù)的物理地址被用來順次在其中保存對應(yīng)條目中包含的數(shù)據(jù)的物理地址。在第0個至第三個數(shù)據(jù)的物理地址之中,僅與上文中描述的數(shù)據(jù)的數(shù)目所表示的數(shù)目相對應(yīng)的(一個或多個)物理地址是有效的。在這種情況下,因為在第二ECC索引為“001”的條目中,數(shù)據(jù)的數(shù)目表示“2”,所以僅第0個和第一個數(shù)據(jù)的兩個物理地址是有效的。此外,因為在第二ECC索引為“000”的條目中,數(shù)據(jù)的數(shù)目表示“0”,所以第0個至第三個數(shù)據(jù)的物理地址全部都是無效的?!緦懭胩幚淼奶幚磉^程】圖36是說明了在根據(jù)本公開的第三實施例的信息處理系統(tǒng)中的寫入處理的處理過程的流程圖。當存儲器控制部500從主機計算機100接收到寫入命令時,存儲器控制部500開始寫入處理。寫入命令在其中包含了作為寫入的對象的邏輯地址。此外,寫入命令伴隨有寫入數(shù)據(jù)。錯誤校正處理部534對于寫入數(shù)據(jù)生成第一ECC(步驟S951)??刂撇?11基于寫入命令的邏輯地址通過參照地址管理部521的地址映射表522來獲取地址轉(zhuǎn)換信息(步驟S952)。地址轉(zhuǎn)換信息是由先前參照圖34所描述的邏輯地址、物理地址、數(shù)據(jù)標志、第二ECC標志以及第二ECC索引組成的信息。在這里,當?shù)诙﨓CC標志表示“假”(即,沒有給出第二ECC)時(步驟S953:否),寫入數(shù)據(jù)和第一ECC兩者都被寫入到正常存取區(qū)域610(步驟S954)。此時,如果正常存取區(qū)域610例如由像ReRAM、PCRAM或MRAM那樣的可以對其執(zhí)行覆寫的非易失性存儲器組成,則可以對更新之前的數(shù)據(jù)的區(qū)域執(zhí)行覆寫。另一方面,如果正常存取區(qū)域610例如由像NAND閃速存儲器那樣的不能夠執(zhí)行覆寫的類型的非易失性存儲器組成,則可以對附加區(qū)域620執(zhí)行附加。當可以對附加區(qū)域620執(zhí)行附加時。當執(zhí)行附加時,附加的目的地的物理地址被登記在地址映射表522中,從而更新了地址映射表522的內(nèi)容(步驟S959)。因為第二ECC標志表示“真”(即,給出了第二ECC)時(步驟S953:是),所以新的數(shù)據(jù)與其第一ECC一道被寫入到存儲器600(步驟S957)。在這種情況下,第三實施例中的存儲器600的新的操作與上文中所描述的不同之處在于,同樣地,對于可以對其執(zhí)行覆寫的非易失性存儲器,對另一空區(qū)域執(zhí)行附加的寫入。對于像NAND閃速存儲器那樣的不能夠執(zhí)行覆寫的類型的非易失性存儲器,同樣地,對數(shù)據(jù)被預(yù)先擦除了的空區(qū)域執(zhí)行附加。其原因是因為基于第二ECC對被給予了第二ECC標志的區(qū)域執(zhí)行校正,并且因此需要完成更新之前的數(shù)據(jù)。為此,完成更新之前的舊數(shù)據(jù)及其第一ECC和第二ECC全部被保持而不用執(zhí)行擦除、覆寫等等。此外,如有需要,地址映射表522中的物理地址被更新為數(shù)據(jù)新近被附加到的物理地址。此外,與此同時,用于新近寫入的數(shù)據(jù)的第二ECC被設(shè)置為“假”(步驟S958)。其原因是因為第二ECC不適用于附加的數(shù)據(jù)。然而,第二ECC索引被按原樣留下而不被刪除。地址映射表522被維持為使得經(jīng)常保存最新的物理地址(步驟S959)。結(jié)果,與稍后將描述的第二管理表523的矛盾可以從第二ECC標志表示“假”并且第二ECC索引存在的兩個信息中被檢測到。在直到現(xiàn)在給出的描述中,沒有特殊項適用于第二ECC管理表523。因此,在當在第二ECC適用于的、在正常存取區(qū)域610中未被更新的剩余數(shù)據(jù)被讀出時基于第一ECC的錯誤校正失敗的情況下,可以基于第二ECC管理表523中的信息來執(zhí)行錯誤校正。即使當變化被添加到第二ECC適用于的數(shù)據(jù)時,由于變化的添加,也不需要重計算第二ECC。第二ECC不被給予后來被改變并被附加的數(shù)據(jù)。然而,所關(guān)心的數(shù)據(jù)是與未被更新的剩余數(shù)據(jù)相比已相對新近地被寫入的數(shù)據(jù),并且因此預(yù)期即使僅利用第一ECC也可以充分地確??煽啃?。注意的是,例如,當?shù)诙﨓CC適用于的數(shù)據(jù)被存儲在NAND閃速存儲器中時,如果附加的數(shù)據(jù)被存儲在更高速度的ReRAM中,則能夠?qū)崿F(xiàn)對聚合處理的加速?!咀x取處理的處理過程】圖37是說明了在根據(jù)本公開的第二實施例的信息處理系統(tǒng)中的讀取處理的處理過程的流程圖。當存儲器控制部500從主機計算機100接收到讀取命令時,存儲器控制部500開始讀取處理。讀取命令在其中包含了每個變成讀取的對象的邏輯地址??刂撇?11基于寫入命令的(一個或多個)邏輯地址通過參照地址映射表341來獲取地址轉(zhuǎn)換信息(步驟S961)。地址轉(zhuǎn)換信息是由先前參照圖34描述的邏輯地址、物理地址、數(shù)據(jù)標志、第二ECC標志以及第二ECC索引組成的信息。此外,控制部511基于地址轉(zhuǎn)換信息的物理地址從存儲器600讀出寫入數(shù)據(jù)(步驟S962)。作為讀取的對象的數(shù)據(jù)及其第一ECC兩者被包含在單位數(shù)據(jù)中。錯誤檢測和校正都基于所讀出的數(shù)據(jù)和第一ECC來執(zhí)行。在這種情況下,當未檢測到錯誤或者所檢測到的錯誤的校正成功時(步驟S963:是),這個讀取處理正常地結(jié)束。另一方面,當基于第二ECC的對檢測到的錯誤的校正失敗時(步驟S963:否),嘗試基于第二ECC的錯誤校正。此時,當?shù)刂忿D(zhuǎn)換信息的第二ECC標志表示“假”時(步驟S964:否),因為不能夠執(zhí)行基于第二ECC的錯誤校正,所以這個讀取處理變成錯誤結(jié)束。在錯誤結(jié)束期間,主機計算機100被通知讀取錯誤的產(chǎn)生,從而停止讀取處理。另一方面,當?shù)诙﨓CC標志表示“真”時(步驟S964:是),不改變由第二ECC索引所指定的第二ECC管理表523中的對應(yīng)條目。從未改變的條目中獲取管理信息(步驟S966)。這里描述的管理信息是數(shù)據(jù)的數(shù)目、第二ECC物理地址以及第0個至第三個數(shù)據(jù)的物理地址。從該管理信息識別變成第二ECC的對象的數(shù)據(jù)組(例如,上文中所描述的4N字節(jié)數(shù)據(jù))和第二ECC的存儲區(qū)域。結(jié)果,變成第二ECC的對象的數(shù)據(jù)組從正常存取區(qū)域610被讀出,而對應(yīng)的第二ECC從第二ECC存儲區(qū)域630被讀出(步驟S967)。基于由此讀出的第二ECC執(zhí)行錯誤校正。當錯誤校正成功時(步驟S968:是),從完成校正之后的該數(shù)據(jù)組選擇作為讀取的對象的數(shù)據(jù)(步驟S969)。另一方面,當錯誤校正失敗時(步驟S968:否),讀取處理變成錯誤結(jié)束?!揪酆咸幚淼奶幚磉^程】直到現(xiàn)在給出的描述示出了可以通過由于附加而部分地更新數(shù)據(jù)來實現(xiàn)寫入和讀取而不用逐個情況地重計算第二ECC。此外,不必向第二ECC管理表523添加任何特殊項,并且設(shè)計了如何使用,從而使高效安裝變得可能。然而,第三實施例和第二實施例的相同之處在于,當數(shù)據(jù)的部分更新被重復(fù)地執(zhí)行時,有必要執(zhí)行聚合處理。此外,第三實施例在開始聚合處理的定時方面和第二實施例相同。圖38是說明了在根據(jù)本公開的第三實施例的信息處理系統(tǒng)中的聚合處理的處理過程的流程圖。當聚合處理開始時,控制部511通過參照地址映射表522來檢索正在其中執(zhí)行附加的區(qū)域(步驟S971)。在地址映射表522中第二ECC標志表示“假”并且第二ECC索引存在的條目表示正在其中執(zhí)行附加的區(qū)域并且變成檢索的對象。此外,具有與被檢索條目所表示的第二ECC索引相同的第二ECC索引的條目的物理地址被收集,從而獲取變成第二ECC的對象的數(shù)據(jù)組(例如,上文中所描述的4N字節(jié)數(shù)據(jù))的物理地址列表?;谝赃@樣的方式獲得的變成第二ECC的對象的數(shù)據(jù)組的物理地址來讀出變成第二ECC的對象的數(shù)據(jù)組(步驟S972)。此時,在相對于單位數(shù)據(jù)執(zhí)行基于第一ECC的對于數(shù)據(jù)的錯誤檢測并且未檢測到錯誤或者即使在檢測到錯誤時基于第一ECC的錯誤校正成功(步驟S973:是)的情況下,操作進行到下一個步驟S981的處理。另一方面,當錯誤校正失敗時(步驟S973:否),嘗試基于第二ECC的錯誤校正。此時,當?shù)刂忿D(zhuǎn)換信息的第二ECC標志表示“假”時(步驟S974:否),因為不能夠執(zhí)行基于第二ECC的錯誤校正,所以聚合處理變成錯誤結(jié)束。在錯誤結(jié)束期間,主機計算機100被通知聚合處理錯誤的產(chǎn)生,從而停止聚合處理。此外,當?shù)诙﨓CC標志表示“真”時(步驟S974:是),獲取由所關(guān)心條目的第二ECC索引表示的第二ECC管理表523上的管理信息(步驟S976)。此外,基于該管理信息讀出變成第二ECC的對象的數(shù)據(jù)組以及與其相對應(yīng)的第二ECC兩者(步驟S977)。對于數(shù)據(jù)組的錯誤校正基于由此讀出的第二ECC來執(zhí)行。當對于數(shù)據(jù)組的錯誤校正成功時(步驟S978:是),操作進行到下一個步驟S981的處理。另一方面,當對于數(shù)據(jù)組的錯誤校正失敗時(步驟S978:否),聚合處理變成錯誤結(jié)束。當基于第一ECC或基于第二ECC的錯誤校正成功時(步驟S973或S978:是),則基于在步驟S971的處理中獲取到的物理地址列表來計算第二ECC(步驟S981)。由此計算出的第二ECC被存儲在由管理信息的第二物理地址表示的區(qū)域中。此外,在地址映射表522中,所附加數(shù)據(jù)的第二ECC標志被設(shè)置為“真”(步驟S982)。接下來,舊的數(shù)據(jù)被擦除,或者舊的數(shù)據(jù)的存儲器區(qū)域被釋放以便能夠被再利用(步驟S983)。作為將新生成的第二ECC管理表523中的物理地址和先前的第二ECC管理表523中的物理地址彼此相比較的結(jié)果,被證明在新生成的第二ECC管理表523中不存在的(一個或多個)物理地址變成該處理的對象。最后,在步驟S971的處理中獲取到的物理地址列表以及向其寫入新的第二ECC的物理地址被登記為新的條目,并且舊的條目被刪除(步驟S984)。此時,可以再利用舊的第二ECC索引。當給出新的第二ECC索引時,也需要更新地址映射表522的第二ECC索引。注意的是,當?shù)诙﨓CC適用于的數(shù)據(jù)被存儲在NAND閃速存儲器中時,如果所附加的部分被存儲在可以以比NAND閃速存儲器中更高的速度從其讀出/向其寫入數(shù)據(jù)的NVRAM中,則能夠?qū)崿F(xiàn)聚合處理的加速。如已經(jīng)描述的,根據(jù)本公開的第三實施例,當存儲在正常存取區(qū)域610中的變成第二ECC的對象的數(shù)據(jù)的一部分中發(fā)生更新時,可以對附加區(qū)域620執(zhí)行附加,同時第二ECC被維持在第二ECC存儲區(qū)域630的可變位置中。<5.第三實施例的修改變化>【作為第二ECC的對象的數(shù)據(jù)的緩存】當在數(shù)據(jù)的讀取期間,不能夠執(zhí)行基于第一ECC的錯誤校正并且因此必須基于第二ECC執(zhí)行錯誤校正時,從空間局部性或時間局部性的角度看,再次存取變成第二ECC的對象的數(shù)據(jù)的可能性是高的。于是,在完成基于第二ECC的錯誤校正的之后,將對象數(shù)據(jù)緩存在更高速度的內(nèi)置存儲器520或易失性存儲器603中是有效的。因此,高速存儲器存取可以被總體地實現(xiàn)。【預(yù)防性重寫】當在數(shù)據(jù)的讀出期間,不能夠執(zhí)行基于第一ECC的錯誤校正并且因此轉(zhuǎn)而必須基于第二ECC執(zhí)行錯誤校正時,認為顯示出了變成第二ECC的對象的數(shù)據(jù)的保持特性被降低的跡象。于是,當可以基于第二ECC執(zhí)行錯誤校正時,數(shù)據(jù)被預(yù)防性地重寫是有效的。在重寫期間,可以對同一存儲區(qū)域執(zhí)行覆寫,或者可以對任何其它適當?shù)目諈^(qū)域執(zhí)行重寫。注意的是,該技術(shù)基于與稱作讀回收(ReadReclaim)或讀刷新(ReadRefresh)相同的思維的方法。注意的是,上文中所描述的實施例僅示出了用于實現(xiàn)本公開的示例,并且實施例中的事項和在所附權(quán)利要求中規(guī)定本公開的事項具有對應(yīng)關(guān)系。此外,在所附權(quán)利要求中規(guī)定本公開的事項以及被添加了與所附權(quán)利要求中規(guī)定本公開的事項中相同的名稱的本公開的實施例中的事項具有對應(yīng)關(guān)系。然而,本公開絕不限于上文中所描述的實施例,并且可以在沒有背離本公開的主題的情況下通過在實施例中做出各種改變來實現(xiàn)。此外,在上述實施例中描述的系列處理過程可以被掌握為具有這些系列過程的方法,或者可以被掌握為使計算機根據(jù)其來執(zhí)行這些系列過程的程序,或者作為用于在其中記錄程序的記錄介質(zhì)。致密盤(CD)、迷你盤(MD)、數(shù)字萬能盤(DVD)、存儲卡、藍光盤(注冊商標)等等可以被用作這種記錄介質(zhì)。注意的是,本公開還可以采用以下構(gòu)成。(1)一種存儲控制器,包括:糾錯碼管理部,被配置成在以數(shù)據(jù)和該數(shù)據(jù)的第一糾錯碼作為單位數(shù)據(jù)而將多個單位數(shù)據(jù)存儲在存儲部中,并且將預(yù)定的多個單位數(shù)據(jù)的第二糾錯碼存儲在所述存儲部中以便對應(yīng)于多個單位數(shù)據(jù)中的所述預(yù)定的多個單位數(shù)據(jù)時,以每個條目來管理所述預(yù)定的多個單位數(shù)據(jù)與對應(yīng)于所述預(yù)定的多個單位數(shù)據(jù)的第二糾錯碼之間的對應(yīng)關(guān)系;地址管理部,被配置成管理邏輯地址與所述糾錯碼管理部中的條目之間的對應(yīng)關(guān)系;以及糾錯部,被配置成獲取所述糾錯碼管理部中的與作為從所述地址管理部進行讀取的對象的邏輯地址相對應(yīng)的條目,并且基于在所關(guān)心的所述條目中管理的所述預(yù)定的多個單位數(shù)據(jù)和所述第二糾錯碼來執(zhí)行糾錯。(2)如段落(1)所述的存儲控制器,其中,所述預(yù)定的多個單位數(shù)據(jù)被存儲在所述存儲部中的不連續(xù)的物理地址中。(3)如段落(1)或(2)所述的存儲控制器,其中,所述地址管理部管理表示與邏輯地址相對應(yīng)的所述第二糾錯碼是否被存儲的糾錯碼標志,并且所述糾錯部僅在所述糾錯碼標志表示所述第二糾錯碼被存儲的結(jié)果時執(zhí)行所述糾錯。(4)如段落(1)至(3)中任一項所述的存儲控制器,其中,所述糾錯碼管理部調(diào)控所述預(yù)定的多個單位數(shù)據(jù)的耦接順序;以及所述糾錯部根據(jù)所述耦接順序來耦接所述預(yù)定的多個單位數(shù)據(jù),從而執(zhí)行所述糾錯。(5)如段落(1)至(4)中任一項所述的存儲控制器,其中,所述糾錯碼管理部保持與所述預(yù)定的多個單位數(shù)據(jù)相對應(yīng)的所述第二糾錯碼在所述存儲部中的物理地址;以及所述糾錯部根據(jù)所述第二糾錯碼的所述物理地址從所述存儲部獲取所述第二糾錯碼。(6)如段落(5)所述的存儲控制器,其中,所述糾錯碼管理部進一步保持與所述預(yù)定的多個單位數(shù)據(jù)相對應(yīng)的所述第二糾錯碼在所述存儲部中的物理地址內(nèi)偏移;以及所述糾錯部根據(jù)所述第二糾錯碼的所述物理地址和所述物理地址內(nèi)偏移從所述存儲部獲取所述第二糾錯碼。(7)如段落(1)至(6)中任一項所述的存儲控制器,進一步包括:糾錯碼生成部,被配置成在接收到數(shù)據(jù)保持特性加強命令時針對在該數(shù)據(jù)保持特性加強命令所指定的邏輯地址的范圍內(nèi)存儲的數(shù)據(jù)來生成所述第二糾錯碼;以及條目管理部,被配置成在接收到所述數(shù)據(jù)保持特性加強命令時,針對所述數(shù)據(jù)保持特性加強命令所指定的邏輯地址的范圍內(nèi)存儲的數(shù)據(jù),在所述糾錯碼管理部中新確保在其中保持與對應(yīng)的所述第二糾錯碼的對應(yīng)關(guān)系的條目,并且將所述新確保的條目與所述指定的邏輯地址之間的對應(yīng)關(guān)系登記在所述地址管理部中。(8)如段落(7)所述的存儲控制器,其中,所述條目管理部在接收到所述數(shù)據(jù)保持特性加強解除命令時,釋放在所述糾錯碼管理部中針對在所述數(shù)據(jù)保持特性加強解除命令中指定的邏輯地址的范圍內(nèi)存儲的數(shù)據(jù),保持與對應(yīng)的所述第二糾錯碼的對應(yīng)關(guān)系的所述條目,并且刪除所述地址管理部中的所述釋放的條目與所述指定的邏輯地址之間的對應(yīng)關(guān)系。(9)如段落(7)所述的存儲控制器,其中,所述糾錯碼管理部對于每個條目保持與所述第二糾錯碼相對應(yīng)的單位數(shù)據(jù)的數(shù)目;以及所述條目管理部在新確保所述條目時以其中所述單位數(shù)據(jù)的數(shù)目表示零的條目為目標。(10)如段落(7)所述的存儲控制器,其中,所述糾錯碼管理部對于每個條目都保持了與所述第二糾錯碼相對應(yīng)的單位數(shù)據(jù)的數(shù)目;以及所述條目管理部在新確保所述條目時以其中所述單位數(shù)據(jù)的數(shù)目小于預(yù)定數(shù)目的條目為目標。(11)如段落(1)至(10)中任一項所述的存儲控制器,其中,所述地址管理部將針對所述邏輯地址進行最后存取的時間保持為最后存取時間,其中,所述存儲控制器進一步包括:糾錯碼生成部,被配置成在從所述最后存取時間起經(jīng)過預(yù)定的時間段時針對在所述邏輯地址中存儲的數(shù)據(jù)來生成所述第二糾錯碼;以及條目管理部,被配置成在從所述最后存取時間起經(jīng)過預(yù)定的時間段時,針對在所述邏輯地址中存儲的數(shù)據(jù),在所述糾錯碼管理部中新確保在其中保持與對應(yīng)的第二糾錯碼的對應(yīng)關(guān)系的條目,并且將新確保的條目與指定的邏輯地址之間的對應(yīng)關(guān)系登記在所述地址管理部中。(12)如段落(11)所述的存儲控制器,其中,所述條目管理部在所述第二糾錯碼從所述最后存取時間起經(jīng)過預(yù)定的時間段為止的期間被存儲時,釋放所述糾錯碼管理部中的針對在所述邏輯地址中存儲的數(shù)據(jù)保持了與對應(yīng)的所述第二糾錯碼的對應(yīng)關(guān)系的該條目,并且刪除所述地址管理部中的釋放的條目與指定的邏輯地址之間的對應(yīng)關(guān)系。(13)一種存儲設(shè)備,包括:單位數(shù)據(jù)存儲部,被配置成以數(shù)據(jù)和所述數(shù)據(jù)的第一糾錯碼作為單位數(shù)據(jù)而在其中存儲多個單位數(shù)據(jù);糾錯碼存儲部,被配置成在其中存儲預(yù)定的多個單位數(shù)據(jù)的第二糾錯碼以便對應(yīng)于所述多個單位數(shù)據(jù)中的所述預(yù)定的多個單位數(shù)據(jù);糾錯碼管理部,被配置成以每個條目來管理所述預(yù)定的多個單位數(shù)據(jù)與對應(yīng)于所述預(yù)定的多個單位數(shù)據(jù)的所述第二糾錯碼之間的對應(yīng)關(guān)系;地址管理部,被配置成管理邏輯地址與所述糾錯碼管理部中的條目之間的對應(yīng)關(guān)系;以及糾錯部,被配置成獲取所述糾錯碼管理部中的與作為從所述地址管理部進行讀取的對象的邏輯地址相對應(yīng)的條目,從而基于在所關(guān)心的所述條目中管理的所述預(yù)定的多個單位數(shù)據(jù)和所述第二糾錯碼來執(zhí)行糾錯。(14)如段落(13)所述的存儲設(shè)備,其中,所述單位數(shù)據(jù)存儲部和所述糾錯碼存儲部的每個是非易失性存儲器。(15)一種信息處理系統(tǒng),包括:單位數(shù)據(jù)存儲部,被配置成以數(shù)據(jù)和所述數(shù)據(jù)的第一糾錯碼作為單位而在其中存儲多個單位數(shù)據(jù);糾錯碼存儲部,被配置成在其中存儲預(yù)定的多個單位數(shù)據(jù)的第二糾錯碼以便對應(yīng)于所述多個單位數(shù)據(jù)中的所述預(yù)定的多個單位數(shù)據(jù);糾錯碼管理部,被配置成以每個條目來管理所述預(yù)定的多個單位數(shù)據(jù)與對應(yīng)于所述預(yù)定的多個單位數(shù)據(jù)的所述第二糾錯碼之間的對應(yīng)關(guān)系;地址管理部,被配置成管理邏輯地址與所述糾錯碼管理部中的條目之間的對應(yīng)關(guān)系;糾錯部,被配置成獲取所述糾錯碼管理部中的與作為從所述地址管理部進行讀取的對象的邏輯地址相對應(yīng)的條目,從而基于在所關(guān)心的所述條目中管理的所述預(yù)定的多個單位數(shù)據(jù)和所述第二糾錯碼來執(zhí)行糾錯;以及主機計算機,被配置成發(fā)出請求以請求訪問所述單位數(shù)據(jù)存儲部。(16)一種在存儲設(shè)備中使用的存儲控制方法,所述存儲設(shè)備包括:單位數(shù)據(jù)存儲部,以數(shù)據(jù)和所述數(shù)據(jù)的第一糾錯碼作為單位在其中存儲多個單位數(shù)據(jù);糾錯碼存儲部,在其中存儲所述預(yù)定的多個單位數(shù)據(jù)的第二糾錯碼以便對應(yīng)于所述多個單位數(shù)據(jù)中的所述預(yù)定的多個單位數(shù)據(jù);糾錯碼管理部,以每個條目來管理所述預(yù)定的多個單位數(shù)據(jù)與對應(yīng)于所述預(yù)定的多個單位數(shù)據(jù)的所述第二糾錯碼之間的對應(yīng)關(guān)系;以及地址管理部,管理邏輯地址與所述糾錯碼管理部中的條目之間的對應(yīng)關(guān)系,所述存儲控制方法包括:獲取所述糾錯碼管理部中的與作為從所述地址管理部進行讀取的對象的邏輯地址相對應(yīng)的條目;并且基于在所獲取的條目中管理的所述預(yù)定的多個單位數(shù)據(jù)和所述第二糾錯碼來執(zhí)行糾錯。(17)一種存儲控制器,包括:地址管理部,被配置成在多個數(shù)據(jù)和與所述多個數(shù)據(jù)相對應(yīng)的糾錯碼被存儲在存儲器的第一存儲區(qū)域,與每預(yù)定數(shù)目的所述多個數(shù)據(jù)對應(yīng)地將所述糾錯碼存儲在所述存儲器的第二存儲區(qū)域,并且將針對所述多個數(shù)據(jù)的任一個的附加數(shù)據(jù)和針對所述附加數(shù)據(jù)的糾錯碼存儲在所述存儲器的第三存儲區(qū)域時,針對所述多個數(shù)據(jù)來管理邏輯地址與所述存儲器的所述第一存儲區(qū)域或所述第三存儲區(qū)域中的物理地址之間的對應(yīng)關(guān)系;控制部,被配置成在與和寫入請求相關(guān)的邏輯地址相對應(yīng)的物理地址對應(yīng)于所述第一存儲區(qū)域時,將所述寫入請求相關(guān)的數(shù)據(jù)作為所述附加數(shù)據(jù)來將所述附加數(shù)據(jù)和針對所述附加數(shù)據(jù)的糾錯碼附加到所述第三存儲區(qū)域而不用對所述第一存儲區(qū)域和所述第二存儲區(qū)域執(zhí)行重寫,并且將所述第三存儲區(qū)域中的附加了所述附加數(shù)據(jù)和針對所述附加數(shù)據(jù)的糾錯碼的物理地址登記在所述地址管理部中;以及糾錯處理部,被配置成在與和讀取請求相關(guān)的所述邏輯地址相對應(yīng)的所述物理地址對應(yīng)于所述第三存儲區(qū)域時,利用所述第三存儲區(qū)域中的所述附加數(shù)據(jù)和針對所述附加數(shù)據(jù)的糾錯碼來執(zhí)行所述第三存儲區(qū)域中的所述附加數(shù)據(jù)中的糾錯,并且在與和所述讀取請求相關(guān)的所述邏輯地址相對應(yīng)的所述物理地址不對應(yīng)于所述第三存儲區(qū)域時,利用在其中包含了所述第一存儲區(qū)域中的數(shù)據(jù)的所述預(yù)定數(shù)目的所述多個數(shù)據(jù)和所述第二存儲區(qū)域中的所述糾錯碼來執(zhí)行所述第一存儲區(qū)域中的糾錯。(18)如段落(17)所述的存儲控制器,其中,所述控制部在預(yù)定定時,針對所述附加數(shù)據(jù)將所述附加數(shù)據(jù)覆寫到附加之前的所述第一存儲區(qū)域;以及所述糾錯處理部在預(yù)定定時根據(jù)在其中包含了被覆寫的數(shù)據(jù)的預(yù)定數(shù)目的所述多個數(shù)據(jù)來生成糾錯碼,并且將所述糾錯碼存儲在所述第二存儲區(qū)域中。(19)一種存儲設(shè)備,包括:存儲器,被配置成將多個數(shù)據(jù)和針對所述多個數(shù)據(jù)的糾錯碼存儲在第一存儲區(qū)域中,并且與每預(yù)定數(shù)目的所述多個數(shù)據(jù)對應(yīng)地將所述糾錯碼存儲在第二存儲區(qū)域中,以及將針對所述多個數(shù)據(jù)中的任何一個的附加數(shù)據(jù)和針對所述附加數(shù)據(jù)的糾錯碼存儲在第三存儲區(qū)域中;地址管理部,被配置成針對所述多個數(shù)據(jù)來管理邏輯地址與所述第一存儲區(qū)域或第三存儲區(qū)域中的物理地址之間的對應(yīng)關(guān)系;控制部,被配置成在與和寫入請求相關(guān)的邏輯地址相對應(yīng)的物理地址對應(yīng)于所述第一存儲區(qū)域時,將和所述寫入請求相關(guān)的數(shù)據(jù)作為所述附加數(shù)據(jù)來將所述附加數(shù)據(jù)和針對所述附加數(shù)據(jù)的糾錯碼附加到所述第三存儲區(qū)域而不用對所述第一存儲區(qū)域和所述第二存儲區(qū)域執(zhí)行重寫,并且將所述第三存儲區(qū)域中的附加了所述附加數(shù)據(jù)和針對所述附加數(shù)據(jù)的糾錯碼的物理地址登記在所述地址管理部中;以及糾錯處理部,被配置成在與和讀取請求相關(guān)的所述邏輯地址相對應(yīng)的所述物理地址對應(yīng)于所述第三存儲區(qū)域時,利用所述第三存儲區(qū)域中的所述附加數(shù)據(jù)和針對所述附加數(shù)據(jù)的糾錯碼來執(zhí)行所述第三存儲區(qū)域中的所述附加數(shù)據(jù)中的糾錯,并且在與和所述讀取請求相關(guān)的所述邏輯地址相對應(yīng)的所述物理地址不對應(yīng)于所述第三存儲區(qū)域時,利用在其中包含了所述第一存儲區(qū)域中的數(shù)據(jù)的所述預(yù)定數(shù)目的所述多個數(shù)據(jù)和所述第二存儲區(qū)域中的所述糾錯碼來執(zhí)行所述第一存儲區(qū)域中的糾錯。(20)如段落(19)所述的存儲設(shè)備,其中,所述存儲器將所述第一存儲區(qū)域存儲在閃速存儲器中,并且將所述第三存儲區(qū)域存儲在非易失性RAM中。(21)一種信息處理系統(tǒng),包括存儲器,被配置成將多個數(shù)據(jù)和針對所述多個數(shù)據(jù)的糾錯碼存儲在第一存儲區(qū)域中,并且與每預(yù)定數(shù)目的所述多個數(shù)據(jù)對應(yīng)地將所述糾錯碼存儲在第二存儲區(qū)域中,以及將針對所述多個數(shù)據(jù)中的任何一個的附加數(shù)據(jù)和針對所述附加數(shù)據(jù)的糾錯碼存儲在第三存儲區(qū)域中;地址管理部,被配置成針對所述多個數(shù)據(jù)來管理邏輯地址與所述第一存儲區(qū)域或第三存儲區(qū)域中的物理地址之間的對應(yīng)關(guān)系;控制部,被配置成在與和寫入請求相關(guān)的邏輯地址相對應(yīng)的物理地址對應(yīng)于所述第一存儲區(qū)域時,將和所述寫入請求相關(guān)的數(shù)據(jù)作為所述附加數(shù)據(jù)來將所述附加數(shù)據(jù)和針對所述附加數(shù)據(jù)的糾錯碼附加到所述第三存儲區(qū)域而不用對所述第一存儲區(qū)域和所述第二存儲區(qū)域執(zhí)行重寫,并且將所述第三存儲區(qū)域中的附加了所述附加數(shù)據(jù)和針對所述附加數(shù)據(jù)的糾錯碼的物理地址登記在所述地址管理部中;糾錯處理部,被配置成在與和讀取請求相關(guān)的所述邏輯地址相對應(yīng)的所述物理地址對應(yīng)于所述第三存儲區(qū)域時,利用所述第三存儲區(qū)域中的所述附加數(shù)據(jù)和針對所述附加數(shù)據(jù)的糾錯碼來執(zhí)行所述第三存儲區(qū)域中的所述附加數(shù)據(jù)中的糾錯,并且在與和所述讀取請求相關(guān)的所述邏輯地址相對應(yīng)的所述物理地址不對應(yīng)于所述第三存儲區(qū)域時,利用在其中包含了所述第一存儲區(qū)域中的數(shù)據(jù)的所述預(yù)定數(shù)目的所述多個數(shù)據(jù)和所述第二存儲區(qū)域中的所述糾錯碼來執(zhí)行所述第一存儲區(qū)域中的糾錯;以及主機計算機,被配置成向所述存儲器發(fā)出或所述讀取請求或所述寫入請求。(22)一種存儲控制方法,包括:在將多個數(shù)據(jù)和所述多個數(shù)據(jù)的糾錯碼存儲在存儲器的第一存儲區(qū)域中,與每預(yù)定數(shù)目的所述多個數(shù)據(jù)對應(yīng)地將糾錯碼存儲在存儲器的第二存儲區(qū)域中,并且將針對所述多個數(shù)據(jù)中的任何一個的附加數(shù)據(jù)和針對所述附加數(shù)據(jù)的糾錯碼存儲在第三存儲區(qū)域中的情況下,當與和寫入請求相關(guān)的邏輯地址相對應(yīng)的物理地址對應(yīng)于第一存儲區(qū)域時,以和寫入請求相關(guān)的數(shù)據(jù)作為附加數(shù)據(jù)來將附加數(shù)據(jù)和用于所述附加數(shù)據(jù)的糾錯碼附加到第三存儲區(qū)域,并且將所述附加數(shù)據(jù)和用于所述附加數(shù)據(jù)的所述糾錯碼被附加到的所述第三存儲區(qū)域中的物理地址登記在地址管理部中而不用對第一存儲區(qū)域和第二存儲區(qū)域執(zhí)行覆寫;以及在與和讀取請求相關(guān)的所述邏輯地址相對應(yīng)的所述物理地址對應(yīng)于所述第三存儲區(qū)域時,利用所述第三存儲區(qū)域中的所述附加數(shù)據(jù)和針對所述附加數(shù)據(jù)的糾錯碼來執(zhí)行所述第三存儲區(qū)域中的所述附加數(shù)據(jù)中的糾錯,并且在與和所述讀取請求相關(guān)的所述邏輯地址相對應(yīng)的所述物理地址不對應(yīng)于所述第三存儲區(qū)域時,利用在其中包含了所述第一存儲區(qū)域中的數(shù)據(jù)的所述預(yù)定數(shù)目的所述多個數(shù)據(jù)和所述第二存儲區(qū)域中的所述糾錯碼來執(zhí)行所述第一存儲區(qū)域中的糾錯。本申請包含與分別在2011年11月30日和2011年12月20日在日本專利局所提交的日本優(yōu)先權(quán)專利申請JP2011-261091和JP2011-277777中公開主題的相關(guān)的主題,其全部內(nèi)容通過引用合并于此。