成人打一炮免费视频,亚洲天堂视频在线观看,97视频久久久,日本japanese护士色高清,五月婷婷丁香,日韩精品一级无码毛片免费,国产欧美日韩精品网红剧情演绎

數(shù)據(jù)儲存裝置及其數(shù)據(jù)維護方法

文檔序號:10577260閱讀:516來源:國知局
數(shù)據(jù)儲存裝置及其數(shù)據(jù)維護方法
【專利摘要】本發(fā)明提供一種數(shù)據(jù)儲存裝置及其數(shù)據(jù)維護方法,該裝置包括一快閃存儲器、一次數(shù)控制陣列以及一控制器??扉W存儲器包括多個芯片,每一芯片中的每一頁面以一既定排列順序構(gòu)成多個超級區(qū)塊。次數(shù)控制陣列中的多個欄相應(yīng)于芯片??刂破髟谧x取芯片中的一第一芯片時,讀取相應(yīng)于第一芯片的一第一欄的值。當(dāng)?shù)谝粰诘闹禐橐坏谝粩?shù)值時,保持第一欄的值,并且將一第二數(shù)值寫入第一欄以外次數(shù)控制陣列中的所有欄。當(dāng)?shù)谝粰诘闹禐榈诙?shù)值時,將第一數(shù)值寫入第一欄,并且保持第一欄以外次數(shù)控制陣列中的所有欄的數(shù)值。
【專利說明】
數(shù)據(jù)儲存裝置及其數(shù)據(jù)維護方法
技術(shù)領(lǐng)域
[0001]本發(fā)明有關(guān)于一種存儲器裝置的數(shù)據(jù)維護方法;特別有關(guān)于一種記錄一超級區(qū)塊的讀取次數(shù)的數(shù)據(jù)維護方法。
【背景技術(shù)】
[0002]快閃存儲器為一種普遍的非揮發(fā)性數(shù)據(jù)儲存裝置,以電性方式抹除與程序化。以與非門型的快閃存儲器(即NAND FLASH)為例,常用作記憶卡(memory card)、通用序列總線閃存裝置(USB flash device)、固態(tài)硬盤(SSD)、嵌入式快閃存儲器模組(eMMC)…等使用。
[0003]快閃存儲器(如,NAND FLASH)的儲存陣列包括多個區(qū)塊(blocks)。各區(qū)塊包括多個頁面(pages),其中在快閃存儲器中數(shù)據(jù)寫入的單位是頁面,數(shù)據(jù)抹除的最小單位為區(qū)塊。由于快閃存儲器的存取過程中對同一頁面或者同一區(qū)塊反復(fù)存取,可能會發(fā)生數(shù)據(jù)內(nèi)容的錯誤。所以需要一種數(shù)據(jù)維護方法來避免對快閃存儲器中相同的頁面或者區(qū)塊讀取太多次。

【發(fā)明內(nèi)容】

