然而,必須了解的是,本發(fā)明不限于此,連接器102亦可以是符合并列先進附件(Parallel Advanced Technology Attachment, PATA)標準、電氣和電子工程師協(xié)會(Institute ofElectrical and Electronic Engineers, IEEE) 1394 標準、高速周邊零件連接接口 (Peripheral Component Interconnect Express, PCI Express)標準、安全數(shù)字(Secure Digital, SD)接口標準、序列先進附件(Serial Advanced TechnologyAttachment,SATA)標準、記憶棒(Memory Stick,MS)接口標準、多媒體存儲卡(Multi MediaCard,MMC)接口標準、嵌入式多媒體存儲卡(Embedded Multimedia Card, eMMC)接口標準、通用閃存(Universal Flash Storage,UFS)接口標準、小型快閃(Compact Flash,CF)接口標準、集成驅(qū)動電子接口(Integrated Device Electronics, IDE)標準或其他適合的標準。
[0066]存儲控制器104用于執(zhí)行以硬件型式或韌體型式實作的多個邏輯柵或控制指令,并且根據(jù)主機系統(tǒng)的指令在閃存模塊106中進行數(shù)據(jù)的寫入、讀取與抹除等運作。
[0067]閃存模塊106是耦接至存儲控制器104,并且用于存儲主機系統(tǒng)所寫入的數(shù)據(jù)。閃存模塊106可以是單階存儲單元(Single Level Cell, SLC)NAND型閃存模塊(即,一個存儲單元中可存儲I個位數(shù)據(jù)的閃存模塊)、多階存儲單元(Multi Level Cell,MLC)NAND型閃存模塊(即,一個存儲單元中可存儲2個位數(shù)據(jù)的閃存模塊)、多階存儲單元(TrinaryLevel Cell, TLC)NAND型閃存模塊(即,一個存儲單元中可存儲3個位數(shù)據(jù)的閃存模塊)、其他閃存模塊或其他具有相同特性的存儲模塊。
[0068]圖3是根據(jù)一范例實施例的閃存模塊的概要方塊圖。請參照圖3,閃存模塊106包括存儲單元陣列2202、字線控制電路2204、位線控制電路2206、行譯碼器(columndecoder) 2208、數(shù)據(jù)輸入/輸出緩沖器2210與控制電路2212。
[0069]圖4是根據(jù)一范例實施例的存儲單元陣列的示意圖。存儲單元陣列2202包括用于存儲數(shù)據(jù)的多個存儲單元702、多個選擇柵漏極(select gate drain, S⑶)晶體管712與多個選擇柵源極(select gate source, SGS)晶體管714、以及連接所述存儲單元的多條位線704、多條字線706、與共享源極線708。存儲單元702是以陣列方式配置在位線704與字線706的交叉點上。當從存儲控制器104接收到寫入指令或讀取數(shù)據(jù)時,控制電路2212會控制字線控制電路2204、位線控制電路2206、行譯碼器2208、數(shù)據(jù)輸入/輸出緩沖器2210來寫入數(shù)據(jù)至存儲單元陣列2202或從存儲單元陣列2202中讀取數(shù)據(jù),其中字線控制電路2204用于控制施予至字線706的電壓,位線控制電路2206用于控制施予至位線704的電壓,行譯碼器2208用于依據(jù)指令中的譯碼列地址以選擇對應的位線,而數(shù)據(jù)輸入/輸出緩沖器2210用于暫存數(shù)據(jù)。
[0070]閃存模塊106中的存儲單元是以柵極臨界電壓來代表存儲的位(bits)數(shù)據(jù)。具體來說,存儲單元陣列2202的每一存儲單元具有多個存儲狀態(tài),并且所述存儲狀態(tài)于讀取數(shù)據(jù)時是以多個預設讀取電壓來區(qū)分。
[0071]詳細來說,圖5是根據(jù)一范例實施例的閃存模塊中的存儲狀態(tài)與讀取電壓的關系示意圖。請參照圖5,以MLC閃存為例,每一存儲單元的臨界電壓可依據(jù)第一預設讀取電壓VA、第二預設讀取電壓VB與第三預設讀取電壓VC而區(qū)分為4種存儲狀態(tài),并且所述存儲狀態(tài)分別地代表"11"、" 10"、" 00"與"01"的位數(shù)據(jù)。換言之,每一個存儲狀態(tài)包括最低有效位(Least Significant Bit, LSB)以及最高有效位(Most SignificantBit, MSB)。在此范例實施例中,每一存儲單元可存儲2個位數(shù)據(jù),因此每一存儲單元具有四種存儲狀態(tài),而此四種存儲狀態(tài)通過使用三個預設讀取電壓將臨界電壓區(qū)分而成。必須了解的是,圖5所顯示的臨界電壓及其存儲狀態(tài)的對應僅為一個范例,并非用于限定本發(fā)明。在本發(fā)明另一范例實施例中,讀取電壓與存儲狀態(tài)的對應亦可是隨著臨界電壓越大而以"11"、" 10"、" 01"與"00"排列。
[0072]為了更詳盡的說明本發(fā)明,圖6是根據(jù)一實施例所顯示的閃存模塊中的存儲狀態(tài)與讀取電壓的關系示意圖。請參照圖6,基于前述說明可知,由于存儲單元是通過其臨界電壓來代表其存儲的位數(shù)據(jù),因此當欲從存儲單元中讀取數(shù)據(jù)時,存儲控制器104會對閃存模塊106下達讀取指令,并且閃存模塊106的控制電路2212會對連接至欲讀取的存儲單元的字線施予預設讀取電壓,以驗證存儲單元的信道存儲狀態(tài)。如圖6A所示,預設讀取電壓VR可用于辨別存儲于這些存儲單元當中的位數(shù)據(jù)為存儲狀態(tài)"A"或是存儲狀態(tài)"B"。簡單來說,當控制電路2212會對連接至欲讀取的存儲單元施予預設讀取電壓VR時,將導通的存儲單元識別為存儲狀態(tài)"A",將未導通的存儲單元識別為存儲狀態(tài)"B",以得知存儲單元中存儲的位數(shù)據(jù)。
[0073]然而,在寫入與抹除過程中,閃存模塊106的存儲單元702會隨著電子多次的注入與移除而造成部份結(jié)構(gòu)磨損,例如隧穿氧化層的磨損,例如存儲單元702的臨界電壓將會隨著電子多次的注入與移除而產(chǎn)生偏移(如圖6B的虛線所示),造成預設讀取電壓無法正確地識別存儲單元的存儲狀態(tài)。如圖6B所示,斜線區(qū)域Z_1代表了通過預設讀取電壓VR而產(chǎn)生判別錯誤的狀況。簡單來說,斜線區(qū)域Z_1中這些存儲單元應當被識別為存儲狀態(tài)"A",但由于臨界電壓已隨著電子多次的注入與移除而產(chǎn)生偏移,因此將基于預設讀取電壓VR而被判別為存儲狀態(tài)"B"。
[0074]因此,本發(fā)明基于存儲單元的臨界電壓分布會產(chǎn)生偏移的特性,將適應性的調(diào)整用識別存儲狀態(tài)的讀取電壓,以進一步提升固態(tài)存儲裝置的數(shù)據(jù)存取正確率。特別是,由于閃存模塊106的存儲單元702的臨界電壓分布已經(jīng)偏移,因此,在本范例實施例中,存儲控制器104會估算出適合已偏移的臨界電壓分布的理想讀取電壓VR_1(如圖6C所示)。簡單來說,若通過理想讀取電壓VR_1來將這些存儲單元識別為存儲狀態(tài)"A"或是存儲狀態(tài)"B",相較于圖6B所示的將發(fā)生數(shù)據(jù)辨別錯誤的斜線區(qū)域Z_l,圖6C所示的將發(fā)生數(shù)據(jù)辨別錯誤的斜線區(qū)域2_2明顯縮小,也就是說通過理想讀取電壓VR_1來讀取數(shù)據(jù)可降低數(shù)據(jù)判別錯誤的發(fā)生機率。
[0075]圖7為依照本發(fā)明一實施例所顯示的固態(tài)存儲裝置的讀取電壓設定方法的流程圖。請參照圖2、圖3以及圖7,本實施例的方法適用于上述的固態(tài)存儲裝置100,以下即搭配圖2中固態(tài)存儲裝置100的各項元件,說明本實施例方法的詳細流程。具體來說,存儲控制器104會依據(jù)預設讀取電壓來設定多個檢測讀取電壓來從存儲單元中讀取數(shù)據(jù),并且根據(jù)所讀取數(shù)據(jù)中的驗證數(shù)據(jù)的統(tǒng)計數(shù)據(jù)來決定優(yōu)化讀取電壓。
[0076]在本實施例中,存儲控制器104可先將數(shù)據(jù)程序化至閃存模塊106的多個存儲單元中,以進一步?jīng)Q定當前所要估測的優(yōu)化讀取電壓是用于區(qū)別哪兩個存儲狀態(tài)的讀取電壓,其中預設讀取電壓可于讀取數(shù)據(jù)時將存儲數(shù)據(jù)的這些存儲單元識別為第一存儲狀態(tài)或第二存儲狀態(tài)。首先,于步驟S710,存儲控制器104調(diào)整存儲單元的預設讀取電壓以獲得多個檢測讀取電壓。一般來說,預設讀取電壓是設計人員在設計閃存模塊104時就已經(jīng)決定。于本實施例中,預設讀取電壓即為存儲控制器104最初用于讀取數(shù)據(jù)的讀取電壓。
[0077]詳細來說,圖8為依照本發(fā)明一實施例所顯示的變動量與臨界電壓的關系示意圖。請參照圖8,存儲控制器104可以預設讀取電壓VR作為基準,根據(jù)預設讀取電壓VR以及多個預設區(qū)間而獲得檢測讀取電壓。進一步來說,在圖8所示的實施例當中,存儲控制器104以預設讀取電壓VR為中心基準點,并以累加以及遞減的方式獲取多個檢測讀取電壓。也就是說,檢測電壓VDl與預設讀取電壓VR之間的電壓差距為預設區(qū)間R1,檢測電壓VD2與預設讀取電壓VR之間的電壓差距為預設區(qū)間R2。另外,檢測電壓VD3與檢測電壓VDl之間的電壓差距為預設區(qū)間R3,檢測電壓VD4與檢測電壓VD2之間的電壓差距為預設區(qū)間R4。舉例來說,若預設讀取電壓VR為10伏特、預設區(qū)間Rl為0.3伏特且預設區(qū)間R3的電壓范圍為0.3伏特,則檢測電壓VDl為10.3伏特且檢測電壓VD3為10.6伏特。
[0078]需特別說明的是,于本實施例中,預設區(qū)間Rl?R4并不限制于相同的電壓范圍,預設區(qū)間Rl?R4各自的電壓范圍可視實際應用狀況而設計,此外,預設區(qū)間的個數(shù)也可視實際應用狀況而設計,本發(fā)明對此不限制。然,為了方便說明本發(fā)明,以下將以預設區(qū)間Rl?R4皆具有相同的電壓范圍(R1 = R2 = R3 = R4 = 0.3伏特)為例進行說明,但非以限定本發(fā)明。由此,存儲控制器104可基于預設讀取電壓VR以及預設區(qū)間Rl?R4而獲取多個檢測電壓VDl?VD4。
[0079]之后,于步驟S720,存儲控制器104分別地施予預設讀取電壓VR以及檢測讀取電壓VDl?VD4至存儲單元,以讀取分別關聯(lián)于預設讀取電壓VR以及檢測讀取電壓VDl?VD4的多個驗證數(shù)據(jù)。簡單來說,基于存儲單元的臨界電壓分布偏移的影響,存儲控制器104利用預設讀取電壓VR以及檢測讀取電壓VDl?VD4進行讀取后而取得的各筆驗證數(shù)據(jù)并不相同。
[0080]于步驟S730,存儲控制器104根據(jù)關聯(lián)于預設讀取電壓VR以及檢