專利名稱:非易失性存儲裝置及其控制方法
技術領域:
本發(fā)明涉及非易失性存儲裝置及其控制方法。
背景技術:
作為處理音樂數(shù)據(jù)和圖像數(shù)據(jù)的便攜設備的存儲裝置,一直采用具有數(shù)據(jù)可改寫,便攜性高且不需要儲備電池等的快速擦寫存儲器等非易失性存儲器的存儲裝置。
用圖4至圖10以4塊512兆位快速擦寫存儲芯片中具有256MB容量的情況為例,說明已有的非易失存儲裝置。
圖4是非易失性存儲裝置的組成圖。
圖4中,1是非易失性存儲裝置,8是數(shù)據(jù)輸入輸出裝置。非易失性存儲裝置1具有非易失性存儲媒體2(已有例和本發(fā)明實施例中為快速擦寫存儲器),控制部3。控制部3具有第1變換表(間接地變換表)4,數(shù)據(jù)有效性表(第4表)5,登錄表(第3表)6,輸入輸出控制部7。
非易失性存儲裝置1通過輸入輸出控制部7受理來自數(shù)據(jù)輸入輸出裝置8的寫入請求,讀出請求,擦除請求等各種請求。非易失性存儲裝置1進行對受理的各種請求的處理。請求寫入時,數(shù)據(jù)輸入輸出裝置8給非易失性存儲裝置1傳送寫入數(shù)據(jù)。請求讀出時,非易失性存儲裝置1給數(shù)據(jù)輸入輸出裝置8傳送讀出數(shù)據(jù)。控制部3根據(jù)輸入輸出控制部7中受理的請求,對非易失性存儲媒體2實施寫入,讀出,擦除??刂撇?還參照第1變換表4,數(shù)據(jù)有效性表5,登錄表6進行更新。
圖5是非易失性存儲裝置1的非易失性存儲媒體2的組成圖。
圖5中,1-1,1-2,……1-2048,2-1,……8-2048分別表示1個物理塊??焖俨翆懘鎯ζ鞯确且资源鎯γ襟w中,數(shù)據(jù)的擦除單位是物理塊。物理塊1-1,……1-2048合在一起稱為第1物理塊群。第2物理塊群至第8物理塊群也這樣。1個非易失性存儲媒體2(存儲元件)由分別具有2048(=211)個物理塊的8個物理塊群組成,共有16384(=214)個物理塊。
1個物理塊集用從8個塊群分別選1個的物理塊組成。例如圖5所示那樣,1-1,2-2,3-3,4-3,5-2,6-2048,7-1,8-3稱為第1物理塊集。
非易失性存儲媒體2寫入數(shù)據(jù)花費時間。因此,控制部3把輸入的8個數(shù)據(jù)合在一起,1次寫入物理塊集。同時在8個物理塊(1個物理塊集)寫入數(shù)據(jù),使數(shù)據(jù)位寬度為8倍,從而非易失性存儲裝置1的執(zhí)行寫入速度可為原來的8倍。然而,非易失性存儲裝置1不能對同一物理塊群的多個物理塊同時寫入。已公知在非易失性存儲的每個物理塊同時寫入數(shù)據(jù)的技術。例如,東芝股份公司制造的非易失性存儲器TC58512的數(shù)據(jù)資料記載多個物理塊同時寫入數(shù)據(jù)的多塊程序的說明。
圖6是非易失性存儲裝置中非易失性存儲媒體的第1物理塊集的組成圖。
圖6中,物理塊1-1由8個部分邏輯塊1-1A,1-1B,1-1C,……1-1H組成。1個邏輯塊用從物理塊集內所含全部物理塊依次各選擇1個的部分邏輯塊組成。例如圖6中所示,1-1A,2-2A,3-3A,4-3A,5-2A,6-2048A,7-1A,8-3A稱為第1邏輯塊。1個物理塊,1個邏輯塊等于32頁,1個部分邏輯塊等于4頁。
圖7是非易失性存儲裝置中非易失性存儲媒體的物理塊的冗余區(qū)詳圖。
部分邏輯塊除具有數(shù)據(jù)外,還有冗余區(qū)。第1物理塊群的各部分邏輯塊在冗余區(qū)具有數(shù)據(jù)有效性標記。第1物理塊群的若干個部分邏輯塊在冗余區(qū)具有鏈接表和第2變換表。
第2變換表對第1物理塊群所含8個部分邏輯塊將邏輯地址變換成物理地址(部分邏輯塊的物理地址)。鏈接表是構成邏輯塊的第2~第8物理塊群所含7個部分邏輯塊(除包含在第1物理塊群中且具有該鏈接表的部分邏輯塊外)的物理地址(部分邏輯塊的物理地址)的表。有效性標記表示邏輯塊中第2變換表的有效或無效。
第2變換表不僅位于第1物理塊群,而且也可位于第2~第8物理塊群。
各物理塊的始端部分邏輯塊具有能判斷包含該部分邏輯塊的物理塊是否擦除的第1數(shù)據(jù)。第1數(shù)據(jù)是例如8位的數(shù)據(jù),等于FFH,則該物理塊為已擦除,F(xiàn)FH以外的值則該物理塊未擦除。第1數(shù)據(jù)還可具有該判斷物理塊是否擦除以外的用途。
寫入以物理塊集為單位進行,擦除以物理塊為單位進行。能以部分邏輯為單位決定寫入的數(shù)據(jù)是否有效。
圖9是登錄表6的組成圖。
圖9中,0或1的數(shù)字表示按地址0,1,2……的順序排列的各物理塊的狀態(tài)。0表示已寫入,1表示已擦除,在初始化時制成登錄表。
圖10是數(shù)據(jù)有效性表5的組成圖。
圖10中,0或1的數(shù)字表示按地址0,1,2……的順序排列的第1物理塊群各自的部分邏輯塊寫入數(shù)據(jù)的有效性。0表示無效,1表示有效。與登錄表相同,也在初始化時制成數(shù)據(jù)有效性表。
圖8A,圖8B是已有非易失性存儲裝置初始化時第3表編制手段和第4表編制手段執(zhí)行的流程圖。圖8A與圖8B在圖8A的a與圖8B的a處連接。
圖8A,圖8B中,第3表編制手段在步驟801對登錄表的全部欄目設定初始值1(已擦除)。步驟802中,第4表編制手段對數(shù)據(jù)有效性表的全部欄目設定初始值0(無效)??刂撇?在步驟803對物理塊群內的物理塊號j設定初始值1。步驟804中,控制部3對物理塊內的部分邏輯塊號i設定初始值1。
步驟805中,控制部3讀出第1物理塊群中第j個物理塊的第1部分邏輯塊。步驟806中,控制部3從讀出的物理塊的始端頁的第1數(shù)據(jù)判斷是否已擦除的物理塊。已擦除的物理塊時,由于已經(jīng)在步驟801對登錄表設定初始值1(已擦除),而且步驟802中已對數(shù)據(jù)有效性表設定初始值0(無效),控制部3不進行任何操作,結束第j個物理塊的處理。已寫入的物理塊時,進至步驟807,并且第3表編制手段在登錄表1該物理塊的欄設定0。
步驟809中,控制部3判斷處在冗余區(qū)的有效性標記是否有效。該標記無效時,由于已經(jīng)在步驟802中對數(shù)據(jù)有效性表設定初始值0(無效),控制部3不進行任何操作,結束第i個部分邏輯塊的處理。有效性標記有效時,進至步驟810,并且第4表編制手段對數(shù)據(jù)有效性表中該部分邏輯塊的欄設定1(有效)。
步驟811中,控制部3使物理塊內的部分物理塊號i遞增1。步驟812中控制部3判斷是否物理塊內的最后部分邏輯塊,即是否i>8。不是最后部分邏輯塊時,即i≤8時,返回步驟808,并且控制部3讀出第1物理塊群中第j個物理塊的第i個部分邏輯塊,再次進行步驟809~812的處理。步驟812中,是最后部分邏輯塊時,即i>8時,控制部3結束第j個物理塊的處理,進至下1物理塊的處理。
步驟813中,控制部3使物理塊群內的物理塊號j遞增1。步驟814中,控制部3判斷是否物理塊群內的最后物理塊,即判斷是否j>2048。不是最后物理塊時,即j≤2048時,返回步驟804,并且控制部3進行下一物理塊的處理。是最后物理塊時,即j>2048時,控制部3結束第1物理塊群的處理。進至第2物理塊群的處理。
步驟815中,控制部3對物理塊群號K設定初始值2。步驟816中,控制部3對物理塊群內的物理塊號j設定初始值1。
步驟817中,控制部3讀出第K個物理塊群由第j個物理塊的第1個部分邏輯塊。步驟818中,控制部3從讀出的物理塊中始端頁的第1數(shù)據(jù)判斷是否已擦除的物理塊。已擦除的物理塊時,由于已經(jīng)在步驟801對登錄表設定初始值1(已擦除),控制部3不進行任何操作,結束第j個物理塊的處理。已寫入的物理塊時,進至步驟819,并且第3表編制手段對登錄表中該物理塊的欄設定0(已寫入)。
步驟820中,控制部3使物理塊群內的物理塊號j遞增1。步驟821中,控制部3判斷是否物理塊群內的最后物理塊,即是否j>2048。不是最后物理塊時,即j≤2048時,返回步驟817,并且控制部3進行下1物理塊的處理。是最后物理塊時,即j>2048時,控制部3結束第K個物理塊群的處理,進至下1物理塊群的處理。
步驟822中,控制部3使物理塊群號K遞增1。步驟823中,控制部3判斷是否最后的物理塊群,即是否K>8時。不是最后的物理塊群時,即K≤8時,返回步驟816,并且控制部3進行下1物理塊群處理。是最后的物理塊群時,結束本流程。
這樣,將非易失性存儲裝置插入主體,則非易失性存儲裝置1進行包含從主體指定的邏輯地址與非易失性存儲裝置的物理地址的地址變換表的地址管理表的編制。因此,編制地址管理表需要的時間(下文記為初始化時間)與非易失性存儲器的容量成比例地增加。
近年來,趨向于便攜設備中處理的信息量增大,為了適應此趨勢,非易失性存儲裝置的存儲容量也增大。
然而,該存儲容量的增大導致初始化時間增長。在初始化期間不能從外部對具有非易失性存儲器的非易失性存儲裝置進行數(shù)據(jù)存取。也就是說,便攜設備插入非易失性存儲裝置后,便攜設備識別非易失性存儲裝置所需的時間增長,即用戶不能操作便攜設備的時間增長,成為課題。
本發(fā)明解決上述已有的問題,其目的在于提供一種非易失性存儲裝置及其控制方法,利用縮短初始化時間,提高便攜設備的方便性。
發(fā)明內容
為了解決上述課題,本發(fā)明具有以下的結構。
本發(fā)明一個觀點的非易失性存儲裝置包括多個物理塊,編制從邏輯地址得到物理地址的第1變換表的第1表編制手段,編制從邏輯地址得到物理地址的第2變換表的第2表編制手段,以及編制示出各所述物理塊是否擦除的第3表的第3表編制手段;所述物理塊具有存放數(shù)據(jù)的數(shù)據(jù)區(qū)和表示該物理塊是否擦除的第1數(shù)據(jù),所述第1變換表的物理地址所指定的所述物理塊還具有所述第2變換表,所述第3表編制手段從所述物理塊讀出所述第1數(shù)據(jù)和所述第2變換表,根據(jù)所述第1數(shù)據(jù)決定該物理塊的所述第3表的值,將所述第2變換表所含物理地址對應的所述物理塊中所述第3表的值確定為未擦除的值,對包含在所述第2變換表且尚未讀出第1數(shù)據(jù)的所述物理塊不讀出所述第1數(shù)據(jù)。
本發(fā)明另一觀點的非易失性存儲裝置包括多個物理塊,劃分輸入數(shù)據(jù)且將其寫入劃分多個所述物理塊或所述物理塊后所得區(qū)域的寫入手段,產(chǎn)生作為分別寫入所劃分輸入數(shù)據(jù)的多個所述物理塊或所述區(qū)域的鏈接信息的鏈接表的鏈接表產(chǎn)生手段,以及編制表示各所述物理塊是否擦除的第3表的第3表編制手段;所述物理塊具有存放數(shù)據(jù)的數(shù)據(jù)區(qū)和表示該物理塊是否擦除的第1數(shù)據(jù),分別寫入所劃分輸入數(shù)據(jù)的多個所述物理塊或所述區(qū)域的至少1個所述物理塊或所述區(qū)域還具有所述鏈接表,所述第3表編制手段從所述物理塊或所述區(qū)域讀出所述第1數(shù)據(jù)和所述鏈接表,根據(jù)所述第1數(shù)據(jù)確定該物理塊的所述第3表的值,將所述鏈接表所含地址對應的所述物理塊中所述第3表的值確定為未擦除的值,對包含在所述鏈接表中且尚未讀出所述第1數(shù)據(jù)的所述物理塊不讀出所述第1數(shù)據(jù)。
本發(fā)明再一觀點的非易失性存儲裝置包括多個物理塊,編制從邏輯地址得到物理地址的第1變換表的第1表編制手段,編制從邏輯地址得到物理地址的第2變換表的第2表編制手段,以及編制表示各所述物理塊或劃分所述物理塊后所得區(qū)域是否寫入有效數(shù)據(jù)的第4表編制手段;所述物理塊或所述區(qū)域具有存放數(shù)據(jù)的數(shù)據(jù)區(qū),所述第1變換表中的物理地址指定的所述物理塊或所述區(qū)域還具有所述第2變換表和表示所述第2變換表是否有效的第2標記,所述第4表編制手段從所述物理塊或所述區(qū)域讀出所述第2標記和所述第2變換表,根據(jù)所述第2標記確定該物理塊或該區(qū)域中所述第4表的值,將所述第2變換表所含物理地址對應的所述物理塊或所述區(qū)域中所述第4表的值確定為寫入有效數(shù)據(jù)的值,對包含在所述第2對換表中且尚未讀出所述第2標記的所述物理塊或所述區(qū)域不讀出所述第2標記。
本發(fā)明又一觀點的上述非易失性存儲裝置,所述裝置具有多條總線線路和連接所述總線線路且含有多個所述物理塊的多個非易失性存儲元件,所述總線線路所連接非易失性存儲元件中寫入的所述第2變換表的數(shù)量與每一所述總線大致相同。
本發(fā)明又一觀點的上述非易失性存儲裝置,所述裝置具有多條總線線路和連接所述總線線路且含有多個所述物理塊的多個非易失性存儲元件,所述總線線路所連接非易失性存儲元件中寫入的所述鏈接表的數(shù)量與每一所述總線大致相同。
本發(fā)明又一觀點的非易失性存儲裝置控制方法,其非易失性存儲裝置包括多個物理塊,編制從邏輯地址得到物理地址的第1變換表的第1表編制手段,編制從邏輯地址得到物理地址的第2變換表的第2表編制手段,和編制示出各所述物理塊是否擦除的第3表的第3表編制手段,所述物理塊具有存放數(shù)據(jù)的數(shù)據(jù)區(qū)和表示該物理塊是否擦除的第1數(shù)據(jù),所述第1變換表的物理地址所指定的所述物理塊還具有所述第2變換表;所述方法包括所述第3表編制手段從所述物理塊讀出所述第1數(shù)據(jù)并且根據(jù)所述第1數(shù)據(jù)決定該物理塊中所述第3表的值的第1決定步驟,以及所述第3表編制手段從所述物理塊讀出所述第2變換表并且將所述第2變換表所含物理地址對應的所述物理塊中所述第3表的值定為未擦除的值的第2決定步驟;所述第3表編制手段對包含在所述第2變換表中且尚未讀出所述第1數(shù)據(jù)的所述物理塊不執(zhí)行所述第1決定步驟。
本發(fā)明又一觀點的非易失性存儲裝置控制方法,其非易失性存儲裝置包括多個物理塊,劃分輸入數(shù)據(jù)且將其寫入劃分多個所述物理塊或所述物理塊后所得區(qū)域的寫入手段,產(chǎn)生作為分別寫入所劃分輸入數(shù)據(jù)的多個所述物理塊或所述區(qū)域的鏈接信息的鏈接表的鏈接表產(chǎn)生手段,和編制表示各所述物理塊是否擦除的第3表的第3表編制手段,所述物理塊具有存放數(shù)據(jù)的數(shù)據(jù)區(qū)和表示該物理塊是否擦除的第1數(shù)據(jù),分別寫入所劃分輸入數(shù)據(jù)的多個所述物理塊或所述區(qū)域的至少1個所述物理塊或所述區(qū)域還具有所述鏈接表;所述方法包括所述第3表編制手段從所述物理塊或所述區(qū)域讀出所述第1數(shù)據(jù)并且根據(jù)所述第1數(shù)據(jù)決定該物理塊中所述第3表的值的第1決定步驟,以及所述第3表編制手段從所述物理塊或所述區(qū)域讀出所述鏈接表并且將所述鏈接表所含物理地址對應的所述物理塊中所述第3表的值定為未擦除的值的第2決定步驟;所述第3表編制手段對包含在所述鏈接表中且尚未讀出所述第1數(shù)據(jù)的所述物理塊不執(zhí)行所述第1決定步驟。
本發(fā)明又一觀點的非易失性存儲裝置控制方法,其非易失性存儲裝置包括多個物理塊,編制從邏輯地址得到物理地址的第1變換表的第1表編制手段,編制從邏輯地址得到物理地址的第2變換表的第2表編制手段,和編制表示各所述物理塊或劃分所述物理塊后所得區(qū)域是否寫入有效數(shù)據(jù)的第4表編制手段,所述物理塊或所述區(qū)域具有存放數(shù)據(jù)的數(shù)據(jù)區(qū),所述第1變換表中的物理地址指定的所述物理塊或所述區(qū)域還具有所述第2變換表和表示所述第2變換表是否有效的第2標記;所述方法具有所述第4表編制手段從所述物理塊或所述區(qū)域讀出所述第2標記并且所述物理塊或所述區(qū)域讀出所述第2標記并且根據(jù)所述第2標記決定該物理塊或該區(qū)域中所述第4表的值的第1決定步驟,以及所述第4編制手段從所述物理塊或所述區(qū)域讀出所述第2變換表并且將所述第2變換表所含物理地址對應的所述物理塊或所述區(qū)域中所述第4表的值定為寫入有效數(shù)據(jù)的值的第2決定步驟;所述第4表編制手段對包含在所述第2變換表中且尚未讀出所述第2標記的所述物理塊或所述區(qū)域不執(zhí)行所述第1決定步驟。
利用本發(fā)明,可在初始化時進行高速且高效的控制。
本發(fā)明的新穎特征僅限于所附權利要求書具體記載的。從以下結合附圖一起理解的詳細說明會連同其他目的和特征更好地理解并主人本發(fā)明有關結構和內容。
圖1A是本發(fā)明實施例1的非易失性存儲裝置在初始化時第3表編制手段和第4表編制手段執(zhí)行的流程圖1。
圖1B是本發(fā)明實施例1的非易失性存儲裝置在初始化時第3表編制手段和第4表編制手段執(zhí)行的流程圖2。
圖2A是本發(fā)明實施例1的非易失性存儲裝置在初始化時第3表編制手段和第4表編制手段執(zhí)行的流程圖1。
圖2B是本發(fā)明實施例1的非易失性存儲裝置在初始化時第3表編制手段和第4表編制手段執(zhí)行的流程圖2。
圖3是本發(fā)明實施例4是非易失性存儲裝置的組成圖。
圖4是非易失性存儲裝置的組成圖。
圖5是非易失性存儲裝置的非易失性存儲媒體的組成圖。
圖6是非易失性存儲裝置的非易失性存儲媒體中第1物理塊集的組成圖。
圖7是非易失性存儲裝置的非易失性存儲媒體的中物理塊冗余區(qū)的詳圖。
圖8A是已有非易失性存儲裝置在初始化時第3表編制手段和第4表編制手段執(zhí)行的流程圖1。
圖8B是已有非易失性存儲裝置在初始化時第3表編制手段和第4表編制手段執(zhí)行的流程圖2。
圖9是登錄表的組成圖。
圖10是數(shù)據(jù)有效性表的組成圖。
圖11是本發(fā)明實施例3的非易失性存儲裝置在初始化時第3表編制手段執(zhí)行的流程圖。
附圖的一部分或全部按圖示為目的的概要表現(xiàn)畫出,未必限于忠實描繪這里所示要求的實際相對大小和位置。
實施發(fā)明的最佳形態(tài)下面,參照
具體示出實施本發(fā)明用的最佳形態(tài)的實施例。
實施例1本發(fā)明的實施例1的非易失性存儲裝置具有圖示的結構。實施例1的非易失性存儲裝置的控制部3具有編制第1變換表4的第1表編制手段,在非易失性存儲媒體2的部分邏輯塊編制第2變換表的第2表編制手段,編制登錄表(第3表)6的第3表編制手段和編制數(shù)據(jù)有效性表(第4表)5的第4表編制手段(圖4中示出)。
圖1A,圖1B是本發(fā)明實施例1的非易失性存儲裝置在初始化時第3表編制手段和第4表編制手段執(zhí)行的流程圖。圖1A與圖1B在圖1A的a和圖1B的a,圖1A的b和圖1B的b,圖1A的c和圖1B的c,圖1A的d和圖1B的d等4處連接。
圖1A,圖1B中,第3表編制手段在步驟101對登錄表的全部欄目設定初始值1(已擦除)。步驟102中,第4表編制手段對數(shù)據(jù)有效性表的全部欄目設定初始值0(無效)。步驟103中,控制部3對物理塊群內的物理塊號j設定是初始值1。步驟104中,控制部3對物理塊內的部分邏輯塊號i設定初始值1。
步驟105中,控制部3讀出第1物理塊群中第j個物理塊的第1個部分邏輯塊。步驟106中,控制部3從讀出的物理塊的始端頁的第1數(shù)據(jù)判斷是否已擦除的物理塊。是已擦除的物理塊時,由于已經(jīng)在步驟101對登錄表設定初始值1(已擦除),而且已在步驟102對數(shù)據(jù)有效性表設定初始值0(無效),控制部不進行任何操作,結束第j個物理塊的處理。已寫入的物理塊的情況下,進至步驟107,并且第3表編制手段對登錄表中該物理塊的欄設定0(已寫入)。
步驟108中,控制部3判斷數(shù)據(jù)有效性表上是否已設定為1(有效)。設定為1(有效)時,控制部3結束第i個部分邏輯塊的處理。仍舊為初始值0(無效)時,進至步驟111,并且控制部3判斷冗余區(qū)存在的有效性標記是否有效。該標記無效時,由于已經(jīng)在步驟102對數(shù)據(jù)有效性表設定初始值0(無效),控制部3不進行任何操作,結束第i個部分邏輯塊的處理。有效性標記有效時,進至步驟112,并且第4表編制手段對數(shù)據(jù)有效性表中該部分邏輯塊的欄設定1(有效)。
步驟113中,控制部3判斷該部分邏輯塊是否具有第2變換表。不具有第2變換表時,控制部3結束第i個部分邏輯塊的處理。具有第2變換表時,進至步驟114,并且控制部3讀第2變換表。步驟115中,第4表編制手段對數(shù)據(jù)有效性表的第2變換表記載的部分邏輯塊欄設定1(有效)。
步驟116中,控制部3使物理塊內的部分物理塊號i遞增1。步驟117中,控制部3判斷是否物理塊內的最后部分邏輯塊,即是否i>8。不是最后邏輯塊時,即i≤8時,返回步驟109,并且控制部3判斷數(shù)據(jù)有效性表上是否已1(有效)。設定為1(有效)時,控制部3結束第i個部分邏輯塊的處理。仍舊為初始值0(無效)時,進至步驟110,并且控制部3讀出第1物理塊群中第j個物理塊的第i個部分邏輯塊,再次進行步驟111~117的處理。步驟117中,是最后部分邏輯塊時,即i>8時,控制部3結束第j個物理塊的處理后,進至下1物理塊的處理。
步驟118中,控制部3使物理塊群內的物理塊號j遞增1。步驟119中,控制部3判斷是否物理塊群內的最后物理塊,即是否j>2048。不是最后物理塊時,即j≤2048時,返回步驟104,并且控制部3進行下一物理塊的處理。是最后物理塊時,即j>2048時,控制部3結束第1物理塊群的處理,進至第2物理塊群的處理。
步驟120中,控制部3對物理塊群號K設定初始值2。步驟121中,控制部3對物理塊群內的物理塊號j設定初始值1。
步驟122中,控制部3讀出第K物理塊群中第j個物理塊的第1個部分邏輯塊。步驟123中,控制部3從讀出的物理塊中始端頁的第1數(shù)據(jù)判斷是否已擦除的物理塊。是已擦除的物理塊定,由于已經(jīng)在步驟101對登錄表設定初始值1(已擦除),控制部3不進行任何操作,結束第j個物理塊的處理。是已寫入的物理塊時,進至步驟124,第3表編制手段時登錄表中該物理塊的欄設定是0(已寫入)。
步驟125中,控制部3使物理塊群內的物理塊號j遞增1。步驟126中,控制部3判斷是否物理塊群內的最后物理塊,即是否j>2048。不是最后的物理塊時,即j≤2048時,返回步驟122,并且控制部3進行下1物理塊的處理。是最后物理塊時,即j>2048時,控制部3結束第K物理塊的處理,進至下1物理塊群的處理。
步驟127中,控制部3使物理塊群號K遞增1。步驟128中,控制部3判斷是否最后物理塊群,即是否K>8。不是最后物理塊群時,即K≤8時,返回步驟121,并且控制部3進行下1物理塊群的處理。是最后物理塊群時,即K>8時,結束此流程。
實施例1在步驟115中,第4表編制手段用第2變換表編制數(shù)據(jù)有效性表。步驟108,109中,控制部3對在步驟115編制的數(shù)據(jù)有效性表的部分邏輯塊判定不進行數(shù)據(jù)讀出。因而,減少在步驟110讀出的部分邏輯塊數(shù)量。由此,第4表編制手段縮短數(shù)據(jù)有效性表的編制時間。也就是說非易失性存儲裝置1能實現(xiàn)縮短初始化時間。
在步驟114和從第2~第8部分邏輯塊讀出第2變換表的步驟(圖1B中省略)中,讀第2變換表時,第1表編制手段使具有該第2變換表的部分邏輯塊的物理地址與邏輯具有對應關系地寫入第1變換表。
非易失性存儲裝置將新數(shù)據(jù)存入非易失性存儲媒體時,控制部人登錄表檢測已擦除的物理塊,在該塊寫入新數(shù)據(jù)。第2表編制手段在寫入新數(shù)據(jù)的部分邏輯塊的冗余區(qū)產(chǎn)生第2變換表,并且使新數(shù)據(jù)的邏輯地址與物理地址具有對應關系地寫入第2變換表。
非易失性存儲媒體實際擦除無效數(shù)據(jù)時,控制部從數(shù)據(jù)有效性表檢測出8個部分邏輯塊均無效的邏輯塊,并且實際擦除該物理塊。
實施例2本發(fā)明實施例2的非易失性存儲裝置具有與實施例1的非易失性存儲裝置相同的組成部分(圖4)。除以下各點外,實施例2的非易失性存儲裝置與實施例1的非易失性存儲裝置相同。
圖2A,圖2B是本發(fā)明實施例2的非易失性存儲裝置在初始化時第3表編制手段與第4表編制手段執(zhí)行的流程圖。圖2A與圖2B在圖2A的a和圖2B的a,圖2A的b和圖2B的b,圖2A的c和圖2B的c,圖2A的d和圖2B的d等4處連接。
圖2A,圖2B中,第3表編制手段在步驟201對登錄表的全部欄目設定初始值1(已擦除)。步驟202中,第4表編制手段對數(shù)據(jù)有效性表的全部欄目設定初始值0(無效)。步驟203中,控制部3對物理塊群內的物理塊號j設定是初始值1。步驟204中,控制部3對物理塊內的部分邏輯塊號i設定初始值1。
步驟205中,控制部3讀出第1物理塊群中第j個物理塊的第1個部分邏輯塊。步驟206中,控制部3從讀出的物理塊的始端頁的第1數(shù)據(jù)判斷是否已擦除的物理塊。是已擦除的物理塊時,由于已經(jīng)在步驟201對登錄表設定初始值1(已擦除),而且已在步驟202對數(shù)據(jù)有效性表設定初始值0(無效),控制部不進行任何操作,結束第j個物理塊的處理。已寫入的物理塊的情況下,進至步驟207,并且第3表編制手段對登錄表中該物理塊的欄設定0(已寫入)。
步驟208中,控制部3判斷該物理塊是否具有鏈接表。不具有鏈接表時,進至步驟212。具有鏈接表時,進至步驟209,并且控制部3讀鏈接表。步驟210中,第3表編制手段時登錄表中包含鏈接表所記載的部分邏輯塊的物理塊的欄目設定0(已寫入)。
步驟212中,控制部3判斷冗余區(qū)存在的有效性標記是否有效。該標記無效時,由于已經(jīng)在步驟202對數(shù)據(jù)有效性表設定初始值0(無效),控制部3不進行任何操作,結束第i個部分邏輯塊的處理。有效性標記有效時,進至步驟212,并且第4表編制手段對數(shù)據(jù)有效性表中該部分邏輯塊的欄設定1(有效)。
步驟214中,控制部3使物理塊內的部分物理塊號i遞增1。步驟215中,控制部3判斷是否物理塊內的最后部分邏輯塊,即是否i<8。不是最后部分邏輯塊時,即i≤8時,返回步驟211,并且控制部3讀出第1物理塊群中第j個物理塊的第i個部分邏輯塊,再次進行步驟212~215的處理。步驟215中是最后部分邏輯塊時,即i<8時,控制部3結束第i個物理塊的處理,進至下1個物理塊的處理。
步驟216中,控制部3使物理塊群內的物理塊號j遞增1。步驟217中,控制部3判斷是否物理塊群內的最后物理塊,即是否j>2048。不是最后物理塊時,即j≤2048時,返回步驟204,并且控制部3進行下一物理塊的處理。是最后物理塊時,即j>2048時,控制部3結束第1物理塊群的處理,進至第2物理塊群的處理。
步驟218中,控制部3對物理塊群號K設定初始值2。步驟219中,控制部3對物理塊群內的物理塊號j設定初始值1。
步驟220中,控制部3判斷登錄表上是否已設定為0(已寫入)。設定為0(已寫入)時,控制部3結束第j個物理塊的處理。仍舊為初始值1(已擦除)時,控制部3在步驟221讀出第K物理塊群中第j個物理塊的第1個部分邏輯塊。步驟222中控制部3從讀出的物理塊中始端頁的第1數(shù)據(jù)判斷是否已擦除的物理塊。是已擦除的物理塊時,由于已經(jīng)在步驟201時登錄表設定初始值1。控制部3不進行任何操作,結束第j個物理塊的處理。是已寫入的物理塊時,進至步驟223,并且第3表編制手段對登錄表的該物理塊欄設定是0(已寫入)。
步驟224中,控制部3使物理塊群內的物理塊號j遞增1。步驟225中,控制部3判斷是否物理塊群內的最后物理塊,即是否j>2048。不是最后的物理塊時,即j≤2048時,返回步驟220,并且控制部3進行下1物理塊的處理。是最后物理塊時,即j>2048時,控制部3結束第K物理塊的處理,進至下1物理塊群的處理。
步驟226中,控制部3使物理塊群號K遞增1。步驟227中,控制部3判斷是否最后物理塊群,即是否K>8。不是最后物理塊群時,即K≤8時,返回步驟219,并且控制部3進行下1物理塊群的處理。是最后物理塊群時,即K>8時,結束此流程。
再者,鏈接表也可處于第1~第8物理塊群中的任何塊群,并能取得同樣的效果。
實施例2在步驟210中,第3表編制手段用鏈接表編制登錄表。步驟220中,控制部3對在步驟210編制登錄表的部分邏輯塊判定不進行數(shù)據(jù)讀出。因而,減少步驟221中讀出的部分邏輯塊的數(shù)量。由此,第3表編制手段能縮短登錄表的編制時間。也就是與實施例一樣,非易失性存儲裝置1能實現(xiàn)縮短初始化時間。
實施例3本發(fā)明實施例3的非易失性存儲裝置具有與實施例1的非易失性存儲裝置相同的組成部分(圖4)。除以下各點外,實施例3的非易失性存儲裝置與實施例1的非易失性存儲裝置相同。
圖11,圖22是本發(fā)明實施例3的非易失性存儲裝置在初始化時第3表編制手段執(zhí)行的流程圖。
圖11中,第3表編制手段在步驟1101時登錄表的全部欄目設定初始值1(已擦除)。步驟1102中,控制部3對物理塊群號K設定初始值1。步驟1103中,控制部3對物理塊群內的物理塊號j設定初始值1。
步驟1104中,控制部3判斷登錄表3是否已設定為0(已寫入)。設定為0(已寫入)時,控制部3結束第i個物理塊的處理。仍舊為初始值1(已擦除)時,控制部3在步驟1105讀出第K物理塊群中第j個物理塊的第1個部分邏輯塊。步驟1106中,控制部3從讀出的物理塊中始端頁的第1數(shù)據(jù)判斷是否已擦除的物理塊。是已擦除的物理塊時,由于已經(jīng)在步驟1101對登錄表設定初始值1,控制部3不進行任何操作,結束第j個物理塊的處理。是已寫入的物理塊時,進至步驟1107,并且第3表編制手段對登錄表中該物理塊的欄設定0(已寫入)。
步驟1108中,控制部3判斷該部分邏輯塊是否具有第2變換表。不具有第2變換表時,控制部3結束第i個物理塊的處理。具有第2變換表時,進至步驟1109,并且控制部3讀第2變換表。步驟1110中,第3表編制手段對登錄表中包含第2變換表所記載部分邏輯塊的物理塊的欄設定0(已寫入)。
步驟1111中,控制部3使物理塊群內的物理塊號j遞增1。步驟1112中,控制部3判斷是否物理塊群內的最后物理塊,即是否j>2048。不是最后的物理塊時,即j≤2048時,返回步驟1104,并且控制部3進行下1物理塊的處理。是最后物理塊時,即j>2048時,控制部3結束第K物理塊的處理,進至下1物理塊群的處理。
步驟1113中,控制部3使物理塊群號K遞增1。步驟1114中,控制部3判斷是否最后物理塊群,即是否K>8。不是最后物理塊群時,即K≤8時,返回步驟1103,并且控制部3進行下1物理塊群的處理。是最后物理塊群時,即K>8時,結束此流程。
實施例3在步驟1110中,第3表編制手段用第2變換表編制登錄表。步驟1104中,控制部3對在步驟1105編制登錄表的部分邏輯塊判定不進行數(shù)據(jù)讀出。因而,減少步驟221中讀出的部分邏輯塊的數(shù)量。由此,第3表編制手段能縮短登錄表的編制時間。也就是與實施例一樣,非易失性存儲裝置1能實現(xiàn)縮短初始化時間。
實施例4圖3是本發(fā)明實施例4的非易失性存儲裝置的結構圖。
圖3中,非易失性存儲裝置31具有1個控制部32和多個快速擦寫存儲器(非易失性存儲媒體)33~36??刂撇?2連接2條總線線路37,38,各總線線路分別連接數(shù)量相同(各2個)的快速擦寫存儲器。各總線線路所連接快速擦寫存儲器具有的第2變換表的數(shù)量和鏈接表的數(shù)量盡可能相同。
接通電源時,控制部32讀入快速擦寫存儲器內各物理塊存儲的有效性標記,第1數(shù)據(jù),鏈接表,第2變換表,并且產(chǎn)生第1變換表4,登錄表6,數(shù)據(jù)有效性表5(初始化處理)。借助使各總線線路所連接快速擦寫存儲器具有的第2變換表和鏈接表的數(shù)量大致相同,能使非易失性存儲裝置1在初始化時通過各總線線路讀入的數(shù)據(jù)量大致相等(各總線線路的傳輸負載量能相等)。特定的總線線路的數(shù)據(jù)傳輸量增多時,該總線線路上的數(shù)據(jù)傳輸花時間,使初始化處理的總時間變長。實施例4那樣,使各總線線路上的數(shù)據(jù)傳輸量相等,則非易失性存儲裝置1能縮短初始化處理的總時間。
減少進行讀出所需的物理塊或部分邏輯塊的數(shù)量,縮短非易失性存儲裝置初始化時間,從而非易失性存儲裝置能在接通電源后的短時間內應答來自外部的請求。由此,可取得有利的效果,即裝有非易失性存儲裝置(例如SD卡等IC卡)的商品(例如便攜電話)能在接通電源后的短時間內發(fā)揮其功能。
對較佳形態(tài)以某種詳細程度說明了本發(fā)明,但該較佳形態(tài)現(xiàn)揭示的內容當然在結構的細節(jié)上應該變化,并且可不脫離本發(fā)明權利要求書范圍和本發(fā)明思想而實現(xiàn)各要素的組合和順序的變化。
工業(yè)上的實用性本發(fā)明的非易失性存儲裝置及其控制方法可用作例如便攜設備等種種設備能連接的非易失性存儲裝置及其控制方法。
權利要求
1.一種非易失性存儲裝置,其特征在于,包括多個物理塊,編制從邏輯地址得到物理地址的第1變換表的第1表編制手段,編制從邏輯地址得到物理地址的第2變換表的第2表編制手段,以及編制示出各所述物理塊是否擦除的第3表的第3表編制手段;所述物理塊具有存放數(shù)據(jù)的數(shù)據(jù)區(qū)和表示該物理塊是否擦除的第1數(shù)據(jù),所述第1變換表的物理地址所指定的所述物理塊還具有所述第2變換表,所述第3表編制手段從所述物理塊讀出所述第1數(shù)據(jù)和所述第2變換表,根據(jù)所述第1數(shù)據(jù)決定該物理塊的所述第3表的值,將所述第2變換表所含物理地址對應的所述物理塊中所述第3表的值確定為未擦除的值,對包含在所述第2變換表且尚未讀出第1數(shù)據(jù)的所述物理塊不讀出所述第1數(shù)據(jù)。
2.一種非易失性存儲裝置,其特征在于,包括多個物理塊,劃分輸入數(shù)據(jù)且將其寫入劃分多個所述物理塊或所述物理塊后所得區(qū)域的寫入手段,產(chǎn)生作為分別寫入所劃分輸入數(shù)據(jù)的多個所述物理塊或所述區(qū)域的鏈接信息的鏈接表的鏈接表產(chǎn)生手段,以及編制表示各所述物理塊是否擦除的第3表的第3表編制手段;所述物理塊具有存放數(shù)據(jù)的數(shù)據(jù)區(qū)和表示該物理塊是否擦除的第1數(shù)據(jù),分別寫入所劃分輸入數(shù)據(jù)的多個所述物理塊或所述區(qū)域的至少1個所述物理塊或所述區(qū)域還具有所述鏈接表,所述第3表編制手段從所述物理塊或所述區(qū)域讀出所述第1數(shù)據(jù)和所述鏈接表,根據(jù)所述第1數(shù)據(jù)確定該物理塊的所述第3表的值,將所述鏈接表所含地址對應的所述物理塊中所述第3表的值確定為未擦除的值,對包含在所述鏈接表中且尚未讀出所述第1數(shù)據(jù)的所述物理塊不讀出所述第1數(shù)據(jù)。
3.一種非易失性存儲裝置,其特征在于,包括多個物理塊,編制從邏輯地址得到物理地址的第1變換表的第1表編制手段,編制從邏輯地址得到物理地址的第2變換表的第2表編制手段,以及編制表示各所述物理塊或劃分所述物理塊后所得區(qū)域是否寫入有效數(shù)據(jù)的第4表編制手段;所述物理塊或所述區(qū)域具有存放數(shù)據(jù)的數(shù)據(jù)區(qū),所述第1變換表中的物理地址指定的所述物理塊或所述區(qū)域還具有所述第2變換表和表示所述第2變換表是否有效的第2標記,所述第4表編制手段從所述物理塊或所述區(qū)域讀出所述第2標記和所述第2變換表,根據(jù)所述第2標記確定該物理塊或該區(qū)域中所述第4表的值,將所述第2變換表所含物理地址對應的所述物理塊或所述區(qū)域中所述第4表的值確定為寫入有效數(shù)據(jù)的值,對包含在所述第2對換表中且尚未讀出所述第2標記的所述物理塊或所述區(qū)域不讀出所述第2標記。
4.如權利要求1或3所述的非易失性存儲裝置,其特征在于,所述裝置具有多條總線線路以及連接所述總線線路且含有多個所述物理塊的多個非易失性存儲元件,所述總線線路所連接非易失性存儲元件中寫入的所述第2變換表的數(shù)量與每一所述總線大致相同。
5.如權利要求2所述的非易失性存儲裝置,其特征在于,所述裝置具有多條總線線路和連接所述總線線路且含有多個所述物理塊的多個非易失性存儲元件,所述總線線路所連接非易失性存儲元件中寫入的所述鏈接表的數(shù)量與每一所述總線大致相同。
6.一種非易失性存儲裝置的控制方法,其特征在于,所述非易失性存儲裝置包括多個物理塊,編制從邏輯地址得到物理地址的第1變換表的第1表編制手段,編制從邏輯地址得到物理地址的第2變換表的第2表編制手段,以及編制示出各所述物理塊是否擦除的第3表的第3表編制手段,所述物理塊具有存放數(shù)據(jù)的數(shù)據(jù)區(qū)和表示該物理塊是否擦除的第1數(shù)據(jù),所述第1變換表的物理地址所指定的所述物理塊還具有所述第2變換表;所述方法包括所述第3表編制手段從所述物理塊讀出所述第1數(shù)據(jù)并且根據(jù)所述第1數(shù)據(jù)決定該物理塊中所述第3表的值的第1決定步驟,以及所述第3表編制手段從所述物理塊讀出所述第2變換表并且將所述第2變換表所含物理地址對應的所述物理塊中所述第3表的值定為未擦除的值的第2決定步驟;所述第3表編制手段對包含在所述第2變換表中且尚未讀出所述第1數(shù)據(jù)的所述物理塊不執(zhí)行所述第1決定步驟。
7.一種非易失性存儲裝置的控制方法,其特征在于,所述非易失性存儲裝置包括多個物理塊,劃分輸入數(shù)據(jù)且將其寫入劃分多個所述物理塊或所述物理塊后所得區(qū)域的寫入手段,產(chǎn)生作為分別寫入所劃分輸入數(shù)據(jù)的多個所述物理塊或所述區(qū)域的鏈接信息的鏈接表的鏈接表產(chǎn)生手段,和編制表示各所述物理塊是否擦除的第3表的第3表編制手段,所述物理塊具有存放數(shù)據(jù)的數(shù)據(jù)區(qū)和表示該物理塊是否擦除的第1數(shù)據(jù),分別寫入所劃分輸入數(shù)據(jù)的多個所述物理塊或所述區(qū)域的至少1個所述物理塊或所述區(qū)域還具有所述鏈接表;所述方法包括所述第3表編制手段從所述物理塊或所述區(qū)域讀出所述第1數(shù)據(jù)并且根據(jù)所述第1數(shù)據(jù)決定該物理塊中所述第3表的值的第1決定步驟,以及所述第3表編制手段從所述物理塊或所述區(qū)域讀出所述鏈接表并且將所述鏈接表所含物理地址對應的所述物理塊中所述第3表的值定為未擦除的值的第2決定步驟,所述第3表編制手段對包含在所述鏈接表中且尚未讀出所述第1數(shù)據(jù)的所述物理塊不執(zhí)行所述第1決定步驟。
8.一種非易失性存儲裝置的控制方法,其特征在于,所述非易失性存儲裝置包括多個物理塊,編制從邏輯地址得到物理地址的第1變換表的第1表編制手段,編制從邏輯地址得到物理地址的第2變換表的第2表編制手段,以及編制表示各所述物理塊或劃分所述物理塊后所得區(qū)域是否寫入有效數(shù)據(jù)的第4表編制手段,所述物理塊或所述區(qū)域具有存放數(shù)據(jù)的數(shù)據(jù)區(qū),所述第1變換表中的物理地址指定的所述物理塊或所述區(qū)域還具有所述第2變換表和表示所述第2變換表是否有效的第2標記;所述方法包括所述第4表編制手段從所述物理塊或所述區(qū)域讀出所述第2標記并且所述物理塊或所述區(qū)域讀出所述第2標記并且根據(jù)所述第2標記決定該物理塊或該區(qū)域中所述第4表的值的第1決定步驟,以及所述第4編制手段從所述物理塊或所述區(qū)域讀出所述第2變換表并且將所述第2變換表所含物理地址對應的所述物理塊或所述區(qū)域中所述第4表的值定為寫入有效數(shù)據(jù)的值的第2決定步驟;所述第4表編制手段對包含在所述第2變換表中且尚未讀出所述第2標記的所述物理塊或所述區(qū)域不執(zhí)行所述第1決定步驟。
全文摘要
提供利用縮短初始化時間改善便攜設備方便性的非易失性存儲裝置及其控制方法。初始化時的數(shù)據(jù)有效性表編制中,首先控制部讀出有效性標記和第2變換表。該標記有效時,第2變換表上的邏輯塊也有效。因此,第4表編制手段可在數(shù)據(jù)有效性表將第2變換表上的全部邏輯塊設定為有效。第4表編制手段利用這樣進行1次讀出能設定多個邏輯塊。而且對已經(jīng)在數(shù)據(jù)有效性設定為有效的部分邏輯塊可省略數(shù)據(jù)有效性標記的讀出,進至下1部分邏輯塊的處理。
文檔編號G06F12/00GK1473296SQ02802772
公開日2004年2月4日 申請日期2002年8月16日 優(yōu)先權日2001年8月24日
發(fā)明者本多利行, 笠原哲志, 外山昌之, 明石輝夫, 坂井敬介, 之, 介, 夫, 志 申請人:松下電器產(chǎn)業(yè)株式會社