[0004]本發(fā)明所提供的數(shù)據(jù)儲存裝置可將以及數(shù)據(jù)維護方法可降低超級區(qū)塊的讀取次數(shù)的累加,以減少不必要的更新動作。
[0005]本發(fā)明提供一種數(shù)據(jù)儲存裝置。數(shù)據(jù)儲存裝置包括一快閃存儲器、多個次數(shù)控制陣列以及一控制器??扉W存儲器包括多個芯片,多個通道選擇線,以及多個芯片選擇線,其中每一芯片包括多個頁面,并且芯片構(gòu)成一矩陣,通道選擇線用選擇矩陣中的行,芯片選擇線用以選擇矩陣中的列,每一芯片中的每一頁面以一既定排列順序構(gòu)成多個超級區(qū)塊,并且每一超級區(qū)塊包括不同芯片的不同頁面。每一次數(shù)控制陣列包括多個欄,次數(shù)控制陣列分別相應(yīng)于超級區(qū)塊,欄分別相應(yīng)于芯片選擇線以及通道選擇線芯片的多個組合,并且組合分別相應(yīng)于芯片。控制器用以在讀取超級區(qū)塊中的一第一超級區(qū)塊中芯片中的一第一芯片的數(shù)據(jù)時,讀取次數(shù)控制陣列中相應(yīng)于第一超級區(qū)塊的一第一次數(shù)控制陣列,以獲得第一次數(shù)陣列中相應(yīng)于第一芯片的一第一欄的值,其中當(dāng)?shù)谝粰诘闹禐橐坏谝粩?shù)值時,保持第一欄的值,并且將一第二數(shù)值寫入第一欄以外第一次數(shù)控制陣列中的所有欄,當(dāng)?shù)谝粰诘闹禐榈诙?shù)值時,將第一數(shù)值寫入第一欄,并且保持第一欄以外第一次數(shù)控制陣列的所有欄的數(shù)值。
[0006]在一實施例中,超級區(qū)塊分別相應(yīng)于多個讀取次數(shù),控制器還用以在第一欄的值為第一數(shù)值時,將讀取次數(shù)中相應(yīng)于第一超級區(qū)塊的一第一讀取次數(shù)加一,并且在第一欄的值為第二數(shù)值時,保持第一讀取次數(shù)的數(shù)值。
[0007]在另一實施例中數(shù)據(jù)儲存裝置還包括一讀取次數(shù)陣列,用以記錄每一超級區(qū)塊的讀取次數(shù)。當(dāng)讀取次數(shù)超過一既定值時,控制器更新相應(yīng)于超過既定值的讀取次數(shù)的超級區(qū)塊。
[0008]又另一實施例中,控制器還用以初始化次數(shù)控制陣列,以將第一數(shù)值寫入次數(shù)控制陣列中的每一欄。次數(shù)控制陣列是設(shè)置于快閃存儲器中。
[0009]本發(fā)明提供另一種數(shù)據(jù)儲存裝置。數(shù)據(jù)儲存裝置包括一快閃存儲器、多個次數(shù)控制陣列以及一控制器??扉W存儲器包括多個芯片,每一芯片包括多個頁面,每一芯片中的每一頁面以一既定排列順序構(gòu)成多個超級區(qū)塊,并且每一超級區(qū)塊包括不同芯片的不同頁面。
[0010]多個次數(shù)控制陣列,每一次數(shù)控制陣列包括多個欄,每一次數(shù)控制陣列相應(yīng)于一個超級區(qū)塊,欄分別相應(yīng)于一個芯片??刂破饔靡栽谧x取超級區(qū)塊中的一第一超級區(qū)塊中芯片中的一第一芯片的數(shù)據(jù)時,讀取相應(yīng)于第一超級區(qū)塊的次數(shù)控制陣列中的一第一次數(shù)控制陣列,以獲得第一次數(shù)控制陣列的欄中相應(yīng)于第一芯片的一第一欄的值,其中當(dāng)?shù)谝粰诘闹禐橐坏谝粩?shù)值時,保持第一欄的值,并且將一第二數(shù)值寫入第一欄以外第一次數(shù)控制陣列中的所有欄,當(dāng)?shù)谝粰诘闹禐榈诙?shù)值時,將第一數(shù)值寫入第一欄,并且保持第一欄以外第一次數(shù)控制陣列中的所有欄的數(shù)值。
[0011]本發(fā)明另提供一種數(shù)據(jù)維護方法,適用于一數(shù)據(jù)儲存裝置,其中數(shù)據(jù)儲存裝置具有多個芯片,每一芯片包括多個頁面,每一芯片中的每一頁面以一既定排列順序構(gòu)成多個超級區(qū)塊,并且每一超級區(qū)塊包括不同芯片的不同頁面。數(shù)據(jù)維護方法包括:讀取多個超級區(qū)塊中的一第一超級區(qū)塊中芯片中的一第一芯片的數(shù)據(jù)時,讀取多個次數(shù)控制陣列中相應(yīng)于第一超級區(qū)塊的一第一次數(shù)控制陣列,以獲得第一次數(shù)控制陣列中的多個欄中相應(yīng)于第一芯片的一第一欄的值,其中次數(shù)控制陣列分別相應(yīng)于超級區(qū)塊,次數(shù)控制陣列中的每一欄分別相應(yīng)于一個芯片;當(dāng)?shù)谝粰诘闹禐橐坏谝粩?shù)值時,保持第一欄的值,并且將一第二數(shù)值寫入第一欄以外第一次數(shù)控制陣列中的所有欄;以及當(dāng)?shù)谝粰诘闹禐榈诙?shù)值時,將第一數(shù)值寫入第一欄,并且保持第一欄以外第一次數(shù)控制陣列中的所有欄的數(shù)值。
[0012]在一實施例中,快閃存儲器還包括多個通道選擇線以及多個芯片選擇線,芯片構(gòu)成一矩陣,通道選擇線用以選擇矩陣中數(shù)據(jù)行,芯片選擇線用以選擇矩陣中的列,每一欄相應(yīng)于芯片選擇線以及通道選擇線的多個組合,并且每一組合相應(yīng)于芯片中之一者。
[0013]又另一實施例中,超級區(qū)塊分別相應(yīng)于多個讀取次數(shù),并且數(shù)據(jù)維護方法還包括在第一欄的值為第一數(shù)值時,將讀取次數(shù)中相應(yīng)于第一超級區(qū)塊的一第一讀取次數(shù)加一,并且在第一欄的值為第二數(shù)值時,保持第一讀取次數(shù)的數(shù)值。
[0014]數(shù)據(jù)維護方法可還包括當(dāng)讀取次數(shù)超過一既定值時,更新超級區(qū)塊。數(shù)據(jù)維護方法亦可還包括初始化次數(shù)控制陣列,以將第一數(shù)值寫入次數(shù)控制陣列中的每一欄。
【附圖說明】
[0015]圖1是本發(fā)明的一種實施例的電子系統(tǒng)的方塊圖。
[0016]圖2A?2B是本發(fā)明的一種實施例的快閃存儲器的示意圖。
[0017]圖3是本發(fā)明的一種實施例的超級區(qū)塊的示意圖。
[0018]圖4是本發(fā)明的一種實施例的次數(shù)控制陣列的示意圖。
[0019]圖5是本發(fā)明的一種實施例的次數(shù)控制陣列的操作的示意圖。
[0020]圖6是本發(fā)明的另一種實施例的次數(shù)控制陣列的操作的示意圖。
[0021 ]圖7是本發(fā)明的一種實施例的數(shù)據(jù)維護方法的流程圖。
[0022]符號說明
[0023]100電子系統(tǒng);
[0024]120 主機;
[0025]140數(shù)據(jù)儲存裝置;
[0026]160 控制器;
[0027]162運算單元;
[0028]164永久存儲器;
[0029]166動態(tài)隨機存取器;
[0030]180快閃存儲器;
[0031]CO?CN 芯片;
[0032]CHO?CH3通道選擇線;
[0033]CEO?CE3芯片選擇線;
[0034]C0_P0?C0_PM、C1_P0?C1_PM、C2_P0?C2_PM、C3_P0?C3_PM、C4_P0?C4_PM、C5_PO?C5_PM、C6_P0?C6_PM、C7_P0?C7_PM、C8_P0?C8_PM、C9_P0?C9_PM、C10_P0?C10_PM、C11_P0?C11_PM、C0_P0?C0_PM、C0_P0?C0_PM、C12_P0?C12_PM、C13_P0?C13_PM 頁面;
[0035]SBUSB2 超級區(qū)塊;
[0036]SPO?SPK-1超級頁面;
[0037]S700?S716 步驟。
【具體實施方式】
[0038]以下將詳細討論本發(fā)明各種實施例的裝置及使用方法。然而值得注意的是,本發(fā)明所提供的許多可行的發(fā)明概念可實施在各種特定范圍中。這些特定實施例僅用于舉例說明本發(fā)明的裝置及使用方法,但非用于限定本發(fā)明的范圍。
[0039]圖1是本發(fā)明的一種實施例的電子系統(tǒng)的方塊圖。電子系統(tǒng)100包括一主機120以及一數(shù)據(jù)儲存裝置140。數(shù)據(jù)儲存裝置140包括一快閃存儲器180以及一控制器160,且可根據(jù)主機120所下達的命令操作。
[0040]控制器160包括一運算單元162、一永久存儲器(如,只讀存儲器ROM) 164以及一動態(tài)隨機存取器(RAM) 166。永久存儲器164與所載的程序碼、數(shù)據(jù)組成固件(firmware),由運算單元162執(zhí)行,使控制器160基于該固件控制該快閃存儲器180,其中運算單元162還用以將快閃存儲器180中的頁面重組為至少一超級區(qū)塊(Super Block)。
[0041 ] 快閃存儲器180包括多個芯片CO?CN,每一芯片CO?CN中包括多個頁面。每一芯片CO-CN包括多個頁面,每一芯片CO-CN中的每一頁面以一既定排列順序構(gòu)成至少一超級區(qū)塊SB。換言之,每一超級區(qū)塊包括不同芯片CO?CN的不同頁面。另外,快閃存儲器180還包括多個通道選擇線以及多個芯片選擇線。芯片CO?CN構(gòu)成一矩陣,通道選擇線用以選擇矩陣中的行,芯片選擇線用以選擇矩陣中的列。
[0042]舉例而言,圖2A?2B是本發(fā)明的一種實施例的快閃存儲器的示意圖。在本實施例中,快閃存儲器180包括16個芯片CO?C15。每一芯片CO?C15包括多個頁面,其中芯片CO包括多個頁面C0_P0?C0_PM、芯片Cl包括多個頁面C1_P0?C1_PM、芯片C2包括多個頁面C2_P0?C2_PM,依此類推。快閃存儲器180還包括4條通道選擇線CHO?CH3以及4條芯片選擇線CEO?CE3。如圖2A?2B所示,芯片CO?C15構(gòu)成一矩陣,通道選擇線CHO?CH3用以選擇矩陣中的行,芯片選擇線CEO?CE3用以選擇矩陣中的列。詳細而言,通道選擇線CHO用以選擇在矩陣中第一行上的芯片C0、C4、C8以及C12,通道選擇線CHl用以選擇在矩陣中第二行上的芯片(:1工5、09以及(:13、通道選擇線012用以選擇在矩陣中第三行上的芯片02工6、(:10以及(:14、通道選擇線CH3用以選擇在矩陣中第四行上的芯片C3、C7、C11以及C15。另外,芯片選擇線CEO用以選擇矩陣中第一列上的芯片CO?C3、芯片選擇線CEl用以選擇矩陣中第二列上的芯片C4?C7、芯片選擇線CE2用以選擇矩陣中第三列上的芯片C8?C11、以及芯片選擇線CE3用以選擇矩陣中第四列上的芯片C12?C15。換言之,當(dāng)控制器160要對芯片ClO進行存取時,快閃存儲器180則藉由通道選擇線CH2以及芯片選擇線CE2選擇芯片C10,依此類推。在另一實施例中,快閃存儲器180亦可包括32個芯片、4條通道選擇線以及8條芯片選擇線,但本發(fā)明不限于此。
[0043]圖3是本發(fā)明的一種實施例的超級區(qū)塊的示意圖。圖3是本發(fā)明的一種實施例的超級區(qū)塊的示意圖,其中圖3是由圖2A?2B所示的快閃存儲器180中的16個芯片CO-C15中的每一頁面以一既定排列順序,以構(gòu)成兩個超級區(qū)塊SBl以及SB2,但本發(fā)明不限于此。在其他實施例中,經(jīng)由下述規(guī)則,快閃存儲器180中的16個芯片C0-C15中的每一頁面以該既定排列順序,亦可構(gòu)成兩個以上的超級區(qū)塊。如圖所示,既定排列順序為依序排列每一芯片CO-CN中位于頂端的一第一頁面PO以構(gòu)成第一超級區(qū)塊SBl的第一超級頁面SP0,依序排列每一芯片CO-CN中次于第一頁面的一第二頁面P2以構(gòu)成第一超級區(qū)塊SBl的第二超級頁面SPl,直到依序排列每一芯片CO-CN中的第K-1個頁面PK-1以構(gòu)成第一超級區(qū)塊SBl的最后一個超級頁面SPK-1。接著,既定排列順序繼續(xù)依序排列每一芯片CO-CN中第K個頁面PK以構(gòu)成第二超級區(qū)塊SB2的第一超級頁面SPO,依序排列每一芯片CO-CN中的第K+1個頁面PK+1以構(gòu)成第二超級區(qū)塊SB2的第二超級頁面SPl,直到依序排列每一芯片CO-CN中的最后一個頁面PM以構(gòu)成第二超級區(qū)塊SB2的最后一個超級頁面SPK-1。在本實施例中,第一超級區(qū)塊SBl以及第二超級區(qū)塊SB2中的超級頁面SPO?SPK-1的數(shù)量相同,并且每一超級頁面SPO?SPK-1由多個個頁面所構(gòu)成,但本發(fā)明不限于此。在其他實施例中,每一超級區(qū)塊的超級頁面的數(shù)量可不相同,并且第一超級區(qū)塊SBl以及第二超級區(qū)塊SB2亦可由不同的排列方式所構(gòu)成。
[0044]另外,數(shù)據(jù)儲存裝置140還具有多個次數(shù)控制陣列(未圖示),用以記錄芯片CO?CN的讀取狀態(tài)。在一實施例中,次數(shù)控制陣列是設(shè)置于快閃存儲器180中,但本發(fā)明不限于此。在其他實施例中,次數(shù)控制陣列亦可設(shè)置于永久存儲器164中。次數(shù)控制陣列分別用以記錄每一芯片CO?CN的讀取狀態(tài),并且每一次數(shù)控制陣列相應(yīng)于一超級區(qū)塊。另外,每一次數(shù)控制陣列包括多個欄,每一欄分別相應(yīng)于一個芯片CO?CN??刂破?60可將次數(shù)控制陣列由快閃存儲器180或者永久存儲器164中載入動態(tài)隨機存取器166中操作。
[0045]圖4是本發(fā)明的一種實施例的次數(shù)控制陣列的示意圖。在本實施例中,次數(shù)控制陣列RCAl對應(yīng)于圖3所示的第一超級區(qū)塊SBl,用以記錄芯片CO?C15的讀取狀態(tài),但本發(fā)明不限于此。值得注意的是,其他超級區(qū)塊的次數(shù)控制陣列亦可參照次數(shù)控制陣列RCA1。次數(shù)控制陣列RCAl包括16個欄,每一欄分別相應(yīng)于一個芯片CO?C15。換言之,多個欄相應(yīng)于芯片選擇線CEO?CE3以及通道選擇線CHO?CH3的多個組合CE0_CH0?CE3_CH_3,并且每一組合CE0_CH0?CE3_CH_3相應(yīng)于可藉由該組合CE0_CH0?CE3_CH_3所選取的芯片CO?Cl 5。
[0046]另外,數(shù)據(jù)儲存裝置140還具有一讀取次數(shù)陣列(未圖示),用以記錄每一超級區(qū)塊的讀取次數(shù)。在一實施例中,讀取次數(shù)陣列是設(shè)置于快閃存儲器180中,但本發(fā)明不限于此。在其他實施例中,讀取次數(shù)陣列亦可設(shè)置于永久存儲器164中??刂破?60可將讀取次數(shù)陣列由快閃存儲器180或者永久存儲器164中載入動態(tài)隨機存取器166中,并且根據(jù)次數(shù)控制陣列維持讀取次數(shù)陣列中的讀取次數(shù)。
[0047]詳細而言,數(shù)據(jù)儲存裝置140可藉由次數(shù)控制陣列來控制超級區(qū)塊被更新的次數(shù)。在某些實施例中,為了防止由于過多的讀取次數(shù)對于存儲器所儲存的數(shù)據(jù)的破壞,控制器160會在每一芯片選擇線以及每一通道選擇線被致能時,皆對讀取次數(shù)陣列中相應(yīng)的所讀取的超級區(qū)塊的讀取次數(shù)加一,以計算超級區(qū)塊被讀取的次數(shù)。舉例而言,當(dāng)控制器160對只有對第一超級區(qū)塊SBl中的一超級頁面SPO讀取一次時,相應(yīng)于超級區(qū)塊SBl的讀取次數(shù)則會因為超級頁面SPO包含16個由不同的通道選擇線以及芯片選擇線所選取的頁面,而增加16。當(dāng)讀取次數(shù)超過一既定值時,控制器160則將超級區(qū)塊的數(shù)據(jù)搬移至另一超級區(qū)塊,以更新讀取次數(shù)超過既定值得超級區(qū)塊。然而,在上述記錄讀取次數(shù)的方式中,讀取次數(shù)很容易超過既定值。因此,控制器160會消耗很多資源在更新超級區(qū)塊,使得表現(xiàn)降低。在本實施例中,140可藉由次數(shù)控制陣列來降低超級區(qū)塊被更新的次數(shù)。
[0048]詳細而言,控制器160初始化次數(shù)控制陣列,以將第一數(shù)值寫入次數(shù)控制陣列中的每一欄。值得注意的是,控制器160只需要在超級區(qū)塊剛被更新或者剛建立時,才需要初始化次數(shù)控制陣列,但本發(fā)明不限于此。使用者亦可在其他狀況下初始化次數(shù)控制陣列。接著,控制器160用以在讀取一第一超級區(qū)塊中芯片CO?CN中的一第一芯片的數(shù)據(jù)時,讀取多個次數(shù)控制陣列中相應(yīng)于第一超級區(qū)塊的一第一次數(shù)控制陣列,以獲得第一次數(shù)控制陣列中相應(yīng)于第一芯片的一第一欄的值。當(dāng)?shù)谝粰诘闹禐橐坏谝粩?shù)值時,控制器160保持第一次數(shù)控制陣列的第一欄的值,并且將一第二數(shù)值寫入第一欄以外第一次數(shù)控制陣列中的其他所有欄。當(dāng)?shù)谝粰诘闹禐榈诙?shù)值時,控制器160將第一數(shù)值寫入第一次數(shù)控制陣列的第一欄,并且保持第一欄以外第一次數(shù)控制陣列中的其他所有欄的數(shù)值。值得注意的是,控制器160還用以在第一欄的值為第一數(shù)值時,將讀取次數(shù)陣列中相應(yīng)于第一超級區(qū)塊的第一讀取次數(shù)加一,并且在第一欄的值為第二數(shù)值時,保持讀取次數(shù)陣列中相應(yīng)于第一超級區(qū)塊的第一讀取次數(shù)的數(shù)值。另外,當(dāng)讀取次數(shù)超過一既定值時,控制器160則更新相應(yīng)于超過既定值的讀取次數(shù)的超級區(qū)塊,以將相應(yīng)于超過既定值的讀取次數(shù)的超級區(qū)塊的數(shù)據(jù)搬移至另一超級區(qū)塊。
[0049]圖5是本發(fā)明的一種實施例的次數(shù)控制陣列的操作的示意圖。在本實施例中,次數(shù)控制陣列RCAl是對應(yīng)于圖3所示的第一超級區(qū)塊SBl,用以記錄芯片CO?C15的讀取狀態(tài),但本發(fā)明不限于此。值得注意的是,其他超級區(qū)塊的次數(shù)控制陣列亦可參照次數(shù)控制陣列RCAl。另外,在本實施例中,控制器160用以依序地讀取超級區(qū)塊SB中的數(shù)據(jù)。被初始化的次數(shù)控制陣列RCAl中的每一欄皆是第一數(shù)值” I”,如第一時間Tl上的次數(shù)控制陣列RCAl所示。
[0050]首先,控制器160讀取第一超級區(qū)塊SBl中第一超級頁面SPO中的頁面C0_P0的數(shù)據(jù)??刂破?60所讀取的頁面C0_P0在由芯片選擇線CEO以及通道選擇線CHO所選擇的芯片CO中,故控制器160讀取相應(yīng)于芯片CO的欄CE0_CH0中的值。在本實施例中,如第一時間Tl上的欄CE0_CH0所示,控制器160所讀取的欄CE0_CH0的值為第一數(shù)值” I”。因此,控制器160保持欄CE0_CH0的值,并且將第二數(shù)值”O(jiān)”寫入欄CE0_CH0以外次數(shù)控制陣列RCAl中的其他所有欄CE0_CH1?CE3_CH3,如第二時間T2上的次數(shù)控制陣列RCAl所示。另外,由于控制器160所讀取的欄CE0_CH0的值為第一數(shù)值” I”,故控制器160將讀取次數(shù)陣列中相應(yīng)于第一超級區(qū)塊SBl的第一讀取次數(shù)加一。
[0051]接著,控制器160讀取第一超級區(qū)塊SBl中第一超級頁面SPO中的頁面C1_P0的數(shù)據(jù)??刂破?60所讀取的頁面C1_P0在由芯片選擇線CEO以及通道選擇線CHl所選擇的芯片Cl中,故控制器160讀取相應(yīng)于芯片Cl的欄CE0_CH1中的值。在本實施例中,如第二時間T2上的欄CE0_CH1所示,控制器160所讀取的欄CE0_CH1的值為第二數(shù)值”0”。因此,控制器160將第一數(shù)值” I”寫入欄CE0_CH1,并且保持欄CE0_CH1以外次數(shù)控制陣列RCAl中的所有欄CE0_CH0以及CE0_CH2?CE3_CH3的數(shù)值,如第三時間T3上的次數(shù)控制陣列RCAl所示。另外,由于控制器160所讀取的欄CE0_CH1的值為第二數(shù)值”O(jiān)”,故控制器160保持讀取次數(shù)陣列上相應(yīng)于第一超級區(qū)塊的第一讀取次數(shù)的數(shù)值,依此類推。
[0052 ]當(dāng)控制器160依序讀取完芯片CO?C15時,次數(shù)控制陣列RCAI中的所有欄CE0_CH0?CE3_CH3的數(shù)值皆是第一數(shù)值” I”,如第十七時間T17上的次數(shù)控制陣列RCAl所示。值得注意的是,在時間T2?T17之間,讀取次數(shù)的數(shù)值皆未增加。換言之,在讀取第一超級頁面SPO的過程中,第一超級區(qū)塊SBl的第一讀取次數(shù)只會增加I。
[0053]當(dāng)控制器160接著讀取第一超級區(qū)塊SBl中的第二超級頁面SPl中的頁面C0_P1的數(shù)據(jù)。控制器160所讀取的頁面C0_P1在由芯片選擇線CEO以及通道選擇線CHO所選擇的芯片CO中,故控制器160再次讀取相應(yīng)于芯片CO的欄CE0_CH0中的值。在本實施例中,如第十七時間T17上的欄CE0_CH0所示,控制器160所讀取的欄CE0_CH0的值為第一數(shù)值” I”。因此,控制器160保持欄CE0_CH0的值,并且將第二數(shù)值” O”寫入欄CE0_CH0以外次數(shù)控制陣列RCAl中的其他所有欄CE0_CH1?CE3_CH3,如第十八時間T18上的次數(shù)控制陣列RCAl所示。另外,由于控制器160所讀取的欄CE0_CH0的值為第一數(shù)值” I”,故控制器160將讀取次數(shù)陣列中相應(yīng)于第一超級區(qū)塊SBl的第一讀取次數(shù)加一。
[0054]由上述可知,在控制器160依序讀取芯片CO?C15的狀況下,第一超級區(qū)塊SBl的第一讀取次數(shù)只會增加I。因此,控制器160可藉由次數(shù)控制陣列RCAl有效地記錄超級區(qū)塊SB的讀取次數(shù)。另外,在本實施例中,第一數(shù)值為” I”,并且第二數(shù)值為” O”,但本發(fā)明不限于此。在其他實施例中,第一數(shù)值為”O(jiān)”,并且第二數(shù)值為” I”,但本發(fā)明不限于此。再者,在本實施例中,每一欄僅需要I位元的存儲器容量。換言之,16個芯片所構(gòu)成的超級區(qū)塊僅需要16位元,32個芯片所構(gòu)成的超級區(qū)塊只需要32位元,依此類推。
[0055]圖6是本發(fā)明的另一種實施例的次數(shù)控制陣列的操作的示意圖。在本實施例中,次數(shù)控制陣列RCAl是對應(yīng)于圖3所示的第一超級區(qū)塊SBl,用以記錄芯片CO?C15的讀取狀態(tài),但本發(fā)明不限于此。值得注意的是,其他超級區(qū)塊的次數(shù)控制陣列亦可參照次數(shù)控制陣列RCA1。另外,在本實施例中,控制器160用以隨機地讀取超級區(qū)塊SB中的數(shù)據(jù)。被初始化的次數(shù)控制陣列RCAl中的每一欄皆是第一數(shù)值” I”,如第一時間Tl上的次數(shù)控制陣列RCAl所示。
[0056]首先,控制器160讀取第一超級區(qū)塊SBl中第一超級頁面SPO中的頁面C2_P0的數(shù)據(jù)??刂破?60所讀取的頁面C2_P0在由芯片選擇線CEO以及通道選擇線CH2所選擇的芯片C02中,故控制器160讀取相應(yīng)于芯片C2的欄CE0_CH2中的值。在本實施例中,如第一時間Tl上的欄CE0_CH2所示,控制器160所讀取的欄CE0_CH0的值為第一數(shù)值” I”。因此,控制器160保持欄CE0_CH2的值,并且將第二數(shù)值” O”寫入欄CE0_CH2以外次數(shù)控制陣列RCAl中的其他所有欄CE0_CH0?CE0_CH1以及CE0_CH3?CE3_CH3,如第二時間T2上的次數(shù)控制陣列RCAl所示。另外,由于控制器160所讀取的欄CE0_CH0的值為第一數(shù)值” I”,故控制器160將讀取次數(shù)陣列中相應(yīng)于第一超級區(qū)塊SBl的第一讀取次數(shù)加一。
[0057]接著,控制器160讀取第一超級區(qū)塊SBl中第三超級頁面SP2中的頁面C14_P2的數(shù)據(jù)。控制器160所讀取的頁面C14_P2在由芯片選擇線CE3以及通道選擇線CH2所選擇的芯片C14中,故控制器160讀取相應(yīng)于芯片C14的欄CE3_CH2中的值。在本實施例中,如第二時間T2上的欄CE3_CH2所示,控制器160所讀取的欄CE3_CH2的值為第二數(shù)值” O”。因此,控制器160將第一數(shù)值”1”寫入欄CE3_CH2,并且保持欄CE3_CH2以外次數(shù)控制陣列RCAl中的所有欄CE0_CH0?CE3_CH1以及CE3_CH3的數(shù)值,如第三時間T3上的次數(shù)控制陣列RCAl所示。另外,由于控制器160所讀取的欄CE3_CH2的值為第二數(shù)值”O(jiān)”,故控制器160保持次數(shù)讀取陣列中相應(yīng)于第一超級區(qū)塊的第一讀取次數(shù)的數(shù)值。
[0058]當(dāng)控制器160在隨機的狀況下,又讀取了一次芯片C14。例如,控制器160讀取第一超級區(qū)塊SBl中第二超級頁面SPl中的頁面C14_P1的數(shù)據(jù)??刂破?60所讀取的頁面C14_P1在由芯片選擇線CE3以及通道選擇線CH2所選擇的芯片C14中,故控制器160讀取相應(yīng)于芯片C14的欄CE3_CH2中的值。在本實施例中,如第三時間T3上的欄CE3_CH2所示,控制器160所讀取的欄CE3_CH2的值為第一數(shù)值”1”。因此,控制器160保持欄CE3_CH2的值,并且將第二數(shù)值”0”寫入欄CE3_CH2以外次數(shù)控制陣列RCAl中的其他所有欄CE0_CH0?CE3_CH1以及CE3_CH3,如第四時間T4上的次數(shù)控制陣列RCAl所示。另外,由于控制器160所讀取的欄CE3_CH2的值為第一數(shù)值” I”,故控制器160將讀取陣列中相應(yīng)于第一超級陣列SBl的第一讀取次數(shù)加一。
[0059]由上述可知,在控制器160在隨機讀取芯片CO?C15的狀況下,只有在重復(fù)讀到同一個芯片時讀取次數(shù)才會增加I。否則,讀取次數(shù)也只會等到讀完所有芯片CO?C15—次后,才會增加I。因此,控制器160亦可藉由次數(shù)控制陣列RCAl減少超級區(qū)塊的無效的讀取次數(shù)。另外,在本實施例中,第一數(shù)值為” I”,并且第二數(shù)值為” O”,但本發(fā)明不限于此。在其他實施例中,第一數(shù)值為” O”,并且第二數(shù)值為” I”,但本發(fā)明不限于此。再者,在本實施例中,每一欄僅需要I位元的存儲器容量。
[0060]圖7是本發(fā)明的一種實施例的數(shù)據(jù)維護方法的流程圖。數(shù)據(jù)維護方法適用于圖1所示的數(shù)據(jù)儲存裝置140中。數(shù)據(jù)儲存裝置140具有多個次數(shù)控制陣列(未圖示)以及一讀取次數(shù)陣列。在一實施例中,次數(shù)控制陣列以及讀取次數(shù)陣列是設(shè)置于快閃存儲器180中,但本發(fā)明不限于此。在其他實施例中,次數(shù)控制陣列以及讀取次數(shù)陣列亦可設(shè)置于永久存儲器164中。次數(shù)控制陣列用以記錄每一芯片CO?CN的讀取狀態(tài),并且每一次數(shù)控制陣列相應(yīng)于一超級區(qū)塊。讀取次數(shù)陣列用以記錄每一超級區(qū)塊的讀取次數(shù)。另外,每一次數(shù)控制陣列包括多個欄,每一欄分別相應(yīng)于一個芯片CO?CN。流程開始于步驟S700。
[0061 ]在步驟S700中,控制器160初始化次數(shù)控制陣列,以將第一數(shù)值寫入次數(shù)控制陣列中的每一欄。值得注意的是,控制器160只需要在超級區(qū)塊剛被更新或者剛建立時,才需要初始化次數(shù)控制陣列,但本發(fā)明不限于此。使用者亦可在其他狀況下初始化次數(shù)控制陣列。換言之,當(dāng)超級區(qū)塊的次數(shù)控制陣列已初始化后,步驟S700則可不被執(zhí)行。
[0062]接著,在步驟S702中,控制器160判斷是否接收到一讀取命令。當(dāng)控制器160接收到讀取命令時,流程進行至步驟S703,否則,流程會到步驟S700,控制器160繼續(xù)判斷是否接收到讀取命令。值得注意的是,讀取命令相應(yīng)于對一頁面進行讀取的命令??刂破?60可根據(jù)自主機120所接收到的一較長的讀取命令,產(chǎn)生多個相應(yīng)于一個頁面的讀取命令,以依序根據(jù)多個所產(chǎn)生的讀取命令對快閃存儲器180中的頁面進行讀取,但本發(fā)明不限于此。
[0063]在步驟S704中,控制器160根據(jù)讀取命令,讀取一第一超級區(qū)塊中芯片CO?CN中的一第一芯片CO?CN的數(shù)據(jù),并且讀取相應(yīng)于所讀取的第一超級區(qū)塊的一第一次數(shù)控制陣列中相應(yīng)于第一芯片CO?CN的欄中的一第一欄的值。
[0064]接著,在步驟S706中,控制器160判斷所讀取的第一欄的值為第一數(shù)值或者第二數(shù)值。在一實施例中,第一數(shù)值為” I”,并且第二數(shù)值為” O”,但本發(fā)明不限于此。在其他實施例中,第一數(shù)值為”O(jiān)”,并且第二數(shù)值為” I”,但本發(fā)明不限于此。值得注意的是,在本實施例中,每一欄僅需要I位元的存儲器容量。當(dāng)所讀取的第一欄的值為第一數(shù)值時,流程進行至步驟S708。當(dāng)所讀取的第一欄的值為第二數(shù)值時,流程進行至步驟S712。
[0065]在步驟S708中,控制器160保持第一欄的值,并且將第二數(shù)值寫入第一欄以外第一次數(shù)控制陣列中的所有其他欄。
[0066]接著,在步驟S710中,控制器160將用以將讀取陣列中相應(yīng)于第一超級區(qū)塊的一第一讀取次數(shù)加一。
[0067]在步驟S712中,控制器160將第一數(shù)值寫入第一欄,并且保持第一欄以外第一次數(shù)控制陣列中的所有其他欄的數(shù)值。
[0068]接著,在步驟S714中,控制器160判斷第一讀取次數(shù)是否超過一既定值。當(dāng)?shù)谝蛔x取次數(shù)超過既定值時,流程進行至步驟S716。否則,流程回到步驟S702。
[0069]在步驟S716中,控制器160更新第一超級區(qū)塊。接著,流程回到步驟S702。值得注意的是,在其他實施例中,步驟S714以及步驟S716可在其他特定時間點進行,不限于在整理完次數(shù)控制陣列后,馬上進行。
[0070]本發(fā)明所提供的數(shù)據(jù)儲存裝置140可將以及數(shù)據(jù)維護方法可降低超級區(qū)塊的讀取次數(shù)的累加,以減少不必要的更新動作。
[0071]本發(fā)明的方法,或特定型態(tài)或其部份,可以以程序碼的型態(tài)存在。程序碼可儲存于實體媒體,如軟碟、光碟片、硬碟、或是任何其他機器可讀取(如電腦可讀取)儲存媒體,亦或不限于外在形式的電腦程序產(chǎn)品,其中,當(dāng)程序碼被機器,如電腦載入且執(zhí)行時,此機器變成用以參與本發(fā)明的裝置。程序碼也可透過一些傳送媒體,如電線或電纜、光纖、或是任何傳輸型態(tài)進行傳送,其中,當(dāng)程序碼被機器,如電腦接收、載入且執(zhí)行時,此機器變成用以參與本發(fā)明的裝置。當(dāng)在一般用途處理單元實作時,程序碼結(jié)合處理單元提供一操作類似于應(yīng)用特定邏輯電路的獨特裝置。
[0072]以上所述,僅為本發(fā)明的較佳實施例而已,當(dāng)不能以此限定本發(fā)明實施的范圍,SP凡依本發(fā)明申請專利范圍及發(fā)明說明內(nèi)容所作的簡單的等效變化與修飾,皆仍屬本發(fā)明專利涵蓋的范圍內(nèi)。另外本發(fā)明的任一實施例或申請專利范圍不須達成本發(fā)明所揭示的全部目的或優(yōu)點或特點。此外,摘要部分和標題僅是用來輔助專利文件搜尋之用,并非用來限制本發(fā)明的權(quán)利范圍。
【主權(quán)項】
1.一種數(shù)據(jù)儲存裝置,包括: 一快閃存儲器,包括多個芯片,多個通道選擇線,以及多個芯片選擇線,其中每一芯片包括多個頁面,并且上述芯片構(gòu)成一矩陣,上述通道選擇線用選擇上述矩陣中的行,上述芯片選擇線用以選擇上述矩陣中的列,每一上述芯片中的每一上述頁面以一既定排列順序構(gòu)成多個超級區(qū)塊,并且每一上述超級區(qū)塊包括不同上述芯片的不同上述頁面; 多個次數(shù)控制陣列,每一上述次數(shù)控制陣列包括多個欄,上述次數(shù)控制陣列分別相應(yīng)于上述超級區(qū)塊,上述欄分別相應(yīng)于上述芯片選擇線以及上述通道選擇線上述芯片的多個組合,并且上述組合分別相應(yīng)于上述芯片;以及 一控制器,用以在讀取上述超級區(qū)塊中的一第一超級區(qū)塊中上述芯片中的一第一芯片的數(shù)據(jù)時,讀取上述次數(shù)控制陣列中相應(yīng)于上述第一超級區(qū)塊的一第一次數(shù)控制陣列,以獲得上述第一次數(shù)陣列中相應(yīng)于上述第一芯片的一第一欄的值,其中當(dāng)上述第一欄的值為一第一數(shù)值時,保持上述第一欄的值,并且將一第二數(shù)值寫入上述第一欄以外上述第一次數(shù)控制陣列中的所有上述欄,當(dāng)上述第一欄的值為上述第二數(shù)值時,將上述第一數(shù)值寫入上述第一欄,并且保持上述第一欄以外上述第一次數(shù)控制陣列的所有上述欄的數(shù)值。2.根據(jù)權(quán)利要求1所述的數(shù)據(jù)儲存裝置,其特征在于,上述超級區(qū)塊分別相應(yīng)于多個讀取次數(shù),上述控制器還用以在上述第一欄的值為上述第一數(shù)值時,將上述讀取次數(shù)中相應(yīng)于上述第一超級區(qū)塊的一第一讀取次數(shù)加一,并且在上述第一欄的值為上述第二數(shù)值時,保持上述第一讀取次數(shù)的數(shù)值。3.根據(jù)權(quán)利要求2所述的數(shù)據(jù)儲存裝置,其特征在于,還包括一讀取次數(shù)陣列,用以記錄每一上述超級區(qū)塊的上述讀取次數(shù)。4.根據(jù)權(quán)利要求2所述的數(shù)據(jù)儲存裝置,其特征在于,當(dāng)上述讀取次數(shù)超過一既定值時,上述控制器更新相應(yīng)于超過上述既定值的上述讀取次數(shù)的上述超級區(qū)塊。5.根據(jù)權(quán)利要求1所述的數(shù)據(jù)儲存裝置,其特征在于,上述控制器還用以初始化上述次數(shù)控制陣列,以將上述第一數(shù)值寫入上述次數(shù)控制陣列中的每一上述欄。6.根據(jù)權(quán)利要求1所述的數(shù)據(jù)儲存裝置,其特征在于,上述次數(shù)控制陣列是設(shè)置于上述快閃存儲器中。7.—種數(shù)據(jù)儲存裝置,包括: 一1決閃存儲器,包括多個芯片,每一芯片包括多個頁面,每一上述芯片中的每一上述頁面以一既定排列順序構(gòu)成多個超級區(qū)塊,并且每一上述超級區(qū)塊包括不同上述芯片的不同上述頁面; 多個次數(shù)控制陣列,每一上述次數(shù)控制陣列包括多個欄,每一上述次數(shù)控制陣列相應(yīng)于一個上述超級區(qū)塊,上述欄分別相應(yīng)于一個上述芯片;以及 一控制器,用以在讀取上述超級區(qū)塊中的一第一超級區(qū)塊中上述芯片中的一第一芯片的數(shù)據(jù)時,讀取相應(yīng)于上述第一超級區(qū)塊的上述次數(shù)控制陣列中的一第一次數(shù)控制陣列,以獲得上述第一次數(shù)控制陣列的上述欄中相應(yīng)于上述第一芯片的一第一欄的值,其中當(dāng)上述第一欄的值為一第一數(shù)值時,保持上述第一欄的值,并且將一第二數(shù)值寫入上述第一欄以外上述第一次數(shù)控制陣列中的所有上述欄,當(dāng)上述第一欄的值為上述第二數(shù)值時,將上述第一數(shù)值寫入上述第一欄,并且保持上述第一欄以外上述第一次數(shù)控制陣列中的所有上述欄的數(shù)值。8.根據(jù)權(quán)利要求7所述的數(shù)據(jù)儲存裝置,其特征在于,上述快閃存儲器還包括多個通道選擇線以及多個芯片選擇線,上述芯片構(gòu)成一矩陣,上述通道選擇線用以選擇上述矩陣中的行,上述芯片選擇線用以選擇上述矩陣中的列,每一上述欄相應(yīng)于上述芯片選擇線以及上述通道選擇線的多個組合,并且每一組合相應(yīng)于上述芯片中之一者。9.根據(jù)權(quán)利要求7所述的數(shù)據(jù)儲存裝置,其特征在于,上述超級區(qū)塊分別相應(yīng)于多個讀取次數(shù),上述控制器更用以在上述第一欄的值為上述第一數(shù)值時,將上述讀取次數(shù)中相應(yīng)于上述第一超級區(qū)塊的一第一讀取次數(shù)加一,并且在上述第一欄的值為上述第二數(shù)值時,保持上述第一讀取次數(shù)的數(shù)值。10.根據(jù)權(quán)利要求9所述的數(shù)據(jù)儲存裝置,還包括一讀取次數(shù)陣列,用以記錄每一上述超級區(qū)塊的上述讀取次數(shù)。11.根據(jù)權(quán)利要求9所述的數(shù)據(jù)儲存裝置,其特征在于,當(dāng)上述讀取次數(shù)超過一既定值時,上述控制器更新相應(yīng)于超過上述既定值的上述讀取次數(shù)的上述超級區(qū)塊。12.根據(jù)權(quán)利要求7所述的數(shù)據(jù)儲存裝置,其特征在于,上述控制器還用以初始化上述次數(shù)控制陣列,以將上述第一數(shù)值寫入上述次數(shù)控制陣列中的每一上述欄。13.根據(jù)權(quán)利要求1所述的數(shù)據(jù)儲存裝置,其特征在于,上述次數(shù)控制陣列是設(shè)置于上述快閃存儲器中。14.一種數(shù)據(jù)維護方法,適用于一數(shù)據(jù)儲存裝置,其中上述數(shù)據(jù)儲存裝置具有多個芯片,每一芯片包括多個頁面,每一上述芯片中的每一上述頁面以一既定排列順序構(gòu)成多個超級區(qū)塊,并且每一上述超級區(qū)塊包括不同上述芯片的不同上述頁面,上述數(shù)據(jù)維護方法包括: 讀取上述多個超級區(qū)塊中的一第一超級區(qū)塊中上述芯片中的一第一芯片的數(shù)據(jù)時,讀取多個次數(shù)控制陣列中相應(yīng)于上述第一超級區(qū)塊的一第一次數(shù)控制陣列,以獲得上述第一次數(shù)控制陣列中的多個欄中相應(yīng)于上述第一芯片的一第一欄的值,其中上述次數(shù)控制陣列分別相應(yīng)于上述超級區(qū)塊,上述次數(shù)控制陣列中的每一上述欄分別相應(yīng)于一個上述芯片; 當(dāng)上述第一欄的值為一第一數(shù)值時,保持上述第一欄的值,并且將一第二數(shù)值寫入上述第一欄以外上述第一次數(shù)控制陣列中的所有上述欄;以及 當(dāng)上述第一欄的值為上述第二數(shù)值時,將上述第一數(shù)值寫入上述第一欄,并且保持上述第一欄以外上述第一次數(shù)控制陣列中的所有上述欄的數(shù)值。15.根據(jù)權(quán)利要求14所述的數(shù)據(jù)維護方法,其特征在于,上述快閃存儲器還包括多個通道選擇線以及多個芯片選擇線,上述芯片構(gòu)成一矩陣,上述通道選擇線用以選擇上述矩陣中的行,上述芯片選擇線用以選擇上述矩陣中的列,每一上述欄相應(yīng)于上述芯片選擇線以及上述通道選擇線的多個組合,并且每一組合相應(yīng)于上述芯片中之一者。16.根據(jù)權(quán)利要求14所述的數(shù)據(jù)維護方法,其特征在于,上述超級區(qū)塊分別相應(yīng)于多個讀取次數(shù),并且上述數(shù)據(jù)維護方法還包括在上述第一欄的值為上述第一數(shù)值時,將上述讀取次數(shù)中相應(yīng)于上述第一超級區(qū)塊的一第一讀取次數(shù)加一,并且在上述第一欄的值為上述第二數(shù)值時,保持上述第一讀取次數(shù)的數(shù)值。17.根據(jù)權(quán)利要求16所述的數(shù)據(jù)維護方法,其特征在于,還包括當(dāng)上述讀取次數(shù)超過一既定值時,更新上述超級區(qū)塊。18.根據(jù)權(quán)利要求15所述的數(shù)據(jù)維護方法,其特征在于,還包括初始化上述次數(shù)控制陣列,以將上述第一數(shù)值寫入上述次數(shù)控制陣列中的每一上述欄。19.根據(jù)權(quán)利要求15所述的數(shù)據(jù)儲存裝置,其特征在于,上述次數(shù)控制陣列是設(shè)置于上述快閃存儲器中。
【文檔編號】G06F3/06GK105938419SQ201510901302
【公開日】2016年9月14日
【申請日】2015年12月9日
【發(fā)明人】陳冠霖, 郭武吉
【申請人】慧榮科技股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1